diff --git a/datagraph b/datagraph index d7ca3d1..0320ee8 100755 Binary files a/datagraph and b/datagraph differ diff --git a/node.go b/node.go index 892530f..065b4b8 100644 --- a/node.go +++ b/node.go @@ -5,6 +5,7 @@ import ( "github.com/jmoiron/sqlx" // Standard + "encoding/json" "time" ) @@ -14,19 +15,56 @@ type Node struct { ParentID int `db:"parent_id"` - TypeID int `db:"type_id"` - TypeName string `db:"type_name"` - TypeIcon string `db:"type_icon"` + TypeID int `db:"type_id"` + TypeName string `db:"type_name"` + TypeSchema any `db:"type_schema"` + TypeSchemaRaw []byte `db:"type_schema_raw" json:"-"` + TypeIcon string `db:"type_icon"` Updated time.Time Data any - RawData []byte `db:"raw_data"` + DataRaw []byte `db:"data_raw" json:"-"` NumChildren int `db:"num_children"` Children []*Node } -func GetNode(startNodeID, maxDepth int) (topNode *Node, err error) { +func GetNode(nodeID int) (node Node, err error) { + row := db.QueryRowx(` + SELECT + n.id, + n.name, + n.updated, + n.data AS data_raw, + + t.id AS type_id, + t.name AS type_name, + t.schema AS type_schema_raw, + t.schema->>'icon' AS type_icon + FROM public.node n + INNER JOIN public.type t ON n.type_id = t.id + WHERE + n.id = $1 + `, nodeID) + + err = row.StructScan(&node) + if err != nil { + return + } + + err = json.Unmarshal(node.TypeSchemaRaw, &node.TypeSchema) + if err != nil { + return + } + + err = json.Unmarshal(node.DataRaw, &node.Data) + if err != nil { + return + } + return +} + +func GetNodeTree(startNodeID, maxDepth int) (topNode *Node, err error) { nodes := make(map[int]*Node) var rows *sqlx.Rows rows, err = GetNodeRows(startNodeID, maxDepth) @@ -85,7 +123,7 @@ func GetNodeRows(startNodeID, maxDepth int) (rows *sqlx.Rows, err error) { t.name AS type_name, COALESCE(t.schema->>'icon', '') AS type_icon, n.updated, - n.data AS raw_data, + n.data AS data_raw, COUNT(c.child) AS num_children FROM nodes ns INNER JOIN public.node n ON ns.id = n.id @@ -122,3 +160,8 @@ func ComposeTree(nodes map[int]*Node, node *Node) { nodes[node.ID] = node } + +func UpdateNode(nodeID int, data []byte) (err error) { + _, err = db.Exec(`UPDATE public.node SET data=$2 WHERE id=$1`, nodeID, data) + return +} diff --git a/static/css/main.css b/static/css/main.css index b736fbd..0458aba 100644 --- a/static/css/main.css +++ b/static/css/main.css @@ -8,7 +8,7 @@ html { body { margin: 0px; padding: 0px; - background-color: #333; + background-color: #444 !important; } *, *:before, @@ -21,13 +21,80 @@ body { [onClick] { cursor: pointer; } -#nodes { +.section { background-color: #fff; padding: 32px; border-radius: 8px; - margin: 32px; + display: none; +} +.section.show { + display: block; +} +#layout { + display: grid; + grid-template-areas: "menu menu" "navigation details"; + grid-template-columns: min-content 1fr; + grid-gap: 32px; + padding: 32px; +} +#menu { + grid-area: menu; + grid-template-columns: repeat(100, min-content); + grid-gap: 16px; + align-items: center; +} +#menu.section { + display: grid; + padding: 16px 32px; +} +#menu .item { + cursor: pointer; +} +#menu .item.selected { + font-weight: bold; +} +#logo img { + height: 96px; + margin-right: 32px; +} +#nodes { + grid-area: navigation; width: min-content; } +#editor-node { + grid-area: details; +} +#types { + grid-area: navigation; +} +#types .group { + font-weight: bold; + white-space: nowrap; + margin-top: 32px; + margin-bottom: 8px; +} +#types .group:first-child { + margin-top: 0px; +} +#types .type { + display: grid; + grid-template-columns: min-content 1fr; + grid-gap: 8px; + align-items: center; + cursor: pointer; + margin-bottom: 8px; +} +#types .type .img img { + height: 24px; + display: inline; +} +#types .type .title { + white-space: nowrap; + line-height: 24px; +} +#editor-type-schema { + grid-area: details; +} .node { display: grid; grid-template-columns: min-content min-content 100%; @@ -44,7 +111,7 @@ body { padding-right: 8px; } .node .expand-status.leaf { - width: 36px; + width: 40px; } .node .expand-status.leaf img { display: none; @@ -52,15 +119,16 @@ body { .node .expand-status img { cursor: pointer; } -.node .icon { - padding-right: 8px; +.node .type-icon { + padding-right: 4px; } -.node .icon img { - filter: invert(0.7) sepia(0.5) hue-rotate(50deg) saturate(300%) brightness(0.85); +.node .type-icon img { + filter: invert(0.7) sepia(0.5) hue-rotate(50deg) saturate(300%) brightness(0.85) !important; } .node .name { margin-bottom: 8px; line-height: 24px; + cursor: pointer; } .node .children { display: none; diff --git a/static/css/spectre-exp.min.css b/static/css/spectre-exp.min.css new file mode 100644 index 0000000..d313774 --- /dev/null +++ b/static/css/spectre-exp.min.css @@ -0,0 +1 @@ +/*! Spectre.css Experimentals v0.5.9 | MIT License | github.com/picturepan2/spectre */.form-autocomplete{position:relative}.form-autocomplete .form-autocomplete-input{align-content:flex-start;display:-ms-flexbox;display:flex;-ms-flex-line-pack:start;-ms-flex-wrap:wrap;flex-wrap:wrap;height:auto;min-height:1.6rem;padding:.1rem}.form-autocomplete .form-autocomplete-input.is-focused{border-color:#5755d9;box-shadow:0 0 0 .1rem rgba(87,85,217,.2)}.form-autocomplete .form-autocomplete-input .form-input{border-color:transparent;box-shadow:none;display:inline-block;-ms-flex:1 0 auto;flex:1 0 auto;height:1.2rem;line-height:.8rem;margin:.1rem;width:auto}.form-autocomplete .menu{left:0;position:absolute;top:100%;width:100%}.form-autocomplete.autocomplete-oneline .form-autocomplete-input{-ms-flex-wrap:nowrap;flex-wrap:nowrap;overflow-x:auto}.form-autocomplete.autocomplete-oneline .chip{-ms-flex:1 0 auto;flex:1 0 auto}.calendar{border:.05rem solid #dadee4;border-radius:.1rem;display:block;min-width:280px}.calendar .calendar-nav{align-items:center;background:#f7f8f9;border-top-left-radius:.1rem;border-top-right-radius:.1rem;display:-ms-flexbox;display:flex;-ms-flex-align:center;font-size:.9rem;padding:.4rem}.calendar .calendar-body,.calendar .calendar-header{display:-ms-flexbox;display:flex;-ms-flex-pack:center;-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content:center;padding:.4rem 0}.calendar .calendar-body .calendar-date,.calendar .calendar-header .calendar-date{-ms-flex:0 0 14.28%;flex:0 0 14.28%;max-width:14.28%}.calendar .calendar-header{background:#f7f8f9;border-bottom:.05rem solid #dadee4;color:#bcc3ce;font-size:.7rem;text-align:center}.calendar .calendar-body{color:#66758c}.calendar .calendar-date{border:0;padding:.2rem}.calendar .calendar-date .date-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;border:.05rem solid transparent;border-radius:50%;color:#66758c;cursor:pointer;font-size:.7rem;height:1.4rem;line-height:1rem;outline:0;padding:.1rem;position:relative;text-align:center;text-decoration:none;transition:background .2s,border .2s,box-shadow .2s,color .2s;vertical-align:middle;white-space:nowrap;width:1.4rem}.calendar .calendar-date .date-item.date-today{border-color:#e5e5f9;color:#5755d9}.calendar .calendar-date .date-item:focus{box-shadow:0 0 0 .1rem rgba(87,85,217,.2)}.calendar .calendar-date .date-item:focus,.calendar .calendar-date .date-item:hover{background:#fefeff;border-color:#e5e5f9;color:#5755d9;text-decoration:none}.calendar .calendar-date .date-item.active,.calendar .calendar-date .date-item:active{background:#4b48d6;border-color:#3634d2;color:#fff}.calendar .calendar-date .date-item.badge::after{position:absolute;right:3px;top:3px;transform:translate(50%,-50%)}.calendar .calendar-date .calendar-event.disabled,.calendar .calendar-date .calendar-event:disabled,.calendar .calendar-date .date-item.disabled,.calendar .calendar-date .date-item:disabled{cursor:default;opacity:.25;pointer-events:none}.calendar .calendar-date.next-month .calendar-event,.calendar .calendar-date.next-month .date-item,.calendar .calendar-date.prev-month .calendar-event,.calendar .calendar-date.prev-month .date-item{opacity:.25}.calendar .calendar-range{position:relative}.calendar .calendar-range::before{background:#f1f1fc;content:"";height:1.4rem;left:0;position:absolute;right:0;top:50%;transform:translateY(-50%)}.calendar .calendar-range.range-start::before{left:50%}.calendar .calendar-range.range-end::before{right:50%}.calendar .calendar-range.range-end .date-item,.calendar .calendar-range.range-start .date-item{background:#4b48d6;border-color:#3634d2;color:#fff}.calendar .calendar-range .date-item{color:#5755d9}.calendar.calendar-lg .calendar-body{padding:0}.calendar.calendar-lg .calendar-body .calendar-date{border-bottom:.05rem solid #dadee4;border-right:.05rem solid #dadee4;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:5.5rem;padding:0}.calendar.calendar-lg .calendar-body .calendar-date:nth-child(7n){border-right:0}.calendar.calendar-lg .calendar-body .calendar-date:nth-last-child(-n+7){border-bottom:0}.calendar.calendar-lg .date-item{align-self:flex-end;-ms-flex-item-align:end;height:1.4rem;margin-right:.2rem;margin-top:.2rem}.calendar.calendar-lg .calendar-range::before{top:19px}.calendar.calendar-lg .calendar-range.range-start::before{left:auto;width:19px}.calendar.calendar-lg .calendar-range.range-end::before{right:19px}.calendar.calendar-lg .calendar-events{flex-grow:1;-ms-flex-positive:1;line-height:1;overflow-y:auto;padding:.2rem}.calendar.calendar-lg .calendar-event{border-radius:.1rem;display:block;font-size:.7rem;margin:.1rem auto;overflow:hidden;padding:3px 4px;text-overflow:ellipsis;white-space:nowrap}.carousel .carousel-locator:nth-of-type(1):checked~.carousel-container .carousel-item:nth-of-type(1),.carousel .carousel-locator:nth-of-type(2):checked~.carousel-container .carousel-item:nth-of-type(2),.carousel .carousel-locator:nth-of-type(3):checked~.carousel-container .carousel-item:nth-of-type(3),.carousel .carousel-locator:nth-of-type(4):checked~.carousel-container .carousel-item:nth-of-type(4),.carousel .carousel-locator:nth-of-type(5):checked~.carousel-container .carousel-item:nth-of-type(5),.carousel .carousel-locator:nth-of-type(6):checked~.carousel-container .carousel-item:nth-of-type(6),.carousel .carousel-locator:nth-of-type(7):checked~.carousel-container .carousel-item:nth-of-type(7),.carousel .carousel-locator:nth-of-type(8):checked~.carousel-container .carousel-item:nth-of-type(8){animation:carousel-slidein .75s ease-in-out 1;opacity:1;z-index:100}.carousel .carousel-locator:nth-of-type(1):checked~.carousel-nav .nav-item:nth-of-type(1),.carousel .carousel-locator:nth-of-type(2):checked~.carousel-nav .nav-item:nth-of-type(2),.carousel .carousel-locator:nth-of-type(3):checked~.carousel-nav .nav-item:nth-of-type(3),.carousel .carousel-locator:nth-of-type(4):checked~.carousel-nav .nav-item:nth-of-type(4),.carousel .carousel-locator:nth-of-type(5):checked~.carousel-nav .nav-item:nth-of-type(5),.carousel .carousel-locator:nth-of-type(6):checked~.carousel-nav .nav-item:nth-of-type(6),.carousel .carousel-locator:nth-of-type(7):checked~.carousel-nav .nav-item:nth-of-type(7),.carousel .carousel-locator:nth-of-type(8):checked~.carousel-nav .nav-item:nth-of-type(8){color:#f7f8f9}.carousel{background:#f7f8f9;display:block;overflow:hidden;-webkit-overflow-scrolling:touch;position:relative;width:100%;z-index:1}.carousel .carousel-container{height:100%;left:0;position:relative}.carousel .carousel-container::before{content:"";display:block;padding-bottom:56.25%}.carousel .carousel-container .carousel-item{animation:carousel-slideout 1s ease-in-out 1;height:100%;left:0;margin:0;opacity:0;position:absolute;top:0;width:100%}.carousel .carousel-container .carousel-item:hover .item-next,.carousel .carousel-container .carousel-item:hover .item-prev{opacity:1}.carousel .carousel-container .item-next,.carousel .carousel-container .item-prev{background:rgba(247,248,249,.25);border-color:rgba(247,248,249,.5);color:#f7f8f9;opacity:0;position:absolute;top:50%;transform:translateY(-50%);transition:all .4s;z-index:100}.carousel .carousel-container .item-prev{left:1rem}.carousel .carousel-container .item-next{right:1rem}.carousel .carousel-nav{bottom:.4rem;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;left:50%;position:absolute;transform:translateX(-50%);width:10rem;z-index:100}.carousel .carousel-nav .nav-item{color:rgba(247,248,249,.5);display:block;-ms-flex:1 0 auto;flex:1 0 auto;height:1.6rem;margin:.2rem;max-width:2.5rem;position:relative}.carousel .carousel-nav .nav-item::before{background:currentColor;content:"";display:block;height:.1rem;position:absolute;top:.5rem;width:100%}@keyframes carousel-slidein{0%{transform:translateX(100%)}100%{transform:translateX(0)}}@keyframes carousel-slideout{0%{opacity:1;transform:translateX(0)}100%{opacity:1;transform:translateX(-50%)}}.comparison-slider{height:50vh;overflow:hidden;-webkit-overflow-scrolling:touch;position:relative;width:100%}.comparison-slider .comparison-after,.comparison-slider .comparison-before{height:100%;left:0;margin:0;overflow:hidden;position:absolute;top:0}.comparison-slider .comparison-after img,.comparison-slider .comparison-before img{height:100%;object-fit:cover;object-position:left center;position:absolute;width:100%}.comparison-slider .comparison-before{width:100%;z-index:1}.comparison-slider .comparison-before .comparison-label{right:.8rem}.comparison-slider .comparison-after{max-width:100%;min-width:0;z-index:2}.comparison-slider .comparison-after::before{background:0 0;content:"";cursor:default;height:100%;left:0;position:absolute;right:.8rem;top:0;z-index:1}.comparison-slider .comparison-after::after{background:currentColor;border-radius:50%;box-shadow:0 -5px,0 5px;color:#fff;content:"";height:3px;pointer-events:none;position:absolute;right:.4rem;top:50%;transform:translate(50%,-50%);width:3px}.comparison-slider .comparison-after .comparison-label{left:.8rem}.comparison-slider .comparison-resizer{animation:first-run 1.5s 1 ease-in-out;cursor:ew-resize;height:.8rem;left:0;max-width:100%;min-width:.8rem;opacity:0;outline:0;position:relative;resize:horizontal;top:50%;transform:translateY(-50%) scaleY(30);width:0}.comparison-slider .comparison-label{background:rgba(48,55,66,.5);bottom:.8rem;color:#fff;padding:.2rem .4rem;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@keyframes first-run{0%{width:0}25%{width:2.4rem}50%{width:.8rem}75%{width:1.2rem}100%{width:0}}.filter .filter-tag#tag-0:checked~.filter-nav .chip[for=tag-0],.filter .filter-tag#tag-1:checked~.filter-nav .chip[for=tag-1],.filter .filter-tag#tag-2:checked~.filter-nav .chip[for=tag-2],.filter .filter-tag#tag-3:checked~.filter-nav .chip[for=tag-3],.filter .filter-tag#tag-4:checked~.filter-nav .chip[for=tag-4],.filter .filter-tag#tag-5:checked~.filter-nav .chip[for=tag-5],.filter .filter-tag#tag-6:checked~.filter-nav .chip[for=tag-6],.filter .filter-tag#tag-7:checked~.filter-nav .chip[for=tag-7],.filter .filter-tag#tag-8:checked~.filter-nav .chip[for=tag-8]{background:#5755d9;color:#fff}.filter .filter-tag#tag-1:checked~.filter-body .filter-item:not([data-tag~=tag-1]),.filter .filter-tag#tag-2:checked~.filter-body .filter-item:not([data-tag~=tag-2]),.filter .filter-tag#tag-3:checked~.filter-body .filter-item:not([data-tag~=tag-3]),.filter .filter-tag#tag-4:checked~.filter-body .filter-item:not([data-tag~=tag-4]),.filter .filter-tag#tag-5:checked~.filter-body .filter-item:not([data-tag~=tag-5]),.filter .filter-tag#tag-6:checked~.filter-body .filter-item:not([data-tag~=tag-6]),.filter .filter-tag#tag-7:checked~.filter-body .filter-item:not([data-tag~=tag-7]),.filter .filter-tag#tag-8:checked~.filter-body .filter-item:not([data-tag~=tag-8]){display:none}.filter .filter-nav{margin:.4rem 0}.filter .filter-body{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.meter{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#f7f8f9;border:0;border-radius:.1rem;display:block;height:.8rem;width:100%}.meter::-webkit-meter-inner-element{display:block}.meter::-webkit-meter-bar,.meter::-webkit-meter-even-less-good-value,.meter::-webkit-meter-optimum-value,.meter::-webkit-meter-suboptimum-value{border-radius:.1rem}.meter::-webkit-meter-bar{background:#f7f8f9}.meter::-webkit-meter-optimum-value{background:#32b643}.meter::-webkit-meter-suboptimum-value{background:#ffb700}.meter::-webkit-meter-even-less-good-value{background:#e85600}.meter:-moz-meter-optimum,.meter:-moz-meter-sub-optimum,.meter:-moz-meter-sub-sub-optimum,.meter::-moz-meter-bar{border-radius:.1rem}.meter:-moz-meter-optimum::-moz-meter-bar{background:#32b643}.meter:-moz-meter-sub-optimum::-moz-meter-bar{background:#ffb700}.meter:-moz-meter-sub-sub-optimum::-moz-meter-bar{background:#e85600}.off-canvas{display:-ms-flexbox;display:flex;-ms-flex-flow:nowrap;flex-flow:nowrap;height:100%;position:relative;width:100%}.off-canvas .off-canvas-toggle{display:block;left:.4rem;position:absolute;top:.4rem;transition:none;z-index:1}.off-canvas .off-canvas-sidebar{background:#f7f8f9;bottom:0;left:0;min-width:10rem;overflow-y:auto;position:fixed;top:0;transform:translateX(-100%);transition:transform .25s;z-index:200}.off-canvas .off-canvas-content{-ms-flex:1 1 auto;flex:1 1 auto;height:100%;padding:.4rem .4rem .4rem 4rem}.off-canvas .off-canvas-overlay{background:rgba(48,55,66,.1);border-color:transparent;border-radius:0;bottom:0;display:none;height:100%;left:0;position:fixed;right:0;top:0;width:100%}.off-canvas .off-canvas-sidebar.active,.off-canvas .off-canvas-sidebar:target{transform:translateX(0)}.off-canvas .off-canvas-sidebar.active~.off-canvas-overlay,.off-canvas .off-canvas-sidebar:target~.off-canvas-overlay{display:block;z-index:100}@media (min-width:960px){.off-canvas.off-canvas-sidebar-show .off-canvas-toggle{display:none}.off-canvas.off-canvas-sidebar-show .off-canvas-sidebar{-ms-flex:0 0 auto;flex:0 0 auto;position:relative;transform:none}.off-canvas.off-canvas-sidebar-show .off-canvas-overlay{display:none!important}}.parallax{display:block;height:auto;position:relative;width:auto}.parallax .parallax-content{box-shadow:0 1rem 2.1rem rgba(48,55,66,.3);height:auto;transform:perspective(1000px);transform-style:preserve-3d;transition:all .4s ease;width:100%}.parallax .parallax-content::before{content:"";display:block;height:100%;left:0;position:absolute;top:0;width:100%}.parallax .parallax-front{align-items:center;color:#fff;display:-ms-flexbox;display:flex;-ms-flex-align:center;-ms-flex-pack:center;height:100%;justify-content:center;left:0;position:absolute;text-align:center;text-shadow:0 0 20px rgba(48,55,66,.75);top:0;transform:translateZ(50px) scale(.95);transition:transform .4s;width:100%;z-index:1}.parallax .parallax-top-left{height:50%;left:0;outline:0;position:absolute;top:0;width:50%;z-index:100}.parallax .parallax-top-left:focus~.parallax-content,.parallax .parallax-top-left:hover~.parallax-content{transform:perspective(1000px) rotateX(3deg) rotateY(-3deg)}.parallax .parallax-top-left:focus~.parallax-content::before,.parallax .parallax-top-left:hover~.parallax-content::before{background:linear-gradient(135deg,rgba(255,255,255,.35) 0,transparent 50%)}.parallax .parallax-top-left:focus~.parallax-content .parallax-front,.parallax .parallax-top-left:hover~.parallax-content .parallax-front{transform:translate3d(4.5px,4.5px,50px) scale(.95)}.parallax .parallax-top-right{height:50%;outline:0;position:absolute;right:0;top:0;width:50%;z-index:100}.parallax .parallax-top-right:focus~.parallax-content,.parallax .parallax-top-right:hover~.parallax-content{transform:perspective(1000px) rotateX(3deg) rotateY(3deg)}.parallax .parallax-top-right:focus~.parallax-content::before,.parallax .parallax-top-right:hover~.parallax-content::before{background:linear-gradient(-135deg,rgba(255,255,255,.35) 0,transparent 50%)}.parallax .parallax-top-right:focus~.parallax-content .parallax-front,.parallax .parallax-top-right:hover~.parallax-content .parallax-front{transform:translate3d(-4.5px,4.5px,50px) scale(.95)}.parallax .parallax-bottom-left{bottom:0;height:50%;left:0;outline:0;position:absolute;width:50%;z-index:100}.parallax .parallax-bottom-left:focus~.parallax-content,.parallax .parallax-bottom-left:hover~.parallax-content{transform:perspective(1000px) rotateX(-3deg) rotateY(-3deg)}.parallax .parallax-bottom-left:focus~.parallax-content::before,.parallax .parallax-bottom-left:hover~.parallax-content::before{background:linear-gradient(45deg,rgba(255,255,255,.35) 0,transparent 50%)}.parallax .parallax-bottom-left:focus~.parallax-content .parallax-front,.parallax .parallax-bottom-left:hover~.parallax-content .parallax-front{transform:translate3d(4.5px,-4.5px,50px) scale(.95)}.parallax .parallax-bottom-right{bottom:0;height:50%;outline:0;position:absolute;right:0;width:50%;z-index:100}.parallax .parallax-bottom-right:focus~.parallax-content,.parallax .parallax-bottom-right:hover~.parallax-content{transform:perspective(1000px) rotateX(-3deg) rotateY(3deg)}.parallax .parallax-bottom-right:focus~.parallax-content::before,.parallax .parallax-bottom-right:hover~.parallax-content::before{background:linear-gradient(-45deg,rgba(255,255,255,.35) 0,transparent 50%)}.parallax .parallax-bottom-right:focus~.parallax-content .parallax-front,.parallax .parallax-bottom-right:hover~.parallax-content .parallax-front{transform:translate3d(-4.5px,-4.5px,50px) scale(.95)}.progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#eef0f3;border:0;border-radius:.1rem;color:#5755d9;height:.2rem;position:relative;width:100%}.progress::-webkit-progress-bar{background:0 0;border-radius:.1rem}.progress::-webkit-progress-value{background:#5755d9;border-radius:.1rem}.progress::-moz-progress-bar{background:#5755d9;border-radius:.1rem}.progress:indeterminate{animation:progress-indeterminate 1.5s linear infinite;background:#eef0f3 linear-gradient(to right,#5755d9 30%,#eef0f3 30%) top left/150% 150% no-repeat}.progress:indeterminate::-moz-progress-bar{background:0 0}@keyframes progress-indeterminate{0%{background-position:200% 0}100%{background-position:-200% 0}}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;display:block;height:1.2rem;width:100%}.slider:focus{box-shadow:0 0 0 .1rem rgba(87,85,217,.2);outline:0}.slider.tooltip:not([data-tooltip])::after{content:attr(value)}.slider::-webkit-slider-thumb{-webkit-appearance:none;background:#5755d9;border:0;border-radius:50%;height:.6rem;margin-top:-.25rem;-webkit-transition:transform .2s;transition:transform .2s;width:.6rem}.slider::-moz-range-thumb{background:#5755d9;border:0;border-radius:50%;height:.6rem;-moz-transition:transform .2s;transition:transform .2s;width:.6rem}.slider::-ms-thumb{background:#5755d9;border:0;border-radius:50%;height:.6rem;-ms-transition:transform .2s;transition:transform .2s;width:.6rem}.slider:active::-webkit-slider-thumb{transform:scale(1.25)}.slider:active::-moz-range-thumb{transform:scale(1.25)}.slider:active::-ms-thumb{transform:scale(1.25)}.slider.disabled::-webkit-slider-thumb,.slider:disabled::-webkit-slider-thumb{background:#f7f8f9;transform:scale(1)}.slider.disabled::-moz-range-thumb,.slider:disabled::-moz-range-thumb{background:#f7f8f9;transform:scale(1)}.slider.disabled::-ms-thumb,.slider:disabled::-ms-thumb{background:#f7f8f9;transform:scale(1)}.slider::-webkit-slider-runnable-track{background:#eef0f3;border-radius:.1rem;height:.1rem;width:100%}.slider::-moz-range-track{background:#eef0f3;border-radius:.1rem;height:.1rem;width:100%}.slider::-ms-track{background:#eef0f3;border-radius:.1rem;height:.1rem;width:100%}.slider::-ms-fill-lower{background:#5755d9}.timeline .timeline-item{display:-ms-flexbox;display:flex;margin-bottom:1.2rem;position:relative}.timeline .timeline-item::before{background:#dadee4;content:"";height:100%;left:11px;position:absolute;top:1.2rem;width:2px}.timeline .timeline-item .timeline-left{-ms-flex:0 0 auto;flex:0 0 auto}.timeline .timeline-item .timeline-content{-ms-flex:1 1 auto;flex:1 1 auto;padding:2px 0 2px .8rem}.timeline .timeline-item .timeline-icon{align-items:center;border-radius:50%;color:#fff;display:-ms-flexbox;display:flex;-ms-flex-align:center;-ms-flex-pack:center;height:1.2rem;justify-content:center;text-align:center;width:1.2rem}.timeline .timeline-item .timeline-icon::before{border:.1rem solid #5755d9;border-radius:50%;content:"";display:block;height:.4rem;left:.4rem;position:absolute;top:.4rem;width:.4rem}.timeline .timeline-item .timeline-icon.icon-lg{background:#5755d9;line-height:1.2rem}.timeline .timeline-item .timeline-icon.icon-lg::before{content:none}.viewer-360{align-items:center;display:-ms-flexbox;display:flex;-ms-flex-align:center;-ms-flex-direction:column;flex-direction:column}.viewer-360 .viewer-slider[max="36"][value="1"]+.viewer-image{background-position-y:0}.viewer-360 .viewer-slider[max="36"][value="2"]+.viewer-image{background-position-y:2.8571428571%}.viewer-360 .viewer-slider[max="36"][value="3"]+.viewer-image{background-position-y:5.7142857143%}.viewer-360 .viewer-slider[max="36"][value="4"]+.viewer-image{background-position-y:8.5714285714%}.viewer-360 .viewer-slider[max="36"][value="5"]+.viewer-image{background-position-y:11.4285714286%}.viewer-360 .viewer-slider[max="36"][value="6"]+.viewer-image{background-position-y:14.2857142857%}.viewer-360 .viewer-slider[max="36"][value="7"]+.viewer-image{background-position-y:17.1428571429%}.viewer-360 .viewer-slider[max="36"][value="8"]+.viewer-image{background-position-y:20%}.viewer-360 .viewer-slider[max="36"][value="9"]+.viewer-image{background-position-y:22.8571428571%}.viewer-360 .viewer-slider[max="36"][value="10"]+.viewer-image{background-position-y:25.7142857143%}.viewer-360 .viewer-slider[max="36"][value="11"]+.viewer-image{background-position-y:28.5714285714%}.viewer-360 .viewer-slider[max="36"][value="12"]+.viewer-image{background-position-y:31.4285714286%}.viewer-360 .viewer-slider[max="36"][value="13"]+.viewer-image{background-position-y:34.2857142857%}.viewer-360 .viewer-slider[max="36"][value="14"]+.viewer-image{background-position-y:37.1428571429%}.viewer-360 .viewer-slider[max="36"][value="15"]+.viewer-image{background-position-y:40%}.viewer-360 .viewer-slider[max="36"][value="16"]+.viewer-image{background-position-y:42.8571428571%}.viewer-360 .viewer-slider[max="36"][value="17"]+.viewer-image{background-position-y:45.7142857143%}.viewer-360 .viewer-slider[max="36"][value="18"]+.viewer-image{background-position-y:48.5714285714%}.viewer-360 .viewer-slider[max="36"][value="19"]+.viewer-image{background-position-y:51.4285714286%}.viewer-360 .viewer-slider[max="36"][value="20"]+.viewer-image{background-position-y:54.2857142857%}.viewer-360 .viewer-slider[max="36"][value="21"]+.viewer-image{background-position-y:57.1428571429%}.viewer-360 .viewer-slider[max="36"][value="22"]+.viewer-image{background-position-y:60%}.viewer-360 .viewer-slider[max="36"][value="23"]+.viewer-image{background-position-y:62.8571428571%}.viewer-360 .viewer-slider[max="36"][value="24"]+.viewer-image{background-position-y:65.7142857143%}.viewer-360 .viewer-slider[max="36"][value="25"]+.viewer-image{background-position-y:68.5714285714%}.viewer-360 .viewer-slider[max="36"][value="26"]+.viewer-image{background-position-y:71.4285714286%}.viewer-360 .viewer-slider[max="36"][value="27"]+.viewer-image{background-position-y:74.2857142857%}.viewer-360 .viewer-slider[max="36"][value="28"]+.viewer-image{background-position-y:77.1428571429%}.viewer-360 .viewer-slider[max="36"][value="29"]+.viewer-image{background-position-y:80%}.viewer-360 .viewer-slider[max="36"][value="30"]+.viewer-image{background-position-y:82.8571428571%}.viewer-360 .viewer-slider[max="36"][value="31"]+.viewer-image{background-position-y:85.7142857143%}.viewer-360 .viewer-slider[max="36"][value="32"]+.viewer-image{background-position-y:88.5714285714%}.viewer-360 .viewer-slider[max="36"][value="33"]+.viewer-image{background-position-y:91.4285714286%}.viewer-360 .viewer-slider[max="36"][value="34"]+.viewer-image{background-position-y:94.2857142857%}.viewer-360 .viewer-slider[max="36"][value="35"]+.viewer-image{background-position-y:97.1428571429%}.viewer-360 .viewer-slider[max="36"][value="36"]+.viewer-image{background-position-y:100%}.viewer-360 .viewer-slider{cursor:ew-resize;-ms-flex-order:2;margin:1rem;order:2;width:60%}.viewer-360 .viewer-image{background-position-y:0;background-repeat:no-repeat;background-size:100%;-ms-flex-order:1;max-width:100%;order:1} \ No newline at end of file diff --git a/static/css/spectre-icons.min.css b/static/css/spectre-icons.min.css new file mode 100644 index 0000000..0276f7b --- /dev/null +++ b/static/css/spectre-icons.min.css @@ -0,0 +1 @@ +/*! Spectre.css Icons v0.5.9 | MIT License | github.com/picturepan2/spectre */.icon{box-sizing:border-box;display:inline-block;font-size:inherit;font-style:normal;height:1em;position:relative;text-indent:-9999px;vertical-align:middle;width:1em}.icon::after,.icon::before{content:"";display:block;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.icon.icon-2x{font-size:1.6rem}.icon.icon-3x{font-size:2.4rem}.icon.icon-4x{font-size:3.2rem}.accordion .icon,.btn .icon,.menu .icon,.toast .icon{vertical-align:-10%}.btn-lg .icon{vertical-align:-15%}.icon-arrow-down::before,.icon-arrow-left::before,.icon-arrow-right::before,.icon-arrow-up::before,.icon-back::before,.icon-downward::before,.icon-forward::before,.icon-upward::before{border:.1rem solid currentColor;border-bottom:0;border-right:0;height:.65em;width:.65em}.icon-arrow-down::before{transform:translate(-50%,-75%) rotate(225deg)}.icon-arrow-left::before{transform:translate(-25%,-50%) rotate(-45deg)}.icon-arrow-right::before{transform:translate(-75%,-50%) rotate(135deg)}.icon-arrow-up::before{transform:translate(-50%,-25%) rotate(45deg)}.icon-back::after,.icon-forward::after{background:currentColor;height:.1rem;width:.8em}.icon-downward::after,.icon-upward::after{background:currentColor;height:.8em;width:.1rem}.icon-back::after{left:55%}.icon-back::before{transform:translate(-50%,-50%) rotate(-45deg)}.icon-downward::after{top:45%}.icon-downward::before{transform:translate(-50%,-50%) rotate(-135deg)}.icon-forward::after{left:45%}.icon-forward::before{transform:translate(-50%,-50%) rotate(135deg)}.icon-upward::after{top:55%}.icon-upward::before{transform:translate(-50%,-50%) rotate(45deg)}.icon-caret::before{border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:.3em solid currentColor;height:0;transform:translate(-50%,-25%);width:0}.icon-menu::before{background:currentColor;box-shadow:0 -.35em,0 .35em;height:.1rem;width:100%}.icon-apps::before{background:currentColor;box-shadow:-.35em -.35em,-.35em 0,-.35em .35em,0 -.35em,0 .35em,.35em -.35em,.35em 0,.35em .35em;height:3px;width:3px}.icon-resize-horiz::after,.icon-resize-horiz::before,.icon-resize-vert::after,.icon-resize-vert::before{border:.1rem solid currentColor;border-bottom:0;border-right:0;height:.45em;width:.45em}.icon-resize-horiz::before,.icon-resize-vert::before{transform:translate(-50%,-90%) rotate(45deg)}.icon-resize-horiz::after,.icon-resize-vert::after{transform:translate(-50%,-10%) rotate(225deg)}.icon-resize-horiz::before{transform:translate(-90%,-50%) rotate(-45deg)}.icon-resize-horiz::after{transform:translate(-10%,-50%) rotate(135deg)}.icon-more-horiz::before,.icon-more-vert::before{background:currentColor;border-radius:50%;box-shadow:-.4em 0,.4em 0;height:3px;width:3px}.icon-more-vert::before{box-shadow:0 -.4em,0 .4em}.icon-cross::before,.icon-minus::before,.icon-plus::before{background:currentColor;height:.1rem;width:100%}.icon-cross::after,.icon-plus::after{background:currentColor;height:100%;width:.1rem}.icon-cross::before{width:100%}.icon-cross::after{height:100%}.icon-cross::after,.icon-cross::before{transform:translate(-50%,-50%) rotate(45deg)}.icon-check::before{border:.1rem solid currentColor;border-right:0;border-top:0;height:.5em;transform:translate(-50%,-75%) rotate(-45deg);width:.9em}.icon-stop{border:.1rem solid currentColor;border-radius:50%}.icon-stop::before{background:currentColor;height:.1rem;transform:translate(-50%,-50%) rotate(45deg);width:1em}.icon-shutdown{border:.1rem solid currentColor;border-radius:50%;border-top-color:transparent}.icon-shutdown::before{background:currentColor;content:"";height:.5em;top:.1em;width:.1rem}.icon-refresh::before{border:.1rem solid currentColor;border-radius:50%;border-right-color:transparent;height:1em;width:1em}.icon-refresh::after{border:.2em solid currentColor;border-left-color:transparent;border-top-color:transparent;height:0;left:80%;top:20%;width:0}.icon-search::before{border:.1rem solid currentColor;border-radius:50%;height:.75em;left:5%;top:5%;transform:translate(0,0) rotate(45deg);width:.75em}.icon-search::after{background:currentColor;height:.1rem;left:80%;top:80%;transform:translate(-50%,-50%) rotate(45deg);width:.4em}.icon-edit::before{border:.1rem solid currentColor;height:.4em;transform:translate(-40%,-60%) rotate(-45deg);width:.85em}.icon-edit::after{border:.15em solid currentColor;border-right-color:transparent;border-top-color:transparent;height:0;left:5%;top:95%;transform:translate(0,-100%);width:0}.icon-delete::before{border:.1rem solid currentColor;border-bottom-left-radius:.1rem;border-bottom-right-radius:.1rem;border-top:0;height:.75em;top:60%;width:.75em}.icon-delete::after{background:currentColor;box-shadow:-.25em .2em,.25em .2em;height:.1rem;top:.05rem;width:.5em}.icon-share{border:.1rem solid currentColor;border-radius:.1rem;border-right:0;border-top:0}.icon-share::before{border:.1rem solid currentColor;border-left:0;border-top:0;height:.4em;left:100%;top:.25em;transform:translate(-125%,-50%) rotate(-45deg);width:.4em}.icon-share::after{border:.1rem solid currentColor;border-bottom:0;border-radius:75% 0;border-right:0;height:.5em;width:.6em}.icon-flag::before{background:currentColor;height:1em;left:15%;width:.1rem}.icon-flag::after{border:.1rem solid currentColor;border-bottom-right-radius:.1rem;border-left:0;border-top-right-radius:.1rem;height:.65em;left:60%;top:35%;width:.8em}.icon-bookmark::before{border:.1rem solid currentColor;border-bottom:0;border-top-left-radius:.1rem;border-top-right-radius:.1rem;height:.9em;width:.8em}.icon-bookmark::after{border:.1rem solid currentColor;border-bottom:0;border-left:0;border-radius:.1rem;height:.5em;transform:translate(-50%,35%) rotate(-45deg) skew(15deg,15deg);width:.5em}.icon-download,.icon-upload{border-bottom:.1rem solid currentColor}.icon-download::before,.icon-upload::before{border:.1rem solid currentColor;border-bottom:0;border-right:0;height:.5em;transform:translate(-50%,-60%) rotate(-135deg);width:.5em}.icon-download::after,.icon-upload::after{background:currentColor;height:.6em;top:40%;width:.1rem}.icon-upload::before{transform:translate(-50%,-60%) rotate(45deg)}.icon-upload::after{top:50%}.icon-copy::before{border:.1rem solid currentColor;border-bottom:0;border-radius:.1rem;border-right:0;height:.8em;left:40%;top:35%;width:.8em}.icon-copy::after{border:.1rem solid currentColor;border-radius:.1rem;height:.8em;left:60%;top:60%;width:.8em}.icon-time{border:.1rem solid currentColor;border-radius:50%}.icon-time::before{background:currentColor;height:.4em;transform:translate(-50%,-75%);width:.1rem}.icon-time::after{background:currentColor;height:.3em;transform:translate(-50%,-75%) rotate(90deg);transform-origin:50% 90%;width:.1rem}.icon-mail::before{border:.1rem solid currentColor;border-radius:.1rem;height:.8em;width:1em}.icon-mail::after{border:.1rem solid currentColor;border-right:0;border-top:0;height:.5em;transform:translate(-50%,-90%) rotate(-45deg) skew(10deg,10deg);width:.5em}.icon-people::before{border:.1rem solid currentColor;border-radius:50%;height:.45em;top:25%;width:.45em}.icon-people::after{border:.1rem solid currentColor;border-radius:50% 50% 0 0;height:.4em;top:75%;width:.9em}.icon-message{border:.1rem solid currentColor;border-bottom:0;border-radius:.1rem;border-right:0}.icon-message::before{border:.1rem solid currentColor;border-bottom-right-radius:.1rem;border-left:0;border-top:0;height:.8em;left:65%;top:40%;width:.7em}.icon-message::after{background:currentColor;border-radius:.1rem;height:.3em;left:10%;top:100%;transform:translate(0,-90%) rotate(45deg);width:.1rem}.icon-photo{border:.1rem solid currentColor;border-radius:.1rem}.icon-photo::before{border:.1rem solid currentColor;border-radius:50%;height:.25em;left:35%;top:35%;width:.25em}.icon-photo::after{border:.1rem solid currentColor;border-bottom:0;border-left:0;height:.5em;left:60%;transform:translate(-50%,25%) rotate(-45deg);width:.5em}.icon-link::after,.icon-link::before{border:.1rem solid currentColor;border-radius:5em 0 0 5em;border-right:0;height:.5em;width:.75em}.icon-link::before{transform:translate(-70%,-45%) rotate(-45deg)}.icon-link::after{transform:translate(-30%,-55%) rotate(135deg)}.icon-location::before{border:.1rem solid currentColor;border-radius:50% 50% 50% 0;height:.8em;transform:translate(-50%,-60%) rotate(-45deg);width:.8em}.icon-location::after{border:.1rem solid currentColor;border-radius:50%;height:.2em;transform:translate(-50%,-80%);width:.2em}.icon-emoji{border:.1rem solid currentColor;border-radius:50%}.icon-emoji::before{border-radius:50%;box-shadow:-.17em -.1em,.17em -.1em;height:.15em;width:.15em}.icon-emoji::after{border:.1rem solid currentColor;border-bottom-color:transparent;border-radius:50%;border-right-color:transparent;height:.5em;transform:translate(-50%,-40%) rotate(-135deg);width:.5em} \ No newline at end of file diff --git a/static/css/spectre.min.css b/static/css/spectre.min.css new file mode 100644 index 0000000..0fe23d9 --- /dev/null +++ b/static/css/spectre.min.css @@ -0,0 +1 @@ +/*! Spectre.css v0.5.9 | MIT License | github.com/picturepan2/spectre */html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}hr{box-sizing:content-box;height:0;overflow:visible}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}address{font-style:normal}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:"SF Mono","Segoe UI Mono","Roboto Mono",Menlo,Courier,monospace;font-size:1em}dfn{font-style:italic}small{font-size:80%;font-weight:400}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}fieldset{border:0;margin:0;padding:0}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item;outline:0}canvas{display:inline-block}template{display:none}[hidden]{display:none}*,::after,::before{box-sizing:inherit}html{box-sizing:border-box;font-size:20px;line-height:1.5;-webkit-tap-highlight-color:transparent}body{background:#fff;color:#3b4351;font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;font-size:.8rem;overflow-x:hidden;text-rendering:optimizeLegibility}a{color:#5755d9;outline:0;text-decoration:none}a:focus{box-shadow:0 0 0 .1rem rgba(87,85,217,.2)}a.active,a:active,a:focus,a:hover{color:#302ecd;text-decoration:underline}a:visited{color:#807fe2}h1,h2,h3,h4,h5,h6{color:inherit;font-weight:500;line-height:1.2;margin-bottom:.5em;margin-top:0}.h1,.h2,.h3,.h4,.h5,.h6{font-weight:500}.h1,h1{font-size:2rem}.h2,h2{font-size:1.6rem}.h3,h3{font-size:1.4rem}.h4,h4{font-size:1.2rem}.h5,h5{font-size:1rem}.h6,h6{font-size:.8rem}p{margin:0 0 1.2rem}a,ins,u{-webkit-text-decoration-skip:ink edges;text-decoration-skip:ink edges}abbr[title]{border-bottom:.05rem dotted;cursor:help;text-decoration:none}kbd{background:#303742;border-radius:.1rem;color:#fff;font-size:.7rem;line-height:1.25;padding:.1rem .2rem}mark{background:#ffe9b3;border-bottom:.05rem solid #ffd367;border-radius:.1rem;color:#3b4351;padding:.05rem .1rem 0}blockquote{border-left:.1rem solid #dadee4;margin-left:0;padding:.4rem .8rem}blockquote p:last-child{margin-bottom:0}ol,ul{margin:.8rem 0 .8rem .8rem;padding:0}ol ol,ol ul,ul ol,ul ul{margin:.8rem 0 .8rem .8rem}ol li,ul li{margin-top:.4rem}ul{list-style:disc inside}ul ul{list-style-type:circle}ol{list-style:decimal inside}ol ol{list-style-type:lower-alpha}dl dt{font-weight:700}dl dd{margin:.4rem 0 .8rem 0}.lang-zh,.lang-zh-hans,html:lang(zh),html:lang(zh-Hans){font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Helvetica Neue",sans-serif}.lang-zh-hant,html:lang(zh-Hant){font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang TC","Hiragino Sans CNS","Microsoft JhengHei","Helvetica Neue",sans-serif}.lang-ja,html:lang(ja){font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Hiragino Sans","Hiragino Kaku Gothic Pro","Yu Gothic",YuGothic,Meiryo,"Helvetica Neue",sans-serif}.lang-ko,html:lang(ko){font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Malgun Gothic","Helvetica Neue",sans-serif}.lang-cjk ins,.lang-cjk u,:lang(ja) ins,:lang(ja) u,:lang(zh) ins,:lang(zh) u{border-bottom:.05rem solid;text-decoration:none}.lang-cjk del+del,.lang-cjk del+s,.lang-cjk ins+ins,.lang-cjk ins+u,.lang-cjk s+del,.lang-cjk s+s,.lang-cjk u+ins,.lang-cjk u+u,:lang(ja) del+del,:lang(ja) del+s,:lang(ja) ins+ins,:lang(ja) ins+u,:lang(ja) s+del,:lang(ja) s+s,:lang(ja) u+ins,:lang(ja) u+u,:lang(zh) del+del,:lang(zh) del+s,:lang(zh) ins+ins,:lang(zh) ins+u,:lang(zh) s+del,:lang(zh) s+s,:lang(zh) u+ins,:lang(zh) u+u{margin-left:.125em}.table{border-collapse:collapse;border-spacing:0;text-align:left;width:100%}.table.table-striped tbody tr:nth-of-type(odd){background:#f7f8f9}.table tbody tr.active,.table.table-striped tbody tr.active{background:#eef0f3}.table.table-hover tbody tr:hover{background:#eef0f3}.table.table-scroll{display:block;overflow-x:auto;padding-bottom:.75rem;white-space:nowrap}.table td,.table th{border-bottom:.05rem solid #dadee4;padding:.6rem .4rem}.table th{border-bottom-width:.1rem}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:.05rem solid #5755d9;border-radius:.1rem;color:#5755d9;cursor:pointer;display:inline-block;font-size:.8rem;height:1.8rem;line-height:1.2rem;outline:0;padding:.25rem .4rem;text-align:center;text-decoration:none;transition:background .2s,border .2s,box-shadow .2s,color .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.btn:focus{box-shadow:0 0 0 .1rem rgba(87,85,217,.2)}.btn:focus,.btn:hover{background:#f1f1fc;border-color:#4b48d6;text-decoration:none}.btn.active,.btn:active{background:#4b48d6;border-color:#3634d2;color:#fff;text-decoration:none}.btn.active.loading::after,.btn:active.loading::after{border-bottom-color:#fff;border-left-color:#fff}.btn.disabled,.btn:disabled,.btn[disabled]{cursor:default;opacity:.5;pointer-events:none}.btn.btn-primary{background:#5755d9;border-color:#4b48d6;color:#fff}.btn.btn-primary:focus,.btn.btn-primary:hover{background:#4240d4;border-color:#3634d2;color:#fff}.btn.btn-primary.active,.btn.btn-primary:active{background:#3a38d2;border-color:#302ecd;color:#fff}.btn.btn-primary.loading::after{border-bottom-color:#fff;border-left-color:#fff}.btn.btn-success{background:#32b643;border-color:#2faa3f;color:#fff}.btn.btn-success:focus{box-shadow:0 0 0 .1rem rgba(50,182,67,.2)}.btn.btn-success:focus,.btn.btn-success:hover{background:#30ae40;border-color:#2da23c;color:#fff}.btn.btn-success.active,.btn.btn-success:active{background:#2a9a39;border-color:#278e34;color:#fff}.btn.btn-success.loading::after{border-bottom-color:#fff;border-left-color:#fff}.btn.btn-error{background:#e85600;border-color:#d95000;color:#fff}.btn.btn-error:focus{box-shadow:0 0 0 .1rem rgba(232,86,0,.2)}.btn.btn-error:focus,.btn.btn-error:hover{background:#de5200;border-color:#cf4d00;color:#fff}.btn.btn-error.active,.btn.btn-error:active{background:#c44900;border-color:#b54300;color:#fff}.btn.btn-error.loading::after{border-bottom-color:#fff;border-left-color:#fff}.btn.btn-link{background:0 0;border-color:transparent;color:#5755d9}.btn.btn-link.active,.btn.btn-link:active,.btn.btn-link:focus,.btn.btn-link:hover{color:#302ecd}.btn.btn-sm{font-size:.7rem;height:1.4rem;padding:.05rem .3rem}.btn.btn-lg{font-size:.9rem;height:2rem;padding:.35rem .6rem}.btn.btn-block{display:block;width:100%}.btn.btn-action{padding-left:0;padding-right:0;width:1.8rem}.btn.btn-action.btn-sm{width:1.4rem}.btn.btn-action.btn-lg{width:2rem}.btn.btn-clear{background:0 0;border:0;color:currentColor;height:1rem;line-height:.8rem;margin-left:.2rem;margin-right:-2px;opacity:1;padding:.1rem;text-decoration:none;width:1rem}.btn.btn-clear:focus,.btn.btn-clear:hover{background:rgba(247,248,249,.5);opacity:.95}.btn.btn-clear::before{content:"\2715"}.btn-group{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.btn-group .btn{-ms-flex:1 0 auto;flex:1 0 auto}.btn-group .btn:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group .btn:not(:first-child):not(:last-child){border-radius:0;margin-left:-.05rem}.btn-group .btn:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-.05rem}.btn-group .btn.active,.btn-group .btn:active,.btn-group .btn:focus,.btn-group .btn:hover{z-index:1}.btn-group.btn-group-block{display:-ms-flexbox;display:flex}.btn-group.btn-group-block .btn{-ms-flex:1 0 0;flex:1 0 0}.form-group:not(:last-child){margin-bottom:.4rem}fieldset{margin-bottom:.8rem}legend{font-size:.9rem;font-weight:500;margin-bottom:.8rem}.form-label{display:block;line-height:1.2rem;padding:.3rem 0}.form-label.label-sm{font-size:.7rem;padding:.1rem 0}.form-label.label-lg{font-size:.9rem;padding:.4rem 0}.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;background-image:none;border:.05rem solid #bcc3ce;border-radius:.1rem;color:#3b4351;display:block;font-size:.8rem;height:1.8rem;line-height:1.2rem;max-width:100%;outline:0;padding:.25rem .4rem;position:relative;transition:background .2s,border .2s,box-shadow .2s,color .2s;width:100%}.form-input:focus{border-color:#5755d9;box-shadow:0 0 0 .1rem rgba(87,85,217,.2)}.form-input:-ms-input-placeholder{color:#bcc3ce}.form-input::-ms-input-placeholder{color:#bcc3ce}.form-input::placeholder{color:#bcc3ce}.form-input.input-sm{font-size:.7rem;height:1.4rem;padding:.05rem .3rem}.form-input.input-lg{font-size:.9rem;height:2rem;padding:.35rem .6rem}.form-input.input-inline{display:inline-block;vertical-align:middle;width:auto}.form-input[type=file]{height:auto}textarea.form-input,textarea.form-input.input-lg,textarea.form-input.input-sm{height:auto}.form-input-hint{color:#bcc3ce;font-size:.7rem;margin-top:.2rem}.has-success .form-input-hint,.is-success+.form-input-hint{color:#32b643}.has-error .form-input-hint,.is-error+.form-input-hint{color:#e85600}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:.05rem solid #bcc3ce;border-radius:.1rem;color:inherit;font-size:.8rem;height:1.8rem;line-height:1.2rem;outline:0;padding:.25rem .4rem;vertical-align:middle;width:100%}.form-select:focus{border-color:#5755d9;box-shadow:0 0 0 .1rem rgba(87,85,217,.2)}.form-select::-ms-expand{display:none}.form-select.select-sm{font-size:.7rem;height:1.4rem;padding:.05rem 1.1rem .05rem .3rem}.form-select.select-lg{font-size:.9rem;height:2rem;padding:.35rem 1.4rem .35rem .6rem}.form-select[multiple],.form-select[size]{height:auto;padding:.25rem .4rem}.form-select[multiple] option,.form-select[size] option{padding:.1rem .2rem}.form-select:not([multiple]):not([size]){background:#fff url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%205'%3E%3Cpath%20fill='%23667189'%20d='M2%200L0%202h4zm0%205L0%203h4z'/%3E%3C/svg%3E") no-repeat right .35rem center/.4rem .5rem;padding-right:1.2rem}.has-icon-left,.has-icon-right{position:relative}.has-icon-left .form-icon,.has-icon-right .form-icon{height:.8rem;margin:0 .25rem;position:absolute;top:50%;transform:translateY(-50%);width:.8rem;z-index:2}.has-icon-left .form-icon{left:.05rem}.has-icon-left .form-input{padding-left:1.3rem}.has-icon-right .form-icon{right:.05rem}.has-icon-right .form-input{padding-right:1.3rem}.form-checkbox,.form-radio,.form-switch{display:block;line-height:1.2rem;margin:.2rem 0;min-height:1.4rem;padding:.1rem .4rem .1rem 1.2rem;position:relative}.form-checkbox input,.form-radio input,.form-switch input{clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;position:absolute;width:1px}.form-checkbox input:focus+.form-icon,.form-radio input:focus+.form-icon,.form-switch input:focus+.form-icon{border-color:#5755d9;box-shadow:0 0 0 .1rem rgba(87,85,217,.2)}.form-checkbox input:checked+.form-icon,.form-radio input:checked+.form-icon,.form-switch input:checked+.form-icon{background:#5755d9;border-color:#5755d9}.form-checkbox .form-icon,.form-radio .form-icon,.form-switch .form-icon{border:.05rem solid #bcc3ce;cursor:pointer;display:inline-block;position:absolute;transition:background .2s,border .2s,box-shadow .2s,color .2s}.form-checkbox.input-sm,.form-radio.input-sm,.form-switch.input-sm{font-size:.7rem;margin:0}.form-checkbox.input-lg,.form-radio.input-lg,.form-switch.input-lg{font-size:.9rem;margin:.3rem 0}.form-checkbox .form-icon,.form-radio .form-icon{background:#fff;height:.8rem;left:0;top:.3rem;width:.8rem}.form-checkbox input:active+.form-icon,.form-radio input:active+.form-icon{background:#eef0f3}.form-checkbox .form-icon{border-radius:.1rem}.form-checkbox input:checked+.form-icon::before{background-clip:padding-box;border:.1rem solid #fff;border-left-width:0;border-top-width:0;content:"";height:9px;left:50%;margin-left:-3px;margin-top:-6px;position:absolute;top:50%;transform:rotate(45deg);width:6px}.form-checkbox input:indeterminate+.form-icon{background:#5755d9;border-color:#5755d9}.form-checkbox input:indeterminate+.form-icon::before{background:#fff;content:"";height:2px;left:50%;margin-left:-5px;margin-top:-1px;position:absolute;top:50%;width:10px}.form-radio .form-icon{border-radius:50%}.form-radio input:checked+.form-icon::before{background:#fff;border-radius:50%;content:"";height:6px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:6px}.form-switch{padding-left:2rem}.form-switch .form-icon{background:#bcc3ce;background-clip:padding-box;border-radius:.45rem;height:.9rem;left:0;top:.25rem;width:1.6rem}.form-switch .form-icon::before{background:#fff;border-radius:50%;content:"";display:block;height:.8rem;left:0;position:absolute;top:0;transition:background .2s,border .2s,box-shadow .2s,color .2s,left .2s;width:.8rem}.form-switch input:checked+.form-icon::before{left:14px}.form-switch input:active+.form-icon::before{background:#f7f8f9}.input-group{display:-ms-flexbox;display:flex}.input-group .input-group-addon{background:#f7f8f9;border:.05rem solid #bcc3ce;border-radius:.1rem;line-height:1.2rem;padding:.25rem .4rem;white-space:nowrap}.input-group .input-group-addon.addon-sm{font-size:.7rem;padding:.05rem .3rem}.input-group .input-group-addon.addon-lg{font-size:.9rem;padding:.35rem .6rem}.input-group .form-input,.input-group .form-select{-ms-flex:1 1 auto;flex:1 1 auto;width:1%}.input-group .input-group-btn{z-index:1}.input-group .form-input:first-child:not(:last-child),.input-group .form-select:first-child:not(:last-child),.input-group .input-group-addon:first-child:not(:last-child),.input-group .input-group-btn:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.input-group .form-input:not(:first-child):not(:last-child),.input-group .form-select:not(:first-child):not(:last-child),.input-group .input-group-addon:not(:first-child):not(:last-child),.input-group .input-group-btn:not(:first-child):not(:last-child){border-radius:0;margin-left:-.05rem}.input-group .form-input:last-child:not(:first-child),.input-group .form-select:last-child:not(:first-child),.input-group .input-group-addon:last-child:not(:first-child),.input-group .input-group-btn:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-.05rem}.input-group .form-input:focus,.input-group .form-select:focus,.input-group .input-group-addon:focus,.input-group .input-group-btn:focus{z-index:2}.input-group .form-select{width:auto}.input-group.input-inline{display:-ms-inline-flexbox;display:inline-flex}.form-input.is-success,.form-select.is-success,.has-success .form-input,.has-success .form-select{background:#f9fdfa;border-color:#32b643}.form-input.is-success:focus,.form-select.is-success:focus,.has-success .form-input:focus,.has-success .form-select:focus{box-shadow:0 0 0 .1rem rgba(50,182,67,.2)}.form-input.is-error,.form-select.is-error,.has-error .form-input,.has-error .form-select{background:#fffaf7;border-color:#e85600}.form-input.is-error:focus,.form-select.is-error:focus,.has-error .form-input:focus,.has-error .form-select:focus{box-shadow:0 0 0 .1rem rgba(232,86,0,.2)}.form-checkbox.is-error .form-icon,.form-radio.is-error .form-icon,.form-switch.is-error .form-icon,.has-error .form-checkbox .form-icon,.has-error .form-radio .form-icon,.has-error .form-switch .form-icon{border-color:#e85600}.form-checkbox.is-error input:checked+.form-icon,.form-radio.is-error input:checked+.form-icon,.form-switch.is-error input:checked+.form-icon,.has-error .form-checkbox input:checked+.form-icon,.has-error .form-radio input:checked+.form-icon,.has-error .form-switch input:checked+.form-icon{background:#e85600;border-color:#e85600}.form-checkbox.is-error input:focus+.form-icon,.form-radio.is-error input:focus+.form-icon,.form-switch.is-error input:focus+.form-icon,.has-error .form-checkbox input:focus+.form-icon,.has-error .form-radio input:focus+.form-icon,.has-error .form-switch input:focus+.form-icon{border-color:#e85600;box-shadow:0 0 0 .1rem rgba(232,86,0,.2)}.form-checkbox.is-error input:indeterminate+.form-icon,.has-error .form-checkbox input:indeterminate+.form-icon{background:#e85600;border-color:#e85600}.form-input:not(:-ms-input-placeholder):invalid{border-color:#e85600}.form-input:not(:placeholder-shown):invalid{border-color:#e85600}.form-input:not(:-ms-input-placeholder):invalid:focus{background:#fffaf7;box-shadow:0 0 0 .1rem rgba(232,86,0,.2)}.form-input:not(:placeholder-shown):invalid:focus{background:#fffaf7;box-shadow:0 0 0 .1rem rgba(232,86,0,.2)}.form-input:not(:-ms-input-placeholder):invalid+.form-input-hint{color:#e85600}.form-input:not(:placeholder-shown):invalid+.form-input-hint{color:#e85600}.form-input.disabled,.form-input:disabled,.form-select.disabled,.form-select:disabled{background-color:#eef0f3;cursor:not-allowed;opacity:.5}.form-input[readonly]{background-color:#f7f8f9}input.disabled+.form-icon,input:disabled+.form-icon{background:#eef0f3;cursor:not-allowed;opacity:.5}.form-switch input.disabled+.form-icon::before,.form-switch input:disabled+.form-icon::before{background:#fff}.form-horizontal{padding:.4rem 0}.form-horizontal .form-group{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.form-inline{display:inline-block}.label{background:#eef0f3;border-radius:.1rem;color:#455060;display:inline-block;line-height:1.25;padding:.1rem .2rem}.label.label-rounded{border-radius:5rem;padding-left:.4rem;padding-right:.4rem}.label.label-primary{background:#5755d9;color:#fff}.label.label-secondary{background:#f1f1fc;color:#5755d9}.label.label-success{background:#32b643;color:#fff}.label.label-warning{background:#ffb700;color:#fff}.label.label-error{background:#e85600;color:#fff}code{background:#fcf2f2;border-radius:.1rem;color:#d73e48;font-size:85%;line-height:1.25;padding:.1rem .2rem}.code{border-radius:.1rem;color:#3b4351;position:relative}.code::before{color:#bcc3ce;content:attr(data-lang);font-size:.7rem;position:absolute;right:.4rem;top:.1rem}.code code{background:#f7f8f9;color:inherit;display:block;line-height:1.5;overflow-x:auto;padding:1rem;width:100%}.img-responsive{display:block;height:auto;max-width:100%}.img-fit-cover{object-fit:cover}.img-fit-contain{object-fit:contain}.video-responsive{display:block;overflow:hidden;padding:0;position:relative;width:100%}.video-responsive::before{content:"";display:block;padding-bottom:56.25%}.video-responsive embed,.video-responsive iframe,.video-responsive object{border:0;bottom:0;height:100%;left:0;position:absolute;right:0;top:0;width:100%}video.video-responsive{height:auto;max-width:100%}video.video-responsive::before{content:none}.video-responsive-4-3::before{padding-bottom:75%}.video-responsive-1-1::before{padding-bottom:100%}.figure{margin:0 0 .4rem 0}.figure .figure-caption{color:#66758c;margin-top:.4rem}.container{margin-left:auto;margin-right:auto;padding-left:.4rem;padding-right:.4rem;width:100%}.container.grid-xl{max-width:1296px}.container.grid-lg{max-width:976px}.container.grid-md{max-width:856px}.container.grid-sm{max-width:616px}.container.grid-xs{max-width:496px}.show-lg,.show-md,.show-sm,.show-xl,.show-xs{display:none!important}.cols,.columns{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:-.4rem;margin-right:-.4rem}.cols.col-gapless,.columns.col-gapless{margin-left:0;margin-right:0}.cols.col-gapless>.column,.columns.col-gapless>.column{padding-left:0;padding-right:0}.cols.col-oneline,.columns.col-oneline{-ms-flex-wrap:nowrap;flex-wrap:nowrap;overflow-x:auto}.column,[class~=col-]{-ms-flex:1;flex:1;max-width:100%;padding-left:.4rem;padding-right:.4rem}.column.col-1,.column.col-10,.column.col-11,.column.col-12,.column.col-2,.column.col-3,.column.col-4,.column.col-5,.column.col-6,.column.col-7,.column.col-8,.column.col-9,.column.col-auto,[class~=col-].col-1,[class~=col-].col-10,[class~=col-].col-11,[class~=col-].col-12,[class~=col-].col-2,[class~=col-].col-3,[class~=col-].col-4,[class~=col-].col-5,[class~=col-].col-6,[class~=col-].col-7,[class~=col-].col-8,[class~=col-].col-9,[class~=col-].col-auto{-ms-flex:none;flex:none}.col-12{width:100%}.col-11{width:91.66666667%}.col-10{width:83.33333333%}.col-9{width:75%}.col-8{width:66.66666667%}.col-7{width:58.33333333%}.col-6{width:50%}.col-5{width:41.66666667%}.col-4{width:33.33333333%}.col-3{width:25%}.col-2{width:16.66666667%}.col-1{width:8.33333333%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;max-width:none;width:auto}.col-mx-auto{margin-left:auto;margin-right:auto}.col-ml-auto{margin-left:auto}.col-mr-auto{margin-right:auto}@media (max-width:1280px){.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{-ms-flex:none;flex:none}.col-xl-12{width:100%}.col-xl-11{width:91.66666667%}.col-xl-10{width:83.33333333%}.col-xl-9{width:75%}.col-xl-8{width:66.66666667%}.col-xl-7{width:58.33333333%}.col-xl-6{width:50%}.col-xl-5{width:41.66666667%}.col-xl-4{width:33.33333333%}.col-xl-3{width:25%}.col-xl-2{width:16.66666667%}.col-xl-1{width:8.33333333%}.col-xl-auto{width:auto}.hide-xl{display:none!important}.show-xl{display:block!important}}@media (max-width:960px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto{-ms-flex:none;flex:none}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-auto{width:auto}.hide-lg{display:none!important}.show-lg{display:block!important}}@media (max-width:840px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto{-ms-flex:none;flex:none}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-auto{width:auto}.hide-md{display:none!important}.show-md{display:block!important}}@media (max-width:600px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto{-ms-flex:none;flex:none}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-auto{width:auto}.hide-sm{display:none!important}.show-sm{display:block!important}}@media (max-width:480px){.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-auto{-ms-flex:none;flex:none}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-auto{width:auto}.hide-xs{display:none!important}.show-xs{display:block!important}}.hero{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;padding-bottom:4rem;padding-top:4rem}.hero.hero-sm{padding-bottom:2rem;padding-top:2rem}.hero.hero-lg{padding-bottom:8rem;padding-top:8rem}.hero .hero-body{padding:.4rem}.navbar{align-items:stretch;display:-ms-flexbox;display:flex;-ms-flex-align:stretch;-ms-flex-pack:justify;-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content:space-between}.navbar .navbar-section{align-items:center;display:-ms-flexbox;display:flex;-ms-flex:1 0 0;flex:1 0 0;-ms-flex-align:center}.navbar .navbar-section:not(:first-child):last-child{-ms-flex-pack:end;justify-content:flex-end}.navbar .navbar-center{align-items:center;display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-align:center}.navbar .navbar-brand{font-size:.9rem;text-decoration:none}.accordion input:checked~.accordion-header>.icon:first-child,.accordion[open] .accordion-header>.icon:first-child{transform:rotate(90deg)}.accordion input:checked~.accordion-body,.accordion[open] .accordion-body{max-height:50rem}.accordion .accordion-header{display:block;padding:.2rem .4rem}.accordion .accordion-header .icon{transition:transform .25s}.accordion .accordion-body{margin-bottom:.4rem;max-height:0;overflow:hidden;transition:max-height .25s}summary.accordion-header::-webkit-details-marker{display:none}.avatar{background:#5755d9;border-radius:50%;color:rgba(255,255,255,.85);display:inline-block;font-size:.8rem;font-weight:300;height:1.6rem;line-height:1.25;margin:0;position:relative;vertical-align:middle;width:1.6rem}.avatar.avatar-xs{font-size:.4rem;height:.8rem;width:.8rem}.avatar.avatar-sm{font-size:.6rem;height:1.2rem;width:1.2rem}.avatar.avatar-lg{font-size:1.2rem;height:2.4rem;width:2.4rem}.avatar.avatar-xl{font-size:1.6rem;height:3.2rem;width:3.2rem}.avatar img{border-radius:50%;height:100%;position:relative;width:100%;z-index:1}.avatar .avatar-icon,.avatar .avatar-presence{background:#fff;bottom:14.64%;height:50%;padding:.1rem;position:absolute;right:14.64%;transform:translate(50%,50%);width:50%;z-index:2}.avatar .avatar-presence{background:#bcc3ce;border-radius:50%;box-shadow:0 0 0 .1rem #fff;height:.5em;width:.5em}.avatar .avatar-presence.online{background:#32b643}.avatar .avatar-presence.busy{background:#e85600}.avatar .avatar-presence.away{background:#ffb700}.avatar[data-initial]::before{color:currentColor;content:attr(data-initial);left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1}.badge{position:relative;white-space:nowrap}.badge:not([data-badge])::after,.badge[data-badge]::after{background:#5755d9;background-clip:padding-box;border-radius:.5rem;box-shadow:0 0 0 .1rem #fff;color:#fff;content:attr(data-badge);display:inline-block;transform:translate(-.05rem,-.5rem)}.badge[data-badge]::after{font-size:.7rem;height:.9rem;line-height:1;min-width:.9rem;padding:.1rem .2rem;text-align:center;white-space:nowrap}.badge:not([data-badge])::after,.badge[data-badge=""]::after{height:6px;min-width:6px;padding:0;width:6px}.badge.btn::after{position:absolute;right:0;top:0;transform:translate(50%,-50%)}.badge.avatar::after{position:absolute;right:14.64%;top:14.64%;transform:translate(50%,-50%);z-index:100}.breadcrumb{list-style:none;margin:.2rem 0;padding:.2rem 0}.breadcrumb .breadcrumb-item{color:#66758c;display:inline-block;margin:0;padding:.2rem 0}.breadcrumb .breadcrumb-item:not(:last-child){margin-right:.2rem}.breadcrumb .breadcrumb-item:not(:last-child) a{color:#66758c}.breadcrumb .breadcrumb-item:not(:first-child)::before{color:#66758c;content:"/";padding-right:.4rem}.bar{background:#eef0f3;border-radius:.1rem;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;height:.8rem;width:100%}.bar.bar-sm{height:.2rem}.bar .bar-item{background:#5755d9;color:#fff;display:block;-ms-flex-negative:0;flex-shrink:0;font-size:.7rem;height:100%;line-height:.8rem;position:relative;text-align:center;width:0}.bar .bar-item:first-child{border-bottom-left-radius:.1rem;border-top-left-radius:.1rem}.bar .bar-item:last-child{border-bottom-right-radius:.1rem;border-top-right-radius:.1rem;-ms-flex-negative:1;flex-shrink:1}.bar-slider{height:.1rem;margin:.4rem 0;position:relative}.bar-slider .bar-item{left:0;padding:0;position:absolute}.bar-slider .bar-item:not(:last-child):first-child{background:#eef0f3;z-index:1}.bar-slider .bar-slider-btn{background:#5755d9;border:0;border-radius:50%;height:.6rem;padding:0;position:absolute;right:0;top:50%;transform:translate(50%,-50%);width:.6rem}.bar-slider .bar-slider-btn:active{box-shadow:0 0 0 .1rem #5755d9}.card{background:#fff;border:.05rem solid #dadee4;border-radius:.1rem;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card .card-body,.card .card-footer,.card .card-header{padding:.8rem;padding-bottom:0}.card .card-body:last-child,.card .card-footer:last-child,.card .card-header:last-child{padding-bottom:.8rem}.card .card-body{-ms-flex:1 1 auto;flex:1 1 auto}.card .card-image{padding-top:.8rem}.card .card-image:first-child{padding-top:0}.card .card-image:first-child img{border-top-left-radius:.1rem;border-top-right-radius:.1rem}.card .card-image:last-child img{border-bottom-left-radius:.1rem;border-bottom-right-radius:.1rem}.chip{align-items:center;background:#eef0f3;border-radius:5rem;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;font-size:90%;height:1.2rem;line-height:.8rem;margin:.1rem;max-width:320px;overflow:hidden;padding:.2rem .4rem;text-decoration:none;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.chip.active{background:#5755d9;color:#fff}.chip .avatar{margin-left:-.4rem;margin-right:.2rem}.chip .btn-clear{border-radius:50%;transform:scale(.75)}.dropdown{display:inline-block;position:relative}.dropdown .menu{animation:slide-down .15s ease 1;display:none;left:0;max-height:50vh;overflow-y:auto;position:absolute;top:100%}.dropdown.dropdown-right .menu{left:auto;right:0}.dropdown .dropdown-toggle:focus+.menu,.dropdown .menu:hover,.dropdown.active .menu{display:block}.dropdown .btn-group .dropdown-toggle:nth-last-child(2){border-bottom-right-radius:.1rem;border-top-right-radius:.1rem}.empty{background:#f7f8f9;border-radius:.1rem;color:#66758c;padding:3.2rem 1.6rem;text-align:center}.empty .empty-icon{margin-bottom:.8rem}.empty .empty-subtitle,.empty .empty-title{margin:.4rem auto}.empty .empty-action{margin-top:.8rem}.menu{background:#fff;border-radius:.1rem;box-shadow:0 .05rem .2rem rgba(48,55,66,.3);list-style:none;margin:0;min-width:180px;padding:.4rem;transform:translateY(.2rem);z-index:300}.menu.menu-nav{background:0 0;box-shadow:none}.menu .menu-item{margin-top:0;padding:0 .4rem;position:relative;text-decoration:none}.menu .menu-item>a{border-radius:.1rem;color:inherit;display:block;margin:0 -.4rem;padding:.2rem .4rem;text-decoration:none}.menu .menu-item>a:focus,.menu .menu-item>a:hover{background:#f1f1fc;color:#5755d9}.menu .menu-item>a.active,.menu .menu-item>a:active{background:#f1f1fc;color:#5755d9}.menu .menu-item .form-checkbox,.menu .menu-item .form-radio,.menu .menu-item .form-switch{margin:.1rem 0}.menu .menu-item+.menu-item{margin-top:.2rem}.menu .menu-badge{align-items:center;display:-ms-flexbox;display:flex;-ms-flex-align:center;height:100%;position:absolute;right:0;top:0}.menu .menu-badge .label{margin-right:.4rem}.modal{align-items:center;bottom:0;display:none;-ms-flex-align:center;-ms-flex-pack:center;justify-content:center;left:0;opacity:0;overflow:hidden;padding:.4rem;position:fixed;right:0;top:0}.modal.active,.modal:target{display:-ms-flexbox;display:flex;opacity:1;z-index:400}.modal.active .modal-overlay,.modal:target .modal-overlay{background:rgba(247,248,249,.75);bottom:0;cursor:default;display:block;left:0;position:absolute;right:0;top:0}.modal.active .modal-container,.modal:target .modal-container{animation:slide-down .2s ease 1;z-index:1}.modal.modal-sm .modal-container{max-width:320px;padding:0 .4rem}.modal.modal-lg .modal-overlay{background:#fff}.modal.modal-lg .modal-container{box-shadow:none;max-width:960px}.modal-container{background:#fff;border-radius:.1rem;box-shadow:0 .2rem .5rem rgba(48,55,66,.3);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-height:75vh;max-width:640px;padding:0 .8rem;width:100%}.modal-container.modal-fullheight{max-height:100vh}.modal-container .modal-header{color:#303742;padding:.8rem}.modal-container .modal-body{overflow-y:auto;padding:.8rem;position:relative}.modal-container .modal-footer{padding:.8rem;text-align:right}.nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;list-style:none;margin:.2rem 0}.nav .nav-item a{color:#66758c;padding:.2rem .4rem;text-decoration:none}.nav .nav-item a:focus,.nav .nav-item a:hover{color:#5755d9}.nav .nav-item.active>a{color:#505c6e;font-weight:700}.nav .nav-item.active>a:focus,.nav .nav-item.active>a:hover{color:#5755d9}.nav .nav{margin-bottom:.4rem;margin-left:.8rem}.pagination{display:-ms-flexbox;display:flex;list-style:none;margin:.2rem 0;padding:.2rem 0}.pagination .page-item{margin:.2rem .05rem}.pagination .page-item span{display:inline-block;padding:.2rem .2rem}.pagination .page-item a{border-radius:.1rem;display:inline-block;padding:.2rem .4rem;text-decoration:none}.pagination .page-item a:focus,.pagination .page-item a:hover{color:#5755d9}.pagination .page-item.disabled a{cursor:default;opacity:.5;pointer-events:none}.pagination .page-item.active a{background:#5755d9;color:#fff}.pagination .page-item.page-next,.pagination .page-item.page-prev{-ms-flex:1 0 50%;flex:1 0 50%}.pagination .page-item.page-next{text-align:right}.pagination .page-item .page-item-title{margin:0}.pagination .page-item .page-item-subtitle{margin:0;opacity:.5}.panel{border:.05rem solid #dadee4;border-radius:.1rem;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.panel .panel-footer,.panel .panel-header{-ms-flex:0 0 auto;flex:0 0 auto;padding:.8rem}.panel .panel-nav{-ms-flex:0 0 auto;flex:0 0 auto}.panel .panel-body{-ms-flex:1 1 auto;flex:1 1 auto;overflow-y:auto;padding:0 .8rem}.popover{display:inline-block;position:relative}.popover .popover-container{left:50%;opacity:0;padding:.4rem;position:absolute;top:0;transform:translate(-50%,-50%) scale(0);transition:transform .2s;width:320px;z-index:300}.popover :focus+.popover-container,.popover:hover .popover-container{display:block;opacity:1;transform:translate(-50%,-100%) scale(1)}.popover.popover-right .popover-container{left:100%;top:50%}.popover.popover-right :focus+.popover-container,.popover.popover-right:hover .popover-container{transform:translate(0,-50%) scale(1)}.popover.popover-bottom .popover-container{left:50%;top:100%}.popover.popover-bottom :focus+.popover-container,.popover.popover-bottom:hover .popover-container{transform:translate(-50%,0) scale(1)}.popover.popover-left .popover-container{left:0;top:50%}.popover.popover-left :focus+.popover-container,.popover.popover-left:hover .popover-container{transform:translate(-100%,-50%) scale(1)}.popover .card{border:0;box-shadow:0 .2rem .5rem rgba(48,55,66,.3)}.step{display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;list-style:none;margin:.2rem 0;width:100%}.step .step-item{-ms-flex:1 1 0;flex:1 1 0;margin-top:0;min-height:1rem;position:relative;text-align:center}.step .step-item:not(:first-child)::before{background:#5755d9;content:"";height:2px;left:-50%;position:absolute;top:9px;width:100%}.step .step-item a{color:#5755d9;display:inline-block;padding:20px 10px 0;text-decoration:none}.step .step-item a::before{background:#5755d9;border:.1rem solid #fff;border-radius:50%;content:"";display:block;height:.6rem;left:50%;position:absolute;top:.2rem;transform:translateX(-50%);width:.6rem;z-index:1}.step .step-item.active a::before{background:#fff;border:.1rem solid #5755d9}.step .step-item.active~.step-item::before{background:#dadee4}.step .step-item.active~.step-item a{color:#bcc3ce}.step .step-item.active~.step-item a::before{background:#dadee4}.tab{align-items:center;border-bottom:.05rem solid #dadee4;display:-ms-flexbox;display:flex;-ms-flex-align:center;-ms-flex-wrap:wrap;flex-wrap:wrap;list-style:none;margin:.2rem 0 .15rem 0}.tab .tab-item{margin-top:0}.tab .tab-item a{border-bottom:.1rem solid transparent;color:inherit;display:block;margin:0 .4rem 0 0;padding:.4rem .2rem .3rem .2rem;text-decoration:none}.tab .tab-item a:focus,.tab .tab-item a:hover{color:#5755d9}.tab .tab-item a.active,.tab .tab-item.active a{border-bottom-color:#5755d9;color:#5755d9}.tab .tab-item.tab-action{-ms-flex:1 0 auto;flex:1 0 auto;text-align:right}.tab .tab-item .btn-clear{margin-top:-.2rem}.tab.tab-block .tab-item{-ms-flex:1 0 0;flex:1 0 0;text-align:center}.tab.tab-block .tab-item a{margin:0}.tab.tab-block .tab-item .badge[data-badge]::after{position:absolute;right:.1rem;top:.1rem;transform:translate(0,0)}.tab:not(.tab-block) .badge{padding-right:0}.tile{align-content:space-between;align-items:flex-start;display:-ms-flexbox;display:flex;-ms-flex-align:start;-ms-flex-line-pack:justify}.tile .tile-action,.tile .tile-icon{-ms-flex:0 0 auto;flex:0 0 auto}.tile .tile-content{-ms-flex:1 1 auto;flex:1 1 auto}.tile .tile-content:not(:first-child){padding-left:.4rem}.tile .tile-content:not(:last-child){padding-right:.4rem}.tile .tile-subtitle,.tile .tile-title{line-height:1.2rem}.tile.tile-centered{align-items:center;-ms-flex-align:center}.tile.tile-centered .tile-content{overflow:hidden}.tile.tile-centered .tile-subtitle,.tile.tile-centered .tile-title{margin-bottom:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast{background:rgba(48,55,66,.95);border:.05rem solid #303742;border-color:#303742;border-radius:.1rem;color:#fff;display:block;padding:.4rem;width:100%}.toast.toast-primary{background:rgba(87,85,217,.95);border-color:#5755d9}.toast.toast-success{background:rgba(50,182,67,.95);border-color:#32b643}.toast.toast-warning{background:rgba(255,183,0,.95);border-color:#ffb700}.toast.toast-error{background:rgba(232,86,0,.95);border-color:#e85600}.toast a{color:#fff;text-decoration:underline}.toast a.active,.toast a:active,.toast a:focus,.toast a:hover{opacity:.75}.toast .btn-clear{margin:.1rem}.toast p:last-child{margin-bottom:0}.tooltip{position:relative}.tooltip::after{background:rgba(48,55,66,.95);border-radius:.1rem;bottom:100%;color:#fff;content:attr(data-tooltip);display:block;font-size:.7rem;left:50%;max-width:320px;opacity:0;overflow:hidden;padding:.2rem .4rem;pointer-events:none;position:absolute;text-overflow:ellipsis;transform:translate(-50%,.4rem);transition:opacity .2s,transform .2s;white-space:pre;z-index:300}.tooltip:focus::after,.tooltip:hover::after{opacity:1;transform:translate(-50%,-.2rem)}.tooltip.disabled,.tooltip[disabled]{pointer-events:auto}.tooltip.tooltip-right::after{bottom:50%;left:100%;transform:translate(-.2rem,50%)}.tooltip.tooltip-right:focus::after,.tooltip.tooltip-right:hover::after{transform:translate(.2rem,50%)}.tooltip.tooltip-bottom::after{bottom:auto;top:100%;transform:translate(-50%,-.4rem)}.tooltip.tooltip-bottom:focus::after,.tooltip.tooltip-bottom:hover::after{transform:translate(-50%,.2rem)}.tooltip.tooltip-left::after{bottom:50%;left:auto;right:100%;transform:translate(.4rem,50%)}.tooltip.tooltip-left:focus::after,.tooltip.tooltip-left:hover::after{transform:translate(-.2rem,50%)}@keyframes loading{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-1.6rem)}100%{opacity:1;transform:translateY(0)}}.text-primary{color:#5755d9!important}a.text-primary:focus,a.text-primary:hover{color:#4240d4}a.text-primary:visited{color:#6c6ade}.text-secondary{color:#e5e5f9!important}a.text-secondary:focus,a.text-secondary:hover{color:#d1d0f4}a.text-secondary:visited{color:#fafafe}.text-gray{color:#bcc3ce!important}a.text-gray:focus,a.text-gray:hover{color:#adb6c4}a.text-gray:visited{color:#cbd0d9}.text-light{color:#fff!important}a.text-light:focus,a.text-light:hover{color:#f2f2f2}a.text-light:visited{color:#fff}.text-dark{color:#3b4351!important}a.text-dark:focus,a.text-dark:hover{color:#303742}a.text-dark:visited{color:#455060}.text-success{color:#32b643!important}a.text-success:focus,a.text-success:hover{color:#2da23c}a.text-success:visited{color:#39c94b}.text-warning{color:#ffb700!important}a.text-warning:focus,a.text-warning:hover{color:#e6a500}a.text-warning:visited{color:#ffbe1a}.text-error{color:#e85600!important}a.text-error:focus,a.text-error:hover{color:#cf4d00}a.text-error:visited{color:#ff6003}.bg-primary{background:#5755d9!important;color:#fff}.bg-secondary{background:#f1f1fc!important}.bg-dark{background:#303742!important;color:#fff}.bg-gray{background:#f7f8f9!important}.bg-success{background:#32b643!important;color:#fff}.bg-warning{background:#ffb700!important;color:#fff}.bg-error{background:#e85600!important;color:#fff}.c-hand{cursor:pointer}.c-move{cursor:move}.c-zoom-in{cursor:zoom-in}.c-zoom-out{cursor:zoom-out}.c-not-allowed{cursor:not-allowed}.c-auto{cursor:auto}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.d-hide,.d-none{display:none!important}.d-visible{visibility:visible}.d-invisible{visibility:hidden}.text-hide{background:0 0;border:0;color:transparent;font-size:0;line-height:0;text-shadow:none}.text-assistive{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.divider,.divider-vert{display:block;position:relative}.divider-vert[data-content]::after,.divider[data-content]::after{background:#fff;color:#bcc3ce;content:attr(data-content);display:inline-block;font-size:.7rem;padding:0 .4rem;transform:translateY(-.65rem)}.divider{border-top:.05rem solid #f1f3f5;height:.05rem;margin:.4rem 0}.divider[data-content]{margin:.8rem 0}.divider-vert{display:block;padding:.8rem}.divider-vert::before{border-left:.05rem solid #dadee4;bottom:.4rem;content:"";display:block;left:50%;position:absolute;top:.4rem;transform:translateX(-50%)}.divider-vert[data-content]::after{left:50%;padding:.2rem 0;position:absolute;top:50%;transform:translate(-50%,-50%)}.loading{color:transparent!important;min-height:.8rem;pointer-events:none;position:relative}.loading::after{animation:loading .5s infinite linear;background:0 0;border:.1rem solid #5755d9;border-radius:50%;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:.8rem;left:50%;margin-left:-.4rem;margin-top:-.4rem;opacity:1;padding:0;position:absolute;top:50%;width:.8rem;z-index:1}.loading.loading-lg{min-height:2rem}.loading.loading-lg::after{height:1.6rem;margin-left:-.8rem;margin-top:-.8rem;width:1.6rem}.clearfix::after{clear:both;content:"";display:table}.float-left{float:left!important}.float-right{float:right!important}.p-relative{position:relative!important}.p-absolute{position:absolute!important}.p-fixed{position:fixed!important}.p-sticky{position:-webkit-sticky!important;position:sticky!important}.p-centered{display:block;float:none;margin-left:auto;margin-right:auto}.flex-centered{align-items:center;display:-ms-flexbox;display:flex;-ms-flex-align:center;-ms-flex-pack:center;justify-content:center}.m-0{margin:0!important}.mb-0{margin-bottom:0!important}.ml-0{margin-left:0!important}.mr-0{margin-right:0!important}.mt-0{margin-top:0!important}.mx-0{margin-left:0!important;margin-right:0!important}.my-0{margin-bottom:0!important;margin-top:0!important}.m-1{margin:.2rem!important}.mb-1{margin-bottom:.2rem!important}.ml-1{margin-left:.2rem!important}.mr-1{margin-right:.2rem!important}.mt-1{margin-top:.2rem!important}.mx-1{margin-left:.2rem!important;margin-right:.2rem!important}.my-1{margin-bottom:.2rem!important;margin-top:.2rem!important}.m-2{margin:.4rem!important}.mb-2{margin-bottom:.4rem!important}.ml-2{margin-left:.4rem!important}.mr-2{margin-right:.4rem!important}.mt-2{margin-top:.4rem!important}.mx-2{margin-left:.4rem!important;margin-right:.4rem!important}.my-2{margin-bottom:.4rem!important;margin-top:.4rem!important}.p-0{padding:0!important}.pb-0{padding-bottom:0!important}.pl-0{padding-left:0!important}.pr-0{padding-right:0!important}.pt-0{padding-top:0!important}.px-0{padding-left:0!important;padding-right:0!important}.py-0{padding-bottom:0!important;padding-top:0!important}.p-1{padding:.2rem!important}.pb-1{padding-bottom:.2rem!important}.pl-1{padding-left:.2rem!important}.pr-1{padding-right:.2rem!important}.pt-1{padding-top:.2rem!important}.px-1{padding-left:.2rem!important;padding-right:.2rem!important}.py-1{padding-bottom:.2rem!important;padding-top:.2rem!important}.p-2{padding:.4rem!important}.pb-2{padding-bottom:.4rem!important}.pl-2{padding-left:.4rem!important}.pr-2{padding-right:.4rem!important}.pt-2{padding-top:.4rem!important}.px-2{padding-left:.4rem!important;padding-right:.4rem!important}.py-2{padding-bottom:.4rem!important;padding-top:.4rem!important}.s-rounded{border-radius:.1rem}.s-circle{border-radius:50%}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-normal{font-weight:400}.text-bold{font-weight:700}.text-italic{font-style:italic}.text-large{font-size:1.2em}.text-small{font-size:.9em}.text-tiny{font-size:.8em}.text-muted{opacity:.8}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-clip{overflow:hidden;text-overflow:clip;white-space:nowrap}.text-break{-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto;word-break:break-word;word-wrap:break-word} \ No newline at end of file diff --git a/static/images/logo.svg b/static/images/logo.svg new file mode 100644 index 0000000..22fc538 --- /dev/null +++ b/static/images/logo.svg @@ -0,0 +1,142 @@ + + + +JSON diff --git a/static/js/app.mjs b/static/js/app.mjs index 1d2e5d0..1b9080c 100644 --- a/static/js/app.mjs +++ b/static/js/app.mjs @@ -1,3 +1,124 @@ +import { Editor } from '@editor' +import { MessageBus } from '@mbus' + +export class App { + constructor() {// {{{ + window.mbus = new MessageBus() + this.editor = null + this.typesList = null + this.currentNodeID = null + + const events = [ + 'MENU_ITEM_SELECTED', + 'NODE_SELECTED', + 'EDITOR_NODE_SAVE', + 'TYPES_LIST_FETCHED', + ] + for (const eventName of events) + mbus.subscribe(eventName, event => this.eventHandler(event)) + + mbus.dispatch('MENU_ITEM_SELECTED', 'node') + }// }}} + + eventHandler(event) {// {{{ + switch (event.type) { + case 'MENU_ITEM_SELECTED': + const item = document.querySelector(`#menu [data-section="${event.detail}"]`) + this.section(item, event.detail) + break + + case 'NODE_SELECTED': + this.currentNodeID = event.detail + this.edit(this.currentNodeID) + break + + case 'EDITOR_NODE_SAVE': + this.nodeUpdate() + break + + case 'TYPES_LIST_FETCHED': + const types = document.getElementById('types') + types.replaceChildren(this.typesList.render()) + + break + + default: + console.log(event) + } + }// }}} + section(item, name) {// {{{ + for (const el of document.querySelectorAll('#menu .item')) + el.classList.remove('selected') + item.classList.add('selected') + + for (const el of document.querySelectorAll('.section.show')) + el.classList.remove('show') + + switch (name) { + case 'node': + document.getElementById('nodes').classList.add('show') + document.getElementById('editor-node').classList.add('show') + break + + case 'type': + document.getElementById('types').classList.add('show') + document.getElementById('editor-type-schema').classList.add('show') + + if (this.typesList === null) + this.typesList = new TypesList() + this.typesList.fetchTypes().then(() => { + mbus.dispatch('TYPES_LIST_FETCHED') + }) + + break + } + }// }}} + edit(nodeID) {// {{{ + console.log(nodeID) + fetch(`/nodes/${nodeID}`) + .then(data => data.json()) + .then(json => { + if (!json.OK) { + showError(json.Error) + return + } + + const editorEl = document.querySelector('#editor-node .editor') + this.editor = new Editor(json.Node.TypeSchema) + editorEl.replaceChildren(this.editor.render(json.Node.Data)) + + }) + }// }}} + nodeUpdate() {// {{{ + if (this.editor === null) + return + + const btn = document.querySelector('#editor-node .controls button') + btn.disabled = true + const buttonPressed = Date.now() + + const nodeData = this.editor.data() + + fetch(`/nodes/update/${this.currentNodeID}`, { + method: 'POST', + body: JSON.stringify(nodeData), + }) + .then(data => data.json()) + .then(json => { + if (!json.OK) { + showError(json.Error) + return + } + + const timePassed = Date.now() - buttonPressed + if (timePassed < 250) + setTimeout(()=>btn.disabled = false, 250 - timePassed) + else + btn.disabled = false + }) + }// }}} +} + export class TreeNode { constructor(parent, data) {// {{{ this.data = data @@ -12,16 +133,18 @@ export class TreeNode { const nodeHTML = `
-
+
${this.name()}
` - this.name() + const tmpl = document.createElement('template') tmpl.innerHTML = nodeHTML this.children = tmpl.content.querySelector('.children') + tmpl.content.querySelector('.name').addEventListener('click', () => mbus.dispatch('NODE_SELECTED', this.data.ID)) + // data.NumChildren is set regardless of having fetched the children or not. if (this.hasChildren()) { const img = tmpl.content.querySelector('.expand-status img') @@ -31,7 +154,7 @@ export class TreeNode { tmpl.content.querySelector('.expand-status').classList.add('leaf') if (this.data.TypeIcon) { - const img = tmpl.content.querySelector('.icon img') + const img = tmpl.content.querySelector('.type-icon img') img.setAttribute('src', `/images/${_VERSION}/node_modules/@mdi/svg/svg/${this.data.TypeIcon}.svg`) } @@ -51,7 +174,6 @@ export class TreeNode { }// }}} sortChildren() {// {{{ this.data.Children.sort((a, b) => { - console.log(a.Name, b.Name) if (a.TypeName < b.TypeName) return -1 if (a.TypeName > b.TypeName) return 1 @@ -91,10 +213,81 @@ export class TreeNode { return new Promise((resolve, reject) => { fetch(`/nodes/tree/${this.data.ID}?depth=2`) .then(data => data.json()) - .then(json => resolve(json)) + .then(json => { + if (json.OK) + resolve(json.Nodes) + else + reject(json.Error) + }) .catch(err => reject(err)) }) }// }}} } +export class TypesList { + constructur() {// {{{ + this.types = [] + }// }}} + async fetchTypes() {// {{{ + return new Promise((resolve, reject) => { + fetch('/types/') + .then(data => data.json()) + .then(json => { + if (!json.OK) { + showError(json.Error) + return + } + this.types = json.Types + resolve() + }) + .catch(err => reject(err)) + }) + }// }}} + render() {// {{{ + const div = document.createElement('div') + + this.types.sort((a,b)=> { + if (a.Schema['x-group'] === undefined) + a.Schema['x-group'] = 'No group' + + if (b.Schema['x-group'] === undefined) + b.Schema['x-group'] = 'No group' + + if (a.Schema['x-group'] < b.Schema['x-group']) return -1 + if (a.Schema['x-group'] > b.Schema['x-group']) return 1 + + if ((a.Schema.title || a.Name) < (b.Schema.title || b.Name)) return -1 + if ((a.Schema.title || a.Name) > (b.Schema.title || b.Name)) return 1 + + return 0 + }) + + let prevGroup = null + + for (const t of this.types) { + if (t.Name == 'root_node') + continue + + if (t.Schema['x-group'] != prevGroup) { + prevGroup = t.Schema['x-group'] + const group = document.createElement('div') + group.classList.add('group') + group.innerText = t.Schema['x-group'] + div.appendChild(group) + } + + const tDiv = document.createElement('div') + tDiv.classList.add('type') + tDiv.innerHTML = ` +
+
${t.Schema.title || t.Name}
+ ` + + div.appendChild(tDiv) + } + + return div + }// }}} +} + // vim: foldmethod=marker diff --git a/static/js/editor.mjs b/static/js/editor.mjs new file mode 100644 index 0000000..067ccb0 --- /dev/null +++ b/static/js/editor.mjs @@ -0,0 +1,27 @@ +export class Editor { + constructor(schema) { + this.schema = schema + this.editor = null + } + + render(data) { + const div = document.createElement('div') + this.editor = new JSONEditor(div, { + theme: 'spectre', + iconlib: 'spectre', + disable_collapse: true, + disable_properties: true, + schema: this.schema, + }); + + this.editor.on('ready', () => { + this.editor.setValue(data) + }) + + return div + } + + data() { + return this.editor.getValue() + } +} diff --git a/static/js/lib/jsoneditor.js b/static/js/lib/jsoneditor.js new file mode 100644 index 0000000..e57d911 --- /dev/null +++ b/static/js/lib/jsoneditor.js @@ -0,0 +1,2 @@ +/*! For license information please see jsoneditor.js.LICENSE.txt */ +!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var r=e();for(var n in r)("object"==typeof exports?exports:t)[n]=r[n]}}(self,(()=>(()=>{"use strict";var t={9306:(t,e,r)=>{var n=r(4901),i=r(6823),o=TypeError;t.exports=function(t){if(n(t))return t;throw new o(i(t)+" is not a function")}},5548:(t,e,r)=>{var n=r(3517),i=r(6823),o=TypeError;t.exports=function(t){if(n(t))return t;throw new o(i(t)+" is not a constructor")}},3506:(t,e,r)=>{var n=r(3925),i=String,o=TypeError;t.exports=function(t){if(n(t))return t;throw new o("Can't set "+i(t)+" as a prototype")}},6469:(t,e,r)=>{var n=r(8227),i=r(2360),o=r(4913).f,a=n("unscopables"),s=Array.prototype;void 0===s[a]&&o(s,a,{configurable:!0,value:i(null)}),t.exports=function(t){s[a][t]=!0}},7829:(t,e,r)=>{var n=r(8183).charAt;t.exports=function(t,e,r){return e+(r?n(t,e).length:1)}},679:(t,e,r)=>{var n=r(1625),i=TypeError;t.exports=function(t,e){if(n(e,t))return t;throw new i("Incorrect invocation")}},8551:(t,e,r)=>{var n=r(34),i=String,o=TypeError;t.exports=function(t){if(n(t))return t;throw new o(i(t)+" is not an object")}},235:(t,e,r)=>{var n=r(9213).forEach,i=r(4598)("forEach");t.exports=i?[].forEach:function(t){return n(this,t,arguments.length>1?arguments[1]:void 0)}},7916:(t,e,r)=>{var n=r(6080),i=r(9565),o=r(8981),a=r(6319),s=r(4209),l=r(3517),c=r(6198),u=r(4659),h=r(81),p=r(851),d=Array;t.exports=function(t){var e=o(t),r=l(this),f=arguments.length,y=f>1?arguments[1]:void 0,m=void 0!==y;m&&(y=n(y,f>2?arguments[2]:void 0));var v,b,g,w,_,k,j=p(e),O=0;if(!j||this===d&&s(j))for(v=c(e),b=r?new this(v):d(v);v>O;O++)k=m?y(e[O],O):e[O],u(b,O,k);else for(b=r?new this:[],_=(w=h(e,j)).next;!(g=i(_,w)).done;O++)k=m?a(w,y,[g.value,O],!0):g.value,u(b,O,k);return b.length=O,b}},9617:(t,e,r)=>{var n=r(5397),i=r(5610),o=r(6198),a=function(t){return function(e,r,a){var s=n(e),l=o(s);if(0===l)return!t&&-1;var c,u=i(a,l);if(t&&r!=r){for(;l>u;)if((c=s[u++])!=c)return!0}else for(;l>u;u++)if((t||u in s)&&s[u]===r)return t||u||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},9213:(t,e,r)=>{var n=r(6080),i=r(9504),o=r(7055),a=r(8981),s=r(6198),l=r(1469),c=i([].push),u=function(t){var e=1===t,r=2===t,i=3===t,u=4===t,h=6===t,p=7===t,d=5===t||h;return function(f,y,m,v){for(var b,g,w=a(f),_=o(w),k=s(_),j=n(y,m),O=0,x=v||l,C=e?x(f,k):r||p?x(f,0):void 0;k>O;O++)if((d||O in _)&&(g=j(b=_[O],O,w),t))if(e)C[O]=g;else if(g)switch(t){case 3:return!0;case 5:return b;case 6:return O;case 2:c(C,b)}else switch(t){case 4:return!1;case 7:c(C,b)}return h?-1:i||u?u:C}};t.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterReject:u(7)}},597:(t,e,r)=>{var n=r(9039),i=r(8227),o=r(7388),a=i("species");t.exports=function(t){return o>=51||!n((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},4598:(t,e,r)=>{var n=r(9039);t.exports=function(t,e){var r=[][t];return!!r&&n((function(){r.call(null,e||function(){return 1},1)}))}},926:(t,e,r)=>{var n=r(9306),i=r(8981),o=r(7055),a=r(6198),s=TypeError,l="Reduce of empty array with no initial value",c=function(t){return function(e,r,c,u){var h=i(e),p=o(h),d=a(h);if(n(r),0===d&&c<2)throw new s(l);var f=t?d-1:0,y=t?-1:1;if(c<2)for(;;){if(f in p){u=p[f],f+=y;break}if(f+=y,t?f<0:d<=f)throw new s(l)}for(;t?f>=0:d>f;f+=y)f in p&&(u=r(u,p[f],f,h));return u}};t.exports={left:c(!1),right:c(!0)}},4527:(t,e,r)=>{var n=r(3724),i=r(4376),o=TypeError,a=Object.getOwnPropertyDescriptor,s=n&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(t){return t instanceof TypeError}}();t.exports=s?function(t,e){if(i(t)&&!a(t,"length").writable)throw new o("Cannot set read only .length");return t.length=e}:function(t,e){return t.length=e}},7680:(t,e,r)=>{var n=r(9504);t.exports=n([].slice)},4488:(t,e,r)=>{var n=r(7680),i=Math.floor,o=function(t,e){var r=t.length;if(r<8)for(var a,s,l=1;l0;)t[s]=t[--s];s!==l++&&(t[s]=a)}else for(var c=i(r/2),u=o(n(t,0,c),e),h=o(n(t,c),e),p=u.length,d=h.length,f=0,y=0;f{var n=r(4376),i=r(3517),o=r(34),a=r(8227)("species"),s=Array;t.exports=function(t){var e;return n(t)&&(e=t.constructor,(i(e)&&(e===s||n(e.prototype))||o(e)&&null===(e=e[a]))&&(e=void 0)),void 0===e?s:e}},1469:(t,e,r)=>{var n=r(7433);t.exports=function(t,e){return new(n(t))(0===e?0:e)}},6319:(t,e,r)=>{var n=r(8551),i=r(9539);t.exports=function(t,e,r,o){try{return o?e(n(r)[0],r[1]):e(r)}catch(e){i(t,"throw",e)}}},4428:(t,e,r)=>{var n=r(8227)("iterator"),i=!1;try{var o=0,a={next:function(){return{done:!!o++}},return:function(){i=!0}};a[n]=function(){return this},Array.from(a,(function(){throw 2}))}catch(t){}t.exports=function(t,e){try{if(!e&&!i)return!1}catch(t){return!1}var r=!1;try{var o={};o[n]=function(){return{next:function(){return{done:r=!0}}}},t(o)}catch(t){}return r}},4576:(t,e,r)=>{var n=r(9504),i=n({}.toString),o=n("".slice);t.exports=function(t){return o(i(t),8,-1)}},6955:(t,e,r)=>{var n=r(2140),i=r(4901),o=r(4576),a=r(8227)("toStringTag"),s=Object,l="Arguments"===o(function(){return arguments}());t.exports=n?o:function(t){var e,r,n;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=s(t),a))?r:l?o(e):"Object"===(n=o(e))&&i(e.callee)?"Arguments":n}},7740:(t,e,r)=>{var n=r(9297),i=r(5031),o=r(7347),a=r(4913);t.exports=function(t,e,r){for(var s=i(e),l=a.f,c=o.f,u=0;u{var n=r(8227)("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(r){try{return e[n]=!1,"/./"[t](e)}catch(t){}}return!1}},2211:(t,e,r)=>{var n=r(9039);t.exports=!n((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},2529:t=>{t.exports=function(t,e){return{value:t,done:e}}},6699:(t,e,r)=>{var n=r(3724),i=r(4913),o=r(6980);t.exports=n?function(t,e,r){return i.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}},6980:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},4659:(t,e,r)=>{var n=r(3724),i=r(4913),o=r(6980);t.exports=function(t,e,r){n?i.f(t,e,o(0,r)):t[e]=r}},380:(t,e,r)=>{var n=r(9504),i=r(9039),o=r(533).start,a=RangeError,s=isFinite,l=Math.abs,c=Date.prototype,u=c.toISOString,h=n(c.getTime),p=n(c.getUTCDate),d=n(c.getUTCFullYear),f=n(c.getUTCHours),y=n(c.getUTCMilliseconds),m=n(c.getUTCMinutes),v=n(c.getUTCMonth),b=n(c.getUTCSeconds);t.exports=i((function(){return"0385-07-25T07:06:39.999Z"!==u.call(new Date(-50000000000001))}))||!i((function(){u.call(new Date(NaN))}))?function(){if(!s(h(this)))throw new a("Invalid time value");var t=this,e=d(t),r=y(t),n=e<0?"-":e>9999?"+":"";return n+o(l(e),n?6:4,0)+"-"+o(v(t)+1,2,0)+"-"+o(p(t),2,0)+"T"+o(f(t),2,0)+":"+o(m(t),2,0)+":"+o(b(t),2,0)+"."+o(r,3,0)+"Z"}:u},3640:(t,e,r)=>{var n=r(8551),i=r(4270),o=TypeError;t.exports=function(t){if(n(this),"string"===t||"default"===t)t="string";else if("number"!==t)throw new o("Incorrect hint");return i(this,t)}},2106:(t,e,r)=>{var n=r(283),i=r(4913);t.exports=function(t,e,r){return r.get&&n(r.get,e,{getter:!0}),r.set&&n(r.set,e,{setter:!0}),i.f(t,e,r)}},6840:(t,e,r)=>{var n=r(4901),i=r(4913),o=r(283),a=r(9433);t.exports=function(t,e,r,s){s||(s={});var l=s.enumerable,c=void 0!==s.name?s.name:e;if(n(r)&&o(r,c,s),s.global)l?t[e]=r:a(e,r);else{try{s.unsafe?t[e]&&(l=!0):delete t[e]}catch(t){}l?t[e]=r:i.f(t,e,{value:r,enumerable:!1,configurable:!s.nonConfigurable,writable:!s.nonWritable})}return t}},9433:(t,e,r)=>{var n=r(4475),i=Object.defineProperty;t.exports=function(t,e){try{i(n,t,{value:e,configurable:!0,writable:!0})}catch(r){n[t]=e}return e}},4606:(t,e,r)=>{var n=r(6823),i=TypeError;t.exports=function(t,e){if(!delete t[e])throw new i("Cannot delete property "+n(e)+" of "+n(t))}},3724:(t,e,r)=>{var n=r(9039);t.exports=!n((function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}))},4055:(t,e,r)=>{var n=r(4475),i=r(34),o=n.document,a=i(o)&&i(o.createElement);t.exports=function(t){return a?o.createElement(t):{}}},6837:t=>{var e=TypeError;t.exports=function(t){if(t>9007199254740991)throw e("Maximum allowed index exceeded");return t}},7400:t=>{t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},9296:(t,e,r)=>{var n=r(4055)("span").classList,i=n&&n.constructor&&n.constructor.prototype;t.exports=i===Object.prototype?void 0:i},8834:(t,e,r)=>{var n=r(9392).match(/firefox\/(\d+)/i);t.exports=!!n&&+n[1]},7290:(t,e,r)=>{var n=r(516),i=r(9088);t.exports=!n&&!i&&"object"==typeof window&&"object"==typeof document},6763:t=>{t.exports="function"==typeof Bun&&Bun&&"string"==typeof Bun.version},516:t=>{t.exports="object"==typeof Deno&&Deno&&"object"==typeof Deno.version},3202:(t,e,r)=>{var n=r(9392);t.exports=/MSIE|Trident/.test(n)},28:(t,e,r)=>{var n=r(9392);t.exports=/ipad|iphone|ipod/i.test(n)&&"undefined"!=typeof Pebble},8119:(t,e,r)=>{var n=r(9392);t.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(n)},9088:(t,e,r)=>{var n=r(4475),i=r(4576);t.exports="process"===i(n.process)},6765:(t,e,r)=>{var n=r(9392);t.exports=/web0s(?!.*chrome)/i.test(n)},9392:t=>{t.exports="undefined"!=typeof navigator&&String(navigator.userAgent)||""},7388:(t,e,r)=>{var n,i,o=r(4475),a=r(9392),s=o.process,l=o.Deno,c=s&&s.versions||l&&l.version,u=c&&c.v8;u&&(i=(n=u.split("."))[0]>0&&n[0]<4?1:+(n[0]+n[1])),!i&&a&&(!(n=a.match(/Edge\/(\d+)/))||n[1]>=74)&&(n=a.match(/Chrome\/(\d+)/))&&(i=+n[1]),t.exports=i},9160:(t,e,r)=>{var n=r(9392).match(/AppleWebKit\/(\d+)\./);t.exports=!!n&&+n[1]},8727:t=>{t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},6518:(t,e,r)=>{var n=r(4475),i=r(7347).f,o=r(6699),a=r(6840),s=r(9433),l=r(7740),c=r(2796);t.exports=function(t,e){var r,u,h,p,d,f=t.target,y=t.global,m=t.stat;if(r=y?n:m?n[f]||s(f,{}):n[f]&&n[f].prototype)for(u in e){if(p=e[u],h=t.dontCallGetSet?(d=i(r,u))&&d.value:r[u],!c(y?u:f+(m?".":"#")+u,t.forced)&&void 0!==h){if(typeof p==typeof h)continue;l(p,h)}(t.sham||h&&h.sham)&&o(p,"sham",!0),a(r,u,p,t)}}},9039:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},9228:(t,e,r)=>{r(7495);var n=r(9565),i=r(6840),o=r(7323),a=r(9039),s=r(8227),l=r(6699),c=s("species"),u=RegExp.prototype;t.exports=function(t,e,r,h){var p=s(t),d=!a((function(){var e={};return e[p]=function(){return 7},7!==""[t](e)})),f=d&&!a((function(){var e=!1,r=/a/;return"split"===t&&((r={}).constructor={},r.constructor[c]=function(){return r},r.flags="",r[p]=/./[p]),r.exec=function(){return e=!0,null},r[p](""),!e}));if(!d||!f||r){var y=/./[p],m=e(p,""[t],(function(t,e,r,i,a){var s=e.exec;return s===o||s===u.exec?d&&!a?{done:!0,value:n(y,e,r,i)}:{done:!0,value:n(t,r,e,i)}:{done:!1}}));i(String.prototype,t,m[0]),i(u,p,m[1])}h&&l(u[p],"sham",!0)}},8745:(t,e,r)=>{var n=r(616),i=Function.prototype,o=i.apply,a=i.call;t.exports="object"==typeof Reflect&&Reflect.apply||(n?a.bind(o):function(){return a.apply(o,arguments)})},6080:(t,e,r)=>{var n=r(7476),i=r(9306),o=r(616),a=n(n.bind);t.exports=function(t,e){return i(t),void 0===e?t:o?a(t,e):function(){return t.apply(e,arguments)}}},616:(t,e,r)=>{var n=r(9039);t.exports=!n((function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")}))},566:(t,e,r)=>{var n=r(9504),i=r(9306),o=r(34),a=r(9297),s=r(7680),l=r(616),c=Function,u=n([].concat),h=n([].join),p={};t.exports=l?c.bind:function(t){var e=i(this),r=e.prototype,n=s(arguments,1),l=function(){var r=u(n,s(arguments));return this instanceof l?function(t,e,r){if(!a(p,e)){for(var n=[],i=0;i{var n=r(616),i=Function.prototype.call;t.exports=n?i.bind(i):function(){return i.apply(i,arguments)}},350:(t,e,r)=>{var n=r(3724),i=r(9297),o=Function.prototype,a=n&&Object.getOwnPropertyDescriptor,s=i(o,"name"),l=s&&"something"===function(){}.name,c=s&&(!n||n&&a(o,"name").configurable);t.exports={EXISTS:s,PROPER:l,CONFIGURABLE:c}},6706:(t,e,r)=>{var n=r(9504),i=r(9306);t.exports=function(t,e,r){try{return n(i(Object.getOwnPropertyDescriptor(t,e)[r]))}catch(t){}}},7476:(t,e,r)=>{var n=r(4576),i=r(9504);t.exports=function(t){if("Function"===n(t))return i(t)}},9504:(t,e,r)=>{var n=r(616),i=Function.prototype,o=i.call,a=n&&i.bind.bind(o,o);t.exports=n?a:function(t){return function(){return o.apply(t,arguments)}}},7751:(t,e,r)=>{var n=r(4475),i=r(4901);t.exports=function(t,e){return arguments.length<2?(r=n[t],i(r)?r:void 0):n[t]&&n[t][e];var r}},851:(t,e,r)=>{var n=r(6955),i=r(5966),o=r(4117),a=r(6269),s=r(8227)("iterator");t.exports=function(t){if(!o(t))return i(t,s)||i(t,"@@iterator")||a[n(t)]}},81:(t,e,r)=>{var n=r(9565),i=r(9306),o=r(8551),a=r(6823),s=r(851),l=TypeError;t.exports=function(t,e){var r=arguments.length<2?s(t):e;if(i(r))return o(n(r,t));throw new l(a(t)+" is not iterable")}},6933:(t,e,r)=>{var n=r(9504),i=r(4376),o=r(4901),a=r(4576),s=r(655),l=n([].push);t.exports=function(t){if(o(t))return t;if(i(t)){for(var e=t.length,r=[],n=0;n{var n=r(9306),i=r(4117);t.exports=function(t,e){var r=t[e];return i(r)?void 0:n(r)}},2478:(t,e,r)=>{var n=r(9504),i=r(8981),o=Math.floor,a=n("".charAt),s=n("".replace),l=n("".slice),c=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,u=/\$([$&'`]|\d{1,2})/g;t.exports=function(t,e,r,n,h,p){var d=r+t.length,f=n.length,y=u;return void 0!==h&&(h=i(h),y=c),s(p,y,(function(i,s){var c;switch(a(s,0)){case"$":return"$";case"&":return t;case"`":return l(e,0,r);case"'":return l(e,d);case"<":c=h[l(s,1,-1)];break;default:var u=+s;if(0===u)return i;if(u>f){var p=o(u/10);return 0===p?i:p<=f?void 0===n[p-1]?a(s,1):n[p-1]+a(s,1):i}c=n[u-1]}return void 0===c?"":c}))}},4475:function(t,e,r){var n=function(t){return t&&t.Math===Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof r.g&&r.g)||n("object"==typeof this&&this)||function(){return this}()||Function("return this")()},9297:(t,e,r)=>{var n=r(9504),i=r(8981),o=n({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,e){return o(i(t),e)}},421:t=>{t.exports={}},3138:t=>{t.exports=function(t,e){try{1===arguments.length?console.error(t):console.error(t,e)}catch(t){}}},397:(t,e,r)=>{var n=r(7751);t.exports=n("document","documentElement")},5917:(t,e,r)=>{var n=r(3724),i=r(9039),o=r(4055);t.exports=!n&&!i((function(){return 7!==Object.defineProperty(o("div"),"a",{get:function(){return 7}}).a}))},7055:(t,e,r)=>{var n=r(9504),i=r(9039),o=r(4576),a=Object,s=n("".split);t.exports=i((function(){return!a("z").propertyIsEnumerable(0)}))?function(t){return"String"===o(t)?s(t,""):a(t)}:a},3167:(t,e,r)=>{var n=r(4901),i=r(34),o=r(2967);t.exports=function(t,e,r){var a,s;return o&&n(a=e.constructor)&&a!==r&&i(s=a.prototype)&&s!==r.prototype&&o(t,s),t}},3706:(t,e,r)=>{var n=r(9504),i=r(4901),o=r(7629),a=n(Function.toString);i(o.inspectSource)||(o.inspectSource=function(t){return a(t)}),t.exports=o.inspectSource},1181:(t,e,r)=>{var n,i,o,a=r(8622),s=r(4475),l=r(34),c=r(6699),u=r(9297),h=r(7629),p=r(6119),d=r(421),f="Object already initialized",y=s.TypeError,m=s.WeakMap;if(a||h.state){var v=h.state||(h.state=new m);v.get=v.get,v.has=v.has,v.set=v.set,n=function(t,e){if(v.has(t))throw new y(f);return e.facade=t,v.set(t,e),e},i=function(t){return v.get(t)||{}},o=function(t){return v.has(t)}}else{var b=p("state");d[b]=!0,n=function(t,e){if(u(t,b))throw new y(f);return e.facade=t,c(t,b,e),e},i=function(t){return u(t,b)?t[b]:{}},o=function(t){return u(t,b)}}t.exports={set:n,get:i,has:o,enforce:function(t){return o(t)?i(t):n(t,{})},getterFor:function(t){return function(e){var r;if(!l(e)||(r=i(e)).type!==t)throw new y("Incompatible receiver, "+t+" required");return r}}}},4209:(t,e,r)=>{var n=r(8227),i=r(6269),o=n("iterator"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(i.Array===t||a[o]===t)}},4376:(t,e,r)=>{var n=r(4576);t.exports=Array.isArray||function(t){return"Array"===n(t)}},4901:t=>{var e="object"==typeof document&&document.all;t.exports=void 0===e&&void 0!==e?function(t){return"function"==typeof t||t===e}:function(t){return"function"==typeof t}},3517:(t,e,r)=>{var n=r(9504),i=r(9039),o=r(4901),a=r(6955),s=r(7751),l=r(3706),c=function(){},u=s("Reflect","construct"),h=/^\s*(?:class|function)\b/,p=n(h.exec),d=!h.test(c),f=function(t){if(!o(t))return!1;try{return u(c,[],t),!0}catch(t){return!1}},y=function(t){if(!o(t))return!1;switch(a(t)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return d||!!p(h,l(t))}catch(t){return!0}};y.sham=!0,t.exports=!u||i((function(){var t;return f(f.call)||!f(Object)||!f((function(){t=!0}))||t}))?y:f},6575:(t,e,r)=>{var n=r(9297);t.exports=function(t){return void 0!==t&&(n(t,"value")||n(t,"writable"))}},2796:(t,e,r)=>{var n=r(9039),i=r(4901),o=/#|\.prototype\./,a=function(t,e){var r=l[s(t)];return r===u||r!==c&&(i(e)?n(e):!!e)},s=a.normalize=function(t){return String(t).replace(o,".").toLowerCase()},l=a.data={},c=a.NATIVE="N",u=a.POLYFILL="P";t.exports=a},4117:t=>{t.exports=function(t){return null==t}},34:(t,e,r)=>{var n=r(4901);t.exports=function(t){return"object"==typeof t?null!==t:n(t)}},3925:(t,e,r)=>{var n=r(34);t.exports=function(t){return n(t)||null===t}},6395:t=>{t.exports=!1},788:(t,e,r)=>{var n=r(34),i=r(4576),o=r(8227)("match");t.exports=function(t){var e;return n(t)&&(void 0!==(e=t[o])?!!e:"RegExp"===i(t))}},757:(t,e,r)=>{var n=r(7751),i=r(4901),o=r(1625),a=r(7040),s=Object;t.exports=a?function(t){return"symbol"==typeof t}:function(t){var e=n("Symbol");return i(e)&&o(e.prototype,s(t))}},2652:(t,e,r)=>{var n=r(6080),i=r(9565),o=r(8551),a=r(6823),s=r(4209),l=r(6198),c=r(1625),u=r(81),h=r(851),p=r(9539),d=TypeError,f=function(t,e){this.stopped=t,this.result=e},y=f.prototype;t.exports=function(t,e,r){var m,v,b,g,w,_,k,j=r&&r.that,O=!(!r||!r.AS_ENTRIES),x=!(!r||!r.IS_RECORD),C=!(!r||!r.IS_ITERATOR),E=!(!r||!r.INTERRUPTED),S=n(e,j),P=function(t){return m&&p(m,"normal",t),new f(!0,t)},L=function(t){return O?(o(t),E?S(t[0],t[1],P):S(t[0],t[1])):E?S(t,P):S(t)};if(x)m=t.iterator;else if(C)m=t;else{if(!(v=h(t)))throw new d(a(t)+" is not iterable");if(s(v)){for(b=0,g=l(t);g>b;b++)if((w=L(t[b]))&&c(y,w))return w;return new f(!1)}m=u(t,v)}for(_=x?t.next:m.next;!(k=i(_,m)).done;){try{w=L(k.value)}catch(t){p(m,"throw",t)}if("object"==typeof w&&w&&c(y,w))return w}return new f(!1)}},9539:(t,e,r)=>{var n=r(9565),i=r(8551),o=r(5966);t.exports=function(t,e,r){var a,s;i(t);try{if(!(a=o(t,"return"))){if("throw"===e)throw r;return r}a=n(a,t)}catch(t){s=!0,a=t}if("throw"===e)throw r;if(s)throw a;return i(a),r}},3994:(t,e,r)=>{var n=r(7657).IteratorPrototype,i=r(2360),o=r(6980),a=r(687),s=r(6269),l=function(){return this};t.exports=function(t,e,r,c){var u=e+" Iterator";return t.prototype=i(n,{next:o(+!c,r)}),a(t,u,!1,!0),s[u]=l,t}},1088:(t,e,r)=>{var n=r(6518),i=r(9565),o=r(6395),a=r(350),s=r(4901),l=r(3994),c=r(2787),u=r(2967),h=r(687),p=r(6699),d=r(6840),f=r(8227),y=r(6269),m=r(7657),v=a.PROPER,b=a.CONFIGURABLE,g=m.IteratorPrototype,w=m.BUGGY_SAFARI_ITERATORS,_=f("iterator"),k="keys",j="values",O="entries",x=function(){return this};t.exports=function(t,e,r,a,f,m,C){l(r,e,a);var E,S,P,L=function(t){if(t===f&&B)return B;if(!w&&t&&t in R)return R[t];switch(t){case k:case j:case O:return function(){return new r(this,t)}}return function(){return new r(this)}},T=e+" Iterator",A=!1,R=t.prototype,I=R[_]||R["@@iterator"]||f&&R[f],B=!w&&I||L(f),N="Array"===e&&R.entries||I;if(N&&(E=c(N.call(new t)))!==Object.prototype&&E.next&&(o||c(E)===g||(u?u(E,g):s(E[_])||d(E,_,x)),h(E,T,!0,!0),o&&(y[T]=x)),v&&f===j&&I&&I.name!==j&&(!o&&b?p(R,"name",j):(A=!0,B=function(){return i(I,this)})),f)if(S={values:L(j),keys:m?B:L(k),entries:L(O)},C)for(P in S)(w||A||!(P in R))&&d(R,P,S[P]);else n({target:e,proto:!0,forced:w||A},S);return o&&!C||R[_]===B||d(R,_,B,{name:f}),y[e]=B,S}},7657:(t,e,r)=>{var n,i,o,a=r(9039),s=r(4901),l=r(34),c=r(2360),u=r(2787),h=r(6840),p=r(8227),d=r(6395),f=p("iterator"),y=!1;[].keys&&("next"in(o=[].keys())?(i=u(u(o)))!==Object.prototype&&(n=i):y=!0),!l(n)||a((function(){var t={};return n[f].call(t)!==t}))?n={}:d&&(n=c(n)),s(n[f])||h(n,f,(function(){return this})),t.exports={IteratorPrototype:n,BUGGY_SAFARI_ITERATORS:y}},6269:t=>{t.exports={}},6198:(t,e,r)=>{var n=r(8014);t.exports=function(t){return n(t.length)}},283:(t,e,r)=>{var n=r(9504),i=r(9039),o=r(4901),a=r(9297),s=r(3724),l=r(350).CONFIGURABLE,c=r(3706),u=r(1181),h=u.enforce,p=u.get,d=String,f=Object.defineProperty,y=n("".slice),m=n("".replace),v=n([].join),b=s&&!i((function(){return 8!==f((function(){}),"length",{value:8}).length})),g=String(String).split("String"),w=t.exports=function(t,e,r){"Symbol("===y(d(e),0,7)&&(e="["+m(d(e),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),r&&r.getter&&(e="get "+e),r&&r.setter&&(e="set "+e),(!a(t,"name")||l&&t.name!==e)&&(s?f(t,"name",{value:e,configurable:!0}):t.name=e),b&&r&&a(r,"arity")&&t.length!==r.arity&&f(t,"length",{value:r.arity});try{r&&a(r,"constructor")&&r.constructor?s&&f(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch(t){}var n=h(t);return a(n,"source")||(n.source=v(g,"string"==typeof e?e:"")),t};Function.prototype.toString=w((function(){return o(this)&&p(this).source||c(this)}),"toString")},741:t=>{var e=Math.ceil,r=Math.floor;t.exports=Math.trunc||function(t){var n=+t;return(n>0?r:e)(n)}},1955:(t,e,r)=>{var n,i,o,a,s,l=r(4475),c=r(3389),u=r(6080),h=r(9225).set,p=r(8265),d=r(8119),f=r(28),y=r(6765),m=r(9088),v=l.MutationObserver||l.WebKitMutationObserver,b=l.document,g=l.process,w=l.Promise,_=c("queueMicrotask");if(!_){var k=new p,j=function(){var t,e;for(m&&(t=g.domain)&&t.exit();e=k.get();)try{e()}catch(t){throw k.head&&n(),t}t&&t.enter()};d||m||y||!v||!b?!f&&w&&w.resolve?((a=w.resolve(void 0)).constructor=w,s=u(a.then,a),n=function(){s(j)}):m?n=function(){g.nextTick(j)}:(h=u(h,l),n=function(){h(j)}):(i=!0,o=b.createTextNode(""),new v(j).observe(o,{characterData:!0}),n=function(){o.data=i=!i}),_=function(t){k.head||n(),k.add(t)}}t.exports=_},6043:(t,e,r)=>{var n=r(9306),i=TypeError,o=function(t){var e,r;this.promise=new t((function(t,n){if(void 0!==e||void 0!==r)throw new i("Bad Promise constructor");e=t,r=n})),this.resolve=n(e),this.reject=n(r)};t.exports.f=function(t){return new o(t)}},5749:(t,e,r)=>{var n=r(788),i=TypeError;t.exports=function(t){if(n(t))throw new i("The method doesn't accept regular expressions");return t}},3904:(t,e,r)=>{var n=r(4475),i=r(9039),o=r(9504),a=r(655),s=r(3802).trim,l=r(7452),c=o("".charAt),u=n.parseFloat,h=n.Symbol,p=h&&h.iterator,d=1/u(l+"-0")!=-1/0||p&&!i((function(){u(Object(p))}));t.exports=d?function(t){var e=s(a(t)),r=u(e);return 0===r&&"-"===c(e,0)?-0:r}:u},2703:(t,e,r)=>{var n=r(4475),i=r(9039),o=r(9504),a=r(655),s=r(3802).trim,l=r(7452),c=n.parseInt,u=n.Symbol,h=u&&u.iterator,p=/^[+-]?0x/i,d=o(p.exec),f=8!==c(l+"08")||22!==c(l+"0x16")||h&&!i((function(){c(Object(h))}));t.exports=f?function(t,e){var r=s(a(t));return c(r,e>>>0||(d(p,r)?16:10))}:c},4213:(t,e,r)=>{var n=r(3724),i=r(9504),o=r(9565),a=r(9039),s=r(1072),l=r(3717),c=r(8773),u=r(8981),h=r(7055),p=Object.assign,d=Object.defineProperty,f=i([].concat);t.exports=!p||a((function(){if(n&&1!==p({b:1},p(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},r=Symbol("assign detection"),i="abcdefghijklmnopqrst";return t[r]=7,i.split("").forEach((function(t){e[t]=t})),7!==p({},t)[r]||s(p({},e)).join("")!==i}))?function(t,e){for(var r=u(t),i=arguments.length,a=1,p=l.f,d=c.f;i>a;)for(var y,m=h(arguments[a++]),v=p?f(s(m),p(m)):s(m),b=v.length,g=0;b>g;)y=v[g++],n&&!o(d,m,y)||(r[y]=m[y]);return r}:p},2360:(t,e,r)=>{var n,i=r(8551),o=r(6801),a=r(8727),s=r(421),l=r(397),c=r(4055),u=r(6119),h="prototype",p="script",d=u("IE_PROTO"),f=function(){},y=function(t){return"<"+p+">"+t+""},m=function(t){t.write(y("")),t.close();var e=t.parentWindow.Object;return t=null,e},v=function(){try{n=new ActiveXObject("htmlfile")}catch(t){}var t,e,r;v="undefined"!=typeof document?document.domain&&n?m(n):(e=c("iframe"),r="java"+p+":",e.style.display="none",l.appendChild(e),e.src=String(r),(t=e.contentWindow.document).open(),t.write(y("document.F=Object")),t.close(),t.F):m(n);for(var i=a.length;i--;)delete v[h][a[i]];return v()};s[d]=!0,t.exports=Object.create||function(t,e){var r;return null!==t?(f[h]=i(t),r=new f,f[h]=null,r[d]=t):r=v(),void 0===e?r:o.f(r,e)}},6801:(t,e,r)=>{var n=r(3724),i=r(8686),o=r(4913),a=r(8551),s=r(5397),l=r(1072);e.f=n&&!i?Object.defineProperties:function(t,e){a(t);for(var r,n=s(e),i=l(e),c=i.length,u=0;c>u;)o.f(t,r=i[u++],n[r]);return t}},4913:(t,e,r)=>{var n=r(3724),i=r(5917),o=r(8686),a=r(8551),s=r(6969),l=TypeError,c=Object.defineProperty,u=Object.getOwnPropertyDescriptor,h="enumerable",p="configurable",d="writable";e.f=n?o?function(t,e,r){if(a(t),e=s(e),a(r),"function"==typeof t&&"prototype"===e&&"value"in r&&d in r&&!r[d]){var n=u(t,e);n&&n[d]&&(t[e]=r.value,r={configurable:p in r?r[p]:n[p],enumerable:h in r?r[h]:n[h],writable:!1})}return c(t,e,r)}:c:function(t,e,r){if(a(t),e=s(e),a(r),i)try{return c(t,e,r)}catch(t){}if("get"in r||"set"in r)throw new l("Accessors not supported");return"value"in r&&(t[e]=r.value),t}},7347:(t,e,r)=>{var n=r(3724),i=r(9565),o=r(8773),a=r(6980),s=r(5397),l=r(6969),c=r(9297),u=r(5917),h=Object.getOwnPropertyDescriptor;e.f=n?h:function(t,e){if(t=s(t),e=l(e),u)try{return h(t,e)}catch(t){}if(c(t,e))return a(!i(o.f,t,e),t[e])}},298:(t,e,r)=>{var n=r(4576),i=r(5397),o=r(8480).f,a=r(7680),s="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return s&&"Window"===n(t)?function(t){try{return o(t)}catch(t){return a(s)}}(t):o(i(t))}},8480:(t,e,r)=>{var n=r(1828),i=r(8727).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return n(t,i)}},3717:(t,e)=>{e.f=Object.getOwnPropertySymbols},2787:(t,e,r)=>{var n=r(9297),i=r(4901),o=r(8981),a=r(6119),s=r(2211),l=a("IE_PROTO"),c=Object,u=c.prototype;t.exports=s?c.getPrototypeOf:function(t){var e=o(t);if(n(e,l))return e[l];var r=e.constructor;return i(r)&&e instanceof r?r.prototype:e instanceof c?u:null}},1625:(t,e,r)=>{var n=r(9504);t.exports=n({}.isPrototypeOf)},1828:(t,e,r)=>{var n=r(9504),i=r(9297),o=r(5397),a=r(9617).indexOf,s=r(421),l=n([].push);t.exports=function(t,e){var r,n=o(t),c=0,u=[];for(r in n)!i(s,r)&&i(n,r)&&l(u,r);for(;e.length>c;)i(n,r=e[c++])&&(~a(u,r)||l(u,r));return u}},1072:(t,e,r)=>{var n=r(1828),i=r(8727);t.exports=Object.keys||function(t){return n(t,i)}},8773:(t,e)=>{var r={}.propertyIsEnumerable,n=Object.getOwnPropertyDescriptor,i=n&&!r.call({1:2},1);e.f=i?function(t){var e=n(this,t);return!!e&&e.enumerable}:r},2967:(t,e,r)=>{var n=r(6706),i=r(34),o=r(7750),a=r(3506);t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,r={};try{(t=n(Object.prototype,"__proto__","set"))(r,[]),e=r instanceof Array}catch(t){}return function(r,n){return o(r),a(n),i(r)?(e?t(r,n):r.__proto__=n,r):r}}():void 0)},2357:(t,e,r)=>{var n=r(3724),i=r(9039),o=r(9504),a=r(2787),s=r(1072),l=r(5397),c=o(r(8773).f),u=o([].push),h=n&&i((function(){var t=Object.create(null);return t[2]=2,!c(t,2)})),p=function(t){return function(e){for(var r,i=l(e),o=s(i),p=h&&null===a(i),d=o.length,f=0,y=[];d>f;)r=o[f++],n&&!(p?r in i:c(i,r))||u(y,t?[r,i[r]]:i[r]);return y}};t.exports={entries:p(!0),values:p(!1)}},3179:(t,e,r)=>{var n=r(2140),i=r(6955);t.exports=n?{}.toString:function(){return"[object "+i(this)+"]"}},4270:(t,e,r)=>{var n=r(9565),i=r(4901),o=r(34),a=TypeError;t.exports=function(t,e){var r,s;if("string"===e&&i(r=t.toString)&&!o(s=n(r,t)))return s;if(i(r=t.valueOf)&&!o(s=n(r,t)))return s;if("string"!==e&&i(r=t.toString)&&!o(s=n(r,t)))return s;throw new a("Can't convert object to primitive value")}},5031:(t,e,r)=>{var n=r(7751),i=r(9504),o=r(8480),a=r(3717),s=r(8551),l=i([].concat);t.exports=n("Reflect","ownKeys")||function(t){var e=o.f(s(t)),r=a.f;return r?l(e,r(t)):e}},9167:(t,e,r)=>{var n=r(4475);t.exports=n},1103:t=>{t.exports=function(t){try{return{error:!1,value:t()}}catch(t){return{error:!0,value:t}}}},916:(t,e,r)=>{var n=r(4475),i=r(550),o=r(4901),a=r(2796),s=r(3706),l=r(8227),c=r(7290),u=r(516),h=r(6395),p=r(7388),d=i&&i.prototype,f=l("species"),y=!1,m=o(n.PromiseRejectionEvent),v=a("Promise",(function(){var t=s(i),e=t!==String(i);if(!e&&66===p)return!0;if(h&&(!d.catch||!d.finally))return!0;if(!p||p<51||!/native code/.test(t)){var r=new i((function(t){t(1)})),n=function(t){t((function(){}),(function(){}))};if((r.constructor={})[f]=n,!(y=r.then((function(){}))instanceof n))return!0}return!e&&(c||u)&&!m}));t.exports={CONSTRUCTOR:v,REJECTION_EVENT:m,SUBCLASSING:y}},550:(t,e,r)=>{var n=r(4475);t.exports=n.Promise},3438:(t,e,r)=>{var n=r(8551),i=r(34),o=r(6043);t.exports=function(t,e){if(n(t),i(e)&&e.constructor===t)return e;var r=o.f(t);return(0,r.resolve)(e),r.promise}},537:(t,e,r)=>{var n=r(550),i=r(4428),o=r(916).CONSTRUCTOR;t.exports=o||!i((function(t){n.all(t).then(void 0,(function(){}))}))},1056:(t,e,r)=>{var n=r(4913).f;t.exports=function(t,e,r){r in t||n(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})}},8265:t=>{var e=function(){this.head=null,this.tail=null};e.prototype={add:function(t){var e={item:t,next:null},r=this.tail;r?r.next=e:this.head=e,this.tail=e},get:function(){var t=this.head;if(t)return null===(this.head=t.next)&&(this.tail=null),t.item}},t.exports=e},6682:(t,e,r)=>{var n=r(9565),i=r(8551),o=r(4901),a=r(4576),s=r(7323),l=TypeError;t.exports=function(t,e){var r=t.exec;if(o(r)){var c=n(r,t,e);return null!==c&&i(c),c}if("RegExp"===a(t))return n(s,t,e);throw new l("RegExp#exec called on incompatible receiver")}},7323:(t,e,r)=>{var n,i,o=r(9565),a=r(9504),s=r(655),l=r(7979),c=r(8429),u=r(5745),h=r(2360),p=r(1181).get,d=r(3635),f=r(8814),y=u("native-string-replace",String.prototype.replace),m=RegExp.prototype.exec,v=m,b=a("".charAt),g=a("".indexOf),w=a("".replace),_=a("".slice),k=(i=/b*/g,o(m,n=/a/,"a"),o(m,i,"a"),0!==n.lastIndex||0!==i.lastIndex),j=c.BROKEN_CARET,O=void 0!==/()??/.exec("")[1];(k||O||j||d||f)&&(v=function(t){var e,r,n,i,a,c,u,d=this,f=p(d),x=s(t),C=f.raw;if(C)return C.lastIndex=d.lastIndex,e=o(v,C,x),d.lastIndex=C.lastIndex,e;var E=f.groups,S=j&&d.sticky,P=o(l,d),L=d.source,T=0,A=x;if(S&&(P=w(P,"y",""),-1===g(P,"g")&&(P+="g"),A=_(x,d.lastIndex),d.lastIndex>0&&(!d.multiline||d.multiline&&"\n"!==b(x,d.lastIndex-1))&&(L="(?: "+L+")",A=" "+A,T++),r=new RegExp("^(?:"+L+")",P)),O&&(r=new RegExp("^"+L+"$(?!\\s)",P)),k&&(n=d.lastIndex),i=o(m,S?r:d,A),S?i?(i.input=_(i.input,T),i[0]=_(i[0],T),i.index=d.lastIndex,d.lastIndex+=i[0].length):d.lastIndex=0:k&&i&&(d.lastIndex=d.global?i.index+i[0].length:n),O&&i&&i.length>1&&o(y,i[0],r,(function(){for(a=1;a{var n=r(8551);t.exports=function(){var t=n(this),e="";return t.hasIndices&&(e+="d"),t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.unicodeSets&&(e+="v"),t.sticky&&(e+="y"),e}},1034:(t,e,r)=>{var n=r(9565),i=r(9297),o=r(1625),a=r(7979),s=RegExp.prototype;t.exports=function(t){var e=t.flags;return void 0!==e||"flags"in s||i(t,"flags")||!o(s,t)?e:n(a,t)}},8429:(t,e,r)=>{var n=r(9039),i=r(4475).RegExp,o=n((function(){var t=i("a","y");return t.lastIndex=2,null!==t.exec("abcd")})),a=o||n((function(){return!i("a","y").sticky})),s=o||n((function(){var t=i("^r","gy");return t.lastIndex=2,null!==t.exec("str")}));t.exports={BROKEN_CARET:s,MISSED_STICKY:a,UNSUPPORTED_Y:o}},3635:(t,e,r)=>{var n=r(9039),i=r(4475).RegExp;t.exports=n((function(){var t=i(".","s");return!(t.dotAll&&t.test("\n")&&"s"===t.flags)}))},8814:(t,e,r)=>{var n=r(9039),i=r(4475).RegExp;t.exports=n((function(){var t=i("(?b)","g");return"b"!==t.exec("b").groups.a||"bc"!=="b".replace(t,"$c")}))},7750:(t,e,r)=>{var n=r(4117),i=TypeError;t.exports=function(t){if(n(t))throw new i("Can't call method on "+t);return t}},3389:(t,e,r)=>{var n=r(4475),i=r(3724),o=Object.getOwnPropertyDescriptor;t.exports=function(t){if(!i)return n[t];var e=o(n,t);return e&&e.value}},9472:(t,e,r)=>{var n,i=r(4475),o=r(8745),a=r(4901),s=r(6763),l=r(9392),c=r(7680),u=r(2812),h=i.Function,p=/MSIE .\./.test(l)||s&&((n=i.Bun.version.split(".")).length<3||"0"===n[0]&&(n[1]<3||"3"===n[1]&&"0"===n[2]));t.exports=function(t,e){var r=e?2:1;return p?function(n,i){var s=u(arguments.length,1)>r,l=a(n)?n:h(n),p=s?c(arguments,r):[],d=s?function(){o(l,this,p)}:l;return e?t(d,i):t(d)}:t}},7633:(t,e,r)=>{var n=r(7751),i=r(2106),o=r(8227),a=r(3724),s=o("species");t.exports=function(t){var e=n(t);a&&e&&!e[s]&&i(e,s,{configurable:!0,get:function(){return this}})}},687:(t,e,r)=>{var n=r(4913).f,i=r(9297),o=r(8227)("toStringTag");t.exports=function(t,e,r){t&&!r&&(t=t.prototype),t&&!i(t,o)&&n(t,o,{configurable:!0,value:e})}},6119:(t,e,r)=>{var n=r(5745),i=r(3392),o=n("keys");t.exports=function(t){return o[t]||(o[t]=i(t))}},7629:(t,e,r)=>{var n=r(6395),i=r(4475),o=r(9433),a="__core-js_shared__",s=t.exports=i[a]||o(a,{});(s.versions||(s.versions=[])).push({version:"3.36.1",mode:n?"pure":"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.36.1/LICENSE",source:"https://github.com/zloirock/core-js"})},5745:(t,e,r)=>{var n=r(7629);t.exports=function(t,e){return n[t]||(n[t]=e||{})}},2293:(t,e,r)=>{var n=r(8551),i=r(5548),o=r(4117),a=r(8227)("species");t.exports=function(t,e){var r,s=n(t).constructor;return void 0===s||o(r=n(s)[a])?e:i(r)}},8183:(t,e,r)=>{var n=r(9504),i=r(1291),o=r(655),a=r(7750),s=n("".charAt),l=n("".charCodeAt),c=n("".slice),u=function(t){return function(e,r){var n,u,h=o(a(e)),p=i(r),d=h.length;return p<0||p>=d?t?"":void 0:(n=l(h,p))<55296||n>56319||p+1===d||(u=l(h,p+1))<56320||u>57343?t?s(h,p):n:t?c(h,p,p+2):u-56320+(n-55296<<10)+65536}};t.exports={codeAt:u(!1),charAt:u(!0)}},533:(t,e,r)=>{var n=r(9504),i=r(8014),o=r(655),a=r(2333),s=r(7750),l=n(a),c=n("".slice),u=Math.ceil,h=function(t){return function(e,r,n){var a,h,p=o(s(e)),d=i(r),f=p.length,y=void 0===n?" ":o(n);return d<=f||""===y?p:((h=l(y,u((a=d-f)/y.length))).length>a&&(h=c(h,0,a)),t?p+h:h+p)}};t.exports={start:h(!1),end:h(!0)}},2333:(t,e,r)=>{var n=r(1291),i=r(655),o=r(7750),a=RangeError;t.exports=function(t){var e=i(o(this)),r="",s=n(t);if(s<0||s===1/0)throw new a("Wrong number of repetitions");for(;s>0;(s>>>=1)&&(e+=e))1&s&&(r+=e);return r}},706:(t,e,r)=>{var n=r(350).PROPER,i=r(9039),o=r(7452);t.exports=function(t){return i((function(){return!!o[t]()||"​…᠎"!=="​…᠎"[t]()||n&&o[t].name!==t}))}},3802:(t,e,r)=>{var n=r(9504),i=r(7750),o=r(655),a=r(7452),s=n("".replace),l=RegExp("^["+a+"]+"),c=RegExp("(^|[^"+a+"])["+a+"]+$"),u=function(t){return function(e){var r=o(i(e));return 1&t&&(r=s(r,l,"")),2&t&&(r=s(r,c,"$1")),r}};t.exports={start:u(1),end:u(2),trim:u(3)}},4495:(t,e,r)=>{var n=r(7388),i=r(9039),o=r(4475).String;t.exports=!!Object.getOwnPropertySymbols&&!i((function(){var t=Symbol("symbol detection");return!o(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&n&&n<41}))},8242:(t,e,r)=>{var n=r(9565),i=r(7751),o=r(8227),a=r(6840);t.exports=function(){var t=i("Symbol"),e=t&&t.prototype,r=e&&e.valueOf,s=o("toPrimitive");e&&!e[s]&&a(e,s,(function(t){return n(r,this)}),{arity:1})}},1296:(t,e,r)=>{var n=r(4495);t.exports=n&&!!Symbol.for&&!!Symbol.keyFor},9225:(t,e,r)=>{var n,i,o,a,s=r(4475),l=r(8745),c=r(6080),u=r(4901),h=r(9297),p=r(9039),d=r(397),f=r(7680),y=r(4055),m=r(2812),v=r(8119),b=r(9088),g=s.setImmediate,w=s.clearImmediate,_=s.process,k=s.Dispatch,j=s.Function,O=s.MessageChannel,x=s.String,C=0,E={},S="onreadystatechange";p((function(){n=s.location}));var P=function(t){if(h(E,t)){var e=E[t];delete E[t],e()}},L=function(t){return function(){P(t)}},T=function(t){P(t.data)},A=function(t){s.postMessage(x(t),n.protocol+"//"+n.host)};g&&w||(g=function(t){m(arguments.length,1);var e=u(t)?t:j(t),r=f(arguments,1);return E[++C]=function(){l(e,void 0,r)},i(C),C},w=function(t){delete E[t]},b?i=function(t){_.nextTick(L(t))}:k&&k.now?i=function(t){k.now(L(t))}:O&&!v?(a=(o=new O).port2,o.port1.onmessage=T,i=c(a.postMessage,a)):s.addEventListener&&u(s.postMessage)&&!s.importScripts&&n&&"file:"!==n.protocol&&!p(A)?(i=A,s.addEventListener("message",T,!1)):i=S in y("script")?function(t){d.appendChild(y("script"))[S]=function(){d.removeChild(this),P(t)}}:function(t){setTimeout(L(t),0)}),t.exports={set:g,clear:w}},1240:(t,e,r)=>{var n=r(9504);t.exports=n(1..valueOf)},5610:(t,e,r)=>{var n=r(1291),i=Math.max,o=Math.min;t.exports=function(t,e){var r=n(t);return r<0?i(r+e,0):o(r,e)}},5397:(t,e,r)=>{var n=r(7055),i=r(7750);t.exports=function(t){return n(i(t))}},1291:(t,e,r)=>{var n=r(741);t.exports=function(t){var e=+t;return e!=e||0===e?0:n(e)}},8014:(t,e,r)=>{var n=r(1291),i=Math.min;t.exports=function(t){var e=n(t);return e>0?i(e,9007199254740991):0}},8981:(t,e,r)=>{var n=r(7750),i=Object;t.exports=function(t){return i(n(t))}},2777:(t,e,r)=>{var n=r(9565),i=r(34),o=r(757),a=r(5966),s=r(4270),l=r(8227),c=TypeError,u=l("toPrimitive");t.exports=function(t,e){if(!i(t)||o(t))return t;var r,l=a(t,u);if(l){if(void 0===e&&(e="default"),r=n(l,t,e),!i(r)||o(r))return r;throw new c("Can't convert object to primitive value")}return void 0===e&&(e="number"),s(t,e)}},6969:(t,e,r)=>{var n=r(2777),i=r(757);t.exports=function(t){var e=n(t,"string");return i(e)?e:e+""}},2140:(t,e,r)=>{var n={};n[r(8227)("toStringTag")]="z",t.exports="[object z]"===String(n)},655:(t,e,r)=>{var n=r(6955),i=String;t.exports=function(t){if("Symbol"===n(t))throw new TypeError("Cannot convert a Symbol value to a string");return i(t)}},6823:t=>{var e=String;t.exports=function(t){try{return e(t)}catch(t){return"Object"}}},3392:(t,e,r)=>{var n=r(9504),i=0,o=Math.random(),a=n(1..toString);t.exports=function(t){return"Symbol("+(void 0===t?"":t)+")_"+a(++i+o,36)}},7040:(t,e,r)=>{var n=r(4495);t.exports=n&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},8686:(t,e,r)=>{var n=r(3724),i=r(9039);t.exports=n&&i((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},2812:t=>{var e=TypeError;t.exports=function(t,r){if(t{var n=r(4475),i=r(4901),o=n.WeakMap;t.exports=i(o)&&/native code/.test(String(o))},511:(t,e,r)=>{var n=r(9167),i=r(9297),o=r(1951),a=r(4913).f;t.exports=function(t){var e=n.Symbol||(n.Symbol={});i(e,t)||a(e,t,{value:o.f(t)})}},1951:(t,e,r)=>{var n=r(8227);e.f=n},8227:(t,e,r)=>{var n=r(4475),i=r(5745),o=r(9297),a=r(3392),s=r(4495),l=r(7040),c=n.Symbol,u=i("wks"),h=l?c.for||c:c&&c.withoutSetter||a;t.exports=function(t){return o(u,t)||(u[t]=s&&o(c,t)?c[t]:h("Symbol."+t)),u[t]}},7452:t=>{t.exports="\t\n\v\f\r                 \u2028\u2029\ufeff"},8706:(t,e,r)=>{var n=r(6518),i=r(9039),o=r(4376),a=r(34),s=r(8981),l=r(6198),c=r(6837),u=r(4659),h=r(1469),p=r(597),d=r(8227),f=r(7388),y=d("isConcatSpreadable"),m=f>=51||!i((function(){var t=[];return t[y]=!1,t.concat()[0]!==t})),v=function(t){if(!a(t))return!1;var e=t[y];return void 0!==e?!!e:o(t)};n({target:"Array",proto:!0,arity:1,forced:!m||!p("concat")},{concat:function(t){var e,r,n,i,o,a=s(this),p=h(a,0),d=0;for(e=-1,n=arguments.length;e{var n=r(6518),i=r(9213).every;n({target:"Array",proto:!0,forced:!r(4598)("every")},{every:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},2008:(t,e,r)=>{var n=r(6518),i=r(9213).filter;n({target:"Array",proto:!0,forced:!r(597)("filter")},{filter:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},113:(t,e,r)=>{var n=r(6518),i=r(9213).find,o=r(6469),a="find",s=!0;a in[]&&Array(1)[a]((function(){s=!1})),n({target:"Array",proto:!0,forced:s},{find:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),o(a)},1629:(t,e,r)=>{var n=r(6518),i=r(235);n({target:"Array",proto:!0,forced:[].forEach!==i},{forEach:i})},3418:(t,e,r)=>{var n=r(6518),i=r(7916);n({target:"Array",stat:!0,forced:!r(4428)((function(t){Array.from(t)}))},{from:i})},4423:(t,e,r)=>{var n=r(6518),i=r(9617).includes,o=r(9039),a=r(6469);n({target:"Array",proto:!0,forced:o((function(){return!Array(1).includes()}))},{includes:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),a("includes")},5276:(t,e,r)=>{var n=r(6518),i=r(7476),o=r(9617).indexOf,a=r(4598),s=i([].indexOf),l=!!s&&1/s([1],1,-0)<0;n({target:"Array",proto:!0,forced:l||!a("indexOf")},{indexOf:function(t){var e=arguments.length>1?arguments[1]:void 0;return l?s(this,t,e)||0:o(this,t,e)}})},4346:(t,e,r)=>{r(6518)({target:"Array",stat:!0},{isArray:r(4376)})},3792:(t,e,r)=>{var n=r(5397),i=r(6469),o=r(6269),a=r(1181),s=r(4913).f,l=r(1088),c=r(2529),u=r(6395),h=r(3724),p="Array Iterator",d=a.set,f=a.getterFor(p);t.exports=l(Array,"Array",(function(t,e){d(this,{type:p,target:n(t),index:0,kind:e})}),(function(){var t=f(this),e=t.target,r=t.index++;if(!e||r>=e.length)return t.target=void 0,c(void 0,!0);switch(t.kind){case"keys":return c(r,!1);case"values":return c(e[r],!1)}return c([r,e[r]],!1)}),"values");var y=o.Arguments=o.Array;if(i("keys"),i("values"),i("entries"),!u&&h&&"values"!==y.name)try{s(y,"name",{value:"values"})}catch(t){}},8598:(t,e,r)=>{var n=r(6518),i=r(9504),o=r(7055),a=r(5397),s=r(4598),l=i([].join);n({target:"Array",proto:!0,forced:o!==Object||!s("join",",")},{join:function(t){return l(a(this),void 0===t?",":t)}})},2062:(t,e,r)=>{var n=r(6518),i=r(9213).map;n({target:"Array",proto:!0,forced:!r(597)("map")},{map:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},2712:(t,e,r)=>{var n=r(6518),i=r(926).left,o=r(4598),a=r(7388);n({target:"Array",proto:!0,forced:!r(9088)&&a>79&&a<83||!o("reduce")},{reduce:function(t){var e=arguments.length;return i(this,t,e,e>1?arguments[1]:void 0)}})},4490:(t,e,r)=>{var n=r(6518),i=r(9504),o=r(4376),a=i([].reverse),s=[1,2];n({target:"Array",proto:!0,forced:String(s)===String(s.reverse())},{reverse:function(){return o(this)&&(this.length=this.length),a(this)}})},4782:(t,e,r)=>{var n=r(6518),i=r(4376),o=r(3517),a=r(34),s=r(5610),l=r(6198),c=r(5397),u=r(4659),h=r(8227),p=r(597),d=r(7680),f=p("slice"),y=h("species"),m=Array,v=Math.max;n({target:"Array",proto:!0,forced:!f},{slice:function(t,e){var r,n,h,p=c(this),f=l(p),b=s(t,f),g=s(void 0===e?f:e,f);if(i(p)&&(r=p.constructor,(o(r)&&(r===m||i(r.prototype))||a(r)&&null===(r=r[y]))&&(r=void 0),r===m||void 0===r))return d(p,b,g);for(n=new(void 0===r?m:r)(v(g-b,0)),h=0;b{var n=r(6518),i=r(9213).some;n({target:"Array",proto:!0,forced:!r(4598)("some")},{some:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},6910:(t,e,r)=>{var n=r(6518),i=r(9504),o=r(9306),a=r(8981),s=r(6198),l=r(4606),c=r(655),u=r(9039),h=r(4488),p=r(4598),d=r(8834),f=r(3202),y=r(7388),m=r(9160),v=[],b=i(v.sort),g=i(v.push),w=u((function(){v.sort(void 0)})),_=u((function(){v.sort(null)})),k=p("sort"),j=!u((function(){if(y)return y<70;if(!(d&&d>3)){if(f)return!0;if(m)return m<603;var t,e,r,n,i="";for(t=65;t<76;t++){switch(e=String.fromCharCode(t),t){case 66:case 69:case 70:case 72:r=3;break;case 68:case 71:r=4;break;default:r=2}for(n=0;n<47;n++)v.push({k:e+n,v:r})}for(v.sort((function(t,e){return e.v-t.v})),n=0;nc(r)?1:-1}}(t)),r=s(i),n=0;n{var n=r(6518),i=r(8981),o=r(5610),a=r(1291),s=r(6198),l=r(4527),c=r(6837),u=r(1469),h=r(4659),p=r(4606),d=r(597)("splice"),f=Math.max,y=Math.min;n({target:"Array",proto:!0,forced:!d},{splice:function(t,e){var r,n,d,m,v,b,g=i(this),w=s(g),_=o(t,w),k=arguments.length;for(0===k?r=n=0:1===k?(r=0,n=w-_):(r=k-2,n=y(f(a(e),0),w-_)),c(w+r-n),d=u(g,n),m=0;mw-n+r;m--)p(g,m-1)}else if(r>n)for(m=w-n;m>_;m--)b=m+r-1,(v=m+n-1)in g?g[b]=g[v]:p(g,b);for(m=0;m{var n=r(6518),i=r(380);n({target:"Date",proto:!0,forced:Date.prototype.toISOString!==i},{toISOString:i})},739:(t,e,r)=>{var n=r(6518),i=r(9039),o=r(8981),a=r(2777);n({target:"Date",proto:!0,arity:1,forced:i((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=o(this),r=a(e,"number");return"number"!=typeof r||isFinite(r)?e.toISOString():null}})},9572:(t,e,r)=>{var n=r(9297),i=r(6840),o=r(3640),a=r(8227)("toPrimitive"),s=Date.prototype;n(s,a)||i(s,a,o)},3288:(t,e,r)=>{var n=r(9504),i=r(6840),o=Date.prototype,a="Invalid Date",s="toString",l=n(o[s]),c=n(o.getTime);String(new Date(NaN))!==a&&i(o,s,(function(){var t=c(this);return t==t?l(this):a}))},4170:(t,e,r)=>{var n=r(6518),i=r(566);n({target:"Function",proto:!0,forced:Function.bind!==i},{bind:i})},2010:(t,e,r)=>{var n=r(3724),i=r(350).EXISTS,o=r(9504),a=r(2106),s=Function.prototype,l=o(s.toString),c=/function\b(?:\s|\/\*[\S\s]*?\*\/|\/\/[^\n\r]*[\n\r]+)*([^\s(/]*)/,u=o(c.exec);n&&!i&&a(s,"name",{configurable:!0,get:function(){try{return u(c,l(this))[1]}catch(t){return""}}})},3110:(t,e,r)=>{var n=r(6518),i=r(7751),o=r(8745),a=r(9565),s=r(9504),l=r(9039),c=r(4901),u=r(757),h=r(7680),p=r(6933),d=r(4495),f=String,y=i("JSON","stringify"),m=s(/./.exec),v=s("".charAt),b=s("".charCodeAt),g=s("".replace),w=s(1..toString),_=/[\uD800-\uDFFF]/g,k=/^[\uD800-\uDBFF]$/,j=/^[\uDC00-\uDFFF]$/,O=!d||l((function(){var t=i("Symbol")("stringify detection");return"[null]"!==y([t])||"{}"!==y({a:t})||"{}"!==y(Object(t))})),x=l((function(){return'"\\udf06\\ud834"'!==y("\udf06\ud834")||'"\\udead"'!==y("\udead")})),C=function(t,e){var r=h(arguments),n=p(e);if(c(n)||void 0!==t&&!u(t))return r[1]=function(t,e){if(c(n)&&(e=a(n,this,f(t),e)),!u(e))return e},o(y,null,r)},E=function(t,e,r){var n=v(r,e-1),i=v(r,e+1);return m(k,t)&&!m(j,i)||m(j,t)&&!m(k,n)?"\\u"+w(b(t,0),16):t};y&&n({target:"JSON",stat:!0,arity:3,forced:O||x},{stringify:function(t,e,r){var n=h(arguments),i=o(O?C:y,null,n);return x&&"string"==typeof i?g(i,_,E):i}})},4731:(t,e,r)=>{var n=r(4475);r(687)(n.JSON,"JSON",!0)},479:(t,e,r)=>{r(687)(Math,"Math",!0)},2892:(t,e,r)=>{var n=r(6518),i=r(6395),o=r(3724),a=r(4475),s=r(9167),l=r(9504),c=r(2796),u=r(9297),h=r(3167),p=r(1625),d=r(757),f=r(2777),y=r(9039),m=r(8480).f,v=r(7347).f,b=r(4913).f,g=r(1240),w=r(3802).trim,_="Number",k=a[_],j=s[_],O=k.prototype,x=a.TypeError,C=l("".slice),E=l("".charCodeAt),S=c(_,!k(" 0o1")||!k("0b1")||k("+0x1")),P=function(t){var e,r=arguments.length<1?0:k(function(t){var e=f(t,"number");return"bigint"==typeof e?e:function(t){var e,r,n,i,o,a,s,l,c=f(t,"number");if(d(c))throw new x("Cannot convert a Symbol value to a number");if("string"==typeof c&&c.length>2)if(c=w(c),43===(e=E(c,0))||45===e){if(88===(r=E(c,2))||120===r)return NaN}else if(48===e){switch(E(c,1)){case 66:case 98:n=2,i=49;break;case 79:case 111:n=8,i=55;break;default:return+c}for(a=(o=C(c,2)).length,s=0;si)return NaN;return parseInt(o,n)}return+c}(e)}(t));return p(O,e=this)&&y((function(){g(e)}))?h(Object(r),this,P):r};P.prototype=O,S&&!i&&(O.constructor=P),n({global:!0,constructor:!0,wrap:!0,forced:S},{Number:P});var L=function(t,e){for(var r,n=o?m(e):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","),i=0;n.length>i;i++)u(e,r=n[i])&&!u(t,r)&&b(t,r,v(e,r))};i&&j&&L(s[_],j),(S||i)&&L(s[_],k)},9868:(t,e,r)=>{var n=r(6518),i=r(9504),o=r(1291),a=r(1240),s=r(2333),l=r(9039),c=RangeError,u=String,h=Math.floor,p=i(s),d=i("".slice),f=i(1..toFixed),y=function(t,e,r){return 0===e?r:e%2==1?y(t,e-1,r*t):y(t*t,e/2,r)},m=function(t,e,r){for(var n=-1,i=r;++n<6;)i+=e*t[n],t[n]=i%1e7,i=h(i/1e7)},v=function(t,e){for(var r=6,n=0;--r>=0;)n+=t[r],t[r]=h(n/e),n=n%e*1e7},b=function(t){for(var e=6,r="";--e>=0;)if(""!==r||0===e||0!==t[e]){var n=u(t[e]);r=""===r?n:r+p("0",7-n.length)+n}return r};n({target:"Number",proto:!0,forced:l((function(){return"0.000"!==f(8e-5,3)||"1"!==f(.9,0)||"1.25"!==f(1.255,2)||"1000000000000000128"!==f(0xde0b6b3a7640080,0)}))||!l((function(){f({})}))},{toFixed:function(t){var e,r,n,i,s=a(this),l=o(t),h=[0,0,0,0,0,0],f="",g="0";if(l<0||l>20)throw new c("Incorrect fraction digits");if(s!=s)return"NaN";if(s<=-1e21||s>=1e21)return u(s);if(s<0&&(f="-",s=-s),s>1e-21)if(r=(e=function(t){for(var e=0,r=t;r>=4096;)e+=12,r/=4096;for(;r>=2;)e+=1,r/=2;return e}(s*y(2,69,1))-69)<0?s*y(2,-e,1):s/y(2,e,1),r*=4503599627370496,(e=52-e)>0){for(m(h,0,r),n=l;n>=7;)m(h,1e7,0),n-=7;for(m(h,y(10,n,1),0),n=e-1;n>=23;)v(h,1<<23),n-=23;v(h,1<0?f+((i=g.length)<=l?"0."+p("0",l-i)+g:d(g,0,i-l)+"."+d(g,i-l)):f+g}})},9085:(t,e,r)=>{var n=r(6518),i=r(4213);n({target:"Object",stat:!0,arity:2,forced:Object.assign!==i},{assign:i})},9904:(t,e,r)=>{r(6518)({target:"Object",stat:!0,sham:!r(3724)},{create:r(2360)})},7945:(t,e,r)=>{var n=r(6518),i=r(3724),o=r(6801).f;n({target:"Object",stat:!0,forced:Object.defineProperties!==o,sham:!i},{defineProperties:o})},4185:(t,e,r)=>{var n=r(6518),i=r(3724),o=r(4913).f;n({target:"Object",stat:!0,forced:Object.defineProperty!==o,sham:!i},{defineProperty:o})},5506:(t,e,r)=>{var n=r(6518),i=r(2357).entries;n({target:"Object",stat:!0},{entries:function(t){return i(t)}})},3851:(t,e,r)=>{var n=r(6518),i=r(9039),o=r(5397),a=r(7347).f,s=r(3724);n({target:"Object",stat:!0,forced:!s||i((function(){a(1)})),sham:!s},{getOwnPropertyDescriptor:function(t,e){return a(o(t),e)}})},1278:(t,e,r)=>{var n=r(6518),i=r(3724),o=r(5031),a=r(5397),s=r(7347),l=r(4659);n({target:"Object",stat:!0,sham:!i},{getOwnPropertyDescriptors:function(t){for(var e,r,n=a(t),i=s.f,c=o(n),u={},h=0;c.length>h;)void 0!==(r=i(n,e=c[h++]))&&l(u,e,r);return u}})},9773:(t,e,r)=>{var n=r(6518),i=r(4495),o=r(9039),a=r(3717),s=r(8981);n({target:"Object",stat:!0,forced:!i||o((function(){a.f(1)}))},{getOwnPropertySymbols:function(t){var e=a.f;return e?e(s(t)):[]}})},875:(t,e,r)=>{var n=r(6518),i=r(9039),o=r(8981),a=r(2787),s=r(2211);n({target:"Object",stat:!0,forced:i((function(){a(1)})),sham:!s},{getPrototypeOf:function(t){return a(o(t))}})},9432:(t,e,r)=>{var n=r(6518),i=r(8981),o=r(1072);n({target:"Object",stat:!0,forced:r(9039)((function(){o(1)}))},{keys:function(t){return o(i(t))}})},287:(t,e,r)=>{r(6518)({target:"Object",stat:!0},{setPrototypeOf:r(2967)})},6099:(t,e,r)=>{var n=r(2140),i=r(6840),o=r(3179);n||i(Object.prototype,"toString",o,{unsafe:!0})},6034:(t,e,r)=>{var n=r(6518),i=r(2357).values;n({target:"Object",stat:!0},{values:function(t){return i(t)}})},8459:(t,e,r)=>{var n=r(6518),i=r(3904);n({global:!0,forced:parseFloat!==i},{parseFloat:i})},8940:(t,e,r)=>{var n=r(6518),i=r(2703);n({global:!0,forced:parseInt!==i},{parseInt:i})},6499:(t,e,r)=>{var n=r(6518),i=r(9565),o=r(9306),a=r(6043),s=r(1103),l=r(2652);n({target:"Promise",stat:!0,forced:r(537)},{all:function(t){var e=this,r=a.f(e),n=r.resolve,c=r.reject,u=s((function(){var r=o(e.resolve),a=[],s=0,u=1;l(t,(function(t){var o=s++,l=!1;u++,i(r,e,t).then((function(t){l||(l=!0,a[o]=t,--u||n(a))}),c)})),--u||n(a)}));return u.error&&c(u.value),r.promise}})},2003:(t,e,r)=>{var n=r(6518),i=r(6395),o=r(916).CONSTRUCTOR,a=r(550),s=r(7751),l=r(4901),c=r(6840),u=a&&a.prototype;if(n({target:"Promise",proto:!0,forced:o,real:!0},{catch:function(t){return this.then(void 0,t)}}),!i&&l(a)){var h=s("Promise").prototype.catch;u.catch!==h&&c(u,"catch",h,{unsafe:!0})}},436:(t,e,r)=>{var n,i,o,a=r(6518),s=r(6395),l=r(9088),c=r(4475),u=r(9565),h=r(6840),p=r(2967),d=r(687),f=r(7633),y=r(9306),m=r(4901),v=r(34),b=r(679),g=r(2293),w=r(9225).set,_=r(1955),k=r(3138),j=r(1103),O=r(8265),x=r(1181),C=r(550),E=r(916),S=r(6043),P="Promise",L=E.CONSTRUCTOR,T=E.REJECTION_EVENT,A=E.SUBCLASSING,R=x.getterFor(P),I=x.set,B=C&&C.prototype,N=C,D=B,F=c.TypeError,V=c.document,H=c.process,z=S.f,M=z,q=!!(V&&V.createEvent&&c.dispatchEvent),U="unhandledrejection",G=function(t){var e;return!(!v(t)||!m(e=t.then))&&e},$=function(t,e){var r,n,i,o=e.value,a=1===e.state,s=a?t.ok:t.fail,l=t.resolve,c=t.reject,h=t.domain;try{s?(a||(2===e.rejection&&Q(e),e.rejection=1),!0===s?r=o:(h&&h.enter(),r=s(o),h&&(h.exit(),i=!0)),r===t.promise?c(new F("Promise-chain cycle")):(n=G(r))?u(n,r,l,c):l(r)):c(o)}catch(t){h&&!i&&h.exit(),c(t)}},J=function(t,e){t.notified||(t.notified=!0,_((function(){for(var r,n=t.reactions;r=n.get();)$(r,t);t.notified=!1,e&&!t.rejection&&Z(t)})))},W=function(t,e,r){var n,i;q?((n=V.createEvent("Event")).promise=e,n.reason=r,n.initEvent(t,!1,!0),c.dispatchEvent(n)):n={promise:e,reason:r},!T&&(i=c["on"+t])?i(n):t===U&&k("Unhandled promise rejection",r)},Z=function(t){u(w,c,(function(){var e,r=t.facade,n=t.value;if(Y(t)&&(e=j((function(){l?H.emit("unhandledRejection",n,r):W(U,r,n)})),t.rejection=l||Y(t)?2:1,e.error))throw e.value}))},Y=function(t){return 1!==t.rejection&&!t.parent},Q=function(t){u(w,c,(function(){var e=t.facade;l?H.emit("rejectionHandled",e):W("rejectionhandled",e,t.value)}))},K=function(t,e,r){return function(n){t(e,n,r)}},X=function(t,e,r){t.done||(t.done=!0,r&&(t=r),t.value=e,t.state=2,J(t,!0))},tt=function(t,e,r){if(!t.done){t.done=!0,r&&(t=r);try{if(t.facade===e)throw new F("Promise can't be resolved itself");var n=G(e);n?_((function(){var r={done:!1};try{u(n,e,K(tt,r,t),K(X,r,t))}catch(e){X(r,e,t)}})):(t.value=e,t.state=1,J(t,!1))}catch(e){X({done:!1},e,t)}}};if(L&&(D=(N=function(t){b(this,D),y(t),u(n,this);var e=R(this);try{t(K(tt,e),K(X,e))}catch(t){X(e,t)}}).prototype,(n=function(t){I(this,{type:P,done:!1,notified:!1,parent:!1,reactions:new O,rejection:!1,state:0,value:void 0})}).prototype=h(D,"then",(function(t,e){var r=R(this),n=z(g(this,N));return r.parent=!0,n.ok=!m(t)||t,n.fail=m(e)&&e,n.domain=l?H.domain:void 0,0===r.state?r.reactions.add(n):_((function(){$(n,r)})),n.promise})),i=function(){var t=new n,e=R(t);this.promise=t,this.resolve=K(tt,e),this.reject=K(X,e)},S.f=z=function(t){return t===N||void 0===t?new i(t):M(t)},!s&&m(C)&&B!==Object.prototype)){o=B.then,A||h(B,"then",(function(t,e){var r=this;return new N((function(t,e){u(o,r,t,e)})).then(t,e)}),{unsafe:!0});try{delete B.constructor}catch(t){}p&&p(B,D)}a({global:!0,constructor:!0,wrap:!0,forced:L},{Promise:N}),d(N,P,!1,!0),f(P)},3362:(t,e,r)=>{r(436),r(6499),r(2003),r(7743),r(1481),r(280)},7743:(t,e,r)=>{var n=r(6518),i=r(9565),o=r(9306),a=r(6043),s=r(1103),l=r(2652);n({target:"Promise",stat:!0,forced:r(537)},{race:function(t){var e=this,r=a.f(e),n=r.reject,c=s((function(){var a=o(e.resolve);l(t,(function(t){i(a,e,t).then(r.resolve,n)}))}));return c.error&&n(c.value),r.promise}})},1481:(t,e,r)=>{var n=r(6518),i=r(6043);n({target:"Promise",stat:!0,forced:r(916).CONSTRUCTOR},{reject:function(t){var e=i.f(this);return(0,e.reject)(t),e.promise}})},280:(t,e,r)=>{var n=r(6518),i=r(7751),o=r(6395),a=r(550),s=r(916).CONSTRUCTOR,l=r(3438),c=i("Promise"),u=o&&!s;n({target:"Promise",stat:!0,forced:o||s},{resolve:function(t){return l(u&&this===c?a:this,t)}})},825:(t,e,r)=>{var n=r(6518),i=r(7751),o=r(8745),a=r(566),s=r(5548),l=r(8551),c=r(34),u=r(2360),h=r(9039),p=i("Reflect","construct"),d=Object.prototype,f=[].push,y=h((function(){function t(){}return!(p((function(){}),[],t)instanceof t)})),m=!h((function(){p((function(){}))})),v=y||m;n({target:"Reflect",stat:!0,forced:v,sham:v},{construct:function(t,e){s(t),l(e);var r=arguments.length<3?t:s(arguments[2]);if(m&&!y)return p(t,e,r);if(t===r){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var n=[null];return o(f,n,e),new(o(a,t,n))}var i=r.prototype,h=u(c(i)?i:d),v=o(t,h,e);return c(v)?v:h}})},888:(t,e,r)=>{var n=r(6518),i=r(9565),o=r(34),a=r(8551),s=r(6575),l=r(7347),c=r(2787);n({target:"Reflect",stat:!0},{get:function t(e,r){var n,u,h=arguments.length<3?e:arguments[2];return a(e)===h?e[r]:(n=l.f(e,r))?s(n)?n.value:void 0===n.get?void 0:i(n.get,h):o(u=c(e))?t(u,r,h):void 0}})},4864:(t,e,r)=>{var n=r(3724),i=r(4475),o=r(9504),a=r(2796),s=r(3167),l=r(6699),c=r(2360),u=r(8480).f,h=r(1625),p=r(788),d=r(655),f=r(1034),y=r(8429),m=r(1056),v=r(6840),b=r(9039),g=r(9297),w=r(1181).enforce,_=r(7633),k=r(8227),j=r(3635),O=r(8814),x=k("match"),C=i.RegExp,E=C.prototype,S=i.SyntaxError,P=o(E.exec),L=o("".charAt),T=o("".replace),A=o("".indexOf),R=o("".slice),I=/^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/,B=/a/g,N=/a/g,D=new C(B)!==B,F=y.MISSED_STICKY,V=y.UNSUPPORTED_Y;if(a("RegExp",n&&(!D||F||j||O||b((function(){return N[x]=!1,C(B)!==B||C(N)===N||"/a/i"!==String(C(B,"i"))}))))){for(var H=function(t,e){var r,n,i,o,a,u,y=h(E,this),m=p(t),v=void 0===e,b=[],_=t;if(!y&&m&&v&&t.constructor===H)return t;if((m||h(E,t))&&(t=t.source,v&&(e=f(_))),t=void 0===t?"":d(t),e=void 0===e?"":d(e),_=t,j&&"dotAll"in B&&(n=!!e&&A(e,"s")>-1)&&(e=T(e,/s/g,"")),r=e,F&&"sticky"in B&&(i=!!e&&A(e,"y")>-1)&&V&&(e=T(e,/y/g,"")),O&&(o=function(t){for(var e,r=t.length,n=0,i="",o=[],a=c(null),s=!1,l=!1,u=0,h="";n<=r;n++){if("\\"===(e=L(t,n)))e+=L(t,++n);else if("]"===e)s=!1;else if(!s)switch(!0){case"["===e:s=!0;break;case"("===e:P(I,R(t,n+1))&&(n+=2,l=!0),i+=e,u++;continue;case">"===e&&l:if(""===h||g(a,h))throw new S("Invalid capture group name");a[h]=!0,o[o.length]=[h,u],l=!1,h="";continue}l?h+=e:i+=e}return[i,o]}(t),t=o[0],b=o[1]),a=s(C(t,e),y?this:E,H),(n||i||b.length)&&(u=w(a),n&&(u.dotAll=!0,u.raw=H(function(t){for(var e,r=t.length,n=0,i="",o=!1;n<=r;n++)"\\"!==(e=L(t,n))?o||"."!==e?("["===e?o=!0:"]"===e&&(o=!1),i+=e):i+="[\\s\\S]":i+=e+L(t,++n);return i}(t),r)),i&&(u.sticky=!0),b.length&&(u.groups=b)),t!==_)try{l(a,"source",""===_?"(?:)":_)}catch(t){}return a},z=u(C),M=0;z.length>M;)m(H,C,z[M++]);E.constructor=H,H.prototype=E,v(i,"RegExp",H,{constructor:!0})}_("RegExp")},7495:(t,e,r)=>{var n=r(6518),i=r(7323);n({target:"RegExp",proto:!0,forced:/./.exec!==i},{exec:i})},8781:(t,e,r)=>{var n=r(350).PROPER,i=r(6840),o=r(8551),a=r(655),s=r(9039),l=r(1034),c="toString",u=RegExp.prototype,h=u[c],p=s((function(){return"/a/b"!==h.call({source:"a",flags:"b"})})),d=n&&h.name!==c;(p||d)&&i(u,c,(function(){var t=o(this);return"/"+a(t.source)+"/"+a(l(t))}),{unsafe:!0})},1699:(t,e,r)=>{var n=r(6518),i=r(9504),o=r(5749),a=r(7750),s=r(655),l=r(1436),c=i("".indexOf);n({target:"String",proto:!0,forced:!l("includes")},{includes:function(t){return!!~c(s(a(this)),s(o(t)),arguments.length>1?arguments[1]:void 0)}})},7764:(t,e,r)=>{var n=r(8183).charAt,i=r(655),o=r(1181),a=r(1088),s=r(2529),l="String Iterator",c=o.set,u=o.getterFor(l);a(String,"String",(function(t){c(this,{type:l,string:i(t),index:0})}),(function(){var t,e=u(this),r=e.string,i=e.index;return i>=r.length?s(void 0,!0):(t=n(r,i),e.index+=t.length,s(t,!1))}))},1761:(t,e,r)=>{var n=r(9565),i=r(9228),o=r(8551),a=r(4117),s=r(8014),l=r(655),c=r(7750),u=r(5966),h=r(7829),p=r(6682);i("match",(function(t,e,r){return[function(e){var r=c(this),i=a(e)?void 0:u(e,t);return i?n(i,e,r):new RegExp(e)[t](l(r))},function(t){var n=o(this),i=l(t),a=r(e,n,i);if(a.done)return a.value;if(!n.global)return p(n,i);var c=n.unicode;n.lastIndex=0;for(var u,d=[],f=0;null!==(u=p(n,i));){var y=l(u[0]);d[f]=y,""===y&&(n.lastIndex=h(i,s(n.lastIndex),c)),f++}return 0===f?null:d}]}))},5440:(t,e,r)=>{var n=r(8745),i=r(9565),o=r(9504),a=r(9228),s=r(9039),l=r(8551),c=r(4901),u=r(4117),h=r(1291),p=r(8014),d=r(655),f=r(7750),y=r(7829),m=r(5966),v=r(2478),b=r(6682),g=r(8227)("replace"),w=Math.max,_=Math.min,k=o([].concat),j=o([].push),O=o("".indexOf),x=o("".slice),C="$0"==="a".replace(/./,"$0"),E=!!/./[g]&&""===/./[g]("a","$0");a("replace",(function(t,e,r){var o=E?"$":"$0";return[function(t,r){var n=f(this),o=u(t)?void 0:m(t,g);return o?i(o,t,n,r):i(e,d(n),t,r)},function(t,i){var a=l(this),s=d(t);if("string"==typeof i&&-1===O(i,o)&&-1===O(i,"$<")){var u=r(e,a,s,i);if(u.done)return u.value}var f=c(i);f||(i=d(i));var m,g=a.global;g&&(m=a.unicode,a.lastIndex=0);for(var C,E=[];null!==(C=b(a,s))&&(j(E,C),g);)""===d(C[0])&&(a.lastIndex=y(s,p(a.lastIndex),m));for(var S,P="",L=0,T=0;T=L&&(P+=x(s,L,I)+A,L=I+R.length)}return P+x(s,L)}]}),!!s((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")}))||!C||E)},1392:(t,e,r)=>{var n,i=r(6518),o=r(7476),a=r(7347).f,s=r(8014),l=r(655),c=r(5749),u=r(7750),h=r(1436),p=r(6395),d=o("".slice),f=Math.min,y=h("startsWith");i({target:"String",proto:!0,forced:!(!p&&!y&&(n=a(String.prototype,"startsWith"),n&&!n.writable)||y)},{startsWith:function(t){var e=l(u(this));c(t);var r=s(f(arguments.length>1?arguments[1]:void 0,e.length)),n=l(t);return d(e,r,r+n.length)===n}})},2762:(t,e,r)=>{var n=r(6518),i=r(3802).trim;n({target:"String",proto:!0,forced:r(706)("trim")},{trim:function(){return i(this)}})},6412:(t,e,r)=>{r(511)("asyncIterator")},6761:(t,e,r)=>{var n=r(6518),i=r(4475),o=r(9565),a=r(9504),s=r(6395),l=r(3724),c=r(4495),u=r(9039),h=r(9297),p=r(1625),d=r(8551),f=r(5397),y=r(6969),m=r(655),v=r(6980),b=r(2360),g=r(1072),w=r(8480),_=r(298),k=r(3717),j=r(7347),O=r(4913),x=r(6801),C=r(8773),E=r(6840),S=r(2106),P=r(5745),L=r(6119),T=r(421),A=r(3392),R=r(8227),I=r(1951),B=r(511),N=r(8242),D=r(687),F=r(1181),V=r(9213).forEach,H=L("hidden"),z="Symbol",M="prototype",q=F.set,U=F.getterFor(z),G=Object[M],$=i.Symbol,J=$&&$[M],W=i.RangeError,Z=i.TypeError,Y=i.QObject,Q=j.f,K=O.f,X=_.f,tt=C.f,et=a([].push),rt=P("symbols"),nt=P("op-symbols"),it=P("wks"),ot=!Y||!Y[M]||!Y[M].findChild,at=function(t,e,r){var n=Q(G,e);n&&delete G[e],K(t,e,r),n&&t!==G&&K(G,e,n)},st=l&&u((function(){return 7!==b(K({},"a",{get:function(){return K(this,"a",{value:7}).a}})).a}))?at:K,lt=function(t,e){var r=rt[t]=b(J);return q(r,{type:z,tag:t,description:e}),l||(r.description=e),r},ct=function(t,e,r){t===G&&ct(nt,e,r),d(t);var n=y(e);return d(r),h(rt,n)?(r.enumerable?(h(t,H)&&t[H][n]&&(t[H][n]=!1),r=b(r,{enumerable:v(0,!1)})):(h(t,H)||K(t,H,v(1,b(null))),t[H][n]=!0),st(t,n,r)):K(t,n,r)},ut=function(t,e){d(t);var r=f(e),n=g(r).concat(ft(r));return V(n,(function(e){l&&!o(ht,r,e)||ct(t,e,r[e])})),t},ht=function(t){var e=y(t),r=o(tt,this,e);return!(this===G&&h(rt,e)&&!h(nt,e))&&(!(r||!h(this,e)||!h(rt,e)||h(this,H)&&this[H][e])||r)},pt=function(t,e){var r=f(t),n=y(e);if(r!==G||!h(rt,n)||h(nt,n)){var i=Q(r,n);return!i||!h(rt,n)||h(r,H)&&r[H][n]||(i.enumerable=!0),i}},dt=function(t){var e=X(f(t)),r=[];return V(e,(function(t){h(rt,t)||h(T,t)||et(r,t)})),r},ft=function(t){var e=t===G,r=X(e?nt:f(t)),n=[];return V(r,(function(t){!h(rt,t)||e&&!h(G,t)||et(n,rt[t])})),n};c||(E(J=($=function(){if(p(J,this))throw new Z("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?m(arguments[0]):void 0,e=A(t),r=function(t){var n=void 0===this?i:this;n===G&&o(r,nt,t),h(n,H)&&h(n[H],e)&&(n[H][e]=!1);var a=v(1,t);try{st(n,e,a)}catch(t){if(!(t instanceof W))throw t;at(n,e,a)}};return l&&ot&&st(G,e,{configurable:!0,set:r}),lt(e,t)})[M],"toString",(function(){return U(this).tag})),E($,"withoutSetter",(function(t){return lt(A(t),t)})),C.f=ht,O.f=ct,x.f=ut,j.f=pt,w.f=_.f=dt,k.f=ft,I.f=function(t){return lt(R(t),t)},l&&(S(J,"description",{configurable:!0,get:function(){return U(this).description}}),s||E(G,"propertyIsEnumerable",ht,{unsafe:!0}))),n({global:!0,constructor:!0,wrap:!0,forced:!c,sham:!c},{Symbol:$}),V(g(it),(function(t){B(t)})),n({target:z,stat:!0,forced:!c},{useSetter:function(){ot=!0},useSimple:function(){ot=!1}}),n({target:"Object",stat:!0,forced:!c,sham:!l},{create:function(t,e){return void 0===e?b(t):ut(b(t),e)},defineProperty:ct,defineProperties:ut,getOwnPropertyDescriptor:pt}),n({target:"Object",stat:!0,forced:!c},{getOwnPropertyNames:dt}),N(),D($,z),T[H]=!0},9463:(t,e,r)=>{var n=r(6518),i=r(3724),o=r(4475),a=r(9504),s=r(9297),l=r(4901),c=r(1625),u=r(655),h=r(2106),p=r(7740),d=o.Symbol,f=d&&d.prototype;if(i&&l(d)&&(!("description"in f)||void 0!==d().description)){var y={},m=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:u(arguments[0]),e=c(f,this)?new d(t):void 0===t?d():d(t);return""===t&&(y[e]=!0),e};p(m,d),m.prototype=f,f.constructor=m;var v="Symbol(description detection)"===String(d("description detection")),b=a(f.valueOf),g=a(f.toString),w=/^Symbol\((.*)\)[^)]+$/,_=a("".replace),k=a("".slice);h(f,"description",{configurable:!0,get:function(){var t=b(this);if(s(y,t))return"";var e=g(t),r=v?k(e,7,-1):_(e,w,"$1");return""===r?void 0:r}}),n({global:!0,constructor:!0,forced:!0},{Symbol:m})}},1510:(t,e,r)=>{var n=r(6518),i=r(7751),o=r(9297),a=r(655),s=r(5745),l=r(1296),c=s("string-to-symbol-registry"),u=s("symbol-to-string-registry");n({target:"Symbol",stat:!0,forced:!l},{for:function(t){var e=a(t);if(o(c,e))return c[e];var r=i("Symbol")(e);return c[e]=r,u[r]=e,r}})},2259:(t,e,r)=>{r(511)("iterator")},2675:(t,e,r)=>{r(6761),r(1510),r(7812),r(3110),r(9773)},7812:(t,e,r)=>{var n=r(6518),i=r(9297),o=r(757),a=r(6823),s=r(5745),l=r(1296),c=s("symbol-to-string-registry");n({target:"Symbol",stat:!0,forced:!l},{keyFor:function(t){if(!o(t))throw new TypeError(a(t)+" is not a symbol");if(i(c,t))return c[t]}})},5700:(t,e,r)=>{var n=r(511),i=r(8242);n("toPrimitive"),i()},8125:(t,e,r)=>{var n=r(7751),i=r(511),o=r(687);i("toStringTag"),o(n("Symbol"),"Symbol")},3500:(t,e,r)=>{var n=r(4475),i=r(7400),o=r(9296),a=r(235),s=r(6699),l=function(t){if(t&&t.forEach!==a)try{s(t,"forEach",a)}catch(e){t.forEach=a}};for(var c in i)i[c]&&l(n[c]&&n[c].prototype);l(o)},2953:(t,e,r)=>{var n=r(4475),i=r(7400),o=r(9296),a=r(3792),s=r(6699),l=r(687),c=r(8227)("iterator"),u=a.values,h=function(t,e){if(t){if(t[c]!==u)try{s(t,c,u)}catch(e){t[c]=u}if(l(t,e,!0),i[e])for(var r in a)if(t[r]!==a[r])try{s(t,r,a[r])}catch(e){t[r]=a[r]}}};for(var p in i)h(n[p]&&n[p].prototype,p);h(o,"DOMTokenList")},5575:(t,e,r)=>{var n=r(6518),i=r(4475),o=r(9472)(i.setInterval,!0);n({global:!0,bind:!0,forced:i.setInterval!==o},{setInterval:o})},4599:(t,e,r)=>{var n=r(6518),i=r(4475),o=r(9472)(i.setTimeout,!0);n({global:!0,bind:!0,forced:i.setTimeout!==o},{setTimeout:o})},6031:(t,e,r)=>{r(5575),r(4599)}},e={};function r(n){var i=e[n];if(void 0!==i)return i.exports;var o=e[n]={exports:{}};return t[n].call(o.exports,o,o.exports,r),o.exports}r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var n={};return(()=>{r.r(n),r.d(n,{JSONEditor:()=>Wl}),r(2675),r(9463),r(6412),r(2259),r(5700),r(8125),r(8706),r(113),r(1629),r(3418),r(4346),r(3792),r(2712),r(4490),r(4782),r(739),r(9572),r(3288),r(2010),r(4731),r(479),r(2892),r(9085),r(9904),r(4185),r(875),r(9432),r(287),r(6099),r(6034),r(3362),r(7495),r(8781),r(7764),r(3500),r(2953),r(5506),r(4864),r(5440),r(4423);var t=["actionscript","batchfile","c","c++","cpp","coffee","csharp","css","dart","django","ejs","erlang","golang","groovy","handlebars","haskell","haxe","html","ini","jade","java","javascript","json","less","lisp","lua","makefile","matlab","mysql","objectivec","pascal","perl","pgsql","php","python","prql","r","ruby","rust","sass","scala","scss","sh","smarty","sql","sqlserver","stylus","svg","typescript","twig","vbscript","xml","yaml","zig"],e=[function(t){return"string"===t.type&&"color"===t.format&&"colorpicker"},function(t){return"string"===t.type&&["ip","ipv4","ipv6","hostname"].includes(t.format)&&"ip"},function(e){return"string"===e.type&&t.includes(e.format)&&"ace"},function(t){return"string"===t.type&&["xhtml","bbcode"].includes(t.format)&&"sceditor"},function(t){return"string"===t.type&&"markdown"===t.format&&"simplemde"},function(t){return"string"===t.type&&"jodit"===t.format&&"jodit"},function(t){return"string"===t.type&&"autocomplete"===t.format&&"autocomplete"},function(t){return"string"===t.type&&"uuid"===t.format&&"uuid"},function(t){return"info"===t.format&&"info"},function(t){return"button"===t.format&&"button"},function(t){if(("integer"===t.type||"number"===t.type)&&"stepper"===t.format)return"stepper"},function(t){if(t.links)for(var e=0;e1?e-1:0),n=1;n1?e-1:0),n=1;nt.length)&&(e=t.length);for(var r=0,n=new Array(e);r0):this.dependenciesFulfilled&&(!i||0===i.length)):this.dependenciesFulfilled=!1}}},{key:"setContainer",value:function(t){this.container=t,this.setContainerAttributes(),this.schema.id&&this.container.setAttribute("data-schemaid",this.schema.id),this.schema.type&&"string"==typeof this.schema.type&&this.container.setAttribute("data-schematype",this.schema.type),this.container.setAttribute("data-schemapath",this.path)}},{key:"setOptInCheckbox",value:function(){var t,e=this;t="switch"===this.optInWidget?this.theme.getOptInSwitch(this.formname):this.theme.getOptInCheckbox(this.formname),this.optInCheckbox=t.checkbox,this.optInContainer=t.container,this.optInCheckbox.addEventListener("click",(function(){e.isActive()?e.deactivate():e.activate()}));var r=this.jsoneditor.options.show_opt_in,n=void 0!==this.parent.options.show_opt_in,i=n&&!0===this.parent.options.show_opt_in,o=n&&!1===this.parent.options.show_opt_in;(i||!o&&r||!n&&r)&&this.parent&&"object"===this.parent.schema.type&&!this.isRequired()&&this.header&&(this.header.insertBefore(this.optInContainer,this.header.firstChild),this.optInAppended=!0)}},{key:"preBuild",value:function(){}},{key:"build",value:function(){}},{key:"postBuild",value:function(){this.setupWatchListeners(),this.addLinks(),this.register(),this.setValue(this.getDefault(),!0),this.updateHeaderText(),this.onWatchedFieldChange(),this.options.titleHidden&&(this.theme.visuallyHidden(this.label),this.theme.visuallyHidden(this.header)),this.enforceConstEnabled&&this.schema.const&&this.disable()}},{key:"setupWatchListeners",value:function(){var t=this;if(this.watched={},this.schema.vars&&(this.schema.watch=this.schema.vars),this.watched_values={},this.watch_listener=function(){t.refreshWatchedFieldValues()&&t.onWatchedFieldChange()},h(this.schema,"watch")){var e,r,n,i,o,a=this.container.getAttribute("data-schemapath");Object.keys(this.schema.watch).forEach((function(s){if(e=t.schema.watch[s],Array.isArray(e)){if(e.length<2)return;r=[e[0]].concat(e[1].split("."))}else r=e.split("."),t.theme.closest(t.container,'[data-schemaid="'.concat(r[0],'"]'))||r.unshift("#");if("#"===(n=r.shift())&&(n=t.jsoneditor.schema.id||t.jsoneditor.root.formname),!(i=t.theme.closest(t.container,'[data-schemaid="'.concat(n,'"]'))))throw new Error("Could not find ancestor node with id ".concat(n));o="".concat(i.getAttribute("data-schemapath"),".").concat(r.join(".")),a.startsWith(o)&&(t.watchLoop=!0),t.jsoneditor.watch(o,t.watch_listener),t.watched[s]=o}))}this.schema.headerTemplate&&(this.header_template=this.jsoneditor.compileTemplate(this.schema.headerTemplate,this.template_engine))}},{key:"addLinks",value:function(){if(!this.no_link_holder&&(this.link_holder=this.theme.getLinksHolder(),void 0!==this.description?this.description.parentNode.insertBefore(this.link_holder,this.description):this.container.appendChild(this.link_holder),this.schema.links))for(var t=0;t3&&void 0!==arguments[3]?arguments[3]:[],i="json-editor-btn-".concat(e);e=this.iconlib?this.iconlib.getIcon(e):null,t=this.translate(t,n),r=this.translate(r,n),!e&&r&&(t=r,r=null);var o=this.theme.getButton(t,e,r);return o.classList.add(i),o}},{key:"setButtonText",value:function(t,e,r,n){var i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[];return r=this.iconlib?this.iconlib.getIcon(r):null,e=this.translate(e,i),n=this.translate(n,i),!r&&n&&(e=n,n=null),this.theme.setButtonText(t,e,r,n)}},{key:"addLink",value:function(t){this.link_holder&&this.link_holder.appendChild(t)}},{key:"getLink",value:function(t){var e,r,n=(t.mediaType||"application/javascript").split("/")[0],i=this.jsoneditor.compileTemplate(t.href,this.template_engine),o=this.jsoneditor.compileTemplate(t.rel?t.rel:t.href,this.template_engine),a=null;if(t.download&&(a=t.download),a&&!0!==a&&(a=this.jsoneditor.compileTemplate(a,this.template_engine)),"image"===n){e=this.theme.getBlockLinkHolder(),(r=document.createElement("a")).setAttribute("target","_blank");var s=document.createElement("img");this.theme.createImageLink(e,r,s),this.link_watchers.push((function(t){var e=i(t),n=o(t);r.setAttribute("href",e),r.setAttribute("title",n||e),s.setAttribute("src",e)}))}else if(["audio","video"].includes(n)){e=this.theme.getBlockLinkHolder(),(r=this.theme.getBlockLink()).setAttribute("target","_blank");var l=document.createElement(n);l.setAttribute("controls","controls"),this.theme.createMediaLink(e,r,l),this.link_watchers.push((function(t){var e=i(t),n=o(t);r.setAttribute("href",e),r.textContent=n||e,l.setAttribute("src",e)}))}else r=e=this.theme.getBlockLink(),e.setAttribute("target","_blank"),e.textContent=t.rel,e.style.display="none",this.link_watchers.push((function(t){var r=i(t),n=o(t);r&&(e.style.display=""),e.setAttribute("href",r),e.textContent=n||r}));return a&&r&&(!0===a?r.setAttribute("download",""):this.link_watchers.push((function(t){r.setAttribute("download",a(t))}))),t.class&&t.class.split(" ").forEach((function(t){r.classList.add(t)})),e}},{key:"refreshWatchedFieldValues",value:function(){var t=this;if(this.watched_values){var e={},r=!1;return this.watched&&Object.keys(this.watched).forEach((function(n){var i=t.jsoneditor.getEditor(t.watched[n]),o=i?i.getValue():null;t.watched_values[n]!==o&&(r=!0),e[n]=o})),e.self=this.getValue(),this.watched_values.self!==e.self&&(r=!0),this.watched_values=e,r}}},{key:"getWatchedFieldValues",value:function(){return this.watched_values}},{key:"updateHeaderText",value:function(){if(this.header){var t=this.getHeaderText();if(this.header.children.length){for(var e=0;e1&&(e[i]="".concat(t," ").concat(n[t]))})),e}},{key:"getValidId",value:function(t){return(t=void 0===t?"":t.toString()).replace(/\s+/g,"-")}},{key:"setInputAttributes",value:function(t,e){if(this.schema.options&&this.schema.options.inputAttributes){var r=this.schema.options.inputAttributes,n=["name","type"].concat(t),i=e||this.input;Object.keys(r).forEach((function(t){n.includes(t.toLowerCase())||i.setAttribute(t,r[t])}))}}},{key:"setContainerAttributes",value:function(){var t=this;if(this.schema.options&&this.schema.options.containerAttributes){var e=this.schema.options.containerAttributes,r=["data-schemapath","data-schematype","data-schemaid"];Object.keys(e).forEach((function(n){r.includes(n.toLowerCase())||t.container.setAttribute(n,e[n])}))}}},{key:"expandCallbacks",value:function(t,e){var r=this,n=this.defaults.callbacks[t];return Object.entries(e).forEach((function(i){var o,a,s=(a=2,function(t){if(Array.isArray(t))return t}(o=i)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,i,o,a,s=[],l=!0,c=!1;try{if(o=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.call(r)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(t){c=!0,i=t}finally{try{if(!l&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw i}}return s}}(o,a)||function(t,e){if(t){if("string"==typeof t)return v(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?v(t,e):void 0}}(o,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=s[0],c=s[1];c===Object(c)?e[l]=r.expandCallbacks(t,c):"string"==typeof c&&"object"===b(n)&&"function"==typeof n[c]&&(e[l]=n[c].bind(null,r))})),e}},{key:"showValidationErrors",value:function(t){}}],e&&g(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function k(t){return k="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},k(t)}function j(t,e){for(var r=0;r100);)e++,r++,t.style.height="".concat(r,"px");else{for(e=0;t.offsetHeight>=t.scrollHeight+3&&!(e>100);)e++,r--,t.style.height="".concat(r,"px");t.style.height="".concat(r+1,"px")}}},this.input.addEventListener("keyup",(function(t){e.adjust_height(t.currentTarget)})),this.input.addEventListener("change",(function(t){e.adjust_height(t.currentTarget)})),this.adjust_height());var o=null!==(t=this.options.prompt_paste_max_length_reached)&&void 0!==t?t:this.jsoneditor.options.prompt_paste_max_length_reached,a=void 0!==this.schema.maxLength;o&&a&&this.input.addEventListener("paste",(function(t){(t.clipboardData||window.clipboardData).getData("text").length+e.input.value.length>e.schema.maxLength&&alert(e.translate("paste_max_length_reached",[e.schema.maxLength]))})),this.format&&this.input.setAttribute("data-schemaformat",this.format);var s=this.input;if("range"===this.format&&(s=this.theme.getRangeControl(this.input,this.theme.getRangeOutput(this.input,this.schema.default||Math.max(this.schema.minimum||0,0)))),this.control=this.theme.getFormControl(this.label,s,this.description,this.infoButton,this.formname),this.container.appendChild(this.control),window.requestAnimationFrame((function(){e.input.parentNode&&e.afterInputReady(),e.adjust_height&&e.adjust_height(e.input),"range"===e.format&&(e.control.querySelector("output").value=e.input.value)})),this.schema.template){var l=this.expandCallbacks("template",{template:this.schema.template});"function"==typeof l.template?this.template=l.template:this.template=this.jsoneditor.compileTemplate(this.schema.template,this.template_engine),this.refreshValue()}else this.refreshValue()}},{key:"setupCleave",value:function(t){var e=this.expandCallbacks("cleave",l({},this.defaults.options.cleave||{},this.options.cleave||{}));"object"===k(e)&&Object.keys(e).length>0&&(this.cleave_instance=new window.Cleave(t,e))}},{key:"setupImask",value:function(t){var e=this.expandCallbacks("imask",l({},this.defaults.options.imask||{},this.options.imask||{}));"object"===k(e)&&Object.keys(e).length>0&&(this.imask_instance=window.IMask(t,this.ajustIMaskOptions(e)))}},{key:"ajustIMaskOptions",value:function(t){var e=this;return Object.keys(t).forEach((function(r){if(t[r]===Object(t[r]))t[r]=e.ajustIMaskOptions(t[r]);else if("mask"===r)if("regex:"===t[r].substr(0,6)){var n=t[r].match(/^regex:\/(.*)\/([gimsuy]*)$/);if(null!==n)try{t[r]=new RegExp(n[1],n[2])}catch(t){}}else t[r]=e.getGlobalPropertyFromString(t[r])})),t}},{key:"getGlobalPropertyFromString",value:function(t){if(t.includes(".")){var e=t.split("."),r=e[0],n=e[1];if(void 0!==window[r]&&void 0!==window[r][n])return window[r][n]}else if(void 0!==window[t])return window[t];return t}},{key:"shouldBeUnset",value:function(){return!this.jsoneditor.options.use_default_values&&!this.is_dirty}},{key:"getValue",value:function(){var t=!(!this.input||!this.input.value);if(!this.shouldBeUnset()||t)return this.imask_instance&&this.dependenciesFulfilled&&this.options.imask.returnUnmasked?this.imask_instance.unmaskedValue:E(S(e.prototype),"getValue",this).call(this)}},{key:"enable",value:function(){this.always_disabled||(this.input.disabled=!1,E(S(e.prototype),"enable",this).call(this))}},{key:"disable",value:function(t){t&&(this.always_disabled=!0),this.input.disabled=!0,E(S(e.prototype),"disable",this).call(this)}},{key:"afterInputReady",value:function(){this.theme.afterInputReady(this.input),window.Cleave&&!this.cleave_instance?this.setupCleave(this.input):window.IMask&&!this.imask_instance&&this.setupImask(this.input)}},{key:"refreshValue",value:function(){this.input&&(this.value=this.input.value,"string"==typeof this.value||this.shouldBeUnset()||(this.value=""),this.serialized=this.value)}},{key:"destroy",value:function(){this.cleave_instance&&this.cleave_instance.destroy(),this.imask_instance&&this.imask_instance.destroy(),this.template=null,this.input&&this.input.parentNode&&this.input.parentNode.removeChild(this.input),this.label&&this.label.parentNode&&this.label.parentNode.removeChild(this.label),this.description&&this.description.parentNode&&this.description.parentNode.removeChild(this.description),E(S(e.prototype),"destroy",this).call(this)}},{key:"sanitize",value:function(t){return t}},{key:"onWatchedFieldChange",value:function(){var t;this.template&&(t=this.getWatchedFieldValues(),this.setValue(this.template(t),!1,!0)),E(S(e.prototype),"onWatchedFieldChange",this).call(this)}},{key:"showValidationErrors",value:function(t){var e=this;if("always"===this.jsoneditor.options.show_errors);else if(!this.is_dirty&&this.previous_error_setting===this.jsoneditor.options.show_errors)return;this.previous_error_setting=this.jsoneditor.options.show_errors;var r=t.reduce((function(t,r){return r.path===e.path&&t.push(r.message),t}),[]);r.length?this.theme.addInputError(this.input,"".concat(r.join(". "),".")):this.theme.removeInputError(this.input)}}])&&j(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(_);function T(t){return T="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},T(t)}function A(t,e){for(var r=0;r=this.schema.items.length?!0===this.schema.additionalItems?{}:this.schema.additionalItems?l({},this.schema.additionalItems):void 0:l({},this.schema.items[t]):this.schema.items?l({},this.schema.items):{}}},{key:"getItemInfo",value:function(t){var e=this.getItemSchema(t);this.item_info=this.item_info||{};var r=JSON.stringify(e);return void 0!==this.item_info[r]||(e=this.jsoneditor.expandRefs(e),this.item_info[r]={title:this.translateProperty(e.title)||this.translate("default_array_item_title"),default:e.default,width:12,child_editors:e.properties||e.items}),this.item_info[r]}},{key:"getElementEditor",value:function(t){var e=this.getItemInfo(t),r=this.getItemSchema(t);(r=this.jsoneditor.expandRefs(r)).title="".concat(e.title," ").concat(t+1);var n,i=this.jsoneditor.getEditorClass(r);this.tabs_holder?(n="tabs-top"===this.schema.format?this.theme.getTopTabContent():this.theme.getTabContent()).id="".concat(this.path,".").concat(t):n=e.child_editors?this.theme.getChildEditorHolder():this.theme.getIndentedPanel(),this.row_holder.appendChild(n);var o=this.jsoneditor.createEditor(i,{jsoneditor:this.jsoneditor,schema:r,container:n,path:"".concat(this.path,".").concat(t),parent:this,required:!0});return o.preBuild(),o.build(),o.postBuild(),o.title_controls||(o.array_controls=this.theme.getButtonHolder(),n.appendChild(o.array_controls)),o}},{key:"checkParent",value:function(t){return t&&t.parentNode}},{key:"destroy",value:function(){this.empty(!0),this.checkParent(this.title)&&this.title.parentNode.removeChild(this.title),this.checkParent(this.description)&&this.description.parentNode.removeChild(this.description),this.checkParent(this.row_holder)&&this.row_holder.parentNode.removeChild(this.row_holder),this.checkParent(this.controls)&&this.controls.parentNode.removeChild(this.controls),this.checkParent(this.panel)&&this.panel.parentNode.removeChild(this.panel),this.rows=this.row_cache=this.title=this.description=this.row_holder=this.panel=this.controls=null,G($(e.prototype),"destroy",this).call(this)}},{key:"empty",value:function(t){var e=this;if(null!==this.rows){if(this.rows.forEach((function(r,n){t&&(e.checkParent(r.tab)&&r.tab.parentNode.removeChild(r.tab),e.destroyRow(r,!0),e.row_cache[n]=null),e.rows[n]=null})),t)for(var r=this.rows.length;rthis.getMax()&&(t=t.slice(0,this.getMax())),t}},{key:"setValue",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],r=arguments.length>1?arguments[1]:void 0;if(e=this.applyConstFilter(e),e=this.ensureArraySize(e),JSON.stringify(e)!==this.serialized){e.forEach((function(e,n){if(t.rows[n])t.rows[n].setValue(e,r);else if(t.row_cache[n])t.rows[n]=t.row_cache[n],t.rows[n].setValue(e,r),t.rows[n].container.style.display="",t.rows[n].tab&&(t.rows[n].tab.style.display=""),t.rows[n].register(),t.jsoneditor.trigger("addRow",t.rows[n]);else{var i=t.addRow(e,r);t.jsoneditor.trigger("addRow",i)}}));for(var n=e.length;n=this.rows.length;this.rows.forEach((function(t,r){if(t.movedown_button){var i=r!==e.rows.length-1;e.setButtonState(t.movedown_button,i)}t.delete_button&&e.setButtonState(t.delete_button,!n),e.value[r]=t.getValue()})),this.setupButtons(n)&&!this.collapsed?this.controls.style.display="inline-block":this.controls.style.display="none"}this.serialized=JSON.stringify(this.value)}},{key:"addRow",value:function(t,e){var r=this,n=this.rows.length;this.rows[n]=this.getElementEditor(n),this.row_cache[n]=this.rows[n],this.tabs_holder?(this.rows[n].tab_text=document.createElement("span"),this.rows[n].tab_text.textContent=this.rows[n].getHeaderText(),"tabs-top"===this.schema.format?(this.rows[n].tab=this.theme.getTopTab(this.rows[n].tab_text,this.getValidId(this.rows[n].path)),this.theme.addTopTab(this.tabs_holder,this.rows[n].tab)):(this.rows[n].tab=this.theme.getTab(this.rows[n].tab_text,this.getValidId(this.rows[n].path)),this.theme.addTab(this.tabs_holder,this.rows[n].tab)),this.rows[n].tab.addEventListener("click",(function(t){r.active_tab=r.rows[n].tab,r.refreshTabs(),t.preventDefault(),t.stopPropagation()})),this._supportDragDrop(this.rows[n].tab)):this._supportDragDrop(this.rows[n].container,!0);var i=this.rows[n].title_controls||this.rows[n].array_controls;return this.hide_delete_buttons||(this.rows[n].delete_button=this._createDeleteButton(n,i)),this.show_copy_button&&(this.rows[n].copy_button=this._createCopyButton(n,i)),n&&!this.hide_move_buttons&&(this.rows[n].moveup_button=this._createMoveUpButton(n,i)),this.hide_move_buttons||(this.rows[n].movedown_button=this._createMoveDownButton(n,i)),void 0!==t&&this.rows[n].setValue(t,e),this.refreshTabs(),this.rows[n]}},{key:"_createDeleteButton",value:function(t,e){var r=this,n=this.getButton(this.getItemTitle(),"delete","button_delete_row_title",[this.getItemTitle()]);return n.classList.add("delete","json-editor-btntype-delete"),n.setAttribute("data-i",t),n.addEventListener("click",(function(t){if(t.preventDefault(),t.stopPropagation(),!r.askConfirmation())return!1;var e=1*t.currentTarget.getAttribute("data-i"),n=r.getValue().filter((function(t,r){return r!==e})),i=null,o=r.rows[e].getValue();r.setValue(n),r.rows[e]?i=r.rows[e].tab:r.rows[e-1]&&(i=r.rows[e-1].tab),i&&(r.active_tab=i,r.refreshTabs()),r.onChange(!0),r.jsoneditor.trigger("deleteRow",o)})),e&&e.appendChild(n),n}},{key:"_createCopyButton",value:function(t,e){var r=this,n=this.getButton(this.getItemTitle(),"copy","button_copy_row_title",[this.getItemTitle()]),i=this.schema;return n.classList.add("copy","json-editor-btntype-copy"),n.setAttribute("data-i",t),n.addEventListener("click",(function(t){var e=r.getValue();t.preventDefault(),t.stopPropagation();var n=1*t.currentTarget.getAttribute("data-i");e.forEach((function(t,r){if(r===n){if("string"===i.items.type&&"uuid"===i.items.format)t=f();else if("object"===i.items.type&&i.items.properties)for(var o=0,a=Object.keys(t);o=n.length-1)){var i=n[e+1];n[e+1]=n[e],n[e]=i,r.setValue(n),r.active_tab=r.rows[e+1].tab,r.refreshTabs(),r.onChange(!0),r.jsoneditor.trigger("moveRow",r.rows[e+1])}})),e&&e.appendChild(n),n}},{key:"_supportDragDrop",value:function(t,e){var r=this;Z(t,(function(t,e){var n=r.getValue(),i=n[t];n.splice(t,1),n.splice(e,0,i),r.setValue(n),r.active_tab=r.rows[e].tab,r.refreshTabs(),r.onChange(!0),r.jsoneditor.trigger("moveRow",r.rows[e])}),{useTrigger:e})}},{key:"addControls",value:function(){this.collapsed=!1,this.toggle_button=this._createToggleButton(),this.options.collapsed&&c(this.toggle_button,"click"),this.schema.options&&void 0!==this.schema.options.disable_collapse?this.schema.options.disable_collapse&&(this.toggle_button.style.display="none"):this.jsoneditor.options.disable_collapse&&(this.toggle_button.style.display="none"),this.add_row_button=this._createAddRowButton(),this.delete_last_row_button=this._createDeleteLastRowButton(),this.remove_all_rows_button=this._createRemoveAllRowsButton(),this.tabs&&(this.add_row_button.classList.add("je-array-control-btn"),this.delete_last_row_button.classList.add("je-array-control-btn"),this.remove_all_rows_button.classList.add("je-array-control-btn"))}},{key:"_createToggleButton",value:function(){var t=this,e=this.getButton("","collapse","button_collapse");e.classList.add("json-editor-btntype-toggle"),this.title.insertBefore(e,this.title.childNodes[0]);var r=this.row_holder.style.display,n=this.controls.style.display;return e.addEventListener("click",(function(e){e.preventDefault(),e.stopPropagation(),t.panel&&t.setButtonState(t.panel,t.collapsed),t.tabs_holder&&t.setButtonState(t.tabs_holder,t.collapsed),t.collapsed?(t.collapsed=!1,t.row_holder.style.display=r,t.controls.style.display=n,t.setButtonText(e.currentTarget,"","collapse","button_collapse")):(t.collapsed=!0,t.row_holder.style.display="none",t.controls.style.display="none",t.setButtonText(e.currentTarget,"","expand","button_expand"))})),e}},{key:"_createAddRowButton",value:function(){var t=this,e=this.getButton(this.getItemTitle(),"add","button_add_row_title",[this.getItemTitle()]);return e.classList.add("json-editor-btntype-add"),e.addEventListener("click",(function(e){e.preventDefault(),e.stopPropagation();var r,n=t.rows.length;t.row_cache[n]?(r=t.rows[n]=t.row_cache[n],t.rows[n].setValue(t.rows[n].getDefault(),!0),"function"==typeof t.rows[n].deactivateNonRequiredProperties&&t.rows[n].deactivateNonRequiredProperties(!0),t.rows[n].container.style.display="",t.rows[n].tab&&(t.rows[n].tab.style.display=""),t.rows[n].register()):r=t.addRow(),t.active_tab=t.rows[n].tab,t.refreshTabs(),t.refreshValue(),t.onChange(!0),t.jsoneditor.trigger("addRow",r)})),this.controls.appendChild(e),e}},{key:"_createDeleteLastRowButton",value:function(){var t=this,e=this.getButton("button_delete_last","subtract","button_delete_last_title",[this.getItemTitle()]);return e.classList.add("json-editor-btntype-deletelast"),e.addEventListener("click",(function(e){if(e.preventDefault(),e.stopPropagation(),!t.askConfirmation())return!1;var r=t.getValue(),n=null,i=r.pop();t.setValue(r),t.rows[t.rows.length-1]&&(n=t.rows[t.rows.length-1].tab),n&&(t.active_tab=n,t.refreshTabs()),t.onChange(!0),t.jsoneditor.trigger("deleteRow",i)})),this.controls.appendChild(e),e}},{key:"_createRemoveAllRowsButton",value:function(){var t=this,e=this.getButton("button_delete_all","delete","button_delete_all_title");return e.classList.add("json-editor-btntype-deleteall"),e.addEventListener("click",(function(e){if(e.preventDefault(),e.stopPropagation(),!t.askConfirmation())return!1;var r=t.getValue();t.empty(!0),t.setValue([]),t.onChange(!0),t.jsoneditor.trigger("deleteAllRows",r)})),this.controls.appendChild(e),e}},{key:"showValidationErrors",value:function(t){var e=this,r=[],n=[];t.forEach((function(t){t.path===e.path?r.push(t):n.push(t)})),this.error_holder&&(r.length?(this.error_holder.innerHTML="",this.error_holder.style.display="",r.forEach((function(t){e.error_holder.appendChild(e.theme.getErrorMessage(t.message))}))):this.error_holder.style.display="none"),this.rows.forEach((function(t){return t.showValidationErrors(n)}))}}],n&&z(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(_);function Z(t,e){(arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).useTrigger?t.addEventListener("mousedown",(function(e){if(e.ctrlKey){t.draggable=!0;var r=function e(r){t.draggable=!1,document.removeEventListener("dragend",e),document.removeEventListener("mouseup",e)};document.addEventListener("dragend",r),document.addEventListener("mouseup",r)}})):t.draggable=!0,t.addEventListener("dragstart",(function(e){window.curDrag=t})),t.addEventListener("dragover",(function(e){null===window.curDrag||window.curDrag===t||window.curDrag.parentElement!==t.parentElement?e.dataTransfer.dropEffect="none":e.dataTransfer.dropEffect="move",e.preventDefault()})),t.addEventListener("drop",(function(r){if(r.preventDefault(),r.stopPropagation(),null!==window.curDrag&&window.curDrag!==t&&window.curDrag.parentElement===t.parentElement){var n=function(t){for(var e=0,r=t.parentElement.firstElementChild;r!==t&&null!==r;)r=r.nextSibling,++e;return e},i=n(window.curDrag),o=n(t);e(i,o,window.curDrag,t),window.curDrag=null}}))}function Y(t){return Y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Y(t)}function Q(t,e){for(var r=0;r1&&t.schema.options&&t.schema.options.multiple&&!0===t.schema.options.multiple&&t.parent&&"object"===t.parent.schema.type&&t.parent.parent&&"array"===t.parent.parent.schema.type){t.arrayEditor=t.jsoneditor.getEditor(t.parent.parent.path),t.value=t.arrayEditor.getValue(),t.total=e.currentTarget.files.length,t.current_item_index=parseInt(t.parent.key),t.count=t.current_item_index;for(var r=0;rType: ".concat(t,", Size: ").concat(Math.floor((this.value.length-this.value.split(",")[0].length-1)/1.33333)," bytes"),"image"===t.substr(0,5)){this.preview.innerHTML+="
";var e=document.createElement("img");e.style.maxWidth="100%",e.style.maxHeight="100px",e.src=this.value,this.preview.appendChild(e)}}else this.preview.innerHTML="Invalid data URI"}}},{key:"enable",value:function(){this.always_disabled||(this.uploader&&(this.uploader.disabled=!1),$t(Jt(e.prototype),"enable",this).call(this))}},{key:"disable",value:function(t){t&&(this.always_disabled=!0),this.uploader&&(this.uploader.disabled=!0),$t(Jt(e.prototype),"disable",this).call(this)}},{key:"setValue",value:function(t){t=this.applyConstFilter(t),this.value!==t&&(this.schema.readOnly&&this.schema.enum&&!this.schema.enum.includes(t)?this.value=this.schema.enum[0]:this.value=t,this.input.value=this.value,this.refreshPreview(),this.onChange())}},{key:"destroy",value:function(){this.preview&&this.preview.parentNode&&this.preview.parentNode.removeChild(this.preview),this.title&&this.title.parentNode&&this.title.parentNode.removeChild(this.title),this.input&&this.input.parentNode&&this.input.parentNode.removeChild(this.input),this.uploader&&this.uploader.parentNode&&this.uploader.parentNode.removeChild(this.uploader),$t(Jt(e.prototype),"destroy",this).call(this)}}])&&Mt(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(_);function Yt(t){return Yt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Yt(t)}function Qt(t,e){for(var r=0;r0?t.disable():t.enable()},e.validated&&this.jsoneditor.on("change",this.changeHandler)}},{key:"enable",value:function(){this.always_disabled||(this.input.disabled=!1,ee(re(e.prototype),"enable",this).call(this))}},{key:"disable",value:function(t){t&&(this.always_disabled=!0),this.input.disabled=!0,ee(re(e.prototype),"disable",this).call(this)}},{key:"getNumColumns",value:function(){return 2}},{key:"activate",value:function(){this.active=!1,this.enable()}},{key:"deactivate",value:function(){this.isRequired()||(this.active=!1,this.disable())}},{key:"destroy",value:function(){this.jsoneditor.off("change",this.changeHandler),this.changeHandler=null,ee(re(e.prototype),"destroy",this).call(this)}}])&&Qt(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(_);function oe(t){return oe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},oe(t)}function ae(t,e){for(var r=0;r0&&this.enum_values.includes(r),i=!!this.jsoneditor.options.use_default_values||void 0!==this.schema.default;if(this.hasPlaceholderOption||n&&(!e||this.isRequired()||i)||(r=this.enum_values[0]),this.value!==r){var o=this.enum_values.indexOf(r);n&&-1!==o?this.input.value=this.enum_options[o]:this.hasPlaceholderOption?this.input.value="_placeholder_":this.input.value=r,this.value=r,e||(this.is_dirty=!0),this.onChange(),this.change()}}},{key:"register",value:function(){ge(we(e.prototype),"register",this).call(this),this.input&&this.jsoneditor.options.use_name_attributes&&this.input.setAttribute("name",this.formname)}},{key:"unregister",value:function(){ge(we(e.prototype),"unregister",this).call(this),this.input&&this.input.removeAttribute("name")}},{key:"getNumColumns",value:function(){if(!this.enum_options)return 3;for(var t=this.getTitle().length,e=0;e *":"box-sizing:border-box"};var He=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),Be(this,e,arguments)}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Ve(t,e)}(e,t),r=e,(n=[{key:"build",value:function(){if(De(Fe(e.prototype),"build",this).call(this),this.input&&(this.schema.max&&"string"==typeof this.schema.max&&this.input.setAttribute("max",this.schema.max),this.schema.min&&"string"==typeof this.schema.max&&this.input.setAttribute("min",this.schema.min),window.flatpickr&&"object"===Ae(this.options.flatpickr))){this.options.flatpickr.enableTime="date"!==this.schema.format,this.options.flatpickr.noCalendar="time"===this.schema.format,"integer"===this.schema.type&&(this.options.flatpickr.mode="single"),this.input.setAttribute("data-input","");var t=this.input;if(!0===this.options.flatpickr.wrap){var r=[];if(!1!==this.options.flatpickr.showToggleButton){var n=this.getButton("","time"===this.schema.format?"time":"calendar","flatpickr_toggle_button");n.setAttribute("data-toggle",""),r.push(n)}if(!1!==this.options.flatpickr.showClearButton){var i=this.getButton("","clear","flatpickr_clear_button");i.setAttribute("data-clear",""),r.push(i)}var o=this.input.parentNode,a=this.input.nextSibling,s=this.theme.getInputGroup(this.input,r);void 0!==s?(this.options.flatpickr.inline=!1,o.insertBefore(s,a),t=s):this.options.flatpickr.wrap=!1}this.flatpickr=window.flatpickr(t,this.options.flatpickr),!0===this.options.flatpickr.inline&&!0===this.options.flatpickr.inlineHideInput&&this.input.setAttribute("type","hidden")}}},{key:"getValue",value:function(){if(this.dependenciesFulfilled){if("string"===this.schema.type)return this.value;if(""!==this.value&&void 0!==this.value){var t="time"===this.schema.format?"1970-01-01 ".concat(this.value):this.value;return parseInt(new Date(t).getTime()/1e3)}}}},{key:"setValue",value:function(t,r,n){if(t=this.applyConstFilter(t),"string"===this.schema.type)De(Fe(e.prototype),"setValue",this).call(this,t,r,n),this.flatpickr&&this.flatpickr.setDate(t);else if(t>0){var i=new Date(1e3*t),o=i.getFullYear(),a=this.zeroPad(i.getMonth()+1),s=this.zeroPad(i.getDate()),l=this.zeroPad(i.getHours()),c=this.zeroPad(i.getMinutes()),u=this.zeroPad(i.getSeconds()),h=[o,a,s].join("-"),p=[l,c,u].join(":"),d="".concat(h,"T").concat(p);"date"===this.schema.format?d=h:"time"===this.schema.format&&(d=p),this.input.value=d,this.refreshValue(),this.flatpickr&&this.flatpickr.setDate(d)}}},{key:"destroy",value:function(){this.flatpickr&&this.flatpickr.destroy(),this.flatpickr=null,De(Fe(e.prototype),"destroy",this).call(this)}},{key:"zeroPad",value:function(t){return"0".concat(t).slice(-2)}}])&&Re(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(L);function ze(t){return ze="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ze(t)}function Me(t,e){for(var r=0;rt.length)&&(e=t.length);for(var r=0,n=new Array(e);rnull";if("object"===Ye(t)){var i="";return e=t,r=function(e,r){var o=n.getHTML(r);Array.isArray(t)||(o="
".concat(e,": ").concat(o,"
")),i+="
  • ".concat(o,"
  • ")},Array.isArray(e)||"number"==typeof e.length&&e.length>0&&e.length-1 in e?Array.from(e).forEach((function(t,e){return r(e,t)})):Object.entries(e).forEach((function(t){var e,n,i=(n=2,function(t){if(Array.isArray(t))return t}(e=t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,i,o,a,s=[],l=!0,c=!1;try{if(o=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.call(r)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(t){c=!0,i=t}finally{try{if(!l&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw i}}return s}}(e,n)||function(t,e){if(t){if("string"==typeof t)return Qe(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Qe(t,e):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),o=i[0],a=i[1];return r(o,a)})),i=Array.isArray(t)?"
      ".concat(i,"
    "):"
      ".concat(i,"
    ")}return"boolean"==typeof t?t?"true":"false":"string"==typeof t?t.replace(/&/g,"&").replace(//g,">"):t}},{key:"setValue",value:function(t){t=this.applyConstFilter(t),this.value!==t&&(this.value=t,this.refreshValue(),this.onChange())}},{key:"destroy",value:function(){this.display_area&&this.display_area.parentNode&&this.display_area.parentNode.removeChild(this.display_area),this.title&&this.title.parentNode&&this.title.parentNode.removeChild(this.title),this.switcher&&this.switcher.parentNode&&this.switcher.parentNode.removeChild(this.switcher),rr(nr(e.prototype),"destroy",this).call(this)}}])&&Ke(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(_);function ar(t){return ar="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ar(t)}function sr(t,e){for(var r=0;r255)throw new Error("error_ipv4")}))}(e);break;case"ipv6":!function(t){if(!t.match("^(?:(?:(?:[a-fA-F0-9]{1,4}:){6}|(?=(?:[a-fA-F0-9]{0,4}:){2,6}(?:[0-9]{1,3}.){3}[0-9]{1,3}$)(([0-9a-fA-F]{1,4}:){1,5}|:)((:[0-9a-fA-F]{1,4}){1,5}:|:)|::(?:[a-fA-F0-9]{1,4}:){5})(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9]).){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])|(?:[a-fA-F0-9]{1,4}:){7}[a-fA-F0-9]{1,4}|(?=(?:[a-fA-F0-9]{0,4}:){0,7}[a-fA-F0-9]{0,4}$)(([0-9a-fA-F]{1,4}:){1,7}|:)((:[0-9a-fA-F]{1,4}){1,7}|:)|(?:[a-fA-F0-9]{1,4}:){7}:|:(:[a-fA-F0-9]{1,4}){7})$"))throw new Error("error_ipv6")}(e);break;case"hostname":!function(t){if(!t.match("(?=^.{4,253}$)(^((?!-)[a-zA-Z0-9-]{0,62}[a-zA-Z0-9].)+[a-zA-Z]{2,63}$)"))throw new Error("error_hostname")}(e)}return[]}catch(t){return[{path:r,property:"format",message:n(t.message)}]}}function an(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function sn(t,e,r){return(e=fn(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function ln(t){return ln="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ln(t)}function cn(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,i,o,a,s=[],l=!0,c=!1;try{if(o=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.call(r)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(t){c=!0,i=t}finally{try{if(!l&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw i}}return s}}(t,e)||hn(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function un(t){return function(t){if(Array.isArray(t))return pn(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||hn(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function hn(t,e){if(t){if("string"==typeof t)return pn(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?pn(t,e):void 0}}function pn(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r0&&n.push({message:"Must have the required properties: "+i.join(", "),path:r})}return n},dependentSchemas:function(t,e,r){var n=this,i=[];return Object.keys(t.dependentSchemas).forEach((function(o){if(void 0!==e[o]){var a=t.dependentSchemas[o],s=n._validateSchema(a,e,r);i=[].concat(un(i),un(s))}})),i},contains:function(t,e,r){var n=this,i=[],o=0;e.forEach((function(e){0===n._validateSchema(t.contains,e,r).length&&o++}));var a=0===o;return void 0!==t.minContains?ot.maxContains&&i.push({message:this.translate("error_maxContains",[o,t.maxContains],t),path:r}),i},if:function(t,e,r){if(void 0===t.then&&void 0===t.else)return[];var n=this._validateSchema(t.if,e,r),i=[],o=[];return void 0!==t.then&&(i=this._validateSchema(t.then,e,r)),void 0!==t.else&&(o=this._validateSchema(t.else,e,r)),!0===t.if?i:!1===t.if?o:0===n.length?i:n.length>0?o:[]},const:function(t,e,r){return JSON.stringify(t.const)===JSON.stringify(e)?[]:[{path:r,property:"const",message:this.translate("error_const",null,t)}]},enum:function(t,e,r){var n=JSON.stringify(e);return t.enum.some((function(t){return n===JSON.stringify(t)}))?[]:[{path:r,property:"enum",message:this.translate("error_enum",null,t)}]},extends:function(t,e,r){var n=this;return t.extends.reduce((function(t,i){return t.push.apply(t,un(n._validateSchema(i,e,r))),t}),[])},allOf:function(t,e,r){var n=this;return t.allOf.reduce((function(t,i){return t.push.apply(t,un(n._validateSchema(i,e,r))),t}),[])},anyOf:function(t,e,r){var n=this;return t.anyOf.some((function(t){return!n._validateSchema(t,e,r).length}))?[]:[{path:r,property:"anyOf",message:this.translate("error_anyOf",null,t)}]},oneOf:function(t,e,r){var n=this,i=0,o=[];t.oneOf.forEach((function(t,a){var s=n._validateSchema(t,e,r);s.length||i++,s.forEach((function(t){t.path="".concat(r,".oneOf[").concat(a,"]").concat(t.path.substr(r.length))})),o.push.apply(o,un(s))}));var a=[];return 1!==i&&(a.push({path:r,property:"oneOf",message:this.translate("error_oneOf",[i],t)}),a.push.apply(a,o)),a},not:function(t,e,r){return this._validateSchema(t.not,e,r).length?[]:[{path:r,property:"not",message:this.translate("error_not",null,t)}]},type:function(t,e,r){var n=this;if(Array.isArray(t.type)){if(!t.type.some((function(t){return n._checkType(t,e)})))return[{path:r,property:"type",message:this.translate("error_type_union",null,t)}]}else if(["date","time","datetime-local"].includes(t.format)&&"integer"===t.type){if(!this._checkType("string","".concat(e)))return[{path:r,property:"type",message:this.translate("error_type",[t.format],t)}]}else if(!this._checkType(t.type,e))return[{path:r,property:"type",message:this.translate("error_type",[t.type],t)}];return[]},disallow:function(t,e,r){var n=this;if(Array.isArray(t.disallow)){if(t.disallow.some((function(t){return n._checkType(t,e)})))return[{path:r,property:"disallow",message:this.translate("error_disallow_union",null,t)}]}else if(this._checkType(t.disallow,e))return[{path:r,property:"disallow",message:this.translate("error_disallow",[t.disallow],t)}];return[]}},this._validateNumberSubSchema={multipleOf:function(t,e,r){return this._validateNumberSubSchemaMultipleDivisible(t,e,r)},divisibleBy:function(t,e,r){return this._validateNumberSubSchemaMultipleDivisible(t,e,r)},maximum:function(t,e,r){var n=t.exclusiveMaximum?et.minimum:e>=t.minimum;return window.math?n=window.math[t.exclusiveMinimum?"larger":"largerEq"](window.math.bignumber(e),window.math.bignumber(t.minimum)):window.Decimal&&(n=new window.Decimal(e)[t.exclusiveMinimum?"gt":"gte"](new window.Decimal(t.minimum))),n?[]:[{path:r,property:"minimum",message:this.translate(t.exclusiveMinimum?"error_minimum_excl":"error_minimum_incl",[t.minimum],t)}]}},this._validateStringSubSchema={maxLength:function(t,e,r){var n=[];return"".concat(e).length>t.maxLength&&n.push({path:r,property:"maxLength",message:this.translate("error_maxLength",[t.maxLength],t)}),n},minLength:function(t,e,r){return"".concat(e).lengtht.maxItems?[{path:r,property:"maxItems",message:this.translate("error_maxItems",[t.maxItems],t)}]:[]},minItems:function(t,e,r){return e.lengtht.maxProperties?[{path:r,property:"maxProperties",message:this.translate("error_maxProperties",[t.maxProperties],t)}]:[]},minProperties:function(t,e,r){return Object.keys(e).lengthc){e="error_property_names_exceeds_maxlength";break}return!0;case"const":if(c!==l){e="error_property_names_const_mismatch";break}return!0;case"enum":if(!Array.isArray(c)){e="error_property_names_enum";break}if(c.forEach((function(t){t===l&&(u=!0)})),!u){e="error_property_names_enum_mismatch";break}return!0;case"pattern":if("string"!=typeof c){e="error_property_names_pattern";break}if(!new RegExp(c).test(l)){e="error_property_names_pattern_mismatch";break}return!0;default:return a.push({path:r,property:"propertyNames",message:o.translate("error_property_names_unsupported",[s],t)}),!1}return a.push({path:r,property:"propertyNames",message:o.translate(e,[l],t)}),!1}))?void 0:1},u=0;u2&&void 0!==arguments[2]?arguments[2]:1e7,n={match:0,extra:0};if("object"===ln(t)&&null!==t){var i=this._getSchema(e);if(i.anyOf){var o,a=function(t){for(var e=1;e=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){s=!0,o=t},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw o}}}}(i.anyOf);try{for(s.s();!(o=s.n()).done;){var l=o.value,c=this.fitTest(t,l,r);(c.match>a.match||c.match===a.match&&c.extraa.extra)&&((i=a).i=n)),e.validate(t).length||null!==o.i?i=o:(o.i=n,null!==a&&(o.match=a.match))}));var a=o.i;void 0!==this.anyOf&&this.anyOf&&o.matcht.length)&&(e=t.length);for(var r=0,n=new Array(e);ro)&&(n=s);!1===n&&(a.push({width:0,minh:999999,maxh:0,editors:[]}),n=a.length-1),a[n].editors.push({key:t,width:i,height:o}),a[n].width+=i,a[n].minh=Math.min(a[n].minh,o),a[n].maxh=Math.max(a[n].maxh,o)}})),t=0;ta[t].editors[h].width)&&(h=e),a[t].editors[e].width*=12/a[t].width,a[t].editors[e].width=Math.floor(a[t].editors[e].width),p+=a[t].editors[e].width;p<12&&(a[t].editors[h].width+=12-p),a[t].width=12}if(this.layout===JSON.stringify(a))return!1;for(this.layout=JSON.stringify(a),n=document.createElement("div"),t=0;t0?y.firstChild.isObjOrArray&&(n.appendChild(d),y.insertBefore(n,y.firstChild),r.theme.insertBasicTopTab(e.tab,f),e.basicPane=n):(n.appendChild(d),y.appendChild(n),r.theme.addTopTab(f,e.tab),e.basicPane=n)),e.options.hidden?e.container.style.display="none":r.theme.setGridColumnSize(e.container,12),o.appendChild(e.container),e.rowPane=n}}));this.tabPanesContainer.firstChild;)this.tabPanesContainer.removeChild(this.tabPanesContainer.firstChild);var m=this.tabs_holder.parentNode;m.removeChild(m.firstChild),m.appendChild(f),this.tabPanesContainer=y,this.tabs_holder=f;var v=this.theme.getFirstTab(this.tabs_holder);return void(v&&c(v,"click"))}this.property_order.forEach((function(t){var e=r.editors[t];e.property_removed||(i=r.theme.getGridRow(),n.appendChild(i),e.options.hidden?e.container.style.display="none":r.theme.setGridColumnSize(e.container,12),i.appendChild(e.container))}))}for(;this.row_container.firstChild;)this.row_container.removeChild(this.row_container.firstChild);this.row_container.appendChild(n)}}},{key:"getPropertySchema",value:function(t){var e=this,r=this.schema.properties[t]||{};r=l({},r);var n=!!this.schema.properties[t];return this.schema.patternProperties&&Object.keys(this.schema.patternProperties).forEach((function(i){new RegExp(i).test(t)&&(r.allOf=r.allOf||[],r.allOf.push(e.schema.patternProperties[i]),n=!0)})),!n&&this.schema.additionalProperties&&"object"===Fn(this.schema.additionalProperties)&&(r=l({},this.schema.additionalProperties)),r}},{key:"preBuild",value:function(){var t=this;if(qn(Un(e.prototype),"preBuild",this).call(this),this.editors={},this.cached_editors={},this.format=this.options.layout||this.options.object_layout||this.schema.format||this.jsoneditor.options.object_layout||"normal",this.schema.properties=this.schema.properties||{},this.minwidth=0,this.maxwidth=0,this.options.table_row)Object.entries(this.schema.properties).forEach((function(e){var r=Nn(e,2),n=r[0],i=r[1],o=t.jsoneditor.getEditorClass(i);t.editors[n]=t.jsoneditor.createEditor(o,{jsoneditor:t.jsoneditor,schema:i,path:"".concat(t.path,".").concat(n),parent:t,compact:!0,required:!0},t.currentDepth+1),t.editors[n].preBuild();var a=t.editors[n].options.hidden?0:t.editors[n].options.grid_columns||t.editors[n].getNumColumns();t.minwidth+=a,t.maxwidth+=a})),this.no_link_holder=!0;else{if(this.options.table)throw new Error("Not supported yet");this.schema.defaultProperties||(this.jsoneditor.options.display_required_only||this.options.display_required_only?this.schema.defaultProperties=Object.keys(this.schema.properties).filter((function(e){return t.isRequiredObject({key:e,schema:t.schema.properties[e]})})):this.schema.defaultProperties=Object.keys(this.schema.properties)),this.maxwidth+=1,Array.isArray(this.schema.defaultProperties)&&this.schema.defaultProperties.forEach((function(e){t.addObjectProperty(e,!0),t.editors[e]&&(t.minwidth=Math.max(t.minwidth,t.editors[e].options.grid_columns||t.editors[e].getNumColumns()),t.maxwidth+=t.editors[e].options.grid_columns||t.editors[e].getNumColumns())}))}this.property_order=Object.keys(this.editors),this.property_order=this.property_order.sort((function(e,r){var n=t.editors[e].schema.propertyOrder,i=t.editors[r].schema.propertyOrder;return"number"!=typeof n&&(n=1e3),"number"!=typeof i&&(i=1e3),n-i}))}},{key:"addTab",value:function(t){var e=this,r=this.rows[t].schema&&("object"===this.rows[t].schema.type||"array"===this.rows[t].schema.type);this.tabs_holder&&(this.rows[t].tab_text=document.createElement("span"),this.rows[t].tab_text.textContent=r?this.rows[t].getHeaderText():void 0===this.schema.basicCategoryTitle?"Basic":this.schema.basicCategoryTitle,this.rows[t].tab=this.theme.getTopTab(this.rows[t].tab_text,this.getValidId(this.rows[t].tab_text.textContent)),this.rows[t].tab.addEventListener("click",(function(r){e.active_tab=e.rows[t].tab,e.refreshTabs(),r.preventDefault(),r.stopPropagation()})))}},{key:"addRow",value:function(t,e,r){var n=this.rows.length,i="object"===t.schema.type||"array"===t.schema.type;this.rows[n]=t,this.rows[n].rowPane=r,i?(this.addTab(n),this.theme.addTopTab(e,this.rows[n].tab)):void 0===this.basicTab?(this.addTab(n),this.basicTab=n,this.basicPane=r,this.theme.addTopTab(e,this.rows[n].tab)):(this.rows[n].tab=this.rows[this.basicTab].tab,this.rows[n].tab_text=this.rows[this.basicTab].tab_text,this.rows[n].rowPane=this.rows[this.basicTab].rowPane)}},{key:"refreshTabs",value:function(t){var e=this,r=void 0!==this.basicTab,n=!1;this.rows.forEach((function(i){i.tab&&i.rowPane&&i.rowPane.parentNode&&(r&&i.tab===e.rows[e.basicTab].tab&&n||(t?i.tab_text.textContent=i.getHeaderText():(r&&i.tab===e.rows[e.basicTab].tab&&(n=!0),i.tab===e.active_tab?e.theme.markTabActive(i):e.theme.markTabInactive(i))))}))}},{key:"build",value:function(){var t=this,e="categories"===this.format;if(this.rows=[],this.active_tab=null,this.options.table_row)this.editor_holder=this.container,Object.entries(this.editors).forEach((function(e){var r=Nn(e,2),n=r[0],i=r[1],o=t.theme.getTableCell();t.editor_holder.appendChild(o),i.setContainer(o),i.build(),i.postBuild(),i.setOptInCheckbox(i.header),i.setValue(i.getDefault(),!0),t.editors[n].options.hidden&&(o.style.display="none"),t.editors[n].options.input_width&&(o.style.width=t.editors[n].options.input_width)}));else{if(this.options.table)throw new Error("Not supported yet");this.header="",this.options.compact||(this.header=document.createElement("span"),this.header.textContent=this.getTitle()),this.title=this.theme.getHeader(this.header,this.getPathDepth()),this.title.classList.add("je-object__title"),this.controls=this.theme.getButtonHolder(),this.controls.classList.add("je-object__controls"),this.container.appendChild(this.title),this.container.appendChild(this.controls),this.container.classList.add("je-object__container"),this.editjson_holder=this.theme.getModal(),this.editjson_textarea_label=this.theme.getHiddenLabel(this.translate("button_edit_json")),this.editjson_textarea_label.setAttribute("for",this.path+"-edit-json-textarea"),this.editjson_textarea=this.theme.getTextareaInput(),this.editjson_textarea.setAttribute("id",this.path+"-edit-json-textarea"),this.editjson_textarea.setAttribute("aria-labelledby",this.path+"-edit-json-textarea"),this.editjson_textarea.classList.add("je-edit-json--textarea"),this.editjson_save=this.getButton("button_save","save","button_save"),this.editjson_save.classList.add("json-editor-btntype-save"),this.editjson_save.addEventListener("click",(function(e){e.preventDefault(),e.stopPropagation(),t.saveJSON()})),this.editjson_copy=this.getButton("button_copy","copy","button_copy"),this.editjson_copy.classList.add("json-editor-btntype-copy"),this.editjson_copy.addEventListener("click",(function(e){e.preventDefault(),e.stopPropagation(),t.copyJSON()})),this.editjson_cancel=this.getButton("button_cancel","cancel","button_cancel"),this.editjson_cancel.classList.add("json-editor-btntype-cancel"),this.editjson_cancel.addEventListener("click",(function(e){e.preventDefault(),e.stopPropagation(),t.hideEditJSON()})),this.editjson_holder.appendChild(this.editjson_textarea_label),this.editjson_holder.appendChild(this.editjson_textarea),this.editjson_holder.appendChild(this.editjson_save),this.editjson_holder.appendChild(this.editjson_copy),this.editjson_holder.appendChild(this.editjson_cancel),this.addproperty_holder=this.theme.getModal(),this.addproperty_list=document.createElement("div"),this.addproperty_list.classList.add("property-selector"),this.addproperty_add=this.getButton("button_add","add","button_add"),this.addproperty_add.classList.add("json-editor-btntype-add"),this.addproperty_input=this.theme.getFormInputField("text"),this.addproperty_input.setAttribute("placeholder","Property name..."),this.addproperty_input_label=this.theme.getHiddenLabel(this.translate("button_properties")),this.addproperty_input_label.setAttribute("for",this.path+"-property-selector"),this.addproperty_input.classList.add("property-selector-input"),this.addproperty_input.setAttribute("id",this.path+"-property-selector"),this.addproperty_input.setAttribute("aria-labelledby",this.path+"-property-selector"),this.addproperty_add.addEventListener("click",(function(e){if(e.preventDefault(),e.stopPropagation(),t.addproperty_input.value){if(t.editors[t.addproperty_input.value])return void window.alert("there is already a property with that name");t.addObjectProperty(t.addproperty_input.value),t.editors[t.addproperty_input.value]&&t.editors[t.addproperty_input.value].disable();var r=t.editors[t.addproperty_input.value].key,n=t.editors[t.addproperty_input.value].type,i=t.editors[t.addproperty_input.value].path;t.onChange(!0,!1,{event:"add",data:{key:r,type:n,path:i}})}})),this.addproperty_input.addEventListener("input",(function(e){e.target.previousSibling.previousSibling.childNodes.forEach((function(r){var n=r.innerText,i=e.target.value;t.options.case_sensitive_property_search||t.jsoneditor.options.case_sensitive_property_search||(n=n.toLowerCase(),i=i.toLowerCase()),n.includes(i)?r.style.display="":r.style.display="none"}))})),this.addproperty_holder.appendChild(this.addproperty_list),this.addproperty_holder.appendChild(this.addproperty_input_label),this.addproperty_holder.appendChild(this.addproperty_input),this.addproperty_holder.appendChild(this.addproperty_add);var r=document.createElement("div");r.style.clear="both",this.addproperty_holder.appendChild(r),this.onOutsideModalClickListener=this.onOutsideModalClick.bind(this),document.addEventListener("click",this.onOutsideModalClickListener,!0),this.schema.description&&(this.description=this.theme.getDescription(this.translateProperty(this.schema.description)),this.container.appendChild(this.description)),this.error_holder=document.createElement("div"),this.container.appendChild(this.error_holder),this.editor_holder=this.theme.getIndentedPanel(),this.container.appendChild(this.editor_holder),this.row_container=this.theme.getGridContainer(),e?(this.tabs_holder=this.theme.getTopTabHolder(this.getValidId(this.translateProperty(this.schema.title))),this.tabPanesContainer=this.theme.getTopTabContentHolder(this.tabs_holder),this.editor_holder.appendChild(this.tabs_holder)):(this.tabs_holder=this.theme.getTabHolder(this.getValidId(this.translateProperty(this.schema.title))),this.tabPanesContainer=this.theme.getTabContentHolder(this.tabs_holder),this.editor_holder.appendChild(this.row_container)),Object.values(this.editors).forEach((function(r){var n=t.theme.getTabContent(),i=t.theme.getGridColumn(),o=!(!r.schema||"object"!==r.schema.type&&"array"!==r.schema.type);if(n.isObjOrArray=o,e){if(o){var a=t.theme.getGridContainer();a.appendChild(i),n.appendChild(a),t.tabPanesContainer.appendChild(n),t.row_container=a}else void 0===t.row_container_basic&&(t.row_container_basic=t.theme.getGridContainer(),n.appendChild(t.row_container_basic),0===t.tabPanesContainer.childElementCount?t.tabPanesContainer.appendChild(n):t.tabPanesContainer.insertBefore(n,t.tabPanesContainer.childNodes[1])),t.row_container_basic.appendChild(i);t.addRow(r,t.tabs_holder,n),n.id=t.getValidId(r.schema.title)}else t.row_container.appendChild(i);r.setContainer(i),r.build(),r.postBuild(),r.setOptInCheckbox(r.header)})),this.rows[0]&&c(this.rows[0].tab,"click"),this.collapsed=!1,this.collapse_control=this.getButton("","collapse","button_collapse"),this.collapse_control.classList.add("json-editor-btntype-toggle"),this.title.insertBefore(this.collapse_control,this.title.childNodes[0]),this.collapse_control.addEventListener("click",(function(e){e.preventDefault(),e.stopPropagation(),t.collapsed?(t.editor_holder.style.display="",t.collapsed=!1,t.setButtonText(t.collapse_control,"","collapse","button_collapse")):(t.editor_holder.style.display="none",t.collapsed=!0,t.setButtonText(t.collapse_control,"","expand","button_expand"))})),this.options.collapsed&&c(this.collapse_control,"click"),this.schema.options&&void 0!==this.schema.options.disable_collapse?this.schema.options.disable_collapse&&(this.collapse_control.style.display="none"):this.jsoneditor.options.disable_collapse&&(this.collapse_control.style.display="none"),this.editjson_control=this.getButton("JSON","edit","button_edit_json"),this.editjson_control.classList.add("json-editor-btntype-editjson"),this.editjson_control.addEventListener("click",(function(e){e.preventDefault(),e.stopPropagation(),t.toggleEditJSON()})),this.controls.appendChild(this.editjson_control),this.controls.insertBefore(this.editjson_holder,this.controls.childNodes[0]),this.schema.options&&void 0!==this.schema.options.disable_edit_json?this.schema.options.disable_edit_json&&(this.editjson_control.style.display="none"):this.jsoneditor.options.disable_edit_json&&(this.editjson_control.style.display="none"),this.addproperty_button=this.getButton("properties","edit_properties","button_object_properties"),this.addproperty_button.classList.add("json-editor-btntype-properties"),this.addproperty_button.addEventListener("click",(function(e){e.preventDefault(),e.stopPropagation(),t.toggleAddProperty()})),this.controls.appendChild(this.addproperty_button),this.controls.insertBefore(this.addproperty_holder,this.controls.childNodes[1]),this.refreshAddProperties(),this.deactivateNonRequiredProperties(!1)}this.options.table_row?(this.editor_holder=this.container,this.property_order.forEach((function(e){t.editor_holder.appendChild(t.editors[e].container)}))):(this.layoutEditors(),this.layoutEditors()),(this.schema.readOnly||this.schema.readonly)&&this.disable()}},{key:"deactivateNonRequiredProperties",value:function(t){var e=this,r=this.jsoneditor.options.show_opt_in,n=void 0!==this.options.show_opt_in,i=n&&!0===this.options.show_opt_in,o=n&&!1===this.options.show_opt_in;(i||!o&&r||!n&&r)&&Object.entries(this.editors).forEach((function(r){var n=Nn(r,2),i=n[0],o=n[1];e.isRequiredObject(o)||e.editors[i].deactivate(),t&&"function"==typeof e.editors[i].deactivateNonRequiredProperties&&e.editors[i].deactivateNonRequiredProperties(t)}))}},{key:"showEditJSON",value:function(){this.editjson_holder&&(this.hideAddProperty(),this.editjson_holder.style.left="".concat(this.editjson_control.offsetLeft,"px"),this.editjson_holder.style.top="".concat(this.editjson_control.offsetTop+this.editjson_control.offsetHeight,"px"),this.editjson_textarea.value=JSON.stringify(this.getValue(),null,2),this.disable(),this.editjson_holder.style.display="",this.editjson_control.disabled=!1,this.editing_json=!0)}},{key:"hideEditJSON",value:function(){this.editjson_holder&&this.editing_json&&(this.editjson_holder.style.display="none",this.enable(),this.editing_json=!1)}},{key:"copyJSON",value:function(){this.editjson_holder&&navigator.clipboard.writeText(this.editjson_textarea.value).catch((function(t){return window.alert(t)}))}},{key:"saveJSON",value:function(){if(this.editjson_holder)try{var t=JSON.parse(this.editjson_textarea.value);this.setValue(t),this.hideEditJSON(),this.onChange(!0)}catch(t){throw window.alert("invalid JSON"),t}}},{key:"toggleEditJSON",value:function(){this.editing_json?this.hideEditJSON():this.showEditJSON()}},{key:"insertPropertyControlUsingPropertyOrder",value:function(t,e,r){var n;this.schema.properties[t]&&(n=this.schema.properties[t].propertyOrder),"number"!=typeof n&&(n=1e3),e.propertyOrder=n;for(var i=0;i=i?this.getSchemaOnMaxDepth(r):r,path:"".concat(this.path,".").concat(t),parent:this},this.currentDepth+1),this.editors[t].preBuild(),!e){var o=this.theme.getChildEditorHolder();this.editor_holder.appendChild(o),this.editors[t].setContainer(o),this.editors[t].build(),this.editors[t].postBuild(),this.editors[t].setOptInCheckbox(n.header),this.editors[t].activate()}this.cached_editors[t]=this.editors[t]}e||(this.refreshValue(),this.layoutEditors())}}},{key:"onOutsideModalClick",value:function(t){var e=t.path||t.composedPath&&t.composedPath();this.addproperty_holder&&!this.addproperty_holder.contains(e[0])&&this.adding_property&&(t.preventDefault(),t.stopPropagation(),this.toggleAddProperty())}},{key:"onChildEditorChange",value:function(t,r){this.refreshValue(),qn(Un(e.prototype),"onChildEditorChange",this).call(this,t,r)}},{key:"canHaveAdditionalProperties",value:function(){return"boolean"==typeof this.schema.additionalProperties?this.schema.additionalProperties:"object"===Fn(this.schema.additionalProperties)&&null!==this.schema.additionalProperties||("boolean"==typeof this.options.no_additional_properties?!this.options.no_additional_properties:"boolean"!=typeof this.jsoneditor.options.no_additional_properties||!this.jsoneditor.options.no_additional_properties)}},{key:"destroy",value:function(){Object.values(this.cached_editors).forEach((function(t){return t.destroy()})),this.editor_holder&&(this.editor_holder.innerHTML=""),this.title&&this.title.parentNode&&this.title.parentNode.removeChild(this.title),this.error_holder&&this.error_holder.parentNode&&this.error_holder.parentNode.removeChild(this.error_holder),this.editors=null,this.cached_editors=null,this.editor_holder&&this.editor_holder.parentNode&&this.editor_holder.parentNode.removeChild(this.editor_holder),this.editor_holder=null,document.removeEventListener("click",this.onOutsideModalClickListener,!0),qn(Un(e.prototype),"destroy",this).call(this)}},{key:"getValue",value:function(){if(this.dependenciesFulfilled){var t=qn(Un(e.prototype),"getValue",this).call(this);return t&&(this.jsoneditor.options.remove_empty_properties||this.options.remove_empty_properties)&&Object.keys(t).forEach((function(e){var r;(void 0===(r=t[e])||""===r||r===Object(r)&&0===Object.keys(r).length&&r.constructor===Object)&&delete t[e]})),t&&(this.jsoneditor.options.remove_false_properties||this.options.remove_false_properties)&&Object.keys(t).forEach((function(e){!1===t[e]&&delete t[e]})),t}}},{key:"refreshValue",value:function(){var t=this;this.value={},this.editors&&(Object.keys(this.editors).forEach((function(e){t.editors[e].isActive()&&(t.editors[e].refreshValue(),t.value[e]=t.editors[e].getValue())})),Object.keys(this.editors).forEach((function(e){t.editors[e].isActive()&&t.activateDependentRequired(t.editors[e].key)})),this.adding_property&&this.refreshAddProperties())}},{key:"activateDependentRequired",value:function(t){var e=this;this.getDependentRequired(t).forEach((function(t){var r;Object.entries(e.cached_editors).forEach((function(e){var n=Nn(e,2),i=(n[0],n[1]);i.key===t&&(r=i)})),r&&!r.isActive()&&r.activate()}))}},{key:"getDependentRequired",value:function(t){return this.schema.dependentRequired&&h(this.schema.dependentRequired,t)?this.schema.dependentRequired[t]:[]}},{key:"refreshAddProperties",value:function(){var t=this;if(this.options.disable_properties||!1!==this.options.disable_properties&&this.jsoneditor.options.disable_properties)this.addproperty_button.style.display="none";else{var e,r=0,n=!1;Object.keys(this.editors).forEach((function(t){return r++})),e=this.canHaveAdditionalProperties()&&!(void 0!==this.schema.maxProperties&&r>=this.schema.maxProperties),this.addproperty_checkboxes&&(this.addproperty_list.innerHTML=""),this.addproperty_checkboxes={},Object.keys(this.cached_editors).forEach((function(i){t.addPropertyCheckbox(i),t.isRequiredObject(t.cached_editors[i])&&i in t.editors&&(t.addproperty_checkboxes[i].disabled=!0),void 0!==t.schema.minProperties&&r<=t.schema.minProperties?(t.addproperty_checkboxes[i].disabled=t.addproperty_checkboxes[i].checked,t.addproperty_checkboxes[i].checked||(n=!0)):i in t.editors?n=!0:e||h(t.schema.properties,i)?(t.addproperty_checkboxes[i].disabled=!1,n=!0):t.addproperty_checkboxes[i].disabled=!0})),this.canHaveAdditionalProperties()&&(n=!0),Object.keys(this.schema.properties).forEach((function(e){t.cached_editors[e]||(n=!0,t.addPropertyCheckbox(e))})),n?this.canHaveAdditionalProperties()?this.addproperty_add.disabled=!e:(this.addproperty_add.style.display="none",this.addproperty_input.style.display="none"):(this.hideAddProperty(),this.addproperty_button.style.display="none")}}},{key:"isRequiredObject",value:function(t){if(t)return"boolean"==typeof t.schema.required?t.schema.required:Array.isArray(this.schema.required)?this.schema.required.includes(t.key):!!this.jsoneditor.options.required_by_default}},{key:"setValue",value:function(t,e){var r=this;("object"!==Fn(t=(t=this.applyConstFilter(t))||{})||Array.isArray(t))&&(t={}),Object.entries(this.cached_editors).forEach((function(n){var i=Nn(n,2),o=i[0],a=i[1];void 0!==t[o]?(r.addObjectProperty(o),a.setValue(t[o],e),a.activate(),r.disabled&&a.disable()):e||r.isRequiredObject(a)?a.setValue(a.getDefault(),e):r.jsoneditor.options.show_opt_in||r.options.show_opt_in?a.deactivate():r.removeObjectProperty(o)})),Object.entries(t).forEach((function(t){var n=Nn(t,2),i=n[0],o=n[1];r.cached_editors[i]||(r.addObjectProperty(i),r.editors[i]&&r.editors[i].setValue(o,e,!!r.editors[i].template))})),this.refreshValue(),this.layoutEditors(),this.onChange()}},{key:"showValidationErrors",value:function(t){var e=this,r=[],n=[];t.forEach((function(t){t.path===e.path?r.push(t):n.push(t)})),this.error_holder&&(r.length?(this.error_holder.innerHTML="",this.error_holder.style.display="",r.forEach((function(t){t.errorcount&&t.errorcount>1&&(t.message+=" (".concat(t.errorcount," errors)")),e.error_holder.appendChild(e.theme.getErrorMessage(t.message))}))):this.error_holder.style.display="none"),this.options.table_row&&(r.length?this.theme.addTableRowError(this.container):this.theme.removeTableRowError(this.container)),Object.values(this.editors).forEach((function(t){t.showValidationErrors(n)}))}}])&&Vn(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(_);function Jn(t){return Jn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Jn(t)}function Wn(t,e){for(var r=0;r-1;i--){var o=this.formname+(i+1),a=this.theme.getFormInputField("radio");a.name="".concat(this.formname,"[starrating]"),a.value=this.enum_values[i],a.id=o,a.addEventListener("change",n,!1),this.radioGroup.push(a);var s=document.createElement("label");s.htmlFor=o,s.title=this.enum_values[i],this.options.displayValue&&s.classList.add("starrating-display-enabled");var l=this.theme.getHiddenText("label");l.textContent=i,s.appendChild(l),this.ratingContainer.appendChild(a),this.ratingContainer.appendChild(s)}if(this.options.displayValue&&(this.displayRating=document.createElement("div"),this.displayRating.classList.add("starrating-display"),this.displayRating.innerText=this.enum_values[0],this.ratingContainer.appendChild(this.displayRating)),this.schema.readOnly||this.schema.readonly){this.disable(!0);for(var c=0;c input":"display:none",".starrating > label:before":"content:'%5C2606';margin:1px;font-size:18px;font-style:normal;font-weight:400;line-height:1;font-family:'Arial';display:inline-block",".starrating > label":"color:%23888;cursor:pointer;margin:8px%200%202px%200",".starrating > label.starrating-display-enabled":"margin:1px%200%200%200",".starrating > input:checked ~ label":"color:%23ffca08",".starrating:not(.readonly) > input:hover ~ label":"color:%23ffca08",".starrating > input:checked ~ label:before":"content:'%5C2605';text-shadow:0%200%201px%20rgba(0%2C20%2C20%2C1)",".starrating:not(.readonly) > input:hover ~ label:before":"content:'%5C2605';text-shadow:0%200%201px%20rgba(0%2C20%2C20%2C1)",".starrating .starrating-display":"position:relative;direction:rtl;text-align:center;font-size:10px;line-height:0px"};var co=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),io(this,e,arguments)}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&lo(t,e)}(e,t),r=e,(n=[{key:"build",value:function(){ao(so(e.prototype),"build",this).call(this),this.input.setAttribute("type","number"),this.input.getAttribute("step")||this.input.setAttribute("step","1");var t=this.theme.getStepperButtons(this.input);this.control.appendChild(t),this.stepperDown=this.control.querySelector(".stepper-down"),this.stepperUp=this.control.querySelector(".stepper-up")}},{key:"enable",value:function(){ao(so(e.prototype),"enable",this).call(this),this.stepperDown.removeAttribute("disabled"),this.stepperUp.removeAttribute("disabled")}},{key:"disable",value:function(){ao(so(e.prototype),"disable",this).call(this),this.stepperDown.setAttribute("disabled",!0),this.stepperUp.setAttribute("disabled",!0)}}])&&ro(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Vr);function uo(t){return uo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},uo(t)}function ho(t,e){for(var r=0;rthis.schema.maxItems&&(t=t.slice(0,this.schema.maxItems)),t}},{key:"setValue",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],r=arguments.length>1?arguments[1]:void 0;if(e=this.applyConstFilter(e),e=this.ensureArraySize(e),JSON.stringify(e)!==this.serialized){var n=!1;e.forEach((function(e,r){t.rows[r]?t.rows[r].setValue(e):(t.addRow(e),n=!0)}));for(var i=e.length;i=this.rows.length,r=this.schema.maxItems&&this.schema.maxItems<=this.rows.length,n=[];this.rows.forEach((function(i,o){if(i.delete_button){var a=!e;t.setButtonState(i.delete_button,a),n.push(a)}if(i.copy_button){var s=!r;t.setButtonState(i.copy_button,s),n.push(s)}if(i.moveup_button){var l=0!==o;t.setButtonState(i.moveup_button,l),n.push(l)}if(i.movedown_button){var c=o!==t.rows.length-1;t.setButtonState(i.movedown_button,c),n.push(c)}}));var i=n.some((function(t){return t}));this.rows.forEach((function(e){return t.setButtonState(e.controls_cell,i)})),this.setButtonState(this.controls_header_cell,i),this.setButtonState(this.table,this.value.length);var o=!(r||this.hide_add_button);this.setButtonState(this.add_row_button,o);var a=!(!this.value.length||e||this.hide_delete_last_row_buttons);this.setButtonState(this.delete_last_row_button,a);var s=!(this.value.length<=1||e||this.hide_delete_all_rows_buttons);this.setButtonState(this.remove_all_rows_button,s);var l=o||a||s;this.setButtonState(this.controls,l)}},{key:"refreshValue",value:function(){var t=this;this.value=[],this.rows.forEach((function(e,r){t.value[r]=e.getValue()})),this.serialized=JSON.stringify(this.value)}},{key:"addRow",value:function(t){var e=this.rows.length;this.rows[e]=this.getElementEditor(e);var r=this.rows[e].table_controls;return this.hide_delete_buttons||(this.rows[e].delete_button=this._createDeleteButton(e,r)),this.show_copy_button&&(this.rows[e].copy_button=this._createCopyButton(e,r)),this.hide_move_buttons||(this.rows[e].moveup_button=this._createMoveUpButton(e,r)),this.hide_move_buttons||(this.rows[e].movedown_button=this._createMoveDownButton(e,r)),this._supportDragDrop(this.rows[e].row),void 0!==t&&this.rows[e].setValue(t),this.rows[e]}},{key:"_createDeleteButton",value:function(t,e){var r=this,n=this.getButton("","delete","button_delete_row_title_short");return n.classList.add("delete","json-editor-btntype-delete"),n.setAttribute("data-i",t),n.addEventListener("click",(function(t){if(t.preventDefault(),t.stopPropagation(),!r.askConfirmation())return!1;var e=1*t.currentTarget.getAttribute("data-i"),n=r.getValue(),i=r.getValue()[e];n.splice(e,1),r.setValue(n),r.onChange(!0),r.jsoneditor.trigger("deleteRow",i)})),e.appendChild(n),n}},{key:"_createCopyButton",value:function(t,e){var r=this,n=this.getButton("","copy","button_copy_row_title_short"),i=this.schema;return n.classList.add("copy","json-editor-btntype-copy"),n.setAttribute("data-i",t),n.addEventListener("click",(function(t){t.preventDefault(),t.stopPropagation();var e=1*t.currentTarget.getAttribute("data-i"),n=r.getValue(),o=n[e];"string"===i.items.type&&"uuid"===i.items.format?o=f():"object"===i.items.type&&i.items.properties&&n.forEach((function(t,r){if(e===r)for(var a=0,s=Object.keys(t);at.options.max_upload_size)t.theme.addInputError(t.uploader,"".concat(t.translate("upload_max_size")," ").concat(t.options.max_upload_size));else if(0===t.options.mime_type.length||t.isValidMimeType(r[0].type,t.options.mime_type)){t.fileDisplay&&(t.fileDisplay.value=r[0].name);var n=new window.FileReader;n.onload=function(e){t.preview_value=e.target.result,t.refreshPreview(r),t.onChange(!0),n=null},n.readAsDataURL(r[0])}else t.theme.addInputError(t.uploader,"".concat(t.translate("upload_wrong_file_format")," ").concat(t.options.mime_type.toString()))},this.uploader.addEventListener("change",this.uploadHandler),this.dragHandler=function(e){var r=e.dataTransfer.items||e.dataTransfer.files,n=r&&r.length&&(0===t.options.mime_type.length||t.isValidMimeType(r[0].type,t.options.mime_type)),i=e.currentTarget.classList&&e.currentTarget.classList.contains("upload-dropzone")&&n;switch((e.currentTarget===window?"w_":"e_")+e.type){case"w_drop":case"w_dragover":i||(e.dataTransfer.dropEffect="none");break;case"e_dragenter":i?(t.dropZone.classList.add("valid-dropzone"),e.dataTransfer.dropEffect="copy"):t.dropZone.classList.add("invalid-dropzone");break;case"e_dragover":i&&(e.dataTransfer.dropEffect="copy");break;case"e_dragleave":t.dropZone.classList.remove("valid-dropzone","invalid-dropzone");break;case"e_drop":t.dropZone.classList.remove("valid-dropzone","invalid-dropzone"),i&&t.uploadHandler(e)}i||e.preventDefault()},!0===this.options.enable_drag_drop&&(["dragover","drop"].forEach((function(e){window.addEventListener(e,t.dragHandler,!0)})),["dragenter","dragover","dragleave","drop"].forEach((function(e){t.dropZone.addEventListener(e,t.dragHandler,!0)})))}this.preview=document.createElement("div"),this.control=this.input.controlgroup=this.theme.getFormControl(this.label,this.uploader||this.input,this.description,this.infoButton),this.uploader&&(this.uploader.controlgroup=this.control);var e=this.uploader||this.input,r=document.createElement("div");this.dropZone&&!this.altDropZone&&!0===this.options.drop_zone_top&&r.appendChild(this.dropZone),this.fileUploadGroup&&r.appendChild(this.fileUploadGroup),this.dropZone&&!this.altDropZone&&!0!==this.options.drop_zone_top&&r.appendChild(this.dropZone),r.appendChild(this.preview),e.parentNode.insertBefore(r,e.nextSibling),this.container.appendChild(this.control),window.requestAnimationFrame((function(){t.afterInputReady()}))}},{key:"afterInputReady",value:function(){var t=this;if(this.value){var e=document.createElement("img");e.style.maxWidth="100%",e.style.maxHeight="100px",e.onload=function(r){t.preview.appendChild(e)},e.onerror=function(t){console.error("upload error",t,t.currentTarget)},e.src=this.container.querySelector("a").href}this.theme.afterInputReady(this.input)}},{key:"refreshPreview",value:function(t){var e=this;if(this.last_preview!==this.preview_value&&(this.last_preview=this.preview_value,this.preview.innerHTML="",this.preview_value)){var r=t[0],n=this.preview_value.match(/^data:([^;,]+)[;,]/);if(r.mimeType=n?n[1]:"unknown",r.size>0){var i=Math.floor(Math.log(r.size)/Math.log(1024));r.formattedSize="".concat(parseFloat((r.size/Math.pow(1024,i)).toFixed(2))," ").concat(["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][i])}else r.formattedSize="0 Bytes";var o=this.getButton("button_upload","upload","button_upload");o.addEventListener("click",(function(t){t.preventDefault(),o.setAttribute("disabled","disabled"),e.theme.removeInputError(e.uploader),e.theme.getProgressBar&&(e.progressBar=e.theme.getProgressBar(),e.preview.appendChild(e.progressBar)),e.options.upload_handler(e.path,r,{success:function(t){e.setValue(t),e.parent?e.parent.onChildEditorChange(e):e.jsoneditor.onChange(),e.progressBar&&e.preview.removeChild(e.progressBar),o.removeAttribute("disabled")},failure:function(t){e.theme.addInputError(e.uploader,t),e.progressBar&&e.preview.removeChild(e.progressBar),o.removeAttribute("disabled")},updateProgress:function(t){e.progressBar&&(t?e.theme.updateProgressBar(e.progressBar,t):e.theme.updateProgressBarUnknown(e.progressBar))}})})),this.preview.appendChild(this.theme.getUploadPreview(r,o,this.preview_value)),this.options.auto_upload&&(o.dispatchEvent(new window.MouseEvent("click")),o.parentNode.removeChild(o))}}},{key:"enable",value:function(){this.always_disabled||(this.uploader&&(this.uploader.disabled=!1),xo(Co(e.prototype),"enable",this).call(this))}},{key:"disable",value:function(t){t&&(this.always_disabled=!0),this.uploader&&(this.uploader.disabled=!0),xo(Co(e.prototype),"disable",this).call(this)}},{key:"setValue",value:function(t){t=this.applyConstFilter(t),this.value!==t&&(this.value=t,this.input.value=this.value,this.onChange())}},{key:"destroy",value:function(){var t=this;!0===this.options.enable_drag_drop&&(["dragover","drop"].forEach((function(e){window.removeEventListener(e,t.dragHandler,!0)})),["dragenter","dragover","dragleave","drop"].forEach((function(e){t.dropZone.removeEventListener(e,t.dragHandler,!0)})),this.dropZone.removeEventListener("dblclick",this.clickHandler),this.dropZone&&this.dropZone.parentNode&&this.dropZone.parentNode.removeChild(this.dropZone)),this.uploader&&this.uploader.parentNode&&(this.uploader.removeEventListener("change",this.uploadHandler),this.uploader.parentNode.removeChild(this.uploader)),this.browseButton&&this.browseButton.parentNode&&(this.browseButton.removeEventListener("click",this.clickHandler),this.browseButton.parentNode.removeChild(this.browseButton)),this.fileDisplay&&this.fileDisplay.parentNode&&(this.fileDisplay.removeEventListener("dblclick",this.clickHandler),this.fileDisplay.parentNode.removeChild(this.fileDisplay)),this.fileUploadGroup&&this.fileUploadGroup.parentNode&&this.fileUploadGroup.parentNode.removeChild(this.fileUploadGroup),this.preview&&this.preview.parentNode&&this.preview.parentNode.removeChild(this.preview),this.header&&this.header.parentNode&&this.header.parentNode.removeChild(this.header),this.input&&this.input.parentNode&&this.input.parentNode.removeChild(this.input),xo(Co(e.prototype),"destroy",this).call(this)}},{key:"isValidMimeType",value:function(t,e){return e.reduce((function(e,r){return e||new RegExp(r.replace(/\*/g,".*"),"gi").test(t)}),!1)}}])&&_o(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(_),uuid:function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),To(this,e,arguments)}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Bo(t,e)}(e,t),r=e,(n=[{key:"preBuild",value:function(){Ro(Io(e.prototype),"preBuild",this).call(this),this.schema.default=this.uuid=this.getUuid(),this.schema.options||(this.schema.options={}),this.schema.options.cleave||(this.schema.options.cleave={delimiters:["-"],blocks:[8,4,4,4,12]})}},{key:"build",value:function(){Ro(Io(e.prototype),"build",this).call(this),this.disable(!0),this.input.setAttribute("readonly","true")}},{key:"sanitize",value:function(t){return this.testUuid(t)||(t=this.uuid),t}},{key:"setValue",value:function(t,r,n){t=this.applyConstFilter(t),this.testUuid(t)||(t=this.uuid),this.uuid=t,Ro(Io(e.prototype),"setValue",this).call(this,t,r,n)}},{key:"getUuid",value:function(){return f()}},{key:"testUuid",value:function(t){return/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t)}}])&&Po(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(L),colorpicker:function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),Vo(this,e,arguments)}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&qo(t,e)}(e,t),r=e,(n=[{key:"postBuild",value:function(){window.Picker&&(this.input.type="text"),this.input.style.padding="3px"}},{key:"setValue",value:function(t,r,n){t=this.applyConstFilter(t);var i=zo(Mo(e.prototype),"setValue",this).call(this,t,r,n);return this.picker_instance&&this.picker_instance.domElement&&i&&i.changed&&this.picker_instance.setColor(i.value,!0),i}},{key:"getNumColumns",value:function(){return 2}},{key:"afterInputReady",value:function(){zo(Mo(e.prototype),"afterInputReady",this).call(this),this.createPicker(!0)}},{key:"disable",value:function(){if(zo(Mo(e.prototype),"disable",this).call(this),this.picker_instance&&this.picker_instance.domElement){this.picker_instance.domElement.style.pointerEvents="none";for(var t=this.picker_instance.domElement.querySelectorAll("button"),r=0;rt.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var a=this.tryEntries[o],s=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var l=n.call(a,"catchLoc"),c=n.call(a,"finallyLoc");if(l&&c){if(this.prev=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),P(r),m}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;P(r)}return i}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:T(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),m}},e}function Qo(t,e,r,n,i,o,a){try{var s=t[o](a),l=s.value}catch(t){return void r(t)}s.done?e(l):Promise.resolve(l).then(n,i)}function Ko(t){return function(){var e=this,r=arguments;return new Promise((function(n,i){var o=t.apply(e,r);function a(t){Qo(o,n,i,a,s,"next",t)}function s(t){Qo(o,n,i,a,s,"throw",t)}a(void 0)}))}}function Xo(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,i,o,a,s=[],l=!0,c=!1;try{if(o=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.call(r)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(t){c=!0,i=t}finally{try{if(!l&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw i}}return s}}(t,e)||function(t,e){if(t){if("string"==typeof t)return ta(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ta(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ta(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r2?this.refs_with_info["#"+i[1]]:this.refs_with_info[n.$ref];delete n.$ref;var c=s.$ref.startsWith("#")?s.fetchUrl:"",u=this._getRef(c,s);if(this.refs[u]){if(e&&h(this.refs[u],"allOf")){var p=this.refs[u].allOf;Object.keys(p).forEach((function(t){p[t]=r.expandRefs(p[t],!0)}))}}else console.warn("reference:'".concat(u,"' not found!"));return i.length>2?this.extendSchemas(n,this.expandSchema(this.expandRecursivePointer(this.refs[u],i[2]))):this.extendSchemas(n,this.expandSchema(this.refs[u]))}},{key:"expandRecursivePointer",value:function(t,e){var r=t;return e.split("/").slice(1).forEach((function(t){r[t]&&(r=r[t])})),r.$refs&&r.$refs.startsWith("#")?this.expandRecursivePointer(t,r.$refs):r}},{key:"expandSchema",value:function(t){var e=this;Object.entries(this._subSchema1).forEach((function(r){var n=Xo(r,2),i=n[0],o=n[1];t[i]&&o.call(e,t)}));var r=l({},t);return Object.entries(this._subSchema2).forEach((function(n){var i=Xo(n,2),o=i[0],a=i[1];t[o]&&(r=a.call(e,t,r))})),this.expandRefs(r)}},{key:"_getRef",value:function(t,e){var r=t+e;return this.refs[r]?r:t+decodeURIComponent(e.$ref)}},{key:"_expandSubSchema",value:function(t){var e=this;return Array.isArray(t)?t.map((function(t){return"object"===ea(t)?e.expandSchema(t):t})):this.expandSchema(t)}},{key:"_manageRecursivePointer",value:function(t,e){Object.keys(t).forEach((function(r){null!==t[r]&&t[r].$ref&&0===t[r].$ref.indexOf("#")&&(t[r].$ref=e+t[r].$ref)}))}},{key:"_getExternalRefs",value:function(t,e){var r=this,n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];n||this._manageRecursivePointer(t,e);var i={},o=function(t){return Object.keys(t).forEach((function(t){i[t]=!0}))};if(t.$ref&&"object"!==ea(t.$ref)&&(0!==t.$ref.indexOf("#")||!n)){var a=t.$ref,s="";a.indexOf("#")>0&&(a=a.substr(0,a.indexOf("#"))),a!==t.$ref&&(s=t.$ref.substr(t.$ref.indexOf("#")));var l=this.refs_prefix+this.refs_counter++,c=l+s;"#"===t.$ref.substr(0,1)||this.refs[t.$ref]||(i[a]=!0),this.refs_with_info[l]={fetchUrl:e,$ref:a},t.$ref=c}return Object.values(t).forEach((function(t){t&&"object"===ea(t)&&(Array.isArray(t)?Object.values(t).forEach((function(t){t&&"object"===ea(t)&&o(r._getExternalRefs(t,e,n))})):t.$ref&&"string"==typeof t.$ref&&t.$ref.startsWith("#")||o(r._getExternalRefs(t,e,n)))})),t.id&&"string"==typeof t.id&&"urn:"===t.id.substr(0,4)?this.refs[t.id]=t:t.$id&&"string"==typeof t.$id&&"urn:"===t.$id.substr(0,4)&&(this.refs[t.$id]=t),i}},{key:"_getFileBase",value:function(t){if(!t)return"/";var e=this.options.ajaxBase;return void 0===e?this._getFileBaseFromFileLocation(t):e}},{key:"_getFileBaseFromFileLocation",value:function(t){var e=t.split("/");return e.pop(),"".concat(e.join("/"),"/")}},{key:"_joinUrl",value:function(t,e){var r=t;return"http://"!==t.substr(0,7)&&"https://"!==t.substr(0,8)&&"blob:"!==t.substr(0,5)&&"data:"!==t.substr(0,5)&&"#"!==t.substr(0,1)&&"/"!==t.substr(0,1)&&(r=e+t),r.indexOf("#")>0&&(r=r.substr(0,r.indexOf("#"))),r}},{key:"_isUniformResourceName",value:function(t){return"urn:"===t.substr(0,4)}},{key:"_asyncloadExternalRefs",value:(r=Ko(Yo().mark((function t(e,r,n){var i,o,a,s,l,c,u=this,h=arguments;return Yo().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:i=h.length>3&&void 0!==h[3]&&h[3],o=this._getExternalRefs(e,r,i),a=0,s=Yo().mark((function t(){var e,r,i,o,s,h,p,d,f,y,m;return Yo().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(void 0!==(e=c[l])){t.next=3;break}return t.abrupt("return",0);case 3:if(!u.refs[e]){t.next=5;break}return t.abrupt("return",0);case 5:if(!u._isUniformResourceName(e)){t.next=40;break}if(u.refs[e]="loading",a++,r=u.options.urn_resolver,i=e,"function"==typeof r){t.next=13;break}throw console.log('No "urn_resolver" callback defined to resolve "'.concat(i,'"')),new Error("Must set urn_resolver option to a callback to resolve ".concat(i));case 13:return i.indexOf("#")>0&&(i=i.substr(0,i.indexOf("#"))),t.prev=14,t.next=17,r(i);case 17:o=t.sent,t.prev=18,s=JSON.parse(o),t.next=26;break;case 22:throw t.prev=22,t.t0=t.catch(18),console.log(t.t0),new Error("Failed to parse external ref ".concat(i));case 26:if(!("boolean"!=typeof s&&"object"!==ea(s)||null===s||Array.isArray(s))){t.next=28;break}throw new Error("External ref does not contain a valid schema - ".concat(i));case 28:return u.refs[e]=s,t.next=31,u._asyncloadExternalRefs(s,e,n);case 31:t.next=37;break;case 33:throw t.prev=33,t.t1=t.catch(14),console.log(t.t1),new Error("Failed to parse external ref ".concat(i));case 37:if("boolean"!=typeof o){t.next=39;break}throw new Error("External ref does not contain a valid schema - ".concat(i));case 39:return t.abrupt("return",0);case 40:if(u.options.ajax){t.next=42;break}throw new Error("Must set ajax option to true to load external ref ".concat(e));case 42:if(a++,h=u._joinUrl(e,n),u.options.ajax_cache_responses&&(d=u.cacheGet(h))&&(p=d),p){t.next=61;break}return t.next=48,new Promise((function(t){var e=new XMLHttpRequest;u.options.ajaxCredentials&&(e.withCredentials=u.options.ajaxCredentials),e.overrideMimeType("application/json"),e.open("GET",h,!0),e.onload=function(){t(e)},e.onerror=function(e){t(void 0)},e.send()}));case 48:if(void 0!==(f=t.sent)){t.next=51;break}throw new Error("Failed to fetch ref via ajax - ".concat(e));case 51:t.prev=51,p=JSON.parse(f.responseText),u.onSchemaLoaded({schema:p,schemaUrl:h}),u.options.ajax_cache_responses&&u.cacheSet(h,p),t.next=61;break;case 57:throw t.prev=57,t.t2=t.catch(51),console.log(t.t2),new Error("Failed to parse external ref ".concat(h));case 61:if(!("boolean"!=typeof p&&"object"!==ea(p)||null===p||Array.isArray(p))){t.next=63;break}throw new Error("External ref does not contain a valid schema - ".concat(h));case 63:return u.refs[e]=p,y=u._getFileBaseFromFileLocation(h),h!==e&&(m=h.split("/"),h=("/"===e.substr(0,1)?"/":"")+m.pop()),t.next=68,u._asyncloadExternalRefs(p,h,y);case 68:case"end":return t.stop()}}),t,null,[[14,33],[18,22],[51,57]])})),l=0,c=Object.keys(o);case 5:if(!(l1?r=function(e){for(i=e,t=0;tt.length)&&(e=t.length);for(var r=0,n=new Array(e);r0&&void 0!==arguments[0]?arguments[0]:"",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ua;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.mapping=r,this.icon_prefix=e},(e=[{key:"getIconClass",value:function(t){return this.mapping[t]?this.icon_prefix+this.mapping[t]:this.icon_prefix+t}},{key:"getIcon",value:function(t){var e,r=this.getIconClass(t);if(!r)return null;var n,i=document.createElement("i");return(e=i.classList).add.apply(e,function(t){if(Array.isArray(t))return sa(t)}(n=r.split(" "))||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(n)||function(t,e){if(t){if("string"==typeof t)return sa(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?sa(t,e):void 0}}(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i}}])&&la(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function pa(t){return pa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},pa(t)}function da(t,e,r){return e=ya(e),function(t,e){if(e&&("object"===pa(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,fa()?Reflect.construct(e,r||[],ya(t).constructor):e.apply(t,r))}function fa(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(fa=function(){return!!t})()}function ya(t){return ya=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ya(t)}function ma(t,e){return ma=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ma(t,e)}var va={collapse:"chevron-down",expand:"chevron-right",delete:"trash",edit:"pencil",add:"plus",subtract:"minus",cancel:"floppy-remove",save:"floppy-saved",moveup:"arrow-up",moveright:"arrow-right",movedown:"arrow-down",moveleft:"arrow-left",copy:"copy",clear:"remove-circle",time:"time",calendar:"calendar",edit_properties:"list"},ba=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),da(this,e,["glyphicon glyphicon-",va])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ma(t,e)}(e,t),r=e,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(ha);function ga(t){return ga="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ga(t)}function wa(t,e,r){return e=ka(e),function(t,e){if(e&&("object"===ga(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,_a()?Reflect.construct(e,r||[],ka(t).constructor):e.apply(t,r))}function _a(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(_a=function(){return!!t})()}function ka(t){return ka=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ka(t)}function ja(t,e){return ja=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ja(t,e)}var Oa={collapse:"chevron-down",expand:"chevron-right",delete:"trash",edit:"pencil",add:"plus",subtract:"minus",cancel:"ban-circle",save:"save",moveup:"arrow-up",moveright:"arrow-right",movedown:"arrow-down",moveleft:"arrow-left",copy:"copy",clear:"remove-circle",time:"time",calendar:"calendar",edit_properties:"list"},xa=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),wa(this,e,["icon-",Oa])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ja(t,e)}(e,t),r=e,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(ha);function Ca(t){return Ca="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ca(t)}function Ea(t,e,r){return e=Pa(e),function(t,e){if(e&&("object"===Ca(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Sa()?Reflect.construct(e,r||[],Pa(t).constructor):e.apply(t,r))}function Sa(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Sa=function(){return!!t})()}function Pa(t){return Pa=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Pa(t)}function La(t,e){return La=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},La(t,e)}var Ta={collapse:"caret-square-o-down",expand:"caret-square-o-right",delete:"times",edit:"pencil",add:"plus",subtract:"minus",cancel:"ban",save:"save",moveup:"arrow-up",moveright:"arrow-right",movedown:"arrow-down",moveleft:"arrow-left",copy:"files-o",clear:"times-circle-o",time:"clock-o",calendar:"calendar",edit_properties:"list"},Aa=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),Ea(this,e,["fa fa-",Ta])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&La(t,e)}(e,t),r=e,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(ha);function Ra(t){return Ra="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ra(t)}function Ia(t,e,r){return e=Na(e),function(t,e){if(e&&("object"===Ra(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Ba()?Reflect.construct(e,r||[],Na(t).constructor):e.apply(t,r))}function Ba(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Ba=function(){return!!t})()}function Na(t){return Na=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Na(t)}function Da(t,e){return Da=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Da(t,e)}var Fa={collapse:"caret-down",expand:"caret-right",delete:"trash",edit:"pen",add:"plus",subtract:"minus",cancel:"ban",save:"save",moveup:"arrow-up",moveright:"arrow-right",movedown:"arrow-down",moveleft:"arrow-left",copy:"copy",clear:"times-circle",time:"clock",calendar:"calendar",edit_properties:"list"},Va=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),Ia(this,e,["fas fa-",Fa])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Da(t,e)}(e,t),r=e,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(ha);function Ha(t){return Ha="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ha(t)}function za(t,e,r){return e=qa(e),function(t,e){if(e&&("object"===Ha(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Ma()?Reflect.construct(e,r||[],qa(t).constructor):e.apply(t,r))}function Ma(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Ma=function(){return!!t})()}function qa(t){return qa=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},qa(t)}function Ua(t,e){return Ua=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Ua(t,e)}var Ga={collapse:"triangle-1-s",expand:"triangle-1-e",delete:"trash",edit:"pencil",add:"plusthick",subtract:"minusthick",cancel:"closethick",save:"disk",moveup:"arrowthick-1-n",moveright:"arrowthick-1-e",movedown:"arrowthick-1-s",moveleft:"arrowthick-1-w",copy:"copy",clear:"circle-close",time:"time",calendar:"calendar",edit_properties:"note"},$a=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),za(this,e,["ui-icon ui-icon-",Ga])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Ua(t,e)}(e,t),r=e,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(ha);function Ja(t){return Ja="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ja(t)}function Wa(t,e,r){return e=Ya(e),function(t,e){if(e&&("object"===Ja(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Za()?Reflect.construct(e,r||[],Ya(t).constructor):e.apply(t,r))}function Za(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Za=function(){return!!t})()}function Ya(t){return Ya=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ya(t)}function Qa(t,e){return Qa=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Qa(t,e)}var Ka={collapse:"collapse-down",expand:"expand-right",delete:"trash",edit:"pencil",add:"plus",subtract:"minus",cancel:"ban",save:"file",moveup:"arrow-thick-top",moveright:"arrow-thick-right",movedown:"arrow-thick-bottom",moveleft:"arrow-thick-left",copy:"clipboard",clear:"circle-x",time:"clock",calendar:"calendar",edit_properties:"list"},Xa=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),Wa(this,e,["oi oi-",Ka])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Qa(t,e)}(e,t),r=e,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(ha);function ts(t){return ts="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ts(t)}function es(t,e,r){return e=ns(e),function(t,e){if(e&&("object"===ts(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,rs()?Reflect.construct(e,r||[],ns(t).constructor):e.apply(t,r))}function rs(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(rs=function(){return!!t})()}function ns(t){return ns=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ns(t)}function is(t,e){return is=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},is(t,e)}var os={collapse:"arrow-down",expand:"arrow-right",delete:"delete",edit:"edit",add:"plus",subtract:"minus",cancel:"cross",save:"check",moveup:"upward",moveright:"forward",movedown:"downward",moveleft:"back",copy:"copy",clear:"close",time:"time",calendar:"bookmark",edit_properties:"menu"},as=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),es(this,e,["icon icon-",os])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&is(t,e)}(e,t),r=e,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(ha);function ss(t){return ss="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ss(t)}function ls(t,e,r){return e=us(e),function(t,e){if(e&&("object"===ss(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,cs()?Reflect.construct(e,r||[],us(t).constructor):e.apply(t,r))}function cs(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(cs=function(){return!!t})()}function us(t){return us=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},us(t)}function hs(t,e){return hs=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},hs(t,e)}var ps={collapse:"chevron-down",expand:"chevron-right",delete:"trash",edit:"pencil",add:"plus",subtract:"dash",cancel:"x-circle",save:"save",moveup:"arrow-up",moveright:"arrow-right",movedown:"arrow-down",moveleft:"arrow-left",copy:"clipboard",clear:"x-circle",time:"clock",calendar:"calendar",edit_properties:"list-ul"},ds={bootstrap:function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),ls(this,e,["bi bi-",ps])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&hs(t,e)}(e,t),r=e,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(ha),bootstrap3:ba,fontawesome3:xa,fontawesome4:Aa,fontawesome5:Va,jqueryui:$a,openiconic:Xa,spectre:as};function fs(t){return fs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},fs(t)}function ys(t,e){for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:{disable_theme_rules:!1};!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.jsoneditor=e,Object.keys(r).forEach((function(t){void 0!==e.options[t]&&(r[t]=e.options[t])})),this.options=r},e=[{key:"getContainer",value:function(){return document.createElement("div")}},{key:"getOptInCheckbox",value:function(t){var e=document.createElement("span"),r=this.getHiddenLabel(t+" opt-in");r.setAttribute("for",t+"-opt-in"),r.textContent=t+"-opt-in";var n=document.createElement("input");return n.setAttribute("type","checkbox"),n.setAttribute("style","margin: 0 10px 0 0;"),n.setAttribute("id",t+"-opt-in"),n.classList.add("json-editor-opt-in"),e.appendChild(n),e.appendChild(r),{label:r,checkbox:n,container:e}}},{key:"getOptInSwitch",value:function(t){return this.getOptInCheckbox()}},{key:"getFloatRightLinkHolder",value:function(){var t=document.createElement("div");return t.classList.add("je-float-right-linkholder"),t}},{key:"getModal",value:function(){var t=document.createElement("div");return t.style.display="none",t.classList.add("je-modal"),t}},{key:"getGridContainer",value:function(){return document.createElement("div")}},{key:"getGridRow",value:function(){var t=document.createElement("div");return t.classList.add("row"),t}},{key:"getGridColumn",value:function(){return document.createElement("div")}},{key:"setGridColumnSize",value:function(t,e){}},{key:"getLink",value:function(t){var e=document.createElement("a");return e.setAttribute("href","#"),e.appendChild(document.createTextNode(t)),e}},{key:"disableHeader",value:function(t){t.style.color="#ccc"}},{key:"disableLabel",value:function(t){t.style.color="#ccc"}},{key:"enableHeader",value:function(t){t.style.color=""}},{key:"enableLabel",value:function(t){t.style.color=""}},{key:"getInfoButton",value:function(t){var e=document.createElement("span");e.innerText="ⓘ",e.classList.add("je-infobutton-icon");var r=document.createElement("span");return r.classList.add("je-infobutton-tooltip"),r.innerText=t,e.onmouseover=function(){r.style.visibility="visible"},e.onmouseleave=function(){r.style.visibility="hidden"},e.appendChild(r),e}},{key:"getFormInputLabel",value:function(t,e){var r=document.createElement("label");return r.appendChild(document.createTextNode(t)),e&&r.classList.add("required"),r}},{key:"getLabelLike",value:function(t,e){var r=document.createElement("b");return r.appendChild(document.createTextNode(t)),e&&r.classList.add("required"),r}},{key:"getHeader",value:function(t,e){var r=document.createElement("span");return"string"==typeof t?r.textContent=t:r.appendChild(t),r.classList.add("je-header"),r}},{key:"getCheckbox",value:function(){var t=this.getFormInputField("checkbox");return t.classList.add("je-checkbox"),t}},{key:"getCheckboxLabel",value:function(t,e){var r=document.createElement("label");return r.appendChild(document.createTextNode(" ".concat(t))),e&&r.classList.add("required"),r}},{key:"getMultiCheckboxHolder",value:function(t,e,r,n){var i=document.createElement("div");return i.classList.add("control-group"),e&&(e.style.display="block",i.appendChild(e),n&&e.appendChild(n)),Object.values(t).forEach((function(t){t.style.display="inline-block",t.style.marginRight="20px",i.appendChild(t)})),r&&i.appendChild(r),i}},{key:"getFormCheckboxControl",value:function(t,e,r){var n=document.createElement("div");return n.appendChild(t),e.style.width="auto",t.insertBefore(e,t.firstChild),r&&n.classList.add("je-checkbox-control--compact"),n}},{key:"getFormRadio",value:function(t){var e=this.getFormInputField("radio");return Object.keys(t).forEach((function(r){return e.setAttribute(r,t[r])})),e.classList.add("je-radio"),e}},{key:"getFormRadioLabel",value:function(t,e){var r=document.createElement("label");return r.appendChild(document.createTextNode(" ".concat(t))),e&&r.classList.add("required"),r}},{key:"getFormRadioControl",value:function(t,e,r,n){var i=document.createElement("div");return i.appendChild(t),e.style.width="auto",t.insertBefore(e,t.firstChild),r&&i.classList.add("je-radio-control--compact"),"div"!==e.tagName.toLowerCase()&&n&&t&&e&&(e.setAttribute("id",n),e.setAttribute("aria-labelledby",n),t.setAttribute("for",n)),i}},{key:"getSelectInput",value:function(t,e){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=document.createElement("select");return t&&this.setSelectOptions(n,t,[],r),n}},{key:"getSwitcher",value:function(t){var e=this.getSelectInput(t,!1);return e.classList.add("je-switcher"),e}},{key:"getSwitcherOptions",value:function(t){return t.getElementsByTagName("option")}},{key:"setSwitcherOptions",value:function(t,e,r){this.setSelectOptions(t,e,r)}},{key:"setSelectOptions",value:function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],n=arguments.length>3&&void 0!==arguments[3]&&arguments[3],i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:" ";if(t.innerHTML="",n){var o=document.createElement("option");o.setAttribute("value","_placeholder_"),o.textContent=i,o.setAttribute("disabled",""),o.setAttribute("hidden",""),t.appendChild(o)}for(var a=0;aNumber(o)&&t.stepDown():t.stepDown():i(t,o),c(t,"change")})),n.addEventListener("click",(function(){t.getAttribute("initialized")?a?Number(t.value)
    "),r}},{key:"getTopTabHolder",value:function(t){var e=void 0===t?"":t,r=document.createElement("div");return r.innerHTML="
    "),r}},{key:"applyStyles",value:function(t,e){Object.keys(e).forEach((function(r){return t.style[r]=e[r]}))}},{key:"closest",value:function(t,e){for(;t&&t!==document;){if(!t[vs])return!1;if(t[vs](e))return t;t=t.parentNode}return!1}},{key:"insertBasicTopTab",value:function(t,e){e.firstChild.insertBefore(t,e.firstChild.firstChild)}},{key:"getTab",value:function(t,e){var r=document.createElement("div");return r.appendChild(t),r.id=e,r.classList.add("je-tab"),r}},{key:"getTopTab",value:function(t,e){var r=document.createElement("div");return r.appendChild(t),r.id=e,r.classList.add("je-tab--top"),r}},{key:"getTabContentHolder",value:function(t){return t.children[1]}},{key:"getTopTabContentHolder",value:function(t){return t.children[1]}},{key:"getTabContent",value:function(){return this.getIndentedPanel()}},{key:"getTopTabContent",value:function(){return this.getTopIndentedPanel()}},{key:"markTabActive",value:function(t){this.applyStyles(t.tab,{opacity:1,background:"white"}),void 0!==t.rowPane?t.rowPane.style.display="":t.container.style.display=""}},{key:"markTabInactive",value:function(t){this.applyStyles(t.tab,{opacity:.5,background:""}),void 0!==t.rowPane?t.rowPane.style.display="none":t.container.style.display="none"}},{key:"addTab",value:function(t,e){t.children[0].appendChild(e)}},{key:"addTopTab",value:function(t,e){t.children[0].appendChild(e)}},{key:"getBlockLink",value:function(){var t=document.createElement("a");return t.classList.add("je-block-link"),t}},{key:"getBlockLinkHolder",value:function(){return document.createElement("div")}},{key:"getLinksHolder",value:function(){return document.createElement("div")}},{key:"createMediaLink",value:function(t,e,r){t.appendChild(e),r.classList.add("je-media"),t.appendChild(r)}},{key:"createImageLink",value:function(t,e,r){t.appendChild(e),e.appendChild(r)}},{key:"getFirstTab",value:function(t){return t.firstChild.firstChild}},{key:"getInputGroup",value:function(t,e){}},{key:"cleanText",value:function(t){var e=document.createElement("div");return e.innerHTML=t,e.textContent||e.innerText}},{key:"getDropZone",value:function(t){var e=document.createElement("div");return e.setAttribute("data-text",t),e.classList.add("je-dropzone"),e}},{key:"getUploadPreview",value:function(t,e,r){var n=document.createElement("div");if(n.classList.add("je-upload-preview"),"image"===t.mimeType.substr(0,5)){var i=document.createElement("img");i.src=r,n.appendChild(i)}var o=document.createElement("div");o.innerHTML+="Name: ".concat(t.name,"
    Type: ").concat(t.type,"
    Size: ").concat(t.formattedSize),n.appendChild(o),n.appendChild(e);var a=document.createElement("div");return a.style.clear="left",n.appendChild(a),n}},{key:"getProgressBar",value:function(){var t=document.createElement("progress");return t.setAttribute("max",100),t.setAttribute("value",0),t}},{key:"updateProgressBar",value:function(t,e){t&&t.setAttribute("value",e)}},{key:"updateProgressBarUnknown",value:function(t){t&&t.removeAttribute("value")}}],e&&ys(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function gs(t){return gs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},gs(t)}function ws(t,e){for(var r=0;r
    "),r}},{key:"getTopTabHolder",value:function(t){var e=void 0===t?"":t,r=document.createElement("div");return r.innerHTML="
    "),r}},{key:"getTab",value:function(t,e){var r=document.createElement("li");r.setAttribute("role","presentation");var n=document.createElement("a");return n.setAttribute("href","#".concat(e)),n.appendChild(t),n.setAttribute("aria-controls",e),n.setAttribute("role","tab"),n.setAttribute("data-toggle","tab"),r.appendChild(n),r}},{key:"getTopTab",value:function(t,e){var r=document.createElement("li");r.setAttribute("role","presentation");var n=document.createElement("a");return n.setAttribute("href","#".concat(e)),n.appendChild(t),n.setAttribute("aria-controls",e),n.setAttribute("role","tab"),n.setAttribute("data-toggle","tab"),r.appendChild(n),r}},{key:"getTabContent",value:function(){var t=document.createElement("div");return t.classList.add("tab-pane"),t.setAttribute("role","tabpanel"),t}},{key:"getTopTabContent",value:function(){var t=document.createElement("div");return t.classList.add("tab-pane"),t.setAttribute("role","tabpanel"),t}},{key:"markTabActive",value:function(t){t.tab.classList.add("active"),void 0!==t.rowPane?t.rowPane.classList.add("active"):t.container.classList.add("active")}},{key:"markTabInactive",value:function(t){t.tab.classList.remove("active"),void 0!==t.rowPane?t.rowPane.classList.remove("active"):t.container.classList.remove("active")}},{key:"getProgressBar",value:function(){var t=document.createElement("div");t.classList.add("progress");var e=document.createElement("div");return e.classList.add("progress-bar"),e.setAttribute("role","progressbar"),e.setAttribute("aria-valuenow",0),e.setAttribute("aria-valuemin",0),e.setAttribute("aria-valuenax",100),e.innerHTML="".concat(0,"%"),t.appendChild(e),t}},{key:"updateProgressBar",value:function(t,e){if(t){var r=t.firstChild,n="".concat(e,"%");r.setAttribute("aria-valuenow",e),r.style.width=n,r.innerHTML=n}}},{key:"updateProgressBarUnknown",value:function(t){if(t){var e=t.firstChild;t.classList.add("progress","progress-striped","active"),e.removeAttribute("aria-valuenow"),e.style.width="100%",e.innerHTML=""}}},{key:"getInputGroup",value:function(t,e){if(t){var r=document.createElement("div");r.classList.add("input-group"),r.appendChild(t);var n=document.createElement("div");n.classList.add("input-group-btn"),r.appendChild(n);for(var i=0;iNumber(s)&&t.stepDown():t.stepDown():a(t,s),c(t,"change")})),o.addEventListener("click",(function(){t.getAttribute("initialized")?l?Number(t.value)
    "),e.classList.add("row"),e}},{key:"addTab",value:function(t,e){t.children[0].children[0].appendChild(e)}},{key:"getTabContentHolder",value:function(t){return t.children[1].children[0]}},{key:"getTopTabHolder",value:function(t){var e=void 0===t?"":t,r=document.createElement("div");return r.classList.add("card"),r.innerHTML="
    "),r}},{key:"getTab",value:function(t,e){var r=document.createElement("li");r.classList.add("nav-item");var n=document.createElement("a");return n.classList.add("nav-link"),n.setAttribute("href","#".concat(e)),n.setAttribute("data-toggle","tab"),n.appendChild(t),r.appendChild(n),r}},{key:"getTopTab",value:function(t,e){var r=document.createElement("li");r.classList.add("nav-item");var n=document.createElement("a");return n.classList.add("nav-link"),n.setAttribute("href","#".concat(e)),n.setAttribute("data-toggle","tab"),n.appendChild(t),r.appendChild(n),r}},{key:"getTabContent",value:function(){var t=document.createElement("div");return t.classList.add("tab-pane"),t.setAttribute("role","tabpanel"),t}},{key:"getTopTabContent",value:function(){var t=document.createElement("div");return t.classList.add("tab-pane"),t.setAttribute("role","tabpanel"),t}},{key:"markTabActive",value:function(t){t.tab.firstChild.classList.add("active"),void 0!==t.rowPane?t.rowPane.classList.add("active"):t.container.classList.add("active")}},{key:"markTabInactive",value:function(t){t.tab.firstChild.classList.remove("active"),void 0!==t.rowPane?t.rowPane.classList.remove("active"):t.container.classList.remove("active")}},{key:"insertBasicTopTab",value:function(t,e){e.children[0].children[0].insertBefore(t,e.children[0].children[0].firstChild)}},{key:"addTopTab",value:function(t,e){t.children[0].children[0].appendChild(e)}},{key:"getTopTabContentHolder",value:function(t){return t.children[1].children[0]}},{key:"getFirstTab",value:function(t){return t.firstChild.firstChild.firstChild}},{key:"getProgressBar",value:function(){var t=document.createElement("div");t.classList.add("progress");var e=document.createElement("div");return e.classList.add("progress-bar"),e.setAttribute("role","progressbar"),e.setAttribute("aria-valuenow",0),e.setAttribute("aria-valuemin",0),e.setAttribute("aria-valuenax",100),e.innerHTML="".concat(0,"%"),t.appendChild(e),t}},{key:"updateProgressBar",value:function(t,e){if(t){var r=t.firstChild,n="".concat(e,"%");r.setAttribute("aria-valuenow",e),r.style.width=n,r.innerHTML=n}}},{key:"updateProgressBarUnknown",value:function(t){if(t){var e=t.firstChild;t.classList.add("progress","progress-striped","active"),e.removeAttribute("aria-valuenow"),e.style.width="100%",e.innerHTML=""}}},{key:"getBlockLink",value:function(){var t=document.createElement("a");return t.classList.add("mb-3","d-inline-block"),t}},{key:"getLinksHolder",value:function(){return document.createElement("div")}},{key:"getInputGroup",value:function(t,e){if(t){var r=document.createElement("div");r.classList.add("input-group"),r.appendChild(t);var n=document.createElement("div");n.classList.add("input-group-append"),r.appendChild(n);for(var i=0;i .form-group":"margin-bottom:0",".json-editor-btn-upload":"margin-top:1rem",".je-noindent .card":"padding:0;border:0",".je-tooltip:hover::before":"display:block;position:absolute;font-size:0.8em;color:%23fff;border-radius:0.2em;content:attr(title);background-color:%23000;margin-top:-2.5em;padding:0.3em",".je-tooltip:hover::after":"display:block;position:absolute;font-size:0.8em;color:%23fff",".select2-container--default .select2-selection--single":"height:calc(1.5em%20%2B%200.75rem%20%2B%202px)",".select2-container--default .select2-selection--single .select2-selection__arrow":"height:calc(1.5em%20%2B%200.75rem%20%2B%202px)",".select2-container--default .select2-selection--single .select2-selection__rendered":"line-height:calc(1.5em%20%2B%200.75rem%20%2B%202px)",".selectize-control.form-control":"padding:0",".selectize-dropdown.form-control":"padding:0;height:auto",".je-upload-preview img":"float:left;margin:0%200.5rem%200.5rem%200;max-width:100%25;max-height:5rem",".je-dropzone":"position:relative;margin:0.5rem%200;border:2px%20dashed%20black;width:100%25;height:60px;background:teal;transition:all%200.5s",".je-dropzone:before":"position:absolute;content:attr(data-text);color:rgba(0%2C%200%2C%200%2C%200.6);left:50%25;top:50%25;transform:translate(-50%25%2C%20-50%25)",".je-dropzone.valid-dropzone":"background:green",".je-dropzone.invalid-dropzone":"background:red"};var el={disable_theme_rules:!1,input_size:"normal",object_indent:!0,object_background:"bg-light",object_text:"",table_border:!1,table_zebrastyle:!1,tooltip:"bootstrap"},rl=function(t){function e(t){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),Ys(this,e,[t,el])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&tl(t,e)}(e,t),r=e,(n=[{key:"getSelectInput",value:function(t,r){var n=Ks(Xs(e.prototype),"getSelectInput",this).call(this,t);return n.classList.add("form-control"),n.classList.add("form-select"),"small"===this.options.input_size&&n.classList.add("form-control-sm"),"large"===this.options.input_size&&n.classList.add("form-control-lg"),n}},{key:"getContainer",value:function(){var t=document.createElement("div");return this.options.object_indent||t.classList.add("je-noindent"),t}},{key:"getOptInSwitch",value:function(t){var e=this.getHiddenLabel(t+" opt-in");e.setAttribute("for",t+"-opt-in");var r=document.createElement("div");r.classList.add("form-check","form-switch","d-inline-block","fs-6");var n=document.createElement("input");n.setAttribute("type","checkbox"),n.setAttribute("role","switch"),n.setAttribute("id",t+"-opt-in"),n.classList.add("form-check-input","json-editor-opt-in");var i=document.createElement("label");i.setAttribute("for",t+"-opt-in"),i.classList.add("form-check-label");var o=document.createElement("span");return o.classList.add("visually-hidden"),o.textContent=t+"-opt-in",i.appendChild(o),r.appendChild(n),r.appendChild(i),{label:e,checkbox:n,container:r}}},{key:"setGridColumnSize",value:function(t,e,r){t.classList.add("col-md-".concat(e)),r&&t.classList.add("offset-md-".concat(r))}},{key:"afterInputReady",value:function(t){if(!t.controlgroup){var e=t.name;t.id=e;var r=t.parentNode.parentNode.getElementsByTagName("label")[0];r&&(r.classList.add("form-label"),r.htmlFor=e),t.controlgroup=this.closest(t,".form-group")}}},{key:"getTextareaInput",value:function(){var t=document.createElement("textarea");return t.classList.add("form-control"),"small"===this.options.input_size&&t.classList.add("form-control-sm"),"large"===this.options.input_size&&t.classList.add("form-control-lg"),t}},{key:"getRangeInput",value:function(t,r,n,i,o){var a=Ks(Xs(e.prototype),"getRangeInput",this).call(this,t,r,n,i,o);return a.classList.remove("form-control"),a.classList.add("form-range"),a}},{key:"getStepperButtons",value:function(t){var e=document.createElement("div"),r=document.createElement("button");r.setAttribute("type","button");var n=document.createElement("button");n.setAttribute("type","button"),e.appendChild(r),e.appendChild(t),e.appendChild(n),e.classList.add("input-group"),r.classList.add("btn"),r.classList.add("btn-secondary"),r.classList.add("stepper-down"),n.classList.add("btn"),n.classList.add("btn-secondary"),n.classList.add("stepper-up"),t.getAttribute("readonly")&&(r.setAttribute("disabled",!0),n.setAttribute("disabled",!0)),r.textContent="-",n.textContent="+";var i=function(t,e){t.value=Number(e||t.value),t.setAttribute("initialized","1")},o=t.getAttribute("min"),a=t.getAttribute("max");return t.addEventListener("change",(function(){t.getAttribute("initialized")||t.setAttribute("initialized","1")})),r.addEventListener("click",(function(){t.getAttribute("initialized")?o?Number(t.value)>Number(o)&&t.stepDown():t.stepDown():i(t,o),c(t,"change")})),n.addEventListener("click",(function(){t.getAttribute("initialized")?a?Number(t.value)
    "),e.classList.add("row"),e}},{key:"addTab",value:function(t,e){t.children[0].children[0].appendChild(e)}},{key:"getTabContentHolder",value:function(t){return t.children[1].children[0]}},{key:"getTopTabHolder",value:function(t){var e=void 0===t?"":t,r=document.createElement("div");return r.classList.add("card"),r.innerHTML="
    "),r}},{key:"getTab",value:function(t,e){var r=document.createElement("li");r.classList.add("nav-item");var n=document.createElement("a");return n.classList.add("nav-link"),n.setAttribute("href","#".concat(e)),n.setAttribute("data-toggle","tab"),n.appendChild(t),r.appendChild(n),r}},{key:"getTopTab",value:function(t,e){var r=document.createElement("li");r.classList.add("nav-item");var n=document.createElement("a");return n.classList.add("nav-link"),n.setAttribute("href","#".concat(e)),n.setAttribute("data-toggle","tab"),n.appendChild(t),r.appendChild(n),r}},{key:"getTabContent",value:function(){var t=document.createElement("div");return t.classList.add("tab-pane"),t.setAttribute("role","tabpanel"),t}},{key:"getTopTabContent",value:function(){var t=document.createElement("div");return t.classList.add("tab-pane"),t.setAttribute("role","tabpanel"),t}},{key:"markTabActive",value:function(t){t.tab.firstChild.classList.add("active"),void 0!==t.rowPane?t.rowPane.classList.add("active"):t.container.classList.add("active")}},{key:"markTabInactive",value:function(t){t.tab.firstChild.classList.remove("active"),void 0!==t.rowPane?t.rowPane.classList.remove("active"):t.container.classList.remove("active")}},{key:"insertBasicTopTab",value:function(t,e){e.children[0].children[0].insertBefore(t,e.children[0].children[0].firstChild)}},{key:"addTopTab",value:function(t,e){t.children[0].children[0].appendChild(e)}},{key:"getTopTabContentHolder",value:function(t){return t.children[1].children[0]}},{key:"getFirstTab",value:function(t){return t.firstChild.firstChild.firstChild}},{key:"getProgressBar",value:function(){var t=document.createElement("div");t.classList.add("progress");var e=document.createElement("div");return e.classList.add("progress-bar"),e.setAttribute("role","progressbar"),e.setAttribute("aria-valuenow",0),e.setAttribute("aria-valuemin",0),e.setAttribute("aria-valuenax",100),e.innerHTML="".concat(0,"%"),t.appendChild(e),t}},{key:"updateProgressBar",value:function(t,e){if(t){var r=t.firstChild,n="".concat(e,"%");r.setAttribute("aria-valuenow",e),r.style.width=n,r.innerHTML=n}}},{key:"updateProgressBarUnknown",value:function(t){if(t){var e=t.firstChild;t.classList.add("progress","progress-striped","active"),e.removeAttribute("aria-valuenow"),e.style.width="100%",e.innerHTML=""}}},{key:"getBlockLink",value:function(){var t=document.createElement("a");return t.classList.add("mb-3","d-inline-block"),t}},{key:"getLinksHolder",value:function(){return document.createElement("div")}},{key:"getInputGroup",value:function(t,e){if(t){var r=document.createElement("div");r.classList.add("input-group"),r.appendChild(t);for(var n=0;n .form-group":"margin-bottom:0",".json-editor-btn-upload":"margin-top:1rem",".je-noindent .card":"padding:0;border:0",".je-tooltip:hover::before":"display:block;position:absolute;font-size:0.8em;color:%23fff;border-radius:0.2em;content:attr(title);background-color:%23000;margin-top:-2.5em;padding:0.3em",".je-tooltip:hover::after":"display:block;position:absolute;font-size:0.8em;color:%23fff",".select2-container--default .select2-selection--single":"height:calc(1.5em%20%2B%200.75rem%20%2B%202px)",".select2-container--default .select2-selection--single .select2-selection__arrow":"height:calc(1.5em%20%2B%200.75rem%20%2B%202px)",".select2-container--default .select2-selection--single .select2-selection__rendered":"line-height:calc(1.5em%20%2B%200.75rem%20%2B%202px)",".selectize-control.form-control":"padding:0",".selectize-dropdown.form-control":"padding:0;height:auto",".je-upload-preview img":"float:left;margin:0%200.5rem%200.5rem%200;max-width:100%25;max-height:5rem",".je-dropzone":"position:relative;margin:0.5rem%200;border:2px%20dashed%20black;width:100%25;height:60px;background:teal;transition:all%200.5s",".je-dropzone:before":"position:absolute;content:attr(data-text);color:rgba(0%2C%200%2C%200%2C%200.6);left:50%25;top:50%25;transform:translate(-50%25%2C%20-50%25)",".je-dropzone.valid-dropzone":"background:green",".je-dropzone.invalid-dropzone":"background:red"};var hl=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),al(this,e,arguments)}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ul(t,e)}(e,t),r=e,(n=[{key:"getTable",value:function(){var t=ll(cl(e.prototype),"getTable",this).call(this);return t.setAttribute("cellpadding",5),t.setAttribute("cellspacing",0),t}},{key:"getTableHeaderCell",value:function(t){var r=ll(cl(e.prototype),"getTableHeaderCell",this).call(this,t);return r.classList.add("ui-state-active"),r.style.fontWeight="bold",r}},{key:"getTableCell",value:function(){var t=ll(cl(e.prototype),"getTableCell",this).call(this);return t.classList.add("ui-widget-content"),t}},{key:"getHeaderButtonHolder",value:function(){var t=this.getButtonHolder();return t.style.marginLeft="10px",t.style.fontSize=".6em",t.style.display="inline-block",t}},{key:"getFormInputDescription",value:function(t){var e=this.getDescription(t);return e.style.marginLeft="10px",e.style.display="inline-block",e}},{key:"getFormControl",value:function(t,r,n,i){var o=ll(cl(e.prototype),"getFormControl",this).call(this,t,r,n,i);return"checkbox"===r.type?(o.style.lineHeight="25px",o.style.padding="3px 0"):o.style.padding="4px 0 8px 0",o}},{key:"getDescription",value:function(t){var e=document.createElement("span");return e.style.fontSize=".8em",e.style.fontStyle="italic",window.DOMPurify?e.innerHTML=window.DOMPurify.sanitize(t):e.textContent=this.cleanText(t),e}},{key:"getButtonHolder",value:function(){var t=document.createElement("div");return t.classList.add("ui-buttonset"),t.style.fontSize=".7em",t}},{key:"getFormInputLabel",value:function(t,e){var r=document.createElement("label");return r.style.fontWeight="bold",r.style.display="block",r.textContent=t,e&&r.classList.add("required"),r}},{key:"getButton",value:function(t,e,r){var n=document.createElement("button");n.classList.add("ui-button","ui-widget","ui-state-default","ui-corner-all"),e&&!t?(n.classList.add("ui-button-icon-only"),e.classList.add("ui-button-icon-primary","ui-icon-primary"),n.appendChild(e)):e?(n.classList.add("ui-button-text-icon-primary"),e.classList.add("ui-button-icon-primary","ui-icon-primary"),n.appendChild(e)):n.classList.add("ui-button-text-only");var i=document.createElement("span");return i.classList.add("ui-button-text"),i.textContent=t||r||".",n.appendChild(i),n.setAttribute("title",r),n}},{key:"setButtonText",value:function(t,e,r,n){t.innerHTML="",t.classList.add("ui-button","ui-widget","ui-state-default","ui-corner-all"),r&&!e?(t.classList.add("ui-button-icon-only"),r.classList.add("ui-button-icon-primary","ui-icon-primary"),t.appendChild(r)):r?(t.classList.add("ui-button-text-icon-primary"),r.classList.add("ui-button-icon-primary","ui-icon-primary"),t.appendChild(r)):t.classList.add("ui-button-text-only");var i=document.createElement("span");i.classList.add("ui-button-text"),i.textContent=e||n||".",t.appendChild(i),t.setAttribute("title",n)}},{key:"getIndentedPanel",value:function(){var t=document.createElement("div");return t.classList.add("ui-widget-content","ui-corner-all"),t.style.padding="1em 1.4em",t.style.marginBottom="20px",t}},{key:"afterInputReady",value:function(t){if(!t.controls&&(t.controls=this.closest(t,".form-control"),this.queuedInputErrorText)){var e=this.queuedInputErrorText;delete this.queuedInputErrorText,this.addInputError(t,e)}}},{key:"addInputError",value:function(t,e){t.controls?(t.errmsg?t.errmsg.style.display="":(t.errmsg=document.createElement("div"),t.errmsg.classList.add("ui-state-error"),t.controls.appendChild(t.errmsg)),t.errmsg.textContent=e):this.queuedInputErrorText=e}},{key:"removeInputError",value:function(t){t.controls||delete this.queuedInputErrorText,t.errmsg&&(t.errmsg.style.display="none")}},{key:"markTabActive",value:function(t){t.tab.classList.remove("ui-widget-header"),t.tab.classList.add("ui-state-active"),void 0!==t.rowPane?t.rowPane.style.display="":t.container.style.display=""}},{key:"markTabInactive",value:function(t){t.tab.classList.add("ui-widget-header"),t.tab.classList.remove("ui-state-active"),void 0!==t.rowPane?t.rowPane.style.display="none":t.container.style.display="none"}}])&&il(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(bs);function pl(t){return pl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},pl(t)}function dl(t,e){for(var r=0;r'),r}},{key:"getTopTabHolder",value:function(t){var e=void 0===t?"":t,r=document.createElement("div");return r.innerHTML='
      '),r}},{key:"getTab",value:function(t,e){var r=document.createElement("a");return r.classList.add("btn","btn-secondary","btn-block"),r.setAttribute("href","#".concat(e)),r.appendChild(t),r}},{key:"getTopTab",value:function(t,e){var r=document.createElement("li");r.id=e,r.classList.add("tab-item");var n=document.createElement("a");return n.setAttribute("href","#".concat(e)),n.appendChild(t),r.appendChild(n),r}},{key:"markTabActive",value:function(t){t.tab.classList.add("active"),void 0!==t.rowPane?t.rowPane.style.display="":t.container.style.display=""}},{key:"markTabInactive",value:function(t){t.tab.classList.remove("active"),void 0!==t.rowPane?t.rowPane.style.display="none":t.container.style.display="none"}},{key:"afterInputReady",value:function(t){if("select"===t.localName)if(t.classList.contains("selectized")){var e=t.nextSibling;e&&(e.classList.remove("form-select"),Array.from(e.querySelectorAll(".form-select")).forEach((function(t){t.classList.remove("form-select")})))}else if(t.classList.contains("select2-hidden-accessible")){var r=t.nextSibling;r&&r.querySelector(".select2-selection--single")&&r.classList.add("form-select")}t.controlgroup||(t.controlgroup=this.closest(t,".form-group"),this.closest(t,".compact")&&(t.controlgroup.style.marginBottom=0))}},{key:"addInputError",value:function(t,e){t.controlgroup&&(t.controlgroup.classList.add("has-error"),t.errmsg||(t.errmsg=document.createElement("p"),t.errmsg.classList.add("form-input-hint"),t.controlgroup.appendChild(t.errmsg)),t.errmsg.classList.remove("d-hide"),t.errmsg.textContent=e,t.errmsg.setAttribute("role","alert"))}},{key:"removeInputError",value:function(t){t.errmsg&&(t.errmsg.classList.add("d-hide"),t.controlgroup.classList.remove("has-error"))}}])&&_l(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(bs);function Ll(t){return Ll="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ll(t)}function Tl(t,e){for(var r=0;r label + .btn-group":"margin-left:1rem",".text-right > button":"margin-right:0%20!important",".text-left > button":"margin-left:0%20!important",".property-selector":"font-size:0.7rem;font-weight:normal;max-height:260px%20!important;width:395px%20!important",".property-selector .form-checkbox":"margin:0",textarea:"width:100%25;min-height:2rem;resize:vertical",table:"border-collapse:collapse",".table td":"padding:0.4rem%200.4rem",".mr-5":"margin-right:1rem%20!important","div[data-schematype]:not([data-schematype='object'])":"transition:0.5s","div[data-schematype]:not([data-schematype='object']):hover":"background-color:%23eee",".je-table-border td":"border:0.05rem%20solid%20%23dadee4%20!important",".btn-info":"font-size:0.5rem;font-weight:bold;height:0.8rem;padding:0.15rem%200;line-height:0.8;margin:0.3rem%200%200.3rem%200.1rem",".je-label + select":"min-width:5rem",".je-label":"font-weight:600",".btn-action.btn-info":"width:0.8rem",".je-border":"border:0.05rem%20solid%20%23dadee4",".je-panel":"padding:0.2rem;margin:0.2rem;background-color:rgba(218%2C%20222%2C%20228%2C%200.1)",".je-panel-top":"padding:0.2rem;margin:0.2rem;background-color:rgba(218%2C%20222%2C%20228%2C%200.1)",".required:after":"content:%22%20*%22;color:red;font:inherit",".je-align-bottom":"margin-top:auto",".je-desc":"font-size:smaller;margin:0.2rem%200",".je-upload-preview img":"float:left;margin:0%200.5rem%200.5rem%200;max-width:100%25;max-height:5rem;border:3px%20solid%20white;box-shadow:0px%200px%208px%20rgba(0%2C%200%2C%200%2C%200.3);box-sizing:border-box",".je-dropzone":"position:relative;margin:0.5rem%200;border:2px%20dashed%20black;width:100%25;height:60px;background:teal;transition:all%200.5s",".je-dropzone:before":"position:absolute;content:attr(data-text);color:rgba(0%2C%200%2C%200%2C%200.6);left:50%25;top:50%25;transform:translate(-50%25%2C%20-50%25)",".je-dropzone.valid-dropzone":"background:green",".je-dropzone.invalid-dropzone":"background:red",".columns .container.je-noindent":"padding-left:0;padding-right:0",".selectize-control.multi .item":"background:var(--primary-color)%20!important",".select2-container--default .select2-selection--single .select2-selection__arrow":"display:none",".select2-container--default .select2-selection--single":"border:none",".select2-container .select2-selection--single .select2-selection__rendered":"padding:0",".select2-container .select2-search--inline .select2-search__field":"margin-top:0",".select2-container--default.select2-container--focus .select2-selection--multiple":"border:0.05rem%20solid%20var(--gray-color)",".select2-container--default .select2-selection--multiple .select2-selection__choice":"margin:0.4rem%200.2rem%200.2rem%200;padding:2px%205px;background-color:var(--primary-color);color:var(--light-color)",".select2-container--default .select2-search--inline .select2-search__field":"line-height:normal",".choices":"margin-bottom:auto",".choices__list--multiple .choices__item":"border:none;background-color:var(--primary-color);color:var(--light-color)",".choices[data-type*='select-multiple'] .choices__button":"border-left:0.05rem%20solid%20%232826a6",".choices__inner":"font-size:inherit;min-height:20px;padding:4px%207.5px%204px%203.75px",".choices[data-type*='select-one'] .choices__inner":"padding-bottom:4px",".choices__list--dropdown .choices__item":"font-size:inherit"};var Fl={disable_theme_rules:!1,label_bold:!1,object_panel_default:!0,object_indent:!0,object_border:!1,table_border:!1,table_hdiv:!1,table_zebrastyle:!1,input_size:"small",enable_compact:!1},Vl=function(t){function e(t){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),Rl(this,e,[t,Fl])}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Dl(t,e)}(e,t),r=e,(n=[{key:"getOptInSwitch",value:function(t){var e=this.getHiddenLabel(t+" opt-in");e.setAttribute("for",t+"-opt-in");var r=document.createElement("label");r.classList.add("switch");var n=document.createElement("input");n.setAttribute("type","checkbox"),n.setAttribute("id",t+"-opt-in"),n.classList.add("json-editor-opt-in");var i=document.createElement("span");i.classList.add("switch-slider","round");var o=document.createElement("span");return o.classList.add("sr-only"),o.textContent=t+"-opt-in",r.appendChild(o),r.appendChild(n),r.appendChild(i),{label:e,checkbox:n,container:r}}},{key:"getGridContainer",value:function(){var t=document.createElement("div");return t.classList.add("flex","flex-col","w-full"),this.options.object_indent||t.classList.add("je-noindent"),t}},{key:"getGridRow",value:function(){var t=document.createElement("div");return t.classList.add("flex","flex-wrap","w-full"),t}},{key:"getGridColumn",value:function(){var t=document.createElement("div");return t.classList.add("flex","flex-col"),t}},{key:"setGridColumnSize",value:function(t,e,r){e>0&&e<12?t.classList.add("w-".concat(e,"/12"),"px-1"):t.classList.add("w-full","px-1"),r&&(t.style.marginLeft="".concat(100/12*r,"%"))}},{key:"getIndentedPanel",value:function(){var t=document.createElement("div");return this.options.object_panel_default?t.classList.add("w-full","p-1"):t.classList.add("relative","flex","flex-col","rounded","break-words","border","bg-white","border-0","border-blue-400","p-1","shadow-md"),this.options.object_border&&t.classList.add("je-border"),t}},{key:"getTopIndentedPanel",value:function(){var t=document.createElement("div");return this.options.object_panel_default?t.classList.add("w-full","m-2"):t.classList.add("relative","flex","flex-col","rounded","break-words","border","bg-white","border-0","border-blue-400","p-1","shadow-md"),this.options.object_border&&t.classList.add("je-border"),t}},{key:"getTitle",value:function(){return this.translateProperty(this.schema.title)}},{key:"getSelectInput",value:function(t,r){var n=Bl(Nl(e.prototype),"getSelectInput",this).call(this,t);return r?n.classList.add("form-multiselect","block","py-0","h-auto","w-full","px-1","text-sm","text-black","leading-normal","bg-white","border","border-grey","rounded"):n.classList.add("form-select","block","py-0","h-6","w-full","px-1","text-sm","text-black","leading-normal","bg-white","border","border-grey","rounded"),this.options.enable_compact&&n.classList.add("compact"),n}},{key:"afterInputReady",value:function(t){t.controlgroup||(t.controlgroup=this.closest(t,".form-group"),this.closest(t,".compact")&&(t.controlgroup.style.marginBottom=0))}},{key:"getTextareaInput",value:function(){var t=Bl(Nl(e.prototype),"getTextareaInput",this).call(this);return t.classList.add("block","w-full","px-1","text-sm","leading-normal","bg-white","text-black","border","border-grey","rounded"),this.options.enable_compact&&t.classList.add("compact"),t.style.height=0,t}},{key:"getRangeInput",value:function(t,e,r){var n=this.getFormInputField("range");return n.classList.add("slider"),this.options.enable_compact&&n.classList.add("compact"),n.setAttribute("oninput",'this.setAttribute("value", this.value)'),n.setAttribute("min",t),n.setAttribute("max",e),n.setAttribute("step",r),n}},{key:"getRangeControl",value:function(t,r){var n=Bl(Nl(e.prototype),"getRangeControl",this).call(this,t,r);return n.classList.add("text-center","text-black"),n}},{key:"getCheckbox",value:function(){var t=this.getFormInputField("checkbox");return t.classList.add("form-checkbox","text-red-600"),t}},{key:"getCheckboxLabel",value:function(t,r){var n=Bl(Nl(e.prototype),"getCheckboxLabel",this).call(this,t,r);return n.classList.add("inline-flex","items-center"),n}},{key:"getFormCheckboxControl",value:function(t,e,r){return t.insertBefore(e,t.firstChild),r&&t.classList.add("inline-flex flex-row"),t}},{key:"getMultiCheckboxHolder",value:function(t,r,n,i){var o=Bl(Nl(e.prototype),"getMultiCheckboxHolder",this).call(this,t,r,n,i);return o.classList.add("inline-flex","flex-col"),o}},{key:"getFormRadio",value:function(t){var e=this.getFormInputField("radio");for(var r in e.classList.add("form-radio","text-red-600"),t)e.setAttribute(r,t[r]);return e}},{key:"getFormRadioLabel",value:function(t,r){var n=Bl(Nl(e.prototype),"getFormRadioLabel",this).call(this,t,r);return n.classList.add("inline-flex","items-center","mr-2"),n}},{key:"getFormRadioControl",value:function(t,e,r){return t.insertBefore(e,t.firstChild),r&&t.classList.add("form-radio"),t}},{key:"getRadioHolder",value:function(t,r,n,i,o){var a=Bl(Nl(e.prototype),"getRadioHolder",this).call(this,r,n,i,o);return"h"===t.options.layout?a.classList.add("inline-flex","flex-row"):a.classList.add("inline-flex","flex-col"),a}},{key:"getFormInputLabel",value:function(t,r){var n=Bl(Nl(e.prototype),"getFormInputLabel",this).call(this,t,r);return this.options.label_bold?n.classList.add("font-bold"):n.classList.add("required"),n}},{key:"getFormInputField",value:function(t){var r=Bl(Nl(e.prototype),"getFormInputField",this).call(this,t);return["checkbox","radio"].includes(t)||r.classList.add("block","w-full","px-1","text-black","text-sm","leading-normal","bg-white","border","border-grey","rounded"),this.options.enable_compact&&r.classList.add("compact"),r}},{key:"getFormInputDescription",value:function(t){var e=document.createElement("p");return e.classList.add("block","mt-1","text-xs"),window.DOMPurify?e.innerHTML=window.DOMPurify.sanitize(t):e.textContent=this.cleanText(t),e}},{key:"getFormControl",value:function(t,e,r,n){var i=document.createElement("div");return i.classList.add("form-group","mb-1","w-full"),t&&(t.classList.add("text-xs"),"checkbox"===e.type&&(e.classList.add("form-checkbox","text-xs","text-red-600","mr-1"),t.classList.add("items-center","flex"),t=this.getFormCheckboxControl(t,e,!1,n)),"radio"===e.type&&(e.classList.add("form-radio","text-red-600","mr-1"),t.classList.add("items-center","flex"),t=this.getFormRadioControl(t,e,!1,n)),i.appendChild(t),!["checkbox","radio"].includes(e.type)&&n&&i.appendChild(n)),["checkbox","radio"].includes(e.type)||("small"===this.options.input_size?e.classList.add("text-xs"):"normal"===this.options.input_size?e.classList.add("text-base"):"large"===this.options.input_size&&e.classList.add("text-xl"),i.appendChild(e)),r&&i.appendChild(r),i}},{key:"getHeaderButtonHolder",value:function(){var t=this.getButtonHolder();return t.classList.add("text-sm"),t}},{key:"getButtonHolder",value:function(){var t=document.createElement("div");return t.classList.add("flex","relative","inline-flex","align-middle"),t}},{key:"getButton",value:function(t,r,n){var i=Bl(Nl(e.prototype),"getButton",this).call(this,t,r,n);return i.classList.add("inline-block","align-middle","text-center","text-sm","bg-blue-700","text-white","py-1","pr-1","m-2","shadow","select-none","whitespace-no-wrap","rounded"),i}},{key:"getInfoButton",value:function(t){var e=document.createElement("a");e.classList.add("tooltips","float-right"),e.innerHTML="ⓘ";var r=document.createElement("span");return r.innerHTML=t,e.appendChild(r),e}},{key:"getTable",value:function(){var t=Bl(Nl(e.prototype),"getTable",this).call(this);return this.options.table_border?t.classList.add("je-table-border"):t.classList.add("table","border","p-0"),t}},{key:"getTableRow",value:function(){var t=Bl(Nl(e.prototype),"getTableRow",this).call(this);return this.options.table_border&&t.classList.add("je-table-border"),this.options.table_zebrastyle&&t.classList.add("je-table-zebra"),t}},{key:"getTableHeaderCell",value:function(t){var r=Bl(Nl(e.prototype),"getTableHeaderCell",this).call(this,t);return this.options.table_border?r.classList.add("je-table-border"):this.options.table_hdiv?r.classList.add("je-table-hdiv"):r.classList.add("text-xs","border","p-0","m-0"),r}},{key:"getTableCell",value:function(){var t=Bl(Nl(e.prototype),"getTableCell",this).call(this);return this.options.table_border?t.classList.add("je-table-border"):this.options.table_hdiv?t.classList.add("je-table-hdiv"):t.classList.add("border-0","p-0","m-0"),t}},{key:"addInputError",value:function(t,e){t.controlgroup&&(t.controlgroup.classList.add("has-error"),t.controlgroup.classList.add("text-red-600"),t.errmsg?t.errmsg.style.display="":(t.errmsg=document.createElement("p"),t.errmsg.classList.add("block","mt-1","text-xs","text-red"),t.controlgroup.appendChild(t.errmsg)),t.errmsg.textContent=e)}},{key:"removeInputError",value:function(t){t.errmsg&&(t.errmsg.style.display="none",t.controlgroup.classList.remove("text-red-600"),t.controlgroup.classList.remove("has-error"))}},{key:"getTabHolder",value:function(t){var e=document.createElement("div"),r=void 0===t?"":t;return e.innerHTML="
        "),e.classList.add("flex"),e}},{key:"addTab",value:function(t,e){t.children[0].children[0].appendChild(e)}},{key:"getTopTabHolder",value:function(t){var e=void 0===t?"":t,r=document.createElement("div");return r.innerHTML="
        "),r}},{key:"getTab",value:function(t,e){var r=document.createElement("li");r.classList.add("nav-item","flex-col","text-center","text-white","bg-blue-500","shadow-md","border","p-2","mb-2","mr-2","hover:bg-blue-400","rounded");var n=document.createElement("a");return n.classList.add("nav-link","text-center"),n.setAttribute("href","#".concat(e)),n.setAttribute("data-toggle","tab"),n.appendChild(t),r.appendChild(n),r}},{key:"getTopTab",value:function(t,e){var r=document.createElement("li");r.classList.add("nav-item","flex","border-l","border-t","border-r");var n=document.createElement("a");return n.classList.add("nav-link","-mb-px","flex-row","text-center","bg-white","p-2","hover:bg-blue-400","rounded-t"),n.setAttribute("href","#".concat(e)),n.setAttribute("data-toggle","tab"),n.appendChild(t),r.appendChild(n),r}},{key:"getTabContent",value:function(){var t=document.createElement("div");return t.setAttribute("role","tabpanel"),t}},{key:"getTopTabContent",value:function(){var t=document.createElement("div");return t.setAttribute("role","tabpanel"),t}},{key:"markTabActive",value:function(t){t.tab.firstChild.classList.add("block"),!0===t.tab.firstChild.classList.contains("border-b")?(t.tab.firstChild.classList.add("border-b-0"),t.tab.firstChild.classList.remove("border-b")):t.tab.firstChild.classList.add("border-b-0"),!0===t.container.classList.contains("hidden")?(t.container.classList.remove("hidden"),t.container.classList.add("block")):t.container.classList.add("block")}},{key:"markTabInactive",value:function(t){!0===t.tab.firstChild.classList.contains("border-b-0")?(t.tab.firstChild.classList.add("border-b"),t.tab.firstChild.classList.remove("border-b-0")):t.tab.firstChild.classList.add("border-b"),!0===t.container.classList.contains("block")&&(t.container.classList.remove("block"),t.container.classList.add("hidden"))}},{key:"getProgressBar",value:function(){var t=document.createElement("div");t.classList.add("progress");var e=document.createElement("div");return e.classList.add("bg-blue","leading-none","py-1","text-xs","text-center","text-white"),e.setAttribute("role","progressbar"),e.setAttribute("aria-valuenow",0),e.setAttribute("aria-valuemin",0),e.setAttribute("aria-valuenax",100),e.innerHTML="".concat(0,"%"),t.appendChild(e),t}},{key:"updateProgressBar",value:function(t,e){if(t){var r=t.firstChild,n="".concat(e,"%");r.setAttribute("aria-valuenow",e),r.style.width=n,r.innerHTML=n}}},{key:"updateProgressBarUnknown",value:function(t){if(t){var e=t.firstChild;t.classList.add("progress","bg-blue","leading-none","py-1","text-xs","text-center","text-white","block"),e.removeAttribute("aria-valuenow"),e.classList.add("w-full"),e.innerHTML=""}}},{key:"getInputGroup",value:function(t,e){if(t){var r=document.createElement("div");r.classList.add("relative","items-stretch","w-full"),r.appendChild(t);var n=document.createElement("div");n.classList.add("-mr-1"),r.appendChild(n);for(var i=0;it.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var a=this.tryEntries[o],s=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var l=n.call(a,"catchLoc"),c=n.call(a,"finallyLoc");if(l&&c){if(this.prev=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),P(r),m}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;P(r)}return i}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:T(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),m}},e}function Gl(t,e,r,n,i,o,a){try{var s=t[o](a),l=s.value}catch(t){return void r(t)}s.done?e(l):Promise.resolve(l).then(n,i)}function $l(t,e){for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:{};if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!(e instanceof Element))throw new Error("element should be an instance of Element");this.element=e,this.options=l({},t.defaults.options,n),this.ready=!1,this.copyClipboard=null,this.schema=this.options.schema,this.template=this.options.template,this.translate=this.options.translate||t.defaults.translate,this.translateProperty=this.options.translateProperty||t.defaults.translateProperty,this.uuid=0,this.__data={};var i=this.options.theme||t.defaults.theme,o=t.defaults.themes[i];if(!o)throw new Error("Unknown theme ".concat(i));this.element.setAttribute("data-theme",i),this.element.classList.add("je-not-loaded"),this.element.classList.remove("je-ready"),this.theme=new o(this);var a=l(zl,this.getEditorsRules()),s=function(t,e,n){return n?r.addNewStyleRulesToShadowRoot(t,e,n):r.addNewStyleRules(t,e)};if(!this.theme.options.disable_theme_rules){var c=u(this.element);s("default",a,c),void 0!==o.rules&&s(i,o.rules,c)}var h=t.defaults.iconlibs[this.options.iconlib||t.defaults.iconlib];h&&(this.iconlib=new h),this.root_container=this.theme.getContainer(),this.element.appendChild(this.root_container),this.promise=this.load()}return e=t,r=[{key:"load",value:(n=Ul().mark((function e(){var r,n,i,o,a,s,l=this;return Ul().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=document.location.origin+document.location.pathname.toString(),(n=new ia(this.options)).onSchemaLoaded=function(t){l.trigger("schemaLoaded",t)},n.onAllSchemasLoaded=function(){l.trigger("allSchemasLoaded")},this.expandSchema=function(t){return n.expandSchema(t)},this.expandRefs=function(t,e){return n.expandRefs(t,e)},i=document.location.toString(),e.next=9,n.load(this.schema,r,i);case 9:o=e.sent,a=this.options.custom_validators?{custom_validators:this.options.custom_validators}:{},this.validator=new yn(this,null,a,t.defaults),s=this.getEditorClass(o),this.root=this.createEditor(s,{jsoneditor:this,schema:o,required:!0,container:this.root_container}),this.root.preBuild(),this.root.build(),this.root.postBuild(),h(this.options,"startval")&&this.root.setValue(this.options.startval),this.validation_results=this.validator.validate(this.root.getValue()),this.root.showValidationErrors(this.validation_results),this.ready=!0,this.element.classList.remove("je-not-loaded"),this.element.classList.add("je-ready"),window.requestAnimationFrame((function(){l.ready&&(l.validation_results=l.validator.validate(l.root.getValue()),l.root.showValidationErrors(l.validation_results),l.trigger("ready"),l.trigger("change"))}));case 24:case"end":return e.stop()}}),e,this)})),i=function(){var t=this,e=arguments;return new Promise((function(r,i){var o=n.apply(t,e);function a(t){Gl(o,r,i,a,s,"next",t)}function s(t){Gl(o,r,i,a,s,"throw",t)}a(void 0)}))},function(){return i.apply(this,arguments)})},{key:"getValue",value:function(){if(!this.ready)throw new Error("JSON Editor not ready yet. Make sure the load method is complete");return this.root.getValue()}},{key:"setValue",value:function(t){if(!this.ready)throw new Error("JSON Editor not ready yet. Make sure the load method is complete");return this.root.setValue(t),this}},{key:"validate",value:function(t){if(!this.ready)throw new Error("JSON Editor not ready yet. Make sure the load method is complete");return 1===arguments.length?this.validator.validate(t):this.validation_results}},{key:"destroy",value:function(){this.destroyed||this.ready&&(this.schema=null,this.options=null,this.root.destroy(),this.root=null,this.root_container=null,this.validator=null,this.validation_results=null,this.theme=null,this.iconlib=null,this.template=null,this.__data=null,this.ready=!1,this.element.innerHTML="",this.element.removeAttribute("data-theme"),this.destroyed=!0)}},{key:"on",value:function(t,e){return this.callbacks=this.callbacks||{},this.callbacks[t]=this.callbacks[t]||[],this.callbacks[t].push(e),this}},{key:"off",value:function(t,e){if(t&&e){this.callbacks=this.callbacks||{},this.callbacks[t]=this.callbacks[t]||[];for(var r=[],n=0;n2&&void 0!==arguments[2]?arguments[2]:1;return new e(r=l({},e.options||{},r),t.defaults,n)}},{key:"onChange",value:function(t){var e=this;if(this.ready&&(t&&this.trigger(t.event,t.data),!this.firing_change))return this.firing_change=!0,window.requestAnimationFrame((function(){e.firing_change=!1,e.ready&&(e.validation_results=e.validator.validate(e.root.getValue()),"never"!==e.options.show_errors?e.root.showValidationErrors(e.validation_results):e.root.showValidationErrors([]),e.trigger("change"))})),this}},{key:"compileTemplate",value:function(e){var r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t.defaults.template;if("string"==typeof n){if(!t.defaults.templates[n])throw new Error("Unknown template engine ".concat(n));if(!(r=t.defaults.templates[n]()))throw new Error("Template engine ".concat(n," missing required library."))}else r=n;if(!r)throw new Error("No template engine set");if(!r.compile)throw new Error("Invalid template engine set");return r.compile(e)}},{key:"_data",value:function(t,e,r){if(3!==arguments.length)return t.hasAttribute("data-jsoneditor-".concat(e))?this.__data[t.getAttribute("data-jsoneditor-".concat(e))]:null;var n;t.hasAttribute("data-jsoneditor-".concat(e))?n=t.getAttribute("data-jsoneditor-".concat(e)):(n=this.uuid++,t.setAttribute("data-jsoneditor-".concat(e),n)),this.__data[n]=r}},{key:"registerEditor",value:function(t){return this.editors=this.editors||{},this.editors[t.path]=t,this}},{key:"unregisterEditor",value:function(t){return this.editors=this.editors||{},this.editors[t.path]=null,this}},{key:"getEditor",value:function(t){if(this.editors)return this.editors[t]}},{key:"watch",value:function(t,e){return this.watchlist=this.watchlist||{},this.watchlist[t]=this.watchlist[t]||[],this.watchlist[t].push(e),this}},{key:"unwatch",value:function(t,e){if(!this.watchlist||!this.watchlist[t])return this;if(!e)return this.watchlist[t]=null,this;for(var r=[],n=0;n0;)n.deleteRule(0);Object.keys(e).forEach((function(r){var o="default"===t?r:"".concat(i,'[data-theme="').concat(t,'"] ').concat(r);n.insertRule?n.insertRule(o+" {"+decodeURIComponent(e[r])+"}",0):n.addRule&&n.addRule(o,decodeURIComponent(e[r]),0)}))}},{key:"addNewStyleRulesToShadowRoot",value:function(t,e,r){var n=this.element.nodeName.toLowerCase(),i="";Object.keys(e).forEach((function(r){var o="default"===t?r:"".concat(n,'[data-theme="').concat(t,'"] ').concat(r);i+=o+" {"+decodeURIComponent(e[r])+"}\n"}));var o,a=new CSSStyleSheet;a.replaceSync(i),r.adoptedStyleSheets=[].concat(function(t){if(Array.isArray(t))return ql(t)}(o=r.adoptedStyleSheets)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(o)||function(t,e){if(t){if("string"==typeof t)return ql(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ql(t,e):void 0}}(o)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),[a])}},{key:"showValidationErrors",value:function(t){var e=null!=t?t:this.validate();Object.values(this.editors).forEach((function(t){t&&(t.is_dirty=!0,t.showValidationErrors(e))}))}}],r&&$l(e.prototype,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,r,n,i}();Wl.defaults=Zo,Wl.AbstractEditor=_,Wl.AbstractTheme=bs,Wl.AbstractIconLib=ha,Object.assign(Wl.defaults.themes,Hl),Object.assign(Wl.defaults.editors,Uo),Object.assign(Wl.defaults.templates,oa),Object.assign(Wl.defaults.iconlibs,ds)})(),n})())); \ No newline at end of file diff --git a/static/js/mbus.mjs b/static/js/mbus.mjs new file mode 100644 index 0000000..da5f098 --- /dev/null +++ b/static/js/mbus.mjs @@ -0,0 +1,17 @@ +export class MessageBus { + constructor() { + this.bus = new EventTarget() + } + + subscribe(eventName, fn) { + this.bus.addEventListener(eventName, fn) + } + + unsubscribe(eventName, fn) { + this.bus.removeEventListener(eventName, fn) + } + + dispatch(eventName, data) { + this.bus.dispatchEvent(new CustomEvent(eventName, { detail: data })) + } +} diff --git a/static/less/main.less b/static/less/main.less index 6816a06..57f464d 100644 --- a/static/less/main.less +++ b/static/less/main.less @@ -9,7 +9,7 @@ html { body { margin: 0px; padding: 0px; - background-color: #333; + background-color: #444 !important; } *, @@ -26,14 +26,105 @@ body { cursor: pointer; } -#nodes { +.section { background-color: #fff; padding: 32px; border-radius: 8px; - margin: 32px; + display: none; + + &.show { + display: block; + } +} + +#layout { + display: grid; + grid-template-areas: + "menu menu" + "navigation details" + ; + grid-template-columns: min-content 1fr; + grid-gap: 32px; + padding: 32px; +} + +#menu { + grid-area: menu; + grid-template-columns: repeat(100, min-content); + grid-gap: 16px; + align-items: center; + + &.section { + display: grid; + padding: 16px 32px; + } + + .item { + cursor: pointer; + + &.selected { + font-weight: bold; + } + } +} + +#logo { + img { + height: 96px; + margin-right: 32px; + } +} + + +#nodes { + grid-area: navigation; width: min-content; } +#editor-node { + grid-area: details; +} + +#types { + grid-area: navigation; + + .group { + font-weight: bold; + white-space: nowrap; + margin-top: 32px; + margin-bottom: 8px; + + &:first-child { + margin-top: 0px; + } + } + + .type { + display: grid; + grid-template-columns: min-content 1fr; + grid-gap: 8px; + align-items: center; + cursor: pointer; + margin-bottom: 8px; + + .img { + img { + height: 24px; + display: inline; + } + } + + .title { + white-space: nowrap; + line-height: 24px; + } + } +} + +#editor-type-schema { + grid-area: details; +} + .node { display: grid; grid-template-columns: min-content min-content 100%; @@ -54,7 +145,7 @@ body { padding-right: 8px; &.leaf { - width: 36px; + width: 40px; img { display: none; } @@ -65,17 +156,18 @@ body { } } - .icon { - padding-right: 8px; + .type-icon { + padding-right: 4px; img { - filter: invert(.7) sepia(.5) hue-rotate(50deg) saturate(300%) brightness(0.85); + filter: invert(.7) sepia(.5) hue-rotate(50deg) saturate(300%) brightness(0.85) !important; } } .name { margin-bottom: 8px; line-height: 24px; + cursor: pointer; } .children { diff --git a/type.go b/type.go new file mode 100644 index 0000000..b639a07 --- /dev/null +++ b/type.go @@ -0,0 +1,76 @@ +package main + +import ( + // External + "github.com/jmoiron/sqlx" + + // Standard + "encoding/json" + "time" +) + +type NodeType struct { + ID int + Name string + SchemaRaw []byte `db:"schema_raw" json:"-"` + Schema any + Updated time.Time +} + +func GetType(typeID int) (typ NodeType, err error) { + row := db.QueryRowx(` + SELECT + id, + name, + schema AS schema_raw, + updated + FROM public.type + WHERE + id = $1 + `, typeID) + + err = row.StructScan(&typ) + if err != nil { + return + } + + err = json.Unmarshal(typ.SchemaRaw, &typ.Schema) + return +} + +func GetTypes() (types []NodeType, err error) { + types = []NodeType{} + var rows *sqlx.Rows + rows, err = db.Queryx(` + SELECT + id, + name, + updated, + schema AS schema_raw + FROM + public.type + ORDER BY + name ASC + `) + if err != nil { + return + } + defer rows.Close() + + for rows.Next() { + var typ NodeType + err = rows.StructScan(&typ) + if err != nil { + return + } + + err = json.Unmarshal(typ.SchemaRaw, &typ.Schema) + if err != nil { + return + } + + types = append(types, typ) + } + + return +} diff --git a/views/layouts/main.gotmpl b/views/layouts/main.gotmpl index 1d4d718..b45884f 100644 --- a/views/layouts/main.gotmpl +++ b/views/layouts/main.gotmpl @@ -4,6 +4,12 @@ +
        {{ block "page" . }}{{ end }}
        diff --git a/views/pages/app.gotmpl b/views/pages/app.gotmpl index 91b6fbf..06ee78a 100644 --- a/views/pages/app.gotmpl +++ b/views/pages/app.gotmpl @@ -1,16 +1,56 @@ {{ define "page" }} - -fetch('/nodes/tree/0?depth=2') - .then(data => data.json()) - .then(json => { - const top = document.getElementById('nodes') - const topNode = new TreeNode(top, json) - topNode.render() - }) + + + -
        + +
        + + +
        +
        +
        +
        + +
        +
        + +
        +
        +
        + + + + + {{ end }} diff --git a/webserver.go b/webserver.go index b5dabb0..ac88763 100644 --- a/webserver.go +++ b/webserver.go @@ -7,6 +7,7 @@ import ( // Standard "encoding/json" "fmt" + "io" "io/fs" "net/http" "strconv" @@ -31,11 +32,27 @@ func initWebserver() (err error) { http.HandleFunc("/", pageIndex) http.HandleFunc("/app", pageApp) http.HandleFunc("/nodes/tree/{startNode}", actionNodesTree) + http.HandleFunc("/nodes/{nodeID}", actionNode) + http.HandleFunc("/nodes/update/{nodeID}", actionNodeUpdate) + http.HandleFunc("/types/{typeID}", actionType) + http.HandleFunc("/types/", actionTypesAll) err = http.ListenAndServe(address, nil) return } +func httpError(w http.ResponseWriter, err error) { // {{{ + out := struct { + OK bool + Error string + }{ + false, + err.Error(), + } + j, _ := json.Marshal(out) + w.Write(j) +} // }}} + func pageIndex(w http.ResponseWriter, r *http.Request) { // {{{ if r.URL.Path == "/" { http.Redirect(w, r, "/app", http.StatusSeeOther) @@ -43,7 +60,6 @@ func pageIndex(w http.ResponseWriter, r *http.Request) { // {{{ engine.StaticResource(w, r) } } // }}} - func pageApp(w http.ResponseWriter, r *http.Request) { // {{{ page := NewPage("app") err := engine.Render(page, w, r) @@ -64,11 +80,96 @@ func actionNodesTree(w http.ResponseWriter, r *http.Request) { // {{{ maxDepth = 3 } - topNode, err := GetNode(startNode, maxDepth) + topNode, err := GetNodeTree(startNode, maxDepth) if err != nil { - logger.Error("test", "error", err) + httpError(w, err) + return } - - j, _ := json.Marshal(topNode) + + out := struct { + OK bool + Nodes *Node + }{ + true, + topNode, + } + + j, _ := json.Marshal(out) w.Write(j) } // }}} +func actionNode(w http.ResponseWriter, r *http.Request) { // {{{ + nodeID := 0 + nodeIDStr := r.PathValue("nodeID") + nodeID, _ = strconv.Atoi(nodeIDStr) + + node, err := GetNode(nodeID) + if err != nil { + httpError(w, err) + return + } + + out := struct { + OK bool + Node Node + }{ + true, + node, + } + j, _ := json.Marshal(out) + w.Write(j) +} // }}} +func actionNodeUpdate(w http.ResponseWriter, r *http.Request) { // {{{ + nodeID := 0 + nodeIDStr := r.PathValue("nodeID") + nodeID, _ = strconv.Atoi(nodeIDStr) + + data, _ := io.ReadAll(r.Body) + + err := UpdateNode(nodeID, data) + if err != nil { + httpError(w, err) + return + } + + out := struct { + OK bool + }{ + true, + } + j, _ := json.Marshal(out) + w.Write(j) +} // }}} +func actionType(w http.ResponseWriter, r *http.Request) { // {{{ + typeID := 0 + typeIDStr := r.PathValue("typeID") + typeID, _ = strconv.Atoi(typeIDStr) + + typ, err := GetType(typeID) + if err != nil { + httpError(w, err) + return + } + + j, _ := json.Marshal(typ) + w.Write(j) +} // }}} +func actionTypesAll(w http.ResponseWriter, r *http.Request) { // {{{ + types, err := GetTypes() + if err != nil { + httpError(w, err) + return + } + + out := struct { + OK bool + Types []NodeType + }{ + true, + types, + } + + j, _ := json.Marshal(out) + w.Write(j) +} // }}} + +// vim: foldmethod=marker