diff --git a/.nvmrc b/.nvmrc index 04025e62..05f04686 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -v21.5.0 \ No newline at end of file +v22.11.0 \ No newline at end of file diff --git a/dist/settings.d.ts b/dist/settings.d.ts index 73b8977f..104e429a 100644 --- a/dist/settings.d.ts +++ b/dist/settings.d.ts @@ -18,7 +18,7 @@ export default class Settings { searchHighlight: boolean; closeOnSelect: boolean; contentLocation: HTMLElement | null; - contentPosition: 'relative' | 'absolute'; + contentPosition: 'relative' | 'absolute' | 'fixed'; openPosition: 'auto' | 'up' | 'down'; placeholderText: string; allowDeselect: boolean; diff --git a/dist/slimselect.cjs.js b/dist/slimselect.cjs.js index 02611072..749bdad4 100644 --- a/dist/slimselect.cjs.js +++ b/dist/slimselect.cjs.js @@ -426,7 +426,7 @@ class Render { } } } - if (this.settings.contentPosition === 'relative') { + if (this.settings.contentPosition === 'relative' || this.settings.contentPosition === 'fixed') { this.content.main.classList.add('ss-' + this.settings.contentPosition); } } @@ -465,6 +465,9 @@ class Render { this.callbacks.close(); return false; } + if (e.key.length === 1) { + this.callbacks.open(); + } return true; }; main.onclick = (e) => { @@ -1147,7 +1150,6 @@ class Render { } const optionEl = document.createElement('div'); optionEl.dataset.id = option.id; - optionEl.id = option.id; optionEl.classList.add(this.classes.option); optionEl.setAttribute('role', 'option'); if (option.class) { @@ -1271,8 +1273,10 @@ class Render { this.content.main.classList.add(this.classes.openAbove); const containerRect = this.main.main.getBoundingClientRect(); this.content.main.style.margin = '-' + (mainHeight + contentHeight - 1) + 'px 0px 0px 0px'; - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px'; - this.content.main.style.left = containerRect.left + window.scrollX + 'px'; + this.content.main.style.top = + containerRect.top + containerRect.height + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + 'px'; + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px'; this.content.main.style.width = containerRect.width + 'px'; } moveContentBelow() { @@ -1283,8 +1287,13 @@ class Render { const containerRect = this.main.main.getBoundingClientRect(); this.content.main.style.margin = '-1px 0px 0px 0px'; if (this.settings.contentPosition !== 'relative') { - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px'; - this.content.main.style.left = containerRect.left + window.scrollX + 'px'; + this.content.main.style.top = + containerRect.top + + containerRect.height + + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + + 'px'; + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px'; this.content.main.style.width = containerRect.width + 'px'; } } diff --git a/dist/slimselect.css b/dist/slimselect.css index db486e5a..02340824 100644 --- a/dist/slimselect.css +++ b/dist/slimselect.css @@ -1 +1 @@ -:root{--ss-primary-color: #5897fb;--ss-bg-color: #ffffff;--ss-font-color: #4d4d4d;--ss-font-placeholder-color: #8d8d8d;--ss-disabled-color: #dcdee2;--ss-border-color: #dcdee2;--ss-highlight-color: #fffb8c;--ss-success-color: #00b755;--ss-error-color: #dc3545;--ss-focus-color: #5897fb;--ss-main-height: 30px;--ss-content-height: 300px;--ss-spacing-l: 7px;--ss-spacing-m: 5px;--ss-spacing-s: 3px;--ss-animation-timing: 0.2s;--ss-border-radius: 4px}@keyframes ss-valueIn{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes ss-valueOut{0%{transform:scale(1);opacity:1}100%{transform:scale(0);opacity:0}}.ss-hide{display:none !important}.ss-main{display:flex;flex-direction:row;position:relative;user-select:none;color:var(--ss-font-color);min-height:var(--ss-main-height);width:100%;padding:var(--ss-spacing-s);cursor:pointer;border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius);background-color:var(--ss-bg-color);outline:0;box-sizing:border-box;transition:background-color var(--ss-animation-timing);overflow:hidden}.ss-main:focus{box-shadow:0 0 5px var(--ss-focus-color)}.ss-main.ss-disabled{background-color:var(--ss-disabled-color);cursor:not-allowed}.ss-main.ss-disabled .ss-values .ss-disabled{color:var(--ss-font-color)}.ss-main.ss-disabled .ss-values .ss-value .ss-value-delete{cursor:not-allowed}.ss-main.ss-open-above{border-top-left-radius:0px;border-top-right-radius:0px}.ss-main.ss-open-below{border-bottom-left-radius:0px;border-bottom-right-radius:0px}.ss-main .ss-values{display:inline-flex;flex-wrap:wrap;gap:var(--ss-spacing-m);flex:1 1 100%}.ss-main .ss-values .ss-placeholder{display:flex;padding:var(--ss-spacing-s) var(--ss-spacing-m) var(--ss-spacing-s) var(--ss-spacing-m);margin:auto 0px auto 0px;line-height:1em;align-items:center;width:100%;color:var(--ss-font-placeholder-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-main .ss-values .ss-max{display:flex;user-select:none;align-items:center;width:fit-content;font-size:12px;color:var(--ss-bg-color);line-height:1;padding:var(--ss-spacing-s) var(--ss-spacing-m);background-color:var(--ss-primary-color);border-radius:var(--ss-border-radius)}.ss-main .ss-values .ss-single{display:flex;margin:auto 0px auto var(--ss-spacing-s)}.ss-main .ss-values .ss-value{display:flex;user-select:none;align-items:center;width:fit-content;background-color:var(--ss-primary-color);border-radius:var(--ss-border-radius);animation-name:ss-valueIn;animation-duration:var(--ss-animation-timing);animation-timing-function:ease-out;animation-fill-mode:both}.ss-main .ss-values .ss-value.ss-value-out{animation-name:ss-valueOut;animation-duration:var(--ss-animation-timing);animation-timing-function:ease-out}.ss-main .ss-values .ss-value .ss-value-text{font-size:12px;color:var(--ss-bg-color);line-height:1;padding:var(--ss-spacing-s) var(--ss-spacing-m)}.ss-main .ss-values .ss-value .ss-value-delete{display:flex;align-items:center;height:var(--ss-spacing-l);width:var(--ss-spacing-l);padding:var(--ss-spacing-s) var(--ss-spacing-m);cursor:pointer;border-left:solid 1px var(--ss-bg-color);box-sizing:content-box}.ss-main .ss-values .ss-value .ss-value-delete svg{height:var(--ss-spacing-l);width:var(--ss-spacing-l)}.ss-main .ss-values .ss-value .ss-value-delete svg path{fill:none;stroke:var(--ss-bg-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round}.ss-main .ss-deselect{flex:0 1 auto;display:flex;align-items:center;justify-content:center;width:fit-content;height:auto;padding:0 var(--ss-spacing-m) 0 var(--ss-spacing-m)}.ss-main .ss-deselect svg{width:8px;height:8px}.ss-main .ss-deselect svg path{fill:none;stroke:var(--ss-font-color);stroke-width:20;stroke-linecap:round;stroke-linejoin:round}.ss-main .ss-arrow{flex:0 1 auto;display:flex;align-items:center;justify-content:flex-end;width:12px;height:12px;margin:auto var(--ss-spacing-m) auto var(--ss-spacing-m)}.ss-main .ss-arrow path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round;transition-timing-function:ease-out;transition:var(--ss-animation-timing)}.ss-content{position:absolute;display:flex;height:auto;flex-direction:column;width:auto;max-height:var(--ss-content-height);box-sizing:border-box;border:solid 1px var(--ss-border-color);background-color:var(--ss-bg-color);transition:transform var(--ss-animation-timing),opacity var(--ss-animation-timing);opacity:0;transform:scaleY(0);transform-origin:center top;overflow:hidden;z-index:10000}.ss-content.ss-relative{position:relative;height:100%}.ss-content.ss-open-above{flex-direction:column-reverse;opacity:1;transform:scaleY(1);transform-origin:center bottom;border-top-left-radius:var(--ss-border-radius);border-top-right-radius:var(--ss-border-radius)}.ss-content.ss-open-below{opacity:1;transform:scaleY(1);transform-origin:center top;border-bottom-left-radius:var(--ss-border-radius);border-bottom-right-radius:var(--ss-border-radius)}.ss-content .ss-search{flex:0 1 auto;display:flex;flex-direction:row;padding:var(--ss-spacing-l) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l)}.ss-content .ss-search input{display:inline-flex;font-size:inherit;line-height:inherit;flex:1 1 auto;width:100%;min-width:0px;padding:var(--ss-spacing-m) var(--ss-spacing-l);margin:0;border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius);background-color:var(--ss-bg-color);outline:0;text-align:left;box-sizing:border-box}.ss-content .ss-search input::placeholder{color:var(--ss-font-placeholder-color);vertical-align:middle}.ss-content .ss-search input:focus{box-shadow:0 0 5px var(--ss-focus-color)}.ss-content .ss-search .ss-addable{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;flex:0 0 auto;height:auto;margin:0 0 0 var(--ss-spacing-m);border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius)}.ss-content .ss-search .ss-addable svg{display:flex;align-items:center;justify-content:flex-end;flex:0 1 auto;width:12px;height:12px;margin:auto var(--ss-spacing-m) auto var(--ss-spacing-m)}.ss-content .ss-search .ss-addable svg path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round}.ss-content .ss-list{flex:1 1 auto;height:auto;overflow-x:hidden;overflow-y:auto}.ss-content .ss-list .ss-error{color:var(--ss-error-color);padding:var(--ss-spacing-l)}.ss-content .ss-list .ss-searching{color:var(--ss-font-color);padding:var(--ss-spacing-l)}.ss-content .ss-list .ss-optgroup.ss-close .ss-option{display:none !important}.ss-content .ss-list .ss-optgroup .ss-optgroup-label{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:var(--ss-spacing-m) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-label-text{flex:1 1 auto;font-weight:bold;color:var(--ss-font-color)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label:has(.ss-arrow){cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions{flex:0 1 auto;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--ss-spacing-m)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall{flex:0 0 auto;display:flex;flex-direction:row;cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall:hover{opacity:.5}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall.ss-selected svg path{stroke:var(--ss-error-color)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall span{flex:0 1 auto;display:flex;align-items:center;justify-content:center;font-size:60%;text-align:center;padding:0 var(--ss-spacing-s) 0 0}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg{flex:0 1 auto;width:13px;height:13px}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg path{fill:none;stroke:var(--ss-success-color);stroke-linecap:round;stroke-linejoin:round}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg:first-child{stroke-width:5}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg:last-child{stroke-width:11}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable{flex:0 1 auto;display:flex;flex-direction:row;cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable .ss-arrow{flex:1 1 auto;width:10px;height:10px}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable .ss-arrow path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round;transition-timing-function:ease-out;transition:var(--ss-animation-timing)}.ss-content .ss-list .ss-optgroup .ss-option{padding:var(--ss-spacing-s) var(--ss-spacing-s) var(--ss-spacing-s) calc(var(--ss-spacing-l)*3)}.ss-content .ss-list .ss-option{display:block;padding:var(--ss-spacing-m) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l);white-space:normal;color:var(--ss-font-color);cursor:pointer;user-select:none}.ss-content .ss-list .ss-option:hover{color:var(--ss-bg-color);background-color:var(--ss-primary-color)}.ss-content .ss-list .ss-option.ss-highlighted,.ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected{color:var(--ss-bg-color);background-color:var(--ss-primary-color)}.ss-content .ss-list .ss-option.ss-disabled{cursor:not-allowed;background-color:var(--ss-disabled-color)}.ss-content .ss-list .ss-option.ss-disabled:hover{color:var(--ss-font-color)}.ss-content .ss-list .ss-option .ss-search-highlight{display:inline-block;background-color:var(--ss-highlight-color)}/*# sourceMappingURL=slimselect.css.map */ +:root{--ss-primary-color: #5897fb;--ss-bg-color: #ffffff;--ss-font-color: #4d4d4d;--ss-font-placeholder-color: #8d8d8d;--ss-disabled-color: #dcdee2;--ss-border-color: #dcdee2;--ss-highlight-color: #fffb8c;--ss-success-color: #00b755;--ss-error-color: #dc3545;--ss-focus-color: #5897fb;--ss-main-height: 30px;--ss-content-height: 300px;--ss-spacing-l: 7px;--ss-spacing-m: 5px;--ss-spacing-s: 3px;--ss-animation-timing: 0.2s;--ss-border-radius: 4px}@keyframes ss-valueIn{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes ss-valueOut{0%{transform:scale(1);opacity:1}100%{transform:scale(0);opacity:0}}.ss-hide{display:none !important}.ss-main{display:flex;flex-direction:row;position:relative;user-select:none;color:var(--ss-font-color);min-height:var(--ss-main-height);width:100%;padding:var(--ss-spacing-s);cursor:pointer;border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius);background-color:var(--ss-bg-color);outline:0;box-sizing:border-box;transition:background-color var(--ss-animation-timing);overflow:hidden}.ss-main:focus{box-shadow:0 0 5px var(--ss-focus-color)}.ss-main.ss-disabled{background-color:var(--ss-disabled-color);cursor:not-allowed}.ss-main.ss-disabled .ss-values .ss-disabled{color:var(--ss-font-color)}.ss-main.ss-disabled .ss-values .ss-value .ss-value-delete{cursor:not-allowed}.ss-main.ss-open-above{border-top-left-radius:0px;border-top-right-radius:0px}.ss-main.ss-open-below{border-bottom-left-radius:0px;border-bottom-right-radius:0px}.ss-main .ss-values{display:inline-flex;flex-wrap:wrap;gap:var(--ss-spacing-m);flex:1 1 100%}.ss-main .ss-values .ss-placeholder{display:flex;padding:var(--ss-spacing-s) var(--ss-spacing-m) var(--ss-spacing-s) var(--ss-spacing-m);margin:auto 0px auto 0px;line-height:1em;align-items:center;width:100%;color:var(--ss-font-placeholder-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-main .ss-values .ss-max{display:flex;user-select:none;align-items:center;width:fit-content;font-size:12px;color:var(--ss-bg-color);line-height:1;padding:var(--ss-spacing-s) var(--ss-spacing-m);background-color:var(--ss-primary-color);border-radius:var(--ss-border-radius)}.ss-main .ss-values .ss-single{display:flex;margin:auto 0px auto var(--ss-spacing-s)}.ss-main .ss-values .ss-value{display:flex;user-select:none;align-items:center;width:fit-content;background-color:var(--ss-primary-color);border-radius:var(--ss-border-radius);animation-name:ss-valueIn;animation-duration:var(--ss-animation-timing);animation-timing-function:ease-out;animation-fill-mode:both}.ss-main .ss-values .ss-value.ss-value-out{animation-name:ss-valueOut;animation-duration:var(--ss-animation-timing);animation-timing-function:ease-out}.ss-main .ss-values .ss-value .ss-value-text{font-size:12px;color:var(--ss-bg-color);line-height:1;padding:var(--ss-spacing-s) var(--ss-spacing-m)}.ss-main .ss-values .ss-value .ss-value-delete{display:flex;align-items:center;height:var(--ss-spacing-l);width:var(--ss-spacing-l);padding:var(--ss-spacing-s) var(--ss-spacing-m);cursor:pointer;border-left:solid 1px var(--ss-bg-color);box-sizing:content-box}.ss-main .ss-values .ss-value .ss-value-delete svg{height:var(--ss-spacing-l);width:var(--ss-spacing-l)}.ss-main .ss-values .ss-value .ss-value-delete svg path{fill:none;stroke:var(--ss-bg-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round}.ss-main .ss-deselect{flex:0 1 auto;display:flex;align-items:center;justify-content:center;width:fit-content;height:auto;padding:0 var(--ss-spacing-m) 0 var(--ss-spacing-m)}.ss-main .ss-deselect svg{width:8px;height:8px}.ss-main .ss-deselect svg path{fill:none;stroke:var(--ss-font-color);stroke-width:20;stroke-linecap:round;stroke-linejoin:round}.ss-main .ss-arrow{flex:0 1 auto;display:flex;align-items:center;justify-content:flex-end;width:12px;height:12px;margin:auto var(--ss-spacing-m) auto var(--ss-spacing-m)}.ss-main .ss-arrow path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round;transition-timing-function:ease-out;transition:var(--ss-animation-timing)}.ss-content{position:absolute;display:flex;height:auto;flex-direction:column;width:auto;max-height:var(--ss-content-height);box-sizing:border-box;border:solid 1px var(--ss-border-color);background-color:var(--ss-bg-color);transition:transform var(--ss-animation-timing),opacity var(--ss-animation-timing);opacity:0;transform:scaleY(0);transform-origin:center top;overflow:hidden;z-index:10000}.ss-content.ss-relative{position:relative;height:100%}.ss-content.ss-fixed{position:fixed}.ss-content.ss-open-above{flex-direction:column-reverse;opacity:1;transform:scaleY(1);transform-origin:center bottom;border-top-left-radius:var(--ss-border-radius);border-top-right-radius:var(--ss-border-radius)}.ss-content.ss-open-below{opacity:1;transform:scaleY(1);transform-origin:center top;border-bottom-left-radius:var(--ss-border-radius);border-bottom-right-radius:var(--ss-border-radius)}.ss-content .ss-search{flex:0 1 auto;display:flex;flex-direction:row;padding:var(--ss-spacing-l) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l)}.ss-content .ss-search input{display:inline-flex;font-size:inherit;line-height:inherit;flex:1 1 auto;width:100%;min-width:0px;padding:var(--ss-spacing-m) var(--ss-spacing-l);margin:0;border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius);background-color:var(--ss-bg-color);outline:0;text-align:left;box-sizing:border-box}.ss-content .ss-search input::placeholder{color:var(--ss-font-placeholder-color);vertical-align:middle}.ss-content .ss-search input:focus{box-shadow:0 0 5px var(--ss-focus-color)}.ss-content .ss-search .ss-addable{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;flex:0 0 auto;height:auto;margin:0 0 0 var(--ss-spacing-m);border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius)}.ss-content .ss-search .ss-addable svg{display:flex;align-items:center;justify-content:flex-end;flex:0 1 auto;width:12px;height:12px;margin:auto var(--ss-spacing-m) auto var(--ss-spacing-m)}.ss-content .ss-search .ss-addable svg path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round}.ss-content .ss-list{flex:1 1 auto;height:auto;overflow-x:hidden;overflow-y:auto}.ss-content .ss-list .ss-error{color:var(--ss-error-color);padding:var(--ss-spacing-l)}.ss-content .ss-list .ss-searching{color:var(--ss-font-color);padding:var(--ss-spacing-l)}.ss-content .ss-list .ss-optgroup.ss-close .ss-option{display:none !important}.ss-content .ss-list .ss-optgroup .ss-optgroup-label{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:var(--ss-spacing-m) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-label-text{flex:1 1 auto;font-weight:bold;color:var(--ss-font-color)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label:has(.ss-arrow){cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions{flex:0 1 auto;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--ss-spacing-m)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall{flex:0 0 auto;display:flex;flex-direction:row;cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall:hover{opacity:.5}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall.ss-selected svg path{stroke:var(--ss-error-color)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall span{flex:0 1 auto;display:flex;align-items:center;justify-content:center;font-size:60%;text-align:center;padding:0 var(--ss-spacing-s) 0 0}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg{flex:0 1 auto;width:13px;height:13px}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg path{fill:none;stroke:var(--ss-success-color);stroke-linecap:round;stroke-linejoin:round}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg:first-child{stroke-width:5}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg:last-child{stroke-width:11}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable{flex:0 1 auto;display:flex;flex-direction:row;cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable .ss-arrow{flex:1 1 auto;width:10px;height:10px}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable .ss-arrow path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round;transition-timing-function:ease-out;transition:var(--ss-animation-timing)}.ss-content .ss-list .ss-optgroup .ss-option{padding:var(--ss-spacing-s) var(--ss-spacing-s) var(--ss-spacing-s) calc(var(--ss-spacing-l)*3)}.ss-content .ss-list .ss-option{display:block;padding:var(--ss-spacing-m) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l);white-space:normal;color:var(--ss-font-color);cursor:pointer;user-select:none}.ss-content .ss-list .ss-option:hover{color:var(--ss-bg-color);background-color:var(--ss-primary-color)}.ss-content .ss-list .ss-option.ss-highlighted,.ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected{color:var(--ss-bg-color);background-color:var(--ss-primary-color)}.ss-content .ss-list .ss-option.ss-disabled{cursor:not-allowed;background-color:var(--ss-disabled-color)}.ss-content .ss-list .ss-option.ss-disabled:hover{color:var(--ss-font-color)}.ss-content .ss-list .ss-option .ss-search-highlight{display:inline-block;background-color:var(--ss-highlight-color)}/*# sourceMappingURL=slimselect.css.map */ diff --git a/dist/slimselect.css.map b/dist/slimselect.css.map index 7a409d76..5eff9873 100644 --- a/dist/slimselect.css.map +++ b/dist/slimselect.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["../src/slim-select/slimselect.scss"],"names":[],"mappings":"AAAA,MAEE,4BACA,uBACA,yBACA,qCACA,6BACA,2BACA,8BACA,4BACA,0BACA,0BAGA,uBACA,2BAGA,oBACA,oBACA,oBAGA,4BACA,wBAIF,sBACE,GACE,mBACA,UAEF,KACE,mBACA,WAGJ,uBACE,GACE,mBACA,UAEF,KACE,mBACA,WAKJ,SACE,wBAIF,SACE,aACA,mBACA,kBACA,iBACA,2BACA,iCACA,WACA,4BACA,eACA,wCACA,sCACA,oCACA,UACA,sBACA,uDACA,gBAEA,eACE,yCAGF,qBACE,0CACA,mBAGE,6CACE,2BAIA,2DACE,mBAMR,uBACE,2BACA,4BAEF,uBACE,8BACA,+BAGF,oBACE,oBACA,eACA,wBACA,cAEA,oCACE,aACA,wFACA,yBACA,gBACA,mBACA,WACA,uCACA,gBACA,uBACA,mBAIF,4BACE,aACA,iBACA,mBACA,kBACA,eACA,yBACA,cACA,gDACA,yCACA,sCAIF,+BACE,aACA,yCAIF,8BACE,aACA,iBACA,mBACA,kBACA,yCACA,sCACA,0BACA,8CACA,mCACA,yBAEA,2CACE,2BACA,8CACA,mCAGF,6CACE,eACA,yBACA,cACA,gDAGF,+CACE,aACA,mBACA,2BACA,0BACA,gDACA,eACA,yCACA,uBAEA,mDACE,2BACA,0BAEA,wDACE,UACA,0BACA,gBACA,qBACA,sBAOV,sBACE,cACA,aACA,mBACA,uBACA,kBACA,YACA,oDAEA,0BACE,UACA,WAEA,+BACE,UACA,4BACA,gBACA,qBACA,sBAKN,mBACE,cACA,aACA,mBACA,yBACA,WACA,YACA,yDAEA,wBACE,UACA,4BACA,gBACA,qBACA,sBACA,oCACA,sCAMN,YACE,kBACA,aACA,YACA,sBACA,WACA,oCACA,sBACA,wCACA,oCACA,WACE,wEAEF,UACA,oBACA,4BACA,gBACA,cAEA,wBACE,kBACA,YAGF,0BACE,8BACA,UACA,oBACA,+BACA,+CACA,gDAGF,0BACE,UACA,oBACA,4BACA,kDACA,mDAGF,uBACE,cACA,aACA,mBACA,wFAEA,6BACE,oBACA,kBACA,oBACA,cACA,WACA,cACA,gDACA,SACA,wCACA,sCACA,oCACA,UACA,gBACA,sBAEA,0CACE,uCACA,sBAGF,mCACE,yCAIJ,mCACE,oBACA,uBACA,mBACA,eACA,cACA,YACA,iCACA,wCACA,sCAEA,uCACE,aACA,mBACA,yBACA,cACA,WACA,YACA,yDAEA,4CACE,UACA,4BACA,gBACA,qBACA,sBAMR,qBACE,cACA,YACA,kBACA,gBAEA,+BACE,4BACA,4BAGF,mCACE,2BACA,4BAME,sDACE,wBAIJ,qDACE,aACA,mBACA,mBACA,8BACA,wFAEA,6EACE,cACA,iBACA,2BAIF,oEACE,eAGF,0EACE,cACA,aACA,mBACA,mBACA,uBACA,wBAEA,wFACE,cACA,aACA,mBACA,eAEA,8FACE,WAKE,6GACE,6BAKN,6FACE,cACA,aACA,mBACA,uBACA,cACA,kBACA,kCAGF,4FACE,cACA,WACA,YAEA,iGACE,UACA,+BACA,qBACA,sBAGF,wGACE,eAEF,uGACE,gBAKN,uFACE,cACA,aACA,mBACA,eAEA,iGACE,cACA,WACA,YAEA,sGACE,UACA,4BACA,gBACA,qBACA,sBACA,oCACA,sCAOV,6CACE,gGAIJ,gCACE,cACA,wFACA,mBACA,2BACA,eACA,iBAEA,sCACE,yBACA,yCAGF,6GAEE,yBACA,yCAGF,4CACE,mBACA,0CAEA,kDACE,2BAKJ,qDACE,qBACA","file":"slimselect.css"} \ No newline at end of file +{"version":3,"sourceRoot":"","sources":["../src/slim-select/slimselect.scss"],"names":[],"mappings":"AAAA,MAEE,4BACA,uBACA,yBACA,qCACA,6BACA,2BACA,8BACA,4BACA,0BACA,0BAGA,uBACA,2BAGA,oBACA,oBACA,oBAGA,4BACA,wBAIF,sBACE,GACE,mBACA,UAEF,KACE,mBACA,WAGJ,uBACE,GACE,mBACA,UAEF,KACE,mBACA,WAKJ,SACE,wBAIF,SACE,aACA,mBACA,kBACA,iBACA,2BACA,iCACA,WACA,4BACA,eACA,wCACA,sCACA,oCACA,UACA,sBACA,uDACA,gBAEA,eACE,yCAGF,qBACE,0CACA,mBAGE,6CACE,2BAIA,2DACE,mBAMR,uBACE,2BACA,4BAEF,uBACE,8BACA,+BAGF,oBACE,oBACA,eACA,wBACA,cAEA,oCACE,aACA,wFACA,yBACA,gBACA,mBACA,WACA,uCACA,gBACA,uBACA,mBAIF,4BACE,aACA,iBACA,mBACA,kBACA,eACA,yBACA,cACA,gDACA,yCACA,sCAIF,+BACE,aACA,yCAIF,8BACE,aACA,iBACA,mBACA,kBACA,yCACA,sCACA,0BACA,8CACA,mCACA,yBAEA,2CACE,2BACA,8CACA,mCAGF,6CACE,eACA,yBACA,cACA,gDAGF,+CACE,aACA,mBACA,2BACA,0BACA,gDACA,eACA,yCACA,uBAEA,mDACE,2BACA,0BAEA,wDACE,UACA,0BACA,gBACA,qBACA,sBAOV,sBACE,cACA,aACA,mBACA,uBACA,kBACA,YACA,oDAEA,0BACE,UACA,WAEA,+BACE,UACA,4BACA,gBACA,qBACA,sBAKN,mBACE,cACA,aACA,mBACA,yBACA,WACA,YACA,yDAEA,wBACE,UACA,4BACA,gBACA,qBACA,sBACA,oCACA,sCAMN,YACE,kBACA,aACA,YACA,sBACA,WACA,oCACA,sBACA,wCACA,oCACA,WACE,wEAEF,UACA,oBACA,4BACA,gBACA,cAEA,wBACE,kBACA,YAGF,qBACE,eAGF,0BACE,8BACA,UACA,oBACA,+BACA,+CACA,gDAGF,0BACE,UACA,oBACA,4BACA,kDACA,mDAGF,uBACE,cACA,aACA,mBACA,wFAEA,6BACE,oBACA,kBACA,oBACA,cACA,WACA,cACA,gDACA,SACA,wCACA,sCACA,oCACA,UACA,gBACA,sBAEA,0CACE,uCACA,sBAGF,mCACE,yCAIJ,mCACE,oBACA,uBACA,mBACA,eACA,cACA,YACA,iCACA,wCACA,sCAEA,uCACE,aACA,mBACA,yBACA,cACA,WACA,YACA,yDAEA,4CACE,UACA,4BACA,gBACA,qBACA,sBAMR,qBACE,cACA,YACA,kBACA,gBAEA,+BACE,4BACA,4BAGF,mCACE,2BACA,4BAME,sDACE,wBAIJ,qDACE,aACA,mBACA,mBACA,8BACA,wFAEA,6EACE,cACA,iBACA,2BAIF,oEACE,eAGF,0EACE,cACA,aACA,mBACA,mBACA,uBACA,wBAEA,wFACE,cACA,aACA,mBACA,eAEA,8FACE,WAKE,6GACE,6BAKN,6FACE,cACA,aACA,mBACA,uBACA,cACA,kBACA,kCAGF,4FACE,cACA,WACA,YAEA,iGACE,UACA,+BACA,qBACA,sBAGF,wGACE,eAEF,uGACE,gBAKN,uFACE,cACA,aACA,mBACA,eAEA,iGACE,cACA,WACA,YAEA,sGACE,UACA,4BACA,gBACA,qBACA,sBACA,oCACA,sCAOV,6CACE,gGAIJ,gCACE,cACA,wFACA,mBACA,2BACA,eACA,iBAEA,sCACE,yBACA,yCAGF,6GAEE,yBACA,yCAGF,4CACE,mBACA,0CAEA,kDACE,2BAKJ,qDACE,qBACA","file":"slimselect.css"} \ No newline at end of file diff --git a/dist/slimselect.es.js b/dist/slimselect.es.js index c16ae52b..ca206902 100644 --- a/dist/slimselect.es.js +++ b/dist/slimselect.es.js @@ -424,7 +424,7 @@ class Render { } } } - if (this.settings.contentPosition === 'relative') { + if (this.settings.contentPosition === 'relative' || this.settings.contentPosition === 'fixed') { this.content.main.classList.add('ss-' + this.settings.contentPosition); } } @@ -463,6 +463,9 @@ class Render { this.callbacks.close(); return false; } + if (e.key.length === 1) { + this.callbacks.open(); + } return true; }; main.onclick = (e) => { @@ -1145,7 +1148,6 @@ class Render { } const optionEl = document.createElement('div'); optionEl.dataset.id = option.id; - optionEl.id = option.id; optionEl.classList.add(this.classes.option); optionEl.setAttribute('role', 'option'); if (option.class) { @@ -1269,8 +1271,10 @@ class Render { this.content.main.classList.add(this.classes.openAbove); const containerRect = this.main.main.getBoundingClientRect(); this.content.main.style.margin = '-' + (mainHeight + contentHeight - 1) + 'px 0px 0px 0px'; - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px'; - this.content.main.style.left = containerRect.left + window.scrollX + 'px'; + this.content.main.style.top = + containerRect.top + containerRect.height + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + 'px'; + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px'; this.content.main.style.width = containerRect.width + 'px'; } moveContentBelow() { @@ -1281,8 +1285,13 @@ class Render { const containerRect = this.main.main.getBoundingClientRect(); this.content.main.style.margin = '-1px 0px 0px 0px'; if (this.settings.contentPosition !== 'relative') { - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px'; - this.content.main.style.left = containerRect.left + window.scrollX + 'px'; + this.content.main.style.top = + containerRect.top + + containerRect.height + + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + + 'px'; + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px'; this.content.main.style.width = containerRect.width + 'px'; } } diff --git a/dist/slimselect.global.js b/dist/slimselect.global.js index 0571e6fd..164fc033 100644 --- a/dist/slimselect.global.js +++ b/dist/slimselect.global.js @@ -427,7 +427,7 @@ var SlimSelect = (function () { } } } - if (this.settings.contentPosition === 'relative') { + if (this.settings.contentPosition === 'relative' || this.settings.contentPosition === 'fixed') { this.content.main.classList.add('ss-' + this.settings.contentPosition); } } @@ -466,6 +466,9 @@ var SlimSelect = (function () { this.callbacks.close(); return false; } + if (e.key.length === 1) { + this.callbacks.open(); + } return true; }; main.onclick = (e) => { @@ -1148,7 +1151,6 @@ var SlimSelect = (function () { } const optionEl = document.createElement('div'); optionEl.dataset.id = option.id; - optionEl.id = option.id; optionEl.classList.add(this.classes.option); optionEl.setAttribute('role', 'option'); if (option.class) { @@ -1272,8 +1274,10 @@ var SlimSelect = (function () { this.content.main.classList.add(this.classes.openAbove); const containerRect = this.main.main.getBoundingClientRect(); this.content.main.style.margin = '-' + (mainHeight + contentHeight - 1) + 'px 0px 0px 0px'; - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px'; - this.content.main.style.left = containerRect.left + window.scrollX + 'px'; + this.content.main.style.top = + containerRect.top + containerRect.height + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + 'px'; + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px'; this.content.main.style.width = containerRect.width + 'px'; } moveContentBelow() { @@ -1284,8 +1288,13 @@ var SlimSelect = (function () { const containerRect = this.main.main.getBoundingClientRect(); this.content.main.style.margin = '-1px 0px 0px 0px'; if (this.settings.contentPosition !== 'relative') { - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px'; - this.content.main.style.left = containerRect.left + window.scrollX + 'px'; + this.content.main.style.top = + containerRect.top + + containerRect.height + + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + + 'px'; + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px'; this.content.main.style.width = containerRect.width + 'px'; } } diff --git a/dist/slimselect.js b/dist/slimselect.js index 239c7a8b..5756fc69 100644 --- a/dist/slimselect.js +++ b/dist/slimselect.js @@ -430,7 +430,7 @@ } } } - if (this.settings.contentPosition === 'relative') { + if (this.settings.contentPosition === 'relative' || this.settings.contentPosition === 'fixed') { this.content.main.classList.add('ss-' + this.settings.contentPosition); } } @@ -469,6 +469,9 @@ this.callbacks.close(); return false; } + if (e.key.length === 1) { + this.callbacks.open(); + } return true; }; main.onclick = (e) => { @@ -1151,7 +1154,6 @@ } const optionEl = document.createElement('div'); optionEl.dataset.id = option.id; - optionEl.id = option.id; optionEl.classList.add(this.classes.option); optionEl.setAttribute('role', 'option'); if (option.class) { @@ -1275,8 +1277,10 @@ this.content.main.classList.add(this.classes.openAbove); const containerRect = this.main.main.getBoundingClientRect(); this.content.main.style.margin = '-' + (mainHeight + contentHeight - 1) + 'px 0px 0px 0px'; - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px'; - this.content.main.style.left = containerRect.left + window.scrollX + 'px'; + this.content.main.style.top = + containerRect.top + containerRect.height + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + 'px'; + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px'; this.content.main.style.width = containerRect.width + 'px'; } moveContentBelow() { @@ -1287,8 +1291,13 @@ const containerRect = this.main.main.getBoundingClientRect(); this.content.main.style.margin = '-1px 0px 0px 0px'; if (this.settings.contentPosition !== 'relative') { - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px'; - this.content.main.style.left = containerRect.left + window.scrollX + 'px'; + this.content.main.style.top = + containerRect.top + + containerRect.height + + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + + 'px'; + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px'; this.content.main.style.width = containerRect.width + 'px'; } } diff --git a/dist/slimselect.min.js b/dist/slimselect.min.js index 16f060e7..e77916b0 100644 --- a/dist/slimselect.min.js +++ b/dist/slimselect.min.js @@ -1 +1 @@ -!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).SlimSelect=e()}(this,(function(){"use strict";class t{constructor(t){t||(t={}),this.main=t.main||"ss-main",this.placeholder=t.placeholder||"ss-placeholder",this.values=t.values||"ss-values",this.single=t.single||"ss-single",this.max=t.max||"ss-max",this.value=t.value||"ss-value",this.valueText=t.valueText||"ss-value-text",this.valueDelete=t.valueDelete||"ss-value-delete",this.valueOut=t.valueOut||"ss-value-out",this.deselect=t.deselect||"ss-deselect",this.deselectPath=t.deselectPath||"M10,10 L90,90 M10,90 L90,10",this.arrow=t.arrow||"ss-arrow",this.arrowClose=t.arrowClose||"M10,30 L50,70 L90,30",this.arrowOpen=t.arrowOpen||"M10,70 L50,30 L90,70",this.content=t.content||"ss-content",this.openAbove=t.openAbove||"ss-open-above",this.openBelow=t.openBelow||"ss-open-below",this.search=t.search||"ss-search",this.searchHighlighter=t.searchHighlighter||"ss-search-highlight",this.searching=t.searching||"ss-searching",this.addable=t.addable||"ss-addable",this.addablePath=t.addablePath||"M50,10 L50,90 M10,50 L90,50",this.list=t.list||"ss-list",this.optgroup=t.optgroup||"ss-optgroup",this.optgroupLabel=t.optgroupLabel||"ss-optgroup-label",this.optgroupLabelText=t.optgroupLabelText||"ss-optgroup-label-text",this.optgroupActions=t.optgroupActions||"ss-optgroup-actions",this.optgroupSelectAll=t.optgroupSelectAll||"ss-selectall",this.optgroupSelectAllBox=t.optgroupSelectAllBox||"M60,10 L10,10 L10,90 L90,90 L90,50",this.optgroupSelectAllCheck=t.optgroupSelectAllCheck||"M30,45 L50,70 L90,10",this.optgroupClosable=t.optgroupClosable||"ss-closable",this.option=t.option||"ss-option",this.optionDelete=t.optionDelete||"M10,10 L90,90 M10,90 L90,10",this.highlighted=t.highlighted||"ss-highlighted",this.open=t.open||"ss-open",this.close=t.close||"ss-close",this.selected=t.selected||"ss-selected",this.error=t.error||"ss-error",this.disabled=t.disabled||"ss-disabled",this.hide=t.hide||"ss-hide"}}function e(){return Math.random().toString(36).substring(2,10)}function s(t,e=50,s=!1){let i;return function(...n){const a=self,l=s&&!i;clearTimeout(i),i=setTimeout((()=>{i=null,s||t.apply(a,n)}),e),l&&t.apply(a,n)}}function i(t,e){return JSON.stringify(t)===JSON.stringify(e)}class n{constructor(t){if(this.id=t.id&&""!==t.id?t.id:e(),this.label=t.label||"",this.selectAll=void 0!==t.selectAll&&t.selectAll,this.selectAllText=t.selectAllText||"Select All",this.closable=t.closable||"off",this.options=[],t.options)for(const e of t.options)this.options.push(new a(e))}}class a{constructor(t){this.id=t.id&&""!==t.id?t.id:e(),this.value=void 0===t.value?t.text:t.value,this.text=t.text||"",this.html=t.html||"",this.selected=void 0!==t.selected&&t.selected,this.display=void 0===t.display||t.display,this.disabled=void 0!==t.disabled&&t.disabled,this.mandatory=void 0!==t.mandatory&&t.mandatory,this.placeholder=void 0!==t.placeholder&&t.placeholder,this.class=t.class||"",this.style=t.style||"",this.data=t.data||{}}}class l{constructor(t,e){this.selectType="single",this.data=[],this.selectedOrder=[],this.selectType=t,this.setData(e)}validateDataArray(t){if(!Array.isArray(t))return new Error("Data must be an array");for(let e of t)if(e instanceof n||"label"in e){if(!("label"in e))return new Error("Optgroup must have a label");if("options"in e&&e.options)for(let t of e.options){const e=this.validateOption(t);if(e)return e}}else{if(!(e instanceof a||"text"in e))return new Error("Data object must be a valid optgroup or option");{const t=this.validateOption(e);if(t)return t}}return null}validateOption(t){return"text"in t?null:new Error("Option must have a text")}partialToFullData(t){let e=[];return t.forEach((t=>{if(t instanceof n||"label"in t){let s=[];"options"in t&&t.options&&t.options.forEach((t=>{s.push(new a(t))})),s.length>0&&e.push(new n(t))}(t instanceof a||"text"in t)&&e.push(new a(t))})),e}setData(t){this.data=this.partialToFullData(t),"single"===this.selectType&&this.setSelectedBy("id",this.getSelected())}getData(){return this.filter(null,!0)}getDataOptions(){return this.filter(null,!1)}addOption(t,e=!1){if(e){let e=[new a(t)];this.setData(e.concat(this.getData()))}else this.setData(this.getData().concat(new a(t)))}setSelectedBy(t,e){let s=null,i=!1;const l=[];for(let o of this.data){if(o instanceof n)for(let n of o.options)s||(s=n),n.selected=!i&&e.includes(n[t]),n.selected&&(l.push(n),"single"===this.selectType&&(i=!0));o instanceof a&&(s||(s=o),o.selected=!i&&e.includes(o[t]),o.selected&&(l.push(o),"single"===this.selectType&&(i=!0)))}"single"===this.selectType&&s&&!i&&(s.selected=!0,l.push(s));const o=e.map((e=>{var s;return(null===(s=l.find((s=>s[t]===e)))||void 0===s?void 0:s.id)||""}));this.selectedOrder=o}getSelected(){return this.getSelectedOptions().map((t=>t.id))}getSelectedValues(){return this.getSelectedOptions().map((t=>t.value))}getSelectedOptions(){return this.filter((t=>t.selected),!1)}getOptgroupByID(t){for(let e of this.data)if(e instanceof n&&e.id===t)return e;return null}getOptionByID(t){let e=this.filter((e=>e.id===t),!1);return e.length?e[0]:null}getSelectType(){return this.selectType}getFirstOption(){let t=null;for(let e of this.data)if(e instanceof n?t=e.options[0]:e instanceof a&&(t=e),t)break;return t}search(t,e){return""===(t=t.trim())?this.getData():this.filter((s=>e(s,t)),!0)}filter(t,e){const s=[];return this.data.forEach((i=>{if(i instanceof n){let l=[];if(i.options.forEach((i=>{t&&!t(i)||(e?l.push(new a(i)):s.push(new a(i)))})),l.length>0){let t=new n(i);t.options=l,s.push(t)}}i instanceof a&&(t&&!t(i)||s.push(new a(i)))})),s}selectedOrderOptions(t){const e=[];return this.selectedOrder.forEach((s=>{const i=t.find((t=>t.id===s));i&&e.push(i)})),t.forEach((t=>{let s=!1;e.forEach((e=>{t.id!==e.id||(s=!0)})),s||e.push(t)})),e}}class o{constructor(t,e,s,i){this.store=s,this.settings=t,this.classes=e,this.callbacks=i,this.main=this.mainDiv(),this.content=this.contentDiv(),this.updateClassStyles(),this.updateAriaAttributes(),this.settings.contentLocation&&this.settings.contentLocation.appendChild(this.content.main)}enable(){this.main.main.classList.remove(this.classes.disabled),this.content.search.input.disabled=!1}disable(){this.main.main.classList.add(this.classes.disabled),this.content.search.input.disabled=!0}open(){this.main.arrow.path.setAttribute("d",this.classes.arrowOpen),this.main.main.classList.add("up"===this.settings.openPosition?this.classes.openAbove:this.classes.openBelow),this.main.main.setAttribute("aria-expanded","true"),this.moveContent();const t=this.store.getSelectedOptions();if(t.length){const e=t[t.length-1].id,s=this.content.list.querySelector('[data-id="'+e+'"]');s&&this.ensureElementInView(this.content.list,s)}}close(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.remove(this.classes.openBelow),this.main.main.setAttribute("aria-expanded","false"),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.main.arrow.path.setAttribute("d",this.classes.arrowClose)}updateClassStyles(){if(this.main.main.className="",this.main.main.removeAttribute("style"),this.content.main.className="",this.content.main.removeAttribute("style"),this.main.main.classList.add(this.classes.main),this.content.main.classList.add(this.classes.content),""!==this.settings.style&&(this.main.main.style.cssText=this.settings.style,this.content.main.style.cssText=this.settings.style),this.settings.class.length)for(const t of this.settings.class)""!==t.trim()&&(this.main.main.classList.add(t.trim()),this.content.main.classList.add(t.trim()));"relative"===this.settings.contentPosition&&this.content.main.classList.add("ss-"+this.settings.contentPosition)}updateAriaAttributes(){this.main.main.role="combobox",this.main.main.setAttribute("aria-haspopup","listbox"),this.main.main.setAttribute("aria-controls",this.content.main.id),this.main.main.setAttribute("aria-expanded","false"),this.content.main.setAttribute("role","listbox")}mainDiv(){var t;const e=document.createElement("div");e.dataset.id=this.settings.id,e.setAttribute("aria-label",this.settings.ariaLabel),e.tabIndex=0,e.onkeydown=t=>{switch(t.key){case"ArrowUp":case"ArrowDown":return this.callbacks.open(),"ArrowDown"===t.key?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Enter":case" ":this.callbacks.open();const e=this.content.list.querySelector("."+this.classes.highlighted);return e&&e.click(),!1;case"Escape":return this.callbacks.close(),!1}return!0},e.onclick=t=>{this.settings.disabled||(this.settings.isOpen?this.callbacks.close():this.callbacks.open())};const s=document.createElement("div");s.classList.add(this.classes.values),e.appendChild(s);const i=document.createElement("div");i.classList.add(this.classes.deselect);const n=null===(t=this.store)||void 0===t?void 0:t.getSelectedOptions();!this.settings.allowDeselect||this.settings.isMultiple&&n&&n.length<=0?i.classList.add(this.classes.hide):i.classList.remove(this.classes.hide),i.onclick=t=>{if(t.stopPropagation(),this.settings.disabled)return;let e=!0;const s=this.store.getSelectedOptions(),i=[];if(this.callbacks.beforeChange&&(e=!0===this.callbacks.beforeChange(i,s)),e){if(this.settings.isMultiple)this.callbacks.setSelected([],!1),this.updateDeselectAll();else{const t=this.store.getFirstOption(),e=t?t.id:"";this.callbacks.setSelected(e,!1)}this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(this.store.getSelectedOptions())}};const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100");const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.deselectPath),a.appendChild(l),i.appendChild(a),e.appendChild(i);const o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.classList.add(this.classes.arrow),o.setAttribute("viewBox","0 0 100 100");const h=document.createElementNS("http://www.w3.org/2000/svg","path");return h.setAttribute("d",this.classes.arrowClose),this.settings.alwaysOpen&&o.classList.add(this.classes.hide),o.appendChild(h),e.appendChild(o),{main:e,values:s,deselect:{main:i,svg:a,path:l},arrow:{main:o,path:h}}}mainFocus(t){"click"!==t&&this.main.main.focus({preventScroll:!0})}placeholder(){const t=this.store.filter((t=>t.placeholder),!1);let e=this.settings.placeholderText;t.length&&(""!==t[0].html?e=t[0].html:""!==t[0].text&&(e=t[0].text));const s=document.createElement("div");return s.classList.add(this.classes.placeholder),s.innerHTML=e,s}renderValues(){this.settings.isMultiple?(this.renderMultipleValues(),this.updateDeselectAll()):this.renderSingleValue()}renderSingleValue(){const t=this.store.filter((t=>t.selected&&!t.placeholder),!1),e=t.length>0?t[0]:null;if(e){const t=document.createElement("div");t.classList.add(this.classes.single),e.html?t.innerHTML=e.html:t.innerText=e.text,this.main.values.innerHTML=t.outerHTML}else this.main.values.innerHTML=this.placeholder().outerHTML;this.settings.allowDeselect&&t.length?this.main.deselect.main.classList.remove(this.classes.hide):this.main.deselect.main.classList.add(this.classes.hide)}renderMultipleValues(){let t=this.main.values.childNodes,e=this.store.filter((t=>t.selected&&t.display),!1);if(0===e.length)return void(this.main.values.innerHTML=this.placeholder().outerHTML);{const t=this.main.values.querySelector("."+this.classes.placeholder);t&&t.remove()}if(e.length>this.settings.maxValuesShown){const t=document.createElement("div");return t.classList.add(this.classes.max),t.textContent=this.settings.maxValuesMessage.replace("{number}",e.length.toString()),void(this.main.values.innerHTML=t.outerHTML)}{const t=this.main.values.querySelector("."+this.classes.max);t&&t.remove()}this.settings.keepOrder&&(e=this.store.selectedOrderOptions(e));let s=[];for(let i=0;it.id===a),!1).length||s.push(n)}}for(const t of s)t.classList.add(this.classes.valueOut),setTimeout((()=>{this.main.values.hasChildNodes()&&this.main.values.contains(t)&&this.main.values.removeChild(t)}),100);t=this.main.values.childNodes;for(let s=0;s{if(e.preventDefault(),e.stopPropagation(),this.settings.disabled)return;let s=!0;const i=this.store.getSelectedOptions(),l=i.filter((e=>e.selected&&e.id!==t.id),!0);if(!(this.settings.minSelected&&l.length{this.callbacks.search(t.target.value)}),100),e.onkeydown=t=>{switch(t.key){case"ArrowUp":case"ArrowDown":return"ArrowDown"===t.key?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Escape":return this.callbacks.close(),!1;case" ":const e=this.content.list.querySelector("."+this.classes.highlighted);return!e||(e.click(),!1);case"Enter":if(this.callbacks.addable)return i.click(),!1;{const t=this.content.list.querySelector("."+this.classes.highlighted);if(t)return t.click(),!1}return!0}return!0},t.appendChild(e),this.callbacks.addable){i.classList.add(this.classes.addable);const e=document.createElementNS("http://www.w3.org/2000/svg","svg");e.setAttribute("viewBox","0 0 100 100");const s=document.createElementNS("http://www.w3.org/2000/svg","path");s.setAttribute("d",this.classes.addablePath),e.appendChild(s),i.appendChild(e),i.onclick=t=>{if(t.preventDefault(),t.stopPropagation(),!this.callbacks.addable)return;const e=this.content.search.input.value.trim();if(""===e)return void this.content.search.input.focus();const s=t=>{let e=new a(t);if(this.callbacks.addOption(e),this.settings.isMultiple){let t=this.store.getSelected();t.push(e.id),this.callbacks.setSelected(t,!0)}else this.callbacks.setSelected([e.id],!0);this.callbacks.search(""),this.settings.closeOnSelect&&setTimeout((()=>{this.callbacks.close()}),100)},i=this.callbacks.addable(e);!1!==i&&null!=i&&(i instanceof Promise?i.then((t=>{"string"==typeof t?s({text:t,value:t}):i instanceof Error?this.renderError(i.message):s(t)})):"string"==typeof i?s({text:i,value:i}):i instanceof Error?this.renderError(i.message):s(i))},t.appendChild(i),n.addable={main:i,svg:e,path:s}}return n}searchFocus(){this.content.search.input.focus()}getOptions(t=!1,e=!1,s=!1){let i="."+this.classes.option;return t&&(i+=":not(."+this.classes.placeholder+")"),e&&(i+=":not(."+this.classes.disabled+")"),s&&(i+=":not(."+this.classes.hide+")"),Array.from(this.content.list.querySelectorAll(i))}highlight(t){const e=this.getOptions(!0,!0,!0);if(0===e.length)return;if(1===e.length&&!e[0].classList.contains(this.classes.highlighted))return void e[0].classList.add(this.classes.highlighted);let s=!1;for(const t of e)t.classList.contains(this.classes.highlighted)&&(s=!0);if(!s)for(const t of e)if(t.classList.contains(this.classes.selected)){t.classList.add(this.classes.highlighted);break}for(let s=0;s=0?s-1:e.length-1];a.classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,a);const l=a.parentElement;if(l&&l.classList.contains(this.classes.close)){const t=l.querySelector("."+this.classes.optgroupLabel);t&&t.click()}return}e["down"===t?0:e.length-1].classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,e["down"===t?0:e.length-1])}listDiv(){const t=document.createElement("div");return t.classList.add(this.classes.list),t}renderError(t){this.content.list.innerHTML="";const e=document.createElement("div");e.classList.add(this.classes.error),e.textContent=t,this.content.list.appendChild(e)}renderSearching(){this.content.list.innerHTML="";const t=document.createElement("div");t.classList.add(this.classes.searching),t.textContent=this.settings.searchingText,this.content.list.appendChild(t)}renderOptions(t){if(this.content.list.innerHTML="",0===t.length){const t=document.createElement("div");return t.classList.add(this.classes.search),this.callbacks.addable?t.innerHTML=this.settings.addableText.replace("{value}",this.content.search.input.value):t.innerHTML=this.settings.searchText,void this.content.list.appendChild(t)}if(this.settings.allowDeselect&&!this.settings.isMultiple){this.store.filter((t=>t.placeholder),!1).length||this.store.addOption(new a({text:"",value:"",selected:!1,placeholder:!0}),!0)}for(const e of t){if(e instanceof n){const t=document.createElement("div");t.classList.add(this.classes.optgroup);const s=document.createElement("div");s.classList.add(this.classes.optgroupLabel),t.appendChild(s);const i=document.createElement("div");i.classList.add(this.classes.optgroupLabelText),i.textContent=e.label,s.appendChild(i);const n=document.createElement("div");if(n.classList.add(this.classes.optgroupActions),s.appendChild(n),this.settings.isMultiple&&e.selectAll){const t=document.createElement("div");t.classList.add(this.classes.optgroupSelectAll);let s=!0;for(const t of e.options)if(!t.selected){s=!1;break}s&&t.classList.add(this.classes.selected);const i=document.createElement("span");i.textContent=e.selectAllText,t.appendChild(i);const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100"),t.appendChild(a);const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.optgroupSelectAllBox),a.appendChild(l);const o=document.createElementNS("http://www.w3.org/2000/svg","path");o.setAttribute("d",this.classes.optgroupSelectAllCheck),a.appendChild(o),t.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation();const i=this.store.getSelected();if(s){const t=i.filter((t=>{for(const s of e.options)if(t===s.id)return!1;return!0}));this.callbacks.setSelected(t,!0)}else{const t=i.concat(e.options.map((t=>t.id)));for(const t of e.options)this.store.getOptionByID(t.id)||this.callbacks.addOption(t);this.callbacks.setSelected(t,!0)}})),n.appendChild(t)}if("off"!==e.closable){const i=document.createElement("div");i.classList.add(this.classes.optgroupClosable);const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100"),a.classList.add(this.classes.arrow),i.appendChild(a);const l=document.createElementNS("http://www.w3.org/2000/svg","path");a.appendChild(l),e.options.some((t=>t.selected))||""!==this.content.search.input.value.trim()?(i.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):"open"===e.closable?(t.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):"close"===e.closable&&(t.classList.add(this.classes.close),l.setAttribute("d",this.classes.arrowClose)),s.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation(),t.classList.contains(this.classes.close)?(t.classList.remove(this.classes.close),t.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):(t.classList.remove(this.classes.open),t.classList.add(this.classes.close),l.setAttribute("d",this.classes.arrowClose))})),n.appendChild(i)}t.appendChild(s);for(const s of e.options)t.appendChild(this.option(s));this.content.list.appendChild(t)}e instanceof a&&this.content.list.appendChild(this.option(e))}}option(t){if(t.placeholder){const t=document.createElement("div");return t.classList.add(this.classes.option),t.classList.add(this.classes.hide),t}const e=document.createElement("div");return e.dataset.id=t.id,e.id=t.id,e.classList.add(this.classes.option),e.setAttribute("role","option"),t.class&&t.class.split(" ").forEach((t=>{e.classList.add(t)})),t.style&&(e.style.cssText=t.style),this.settings.searchHighlight&&""!==this.content.search.input.value.trim()?e.innerHTML=this.highlightText(""!==t.html?t.html:t.text,this.content.search.input.value,this.classes.searchHighlighter):""!==t.html?e.innerHTML=t.html:e.textContent=t.text,this.settings.showOptionTooltips&&e.textContent&&e.setAttribute("title",e.textContent),t.display||e.classList.add(this.classes.hide),t.disabled&&e.classList.add(this.classes.disabled),t.selected&&this.settings.hideSelected&&e.classList.add(this.classes.hide),t.selected?(e.classList.add(this.classes.selected),e.setAttribute("aria-selected","true"),this.main.main.setAttribute("aria-activedescendant",e.id)):(e.classList.remove(this.classes.selected),e.setAttribute("aria-selected","false")),e.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation();const s=this.store.getSelected(),i=e.currentTarget,n=String(i.dataset.id);if(t.disabled||t.selected&&!this.settings.allowDeselect)return;if(this.settings.isMultiple&&this.settings.maxSelected<=s.length&&!t.selected||this.settings.isMultiple&&this.settings.minSelected>=s.length&&t.selected)return;let a=!1;const l=this.store.getSelectedOptions();let o=[];this.settings.isMultiple&&(o=t.selected?l.filter((t=>t.id!==n)):l.concat(t)),this.settings.isMultiple||(o=t.selected?[]:[t]),this.callbacks.beforeChange||(a=!0),this.callbacks.beforeChange&&(a=!1!==this.callbacks.beforeChange(o,l)),a&&(this.store.getOptionByID(n)||this.callbacks.addOption(t),this.callbacks.setSelected(o.map((t=>t.id)),!1),this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(o))})),e}destroy(){this.main.main.remove(),this.content.main.remove()}highlightText(t,e,s){let i=t;const n=new RegExp("(?![^<]*>)("+e.trim()+")(?![^<]*>[^<>]*${o}`),i}moveContentAbove(){const t=this.main.main.offsetHeight,e=this.content.main.offsetHeight;this.main.main.classList.remove(this.classes.openBelow),this.main.main.classList.add(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.content.main.classList.add(this.classes.openAbove);const s=this.main.main.getBoundingClientRect();this.content.main.style.margin="-"+(t+e-1)+"px 0px 0px 0px",this.content.main.style.top=s.top+s.height+window.scrollY+"px",this.content.main.style.left=s.left+window.scrollX+"px",this.content.main.style.width=s.width+"px"}moveContentBelow(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.add(this.classes.openBelow),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.add(this.classes.openBelow);const t=this.main.main.getBoundingClientRect();this.content.main.style.margin="-1px 0px 0px 0px","relative"!==this.settings.contentPosition&&(this.content.main.style.top=t.top+t.height+window.scrollY+"px",this.content.main.style.left=t.left+window.scrollX+"px",this.content.main.style.width=t.width+"px")}ensureElementInView(t,e){const s=t.scrollTop+t.offsetTop,i=s+t.clientHeight,n=e.offsetTop,a=n+e.clientHeight;ni&&(t.scrollTop+=a-i)}putContent(){const t=this.main.main.offsetHeight,e=this.main.main.getBoundingClientRect(),s=this.content.main.offsetHeight;return window.innerHeight-(e.top+t)<=s&&e.top>s?"up":"down"}updateDeselectAll(){if(!this.store||!this.settings)return;const t=this.store.getSelectedOptions(),e=t&&t.length>0,s=this.settings.isMultiple,i=this.settings.allowDeselect,n=this.main.deselect.main,a=this.classes.hide;!i||s&&!e?n.classList.add(a):n.classList.remove(a)}}class h{constructor(t){this.listen=!1,this.observer=null,this.select=t,this.valueChange=this.valueChange.bind(this),this.select.addEventListener("change",this.valueChange,{passive:!0}),this.observer=new MutationObserver(this.observeCall.bind(this)),this.changeListen(!0)}enable(){this.select.disabled=!1}disable(){this.select.disabled=!0}hideUI(){this.select.tabIndex=-1,this.select.style.display="none",this.select.setAttribute("aria-hidden","true")}showUI(){this.select.removeAttribute("tabindex"),this.select.style.display="",this.select.removeAttribute("aria-hidden")}changeListen(t){this.listen=t,t&&this.observer&&this.observer.observe(this.select,{subtree:!0,childList:!0,attributes:!0}),t||this.observer&&this.observer.disconnect()}valueChange(t){return this.listen&&this.onValueChange&&this.onValueChange(this.getSelectedOptions()),!0}observeCall(t){if(!this.listen)return;let e=!1,s=!1,i=!1;for(const n of t){if(n.target===this.select&&("disabled"===n.attributeName&&(s=!0),"class"===n.attributeName&&(e=!0),"childList"===n.type)){for(const t of n.addedNodes)if("OPTION"===t.nodeName&&t.value===this.select.value){this.select.dispatchEvent(new Event("change"));break}i=!0}"OPTGROUP"!==n.target.nodeName&&"OPTION"!==n.target.nodeName||(i=!0)}e&&this.onClassChange&&this.onClassChange(this.select.className.split(" ")),s&&this.onDisabledChange&&(this.changeListen(!1),this.onDisabledChange(this.select.disabled),this.changeListen(!0)),i&&this.onOptionsChange&&(this.changeListen(!1),this.onOptionsChange(this.getData()),this.changeListen(!0))}getData(){let t=[];const e=this.select.childNodes;for(const s of e)"OPTGROUP"===s.nodeName&&t.push(this.getDataFromOptgroup(s)),"OPTION"===s.nodeName&&t.push(this.getDataFromOption(s));return t}getDataFromOptgroup(t){let e={id:t.id,label:t.label,selectAll:!!t.dataset&&"true"===t.dataset.selectall,selectAllText:t.dataset?t.dataset.selectalltext:"Select all",closable:t.dataset?t.dataset.closable:"off",options:[]};const s=t.childNodes;for(const t of s)"OPTION"===t.nodeName&&e.options.push(this.getDataFromOption(t));return e}getDataFromOption(t){return{id:t.id,value:t.value,text:t.text,html:t.dataset&&t.dataset.html?t.dataset.html:"",selected:t.selected,display:"none"!==t.style.display,disabled:t.disabled,mandatory:!!t.dataset&&"true"===t.dataset.mandatory,placeholder:"true"===t.dataset.placeholder,class:t.className,style:t.style.cssText,data:t.dataset}}getSelectedOptions(){let t=[];const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected&&t.push(this.getDataFromOption(e))}}if("OPTION"===s.nodeName){const e=s;e.selected&&t.push(this.getDataFromOption(e))}}return t}getSelectedValues(){return this.getSelectedOptions().map((t=>t.value))}setSelected(t){this.changeListen(!1);const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.id)}}if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.id)}}this.changeListen(!0)}setSelectedByValue(t){this.changeListen(!1);const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.value)}}if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.value)}}this.changeListen(!0)}updateSelect(t,e,s){this.changeListen(!1),t&&(this.select.dataset.id=t),e&&(this.select.style.cssText=e),s&&(this.select.className="",s.forEach((t=>{""!==t.trim()&&this.select.classList.add(t.trim())}))),this.changeListen(!0)}updateOptions(t){this.changeListen(!1),this.select.innerHTML="";for(const e of t)e instanceof n&&this.select.appendChild(this.createOptgroup(e)),e instanceof a&&this.select.appendChild(this.createOption(e));this.select.dispatchEvent(new Event("change",{bubbles:!0})),this.changeListen(!0)}createOptgroup(t){const e=document.createElement("optgroup");if(e.id=t.id,e.label=t.label,t.selectAll&&(e.dataset.selectAll="true"),"off"!==t.closable&&(e.dataset.closable=t.closable),t.options)for(const s of t.options)e.appendChild(this.createOption(s));return e}createOption(t){const e=document.createElement("option");return e.id=t.id,e.value=t.value,e.textContent=t.text,""!==t.html&&e.setAttribute("data-html",t.html),t.selected&&(e.selected=t.selected),t.disabled&&(e.disabled=!0),t.display||(e.style.display="none"),t.placeholder&&e.setAttribute("data-placeholder","true"),t.mandatory&&e.setAttribute("data-mandatory","true"),t.class&&t.class.split(" ").forEach((t=>{e.classList.add(t)})),t.data&&"object"==typeof t.data&&Object.keys(t.data).forEach((s=>{e.setAttribute("data-"+function(t){const e=t.replace(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g,(t=>"-"+t.toLowerCase()));return t[0]===t[0].toUpperCase()?e.substring(1):e}(s),t.data[s])})),e}destroy(){this.changeListen(!1),this.select.removeEventListener("change",this.valueChange),this.observer&&(this.observer.disconnect(),this.observer=null),delete this.select.dataset.id,this.showUI()}}class c{constructor(t){this.id="",this.style="",this.class=[],this.isMultiple=!1,this.isOpen=!1,this.isFullOpen=!1,this.intervalMove=null,t||(t={}),this.id="ss-"+e(),this.style=t.style||"",this.class=t.class||[],this.disabled=void 0!==t.disabled&&t.disabled,this.alwaysOpen=void 0!==t.alwaysOpen&&t.alwaysOpen,this.showSearch=void 0===t.showSearch||t.showSearch,this.focusSearch=void 0===t.focusSearch||t.focusSearch,this.ariaLabel=t.ariaLabel||"Combobox",this.searchPlaceholder=t.searchPlaceholder||"Search",this.searchText=t.searchText||"No Results",this.searchingText=t.searchingText||"Searching...",this.searchHighlight=void 0!==t.searchHighlight&&t.searchHighlight,this.closeOnSelect=void 0===t.closeOnSelect||t.closeOnSelect,this.contentLocation=t.contentLocation||document.body,this.contentPosition=t.contentPosition||"absolute",this.openPosition=t.openPosition||"auto",this.placeholderText=void 0!==t.placeholderText?t.placeholderText:"Select Value",this.allowDeselect=void 0!==t.allowDeselect&&t.allowDeselect,this.hideSelected=void 0!==t.hideSelected&&t.hideSelected,this.keepOrder=void 0!==t.keepOrder&&t.keepOrder,this.showOptionTooltips=void 0!==t.showOptionTooltips&&t.showOptionTooltips,this.minSelected=t.minSelected||0,this.maxSelected=t.maxSelected||1e3,this.timeoutDelay=t.timeoutDelay||200,this.maxValuesShown=t.maxValuesShown||20,this.maxValuesMessage=t.maxValuesMessage||"{number} selected",this.addableText=t.addableText||'Press "Enter" to add {value}'}}return class{constructor(e){var i;if(this.events={search:void 0,searchFilter:(t,e)=>-1!==t.text.toLowerCase().indexOf(e.toLowerCase()),addable:void 0,beforeChange:void 0,afterChange:void 0,beforeOpen:void 0,afterOpen:void 0,beforeClose:void 0,afterClose:void 0},this.windowResize=s((()=>{(this.settings.isOpen||this.settings.isFullOpen)&&this.render.moveContent()})),this.windowScroll=s((()=>{(this.settings.isOpen||this.settings.isFullOpen)&&this.render.moveContent()})),this.documentClick=t=>{this.settings.isOpen&&t.target&&!function(t,e){function s(t,s){return s&&t&&t.classList&&t.classList.contains(s)||s&&t&&t.dataset&&t.dataset.id&&t.dataset.id===e?t:null}return s(t,e)||function t(e,i){return e&&e!==document?s(e,i)?e:t(e.parentNode,i):null}(t,e)}(t.target,this.settings.id)&&this.close(t.type)},this.windowVisibilityChange=()=>{document.hidden&&this.close()},this.selectEl="string"==typeof e.select?document.querySelector(e.select):e.select,!this.selectEl)return void(e.events&&e.events.error&&e.events.error(new Error("Could not find select element")));if("SELECT"!==this.selectEl.tagName)return void(e.events&&e.events.error&&e.events.error(new Error("Element isnt of type select")));this.selectEl.dataset.ssid&&this.destroy(),this.settings=new c(e.settings),this.cssClasses=new t(e.cssClasses);const n=["afterChange","beforeOpen","afterOpen","beforeClose","afterClose"];for(const t in e.events)e.events.hasOwnProperty(t)&&(-1!==n.indexOf(t)?this.events[t]=s(e.events[t],100):this.events[t]=e.events[t]);this.settings.disabled=(null===(i=e.settings)||void 0===i?void 0:i.disabled)?e.settings.disabled:this.selectEl.disabled,this.settings.isMultiple=this.selectEl.multiple,this.settings.style=this.selectEl.style.cssText,this.settings.class=this.selectEl.className.split(" "),this.select=new h(this.selectEl),this.select.updateSelect(this.settings.id,this.settings.style,this.settings.class),this.select.hideUI(),this.select.onValueChange=t=>{this.setSelected(t.map((t=>t.id)))},this.select.onClassChange=t=>{this.settings.class=t,this.render.updateClassStyles()},this.select.onDisabledChange=t=>{t?this.disable():this.enable()},this.select.onOptionsChange=t=>{this.setData(t)},this.store=new l(this.settings.isMultiple?"multiple":"single",e.data?e.data:this.select.getData()),e.data&&this.select.updateOptions(this.store.getData());const a={open:this.open.bind(this),close:this.close.bind(this),addable:this.events.addable?this.events.addable:void 0,setSelected:this.setSelected.bind(this),addOption:this.addOption.bind(this),search:this.search.bind(this),beforeChange:this.events.beforeChange,afterChange:this.events.afterChange};this.render=new o(this.settings,this.cssClasses,this.store,a),this.render.renderValues(),this.render.renderOptions(this.store.getData());const r=this.selectEl.getAttribute("aria-label"),d=this.selectEl.getAttribute("aria-labelledby");r?this.render.main.main.setAttribute("aria-label",r):d&&this.render.main.main.setAttribute("aria-labelledby",d),this.selectEl.parentNode&&this.selectEl.parentNode.insertBefore(this.render.main.main,this.selectEl.nextSibling),window.addEventListener("resize",this.windowResize,!1),"auto"===this.settings.openPosition&&window.addEventListener("scroll",this.windowScroll,!1),document.addEventListener("visibilitychange",this.windowVisibilityChange),this.settings.disabled&&this.disable(),this.settings.alwaysOpen&&this.open(),this.selectEl.slim=this}enable(){this.settings.disabled=!1,this.select.enable(),this.render.enable()}disable(){this.settings.disabled=!0,this.select.disable(),this.render.disable()}getData(){return this.store.getData()}setData(t){const e=this.store.getSelected(),s=this.store.validateDataArray(t);if(s)return void(this.events.error&&this.events.error(s));this.store.setData(t);const n=this.store.getData();this.select.updateOptions(n),this.render.renderValues(),this.render.renderOptions(n),this.events.afterChange&&!i(e,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}getSelected(){let t=this.store.getSelectedOptions();return this.settings.keepOrder&&(t=this.store.selectedOrderOptions(t)),t.map((t=>t.value))}setSelected(t,e=!0){const s=this.store.getSelected(),n=this.store.getDataOptions();t=Array.isArray(t)?t:[t];const a=[];for(const e of t)if(n.find((t=>t.id==e)))a.push(e);else for(const t of n.filter((t=>t.value==e)))a.push(t.id);this.store.setSelectedBy("id",a);const l=this.store.getData();this.select.updateOptions(l),this.render.renderValues(),""!==this.render.content.search.input.value?this.search(this.render.content.search.input.value):this.render.renderOptions(l),e&&this.events.afterChange&&!i(s,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}addOption(t){const e=this.store.getSelected();this.store.getDataOptions().some((e=>{var s;return e.value===(null!==(s=t.value)&&void 0!==s?s:t.text)}))||this.store.addOption(t);const s=this.store.getData();this.select.updateOptions(s),this.render.renderValues(),this.render.renderOptions(s),this.events.afterChange&&!i(e,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}open(){this.settings.disabled||this.settings.isOpen||(this.events.beforeOpen&&this.events.beforeOpen(),this.render.open(),this.settings.showSearch&&this.settings.focusSearch&&this.render.searchFocus(),this.settings.isOpen=!0,setTimeout((()=>{this.events.afterOpen&&this.events.afterOpen(),this.settings.isOpen&&(this.settings.isFullOpen=!0),document.addEventListener("click",this.documentClick)}),this.settings.timeoutDelay),"absolute"===this.settings.contentPosition&&(this.settings.intervalMove&&clearInterval(this.settings.intervalMove),this.settings.intervalMove=setInterval(this.render.moveContent.bind(this.render),500)))}close(t=null){this.settings.isOpen&&!this.settings.alwaysOpen&&(this.events.beforeClose&&this.events.beforeClose(),this.render.close(),""!==this.render.content.search.input.value&&this.search(""),this.render.mainFocus(t),this.settings.isOpen=!1,this.settings.isFullOpen=!1,setTimeout((()=>{this.events.afterClose&&this.events.afterClose(),document.removeEventListener("click",this.documentClick)}),this.settings.timeoutDelay),this.settings.intervalMove&&clearInterval(this.settings.intervalMove))}search(t){if(this.render.content.search.input.value!==t&&(this.render.content.search.input.value=t),!this.events.search)return void this.render.renderOptions(""===t?this.store.getData():this.store.search(t,this.events.searchFilter));this.render.renderSearching();const e=this.events.search(t,this.store.getSelectedOptions());e instanceof Promise?e.then((t=>{this.render.renderOptions(this.store.partialToFullData(t))})).catch((t=>{this.render.renderError("string"==typeof t?t:t.message)})):Array.isArray(e)?this.render.renderOptions(this.store.partialToFullData(e)):this.render.renderError("Search event must return a promise or an array of data")}destroy(){document.removeEventListener("click",this.documentClick),window.removeEventListener("resize",this.windowResize,!1),"auto"===this.settings.openPosition&&window.removeEventListener("scroll",this.windowScroll,!1),document.removeEventListener("visibilitychange",this.windowVisibilityChange),this.store.setData([]),this.render.destroy(),this.select.destroy()}}})); +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).SlimSelect=e()}(this,(function(){"use strict";class t{constructor(t){t||(t={}),this.main=t.main||"ss-main",this.placeholder=t.placeholder||"ss-placeholder",this.values=t.values||"ss-values",this.single=t.single||"ss-single",this.max=t.max||"ss-max",this.value=t.value||"ss-value",this.valueText=t.valueText||"ss-value-text",this.valueDelete=t.valueDelete||"ss-value-delete",this.valueOut=t.valueOut||"ss-value-out",this.deselect=t.deselect||"ss-deselect",this.deselectPath=t.deselectPath||"M10,10 L90,90 M10,90 L90,10",this.arrow=t.arrow||"ss-arrow",this.arrowClose=t.arrowClose||"M10,30 L50,70 L90,30",this.arrowOpen=t.arrowOpen||"M10,70 L50,30 L90,70",this.content=t.content||"ss-content",this.openAbove=t.openAbove||"ss-open-above",this.openBelow=t.openBelow||"ss-open-below",this.search=t.search||"ss-search",this.searchHighlighter=t.searchHighlighter||"ss-search-highlight",this.searching=t.searching||"ss-searching",this.addable=t.addable||"ss-addable",this.addablePath=t.addablePath||"M50,10 L50,90 M10,50 L90,50",this.list=t.list||"ss-list",this.optgroup=t.optgroup||"ss-optgroup",this.optgroupLabel=t.optgroupLabel||"ss-optgroup-label",this.optgroupLabelText=t.optgroupLabelText||"ss-optgroup-label-text",this.optgroupActions=t.optgroupActions||"ss-optgroup-actions",this.optgroupSelectAll=t.optgroupSelectAll||"ss-selectall",this.optgroupSelectAllBox=t.optgroupSelectAllBox||"M60,10 L10,10 L10,90 L90,90 L90,50",this.optgroupSelectAllCheck=t.optgroupSelectAllCheck||"M30,45 L50,70 L90,10",this.optgroupClosable=t.optgroupClosable||"ss-closable",this.option=t.option||"ss-option",this.optionDelete=t.optionDelete||"M10,10 L90,90 M10,90 L90,10",this.highlighted=t.highlighted||"ss-highlighted",this.open=t.open||"ss-open",this.close=t.close||"ss-close",this.selected=t.selected||"ss-selected",this.error=t.error||"ss-error",this.disabled=t.disabled||"ss-disabled",this.hide=t.hide||"ss-hide"}}function e(){return Math.random().toString(36).substring(2,10)}function s(t,e=50,s=!1){let i;return function(...n){const a=self,l=s&&!i;clearTimeout(i),i=setTimeout((()=>{i=null,s||t.apply(a,n)}),e),l&&t.apply(a,n)}}function i(t,e){return JSON.stringify(t)===JSON.stringify(e)}class n{constructor(t){if(this.id=t.id&&""!==t.id?t.id:e(),this.label=t.label||"",this.selectAll=void 0!==t.selectAll&&t.selectAll,this.selectAllText=t.selectAllText||"Select All",this.closable=t.closable||"off",this.options=[],t.options)for(const e of t.options)this.options.push(new a(e))}}class a{constructor(t){this.id=t.id&&""!==t.id?t.id:e(),this.value=void 0===t.value?t.text:t.value,this.text=t.text||"",this.html=t.html||"",this.selected=void 0!==t.selected&&t.selected,this.display=void 0===t.display||t.display,this.disabled=void 0!==t.disabled&&t.disabled,this.mandatory=void 0!==t.mandatory&&t.mandatory,this.placeholder=void 0!==t.placeholder&&t.placeholder,this.class=t.class||"",this.style=t.style||"",this.data=t.data||{}}}class l{constructor(t,e){this.selectType="single",this.data=[],this.selectedOrder=[],this.selectType=t,this.setData(e)}validateDataArray(t){if(!Array.isArray(t))return new Error("Data must be an array");for(let e of t)if(e instanceof n||"label"in e){if(!("label"in e))return new Error("Optgroup must have a label");if("options"in e&&e.options)for(let t of e.options){const e=this.validateOption(t);if(e)return e}}else{if(!(e instanceof a||"text"in e))return new Error("Data object must be a valid optgroup or option");{const t=this.validateOption(e);if(t)return t}}return null}validateOption(t){return"text"in t?null:new Error("Option must have a text")}partialToFullData(t){let e=[];return t.forEach((t=>{if(t instanceof n||"label"in t){let s=[];"options"in t&&t.options&&t.options.forEach((t=>{s.push(new a(t))})),s.length>0&&e.push(new n(t))}(t instanceof a||"text"in t)&&e.push(new a(t))})),e}setData(t){this.data=this.partialToFullData(t),"single"===this.selectType&&this.setSelectedBy("id",this.getSelected())}getData(){return this.filter(null,!0)}getDataOptions(){return this.filter(null,!1)}addOption(t,e=!1){if(e){let e=[new a(t)];this.setData(e.concat(this.getData()))}else this.setData(this.getData().concat(new a(t)))}setSelectedBy(t,e){let s=null,i=!1;const l=[];for(let o of this.data){if(o instanceof n)for(let n of o.options)s||(s=n),n.selected=!i&&e.includes(n[t]),n.selected&&(l.push(n),"single"===this.selectType&&(i=!0));o instanceof a&&(s||(s=o),o.selected=!i&&e.includes(o[t]),o.selected&&(l.push(o),"single"===this.selectType&&(i=!0)))}"single"===this.selectType&&s&&!i&&(s.selected=!0,l.push(s));const o=e.map((e=>{var s;return(null===(s=l.find((s=>s[t]===e)))||void 0===s?void 0:s.id)||""}));this.selectedOrder=o}getSelected(){return this.getSelectedOptions().map((t=>t.id))}getSelectedValues(){return this.getSelectedOptions().map((t=>t.value))}getSelectedOptions(){return this.filter((t=>t.selected),!1)}getOptgroupByID(t){for(let e of this.data)if(e instanceof n&&e.id===t)return e;return null}getOptionByID(t){let e=this.filter((e=>e.id===t),!1);return e.length?e[0]:null}getSelectType(){return this.selectType}getFirstOption(){let t=null;for(let e of this.data)if(e instanceof n?t=e.options[0]:e instanceof a&&(t=e),t)break;return t}search(t,e){return""===(t=t.trim())?this.getData():this.filter((s=>e(s,t)),!0)}filter(t,e){const s=[];return this.data.forEach((i=>{if(i instanceof n){let l=[];if(i.options.forEach((i=>{t&&!t(i)||(e?l.push(new a(i)):s.push(new a(i)))})),l.length>0){let t=new n(i);t.options=l,s.push(t)}}i instanceof a&&(t&&!t(i)||s.push(new a(i)))})),s}selectedOrderOptions(t){const e=[];return this.selectedOrder.forEach((s=>{const i=t.find((t=>t.id===s));i&&e.push(i)})),t.forEach((t=>{let s=!1;e.forEach((e=>{t.id!==e.id||(s=!0)})),s||e.push(t)})),e}}class o{constructor(t,e,s,i){this.store=s,this.settings=t,this.classes=e,this.callbacks=i,this.main=this.mainDiv(),this.content=this.contentDiv(),this.updateClassStyles(),this.updateAriaAttributes(),this.settings.contentLocation&&this.settings.contentLocation.appendChild(this.content.main)}enable(){this.main.main.classList.remove(this.classes.disabled),this.content.search.input.disabled=!1}disable(){this.main.main.classList.add(this.classes.disabled),this.content.search.input.disabled=!0}open(){this.main.arrow.path.setAttribute("d",this.classes.arrowOpen),this.main.main.classList.add("up"===this.settings.openPosition?this.classes.openAbove:this.classes.openBelow),this.main.main.setAttribute("aria-expanded","true"),this.moveContent();const t=this.store.getSelectedOptions();if(t.length){const e=t[t.length-1].id,s=this.content.list.querySelector('[data-id="'+e+'"]');s&&this.ensureElementInView(this.content.list,s)}}close(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.remove(this.classes.openBelow),this.main.main.setAttribute("aria-expanded","false"),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.main.arrow.path.setAttribute("d",this.classes.arrowClose)}updateClassStyles(){if(this.main.main.className="",this.main.main.removeAttribute("style"),this.content.main.className="",this.content.main.removeAttribute("style"),this.main.main.classList.add(this.classes.main),this.content.main.classList.add(this.classes.content),""!==this.settings.style&&(this.main.main.style.cssText=this.settings.style,this.content.main.style.cssText=this.settings.style),this.settings.class.length)for(const t of this.settings.class)""!==t.trim()&&(this.main.main.classList.add(t.trim()),this.content.main.classList.add(t.trim()));"relative"!==this.settings.contentPosition&&"fixed"!==this.settings.contentPosition||this.content.main.classList.add("ss-"+this.settings.contentPosition)}updateAriaAttributes(){this.main.main.role="combobox",this.main.main.setAttribute("aria-haspopup","listbox"),this.main.main.setAttribute("aria-controls",this.content.main.id),this.main.main.setAttribute("aria-expanded","false"),this.content.main.setAttribute("role","listbox")}mainDiv(){var t;const e=document.createElement("div");e.dataset.id=this.settings.id,e.setAttribute("aria-label",this.settings.ariaLabel),e.tabIndex=0,e.onkeydown=t=>{switch(t.key){case"ArrowUp":case"ArrowDown":return this.callbacks.open(),"ArrowDown"===t.key?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Enter":case" ":this.callbacks.open();const e=this.content.list.querySelector("."+this.classes.highlighted);return e&&e.click(),!1;case"Escape":return this.callbacks.close(),!1}return 1===t.key.length&&this.callbacks.open(),!0},e.onclick=t=>{this.settings.disabled||(this.settings.isOpen?this.callbacks.close():this.callbacks.open())};const s=document.createElement("div");s.classList.add(this.classes.values),e.appendChild(s);const i=document.createElement("div");i.classList.add(this.classes.deselect);const n=null===(t=this.store)||void 0===t?void 0:t.getSelectedOptions();!this.settings.allowDeselect||this.settings.isMultiple&&n&&n.length<=0?i.classList.add(this.classes.hide):i.classList.remove(this.classes.hide),i.onclick=t=>{if(t.stopPropagation(),this.settings.disabled)return;let e=!0;const s=this.store.getSelectedOptions(),i=[];if(this.callbacks.beforeChange&&(e=!0===this.callbacks.beforeChange(i,s)),e){if(this.settings.isMultiple)this.callbacks.setSelected([],!1),this.updateDeselectAll();else{const t=this.store.getFirstOption(),e=t?t.id:"";this.callbacks.setSelected(e,!1)}this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(this.store.getSelectedOptions())}};const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100");const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.deselectPath),a.appendChild(l),i.appendChild(a),e.appendChild(i);const o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.classList.add(this.classes.arrow),o.setAttribute("viewBox","0 0 100 100");const h=document.createElementNS("http://www.w3.org/2000/svg","path");return h.setAttribute("d",this.classes.arrowClose),this.settings.alwaysOpen&&o.classList.add(this.classes.hide),o.appendChild(h),e.appendChild(o),{main:e,values:s,deselect:{main:i,svg:a,path:l},arrow:{main:o,path:h}}}mainFocus(t){"click"!==t&&this.main.main.focus({preventScroll:!0})}placeholder(){const t=this.store.filter((t=>t.placeholder),!1);let e=this.settings.placeholderText;t.length&&(""!==t[0].html?e=t[0].html:""!==t[0].text&&(e=t[0].text));const s=document.createElement("div");return s.classList.add(this.classes.placeholder),s.innerHTML=e,s}renderValues(){this.settings.isMultiple?(this.renderMultipleValues(),this.updateDeselectAll()):this.renderSingleValue()}renderSingleValue(){const t=this.store.filter((t=>t.selected&&!t.placeholder),!1),e=t.length>0?t[0]:null;if(e){const t=document.createElement("div");t.classList.add(this.classes.single),e.html?t.innerHTML=e.html:t.innerText=e.text,this.main.values.innerHTML=t.outerHTML}else this.main.values.innerHTML=this.placeholder().outerHTML;this.settings.allowDeselect&&t.length?this.main.deselect.main.classList.remove(this.classes.hide):this.main.deselect.main.classList.add(this.classes.hide)}renderMultipleValues(){let t=this.main.values.childNodes,e=this.store.filter((t=>t.selected&&t.display),!1);if(0===e.length)return void(this.main.values.innerHTML=this.placeholder().outerHTML);{const t=this.main.values.querySelector("."+this.classes.placeholder);t&&t.remove()}if(e.length>this.settings.maxValuesShown){const t=document.createElement("div");return t.classList.add(this.classes.max),t.textContent=this.settings.maxValuesMessage.replace("{number}",e.length.toString()),void(this.main.values.innerHTML=t.outerHTML)}{const t=this.main.values.querySelector("."+this.classes.max);t&&t.remove()}this.settings.keepOrder&&(e=this.store.selectedOrderOptions(e));let s=[];for(let i=0;it.id===a),!1).length||s.push(n)}}for(const t of s)t.classList.add(this.classes.valueOut),setTimeout((()=>{this.main.values.hasChildNodes()&&this.main.values.contains(t)&&this.main.values.removeChild(t)}),100);t=this.main.values.childNodes;for(let s=0;s{if(e.preventDefault(),e.stopPropagation(),this.settings.disabled)return;let s=!0;const i=this.store.getSelectedOptions(),l=i.filter((e=>e.selected&&e.id!==t.id),!0);if(!(this.settings.minSelected&&l.length{this.callbacks.search(t.target.value)}),100),e.onkeydown=t=>{switch(t.key){case"ArrowUp":case"ArrowDown":return"ArrowDown"===t.key?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Escape":return this.callbacks.close(),!1;case" ":const e=this.content.list.querySelector("."+this.classes.highlighted);return!e||(e.click(),!1);case"Enter":if(this.callbacks.addable)return i.click(),!1;{const t=this.content.list.querySelector("."+this.classes.highlighted);if(t)return t.click(),!1}return!0}return!0},t.appendChild(e),this.callbacks.addable){i.classList.add(this.classes.addable);const e=document.createElementNS("http://www.w3.org/2000/svg","svg");e.setAttribute("viewBox","0 0 100 100");const s=document.createElementNS("http://www.w3.org/2000/svg","path");s.setAttribute("d",this.classes.addablePath),e.appendChild(s),i.appendChild(e),i.onclick=t=>{if(t.preventDefault(),t.stopPropagation(),!this.callbacks.addable)return;const e=this.content.search.input.value.trim();if(""===e)return void this.content.search.input.focus();const s=t=>{let e=new a(t);if(this.callbacks.addOption(e),this.settings.isMultiple){let t=this.store.getSelected();t.push(e.id),this.callbacks.setSelected(t,!0)}else this.callbacks.setSelected([e.id],!0);this.callbacks.search(""),this.settings.closeOnSelect&&setTimeout((()=>{this.callbacks.close()}),100)},i=this.callbacks.addable(e);!1!==i&&null!=i&&(i instanceof Promise?i.then((t=>{"string"==typeof t?s({text:t,value:t}):i instanceof Error?this.renderError(i.message):s(t)})):"string"==typeof i?s({text:i,value:i}):i instanceof Error?this.renderError(i.message):s(i))},t.appendChild(i),n.addable={main:i,svg:e,path:s}}return n}searchFocus(){this.content.search.input.focus()}getOptions(t=!1,e=!1,s=!1){let i="."+this.classes.option;return t&&(i+=":not(."+this.classes.placeholder+")"),e&&(i+=":not(."+this.classes.disabled+")"),s&&(i+=":not(."+this.classes.hide+")"),Array.from(this.content.list.querySelectorAll(i))}highlight(t){const e=this.getOptions(!0,!0,!0);if(0===e.length)return;if(1===e.length&&!e[0].classList.contains(this.classes.highlighted))return void e[0].classList.add(this.classes.highlighted);let s=!1;for(const t of e)t.classList.contains(this.classes.highlighted)&&(s=!0);if(!s)for(const t of e)if(t.classList.contains(this.classes.selected)){t.classList.add(this.classes.highlighted);break}for(let s=0;s=0?s-1:e.length-1];a.classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,a);const l=a.parentElement;if(l&&l.classList.contains(this.classes.close)){const t=l.querySelector("."+this.classes.optgroupLabel);t&&t.click()}return}e["down"===t?0:e.length-1].classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,e["down"===t?0:e.length-1])}listDiv(){const t=document.createElement("div");return t.classList.add(this.classes.list),t}renderError(t){this.content.list.innerHTML="";const e=document.createElement("div");e.classList.add(this.classes.error),e.textContent=t,this.content.list.appendChild(e)}renderSearching(){this.content.list.innerHTML="";const t=document.createElement("div");t.classList.add(this.classes.searching),t.textContent=this.settings.searchingText,this.content.list.appendChild(t)}renderOptions(t){if(this.content.list.innerHTML="",0===t.length){const t=document.createElement("div");return t.classList.add(this.classes.search),this.callbacks.addable?t.innerHTML=this.settings.addableText.replace("{value}",this.content.search.input.value):t.innerHTML=this.settings.searchText,void this.content.list.appendChild(t)}if(this.settings.allowDeselect&&!this.settings.isMultiple){this.store.filter((t=>t.placeholder),!1).length||this.store.addOption(new a({text:"",value:"",selected:!1,placeholder:!0}),!0)}for(const e of t){if(e instanceof n){const t=document.createElement("div");t.classList.add(this.classes.optgroup);const s=document.createElement("div");s.classList.add(this.classes.optgroupLabel),t.appendChild(s);const i=document.createElement("div");i.classList.add(this.classes.optgroupLabelText),i.textContent=e.label,s.appendChild(i);const n=document.createElement("div");if(n.classList.add(this.classes.optgroupActions),s.appendChild(n),this.settings.isMultiple&&e.selectAll){const t=document.createElement("div");t.classList.add(this.classes.optgroupSelectAll);let s=!0;for(const t of e.options)if(!t.selected){s=!1;break}s&&t.classList.add(this.classes.selected);const i=document.createElement("span");i.textContent=e.selectAllText,t.appendChild(i);const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100"),t.appendChild(a);const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.optgroupSelectAllBox),a.appendChild(l);const o=document.createElementNS("http://www.w3.org/2000/svg","path");o.setAttribute("d",this.classes.optgroupSelectAllCheck),a.appendChild(o),t.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation();const i=this.store.getSelected();if(s){const t=i.filter((t=>{for(const s of e.options)if(t===s.id)return!1;return!0}));this.callbacks.setSelected(t,!0)}else{const t=i.concat(e.options.map((t=>t.id)));for(const t of e.options)this.store.getOptionByID(t.id)||this.callbacks.addOption(t);this.callbacks.setSelected(t,!0)}})),n.appendChild(t)}if("off"!==e.closable){const i=document.createElement("div");i.classList.add(this.classes.optgroupClosable);const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100"),a.classList.add(this.classes.arrow),i.appendChild(a);const l=document.createElementNS("http://www.w3.org/2000/svg","path");a.appendChild(l),e.options.some((t=>t.selected))||""!==this.content.search.input.value.trim()?(i.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):"open"===e.closable?(t.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):"close"===e.closable&&(t.classList.add(this.classes.close),l.setAttribute("d",this.classes.arrowClose)),s.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation(),t.classList.contains(this.classes.close)?(t.classList.remove(this.classes.close),t.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):(t.classList.remove(this.classes.open),t.classList.add(this.classes.close),l.setAttribute("d",this.classes.arrowClose))})),n.appendChild(i)}t.appendChild(s);for(const s of e.options)t.appendChild(this.option(s));this.content.list.appendChild(t)}e instanceof a&&this.content.list.appendChild(this.option(e))}}option(t){if(t.placeholder){const t=document.createElement("div");return t.classList.add(this.classes.option),t.classList.add(this.classes.hide),t}const e=document.createElement("div");return e.dataset.id=t.id,e.classList.add(this.classes.option),e.setAttribute("role","option"),t.class&&t.class.split(" ").forEach((t=>{e.classList.add(t)})),t.style&&(e.style.cssText=t.style),this.settings.searchHighlight&&""!==this.content.search.input.value.trim()?e.innerHTML=this.highlightText(""!==t.html?t.html:t.text,this.content.search.input.value,this.classes.searchHighlighter):""!==t.html?e.innerHTML=t.html:e.textContent=t.text,this.settings.showOptionTooltips&&e.textContent&&e.setAttribute("title",e.textContent),t.display||e.classList.add(this.classes.hide),t.disabled&&e.classList.add(this.classes.disabled),t.selected&&this.settings.hideSelected&&e.classList.add(this.classes.hide),t.selected?(e.classList.add(this.classes.selected),e.setAttribute("aria-selected","true"),this.main.main.setAttribute("aria-activedescendant",e.id)):(e.classList.remove(this.classes.selected),e.setAttribute("aria-selected","false")),e.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation();const s=this.store.getSelected(),i=e.currentTarget,n=String(i.dataset.id);if(t.disabled||t.selected&&!this.settings.allowDeselect)return;if(this.settings.isMultiple&&this.settings.maxSelected<=s.length&&!t.selected||this.settings.isMultiple&&this.settings.minSelected>=s.length&&t.selected)return;let a=!1;const l=this.store.getSelectedOptions();let o=[];this.settings.isMultiple&&(o=t.selected?l.filter((t=>t.id!==n)):l.concat(t)),this.settings.isMultiple||(o=t.selected?[]:[t]),this.callbacks.beforeChange||(a=!0),this.callbacks.beforeChange&&(a=!1!==this.callbacks.beforeChange(o,l)),a&&(this.store.getOptionByID(n)||this.callbacks.addOption(t),this.callbacks.setSelected(o.map((t=>t.id)),!1),this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(o))})),e}destroy(){this.main.main.remove(),this.content.main.remove()}highlightText(t,e,s){let i=t;const n=new RegExp("(?![^<]*>)("+e.trim()+")(?![^<]*>[^<>]*${o}`),i}moveContentAbove(){const t=this.main.main.offsetHeight,e=this.content.main.offsetHeight;this.main.main.classList.remove(this.classes.openBelow),this.main.main.classList.add(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.content.main.classList.add(this.classes.openAbove);const s=this.main.main.getBoundingClientRect();this.content.main.style.margin="-"+(t+e-1)+"px 0px 0px 0px",this.content.main.style.top=s.top+s.height+("fixed"===this.settings.contentPosition?0:window.scrollY)+"px",this.content.main.style.left=s.left+("fixed"===this.settings.contentPosition?0:window.scrollX)+"px",this.content.main.style.width=s.width+"px"}moveContentBelow(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.add(this.classes.openBelow),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.add(this.classes.openBelow);const t=this.main.main.getBoundingClientRect();this.content.main.style.margin="-1px 0px 0px 0px","relative"!==this.settings.contentPosition&&(this.content.main.style.top=t.top+t.height+("fixed"===this.settings.contentPosition?0:window.scrollY)+"px",this.content.main.style.left=t.left+("fixed"===this.settings.contentPosition?0:window.scrollX)+"px",this.content.main.style.width=t.width+"px")}ensureElementInView(t,e){const s=t.scrollTop+t.offsetTop,i=s+t.clientHeight,n=e.offsetTop,a=n+e.clientHeight;ni&&(t.scrollTop+=a-i)}putContent(){const t=this.main.main.offsetHeight,e=this.main.main.getBoundingClientRect(),s=this.content.main.offsetHeight;return window.innerHeight-(e.top+t)<=s&&e.top>s?"up":"down"}updateDeselectAll(){if(!this.store||!this.settings)return;const t=this.store.getSelectedOptions(),e=t&&t.length>0,s=this.settings.isMultiple,i=this.settings.allowDeselect,n=this.main.deselect.main,a=this.classes.hide;!i||s&&!e?n.classList.add(a):n.classList.remove(a)}}class h{constructor(t){this.listen=!1,this.observer=null,this.select=t,this.valueChange=this.valueChange.bind(this),this.select.addEventListener("change",this.valueChange,{passive:!0}),this.observer=new MutationObserver(this.observeCall.bind(this)),this.changeListen(!0)}enable(){this.select.disabled=!1}disable(){this.select.disabled=!0}hideUI(){this.select.tabIndex=-1,this.select.style.display="none",this.select.setAttribute("aria-hidden","true")}showUI(){this.select.removeAttribute("tabindex"),this.select.style.display="",this.select.removeAttribute("aria-hidden")}changeListen(t){this.listen=t,t&&this.observer&&this.observer.observe(this.select,{subtree:!0,childList:!0,attributes:!0}),t||this.observer&&this.observer.disconnect()}valueChange(t){return this.listen&&this.onValueChange&&this.onValueChange(this.getSelectedOptions()),!0}observeCall(t){if(!this.listen)return;let e=!1,s=!1,i=!1;for(const n of t){if(n.target===this.select&&("disabled"===n.attributeName&&(s=!0),"class"===n.attributeName&&(e=!0),"childList"===n.type)){for(const t of n.addedNodes)if("OPTION"===t.nodeName&&t.value===this.select.value){this.select.dispatchEvent(new Event("change"));break}i=!0}"OPTGROUP"!==n.target.nodeName&&"OPTION"!==n.target.nodeName||(i=!0)}e&&this.onClassChange&&this.onClassChange(this.select.className.split(" ")),s&&this.onDisabledChange&&(this.changeListen(!1),this.onDisabledChange(this.select.disabled),this.changeListen(!0)),i&&this.onOptionsChange&&(this.changeListen(!1),this.onOptionsChange(this.getData()),this.changeListen(!0))}getData(){let t=[];const e=this.select.childNodes;for(const s of e)"OPTGROUP"===s.nodeName&&t.push(this.getDataFromOptgroup(s)),"OPTION"===s.nodeName&&t.push(this.getDataFromOption(s));return t}getDataFromOptgroup(t){let e={id:t.id,label:t.label,selectAll:!!t.dataset&&"true"===t.dataset.selectall,selectAllText:t.dataset?t.dataset.selectalltext:"Select all",closable:t.dataset?t.dataset.closable:"off",options:[]};const s=t.childNodes;for(const t of s)"OPTION"===t.nodeName&&e.options.push(this.getDataFromOption(t));return e}getDataFromOption(t){return{id:t.id,value:t.value,text:t.text,html:t.dataset&&t.dataset.html?t.dataset.html:"",selected:t.selected,display:"none"!==t.style.display,disabled:t.disabled,mandatory:!!t.dataset&&"true"===t.dataset.mandatory,placeholder:"true"===t.dataset.placeholder,class:t.className,style:t.style.cssText,data:t.dataset}}getSelectedOptions(){let t=[];const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected&&t.push(this.getDataFromOption(e))}}if("OPTION"===s.nodeName){const e=s;e.selected&&t.push(this.getDataFromOption(e))}}return t}getSelectedValues(){return this.getSelectedOptions().map((t=>t.value))}setSelected(t){this.changeListen(!1);const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.id)}}if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.id)}}this.changeListen(!0)}setSelectedByValue(t){this.changeListen(!1);const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.value)}}if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.value)}}this.changeListen(!0)}updateSelect(t,e,s){this.changeListen(!1),t&&(this.select.dataset.id=t),e&&(this.select.style.cssText=e),s&&(this.select.className="",s.forEach((t=>{""!==t.trim()&&this.select.classList.add(t.trim())}))),this.changeListen(!0)}updateOptions(t){this.changeListen(!1),this.select.innerHTML="";for(const e of t)e instanceof n&&this.select.appendChild(this.createOptgroup(e)),e instanceof a&&this.select.appendChild(this.createOption(e));this.select.dispatchEvent(new Event("change",{bubbles:!0})),this.changeListen(!0)}createOptgroup(t){const e=document.createElement("optgroup");if(e.id=t.id,e.label=t.label,t.selectAll&&(e.dataset.selectAll="true"),"off"!==t.closable&&(e.dataset.closable=t.closable),t.options)for(const s of t.options)e.appendChild(this.createOption(s));return e}createOption(t){const e=document.createElement("option");return e.id=t.id,e.value=t.value,e.textContent=t.text,""!==t.html&&e.setAttribute("data-html",t.html),t.selected&&(e.selected=t.selected),t.disabled&&(e.disabled=!0),t.display||(e.style.display="none"),t.placeholder&&e.setAttribute("data-placeholder","true"),t.mandatory&&e.setAttribute("data-mandatory","true"),t.class&&t.class.split(" ").forEach((t=>{e.classList.add(t)})),t.data&&"object"==typeof t.data&&Object.keys(t.data).forEach((s=>{e.setAttribute("data-"+function(t){const e=t.replace(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g,(t=>"-"+t.toLowerCase()));return t[0]===t[0].toUpperCase()?e.substring(1):e}(s),t.data[s])})),e}destroy(){this.changeListen(!1),this.select.removeEventListener("change",this.valueChange),this.observer&&(this.observer.disconnect(),this.observer=null),delete this.select.dataset.id,this.showUI()}}class c{constructor(t){this.id="",this.style="",this.class=[],this.isMultiple=!1,this.isOpen=!1,this.isFullOpen=!1,this.intervalMove=null,t||(t={}),this.id="ss-"+e(),this.style=t.style||"",this.class=t.class||[],this.disabled=void 0!==t.disabled&&t.disabled,this.alwaysOpen=void 0!==t.alwaysOpen&&t.alwaysOpen,this.showSearch=void 0===t.showSearch||t.showSearch,this.focusSearch=void 0===t.focusSearch||t.focusSearch,this.ariaLabel=t.ariaLabel||"Combobox",this.searchPlaceholder=t.searchPlaceholder||"Search",this.searchText=t.searchText||"No Results",this.searchingText=t.searchingText||"Searching...",this.searchHighlight=void 0!==t.searchHighlight&&t.searchHighlight,this.closeOnSelect=void 0===t.closeOnSelect||t.closeOnSelect,this.contentLocation=t.contentLocation||document.body,this.contentPosition=t.contentPosition||"absolute",this.openPosition=t.openPosition||"auto",this.placeholderText=void 0!==t.placeholderText?t.placeholderText:"Select Value",this.allowDeselect=void 0!==t.allowDeselect&&t.allowDeselect,this.hideSelected=void 0!==t.hideSelected&&t.hideSelected,this.keepOrder=void 0!==t.keepOrder&&t.keepOrder,this.showOptionTooltips=void 0!==t.showOptionTooltips&&t.showOptionTooltips,this.minSelected=t.minSelected||0,this.maxSelected=t.maxSelected||1e3,this.timeoutDelay=t.timeoutDelay||200,this.maxValuesShown=t.maxValuesShown||20,this.maxValuesMessage=t.maxValuesMessage||"{number} selected",this.addableText=t.addableText||'Press "Enter" to add {value}'}}return class{constructor(e){var i;if(this.events={search:void 0,searchFilter:(t,e)=>-1!==t.text.toLowerCase().indexOf(e.toLowerCase()),addable:void 0,beforeChange:void 0,afterChange:void 0,beforeOpen:void 0,afterOpen:void 0,beforeClose:void 0,afterClose:void 0},this.windowResize=s((()=>{(this.settings.isOpen||this.settings.isFullOpen)&&this.render.moveContent()})),this.windowScroll=s((()=>{(this.settings.isOpen||this.settings.isFullOpen)&&this.render.moveContent()})),this.documentClick=t=>{this.settings.isOpen&&t.target&&!function(t,e){function s(t,s){return s&&t&&t.classList&&t.classList.contains(s)||s&&t&&t.dataset&&t.dataset.id&&t.dataset.id===e?t:null}return s(t,e)||function t(e,i){return e&&e!==document?s(e,i)?e:t(e.parentNode,i):null}(t,e)}(t.target,this.settings.id)&&this.close(t.type)},this.windowVisibilityChange=()=>{document.hidden&&this.close()},this.selectEl="string"==typeof e.select?document.querySelector(e.select):e.select,!this.selectEl)return void(e.events&&e.events.error&&e.events.error(new Error("Could not find select element")));if("SELECT"!==this.selectEl.tagName)return void(e.events&&e.events.error&&e.events.error(new Error("Element isnt of type select")));this.selectEl.dataset.ssid&&this.destroy(),this.settings=new c(e.settings),this.cssClasses=new t(e.cssClasses);const n=["afterChange","beforeOpen","afterOpen","beforeClose","afterClose"];for(const t in e.events)e.events.hasOwnProperty(t)&&(-1!==n.indexOf(t)?this.events[t]=s(e.events[t],100):this.events[t]=e.events[t]);this.settings.disabled=(null===(i=e.settings)||void 0===i?void 0:i.disabled)?e.settings.disabled:this.selectEl.disabled,this.settings.isMultiple=this.selectEl.multiple,this.settings.style=this.selectEl.style.cssText,this.settings.class=this.selectEl.className.split(" "),this.select=new h(this.selectEl),this.select.updateSelect(this.settings.id,this.settings.style,this.settings.class),this.select.hideUI(),this.select.onValueChange=t=>{this.setSelected(t.map((t=>t.id)))},this.select.onClassChange=t=>{this.settings.class=t,this.render.updateClassStyles()},this.select.onDisabledChange=t=>{t?this.disable():this.enable()},this.select.onOptionsChange=t=>{this.setData(t)},this.store=new l(this.settings.isMultiple?"multiple":"single",e.data?e.data:this.select.getData()),e.data&&this.select.updateOptions(this.store.getData());const a={open:this.open.bind(this),close:this.close.bind(this),addable:this.events.addable?this.events.addable:void 0,setSelected:this.setSelected.bind(this),addOption:this.addOption.bind(this),search:this.search.bind(this),beforeChange:this.events.beforeChange,afterChange:this.events.afterChange};this.render=new o(this.settings,this.cssClasses,this.store,a),this.render.renderValues(),this.render.renderOptions(this.store.getData());const r=this.selectEl.getAttribute("aria-label"),d=this.selectEl.getAttribute("aria-labelledby");r?this.render.main.main.setAttribute("aria-label",r):d&&this.render.main.main.setAttribute("aria-labelledby",d),this.selectEl.parentNode&&this.selectEl.parentNode.insertBefore(this.render.main.main,this.selectEl.nextSibling),window.addEventListener("resize",this.windowResize,!1),"auto"===this.settings.openPosition&&window.addEventListener("scroll",this.windowScroll,!1),document.addEventListener("visibilitychange",this.windowVisibilityChange),this.settings.disabled&&this.disable(),this.settings.alwaysOpen&&this.open(),this.selectEl.slim=this}enable(){this.settings.disabled=!1,this.select.enable(),this.render.enable()}disable(){this.settings.disabled=!0,this.select.disable(),this.render.disable()}getData(){return this.store.getData()}setData(t){const e=this.store.getSelected(),s=this.store.validateDataArray(t);if(s)return void(this.events.error&&this.events.error(s));this.store.setData(t);const n=this.store.getData();this.select.updateOptions(n),this.render.renderValues(),this.render.renderOptions(n),this.events.afterChange&&!i(e,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}getSelected(){let t=this.store.getSelectedOptions();return this.settings.keepOrder&&(t=this.store.selectedOrderOptions(t)),t.map((t=>t.value))}setSelected(t,e=!0){const s=this.store.getSelected(),n=this.store.getDataOptions();t=Array.isArray(t)?t:[t];const a=[];for(const e of t)if(n.find((t=>t.id==e)))a.push(e);else for(const t of n.filter((t=>t.value==e)))a.push(t.id);this.store.setSelectedBy("id",a);const l=this.store.getData();this.select.updateOptions(l),this.render.renderValues(),""!==this.render.content.search.input.value?this.search(this.render.content.search.input.value):this.render.renderOptions(l),e&&this.events.afterChange&&!i(s,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}addOption(t){const e=this.store.getSelected();this.store.getDataOptions().some((e=>{var s;return e.value===(null!==(s=t.value)&&void 0!==s?s:t.text)}))||this.store.addOption(t);const s=this.store.getData();this.select.updateOptions(s),this.render.renderValues(),this.render.renderOptions(s),this.events.afterChange&&!i(e,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}open(){this.settings.disabled||this.settings.isOpen||(this.events.beforeOpen&&this.events.beforeOpen(),this.render.open(),this.settings.showSearch&&this.settings.focusSearch&&this.render.searchFocus(),this.settings.isOpen=!0,setTimeout((()=>{this.events.afterOpen&&this.events.afterOpen(),this.settings.isOpen&&(this.settings.isFullOpen=!0),document.addEventListener("click",this.documentClick)}),this.settings.timeoutDelay),"absolute"===this.settings.contentPosition&&(this.settings.intervalMove&&clearInterval(this.settings.intervalMove),this.settings.intervalMove=setInterval(this.render.moveContent.bind(this.render),500)))}close(t=null){this.settings.isOpen&&!this.settings.alwaysOpen&&(this.events.beforeClose&&this.events.beforeClose(),this.render.close(),""!==this.render.content.search.input.value&&this.search(""),this.render.mainFocus(t),this.settings.isOpen=!1,this.settings.isFullOpen=!1,setTimeout((()=>{this.events.afterClose&&this.events.afterClose(),document.removeEventListener("click",this.documentClick)}),this.settings.timeoutDelay),this.settings.intervalMove&&clearInterval(this.settings.intervalMove))}search(t){if(this.render.content.search.input.value!==t&&(this.render.content.search.input.value=t),!this.events.search)return void this.render.renderOptions(""===t?this.store.getData():this.store.search(t,this.events.searchFilter));this.render.renderSearching();const e=this.events.search(t,this.store.getSelectedOptions());e instanceof Promise?e.then((t=>{this.render.renderOptions(this.store.partialToFullData(t))})).catch((t=>{this.render.renderError("string"==typeof t?t:t.message)})):Array.isArray(e)?this.render.renderOptions(this.store.partialToFullData(e)):this.render.renderError("Search event must return a promise or an array of data")}destroy(){document.removeEventListener("click",this.documentClick),window.removeEventListener("resize",this.windowResize,!1),"auto"===this.settings.openPosition&&window.removeEventListener("scroll",this.windowScroll,!1),document.removeEventListener("visibilitychange",this.windowVisibilityChange),this.store.setData([]),this.render.destroy(),this.select.destroy()}}})); diff --git a/dist/slimselect.umd.js b/dist/slimselect.umd.js index 239c7a8b..5756fc69 100644 --- a/dist/slimselect.umd.js +++ b/dist/slimselect.umd.js @@ -430,7 +430,7 @@ } } } - if (this.settings.contentPosition === 'relative') { + if (this.settings.contentPosition === 'relative' || this.settings.contentPosition === 'fixed') { this.content.main.classList.add('ss-' + this.settings.contentPosition); } } @@ -469,6 +469,9 @@ this.callbacks.close(); return false; } + if (e.key.length === 1) { + this.callbacks.open(); + } return true; }; main.onclick = (e) => { @@ -1151,7 +1154,6 @@ } const optionEl = document.createElement('div'); optionEl.dataset.id = option.id; - optionEl.id = option.id; optionEl.classList.add(this.classes.option); optionEl.setAttribute('role', 'option'); if (option.class) { @@ -1275,8 +1277,10 @@ this.content.main.classList.add(this.classes.openAbove); const containerRect = this.main.main.getBoundingClientRect(); this.content.main.style.margin = '-' + (mainHeight + contentHeight - 1) + 'px 0px 0px 0px'; - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px'; - this.content.main.style.left = containerRect.left + window.scrollX + 'px'; + this.content.main.style.top = + containerRect.top + containerRect.height + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + 'px'; + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px'; this.content.main.style.width = containerRect.width + 'px'; } moveContentBelow() { @@ -1287,8 +1291,13 @@ const containerRect = this.main.main.getBoundingClientRect(); this.content.main.style.margin = '-1px 0px 0px 0px'; if (this.settings.contentPosition !== 'relative') { - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px'; - this.content.main.style.left = containerRect.left + window.scrollX + 'px'; + this.content.main.style.top = + containerRect.top + + containerRect.height + + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + + 'px'; + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px'; this.content.main.style.width = containerRect.width + 'px'; } } diff --git a/dist/slimselect.umd.min.js b/dist/slimselect.umd.min.js index 16f060e7..e77916b0 100644 --- a/dist/slimselect.umd.min.js +++ b/dist/slimselect.umd.min.js @@ -1 +1 @@ -!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).SlimSelect=e()}(this,(function(){"use strict";class t{constructor(t){t||(t={}),this.main=t.main||"ss-main",this.placeholder=t.placeholder||"ss-placeholder",this.values=t.values||"ss-values",this.single=t.single||"ss-single",this.max=t.max||"ss-max",this.value=t.value||"ss-value",this.valueText=t.valueText||"ss-value-text",this.valueDelete=t.valueDelete||"ss-value-delete",this.valueOut=t.valueOut||"ss-value-out",this.deselect=t.deselect||"ss-deselect",this.deselectPath=t.deselectPath||"M10,10 L90,90 M10,90 L90,10",this.arrow=t.arrow||"ss-arrow",this.arrowClose=t.arrowClose||"M10,30 L50,70 L90,30",this.arrowOpen=t.arrowOpen||"M10,70 L50,30 L90,70",this.content=t.content||"ss-content",this.openAbove=t.openAbove||"ss-open-above",this.openBelow=t.openBelow||"ss-open-below",this.search=t.search||"ss-search",this.searchHighlighter=t.searchHighlighter||"ss-search-highlight",this.searching=t.searching||"ss-searching",this.addable=t.addable||"ss-addable",this.addablePath=t.addablePath||"M50,10 L50,90 M10,50 L90,50",this.list=t.list||"ss-list",this.optgroup=t.optgroup||"ss-optgroup",this.optgroupLabel=t.optgroupLabel||"ss-optgroup-label",this.optgroupLabelText=t.optgroupLabelText||"ss-optgroup-label-text",this.optgroupActions=t.optgroupActions||"ss-optgroup-actions",this.optgroupSelectAll=t.optgroupSelectAll||"ss-selectall",this.optgroupSelectAllBox=t.optgroupSelectAllBox||"M60,10 L10,10 L10,90 L90,90 L90,50",this.optgroupSelectAllCheck=t.optgroupSelectAllCheck||"M30,45 L50,70 L90,10",this.optgroupClosable=t.optgroupClosable||"ss-closable",this.option=t.option||"ss-option",this.optionDelete=t.optionDelete||"M10,10 L90,90 M10,90 L90,10",this.highlighted=t.highlighted||"ss-highlighted",this.open=t.open||"ss-open",this.close=t.close||"ss-close",this.selected=t.selected||"ss-selected",this.error=t.error||"ss-error",this.disabled=t.disabled||"ss-disabled",this.hide=t.hide||"ss-hide"}}function e(){return Math.random().toString(36).substring(2,10)}function s(t,e=50,s=!1){let i;return function(...n){const a=self,l=s&&!i;clearTimeout(i),i=setTimeout((()=>{i=null,s||t.apply(a,n)}),e),l&&t.apply(a,n)}}function i(t,e){return JSON.stringify(t)===JSON.stringify(e)}class n{constructor(t){if(this.id=t.id&&""!==t.id?t.id:e(),this.label=t.label||"",this.selectAll=void 0!==t.selectAll&&t.selectAll,this.selectAllText=t.selectAllText||"Select All",this.closable=t.closable||"off",this.options=[],t.options)for(const e of t.options)this.options.push(new a(e))}}class a{constructor(t){this.id=t.id&&""!==t.id?t.id:e(),this.value=void 0===t.value?t.text:t.value,this.text=t.text||"",this.html=t.html||"",this.selected=void 0!==t.selected&&t.selected,this.display=void 0===t.display||t.display,this.disabled=void 0!==t.disabled&&t.disabled,this.mandatory=void 0!==t.mandatory&&t.mandatory,this.placeholder=void 0!==t.placeholder&&t.placeholder,this.class=t.class||"",this.style=t.style||"",this.data=t.data||{}}}class l{constructor(t,e){this.selectType="single",this.data=[],this.selectedOrder=[],this.selectType=t,this.setData(e)}validateDataArray(t){if(!Array.isArray(t))return new Error("Data must be an array");for(let e of t)if(e instanceof n||"label"in e){if(!("label"in e))return new Error("Optgroup must have a label");if("options"in e&&e.options)for(let t of e.options){const e=this.validateOption(t);if(e)return e}}else{if(!(e instanceof a||"text"in e))return new Error("Data object must be a valid optgroup or option");{const t=this.validateOption(e);if(t)return t}}return null}validateOption(t){return"text"in t?null:new Error("Option must have a text")}partialToFullData(t){let e=[];return t.forEach((t=>{if(t instanceof n||"label"in t){let s=[];"options"in t&&t.options&&t.options.forEach((t=>{s.push(new a(t))})),s.length>0&&e.push(new n(t))}(t instanceof a||"text"in t)&&e.push(new a(t))})),e}setData(t){this.data=this.partialToFullData(t),"single"===this.selectType&&this.setSelectedBy("id",this.getSelected())}getData(){return this.filter(null,!0)}getDataOptions(){return this.filter(null,!1)}addOption(t,e=!1){if(e){let e=[new a(t)];this.setData(e.concat(this.getData()))}else this.setData(this.getData().concat(new a(t)))}setSelectedBy(t,e){let s=null,i=!1;const l=[];for(let o of this.data){if(o instanceof n)for(let n of o.options)s||(s=n),n.selected=!i&&e.includes(n[t]),n.selected&&(l.push(n),"single"===this.selectType&&(i=!0));o instanceof a&&(s||(s=o),o.selected=!i&&e.includes(o[t]),o.selected&&(l.push(o),"single"===this.selectType&&(i=!0)))}"single"===this.selectType&&s&&!i&&(s.selected=!0,l.push(s));const o=e.map((e=>{var s;return(null===(s=l.find((s=>s[t]===e)))||void 0===s?void 0:s.id)||""}));this.selectedOrder=o}getSelected(){return this.getSelectedOptions().map((t=>t.id))}getSelectedValues(){return this.getSelectedOptions().map((t=>t.value))}getSelectedOptions(){return this.filter((t=>t.selected),!1)}getOptgroupByID(t){for(let e of this.data)if(e instanceof n&&e.id===t)return e;return null}getOptionByID(t){let e=this.filter((e=>e.id===t),!1);return e.length?e[0]:null}getSelectType(){return this.selectType}getFirstOption(){let t=null;for(let e of this.data)if(e instanceof n?t=e.options[0]:e instanceof a&&(t=e),t)break;return t}search(t,e){return""===(t=t.trim())?this.getData():this.filter((s=>e(s,t)),!0)}filter(t,e){const s=[];return this.data.forEach((i=>{if(i instanceof n){let l=[];if(i.options.forEach((i=>{t&&!t(i)||(e?l.push(new a(i)):s.push(new a(i)))})),l.length>0){let t=new n(i);t.options=l,s.push(t)}}i instanceof a&&(t&&!t(i)||s.push(new a(i)))})),s}selectedOrderOptions(t){const e=[];return this.selectedOrder.forEach((s=>{const i=t.find((t=>t.id===s));i&&e.push(i)})),t.forEach((t=>{let s=!1;e.forEach((e=>{t.id!==e.id||(s=!0)})),s||e.push(t)})),e}}class o{constructor(t,e,s,i){this.store=s,this.settings=t,this.classes=e,this.callbacks=i,this.main=this.mainDiv(),this.content=this.contentDiv(),this.updateClassStyles(),this.updateAriaAttributes(),this.settings.contentLocation&&this.settings.contentLocation.appendChild(this.content.main)}enable(){this.main.main.classList.remove(this.classes.disabled),this.content.search.input.disabled=!1}disable(){this.main.main.classList.add(this.classes.disabled),this.content.search.input.disabled=!0}open(){this.main.arrow.path.setAttribute("d",this.classes.arrowOpen),this.main.main.classList.add("up"===this.settings.openPosition?this.classes.openAbove:this.classes.openBelow),this.main.main.setAttribute("aria-expanded","true"),this.moveContent();const t=this.store.getSelectedOptions();if(t.length){const e=t[t.length-1].id,s=this.content.list.querySelector('[data-id="'+e+'"]');s&&this.ensureElementInView(this.content.list,s)}}close(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.remove(this.classes.openBelow),this.main.main.setAttribute("aria-expanded","false"),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.main.arrow.path.setAttribute("d",this.classes.arrowClose)}updateClassStyles(){if(this.main.main.className="",this.main.main.removeAttribute("style"),this.content.main.className="",this.content.main.removeAttribute("style"),this.main.main.classList.add(this.classes.main),this.content.main.classList.add(this.classes.content),""!==this.settings.style&&(this.main.main.style.cssText=this.settings.style,this.content.main.style.cssText=this.settings.style),this.settings.class.length)for(const t of this.settings.class)""!==t.trim()&&(this.main.main.classList.add(t.trim()),this.content.main.classList.add(t.trim()));"relative"===this.settings.contentPosition&&this.content.main.classList.add("ss-"+this.settings.contentPosition)}updateAriaAttributes(){this.main.main.role="combobox",this.main.main.setAttribute("aria-haspopup","listbox"),this.main.main.setAttribute("aria-controls",this.content.main.id),this.main.main.setAttribute("aria-expanded","false"),this.content.main.setAttribute("role","listbox")}mainDiv(){var t;const e=document.createElement("div");e.dataset.id=this.settings.id,e.setAttribute("aria-label",this.settings.ariaLabel),e.tabIndex=0,e.onkeydown=t=>{switch(t.key){case"ArrowUp":case"ArrowDown":return this.callbacks.open(),"ArrowDown"===t.key?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Enter":case" ":this.callbacks.open();const e=this.content.list.querySelector("."+this.classes.highlighted);return e&&e.click(),!1;case"Escape":return this.callbacks.close(),!1}return!0},e.onclick=t=>{this.settings.disabled||(this.settings.isOpen?this.callbacks.close():this.callbacks.open())};const s=document.createElement("div");s.classList.add(this.classes.values),e.appendChild(s);const i=document.createElement("div");i.classList.add(this.classes.deselect);const n=null===(t=this.store)||void 0===t?void 0:t.getSelectedOptions();!this.settings.allowDeselect||this.settings.isMultiple&&n&&n.length<=0?i.classList.add(this.classes.hide):i.classList.remove(this.classes.hide),i.onclick=t=>{if(t.stopPropagation(),this.settings.disabled)return;let e=!0;const s=this.store.getSelectedOptions(),i=[];if(this.callbacks.beforeChange&&(e=!0===this.callbacks.beforeChange(i,s)),e){if(this.settings.isMultiple)this.callbacks.setSelected([],!1),this.updateDeselectAll();else{const t=this.store.getFirstOption(),e=t?t.id:"";this.callbacks.setSelected(e,!1)}this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(this.store.getSelectedOptions())}};const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100");const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.deselectPath),a.appendChild(l),i.appendChild(a),e.appendChild(i);const o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.classList.add(this.classes.arrow),o.setAttribute("viewBox","0 0 100 100");const h=document.createElementNS("http://www.w3.org/2000/svg","path");return h.setAttribute("d",this.classes.arrowClose),this.settings.alwaysOpen&&o.classList.add(this.classes.hide),o.appendChild(h),e.appendChild(o),{main:e,values:s,deselect:{main:i,svg:a,path:l},arrow:{main:o,path:h}}}mainFocus(t){"click"!==t&&this.main.main.focus({preventScroll:!0})}placeholder(){const t=this.store.filter((t=>t.placeholder),!1);let e=this.settings.placeholderText;t.length&&(""!==t[0].html?e=t[0].html:""!==t[0].text&&(e=t[0].text));const s=document.createElement("div");return s.classList.add(this.classes.placeholder),s.innerHTML=e,s}renderValues(){this.settings.isMultiple?(this.renderMultipleValues(),this.updateDeselectAll()):this.renderSingleValue()}renderSingleValue(){const t=this.store.filter((t=>t.selected&&!t.placeholder),!1),e=t.length>0?t[0]:null;if(e){const t=document.createElement("div");t.classList.add(this.classes.single),e.html?t.innerHTML=e.html:t.innerText=e.text,this.main.values.innerHTML=t.outerHTML}else this.main.values.innerHTML=this.placeholder().outerHTML;this.settings.allowDeselect&&t.length?this.main.deselect.main.classList.remove(this.classes.hide):this.main.deselect.main.classList.add(this.classes.hide)}renderMultipleValues(){let t=this.main.values.childNodes,e=this.store.filter((t=>t.selected&&t.display),!1);if(0===e.length)return void(this.main.values.innerHTML=this.placeholder().outerHTML);{const t=this.main.values.querySelector("."+this.classes.placeholder);t&&t.remove()}if(e.length>this.settings.maxValuesShown){const t=document.createElement("div");return t.classList.add(this.classes.max),t.textContent=this.settings.maxValuesMessage.replace("{number}",e.length.toString()),void(this.main.values.innerHTML=t.outerHTML)}{const t=this.main.values.querySelector("."+this.classes.max);t&&t.remove()}this.settings.keepOrder&&(e=this.store.selectedOrderOptions(e));let s=[];for(let i=0;it.id===a),!1).length||s.push(n)}}for(const t of s)t.classList.add(this.classes.valueOut),setTimeout((()=>{this.main.values.hasChildNodes()&&this.main.values.contains(t)&&this.main.values.removeChild(t)}),100);t=this.main.values.childNodes;for(let s=0;s{if(e.preventDefault(),e.stopPropagation(),this.settings.disabled)return;let s=!0;const i=this.store.getSelectedOptions(),l=i.filter((e=>e.selected&&e.id!==t.id),!0);if(!(this.settings.minSelected&&l.length{this.callbacks.search(t.target.value)}),100),e.onkeydown=t=>{switch(t.key){case"ArrowUp":case"ArrowDown":return"ArrowDown"===t.key?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Escape":return this.callbacks.close(),!1;case" ":const e=this.content.list.querySelector("."+this.classes.highlighted);return!e||(e.click(),!1);case"Enter":if(this.callbacks.addable)return i.click(),!1;{const t=this.content.list.querySelector("."+this.classes.highlighted);if(t)return t.click(),!1}return!0}return!0},t.appendChild(e),this.callbacks.addable){i.classList.add(this.classes.addable);const e=document.createElementNS("http://www.w3.org/2000/svg","svg");e.setAttribute("viewBox","0 0 100 100");const s=document.createElementNS("http://www.w3.org/2000/svg","path");s.setAttribute("d",this.classes.addablePath),e.appendChild(s),i.appendChild(e),i.onclick=t=>{if(t.preventDefault(),t.stopPropagation(),!this.callbacks.addable)return;const e=this.content.search.input.value.trim();if(""===e)return void this.content.search.input.focus();const s=t=>{let e=new a(t);if(this.callbacks.addOption(e),this.settings.isMultiple){let t=this.store.getSelected();t.push(e.id),this.callbacks.setSelected(t,!0)}else this.callbacks.setSelected([e.id],!0);this.callbacks.search(""),this.settings.closeOnSelect&&setTimeout((()=>{this.callbacks.close()}),100)},i=this.callbacks.addable(e);!1!==i&&null!=i&&(i instanceof Promise?i.then((t=>{"string"==typeof t?s({text:t,value:t}):i instanceof Error?this.renderError(i.message):s(t)})):"string"==typeof i?s({text:i,value:i}):i instanceof Error?this.renderError(i.message):s(i))},t.appendChild(i),n.addable={main:i,svg:e,path:s}}return n}searchFocus(){this.content.search.input.focus()}getOptions(t=!1,e=!1,s=!1){let i="."+this.classes.option;return t&&(i+=":not(."+this.classes.placeholder+")"),e&&(i+=":not(."+this.classes.disabled+")"),s&&(i+=":not(."+this.classes.hide+")"),Array.from(this.content.list.querySelectorAll(i))}highlight(t){const e=this.getOptions(!0,!0,!0);if(0===e.length)return;if(1===e.length&&!e[0].classList.contains(this.classes.highlighted))return void e[0].classList.add(this.classes.highlighted);let s=!1;for(const t of e)t.classList.contains(this.classes.highlighted)&&(s=!0);if(!s)for(const t of e)if(t.classList.contains(this.classes.selected)){t.classList.add(this.classes.highlighted);break}for(let s=0;s=0?s-1:e.length-1];a.classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,a);const l=a.parentElement;if(l&&l.classList.contains(this.classes.close)){const t=l.querySelector("."+this.classes.optgroupLabel);t&&t.click()}return}e["down"===t?0:e.length-1].classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,e["down"===t?0:e.length-1])}listDiv(){const t=document.createElement("div");return t.classList.add(this.classes.list),t}renderError(t){this.content.list.innerHTML="";const e=document.createElement("div");e.classList.add(this.classes.error),e.textContent=t,this.content.list.appendChild(e)}renderSearching(){this.content.list.innerHTML="";const t=document.createElement("div");t.classList.add(this.classes.searching),t.textContent=this.settings.searchingText,this.content.list.appendChild(t)}renderOptions(t){if(this.content.list.innerHTML="",0===t.length){const t=document.createElement("div");return t.classList.add(this.classes.search),this.callbacks.addable?t.innerHTML=this.settings.addableText.replace("{value}",this.content.search.input.value):t.innerHTML=this.settings.searchText,void this.content.list.appendChild(t)}if(this.settings.allowDeselect&&!this.settings.isMultiple){this.store.filter((t=>t.placeholder),!1).length||this.store.addOption(new a({text:"",value:"",selected:!1,placeholder:!0}),!0)}for(const e of t){if(e instanceof n){const t=document.createElement("div");t.classList.add(this.classes.optgroup);const s=document.createElement("div");s.classList.add(this.classes.optgroupLabel),t.appendChild(s);const i=document.createElement("div");i.classList.add(this.classes.optgroupLabelText),i.textContent=e.label,s.appendChild(i);const n=document.createElement("div");if(n.classList.add(this.classes.optgroupActions),s.appendChild(n),this.settings.isMultiple&&e.selectAll){const t=document.createElement("div");t.classList.add(this.classes.optgroupSelectAll);let s=!0;for(const t of e.options)if(!t.selected){s=!1;break}s&&t.classList.add(this.classes.selected);const i=document.createElement("span");i.textContent=e.selectAllText,t.appendChild(i);const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100"),t.appendChild(a);const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.optgroupSelectAllBox),a.appendChild(l);const o=document.createElementNS("http://www.w3.org/2000/svg","path");o.setAttribute("d",this.classes.optgroupSelectAllCheck),a.appendChild(o),t.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation();const i=this.store.getSelected();if(s){const t=i.filter((t=>{for(const s of e.options)if(t===s.id)return!1;return!0}));this.callbacks.setSelected(t,!0)}else{const t=i.concat(e.options.map((t=>t.id)));for(const t of e.options)this.store.getOptionByID(t.id)||this.callbacks.addOption(t);this.callbacks.setSelected(t,!0)}})),n.appendChild(t)}if("off"!==e.closable){const i=document.createElement("div");i.classList.add(this.classes.optgroupClosable);const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100"),a.classList.add(this.classes.arrow),i.appendChild(a);const l=document.createElementNS("http://www.w3.org/2000/svg","path");a.appendChild(l),e.options.some((t=>t.selected))||""!==this.content.search.input.value.trim()?(i.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):"open"===e.closable?(t.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):"close"===e.closable&&(t.classList.add(this.classes.close),l.setAttribute("d",this.classes.arrowClose)),s.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation(),t.classList.contains(this.classes.close)?(t.classList.remove(this.classes.close),t.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):(t.classList.remove(this.classes.open),t.classList.add(this.classes.close),l.setAttribute("d",this.classes.arrowClose))})),n.appendChild(i)}t.appendChild(s);for(const s of e.options)t.appendChild(this.option(s));this.content.list.appendChild(t)}e instanceof a&&this.content.list.appendChild(this.option(e))}}option(t){if(t.placeholder){const t=document.createElement("div");return t.classList.add(this.classes.option),t.classList.add(this.classes.hide),t}const e=document.createElement("div");return e.dataset.id=t.id,e.id=t.id,e.classList.add(this.classes.option),e.setAttribute("role","option"),t.class&&t.class.split(" ").forEach((t=>{e.classList.add(t)})),t.style&&(e.style.cssText=t.style),this.settings.searchHighlight&&""!==this.content.search.input.value.trim()?e.innerHTML=this.highlightText(""!==t.html?t.html:t.text,this.content.search.input.value,this.classes.searchHighlighter):""!==t.html?e.innerHTML=t.html:e.textContent=t.text,this.settings.showOptionTooltips&&e.textContent&&e.setAttribute("title",e.textContent),t.display||e.classList.add(this.classes.hide),t.disabled&&e.classList.add(this.classes.disabled),t.selected&&this.settings.hideSelected&&e.classList.add(this.classes.hide),t.selected?(e.classList.add(this.classes.selected),e.setAttribute("aria-selected","true"),this.main.main.setAttribute("aria-activedescendant",e.id)):(e.classList.remove(this.classes.selected),e.setAttribute("aria-selected","false")),e.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation();const s=this.store.getSelected(),i=e.currentTarget,n=String(i.dataset.id);if(t.disabled||t.selected&&!this.settings.allowDeselect)return;if(this.settings.isMultiple&&this.settings.maxSelected<=s.length&&!t.selected||this.settings.isMultiple&&this.settings.minSelected>=s.length&&t.selected)return;let a=!1;const l=this.store.getSelectedOptions();let o=[];this.settings.isMultiple&&(o=t.selected?l.filter((t=>t.id!==n)):l.concat(t)),this.settings.isMultiple||(o=t.selected?[]:[t]),this.callbacks.beforeChange||(a=!0),this.callbacks.beforeChange&&(a=!1!==this.callbacks.beforeChange(o,l)),a&&(this.store.getOptionByID(n)||this.callbacks.addOption(t),this.callbacks.setSelected(o.map((t=>t.id)),!1),this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(o))})),e}destroy(){this.main.main.remove(),this.content.main.remove()}highlightText(t,e,s){let i=t;const n=new RegExp("(?![^<]*>)("+e.trim()+")(?![^<]*>[^<>]*${o}`),i}moveContentAbove(){const t=this.main.main.offsetHeight,e=this.content.main.offsetHeight;this.main.main.classList.remove(this.classes.openBelow),this.main.main.classList.add(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.content.main.classList.add(this.classes.openAbove);const s=this.main.main.getBoundingClientRect();this.content.main.style.margin="-"+(t+e-1)+"px 0px 0px 0px",this.content.main.style.top=s.top+s.height+window.scrollY+"px",this.content.main.style.left=s.left+window.scrollX+"px",this.content.main.style.width=s.width+"px"}moveContentBelow(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.add(this.classes.openBelow),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.add(this.classes.openBelow);const t=this.main.main.getBoundingClientRect();this.content.main.style.margin="-1px 0px 0px 0px","relative"!==this.settings.contentPosition&&(this.content.main.style.top=t.top+t.height+window.scrollY+"px",this.content.main.style.left=t.left+window.scrollX+"px",this.content.main.style.width=t.width+"px")}ensureElementInView(t,e){const s=t.scrollTop+t.offsetTop,i=s+t.clientHeight,n=e.offsetTop,a=n+e.clientHeight;ni&&(t.scrollTop+=a-i)}putContent(){const t=this.main.main.offsetHeight,e=this.main.main.getBoundingClientRect(),s=this.content.main.offsetHeight;return window.innerHeight-(e.top+t)<=s&&e.top>s?"up":"down"}updateDeselectAll(){if(!this.store||!this.settings)return;const t=this.store.getSelectedOptions(),e=t&&t.length>0,s=this.settings.isMultiple,i=this.settings.allowDeselect,n=this.main.deselect.main,a=this.classes.hide;!i||s&&!e?n.classList.add(a):n.classList.remove(a)}}class h{constructor(t){this.listen=!1,this.observer=null,this.select=t,this.valueChange=this.valueChange.bind(this),this.select.addEventListener("change",this.valueChange,{passive:!0}),this.observer=new MutationObserver(this.observeCall.bind(this)),this.changeListen(!0)}enable(){this.select.disabled=!1}disable(){this.select.disabled=!0}hideUI(){this.select.tabIndex=-1,this.select.style.display="none",this.select.setAttribute("aria-hidden","true")}showUI(){this.select.removeAttribute("tabindex"),this.select.style.display="",this.select.removeAttribute("aria-hidden")}changeListen(t){this.listen=t,t&&this.observer&&this.observer.observe(this.select,{subtree:!0,childList:!0,attributes:!0}),t||this.observer&&this.observer.disconnect()}valueChange(t){return this.listen&&this.onValueChange&&this.onValueChange(this.getSelectedOptions()),!0}observeCall(t){if(!this.listen)return;let e=!1,s=!1,i=!1;for(const n of t){if(n.target===this.select&&("disabled"===n.attributeName&&(s=!0),"class"===n.attributeName&&(e=!0),"childList"===n.type)){for(const t of n.addedNodes)if("OPTION"===t.nodeName&&t.value===this.select.value){this.select.dispatchEvent(new Event("change"));break}i=!0}"OPTGROUP"!==n.target.nodeName&&"OPTION"!==n.target.nodeName||(i=!0)}e&&this.onClassChange&&this.onClassChange(this.select.className.split(" ")),s&&this.onDisabledChange&&(this.changeListen(!1),this.onDisabledChange(this.select.disabled),this.changeListen(!0)),i&&this.onOptionsChange&&(this.changeListen(!1),this.onOptionsChange(this.getData()),this.changeListen(!0))}getData(){let t=[];const e=this.select.childNodes;for(const s of e)"OPTGROUP"===s.nodeName&&t.push(this.getDataFromOptgroup(s)),"OPTION"===s.nodeName&&t.push(this.getDataFromOption(s));return t}getDataFromOptgroup(t){let e={id:t.id,label:t.label,selectAll:!!t.dataset&&"true"===t.dataset.selectall,selectAllText:t.dataset?t.dataset.selectalltext:"Select all",closable:t.dataset?t.dataset.closable:"off",options:[]};const s=t.childNodes;for(const t of s)"OPTION"===t.nodeName&&e.options.push(this.getDataFromOption(t));return e}getDataFromOption(t){return{id:t.id,value:t.value,text:t.text,html:t.dataset&&t.dataset.html?t.dataset.html:"",selected:t.selected,display:"none"!==t.style.display,disabled:t.disabled,mandatory:!!t.dataset&&"true"===t.dataset.mandatory,placeholder:"true"===t.dataset.placeholder,class:t.className,style:t.style.cssText,data:t.dataset}}getSelectedOptions(){let t=[];const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected&&t.push(this.getDataFromOption(e))}}if("OPTION"===s.nodeName){const e=s;e.selected&&t.push(this.getDataFromOption(e))}}return t}getSelectedValues(){return this.getSelectedOptions().map((t=>t.value))}setSelected(t){this.changeListen(!1);const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.id)}}if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.id)}}this.changeListen(!0)}setSelectedByValue(t){this.changeListen(!1);const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.value)}}if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.value)}}this.changeListen(!0)}updateSelect(t,e,s){this.changeListen(!1),t&&(this.select.dataset.id=t),e&&(this.select.style.cssText=e),s&&(this.select.className="",s.forEach((t=>{""!==t.trim()&&this.select.classList.add(t.trim())}))),this.changeListen(!0)}updateOptions(t){this.changeListen(!1),this.select.innerHTML="";for(const e of t)e instanceof n&&this.select.appendChild(this.createOptgroup(e)),e instanceof a&&this.select.appendChild(this.createOption(e));this.select.dispatchEvent(new Event("change",{bubbles:!0})),this.changeListen(!0)}createOptgroup(t){const e=document.createElement("optgroup");if(e.id=t.id,e.label=t.label,t.selectAll&&(e.dataset.selectAll="true"),"off"!==t.closable&&(e.dataset.closable=t.closable),t.options)for(const s of t.options)e.appendChild(this.createOption(s));return e}createOption(t){const e=document.createElement("option");return e.id=t.id,e.value=t.value,e.textContent=t.text,""!==t.html&&e.setAttribute("data-html",t.html),t.selected&&(e.selected=t.selected),t.disabled&&(e.disabled=!0),t.display||(e.style.display="none"),t.placeholder&&e.setAttribute("data-placeholder","true"),t.mandatory&&e.setAttribute("data-mandatory","true"),t.class&&t.class.split(" ").forEach((t=>{e.classList.add(t)})),t.data&&"object"==typeof t.data&&Object.keys(t.data).forEach((s=>{e.setAttribute("data-"+function(t){const e=t.replace(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g,(t=>"-"+t.toLowerCase()));return t[0]===t[0].toUpperCase()?e.substring(1):e}(s),t.data[s])})),e}destroy(){this.changeListen(!1),this.select.removeEventListener("change",this.valueChange),this.observer&&(this.observer.disconnect(),this.observer=null),delete this.select.dataset.id,this.showUI()}}class c{constructor(t){this.id="",this.style="",this.class=[],this.isMultiple=!1,this.isOpen=!1,this.isFullOpen=!1,this.intervalMove=null,t||(t={}),this.id="ss-"+e(),this.style=t.style||"",this.class=t.class||[],this.disabled=void 0!==t.disabled&&t.disabled,this.alwaysOpen=void 0!==t.alwaysOpen&&t.alwaysOpen,this.showSearch=void 0===t.showSearch||t.showSearch,this.focusSearch=void 0===t.focusSearch||t.focusSearch,this.ariaLabel=t.ariaLabel||"Combobox",this.searchPlaceholder=t.searchPlaceholder||"Search",this.searchText=t.searchText||"No Results",this.searchingText=t.searchingText||"Searching...",this.searchHighlight=void 0!==t.searchHighlight&&t.searchHighlight,this.closeOnSelect=void 0===t.closeOnSelect||t.closeOnSelect,this.contentLocation=t.contentLocation||document.body,this.contentPosition=t.contentPosition||"absolute",this.openPosition=t.openPosition||"auto",this.placeholderText=void 0!==t.placeholderText?t.placeholderText:"Select Value",this.allowDeselect=void 0!==t.allowDeselect&&t.allowDeselect,this.hideSelected=void 0!==t.hideSelected&&t.hideSelected,this.keepOrder=void 0!==t.keepOrder&&t.keepOrder,this.showOptionTooltips=void 0!==t.showOptionTooltips&&t.showOptionTooltips,this.minSelected=t.minSelected||0,this.maxSelected=t.maxSelected||1e3,this.timeoutDelay=t.timeoutDelay||200,this.maxValuesShown=t.maxValuesShown||20,this.maxValuesMessage=t.maxValuesMessage||"{number} selected",this.addableText=t.addableText||'Press "Enter" to add {value}'}}return class{constructor(e){var i;if(this.events={search:void 0,searchFilter:(t,e)=>-1!==t.text.toLowerCase().indexOf(e.toLowerCase()),addable:void 0,beforeChange:void 0,afterChange:void 0,beforeOpen:void 0,afterOpen:void 0,beforeClose:void 0,afterClose:void 0},this.windowResize=s((()=>{(this.settings.isOpen||this.settings.isFullOpen)&&this.render.moveContent()})),this.windowScroll=s((()=>{(this.settings.isOpen||this.settings.isFullOpen)&&this.render.moveContent()})),this.documentClick=t=>{this.settings.isOpen&&t.target&&!function(t,e){function s(t,s){return s&&t&&t.classList&&t.classList.contains(s)||s&&t&&t.dataset&&t.dataset.id&&t.dataset.id===e?t:null}return s(t,e)||function t(e,i){return e&&e!==document?s(e,i)?e:t(e.parentNode,i):null}(t,e)}(t.target,this.settings.id)&&this.close(t.type)},this.windowVisibilityChange=()=>{document.hidden&&this.close()},this.selectEl="string"==typeof e.select?document.querySelector(e.select):e.select,!this.selectEl)return void(e.events&&e.events.error&&e.events.error(new Error("Could not find select element")));if("SELECT"!==this.selectEl.tagName)return void(e.events&&e.events.error&&e.events.error(new Error("Element isnt of type select")));this.selectEl.dataset.ssid&&this.destroy(),this.settings=new c(e.settings),this.cssClasses=new t(e.cssClasses);const n=["afterChange","beforeOpen","afterOpen","beforeClose","afterClose"];for(const t in e.events)e.events.hasOwnProperty(t)&&(-1!==n.indexOf(t)?this.events[t]=s(e.events[t],100):this.events[t]=e.events[t]);this.settings.disabled=(null===(i=e.settings)||void 0===i?void 0:i.disabled)?e.settings.disabled:this.selectEl.disabled,this.settings.isMultiple=this.selectEl.multiple,this.settings.style=this.selectEl.style.cssText,this.settings.class=this.selectEl.className.split(" "),this.select=new h(this.selectEl),this.select.updateSelect(this.settings.id,this.settings.style,this.settings.class),this.select.hideUI(),this.select.onValueChange=t=>{this.setSelected(t.map((t=>t.id)))},this.select.onClassChange=t=>{this.settings.class=t,this.render.updateClassStyles()},this.select.onDisabledChange=t=>{t?this.disable():this.enable()},this.select.onOptionsChange=t=>{this.setData(t)},this.store=new l(this.settings.isMultiple?"multiple":"single",e.data?e.data:this.select.getData()),e.data&&this.select.updateOptions(this.store.getData());const a={open:this.open.bind(this),close:this.close.bind(this),addable:this.events.addable?this.events.addable:void 0,setSelected:this.setSelected.bind(this),addOption:this.addOption.bind(this),search:this.search.bind(this),beforeChange:this.events.beforeChange,afterChange:this.events.afterChange};this.render=new o(this.settings,this.cssClasses,this.store,a),this.render.renderValues(),this.render.renderOptions(this.store.getData());const r=this.selectEl.getAttribute("aria-label"),d=this.selectEl.getAttribute("aria-labelledby");r?this.render.main.main.setAttribute("aria-label",r):d&&this.render.main.main.setAttribute("aria-labelledby",d),this.selectEl.parentNode&&this.selectEl.parentNode.insertBefore(this.render.main.main,this.selectEl.nextSibling),window.addEventListener("resize",this.windowResize,!1),"auto"===this.settings.openPosition&&window.addEventListener("scroll",this.windowScroll,!1),document.addEventListener("visibilitychange",this.windowVisibilityChange),this.settings.disabled&&this.disable(),this.settings.alwaysOpen&&this.open(),this.selectEl.slim=this}enable(){this.settings.disabled=!1,this.select.enable(),this.render.enable()}disable(){this.settings.disabled=!0,this.select.disable(),this.render.disable()}getData(){return this.store.getData()}setData(t){const e=this.store.getSelected(),s=this.store.validateDataArray(t);if(s)return void(this.events.error&&this.events.error(s));this.store.setData(t);const n=this.store.getData();this.select.updateOptions(n),this.render.renderValues(),this.render.renderOptions(n),this.events.afterChange&&!i(e,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}getSelected(){let t=this.store.getSelectedOptions();return this.settings.keepOrder&&(t=this.store.selectedOrderOptions(t)),t.map((t=>t.value))}setSelected(t,e=!0){const s=this.store.getSelected(),n=this.store.getDataOptions();t=Array.isArray(t)?t:[t];const a=[];for(const e of t)if(n.find((t=>t.id==e)))a.push(e);else for(const t of n.filter((t=>t.value==e)))a.push(t.id);this.store.setSelectedBy("id",a);const l=this.store.getData();this.select.updateOptions(l),this.render.renderValues(),""!==this.render.content.search.input.value?this.search(this.render.content.search.input.value):this.render.renderOptions(l),e&&this.events.afterChange&&!i(s,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}addOption(t){const e=this.store.getSelected();this.store.getDataOptions().some((e=>{var s;return e.value===(null!==(s=t.value)&&void 0!==s?s:t.text)}))||this.store.addOption(t);const s=this.store.getData();this.select.updateOptions(s),this.render.renderValues(),this.render.renderOptions(s),this.events.afterChange&&!i(e,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}open(){this.settings.disabled||this.settings.isOpen||(this.events.beforeOpen&&this.events.beforeOpen(),this.render.open(),this.settings.showSearch&&this.settings.focusSearch&&this.render.searchFocus(),this.settings.isOpen=!0,setTimeout((()=>{this.events.afterOpen&&this.events.afterOpen(),this.settings.isOpen&&(this.settings.isFullOpen=!0),document.addEventListener("click",this.documentClick)}),this.settings.timeoutDelay),"absolute"===this.settings.contentPosition&&(this.settings.intervalMove&&clearInterval(this.settings.intervalMove),this.settings.intervalMove=setInterval(this.render.moveContent.bind(this.render),500)))}close(t=null){this.settings.isOpen&&!this.settings.alwaysOpen&&(this.events.beforeClose&&this.events.beforeClose(),this.render.close(),""!==this.render.content.search.input.value&&this.search(""),this.render.mainFocus(t),this.settings.isOpen=!1,this.settings.isFullOpen=!1,setTimeout((()=>{this.events.afterClose&&this.events.afterClose(),document.removeEventListener("click",this.documentClick)}),this.settings.timeoutDelay),this.settings.intervalMove&&clearInterval(this.settings.intervalMove))}search(t){if(this.render.content.search.input.value!==t&&(this.render.content.search.input.value=t),!this.events.search)return void this.render.renderOptions(""===t?this.store.getData():this.store.search(t,this.events.searchFilter));this.render.renderSearching();const e=this.events.search(t,this.store.getSelectedOptions());e instanceof Promise?e.then((t=>{this.render.renderOptions(this.store.partialToFullData(t))})).catch((t=>{this.render.renderError("string"==typeof t?t:t.message)})):Array.isArray(e)?this.render.renderOptions(this.store.partialToFullData(e)):this.render.renderError("Search event must return a promise or an array of data")}destroy(){document.removeEventListener("click",this.documentClick),window.removeEventListener("resize",this.windowResize,!1),"auto"===this.settings.openPosition&&window.removeEventListener("scroll",this.windowScroll,!1),document.removeEventListener("visibilitychange",this.windowVisibilityChange),this.store.setData([]),this.render.destroy(),this.select.destroy()}}})); +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).SlimSelect=e()}(this,(function(){"use strict";class t{constructor(t){t||(t={}),this.main=t.main||"ss-main",this.placeholder=t.placeholder||"ss-placeholder",this.values=t.values||"ss-values",this.single=t.single||"ss-single",this.max=t.max||"ss-max",this.value=t.value||"ss-value",this.valueText=t.valueText||"ss-value-text",this.valueDelete=t.valueDelete||"ss-value-delete",this.valueOut=t.valueOut||"ss-value-out",this.deselect=t.deselect||"ss-deselect",this.deselectPath=t.deselectPath||"M10,10 L90,90 M10,90 L90,10",this.arrow=t.arrow||"ss-arrow",this.arrowClose=t.arrowClose||"M10,30 L50,70 L90,30",this.arrowOpen=t.arrowOpen||"M10,70 L50,30 L90,70",this.content=t.content||"ss-content",this.openAbove=t.openAbove||"ss-open-above",this.openBelow=t.openBelow||"ss-open-below",this.search=t.search||"ss-search",this.searchHighlighter=t.searchHighlighter||"ss-search-highlight",this.searching=t.searching||"ss-searching",this.addable=t.addable||"ss-addable",this.addablePath=t.addablePath||"M50,10 L50,90 M10,50 L90,50",this.list=t.list||"ss-list",this.optgroup=t.optgroup||"ss-optgroup",this.optgroupLabel=t.optgroupLabel||"ss-optgroup-label",this.optgroupLabelText=t.optgroupLabelText||"ss-optgroup-label-text",this.optgroupActions=t.optgroupActions||"ss-optgroup-actions",this.optgroupSelectAll=t.optgroupSelectAll||"ss-selectall",this.optgroupSelectAllBox=t.optgroupSelectAllBox||"M60,10 L10,10 L10,90 L90,90 L90,50",this.optgroupSelectAllCheck=t.optgroupSelectAllCheck||"M30,45 L50,70 L90,10",this.optgroupClosable=t.optgroupClosable||"ss-closable",this.option=t.option||"ss-option",this.optionDelete=t.optionDelete||"M10,10 L90,90 M10,90 L90,10",this.highlighted=t.highlighted||"ss-highlighted",this.open=t.open||"ss-open",this.close=t.close||"ss-close",this.selected=t.selected||"ss-selected",this.error=t.error||"ss-error",this.disabled=t.disabled||"ss-disabled",this.hide=t.hide||"ss-hide"}}function e(){return Math.random().toString(36).substring(2,10)}function s(t,e=50,s=!1){let i;return function(...n){const a=self,l=s&&!i;clearTimeout(i),i=setTimeout((()=>{i=null,s||t.apply(a,n)}),e),l&&t.apply(a,n)}}function i(t,e){return JSON.stringify(t)===JSON.stringify(e)}class n{constructor(t){if(this.id=t.id&&""!==t.id?t.id:e(),this.label=t.label||"",this.selectAll=void 0!==t.selectAll&&t.selectAll,this.selectAllText=t.selectAllText||"Select All",this.closable=t.closable||"off",this.options=[],t.options)for(const e of t.options)this.options.push(new a(e))}}class a{constructor(t){this.id=t.id&&""!==t.id?t.id:e(),this.value=void 0===t.value?t.text:t.value,this.text=t.text||"",this.html=t.html||"",this.selected=void 0!==t.selected&&t.selected,this.display=void 0===t.display||t.display,this.disabled=void 0!==t.disabled&&t.disabled,this.mandatory=void 0!==t.mandatory&&t.mandatory,this.placeholder=void 0!==t.placeholder&&t.placeholder,this.class=t.class||"",this.style=t.style||"",this.data=t.data||{}}}class l{constructor(t,e){this.selectType="single",this.data=[],this.selectedOrder=[],this.selectType=t,this.setData(e)}validateDataArray(t){if(!Array.isArray(t))return new Error("Data must be an array");for(let e of t)if(e instanceof n||"label"in e){if(!("label"in e))return new Error("Optgroup must have a label");if("options"in e&&e.options)for(let t of e.options){const e=this.validateOption(t);if(e)return e}}else{if(!(e instanceof a||"text"in e))return new Error("Data object must be a valid optgroup or option");{const t=this.validateOption(e);if(t)return t}}return null}validateOption(t){return"text"in t?null:new Error("Option must have a text")}partialToFullData(t){let e=[];return t.forEach((t=>{if(t instanceof n||"label"in t){let s=[];"options"in t&&t.options&&t.options.forEach((t=>{s.push(new a(t))})),s.length>0&&e.push(new n(t))}(t instanceof a||"text"in t)&&e.push(new a(t))})),e}setData(t){this.data=this.partialToFullData(t),"single"===this.selectType&&this.setSelectedBy("id",this.getSelected())}getData(){return this.filter(null,!0)}getDataOptions(){return this.filter(null,!1)}addOption(t,e=!1){if(e){let e=[new a(t)];this.setData(e.concat(this.getData()))}else this.setData(this.getData().concat(new a(t)))}setSelectedBy(t,e){let s=null,i=!1;const l=[];for(let o of this.data){if(o instanceof n)for(let n of o.options)s||(s=n),n.selected=!i&&e.includes(n[t]),n.selected&&(l.push(n),"single"===this.selectType&&(i=!0));o instanceof a&&(s||(s=o),o.selected=!i&&e.includes(o[t]),o.selected&&(l.push(o),"single"===this.selectType&&(i=!0)))}"single"===this.selectType&&s&&!i&&(s.selected=!0,l.push(s));const o=e.map((e=>{var s;return(null===(s=l.find((s=>s[t]===e)))||void 0===s?void 0:s.id)||""}));this.selectedOrder=o}getSelected(){return this.getSelectedOptions().map((t=>t.id))}getSelectedValues(){return this.getSelectedOptions().map((t=>t.value))}getSelectedOptions(){return this.filter((t=>t.selected),!1)}getOptgroupByID(t){for(let e of this.data)if(e instanceof n&&e.id===t)return e;return null}getOptionByID(t){let e=this.filter((e=>e.id===t),!1);return e.length?e[0]:null}getSelectType(){return this.selectType}getFirstOption(){let t=null;for(let e of this.data)if(e instanceof n?t=e.options[0]:e instanceof a&&(t=e),t)break;return t}search(t,e){return""===(t=t.trim())?this.getData():this.filter((s=>e(s,t)),!0)}filter(t,e){const s=[];return this.data.forEach((i=>{if(i instanceof n){let l=[];if(i.options.forEach((i=>{t&&!t(i)||(e?l.push(new a(i)):s.push(new a(i)))})),l.length>0){let t=new n(i);t.options=l,s.push(t)}}i instanceof a&&(t&&!t(i)||s.push(new a(i)))})),s}selectedOrderOptions(t){const e=[];return this.selectedOrder.forEach((s=>{const i=t.find((t=>t.id===s));i&&e.push(i)})),t.forEach((t=>{let s=!1;e.forEach((e=>{t.id!==e.id||(s=!0)})),s||e.push(t)})),e}}class o{constructor(t,e,s,i){this.store=s,this.settings=t,this.classes=e,this.callbacks=i,this.main=this.mainDiv(),this.content=this.contentDiv(),this.updateClassStyles(),this.updateAriaAttributes(),this.settings.contentLocation&&this.settings.contentLocation.appendChild(this.content.main)}enable(){this.main.main.classList.remove(this.classes.disabled),this.content.search.input.disabled=!1}disable(){this.main.main.classList.add(this.classes.disabled),this.content.search.input.disabled=!0}open(){this.main.arrow.path.setAttribute("d",this.classes.arrowOpen),this.main.main.classList.add("up"===this.settings.openPosition?this.classes.openAbove:this.classes.openBelow),this.main.main.setAttribute("aria-expanded","true"),this.moveContent();const t=this.store.getSelectedOptions();if(t.length){const e=t[t.length-1].id,s=this.content.list.querySelector('[data-id="'+e+'"]');s&&this.ensureElementInView(this.content.list,s)}}close(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.remove(this.classes.openBelow),this.main.main.setAttribute("aria-expanded","false"),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.main.arrow.path.setAttribute("d",this.classes.arrowClose)}updateClassStyles(){if(this.main.main.className="",this.main.main.removeAttribute("style"),this.content.main.className="",this.content.main.removeAttribute("style"),this.main.main.classList.add(this.classes.main),this.content.main.classList.add(this.classes.content),""!==this.settings.style&&(this.main.main.style.cssText=this.settings.style,this.content.main.style.cssText=this.settings.style),this.settings.class.length)for(const t of this.settings.class)""!==t.trim()&&(this.main.main.classList.add(t.trim()),this.content.main.classList.add(t.trim()));"relative"!==this.settings.contentPosition&&"fixed"!==this.settings.contentPosition||this.content.main.classList.add("ss-"+this.settings.contentPosition)}updateAriaAttributes(){this.main.main.role="combobox",this.main.main.setAttribute("aria-haspopup","listbox"),this.main.main.setAttribute("aria-controls",this.content.main.id),this.main.main.setAttribute("aria-expanded","false"),this.content.main.setAttribute("role","listbox")}mainDiv(){var t;const e=document.createElement("div");e.dataset.id=this.settings.id,e.setAttribute("aria-label",this.settings.ariaLabel),e.tabIndex=0,e.onkeydown=t=>{switch(t.key){case"ArrowUp":case"ArrowDown":return this.callbacks.open(),"ArrowDown"===t.key?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Enter":case" ":this.callbacks.open();const e=this.content.list.querySelector("."+this.classes.highlighted);return e&&e.click(),!1;case"Escape":return this.callbacks.close(),!1}return 1===t.key.length&&this.callbacks.open(),!0},e.onclick=t=>{this.settings.disabled||(this.settings.isOpen?this.callbacks.close():this.callbacks.open())};const s=document.createElement("div");s.classList.add(this.classes.values),e.appendChild(s);const i=document.createElement("div");i.classList.add(this.classes.deselect);const n=null===(t=this.store)||void 0===t?void 0:t.getSelectedOptions();!this.settings.allowDeselect||this.settings.isMultiple&&n&&n.length<=0?i.classList.add(this.classes.hide):i.classList.remove(this.classes.hide),i.onclick=t=>{if(t.stopPropagation(),this.settings.disabled)return;let e=!0;const s=this.store.getSelectedOptions(),i=[];if(this.callbacks.beforeChange&&(e=!0===this.callbacks.beforeChange(i,s)),e){if(this.settings.isMultiple)this.callbacks.setSelected([],!1),this.updateDeselectAll();else{const t=this.store.getFirstOption(),e=t?t.id:"";this.callbacks.setSelected(e,!1)}this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(this.store.getSelectedOptions())}};const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100");const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.deselectPath),a.appendChild(l),i.appendChild(a),e.appendChild(i);const o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.classList.add(this.classes.arrow),o.setAttribute("viewBox","0 0 100 100");const h=document.createElementNS("http://www.w3.org/2000/svg","path");return h.setAttribute("d",this.classes.arrowClose),this.settings.alwaysOpen&&o.classList.add(this.classes.hide),o.appendChild(h),e.appendChild(o),{main:e,values:s,deselect:{main:i,svg:a,path:l},arrow:{main:o,path:h}}}mainFocus(t){"click"!==t&&this.main.main.focus({preventScroll:!0})}placeholder(){const t=this.store.filter((t=>t.placeholder),!1);let e=this.settings.placeholderText;t.length&&(""!==t[0].html?e=t[0].html:""!==t[0].text&&(e=t[0].text));const s=document.createElement("div");return s.classList.add(this.classes.placeholder),s.innerHTML=e,s}renderValues(){this.settings.isMultiple?(this.renderMultipleValues(),this.updateDeselectAll()):this.renderSingleValue()}renderSingleValue(){const t=this.store.filter((t=>t.selected&&!t.placeholder),!1),e=t.length>0?t[0]:null;if(e){const t=document.createElement("div");t.classList.add(this.classes.single),e.html?t.innerHTML=e.html:t.innerText=e.text,this.main.values.innerHTML=t.outerHTML}else this.main.values.innerHTML=this.placeholder().outerHTML;this.settings.allowDeselect&&t.length?this.main.deselect.main.classList.remove(this.classes.hide):this.main.deselect.main.classList.add(this.classes.hide)}renderMultipleValues(){let t=this.main.values.childNodes,e=this.store.filter((t=>t.selected&&t.display),!1);if(0===e.length)return void(this.main.values.innerHTML=this.placeholder().outerHTML);{const t=this.main.values.querySelector("."+this.classes.placeholder);t&&t.remove()}if(e.length>this.settings.maxValuesShown){const t=document.createElement("div");return t.classList.add(this.classes.max),t.textContent=this.settings.maxValuesMessage.replace("{number}",e.length.toString()),void(this.main.values.innerHTML=t.outerHTML)}{const t=this.main.values.querySelector("."+this.classes.max);t&&t.remove()}this.settings.keepOrder&&(e=this.store.selectedOrderOptions(e));let s=[];for(let i=0;it.id===a),!1).length||s.push(n)}}for(const t of s)t.classList.add(this.classes.valueOut),setTimeout((()=>{this.main.values.hasChildNodes()&&this.main.values.contains(t)&&this.main.values.removeChild(t)}),100);t=this.main.values.childNodes;for(let s=0;s{if(e.preventDefault(),e.stopPropagation(),this.settings.disabled)return;let s=!0;const i=this.store.getSelectedOptions(),l=i.filter((e=>e.selected&&e.id!==t.id),!0);if(!(this.settings.minSelected&&l.length{this.callbacks.search(t.target.value)}),100),e.onkeydown=t=>{switch(t.key){case"ArrowUp":case"ArrowDown":return"ArrowDown"===t.key?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Escape":return this.callbacks.close(),!1;case" ":const e=this.content.list.querySelector("."+this.classes.highlighted);return!e||(e.click(),!1);case"Enter":if(this.callbacks.addable)return i.click(),!1;{const t=this.content.list.querySelector("."+this.classes.highlighted);if(t)return t.click(),!1}return!0}return!0},t.appendChild(e),this.callbacks.addable){i.classList.add(this.classes.addable);const e=document.createElementNS("http://www.w3.org/2000/svg","svg");e.setAttribute("viewBox","0 0 100 100");const s=document.createElementNS("http://www.w3.org/2000/svg","path");s.setAttribute("d",this.classes.addablePath),e.appendChild(s),i.appendChild(e),i.onclick=t=>{if(t.preventDefault(),t.stopPropagation(),!this.callbacks.addable)return;const e=this.content.search.input.value.trim();if(""===e)return void this.content.search.input.focus();const s=t=>{let e=new a(t);if(this.callbacks.addOption(e),this.settings.isMultiple){let t=this.store.getSelected();t.push(e.id),this.callbacks.setSelected(t,!0)}else this.callbacks.setSelected([e.id],!0);this.callbacks.search(""),this.settings.closeOnSelect&&setTimeout((()=>{this.callbacks.close()}),100)},i=this.callbacks.addable(e);!1!==i&&null!=i&&(i instanceof Promise?i.then((t=>{"string"==typeof t?s({text:t,value:t}):i instanceof Error?this.renderError(i.message):s(t)})):"string"==typeof i?s({text:i,value:i}):i instanceof Error?this.renderError(i.message):s(i))},t.appendChild(i),n.addable={main:i,svg:e,path:s}}return n}searchFocus(){this.content.search.input.focus()}getOptions(t=!1,e=!1,s=!1){let i="."+this.classes.option;return t&&(i+=":not(."+this.classes.placeholder+")"),e&&(i+=":not(."+this.classes.disabled+")"),s&&(i+=":not(."+this.classes.hide+")"),Array.from(this.content.list.querySelectorAll(i))}highlight(t){const e=this.getOptions(!0,!0,!0);if(0===e.length)return;if(1===e.length&&!e[0].classList.contains(this.classes.highlighted))return void e[0].classList.add(this.classes.highlighted);let s=!1;for(const t of e)t.classList.contains(this.classes.highlighted)&&(s=!0);if(!s)for(const t of e)if(t.classList.contains(this.classes.selected)){t.classList.add(this.classes.highlighted);break}for(let s=0;s=0?s-1:e.length-1];a.classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,a);const l=a.parentElement;if(l&&l.classList.contains(this.classes.close)){const t=l.querySelector("."+this.classes.optgroupLabel);t&&t.click()}return}e["down"===t?0:e.length-1].classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,e["down"===t?0:e.length-1])}listDiv(){const t=document.createElement("div");return t.classList.add(this.classes.list),t}renderError(t){this.content.list.innerHTML="";const e=document.createElement("div");e.classList.add(this.classes.error),e.textContent=t,this.content.list.appendChild(e)}renderSearching(){this.content.list.innerHTML="";const t=document.createElement("div");t.classList.add(this.classes.searching),t.textContent=this.settings.searchingText,this.content.list.appendChild(t)}renderOptions(t){if(this.content.list.innerHTML="",0===t.length){const t=document.createElement("div");return t.classList.add(this.classes.search),this.callbacks.addable?t.innerHTML=this.settings.addableText.replace("{value}",this.content.search.input.value):t.innerHTML=this.settings.searchText,void this.content.list.appendChild(t)}if(this.settings.allowDeselect&&!this.settings.isMultiple){this.store.filter((t=>t.placeholder),!1).length||this.store.addOption(new a({text:"",value:"",selected:!1,placeholder:!0}),!0)}for(const e of t){if(e instanceof n){const t=document.createElement("div");t.classList.add(this.classes.optgroup);const s=document.createElement("div");s.classList.add(this.classes.optgroupLabel),t.appendChild(s);const i=document.createElement("div");i.classList.add(this.classes.optgroupLabelText),i.textContent=e.label,s.appendChild(i);const n=document.createElement("div");if(n.classList.add(this.classes.optgroupActions),s.appendChild(n),this.settings.isMultiple&&e.selectAll){const t=document.createElement("div");t.classList.add(this.classes.optgroupSelectAll);let s=!0;for(const t of e.options)if(!t.selected){s=!1;break}s&&t.classList.add(this.classes.selected);const i=document.createElement("span");i.textContent=e.selectAllText,t.appendChild(i);const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100"),t.appendChild(a);const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.optgroupSelectAllBox),a.appendChild(l);const o=document.createElementNS("http://www.w3.org/2000/svg","path");o.setAttribute("d",this.classes.optgroupSelectAllCheck),a.appendChild(o),t.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation();const i=this.store.getSelected();if(s){const t=i.filter((t=>{for(const s of e.options)if(t===s.id)return!1;return!0}));this.callbacks.setSelected(t,!0)}else{const t=i.concat(e.options.map((t=>t.id)));for(const t of e.options)this.store.getOptionByID(t.id)||this.callbacks.addOption(t);this.callbacks.setSelected(t,!0)}})),n.appendChild(t)}if("off"!==e.closable){const i=document.createElement("div");i.classList.add(this.classes.optgroupClosable);const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100"),a.classList.add(this.classes.arrow),i.appendChild(a);const l=document.createElementNS("http://www.w3.org/2000/svg","path");a.appendChild(l),e.options.some((t=>t.selected))||""!==this.content.search.input.value.trim()?(i.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):"open"===e.closable?(t.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):"close"===e.closable&&(t.classList.add(this.classes.close),l.setAttribute("d",this.classes.arrowClose)),s.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation(),t.classList.contains(this.classes.close)?(t.classList.remove(this.classes.close),t.classList.add(this.classes.open),l.setAttribute("d",this.classes.arrowOpen)):(t.classList.remove(this.classes.open),t.classList.add(this.classes.close),l.setAttribute("d",this.classes.arrowClose))})),n.appendChild(i)}t.appendChild(s);for(const s of e.options)t.appendChild(this.option(s));this.content.list.appendChild(t)}e instanceof a&&this.content.list.appendChild(this.option(e))}}option(t){if(t.placeholder){const t=document.createElement("div");return t.classList.add(this.classes.option),t.classList.add(this.classes.hide),t}const e=document.createElement("div");return e.dataset.id=t.id,e.classList.add(this.classes.option),e.setAttribute("role","option"),t.class&&t.class.split(" ").forEach((t=>{e.classList.add(t)})),t.style&&(e.style.cssText=t.style),this.settings.searchHighlight&&""!==this.content.search.input.value.trim()?e.innerHTML=this.highlightText(""!==t.html?t.html:t.text,this.content.search.input.value,this.classes.searchHighlighter):""!==t.html?e.innerHTML=t.html:e.textContent=t.text,this.settings.showOptionTooltips&&e.textContent&&e.setAttribute("title",e.textContent),t.display||e.classList.add(this.classes.hide),t.disabled&&e.classList.add(this.classes.disabled),t.selected&&this.settings.hideSelected&&e.classList.add(this.classes.hide),t.selected?(e.classList.add(this.classes.selected),e.setAttribute("aria-selected","true"),this.main.main.setAttribute("aria-activedescendant",e.id)):(e.classList.remove(this.classes.selected),e.setAttribute("aria-selected","false")),e.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation();const s=this.store.getSelected(),i=e.currentTarget,n=String(i.dataset.id);if(t.disabled||t.selected&&!this.settings.allowDeselect)return;if(this.settings.isMultiple&&this.settings.maxSelected<=s.length&&!t.selected||this.settings.isMultiple&&this.settings.minSelected>=s.length&&t.selected)return;let a=!1;const l=this.store.getSelectedOptions();let o=[];this.settings.isMultiple&&(o=t.selected?l.filter((t=>t.id!==n)):l.concat(t)),this.settings.isMultiple||(o=t.selected?[]:[t]),this.callbacks.beforeChange||(a=!0),this.callbacks.beforeChange&&(a=!1!==this.callbacks.beforeChange(o,l)),a&&(this.store.getOptionByID(n)||this.callbacks.addOption(t),this.callbacks.setSelected(o.map((t=>t.id)),!1),this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(o))})),e}destroy(){this.main.main.remove(),this.content.main.remove()}highlightText(t,e,s){let i=t;const n=new RegExp("(?![^<]*>)("+e.trim()+")(?![^<]*>[^<>]*${o}`),i}moveContentAbove(){const t=this.main.main.offsetHeight,e=this.content.main.offsetHeight;this.main.main.classList.remove(this.classes.openBelow),this.main.main.classList.add(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.content.main.classList.add(this.classes.openAbove);const s=this.main.main.getBoundingClientRect();this.content.main.style.margin="-"+(t+e-1)+"px 0px 0px 0px",this.content.main.style.top=s.top+s.height+("fixed"===this.settings.contentPosition?0:window.scrollY)+"px",this.content.main.style.left=s.left+("fixed"===this.settings.contentPosition?0:window.scrollX)+"px",this.content.main.style.width=s.width+"px"}moveContentBelow(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.add(this.classes.openBelow),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.add(this.classes.openBelow);const t=this.main.main.getBoundingClientRect();this.content.main.style.margin="-1px 0px 0px 0px","relative"!==this.settings.contentPosition&&(this.content.main.style.top=t.top+t.height+("fixed"===this.settings.contentPosition?0:window.scrollY)+"px",this.content.main.style.left=t.left+("fixed"===this.settings.contentPosition?0:window.scrollX)+"px",this.content.main.style.width=t.width+"px")}ensureElementInView(t,e){const s=t.scrollTop+t.offsetTop,i=s+t.clientHeight,n=e.offsetTop,a=n+e.clientHeight;ni&&(t.scrollTop+=a-i)}putContent(){const t=this.main.main.offsetHeight,e=this.main.main.getBoundingClientRect(),s=this.content.main.offsetHeight;return window.innerHeight-(e.top+t)<=s&&e.top>s?"up":"down"}updateDeselectAll(){if(!this.store||!this.settings)return;const t=this.store.getSelectedOptions(),e=t&&t.length>0,s=this.settings.isMultiple,i=this.settings.allowDeselect,n=this.main.deselect.main,a=this.classes.hide;!i||s&&!e?n.classList.add(a):n.classList.remove(a)}}class h{constructor(t){this.listen=!1,this.observer=null,this.select=t,this.valueChange=this.valueChange.bind(this),this.select.addEventListener("change",this.valueChange,{passive:!0}),this.observer=new MutationObserver(this.observeCall.bind(this)),this.changeListen(!0)}enable(){this.select.disabled=!1}disable(){this.select.disabled=!0}hideUI(){this.select.tabIndex=-1,this.select.style.display="none",this.select.setAttribute("aria-hidden","true")}showUI(){this.select.removeAttribute("tabindex"),this.select.style.display="",this.select.removeAttribute("aria-hidden")}changeListen(t){this.listen=t,t&&this.observer&&this.observer.observe(this.select,{subtree:!0,childList:!0,attributes:!0}),t||this.observer&&this.observer.disconnect()}valueChange(t){return this.listen&&this.onValueChange&&this.onValueChange(this.getSelectedOptions()),!0}observeCall(t){if(!this.listen)return;let e=!1,s=!1,i=!1;for(const n of t){if(n.target===this.select&&("disabled"===n.attributeName&&(s=!0),"class"===n.attributeName&&(e=!0),"childList"===n.type)){for(const t of n.addedNodes)if("OPTION"===t.nodeName&&t.value===this.select.value){this.select.dispatchEvent(new Event("change"));break}i=!0}"OPTGROUP"!==n.target.nodeName&&"OPTION"!==n.target.nodeName||(i=!0)}e&&this.onClassChange&&this.onClassChange(this.select.className.split(" ")),s&&this.onDisabledChange&&(this.changeListen(!1),this.onDisabledChange(this.select.disabled),this.changeListen(!0)),i&&this.onOptionsChange&&(this.changeListen(!1),this.onOptionsChange(this.getData()),this.changeListen(!0))}getData(){let t=[];const e=this.select.childNodes;for(const s of e)"OPTGROUP"===s.nodeName&&t.push(this.getDataFromOptgroup(s)),"OPTION"===s.nodeName&&t.push(this.getDataFromOption(s));return t}getDataFromOptgroup(t){let e={id:t.id,label:t.label,selectAll:!!t.dataset&&"true"===t.dataset.selectall,selectAllText:t.dataset?t.dataset.selectalltext:"Select all",closable:t.dataset?t.dataset.closable:"off",options:[]};const s=t.childNodes;for(const t of s)"OPTION"===t.nodeName&&e.options.push(this.getDataFromOption(t));return e}getDataFromOption(t){return{id:t.id,value:t.value,text:t.text,html:t.dataset&&t.dataset.html?t.dataset.html:"",selected:t.selected,display:"none"!==t.style.display,disabled:t.disabled,mandatory:!!t.dataset&&"true"===t.dataset.mandatory,placeholder:"true"===t.dataset.placeholder,class:t.className,style:t.style.cssText,data:t.dataset}}getSelectedOptions(){let t=[];const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected&&t.push(this.getDataFromOption(e))}}if("OPTION"===s.nodeName){const e=s;e.selected&&t.push(this.getDataFromOption(e))}}return t}getSelectedValues(){return this.getSelectedOptions().map((t=>t.value))}setSelected(t){this.changeListen(!1);const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.id)}}if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.id)}}this.changeListen(!0)}setSelectedByValue(t){this.changeListen(!1);const e=this.select.childNodes;for(const s of e){if("OPTGROUP"===s.nodeName){const e=s.childNodes;for(const s of e)if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.value)}}if("OPTION"===s.nodeName){const e=s;e.selected=t.includes(e.value)}}this.changeListen(!0)}updateSelect(t,e,s){this.changeListen(!1),t&&(this.select.dataset.id=t),e&&(this.select.style.cssText=e),s&&(this.select.className="",s.forEach((t=>{""!==t.trim()&&this.select.classList.add(t.trim())}))),this.changeListen(!0)}updateOptions(t){this.changeListen(!1),this.select.innerHTML="";for(const e of t)e instanceof n&&this.select.appendChild(this.createOptgroup(e)),e instanceof a&&this.select.appendChild(this.createOption(e));this.select.dispatchEvent(new Event("change",{bubbles:!0})),this.changeListen(!0)}createOptgroup(t){const e=document.createElement("optgroup");if(e.id=t.id,e.label=t.label,t.selectAll&&(e.dataset.selectAll="true"),"off"!==t.closable&&(e.dataset.closable=t.closable),t.options)for(const s of t.options)e.appendChild(this.createOption(s));return e}createOption(t){const e=document.createElement("option");return e.id=t.id,e.value=t.value,e.textContent=t.text,""!==t.html&&e.setAttribute("data-html",t.html),t.selected&&(e.selected=t.selected),t.disabled&&(e.disabled=!0),t.display||(e.style.display="none"),t.placeholder&&e.setAttribute("data-placeholder","true"),t.mandatory&&e.setAttribute("data-mandatory","true"),t.class&&t.class.split(" ").forEach((t=>{e.classList.add(t)})),t.data&&"object"==typeof t.data&&Object.keys(t.data).forEach((s=>{e.setAttribute("data-"+function(t){const e=t.replace(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g,(t=>"-"+t.toLowerCase()));return t[0]===t[0].toUpperCase()?e.substring(1):e}(s),t.data[s])})),e}destroy(){this.changeListen(!1),this.select.removeEventListener("change",this.valueChange),this.observer&&(this.observer.disconnect(),this.observer=null),delete this.select.dataset.id,this.showUI()}}class c{constructor(t){this.id="",this.style="",this.class=[],this.isMultiple=!1,this.isOpen=!1,this.isFullOpen=!1,this.intervalMove=null,t||(t={}),this.id="ss-"+e(),this.style=t.style||"",this.class=t.class||[],this.disabled=void 0!==t.disabled&&t.disabled,this.alwaysOpen=void 0!==t.alwaysOpen&&t.alwaysOpen,this.showSearch=void 0===t.showSearch||t.showSearch,this.focusSearch=void 0===t.focusSearch||t.focusSearch,this.ariaLabel=t.ariaLabel||"Combobox",this.searchPlaceholder=t.searchPlaceholder||"Search",this.searchText=t.searchText||"No Results",this.searchingText=t.searchingText||"Searching...",this.searchHighlight=void 0!==t.searchHighlight&&t.searchHighlight,this.closeOnSelect=void 0===t.closeOnSelect||t.closeOnSelect,this.contentLocation=t.contentLocation||document.body,this.contentPosition=t.contentPosition||"absolute",this.openPosition=t.openPosition||"auto",this.placeholderText=void 0!==t.placeholderText?t.placeholderText:"Select Value",this.allowDeselect=void 0!==t.allowDeselect&&t.allowDeselect,this.hideSelected=void 0!==t.hideSelected&&t.hideSelected,this.keepOrder=void 0!==t.keepOrder&&t.keepOrder,this.showOptionTooltips=void 0!==t.showOptionTooltips&&t.showOptionTooltips,this.minSelected=t.minSelected||0,this.maxSelected=t.maxSelected||1e3,this.timeoutDelay=t.timeoutDelay||200,this.maxValuesShown=t.maxValuesShown||20,this.maxValuesMessage=t.maxValuesMessage||"{number} selected",this.addableText=t.addableText||'Press "Enter" to add {value}'}}return class{constructor(e){var i;if(this.events={search:void 0,searchFilter:(t,e)=>-1!==t.text.toLowerCase().indexOf(e.toLowerCase()),addable:void 0,beforeChange:void 0,afterChange:void 0,beforeOpen:void 0,afterOpen:void 0,beforeClose:void 0,afterClose:void 0},this.windowResize=s((()=>{(this.settings.isOpen||this.settings.isFullOpen)&&this.render.moveContent()})),this.windowScroll=s((()=>{(this.settings.isOpen||this.settings.isFullOpen)&&this.render.moveContent()})),this.documentClick=t=>{this.settings.isOpen&&t.target&&!function(t,e){function s(t,s){return s&&t&&t.classList&&t.classList.contains(s)||s&&t&&t.dataset&&t.dataset.id&&t.dataset.id===e?t:null}return s(t,e)||function t(e,i){return e&&e!==document?s(e,i)?e:t(e.parentNode,i):null}(t,e)}(t.target,this.settings.id)&&this.close(t.type)},this.windowVisibilityChange=()=>{document.hidden&&this.close()},this.selectEl="string"==typeof e.select?document.querySelector(e.select):e.select,!this.selectEl)return void(e.events&&e.events.error&&e.events.error(new Error("Could not find select element")));if("SELECT"!==this.selectEl.tagName)return void(e.events&&e.events.error&&e.events.error(new Error("Element isnt of type select")));this.selectEl.dataset.ssid&&this.destroy(),this.settings=new c(e.settings),this.cssClasses=new t(e.cssClasses);const n=["afterChange","beforeOpen","afterOpen","beforeClose","afterClose"];for(const t in e.events)e.events.hasOwnProperty(t)&&(-1!==n.indexOf(t)?this.events[t]=s(e.events[t],100):this.events[t]=e.events[t]);this.settings.disabled=(null===(i=e.settings)||void 0===i?void 0:i.disabled)?e.settings.disabled:this.selectEl.disabled,this.settings.isMultiple=this.selectEl.multiple,this.settings.style=this.selectEl.style.cssText,this.settings.class=this.selectEl.className.split(" "),this.select=new h(this.selectEl),this.select.updateSelect(this.settings.id,this.settings.style,this.settings.class),this.select.hideUI(),this.select.onValueChange=t=>{this.setSelected(t.map((t=>t.id)))},this.select.onClassChange=t=>{this.settings.class=t,this.render.updateClassStyles()},this.select.onDisabledChange=t=>{t?this.disable():this.enable()},this.select.onOptionsChange=t=>{this.setData(t)},this.store=new l(this.settings.isMultiple?"multiple":"single",e.data?e.data:this.select.getData()),e.data&&this.select.updateOptions(this.store.getData());const a={open:this.open.bind(this),close:this.close.bind(this),addable:this.events.addable?this.events.addable:void 0,setSelected:this.setSelected.bind(this),addOption:this.addOption.bind(this),search:this.search.bind(this),beforeChange:this.events.beforeChange,afterChange:this.events.afterChange};this.render=new o(this.settings,this.cssClasses,this.store,a),this.render.renderValues(),this.render.renderOptions(this.store.getData());const r=this.selectEl.getAttribute("aria-label"),d=this.selectEl.getAttribute("aria-labelledby");r?this.render.main.main.setAttribute("aria-label",r):d&&this.render.main.main.setAttribute("aria-labelledby",d),this.selectEl.parentNode&&this.selectEl.parentNode.insertBefore(this.render.main.main,this.selectEl.nextSibling),window.addEventListener("resize",this.windowResize,!1),"auto"===this.settings.openPosition&&window.addEventListener("scroll",this.windowScroll,!1),document.addEventListener("visibilitychange",this.windowVisibilityChange),this.settings.disabled&&this.disable(),this.settings.alwaysOpen&&this.open(),this.selectEl.slim=this}enable(){this.settings.disabled=!1,this.select.enable(),this.render.enable()}disable(){this.settings.disabled=!0,this.select.disable(),this.render.disable()}getData(){return this.store.getData()}setData(t){const e=this.store.getSelected(),s=this.store.validateDataArray(t);if(s)return void(this.events.error&&this.events.error(s));this.store.setData(t);const n=this.store.getData();this.select.updateOptions(n),this.render.renderValues(),this.render.renderOptions(n),this.events.afterChange&&!i(e,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}getSelected(){let t=this.store.getSelectedOptions();return this.settings.keepOrder&&(t=this.store.selectedOrderOptions(t)),t.map((t=>t.value))}setSelected(t,e=!0){const s=this.store.getSelected(),n=this.store.getDataOptions();t=Array.isArray(t)?t:[t];const a=[];for(const e of t)if(n.find((t=>t.id==e)))a.push(e);else for(const t of n.filter((t=>t.value==e)))a.push(t.id);this.store.setSelectedBy("id",a);const l=this.store.getData();this.select.updateOptions(l),this.render.renderValues(),""!==this.render.content.search.input.value?this.search(this.render.content.search.input.value):this.render.renderOptions(l),e&&this.events.afterChange&&!i(s,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}addOption(t){const e=this.store.getSelected();this.store.getDataOptions().some((e=>{var s;return e.value===(null!==(s=t.value)&&void 0!==s?s:t.text)}))||this.store.addOption(t);const s=this.store.getData();this.select.updateOptions(s),this.render.renderValues(),this.render.renderOptions(s),this.events.afterChange&&!i(e,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}open(){this.settings.disabled||this.settings.isOpen||(this.events.beforeOpen&&this.events.beforeOpen(),this.render.open(),this.settings.showSearch&&this.settings.focusSearch&&this.render.searchFocus(),this.settings.isOpen=!0,setTimeout((()=>{this.events.afterOpen&&this.events.afterOpen(),this.settings.isOpen&&(this.settings.isFullOpen=!0),document.addEventListener("click",this.documentClick)}),this.settings.timeoutDelay),"absolute"===this.settings.contentPosition&&(this.settings.intervalMove&&clearInterval(this.settings.intervalMove),this.settings.intervalMove=setInterval(this.render.moveContent.bind(this.render),500)))}close(t=null){this.settings.isOpen&&!this.settings.alwaysOpen&&(this.events.beforeClose&&this.events.beforeClose(),this.render.close(),""!==this.render.content.search.input.value&&this.search(""),this.render.mainFocus(t),this.settings.isOpen=!1,this.settings.isFullOpen=!1,setTimeout((()=>{this.events.afterClose&&this.events.afterClose(),document.removeEventListener("click",this.documentClick)}),this.settings.timeoutDelay),this.settings.intervalMove&&clearInterval(this.settings.intervalMove))}search(t){if(this.render.content.search.input.value!==t&&(this.render.content.search.input.value=t),!this.events.search)return void this.render.renderOptions(""===t?this.store.getData():this.store.search(t,this.events.searchFilter));this.render.renderSearching();const e=this.events.search(t,this.store.getSelectedOptions());e instanceof Promise?e.then((t=>{this.render.renderOptions(this.store.partialToFullData(t))})).catch((t=>{this.render.renderError("string"==typeof t?t:t.message)})):Array.isArray(e)?this.render.renderOptions(this.store.partialToFullData(e)):this.render.renderError("Search event must return a promise or an array of data")}destroy(){document.removeEventListener("click",this.documentClick),window.removeEventListener("resize",this.windowResize,!1),"auto"===this.settings.openPosition&&window.removeEventListener("scroll",this.windowScroll,!1),document.removeEventListener("visibilitychange",this.windowVisibilityChange),this.store.setData([]),this.render.destroy(),this.select.destroy()}}})); diff --git a/docs/assets/index.css b/docs/assets/index.css index ac6bd4fe..106eb950 100644 --- a/docs/assets/index.css +++ b/docs/assets/index.css @@ -1 +1 @@ -@import"https://fonts.googleapis.com/css?family=Montserrat:300,400,700";code[class*=language-],pre[class*=language-]{color:#f8f8f2;background:none;text-shadow:0 1px rgba(0,0,0,.3);font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background:#272822}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#8292a2}.token.punctuation{color:#f8f8f2}.token.namespace{opacity:.7}.token.property,.token.tag,.token.constant,.token.symbol,.token.deleted{color:#f92672}.token.boolean,.token.number{color:#ae81ff}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#a6e22e}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string,.token.variable{color:#f8f8f2}.token.atrule,.token.attr-value,.token.function,.token.class-name{color:#e6db74}.token.keyword{color:#66d9ef}.token.regex,.token.important{color:#fd971f}.token.important,.token.bold{font-weight:700}.token.entity{cursor:help}:root{--color-primary: #5897fb;--color-secondary: #666666;--color-header-bg: #ffffff;--color-border: #dcdee2;--color-font: #66666;--color-white: #ffffff;--color-alert-info: #cfe2ff;--color-alert-info-border: #b6d4fe;--color-ads-background: #7cadfa;--width-max: 1000px;--height-header: 90px;--width-nav: 200px;--height-nav: 30px;--border-radius: 4px;--font-size: 14px;--spacing: 16px;--spacing-half: 8px;--spacing-quarter: 4px}html{height:100%;padding:0;margin:0;background-color:var(--color-primary)}body{font-family:Montserrat,sans-serif,Helvetica;font-size:var(--font-size);color:var(--color-font);width:100%;padding:0;margin:0}body #app{display:grid;grid-template-columns:var(--width-nav) 1fr;grid-template-rows:calc(var(--height-header) + var(--spacing-half)) 1fr;grid-template-areas:"header header" "nav main";width:100%;max-width:var(--width-max);height:100%;padding:0;margin:0 auto;overflow-x:hidden;box-sizing:border-box}@media (max-width: 700px){body #app{grid-template-columns:1fr;grid-template-rows:calc(var(--height-header) - var(--height-nav) + var(--spacing-half)) var(--height-nav) 1fr;grid-template-areas:"header" "nav" "main"}}body #app>*{box-sizing:border-box}body #app header{position:fixed;top:0;grid-area:header;display:flex;flex-direction:column;justify-content:flex-end;color:var(--color-white);height:var(--height-header);width:100%;max-width:var(--width-max);margin:0;padding:var(--spacing-half) 0 0 0;z-index:100000;background-color:var(--color-primary)}@media (max-width: 700px){body #app header{height:calc(var(--height-header) - var(--height-nav))}}body #app header .top{display:flex;flex-direction:row;justify-content:space-between;padding:0 0 var(--spacing-half) 0}body #app header .top .text{flex:1 1 auto;color:var(--color-font)}body #app header .top .text .logo{line-height:1;font-size:40px;font-weight:300;padding:0;margin:0}body #app header .top .socials{flex:0 1 auto;display:flex;justify-content:flex-end;gap:var(--spacing-half);color:var(--color-font);margin:0 auto;padding:var(--spacing-half) 0 0 0}body #app header .top .socials a,body #app header .top .socials img{height:30px}body #app header .bar{display:flex;flex-direction:row;justify-content:space-between;height:var(--height-nav);border:solid 1.5px var(--color-white)}@media (max-width: 700px){body #app header .bar{display:none}}body #app header .bar .tagline{flex:1 1 auto;display:inline-flex;justify-content:flex-start;align-items:center;line-height:1;font-size:16px;padding:var(--spacing-quarter) var(--spacing-quarter) var(--spacing-quarter) var(--spacing-half);margin:0 auto}body #app header .bar .drop{display:flex;flex:0 1 auto;border-left:solid 1.5px var(--color-white);margin:auto var(--spacing-quarter) auto var(--spacing-quarter);padding:0 var(--spacing-quarter) 0 var(--spacing-half)}body #app header .bar .drop svg{display:flex;align-items:center;justify-content:flex-end;flex:0 1 auto;height:12px;width:12px;margin:0 auto}body #app header .bar .drop svg path{fill:none;stroke:var(--color-white);stroke-width:18;stroke-linecap:round;stroke-linejoin:round}body #app nav{position:fixed;grid-area:nav;display:flex;flex-direction:column;top:calc(var(--height-header) + var(--spacing-half));width:var(--width-nav);max-width:var(--width-max);max-height:calc(100vh - var(--height-header) - var(--spacing));overflow:hidden;z-index:100000}@media (max-width: 700px){body #app nav{top:calc(var(--height-header) - var(--height-nav));height:auto;width:100%}}body #app nav .ss-main{flex:0 1 auto;height:var(--height-nav);font-weight:700}body #app nav .nav-content{flex:1 1 auto;overflow:hidden;padding:0 0 var(--spacing-half) 0}@media (max-width: 700px){body #app nav .nav-content{display:none}}body #app nav .nav-content .ss-content{max-height:calc(100vh - var(--height-header) - var(--height-nav) - 200px)}body #app nav .nav-content .ss-content .label{font-weight:700}body #app main{grid-area:main;display:flex;flex-direction:column;gap:var(--spacing-half);padding:0 0 0 var(--spacing);overflow:auto}@media (max-width: 700px){body #app main{padding:0}}body #app main .contents{display:flex;flex-direction:column;gap:var(--spacing)}body #app main .content{flex:1 1 auto;padding:var(--spacing);background-color:var(--color-white);border-radius:var(--border-radius)}@media screen and (max-width: 700px){body #app main .content{box-shadow:none}}body #app main .content .row{display:flex;flex-direction:row;gap:var(--spacing-half)}body #app main .content .row>*{flex:1 1 auto}body #app main .content .row .btn{flex:0 1 auto}body #app main footer{grid-area:footer;color:var(--color-white);padding:var(--spacing-quarter) 0 var(--spacing-quarter) 0;line-height:1.2;font-size:calc(var(--font-size) - 2px);text-align:center}body #app main footer a{color:var(--color-font)}code[class*=language-],pre[class*=language-]{color:#a9b7c6;font-family:Consolas,Monaco,Andale Mono,monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;border-radius:4px;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{color:inherit;background:#214283d9}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{color:inherit;background:#214283d9}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2b2b2b}:not(pre)>code[class*=language-]{padding:.1em;border-radius:2px}.token.comment,.token.prolog,.token.cdata{color:gray}.token.delimiter,.token.boolean,.token.keyword,.token.selector,.token.important,.token.atrule{color:#cc7832}.token.operator,.token.punctuation,.token.attr-name{color:#a9b7c6}.token.tag,.token.tag .punctuation,.token.doctype,.token.builtin{color:#e8bf6a}.token.entity,.token.number,.token.symbol{color:#6897bb}.token.property,.token.constant,.token.variable{color:#9876aa}.token.string,.token.char{color:#6a8759}.token.attr-value,.token.attr-value .punctuation{color:#a5c261}.token.attr-value .punctuation:first-child{color:#a9b7c6}.token.url{color:#287bde;text-decoration:underline}.token.function{color:#ffc66d}.token.regex{background:#364135}.token.bold{font-weight:700}.token.italic{font-style:italic}.token.inserted{background:#294436}.token.deleted{background:#484a4a}code.language-css .token.property,code.language-css .token.property+.token.punctuation{color:#a9b7c6}code.language-css .token.id{color:#ffc66d}code.language-css .token.selector>.token.class,code.language-css .token.selector>.token.attribute,code.language-css .token.selector>.token.pseudo-class,code.language-css .token.selector>.token.pseudo-element{color:#ffc66d}h1{font-size:40px;margin:0 0 var(--spacing-half) 0;padding:0 0 var(--spacing-quarter) 0}h2{font-size:32px;margin:0 0 var(--spacing-half) 0;padding:0 0 var(--spacing-quarter) 0}h2 .header{border-bottom:solid 1px var(--color-border)}h3{font-size:24px;margin:0 0 var(--spacing-half) 0;padding:0 0 var(--spacing-quarter) 0}h4{font-size:20px;margin:0 0 var(--spacing-half) 0;padding:0 0 var(--spacing-quarter) 0}h5{font-size:16px;margin:0 0 var(--spacing-half) 0;padding:0 0 var(--spacing-quarter) 0}a{color:var(--primary-color)}a:hover{color:var(--color-secondary)}p{margin:0 0 var(--spacing-half) 0}.separator{height:1px;width:100%;margin:var(--spacing-half) 0 var(--spacing-half) 0;background-color:var(--color-border)}.separator.vertical{width:1px;height:100%;margin:0 var(--spacing-half) 0 var(--spacing-half)}.bold{font-weight:700}.pad-s{padding:var(--spacing-quarter)}.pad-t-s{padding-top:var(--spacing-quarter)}.pad-r-s{padding-right:var(--spacing-quarter)}.pad-b-s{padding-bottom:var(--spacing-quarter)}.pad-l-s{padding-left:var(--spacing-quarter)}.pad-m{padding:var(--spacing-half)}.pad-t-m{padding-top:var(--spacing-half)}.pad-r-m{padding-right:var(--spacing-half)}.pad-b-m{padding-bottom:var(--spacing-half)}.pad-l-m{padding-left:var(--spacing-half)}.pad-l{padding:var(--spacing)}.pad-t-l{padding-top:var(--spacing)}.pad-r-l{padding-right:var(--spacing)}.pad-b-l{padding-bottom:var(--spacing)}.pad-l-l{padding-left:var(--spacing)}.mar-s{margin:var(--spacing-quarter)}.mar-t-s{margin-top:var(--spacing-quarter)}.mar-r-s{margin-right:var(--spacing-quarter)}.mar-b-s{margin-bottom:var(--spacing-quarter)}.mar-l-s{margin-left:var(--spacing-quarter)}.mar-m{margin:var(--spacing-half)}.mar-t-m{margin-top:var(--spacing-half)}.mar-r-m{margin-right:var(--spacing-half)}.mar-b-m{margin-bottom:var(--spacing-half)}.mar-l-m{margin-left:var(--spacing-half)}.mar-l{margin:var(--spacing)}.mar-t-l{margin-top:var(--spacing)}.mar-r-l{margin-right:var(--spacing)}.mar-b-l{margin-bottom:var(--spacing)}.mar-l-l{margin-left:var(--spacing)}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease-in-out}.fade-enter,.fade-leave-to{opacity:0}button,.btn{display:inline-flex;align-items:center;color:var(--color-white);height:30px;width:auto;max-width:100%;min-width:auto;padding:0 var(--spacing-half) 0 var(--spacing-half);cursor:pointer;background-color:var(--color-primary);text-align:center;line-height:18px;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:var(--border-radius);vertical-align:middle;box-shadow:0 0 0 1px transparent inset,0 0 #22242626 inset;box-sizing:content-box}input{color:var(--color-font)}.alert{position:relative;color:var(--color-font);padding:var(--spacing-half) var(--spacing);margin:0 0 var(--spacing-half) 0;border-radius:var(--border-radius)}.alert.info{background-color:var(--color-alert-info);border-color:var(--color-alert-info-border)}:root{--ss-primary-color: #5897fb;--ss-bg-color: #ffffff;--ss-font-color: #4d4d4d;--ss-font-placeholder-color: #8d8d8d;--ss-disabled-color: #dcdee2;--ss-border-color: #dcdee2;--ss-highlight-color: #fffb8c;--ss-success-color: #00b755;--ss-error-color: #dc3545;--ss-focus-color: #5897fb;--ss-main-height: 30px;--ss-content-height: 300px;--ss-spacing-l: 7px;--ss-spacing-m: 5px;--ss-spacing-s: 3px;--ss-animation-timing: .2s;--ss-border-radius: 4px}@keyframes ss-valueIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes ss-valueOut{0%{transform:scale(1);opacity:1}to{transform:scale(0);opacity:0}}.ss-hide{display:none!important}.ss-main{display:flex;flex-direction:row;position:relative;-webkit-user-select:none;user-select:none;color:var(--ss-font-color);min-height:var(--ss-main-height);width:100%;padding:var(--ss-spacing-s);cursor:pointer;border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius);background-color:var(--ss-bg-color);outline:0;box-sizing:border-box;transition:background-color var(--ss-animation-timing);overflow:hidden}.ss-main:focus{box-shadow:0 0 5px var(--ss-focus-color)}.ss-main.ss-disabled{background-color:var(--ss-disabled-color);cursor:not-allowed}.ss-main.ss-disabled .ss-values .ss-disabled{color:var(--ss-font-color)}.ss-main.ss-disabled .ss-values .ss-value .ss-value-delete{cursor:not-allowed}.ss-main.ss-open-above{border-top-left-radius:0;border-top-right-radius:0}.ss-main.ss-open-below{border-bottom-left-radius:0;border-bottom-right-radius:0}.ss-main .ss-values{display:inline-flex;flex-wrap:wrap;gap:var(--ss-spacing-m);flex:1 1 100%}.ss-main .ss-values .ss-placeholder{display:flex;padding:var(--ss-spacing-s) var(--ss-spacing-m) var(--ss-spacing-s) var(--ss-spacing-m);margin:auto 0;line-height:1em;align-items:center;width:100%;color:var(--ss-font-placeholder-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-main .ss-values .ss-max{display:flex;-webkit-user-select:none;user-select:none;align-items:center;width:fit-content;font-size:12px;color:var(--ss-bg-color);line-height:1;padding:var(--ss-spacing-s) var(--ss-spacing-m);background-color:var(--ss-primary-color);border-radius:var(--ss-border-radius)}.ss-main .ss-values .ss-single{display:flex;margin:auto 0px auto var(--ss-spacing-s)}.ss-main .ss-values .ss-value{display:flex;-webkit-user-select:none;user-select:none;align-items:center;width:fit-content;background-color:var(--ss-primary-color);border-radius:var(--ss-border-radius);animation-name:ss-valueIn;animation-duration:var(--ss-animation-timing);animation-timing-function:ease-out;animation-fill-mode:both}.ss-main .ss-values .ss-value.ss-value-out{animation-name:ss-valueOut;animation-duration:var(--ss-animation-timing);animation-timing-function:ease-out}.ss-main .ss-values .ss-value .ss-value-text{font-size:12px;color:var(--ss-bg-color);line-height:1;padding:var(--ss-spacing-s) var(--ss-spacing-m)}.ss-main .ss-values .ss-value .ss-value-delete{display:flex;align-items:center;height:var(--ss-spacing-l);width:var(--ss-spacing-l);padding:var(--ss-spacing-s) var(--ss-spacing-m);cursor:pointer;border-left:solid 1px var(--ss-bg-color);box-sizing:content-box}.ss-main .ss-values .ss-value .ss-value-delete svg{height:var(--ss-spacing-l);width:var(--ss-spacing-l)}.ss-main .ss-values .ss-value .ss-value-delete svg path{fill:none;stroke:var(--ss-bg-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round}.ss-main .ss-deselect{flex:0 1 auto;display:flex;align-items:center;justify-content:center;width:fit-content;height:auto;padding:0 var(--ss-spacing-m) 0 var(--ss-spacing-m)}.ss-main .ss-deselect svg{width:8px;height:8px}.ss-main .ss-deselect svg path{fill:none;stroke:var(--ss-font-color);stroke-width:20;stroke-linecap:round;stroke-linejoin:round}.ss-main .ss-arrow{flex:0 1 auto;display:flex;align-items:center;justify-content:flex-end;width:12px;height:12px;margin:auto var(--ss-spacing-m) auto var(--ss-spacing-m)}.ss-main .ss-arrow path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round;transition-timing-function:ease-out;transition:var(--ss-animation-timing)}.ss-content{position:absolute;display:flex;height:auto;flex-direction:column;width:auto;max-height:var(--ss-content-height);box-sizing:border-box;border:solid 1px var(--ss-border-color);background-color:var(--ss-bg-color);transition:transform var(--ss-animation-timing),opacity var(--ss-animation-timing);opacity:0;transform:scaleY(0);transform-origin:center top;overflow:hidden;z-index:10000}.ss-content.ss-relative{position:relative;height:100%}.ss-content.ss-open-above{flex-direction:column-reverse;opacity:1;transform:scaleY(1);transform-origin:center bottom;border-top-left-radius:var(--ss-border-radius);border-top-right-radius:var(--ss-border-radius)}.ss-content.ss-open-below{opacity:1;transform:scaleY(1);transform-origin:center top;border-bottom-left-radius:var(--ss-border-radius);border-bottom-right-radius:var(--ss-border-radius)}.ss-content .ss-search{flex:0 1 auto;display:flex;flex-direction:row;padding:var(--ss-spacing-l) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l)}.ss-content .ss-search input{display:inline-flex;font-size:inherit;line-height:inherit;flex:1 1 auto;width:100%;min-width:0px;padding:var(--ss-spacing-m) var(--ss-spacing-l);margin:0;border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius);background-color:var(--ss-bg-color);outline:0;text-align:left;box-sizing:border-box}.ss-content .ss-search input::placeholder{color:var(--ss-font-placeholder-color);vertical-align:middle}.ss-content .ss-search input:focus{box-shadow:0 0 5px var(--ss-focus-color)}.ss-content .ss-search .ss-addable{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;flex:0 0 auto;height:auto;margin:0 0 0 var(--ss-spacing-m);border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius)}.ss-content .ss-search .ss-addable svg{display:flex;align-items:center;justify-content:flex-end;flex:0 1 auto;width:12px;height:12px;margin:auto var(--ss-spacing-m) auto var(--ss-spacing-m)}.ss-content .ss-search .ss-addable svg path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round}.ss-content .ss-list{flex:1 1 auto;height:auto;overflow-x:hidden;overflow-y:auto}.ss-content .ss-list .ss-error{color:var(--ss-error-color);padding:var(--ss-spacing-l)}.ss-content .ss-list .ss-searching{color:var(--ss-font-color);padding:var(--ss-spacing-l)}.ss-content .ss-list .ss-optgroup.ss-close .ss-option{display:none!important}.ss-content .ss-list .ss-optgroup .ss-optgroup-label{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:var(--ss-spacing-m) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-label-text{flex:1 1 auto;font-weight:700;color:var(--ss-font-color)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label:has(.ss-arrow){cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions{flex:0 1 auto;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--ss-spacing-m)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall{flex:0 0 auto;display:flex;flex-direction:row;cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall:hover{opacity:.5}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall.ss-selected svg path{stroke:var(--ss-error-color)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall span{flex:0 1 auto;display:flex;align-items:center;justify-content:center;font-size:60%;text-align:center;padding:0 var(--ss-spacing-s) 0 0}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg{flex:0 1 auto;width:13px;height:13px}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg path{fill:none;stroke:var(--ss-success-color);stroke-linecap:round;stroke-linejoin:round}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg:first-child{stroke-width:5}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg:last-child{stroke-width:11}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable{flex:0 1 auto;display:flex;flex-direction:row;cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable .ss-arrow{flex:1 1 auto;width:10px;height:10px}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable .ss-arrow path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round;transition-timing-function:ease-out;transition:var(--ss-animation-timing)}.ss-content .ss-list .ss-optgroup .ss-option{padding:var(--ss-spacing-s) var(--ss-spacing-s) var(--ss-spacing-s) calc(var(--ss-spacing-l) * 3)}.ss-content .ss-list .ss-option{display:block;padding:var(--ss-spacing-m) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l);white-space:normal;color:var(--ss-font-color);cursor:pointer;-webkit-user-select:none;user-select:none}.ss-content .ss-list .ss-option:hover{color:var(--ss-bg-color);background-color:var(--ss-primary-color)}.ss-content .ss-list .ss-option.ss-highlighted,.ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected{color:var(--ss-bg-color);background-color:var(--ss-primary-color)}.ss-content .ss-list .ss-option.ss-disabled{cursor:not-allowed;background-color:var(--ss-disabled-color)}.ss-content .ss-list .ss-option.ss-disabled:hover{color:var(--ss-font-color)}.ss-content .ss-list .ss-option .ss-search-highlight{display:inline-block;background-color:var(--ss-highlight-color)}.ss-main.error,.ss-content.error{border:solid 1px red!important;color:red!important}.carbon-container #carbonads *{margin:initial;padding:initial}.carbon-container #carbonads{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,Helvetica,Arial,sans-serif}.carbon-container #carbonads{display:flex;max-width:100%;background-color:var(--color-ads-background);box-shadow:none;z-index:100}.carbon-container #carbonads a{color:inherit;text-decoration:none}.carbon-container #carbonads a:hover{color:inherit}.carbon-container #carbonads span{position:relative;display:block;overflow:hidden}.carbon-container #carbonads .carbon-wrap{display:flex;flex-direction:column}.carbon-container #carbonads .carbon-img{display:block;margin-bottom:0;line-height:1}.carbon-container #carbonads .carbon-img img{display:block}.carbon-container #carbonads .carbon-text{font-size:12px;padding:var(--spacing-quarter);margin-bottom:16px;line-height:1.5;text-align:left}.carbon-container #carbonads .carbon-poweredby{display:block;padding:var(--spacing-quarter);background:#f1f1f2;text-align:center;text-transform:uppercase;letter-spacing:.5px;font-weight:600;font-size:8px;line-height:1;border-top-left-radius:3px;position:absolute;bottom:0;right:0} +@import"https://fonts.googleapis.com/css?family=Montserrat:300,400,700";@import"../../../../node_modules/prismjs/themes/prism-okaidia.css";:root{--color-primary: #5897fb;--color-secondary: #666666;--color-header-bg: #ffffff;--color-border: #dcdee2;--color-font: #66666;--color-white: #ffffff;--color-alert-info: #cfe2ff;--color-alert-info-border: #b6d4fe;--color-ads-background: #7cadfa;--width-max: 1000px;--height-header: 90px;--width-nav: 200px;--height-nav: 30px;--border-radius: 4px;--font-size: 14px;--spacing: 16px;--spacing-half: 8px;--spacing-quarter: 4px}html{height:100%;padding:0;margin:0;background-color:var(--color-primary)}body{font-family:Montserrat,sans-serif,Helvetica;font-size:var(--font-size);color:var(--color-font);width:100%;padding:0;margin:0}body #app{display:grid;grid-template-columns:var(--width-nav) 1fr;grid-template-rows:calc(var(--height-header) + var(--spacing-half)) 1fr;grid-template-areas:"header header" "nav main";width:100%;max-width:var(--width-max);height:100%;padding:0;margin:0 auto;overflow-x:hidden;box-sizing:border-box}@media (max-width: 700px){body #app{grid-template-columns:1fr;grid-template-rows:calc(var(--height-header) - var(--height-nav) + var(--spacing-half)) var(--height-nav) 1fr;grid-template-areas:"header" "nav" "main"}}body #app>*{box-sizing:border-box}body #app header{position:fixed;top:0;grid-area:header;display:flex;flex-direction:column;justify-content:flex-end;color:var(--color-white);height:var(--height-header);width:100%;max-width:var(--width-max);margin:0;padding:var(--spacing-half) 0 0 0;z-index:100000;background-color:var(--color-primary)}@media (max-width: 700px){body #app header{height:calc(var(--height-header) - var(--height-nav))}}body #app header .top{display:flex;flex-direction:row;justify-content:space-between;padding:0 0 var(--spacing-half) 0}body #app header .top .text{flex:1 1 auto;color:var(--color-font)}body #app header .top .text .logo{line-height:1;font-size:40px;font-weight:300;padding:0;margin:0}body #app header .top .socials{flex:0 1 auto;display:flex;justify-content:flex-end;gap:var(--spacing-half);color:var(--color-font);margin:0 auto;padding:var(--spacing-half) 0 0 0}body #app header .top .socials a,body #app header .top .socials img{height:30px}body #app header .bar{display:flex;flex-direction:row;justify-content:space-between;height:var(--height-nav);border:solid 1.5px var(--color-white)}@media (max-width: 700px){body #app header .bar{display:none}}body #app header .bar .tagline{flex:1 1 auto;display:inline-flex;justify-content:flex-start;align-items:center;line-height:1;font-size:16px;padding:var(--spacing-quarter) var(--spacing-quarter) var(--spacing-quarter) var(--spacing-half);margin:0 auto}body #app header .bar .drop{display:flex;flex:0 1 auto;border-left:solid 1.5px var(--color-white);margin:auto var(--spacing-quarter) auto var(--spacing-quarter);padding:0 var(--spacing-quarter) 0 var(--spacing-half)}body #app header .bar .drop svg{display:flex;align-items:center;justify-content:flex-end;flex:0 1 auto;height:12px;width:12px;margin:0 auto}body #app header .bar .drop svg path{fill:none;stroke:var(--color-white);stroke-width:18;stroke-linecap:round;stroke-linejoin:round}body #app nav{position:fixed;grid-area:nav;display:flex;flex-direction:column;top:calc(var(--height-header) + var(--spacing-half));width:var(--width-nav);max-width:var(--width-max);max-height:calc(100vh - var(--height-header) - var(--spacing));overflow:hidden;z-index:100000}@media (max-width: 700px){body #app nav{top:calc(var(--height-header) - var(--height-nav));height:auto;width:100%}}body #app nav .ss-main{flex:0 1 auto;height:var(--height-nav);font-weight:700}body #app nav .nav-content{flex:1 1 auto;overflow:hidden;padding:0 0 var(--spacing-half) 0}@media (max-width: 700px){body #app nav .nav-content{display:none}}body #app nav .nav-content .ss-content{max-height:calc(100vh - var(--height-header) - var(--height-nav) - 200px)}body #app nav .nav-content .ss-content .label{font-weight:700}body #app main{grid-area:main;display:flex;flex-direction:column;gap:var(--spacing-half);padding:0 0 0 var(--spacing);overflow:auto}@media (max-width: 700px){body #app main{padding:0}}body #app main .contents{display:flex;flex-direction:column;gap:var(--spacing)}body #app main .content{flex:1 1 auto;padding:var(--spacing);background-color:var(--color-white);border-radius:var(--border-radius)}@media screen and (max-width: 700px){body #app main .content{box-shadow:none}}body #app main .content .row{display:flex;flex-direction:row;gap:var(--spacing-half)}body #app main .content .row>*{flex:1 1 auto}body #app main .content .row .btn{flex:0 1 auto}body #app main footer{grid-area:footer;color:var(--color-white);padding:var(--spacing-quarter) 0 var(--spacing-quarter) 0;line-height:1.2;font-size:calc(var(--font-size) - 2px);text-align:center}body #app main footer a{color:var(--color-font)}code[class*=language-],pre[class*=language-]{color:#a9b7c6;font-family:Consolas,Monaco,Andale Mono,monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;border-radius:4px;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{color:inherit;background:#214283d9}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{color:inherit;background:#214283d9}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2b2b2b}:not(pre)>code[class*=language-]{padding:.1em;border-radius:2px}.token.comment,.token.prolog,.token.cdata{color:gray}.token.delimiter,.token.boolean,.token.keyword,.token.selector,.token.important,.token.atrule{color:#cc7832}.token.operator,.token.punctuation,.token.attr-name{color:#a9b7c6}.token.tag,.token.tag .punctuation,.token.doctype,.token.builtin{color:#e8bf6a}.token.entity,.token.number,.token.symbol{color:#6897bb}.token.property,.token.constant,.token.variable{color:#9876aa}.token.string,.token.char{color:#6a8759}.token.attr-value,.token.attr-value .punctuation{color:#a5c261}.token.attr-value .punctuation:first-child{color:#a9b7c6}.token.url{color:#287bde;text-decoration:underline}.token.function{color:#ffc66d}.token.regex{background:#364135}.token.bold{font-weight:700}.token.italic{font-style:italic}.token.inserted{background:#294436}.token.deleted{background:#484a4a}code.language-css .token.property,code.language-css .token.property+.token.punctuation{color:#a9b7c6}code.language-css .token.id{color:#ffc66d}code.language-css .token.selector>.token.class,code.language-css .token.selector>.token.attribute,code.language-css .token.selector>.token.pseudo-class,code.language-css .token.selector>.token.pseudo-element{color:#ffc66d}h1{font-size:40px;margin:0 0 var(--spacing-half) 0;padding:0 0 var(--spacing-quarter) 0}h2{font-size:32px;margin:0 0 var(--spacing-half) 0;padding:0 0 var(--spacing-quarter) 0}h2 .header{border-bottom:solid 1px var(--color-border)}h3{font-size:24px;margin:0 0 var(--spacing-half) 0;padding:0 0 var(--spacing-quarter) 0}h4{font-size:20px;margin:0 0 var(--spacing-half) 0;padding:0 0 var(--spacing-quarter) 0}h5{font-size:16px;margin:0 0 var(--spacing-half) 0;padding:0 0 var(--spacing-quarter) 0}a{color:var(--primary-color)}a:hover{color:var(--color-secondary)}p{margin:0 0 var(--spacing-half) 0}.separator{height:1px;width:100%;margin:var(--spacing-half) 0 var(--spacing-half) 0;background-color:var(--color-border)}.separator.vertical{width:1px;height:100%;margin:0 var(--spacing-half) 0 var(--spacing-half)}.bold{font-weight:700}.pad-s{padding:var(--spacing-quarter)}.pad-t-s{padding-top:var(--spacing-quarter)}.pad-r-s{padding-right:var(--spacing-quarter)}.pad-b-s{padding-bottom:var(--spacing-quarter)}.pad-l-s{padding-left:var(--spacing-quarter)}.pad-m{padding:var(--spacing-half)}.pad-t-m{padding-top:var(--spacing-half)}.pad-r-m{padding-right:var(--spacing-half)}.pad-b-m{padding-bottom:var(--spacing-half)}.pad-l-m{padding-left:var(--spacing-half)}.pad-l{padding:var(--spacing)}.pad-t-l{padding-top:var(--spacing)}.pad-r-l{padding-right:var(--spacing)}.pad-b-l{padding-bottom:var(--spacing)}.pad-l-l{padding-left:var(--spacing)}.mar-s{margin:var(--spacing-quarter)}.mar-t-s{margin-top:var(--spacing-quarter)}.mar-r-s{margin-right:var(--spacing-quarter)}.mar-b-s{margin-bottom:var(--spacing-quarter)}.mar-l-s{margin-left:var(--spacing-quarter)}.mar-m{margin:var(--spacing-half)}.mar-t-m{margin-top:var(--spacing-half)}.mar-r-m{margin-right:var(--spacing-half)}.mar-b-m{margin-bottom:var(--spacing-half)}.mar-l-m{margin-left:var(--spacing-half)}.mar-l{margin:var(--spacing)}.mar-t-l{margin-top:var(--spacing)}.mar-r-l{margin-right:var(--spacing)}.mar-b-l{margin-bottom:var(--spacing)}.mar-l-l{margin-left:var(--spacing)}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease-in-out}.fade-enter,.fade-leave-to{opacity:0}button,.btn{display:inline-flex;align-items:center;color:var(--color-white);height:30px;width:auto;max-width:100%;min-width:auto;padding:0 var(--spacing-half) 0 var(--spacing-half);cursor:pointer;background-color:var(--color-primary);text-align:center;line-height:18px;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:var(--border-radius);vertical-align:middle;box-shadow:0 0 0 1px transparent inset,0 0 #22242626 inset;box-sizing:content-box}input{color:var(--color-font)}.alert{position:relative;color:var(--color-font);padding:var(--spacing-half) var(--spacing);margin:0 0 var(--spacing-half) 0;border-radius:var(--border-radius)}.alert.info{background-color:var(--color-alert-info);border-color:var(--color-alert-info-border)}:root{--ss-primary-color: #5897fb;--ss-bg-color: #ffffff;--ss-font-color: #4d4d4d;--ss-font-placeholder-color: #8d8d8d;--ss-disabled-color: #dcdee2;--ss-border-color: #dcdee2;--ss-highlight-color: #fffb8c;--ss-success-color: #00b755;--ss-error-color: #dc3545;--ss-focus-color: #5897fb;--ss-main-height: 30px;--ss-content-height: 300px;--ss-spacing-l: 7px;--ss-spacing-m: 5px;--ss-spacing-s: 3px;--ss-animation-timing: .2s;--ss-border-radius: 4px}@keyframes ss-valueIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes ss-valueOut{0%{transform:scale(1);opacity:1}to{transform:scale(0);opacity:0}}.ss-hide{display:none!important}.ss-main{display:flex;flex-direction:row;position:relative;-webkit-user-select:none;user-select:none;color:var(--ss-font-color);min-height:var(--ss-main-height);width:100%;padding:var(--ss-spacing-s);cursor:pointer;border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius);background-color:var(--ss-bg-color);outline:0;box-sizing:border-box;transition:background-color var(--ss-animation-timing);overflow:hidden}.ss-main:focus{box-shadow:0 0 5px var(--ss-focus-color)}.ss-main.ss-disabled{background-color:var(--ss-disabled-color);cursor:not-allowed}.ss-main.ss-disabled .ss-values .ss-disabled{color:var(--ss-font-color)}.ss-main.ss-disabled .ss-values .ss-value .ss-value-delete{cursor:not-allowed}.ss-main.ss-open-above{border-top-left-radius:0;border-top-right-radius:0}.ss-main.ss-open-below{border-bottom-left-radius:0;border-bottom-right-radius:0}.ss-main .ss-values{display:inline-flex;flex-wrap:wrap;gap:var(--ss-spacing-m);flex:1 1 100%}.ss-main .ss-values .ss-placeholder{display:flex;padding:var(--ss-spacing-s) var(--ss-spacing-m) var(--ss-spacing-s) var(--ss-spacing-m);margin:auto 0;line-height:1em;align-items:center;width:100%;color:var(--ss-font-placeholder-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-main .ss-values .ss-max{display:flex;-webkit-user-select:none;user-select:none;align-items:center;width:fit-content;font-size:12px;color:var(--ss-bg-color);line-height:1;padding:var(--ss-spacing-s) var(--ss-spacing-m);background-color:var(--ss-primary-color);border-radius:var(--ss-border-radius)}.ss-main .ss-values .ss-single{display:flex;margin:auto 0px auto var(--ss-spacing-s)}.ss-main .ss-values .ss-value{display:flex;-webkit-user-select:none;user-select:none;align-items:center;width:fit-content;background-color:var(--ss-primary-color);border-radius:var(--ss-border-radius);animation-name:ss-valueIn;animation-duration:var(--ss-animation-timing);animation-timing-function:ease-out;animation-fill-mode:both}.ss-main .ss-values .ss-value.ss-value-out{animation-name:ss-valueOut;animation-duration:var(--ss-animation-timing);animation-timing-function:ease-out}.ss-main .ss-values .ss-value .ss-value-text{font-size:12px;color:var(--ss-bg-color);line-height:1;padding:var(--ss-spacing-s) var(--ss-spacing-m)}.ss-main .ss-values .ss-value .ss-value-delete{display:flex;align-items:center;height:var(--ss-spacing-l);width:var(--ss-spacing-l);padding:var(--ss-spacing-s) var(--ss-spacing-m);cursor:pointer;border-left:solid 1px var(--ss-bg-color);box-sizing:content-box}.ss-main .ss-values .ss-value .ss-value-delete svg{height:var(--ss-spacing-l);width:var(--ss-spacing-l)}.ss-main .ss-values .ss-value .ss-value-delete svg path{fill:none;stroke:var(--ss-bg-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round}.ss-main .ss-deselect{flex:0 1 auto;display:flex;align-items:center;justify-content:center;width:fit-content;height:auto;padding:0 var(--ss-spacing-m) 0 var(--ss-spacing-m)}.ss-main .ss-deselect svg{width:8px;height:8px}.ss-main .ss-deselect svg path{fill:none;stroke:var(--ss-font-color);stroke-width:20;stroke-linecap:round;stroke-linejoin:round}.ss-main .ss-arrow{flex:0 1 auto;display:flex;align-items:center;justify-content:flex-end;width:12px;height:12px;margin:auto var(--ss-spacing-m) auto var(--ss-spacing-m)}.ss-main .ss-arrow path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round;transition-timing-function:ease-out;transition:var(--ss-animation-timing)}.ss-content{position:absolute;display:flex;height:auto;flex-direction:column;width:auto;max-height:var(--ss-content-height);box-sizing:border-box;border:solid 1px var(--ss-border-color);background-color:var(--ss-bg-color);transition:transform var(--ss-animation-timing),opacity var(--ss-animation-timing);opacity:0;transform:scaleY(0);transform-origin:center top;overflow:hidden;z-index:10000}.ss-content.ss-relative{position:relative;height:100%}.ss-content.ss-fixed{position:fixed}.ss-content.ss-open-above{flex-direction:column-reverse;opacity:1;transform:scaleY(1);transform-origin:center bottom;border-top-left-radius:var(--ss-border-radius);border-top-right-radius:var(--ss-border-radius)}.ss-content.ss-open-below{opacity:1;transform:scaleY(1);transform-origin:center top;border-bottom-left-radius:var(--ss-border-radius);border-bottom-right-radius:var(--ss-border-radius)}.ss-content .ss-search{flex:0 1 auto;display:flex;flex-direction:row;padding:var(--ss-spacing-l) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l)}.ss-content .ss-search input{display:inline-flex;font-size:inherit;line-height:inherit;flex:1 1 auto;width:100%;min-width:0px;padding:var(--ss-spacing-m) var(--ss-spacing-l);margin:0;border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius);background-color:var(--ss-bg-color);outline:0;text-align:left;box-sizing:border-box}.ss-content .ss-search input::placeholder{color:var(--ss-font-placeholder-color);vertical-align:middle}.ss-content .ss-search input:focus{box-shadow:0 0 5px var(--ss-focus-color)}.ss-content .ss-search .ss-addable{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;flex:0 0 auto;height:auto;margin:0 0 0 var(--ss-spacing-m);border:1px solid var(--ss-border-color);border-radius:var(--ss-border-radius)}.ss-content .ss-search .ss-addable svg{display:flex;align-items:center;justify-content:flex-end;flex:0 1 auto;width:12px;height:12px;margin:auto var(--ss-spacing-m) auto var(--ss-spacing-m)}.ss-content .ss-search .ss-addable svg path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round}.ss-content .ss-list{flex:1 1 auto;height:auto;overflow-x:hidden;overflow-y:auto}.ss-content .ss-list .ss-error{color:var(--ss-error-color);padding:var(--ss-spacing-l)}.ss-content .ss-list .ss-searching{color:var(--ss-font-color);padding:var(--ss-spacing-l)}.ss-content .ss-list .ss-optgroup.ss-close .ss-option{display:none!important}.ss-content .ss-list .ss-optgroup .ss-optgroup-label{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:var(--ss-spacing-m) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-label-text{flex:1 1 auto;font-weight:700;color:var(--ss-font-color)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label:has(.ss-arrow){cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions{flex:0 1 auto;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--ss-spacing-m)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall{flex:0 0 auto;display:flex;flex-direction:row;cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall:hover{opacity:.5}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall.ss-selected svg path{stroke:var(--ss-error-color)}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall span{flex:0 1 auto;display:flex;align-items:center;justify-content:center;font-size:60%;text-align:center;padding:0 var(--ss-spacing-s) 0 0}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg{flex:0 1 auto;width:13px;height:13px}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg path{fill:none;stroke:var(--ss-success-color);stroke-linecap:round;stroke-linejoin:round}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg:first-child{stroke-width:5}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-selectall svg:last-child{stroke-width:11}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable{flex:0 1 auto;display:flex;flex-direction:row;cursor:pointer}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable .ss-arrow{flex:1 1 auto;width:10px;height:10px}.ss-content .ss-list .ss-optgroup .ss-optgroup-label .ss-optgroup-actions .ss-closable .ss-arrow path{fill:none;stroke:var(--ss-font-color);stroke-width:18;stroke-linecap:round;stroke-linejoin:round;transition-timing-function:ease-out;transition:var(--ss-animation-timing)}.ss-content .ss-list .ss-optgroup .ss-option{padding:var(--ss-spacing-s) var(--ss-spacing-s) var(--ss-spacing-s) calc(var(--ss-spacing-l) * 3)}.ss-content .ss-list .ss-option{display:block;padding:var(--ss-spacing-m) var(--ss-spacing-l) var(--ss-spacing-m) var(--ss-spacing-l);white-space:normal;color:var(--ss-font-color);cursor:pointer;-webkit-user-select:none;user-select:none}.ss-content .ss-list .ss-option:hover{color:var(--ss-bg-color);background-color:var(--ss-primary-color)}.ss-content .ss-list .ss-option.ss-highlighted,.ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected{color:var(--ss-bg-color);background-color:var(--ss-primary-color)}.ss-content .ss-list .ss-option.ss-disabled{cursor:not-allowed;background-color:var(--ss-disabled-color)}.ss-content .ss-list .ss-option.ss-disabled:hover{color:var(--ss-font-color)}.ss-content .ss-list .ss-option .ss-search-highlight{display:inline-block;background-color:var(--ss-highlight-color)}.ss-main.error,.ss-content.error{border:solid 1px red!important;color:red!important}.carbon-container #carbonads *{margin:initial;padding:initial}.carbon-container #carbonads{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,Helvetica,Arial,sans-serif}.carbon-container #carbonads{display:flex;max-width:100%;background-color:var(--color-ads-background);box-shadow:none;z-index:100}.carbon-container #carbonads a{color:inherit;text-decoration:none}.carbon-container #carbonads a:hover{color:inherit}.carbon-container #carbonads span{position:relative;display:block;overflow:hidden}.carbon-container #carbonads .carbon-wrap{display:flex;flex-direction:column}.carbon-container #carbonads .carbon-img{display:block;margin-bottom:0;line-height:1}.carbon-container #carbonads .carbon-img img{display:block}.carbon-container #carbonads .carbon-text{font-size:12px;padding:var(--spacing-quarter);margin-bottom:16px;line-height:1.5;text-align:left}.carbon-container #carbonads .carbon-poweredby{display:block;padding:var(--spacing-quarter);background:#f1f1f2;text-align:center;text-transform:uppercase;letter-spacing:.5px;font-weight:600;font-size:8px;line-height:1;border-top-left-radius:3px;position:absolute;bottom:0;right:0} diff --git a/docs/assets/index.js b/docs/assets/index.js index 80d9d409..1c17773a 100644 --- a/docs/assets/index.js +++ b/docs/assets/index.js @@ -1,33 +1,33 @@ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/home.js","assets/home.css","assets/index2.js","assets/index2.css","assets/index3.js","assets/index3.css"])))=>i.map(i=>d[i]); (function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const r of i)if(r.type==="childList")for(const l of r.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&n(l)}).observe(document,{childList:!0,subtree:!0});function s(i){const r={};return i.integrity&&(r.integrity=i.integrity),i.referrerPolicy&&(r.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?r.credentials="include":i.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function n(i){if(i.ep)return;i.ep=!0;const r=s(i);fetch(i.href,r)}})();/** -* @vue/shared v3.5.12 +* @vue/shared v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**//*! #__NO_SIDE_EFFECTS__ */function un(t){const e=Object.create(null);for(const s of t.split(","))e[s]=1;return s=>s in e}const ie={},_t=[],Ke=()=>{},tl=()=>!1,ys=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&(t.charCodeAt(2)>122||t.charCodeAt(2)<97),fn=t=>t.startsWith("onUpdate:"),he=Object.assign,hn=(t,e)=>{const s=t.indexOf(e);s>-1&&t.splice(s,1)},sl=Object.prototype.hasOwnProperty,Z=(t,e)=>sl.call(t,e),z=Array.isArray,Ot=t=>ws(t)==="[object Map]",Li=t=>ws(t)==="[object Set]",G=t=>typeof t=="function",ue=t=>typeof t=="string",st=t=>typeof t=="symbol",oe=t=>t!==null&&typeof t=="object",Pi=t=>(oe(t)||G(t))&&G(t.then)&&G(t.catch),Ri=Object.prototype.toString,ws=t=>Ri.call(t),nl=t=>ws(t).slice(8,-1),Di=t=>ws(t)==="[object Object]",dn=t=>ue(t)&&t!=="NaN"&&t[0]!=="-"&&""+parseInt(t,10)===t,Vt=un(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),As=t=>{const e=Object.create(null);return s=>e[s]||(e[s]=t(s))},il=/-(\w)/g,Me=As(t=>t.replace(il,(e,s)=>s?s.toUpperCase():"")),rl=/\B([A-Z])/g,xt=As(t=>t.replace(rl,"-$1").toLowerCase()),xs=As(t=>t.charAt(0).toUpperCase()+t.slice(1)),Ds=As(t=>t?`on${xs(t)}`:""),ht=(t,e)=>!Object.is(t,e),Fs=(t,...e)=>{for(let s=0;s{Object.defineProperty(t,e,{configurable:!0,enumerable:!1,writable:n,value:s})},ll=t=>{const e=parseFloat(t);return isNaN(e)?t:e};let In;const Es=()=>In||(In=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function pn(t){if(z(t)){const e={};for(let s=0;s{if(s){const n=s.split(al);n.length>1&&(e[n[0].trim()]=n[1].trim())}}),e}function gn(t){let e="";if(ue(t))e=t;else if(z(t))for(let s=0;s!!(t&&t.__v_isRef===!0),Mi=t=>ue(t)?t:t==null?"":z(t)||oe(t)&&(t.toString===Ri||!G(t.toString))?Ii(t)?Mi(t.value):JSON.stringify(t,Ni,2):String(t),Ni=(t,e)=>Ii(e)?Ni(t,e.value):Ot(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((s,[n,i],r)=>(s[ks(n,r)+" =>"]=i,s),{})}:Li(e)?{[`Set(${e.size})`]:[...e.values()].map(s=>ks(s))}:st(e)?ks(e):oe(e)&&!z(e)&&!Di(e)?String(e):e,ks=(t,e="")=>{var s;return st(t)?`Symbol(${(s=t.description)!=null?s:e})`:t};/** -* @vue/reactivity v3.5.12 +**//*! #__NO_SIDE_EFFECTS__ */function un(t){const e=Object.create(null);for(const s of t.split(","))e[s]=1;return s=>s in e}const ie={},_t=[],Ke=()=>{},tl=()=>!1,ws=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&(t.charCodeAt(2)>122||t.charCodeAt(2)<97),fn=t=>t.startsWith("onUpdate:"),he=Object.assign,hn=(t,e)=>{const s=t.indexOf(e);s>-1&&t.splice(s,1)},sl=Object.prototype.hasOwnProperty,Z=(t,e)=>sl.call(t,e),z=Array.isArray,Ot=t=>As(t)==="[object Map]",Li=t=>As(t)==="[object Set]",G=t=>typeof t=="function",ue=t=>typeof t=="string",st=t=>typeof t=="symbol",oe=t=>t!==null&&typeof t=="object",Pi=t=>(oe(t)||G(t))&&G(t.then)&&G(t.catch),Ri=Object.prototype.toString,As=t=>Ri.call(t),nl=t=>As(t).slice(8,-1),Di=t=>As(t)==="[object Object]",dn=t=>ue(t)&&t!=="NaN"&&t[0]!=="-"&&""+parseInt(t,10)===t,Vt=un(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),xs=t=>{const e=Object.create(null);return s=>e[s]||(e[s]=t(s))},il=/-(\w)/g,Me=xs(t=>t.replace(il,(e,s)=>s?s.toUpperCase():"")),rl=/\B([A-Z])/g,xt=xs(t=>t.replace(rl,"-$1").toLowerCase()),Es=xs(t=>t.charAt(0).toUpperCase()+t.slice(1)),ks=xs(t=>t?`on${Es(t)}`:""),ht=(t,e)=>!Object.is(t,e),Fs=(t,...e)=>{for(let s=0;s{Object.defineProperty(t,e,{configurable:!0,enumerable:!1,writable:n,value:s})},ll=t=>{const e=parseFloat(t);return isNaN(e)?t:e};let In;const Ss=()=>In||(In=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function pn(t){if(z(t)){const e={};for(let s=0;s{if(s){const n=s.split(al);n.length>1&&(e[n[0].trim()]=n[1].trim())}}),e}function gn(t){let e="";if(ue(t))e=t;else if(z(t))for(let s=0;s!!(t&&t.__v_isRef===!0),Mi=t=>ue(t)?t:t==null?"":z(t)||oe(t)&&(t.toString===Ri||!G(t.toString))?Ii(t)?Mi(t.value):JSON.stringify(t,Ni,2):String(t),Ni=(t,e)=>Ii(e)?Ni(t,e.value):Ot(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((s,[n,i],r)=>(s[Is(n,r)+" =>"]=i,s),{})}:Li(e)?{[`Set(${e.size})`]:[...e.values()].map(s=>Is(s))}:st(e)?Is(e):oe(e)&&!z(e)&&!Di(e)?String(e):e,Is=(t,e="")=>{var s;return st(t)?`Symbol(${(s=t.description)!=null?s:e})`:t};/** +* @vue/reactivity v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let De;class dl{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=De,!e&&De&&(this.index=(De.scopes||(De.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,s;if(this.scopes)for(e=0,s=this.scopes.length;e0)return;if(jt){let e=jt;for(jt=void 0;e;){const s=e.next;e.next=void 0,e.flags&=-9,e=s}}let t;for(;Ut;){let e=Ut;for(Ut=void 0;e;){const s=e.next;if(e.next=void 0,e.flags&=-9,e.flags&1)try{e.trigger()}catch(n){t||(t=n)}e=s}}if(t)throw t}function Ui(t){for(let e=t.deps;e;e=e.nextDep)e.version=-1,e.prevActiveLink=e.dep.activeLink,e.dep.activeLink=e}function ji(t){let e,s=t.depsTail,n=s;for(;n;){const i=n.prevDep;n.version===-1?(n===s&&(s=i),bn(n),gl(n)):e=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=i}t.deps=e,t.depsTail=s}function Ks(t){for(let e=t.deps;e;e=e.nextDep)if(e.dep.version!==e.version||e.dep.computed&&($i(e.dep.computed)||e.dep.version!==e.version))return!0;return!!t._dirty}function $i(t){if(t.flags&4&&!(t.flags&16)||(t.flags&=-17,t.globalVersion===qt))return;t.globalVersion=qt;const e=t.dep;if(t.flags|=2,e.version>0&&!t.isSSR&&t.deps&&!Ks(t)){t.flags&=-3;return}const s=ne,n=Ve;ne=t,Ve=!0;try{Ui(t);const i=t.fn(t._value);(e.version===0||ht(i,t._value))&&(t._value=i,e.version++)}catch(i){throw e.version++,i}finally{ne=s,Ve=n,ji(t),t.flags&=-3}}function bn(t,e=!1){const{dep:s,prevSub:n,nextSub:i}=t;if(n&&(n.nextSub=i,t.prevSub=void 0),i&&(i.prevSub=n,t.nextSub=void 0),s.subs===t&&(s.subs=n,!n&&s.computed)){s.computed.flags&=-5;for(let r=s.computed.deps;r;r=r.nextDep)bn(r,!0)}!e&&!--s.sc&&s.map&&s.map.delete(s.key)}function gl(t){const{prevDep:e,nextDep:s}=t;e&&(e.nextDep=s,t.prevDep=void 0),s&&(s.prevDep=e,t.nextDep=void 0)}let Ve=!0;const Wi=[];function pt(){Wi.push(Ve),Ve=!1}function gt(){const t=Wi.pop();Ve=t===void 0?!0:t}function Mn(t){const{cleanup:e}=t;if(t.cleanup=void 0,e){const s=ne;ne=void 0;try{e()}finally{ne=s}}}let qt=0;class ml{constructor(e,s){this.sub=e,this.dep=s,this.version=s.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class yn{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(e){if(!ne||!Ve||ne===this.computed)return;let s=this.activeLink;if(s===void 0||s.sub!==ne)s=this.activeLink=new ml(ne,this),ne.deps?(s.prevDep=ne.depsTail,ne.depsTail.nextDep=s,ne.depsTail=s):ne.deps=ne.depsTail=s,zi(s);else if(s.version===-1&&(s.version=this.version,s.nextDep)){const n=s.nextDep;n.prevDep=s.prevDep,s.prevDep&&(s.prevDep.nextDep=n),s.prevDep=ne.depsTail,s.nextDep=void 0,ne.depsTail.nextDep=s,ne.depsTail=s,ne.deps===s&&(ne.deps=n)}return s}trigger(e){this.version++,qt++,this.notify(e)}notify(e){mn();try{for(let s=this.subs;s;s=s.prevSub)s.sub.notify()&&s.sub.dep.notify()}finally{vn()}}}function zi(t){if(t.dep.sc++,t.sub.flags&4){const e=t.dep.computed;if(e&&!t.dep.subs){e.flags|=20;for(let n=e.deps;n;n=n.nextDep)zi(n)}const s=t.dep.subs;s!==t&&(t.prevSub=s,s&&(s.nextSub=t)),t.dep.subs=t}}const qs=new WeakMap,yt=Symbol(""),Ys=Symbol(""),Yt=Symbol("");function ve(t,e,s){if(Ve&&ne){let n=qs.get(t);n||qs.set(t,n=new Map);let i=n.get(s);i||(n.set(s,i=new yn),i.map=n,i.key=s),i.track()}}function et(t,e,s,n,i,r){const l=qs.get(t);if(!l){qt++;return}const o=a=>{a&&a.trigger()};if(mn(),e==="clear")l.forEach(o);else{const a=z(t),u=a&&dn(s);if(a&&s==="length"){const c=Number(n);l.forEach((h,p)=>{(p==="length"||p===Yt||!st(p)&&p>=c)&&o(h)})}else switch((s!==void 0||l.has(void 0))&&o(l.get(s)),u&&o(l.get(Yt)),e){case"add":a?u&&o(l.get("length")):(o(l.get(yt)),Ot(t)&&o(l.get(Ys)));break;case"delete":a||(o(l.get(yt)),Ot(t)&&o(l.get(Ys)));break;case"set":Ot(t)&&o(l.get(yt));break}}vn()}function Et(t){const e=J(t);return e===t?e:(ve(e,"iterate",Yt),Ie(t)?e:e.map(be))}function Ss(t){return ve(t=J(t),"iterate",Yt),t}const vl={__proto__:null,[Symbol.iterator](){return Ms(this,Symbol.iterator,be)},concat(...t){return Et(this).concat(...t.map(e=>z(e)?Et(e):e))},entries(){return Ms(this,"entries",t=>(t[1]=be(t[1]),t))},every(t,e){return Ye(this,"every",t,e,void 0,arguments)},filter(t,e){return Ye(this,"filter",t,e,s=>s.map(be),arguments)},find(t,e){return Ye(this,"find",t,e,be,arguments)},findIndex(t,e){return Ye(this,"findIndex",t,e,void 0,arguments)},findLast(t,e){return Ye(this,"findLast",t,e,be,arguments)},findLastIndex(t,e){return Ye(this,"findLastIndex",t,e,void 0,arguments)},forEach(t,e){return Ye(this,"forEach",t,e,void 0,arguments)},includes(...t){return Ns(this,"includes",t)},indexOf(...t){return Ns(this,"indexOf",t)},join(t){return Et(this).join(t)},lastIndexOf(...t){return Ns(this,"lastIndexOf",t)},map(t,e){return Ye(this,"map",t,e,void 0,arguments)},pop(){return Mt(this,"pop")},push(...t){return Mt(this,"push",t)},reduce(t,...e){return Nn(this,"reduce",t,e)},reduceRight(t,...e){return Nn(this,"reduceRight",t,e)},shift(){return Mt(this,"shift")},some(t,e){return Ye(this,"some",t,e,void 0,arguments)},splice(...t){return Mt(this,"splice",t)},toReversed(){return Et(this).toReversed()},toSorted(t){return Et(this).toSorted(t)},toSpliced(...t){return Et(this).toSpliced(...t)},unshift(...t){return Mt(this,"unshift",t)},values(){return Ms(this,"values",be)}};function Ms(t,e,s){const n=Ss(t),i=n[e]();return n!==t&&!Ie(t)&&(i._next=i.next,i.next=()=>{const r=i._next();return r.value&&(r.value=s(r.value)),r}),i}const bl=Array.prototype;function Ye(t,e,s,n,i,r){const l=Ss(t),o=l!==t&&!Ie(t),a=l[e];if(a!==bl[e]){const h=a.apply(t,r);return o?be(h):h}let u=s;l!==t&&(o?u=function(h,p){return s.call(this,be(h),p,t)}:s.length>2&&(u=function(h,p){return s.call(this,h,p,t)}));const c=a.call(l,u,n);return o&&i?i(c):c}function Nn(t,e,s,n){const i=Ss(t);let r=s;return i!==t&&(Ie(t)?s.length>3&&(r=function(l,o,a){return s.call(this,l,o,a,t)}):r=function(l,o,a){return s.call(this,l,be(o),a,t)}),i[e](r,...n)}function Ns(t,e,s){const n=J(t);ve(n,"iterate",Yt);const i=n[e](...s);return(i===-1||i===!1)&&xn(s[0])?(s[0]=J(s[0]),n[e](...s)):i}function Mt(t,e,s=[]){pt(),mn();const n=J(t)[e].apply(t,s);return vn(),gt(),n}const yl=un("__proto__,__v_isRef,__isVue"),Gi=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(st));function wl(t){st(t)||(t=String(t));const e=J(this);return ve(e,"has",t),e.hasOwnProperty(t)}class Ki{constructor(e=!1,s=!1){this._isReadonly=e,this._isShallow=s}get(e,s,n){const i=this._isReadonly,r=this._isShallow;if(s==="__v_isReactive")return!i;if(s==="__v_isReadonly")return i;if(s==="__v_isShallow")return r;if(s==="__v_raw")return n===(i?r?Pl:Ji:r?Qi:Yi).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;const l=z(e);if(!i){let a;if(l&&(a=vl[s]))return a;if(s==="hasOwnProperty")return wl}const o=Reflect.get(e,s,we(e)?e:n);return(st(s)?Gi.has(s):yl(s))||(i||ve(e,"get",s),r)?o:we(o)?l&&dn(s)?o:o.value:oe(o)?i?Xi(o):Cs(o):o}}class qi extends Ki{constructor(e=!1){super(!1,e)}set(e,s,n,i){let r=e[s];if(!this._isShallow){const a=At(r);if(!Ie(n)&&!At(n)&&(r=J(r),n=J(n)),!z(e)&&we(r)&&!we(n))return a?!1:(r.value=n,!0)}const l=z(e)&&dn(s)?Number(s)t,rs=t=>Reflect.getPrototypeOf(t);function Cl(t,e,s){return function(...n){const i=this.__v_raw,r=J(i),l=Ot(r),o=t==="entries"||t===Symbol.iterator&&l,a=t==="keys"&&l,u=i[t](...n),c=s?Qs:e?Js:be;return!e&&ve(r,"iterate",a?Ys:yt),{next(){const{value:h,done:p}=u.next();return p?{value:h,done:p}:{value:o?[c(h[0]),c(h[1])]:c(h),done:p}},[Symbol.iterator](){return this}}}}function ls(t){return function(...e){return t==="delete"?!1:t==="clear"?void 0:this}}function _l(t,e){const s={get(i){const r=this.__v_raw,l=J(r),o=J(i);t||(ht(i,o)&&ve(l,"get",i),ve(l,"get",o));const{has:a}=rs(l),u=e?Qs:t?Js:be;if(a.call(l,i))return u(r.get(i));if(a.call(l,o))return u(r.get(o));r!==l&&r.get(i)},get size(){const i=this.__v_raw;return!t&&ve(J(i),"iterate",yt),Reflect.get(i,"size",i)},has(i){const r=this.__v_raw,l=J(r),o=J(i);return t||(ht(i,o)&&ve(l,"has",i),ve(l,"has",o)),i===o?r.has(i):r.has(i)||r.has(o)},forEach(i,r){const l=this,o=l.__v_raw,a=J(o),u=e?Qs:t?Js:be;return!t&&ve(a,"iterate",yt),o.forEach((c,h)=>i.call(r,u(c),u(h),l))}};return he(s,t?{add:ls("add"),set:ls("set"),delete:ls("delete"),clear:ls("clear")}:{add(i){!e&&!Ie(i)&&!At(i)&&(i=J(i));const r=J(this);return rs(r).has.call(r,i)||(r.add(i),et(r,"add",i,i)),this},set(i,r){!e&&!Ie(r)&&!At(r)&&(r=J(r));const l=J(this),{has:o,get:a}=rs(l);let u=o.call(l,i);u||(i=J(i),u=o.call(l,i));const c=a.call(l,i);return l.set(i,r),u?ht(r,c)&&et(l,"set",i,r):et(l,"add",i,r),this},delete(i){const r=J(this),{has:l,get:o}=rs(r);let a=l.call(r,i);a||(i=J(i),a=l.call(r,i)),o&&o.call(r,i);const u=r.delete(i);return a&&et(r,"delete",i,void 0),u},clear(){const i=J(this),r=i.size!==0,l=i.clear();return r&&et(i,"clear",void 0,void 0),l}}),["keys","values","entries",Symbol.iterator].forEach(i=>{s[i]=Cl(i,t,e)}),s}function wn(t,e){const s=_l(t,e);return(n,i,r)=>i==="__v_isReactive"?!t:i==="__v_isReadonly"?t:i==="__v_raw"?n:Reflect.get(Z(s,i)&&i in n?s:n,i,r)}const Ol={get:wn(!1,!1)},Tl={get:wn(!1,!0)},Ll={get:wn(!0,!1)};const Yi=new WeakMap,Qi=new WeakMap,Ji=new WeakMap,Pl=new WeakMap;function Rl(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Dl(t){return t.__v_skip||!Object.isExtensible(t)?0:Rl(nl(t))}function Cs(t){return At(t)?t:An(t,!1,xl,Ol,Yi)}function Zi(t){return An(t,!1,Sl,Tl,Qi)}function Xi(t){return An(t,!0,El,Ll,Ji)}function An(t,e,s,n,i){if(!oe(t)||t.__v_raw&&!(e&&t.__v_isReactive))return t;const r=i.get(t);if(r)return r;const l=Dl(t);if(l===0)return t;const o=new Proxy(t,l===2?n:s);return i.set(t,o),o}function Tt(t){return At(t)?Tt(t.__v_raw):!!(t&&t.__v_isReactive)}function At(t){return!!(t&&t.__v_isReadonly)}function Ie(t){return!!(t&&t.__v_isShallow)}function xn(t){return t?!!t.__v_raw:!1}function J(t){const e=t&&t.__v_raw;return e?J(e):t}function Fl(t){return!Z(t,"__v_skip")&&Object.isExtensible(t)&&Fi(t,"__v_skip",!0),t}const be=t=>oe(t)?Cs(t):t,Js=t=>oe(t)?Xi(t):t;function we(t){return t?t.__v_isRef===!0:!1}function er(t){return tr(t,!1)}function kl(t){return tr(t,!0)}function tr(t,e){return we(t)?t:new Il(t,e)}class Il{constructor(e,s){this.dep=new yn,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=s?e:J(e),this._value=s?e:be(e),this.__v_isShallow=s}get value(){return this.dep.track(),this._value}set value(e){const s=this._rawValue,n=this.__v_isShallow||Ie(e)||At(e);e=n?e:J(e),ht(e,s)&&(this._rawValue=e,this._value=n?e:be(e),this.dep.trigger())}}function wt(t){return we(t)?t.value:t}const Ml={get:(t,e,s)=>e==="__v_raw"?t:wt(Reflect.get(t,e,s)),set:(t,e,s,n)=>{const i=t[e];return we(i)&&!we(s)?(i.value=s,!0):Reflect.set(t,e,s,n)}};function sr(t){return Tt(t)?t:new Proxy(t,Ml)}class Nl{constructor(e,s,n){this.fn=e,this.setter=s,this._value=void 0,this.dep=new yn(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=qt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!s,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&ne!==this)return Vi(this,!0),!0}get value(){const e=this.dep.track();return $i(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}function Bl(t,e,s=!1){let n,i;return G(t)?n=t:(n=t.get,i=t.set),new Nl(n,i,s)}const os={},ps=new WeakMap;let bt;function Hl(t,e=!1,s=bt){if(s){let n=ps.get(s);n||ps.set(s,n=[]),n.push(t)}}function Vl(t,e,s=ie){const{immediate:n,deep:i,once:r,scheduler:l,augmentJob:o,call:a}=s,u=y=>i?y:Ie(y)||i===!1||i===0?ft(y,1):ft(y);let c,h,p,g,T=!1,O=!1;if(we(t)?(h=()=>t.value,T=Ie(t)):Tt(t)?(h=()=>u(t),T=!0):z(t)?(O=!0,T=t.some(y=>Tt(y)||Ie(y)),h=()=>t.map(y=>{if(we(y))return y.value;if(Tt(y))return u(y);if(G(y))return a?a(y,2):y()})):G(t)?e?h=a?()=>a(t,2):t:h=()=>{if(p){pt();try{p()}finally{gt()}}const y=bt;bt=c;try{return a?a(t,3,[g]):t(g)}finally{bt=y}}:h=Ke,e&&i){const y=h,x=i===!0?1/0:i;h=()=>ft(y(),x)}const R=pl(),D=()=>{c.stop(),R&&hn(R.effects,c)};if(r&&e){const y=e;e=(...x)=>{y(...x),D()}}let m=O?new Array(t.length).fill(os):os;const v=y=>{if(!(!(c.flags&1)||!c.dirty&&!y))if(e){const x=c.run();if(i||T||(O?x.some((_,k)=>ht(_,m[k])):ht(x,m))){p&&p();const _=bt;bt=c;try{const k=[x,m===os?void 0:O&&m[0]===os?[]:m,g];a?a(e,3,k):e(...k),m=x}finally{bt=_}}}else c.run()};return o&&o(v),c=new Bi(h),c.scheduler=l?()=>l(v,!1):v,g=y=>Hl(y,!1,c),p=c.onStop=()=>{const y=ps.get(c);if(y){if(a)a(y,4);else for(const x of y)x();ps.delete(c)}},e?n?v(!0):m=c.run():l?l(v.bind(null,!0),!0):c.run(),D.pause=c.pause.bind(c),D.resume=c.resume.bind(c),D.stop=D,D}function ft(t,e=1/0,s){if(e<=0||!oe(t)||t.__v_skip||(s=s||new Set,s.has(t)))return t;if(s.add(t),e--,we(t))ft(t.value,e,s);else if(z(t))for(let n=0;n{ft(n,e,s)});else if(Di(t)){for(const n in t)ft(t[n],e,s);for(const n of Object.getOwnPropertySymbols(t))Object.prototype.propertyIsEnumerable.call(t,n)&&ft(t[n],e,s)}return t}/** -* @vue/runtime-core v3.5.12 +**/let De;class dl{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=De,!e&&De&&(this.index=(De.scopes||(De.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,s;if(this.scopes)for(e=0,s=this.scopes.length;e0)return;if(jt){let e=jt;for(jt=void 0;e;){const s=e.next;e.next=void 0,e.flags&=-9,e=s}}let t;for(;Ut;){let e=Ut;for(Ut=void 0;e;){const s=e.next;if(e.next=void 0,e.flags&=-9,e.flags&1)try{e.trigger()}catch(n){t||(t=n)}e=s}}if(t)throw t}function Ui(t){for(let e=t.deps;e;e=e.nextDep)e.version=-1,e.prevActiveLink=e.dep.activeLink,e.dep.activeLink=e}function ji(t){let e,s=t.depsTail,n=s;for(;n;){const i=n.prevDep;n.version===-1?(n===s&&(s=i),bn(n),gl(n)):e=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=i}t.deps=e,t.depsTail=s}function qs(t){for(let e=t.deps;e;e=e.nextDep)if(e.dep.version!==e.version||e.dep.computed&&($i(e.dep.computed)||e.dep.version!==e.version))return!0;return!!t._dirty}function $i(t){if(t.flags&4&&!(t.flags&16)||(t.flags&=-17,t.globalVersion===qt))return;t.globalVersion=qt;const e=t.dep;if(t.flags|=2,e.version>0&&!t.isSSR&&t.deps&&!qs(t)){t.flags&=-3;return}const s=ne,n=Ve;ne=t,Ve=!0;try{Ui(t);const i=t.fn(t._value);(e.version===0||ht(i,t._value))&&(t._value=i,e.version++)}catch(i){throw e.version++,i}finally{ne=s,Ve=n,ji(t),t.flags&=-3}}function bn(t,e=!1){const{dep:s,prevSub:n,nextSub:i}=t;if(n&&(n.nextSub=i,t.prevSub=void 0),i&&(i.prevSub=n,t.nextSub=void 0),s.subs===t&&(s.subs=n,!n&&s.computed)){s.computed.flags&=-5;for(let r=s.computed.deps;r;r=r.nextDep)bn(r,!0)}!e&&!--s.sc&&s.map&&s.map.delete(s.key)}function gl(t){const{prevDep:e,nextDep:s}=t;e&&(e.nextDep=s,t.prevDep=void 0),s&&(s.prevDep=e,t.nextDep=void 0)}let Ve=!0;const Wi=[];function pt(){Wi.push(Ve),Ve=!1}function gt(){const t=Wi.pop();Ve=t===void 0?!0:t}function Mn(t){const{cleanup:e}=t;if(t.cleanup=void 0,e){const s=ne;ne=void 0;try{e()}finally{ne=s}}}let qt=0;class ml{constructor(e,s){this.sub=e,this.dep=s,this.version=s.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class yn{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(e){if(!ne||!Ve||ne===this.computed)return;let s=this.activeLink;if(s===void 0||s.sub!==ne)s=this.activeLink=new ml(ne,this),ne.deps?(s.prevDep=ne.depsTail,ne.depsTail.nextDep=s,ne.depsTail=s):ne.deps=ne.depsTail=s,zi(s);else if(s.version===-1&&(s.version=this.version,s.nextDep)){const n=s.nextDep;n.prevDep=s.prevDep,s.prevDep&&(s.prevDep.nextDep=n),s.prevDep=ne.depsTail,s.nextDep=void 0,ne.depsTail.nextDep=s,ne.depsTail=s,ne.deps===s&&(ne.deps=n)}return s}trigger(e){this.version++,qt++,this.notify(e)}notify(e){mn();try{for(let s=this.subs;s;s=s.prevSub)s.sub.notify()&&s.sub.dep.notify()}finally{vn()}}}function zi(t){if(t.dep.sc++,t.sub.flags&4){const e=t.dep.computed;if(e&&!t.dep.subs){e.flags|=20;for(let n=e.deps;n;n=n.nextDep)zi(n)}const s=t.dep.subs;s!==t&&(t.prevSub=s,s&&(s.nextSub=t)),t.dep.subs=t}}const Ys=new WeakMap,yt=Symbol(""),Qs=Symbol(""),Yt=Symbol("");function ve(t,e,s){if(Ve&&ne){let n=Ys.get(t);n||Ys.set(t,n=new Map);let i=n.get(s);i||(n.set(s,i=new yn),i.map=n,i.key=s),i.track()}}function et(t,e,s,n,i,r){const l=Ys.get(t);if(!l){qt++;return}const o=a=>{a&&a.trigger()};if(mn(),e==="clear")l.forEach(o);else{const a=z(t),u=a&&dn(s);if(a&&s==="length"){const c=Number(n);l.forEach((h,p)=>{(p==="length"||p===Yt||!st(p)&&p>=c)&&o(h)})}else switch((s!==void 0||l.has(void 0))&&o(l.get(s)),u&&o(l.get(Yt)),e){case"add":a?u&&o(l.get("length")):(o(l.get(yt)),Ot(t)&&o(l.get(Qs)));break;case"delete":a||(o(l.get(yt)),Ot(t)&&o(l.get(Qs)));break;case"set":Ot(t)&&o(l.get(yt));break}}vn()}function Et(t){const e=J(t);return e===t?e:(ve(e,"iterate",Yt),Ie(t)?e:e.map(be))}function Cs(t){return ve(t=J(t),"iterate",Yt),t}const vl={__proto__:null,[Symbol.iterator](){return Ns(this,Symbol.iterator,be)},concat(...t){return Et(this).concat(...t.map(e=>z(e)?Et(e):e))},entries(){return Ns(this,"entries",t=>(t[1]=be(t[1]),t))},every(t,e){return Ye(this,"every",t,e,void 0,arguments)},filter(t,e){return Ye(this,"filter",t,e,s=>s.map(be),arguments)},find(t,e){return Ye(this,"find",t,e,be,arguments)},findIndex(t,e){return Ye(this,"findIndex",t,e,void 0,arguments)},findLast(t,e){return Ye(this,"findLast",t,e,be,arguments)},findLastIndex(t,e){return Ye(this,"findLastIndex",t,e,void 0,arguments)},forEach(t,e){return Ye(this,"forEach",t,e,void 0,arguments)},includes(...t){return Bs(this,"includes",t)},indexOf(...t){return Bs(this,"indexOf",t)},join(t){return Et(this).join(t)},lastIndexOf(...t){return Bs(this,"lastIndexOf",t)},map(t,e){return Ye(this,"map",t,e,void 0,arguments)},pop(){return Mt(this,"pop")},push(...t){return Mt(this,"push",t)},reduce(t,...e){return Nn(this,"reduce",t,e)},reduceRight(t,...e){return Nn(this,"reduceRight",t,e)},shift(){return Mt(this,"shift")},some(t,e){return Ye(this,"some",t,e,void 0,arguments)},splice(...t){return Mt(this,"splice",t)},toReversed(){return Et(this).toReversed()},toSorted(t){return Et(this).toSorted(t)},toSpliced(...t){return Et(this).toSpliced(...t)},unshift(...t){return Mt(this,"unshift",t)},values(){return Ns(this,"values",be)}};function Ns(t,e,s){const n=Cs(t),i=n[e]();return n!==t&&!Ie(t)&&(i._next=i.next,i.next=()=>{const r=i._next();return r.value&&(r.value=s(r.value)),r}),i}const bl=Array.prototype;function Ye(t,e,s,n,i,r){const l=Cs(t),o=l!==t&&!Ie(t),a=l[e];if(a!==bl[e]){const h=a.apply(t,r);return o?be(h):h}let u=s;l!==t&&(o?u=function(h,p){return s.call(this,be(h),p,t)}:s.length>2&&(u=function(h,p){return s.call(this,h,p,t)}));const c=a.call(l,u,n);return o&&i?i(c):c}function Nn(t,e,s,n){const i=Cs(t);let r=s;return i!==t&&(Ie(t)?s.length>3&&(r=function(l,o,a){return s.call(this,l,o,a,t)}):r=function(l,o,a){return s.call(this,l,be(o),a,t)}),i[e](r,...n)}function Bs(t,e,s){const n=J(t);ve(n,"iterate",Yt);const i=n[e](...s);return(i===-1||i===!1)&&xn(s[0])?(s[0]=J(s[0]),n[e](...s)):i}function Mt(t,e,s=[]){pt(),mn();const n=J(t)[e].apply(t,s);return vn(),gt(),n}const yl=un("__proto__,__v_isRef,__isVue"),Gi=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(st));function wl(t){st(t)||(t=String(t));const e=J(this);return ve(e,"has",t),e.hasOwnProperty(t)}class Ki{constructor(e=!1,s=!1){this._isReadonly=e,this._isShallow=s}get(e,s,n){if(s==="__v_skip")return e.__v_skip;const i=this._isReadonly,r=this._isShallow;if(s==="__v_isReactive")return!i;if(s==="__v_isReadonly")return i;if(s==="__v_isShallow")return r;if(s==="__v_raw")return n===(i?r?Pl:Ji:r?Qi:Yi).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;const l=z(e);if(!i){let a;if(l&&(a=vl[s]))return a;if(s==="hasOwnProperty")return wl}const o=Reflect.get(e,s,we(e)?e:n);return(st(s)?Gi.has(s):yl(s))||(i||ve(e,"get",s),r)?o:we(o)?l&&dn(s)?o:o.value:oe(o)?i?Xi(o):_s(o):o}}class qi extends Ki{constructor(e=!1){super(!1,e)}set(e,s,n,i){let r=e[s];if(!this._isShallow){const a=At(r);if(!Ie(n)&&!At(n)&&(r=J(r),n=J(n)),!z(e)&&we(r)&&!we(n))return a?!1:(r.value=n,!0)}const l=z(e)&&dn(s)?Number(s)t,rs=t=>Reflect.getPrototypeOf(t);function Cl(t,e,s){return function(...n){const i=this.__v_raw,r=J(i),l=Ot(r),o=t==="entries"||t===Symbol.iterator&&l,a=t==="keys"&&l,u=i[t](...n),c=s?Js:e?Zs:be;return!e&&ve(r,"iterate",a?Qs:yt),{next(){const{value:h,done:p}=u.next();return p?{value:h,done:p}:{value:o?[c(h[0]),c(h[1])]:c(h),done:p}},[Symbol.iterator](){return this}}}}function ls(t){return function(...e){return t==="delete"?!1:t==="clear"?void 0:this}}function _l(t,e){const s={get(i){const r=this.__v_raw,l=J(r),o=J(i);t||(ht(i,o)&&ve(l,"get",i),ve(l,"get",o));const{has:a}=rs(l),u=e?Js:t?Zs:be;if(a.call(l,i))return u(r.get(i));if(a.call(l,o))return u(r.get(o));r!==l&&r.get(i)},get size(){const i=this.__v_raw;return!t&&ve(J(i),"iterate",yt),Reflect.get(i,"size",i)},has(i){const r=this.__v_raw,l=J(r),o=J(i);return t||(ht(i,o)&&ve(l,"has",i),ve(l,"has",o)),i===o?r.has(i):r.has(i)||r.has(o)},forEach(i,r){const l=this,o=l.__v_raw,a=J(o),u=e?Js:t?Zs:be;return!t&&ve(a,"iterate",yt),o.forEach((c,h)=>i.call(r,u(c),u(h),l))}};return he(s,t?{add:ls("add"),set:ls("set"),delete:ls("delete"),clear:ls("clear")}:{add(i){!e&&!Ie(i)&&!At(i)&&(i=J(i));const r=J(this);return rs(r).has.call(r,i)||(r.add(i),et(r,"add",i,i)),this},set(i,r){!e&&!Ie(r)&&!At(r)&&(r=J(r));const l=J(this),{has:o,get:a}=rs(l);let u=o.call(l,i);u||(i=J(i),u=o.call(l,i));const c=a.call(l,i);return l.set(i,r),u?ht(r,c)&&et(l,"set",i,r):et(l,"add",i,r),this},delete(i){const r=J(this),{has:l,get:o}=rs(r);let a=l.call(r,i);a||(i=J(i),a=l.call(r,i)),o&&o.call(r,i);const u=r.delete(i);return a&&et(r,"delete",i,void 0),u},clear(){const i=J(this),r=i.size!==0,l=i.clear();return r&&et(i,"clear",void 0,void 0),l}}),["keys","values","entries",Symbol.iterator].forEach(i=>{s[i]=Cl(i,t,e)}),s}function wn(t,e){const s=_l(t,e);return(n,i,r)=>i==="__v_isReactive"?!t:i==="__v_isReadonly"?t:i==="__v_raw"?n:Reflect.get(Z(s,i)&&i in n?s:n,i,r)}const Ol={get:wn(!1,!1)},Tl={get:wn(!1,!0)},Ll={get:wn(!0,!1)};const Yi=new WeakMap,Qi=new WeakMap,Ji=new WeakMap,Pl=new WeakMap;function Rl(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Dl(t){return t.__v_skip||!Object.isExtensible(t)?0:Rl(nl(t))}function _s(t){return At(t)?t:An(t,!1,xl,Ol,Yi)}function Zi(t){return An(t,!1,Sl,Tl,Qi)}function Xi(t){return An(t,!0,El,Ll,Ji)}function An(t,e,s,n,i){if(!oe(t)||t.__v_raw&&!(e&&t.__v_isReactive))return t;const r=i.get(t);if(r)return r;const l=Dl(t);if(l===0)return t;const o=new Proxy(t,l===2?n:s);return i.set(t,o),o}function Tt(t){return At(t)?Tt(t.__v_raw):!!(t&&t.__v_isReactive)}function At(t){return!!(t&&t.__v_isReadonly)}function Ie(t){return!!(t&&t.__v_isShallow)}function xn(t){return t?!!t.__v_raw:!1}function J(t){const e=t&&t.__v_raw;return e?J(e):t}function kl(t){return!Z(t,"__v_skip")&&Object.isExtensible(t)&&ki(t,"__v_skip",!0),t}const be=t=>oe(t)?_s(t):t,Zs=t=>oe(t)?Xi(t):t;function we(t){return t?t.__v_isRef===!0:!1}function er(t){return tr(t,!1)}function Fl(t){return tr(t,!0)}function tr(t,e){return we(t)?t:new Il(t,e)}class Il{constructor(e,s){this.dep=new yn,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=s?e:J(e),this._value=s?e:be(e),this.__v_isShallow=s}get value(){return this.dep.track(),this._value}set value(e){const s=this._rawValue,n=this.__v_isShallow||Ie(e)||At(e);e=n?e:J(e),ht(e,s)&&(this._rawValue=e,this._value=n?e:be(e),this.dep.trigger())}}function wt(t){return we(t)?t.value:t}const Ml={get:(t,e,s)=>e==="__v_raw"?t:wt(Reflect.get(t,e,s)),set:(t,e,s,n)=>{const i=t[e];return we(i)&&!we(s)?(i.value=s,!0):Reflect.set(t,e,s,n)}};function sr(t){return Tt(t)?t:new Proxy(t,Ml)}class Nl{constructor(e,s,n){this.fn=e,this.setter=s,this._value=void 0,this.dep=new yn(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=qt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!s,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&ne!==this)return Vi(this,!0),!0}get value(){const e=this.dep.track();return $i(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}function Bl(t,e,s=!1){let n,i;return G(t)?n=t:(n=t.get,i=t.set),new Nl(n,i,s)}const os={},ps=new WeakMap;let bt;function Hl(t,e=!1,s=bt){if(s){let n=ps.get(s);n||ps.set(s,n=[]),n.push(t)}}function Vl(t,e,s=ie){const{immediate:n,deep:i,once:r,scheduler:l,augmentJob:o,call:a}=s,u=y=>i?y:Ie(y)||i===!1||i===0?ft(y,1):ft(y);let c,h,p,g,T=!1,O=!1;if(we(t)?(h=()=>t.value,T=Ie(t)):Tt(t)?(h=()=>u(t),T=!0):z(t)?(O=!0,T=t.some(y=>Tt(y)||Ie(y)),h=()=>t.map(y=>{if(we(y))return y.value;if(Tt(y))return u(y);if(G(y))return a?a(y,2):y()})):G(t)?e?h=a?()=>a(t,2):t:h=()=>{if(p){pt();try{p()}finally{gt()}}const y=bt;bt=c;try{return a?a(t,3,[g]):t(g)}finally{bt=y}}:h=Ke,e&&i){const y=h,x=i===!0?1/0:i;h=()=>ft(y(),x)}const P=pl(),D=()=>{c.stop(),P&&P.active&&hn(P.effects,c)};if(r&&e){const y=e;e=(...x)=>{y(...x),D()}}let m=O?new Array(t.length).fill(os):os;const v=y=>{if(!(!(c.flags&1)||!c.dirty&&!y))if(e){const x=c.run();if(i||T||(O?x.some((_,F)=>ht(_,m[F])):ht(x,m))){p&&p();const _=bt;bt=c;try{const F=[x,m===os?void 0:O&&m[0]===os?[]:m,g];a?a(e,3,F):e(...F),m=x}finally{bt=_}}}else c.run()};return o&&o(v),c=new Bi(h),c.scheduler=l?()=>l(v,!1):v,g=y=>Hl(y,!1,c),p=c.onStop=()=>{const y=ps.get(c);if(y){if(a)a(y,4);else for(const x of y)x();ps.delete(c)}},e?n?v(!0):m=c.run():l?l(v.bind(null,!0),!0):c.run(),D.pause=c.pause.bind(c),D.resume=c.resume.bind(c),D.stop=D,D}function ft(t,e=1/0,s){if(e<=0||!oe(t)||t.__v_skip||(s=s||new Set,s.has(t)))return t;if(s.add(t),e--,we(t))ft(t.value,e,s);else if(z(t))for(let n=0;n{ft(n,e,s)});else if(Di(t)){for(const n in t)ft(t[n],e,s);for(const n of Object.getOwnPropertySymbols(t))Object.prototype.propertyIsEnumerable.call(t,n)&&ft(t[n],e,s)}return t}/** +* @vue/runtime-core v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/function ns(t,e,s,n){try{return n?t(...n):t()}catch(i){_s(i,e,s)}}function qe(t,e,s,n){if(G(t)){const i=ns(t,e,s,n);return i&&Pi(i)&&i.catch(r=>{_s(r,e,s)}),i}if(z(t)){const i=[];for(let r=0;r>>1,i=Ce[n],r=Qt(i);r=Qt(s)?Ce.push(t):Ce.splice(jl(e),0,t),t.flags|=1,rr()}}function rr(){gs||(gs=nr.then(or))}function $l(t){z(t)?Lt.push(...t):at&&t.id===-1?at.splice(St+1,0,t):t.flags&1||(Lt.push(t),t.flags|=1),rr()}function Bn(t,e,s=ze+1){for(;sQt(s)-Qt(n));if(Lt.length=0,at){at.push(...e);return}for(at=e,St=0;Stt.id==null?t.flags&2?-1:1/0:t.id;function or(t){try{for(ze=0;ze{n._d&&qn(-1);const r=ms(e);let l;try{l=t(...i)}finally{ms(r),n._d&&qn(1)}return l};return n._n=!0,n._c=!0,n._d=!0,n}function mt(t,e,s,n){const i=t.dirs,r=e&&e.dirs;for(let l=0;lt.__isTeleport;function Sn(t,e){t.shapeFlag&6&&t.component?(t.transition=e,Sn(t.component.subTree,e)):t.shapeFlag&128?(t.ssContent.transition=e.clone(t.ssContent),t.ssFallback.transition=e.clone(t.ssFallback)):t.transition=e}/*! #__NO_SIDE_EFFECTS__ */function Os(t,e){return G(t)?he({name:t.name},e,{setup:t}):t}function cr(t){t.ids=[t.ids[0]+t.ids[2]+++"-",0,0]}function Zs(t,e,s,n,i=!1){if(z(t)){t.forEach((T,O)=>Zs(T,e&&(z(e)?e[O]:e),s,n,i));return}if(Pt(n)&&!i)return;const r=n.shapeFlag&4?Tn(n.component):n.el,l=i?null:r,{i:o,r:a}=t,u=e&&e.r,c=o.refs===ie?o.refs={}:o.refs,h=o.setupState,p=J(h),g=h===ie?()=>!1:T=>Z(p,T);if(u!=null&&u!==a&&(ue(u)?(c[u]=null,g(u)&&(h[u]=null)):we(u)&&(u.value=null)),G(a))ns(a,o,12,[l,c]);else{const T=ue(a),O=we(a);if(T||O){const R=()=>{if(t.f){const D=T?g(a)?h[a]:c[a]:a.value;i?z(D)&&hn(D,r):z(D)?D.includes(r)||D.push(r):T?(c[a]=[r],g(a)&&(h[a]=c[a])):(a.value=[r],t.k&&(c[t.k]=a.value))}else T?(c[a]=l,g(a)&&(h[a]=l)):O&&(a.value=l,t.k&&(c[t.k]=l))};l?(R.id=-1,Re(R,s)):R()}}}Es().requestIdleCallback;Es().cancelIdleCallback;const Pt=t=>!!t.type.__asyncLoader,ur=t=>t.type.__isKeepAlive;function Kl(t,e){fr(t,"a",e)}function ql(t,e){fr(t,"da",e)}function fr(t,e,s=ye){const n=t.__wdc||(t.__wdc=()=>{let i=s;for(;i;){if(i.isDeactivated)return;i=i.parent}return t()});if(Ts(e,n,s),s){let i=s.parent;for(;i&&i.parent;)ur(i.parent.vnode)&&Yl(n,e,s,i),i=i.parent}}function Yl(t,e,s,n){const i=Ts(e,t,n,!0);dr(()=>{hn(n[e],i)},s)}function Ts(t,e,s=ye,n=!1){if(s){const i=s[t]||(s[t]=[]),r=e.__weh||(e.__weh=(...l)=>{pt();const o=is(s),a=qe(e,s,t,l);return o(),gt(),a});return n?i.unshift(r):i.push(r),r}}const nt=t=>(e,s=ye)=>{(!es||t==="sp")&&Ts(t,(...n)=>e(...n),s)},Ql=nt("bm"),hr=nt("m"),Jl=nt("bu"),Zl=nt("u"),Xl=nt("bum"),dr=nt("um"),eo=nt("sp"),to=nt("rtg"),so=nt("rtc");function no(t,e=ye){Ts("ec",t,e)}const io="components";function Hn(t,e){return lo(io,t,!0,e)||t}const ro=Symbol.for("v-ndc");function lo(t,e,s=!0,n=!1){const i=_e||ye;if(i){const r=i.type;{const o=Yo(r,!1);if(o&&(o===e||o===Me(e)||o===xs(Me(e))))return r}const l=Vn(i[t]||r[t],e)||Vn(i.appContext[t],e);return!l&&n?r:l}}function Vn(t,e){return t&&(t[e]||t[Me(e)]||t[xs(Me(e))])}function Jc(t,e,s,n){let i;const r=s,l=z(t);if(l||ue(t)){const o=l&&Tt(t);let a=!1;o&&(a=!Ie(t),t=Ss(t)),i=new Array(t.length);for(let u=0,c=t.length;ue(o,a,void 0,r));else{const o=Object.keys(t);i=new Array(o.length);for(let a=0,u=o.length;aXt(e)?!(e.type===dt||e.type===Fe&&!pr(e.children)):!0)?t:null}const Xs=t=>t?Ir(t)?Tn(t):Xs(t.parent):null,$t=he(Object.create(null),{$:t=>t,$el:t=>t.vnode.el,$data:t=>t.data,$props:t=>t.props,$attrs:t=>t.attrs,$slots:t=>t.slots,$refs:t=>t.refs,$parent:t=>Xs(t.parent),$root:t=>Xs(t.root),$host:t=>t.ce,$emit:t=>t.emit,$options:t=>Cn(t),$forceUpdate:t=>t.f||(t.f=()=>{En(t.update)}),$nextTick:t=>t.n||(t.n=ir.bind(t.proxy)),$watch:t=>To.bind(t)}),Bs=(t,e)=>t!==ie&&!t.__isScriptSetup&&Z(t,e),oo={get({_:t},e){if(e==="__v_skip")return!0;const{ctx:s,setupState:n,data:i,props:r,accessCache:l,type:o,appContext:a}=t;let u;if(e[0]!=="$"){const g=l[e];if(g!==void 0)switch(g){case 1:return n[e];case 2:return i[e];case 4:return s[e];case 3:return r[e]}else{if(Bs(n,e))return l[e]=1,n[e];if(i!==ie&&Z(i,e))return l[e]=2,i[e];if((u=t.propsOptions[0])&&Z(u,e))return l[e]=3,r[e];if(s!==ie&&Z(s,e))return l[e]=4,s[e];en&&(l[e]=0)}}const c=$t[e];let h,p;if(c)return e==="$attrs"&&ve(t.attrs,"get",""),c(t);if((h=o.__cssModules)&&(h=h[e]))return h;if(s!==ie&&Z(s,e))return l[e]=4,s[e];if(p=a.config.globalProperties,Z(p,e))return p[e]},set({_:t},e,s){const{data:n,setupState:i,ctx:r}=t;return Bs(i,e)?(i[e]=s,!0):n!==ie&&Z(n,e)?(n[e]=s,!0):Z(t.props,e)||e[0]==="$"&&e.slice(1)in t?!1:(r[e]=s,!0)},has({_:{data:t,setupState:e,accessCache:s,ctx:n,appContext:i,propsOptions:r}},l){let o;return!!s[l]||t!==ie&&Z(t,l)||Bs(e,l)||(o=r[0])&&Z(o,l)||Z(n,l)||Z($t,l)||Z(i.config.globalProperties,l)},defineProperty(t,e,s){return s.get!=null?t._.accessCache[e]=0:Z(s,"value")&&this.set(t,e,s.value,null),Reflect.defineProperty(t,e,s)}};function Un(t){return z(t)?t.reduce((e,s)=>(e[s]=null,e),{}):t}let en=!0;function ao(t){const e=Cn(t),s=t.proxy,n=t.ctx;en=!1,e.beforeCreate&&jn(e.beforeCreate,t,"bc");const{data:i,computed:r,methods:l,watch:o,provide:a,inject:u,created:c,beforeMount:h,mounted:p,beforeUpdate:g,updated:T,activated:O,deactivated:R,beforeDestroy:D,beforeUnmount:m,destroyed:v,unmounted:y,render:x,renderTracked:_,renderTriggered:k,errorCaptured:W,serverPrefetch:H,expose:Y,inheritAttrs:re,components:ge,directives:Oe,filters:it}=e;if(u&&co(u,n,null),l)for(const Q in l){const j=l[Q];G(j)&&(n[Q]=j.bind(s))}if(i){const Q=i.call(s,s);oe(Q)&&(t.data=Cs(Q))}if(en=!0,r)for(const Q in r){const j=r[Q],ce=G(j)?j.bind(s,s):G(j.get)?j.get.bind(s,s):Ke,Ae=!G(j)&&G(j.set)?j.set.bind(s):Ke,xe=He({get:ce,set:Ae});Object.defineProperty(n,Q,{enumerable:!0,configurable:!0,get:()=>xe.value,set:te=>xe.value=te})}if(o)for(const Q in o)gr(o[Q],n,s,Q);if(a){const Q=G(a)?a.call(s):a;Reflect.ownKeys(Q).forEach(j=>{as(j,Q[j])})}c&&jn(c,t,"c");function ae(Q,j){z(j)?j.forEach(ce=>Q(ce.bind(s))):j&&Q(j.bind(s))}if(ae(Ql,h),ae(hr,p),ae(Jl,g),ae(Zl,T),ae(Kl,O),ae(ql,R),ae(no,W),ae(so,_),ae(to,k),ae(Xl,m),ae(dr,y),ae(eo,H),z(Y))if(Y.length){const Q=t.exposed||(t.exposed={});Y.forEach(j=>{Object.defineProperty(Q,j,{get:()=>s[j],set:ce=>s[j]=ce})})}else t.exposed||(t.exposed={});x&&t.render===Ke&&(t.render=x),re!=null&&(t.inheritAttrs=re),ge&&(t.components=ge),Oe&&(t.directives=Oe),H&&cr(t)}function co(t,e,s=Ke){z(t)&&(t=tn(t));for(const n in t){const i=t[n];let r;oe(i)?"default"in i?r=tt(i.from||n,i.default,!0):r=tt(i.from||n):r=tt(i),we(r)?Object.defineProperty(e,n,{enumerable:!0,configurable:!0,get:()=>r.value,set:l=>r.value=l}):e[n]=r}}function jn(t,e,s){qe(z(t)?t.map(n=>n.bind(e.proxy)):t.bind(e.proxy),e,s)}function gr(t,e,s,n){let i=n.includes(".")?Lr(s,n):()=>s[n];if(ue(t)){const r=e[t];G(r)&&cs(i,r)}else if(G(t))cs(i,t.bind(s));else if(oe(t))if(z(t))t.forEach(r=>gr(r,e,s,n));else{const r=G(t.handler)?t.handler.bind(s):e[t.handler];G(r)&&cs(i,r,t)}}function Cn(t){const e=t.type,{mixins:s,extends:n}=e,{mixins:i,optionsCache:r,config:{optionMergeStrategies:l}}=t.appContext,o=r.get(e);let a;return o?a=o:!i.length&&!s&&!n?a=e:(a={},i.length&&i.forEach(u=>vs(a,u,l,!0)),vs(a,e,l)),oe(e)&&r.set(e,a),a}function vs(t,e,s,n=!1){const{mixins:i,extends:r}=e;r&&vs(t,r,s,!0),i&&i.forEach(l=>vs(t,l,s,!0));for(const l in e)if(!(n&&l==="expose")){const o=uo[l]||s&&s[l];t[l]=o?o(t[l],e[l]):e[l]}return t}const uo={data:$n,props:Wn,emits:Wn,methods:Ht,computed:Ht,beforeCreate:Se,created:Se,beforeMount:Se,mounted:Se,beforeUpdate:Se,updated:Se,beforeDestroy:Se,beforeUnmount:Se,destroyed:Se,unmounted:Se,activated:Se,deactivated:Se,errorCaptured:Se,serverPrefetch:Se,components:Ht,directives:Ht,watch:ho,provide:$n,inject:fo};function $n(t,e){return e?t?function(){return he(G(t)?t.call(this,this):t,G(e)?e.call(this,this):e)}:e:t}function fo(t,e){return Ht(tn(t),tn(e))}function tn(t){if(z(t)){const e={};for(let s=0;s1)return s&&G(e)?e.call(n&&n.proxy):e}}const vr={},br=()=>Object.create(vr),yr=t=>Object.getPrototypeOf(t)===vr;function mo(t,e,s,n=!1){const i={},r=br();t.propsDefaults=Object.create(null),wr(t,e,i,r);for(const l in t.propsOptions[0])l in i||(i[l]=void 0);s?t.props=n?i:Zi(i):t.type.props?t.props=i:t.props=r,t.attrs=r}function vo(t,e,s,n){const{props:i,attrs:r,vnode:{patchFlag:l}}=t,o=J(i),[a]=t.propsOptions;let u=!1;if((n||l>0)&&!(l&16)){if(l&8){const c=t.vnode.dynamicProps;for(let h=0;h{a=!0;const[p,g]=Ar(h,e,!0);he(l,p),g&&o.push(...g)};!s&&e.mixins.length&&e.mixins.forEach(c),t.extends&&c(t.extends),t.mixins&&t.mixins.forEach(c)}if(!r&&!a)return oe(t)&&n.set(t,_t),_t;if(z(r))for(let c=0;ct[0]==="_"||t==="$stable",_n=t=>z(t)?t.map(Ge):[Ge(t)],yo=(t,e,s)=>{if(e._n)return e;const n=Wl((...i)=>_n(e(...i)),s);return n._c=!1,n},Er=(t,e,s)=>{const n=t._ctx;for(const i in t){if(xr(i))continue;const r=t[i];if(G(r))e[i]=yo(i,r,n);else if(r!=null){const l=_n(r);e[i]=()=>l}}},Sr=(t,e)=>{const s=_n(e);t.slots.default=()=>s},Cr=(t,e,s)=>{for(const n in e)(s||n!=="_")&&(t[n]=e[n])},wo=(t,e,s)=>{const n=t.slots=br();if(t.vnode.shapeFlag&32){const i=e._;i?(Cr(n,e,s),s&&Fi(n,"_",i,!0)):Er(e,n)}else e&&Sr(t,e)},Ao=(t,e,s)=>{const{vnode:n,slots:i}=t;let r=!0,l=ie;if(n.shapeFlag&32){const o=e._;o?s&&o===1?r=!1:Cr(i,e,s):(r=!e.$stable,Er(e,i)),l=e}else e&&(Sr(t,e),l={default:1});if(r)for(const o in i)!xr(o)&&l[o]==null&&delete i[o]},Re=Io;function xo(t){return Eo(t)}function Eo(t,e){const s=Es();s.__VUE__=!0;const{insert:n,remove:i,patchProp:r,createElement:l,createText:o,createComment:a,setText:u,setElementText:c,parentNode:h,nextSibling:p,setScopeId:g=Ke,insertStaticContent:T}=t,O=(f,d,b,E=null,A=null,S=null,I=void 0,P=null,L=!!d.dynamicChildren)=>{if(f===d)return;f&&!Nt(f,d)&&(E=w(f),te(f,A,S,!0),f=null),d.patchFlag===-2&&(L=!1,d.dynamicChildren=null);const{type:C,ref:U,shapeFlag:N}=d;switch(C){case Ps:R(f,d,b,E);break;case dt:D(f,d,b,E);break;case us:f==null&&m(d,b,E,I);break;case Fe:ge(f,d,b,E,A,S,I,P,L);break;default:N&1?x(f,d,b,E,A,S,I,P,L):N&6?Oe(f,d,b,E,A,S,I,P,L):(N&64||N&128)&&C.process(f,d,b,E,A,S,I,P,L,B)}U!=null&&A&&Zs(U,f&&f.ref,S,d||f,!d)},R=(f,d,b,E)=>{if(f==null)n(d.el=o(d.children),b,E);else{const A=d.el=f.el;d.children!==f.children&&u(A,d.children)}},D=(f,d,b,E)=>{f==null?n(d.el=a(d.children||""),b,E):d.el=f.el},m=(f,d,b,E)=>{[f.el,f.anchor]=T(f.children,d,b,E,f.el,f.anchor)},v=({el:f,anchor:d},b,E)=>{let A;for(;f&&f!==d;)A=p(f),n(f,b,E),f=A;n(d,b,E)},y=({el:f,anchor:d})=>{let b;for(;f&&f!==d;)b=p(f),i(f),f=b;i(d)},x=(f,d,b,E,A,S,I,P,L)=>{d.type==="svg"?I="svg":d.type==="math"&&(I="mathml"),f==null?_(d,b,E,A,S,I,P,L):H(f,d,A,S,I,P,L)},_=(f,d,b,E,A,S,I,P)=>{let L,C;const{props:U,shapeFlag:N,transition:V,dirs:$}=f;if(L=f.el=l(f.type,S,U&&U.is,U),N&8?c(L,f.children):N&16&&W(f.children,L,null,E,A,Hs(f,S),I,P),$&&mt(f,null,E,"created"),k(L,f,f.scopeId,I,E),U){for(const se in U)se!=="value"&&!Vt(se)&&r(L,se,null,U[se],S,E);"value"in U&&r(L,"value",null,U.value,S),(C=U.onVnodeBeforeMount)&&We(C,E,f)}$&&mt(f,null,E,"beforeMount");const q=So(A,V);q&&V.beforeEnter(L),n(L,d,b),((C=U&&U.onVnodeMounted)||q||$)&&Re(()=>{C&&We(C,E,f),q&&V.enter(L),$&&mt(f,null,E,"mounted")},A)},k=(f,d,b,E,A)=>{if(b&&g(f,b),E)for(let S=0;S{for(let C=L;C{const P=d.el=f.el;let{patchFlag:L,dynamicChildren:C,dirs:U}=d;L|=f.patchFlag&16;const N=f.props||ie,V=d.props||ie;let $;if(b&&vt(b,!1),($=V.onVnodeBeforeUpdate)&&We($,b,d,f),U&&mt(d,f,b,"beforeUpdate"),b&&vt(b,!0),(N.innerHTML&&V.innerHTML==null||N.textContent&&V.textContent==null)&&c(P,""),C?Y(f.dynamicChildren,C,P,b,E,Hs(d,A),S):I||j(f,d,P,null,b,E,Hs(d,A),S,!1),L>0){if(L&16)re(P,N,V,b,A);else if(L&2&&N.class!==V.class&&r(P,"class",null,V.class,A),L&4&&r(P,"style",N.style,V.style,A),L&8){const q=d.dynamicProps;for(let se=0;se{$&&We($,b,d,f),U&&mt(d,f,b,"updated")},E)},Y=(f,d,b,E,A,S,I)=>{for(let P=0;P{if(d!==b){if(d!==ie)for(const S in d)!Vt(S)&&!(S in b)&&r(f,S,d[S],null,A,E);for(const S in b){if(Vt(S))continue;const I=b[S],P=d[S];I!==P&&S!=="value"&&r(f,S,P,I,A,E)}"value"in b&&r(f,"value",d.value,b.value,A)}},ge=(f,d,b,E,A,S,I,P,L)=>{const C=d.el=f?f.el:o(""),U=d.anchor=f?f.anchor:o("");let{patchFlag:N,dynamicChildren:V,slotScopeIds:$}=d;$&&(P=P?P.concat($):$),f==null?(n(C,b,E),n(U,b,E),W(d.children||[],b,U,A,S,I,P,L)):N>0&&N&64&&V&&f.dynamicChildren?(Y(f.dynamicChildren,V,b,A,S,I,P),(d.key!=null||A&&d===A.subTree)&&_r(f,d,!0)):j(f,d,b,U,A,S,I,P,L)},Oe=(f,d,b,E,A,S,I,P,L)=>{d.slotScopeIds=P,f==null?d.shapeFlag&512?A.ctx.activate(d,b,E,I,L):it(d,b,E,A,S,I,L):rt(f,d,L)},it=(f,d,b,E,A,S,I)=>{const P=f.component=Wo(f,E,A);if(ur(f)&&(P.ctx.renderer=B),zo(P,!1,I),P.asyncDep){if(A&&A.registerDep(P,ae,I),!f.el){const L=P.subTree=pe(dt);D(null,L,d,b)}}else ae(P,f,d,b,A,S,I)},rt=(f,d,b)=>{const E=d.component=f.component;if(Fo(f,d,b))if(E.asyncDep&&!E.asyncResolved){Q(E,d,b);return}else E.next=d,E.update();else d.el=f.el,E.vnode=d},ae=(f,d,b,E,A,S,I)=>{const P=()=>{if(f.isMounted){let{next:N,bu:V,u:$,parent:q,vnode:se}=f;{const Le=Or(f);if(Le){N&&(N.el=se.el,Q(f,N,I)),Le.asyncDep.then(()=>{f.isUnmounted||P()});return}}let X=N,Te;vt(f,!1),N?(N.el=se.el,Q(f,N,I)):N=se,V&&Fs(V),(Te=N.props&&N.props.onVnodeBeforeUpdate)&&We(Te,q,N,se),vt(f,!0);const me=Vs(f),Ne=f.subTree;f.subTree=me,O(Ne,me,h(Ne.el),w(Ne),f,A,S),N.el=me.el,X===null&&ko(f,me.el),$&&Re($,A),(Te=N.props&&N.props.onVnodeUpdated)&&Re(()=>We(Te,q,N,se),A)}else{let N;const{el:V,props:$}=d,{bm:q,m:se,parent:X,root:Te,type:me}=f,Ne=Pt(d);if(vt(f,!1),q&&Fs(q),!Ne&&(N=$&&$.onVnodeBeforeMount)&&We(N,X,d),vt(f,!0),V&&le){const Le=()=>{f.subTree=Vs(f),le(V,f.subTree,f,A,null)};Ne&&me.__asyncHydrate?me.__asyncHydrate(V,f,Le):Le()}else{Te.ce&&Te.ce._injectChildStyle(me);const Le=f.subTree=Vs(f);O(null,Le,b,E,f,A,S),d.el=Le.el}if(se&&Re(se,A),!Ne&&(N=$&&$.onVnodeMounted)){const Le=d;Re(()=>We(N,X,Le),A)}(d.shapeFlag&256||X&&Pt(X.vnode)&&X.vnode.shapeFlag&256)&&f.a&&Re(f.a,A),f.isMounted=!0,d=b=E=null}};f.scope.on();const L=f.effect=new Bi(P);f.scope.off();const C=f.update=L.run.bind(L),U=f.job=L.runIfDirty.bind(L);U.i=f,U.id=f.uid,L.scheduler=()=>En(U),vt(f,!0),C()},Q=(f,d,b)=>{d.component=f;const E=f.vnode.props;f.vnode=d,f.next=null,vo(f,d.props,E,b),Ao(f,d.children,b),pt(),Bn(f),gt()},j=(f,d,b,E,A,S,I,P,L=!1)=>{const C=f&&f.children,U=f?f.shapeFlag:0,N=d.children,{patchFlag:V,shapeFlag:$}=d;if(V>0){if(V&128){Ae(C,N,b,E,A,S,I,P,L);return}else if(V&256){ce(C,N,b,E,A,S,I,P,L);return}}$&8?(U&16&&de(C,A,S),N!==C&&c(b,N)):U&16?$&16?Ae(C,N,b,E,A,S,I,P,L):de(C,A,S,!0):(U&8&&c(b,""),$&16&&W(N,b,E,A,S,I,P,L))},ce=(f,d,b,E,A,S,I,P,L)=>{f=f||_t,d=d||_t;const C=f.length,U=d.length,N=Math.min(C,U);let V;for(V=0;VU?de(f,A,S,!0,!1,N):W(d,b,E,A,S,I,P,L,N)},Ae=(f,d,b,E,A,S,I,P,L)=>{let C=0;const U=d.length;let N=f.length-1,V=U-1;for(;C<=N&&C<=V;){const $=f[C],q=d[C]=L?ct(d[C]):Ge(d[C]);if(Nt($,q))O($,q,b,null,A,S,I,P,L);else break;C++}for(;C<=N&&C<=V;){const $=f[N],q=d[V]=L?ct(d[V]):Ge(d[V]);if(Nt($,q))O($,q,b,null,A,S,I,P,L);else break;N--,V--}if(C>N){if(C<=V){const $=V+1,q=$V)for(;C<=N;)te(f[C],A,S,!0),C++;else{const $=C,q=C,se=new Map;for(C=q;C<=V;C++){const Pe=d[C]=L?ct(d[C]):Ge(d[C]);Pe.key!=null&&se.set(Pe.key,C)}let X,Te=0;const me=V-q+1;let Ne=!1,Le=0;const It=new Array(me);for(C=0;C=me){te(Pe,A,S,!0);continue}let $e;if(Pe.key!=null)$e=se.get(Pe.key);else for(X=q;X<=V;X++)if(It[X-q]===0&&Nt(Pe,d[X])){$e=X;break}$e===void 0?te(Pe,A,S,!0):(It[$e-q]=C+1,$e>=Le?Le=$e:Ne=!0,O(Pe,d[$e],b,null,A,S,I,P,L),Te++)}const Fn=Ne?Co(It):_t;for(X=Fn.length-1,C=me-1;C>=0;C--){const Pe=q+C,$e=d[Pe],kn=Pe+1{const{el:S,type:I,transition:P,children:L,shapeFlag:C}=f;if(C&6){xe(f.component.subTree,d,b,E);return}if(C&128){f.suspense.move(d,b,E);return}if(C&64){I.move(f,d,b,B);return}if(I===Fe){n(S,d,b);for(let N=0;NP.enter(S),A);else{const{leave:N,delayLeave:V,afterLeave:$}=P,q=()=>n(S,d,b),se=()=>{N(S,()=>{q(),$&&$()})};V?V(S,q,se):se()}else n(S,d,b)},te=(f,d,b,E=!1,A=!1)=>{const{type:S,props:I,ref:P,children:L,dynamicChildren:C,shapeFlag:U,patchFlag:N,dirs:V,cacheIndex:$}=f;if(N===-2&&(A=!1),P!=null&&Zs(P,null,b,f,!0),$!=null&&(d.renderCache[$]=void 0),U&256){d.ctx.deactivate(f);return}const q=U&1&&V,se=!Pt(f);let X;if(se&&(X=I&&I.onVnodeBeforeUnmount)&&We(X,d,f),U&6)je(f.component,b,E);else{if(U&128){f.suspense.unmount(b,E);return}q&&mt(f,null,d,"beforeUnmount"),U&64?f.type.remove(f,d,b,B,E):C&&!C.hasOnce&&(S!==Fe||N>0&&N&64)?de(C,d,b,!1,!0):(S===Fe&&N&384||!A&&U&16)&&de(L,d,b),E&<(f)}(se&&(X=I&&I.onVnodeUnmounted)||q)&&Re(()=>{X&&We(X,d,f),q&&mt(f,null,d,"unmounted")},b)},lt=f=>{const{type:d,el:b,anchor:E,transition:A}=f;if(d===Fe){Ee(b,E);return}if(d===us){y(f);return}const S=()=>{i(b),A&&!A.persisted&&A.afterLeave&&A.afterLeave()};if(f.shapeFlag&1&&A&&!A.persisted){const{leave:I,delayLeave:P}=A,L=()=>I(b,S);P?P(f.el,S,L):L()}else S()},Ee=(f,d)=>{let b;for(;f!==d;)b=p(f),i(f),f=b;i(d)},je=(f,d,b)=>{const{bum:E,scope:A,job:S,subTree:I,um:P,m:L,a:C}=f;Gn(L),Gn(C),E&&Fs(E),A.stop(),S&&(S.flags|=8,te(I,f,d,b)),P&&Re(P,d),Re(()=>{f.isUnmounted=!0},d),d&&d.pendingBranch&&!d.isUnmounted&&f.asyncDep&&!f.asyncResolved&&f.suspenseId===d.pendingId&&(d.deps--,d.deps===0&&d.resolve())},de=(f,d,b,E=!1,A=!1,S=0)=>{for(let I=S;I{if(f.shapeFlag&6)return w(f.component.subTree);if(f.shapeFlag&128)return f.suspense.next();const d=p(f.anchor||f.el),b=d&&d[zl];return b?p(b):d};let M=!1;const F=(f,d,b)=>{f==null?d._vnode&&te(d._vnode,null,null,!0):O(d._vnode||null,f,d,null,null,null,b),d._vnode=f,M||(M=!0,Bn(),lr(),M=!1)},B={p:O,um:te,m:xe,r:lt,mt:it,mc:W,pc:j,pbc:Y,n:w,o:t};let K,le;return{render:F,hydrate:K,createApp:go(F,K)}}function Hs({type:t,props:e},s){return s==="svg"&&t==="foreignObject"||s==="mathml"&&t==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:s}function vt({effect:t,job:e},s){s?(t.flags|=32,e.flags|=4):(t.flags&=-33,e.flags&=-5)}function So(t,e){return(!t||t&&!t.pendingBranch)&&e&&!e.persisted}function _r(t,e,s=!1){const n=t.children,i=e.children;if(z(n)&&z(i))for(let r=0;r>1,t[s[o]]0&&(e[n]=s[r-1]),s[r]=n)}}for(r=s.length,l=s[r-1];r-- >0;)s[r]=l,l=e[l];return s}function Or(t){const e=t.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:Or(e)}function Gn(t){if(t)for(let e=0;ett(_o);function cs(t,e,s){return Tr(t,e,s)}function Tr(t,e,s=ie){const{immediate:n,deep:i,flush:r,once:l}=s,o=he({},s),a=e&&n||!e&&r!=="post";let u;if(es){if(r==="sync"){const g=Oo();u=g.__watcherHandles||(g.__watcherHandles=[])}else if(!a){const g=()=>{};return g.stop=Ke,g.resume=Ke,g.pause=Ke,g}}const c=ye;o.call=(g,T,O)=>qe(g,c,T,O);let h=!1;r==="post"?o.scheduler=g=>{Re(g,c&&c.suspense)}:r!=="sync"&&(h=!0,o.scheduler=(g,T)=>{T?g():En(g)}),o.augmentJob=g=>{e&&(g.flags|=4),h&&(g.flags|=2,c&&(g.id=c.uid,g.i=c))};const p=Vl(t,e,o);return es&&(u?u.push(p):a&&p()),p}function To(t,e,s){const n=this.proxy,i=ue(t)?t.includes(".")?Lr(n,t):()=>n[t]:t.bind(n,n);let r;G(e)?r=e:(r=e.handler,s=e);const l=is(this),o=Tr(i,r.bind(n),s);return l(),o}function Lr(t,e){const s=e.split(".");return()=>{let n=t;for(let i=0;ie==="modelValue"||e==="model-value"?t.modelModifiers:t[`${e}Modifiers`]||t[`${Me(e)}Modifiers`]||t[`${xt(e)}Modifiers`];function Po(t,e,...s){if(t.isUnmounted)return;const n=t.vnode.props||ie;let i=s;const r=e.startsWith("update:"),l=r&&Lo(n,e.slice(7));l&&(l.trim&&(i=s.map(c=>ue(c)?c.trim():c)),l.number&&(i=s.map(ll)));let o,a=n[o=Ds(e)]||n[o=Ds(Me(e))];!a&&r&&(a=n[o=Ds(xt(e))]),a&&qe(a,t,6,i);const u=n[o+"Once"];if(u){if(!t.emitted)t.emitted={};else if(t.emitted[o])return;t.emitted[o]=!0,qe(u,t,6,i)}}function Pr(t,e,s=!1){const n=e.emitsCache,i=n.get(t);if(i!==void 0)return i;const r=t.emits;let l={},o=!1;if(!G(t)){const a=u=>{const c=Pr(u,e,!0);c&&(o=!0,he(l,c))};!s&&e.mixins.length&&e.mixins.forEach(a),t.extends&&a(t.extends),t.mixins&&t.mixins.forEach(a)}return!r&&!o?(oe(t)&&n.set(t,null),null):(z(r)?r.forEach(a=>l[a]=null):he(l,r),oe(t)&&n.set(t,l),l)}function Ls(t,e){return!t||!ys(e)?!1:(e=e.slice(2).replace(/Once$/,""),Z(t,e[0].toLowerCase()+e.slice(1))||Z(t,xt(e))||Z(t,e))}function Vs(t){const{type:e,vnode:s,proxy:n,withProxy:i,propsOptions:[r],slots:l,attrs:o,emit:a,render:u,renderCache:c,props:h,data:p,setupState:g,ctx:T,inheritAttrs:O}=t,R=ms(t);let D,m;try{if(s.shapeFlag&4){const y=i||n,x=y;D=Ge(u.call(x,y,c,h,g,p,T)),m=o}else{const y=e;D=Ge(y.length>1?y(h,{attrs:o,slots:l,emit:a}):y(h,null)),m=e.props?o:Ro(o)}}catch(y){Wt.length=0,_s(y,t,1),D=pe(dt)}let v=D;if(m&&O!==!1){const y=Object.keys(m),{shapeFlag:x}=v;y.length&&x&7&&(r&&y.some(fn)&&(m=Do(m,r)),v=Dt(v,m,!1,!0))}return s.dirs&&(v=Dt(v,null,!1,!0),v.dirs=v.dirs?v.dirs.concat(s.dirs):s.dirs),s.transition&&Sn(v,s.transition),D=v,ms(R),D}const Ro=t=>{let e;for(const s in t)(s==="class"||s==="style"||ys(s))&&((e||(e={}))[s]=t[s]);return e},Do=(t,e)=>{const s={};for(const n in t)(!fn(n)||!(n.slice(9)in e))&&(s[n]=t[n]);return s};function Fo(t,e,s){const{props:n,children:i,component:r}=t,{props:l,children:o,patchFlag:a}=e,u=r.emitsOptions;if(e.dirs||e.transition)return!0;if(s&&a>=0){if(a&1024)return!0;if(a&16)return n?Kn(n,l,u):!!l;if(a&8){const c=e.dynamicProps;for(let h=0;ht.__isSuspense;function Io(t,e){e&&e.pendingBranch?z(t)?e.effects.push(...t):e.effects.push(t):$l(t)}const Fe=Symbol.for("v-fgt"),Ps=Symbol.for("v-txt"),dt=Symbol.for("v-cmt"),us=Symbol.for("v-stc"),Wt=[];let ke=null;function Jt(t=!1){Wt.push(ke=t?null:[])}function Mo(){Wt.pop(),ke=Wt[Wt.length-1]||null}let Zt=1;function qn(t){Zt+=t,t<0&&ke&&(ke.hasOnce=!0)}function Dr(t){return t.dynamicChildren=Zt>0?ke||_t:null,Mo(),Zt>0&&ke&&ke.push(t),t}function Fr(t,e,s,n,i,r){return Dr(Ze(t,e,s,n,i,r,!0))}function nn(t,e,s,n,i){return Dr(pe(t,e,s,n,i,!0))}function Xt(t){return t?t.__v_isVNode===!0:!1}function Nt(t,e){return t.type===e.type&&t.key===e.key}const kr=({key:t})=>t??null,fs=({ref:t,ref_key:e,ref_for:s})=>(typeof t=="number"&&(t=""+t),t!=null?ue(t)||we(t)||G(t)?{i:_e,r:t,k:e,f:!!s}:t:null);function Ze(t,e=null,s=null,n=0,i=null,r=t===Fe?0:1,l=!1,o=!1){const a={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&kr(e),ref:e&&fs(e),scopeId:ar,slotScopeIds:null,children:s,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:r,patchFlag:n,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:_e};return o?(On(a,s),r&128&&t.normalize(a)):s&&(a.shapeFlag|=ue(s)?8:16),Zt>0&&!l&&ke&&(a.patchFlag>0||r&6)&&a.patchFlag!==32&&ke.push(a),a}const pe=No;function No(t,e=null,s=null,n=0,i=null,r=!1){if((!t||t===ro)&&(t=dt),Xt(t)){const o=Dt(t,e,!0);return s&&On(o,s),Zt>0&&!r&&ke&&(o.shapeFlag&6?ke[ke.indexOf(t)]=o:ke.push(o)),o.patchFlag=-2,o}if(Qo(t)&&(t=t.__vccOpts),e){e=Bo(e);let{class:o,style:a}=e;o&&!ue(o)&&(e.class=gn(o)),oe(a)&&(xn(a)&&!z(a)&&(a=he({},a)),e.style=pn(a))}const l=ue(t)?1:Rr(t)?128:Gl(t)?64:oe(t)?4:G(t)?2:0;return Ze(t,e,s,n,i,l,r,!0)}function Bo(t){return t?xn(t)||yr(t)?he({},t):t:null}function Dt(t,e,s=!1,n=!1){const{props:i,ref:r,patchFlag:l,children:o,transition:a}=t,u=e?Uo(i||{},e):i,c={__v_isVNode:!0,__v_skip:!0,type:t.type,props:u,key:u&&kr(u),ref:e&&e.ref?s&&r?z(r)?r.concat(fs(e)):[r,fs(e)]:fs(e):r,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:o,target:t.target,targetStart:t.targetStart,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==Fe?l===-1?16:l|16:l,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:a,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&Dt(t.ssContent),ssFallback:t.ssFallback&&Dt(t.ssFallback),el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return a&&n&&Sn(c,a.clone(c)),c}function hs(t=" ",e=0){return pe(Ps,null,t,e)}function Ho(t,e){const s=pe(us,null,t);return s.staticCount=e,s}function Vo(t="",e=!1){return e?(Jt(),nn(dt,null,t)):pe(dt,null,t)}function Ge(t){return t==null||typeof t=="boolean"?pe(dt):z(t)?pe(Fe,null,t.slice()):Xt(t)?ct(t):pe(Ps,null,String(t))}function ct(t){return t.el===null&&t.patchFlag!==-1||t.memo?t:Dt(t)}function On(t,e){let s=0;const{shapeFlag:n}=t;if(e==null)e=null;else if(z(e))s=16;else if(typeof e=="object")if(n&65){const i=e.default;i&&(i._c&&(i._d=!1),On(t,i()),i._c&&(i._d=!0));return}else{s=32;const i=e._;!i&&!yr(e)?e._ctx=_e:i===3&&_e&&(_e.slots._===1?e._=1:(e._=2,t.patchFlag|=1024))}else G(e)?(e={default:e,_ctx:_e},s=32):(e=String(e),n&64?(s=16,e=[hs(e)]):s=8);t.children=e,t.shapeFlag|=s}function Uo(...t){const e={};for(let s=0;s{let i;return(i=t[s])||(i=t[s]=[]),i.push(n),r=>{i.length>1?i.forEach(l=>l(r)):i[0](r)}};bs=e("__VUE_INSTANCE_SETTERS__",s=>ye=s),rn=e("__VUE_SSR_SETTERS__",s=>es=s)}const is=t=>{const e=ye;return bs(t),t.scope.on(),()=>{t.scope.off(),bs(e)}},Yn=()=>{ye&&ye.scope.off(),bs(null)};function Ir(t){return t.vnode.shapeFlag&4}let es=!1;function zo(t,e=!1,s=!1){e&&rn(e);const{props:n,children:i}=t.vnode,r=Ir(t);mo(t,n,r,e),wo(t,i,s);const l=r?Go(t,e):void 0;return e&&rn(!1),l}function Go(t,e){const s=t.type;t.accessCache=Object.create(null),t.proxy=new Proxy(t.ctx,oo);const{setup:n}=s;if(n){pt();const i=t.setupContext=n.length>1?qo(t):null,r=is(t),l=ns(n,t,0,[t.props,i]),o=Pi(l);if(gt(),r(),(o||t.sp)&&!Pt(t)&&cr(t),o){if(l.then(Yn,Yn),e)return l.then(a=>{Qn(t,a,e)}).catch(a=>{_s(a,t,0)});t.asyncDep=l}else Qn(t,l,e)}else Mr(t,e)}function Qn(t,e,s){G(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:oe(e)&&(t.setupState=sr(e)),Mr(t,s)}let Jn;function Mr(t,e,s){const n=t.type;if(!t.render){if(!e&&Jn&&!n.render){const i=n.template||Cn(t).template;if(i){const{isCustomElement:r,compilerOptions:l}=t.appContext.config,{delimiters:o,compilerOptions:a}=n,u=he(he({isCustomElement:r,delimiters:o},l),a);n.render=Jn(i,u)}}t.render=n.render||Ke}{const i=is(t);pt();try{ao(t)}finally{gt(),i()}}}const Ko={get(t,e){return ve(t,"get",""),t[e]}};function qo(t){const e=s=>{t.exposed=s||{}};return{attrs:new Proxy(t.attrs,Ko),slots:t.slots,emit:t.emit,expose:e}}function Tn(t){return t.exposed?t.exposeProxy||(t.exposeProxy=new Proxy(sr(Fl(t.exposed)),{get(e,s){if(s in e)return e[s];if(s in $t)return $t[s](t)},has(e,s){return s in e||s in $t}})):t.proxy}function Yo(t,e=!0){return G(t)?t.displayName||t.name:t.name||e&&t.__name}function Qo(t){return G(t)&&"__vccOpts"in t}const He=(t,e)=>Bl(t,e,es);function Nr(t,e,s){const n=arguments.length;return n===2?oe(e)&&!z(e)?Xt(e)?pe(t,null,[e]):pe(t,e):pe(t,null,e):(n>3?s=Array.prototype.slice.call(arguments,2):n===3&&Xt(s)&&(s=[s]),pe(t,e,s))}const Jo="3.5.12";/** -* @vue/runtime-dom v3.5.12 +**/function ns(t,e,s,n){try{return n?t(...n):t()}catch(i){Os(i,e,s)}}function qe(t,e,s,n){if(G(t)){const i=ns(t,e,s,n);return i&&Pi(i)&&i.catch(r=>{Os(r,e,s)}),i}if(z(t)){const i=[];for(let r=0;r>>1,i=Ce[n],r=Qt(i);r=Qt(s)?Ce.push(t):Ce.splice(jl(e),0,t),t.flags|=1,rr()}}function rr(){gs||(gs=nr.then(or))}function $l(t){z(t)?Lt.push(...t):at&&t.id===-1?at.splice(St+1,0,t):t.flags&1||(Lt.push(t),t.flags|=1),rr()}function Bn(t,e,s=ze+1){for(;sQt(s)-Qt(n));if(Lt.length=0,at){at.push(...e);return}for(at=e,St=0;Stt.id==null?t.flags&2?-1:1/0:t.id;function or(t){try{for(ze=0;ze{n._d&&qn(-1);const r=ms(e);let l;try{l=t(...i)}finally{ms(r),n._d&&qn(1)}return l};return n._n=!0,n._c=!0,n._d=!0,n}function mt(t,e,s,n){const i=t.dirs,r=e&&e.dirs;for(let l=0;lt.__isTeleport;function Sn(t,e){t.shapeFlag&6&&t.component?(t.transition=e,Sn(t.component.subTree,e)):t.shapeFlag&128?(t.ssContent.transition=e.clone(t.ssContent),t.ssFallback.transition=e.clone(t.ssFallback)):t.transition=e}/*! #__NO_SIDE_EFFECTS__ */function Ts(t,e){return G(t)?he({name:t.name},e,{setup:t}):t}function cr(t){t.ids=[t.ids[0]+t.ids[2]+++"-",0,0]}function vs(t,e,s,n,i=!1){if(z(t)){t.forEach((T,O)=>vs(T,e&&(z(e)?e[O]:e),s,n,i));return}if(Pt(n)&&!i){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&vs(t,e,s,n.component.subTree);return}const r=n.shapeFlag&4?Tn(n.component):n.el,l=i?null:r,{i:o,r:a}=t,u=e&&e.r,c=o.refs===ie?o.refs={}:o.refs,h=o.setupState,p=J(h),g=h===ie?()=>!1:T=>Z(p,T);if(u!=null&&u!==a&&(ue(u)?(c[u]=null,g(u)&&(h[u]=null)):we(u)&&(u.value=null)),G(a))ns(a,o,12,[l,c]);else{const T=ue(a),O=we(a);if(T||O){const P=()=>{if(t.f){const D=T?g(a)?h[a]:c[a]:a.value;i?z(D)&&hn(D,r):z(D)?D.includes(r)||D.push(r):T?(c[a]=[r],g(a)&&(h[a]=c[a])):(a.value=[r],t.k&&(c[t.k]=a.value))}else T?(c[a]=l,g(a)&&(h[a]=l)):O&&(a.value=l,t.k&&(c[t.k]=l))};l?(P.id=-1,Re(P,s)):P()}}}Ss().requestIdleCallback;Ss().cancelIdleCallback;const Pt=t=>!!t.type.__asyncLoader,ur=t=>t.type.__isKeepAlive;function Kl(t,e){fr(t,"a",e)}function ql(t,e){fr(t,"da",e)}function fr(t,e,s=ye){const n=t.__wdc||(t.__wdc=()=>{let i=s;for(;i;){if(i.isDeactivated)return;i=i.parent}return t()});if(Ls(e,n,s),s){let i=s.parent;for(;i&&i.parent;)ur(i.parent.vnode)&&Yl(n,e,s,i),i=i.parent}}function Yl(t,e,s,n){const i=Ls(e,t,n,!0);dr(()=>{hn(n[e],i)},s)}function Ls(t,e,s=ye,n=!1){if(s){const i=s[t]||(s[t]=[]),r=e.__weh||(e.__weh=(...l)=>{pt();const o=is(s),a=qe(e,s,t,l);return o(),gt(),a});return n?i.unshift(r):i.push(r),r}}const nt=t=>(e,s=ye)=>{(!es||t==="sp")&&Ls(t,(...n)=>e(...n),s)},Ql=nt("bm"),hr=nt("m"),Jl=nt("bu"),Zl=nt("u"),Xl=nt("bum"),dr=nt("um"),eo=nt("sp"),to=nt("rtg"),so=nt("rtc");function no(t,e=ye){Ls("ec",t,e)}const io="components";function Hn(t,e){return lo(io,t,!0,e)||t}const ro=Symbol.for("v-ndc");function lo(t,e,s=!0,n=!1){const i=_e||ye;if(i){const r=i.type;{const o=Yo(r,!1);if(o&&(o===e||o===Me(e)||o===Es(Me(e))))return r}const l=Vn(i[t]||r[t],e)||Vn(i.appContext[t],e);return!l&&n?r:l}}function Vn(t,e){return t&&(t[e]||t[Me(e)]||t[Es(Me(e))])}function Jc(t,e,s,n){let i;const r=s,l=z(t);if(l||ue(t)){const o=l&&Tt(t);let a=!1;o&&(a=!Ie(t),t=Cs(t)),i=new Array(t.length);for(let u=0,c=t.length;ue(o,a,void 0,r));else{const o=Object.keys(t);i=new Array(o.length);for(let a=0,u=o.length;aXt(e)?!(e.type===dt||e.type===ke&&!pr(e.children)):!0)?t:null}const Xs=t=>t?Ir(t)?Tn(t):Xs(t.parent):null,$t=he(Object.create(null),{$:t=>t,$el:t=>t.vnode.el,$data:t=>t.data,$props:t=>t.props,$attrs:t=>t.attrs,$slots:t=>t.slots,$refs:t=>t.refs,$parent:t=>Xs(t.parent),$root:t=>Xs(t.root),$host:t=>t.ce,$emit:t=>t.emit,$options:t=>Cn(t),$forceUpdate:t=>t.f||(t.f=()=>{En(t.update)}),$nextTick:t=>t.n||(t.n=ir.bind(t.proxy)),$watch:t=>To.bind(t)}),Hs=(t,e)=>t!==ie&&!t.__isScriptSetup&&Z(t,e),oo={get({_:t},e){if(e==="__v_skip")return!0;const{ctx:s,setupState:n,data:i,props:r,accessCache:l,type:o,appContext:a}=t;let u;if(e[0]!=="$"){const g=l[e];if(g!==void 0)switch(g){case 1:return n[e];case 2:return i[e];case 4:return s[e];case 3:return r[e]}else{if(Hs(n,e))return l[e]=1,n[e];if(i!==ie&&Z(i,e))return l[e]=2,i[e];if((u=t.propsOptions[0])&&Z(u,e))return l[e]=3,r[e];if(s!==ie&&Z(s,e))return l[e]=4,s[e];en&&(l[e]=0)}}const c=$t[e];let h,p;if(c)return e==="$attrs"&&ve(t.attrs,"get",""),c(t);if((h=o.__cssModules)&&(h=h[e]))return h;if(s!==ie&&Z(s,e))return l[e]=4,s[e];if(p=a.config.globalProperties,Z(p,e))return p[e]},set({_:t},e,s){const{data:n,setupState:i,ctx:r}=t;return Hs(i,e)?(i[e]=s,!0):n!==ie&&Z(n,e)?(n[e]=s,!0):Z(t.props,e)||e[0]==="$"&&e.slice(1)in t?!1:(r[e]=s,!0)},has({_:{data:t,setupState:e,accessCache:s,ctx:n,appContext:i,propsOptions:r}},l){let o;return!!s[l]||t!==ie&&Z(t,l)||Hs(e,l)||(o=r[0])&&Z(o,l)||Z(n,l)||Z($t,l)||Z(i.config.globalProperties,l)},defineProperty(t,e,s){return s.get!=null?t._.accessCache[e]=0:Z(s,"value")&&this.set(t,e,s.value,null),Reflect.defineProperty(t,e,s)}};function Un(t){return z(t)?t.reduce((e,s)=>(e[s]=null,e),{}):t}let en=!0;function ao(t){const e=Cn(t),s=t.proxy,n=t.ctx;en=!1,e.beforeCreate&&jn(e.beforeCreate,t,"bc");const{data:i,computed:r,methods:l,watch:o,provide:a,inject:u,created:c,beforeMount:h,mounted:p,beforeUpdate:g,updated:T,activated:O,deactivated:P,beforeDestroy:D,beforeUnmount:m,destroyed:v,unmounted:y,render:x,renderTracked:_,renderTriggered:F,errorCaptured:W,serverPrefetch:H,expose:Y,inheritAttrs:re,components:ge,directives:Oe,filters:it}=e;if(u&&co(u,n,null),l)for(const Q in l){const j=l[Q];G(j)&&(n[Q]=j.bind(s))}if(i){const Q=i.call(s,s);oe(Q)&&(t.data=_s(Q))}if(en=!0,r)for(const Q in r){const j=r[Q],ce=G(j)?j.bind(s,s):G(j.get)?j.get.bind(s,s):Ke,Ae=!G(j)&&G(j.set)?j.set.bind(s):Ke,xe=He({get:ce,set:Ae});Object.defineProperty(n,Q,{enumerable:!0,configurable:!0,get:()=>xe.value,set:te=>xe.value=te})}if(o)for(const Q in o)gr(o[Q],n,s,Q);if(a){const Q=G(a)?a.call(s):a;Reflect.ownKeys(Q).forEach(j=>{as(j,Q[j])})}c&&jn(c,t,"c");function ae(Q,j){z(j)?j.forEach(ce=>Q(ce.bind(s))):j&&Q(j.bind(s))}if(ae(Ql,h),ae(hr,p),ae(Jl,g),ae(Zl,T),ae(Kl,O),ae(ql,P),ae(no,W),ae(so,_),ae(to,F),ae(Xl,m),ae(dr,y),ae(eo,H),z(Y))if(Y.length){const Q=t.exposed||(t.exposed={});Y.forEach(j=>{Object.defineProperty(Q,j,{get:()=>s[j],set:ce=>s[j]=ce})})}else t.exposed||(t.exposed={});x&&t.render===Ke&&(t.render=x),re!=null&&(t.inheritAttrs=re),ge&&(t.components=ge),Oe&&(t.directives=Oe),H&&cr(t)}function co(t,e,s=Ke){z(t)&&(t=tn(t));for(const n in t){const i=t[n];let r;oe(i)?"default"in i?r=tt(i.from||n,i.default,!0):r=tt(i.from||n):r=tt(i),we(r)?Object.defineProperty(e,n,{enumerable:!0,configurable:!0,get:()=>r.value,set:l=>r.value=l}):e[n]=r}}function jn(t,e,s){qe(z(t)?t.map(n=>n.bind(e.proxy)):t.bind(e.proxy),e,s)}function gr(t,e,s,n){let i=n.includes(".")?Lr(s,n):()=>s[n];if(ue(t)){const r=e[t];G(r)&&cs(i,r)}else if(G(t))cs(i,t.bind(s));else if(oe(t))if(z(t))t.forEach(r=>gr(r,e,s,n));else{const r=G(t.handler)?t.handler.bind(s):e[t.handler];G(r)&&cs(i,r,t)}}function Cn(t){const e=t.type,{mixins:s,extends:n}=e,{mixins:i,optionsCache:r,config:{optionMergeStrategies:l}}=t.appContext,o=r.get(e);let a;return o?a=o:!i.length&&!s&&!n?a=e:(a={},i.length&&i.forEach(u=>bs(a,u,l,!0)),bs(a,e,l)),oe(e)&&r.set(e,a),a}function bs(t,e,s,n=!1){const{mixins:i,extends:r}=e;r&&bs(t,r,s,!0),i&&i.forEach(l=>bs(t,l,s,!0));for(const l in e)if(!(n&&l==="expose")){const o=uo[l]||s&&s[l];t[l]=o?o(t[l],e[l]):e[l]}return t}const uo={data:$n,props:Wn,emits:Wn,methods:Ht,computed:Ht,beforeCreate:Se,created:Se,beforeMount:Se,mounted:Se,beforeUpdate:Se,updated:Se,beforeDestroy:Se,beforeUnmount:Se,destroyed:Se,unmounted:Se,activated:Se,deactivated:Se,errorCaptured:Se,serverPrefetch:Se,components:Ht,directives:Ht,watch:ho,provide:$n,inject:fo};function $n(t,e){return e?t?function(){return he(G(t)?t.call(this,this):t,G(e)?e.call(this,this):e)}:e:t}function fo(t,e){return Ht(tn(t),tn(e))}function tn(t){if(z(t)){const e={};for(let s=0;s1)return s&&G(e)?e.call(n&&n.proxy):e}}const vr={},br=()=>Object.create(vr),yr=t=>Object.getPrototypeOf(t)===vr;function mo(t,e,s,n=!1){const i={},r=br();t.propsDefaults=Object.create(null),wr(t,e,i,r);for(const l in t.propsOptions[0])l in i||(i[l]=void 0);s?t.props=n?i:Zi(i):t.type.props?t.props=i:t.props=r,t.attrs=r}function vo(t,e,s,n){const{props:i,attrs:r,vnode:{patchFlag:l}}=t,o=J(i),[a]=t.propsOptions;let u=!1;if((n||l>0)&&!(l&16)){if(l&8){const c=t.vnode.dynamicProps;for(let h=0;h{a=!0;const[p,g]=Ar(h,e,!0);he(l,p),g&&o.push(...g)};!s&&e.mixins.length&&e.mixins.forEach(c),t.extends&&c(t.extends),t.mixins&&t.mixins.forEach(c)}if(!r&&!a)return oe(t)&&n.set(t,_t),_t;if(z(r))for(let c=0;ct[0]==="_"||t==="$stable",_n=t=>z(t)?t.map(Ge):[Ge(t)],yo=(t,e,s)=>{if(e._n)return e;const n=Wl((...i)=>_n(e(...i)),s);return n._c=!1,n},Er=(t,e,s)=>{const n=t._ctx;for(const i in t){if(xr(i))continue;const r=t[i];if(G(r))e[i]=yo(i,r,n);else if(r!=null){const l=_n(r);e[i]=()=>l}}},Sr=(t,e)=>{const s=_n(e);t.slots.default=()=>s},Cr=(t,e,s)=>{for(const n in e)(s||n!=="_")&&(t[n]=e[n])},wo=(t,e,s)=>{const n=t.slots=br();if(t.vnode.shapeFlag&32){const i=e._;i?(Cr(n,e,s),s&&ki(n,"_",i,!0)):Er(e,n)}else e&&Sr(t,e)},Ao=(t,e,s)=>{const{vnode:n,slots:i}=t;let r=!0,l=ie;if(n.shapeFlag&32){const o=e._;o?s&&o===1?r=!1:Cr(i,e,s):(r=!e.$stable,Er(e,i)),l=e}else e&&(Sr(t,e),l={default:1});if(r)for(const o in i)!xr(o)&&l[o]==null&&delete i[o]},Re=Io;function xo(t){return Eo(t)}function Eo(t,e){const s=Ss();s.__VUE__=!0;const{insert:n,remove:i,patchProp:r,createElement:l,createText:o,createComment:a,setText:u,setElementText:c,parentNode:h,nextSibling:p,setScopeId:g=Ke,insertStaticContent:T}=t,O=(f,d,b,E=null,A=null,S=null,I=void 0,R=null,L=!!d.dynamicChildren)=>{if(f===d)return;f&&!Nt(f,d)&&(E=w(f),te(f,A,S,!0),f=null),d.patchFlag===-2&&(L=!1,d.dynamicChildren=null);const{type:C,ref:U,shapeFlag:N}=d;switch(C){case Rs:P(f,d,b,E);break;case dt:D(f,d,b,E);break;case us:f==null&&m(d,b,E,I);break;case ke:ge(f,d,b,E,A,S,I,R,L);break;default:N&1?x(f,d,b,E,A,S,I,R,L):N&6?Oe(f,d,b,E,A,S,I,R,L):(N&64||N&128)&&C.process(f,d,b,E,A,S,I,R,L,B)}U!=null&&A&&vs(U,f&&f.ref,S,d||f,!d)},P=(f,d,b,E)=>{if(f==null)n(d.el=o(d.children),b,E);else{const A=d.el=f.el;d.children!==f.children&&u(A,d.children)}},D=(f,d,b,E)=>{f==null?n(d.el=a(d.children||""),b,E):d.el=f.el},m=(f,d,b,E)=>{[f.el,f.anchor]=T(f.children,d,b,E,f.el,f.anchor)},v=({el:f,anchor:d},b,E)=>{let A;for(;f&&f!==d;)A=p(f),n(f,b,E),f=A;n(d,b,E)},y=({el:f,anchor:d})=>{let b;for(;f&&f!==d;)b=p(f),i(f),f=b;i(d)},x=(f,d,b,E,A,S,I,R,L)=>{d.type==="svg"?I="svg":d.type==="math"&&(I="mathml"),f==null?_(d,b,E,A,S,I,R,L):H(f,d,A,S,I,R,L)},_=(f,d,b,E,A,S,I,R)=>{let L,C;const{props:U,shapeFlag:N,transition:V,dirs:$}=f;if(L=f.el=l(f.type,S,U&&U.is,U),N&8?c(L,f.children):N&16&&W(f.children,L,null,E,A,Vs(f,S),I,R),$&&mt(f,null,E,"created"),F(L,f,f.scopeId,I,E),U){for(const se in U)se!=="value"&&!Vt(se)&&r(L,se,null,U[se],S,E);"value"in U&&r(L,"value",null,U.value,S),(C=U.onVnodeBeforeMount)&&We(C,E,f)}$&&mt(f,null,E,"beforeMount");const q=So(A,V);q&&V.beforeEnter(L),n(L,d,b),((C=U&&U.onVnodeMounted)||q||$)&&Re(()=>{C&&We(C,E,f),q&&V.enter(L),$&&mt(f,null,E,"mounted")},A)},F=(f,d,b,E,A)=>{if(b&&g(f,b),E)for(let S=0;S{for(let C=L;C{const R=d.el=f.el;let{patchFlag:L,dynamicChildren:C,dirs:U}=d;L|=f.patchFlag&16;const N=f.props||ie,V=d.props||ie;let $;if(b&&vt(b,!1),($=V.onVnodeBeforeUpdate)&&We($,b,d,f),U&&mt(d,f,b,"beforeUpdate"),b&&vt(b,!0),(N.innerHTML&&V.innerHTML==null||N.textContent&&V.textContent==null)&&c(R,""),C?Y(f.dynamicChildren,C,R,b,E,Vs(d,A),S):I||j(f,d,R,null,b,E,Vs(d,A),S,!1),L>0){if(L&16)re(R,N,V,b,A);else if(L&2&&N.class!==V.class&&r(R,"class",null,V.class,A),L&4&&r(R,"style",N.style,V.style,A),L&8){const q=d.dynamicProps;for(let se=0;se{$&&We($,b,d,f),U&&mt(d,f,b,"updated")},E)},Y=(f,d,b,E,A,S,I)=>{for(let R=0;R{if(d!==b){if(d!==ie)for(const S in d)!Vt(S)&&!(S in b)&&r(f,S,d[S],null,A,E);for(const S in b){if(Vt(S))continue;const I=b[S],R=d[S];I!==R&&S!=="value"&&r(f,S,R,I,A,E)}"value"in b&&r(f,"value",d.value,b.value,A)}},ge=(f,d,b,E,A,S,I,R,L)=>{const C=d.el=f?f.el:o(""),U=d.anchor=f?f.anchor:o("");let{patchFlag:N,dynamicChildren:V,slotScopeIds:$}=d;$&&(R=R?R.concat($):$),f==null?(n(C,b,E),n(U,b,E),W(d.children||[],b,U,A,S,I,R,L)):N>0&&N&64&&V&&f.dynamicChildren?(Y(f.dynamicChildren,V,b,A,S,I,R),(d.key!=null||A&&d===A.subTree)&&_r(f,d,!0)):j(f,d,b,U,A,S,I,R,L)},Oe=(f,d,b,E,A,S,I,R,L)=>{d.slotScopeIds=R,f==null?d.shapeFlag&512?A.ctx.activate(d,b,E,I,L):it(d,b,E,A,S,I,L):rt(f,d,L)},it=(f,d,b,E,A,S,I)=>{const R=f.component=Wo(f,E,A);if(ur(f)&&(R.ctx.renderer=B),zo(R,!1,I),R.asyncDep){if(A&&A.registerDep(R,ae,I),!f.el){const L=R.subTree=pe(dt);D(null,L,d,b)}}else ae(R,f,d,b,A,S,I)},rt=(f,d,b)=>{const E=d.component=f.component;if(ko(f,d,b))if(E.asyncDep&&!E.asyncResolved){Q(E,d,b);return}else E.next=d,E.update();else d.el=f.el,E.vnode=d},ae=(f,d,b,E,A,S,I)=>{const R=()=>{if(f.isMounted){let{next:N,bu:V,u:$,parent:q,vnode:se}=f;{const Le=Or(f);if(Le){N&&(N.el=se.el,Q(f,N,I)),Le.asyncDep.then(()=>{f.isUnmounted||R()});return}}let X=N,Te;vt(f,!1),N?(N.el=se.el,Q(f,N,I)):N=se,V&&Fs(V),(Te=N.props&&N.props.onVnodeBeforeUpdate)&&We(Te,q,N,se),vt(f,!0);const me=Us(f),Ne=f.subTree;f.subTree=me,O(Ne,me,h(Ne.el),w(Ne),f,A,S),N.el=me.el,X===null&&Fo(f,me.el),$&&Re($,A),(Te=N.props&&N.props.onVnodeUpdated)&&Re(()=>We(Te,q,N,se),A)}else{let N;const{el:V,props:$}=d,{bm:q,m:se,parent:X,root:Te,type:me}=f,Ne=Pt(d);if(vt(f,!1),q&&Fs(q),!Ne&&(N=$&&$.onVnodeBeforeMount)&&We(N,X,d),vt(f,!0),V&&le){const Le=()=>{f.subTree=Us(f),le(V,f.subTree,f,A,null)};Ne&&me.__asyncHydrate?me.__asyncHydrate(V,f,Le):Le()}else{Te.ce&&Te.ce._injectChildStyle(me);const Le=f.subTree=Us(f);O(null,Le,b,E,f,A,S),d.el=Le.el}if(se&&Re(se,A),!Ne&&(N=$&&$.onVnodeMounted)){const Le=d;Re(()=>We(N,X,Le),A)}(d.shapeFlag&256||X&&Pt(X.vnode)&&X.vnode.shapeFlag&256)&&f.a&&Re(f.a,A),f.isMounted=!0,d=b=E=null}};f.scope.on();const L=f.effect=new Bi(R);f.scope.off();const C=f.update=L.run.bind(L),U=f.job=L.runIfDirty.bind(L);U.i=f,U.id=f.uid,L.scheduler=()=>En(U),vt(f,!0),C()},Q=(f,d,b)=>{d.component=f;const E=f.vnode.props;f.vnode=d,f.next=null,vo(f,d.props,E,b),Ao(f,d.children,b),pt(),Bn(f),gt()},j=(f,d,b,E,A,S,I,R,L=!1)=>{const C=f&&f.children,U=f?f.shapeFlag:0,N=d.children,{patchFlag:V,shapeFlag:$}=d;if(V>0){if(V&128){Ae(C,N,b,E,A,S,I,R,L);return}else if(V&256){ce(C,N,b,E,A,S,I,R,L);return}}$&8?(U&16&&de(C,A,S),N!==C&&c(b,N)):U&16?$&16?Ae(C,N,b,E,A,S,I,R,L):de(C,A,S,!0):(U&8&&c(b,""),$&16&&W(N,b,E,A,S,I,R,L))},ce=(f,d,b,E,A,S,I,R,L)=>{f=f||_t,d=d||_t;const C=f.length,U=d.length,N=Math.min(C,U);let V;for(V=0;VU?de(f,A,S,!0,!1,N):W(d,b,E,A,S,I,R,L,N)},Ae=(f,d,b,E,A,S,I,R,L)=>{let C=0;const U=d.length;let N=f.length-1,V=U-1;for(;C<=N&&C<=V;){const $=f[C],q=d[C]=L?ct(d[C]):Ge(d[C]);if(Nt($,q))O($,q,b,null,A,S,I,R,L);else break;C++}for(;C<=N&&C<=V;){const $=f[N],q=d[V]=L?ct(d[V]):Ge(d[V]);if(Nt($,q))O($,q,b,null,A,S,I,R,L);else break;N--,V--}if(C>N){if(C<=V){const $=V+1,q=$V)for(;C<=N;)te(f[C],A,S,!0),C++;else{const $=C,q=C,se=new Map;for(C=q;C<=V;C++){const Pe=d[C]=L?ct(d[C]):Ge(d[C]);Pe.key!=null&&se.set(Pe.key,C)}let X,Te=0;const me=V-q+1;let Ne=!1,Le=0;const It=new Array(me);for(C=0;C=me){te(Pe,A,S,!0);continue}let $e;if(Pe.key!=null)$e=se.get(Pe.key);else for(X=q;X<=V;X++)if(It[X-q]===0&&Nt(Pe,d[X])){$e=X;break}$e===void 0?te(Pe,A,S,!0):(It[$e-q]=C+1,$e>=Le?Le=$e:Ne=!0,O(Pe,d[$e],b,null,A,S,I,R,L),Te++)}const kn=Ne?Co(It):_t;for(X=kn.length-1,C=me-1;C>=0;C--){const Pe=q+C,$e=d[Pe],Fn=Pe+1{const{el:S,type:I,transition:R,children:L,shapeFlag:C}=f;if(C&6){xe(f.component.subTree,d,b,E);return}if(C&128){f.suspense.move(d,b,E);return}if(C&64){I.move(f,d,b,B);return}if(I===ke){n(S,d,b);for(let N=0;NR.enter(S),A);else{const{leave:N,delayLeave:V,afterLeave:$}=R,q=()=>n(S,d,b),se=()=>{N(S,()=>{q(),$&&$()})};V?V(S,q,se):se()}else n(S,d,b)},te=(f,d,b,E=!1,A=!1)=>{const{type:S,props:I,ref:R,children:L,dynamicChildren:C,shapeFlag:U,patchFlag:N,dirs:V,cacheIndex:$}=f;if(N===-2&&(A=!1),R!=null&&vs(R,null,b,f,!0),$!=null&&(d.renderCache[$]=void 0),U&256){d.ctx.deactivate(f);return}const q=U&1&&V,se=!Pt(f);let X;if(se&&(X=I&&I.onVnodeBeforeUnmount)&&We(X,d,f),U&6)je(f.component,b,E);else{if(U&128){f.suspense.unmount(b,E);return}q&&mt(f,null,d,"beforeUnmount"),U&64?f.type.remove(f,d,b,B,E):C&&!C.hasOnce&&(S!==ke||N>0&&N&64)?de(C,d,b,!1,!0):(S===ke&&N&384||!A&&U&16)&&de(L,d,b),E&<(f)}(se&&(X=I&&I.onVnodeUnmounted)||q)&&Re(()=>{X&&We(X,d,f),q&&mt(f,null,d,"unmounted")},b)},lt=f=>{const{type:d,el:b,anchor:E,transition:A}=f;if(d===ke){Ee(b,E);return}if(d===us){y(f);return}const S=()=>{i(b),A&&!A.persisted&&A.afterLeave&&A.afterLeave()};if(f.shapeFlag&1&&A&&!A.persisted){const{leave:I,delayLeave:R}=A,L=()=>I(b,S);R?R(f.el,S,L):L()}else S()},Ee=(f,d)=>{let b;for(;f!==d;)b=p(f),i(f),f=b;i(d)},je=(f,d,b)=>{const{bum:E,scope:A,job:S,subTree:I,um:R,m:L,a:C}=f;Gn(L),Gn(C),E&&Fs(E),A.stop(),S&&(S.flags|=8,te(I,f,d,b)),R&&Re(R,d),Re(()=>{f.isUnmounted=!0},d),d&&d.pendingBranch&&!d.isUnmounted&&f.asyncDep&&!f.asyncResolved&&f.suspenseId===d.pendingId&&(d.deps--,d.deps===0&&d.resolve())},de=(f,d,b,E=!1,A=!1,S=0)=>{for(let I=S;I{if(f.shapeFlag&6)return w(f.component.subTree);if(f.shapeFlag&128)return f.suspense.next();const d=p(f.anchor||f.el),b=d&&d[zl];return b?p(b):d};let M=!1;const k=(f,d,b)=>{f==null?d._vnode&&te(d._vnode,null,null,!0):O(d._vnode||null,f,d,null,null,null,b),d._vnode=f,M||(M=!0,Bn(),lr(),M=!1)},B={p:O,um:te,m:xe,r:lt,mt:it,mc:W,pc:j,pbc:Y,n:w,o:t};let K,le;return{render:k,hydrate:K,createApp:go(k,K)}}function Vs({type:t,props:e},s){return s==="svg"&&t==="foreignObject"||s==="mathml"&&t==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:s}function vt({effect:t,job:e},s){s?(t.flags|=32,e.flags|=4):(t.flags&=-33,e.flags&=-5)}function So(t,e){return(!t||t&&!t.pendingBranch)&&e&&!e.persisted}function _r(t,e,s=!1){const n=t.children,i=e.children;if(z(n)&&z(i))for(let r=0;r>1,t[s[o]]0&&(e[n]=s[r-1]),s[r]=n)}}for(r=s.length,l=s[r-1];r-- >0;)s[r]=l,l=e[l];return s}function Or(t){const e=t.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:Or(e)}function Gn(t){if(t)for(let e=0;ett(_o);function cs(t,e,s){return Tr(t,e,s)}function Tr(t,e,s=ie){const{immediate:n,deep:i,flush:r,once:l}=s,o=he({},s),a=e&&n||!e&&r!=="post";let u;if(es){if(r==="sync"){const g=Oo();u=g.__watcherHandles||(g.__watcherHandles=[])}else if(!a){const g=()=>{};return g.stop=Ke,g.resume=Ke,g.pause=Ke,g}}const c=ye;o.call=(g,T,O)=>qe(g,c,T,O);let h=!1;r==="post"?o.scheduler=g=>{Re(g,c&&c.suspense)}:r!=="sync"&&(h=!0,o.scheduler=(g,T)=>{T?g():En(g)}),o.augmentJob=g=>{e&&(g.flags|=4),h&&(g.flags|=2,c&&(g.id=c.uid,g.i=c))};const p=Vl(t,e,o);return es&&(u?u.push(p):a&&p()),p}function To(t,e,s){const n=this.proxy,i=ue(t)?t.includes(".")?Lr(n,t):()=>n[t]:t.bind(n,n);let r;G(e)?r=e:(r=e.handler,s=e);const l=is(this),o=Tr(i,r.bind(n),s);return l(),o}function Lr(t,e){const s=e.split(".");return()=>{let n=t;for(let i=0;ie==="modelValue"||e==="model-value"?t.modelModifiers:t[`${e}Modifiers`]||t[`${Me(e)}Modifiers`]||t[`${xt(e)}Modifiers`];function Po(t,e,...s){if(t.isUnmounted)return;const n=t.vnode.props||ie;let i=s;const r=e.startsWith("update:"),l=r&&Lo(n,e.slice(7));l&&(l.trim&&(i=s.map(c=>ue(c)?c.trim():c)),l.number&&(i=s.map(ll)));let o,a=n[o=ks(e)]||n[o=ks(Me(e))];!a&&r&&(a=n[o=ks(xt(e))]),a&&qe(a,t,6,i);const u=n[o+"Once"];if(u){if(!t.emitted)t.emitted={};else if(t.emitted[o])return;t.emitted[o]=!0,qe(u,t,6,i)}}function Pr(t,e,s=!1){const n=e.emitsCache,i=n.get(t);if(i!==void 0)return i;const r=t.emits;let l={},o=!1;if(!G(t)){const a=u=>{const c=Pr(u,e,!0);c&&(o=!0,he(l,c))};!s&&e.mixins.length&&e.mixins.forEach(a),t.extends&&a(t.extends),t.mixins&&t.mixins.forEach(a)}return!r&&!o?(oe(t)&&n.set(t,null),null):(z(r)?r.forEach(a=>l[a]=null):he(l,r),oe(t)&&n.set(t,l),l)}function Ps(t,e){return!t||!ws(e)?!1:(e=e.slice(2).replace(/Once$/,""),Z(t,e[0].toLowerCase()+e.slice(1))||Z(t,xt(e))||Z(t,e))}function Us(t){const{type:e,vnode:s,proxy:n,withProxy:i,propsOptions:[r],slots:l,attrs:o,emit:a,render:u,renderCache:c,props:h,data:p,setupState:g,ctx:T,inheritAttrs:O}=t,P=ms(t);let D,m;try{if(s.shapeFlag&4){const y=i||n,x=y;D=Ge(u.call(x,y,c,h,g,p,T)),m=o}else{const y=e;D=Ge(y.length>1?y(h,{attrs:o,slots:l,emit:a}):y(h,null)),m=e.props?o:Ro(o)}}catch(y){Wt.length=0,Os(y,t,1),D=pe(dt)}let v=D;if(m&&O!==!1){const y=Object.keys(m),{shapeFlag:x}=v;y.length&&x&7&&(r&&y.some(fn)&&(m=Do(m,r)),v=Dt(v,m,!1,!0))}return s.dirs&&(v=Dt(v,null,!1,!0),v.dirs=v.dirs?v.dirs.concat(s.dirs):s.dirs),s.transition&&Sn(v,s.transition),D=v,ms(P),D}const Ro=t=>{let e;for(const s in t)(s==="class"||s==="style"||ws(s))&&((e||(e={}))[s]=t[s]);return e},Do=(t,e)=>{const s={};for(const n in t)(!fn(n)||!(n.slice(9)in e))&&(s[n]=t[n]);return s};function ko(t,e,s){const{props:n,children:i,component:r}=t,{props:l,children:o,patchFlag:a}=e,u=r.emitsOptions;if(e.dirs||e.transition)return!0;if(s&&a>=0){if(a&1024)return!0;if(a&16)return n?Kn(n,l,u):!!l;if(a&8){const c=e.dynamicProps;for(let h=0;ht.__isSuspense;function Io(t,e){e&&e.pendingBranch?z(t)?e.effects.push(...t):e.effects.push(t):$l(t)}const ke=Symbol.for("v-fgt"),Rs=Symbol.for("v-txt"),dt=Symbol.for("v-cmt"),us=Symbol.for("v-stc"),Wt=[];let Fe=null;function Jt(t=!1){Wt.push(Fe=t?null:[])}function Mo(){Wt.pop(),Fe=Wt[Wt.length-1]||null}let Zt=1;function qn(t,e=!1){Zt+=t,t<0&&Fe&&e&&(Fe.hasOnce=!0)}function Dr(t){return t.dynamicChildren=Zt>0?Fe||_t:null,Mo(),Zt>0&&Fe&&Fe.push(t),t}function kr(t,e,s,n,i,r){return Dr(Ze(t,e,s,n,i,r,!0))}function nn(t,e,s,n,i){return Dr(pe(t,e,s,n,i,!0))}function Xt(t){return t?t.__v_isVNode===!0:!1}function Nt(t,e){return t.type===e.type&&t.key===e.key}const Fr=({key:t})=>t??null,fs=({ref:t,ref_key:e,ref_for:s})=>(typeof t=="number"&&(t=""+t),t!=null?ue(t)||we(t)||G(t)?{i:_e,r:t,k:e,f:!!s}:t:null);function Ze(t,e=null,s=null,n=0,i=null,r=t===ke?0:1,l=!1,o=!1){const a={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&Fr(e),ref:e&&fs(e),scopeId:ar,slotScopeIds:null,children:s,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:r,patchFlag:n,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:_e};return o?(On(a,s),r&128&&t.normalize(a)):s&&(a.shapeFlag|=ue(s)?8:16),Zt>0&&!l&&Fe&&(a.patchFlag>0||r&6)&&a.patchFlag!==32&&Fe.push(a),a}const pe=No;function No(t,e=null,s=null,n=0,i=null,r=!1){if((!t||t===ro)&&(t=dt),Xt(t)){const o=Dt(t,e,!0);return s&&On(o,s),Zt>0&&!r&&Fe&&(o.shapeFlag&6?Fe[Fe.indexOf(t)]=o:Fe.push(o)),o.patchFlag=-2,o}if(Qo(t)&&(t=t.__vccOpts),e){e=Bo(e);let{class:o,style:a}=e;o&&!ue(o)&&(e.class=gn(o)),oe(a)&&(xn(a)&&!z(a)&&(a=he({},a)),e.style=pn(a))}const l=ue(t)?1:Rr(t)?128:Gl(t)?64:oe(t)?4:G(t)?2:0;return Ze(t,e,s,n,i,l,r,!0)}function Bo(t){return t?xn(t)||yr(t)?he({},t):t:null}function Dt(t,e,s=!1,n=!1){const{props:i,ref:r,patchFlag:l,children:o,transition:a}=t,u=e?Uo(i||{},e):i,c={__v_isVNode:!0,__v_skip:!0,type:t.type,props:u,key:u&&Fr(u),ref:e&&e.ref?s&&r?z(r)?r.concat(fs(e)):[r,fs(e)]:fs(e):r,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:o,target:t.target,targetStart:t.targetStart,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==ke?l===-1?16:l|16:l,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:a,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&Dt(t.ssContent),ssFallback:t.ssFallback&&Dt(t.ssFallback),el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return a&&n&&Sn(c,a.clone(c)),c}function hs(t=" ",e=0){return pe(Rs,null,t,e)}function Ho(t,e){const s=pe(us,null,t);return s.staticCount=e,s}function Vo(t="",e=!1){return e?(Jt(),nn(dt,null,t)):pe(dt,null,t)}function Ge(t){return t==null||typeof t=="boolean"?pe(dt):z(t)?pe(ke,null,t.slice()):Xt(t)?ct(t):pe(Rs,null,String(t))}function ct(t){return t.el===null&&t.patchFlag!==-1||t.memo?t:Dt(t)}function On(t,e){let s=0;const{shapeFlag:n}=t;if(e==null)e=null;else if(z(e))s=16;else if(typeof e=="object")if(n&65){const i=e.default;i&&(i._c&&(i._d=!1),On(t,i()),i._c&&(i._d=!0));return}else{s=32;const i=e._;!i&&!yr(e)?e._ctx=_e:i===3&&_e&&(_e.slots._===1?e._=1:(e._=2,t.patchFlag|=1024))}else G(e)?(e={default:e,_ctx:_e},s=32):(e=String(e),n&64?(s=16,e=[hs(e)]):s=8);t.children=e,t.shapeFlag|=s}function Uo(...t){const e={};for(let s=0;s{let i;return(i=t[s])||(i=t[s]=[]),i.push(n),r=>{i.length>1?i.forEach(l=>l(r)):i[0](r)}};ys=e("__VUE_INSTANCE_SETTERS__",s=>ye=s),rn=e("__VUE_SSR_SETTERS__",s=>es=s)}const is=t=>{const e=ye;return ys(t),t.scope.on(),()=>{t.scope.off(),ys(e)}},Yn=()=>{ye&&ye.scope.off(),ys(null)};function Ir(t){return t.vnode.shapeFlag&4}let es=!1;function zo(t,e=!1,s=!1){e&&rn(e);const{props:n,children:i}=t.vnode,r=Ir(t);mo(t,n,r,e),wo(t,i,s);const l=r?Go(t,e):void 0;return e&&rn(!1),l}function Go(t,e){const s=t.type;t.accessCache=Object.create(null),t.proxy=new Proxy(t.ctx,oo);const{setup:n}=s;if(n){pt();const i=t.setupContext=n.length>1?qo(t):null,r=is(t),l=ns(n,t,0,[t.props,i]),o=Pi(l);if(gt(),r(),(o||t.sp)&&!Pt(t)&&cr(t),o){if(l.then(Yn,Yn),e)return l.then(a=>{Qn(t,a,e)}).catch(a=>{Os(a,t,0)});t.asyncDep=l}else Qn(t,l,e)}else Mr(t,e)}function Qn(t,e,s){G(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:oe(e)&&(t.setupState=sr(e)),Mr(t,s)}let Jn;function Mr(t,e,s){const n=t.type;if(!t.render){if(!e&&Jn&&!n.render){const i=n.template||Cn(t).template;if(i){const{isCustomElement:r,compilerOptions:l}=t.appContext.config,{delimiters:o,compilerOptions:a}=n,u=he(he({isCustomElement:r,delimiters:o},l),a);n.render=Jn(i,u)}}t.render=n.render||Ke}{const i=is(t);pt();try{ao(t)}finally{gt(),i()}}}const Ko={get(t,e){return ve(t,"get",""),t[e]}};function qo(t){const e=s=>{t.exposed=s||{}};return{attrs:new Proxy(t.attrs,Ko),slots:t.slots,emit:t.emit,expose:e}}function Tn(t){return t.exposed?t.exposeProxy||(t.exposeProxy=new Proxy(sr(kl(t.exposed)),{get(e,s){if(s in e)return e[s];if(s in $t)return $t[s](t)},has(e,s){return s in e||s in $t}})):t.proxy}function Yo(t,e=!0){return G(t)?t.displayName||t.name:t.name||e&&t.__name}function Qo(t){return G(t)&&"__vccOpts"in t}const He=(t,e)=>Bl(t,e,es);function Nr(t,e,s){const n=arguments.length;return n===2?oe(e)&&!z(e)?Xt(e)?pe(t,null,[e]):pe(t,e):pe(t,null,e):(n>3?s=Array.prototype.slice.call(arguments,2):n===3&&Xt(s)&&(s=[s]),pe(t,e,s))}const Jo="3.5.13";/** +* @vue/runtime-dom v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let ln;const Zn=typeof window<"u"&&window.trustedTypes;if(Zn)try{ln=Zn.createPolicy("vue",{createHTML:t=>t})}catch{}const Br=ln?t=>ln.createHTML(t):t=>t,Zo="http://www.w3.org/2000/svg",Xo="http://www.w3.org/1998/Math/MathML",Xe=typeof document<"u"?document:null,Xn=Xe&&Xe.createElement("template"),ea={insert:(t,e,s)=>{e.insertBefore(t,s||null)},remove:t=>{const e=t.parentNode;e&&e.removeChild(t)},createElement:(t,e,s,n)=>{const i=e==="svg"?Xe.createElementNS(Zo,t):e==="mathml"?Xe.createElementNS(Xo,t):s?Xe.createElement(t,{is:s}):Xe.createElement(t);return t==="select"&&n&&n.multiple!=null&&i.setAttribute("multiple",n.multiple),i},createText:t=>Xe.createTextNode(t),createComment:t=>Xe.createComment(t),setText:(t,e)=>{t.nodeValue=e},setElementText:(t,e)=>{t.textContent=e},parentNode:t=>t.parentNode,nextSibling:t=>t.nextSibling,querySelector:t=>Xe.querySelector(t),setScopeId(t,e){t.setAttribute(e,"")},insertStaticContent(t,e,s,n,i,r){const l=s?s.previousSibling:e.lastChild;if(i&&(i===r||i.nextSibling))for(;e.insertBefore(i.cloneNode(!0),s),!(i===r||!(i=i.nextSibling)););else{Xn.innerHTML=Br(n==="svg"?`${t}`:n==="mathml"?`${t}`:t);const o=Xn.content;if(n==="svg"||n==="mathml"){const a=o.firstChild;for(;a.firstChild;)o.appendChild(a.firstChild);o.removeChild(a)}e.insertBefore(o,s)}return[l?l.nextSibling:e.firstChild,s?s.previousSibling:e.lastChild]}},ta=Symbol("_vtc");function sa(t,e,s){const n=t[ta];n&&(e=(e?[e,...n]:[...n]).join(" ")),e==null?t.removeAttribute("class"):s?t.setAttribute("class",e):t.className=e}const ei=Symbol("_vod"),na=Symbol("_vsh"),ia=Symbol(""),ra=/(^|;)\s*display\s*:/;function la(t,e,s){const n=t.style,i=ue(s);let r=!1;if(s&&!i){if(e)if(ue(e))for(const l of e.split(";")){const o=l.slice(0,l.indexOf(":")).trim();s[o]==null&&ds(n,o,"")}else for(const l in e)s[l]==null&&ds(n,l,"");for(const l in s)l==="display"&&(r=!0),ds(n,l,s[l])}else if(i){if(e!==s){const l=n[ia];l&&(s+=";"+l),n.cssText=s,r=ra.test(s)}}else e&&t.removeAttribute("style");ei in t&&(t[ei]=r?n.display:"",t[na]&&(n.display="none"))}const ti=/\s*!important$/;function ds(t,e,s){if(z(s))s.forEach(n=>ds(t,e,n));else if(s==null&&(s=""),e.startsWith("--"))t.setProperty(e,s);else{const n=oa(t,e);ti.test(s)?t.setProperty(xt(n),s.replace(ti,""),"important"):t[n]=s}}const si=["Webkit","Moz","ms"],Us={};function oa(t,e){const s=Us[e];if(s)return s;let n=Me(e);if(n!=="filter"&&n in t)return Us[e]=n;n=xs(n);for(let i=0;ijs||(ha.then(()=>js=0),js=Date.now());function pa(t,e){const s=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=s.attached)return;qe(ga(n,s.value),e,5,[n])};return s.value=t,s.attached=da(),s}function ga(t,e){if(z(e)){const s=t.stopImmediatePropagation;return t.stopImmediatePropagation=()=>{s.call(t),t._stopped=!0},e.map(n=>i=>!i._stopped&&n&&n(i))}else return e}const ai=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>96&&t.charCodeAt(2)<123,ma=(t,e,s,n,i,r)=>{const l=i==="svg";e==="class"?sa(t,n,l):e==="style"?la(t,s,n):ys(e)?fn(e)||ua(t,e,s,n,r):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):va(t,e,n,l))?(ri(t,e,n),!t.tagName.includes("-")&&(e==="value"||e==="checked"||e==="selected")&&ii(t,e,n,l,r,e!=="value")):t._isVueCE&&(/[A-Z]/.test(e)||!ue(n))?ri(t,Me(e),n,r,e):(e==="true-value"?t._trueValue=n:e==="false-value"&&(t._falseValue=n),ii(t,e,n,l))};function va(t,e,s,n){if(n)return!!(e==="innerHTML"||e==="textContent"||e in t&&ai(e)&&G(s));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="form"||e==="list"&&t.tagName==="INPUT"||e==="type"&&t.tagName==="TEXTAREA")return!1;if(e==="width"||e==="height"){const i=t.tagName;if(i==="IMG"||i==="VIDEO"||i==="CANVAS"||i==="SOURCE")return!1}return ai(e)&&ue(s)?!1:e in t}const ba=he({patchProp:ma},ea);let ci;function ya(){return ci||(ci=xo(ba))}const wa=(...t)=>{const e=ya().createApp(...t),{mount:s}=e;return e.mount=n=>{const i=xa(n);if(!i)return;const r=e._component;!G(r)&&!r.render&&!r.template&&(r.template=i.innerHTML),i.nodeType===1&&(i.textContent="");const l=s(i,!1,Aa(i));return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),l},e};function Aa(t){if(t instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&t instanceof MathMLElement)return"mathml"}function xa(t){return ue(t)?document.querySelector(t):t}const Ea="modulepreload",Sa=function(t){return"/"+t},ui={},Qe=function(e,s,n){let i=Promise.resolve();if(s&&s.length>0){document.getElementsByTagName("link");const l=document.querySelector("meta[property=csp-nonce]"),o=(l==null?void 0:l.nonce)||(l==null?void 0:l.getAttribute("nonce"));i=Promise.allSettled(s.map(a=>{if(a=Sa(a),a in ui)return;ui[a]=!0;const u=a.endsWith(".css"),c=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${a}"]${c}`))return;const h=document.createElement("link");if(h.rel=u?"stylesheet":Ea,u||(h.as="script"),h.crossOrigin="",h.href=a,o&&h.setAttribute("nonce",o),document.head.appendChild(h),u)return new Promise((p,g)=>{h.addEventListener("load",p),h.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${a}`)))})}))}function r(l){const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=l,window.dispatchEvent(o),!o.defaultPrevented)throw l}return i.then(l=>{for(const o of l||[])o.status==="rejected"&&r(o.reason);return e().catch(r)})};/*! +**/let ln;const Zn=typeof window<"u"&&window.trustedTypes;if(Zn)try{ln=Zn.createPolicy("vue",{createHTML:t=>t})}catch{}const Br=ln?t=>ln.createHTML(t):t=>t,Zo="http://www.w3.org/2000/svg",Xo="http://www.w3.org/1998/Math/MathML",Xe=typeof document<"u"?document:null,Xn=Xe&&Xe.createElement("template"),ea={insert:(t,e,s)=>{e.insertBefore(t,s||null)},remove:t=>{const e=t.parentNode;e&&e.removeChild(t)},createElement:(t,e,s,n)=>{const i=e==="svg"?Xe.createElementNS(Zo,t):e==="mathml"?Xe.createElementNS(Xo,t):s?Xe.createElement(t,{is:s}):Xe.createElement(t);return t==="select"&&n&&n.multiple!=null&&i.setAttribute("multiple",n.multiple),i},createText:t=>Xe.createTextNode(t),createComment:t=>Xe.createComment(t),setText:(t,e)=>{t.nodeValue=e},setElementText:(t,e)=>{t.textContent=e},parentNode:t=>t.parentNode,nextSibling:t=>t.nextSibling,querySelector:t=>Xe.querySelector(t),setScopeId(t,e){t.setAttribute(e,"")},insertStaticContent(t,e,s,n,i,r){const l=s?s.previousSibling:e.lastChild;if(i&&(i===r||i.nextSibling))for(;e.insertBefore(i.cloneNode(!0),s),!(i===r||!(i=i.nextSibling)););else{Xn.innerHTML=Br(n==="svg"?`${t}`:n==="mathml"?`${t}`:t);const o=Xn.content;if(n==="svg"||n==="mathml"){const a=o.firstChild;for(;a.firstChild;)o.appendChild(a.firstChild);o.removeChild(a)}e.insertBefore(o,s)}return[l?l.nextSibling:e.firstChild,s?s.previousSibling:e.lastChild]}},ta=Symbol("_vtc");function sa(t,e,s){const n=t[ta];n&&(e=(e?[e,...n]:[...n]).join(" ")),e==null?t.removeAttribute("class"):s?t.setAttribute("class",e):t.className=e}const ei=Symbol("_vod"),na=Symbol("_vsh"),ia=Symbol(""),ra=/(^|;)\s*display\s*:/;function la(t,e,s){const n=t.style,i=ue(s);let r=!1;if(s&&!i){if(e)if(ue(e))for(const l of e.split(";")){const o=l.slice(0,l.indexOf(":")).trim();s[o]==null&&ds(n,o,"")}else for(const l in e)s[l]==null&&ds(n,l,"");for(const l in s)l==="display"&&(r=!0),ds(n,l,s[l])}else if(i){if(e!==s){const l=n[ia];l&&(s+=";"+l),n.cssText=s,r=ra.test(s)}}else e&&t.removeAttribute("style");ei in t&&(t[ei]=r?n.display:"",t[na]&&(n.display="none"))}const ti=/\s*!important$/;function ds(t,e,s){if(z(s))s.forEach(n=>ds(t,e,n));else if(s==null&&(s=""),e.startsWith("--"))t.setProperty(e,s);else{const n=oa(t,e);ti.test(s)?t.setProperty(xt(n),s.replace(ti,""),"important"):t[n]=s}}const si=["Webkit","Moz","ms"],js={};function oa(t,e){const s=js[e];if(s)return s;let n=Me(e);if(n!=="filter"&&n in t)return js[e]=n;n=Es(n);for(let i=0;i$s||(ha.then(()=>$s=0),$s=Date.now());function pa(t,e){const s=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=s.attached)return;qe(ga(n,s.value),e,5,[n])};return s.value=t,s.attached=da(),s}function ga(t,e){if(z(e)){const s=t.stopImmediatePropagation;return t.stopImmediatePropagation=()=>{s.call(t),t._stopped=!0},e.map(n=>i=>!i._stopped&&n&&n(i))}else return e}const ai=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>96&&t.charCodeAt(2)<123,ma=(t,e,s,n,i,r)=>{const l=i==="svg";e==="class"?sa(t,n,l):e==="style"?la(t,s,n):ws(e)?fn(e)||ua(t,e,s,n,r):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):va(t,e,n,l))?(ri(t,e,n),!t.tagName.includes("-")&&(e==="value"||e==="checked"||e==="selected")&&ii(t,e,n,l,r,e!=="value")):t._isVueCE&&(/[A-Z]/.test(e)||!ue(n))?ri(t,Me(e),n,r,e):(e==="true-value"?t._trueValue=n:e==="false-value"&&(t._falseValue=n),ii(t,e,n,l))};function va(t,e,s,n){if(n)return!!(e==="innerHTML"||e==="textContent"||e in t&&ai(e)&&G(s));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="form"||e==="list"&&t.tagName==="INPUT"||e==="type"&&t.tagName==="TEXTAREA")return!1;if(e==="width"||e==="height"){const i=t.tagName;if(i==="IMG"||i==="VIDEO"||i==="CANVAS"||i==="SOURCE")return!1}return ai(e)&&ue(s)?!1:e in t}const ba=he({patchProp:ma},ea);let ci;function ya(){return ci||(ci=xo(ba))}const wa=(...t)=>{const e=ya().createApp(...t),{mount:s}=e;return e.mount=n=>{const i=xa(n);if(!i)return;const r=e._component;!G(r)&&!r.render&&!r.template&&(r.template=i.innerHTML),i.nodeType===1&&(i.textContent="");const l=s(i,!1,Aa(i));return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),l},e};function Aa(t){if(t instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&t instanceof MathMLElement)return"mathml"}function xa(t){return ue(t)?document.querySelector(t):t}const Ea="modulepreload",Sa=function(t){return"/"+t},ui={},Qe=function(e,s,n){let i=Promise.resolve();if(s&&s.length>0){document.getElementsByTagName("link");const l=document.querySelector("meta[property=csp-nonce]"),o=(l==null?void 0:l.nonce)||(l==null?void 0:l.getAttribute("nonce"));i=Promise.allSettled(s.map(a=>{if(a=Sa(a),a in ui)return;ui[a]=!0;const u=a.endsWith(".css"),c=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${a}"]${c}`))return;const h=document.createElement("link");if(h.rel=u?"stylesheet":Ea,u||(h.as="script"),h.crossOrigin="",h.href=a,o&&h.setAttribute("nonce",o),document.head.appendChild(h),u)return new Promise((p,g)=>{h.addEventListener("load",p),h.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${a}`)))})}))}function r(l){const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=l,window.dispatchEvent(o),!o.defaultPrevented)throw l}return i.then(l=>{for(const o of l||[])o.status==="rejected"&&r(o.reason);return e().catch(r)})};/*! * vue-router v4.4.5 * (c) 2024 Eduardo San Martin Morote * @license MIT - */const Ct=typeof document<"u";function Hr(t){return typeof t=="object"||"displayName"in t||"props"in t||"__vccOpts"in t}function Ca(t){return t.__esModule||t[Symbol.toStringTag]==="Module"||t.default&&Hr(t.default)}const ee=Object.assign;function $s(t,e){const s={};for(const n in e){const i=e[n];s[n]=Ue(i)?i.map(t):t(i)}return s}const zt=()=>{},Ue=Array.isArray,Vr=/#/g,_a=/&/g,Oa=/\//g,Ta=/=/g,La=/\?/g,Ur=/\+/g,Pa=/%5B/g,Ra=/%5D/g,jr=/%5E/g,Da=/%60/g,$r=/%7B/g,Fa=/%7C/g,Wr=/%7D/g,ka=/%20/g;function Ln(t){return encodeURI(""+t).replace(Fa,"|").replace(Pa,"[").replace(Ra,"]")}function Ia(t){return Ln(t).replace($r,"{").replace(Wr,"}").replace(jr,"^")}function on(t){return Ln(t).replace(Ur,"%2B").replace(ka,"+").replace(Vr,"%23").replace(_a,"%26").replace(Da,"`").replace($r,"{").replace(Wr,"}").replace(jr,"^")}function Ma(t){return on(t).replace(Ta,"%3D")}function Na(t){return Ln(t).replace(Vr,"%23").replace(La,"%3F")}function Ba(t){return t==null?"":Na(t).replace(Oa,"%2F")}function ts(t){try{return decodeURIComponent(""+t)}catch{}return""+t}const Ha=/\/$/,Va=t=>t.replace(Ha,"");function Ws(t,e,s="/"){let n,i={},r="",l="";const o=e.indexOf("#");let a=e.indexOf("?");return o=0&&(a=-1),a>-1&&(n=e.slice(0,a),r=e.slice(a+1,o>-1?o:e.length),i=t(r)),o>-1&&(n=n||e.slice(0,o),l=e.slice(o,e.length)),n=Wa(n??e,s),{fullPath:n+(r&&"?")+r+l,path:n,query:i,hash:ts(l)}}function Ua(t,e){const s=e.query?t(e.query):"";return e.path+(s&&"?")+s+(e.hash||"")}function fi(t,e){return!e||!t.toLowerCase().startsWith(e.toLowerCase())?t:t.slice(e.length)||"/"}function ja(t,e,s){const n=e.matched.length-1,i=s.matched.length-1;return n>-1&&n===i&&Ft(e.matched[n],s.matched[i])&&zr(e.params,s.params)&&t(e.query)===t(s.query)&&e.hash===s.hash}function Ft(t,e){return(t.aliasOf||t)===(e.aliasOf||e)}function zr(t,e){if(Object.keys(t).length!==Object.keys(e).length)return!1;for(const s in t)if(!$a(t[s],e[s]))return!1;return!0}function $a(t,e){return Ue(t)?hi(t,e):Ue(e)?hi(e,t):t===e}function hi(t,e){return Ue(e)?t.length===e.length&&t.every((s,n)=>s===e[n]):t.length===1&&t[0]===e}function Wa(t,e){if(t.startsWith("/"))return t;if(!t)return e;const s=e.split("/"),n=t.split("/"),i=n[n.length-1];(i===".."||i===".")&&n.push("");let r=s.length-1,l,o;for(l=0;l1&&r--;else break;return s.slice(0,r).join("/")+"/"+n.slice(l).join("/")}const ot={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var ss;(function(t){t.pop="pop",t.push="push"})(ss||(ss={}));var Gt;(function(t){t.back="back",t.forward="forward",t.unknown=""})(Gt||(Gt={}));function za(t){if(!t)if(Ct){const e=document.querySelector("base");t=e&&e.getAttribute("href")||"/",t=t.replace(/^\w+:\/\/[^\/]+/,"")}else t="/";return t[0]!=="/"&&t[0]!=="#"&&(t="/"+t),Va(t)}const Ga=/^[^#]+#/;function Ka(t,e){return t.replace(Ga,"#")+e}function qa(t,e){const s=document.documentElement.getBoundingClientRect(),n=t.getBoundingClientRect();return{behavior:e.behavior,left:n.left-s.left-(e.left||0),top:n.top-s.top-(e.top||0)}}const Rs=()=>({left:window.scrollX,top:window.scrollY});function Ya(t){let e;if("el"in t){const s=t.el,n=typeof s=="string"&&s.startsWith("#"),i=typeof s=="string"?n?document.getElementById(s.slice(1)):document.querySelector(s):s;if(!i)return;e=qa(i,t)}else e=t;"scrollBehavior"in document.documentElement.style?window.scrollTo(e):window.scrollTo(e.left!=null?e.left:window.scrollX,e.top!=null?e.top:window.scrollY)}function di(t,e){return(history.state?history.state.position-e:-1)+t}const an=new Map;function Qa(t,e){an.set(t,e)}function Ja(t){const e=an.get(t);return an.delete(t),e}let Za=()=>location.protocol+"//"+location.host;function Gr(t,e){const{pathname:s,search:n,hash:i}=e,r=t.indexOf("#");if(r>-1){let o=i.includes(t.slice(r))?t.slice(r).length:1,a=i.slice(o);return a[0]!=="/"&&(a="/"+a),fi(a,"")}return fi(s,t)+n+i}function Xa(t,e,s,n){let i=[],r=[],l=null;const o=({state:p})=>{const g=Gr(t,location),T=s.value,O=e.value;let R=0;if(p){if(s.value=g,e.value=p,l&&l===T){l=null;return}R=O?p.position-O.position:0}else n(g);i.forEach(D=>{D(s.value,T,{delta:R,type:ss.pop,direction:R?R>0?Gt.forward:Gt.back:Gt.unknown})})};function a(){l=s.value}function u(p){i.push(p);const g=()=>{const T=i.indexOf(p);T>-1&&i.splice(T,1)};return r.push(g),g}function c(){const{history:p}=window;p.state&&p.replaceState(ee({},p.state,{scroll:Rs()}),"")}function h(){for(const p of r)p();r=[],window.removeEventListener("popstate",o),window.removeEventListener("beforeunload",c)}return window.addEventListener("popstate",o),window.addEventListener("beforeunload",c,{passive:!0}),{pauseListeners:a,listen:u,destroy:h}}function pi(t,e,s,n=!1,i=!1){return{back:t,current:e,forward:s,replaced:n,position:window.history.length,scroll:i?Rs():null}}function ec(t){const{history:e,location:s}=window,n={value:Gr(t,s)},i={value:e.state};i.value||r(n.value,{back:null,current:n.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function r(a,u,c){const h=t.indexOf("#"),p=h>-1?(s.host&&document.querySelector("base")?t:t.slice(h))+a:Za()+t+a;try{e[c?"replaceState":"pushState"](u,"",p),i.value=u}catch(g){console.error(g),s[c?"replace":"assign"](p)}}function l(a,u){const c=ee({},e.state,pi(i.value.back,a,i.value.forward,!0),u,{position:i.value.position});r(a,c,!0),n.value=a}function o(a,u){const c=ee({},i.value,e.state,{forward:a,scroll:Rs()});r(c.current,c,!0);const h=ee({},pi(n.value,a,null),{position:c.position+1},u);r(a,h,!1),n.value=a}return{location:n,state:i,push:o,replace:l}}function tc(t){t=za(t);const e=ec(t),s=Xa(t,e.state,e.location,e.replace);function n(r,l=!0){l||s.pauseListeners(),history.go(r)}const i=ee({location:"",base:t,go:n,createHref:Ka.bind(null,t)},e,s);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>e.state.value}),i}function sc(t){return typeof t=="string"||t&&typeof t=="object"}function Kr(t){return typeof t=="string"||typeof t=="symbol"}const qr=Symbol("");var gi;(function(t){t[t.aborted=4]="aborted",t[t.cancelled=8]="cancelled",t[t.duplicated=16]="duplicated"})(gi||(gi={}));function kt(t,e){return ee(new Error,{type:t,[qr]:!0},e)}function Je(t,e){return t instanceof Error&&qr in t&&(e==null||!!(t.type&e))}const mi="[^/]+?",nc={sensitive:!1,strict:!1,start:!0,end:!0},ic=/[.+*?^${}()[\]/\\]/g;function rc(t,e){const s=ee({},nc,e),n=[];let i=s.start?"^":"";const r=[];for(const u of t){const c=u.length?[]:[90];s.strict&&!u.length&&(i+="/");for(let h=0;he.length?e.length===1&&e[0]===80?1:-1:0}function Yr(t,e){let s=0;const n=t.score,i=e.score;for(;s0&&e[e.length-1]<0}const oc={type:0,value:""},ac=/[a-zA-Z0-9_]/;function cc(t){if(!t)return[[]];if(t==="/")return[[oc]];if(!t.startsWith("/"))throw new Error(`Invalid path "${t}"`);function e(g){throw new Error(`ERR (${s})/"${u}": ${g}`)}let s=0,n=s;const i=[];let r;function l(){r&&i.push(r),r=[]}let o=0,a,u="",c="";function h(){u&&(s===0?r.push({type:0,value:u}):s===1||s===2||s===3?(r.length>1&&(a==="*"||a==="+")&&e(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),r.push({type:1,value:u,regexp:c,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):e("Invalid state to consume buffer"),u="")}function p(){u+=a}for(;o{l(v)}:zt}function l(h){if(Kr(h)){const p=n.get(h);p&&(n.delete(h),s.splice(s.indexOf(p),1),p.children.forEach(l),p.alias.forEach(l))}else{const p=s.indexOf(h);p>-1&&(s.splice(p,1),h.record.name&&n.delete(h.record.name),h.children.forEach(l),h.alias.forEach(l))}}function o(){return s}function a(h){const p=pc(h,s);s.splice(p,0,h),h.record.name&&!wi(h)&&n.set(h.record.name,h)}function u(h,p){let g,T={},O,R;if("name"in h&&h.name){if(g=n.get(h.name),!g)throw kt(1,{location:h});R=g.record.name,T=ee(bi(p.params,g.keys.filter(v=>!v.optional).concat(g.parent?g.parent.keys.filter(v=>v.optional):[]).map(v=>v.name)),h.params&&bi(h.params,g.keys.map(v=>v.name))),O=g.stringify(T)}else if(h.path!=null)O=h.path,g=s.find(v=>v.re.test(O)),g&&(T=g.parse(O),R=g.record.name);else{if(g=p.name?n.get(p.name):s.find(v=>v.re.test(p.path)),!g)throw kt(1,{location:h,currentLocation:p});R=g.record.name,T=ee({},p.params,h.params),O=g.stringify(T)}const D=[];let m=g;for(;m;)D.unshift(m.record),m=m.parent;return{name:R,path:O,params:T,matched:D,meta:dc(D)}}t.forEach(h=>r(h));function c(){s.length=0,n.clear()}return{addRoute:r,resolve:u,removeRoute:l,clearRoutes:c,getRoutes:o,getRecordMatcher:i}}function bi(t,e){const s={};for(const n of e)n in t&&(s[n]=t[n]);return s}function yi(t){const e={path:t.path,redirect:t.redirect,name:t.name,meta:t.meta||{},aliasOf:t.aliasOf,beforeEnter:t.beforeEnter,props:hc(t),children:t.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in t?t.components||null:t.component&&{default:t.component}};return Object.defineProperty(e,"mods",{value:{}}),e}function hc(t){const e={},s=t.props||!1;if("component"in t)e.default=s;else for(const n in t.components)e[n]=typeof s=="object"?s[n]:s;return e}function wi(t){for(;t;){if(t.record.aliasOf)return!0;t=t.parent}return!1}function dc(t){return t.reduce((e,s)=>ee(e,s.meta),{})}function Ai(t,e){const s={};for(const n in t)s[n]=n in e?e[n]:t[n];return s}function pc(t,e){let s=0,n=e.length;for(;s!==n;){const r=s+n>>1;Yr(t,e[r])<0?n=r:s=r+1}const i=gc(t);return i&&(n=e.lastIndexOf(i,n-1)),n}function gc(t){let e=t;for(;e=e.parent;)if(Qr(e)&&Yr(t,e)===0)return e}function Qr({record:t}){return!!(t.name||t.components&&Object.keys(t.components).length||t.redirect)}function mc(t){const e={};if(t===""||t==="?")return e;const n=(t[0]==="?"?t.slice(1):t).split("&");for(let i=0;ir&&on(r)):[n&&on(n)]).forEach(r=>{r!==void 0&&(e+=(e.length?"&":"")+s,r!=null&&(e+="="+r))})}return e}function vc(t){const e={};for(const s in t){const n=t[s];n!==void 0&&(e[s]=Ue(n)?n.map(i=>i==null?null:""+i):n==null?n:""+n)}return e}const bc=Symbol(""),Ei=Symbol(""),Pn=Symbol(""),Jr=Symbol(""),cn=Symbol("");function Bt(){let t=[];function e(n){return t.push(n),()=>{const i=t.indexOf(n);i>-1&&t.splice(i,1)}}function s(){t=[]}return{add:e,list:()=>t.slice(),reset:s}}function ut(t,e,s,n,i,r=l=>l()){const l=n&&(n.enterCallbacks[i]=n.enterCallbacks[i]||[]);return()=>new Promise((o,a)=>{const u=p=>{p===!1?a(kt(4,{from:s,to:e})):p instanceof Error?a(p):sc(p)?a(kt(2,{from:e,to:p})):(l&&n.enterCallbacks[i]===l&&typeof p=="function"&&l.push(p),o())},c=r(()=>t.call(n&&n.instances[i],e,s,u));let h=Promise.resolve(c);t.length<3&&(h=h.then(u)),h.catch(p=>a(p))})}function zs(t,e,s,n,i=r=>r()){const r=[];for(const l of t)for(const o in l.components){let a=l.components[o];if(!(e!=="beforeRouteEnter"&&!l.instances[o]))if(Hr(a)){const c=(a.__vccOpts||a)[e];c&&r.push(ut(c,s,n,l,o,i))}else{let u=a();r.push(()=>u.then(c=>{if(!c)throw new Error(`Couldn't resolve component "${o}" at "${l.path}"`);const h=Ca(c)?c.default:c;l.mods[o]=c,l.components[o]=h;const g=(h.__vccOpts||h)[e];return g&&ut(g,s,n,l,o,i)()}))}}return r}function Si(t){const e=tt(Pn),s=tt(Jr),n=He(()=>{const a=wt(t.to);return e.resolve(a)}),i=He(()=>{const{matched:a}=n.value,{length:u}=a,c=a[u-1],h=s.matched;if(!c||!h.length)return-1;const p=h.findIndex(Ft.bind(null,c));if(p>-1)return p;const g=Ci(a[u-2]);return u>1&&Ci(c)===g&&h[h.length-1].path!==g?h.findIndex(Ft.bind(null,a[u-2])):p}),r=He(()=>i.value>-1&&xc(s.params,n.value.params)),l=He(()=>i.value>-1&&i.value===s.matched.length-1&&zr(s.params,n.value.params));function o(a={}){return Ac(a)?e[wt(t.replace)?"replace":"push"](wt(t.to)).catch(zt):Promise.resolve()}return{route:n,href:He(()=>n.value.href),isActive:r,isExactActive:l,navigate:o}}const yc=Os({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:Si,setup(t,{slots:e}){const s=Cs(Si(t)),{options:n}=tt(Pn),i=He(()=>({[_i(t.activeClass,n.linkActiveClass,"router-link-active")]:s.isActive,[_i(t.exactActiveClass,n.linkExactActiveClass,"router-link-exact-active")]:s.isExactActive}));return()=>{const r=e.default&&e.default(s);return t.custom?r:Nr("a",{"aria-current":s.isExactActive?t.ariaCurrentValue:null,href:s.href,onClick:s.navigate,class:i.value},r)}}}),wc=yc;function Ac(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&!(t.button!==void 0&&t.button!==0)){if(t.currentTarget&&t.currentTarget.getAttribute){const e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function xc(t,e){for(const s in e){const n=e[s],i=t[s];if(typeof n=="string"){if(n!==i)return!1}else if(!Ue(i)||i.length!==n.length||n.some((r,l)=>r!==i[l]))return!1}return!0}function Ci(t){return t?t.aliasOf?t.aliasOf.path:t.path:""}const _i=(t,e,s)=>t??e??s,Ec=Os({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(t,{attrs:e,slots:s}){const n=tt(cn),i=He(()=>t.route||n.value),r=tt(Ei,0),l=He(()=>{let u=wt(r);const{matched:c}=i.value;let h;for(;(h=c[u])&&!h.components;)u++;return u}),o=He(()=>i.value.matched[l.value]);as(Ei,He(()=>l.value+1)),as(bc,o),as(cn,i);const a=er();return cs(()=>[a.value,o.value,t.name],([u,c,h],[p,g,T])=>{c&&(c.instances[h]=u,g&&g!==c&&u&&u===p&&(c.leaveGuards.size||(c.leaveGuards=g.leaveGuards),c.updateGuards.size||(c.updateGuards=g.updateGuards))),u&&c&&(!g||!Ft(c,g)||!p)&&(c.enterCallbacks[h]||[]).forEach(O=>O(u))},{flush:"post"}),()=>{const u=i.value,c=t.name,h=o.value,p=h&&h.components[c];if(!p)return Oi(s.default,{Component:p,route:u});const g=h.props[c],T=g?g===!0?u.params:typeof g=="function"?g(u):g:null,R=Nr(p,ee({},T,e,{onVnodeUnmounted:D=>{D.component.isUnmounted&&(h.instances[c]=null)},ref:a}));return Oi(s.default,{Component:R,route:u})||R}}});function Oi(t,e){if(!t)return null;const s=t(e);return s.length===1?s[0]:s}const Sc=Ec;function Cc(t){const e=fc(t.routes,t),s=t.parseQuery||mc,n=t.stringifyQuery||xi,i=t.history,r=Bt(),l=Bt(),o=Bt(),a=kl(ot);let u=ot;Ct&&t.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const c=$s.bind(null,w=>""+w),h=$s.bind(null,Ba),p=$s.bind(null,ts);function g(w,M){let F,B;return Kr(w)?(F=e.getRecordMatcher(w),B=M):B=w,e.addRoute(B,F)}function T(w){const M=e.getRecordMatcher(w);M&&e.removeRoute(M)}function O(){return e.getRoutes().map(w=>w.record)}function R(w){return!!e.getRecordMatcher(w)}function D(w,M){if(M=ee({},M||a.value),typeof w=="string"){const d=Ws(s,w,M.path),b=e.resolve({path:d.path},M),E=i.createHref(d.fullPath);return ee(d,b,{params:p(b.params),hash:ts(d.hash),redirectedFrom:void 0,href:E})}let F;if(w.path!=null)F=ee({},w,{path:Ws(s,w.path,M.path).path});else{const d=ee({},w.params);for(const b in d)d[b]==null&&delete d[b];F=ee({},w,{params:h(d)}),M.params=h(M.params)}const B=e.resolve(F,M),K=w.hash||"";B.params=c(p(B.params));const le=Ua(n,ee({},w,{hash:Ia(K),path:B.path})),f=i.createHref(le);return ee({fullPath:le,hash:K,query:n===xi?vc(w.query):w.query||{}},B,{redirectedFrom:void 0,href:f})}function m(w){return typeof w=="string"?Ws(s,w,a.value.path):ee({},w)}function v(w,M){if(u!==w)return kt(8,{from:M,to:w})}function y(w){return k(w)}function x(w){return y(ee(m(w),{replace:!0}))}function _(w){const M=w.matched[w.matched.length-1];if(M&&M.redirect){const{redirect:F}=M;let B=typeof F=="function"?F(w):F;return typeof B=="string"&&(B=B.includes("?")||B.includes("#")?B=m(B):{path:B},B.params={}),ee({query:w.query,hash:w.hash,params:B.path!=null?{}:w.params},B)}}function k(w,M){const F=u=D(w),B=a.value,K=w.state,le=w.force,f=w.replace===!0,d=_(F);if(d)return k(ee(m(d),{state:typeof d=="object"?ee({},K,d.state):K,force:le,replace:f}),M||F);const b=F;b.redirectedFrom=M;let E;return!le&&ja(n,B,F)&&(E=kt(16,{to:b,from:B}),xe(B,B,!0,!1)),(E?Promise.resolve(E):Y(b,B)).catch(A=>Je(A)?Je(A,2)?A:Ae(A):j(A,b,B)).then(A=>{if(A){if(Je(A,2))return k(ee({replace:f},m(A.to),{state:typeof A.to=="object"?ee({},K,A.to.state):K,force:le}),M||b)}else A=ge(b,B,!0,f,K);return re(b,B,A),A})}function W(w,M){const F=v(w,M);return F?Promise.reject(F):Promise.resolve()}function H(w){const M=Ee.values().next().value;return M&&typeof M.runWithContext=="function"?M.runWithContext(w):w()}function Y(w,M){let F;const[B,K,le]=_c(w,M);F=zs(B.reverse(),"beforeRouteLeave",w,M);for(const d of B)d.leaveGuards.forEach(b=>{F.push(ut(b,w,M))});const f=W.bind(null,w,M);return F.push(f),de(F).then(()=>{F=[];for(const d of r.list())F.push(ut(d,w,M));return F.push(f),de(F)}).then(()=>{F=zs(K,"beforeRouteUpdate",w,M);for(const d of K)d.updateGuards.forEach(b=>{F.push(ut(b,w,M))});return F.push(f),de(F)}).then(()=>{F=[];for(const d of le)if(d.beforeEnter)if(Ue(d.beforeEnter))for(const b of d.beforeEnter)F.push(ut(b,w,M));else F.push(ut(d.beforeEnter,w,M));return F.push(f),de(F)}).then(()=>(w.matched.forEach(d=>d.enterCallbacks={}),F=zs(le,"beforeRouteEnter",w,M,H),F.push(f),de(F))).then(()=>{F=[];for(const d of l.list())F.push(ut(d,w,M));return F.push(f),de(F)}).catch(d=>Je(d,8)?d:Promise.reject(d))}function re(w,M,F){o.list().forEach(B=>H(()=>B(w,M,F)))}function ge(w,M,F,B,K){const le=v(w,M);if(le)return le;const f=M===ot,d=Ct?history.state:{};F&&(B||f?i.replace(w.fullPath,ee({scroll:f&&d&&d.scroll},K)):i.push(w.fullPath,K)),a.value=w,xe(w,M,F,f),Ae()}let Oe;function it(){Oe||(Oe=i.listen((w,M,F)=>{if(!je.listening)return;const B=D(w),K=_(B);if(K){k(ee(K,{replace:!0}),B).catch(zt);return}u=B;const le=a.value;Ct&&Qa(di(le.fullPath,F.delta),Rs()),Y(B,le).catch(f=>Je(f,12)?f:Je(f,2)?(k(f.to,B).then(d=>{Je(d,20)&&!F.delta&&F.type===ss.pop&&i.go(-1,!1)}).catch(zt),Promise.reject()):(F.delta&&i.go(-F.delta,!1),j(f,B,le))).then(f=>{f=f||ge(B,le,!1),f&&(F.delta&&!Je(f,8)?i.go(-F.delta,!1):F.type===ss.pop&&Je(f,20)&&i.go(-1,!1)),re(B,le,f)}).catch(zt)}))}let rt=Bt(),ae=Bt(),Q;function j(w,M,F){Ae(w);const B=ae.list();return B.length?B.forEach(K=>K(w,M,F)):console.error(w),Promise.reject(w)}function ce(){return Q&&a.value!==ot?Promise.resolve():new Promise((w,M)=>{rt.add([w,M])})}function Ae(w){return Q||(Q=!w,it(),rt.list().forEach(([M,F])=>w?F(w):M()),rt.reset()),w}function xe(w,M,F,B){const{scrollBehavior:K}=t;if(!Ct||!K)return Promise.resolve();const le=!F&&Ja(di(w.fullPath,0))||(B||!F)&&history.state&&history.state.scroll||null;return ir().then(()=>K(w,M,le)).then(f=>f&&Ya(f)).catch(f=>j(f,w,M))}const te=w=>i.go(w);let lt;const Ee=new Set,je={currentRoute:a,listening:!0,addRoute:g,removeRoute:T,clearRoutes:e.clearRoutes,hasRoute:R,getRoutes:O,resolve:D,options:t,push:y,replace:x,go:te,back:()=>te(-1),forward:()=>te(1),beforeEach:r.add,beforeResolve:l.add,afterEach:o.add,onError:ae.add,isReady:ce,install(w){const M=this;w.component("RouterLink",wc),w.component("RouterView",Sc),w.config.globalProperties.$router=M,Object.defineProperty(w.config.globalProperties,"$route",{enumerable:!0,get:()=>wt(a)}),Ct&&!lt&&a.value===ot&&(lt=!0,y(i.location).catch(K=>{}));const F={};for(const K in ot)Object.defineProperty(F,K,{get:()=>a.value[K],enumerable:!0});w.provide(Pn,M),w.provide(Jr,Zi(F)),w.provide(cn,a);const B=w.unmount;Ee.add(w),w.unmount=function(){Ee.delete(w),Ee.size<1&&(u=ot,Oe&&Oe(),Oe=null,a.value=ot,lt=!1,Q=!1),B()}}};function de(w){return w.reduce((M,F)=>M.then(()=>H(F)),Promise.resolve())}return je}function _c(t,e){const s=[],n=[],i=[],r=Math.max(e.matched.length,t.matched.length);for(let l=0;lFt(u,o))?n.push(o):s.push(o));const a=t.matched[l];a&&(e.matched.find(u=>Ft(u,a))||i.push(a))}return[s,n,i]}const Oc=Cc({history:tc(),linkActiveClass:"active",routes:[{path:"/",name:"Home",component:()=>Qe(()=>import("./home.js"),__vite__mapDeps([0,1]))},{path:"/install",name:"Install",component:()=>Qe(()=>import("./install.js"),[])},{path:"/selects",name:"Selects",component:()=>Qe(()=>import("./selects.js"),[])},{path:"/data",name:"Data",component:()=>Qe(()=>import("./data.js"),[])},{path:"/examples",name:"Examples",component:()=>Qe(()=>import("./index2.js"),__vite__mapDeps([2,3]))},{path:"/settings",name:"Settings",component:()=>Qe(()=>import("./index3.js"),__vite__mapDeps([4,5]))},{path:"/events",name:"Events",component:()=>Qe(()=>import("./index4.js"),[])},{path:"/methods",name:"Methods",component:()=>Qe(()=>import("./index5.js"),[])},{path:"/vue",name:"Vue",component:()=>Qe(()=>import("./vue.js"),[])}]});class Tc{constructor(e){e||(e={}),this.main=e.main||"ss-main",this.placeholder=e.placeholder||"ss-placeholder",this.values=e.values||"ss-values",this.single=e.single||"ss-single",this.max=e.max||"ss-max",this.value=e.value||"ss-value",this.valueText=e.valueText||"ss-value-text",this.valueDelete=e.valueDelete||"ss-value-delete",this.valueOut=e.valueOut||"ss-value-out",this.deselect=e.deselect||"ss-deselect",this.deselectPath=e.deselectPath||"M10,10 L90,90 M10,90 L90,10",this.arrow=e.arrow||"ss-arrow",this.arrowClose=e.arrowClose||"M10,30 L50,70 L90,30",this.arrowOpen=e.arrowOpen||"M10,70 L50,30 L90,70",this.content=e.content||"ss-content",this.openAbove=e.openAbove||"ss-open-above",this.openBelow=e.openBelow||"ss-open-below",this.search=e.search||"ss-search",this.searchHighlighter=e.searchHighlighter||"ss-search-highlight",this.searching=e.searching||"ss-searching",this.addable=e.addable||"ss-addable",this.addablePath=e.addablePath||"M50,10 L50,90 M10,50 L90,50",this.list=e.list||"ss-list",this.optgroup=e.optgroup||"ss-optgroup",this.optgroupLabel=e.optgroupLabel||"ss-optgroup-label",this.optgroupLabelText=e.optgroupLabelText||"ss-optgroup-label-text",this.optgroupActions=e.optgroupActions||"ss-optgroup-actions",this.optgroupSelectAll=e.optgroupSelectAll||"ss-selectall",this.optgroupSelectAllBox=e.optgroupSelectAllBox||"M60,10 L10,10 L10,90 L90,90 L90,50",this.optgroupSelectAllCheck=e.optgroupSelectAllCheck||"M30,45 L50,70 L90,10",this.optgroupClosable=e.optgroupClosable||"ss-closable",this.option=e.option||"ss-option",this.optionDelete=e.optionDelete||"M10,10 L90,90 M10,90 L90,10",this.highlighted=e.highlighted||"ss-highlighted",this.open=e.open||"ss-open",this.close=e.close||"ss-close",this.selected=e.selected||"ss-selected",this.error=e.error||"ss-error",this.disabled=e.disabled||"ss-disabled",this.hide=e.hide||"ss-hide"}}function Rn(){return Math.random().toString(36).substring(2,10)}function Lc(t,e){function s(i,r){return r&&i&&i.classList&&i.classList.contains(r)||r&&i&&i.dataset&&i.dataset.id&&i.dataset.id===e?i:null}function n(i,r){return!i||i===document?null:s(i,r)?i:n(i.parentNode,r)}return s(t,e)||n(t,e)}function Kt(t,e=50,s=!1){let n;return function(...i){const r=self,l=()=>{n=null,s||t.apply(r,i)},o=s&&!n;clearTimeout(n),n=setTimeout(l,e),o&&t.apply(r,i)}}function Gs(t,e){return JSON.stringify(t)===JSON.stringify(e)}function Pc(t){const e=t.replace(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g,s=>"-"+s.toLowerCase());return t[0]===t[0].toUpperCase()?e.substring(1):e}class Be{constructor(e){if(this.id=!e.id||e.id===""?Rn():e.id,this.label=e.label||"",this.selectAll=e.selectAll===void 0?!1:e.selectAll,this.selectAllText=e.selectAllText||"Select All",this.closable=e.closable||"off",this.options=[],e.options)for(const s of e.options)this.options.push(new fe(s))}}class fe{constructor(e){this.id=!e.id||e.id===""?Rn():e.id,this.value=e.value===void 0?e.text:e.value,this.text=e.text||"",this.html=e.html||"",this.selected=e.selected!==void 0?e.selected:!1,this.display=e.display!==void 0?e.display:!0,this.disabled=e.disabled!==void 0?e.disabled:!1,this.mandatory=e.mandatory!==void 0?e.mandatory:!1,this.placeholder=e.placeholder!==void 0?e.placeholder:!1,this.class=e.class||"",this.style=e.style||"",this.data=e.data||{}}}class Rc{constructor(e,s){this.selectType="single",this.data=[],this.selectedOrder=[],this.selectType=e,this.setData(s)}validateDataArray(e){if(!Array.isArray(e))return new Error("Data must be an array");for(let s of e)if(s instanceof Be||"label"in s){if(!("label"in s))return new Error("Optgroup must have a label");if("options"in s&&s.options)for(let n of s.options){const i=this.validateOption(n);if(i)return i}}else if(s instanceof fe||"text"in s){const n=this.validateOption(s);if(n)return n}else return new Error("Data object must be a valid optgroup or option");return null}validateOption(e){return"text"in e?null:new Error("Option must have a text")}partialToFullData(e){let s=[];return e.forEach(n=>{if(n instanceof Be||"label"in n){let i=[];"options"in n&&n.options&&n.options.forEach(r=>{i.push(new fe(r))}),i.length>0&&s.push(new Be(n))}(n instanceof fe||"text"in n)&&s.push(new fe(n))}),s}setData(e){this.data=this.partialToFullData(e),this.selectType==="single"&&this.setSelectedBy("id",this.getSelected())}getData(){return this.filter(null,!0)}getDataOptions(){return this.filter(null,!1)}addOption(e,s=!1){if(s){let n=[new fe(e)];this.setData(n.concat(this.getData()))}else this.setData(this.getData().concat(new fe(e)))}setSelectedBy(e,s){let n=null,i=!1;const r=[];for(let o of this.data){if(o instanceof Be)for(let a of o.options)n||(n=a),a.selected=i?!1:s.includes(a[e]),a.selected&&(r.push(a),this.selectType==="single"&&(i=!0));o instanceof fe&&(n||(n=o),o.selected=i?!1:s.includes(o[e]),o.selected&&(r.push(o),this.selectType==="single"&&(i=!0)))}this.selectType==="single"&&n&&!i&&(n.selected=!0,r.push(n));const l=s.map(o=>{var a;return((a=r.find(u=>u[e]===o))==null?void 0:a.id)||""});this.selectedOrder=l}getSelected(){return this.getSelectedOptions().map(e=>e.id)}getSelectedValues(){return this.getSelectedOptions().map(e=>e.value)}getSelectedOptions(){return this.filter(e=>e.selected,!1)}getOptgroupByID(e){for(let s of this.data)if(s instanceof Be&&s.id===e)return s;return null}getOptionByID(e){let s=this.filter(n=>n.id===e,!1);return s.length?s[0]:null}getSelectType(){return this.selectType}getFirstOption(){let e=null;for(let s of this.data)if(s instanceof Be?e=s.options[0]:s instanceof fe&&(e=s),e)break;return e}search(e,s){return e=e.trim(),e===""?this.getData():this.filter(n=>s(n,e),!0)}filter(e,s){const n=[];return this.data.forEach(i=>{if(i instanceof Be){let r=[];if(i.options.forEach(l=>{(!e||e(l))&&(s?r.push(new fe(l)):n.push(new fe(l)))}),r.length>0){let l=new Be(i);l.options=r,n.push(l)}}i instanceof fe&&(!e||e(i))&&n.push(new fe(i))}),n}selectedOrderOptions(e){const s=[];return this.selectedOrder.forEach(n=>{const i=e.find(r=>r.id===n);i&&s.push(i)}),e.forEach(n=>{let i=!1;s.forEach(r=>{if(n.id===r.id){i=!0;return}}),i||s.push(n)}),s}}class Dc{constructor(e,s,n,i){this.store=n,this.settings=e,this.classes=s,this.callbacks=i,this.main=this.mainDiv(),this.content=this.contentDiv(),this.updateClassStyles(),this.updateAriaAttributes(),this.settings.contentLocation&&this.settings.contentLocation.appendChild(this.content.main)}enable(){this.main.main.classList.remove(this.classes.disabled),this.content.search.input.disabled=!1}disable(){this.main.main.classList.add(this.classes.disabled),this.content.search.input.disabled=!0}open(){this.main.arrow.path.setAttribute("d",this.classes.arrowOpen),this.main.main.classList.add(this.settings.openPosition==="up"?this.classes.openAbove:this.classes.openBelow),this.main.main.setAttribute("aria-expanded","true"),this.moveContent();const e=this.store.getSelectedOptions();if(e.length){const s=e[e.length-1].id,n=this.content.list.querySelector('[data-id="'+s+'"]');n&&this.ensureElementInView(this.content.list,n)}}close(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.remove(this.classes.openBelow),this.main.main.setAttribute("aria-expanded","false"),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.main.arrow.path.setAttribute("d",this.classes.arrowClose)}updateClassStyles(){if(this.main.main.className="",this.main.main.removeAttribute("style"),this.content.main.className="",this.content.main.removeAttribute("style"),this.main.main.classList.add(this.classes.main),this.content.main.classList.add(this.classes.content),this.settings.style!==""&&(this.main.main.style.cssText=this.settings.style,this.content.main.style.cssText=this.settings.style),this.settings.class.length)for(const e of this.settings.class)e.trim()!==""&&(this.main.main.classList.add(e.trim()),this.content.main.classList.add(e.trim()));this.settings.contentPosition==="relative"&&this.content.main.classList.add("ss-"+this.settings.contentPosition)}updateAriaAttributes(){this.main.main.role="combobox",this.main.main.setAttribute("aria-haspopup","listbox"),this.main.main.setAttribute("aria-controls",this.content.main.id),this.main.main.setAttribute("aria-expanded","false"),this.content.main.setAttribute("role","listbox")}mainDiv(){var u;const e=document.createElement("div");e.dataset.id=this.settings.id,e.setAttribute("aria-label",this.settings.ariaLabel),e.tabIndex=0,e.onkeydown=c=>{switch(c.key){case"ArrowUp":case"ArrowDown":return this.callbacks.open(),c.key==="ArrowDown"?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Enter":case" ":this.callbacks.open();const h=this.content.list.querySelector("."+this.classes.highlighted);return h&&h.click(),!1;case"Escape":return this.callbacks.close(),!1}return!0},e.onclick=c=>{this.settings.disabled||(this.settings.isOpen?this.callbacks.close():this.callbacks.open())};const s=document.createElement("div");s.classList.add(this.classes.values),e.appendChild(s);const n=document.createElement("div");n.classList.add(this.classes.deselect);const i=(u=this.store)==null?void 0:u.getSelectedOptions();!this.settings.allowDeselect||this.settings.isMultiple&&i&&i.length<=0?n.classList.add(this.classes.hide):n.classList.remove(this.classes.hide),n.onclick=c=>{if(c.stopPropagation(),this.settings.disabled)return;let h=!0;const p=this.store.getSelectedOptions(),g=[];if(this.callbacks.beforeChange&&(h=this.callbacks.beforeChange(g,p)===!0),h){if(this.settings.isMultiple)this.callbacks.setSelected([],!1),this.updateDeselectAll();else{const T=this.store.getFirstOption(),O=T?T.id:"";this.callbacks.setSelected(O,!1)}this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(this.store.getSelectedOptions())}};const r=document.createElementNS("http://www.w3.org/2000/svg","svg");r.setAttribute("viewBox","0 0 100 100");const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.deselectPath),r.appendChild(l),n.appendChild(r),e.appendChild(n);const o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.classList.add(this.classes.arrow),o.setAttribute("viewBox","0 0 100 100");const a=document.createElementNS("http://www.w3.org/2000/svg","path");return a.setAttribute("d",this.classes.arrowClose),this.settings.alwaysOpen&&o.classList.add(this.classes.hide),o.appendChild(a),e.appendChild(o),{main:e,values:s,deselect:{main:n,svg:r,path:l},arrow:{main:o,path:a}}}mainFocus(e){e!=="click"&&this.main.main.focus({preventScroll:!0})}placeholder(){const e=this.store.filter(i=>i.placeholder,!1);let s=this.settings.placeholderText;e.length&&(e[0].html!==""?s=e[0].html:e[0].text!==""&&(s=e[0].text));const n=document.createElement("div");return n.classList.add(this.classes.placeholder),n.innerHTML=s,n}renderValues(){if(!this.settings.isMultiple){this.renderSingleValue();return}this.renderMultipleValues(),this.updateDeselectAll()}renderSingleValue(){const e=this.store.filter(n=>n.selected&&!n.placeholder,!1),s=e.length>0?e[0]:null;if(!s)this.main.values.innerHTML=this.placeholder().outerHTML;else{const n=document.createElement("div");n.classList.add(this.classes.single),s.html?n.innerHTML=s.html:n.innerText=s.text,this.main.values.innerHTML=n.outerHTML}!this.settings.allowDeselect||!e.length?this.main.deselect.main.classList.add(this.classes.hide):this.main.deselect.main.classList.remove(this.classes.hide)}renderMultipleValues(){let e=this.main.values.childNodes,s=this.store.filter(i=>i.selected&&i.display,!1);if(s.length===0){this.main.values.innerHTML=this.placeholder().outerHTML;return}else{const i=this.main.values.querySelector("."+this.classes.placeholder);i&&i.remove()}if(s.length>this.settings.maxValuesShown){const i=document.createElement("div");i.classList.add(this.classes.max),i.textContent=this.settings.maxValuesMessage.replace("{number}",s.length.toString()),this.main.values.innerHTML=i.outerHTML;return}else{const i=this.main.values.querySelector("."+this.classes.max);i&&i.remove()}this.settings.keepOrder&&(s=this.store.selectedOrderOptions(s));let n=[];for(let i=0;ia.id===l,!1).length||n.push(r))}for(const i of n)i.classList.add(this.classes.valueOut),setTimeout(()=>{this.main.values.hasChildNodes()&&this.main.values.contains(i)&&this.main.values.removeChild(i)},100);e=this.main.values.childNodes;for(let i=0;i{if(o.preventDefault(),o.stopPropagation(),this.settings.disabled)return;let a=!0;const u=this.store.getSelectedOptions(),c=u.filter(h=>h.selected&&h.id!==e.id,!0);if(!(this.settings.minSelected&&c.length{this.callbacks.search(r.target.value)},100),s.onkeydown=r=>{switch(r.key){case"ArrowUp":case"ArrowDown":return r.key==="ArrowDown"?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Escape":return this.callbacks.close(),!1;case" ":const l=this.content.list.querySelector("."+this.classes.highlighted);return l?(l.click(),!1):!0;case"Enter":if(this.callbacks.addable)return n.click(),!1;{const o=this.content.list.querySelector("."+this.classes.highlighted);if(o)return o.click(),!1}return!0}return!0},e.appendChild(s),this.callbacks.addable){n.classList.add(this.classes.addable);const r=document.createElementNS("http://www.w3.org/2000/svg","svg");r.setAttribute("viewBox","0 0 100 100");const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.addablePath),r.appendChild(l),n.appendChild(r),n.onclick=o=>{if(o.preventDefault(),o.stopPropagation(),!this.callbacks.addable)return;const a=this.content.search.input.value.trim();if(a===""){this.content.search.input.focus();return}const u=h=>{let p=new fe(h);if(this.callbacks.addOption(p),this.settings.isMultiple){let g=this.store.getSelected();g.push(p.id),this.callbacks.setSelected(g,!0)}else this.callbacks.setSelected([p.id],!0);this.callbacks.search(""),this.settings.closeOnSelect&&setTimeout(()=>{this.callbacks.close()},100)},c=this.callbacks.addable(a);c===!1||c===void 0||c===null||(c instanceof Promise?c.then(h=>{typeof h=="string"?u({text:h,value:h}):c instanceof Error?this.renderError(c.message):u(h)}):typeof c=="string"?u({text:c,value:c}):c instanceof Error?this.renderError(c.message):u(c))},e.appendChild(n),i.addable={main:n,svg:r,path:l}}return i}searchFocus(){this.content.search.input.focus()}getOptions(e=!1,s=!1,n=!1){let i="."+this.classes.option;return e&&(i+=":not(."+this.classes.placeholder+")"),s&&(i+=":not(."+this.classes.disabled+")"),n&&(i+=":not(."+this.classes.hide+")"),Array.from(this.content.list.querySelectorAll(i))}highlight(e){const s=this.getOptions(!0,!0,!0);if(s.length===0)return;if(s.length===1&&!s[0].classList.contains(this.classes.highlighted)){s[0].classList.add(this.classes.highlighted);return}let n=!1;for(const i of s)i.classList.contains(this.classes.highlighted)&&(n=!0);if(!n){for(const i of s)if(i.classList.contains(this.classes.selected)){i.classList.add(this.classes.highlighted);break}}for(let i=0;i=0?i-1:s.length-1];o.classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,o);const a=o.parentElement;if(a&&a.classList.contains(this.classes.close)){const u=a.querySelector("."+this.classes.optgroupLabel);u&&u.click()}return}s[e==="down"?0:s.length-1].classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,s[e==="down"?0:s.length-1])}listDiv(){const e=document.createElement("div");return e.classList.add(this.classes.list),e}renderError(e){this.content.list.innerHTML="";const s=document.createElement("div");s.classList.add(this.classes.error),s.textContent=e,this.content.list.appendChild(s)}renderSearching(){this.content.list.innerHTML="";const e=document.createElement("div");e.classList.add(this.classes.searching),e.textContent=this.settings.searchingText,this.content.list.appendChild(e)}renderOptions(e){if(this.content.list.innerHTML="",e.length===0){const s=document.createElement("div");s.classList.add(this.classes.search),this.callbacks.addable?s.innerHTML=this.settings.addableText.replace("{value}",this.content.search.input.value):s.innerHTML=this.settings.searchText,this.content.list.appendChild(s);return}this.settings.allowDeselect&&!this.settings.isMultiple&&(this.store.filter(n=>n.placeholder,!1).length||this.store.addOption(new fe({text:"",value:"",selected:!1,placeholder:!0}),!0));for(const s of e){if(s instanceof Be){const n=document.createElement("div");n.classList.add(this.classes.optgroup);const i=document.createElement("div");i.classList.add(this.classes.optgroupLabel),n.appendChild(i);const r=document.createElement("div");r.classList.add(this.classes.optgroupLabelText),r.textContent=s.label,i.appendChild(r);const l=document.createElement("div");if(l.classList.add(this.classes.optgroupActions),i.appendChild(l),this.settings.isMultiple&&s.selectAll){const o=document.createElement("div");o.classList.add(this.classes.optgroupSelectAll);let a=!0;for(const g of s.options)if(!g.selected){a=!1;break}a&&o.classList.add(this.classes.selected);const u=document.createElement("span");u.textContent=s.selectAllText,o.appendChild(u);const c=document.createElementNS("http://www.w3.org/2000/svg","svg");c.setAttribute("viewBox","0 0 100 100"),o.appendChild(c);const h=document.createElementNS("http://www.w3.org/2000/svg","path");h.setAttribute("d",this.classes.optgroupSelectAllBox),c.appendChild(h);const p=document.createElementNS("http://www.w3.org/2000/svg","path");p.setAttribute("d",this.classes.optgroupSelectAllCheck),c.appendChild(p),o.addEventListener("click",g=>{g.preventDefault(),g.stopPropagation();const T=this.store.getSelected();if(a){const O=T.filter(R=>{for(const D of s.options)if(R===D.id)return!1;return!0});this.callbacks.setSelected(O,!0);return}else{const O=T.concat(s.options.map(R=>R.id));for(const R of s.options)this.store.getOptionByID(R.id)||this.callbacks.addOption(R);this.callbacks.setSelected(O,!0);return}}),l.appendChild(o)}if(s.closable!=="off"){const o=document.createElement("div");o.classList.add(this.classes.optgroupClosable);const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100"),a.classList.add(this.classes.arrow),o.appendChild(a);const u=document.createElementNS("http://www.w3.org/2000/svg","path");a.appendChild(u),s.options.some(c=>c.selected)||this.content.search.input.value.trim()!==""?(o.classList.add(this.classes.open),u.setAttribute("d",this.classes.arrowOpen)):s.closable==="open"?(n.classList.add(this.classes.open),u.setAttribute("d",this.classes.arrowOpen)):s.closable==="close"&&(n.classList.add(this.classes.close),u.setAttribute("d",this.classes.arrowClose)),i.addEventListener("click",c=>{c.preventDefault(),c.stopPropagation(),n.classList.contains(this.classes.close)?(n.classList.remove(this.classes.close),n.classList.add(this.classes.open),u.setAttribute("d",this.classes.arrowOpen)):(n.classList.remove(this.classes.open),n.classList.add(this.classes.close),u.setAttribute("d",this.classes.arrowClose))}),l.appendChild(o)}n.appendChild(i);for(const o of s.options)n.appendChild(this.option(o));this.content.list.appendChild(n)}s instanceof fe&&this.content.list.appendChild(this.option(s))}}option(e){if(e.placeholder){const n=document.createElement("div");return n.classList.add(this.classes.option),n.classList.add(this.classes.hide),n}const s=document.createElement("div");return s.dataset.id=e.id,s.id=e.id,s.classList.add(this.classes.option),s.setAttribute("role","option"),e.class&&e.class.split(" ").forEach(n=>{s.classList.add(n)}),e.style&&(s.style.cssText=e.style),this.settings.searchHighlight&&this.content.search.input.value.trim()!==""?s.innerHTML=this.highlightText(e.html!==""?e.html:e.text,this.content.search.input.value,this.classes.searchHighlighter):e.html!==""?s.innerHTML=e.html:s.textContent=e.text,this.settings.showOptionTooltips&&s.textContent&&s.setAttribute("title",s.textContent),e.display||s.classList.add(this.classes.hide),e.disabled&&s.classList.add(this.classes.disabled),e.selected&&this.settings.hideSelected&&s.classList.add(this.classes.hide),e.selected?(s.classList.add(this.classes.selected),s.setAttribute("aria-selected","true"),this.main.main.setAttribute("aria-activedescendant",s.id)):(s.classList.remove(this.classes.selected),s.setAttribute("aria-selected","false")),s.addEventListener("click",n=>{n.preventDefault(),n.stopPropagation();const i=this.store.getSelected(),r=n.currentTarget,l=String(r.dataset.id);if(e.disabled||e.selected&&!this.settings.allowDeselect||this.settings.isMultiple&&this.settings.maxSelected<=i.length&&!e.selected||this.settings.isMultiple&&this.settings.minSelected>=i.length&&e.selected)return;let o=!1;const a=this.store.getSelectedOptions();let u=[];this.settings.isMultiple&&(e.selected?u=a.filter(c=>c.id!==l):u=a.concat(e)),this.settings.isMultiple||(e.selected?u=[]:u=[e]),this.callbacks.beforeChange||(o=!0),this.callbacks.beforeChange&&(this.callbacks.beforeChange(u,a)===!1?o=!1:o=!0),o&&(this.store.getOptionByID(l)||this.callbacks.addOption(e),this.callbacks.setSelected(u.map(c=>c.id),!1),this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(u))}),s}destroy(){this.main.main.remove(),this.content.main.remove()}highlightText(e,s,n){let i=e;const r=new RegExp("(?![^<]*>)("+s.trim()+")(?![^<]*>[^<>]*${a}`),i}moveContentAbove(){const e=this.main.main.offsetHeight,s=this.content.main.offsetHeight;this.main.main.classList.remove(this.classes.openBelow),this.main.main.classList.add(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.content.main.classList.add(this.classes.openAbove);const n=this.main.main.getBoundingClientRect();this.content.main.style.margin="-"+(e+s-1)+"px 0px 0px 0px",this.content.main.style.top=n.top+n.height+window.scrollY+"px",this.content.main.style.left=n.left+window.scrollX+"px",this.content.main.style.width=n.width+"px"}moveContentBelow(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.add(this.classes.openBelow),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.add(this.classes.openBelow);const e=this.main.main.getBoundingClientRect();this.content.main.style.margin="-1px 0px 0px 0px",this.settings.contentPosition!=="relative"&&(this.content.main.style.top=e.top+e.height+window.scrollY+"px",this.content.main.style.left=e.left+window.scrollX+"px",this.content.main.style.width=e.width+"px")}ensureElementInView(e,s){const n=e.scrollTop+e.offsetTop,i=n+e.clientHeight,r=s.offsetTop,l=r+s.clientHeight;ri&&(e.scrollTop+=l-i)}putContent(){const e=this.main.main.offsetHeight,s=this.main.main.getBoundingClientRect(),n=this.content.main.offsetHeight;return window.innerHeight-(s.top+e)<=n&&s.top>n?"up":"down"}updateDeselectAll(){if(!this.store||!this.settings)return;const e=this.store.getSelectedOptions(),s=e&&e.length>0,n=this.settings.isMultiple,i=this.settings.allowDeselect,r=this.main.deselect.main,l=this.classes.hide;i&&!(n&&!s)?r.classList.remove(l):r.classList.add(l)}}class Fc{constructor(e){this.listen=!1,this.observer=null,this.select=e,this.valueChange=this.valueChange.bind(this),this.select.addEventListener("change",this.valueChange,{passive:!0}),this.observer=new MutationObserver(this.observeCall.bind(this)),this.changeListen(!0)}enable(){this.select.disabled=!1}disable(){this.select.disabled=!0}hideUI(){this.select.tabIndex=-1,this.select.style.display="none",this.select.setAttribute("aria-hidden","true")}showUI(){this.select.removeAttribute("tabindex"),this.select.style.display="",this.select.removeAttribute("aria-hidden")}changeListen(e){this.listen=e,e&&this.observer&&this.observer.observe(this.select,{subtree:!0,childList:!0,attributes:!0}),e||this.observer&&this.observer.disconnect()}valueChange(e){return this.listen&&this.onValueChange&&this.onValueChange(this.getSelectedOptions()),!0}observeCall(e){if(!this.listen)return;let s=!1,n=!1,i=!1;for(const r of e){if(r.target===this.select&&(r.attributeName==="disabled"&&(n=!0),r.attributeName==="class"&&(s=!0),r.type==="childList")){for(const l of r.addedNodes)if(l.nodeName==="OPTION"&&l.value===this.select.value){this.select.dispatchEvent(new Event("change"));break}i=!0}(r.target.nodeName==="OPTGROUP"||r.target.nodeName==="OPTION")&&(i=!0)}s&&this.onClassChange&&this.onClassChange(this.select.className.split(" ")),n&&this.onDisabledChange&&(this.changeListen(!1),this.onDisabledChange(this.select.disabled),this.changeListen(!0)),i&&this.onOptionsChange&&(this.changeListen(!1),this.onOptionsChange(this.getData()),this.changeListen(!0))}getData(){let e=[];const s=this.select.childNodes;for(const n of s)n.nodeName==="OPTGROUP"&&e.push(this.getDataFromOptgroup(n)),n.nodeName==="OPTION"&&e.push(this.getDataFromOption(n));return e}getDataFromOptgroup(e){let s={id:e.id,label:e.label,selectAll:e.dataset?e.dataset.selectall==="true":!1,selectAllText:e.dataset?e.dataset.selectalltext:"Select all",closable:e.dataset?e.dataset.closable:"off",options:[]};const n=e.childNodes;for(const i of n)i.nodeName==="OPTION"&&s.options.push(this.getDataFromOption(i));return s}getDataFromOption(e){return{id:e.id,value:e.value,text:e.text,html:e.dataset&&e.dataset.html?e.dataset.html:"",selected:e.selected,display:e.style.display!=="none",disabled:e.disabled,mandatory:e.dataset?e.dataset.mandatory==="true":!1,placeholder:e.dataset.placeholder==="true",class:e.className,style:e.style.cssText,data:e.dataset}}getSelectedOptions(){let e=[];const s=this.select.childNodes;for(const n of s){if(n.nodeName==="OPTGROUP"){const i=n.childNodes;for(const r of i)if(r.nodeName==="OPTION"){const l=r;l.selected&&e.push(this.getDataFromOption(l))}}if(n.nodeName==="OPTION"){const i=n;i.selected&&e.push(this.getDataFromOption(i))}}return e}getSelectedValues(){return this.getSelectedOptions().map(e=>e.value)}setSelected(e){this.changeListen(!1);const s=this.select.childNodes;for(const n of s){if(n.nodeName==="OPTGROUP"){const r=n.childNodes;for(const l of r)if(l.nodeName==="OPTION"){const o=l;o.selected=e.includes(o.id)}}if(n.nodeName==="OPTION"){const i=n;i.selected=e.includes(i.id)}}this.changeListen(!0)}setSelectedByValue(e){this.changeListen(!1);const s=this.select.childNodes;for(const n of s){if(n.nodeName==="OPTGROUP"){const r=n.childNodes;for(const l of r)if(l.nodeName==="OPTION"){const o=l;o.selected=e.includes(o.value)}}if(n.nodeName==="OPTION"){const i=n;i.selected=e.includes(i.value)}}this.changeListen(!0)}updateSelect(e,s,n){this.changeListen(!1),e&&(this.select.dataset.id=e),s&&(this.select.style.cssText=s),n&&(this.select.className="",n.forEach(i=>{i.trim()!==""&&this.select.classList.add(i.trim())})),this.changeListen(!0)}updateOptions(e){this.changeListen(!1),this.select.innerHTML="";for(const s of e)s instanceof Be&&this.select.appendChild(this.createOptgroup(s)),s instanceof fe&&this.select.appendChild(this.createOption(s));this.select.dispatchEvent(new Event("change",{bubbles:!0})),this.changeListen(!0)}createOptgroup(e){const s=document.createElement("optgroup");if(s.id=e.id,s.label=e.label,e.selectAll&&(s.dataset.selectAll="true"),e.closable!=="off"&&(s.dataset.closable=e.closable),e.options)for(const n of e.options)s.appendChild(this.createOption(n));return s}createOption(e){const s=document.createElement("option");return s.id=e.id,s.value=e.value,s.textContent=e.text,e.html!==""&&s.setAttribute("data-html",e.html),e.selected&&(s.selected=e.selected),e.disabled&&(s.disabled=!0),e.display||(s.style.display="none"),e.placeholder&&s.setAttribute("data-placeholder","true"),e.mandatory&&s.setAttribute("data-mandatory","true"),e.class&&e.class.split(" ").forEach(n=>{s.classList.add(n)}),e.data&&typeof e.data=="object"&&Object.keys(e.data).forEach(n=>{s.setAttribute("data-"+Pc(n),e.data[n])}),s}destroy(){this.changeListen(!1),this.select.removeEventListener("change",this.valueChange),this.observer&&(this.observer.disconnect(),this.observer=null),delete this.select.dataset.id,this.showUI()}}class kc{constructor(e){this.id="",this.style="",this.class=[],this.isMultiple=!1,this.isOpen=!1,this.isFullOpen=!1,this.intervalMove=null,e||(e={}),this.id="ss-"+Rn(),this.style=e.style||"",this.class=e.class||[],this.disabled=e.disabled!==void 0?e.disabled:!1,this.alwaysOpen=e.alwaysOpen!==void 0?e.alwaysOpen:!1,this.showSearch=e.showSearch!==void 0?e.showSearch:!0,this.focusSearch=e.focusSearch!==void 0?e.focusSearch:!0,this.ariaLabel=e.ariaLabel||"Combobox",this.searchPlaceholder=e.searchPlaceholder||"Search",this.searchText=e.searchText||"No Results",this.searchingText=e.searchingText||"Searching...",this.searchHighlight=e.searchHighlight!==void 0?e.searchHighlight:!1,this.closeOnSelect=e.closeOnSelect!==void 0?e.closeOnSelect:!0,this.contentLocation=e.contentLocation||document.body,this.contentPosition=e.contentPosition||"absolute",this.openPosition=e.openPosition||"auto",this.placeholderText=e.placeholderText!==void 0?e.placeholderText:"Select Value",this.allowDeselect=e.allowDeselect!==void 0?e.allowDeselect:!1,this.hideSelected=e.hideSelected!==void 0?e.hideSelected:!1,this.keepOrder=e.keepOrder!==void 0?e.keepOrder:!1,this.showOptionTooltips=e.showOptionTooltips!==void 0?e.showOptionTooltips:!1,this.minSelected=e.minSelected||0,this.maxSelected=e.maxSelected||1e3,this.timeoutDelay=e.timeoutDelay||200,this.maxValuesShown=e.maxValuesShown||20,this.maxValuesMessage=e.maxValuesMessage||"{number} selected",this.addableText=e.addableText||'Press "Enter" to add {value}'}}class Ic{constructor(e){var l;if(this.events={search:void 0,searchFilter:(o,a)=>o.text.toLowerCase().indexOf(a.toLowerCase())!==-1,addable:void 0,beforeChange:void 0,afterChange:void 0,beforeOpen:void 0,afterOpen:void 0,beforeClose:void 0,afterClose:void 0},this.windowResize=Kt(()=>{!this.settings.isOpen&&!this.settings.isFullOpen||this.render.moveContent()}),this.windowScroll=Kt(()=>{!this.settings.isOpen&&!this.settings.isFullOpen||this.render.moveContent()}),this.documentClick=o=>{this.settings.isOpen&&o.target&&!Lc(o.target,this.settings.id)&&this.close(o.type)},this.windowVisibilityChange=()=>{document.hidden&&this.close()},this.selectEl=typeof e.select=="string"?document.querySelector(e.select):e.select,!this.selectEl){e.events&&e.events.error&&e.events.error(new Error("Could not find select element"));return}if(this.selectEl.tagName!=="SELECT"){e.events&&e.events.error&&e.events.error(new Error("Element isnt of type select"));return}this.selectEl.dataset.ssid&&this.destroy(),this.settings=new kc(e.settings),this.cssClasses=new Tc(e.cssClasses);const s=["afterChange","beforeOpen","afterOpen","beforeClose","afterClose"];for(const o in e.events)e.events.hasOwnProperty(o)&&(s.indexOf(o)!==-1?this.events[o]=Kt(e.events[o],100):this.events[o]=e.events[o]);this.settings.disabled=(l=e.settings)!=null&&l.disabled?e.settings.disabled:this.selectEl.disabled,this.settings.isMultiple=this.selectEl.multiple,this.settings.style=this.selectEl.style.cssText,this.settings.class=this.selectEl.className.split(" "),this.select=new Fc(this.selectEl),this.select.updateSelect(this.settings.id,this.settings.style,this.settings.class),this.select.hideUI(),this.select.onValueChange=o=>{this.setSelected(o.map(a=>a.id))},this.select.onClassChange=o=>{this.settings.class=o,this.render.updateClassStyles()},this.select.onDisabledChange=o=>{o?this.disable():this.enable()},this.select.onOptionsChange=o=>{this.setData(o)},this.store=new Rc(this.settings.isMultiple?"multiple":"single",e.data?e.data:this.select.getData()),e.data&&this.select.updateOptions(this.store.getData());const n={open:this.open.bind(this),close:this.close.bind(this),addable:this.events.addable?this.events.addable:void 0,setSelected:this.setSelected.bind(this),addOption:this.addOption.bind(this),search:this.search.bind(this),beforeChange:this.events.beforeChange,afterChange:this.events.afterChange};this.render=new Dc(this.settings,this.cssClasses,this.store,n),this.render.renderValues(),this.render.renderOptions(this.store.getData());const i=this.selectEl.getAttribute("aria-label"),r=this.selectEl.getAttribute("aria-labelledby");i?this.render.main.main.setAttribute("aria-label",i):r&&this.render.main.main.setAttribute("aria-labelledby",r),this.selectEl.parentNode&&this.selectEl.parentNode.insertBefore(this.render.main.main,this.selectEl.nextSibling),window.addEventListener("resize",this.windowResize,!1),this.settings.openPosition==="auto"&&window.addEventListener("scroll",this.windowScroll,!1),document.addEventListener("visibilitychange",this.windowVisibilityChange),this.settings.disabled&&this.disable(),this.settings.alwaysOpen&&this.open(),this.selectEl.slim=this}enable(){this.settings.disabled=!1,this.select.enable(),this.render.enable()}disable(){this.settings.disabled=!0,this.select.disable(),this.render.disable()}getData(){return this.store.getData()}setData(e){const s=this.store.getSelected(),n=this.store.validateDataArray(e);if(n){this.events.error&&this.events.error(n);return}this.store.setData(e);const i=this.store.getData();this.select.updateOptions(i),this.render.renderValues(),this.render.renderOptions(i),this.events.afterChange&&!Gs(s,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}getSelected(){let e=this.store.getSelectedOptions();return this.settings.keepOrder&&(e=this.store.selectedOrderOptions(e)),e.map(s=>s.value)}setSelected(e,s=!0){const n=this.store.getSelected(),i=this.store.getDataOptions();e=Array.isArray(e)?e:[e];const r=[];for(const o of e){if(i.find(a=>a.id==o)){r.push(o);continue}for(const a of i.filter(u=>u.value==o))r.push(a.id)}this.store.setSelectedBy("id",r);const l=this.store.getData();this.select.updateOptions(l),this.render.renderValues(),this.render.content.search.input.value!==""?this.search(this.render.content.search.input.value):this.render.renderOptions(l),s&&this.events.afterChange&&!Gs(n,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}addOption(e){const s=this.store.getSelected();this.store.getDataOptions().some(i=>i.value===(e.value??e.text))||this.store.addOption(e);const n=this.store.getData();this.select.updateOptions(n),this.render.renderValues(),this.render.renderOptions(n),this.events.afterChange&&!Gs(s,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}open(){this.settings.disabled||this.settings.isOpen||(this.events.beforeOpen&&this.events.beforeOpen(),this.render.open(),this.settings.showSearch&&this.settings.focusSearch&&this.render.searchFocus(),this.settings.isOpen=!0,setTimeout(()=>{this.events.afterOpen&&this.events.afterOpen(),this.settings.isOpen&&(this.settings.isFullOpen=!0),document.addEventListener("click",this.documentClick)},this.settings.timeoutDelay),this.settings.contentPosition==="absolute"&&(this.settings.intervalMove&&clearInterval(this.settings.intervalMove),this.settings.intervalMove=setInterval(this.render.moveContent.bind(this.render),500)))}close(e=null){!this.settings.isOpen||this.settings.alwaysOpen||(this.events.beforeClose&&this.events.beforeClose(),this.render.close(),this.render.content.search.input.value!==""&&this.search(""),this.render.mainFocus(e),this.settings.isOpen=!1,this.settings.isFullOpen=!1,setTimeout(()=>{this.events.afterClose&&this.events.afterClose(),document.removeEventListener("click",this.documentClick)},this.settings.timeoutDelay),this.settings.intervalMove&&clearInterval(this.settings.intervalMove))}search(e){if(this.render.content.search.input.value!==e&&(this.render.content.search.input.value=e),!this.events.search){this.render.renderOptions(e===""?this.store.getData():this.store.search(e,this.events.searchFilter));return}this.render.renderSearching();const s=this.events.search(e,this.store.getSelectedOptions());if(s instanceof Promise){s.then(n=>{this.render.renderOptions(this.store.partialToFullData(n))}).catch(n=>{this.render.renderError(typeof n=="string"?n:n.message)});return}else Array.isArray(s)?this.render.renderOptions(this.store.partialToFullData(s)):this.render.renderError("Search event must return a promise or an array of data")}destroy(){document.removeEventListener("click",this.documentClick),window.removeEventListener("resize",this.windowResize,!1),this.settings.openPosition==="auto"&&window.removeEventListener("scroll",this.windowScroll,!1),document.removeEventListener("visibilitychange",this.windowVisibilityChange),this.store.setData([]),this.render.destroy(),this.select.destroy()}}const Mc="CWYDT23U",Nc="slimselectjscom",Bc=Os({__name:"carbonad",setup(t){const e=er(null);let s=!1;return hr(()=>{const n=window.location.hostname==="localhost";if(!s&&!n){s=!0;const i=document.createElement("script");i.id="_carbonads_js",i.src=`//cdn.carbonads.com/carbon.js?serve=${Mc}&placement=${Nc}`,i.async=!0,e.value&&e.value.appendChild(i)}}),(n,i)=>wt(s)?(Jt(),Fr("div",{key:0,class:"carbon-container",ref_key:"container",ref:e},null,512)):Vo("",!0)}}),Hc=Os({name:"App",components:{CarbonAd:Bc},data(){return{nav:null,navDebounce:Kt(()=>{this.setDemensions()},100),year:new Date().getFullYear(),width:0,height:0,navData:[{text:"Home",value:"/",class:"label"},{label:"Install",closable:"close",options:[{text:"npm",value:"install#npm"},{text:"cdn",value:"install#cdn"},{text:"download",value:"install#download"}]},{label:"Selects",closable:"close",options:[{text:"single",value:"selects#single"},{text:"multiple",value:"selects#multiple"}]},{label:"Data",closable:"close",options:[{text:"types",value:"data#types"},{text:"field",value:"data#field"}]},{label:"Examples",closable:"close",options:[{text:"countries",value:"examples#countries"}]},{label:"Settings",closable:"close",options:[{text:"select",value:"settings#select"},{text:"cssClasses",value:"settings#cssClasses"},{text:"alwaysOpen",value:"settings#alwaysOpen"},{text:"contentLocation",value:"settings#contentLocation"},{text:"contentPosition",value:"settings#contentPosition"},{text:"openPosition",value:"settings#openPosition"},{text:"placeholder",value:"settings#placeholder"},{text:"selectAll",value:"settings#selectAll"},{text:"allowDeselect",value:"settings#allowDeselect"},{text:"display",value:"settings#display"},{text:"disabled",value:"settings#disabled"},{text:"mandatory",value:"settings#mandatory"},{text:"minmax",value:"settings#minmax"},{text:"dataAttributes",value:"settings#dataAttributes"},{text:"cssClass",value:"settings#cssClass"},{text:"inlineStyles",value:"settings#inlineStyles"},{text:"html",value:"settings#html"},{text:"keepOrder",value:"settings#keepOrder"},{text:"search",value:"settings#search"},{text:"closeOnSelect",value:"settings#closeOnSelect"},{text:"showOptionTooltips",value:"settings#showOptionTooltips"},{text:"closable",value:"settings#closable"},{text:"hideSelected",value:"settings#hideSelected"},{text:"maxValuesShown",value:"settings#maxValuesShown"}]},{label:"Events",closable:"close",options:[{text:"error",value:"events#error"},{text:"beforeChange",value:"events#beforeChange"},{text:"afterChange",value:"events#afterChange"},{text:"open",value:"events#open"},{text:"search",value:"events#search"},{text:"searchFilter",value:"events#searchFilter"},{text:"addable",value:"events#addable"}]},{label:"Methods",closable:"close",options:[{text:"getSelected",value:"methods#getSelected"},{text:"setSelected",value:"methods#setSelected"},{text:"getData",value:"methods#getData"},{text:"setData",value:"methods#setData"},{text:"enableDisable",value:"methods#enableDisable"},{text:"openClose",value:"methods#openClose"},{text:"search",value:"methods#search"},{text:"destroy",value:"methods#destroy"}]},{label:"Frameworks",closable:"close",options:[{text:"vue",value:"vue"}]}]}},mounted(){this.runNav(),this.$router.isReady().then(()=>{this.nav&&this.nav.setSelected(this.$router.currentRoute.value.fullPath.replace("/",""))}),this.$router.afterEach(()=>{if(this.$route.query.p){setTimeout(()=>{this.$route.query.p&&this.$router.push({path:this.$route.query.p.toString(),hash:this.$route.hash})},200);return}setTimeout(()=>{const t=this.$route.hash;if(t===""&&window.scroll({top:0,behavior:"smooth"}),t){const e=document.querySelector(t);if(e){const s=document.querySelector("header"),n=document.querySelector("nav"),i=s?s.clientHeight+(window.innerWidth<700?n.clientHeight:0)+8:0;window.scroll({top:e.offsetTop-i,behavior:"smooth"})}}},200)}),this.setDemensions(),window.addEventListener("resize",this.navDebounce),window.addEventListener("nav-updated",this.updateNav)},unmounted(){var t;window.removeEventListener("resize",this.navDebounce),window.removeEventListener("nav-updated",this.updateNav),(t=this.nav)==null||t.destroy()},watch:{width(){this.runNav()}},methods:{setDemensions(){this.width=document.documentElement.clientWidth,this.height=document.documentElement.clientHeight},runNav(){this.nav&&(this.nav.destroy(),this.nav=null);let t={searchHighlight:!0,openContent:"below"};this.width>700&&(t.alwaysOpen=!0,t.contentPosition="relative",t.contentLocation=this.$refs.navContent),this.nav=new Ic({select:this.$refs.nav,data:this.navData,settings:t,events:{afterChange:e=>{const n=e[0].value.split("#"),i=n[0],r=n[1]?"#"+n[1]:void 0;this.$router.push({path:i,hash:r})}}})},updateNav(){setTimeout(()=>{this.nav&&this.nav.setSelected(this.$router.currentRoute.value.fullPath.replace("/",""))},0)}}}),Vc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpFNTE3OEEyRTk5QTAxMUUyOUExNUJDMTA0NkE4OTA0RCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpFNTE3OEEyRjk5QTAxMUUyOUExNUJDMTA0NkE4OTA0RCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkU1MTc4QTJDOTlBMDExRTI5QTE1QkMxMDQ2QTg5MDREIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkU1MTc4QTJEOTlBMDExRTI5QTE1QkMxMDQ2QTg5MDREIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+FYrpWAAABrNJREFUeNrkW2lsVFUUvjMWirYUkS5BXApUa2vd6gL+wAWjoP5RiW2EUBajAiqSuPADQ0w1UUQTrcFAUUSJEKriEuMWFKuJIElFSS24YNpQK6WoBbuAktbva880M8O8vnfevJm+CSf5cme599xzvnfffffce17AJFjycnLzUVwDXAgUAucBY4BMIEOqdQIdwJ/Az4J64OvWtoONibQvkACHgyiuBe4CbgLOjVNlE/AZsAmoBSE9viQAjueieBCYC5yVoAvWDKwHqkBEmy8IgON09lHgXmCESY4cBaqBlSCieUgIgOPDUCwBngBOM0MjXdL/CyDiv6QRAOcvR7EBKDL+kD3AbJBQl1AC4DjrLwaeBYYbf8m/ciu+BCJ6PScAzp+K4nXgTuNveQuYAxK6PSMAzo9C8TFwtUkN2Q7cDBIOx02AOP8FUGpSSzgf3GBHQsDGec7unwOTTWrKDiGhS02ATHjvALeb1JZ3gRlWE+MpVq0yMzIekRk/1YWP6o7Ors5vHI8AXH1Odl8BaTbKrwd4j10MTAduS8JqkKvA94BPgN0A56htNm2OMyDDKNhuSwCcT5dIrMBG6S4oLI1qezqKBcBjwGiPHW8HVgCr0W97VL/fobjMpv2vQAnaHgv/MdYVXurAeSNPhggRw56BQatRVgL3A0H5+xDwI8Dw9g/5Hlq+clmdDYwF8iV0zpb/GP2tApZHOx4m2xwQUCC+VVqOABg+AUUDkO6AgHkwaL2DJXORxPVNylUnw+gpXObaLXFRlxHoaw7U8uoXQ99vViNgqUPnKQfsKojhdW7GuxDW5JUtIuni432hH4JhLJ7Dq6qwcZiPZnpNXDJPfI0kQEJbjVM5PiIgW3nhlkQQILH9LGWnV/iIAK0ts8TngREwDchVKrnKRwRobckVnwcIKFcq4ONrkY8IWBT2SHUq5eEE3Khs/CRm6Z1+8V5sqVQ26/M5gHuhSJ79TqUFmIhOj/ppwQ8/Rshqb5yiWXFQFhsaWeU352UU0KaXlc2mBI1+Y3OzjyO/Gm2kSAIKFQ2awfQ+v3oP23gL/K5oUhh0GPiEZG8KxP97FHULgsqwtTUFCDioqHsGCRipaHA8BQjQrAcyg4roj5KVAgSMUtRNDyqVj0wBAlQ2koBuRf3xKUBAvqJuN1eCrYpAiHNAltNjpyFYDfL47oix38wdmDA5AvYr+kjzWRgcLVcqnKfsJwGNyk5u9TEBtyjrNwaVgRClTPKA/Db8aVOZslkDG2nD2vEuOkqGlLmYpHcGJLlJu8LjtvJFgx06Jvnq8xC33gUBeUE4waWjduua5wdVPrr6VS6cr6PvoXv5Ixed3g3mH/fB1V9OW1w07fM5IEouUEZR4bIWWJzsTRJ55r8I3ONSRRFs3hsIU8hkgkkulf0CPAx8qElQcuk4beYp9Epgoks138LOvqSPgfyAzIwMZlnFSobgIegc4H3gH6AkxmKDub9Mjb0DeoYDrZ1dne0eO14AvfPx8RXgAYaycahbBvt+GLgFpIM0md3PjqrMTMxpYKxB6p1v+s/n7bbSuMCqldmZyc+fRh9ND+IsAxrmG3C3qtj0J1uP84hLrnwnwJbjEQRIxzw0XB2jER93C9Bog9TjsRgzLpzuJr0BzHV6e8gwf9XoziqdCv1YE/oSTQBHwfem/3w+5syPxuukLtfdO0zk+WIs+YuPKLQ7ohzyWTIix3joPPMTLg1d/Yg5gIL7ogf32U/4WGGhYDr+34J6bUALPpPA62w6XYMOP9BaCv3HoD/PeJubODN6U/eEq4cKTIurttpBAZ4L+87TmKdtOt0ah8FbPXS+WnyLEKskqUy5FaweM5dA2e6w+pNkZuajhfMD3/zYBfDKb3Y6+cWwgytOL7bh98nQ73BEgHReIvd4Roy/a6Cs3CRYJOnq7zjV8HWcybC33mpLLKZIA84FPRYhcSokUNL2Civnjd0MjoZbUCy0+PtNkDDD5wQsFB8sxWm2+GJZd8eSt4HnZXnZ66Nb4CHYYxuxat4XmI1inbHeczskq77DMrK4z8AgK3+Q/L5EEMBn/PzQos0zAsQgvg5XY3TpNKOTSAD3NsrQX63TBqq9PVHM9NgvfXi/06ZSjfNqAoQEHj9Pled+pw8cpw2co6aKbSoJxDlJnYniKdP/sqSVrrEw7IBL/TnG+rSXEy7fYVoG/S1uffDkzVEYypB1qewJRCdb5rp9yxN6mQDZFmOS2wisCIXo8Yin7w7LiKiQEcFYfhOMnBmnzo1CLIO09Qyt47niJxDQ29trTmY56Qn4X4ABAFR7IoDmVT5NAAAAAElFTkSuQmCC",Uc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACAAQMAAAD58POIAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZQTFRFyzg3////IltC9QAAAAFiS0dEAf8CLd4AAAAJcEhZcwAACxMAAAsTAQCanBgAAAAkSURBVEjHY2AYBYMV/IeDUQG4AJgeFRgVGBUYFSBNYBQMPgAARjtdvxo6xaMAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTEtMDUtMzBUMjM6MTA6NDQtMDc6MDCm4GvfAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDEwLTEyLTA2VDEyOjIwOjEyLTA4OjAwpIGEmQAAADJ0RVh0UE5HOmNIUk0AY2h1bmsgd2FzIGZvdW5kIChzZWUgQ2hyb21hdGljaXR5LCBhYm92ZSkH0UjaAAAAKXRFWHRQTkc6Z0FNQQBnYW1tYT0wLjQ1NDU1IChTZWUgR2FtbWEsIGFib3ZlKRISLKcAAAAUdEVYdFBORzpJSERSLmJpdF9kZXB0aAA4KYV+UAAAABV0RVh0UE5HOklIRFIuY29sb3JfdHlwZQA2BkqnKwAAABt0RVh0UE5HOklIRFIuaW50ZXJsYWNlX21ldGhvZAAw+zsHjAAAABx0RVh0UE5HOklIRFIud2lkdGgsaGVpZ2h0ADE2LCAxNjjVBg0AAAAodEVYdFBORzpwSFlzAHhfcmVzPTI4MzUsIHlfcmVzPTI4MzUsIHVuaXRzPTGCKXI+AAAAKHRFWHRQTkc6c1JHQgBpbnRlbnQ9MCAoU2VlIFJlbmRlcmluZyBpbnRlbnQp8hEU9QAAAABJRU5ErkJggg==",jc=(t,e)=>{const s=t.__vccOpts||t;for(const[n,i]of e)s[n]=i;return s},$c={ref:"nav"},Wc={class:"nav-content",ref:"navContent"};function zc(t,e,s,n,i,r){const l=Hn("CarbonAd"),o=Hn("router-view");return Jt(),Fr(Fe,null,[e[4]||(e[4]=Ho('

Slim Select 2.0

Advanced select dropdown
',1)),Ze("nav",null,[Ze("select",$c,null,512),Ze("div",Wc,null,512),pe(l)]),Ze("main",null,[pe(o),Ze("footer",null,[hs(" © "+Mi(t.year)+" ",1),e[0]||(e[0]=Ze("a",{href:"http://webiswhatido.com",style:{color:"#ffffff"},target:"_blank"},"Brian Voelker",-1)),e[1]||(e[1]=hs(". ")),e[2]||(e[2]=Ze("br",null,null,-1)),e[3]||(e[3]=hs(" Slim Select is under the MIT license. "))])])],64)}const Gc=jc(Hc,[["render",zc]]);var Ti=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Zr(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Xr={exports:{}};(function(t){var e=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};/** + */const Ct=typeof document<"u";function Hr(t){return typeof t=="object"||"displayName"in t||"props"in t||"__vccOpts"in t}function Ca(t){return t.__esModule||t[Symbol.toStringTag]==="Module"||t.default&&Hr(t.default)}const ee=Object.assign;function Ws(t,e){const s={};for(const n in e){const i=e[n];s[n]=Ue(i)?i.map(t):t(i)}return s}const zt=()=>{},Ue=Array.isArray,Vr=/#/g,_a=/&/g,Oa=/\//g,Ta=/=/g,La=/\?/g,Ur=/\+/g,Pa=/%5B/g,Ra=/%5D/g,jr=/%5E/g,Da=/%60/g,$r=/%7B/g,ka=/%7C/g,Wr=/%7D/g,Fa=/%20/g;function Ln(t){return encodeURI(""+t).replace(ka,"|").replace(Pa,"[").replace(Ra,"]")}function Ia(t){return Ln(t).replace($r,"{").replace(Wr,"}").replace(jr,"^")}function on(t){return Ln(t).replace(Ur,"%2B").replace(Fa,"+").replace(Vr,"%23").replace(_a,"%26").replace(Da,"`").replace($r,"{").replace(Wr,"}").replace(jr,"^")}function Ma(t){return on(t).replace(Ta,"%3D")}function Na(t){return Ln(t).replace(Vr,"%23").replace(La,"%3F")}function Ba(t){return t==null?"":Na(t).replace(Oa,"%2F")}function ts(t){try{return decodeURIComponent(""+t)}catch{}return""+t}const Ha=/\/$/,Va=t=>t.replace(Ha,"");function zs(t,e,s="/"){let n,i={},r="",l="";const o=e.indexOf("#");let a=e.indexOf("?");return o=0&&(a=-1),a>-1&&(n=e.slice(0,a),r=e.slice(a+1,o>-1?o:e.length),i=t(r)),o>-1&&(n=n||e.slice(0,o),l=e.slice(o,e.length)),n=Wa(n??e,s),{fullPath:n+(r&&"?")+r+l,path:n,query:i,hash:ts(l)}}function Ua(t,e){const s=e.query?t(e.query):"";return e.path+(s&&"?")+s+(e.hash||"")}function fi(t,e){return!e||!t.toLowerCase().startsWith(e.toLowerCase())?t:t.slice(e.length)||"/"}function ja(t,e,s){const n=e.matched.length-1,i=s.matched.length-1;return n>-1&&n===i&&kt(e.matched[n],s.matched[i])&&zr(e.params,s.params)&&t(e.query)===t(s.query)&&e.hash===s.hash}function kt(t,e){return(t.aliasOf||t)===(e.aliasOf||e)}function zr(t,e){if(Object.keys(t).length!==Object.keys(e).length)return!1;for(const s in t)if(!$a(t[s],e[s]))return!1;return!0}function $a(t,e){return Ue(t)?hi(t,e):Ue(e)?hi(e,t):t===e}function hi(t,e){return Ue(e)?t.length===e.length&&t.every((s,n)=>s===e[n]):t.length===1&&t[0]===e}function Wa(t,e){if(t.startsWith("/"))return t;if(!t)return e;const s=e.split("/"),n=t.split("/"),i=n[n.length-1];(i===".."||i===".")&&n.push("");let r=s.length-1,l,o;for(l=0;l1&&r--;else break;return s.slice(0,r).join("/")+"/"+n.slice(l).join("/")}const ot={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var ss;(function(t){t.pop="pop",t.push="push"})(ss||(ss={}));var Gt;(function(t){t.back="back",t.forward="forward",t.unknown=""})(Gt||(Gt={}));function za(t){if(!t)if(Ct){const e=document.querySelector("base");t=e&&e.getAttribute("href")||"/",t=t.replace(/^\w+:\/\/[^\/]+/,"")}else t="/";return t[0]!=="/"&&t[0]!=="#"&&(t="/"+t),Va(t)}const Ga=/^[^#]+#/;function Ka(t,e){return t.replace(Ga,"#")+e}function qa(t,e){const s=document.documentElement.getBoundingClientRect(),n=t.getBoundingClientRect();return{behavior:e.behavior,left:n.left-s.left-(e.left||0),top:n.top-s.top-(e.top||0)}}const Ds=()=>({left:window.scrollX,top:window.scrollY});function Ya(t){let e;if("el"in t){const s=t.el,n=typeof s=="string"&&s.startsWith("#"),i=typeof s=="string"?n?document.getElementById(s.slice(1)):document.querySelector(s):s;if(!i)return;e=qa(i,t)}else e=t;"scrollBehavior"in document.documentElement.style?window.scrollTo(e):window.scrollTo(e.left!=null?e.left:window.scrollX,e.top!=null?e.top:window.scrollY)}function di(t,e){return(history.state?history.state.position-e:-1)+t}const an=new Map;function Qa(t,e){an.set(t,e)}function Ja(t){const e=an.get(t);return an.delete(t),e}let Za=()=>location.protocol+"//"+location.host;function Gr(t,e){const{pathname:s,search:n,hash:i}=e,r=t.indexOf("#");if(r>-1){let o=i.includes(t.slice(r))?t.slice(r).length:1,a=i.slice(o);return a[0]!=="/"&&(a="/"+a),fi(a,"")}return fi(s,t)+n+i}function Xa(t,e,s,n){let i=[],r=[],l=null;const o=({state:p})=>{const g=Gr(t,location),T=s.value,O=e.value;let P=0;if(p){if(s.value=g,e.value=p,l&&l===T){l=null;return}P=O?p.position-O.position:0}else n(g);i.forEach(D=>{D(s.value,T,{delta:P,type:ss.pop,direction:P?P>0?Gt.forward:Gt.back:Gt.unknown})})};function a(){l=s.value}function u(p){i.push(p);const g=()=>{const T=i.indexOf(p);T>-1&&i.splice(T,1)};return r.push(g),g}function c(){const{history:p}=window;p.state&&p.replaceState(ee({},p.state,{scroll:Ds()}),"")}function h(){for(const p of r)p();r=[],window.removeEventListener("popstate",o),window.removeEventListener("beforeunload",c)}return window.addEventListener("popstate",o),window.addEventListener("beforeunload",c,{passive:!0}),{pauseListeners:a,listen:u,destroy:h}}function pi(t,e,s,n=!1,i=!1){return{back:t,current:e,forward:s,replaced:n,position:window.history.length,scroll:i?Ds():null}}function ec(t){const{history:e,location:s}=window,n={value:Gr(t,s)},i={value:e.state};i.value||r(n.value,{back:null,current:n.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function r(a,u,c){const h=t.indexOf("#"),p=h>-1?(s.host&&document.querySelector("base")?t:t.slice(h))+a:Za()+t+a;try{e[c?"replaceState":"pushState"](u,"",p),i.value=u}catch(g){console.error(g),s[c?"replace":"assign"](p)}}function l(a,u){const c=ee({},e.state,pi(i.value.back,a,i.value.forward,!0),u,{position:i.value.position});r(a,c,!0),n.value=a}function o(a,u){const c=ee({},i.value,e.state,{forward:a,scroll:Ds()});r(c.current,c,!0);const h=ee({},pi(n.value,a,null),{position:c.position+1},u);r(a,h,!1),n.value=a}return{location:n,state:i,push:o,replace:l}}function tc(t){t=za(t);const e=ec(t),s=Xa(t,e.state,e.location,e.replace);function n(r,l=!0){l||s.pauseListeners(),history.go(r)}const i=ee({location:"",base:t,go:n,createHref:Ka.bind(null,t)},e,s);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>e.state.value}),i}function sc(t){return typeof t=="string"||t&&typeof t=="object"}function Kr(t){return typeof t=="string"||typeof t=="symbol"}const qr=Symbol("");var gi;(function(t){t[t.aborted=4]="aborted",t[t.cancelled=8]="cancelled",t[t.duplicated=16]="duplicated"})(gi||(gi={}));function Ft(t,e){return ee(new Error,{type:t,[qr]:!0},e)}function Je(t,e){return t instanceof Error&&qr in t&&(e==null||!!(t.type&e))}const mi="[^/]+?",nc={sensitive:!1,strict:!1,start:!0,end:!0},ic=/[.+*?^${}()[\]/\\]/g;function rc(t,e){const s=ee({},nc,e),n=[];let i=s.start?"^":"";const r=[];for(const u of t){const c=u.length?[]:[90];s.strict&&!u.length&&(i+="/");for(let h=0;he.length?e.length===1&&e[0]===80?1:-1:0}function Yr(t,e){let s=0;const n=t.score,i=e.score;for(;s0&&e[e.length-1]<0}const oc={type:0,value:""},ac=/[a-zA-Z0-9_]/;function cc(t){if(!t)return[[]];if(t==="/")return[[oc]];if(!t.startsWith("/"))throw new Error(`Invalid path "${t}"`);function e(g){throw new Error(`ERR (${s})/"${u}": ${g}`)}let s=0,n=s;const i=[];let r;function l(){r&&i.push(r),r=[]}let o=0,a,u="",c="";function h(){u&&(s===0?r.push({type:0,value:u}):s===1||s===2||s===3?(r.length>1&&(a==="*"||a==="+")&&e(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),r.push({type:1,value:u,regexp:c,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):e("Invalid state to consume buffer"),u="")}function p(){u+=a}for(;o{l(v)}:zt}function l(h){if(Kr(h)){const p=n.get(h);p&&(n.delete(h),s.splice(s.indexOf(p),1),p.children.forEach(l),p.alias.forEach(l))}else{const p=s.indexOf(h);p>-1&&(s.splice(p,1),h.record.name&&n.delete(h.record.name),h.children.forEach(l),h.alias.forEach(l))}}function o(){return s}function a(h){const p=pc(h,s);s.splice(p,0,h),h.record.name&&!wi(h)&&n.set(h.record.name,h)}function u(h,p){let g,T={},O,P;if("name"in h&&h.name){if(g=n.get(h.name),!g)throw Ft(1,{location:h});P=g.record.name,T=ee(bi(p.params,g.keys.filter(v=>!v.optional).concat(g.parent?g.parent.keys.filter(v=>v.optional):[]).map(v=>v.name)),h.params&&bi(h.params,g.keys.map(v=>v.name))),O=g.stringify(T)}else if(h.path!=null)O=h.path,g=s.find(v=>v.re.test(O)),g&&(T=g.parse(O),P=g.record.name);else{if(g=p.name?n.get(p.name):s.find(v=>v.re.test(p.path)),!g)throw Ft(1,{location:h,currentLocation:p});P=g.record.name,T=ee({},p.params,h.params),O=g.stringify(T)}const D=[];let m=g;for(;m;)D.unshift(m.record),m=m.parent;return{name:P,path:O,params:T,matched:D,meta:dc(D)}}t.forEach(h=>r(h));function c(){s.length=0,n.clear()}return{addRoute:r,resolve:u,removeRoute:l,clearRoutes:c,getRoutes:o,getRecordMatcher:i}}function bi(t,e){const s={};for(const n of e)n in t&&(s[n]=t[n]);return s}function yi(t){const e={path:t.path,redirect:t.redirect,name:t.name,meta:t.meta||{},aliasOf:t.aliasOf,beforeEnter:t.beforeEnter,props:hc(t),children:t.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in t?t.components||null:t.component&&{default:t.component}};return Object.defineProperty(e,"mods",{value:{}}),e}function hc(t){const e={},s=t.props||!1;if("component"in t)e.default=s;else for(const n in t.components)e[n]=typeof s=="object"?s[n]:s;return e}function wi(t){for(;t;){if(t.record.aliasOf)return!0;t=t.parent}return!1}function dc(t){return t.reduce((e,s)=>ee(e,s.meta),{})}function Ai(t,e){const s={};for(const n in t)s[n]=n in e?e[n]:t[n];return s}function pc(t,e){let s=0,n=e.length;for(;s!==n;){const r=s+n>>1;Yr(t,e[r])<0?n=r:s=r+1}const i=gc(t);return i&&(n=e.lastIndexOf(i,n-1)),n}function gc(t){let e=t;for(;e=e.parent;)if(Qr(e)&&Yr(t,e)===0)return e}function Qr({record:t}){return!!(t.name||t.components&&Object.keys(t.components).length||t.redirect)}function mc(t){const e={};if(t===""||t==="?")return e;const n=(t[0]==="?"?t.slice(1):t).split("&");for(let i=0;ir&&on(r)):[n&&on(n)]).forEach(r=>{r!==void 0&&(e+=(e.length?"&":"")+s,r!=null&&(e+="="+r))})}return e}function vc(t){const e={};for(const s in t){const n=t[s];n!==void 0&&(e[s]=Ue(n)?n.map(i=>i==null?null:""+i):n==null?n:""+n)}return e}const bc=Symbol(""),Ei=Symbol(""),Pn=Symbol(""),Jr=Symbol(""),cn=Symbol("");function Bt(){let t=[];function e(n){return t.push(n),()=>{const i=t.indexOf(n);i>-1&&t.splice(i,1)}}function s(){t=[]}return{add:e,list:()=>t.slice(),reset:s}}function ut(t,e,s,n,i,r=l=>l()){const l=n&&(n.enterCallbacks[i]=n.enterCallbacks[i]||[]);return()=>new Promise((o,a)=>{const u=p=>{p===!1?a(Ft(4,{from:s,to:e})):p instanceof Error?a(p):sc(p)?a(Ft(2,{from:e,to:p})):(l&&n.enterCallbacks[i]===l&&typeof p=="function"&&l.push(p),o())},c=r(()=>t.call(n&&n.instances[i],e,s,u));let h=Promise.resolve(c);t.length<3&&(h=h.then(u)),h.catch(p=>a(p))})}function Gs(t,e,s,n,i=r=>r()){const r=[];for(const l of t)for(const o in l.components){let a=l.components[o];if(!(e!=="beforeRouteEnter"&&!l.instances[o]))if(Hr(a)){const c=(a.__vccOpts||a)[e];c&&r.push(ut(c,s,n,l,o,i))}else{let u=a();r.push(()=>u.then(c=>{if(!c)throw new Error(`Couldn't resolve component "${o}" at "${l.path}"`);const h=Ca(c)?c.default:c;l.mods[o]=c,l.components[o]=h;const g=(h.__vccOpts||h)[e];return g&&ut(g,s,n,l,o,i)()}))}}return r}function Si(t){const e=tt(Pn),s=tt(Jr),n=He(()=>{const a=wt(t.to);return e.resolve(a)}),i=He(()=>{const{matched:a}=n.value,{length:u}=a,c=a[u-1],h=s.matched;if(!c||!h.length)return-1;const p=h.findIndex(kt.bind(null,c));if(p>-1)return p;const g=Ci(a[u-2]);return u>1&&Ci(c)===g&&h[h.length-1].path!==g?h.findIndex(kt.bind(null,a[u-2])):p}),r=He(()=>i.value>-1&&xc(s.params,n.value.params)),l=He(()=>i.value>-1&&i.value===s.matched.length-1&&zr(s.params,n.value.params));function o(a={}){return Ac(a)?e[wt(t.replace)?"replace":"push"](wt(t.to)).catch(zt):Promise.resolve()}return{route:n,href:He(()=>n.value.href),isActive:r,isExactActive:l,navigate:o}}const yc=Ts({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:Si,setup(t,{slots:e}){const s=_s(Si(t)),{options:n}=tt(Pn),i=He(()=>({[_i(t.activeClass,n.linkActiveClass,"router-link-active")]:s.isActive,[_i(t.exactActiveClass,n.linkExactActiveClass,"router-link-exact-active")]:s.isExactActive}));return()=>{const r=e.default&&e.default(s);return t.custom?r:Nr("a",{"aria-current":s.isExactActive?t.ariaCurrentValue:null,href:s.href,onClick:s.navigate,class:i.value},r)}}}),wc=yc;function Ac(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&!(t.button!==void 0&&t.button!==0)){if(t.currentTarget&&t.currentTarget.getAttribute){const e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function xc(t,e){for(const s in e){const n=e[s],i=t[s];if(typeof n=="string"){if(n!==i)return!1}else if(!Ue(i)||i.length!==n.length||n.some((r,l)=>r!==i[l]))return!1}return!0}function Ci(t){return t?t.aliasOf?t.aliasOf.path:t.path:""}const _i=(t,e,s)=>t??e??s,Ec=Ts({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(t,{attrs:e,slots:s}){const n=tt(cn),i=He(()=>t.route||n.value),r=tt(Ei,0),l=He(()=>{let u=wt(r);const{matched:c}=i.value;let h;for(;(h=c[u])&&!h.components;)u++;return u}),o=He(()=>i.value.matched[l.value]);as(Ei,He(()=>l.value+1)),as(bc,o),as(cn,i);const a=er();return cs(()=>[a.value,o.value,t.name],([u,c,h],[p,g,T])=>{c&&(c.instances[h]=u,g&&g!==c&&u&&u===p&&(c.leaveGuards.size||(c.leaveGuards=g.leaveGuards),c.updateGuards.size||(c.updateGuards=g.updateGuards))),u&&c&&(!g||!kt(c,g)||!p)&&(c.enterCallbacks[h]||[]).forEach(O=>O(u))},{flush:"post"}),()=>{const u=i.value,c=t.name,h=o.value,p=h&&h.components[c];if(!p)return Oi(s.default,{Component:p,route:u});const g=h.props[c],T=g?g===!0?u.params:typeof g=="function"?g(u):g:null,P=Nr(p,ee({},T,e,{onVnodeUnmounted:D=>{D.component.isUnmounted&&(h.instances[c]=null)},ref:a}));return Oi(s.default,{Component:P,route:u})||P}}});function Oi(t,e){if(!t)return null;const s=t(e);return s.length===1?s[0]:s}const Sc=Ec;function Cc(t){const e=fc(t.routes,t),s=t.parseQuery||mc,n=t.stringifyQuery||xi,i=t.history,r=Bt(),l=Bt(),o=Bt(),a=Fl(ot);let u=ot;Ct&&t.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const c=Ws.bind(null,w=>""+w),h=Ws.bind(null,Ba),p=Ws.bind(null,ts);function g(w,M){let k,B;return Kr(w)?(k=e.getRecordMatcher(w),B=M):B=w,e.addRoute(B,k)}function T(w){const M=e.getRecordMatcher(w);M&&e.removeRoute(M)}function O(){return e.getRoutes().map(w=>w.record)}function P(w){return!!e.getRecordMatcher(w)}function D(w,M){if(M=ee({},M||a.value),typeof w=="string"){const d=zs(s,w,M.path),b=e.resolve({path:d.path},M),E=i.createHref(d.fullPath);return ee(d,b,{params:p(b.params),hash:ts(d.hash),redirectedFrom:void 0,href:E})}let k;if(w.path!=null)k=ee({},w,{path:zs(s,w.path,M.path).path});else{const d=ee({},w.params);for(const b in d)d[b]==null&&delete d[b];k=ee({},w,{params:h(d)}),M.params=h(M.params)}const B=e.resolve(k,M),K=w.hash||"";B.params=c(p(B.params));const le=Ua(n,ee({},w,{hash:Ia(K),path:B.path})),f=i.createHref(le);return ee({fullPath:le,hash:K,query:n===xi?vc(w.query):w.query||{}},B,{redirectedFrom:void 0,href:f})}function m(w){return typeof w=="string"?zs(s,w,a.value.path):ee({},w)}function v(w,M){if(u!==w)return Ft(8,{from:M,to:w})}function y(w){return F(w)}function x(w){return y(ee(m(w),{replace:!0}))}function _(w){const M=w.matched[w.matched.length-1];if(M&&M.redirect){const{redirect:k}=M;let B=typeof k=="function"?k(w):k;return typeof B=="string"&&(B=B.includes("?")||B.includes("#")?B=m(B):{path:B},B.params={}),ee({query:w.query,hash:w.hash,params:B.path!=null?{}:w.params},B)}}function F(w,M){const k=u=D(w),B=a.value,K=w.state,le=w.force,f=w.replace===!0,d=_(k);if(d)return F(ee(m(d),{state:typeof d=="object"?ee({},K,d.state):K,force:le,replace:f}),M||k);const b=k;b.redirectedFrom=M;let E;return!le&&ja(n,B,k)&&(E=Ft(16,{to:b,from:B}),xe(B,B,!0,!1)),(E?Promise.resolve(E):Y(b,B)).catch(A=>Je(A)?Je(A,2)?A:Ae(A):j(A,b,B)).then(A=>{if(A){if(Je(A,2))return F(ee({replace:f},m(A.to),{state:typeof A.to=="object"?ee({},K,A.to.state):K,force:le}),M||b)}else A=ge(b,B,!0,f,K);return re(b,B,A),A})}function W(w,M){const k=v(w,M);return k?Promise.reject(k):Promise.resolve()}function H(w){const M=Ee.values().next().value;return M&&typeof M.runWithContext=="function"?M.runWithContext(w):w()}function Y(w,M){let k;const[B,K,le]=_c(w,M);k=Gs(B.reverse(),"beforeRouteLeave",w,M);for(const d of B)d.leaveGuards.forEach(b=>{k.push(ut(b,w,M))});const f=W.bind(null,w,M);return k.push(f),de(k).then(()=>{k=[];for(const d of r.list())k.push(ut(d,w,M));return k.push(f),de(k)}).then(()=>{k=Gs(K,"beforeRouteUpdate",w,M);for(const d of K)d.updateGuards.forEach(b=>{k.push(ut(b,w,M))});return k.push(f),de(k)}).then(()=>{k=[];for(const d of le)if(d.beforeEnter)if(Ue(d.beforeEnter))for(const b of d.beforeEnter)k.push(ut(b,w,M));else k.push(ut(d.beforeEnter,w,M));return k.push(f),de(k)}).then(()=>(w.matched.forEach(d=>d.enterCallbacks={}),k=Gs(le,"beforeRouteEnter",w,M,H),k.push(f),de(k))).then(()=>{k=[];for(const d of l.list())k.push(ut(d,w,M));return k.push(f),de(k)}).catch(d=>Je(d,8)?d:Promise.reject(d))}function re(w,M,k){o.list().forEach(B=>H(()=>B(w,M,k)))}function ge(w,M,k,B,K){const le=v(w,M);if(le)return le;const f=M===ot,d=Ct?history.state:{};k&&(B||f?i.replace(w.fullPath,ee({scroll:f&&d&&d.scroll},K)):i.push(w.fullPath,K)),a.value=w,xe(w,M,k,f),Ae()}let Oe;function it(){Oe||(Oe=i.listen((w,M,k)=>{if(!je.listening)return;const B=D(w),K=_(B);if(K){F(ee(K,{replace:!0}),B).catch(zt);return}u=B;const le=a.value;Ct&&Qa(di(le.fullPath,k.delta),Ds()),Y(B,le).catch(f=>Je(f,12)?f:Je(f,2)?(F(f.to,B).then(d=>{Je(d,20)&&!k.delta&&k.type===ss.pop&&i.go(-1,!1)}).catch(zt),Promise.reject()):(k.delta&&i.go(-k.delta,!1),j(f,B,le))).then(f=>{f=f||ge(B,le,!1),f&&(k.delta&&!Je(f,8)?i.go(-k.delta,!1):k.type===ss.pop&&Je(f,20)&&i.go(-1,!1)),re(B,le,f)}).catch(zt)}))}let rt=Bt(),ae=Bt(),Q;function j(w,M,k){Ae(w);const B=ae.list();return B.length?B.forEach(K=>K(w,M,k)):console.error(w),Promise.reject(w)}function ce(){return Q&&a.value!==ot?Promise.resolve():new Promise((w,M)=>{rt.add([w,M])})}function Ae(w){return Q||(Q=!w,it(),rt.list().forEach(([M,k])=>w?k(w):M()),rt.reset()),w}function xe(w,M,k,B){const{scrollBehavior:K}=t;if(!Ct||!K)return Promise.resolve();const le=!k&&Ja(di(w.fullPath,0))||(B||!k)&&history.state&&history.state.scroll||null;return ir().then(()=>K(w,M,le)).then(f=>f&&Ya(f)).catch(f=>j(f,w,M))}const te=w=>i.go(w);let lt;const Ee=new Set,je={currentRoute:a,listening:!0,addRoute:g,removeRoute:T,clearRoutes:e.clearRoutes,hasRoute:P,getRoutes:O,resolve:D,options:t,push:y,replace:x,go:te,back:()=>te(-1),forward:()=>te(1),beforeEach:r.add,beforeResolve:l.add,afterEach:o.add,onError:ae.add,isReady:ce,install(w){const M=this;w.component("RouterLink",wc),w.component("RouterView",Sc),w.config.globalProperties.$router=M,Object.defineProperty(w.config.globalProperties,"$route",{enumerable:!0,get:()=>wt(a)}),Ct&&!lt&&a.value===ot&&(lt=!0,y(i.location).catch(K=>{}));const k={};for(const K in ot)Object.defineProperty(k,K,{get:()=>a.value[K],enumerable:!0});w.provide(Pn,M),w.provide(Jr,Zi(k)),w.provide(cn,a);const B=w.unmount;Ee.add(w),w.unmount=function(){Ee.delete(w),Ee.size<1&&(u=ot,Oe&&Oe(),Oe=null,a.value=ot,lt=!1,Q=!1),B()}}};function de(w){return w.reduce((M,k)=>M.then(()=>H(k)),Promise.resolve())}return je}function _c(t,e){const s=[],n=[],i=[],r=Math.max(e.matched.length,t.matched.length);for(let l=0;lkt(u,o))?n.push(o):s.push(o));const a=t.matched[l];a&&(e.matched.find(u=>kt(u,a))||i.push(a))}return[s,n,i]}const Oc=Cc({history:tc(),linkActiveClass:"active",routes:[{path:"/",name:"Home",component:()=>Qe(()=>import("./home.js"),__vite__mapDeps([0,1]))},{path:"/install",name:"Install",component:()=>Qe(()=>import("./install.js"),[])},{path:"/selects",name:"Selects",component:()=>Qe(()=>import("./selects.js"),[])},{path:"/data",name:"Data",component:()=>Qe(()=>import("./data.js"),[])},{path:"/examples",name:"Examples",component:()=>Qe(()=>import("./index2.js"),__vite__mapDeps([2,3]))},{path:"/settings",name:"Settings",component:()=>Qe(()=>import("./index3.js"),__vite__mapDeps([4,5]))},{path:"/events",name:"Events",component:()=>Qe(()=>import("./index4.js"),[])},{path:"/methods",name:"Methods",component:()=>Qe(()=>import("./index5.js"),[])},{path:"/vue",name:"Vue",component:()=>Qe(()=>import("./vue.js"),[])}]});class Tc{constructor(e){e||(e={}),this.main=e.main||"ss-main",this.placeholder=e.placeholder||"ss-placeholder",this.values=e.values||"ss-values",this.single=e.single||"ss-single",this.max=e.max||"ss-max",this.value=e.value||"ss-value",this.valueText=e.valueText||"ss-value-text",this.valueDelete=e.valueDelete||"ss-value-delete",this.valueOut=e.valueOut||"ss-value-out",this.deselect=e.deselect||"ss-deselect",this.deselectPath=e.deselectPath||"M10,10 L90,90 M10,90 L90,10",this.arrow=e.arrow||"ss-arrow",this.arrowClose=e.arrowClose||"M10,30 L50,70 L90,30",this.arrowOpen=e.arrowOpen||"M10,70 L50,30 L90,70",this.content=e.content||"ss-content",this.openAbove=e.openAbove||"ss-open-above",this.openBelow=e.openBelow||"ss-open-below",this.search=e.search||"ss-search",this.searchHighlighter=e.searchHighlighter||"ss-search-highlight",this.searching=e.searching||"ss-searching",this.addable=e.addable||"ss-addable",this.addablePath=e.addablePath||"M50,10 L50,90 M10,50 L90,50",this.list=e.list||"ss-list",this.optgroup=e.optgroup||"ss-optgroup",this.optgroupLabel=e.optgroupLabel||"ss-optgroup-label",this.optgroupLabelText=e.optgroupLabelText||"ss-optgroup-label-text",this.optgroupActions=e.optgroupActions||"ss-optgroup-actions",this.optgroupSelectAll=e.optgroupSelectAll||"ss-selectall",this.optgroupSelectAllBox=e.optgroupSelectAllBox||"M60,10 L10,10 L10,90 L90,90 L90,50",this.optgroupSelectAllCheck=e.optgroupSelectAllCheck||"M30,45 L50,70 L90,10",this.optgroupClosable=e.optgroupClosable||"ss-closable",this.option=e.option||"ss-option",this.optionDelete=e.optionDelete||"M10,10 L90,90 M10,90 L90,10",this.highlighted=e.highlighted||"ss-highlighted",this.open=e.open||"ss-open",this.close=e.close||"ss-close",this.selected=e.selected||"ss-selected",this.error=e.error||"ss-error",this.disabled=e.disabled||"ss-disabled",this.hide=e.hide||"ss-hide"}}function Rn(){return Math.random().toString(36).substring(2,10)}function Lc(t,e){function s(i,r){return r&&i&&i.classList&&i.classList.contains(r)||r&&i&&i.dataset&&i.dataset.id&&i.dataset.id===e?i:null}function n(i,r){return!i||i===document?null:s(i,r)?i:n(i.parentNode,r)}return s(t,e)||n(t,e)}function Kt(t,e=50,s=!1){let n;return function(...i){const r=self,l=()=>{n=null,s||t.apply(r,i)},o=s&&!n;clearTimeout(n),n=setTimeout(l,e),o&&t.apply(r,i)}}function Ks(t,e){return JSON.stringify(t)===JSON.stringify(e)}function Pc(t){const e=t.replace(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g,s=>"-"+s.toLowerCase());return t[0]===t[0].toUpperCase()?e.substring(1):e}class Be{constructor(e){if(this.id=!e.id||e.id===""?Rn():e.id,this.label=e.label||"",this.selectAll=e.selectAll===void 0?!1:e.selectAll,this.selectAllText=e.selectAllText||"Select All",this.closable=e.closable||"off",this.options=[],e.options)for(const s of e.options)this.options.push(new fe(s))}}class fe{constructor(e){this.id=!e.id||e.id===""?Rn():e.id,this.value=e.value===void 0?e.text:e.value,this.text=e.text||"",this.html=e.html||"",this.selected=e.selected!==void 0?e.selected:!1,this.display=e.display!==void 0?e.display:!0,this.disabled=e.disabled!==void 0?e.disabled:!1,this.mandatory=e.mandatory!==void 0?e.mandatory:!1,this.placeholder=e.placeholder!==void 0?e.placeholder:!1,this.class=e.class||"",this.style=e.style||"",this.data=e.data||{}}}class Rc{constructor(e,s){this.selectType="single",this.data=[],this.selectedOrder=[],this.selectType=e,this.setData(s)}validateDataArray(e){if(!Array.isArray(e))return new Error("Data must be an array");for(let s of e)if(s instanceof Be||"label"in s){if(!("label"in s))return new Error("Optgroup must have a label");if("options"in s&&s.options)for(let n of s.options){const i=this.validateOption(n);if(i)return i}}else if(s instanceof fe||"text"in s){const n=this.validateOption(s);if(n)return n}else return new Error("Data object must be a valid optgroup or option");return null}validateOption(e){return"text"in e?null:new Error("Option must have a text")}partialToFullData(e){let s=[];return e.forEach(n=>{if(n instanceof Be||"label"in n){let i=[];"options"in n&&n.options&&n.options.forEach(r=>{i.push(new fe(r))}),i.length>0&&s.push(new Be(n))}(n instanceof fe||"text"in n)&&s.push(new fe(n))}),s}setData(e){this.data=this.partialToFullData(e),this.selectType==="single"&&this.setSelectedBy("id",this.getSelected())}getData(){return this.filter(null,!0)}getDataOptions(){return this.filter(null,!1)}addOption(e,s=!1){if(s){let n=[new fe(e)];this.setData(n.concat(this.getData()))}else this.setData(this.getData().concat(new fe(e)))}setSelectedBy(e,s){let n=null,i=!1;const r=[];for(let o of this.data){if(o instanceof Be)for(let a of o.options)n||(n=a),a.selected=i?!1:s.includes(a[e]),a.selected&&(r.push(a),this.selectType==="single"&&(i=!0));o instanceof fe&&(n||(n=o),o.selected=i?!1:s.includes(o[e]),o.selected&&(r.push(o),this.selectType==="single"&&(i=!0)))}this.selectType==="single"&&n&&!i&&(n.selected=!0,r.push(n));const l=s.map(o=>{var a;return((a=r.find(u=>u[e]===o))==null?void 0:a.id)||""});this.selectedOrder=l}getSelected(){return this.getSelectedOptions().map(e=>e.id)}getSelectedValues(){return this.getSelectedOptions().map(e=>e.value)}getSelectedOptions(){return this.filter(e=>e.selected,!1)}getOptgroupByID(e){for(let s of this.data)if(s instanceof Be&&s.id===e)return s;return null}getOptionByID(e){let s=this.filter(n=>n.id===e,!1);return s.length?s[0]:null}getSelectType(){return this.selectType}getFirstOption(){let e=null;for(let s of this.data)if(s instanceof Be?e=s.options[0]:s instanceof fe&&(e=s),e)break;return e}search(e,s){return e=e.trim(),e===""?this.getData():this.filter(n=>s(n,e),!0)}filter(e,s){const n=[];return this.data.forEach(i=>{if(i instanceof Be){let r=[];if(i.options.forEach(l=>{(!e||e(l))&&(s?r.push(new fe(l)):n.push(new fe(l)))}),r.length>0){let l=new Be(i);l.options=r,n.push(l)}}i instanceof fe&&(!e||e(i))&&n.push(new fe(i))}),n}selectedOrderOptions(e){const s=[];return this.selectedOrder.forEach(n=>{const i=e.find(r=>r.id===n);i&&s.push(i)}),e.forEach(n=>{let i=!1;s.forEach(r=>{if(n.id===r.id){i=!0;return}}),i||s.push(n)}),s}}class Dc{constructor(e,s,n,i){this.store=n,this.settings=e,this.classes=s,this.callbacks=i,this.main=this.mainDiv(),this.content=this.contentDiv(),this.updateClassStyles(),this.updateAriaAttributes(),this.settings.contentLocation&&this.settings.contentLocation.appendChild(this.content.main)}enable(){this.main.main.classList.remove(this.classes.disabled),this.content.search.input.disabled=!1}disable(){this.main.main.classList.add(this.classes.disabled),this.content.search.input.disabled=!0}open(){this.main.arrow.path.setAttribute("d",this.classes.arrowOpen),this.main.main.classList.add(this.settings.openPosition==="up"?this.classes.openAbove:this.classes.openBelow),this.main.main.setAttribute("aria-expanded","true"),this.moveContent();const e=this.store.getSelectedOptions();if(e.length){const s=e[e.length-1].id,n=this.content.list.querySelector('[data-id="'+s+'"]');n&&this.ensureElementInView(this.content.list,n)}}close(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.remove(this.classes.openBelow),this.main.main.setAttribute("aria-expanded","false"),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.main.arrow.path.setAttribute("d",this.classes.arrowClose)}updateClassStyles(){if(this.main.main.className="",this.main.main.removeAttribute("style"),this.content.main.className="",this.content.main.removeAttribute("style"),this.main.main.classList.add(this.classes.main),this.content.main.classList.add(this.classes.content),this.settings.style!==""&&(this.main.main.style.cssText=this.settings.style,this.content.main.style.cssText=this.settings.style),this.settings.class.length)for(const e of this.settings.class)e.trim()!==""&&(this.main.main.classList.add(e.trim()),this.content.main.classList.add(e.trim()));(this.settings.contentPosition==="relative"||this.settings.contentPosition==="fixed")&&this.content.main.classList.add("ss-"+this.settings.contentPosition)}updateAriaAttributes(){this.main.main.role="combobox",this.main.main.setAttribute("aria-haspopup","listbox"),this.main.main.setAttribute("aria-controls",this.content.main.id),this.main.main.setAttribute("aria-expanded","false"),this.content.main.setAttribute("role","listbox")}mainDiv(){var u;const e=document.createElement("div");e.dataset.id=this.settings.id,e.setAttribute("aria-label",this.settings.ariaLabel),e.tabIndex=0,e.onkeydown=c=>{switch(c.key){case"ArrowUp":case"ArrowDown":return this.callbacks.open(),c.key==="ArrowDown"?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Enter":case" ":this.callbacks.open();const h=this.content.list.querySelector("."+this.classes.highlighted);return h&&h.click(),!1;case"Escape":return this.callbacks.close(),!1}return c.key.length===1&&this.callbacks.open(),!0},e.onclick=c=>{this.settings.disabled||(this.settings.isOpen?this.callbacks.close():this.callbacks.open())};const s=document.createElement("div");s.classList.add(this.classes.values),e.appendChild(s);const n=document.createElement("div");n.classList.add(this.classes.deselect);const i=(u=this.store)==null?void 0:u.getSelectedOptions();!this.settings.allowDeselect||this.settings.isMultiple&&i&&i.length<=0?n.classList.add(this.classes.hide):n.classList.remove(this.classes.hide),n.onclick=c=>{if(c.stopPropagation(),this.settings.disabled)return;let h=!0;const p=this.store.getSelectedOptions(),g=[];if(this.callbacks.beforeChange&&(h=this.callbacks.beforeChange(g,p)===!0),h){if(this.settings.isMultiple)this.callbacks.setSelected([],!1),this.updateDeselectAll();else{const T=this.store.getFirstOption(),O=T?T.id:"";this.callbacks.setSelected(O,!1)}this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(this.store.getSelectedOptions())}};const r=document.createElementNS("http://www.w3.org/2000/svg","svg");r.setAttribute("viewBox","0 0 100 100");const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.deselectPath),r.appendChild(l),n.appendChild(r),e.appendChild(n);const o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.classList.add(this.classes.arrow),o.setAttribute("viewBox","0 0 100 100");const a=document.createElementNS("http://www.w3.org/2000/svg","path");return a.setAttribute("d",this.classes.arrowClose),this.settings.alwaysOpen&&o.classList.add(this.classes.hide),o.appendChild(a),e.appendChild(o),{main:e,values:s,deselect:{main:n,svg:r,path:l},arrow:{main:o,path:a}}}mainFocus(e){e!=="click"&&this.main.main.focus({preventScroll:!0})}placeholder(){const e=this.store.filter(i=>i.placeholder,!1);let s=this.settings.placeholderText;e.length&&(e[0].html!==""?s=e[0].html:e[0].text!==""&&(s=e[0].text));const n=document.createElement("div");return n.classList.add(this.classes.placeholder),n.innerHTML=s,n}renderValues(){if(!this.settings.isMultiple){this.renderSingleValue();return}this.renderMultipleValues(),this.updateDeselectAll()}renderSingleValue(){const e=this.store.filter(n=>n.selected&&!n.placeholder,!1),s=e.length>0?e[0]:null;if(!s)this.main.values.innerHTML=this.placeholder().outerHTML;else{const n=document.createElement("div");n.classList.add(this.classes.single),s.html?n.innerHTML=s.html:n.innerText=s.text,this.main.values.innerHTML=n.outerHTML}!this.settings.allowDeselect||!e.length?this.main.deselect.main.classList.add(this.classes.hide):this.main.deselect.main.classList.remove(this.classes.hide)}renderMultipleValues(){let e=this.main.values.childNodes,s=this.store.filter(i=>i.selected&&i.display,!1);if(s.length===0){this.main.values.innerHTML=this.placeholder().outerHTML;return}else{const i=this.main.values.querySelector("."+this.classes.placeholder);i&&i.remove()}if(s.length>this.settings.maxValuesShown){const i=document.createElement("div");i.classList.add(this.classes.max),i.textContent=this.settings.maxValuesMessage.replace("{number}",s.length.toString()),this.main.values.innerHTML=i.outerHTML;return}else{const i=this.main.values.querySelector("."+this.classes.max);i&&i.remove()}this.settings.keepOrder&&(s=this.store.selectedOrderOptions(s));let n=[];for(let i=0;ia.id===l,!1).length||n.push(r))}for(const i of n)i.classList.add(this.classes.valueOut),setTimeout(()=>{this.main.values.hasChildNodes()&&this.main.values.contains(i)&&this.main.values.removeChild(i)},100);e=this.main.values.childNodes;for(let i=0;i{if(o.preventDefault(),o.stopPropagation(),this.settings.disabled)return;let a=!0;const u=this.store.getSelectedOptions(),c=u.filter(h=>h.selected&&h.id!==e.id,!0);if(!(this.settings.minSelected&&c.length{this.callbacks.search(r.target.value)},100),s.onkeydown=r=>{switch(r.key){case"ArrowUp":case"ArrowDown":return r.key==="ArrowDown"?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Escape":return this.callbacks.close(),!1;case" ":const l=this.content.list.querySelector("."+this.classes.highlighted);return l?(l.click(),!1):!0;case"Enter":if(this.callbacks.addable)return n.click(),!1;{const o=this.content.list.querySelector("."+this.classes.highlighted);if(o)return o.click(),!1}return!0}return!0},e.appendChild(s),this.callbacks.addable){n.classList.add(this.classes.addable);const r=document.createElementNS("http://www.w3.org/2000/svg","svg");r.setAttribute("viewBox","0 0 100 100");const l=document.createElementNS("http://www.w3.org/2000/svg","path");l.setAttribute("d",this.classes.addablePath),r.appendChild(l),n.appendChild(r),n.onclick=o=>{if(o.preventDefault(),o.stopPropagation(),!this.callbacks.addable)return;const a=this.content.search.input.value.trim();if(a===""){this.content.search.input.focus();return}const u=h=>{let p=new fe(h);if(this.callbacks.addOption(p),this.settings.isMultiple){let g=this.store.getSelected();g.push(p.id),this.callbacks.setSelected(g,!0)}else this.callbacks.setSelected([p.id],!0);this.callbacks.search(""),this.settings.closeOnSelect&&setTimeout(()=>{this.callbacks.close()},100)},c=this.callbacks.addable(a);c===!1||c===void 0||c===null||(c instanceof Promise?c.then(h=>{typeof h=="string"?u({text:h,value:h}):c instanceof Error?this.renderError(c.message):u(h)}):typeof c=="string"?u({text:c,value:c}):c instanceof Error?this.renderError(c.message):u(c))},e.appendChild(n),i.addable={main:n,svg:r,path:l}}return i}searchFocus(){this.content.search.input.focus()}getOptions(e=!1,s=!1,n=!1){let i="."+this.classes.option;return e&&(i+=":not(."+this.classes.placeholder+")"),s&&(i+=":not(."+this.classes.disabled+")"),n&&(i+=":not(."+this.classes.hide+")"),Array.from(this.content.list.querySelectorAll(i))}highlight(e){const s=this.getOptions(!0,!0,!0);if(s.length===0)return;if(s.length===1&&!s[0].classList.contains(this.classes.highlighted)){s[0].classList.add(this.classes.highlighted);return}let n=!1;for(const i of s)i.classList.contains(this.classes.highlighted)&&(n=!0);if(!n){for(const i of s)if(i.classList.contains(this.classes.selected)){i.classList.add(this.classes.highlighted);break}}for(let i=0;i=0?i-1:s.length-1];o.classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,o);const a=o.parentElement;if(a&&a.classList.contains(this.classes.close)){const u=a.querySelector("."+this.classes.optgroupLabel);u&&u.click()}return}s[e==="down"?0:s.length-1].classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,s[e==="down"?0:s.length-1])}listDiv(){const e=document.createElement("div");return e.classList.add(this.classes.list),e}renderError(e){this.content.list.innerHTML="";const s=document.createElement("div");s.classList.add(this.classes.error),s.textContent=e,this.content.list.appendChild(s)}renderSearching(){this.content.list.innerHTML="";const e=document.createElement("div");e.classList.add(this.classes.searching),e.textContent=this.settings.searchingText,this.content.list.appendChild(e)}renderOptions(e){if(this.content.list.innerHTML="",e.length===0){const s=document.createElement("div");s.classList.add(this.classes.search),this.callbacks.addable?s.innerHTML=this.settings.addableText.replace("{value}",this.content.search.input.value):s.innerHTML=this.settings.searchText,this.content.list.appendChild(s);return}this.settings.allowDeselect&&!this.settings.isMultiple&&(this.store.filter(n=>n.placeholder,!1).length||this.store.addOption(new fe({text:"",value:"",selected:!1,placeholder:!0}),!0));for(const s of e){if(s instanceof Be){const n=document.createElement("div");n.classList.add(this.classes.optgroup);const i=document.createElement("div");i.classList.add(this.classes.optgroupLabel),n.appendChild(i);const r=document.createElement("div");r.classList.add(this.classes.optgroupLabelText),r.textContent=s.label,i.appendChild(r);const l=document.createElement("div");if(l.classList.add(this.classes.optgroupActions),i.appendChild(l),this.settings.isMultiple&&s.selectAll){const o=document.createElement("div");o.classList.add(this.classes.optgroupSelectAll);let a=!0;for(const g of s.options)if(!g.selected){a=!1;break}a&&o.classList.add(this.classes.selected);const u=document.createElement("span");u.textContent=s.selectAllText,o.appendChild(u);const c=document.createElementNS("http://www.w3.org/2000/svg","svg");c.setAttribute("viewBox","0 0 100 100"),o.appendChild(c);const h=document.createElementNS("http://www.w3.org/2000/svg","path");h.setAttribute("d",this.classes.optgroupSelectAllBox),c.appendChild(h);const p=document.createElementNS("http://www.w3.org/2000/svg","path");p.setAttribute("d",this.classes.optgroupSelectAllCheck),c.appendChild(p),o.addEventListener("click",g=>{g.preventDefault(),g.stopPropagation();const T=this.store.getSelected();if(a){const O=T.filter(P=>{for(const D of s.options)if(P===D.id)return!1;return!0});this.callbacks.setSelected(O,!0);return}else{const O=T.concat(s.options.map(P=>P.id));for(const P of s.options)this.store.getOptionByID(P.id)||this.callbacks.addOption(P);this.callbacks.setSelected(O,!0);return}}),l.appendChild(o)}if(s.closable!=="off"){const o=document.createElement("div");o.classList.add(this.classes.optgroupClosable);const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("viewBox","0 0 100 100"),a.classList.add(this.classes.arrow),o.appendChild(a);const u=document.createElementNS("http://www.w3.org/2000/svg","path");a.appendChild(u),s.options.some(c=>c.selected)||this.content.search.input.value.trim()!==""?(o.classList.add(this.classes.open),u.setAttribute("d",this.classes.arrowOpen)):s.closable==="open"?(n.classList.add(this.classes.open),u.setAttribute("d",this.classes.arrowOpen)):s.closable==="close"&&(n.classList.add(this.classes.close),u.setAttribute("d",this.classes.arrowClose)),i.addEventListener("click",c=>{c.preventDefault(),c.stopPropagation(),n.classList.contains(this.classes.close)?(n.classList.remove(this.classes.close),n.classList.add(this.classes.open),u.setAttribute("d",this.classes.arrowOpen)):(n.classList.remove(this.classes.open),n.classList.add(this.classes.close),u.setAttribute("d",this.classes.arrowClose))}),l.appendChild(o)}n.appendChild(i);for(const o of s.options)n.appendChild(this.option(o));this.content.list.appendChild(n)}s instanceof fe&&this.content.list.appendChild(this.option(s))}}option(e){if(e.placeholder){const n=document.createElement("div");return n.classList.add(this.classes.option),n.classList.add(this.classes.hide),n}const s=document.createElement("div");return s.dataset.id=e.id,s.classList.add(this.classes.option),s.setAttribute("role","option"),e.class&&e.class.split(" ").forEach(n=>{s.classList.add(n)}),e.style&&(s.style.cssText=e.style),this.settings.searchHighlight&&this.content.search.input.value.trim()!==""?s.innerHTML=this.highlightText(e.html!==""?e.html:e.text,this.content.search.input.value,this.classes.searchHighlighter):e.html!==""?s.innerHTML=e.html:s.textContent=e.text,this.settings.showOptionTooltips&&s.textContent&&s.setAttribute("title",s.textContent),e.display||s.classList.add(this.classes.hide),e.disabled&&s.classList.add(this.classes.disabled),e.selected&&this.settings.hideSelected&&s.classList.add(this.classes.hide),e.selected?(s.classList.add(this.classes.selected),s.setAttribute("aria-selected","true"),this.main.main.setAttribute("aria-activedescendant",s.id)):(s.classList.remove(this.classes.selected),s.setAttribute("aria-selected","false")),s.addEventListener("click",n=>{n.preventDefault(),n.stopPropagation();const i=this.store.getSelected(),r=n.currentTarget,l=String(r.dataset.id);if(e.disabled||e.selected&&!this.settings.allowDeselect||this.settings.isMultiple&&this.settings.maxSelected<=i.length&&!e.selected||this.settings.isMultiple&&this.settings.minSelected>=i.length&&e.selected)return;let o=!1;const a=this.store.getSelectedOptions();let u=[];this.settings.isMultiple&&(e.selected?u=a.filter(c=>c.id!==l):u=a.concat(e)),this.settings.isMultiple||(e.selected?u=[]:u=[e]),this.callbacks.beforeChange||(o=!0),this.callbacks.beforeChange&&(this.callbacks.beforeChange(u,a)===!1?o=!1:o=!0),o&&(this.store.getOptionByID(l)||this.callbacks.addOption(e),this.callbacks.setSelected(u.map(c=>c.id),!1),this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(u))}),s}destroy(){this.main.main.remove(),this.content.main.remove()}highlightText(e,s,n){let i=e;const r=new RegExp("(?![^<]*>)("+s.trim()+")(?![^<]*>[^<>]*${a}`),i}moveContentAbove(){const e=this.main.main.offsetHeight,s=this.content.main.offsetHeight;this.main.main.classList.remove(this.classes.openBelow),this.main.main.classList.add(this.classes.openAbove),this.content.main.classList.remove(this.classes.openBelow),this.content.main.classList.add(this.classes.openAbove);const n=this.main.main.getBoundingClientRect();this.content.main.style.margin="-"+(e+s-1)+"px 0px 0px 0px",this.content.main.style.top=n.top+n.height+(this.settings.contentPosition==="fixed"?0:window.scrollY)+"px",this.content.main.style.left=n.left+(this.settings.contentPosition==="fixed"?0:window.scrollX)+"px",this.content.main.style.width=n.width+"px"}moveContentBelow(){this.main.main.classList.remove(this.classes.openAbove),this.main.main.classList.add(this.classes.openBelow),this.content.main.classList.remove(this.classes.openAbove),this.content.main.classList.add(this.classes.openBelow);const e=this.main.main.getBoundingClientRect();this.content.main.style.margin="-1px 0px 0px 0px",this.settings.contentPosition!=="relative"&&(this.content.main.style.top=e.top+e.height+(this.settings.contentPosition==="fixed"?0:window.scrollY)+"px",this.content.main.style.left=e.left+(this.settings.contentPosition==="fixed"?0:window.scrollX)+"px",this.content.main.style.width=e.width+"px")}ensureElementInView(e,s){const n=e.scrollTop+e.offsetTop,i=n+e.clientHeight,r=s.offsetTop,l=r+s.clientHeight;ri&&(e.scrollTop+=l-i)}putContent(){const e=this.main.main.offsetHeight,s=this.main.main.getBoundingClientRect(),n=this.content.main.offsetHeight;return window.innerHeight-(s.top+e)<=n&&s.top>n?"up":"down"}updateDeselectAll(){if(!this.store||!this.settings)return;const e=this.store.getSelectedOptions(),s=e&&e.length>0,n=this.settings.isMultiple,i=this.settings.allowDeselect,r=this.main.deselect.main,l=this.classes.hide;i&&!(n&&!s)?r.classList.remove(l):r.classList.add(l)}}class kc{constructor(e){this.listen=!1,this.observer=null,this.select=e,this.valueChange=this.valueChange.bind(this),this.select.addEventListener("change",this.valueChange,{passive:!0}),this.observer=new MutationObserver(this.observeCall.bind(this)),this.changeListen(!0)}enable(){this.select.disabled=!1}disable(){this.select.disabled=!0}hideUI(){this.select.tabIndex=-1,this.select.style.display="none",this.select.setAttribute("aria-hidden","true")}showUI(){this.select.removeAttribute("tabindex"),this.select.style.display="",this.select.removeAttribute("aria-hidden")}changeListen(e){this.listen=e,e&&this.observer&&this.observer.observe(this.select,{subtree:!0,childList:!0,attributes:!0}),e||this.observer&&this.observer.disconnect()}valueChange(e){return this.listen&&this.onValueChange&&this.onValueChange(this.getSelectedOptions()),!0}observeCall(e){if(!this.listen)return;let s=!1,n=!1,i=!1;for(const r of e){if(r.target===this.select&&(r.attributeName==="disabled"&&(n=!0),r.attributeName==="class"&&(s=!0),r.type==="childList")){for(const l of r.addedNodes)if(l.nodeName==="OPTION"&&l.value===this.select.value){this.select.dispatchEvent(new Event("change"));break}i=!0}(r.target.nodeName==="OPTGROUP"||r.target.nodeName==="OPTION")&&(i=!0)}s&&this.onClassChange&&this.onClassChange(this.select.className.split(" ")),n&&this.onDisabledChange&&(this.changeListen(!1),this.onDisabledChange(this.select.disabled),this.changeListen(!0)),i&&this.onOptionsChange&&(this.changeListen(!1),this.onOptionsChange(this.getData()),this.changeListen(!0))}getData(){let e=[];const s=this.select.childNodes;for(const n of s)n.nodeName==="OPTGROUP"&&e.push(this.getDataFromOptgroup(n)),n.nodeName==="OPTION"&&e.push(this.getDataFromOption(n));return e}getDataFromOptgroup(e){let s={id:e.id,label:e.label,selectAll:e.dataset?e.dataset.selectall==="true":!1,selectAllText:e.dataset?e.dataset.selectalltext:"Select all",closable:e.dataset?e.dataset.closable:"off",options:[]};const n=e.childNodes;for(const i of n)i.nodeName==="OPTION"&&s.options.push(this.getDataFromOption(i));return s}getDataFromOption(e){return{id:e.id,value:e.value,text:e.text,html:e.dataset&&e.dataset.html?e.dataset.html:"",selected:e.selected,display:e.style.display!=="none",disabled:e.disabled,mandatory:e.dataset?e.dataset.mandatory==="true":!1,placeholder:e.dataset.placeholder==="true",class:e.className,style:e.style.cssText,data:e.dataset}}getSelectedOptions(){let e=[];const s=this.select.childNodes;for(const n of s){if(n.nodeName==="OPTGROUP"){const i=n.childNodes;for(const r of i)if(r.nodeName==="OPTION"){const l=r;l.selected&&e.push(this.getDataFromOption(l))}}if(n.nodeName==="OPTION"){const i=n;i.selected&&e.push(this.getDataFromOption(i))}}return e}getSelectedValues(){return this.getSelectedOptions().map(e=>e.value)}setSelected(e){this.changeListen(!1);const s=this.select.childNodes;for(const n of s){if(n.nodeName==="OPTGROUP"){const r=n.childNodes;for(const l of r)if(l.nodeName==="OPTION"){const o=l;o.selected=e.includes(o.id)}}if(n.nodeName==="OPTION"){const i=n;i.selected=e.includes(i.id)}}this.changeListen(!0)}setSelectedByValue(e){this.changeListen(!1);const s=this.select.childNodes;for(const n of s){if(n.nodeName==="OPTGROUP"){const r=n.childNodes;for(const l of r)if(l.nodeName==="OPTION"){const o=l;o.selected=e.includes(o.value)}}if(n.nodeName==="OPTION"){const i=n;i.selected=e.includes(i.value)}}this.changeListen(!0)}updateSelect(e,s,n){this.changeListen(!1),e&&(this.select.dataset.id=e),s&&(this.select.style.cssText=s),n&&(this.select.className="",n.forEach(i=>{i.trim()!==""&&this.select.classList.add(i.trim())})),this.changeListen(!0)}updateOptions(e){this.changeListen(!1),this.select.innerHTML="";for(const s of e)s instanceof Be&&this.select.appendChild(this.createOptgroup(s)),s instanceof fe&&this.select.appendChild(this.createOption(s));this.select.dispatchEvent(new Event("change",{bubbles:!0})),this.changeListen(!0)}createOptgroup(e){const s=document.createElement("optgroup");if(s.id=e.id,s.label=e.label,e.selectAll&&(s.dataset.selectAll="true"),e.closable!=="off"&&(s.dataset.closable=e.closable),e.options)for(const n of e.options)s.appendChild(this.createOption(n));return s}createOption(e){const s=document.createElement("option");return s.id=e.id,s.value=e.value,s.textContent=e.text,e.html!==""&&s.setAttribute("data-html",e.html),e.selected&&(s.selected=e.selected),e.disabled&&(s.disabled=!0),e.display||(s.style.display="none"),e.placeholder&&s.setAttribute("data-placeholder","true"),e.mandatory&&s.setAttribute("data-mandatory","true"),e.class&&e.class.split(" ").forEach(n=>{s.classList.add(n)}),e.data&&typeof e.data=="object"&&Object.keys(e.data).forEach(n=>{s.setAttribute("data-"+Pc(n),e.data[n])}),s}destroy(){this.changeListen(!1),this.select.removeEventListener("change",this.valueChange),this.observer&&(this.observer.disconnect(),this.observer=null),delete this.select.dataset.id,this.showUI()}}class Fc{constructor(e){this.id="",this.style="",this.class=[],this.isMultiple=!1,this.isOpen=!1,this.isFullOpen=!1,this.intervalMove=null,e||(e={}),this.id="ss-"+Rn(),this.style=e.style||"",this.class=e.class||[],this.disabled=e.disabled!==void 0?e.disabled:!1,this.alwaysOpen=e.alwaysOpen!==void 0?e.alwaysOpen:!1,this.showSearch=e.showSearch!==void 0?e.showSearch:!0,this.focusSearch=e.focusSearch!==void 0?e.focusSearch:!0,this.ariaLabel=e.ariaLabel||"Combobox",this.searchPlaceholder=e.searchPlaceholder||"Search",this.searchText=e.searchText||"No Results",this.searchingText=e.searchingText||"Searching...",this.searchHighlight=e.searchHighlight!==void 0?e.searchHighlight:!1,this.closeOnSelect=e.closeOnSelect!==void 0?e.closeOnSelect:!0,this.contentLocation=e.contentLocation||document.body,this.contentPosition=e.contentPosition||"absolute",this.openPosition=e.openPosition||"auto",this.placeholderText=e.placeholderText!==void 0?e.placeholderText:"Select Value",this.allowDeselect=e.allowDeselect!==void 0?e.allowDeselect:!1,this.hideSelected=e.hideSelected!==void 0?e.hideSelected:!1,this.keepOrder=e.keepOrder!==void 0?e.keepOrder:!1,this.showOptionTooltips=e.showOptionTooltips!==void 0?e.showOptionTooltips:!1,this.minSelected=e.minSelected||0,this.maxSelected=e.maxSelected||1e3,this.timeoutDelay=e.timeoutDelay||200,this.maxValuesShown=e.maxValuesShown||20,this.maxValuesMessage=e.maxValuesMessage||"{number} selected",this.addableText=e.addableText||'Press "Enter" to add {value}'}}class Ic{constructor(e){var l;if(this.events={search:void 0,searchFilter:(o,a)=>o.text.toLowerCase().indexOf(a.toLowerCase())!==-1,addable:void 0,beforeChange:void 0,afterChange:void 0,beforeOpen:void 0,afterOpen:void 0,beforeClose:void 0,afterClose:void 0},this.windowResize=Kt(()=>{!this.settings.isOpen&&!this.settings.isFullOpen||this.render.moveContent()}),this.windowScroll=Kt(()=>{!this.settings.isOpen&&!this.settings.isFullOpen||this.render.moveContent()}),this.documentClick=o=>{this.settings.isOpen&&o.target&&!Lc(o.target,this.settings.id)&&this.close(o.type)},this.windowVisibilityChange=()=>{document.hidden&&this.close()},this.selectEl=typeof e.select=="string"?document.querySelector(e.select):e.select,!this.selectEl){e.events&&e.events.error&&e.events.error(new Error("Could not find select element"));return}if(this.selectEl.tagName!=="SELECT"){e.events&&e.events.error&&e.events.error(new Error("Element isnt of type select"));return}this.selectEl.dataset.ssid&&this.destroy(),this.settings=new Fc(e.settings),this.cssClasses=new Tc(e.cssClasses);const s=["afterChange","beforeOpen","afterOpen","beforeClose","afterClose"];for(const o in e.events)e.events.hasOwnProperty(o)&&(s.indexOf(o)!==-1?this.events[o]=Kt(e.events[o],100):this.events[o]=e.events[o]);this.settings.disabled=(l=e.settings)!=null&&l.disabled?e.settings.disabled:this.selectEl.disabled,this.settings.isMultiple=this.selectEl.multiple,this.settings.style=this.selectEl.style.cssText,this.settings.class=this.selectEl.className.split(" "),this.select=new kc(this.selectEl),this.select.updateSelect(this.settings.id,this.settings.style,this.settings.class),this.select.hideUI(),this.select.onValueChange=o=>{this.setSelected(o.map(a=>a.id))},this.select.onClassChange=o=>{this.settings.class=o,this.render.updateClassStyles()},this.select.onDisabledChange=o=>{o?this.disable():this.enable()},this.select.onOptionsChange=o=>{this.setData(o)},this.store=new Rc(this.settings.isMultiple?"multiple":"single",e.data?e.data:this.select.getData()),e.data&&this.select.updateOptions(this.store.getData());const n={open:this.open.bind(this),close:this.close.bind(this),addable:this.events.addable?this.events.addable:void 0,setSelected:this.setSelected.bind(this),addOption:this.addOption.bind(this),search:this.search.bind(this),beforeChange:this.events.beforeChange,afterChange:this.events.afterChange};this.render=new Dc(this.settings,this.cssClasses,this.store,n),this.render.renderValues(),this.render.renderOptions(this.store.getData());const i=this.selectEl.getAttribute("aria-label"),r=this.selectEl.getAttribute("aria-labelledby");i?this.render.main.main.setAttribute("aria-label",i):r&&this.render.main.main.setAttribute("aria-labelledby",r),this.selectEl.parentNode&&this.selectEl.parentNode.insertBefore(this.render.main.main,this.selectEl.nextSibling),window.addEventListener("resize",this.windowResize,!1),this.settings.openPosition==="auto"&&window.addEventListener("scroll",this.windowScroll,!1),document.addEventListener("visibilitychange",this.windowVisibilityChange),this.settings.disabled&&this.disable(),this.settings.alwaysOpen&&this.open(),this.selectEl.slim=this}enable(){this.settings.disabled=!1,this.select.enable(),this.render.enable()}disable(){this.settings.disabled=!0,this.select.disable(),this.render.disable()}getData(){return this.store.getData()}setData(e){const s=this.store.getSelected(),n=this.store.validateDataArray(e);if(n){this.events.error&&this.events.error(n);return}this.store.setData(e);const i=this.store.getData();this.select.updateOptions(i),this.render.renderValues(),this.render.renderOptions(i),this.events.afterChange&&!Ks(s,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}getSelected(){let e=this.store.getSelectedOptions();return this.settings.keepOrder&&(e=this.store.selectedOrderOptions(e)),e.map(s=>s.value)}setSelected(e,s=!0){const n=this.store.getSelected(),i=this.store.getDataOptions();e=Array.isArray(e)?e:[e];const r=[];for(const o of e){if(i.find(a=>a.id==o)){r.push(o);continue}for(const a of i.filter(u=>u.value==o))r.push(a.id)}this.store.setSelectedBy("id",r);const l=this.store.getData();this.select.updateOptions(l),this.render.renderValues(),this.render.content.search.input.value!==""?this.search(this.render.content.search.input.value):this.render.renderOptions(l),s&&this.events.afterChange&&!Ks(n,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}addOption(e){const s=this.store.getSelected();this.store.getDataOptions().some(i=>i.value===(e.value??e.text))||this.store.addOption(e);const n=this.store.getData();this.select.updateOptions(n),this.render.renderValues(),this.render.renderOptions(n),this.events.afterChange&&!Ks(s,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}open(){this.settings.disabled||this.settings.isOpen||(this.events.beforeOpen&&this.events.beforeOpen(),this.render.open(),this.settings.showSearch&&this.settings.focusSearch&&this.render.searchFocus(),this.settings.isOpen=!0,setTimeout(()=>{this.events.afterOpen&&this.events.afterOpen(),this.settings.isOpen&&(this.settings.isFullOpen=!0),document.addEventListener("click",this.documentClick)},this.settings.timeoutDelay),this.settings.contentPosition==="absolute"&&(this.settings.intervalMove&&clearInterval(this.settings.intervalMove),this.settings.intervalMove=setInterval(this.render.moveContent.bind(this.render),500)))}close(e=null){!this.settings.isOpen||this.settings.alwaysOpen||(this.events.beforeClose&&this.events.beforeClose(),this.render.close(),this.render.content.search.input.value!==""&&this.search(""),this.render.mainFocus(e),this.settings.isOpen=!1,this.settings.isFullOpen=!1,setTimeout(()=>{this.events.afterClose&&this.events.afterClose(),document.removeEventListener("click",this.documentClick)},this.settings.timeoutDelay),this.settings.intervalMove&&clearInterval(this.settings.intervalMove))}search(e){if(this.render.content.search.input.value!==e&&(this.render.content.search.input.value=e),!this.events.search){this.render.renderOptions(e===""?this.store.getData():this.store.search(e,this.events.searchFilter));return}this.render.renderSearching();const s=this.events.search(e,this.store.getSelectedOptions());if(s instanceof Promise){s.then(n=>{this.render.renderOptions(this.store.partialToFullData(n))}).catch(n=>{this.render.renderError(typeof n=="string"?n:n.message)});return}else Array.isArray(s)?this.render.renderOptions(this.store.partialToFullData(s)):this.render.renderError("Search event must return a promise or an array of data")}destroy(){document.removeEventListener("click",this.documentClick),window.removeEventListener("resize",this.windowResize,!1),this.settings.openPosition==="auto"&&window.removeEventListener("scroll",this.windowScroll,!1),document.removeEventListener("visibilitychange",this.windowVisibilityChange),this.store.setData([]),this.render.destroy(),this.select.destroy()}}const Mc="CWYDT23U",Nc="slimselectjscom",Bc=Ts({__name:"carbonad",setup(t){const e=er(null);let s=!1;return hr(()=>{const n=window.location.hostname==="localhost";if(!s&&!n){s=!0;const i=document.createElement("script");i.id="_carbonads_js",i.src=`//cdn.carbonads.com/carbon.js?serve=${Mc}&placement=${Nc}`,i.async=!0,e.value&&e.value.appendChild(i)}}),(n,i)=>wt(s)?(Jt(),kr("div",{key:0,class:"carbon-container",ref_key:"container",ref:e},null,512)):Vo("",!0)}}),Hc=Ts({name:"App",components:{CarbonAd:Bc},data(){return{nav:null,navDebounce:Kt(()=>{this.setDemensions()},100),year:new Date().getFullYear(),width:0,height:0,navData:[{text:"Home",value:"/",class:"label"},{label:"Install",closable:"close",options:[{text:"npm",value:"install#npm"},{text:"cdn",value:"install#cdn"},{text:"download",value:"install#download"}]},{label:"Selects",closable:"close",options:[{text:"single",value:"selects#single"},{text:"multiple",value:"selects#multiple"}]},{label:"Data",closable:"close",options:[{text:"types",value:"data#types"},{text:"field",value:"data#field"}]},{label:"Examples",closable:"close",options:[{text:"countries",value:"examples#countries"}]},{label:"Settings",closable:"close",options:[{text:"select",value:"settings#select"},{text:"cssClasses",value:"settings#cssClasses"},{text:"alwaysOpen",value:"settings#alwaysOpen"},{text:"contentLocation",value:"settings#contentLocation"},{text:"contentPosition",value:"settings#contentPosition"},{text:"openPosition",value:"settings#openPosition"},{text:"placeholder",value:"settings#placeholder"},{text:"selectAll",value:"settings#selectAll"},{text:"allowDeselect",value:"settings#allowDeselect"},{text:"display",value:"settings#display"},{text:"disabled",value:"settings#disabled"},{text:"mandatory",value:"settings#mandatory"},{text:"minmax",value:"settings#minmax"},{text:"dataAttributes",value:"settings#dataAttributes"},{text:"cssClass",value:"settings#cssClass"},{text:"inlineStyles",value:"settings#inlineStyles"},{text:"html",value:"settings#html"},{text:"keepOrder",value:"settings#keepOrder"},{text:"search",value:"settings#search"},{text:"closeOnSelect",value:"settings#closeOnSelect"},{text:"showOptionTooltips",value:"settings#showOptionTooltips"},{text:"closable",value:"settings#closable"},{text:"hideSelected",value:"settings#hideSelected"},{text:"maxValuesShown",value:"settings#maxValuesShown"}]},{label:"Events",closable:"close",options:[{text:"error",value:"events#error"},{text:"beforeChange",value:"events#beforeChange"},{text:"afterChange",value:"events#afterChange"},{text:"open",value:"events#open"},{text:"search",value:"events#search"},{text:"searchFilter",value:"events#searchFilter"},{text:"addable",value:"events#addable"}]},{label:"Methods",closable:"close",options:[{text:"getSelected",value:"methods#getSelected"},{text:"setSelected",value:"methods#setSelected"},{text:"getData",value:"methods#getData"},{text:"setData",value:"methods#setData"},{text:"enableDisable",value:"methods#enableDisable"},{text:"openClose",value:"methods#openClose"},{text:"search",value:"methods#search"},{text:"destroy",value:"methods#destroy"}]},{label:"Frameworks",closable:"close",options:[{text:"vue",value:"vue"}]}]}},mounted(){this.runNav(),this.$router.isReady().then(()=>{this.nav&&this.nav.setSelected(this.$router.currentRoute.value.fullPath.replace("/",""))}),this.$router.afterEach(()=>{if(this.$route.query.p){setTimeout(()=>{this.$route.query.p&&this.$router.push({path:this.$route.query.p.toString(),hash:this.$route.hash})},200);return}setTimeout(()=>{const t=this.$route.hash;if(t===""&&window.scroll({top:0,behavior:"smooth"}),t){const e=document.querySelector(t);if(e){const s=document.querySelector("header"),n=document.querySelector("nav"),i=s?s.clientHeight+(window.innerWidth<700?n.clientHeight:0)+8:0;window.scroll({top:e.offsetTop-i,behavior:"smooth"})}}},200)}),this.setDemensions(),window.addEventListener("resize",this.navDebounce),window.addEventListener("nav-updated",this.updateNav)},unmounted(){var t;window.removeEventListener("resize",this.navDebounce),window.removeEventListener("nav-updated",this.updateNav),(t=this.nav)==null||t.destroy()},watch:{width(){this.runNav()}},methods:{setDemensions(){this.width=document.documentElement.clientWidth,this.height=document.documentElement.clientHeight},runNav(){this.nav&&(this.nav.destroy(),this.nav=null);let t={searchHighlight:!0,openContent:"below"};this.width>700&&(t.alwaysOpen=!0,t.contentPosition="relative",t.contentLocation=this.$refs.navContent),this.nav=new Ic({select:this.$refs.nav,data:this.navData,settings:t,events:{afterChange:e=>{const n=e[0].value.split("#"),i=n[0],r=n[1]?"#"+n[1]:void 0;this.$router.push({path:i,hash:r})}}})},updateNav(){setTimeout(()=>{this.nav&&this.nav.setSelected(this.$router.currentRoute.value.fullPath.replace("/",""))},0)}}}),Vc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpFNTE3OEEyRTk5QTAxMUUyOUExNUJDMTA0NkE4OTA0RCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpFNTE3OEEyRjk5QTAxMUUyOUExNUJDMTA0NkE4OTA0RCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkU1MTc4QTJDOTlBMDExRTI5QTE1QkMxMDQ2QTg5MDREIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkU1MTc4QTJEOTlBMDExRTI5QTE1QkMxMDQ2QTg5MDREIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+FYrpWAAABrNJREFUeNrkW2lsVFUUvjMWirYUkS5BXApUa2vd6gL+wAWjoP5RiW2EUBajAiqSuPADQ0w1UUQTrcFAUUSJEKriEuMWFKuJIElFSS24YNpQK6WoBbuAktbva880M8O8vnfevJm+CSf5cme599xzvnfffffce17AJFjycnLzUVwDXAgUAucBY4BMIEOqdQIdwJ/Az4J64OvWtoONibQvkACHgyiuBe4CbgLOjVNlE/AZsAmoBSE9viQAjueieBCYC5yVoAvWDKwHqkBEmy8IgON09lHgXmCESY4cBaqBlSCieUgIgOPDUCwBngBOM0MjXdL/CyDiv6QRAOcvR7EBKDL+kD3AbJBQl1AC4DjrLwaeBYYbf8m/ciu+BCJ6PScAzp+K4nXgTuNveQuYAxK6PSMAzo9C8TFwtUkN2Q7cDBIOx02AOP8FUGpSSzgf3GBHQsDGec7unwOTTWrKDiGhS02ATHjvALeb1JZ3gRlWE+MpVq0yMzIekRk/1YWP6o7Ors5vHI8AXH1Odl8BaTbKrwd4j10MTAduS8JqkKvA94BPgN0A56htNm2OMyDDKNhuSwCcT5dIrMBG6S4oLI1qezqKBcBjwGiPHW8HVgCr0W97VL/fobjMpv2vQAnaHgv/MdYVXurAeSNPhggRw56BQatRVgL3A0H5+xDwI8Dw9g/5Hlq+clmdDYwF8iV0zpb/GP2tApZHOx4m2xwQUCC+VVqOABg+AUUDkO6AgHkwaL2DJXORxPVNylUnw+gpXObaLXFRlxHoaw7U8uoXQ99vViNgqUPnKQfsKojhdW7GuxDW5JUtIuni432hH4JhLJ7Dq6qwcZiPZnpNXDJPfI0kQEJbjVM5PiIgW3nhlkQQILH9LGWnV/iIAK0ts8TngREwDchVKrnKRwRobckVnwcIKFcq4ONrkY8IWBT2SHUq5eEE3Khs/CRm6Z1+8V5sqVQ26/M5gHuhSJ79TqUFmIhOj/ppwQ8/Rshqb5yiWXFQFhsaWeU352UU0KaXlc2mBI1+Y3OzjyO/Gm2kSAIKFQ2awfQ+v3oP23gL/K5oUhh0GPiEZG8KxP97FHULgsqwtTUFCDioqHsGCRipaHA8BQjQrAcyg4roj5KVAgSMUtRNDyqVj0wBAlQ2koBuRf3xKUBAvqJuN1eCrYpAiHNAltNjpyFYDfL47oix38wdmDA5AvYr+kjzWRgcLVcqnKfsJwGNyk5u9TEBtyjrNwaVgRClTPKA/Db8aVOZslkDG2nD2vEuOkqGlLmYpHcGJLlJu8LjtvJFgx06Jvnq8xC33gUBeUE4waWjduua5wdVPrr6VS6cr6PvoXv5Ixed3g3mH/fB1V9OW1w07fM5IEouUEZR4bIWWJzsTRJ55r8I3ONSRRFs3hsIU8hkgkkulf0CPAx8qElQcuk4beYp9Epgoks138LOvqSPgfyAzIwMZlnFSobgIegc4H3gH6AkxmKDub9Mjb0DeoYDrZ1dne0eO14AvfPx8RXgAYaycahbBvt+GLgFpIM0md3PjqrMTMxpYKxB6p1v+s/n7bbSuMCqldmZyc+fRh9ND+IsAxrmG3C3qtj0J1uP84hLrnwnwJbjEQRIxzw0XB2jER93C9Bog9TjsRgzLpzuJr0BzHV6e8gwf9XoziqdCv1YE/oSTQBHwfem/3w+5syPxuukLtfdO0zk+WIs+YuPKLQ7ohzyWTIix3joPPMTLg1d/Yg5gIL7ogf32U/4WGGhYDr+34J6bUALPpPA62w6XYMOP9BaCv3HoD/PeJubODN6U/eEq4cKTIurttpBAZ4L+87TmKdtOt0ah8FbPXS+WnyLEKskqUy5FaweM5dA2e6w+pNkZuajhfMD3/zYBfDKb3Y6+cWwgytOL7bh98nQ73BEgHReIvd4Roy/a6Cs3CRYJOnq7zjV8HWcybC33mpLLKZIA84FPRYhcSokUNL2Civnjd0MjoZbUCy0+PtNkDDD5wQsFB8sxWm2+GJZd8eSt4HnZXnZ66Nb4CHYYxuxat4XmI1inbHeczskq77DMrK4z8AgK3+Q/L5EEMBn/PzQos0zAsQgvg5XY3TpNKOTSAD3NsrQX63TBqq9PVHM9NgvfXi/06ZSjfNqAoQEHj9Pled+pw8cpw2co6aKbSoJxDlJnYniKdP/sqSVrrEw7IBL/TnG+rSXEy7fYVoG/S1uffDkzVEYypB1qewJRCdb5rp9yxN6mQDZFmOS2wisCIXo8Yin7w7LiKiQEcFYfhOMnBmnzo1CLIO09Qyt47niJxDQ29trTmY56Qn4X4ABAFR7IoDmVT5NAAAAAElFTkSuQmCC",Uc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACAAQMAAAD58POIAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZQTFRFyzg3////IltC9QAAAAFiS0dEAf8CLd4AAAAJcEhZcwAACxMAAAsTAQCanBgAAAAkSURBVEjHY2AYBYMV/IeDUQG4AJgeFRgVGBUYFSBNYBQMPgAARjtdvxo6xaMAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTEtMDUtMzBUMjM6MTA6NDQtMDc6MDCm4GvfAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDEwLTEyLTA2VDEyOjIwOjEyLTA4OjAwpIGEmQAAADJ0RVh0UE5HOmNIUk0AY2h1bmsgd2FzIGZvdW5kIChzZWUgQ2hyb21hdGljaXR5LCBhYm92ZSkH0UjaAAAAKXRFWHRQTkc6Z0FNQQBnYW1tYT0wLjQ1NDU1IChTZWUgR2FtbWEsIGFib3ZlKRISLKcAAAAUdEVYdFBORzpJSERSLmJpdF9kZXB0aAA4KYV+UAAAABV0RVh0UE5HOklIRFIuY29sb3JfdHlwZQA2BkqnKwAAABt0RVh0UE5HOklIRFIuaW50ZXJsYWNlX21ldGhvZAAw+zsHjAAAABx0RVh0UE5HOklIRFIud2lkdGgsaGVpZ2h0ADE2LCAxNjjVBg0AAAAodEVYdFBORzpwSFlzAHhfcmVzPTI4MzUsIHlfcmVzPTI4MzUsIHVuaXRzPTGCKXI+AAAAKHRFWHRQTkc6c1JHQgBpbnRlbnQ9MCAoU2VlIFJlbmRlcmluZyBpbnRlbnQp8hEU9QAAAABJRU5ErkJggg==",jc=(t,e)=>{const s=t.__vccOpts||t;for(const[n,i]of e)s[n]=i;return s},$c={ref:"nav"},Wc={class:"nav-content",ref:"navContent"};function zc(t,e,s,n,i,r){const l=Hn("CarbonAd"),o=Hn("router-view");return Jt(),kr(ke,null,[e[4]||(e[4]=Ho('

Slim Select 2.0

Advanced select dropdown
',1)),Ze("nav",null,[Ze("select",$c,null,512),Ze("div",Wc,null,512),pe(l)]),Ze("main",null,[pe(o),Ze("footer",null,[hs(" © "+Mi(t.year)+" ",1),e[0]||(e[0]=Ze("a",{href:"http://webiswhatido.com",style:{color:"#ffffff"},target:"_blank"},"Brian Voelker",-1)),e[1]||(e[1]=hs(". ")),e[2]||(e[2]=Ze("br",null,null,-1)),e[3]||(e[3]=hs(" Slim Select is under the MIT license. "))])])],64)}const Gc=jc(Hc,[["render",zc]]);var Ti=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Zr(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Xr={exports:{}};(function(t){var e=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};/** * Prism: Lightweight, robust, elegant syntax highlighting * * @license MIT * @author Lea Verou * @namespace * @public - */var s=function(n){var i=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,r=0,l={},o={manual:n.Prism&&n.Prism.manual,disableWorkerMessageHandler:n.Prism&&n.Prism.disableWorkerMessageHandler,util:{encode:function m(v){return v instanceof a?new a(v.type,m(v.content),v.alias):Array.isArray(v)?v.map(m):v.replace(/&/g,"&").replace(/"u")return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(x){var m=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(x.stack)||[])[1];if(m){var v=document.getElementsByTagName("script");for(var y in v)if(v[y].src==m)return v[y]}return null}},isActive:function(m,v,y){for(var x="no-"+v;m;){var _=m.classList;if(_.contains(v))return!0;if(_.contains(x))return!1;m=m.parentElement}return!!y}},languages:{plain:l,plaintext:l,text:l,txt:l,extend:function(m,v){var y=o.util.clone(o.languages[m]);for(var x in v)y[x]=v[x];return y},insertBefore:function(m,v,y,x){x=x||o.languages;var _=x[m],k={};for(var W in _)if(_.hasOwnProperty(W)){if(W==v)for(var H in y)y.hasOwnProperty(H)&&(k[H]=y[H]);y.hasOwnProperty(W)||(k[W]=_[W])}var Y=x[m];return x[m]=k,o.languages.DFS(o.languages,function(re,ge){ge===Y&&re!=m&&(this[re]=k)}),k},DFS:function m(v,y,x,_){_=_||{};var k=o.util.objId;for(var W in v)if(v.hasOwnProperty(W)){y.call(v,W,v[W],x||W);var H=v[W],Y=o.util.type(H);Y==="Object"&&!_[k(H)]?(_[k(H)]=!0,m(H,y,null,_)):Y==="Array"&&!_[k(H)]&&(_[k(H)]=!0,m(H,y,W,_))}}},plugins:{},highlightAll:function(m,v){o.highlightAllUnder(document,m,v)},highlightAllUnder:function(m,v,y){var x={callback:y,container:m,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};o.hooks.run("before-highlightall",x),x.elements=Array.prototype.slice.apply(x.container.querySelectorAll(x.selector)),o.hooks.run("before-all-elements-highlight",x);for(var _=0,k;k=x.elements[_++];)o.highlightElement(k,v===!0,x.callback)},highlightElement:function(m,v,y){var x=o.util.getLanguage(m),_=o.languages[x];o.util.setLanguage(m,x);var k=m.parentElement;k&&k.nodeName.toLowerCase()==="pre"&&o.util.setLanguage(k,x);var W=m.textContent,H={element:m,language:x,grammar:_,code:W};function Y(ge){H.highlightedCode=ge,o.hooks.run("before-insert",H),H.element.innerHTML=H.highlightedCode,o.hooks.run("after-highlight",H),o.hooks.run("complete",H),y&&y.call(H.element)}if(o.hooks.run("before-sanity-check",H),k=H.element.parentElement,k&&k.nodeName.toLowerCase()==="pre"&&!k.hasAttribute("tabindex")&&k.setAttribute("tabindex","0"),!H.code){o.hooks.run("complete",H),y&&y.call(H.element);return}if(o.hooks.run("before-highlight",H),!H.grammar){Y(o.util.encode(H.code));return}if(v&&n.Worker){var re=new Worker(o.filename);re.onmessage=function(ge){Y(ge.data)},re.postMessage(JSON.stringify({language:H.language,code:H.code,immediateClose:!0}))}else Y(o.highlight(H.code,H.grammar,H.language))},highlight:function(m,v,y){var x={code:m,grammar:v,language:y};if(o.hooks.run("before-tokenize",x),!x.grammar)throw new Error('The language "'+x.language+'" has no grammar.');return x.tokens=o.tokenize(x.code,x.grammar),o.hooks.run("after-tokenize",x),a.stringify(o.util.encode(x.tokens),x.language)},tokenize:function(m,v){var y=v.rest;if(y){for(var x in y)v[x]=y[x];delete v.rest}var _=new h;return p(_,_.head,m),c(m,_,v,_.head,0),T(_)},hooks:{all:{},add:function(m,v){var y=o.hooks.all;y[m]=y[m]||[],y[m].push(v)},run:function(m,v){var y=o.hooks.all[m];if(!(!y||!y.length))for(var x=0,_;_=y[x++];)_(v)}},Token:a};n.Prism=o;function a(m,v,y,x){this.type=m,this.content=v,this.alias=y,this.length=(x||"").length|0}a.stringify=function m(v,y){if(typeof v=="string")return v;if(Array.isArray(v)){var x="";return v.forEach(function(Y){x+=m(Y,y)}),x}var _={type:v.type,content:m(v.content,y),tag:"span",classes:["token",v.type],attributes:{},language:y},k=v.alias;k&&(Array.isArray(k)?Array.prototype.push.apply(_.classes,k):_.classes.push(k)),o.hooks.run("wrap",_);var W="";for(var H in _.attributes)W+=" "+H+'="'+(_.attributes[H]||"").replace(/"/g,""")+'"';return"<"+_.tag+' class="'+_.classes.join(" ")+'"'+W+">"+_.content+""};function u(m,v,y,x){m.lastIndex=v;var _=m.exec(y);if(_&&x&&_[1]){var k=_[1].length;_.index+=k,_[0]=_[0].slice(k)}return _}function c(m,v,y,x,_,k){for(var W in y)if(!(!y.hasOwnProperty(W)||!y[W])){var H=y[W];H=Array.isArray(H)?H:[H];for(var Y=0;Y=k.reach);ce+=j.value.length,j=j.next){var Ae=j.value;if(v.length>m.length)return;if(!(Ae instanceof a)){var xe=1,te;if(it){if(te=u(Q,ce,m,Oe),!te||te.index>=m.length)break;var de=te.index,lt=te.index+te[0].length,Ee=ce;for(Ee+=j.value.length;de>=Ee;)j=j.next,Ee+=j.value.length;if(Ee-=j.value.length,ce=Ee,j.value instanceof a)continue;for(var je=j;je!==v.tail&&(Eek.reach&&(k.reach=B);var K=j.prev;M&&(K=p(v,K,M),ce+=M.length),g(v,K,xe);var le=new a(W,ge?o.tokenize(w,ge):w,rt,w);if(j=p(v,K,le),F&&p(v,j,F),xe>1){var f={cause:W+","+Y,reach:B};c(m,v,y,j.prev,ce,f),k&&f.reach>k.reach&&(k.reach=f.reach)}}}}}}function h(){var m={value:null,prev:null,next:null},v={value:null,prev:m,next:null};m.next=v,this.head=m,this.tail=v,this.length=0}function p(m,v,y){var x=v.next,_={value:y,prev:v,next:x};return v.next=_,x.prev=_,m.length++,_}function g(m,v,y){for(var x=v.next,_=0;_/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},s.languages.markup.tag.inside["attr-value"].inside.entity=s.languages.markup.entity,s.languages.markup.doctype.inside["internal-subset"].inside=s.languages.markup,s.hooks.add("wrap",function(n){n.type==="entity"&&(n.attributes.title=n.content.replace(/&/,"&"))}),Object.defineProperty(s.languages.markup.tag,"addInlined",{value:function(i,r){var l={};l["language-"+r]={pattern:/(^$)/i,lookbehind:!0,inside:s.languages[r]},l.cdata=/^$/i;var o={"included-cdata":{pattern://i,inside:l}};o["language-"+r]={pattern:/[\s\S]+/,inside:s.languages[r]};var a={};a[i]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,function(){return i}),"i"),lookbehind:!0,greedy:!0,inside:o},s.languages.insertBefore("markup","cdata",a)}}),Object.defineProperty(s.languages.markup.tag,"addAttribute",{value:function(n,i){s.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+n+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[i,"language-"+i],inside:s.languages[i]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),s.languages.html=s.languages.markup,s.languages.mathml=s.languages.markup,s.languages.svg=s.languages.markup,s.languages.xml=s.languages.extend("markup",{}),s.languages.ssml=s.languages.xml,s.languages.atom=s.languages.xml,s.languages.rss=s.languages.xml,function(n){var i=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;n.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+i.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+i.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+i.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+i.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:i,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},n.languages.css.atrule.inside.rest=n.languages.css;var r=n.languages.markup;r&&(r.tag.addInlined("style","css"),r.tag.addAttribute("style","css"))}(s),s.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},s.languages.javascript=s.languages.extend("clike",{"class-name":[s.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),s.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,s.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:s.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:s.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:s.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:s.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:s.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),s.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:s.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),s.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),s.languages.markup&&(s.languages.markup.tag.addInlined("script","javascript"),s.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),s.languages.js=s.languages.javascript,function(){if(typeof s>"u"||typeof document>"u")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var n="Loading…",i=function(O,R){return"✖ Error "+O+" while fetching file: "+R},r="✖ Error: File does not exist or is empty",l={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},o="data-src-status",a="loading",u="loaded",c="failed",h="pre[data-src]:not(["+o+'="'+u+'"]):not(['+o+'="'+a+'"])';function p(O,R,D){var m=new XMLHttpRequest;m.open("GET",O,!0),m.onreadystatechange=function(){m.readyState==4&&(m.status<400&&m.responseText?R(m.responseText):m.status>=400?D(i(m.status,m.statusText)):D(r))},m.send(null)}function g(O){var R=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(O||"");if(R){var D=Number(R[1]),m=R[2],v=R[3];return m?v?[D,Number(v)]:[D,void 0]:[D,D]}}s.hooks.add("before-highlightall",function(O){O.selector+=", "+h}),s.hooks.add("before-sanity-check",function(O){var R=O.element;if(R.matches(h)){O.code="",R.setAttribute(o,a);var D=R.appendChild(document.createElement("CODE"));D.textContent=n;var m=R.getAttribute("data-src"),v=O.language;if(v==="none"){var y=(/\.(\w+)$/.exec(m)||[,"none"])[1];v=l[y]||y}s.util.setLanguage(D,v),s.util.setLanguage(R,v);var x=s.plugins.autoloader;x&&x.loadLanguages(v),p(m,function(_){R.setAttribute(o,u);var k=g(R.getAttribute("data-range"));if(k){var W=_.split(/\r\n?|\n/g),H=k[0],Y=k[1]==null?W.length:k[1];H<0&&(H+=W.length),H=Math.max(0,Math.min(H-1,W.length)),Y<0&&(Y+=W.length),Y=Math.max(0,Math.min(Y,W.length)),_=W.slice(H,Y).join(` -`),R.hasAttribute("data-start")||R.setAttribute("data-start",String(H+1))}D.textContent=_,s.highlightElement(D)},function(_){R.setAttribute(o,c),D.textContent=_})}}),s.plugins.fileHighlight={highlight:function(R){for(var D=(R||document).querySelectorAll(h),m=0,v;v=D[m++];)s.highlightElement(v)}};var T=!1;s.fileHighlight=function(){T||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),T=!0),s.plugins.fileHighlight.highlight.apply(this,arguments)}}()})(Xr);var Kc=Xr.exports;const qc=Zr(Kc);var el={exports:{}};(function(t){(function(){if(typeof Prism>"u")return;var e=Object.assign||function(l,o){for(var a in o)o.hasOwnProperty(a)&&(l[a]=o[a]);return l};function s(l){this.defaults=e({},l)}function n(l){return l.replace(/-(\w)/g,function(o,a){return a.toUpperCase()})}function i(l){for(var o=0,a=0;a"u")return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(x){var m=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(x.stack)||[])[1];if(m){var v=document.getElementsByTagName("script");for(var y in v)if(v[y].src==m)return v[y]}return null}},isActive:function(m,v,y){for(var x="no-"+v;m;){var _=m.classList;if(_.contains(v))return!0;if(_.contains(x))return!1;m=m.parentElement}return!!y}},languages:{plain:l,plaintext:l,text:l,txt:l,extend:function(m,v){var y=o.util.clone(o.languages[m]);for(var x in v)y[x]=v[x];return y},insertBefore:function(m,v,y,x){x=x||o.languages;var _=x[m],F={};for(var W in _)if(_.hasOwnProperty(W)){if(W==v)for(var H in y)y.hasOwnProperty(H)&&(F[H]=y[H]);y.hasOwnProperty(W)||(F[W]=_[W])}var Y=x[m];return x[m]=F,o.languages.DFS(o.languages,function(re,ge){ge===Y&&re!=m&&(this[re]=F)}),F},DFS:function m(v,y,x,_){_=_||{};var F=o.util.objId;for(var W in v)if(v.hasOwnProperty(W)){y.call(v,W,v[W],x||W);var H=v[W],Y=o.util.type(H);Y==="Object"&&!_[F(H)]?(_[F(H)]=!0,m(H,y,null,_)):Y==="Array"&&!_[F(H)]&&(_[F(H)]=!0,m(H,y,W,_))}}},plugins:{},highlightAll:function(m,v){o.highlightAllUnder(document,m,v)},highlightAllUnder:function(m,v,y){var x={callback:y,container:m,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};o.hooks.run("before-highlightall",x),x.elements=Array.prototype.slice.apply(x.container.querySelectorAll(x.selector)),o.hooks.run("before-all-elements-highlight",x);for(var _=0,F;F=x.elements[_++];)o.highlightElement(F,v===!0,x.callback)},highlightElement:function(m,v,y){var x=o.util.getLanguage(m),_=o.languages[x];o.util.setLanguage(m,x);var F=m.parentElement;F&&F.nodeName.toLowerCase()==="pre"&&o.util.setLanguage(F,x);var W=m.textContent,H={element:m,language:x,grammar:_,code:W};function Y(ge){H.highlightedCode=ge,o.hooks.run("before-insert",H),H.element.innerHTML=H.highlightedCode,o.hooks.run("after-highlight",H),o.hooks.run("complete",H),y&&y.call(H.element)}if(o.hooks.run("before-sanity-check",H),F=H.element.parentElement,F&&F.nodeName.toLowerCase()==="pre"&&!F.hasAttribute("tabindex")&&F.setAttribute("tabindex","0"),!H.code){o.hooks.run("complete",H),y&&y.call(H.element);return}if(o.hooks.run("before-highlight",H),!H.grammar){Y(o.util.encode(H.code));return}if(v&&n.Worker){var re=new Worker(o.filename);re.onmessage=function(ge){Y(ge.data)},re.postMessage(JSON.stringify({language:H.language,code:H.code,immediateClose:!0}))}else Y(o.highlight(H.code,H.grammar,H.language))},highlight:function(m,v,y){var x={code:m,grammar:v,language:y};if(o.hooks.run("before-tokenize",x),!x.grammar)throw new Error('The language "'+x.language+'" has no grammar.');return x.tokens=o.tokenize(x.code,x.grammar),o.hooks.run("after-tokenize",x),a.stringify(o.util.encode(x.tokens),x.language)},tokenize:function(m,v){var y=v.rest;if(y){for(var x in y)v[x]=y[x];delete v.rest}var _=new h;return p(_,_.head,m),c(m,_,v,_.head,0),T(_)},hooks:{all:{},add:function(m,v){var y=o.hooks.all;y[m]=y[m]||[],y[m].push(v)},run:function(m,v){var y=o.hooks.all[m];if(!(!y||!y.length))for(var x=0,_;_=y[x++];)_(v)}},Token:a};n.Prism=o;function a(m,v,y,x){this.type=m,this.content=v,this.alias=y,this.length=(x||"").length|0}a.stringify=function m(v,y){if(typeof v=="string")return v;if(Array.isArray(v)){var x="";return v.forEach(function(Y){x+=m(Y,y)}),x}var _={type:v.type,content:m(v.content,y),tag:"span",classes:["token",v.type],attributes:{},language:y},F=v.alias;F&&(Array.isArray(F)?Array.prototype.push.apply(_.classes,F):_.classes.push(F)),o.hooks.run("wrap",_);var W="";for(var H in _.attributes)W+=" "+H+'="'+(_.attributes[H]||"").replace(/"/g,""")+'"';return"<"+_.tag+' class="'+_.classes.join(" ")+'"'+W+">"+_.content+""};function u(m,v,y,x){m.lastIndex=v;var _=m.exec(y);if(_&&x&&_[1]){var F=_[1].length;_.index+=F,_[0]=_[0].slice(F)}return _}function c(m,v,y,x,_,F){for(var W in y)if(!(!y.hasOwnProperty(W)||!y[W])){var H=y[W];H=Array.isArray(H)?H:[H];for(var Y=0;Y=F.reach);ce+=j.value.length,j=j.next){var Ae=j.value;if(v.length>m.length)return;if(!(Ae instanceof a)){var xe=1,te;if(it){if(te=u(Q,ce,m,Oe),!te||te.index>=m.length)break;var de=te.index,lt=te.index+te[0].length,Ee=ce;for(Ee+=j.value.length;de>=Ee;)j=j.next,Ee+=j.value.length;if(Ee-=j.value.length,ce=Ee,j.value instanceof a)continue;for(var je=j;je!==v.tail&&(EeF.reach&&(F.reach=B);var K=j.prev;M&&(K=p(v,K,M),ce+=M.length),g(v,K,xe);var le=new a(W,ge?o.tokenize(w,ge):w,rt,w);if(j=p(v,K,le),k&&p(v,j,k),xe>1){var f={cause:W+","+Y,reach:B};c(m,v,y,j.prev,ce,f),F&&f.reach>F.reach&&(F.reach=f.reach)}}}}}}function h(){var m={value:null,prev:null,next:null},v={value:null,prev:m,next:null};m.next=v,this.head=m,this.tail=v,this.length=0}function p(m,v,y){var x=v.next,_={value:y,prev:v,next:x};return v.next=_,x.prev=_,m.length++,_}function g(m,v,y){for(var x=v.next,_=0;_/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},s.languages.markup.tag.inside["attr-value"].inside.entity=s.languages.markup.entity,s.languages.markup.doctype.inside["internal-subset"].inside=s.languages.markup,s.hooks.add("wrap",function(n){n.type==="entity"&&(n.attributes.title=n.content.replace(/&/,"&"))}),Object.defineProperty(s.languages.markup.tag,"addInlined",{value:function(i,r){var l={};l["language-"+r]={pattern:/(^$)/i,lookbehind:!0,inside:s.languages[r]},l.cdata=/^$/i;var o={"included-cdata":{pattern://i,inside:l}};o["language-"+r]={pattern:/[\s\S]+/,inside:s.languages[r]};var a={};a[i]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,function(){return i}),"i"),lookbehind:!0,greedy:!0,inside:o},s.languages.insertBefore("markup","cdata",a)}}),Object.defineProperty(s.languages.markup.tag,"addAttribute",{value:function(n,i){s.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+n+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[i,"language-"+i],inside:s.languages[i]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),s.languages.html=s.languages.markup,s.languages.mathml=s.languages.markup,s.languages.svg=s.languages.markup,s.languages.xml=s.languages.extend("markup",{}),s.languages.ssml=s.languages.xml,s.languages.atom=s.languages.xml,s.languages.rss=s.languages.xml,function(n){var i=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;n.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+i.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+i.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+i.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+i.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:i,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},n.languages.css.atrule.inside.rest=n.languages.css;var r=n.languages.markup;r&&(r.tag.addInlined("style","css"),r.tag.addAttribute("style","css"))}(s),s.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},s.languages.javascript=s.languages.extend("clike",{"class-name":[s.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),s.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,s.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:s.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:s.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:s.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:s.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:s.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),s.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:s.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),s.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),s.languages.markup&&(s.languages.markup.tag.addInlined("script","javascript"),s.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),s.languages.js=s.languages.javascript,function(){if(typeof s>"u"||typeof document>"u")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var n="Loading…",i=function(O,P){return"✖ Error "+O+" while fetching file: "+P},r="✖ Error: File does not exist or is empty",l={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},o="data-src-status",a="loading",u="loaded",c="failed",h="pre[data-src]:not(["+o+'="'+u+'"]):not(['+o+'="'+a+'"])';function p(O,P,D){var m=new XMLHttpRequest;m.open("GET",O,!0),m.onreadystatechange=function(){m.readyState==4&&(m.status<400&&m.responseText?P(m.responseText):m.status>=400?D(i(m.status,m.statusText)):D(r))},m.send(null)}function g(O){var P=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(O||"");if(P){var D=Number(P[1]),m=P[2],v=P[3];return m?v?[D,Number(v)]:[D,void 0]:[D,D]}}s.hooks.add("before-highlightall",function(O){O.selector+=", "+h}),s.hooks.add("before-sanity-check",function(O){var P=O.element;if(P.matches(h)){O.code="",P.setAttribute(o,a);var D=P.appendChild(document.createElement("CODE"));D.textContent=n;var m=P.getAttribute("data-src"),v=O.language;if(v==="none"){var y=(/\.(\w+)$/.exec(m)||[,"none"])[1];v=l[y]||y}s.util.setLanguage(D,v),s.util.setLanguage(P,v);var x=s.plugins.autoloader;x&&x.loadLanguages(v),p(m,function(_){P.setAttribute(o,u);var F=g(P.getAttribute("data-range"));if(F){var W=_.split(/\r\n?|\n/g),H=F[0],Y=F[1]==null?W.length:F[1];H<0&&(H+=W.length),H=Math.max(0,Math.min(H-1,W.length)),Y<0&&(Y+=W.length),Y=Math.max(0,Math.min(Y,W.length)),_=W.slice(H,Y).join(` +`),P.hasAttribute("data-start")||P.setAttribute("data-start",String(H+1))}D.textContent=_,s.highlightElement(D)},function(_){P.setAttribute(o,c),D.textContent=_})}}),s.plugins.fileHighlight={highlight:function(P){for(var D=(P||document).querySelectorAll(h),m=0,v;v=D[m++];)s.highlightElement(v)}};var T=!1;s.fileHighlight=function(){T||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),T=!0),s.plugins.fileHighlight.highlight.apply(this,arguments)}}()})(Xr);var Kc=Xr.exports;const qc=Zr(Kc);var el={exports:{}};(function(t){(function(){if(typeof Prism>"u")return;var e=Object.assign||function(l,o){for(var a in o)o.hasOwnProperty(a)&&(l[a]=o[a]);return l};function s(l){this.defaults=e({},l)}function n(l){return l.replace(/-(\w)/g,function(o,a){return a.toUpperCase()})}function i(l){for(var o=0,a=0;ao&&(c[p]=` `+c[p],h=g)}a[u]=c.join("")}return a.join(` -`)}},t.exports&&(t.exports=s),Prism.plugins.NormalizeWhitespace=new s({"remove-trailing":!0,"remove-indent":!0,"left-trim":!0,"right-trim":!0}),Prism.hooks.add("before-sanity-check",function(l){var o=Prism.plugins.NormalizeWhitespace;if(!(l.settings&&l.settings["whitespace-normalization"]===!1)&&Prism.util.isActive(l.element,"whitespace-normalization",!0)){if((!l.element||!l.element.parentNode)&&l.code){l.code=o.normalize(l.code,l.settings);return}var a=l.element.parentNode;if(!(!l.code||!a||a.nodeName.toLowerCase()!=="pre")){l.settings==null&&(l.settings={});for(var u in r)if(Object.hasOwnProperty.call(r,u)){var c=r[u];if(a.hasAttribute("data-"+u))try{var h=JSON.parse(a.getAttribute("data-"+u)||"true");typeof h===c&&(l.settings[u]=h)}catch{}}for(var p=a.childNodes,g="",T="",O=!1,R=0;R"u"||typeof document>"u")return;var t=[],e={},s=function(){};Prism.plugins.toolbar={};var n=Prism.plugins.toolbar.registerButton=function(l,o){var a;if(typeof o=="function"?a=o:a=function(u){var c;return typeof o.onClick=="function"?(c=document.createElement("button"),c.type="button",c.addEventListener("click",function(){o.onClick.call(this,u)})):typeof o.url=="string"?(c=document.createElement("a"),c.href=o.url):c=document.createElement("span"),o.className&&c.classList.add(o.className),c.textContent=o.text,c},l in e){console.warn('There is a button with the key "'+l+'" registered already.');return}t.push(e[l]=a)};function i(l){for(;l;){var o=l.getAttribute("data-toolbar-order");if(o!=null)return o=o.trim(),o.length?o.split(/\s*,\s*/g):[];l=l.parentElement}}var r=Prism.plugins.toolbar.hook=function(l){var o=l.element.parentNode;if(!(!o||!/pre/i.test(o.nodeName))&&!o.parentNode.classList.contains("code-toolbar")){var a=document.createElement("div");a.classList.add("code-toolbar"),o.parentNode.insertBefore(a,o),a.appendChild(o);var u=document.createElement("div");u.classList.add("toolbar");var c=t,h=i(l.element);h&&(c=h.map(function(p){return e[p]||s})),c.forEach(function(p){var g=p(l);if(g){var T=document.createElement("div");T.classList.add("toolbar-item"),T.appendChild(g),u.appendChild(T)}}),a.appendChild(u)}};n("label",function(l){var o=l.element.parentNode;if(!(!o||!/pre/i.test(o.nodeName))&&o.hasAttribute("data-label")){var a,u,c=o.getAttribute("data-label");try{u=document.querySelector("template#"+c)}catch{}return u?a=u.content:(o.hasAttribute("data-url")?(a=document.createElement("a"),a.href=o.getAttribute("data-url")):a=document.createElement("span"),a.textContent=c),a}}),Prism.hooks.add("complete",r)})();new Qc({"remove-trailing":!0,"remove-indent":!0,"left-trim":!0,"right-trim":!0});const Dn=wa(Gc);Dn.use(Oc);Dn.mixin({updated(){qc.highlightAll()}});Dn.mount("#app");export{Fe as F,fe as O,Ic as S,jc as _,Ze as a,Ho as b,Fr as c,Os as d,hs as e,pe as f,Ti as g,Zr as h,Jc as i,Vo as j,er as k,hr as l,Zc as m,gn as n,Jt as o,Hn as r,Mi as t,Wl as w}; +`)}},t.exports&&(t.exports=s),Prism.plugins.NormalizeWhitespace=new s({"remove-trailing":!0,"remove-indent":!0,"left-trim":!0,"right-trim":!0}),Prism.hooks.add("before-sanity-check",function(l){var o=Prism.plugins.NormalizeWhitespace;if(!(l.settings&&l.settings["whitespace-normalization"]===!1)&&Prism.util.isActive(l.element,"whitespace-normalization",!0)){if((!l.element||!l.element.parentNode)&&l.code){l.code=o.normalize(l.code,l.settings);return}var a=l.element.parentNode;if(!(!l.code||!a||a.nodeName.toLowerCase()!=="pre")){l.settings==null&&(l.settings={});for(var u in r)if(Object.hasOwnProperty.call(r,u)){var c=r[u];if(a.hasAttribute("data-"+u))try{var h=JSON.parse(a.getAttribute("data-"+u)||"true");typeof h===c&&(l.settings[u]=h)}catch{}}for(var p=a.childNodes,g="",T="",O=!1,P=0;P"u"||typeof document>"u")return;var t=[],e={},s=function(){};Prism.plugins.toolbar={};var n=Prism.plugins.toolbar.registerButton=function(l,o){var a;if(typeof o=="function"?a=o:a=function(u){var c;return typeof o.onClick=="function"?(c=document.createElement("button"),c.type="button",c.addEventListener("click",function(){o.onClick.call(this,u)})):typeof o.url=="string"?(c=document.createElement("a"),c.href=o.url):c=document.createElement("span"),o.className&&c.classList.add(o.className),c.textContent=o.text,c},l in e){console.warn('There is a button with the key "'+l+'" registered already.');return}t.push(e[l]=a)};function i(l){for(;l;){var o=l.getAttribute("data-toolbar-order");if(o!=null)return o=o.trim(),o.length?o.split(/\s*,\s*/g):[];l=l.parentElement}}var r=Prism.plugins.toolbar.hook=function(l){var o=l.element.parentNode;if(!(!o||!/pre/i.test(o.nodeName))&&!o.parentNode.classList.contains("code-toolbar")){var a=document.createElement("div");a.classList.add("code-toolbar"),o.parentNode.insertBefore(a,o),a.appendChild(o);var u=document.createElement("div");u.classList.add("toolbar");var c=t,h=i(l.element);h&&(c=h.map(function(p){return e[p]||s})),c.forEach(function(p){var g=p(l);if(g){var T=document.createElement("div");T.classList.add("toolbar-item"),T.appendChild(g),u.appendChild(T)}}),a.appendChild(u)}};n("label",function(l){var o=l.element.parentNode;if(!(!o||!/pre/i.test(o.nodeName))&&o.hasAttribute("data-label")){var a,u,c=o.getAttribute("data-label");try{u=document.querySelector("template#"+c)}catch{}return u?a=u.content:(o.hasAttribute("data-url")?(a=document.createElement("a"),a.href=o.getAttribute("data-url")):a=document.createElement("span"),a.textContent=c),a}}),Prism.hooks.add("complete",r)})();new Qc({"remove-trailing":!0,"remove-indent":!0,"left-trim":!0,"right-trim":!0});const Dn=wa(Gc);Dn.use(Oc);Dn.mixin({updated(){qc.highlightAll()}});Dn.mount("#app");export{ke as F,fe as O,Ic as S,jc as _,Ze as a,Ho as b,kr as c,Ts as d,hs as e,pe as f,Ti as g,Zr as h,Jc as i,Vo as j,er as k,hr as l,Zc as m,gn as n,Jt as o,Hn as r,Mi as t,Wl as w}; diff --git a/docs/assets/index3.css b/docs/assets/index3.css index ed9aff4a..640ea155 100644 --- a/docs/assets/index3.css +++ b/docs/assets/index3.css @@ -1 +1 @@ -#contentPosition .row .ss-main{height:30px}#contentPosition .row .relative,#contentPosition .row .absolute{width:200px}.select-class.ss-main{background-color:#5897fb;color:#fff;border:none}.select-class.ss-main .ss-arrow *{border-color:#fff}.ss-option.red{color:#fff;background-color:red}.ss-option.green{color:#fff;background-color:green}.ss-option.blue{color:#fff;background-color:#00f}.primary-option,.secondary-option{padding:.25rem .5rem;cursor:pointer}.primary-option{color:var(--ss-bg-color);background:var(--ss-primary-color)}.primary-option:hover,.secondary-option{color:var(--ss-primary-color);background:var(--ss-bg-color)}.secondary-option:hover{color:var(--ss-bg-color);background:var(--ss-primary-color)} +#contentPosition .row .ss-main{height:30px}#contentPosition .row .relative,#contentPosition .row .absolute,#contentPosition .row .fixed{max-width:200px}.select-class.ss-main{background-color:#5897fb;color:#fff;border:none}.select-class.ss-main .ss-arrow *{border-color:#fff}.ss-option.red{color:#fff;background-color:red}.ss-option.green{color:#fff;background-color:green}.ss-option.blue{color:#fff;background-color:#00f}.primary-option,.secondary-option{padding:.25rem .5rem;cursor:pointer}.primary-option{color:var(--ss-bg-color);background:var(--ss-primary-color)}.primary-option:hover,.secondary-option{color:var(--ss-primary-color);background:var(--ss-bg-color)}.secondary-option:hover{color:var(--ss-bg-color);background:var(--ss-primary-color)} diff --git a/docs/assets/index3.js b/docs/assets/index3.js index 059dca77..4e00e53a 100644 --- a/docs/assets/index3.js +++ b/docs/assets/index3.js @@ -1,4 +1,4 @@ -import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}from"./index.js";const I=s({name:"AlwaysOpen",mounted(){new o({select:this.$refs.alwaysOpenSingle,settings:{alwaysOpen:!0,contentLocation:this.$refs.alwaysOpenSingleContent,contentPosition:"relative"}}),new o({select:this.$refs.alwaysOpenMultiple,settings:{alwaysOpen:!0,contentLocation:this.$refs.alwaysOpenMultipleContent,contentPosition:"relative"}})}}),R={id:"alwaysOpen",class:"content"},N={class:"row"},G={style:{height:"auto"}},U={ref:"alwaysOpenSingle"},Y={ref:"alwaysOpenSingleContent"},K={style:{height:"auto"}},W={ref:"alwaysOpenMultiple",multiple:""},z={ref:"alwaysOpenMultipleContent"};function F(n,t,p,r,d,c){return i(),u("div",R,[t[2]||(t[2]=e("h2",{class:"header"},"alwaysOpen",-1)),t[3]||(t[3]=e("p",null," alwaysOpen option is used to keep the select open at all times. This is useful for when you want to display the options at all times. ",-1)),e("div",N,[e("div",G,[e("select",U,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("div",Y,null,512)]),e("div",K,[e("select",W,t[1]||(t[1]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1),e("option",{value:"value4"},"Value 4",-1)]),512),e("div",z,null,512)])]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` +import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}from"./index.js";const I=s({name:"AlwaysOpen",mounted(){new o({select:this.$refs.alwaysOpenSingle,settings:{alwaysOpen:!0,contentLocation:this.$refs.alwaysOpenSingleContent,contentPosition:"relative"}}),new o({select:this.$refs.alwaysOpenMultiple,settings:{alwaysOpen:!0,contentLocation:this.$refs.alwaysOpenMultipleContent,contentPosition:"relative"}})}}),R={id:"alwaysOpen",class:"content"},N={class:"row"},G={style:{height:"auto"}},U={ref:"alwaysOpenSingle"},F={ref:"alwaysOpenSingleContent"},Y={style:{height:"auto"}},K={ref:"alwaysOpenMultiple",multiple:""},W={ref:"alwaysOpenMultipleContent"};function z(n,t,p,r,d,c){return i(),u("div",R,[t[2]||(t[2]=e("h2",{class:"header"},"alwaysOpen",-1)),t[3]||(t[3]=e("p",null," alwaysOpen option is used to keep the select open at all times. This is useful for when you want to display the options at all times. ",-1)),e("div",N,[e("div",G,[e("select",U,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("div",F,null,512)]),e("div",Y,[e("select",K,t[1]||(t[1]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1),e("option",{value:"value4"},"Value 4",-1)]),512),e("div",W,null,512)])]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#selectElement', settings: { @@ -21,7 +21,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro
`),l(` - `)],-1))])}const J=a(I,[["render",F]]),Q=s({name:"Closable",mounted(){new o({select:this.$refs.closableSingle}),new o({select:this.$refs.closableMultiple})}}),X={id:"closable",class:"content"},Z={class:"row"},ee={ref:"closableSingle"},te={ref:"closableMultiple",multiple:""};function le(n,t,p,r,d,c){return i(),u("div",X,[t[2]||(t[2]=g('

closable

closable is a optgroup settings that adds the ability to have closable optgroup options.

Values: "off" | "open" | "close"

Default: "off"

You can set closable either by data or by html dataset added to the optgroup element
',5)),e("div",Z,[e("select",ee,t[0]||(t[0]=[g('',3)]),512),e("select",te,t[1]||(t[1]=[g('',3)]),512)]),t[3]||(t[3]=e("br",null,null,-1)),t[4]||(t[4]=e("h3",null,"Via data",-1)),t[5]||(t[5]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const J=a(I,[["render",z]]),Q=s({name:"Closable",mounted(){new o({select:this.$refs.closableSingle}),new o({select:this.$refs.closableMultiple})}}),X={id:"closable",class:"content"},Z={class:"row"},ee={ref:"closableSingle"},te={ref:"closableMultiple",multiple:""};function le(n,t,p,r,d,c){return i(),u("div",X,[t[2]||(t[2]=g('

closable

closable is a optgroup settings that adds the ability to have closable optgroup options.

Values: "off" | "open" | "close"

Default: "off"

You can set closable either by data or by html dataset added to the optgroup element
',5)),e("div",Z,[e("select",ee,t[0]||(t[0]=[g('',3)]),512),e("select",te,t[1]||(t[1]=[g('',3)]),512)]),t[3]||(t[3]=e("br",null,null,-1)),t[4]||(t[4]=e("h3",null,"Via data",-1)),t[5]||(t[5]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#selectElement', data: [ @@ -82,7 +82,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro }, }) `),l(` - `)],-1))])}const re=a(ne,[["render",pe]]),de=s({name:"ContentLocation",mounted(){new o({select:this.$refs.contentLocation,settings:{contentLocation:this.$refs.local}})}}),ce={id:"contentLocation",class:"content"},ve={class:"row"},me={ref:"contentLocation",style:{width:"50%"}},ge={ref:"local"};function he(n,t,p,r,d,c){return i(),u("div",ce,[t[1]||(t[1]=e("h2",{class:"header"},"contentLocation",-1)),t[2]||(t[2]=e("p",null," contentLocation will allow you to set the location of where the content section of slim select. By default every content div is appended to the body. ",-1)),t[3]||(t[3]=e("p",null," The content container is the bottom half of slim select. This includes the search input field and available options ",-1)),e("div",ve,[e("select",me,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("div",ge,null,512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const re=a(ne,[["render",pe]]),de=s({name:"ContentLocation",mounted(){new o({select:this.$refs.contentLocation,settings:{contentLocation:this.$refs.local}})}}),ce={id:"contentLocation",class:"content"},ve={class:"row"},me={ref:"contentLocation",style:{width:"50%"}},ge={ref:"local"};function fe(n,t,p,r,d,c){return i(),u("div",ce,[t[1]||(t[1]=e("h2",{class:"header"},"contentLocation",-1)),t[2]||(t[2]=e("p",null," contentLocation will allow you to set the location of where the content section of slim select. By default every content div is appended to the body. ",-1)),t[3]||(t[3]=e("p",null," The content container is the bottom half of slim select. This includes the search input field and available options ",-1)),e("div",ve,[e("select",me,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("div",ge,null,512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#selectElement', settings: { @@ -100,11 +100,11 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro
`),l(` - `)],-1))])}const fe=a(de,[["render",he]]),$e=s({name:"ContentPosition",mounted(){new o({select:this.$refs.contentPositionRelative,settings:{contentPosition:"relative",contentLocation:this.$refs.contentPositionRelativeContent}}),new o({select:this.$refs.contentPositionAbsolute,settings:{contentPosition:"absolute"}})}}),we={id:"contentPosition",class:"content"},Ve={class:"row"},be={ref:"contentPositionRelative",class:"relative"},Se={ref:"contentPositionRelativeContent"},ye={ref:"contentPositionAbsolute",class:"absolute"};function xe(n,t,p,r,d,c){return i(),u("div",we,[t[2]||(t[2]=e("h2",{class:"header"},"contentPosition",-1)),t[3]||(t[3]=e("p",null,[l("contentPosition will set the css position to either relative. Default is "),e("b",null,"'absolute'")],-1)),t[4]||(t[4]=e("div",{class:"alert info"}," If you do use relative position be sure to set the contentLocation to an element that will work best for your use case. Otherwise SlimSelect will add you content to the body of the html. See example usage below. ",-1)),e("div",Ve,[e("select",be,t[0]||(t[0]=[e("option",{"data-placeholder":"true"},"Relative",-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("div",Se,null,512),e("select",ye,t[1]||(t[1]=[e("option",{"data-placeholder":"true"},"Absolute",-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[5]||(t[5]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const he=a(de,[["render",fe]]),$e=s({name:"ContentPosition",mounted(){new o({select:this.$refs.contentPositionRelative,settings:{contentPosition:"relative",contentLocation:this.$refs.contentPositionRelativeContent}}),new o({select:this.$refs.contentPositionAbsolute,settings:{contentPosition:"absolute"}}),new o({select:this.$refs.contentPositionFixed,settings:{contentPosition:"fixed"}})}}),we={id:"contentPosition",class:"content"},Ve={class:"row"},be={ref:"contentPositionRelative",class:"relative"},Se={ref:"contentPositionRelativeContent"},ye={ref:"contentPositionAbsolute",class:"absolute"},xe={class:"row"},_e={ref:"contentPositionFixed",class:"fixed"};function Oe(n,t,p,r,d,c){return i(),u("div",we,[t[3]||(t[3]=e("h2",{class:"header"},"contentPosition",-1)),t[4]||(t[4]=e("p",null,[l("contentPosition will set the css position to relative, absolute or fixed. Default is "),e("b",null,"'absolute'")],-1)),t[5]||(t[5]=e("div",{class:"alert info"}," If you do use relative position be sure to set the contentLocation to an element that will work best for your use case. Otherwise SlimSelect will add you content to the body of the html. See example usage below. ",-1)),t[6]||(t[6]=e("div",{class:"alert info"}," Fixed was added to address issues with fixed positioning in modals and other elements that have fixed positioning. ",-1)),e("div",Ve,[e("select",be,t[0]||(t[0]=[e("option",{"data-placeholder":"true"},"Relative",-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("div",Se,null,512),e("select",ye,t[1]||(t[1]=[e("option",{"data-placeholder":"true"},"Absolute",-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),e("div",xe,[e("select",_e,t[2]||(t[2]=[e("option",{"data-placeholder":"true"},"Fixed",-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[7]||(t[7]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#selectElement', settings: { - contentPosition: 'relative' // 'absolute' or 'relative' + contentPosition: 'relative' // 'absolute', 'relative' or 'fixed' // To help with relative positioning // you can set the contentLocation @@ -112,28 +112,28 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro } }) `),l(` - `)],-1))])}const _e=a($e,[["render",xe]]),Oe=s({name:"Css",mounted(){new o({select:this.$refs.selectClass}),new o({select:this.$refs.optionClass})}}),De={id:"cssClass",class:"content"},Me={class:"row"},Ce={ref:"selectClass",class:"select-class"},Te={ref:"optionClass",class:"option-class"};function Pe(n,t,p,r,d,c){return i(),u("div",De,[t[2]||(t[2]=e("h2",{class:"header"},"css class",-1)),t[3]||(t[3]=e("p",null," Slim select will inherit any classes that were added to the original select element. This includes options as well. ",-1)),e("div",Me,[e("select",Ce,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",Te,t[1]||(t[1]=[e("option",{class:"red",value:"value1"},"Red",-1),e("option",{class:"green",value:"value2"},"Green",-1),e("option",{class:"blue",value:"value3"},"Blue",-1)]),512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-html"},` + `)],-1))])}const De=a($e,[["render",Oe]]),Me=s({name:"Css",mounted(){new o({select:this.$refs.selectClass}),new o({select:this.$refs.optionClass})}}),Ce={id:"cssClass",class:"content"},Te={class:"row"},Pe={ref:"selectClass",class:"select-class"},Be={ref:"optionClass",class:"option-class"};function Le(n,t,p,r,d,c){return i(),u("div",Ce,[t[2]||(t[2]=e("h2",{class:"header"},"css class",-1)),t[3]||(t[3]=e("p",null," Slim select will inherit any classes that were added to the original select element. This includes options as well. ",-1)),e("div",Te,[e("select",Pe,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",Be,t[1]||(t[1]=[e("option",{class:"red",value:"value1"},"Red",-1),e("option",{class:"green",value:"value2"},"Green",-1),e("option",{class:"blue",value:"value3"},"Blue",-1)]),512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-html"},` `),l(` - `)],-1))])}const Be=a(Oe,[["render",Pe]]),Le=s({name:"CustomCss",mounted(){new o({select:this.$refs.mainSelect,cssClasses:{option:"primary-option"}}),new o({select:this.$refs.secondarySelect,cssClasses:{option:"secondary-option"}})}}),Ae={id:"cssClasses",class:"content"},Ee={class:"row"},je={ref:"mainSelect"},He={ref:"secondarySelect"};function ke(n,t,p,r,d,c){return i(),u("div",Ae,[t[2]||(t[2]=e("h2",{class:"header"},"cssClasses",-1)),t[3]||(t[3]=e("p",null,"You can override the default CSS classes by setting them during initialization.",-1)),e("div",Ee,[e("select",je,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",He,t[1]||(t[1]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-html"},` - - `),l(` - `)],-1)),t[5]||(t[5]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` - new SlimSelect({ - select: '#primary-select', - cssClasses: { - option: "primary-option" - }) - `),l(` - `)],-1))])}const qe=a(Le,[["render",ke]]),Ie=s({name:"DataAttributes",mounted(){new o({select:this.$refs.optionsSingle}),new o({select:this.$refs.optionsMultiple})}}),Re={id:"dataAttributes",class:"content"},Ne={class:"row"},Ge={ref:"optionsSingle"},Ue={ref:"optionsMultiple",multiple:""};function Ye(n,t,p,r,d,c){return i(),u("div",Re,[t[2]||(t[2]=e("h2",{class:"header"},"Data Attributes",-1)),t[3]||(t[3]=e("p",null," Slim select will take on attributes of the original as best as possible. Below are example usages of attributes added to the underlining select options that slim select picked up and used ",-1)),e("div",Ne,[e("select",Ge,t[0]||(t[0]=[g('',5)]),512),e("select",Ue,t[1]||(t[1]=[e("option",{value:"value1","data-info":"Here is info"},"Data Attributes",-1),e("option",{value:"value2",disabled:""},"Disabled Option",-1),e("option",{value:"value3",class:"green"},"Class Green",-1),e("option",{value:"value4",style:{color:"purple"}},"Inline Style",-1)]),512)])])}const Ke=a(Ie,[["render",Ye]]),We=s({name:"Deselect",mounted(){new o({select:this.$refs.allowDeselectSingle,settings:{allowDeselect:!0}}),new o({select:this.$refs.allowDeselectMultiple,settings:{allowDeselect:!0}})}}),ze={id:"allowDeselect",class:"content"},Fe={class:"row"},Je={ref:"allowDeselectSingle"},Qe={ref:"allowDeselectMultiple",multiple:""};function Xe(n,t,p,r,d,c){return i(),u("div",ze,[t[2]||(t[2]=e("h2",{class:"header"},"allowDeselect",-1)),t[3]||(t[3]=e("p",null,"This will allow you to deselect a value on a single/multiple select dropdown.",-1)),t[4]||(t[4]=e("p",null,"Be sure to have an empty option data placeholder so slim select has an empty string value to select.",-1)),e("div",Fe,[e("select",Je,t[0]||(t[0]=[e("option",{"data-placeholder":"true"},null,-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",Qe,t[1]||(t[1]=[e("option",{"data-placeholder":"true"},null,-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[5]||(t[5]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const Ae=a(Me,[["render",Le]]),Ee=s({name:"CustomCss",mounted(){new o({select:this.$refs.mainSelect,cssClasses:{option:"primary-option"}}),new o({select:this.$refs.secondarySelect,cssClasses:{option:"secondary-option"}})}}),je={id:"cssClasses",class:"content"},He={class:"row"},ke={ref:"mainSelect"},qe={ref:"secondarySelect"};function Ie(n,t,p,r,d,c){return i(),u("div",je,[t[2]||(t[2]=e("h2",{class:"header"},"cssClasses",-1)),t[3]||(t[3]=e("p",null,"You can override the default CSS classes by setting them during initialization.",-1)),e("div",He,[e("select",ke,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",qe,t[1]||(t[1]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-html"},` + + `),l(` + `)],-1)),t[5]||(t[5]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + new SlimSelect({ + select: '#primary-select', + cssClasses: { + option: "primary-option" + }) + `),l(` + `)],-1))])}const Re=a(Ee,[["render",Ie]]),Ne=s({name:"DataAttributes",mounted(){new o({select:this.$refs.optionsSingle}),new o({select:this.$refs.optionsMultiple})}}),Ge={id:"dataAttributes",class:"content"},Ue={class:"row"},Fe={ref:"optionsSingle"},Ye={ref:"optionsMultiple",multiple:""};function Ke(n,t,p,r,d,c){return i(),u("div",Ge,[t[2]||(t[2]=e("h2",{class:"header"},"Data Attributes",-1)),t[3]||(t[3]=e("p",null," Slim select will take on attributes of the original as best as possible. Below are example usages of attributes added to the underlining select options that slim select picked up and used ",-1)),e("div",Ue,[e("select",Fe,t[0]||(t[0]=[g('',5)]),512),e("select",Ye,t[1]||(t[1]=[e("option",{value:"value1","data-info":"Here is info"},"Data Attributes",-1),e("option",{value:"value2",disabled:""},"Disabled Option",-1),e("option",{value:"value3",class:"green"},"Class Green",-1),e("option",{value:"value4",style:{color:"purple"}},"Inline Style",-1)]),512)])])}const We=a(Ne,[["render",Ke]]),ze=s({name:"Deselect",mounted(){new o({select:this.$refs.allowDeselectSingle,settings:{allowDeselect:!0}}),new o({select:this.$refs.allowDeselectMultiple,settings:{allowDeselect:!0}})}}),Je={id:"allowDeselect",class:"content"},Qe={class:"row"},Xe={ref:"allowDeselectSingle"},Ze={ref:"allowDeselectMultiple",multiple:""};function et(n,t,p,r,d,c){return i(),u("div",Je,[t[2]||(t[2]=e("h2",{class:"header"},"allowDeselect",-1)),t[3]||(t[3]=e("p",null,"This will allow you to deselect a value on a single/multiple select dropdown.",-1)),t[4]||(t[4]=e("p",null,"Be sure to have an empty option data placeholder so slim select has an empty string value to select.",-1)),e("div",Qe,[e("select",Xe,t[0]||(t[0]=[e("option",{"data-placeholder":"true"},null,-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",Ze,t[1]||(t[1]=[e("option",{"data-placeholder":"true"},null,-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[5]||(t[5]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#selectElement', settings: { @@ -150,7 +150,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `),l(` - `)],-1))])}const Ze=a(We,[["render",Xe]]),et=s({name:"Disabled",mounted(){new o({select:this.$refs.disabledSingle,settings:{disabled:!0}}),new o({select:this.$refs.disabledMultiple}),new o({select:this.$refs.disabledOptionSingle,data:[{text:"Option 1",value:"option1"},{text:"Option 2",value:"option2",disabled:!0},{text:"Option 3",value:"option3"}]}),new o({select:this.$refs.disabledOptionMultiple}),new o({select:this.$refs.disabledDynamicSingle}).select.showUI()},methods:{enableDisableDynamic(){const n=this.$refs.disabledDynamicSingle;n&&(n.disabled=!n.disabled)}}}),tt={id:"disabled",class:"content"},lt={class:"row"},ot={ref:"disabledSingle"},nt={ref:"disabledMultiple",multiple:"",disabled:""},st={class:"row"},at={ref:"disabledOptionSingle"},it={ref:"disabledOptionMultiple",multiple:""},ut={class:"row"},pt={ref:"disabledDynamicSingle"};function rt(n,t,p,r,d,c){return i(),u("div",tt,[t[6]||(t[6]=e("h2",{class:"header"},"disabled",-1)),t[7]||(t[7]=e("p",null,"Allows the ability to disable the select dropdown as well as individual options",-1)),t[8]||(t[8]=e("div",{class:"alert info"},"Methods also are provided to enable and disable SlimSelect via method call.",-1)),e("div",lt,[e("select",ot,t[1]||(t[1]=[e("option",{value:"value1",selected:""},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",nt,t[2]||(t[2]=[e("option",{value:"value1",selected:""},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[9]||(t[9]=e("br",null,null,-1)),e("div",st,[e("select",at,t[3]||(t[3]=[e("option",{value:"value1",selected:""},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",it,t[4]||(t[4]=[e("option",{value:"value1",selected:""},"Value 1",-1),e("option",{value:"value2",disabled:""},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[10]||(t[10]=e("br",null,null,-1)),e("div",ut,[e("div",{class:"btn",onClick:t[0]||(t[0]=(...h)=>n.enableDisableDynamic&&n.enableDisableDynamic(...h))},"Enable/Disable Original Select"),e("select",pt,t[5]||(t[5]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[11]||(t[11]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const tt=a(ze,[["render",et]]),lt=s({name:"Disabled",mounted(){new o({select:this.$refs.disabledSingle,settings:{disabled:!0}}),new o({select:this.$refs.disabledMultiple}),new o({select:this.$refs.disabledOptionSingle,data:[{text:"Option 1",value:"option1"},{text:"Option 2",value:"option2",disabled:!0},{text:"Option 3",value:"option3"}]}),new o({select:this.$refs.disabledOptionMultiple}),new o({select:this.$refs.disabledDynamicSingle}).select.showUI()},methods:{enableDisableDynamic(){const n=this.$refs.disabledDynamicSingle;n&&(n.disabled=!n.disabled)}}}),ot={id:"disabled",class:"content"},nt={class:"row"},st={ref:"disabledSingle"},at={ref:"disabledMultiple",multiple:"",disabled:""},it={class:"row"},ut={ref:"disabledOptionSingle"},pt={ref:"disabledOptionMultiple",multiple:""},rt={class:"row"},dt={ref:"disabledDynamicSingle"};function ct(n,t,p,r,d,c){return i(),u("div",ot,[t[6]||(t[6]=e("h2",{class:"header"},"disabled",-1)),t[7]||(t[7]=e("p",null,"Allows the ability to disable the select dropdown as well as individual options",-1)),t[8]||(t[8]=e("div",{class:"alert info"},"Methods also are provided to enable and disable SlimSelect via method call.",-1)),e("div",nt,[e("select",st,t[1]||(t[1]=[e("option",{value:"value1",selected:""},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",at,t[2]||(t[2]=[e("option",{value:"value1",selected:""},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[9]||(t[9]=e("br",null,null,-1)),e("div",it,[e("select",ut,t[3]||(t[3]=[e("option",{value:"value1",selected:""},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",pt,t[4]||(t[4]=[e("option",{value:"value1",selected:""},"Value 1",-1),e("option",{value:"value2",disabled:""},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[10]||(t[10]=e("br",null,null,-1)),e("div",rt,[e("div",{class:"btn",onClick:t[0]||(t[0]=(...f)=>n.enableDisableDynamic&&n.enableDisableDynamic(...f))},"Enable/Disable Original Select"),e("select",dt,t[5]||(t[5]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[11]||(t[11]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` // Disable via settings new SlimSelect({ select: '#selectElement', @@ -177,7 +177,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `),l(` - `)],-1))])}const dt=a(et,[["render",rt]]),ct=s({name:"Display",mounted(){const n=new o({select:this.$refs.selectdisplay}),t=[{value:"value1",text:"Value 1",display:!1},{value:"value2",text:"Value 2"},{value:"value3",text:"Value 3"}];n.setData(t),n.setSelected(["value1","value3"]),new o({select:this.$refs.selectdisplay2})}}),vt={id:"display",class:"content"},mt={class:"row"},gt={ref:"selectdisplay",multiple:""},ht={class:"row"},ft={ref:"selectdisplay2",multiple:""};function $t(n,t,p,r,d,c){return i(),u("div",vt,[t[1]||(t[1]=e("h2",{class:"header"},"display",-1)),t[2]||(t[2]=e("p",null,"Allows to hide elements of selected values.",-1)),e("div",mt,[e("select",gt,null,512)]),t[3]||(t[3]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const vt=a(lt,[["render",ct]]),mt=s({name:"Display",mounted(){const n=new o({select:this.$refs.selectdisplay}),t=[{value:"value1",text:"Value 1",display:!1},{value:"value2",text:"Value 2"},{value:"value3",text:"Value 3"}];n.setData(t),n.setSelected(["value1","value3"]),new o({select:this.$refs.selectdisplay2})}}),gt={id:"display",class:"content"},ft={class:"row"},ht={ref:"selectdisplay",multiple:""},$t={class:"row"},wt={ref:"selectdisplay2",multiple:""};function Vt(n,t,p,r,d,c){return i(),u("div",gt,[t[1]||(t[1]=e("h2",{class:"header"},"display",-1)),t[2]||(t[2]=e("p",null,"Allows to hide elements of selected values.",-1)),e("div",ft,[e("select",ht,null,512)]),t[3]||(t[3]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` const displaySelect = new SlimSelect({ select: '#selectElement' }) @@ -194,7 +194,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `)],-1)),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-html"},` `),l(` - `)],-1)),t[5]||(t[5]=e("p",null,"Or",-1)),e("div",ht,[e("select",ft,t[0]||(t[0]=[e("option",{value:"value1",style:{display:"none"},selected:""},"Value 1",-1),e("option",{value:"value2",selected:""},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[6]||(t[6]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1)),t[5]||(t[5]=e("p",null,"Or",-1)),e("div",$t,[e("select",wt,t[0]||(t[0]=[e("option",{value:"value1",style:{display:"none"},selected:""},"Value 1",-1),e("option",{value:"value2",selected:""},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[6]||(t[6]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` const slim = new SlimSelect({ select: '#selectElement' }); @@ -206,7 +206,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `),l(` - `)],-1))])}const wt=a(ct,[["render",$t]]),Vt=s({name:"HideSelected",mounted(){new o({select:this.$refs.hideSelectedSingle,settings:{hideSelected:!0}}),new o({select:this.$refs.hideSelectedMultiple,settings:{hideSelected:!0}})}}),bt={id:"hideSelected",class:"content"},St={class:"row"},yt={ref:"hideSelectedSingle"},xt={ref:"hideSelectedMultiple",multiple:""};function _t(n,t,p,r,d,c){return i(),u("div",bt,[t[2]||(t[2]=e("h2",{class:"header"},"hideSelected",-1)),t[3]||(t[3]=e("p",null,"hideSelected setting is used to hide the current selected option in the options dropdown.",-1)),e("div",St,[e("select",yt,t[0]||(t[0]=[e("option",{"data-placeholder":"true"},null,-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",xt,t[1]||(t[1]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const bt=a(mt,[["render",Vt]]),St=s({name:"HideSelected",mounted(){new o({select:this.$refs.hideSelectedSingle,settings:{hideSelected:!0}}),new o({select:this.$refs.hideSelectedMultiple,settings:{hideSelected:!0}})}}),yt={id:"hideSelected",class:"content"},xt={class:"row"},_t={ref:"hideSelectedSingle"},Ot={ref:"hideSelectedMultiple",multiple:""};function Dt(n,t,p,r,d,c){return i(),u("div",yt,[t[2]||(t[2]=e("h2",{class:"header"},"hideSelected",-1)),t[3]||(t[3]=e("p",null,"hideSelected setting is used to hide the current selected option in the options dropdown.",-1)),e("div",xt,[e("select",_t,t[0]||(t[0]=[e("option",{"data-placeholder":"true"},null,-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",Ot,t[1]||(t[1]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#selectElement', settings: { @@ -228,7 +228,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `),l(` - `)],-1))])}const Ot=a(Vt,[["render",_t]]),Dt=s({name:"Html",mounted(){new o({select:this.$refs.htmlSingle,settings:{searchHighlight:!0},data:[{html:"Bold Text",text:"Bold Text",value:"bold text"},{html:'
Border
',text:"Border",value:"border"},{html:"Slim Select is awesome",text:"Slim Select is awesome"}]}),new o({select:this.$refs.htmlMulti,settings:{searchHighlight:!0}})}}),Mt={id:"html",class:"content"},Ct={class:"row"},Tt={ref:"htmlSingle"},Pt={ref:"htmlMulti",multiple:""};function Bt(n,t,p,r,d,c){return i(),u("div",Mt,[t[1]||(t[1]=e("h2",{class:"header"},"html",-1)),t[2]||(t[2]=e("p",null," Slim select has the ability to set custom html for the selected values and options dropdown. By default if the html field is set it will use that for the selected values and the options dropdown. For a multiple select selected values it will always use the text field. ",-1)),e("div",Ct,[e("select",Tt,null,512),e("select",Pt,t[0]||(t[0]=[e("option",{value:"bold text","data-html":"Bold Text"},"Bold Text",-1),e("option",{value:"border","data-html":"
Border
"},"Border",-1),e("option",{value:"slim select","data-html":"Slim Select is awesome"},"Slim Select is awesome",-1)]),512)]),t[3]||(t[3]=e("h3",null,"Via data",-1)),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const Mt=a(St,[["render",Dt]]),Ct=s({name:"Html",mounted(){new o({select:this.$refs.htmlSingle,settings:{searchHighlight:!0},data:[{html:"Bold Text",text:"Bold Text",value:"bold text"},{html:'
Border
',text:"Border",value:"border"},{html:"Slim Select is awesome",text:"Slim Select is awesome"}]}),new o({select:this.$refs.htmlMulti,settings:{searchHighlight:!0}})}}),Tt={id:"html",class:"content"},Pt={class:"row"},Bt={ref:"htmlSingle"},Lt={ref:"htmlMulti",multiple:""};function At(n,t,p,r,d,c){return i(),u("div",Tt,[t[1]||(t[1]=e("h2",{class:"header"},"html",-1)),t[2]||(t[2]=e("p",null," Slim select has the ability to set custom html for the selected values and options dropdown. By default if the html field is set it will use that for the selected values and the options dropdown. For a multiple select selected values it will always use the text field. ",-1)),e("div",Pt,[e("select",Bt,null,512),e("select",Lt,t[0]||(t[0]=[e("option",{value:"bold text","data-html":"Bold Text"},"Bold Text",-1),e("option",{value:"border","data-html":"
Border
"},"Border",-1),e("option",{value:"slim select","data-html":"Slim Select is awesome"},"Slim Select is awesome",-1)]),512)]),t[3]||(t[3]=e("h3",null,"Via data",-1)),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` var select = new SlimSelect({ select: '#selectElement', data: [ @@ -245,7 +245,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `),l(` - `)],-1))])}const Lt=a(Dt,[["render",Bt]]),At=s({name:"KeepOrder",mounted(){new o({select:this.$refs.keepOrder,settings:{keepOrder:!0}})}}),Et={id:"keepOrder",class:"content"},jt={class:"row"},Ht={ref:"keepOrder",multiple:""};function kt(n,t,p,r,d,c){return i(),u("div",Et,[t[1]||(t[1]=e("h2",{class:"header"},"keepOrder",-1)),t[2]||(t[2]=e("p",null," keepOrder if true will maintain the order in which options are selected. If true the selected options order will be in the order of the dropdown options. As long as slim select isnt fully rerendered the order will be maintained. ",-1)),t[3]||(t[3]=e("p",null,[l("Values: "),e("strong",null,"true"),l(" | "),e("strong",null,"false")],-1)),t[4]||(t[4]=e("p",null,[l("Default: "),e("strong",null,"false")],-1)),e("div",jt,[e("select",Ht,t[0]||(t[0]=[g('',5)]),512)]),t[5]||(t[5]=e("br",null,null,-1)),t[6]||(t[6]=e("h3",null,"Via html",-1)),t[7]||(t[7]=e("pre",null,[l(" "),e("code",{class:"language-html"},` + `)],-1))])}const Et=a(Ct,[["render",At]]),jt=s({name:"KeepOrder",mounted(){new o({select:this.$refs.keepOrder,settings:{keepOrder:!0}})}}),Ht={id:"keepOrder",class:"content"},kt={class:"row"},qt={ref:"keepOrder",multiple:""};function It(n,t,p,r,d,c){return i(),u("div",Ht,[t[1]||(t[1]=e("h2",{class:"header"},"keepOrder",-1)),t[2]||(t[2]=e("p",null," keepOrder if true will maintain the order in which options are selected. If true the selected options order will be in the order of the dropdown options. As long as slim select isnt fully rerendered the order will be maintained. ",-1)),t[3]||(t[3]=e("p",null,[l("Values: "),e("strong",null,"true"),l(" | "),e("strong",null,"false")],-1)),t[4]||(t[4]=e("p",null,[l("Default: "),e("strong",null,"false")],-1)),e("div",kt,[e("select",qt,t[0]||(t[0]=[g('',5)]),512)]),t[5]||(t[5]=e("br",null,null,-1)),t[6]||(t[6]=e("h3",null,"Via html",-1)),t[7]||(t[7]=e("pre",null,[l(" "),e("code",{class:"language-html"},` `),l(` - `)],-1))])}const qt=a(At,[["render",kt]]),It=s({name:"Mandatory",mounted(){const n=new o({select:this.$refs.selectMultiMandatory}),t=[{value:"value1",text:"Value 1",mandatory:!0},{value:"value2",text:"Value 2"},{value:"value3",text:"Value 3"}];n.setData(t),n.setSelected(["value1","value3"]),new o({select:this.$refs.selectMultiMandatory2})}}),Rt={id:"mandatory",class:"content"},Nt={class:"row"},Gt={ref:"selectMultiMandatory",multiple:""},Ut={class:"row"},Yt={ref:"selectMultiMandatory2",multiple:""};function Kt(n,t,p,r,d,c){return i(),u("div",Rt,[t[1]||(t[1]=e("h2",{class:"header"},"mandatory",-1)),t[2]||(t[2]=e("p",null," When using multi select you can set a mandatory on the option to prevent capability to deselect particular option. Note options with mandatory flag is not selected by default, you need select them yourselfs. ",-1)),e("div",Nt,[e("select",Gt,null,512)]),t[3]||(t[3]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const Rt=a(jt,[["render",It]]),Nt=s({name:"Mandatory",mounted(){const n=new o({select:this.$refs.selectMultiMandatory}),t=[{value:"value1",text:"Value 1",mandatory:!0},{value:"value2",text:"Value 2"},{value:"value3",text:"Value 3"}];n.setData(t),n.setSelected(["value1","value3"]),new o({select:this.$refs.selectMultiMandatory2})}}),Gt={id:"mandatory",class:"content"},Ut={class:"row"},Ft={ref:"selectMultiMandatory",multiple:""},Yt={class:"row"},Kt={ref:"selectMultiMandatory2",multiple:""};function Wt(n,t,p,r,d,c){return i(),u("div",Gt,[t[1]||(t[1]=e("h2",{class:"header"},"mandatory",-1)),t[2]||(t[2]=e("p",null," When using multi select you can set a mandatory on the option to prevent capability to deselect particular option. Note options with mandatory flag is not selected by default, you need select them yourselfs. ",-1)),e("div",Ut,[e("select",Ft,null,512)]),t[3]||(t[3]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` const slim = new SlimSelect({ select: '#selectElement' }); @@ -279,7 +279,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `)],-1)),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-html"},` `),l(` - `)],-1)),t[5]||(t[5]=e("p",null,"Or",-1)),e("div",Ut,[e("select",Yt,t[0]||(t[0]=[e("option",{value:"value1","data-mandatory":"true",selected:""},"Value 1",-1),e("option",{value:"value2",selected:""},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[6]||(t[6]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1)),t[5]||(t[5]=e("p",null,"Or",-1)),e("div",Yt,[e("select",Kt,t[0]||(t[0]=[e("option",{value:"value1","data-mandatory":"true",selected:""},"Value 1",-1),e("option",{value:"value2",selected:""},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[6]||(t[6]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` const slim = new SlimSelect({ select: '#selectElement' }); @@ -291,7 +291,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `),l(` - `)],-1))])}const Wt=a(It,[["render",Kt]]),zt=s({name:"MaxValuesShown",mounted(){new o({select:this.$refs.maxValuesShown,settings:{maxValuesShown:5,maxValuesMessage:"{number} selected",allowDeselect:!0}})}}),Ft={id:"maxValuesShown",class:"content"},Jt={class:"row"},Qt={ref:"maxValuesShown",multiple:""};function Xt(n,t,p,r,d,c){return i(),u("div",Ft,[t[1]||(t[1]=e("h2",{class:"header"},"maxValuesShown",-1)),t[2]||(t[2]=e("p",null," When using multiselect you can set a threshold so when selecting more items than the input value, the items will not display as values, but the 'n selected' will be displayed. The text that will be displayed can be customized with the use of '{number}' in the maxValuesMessage setting. ",-1)),t[3]||(t[3]=e("p",null,[e("strong",null,"Default:"),l(" 20")],-1)),e("div",Jt,[e("select",Qt,t[0]||(t[0]=[g('',8)]),512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const zt=a(Nt,[["render",Wt]]),Jt=s({name:"MaxValuesShown",mounted(){new o({select:this.$refs.maxValuesShown,settings:{maxValuesShown:5,maxValuesMessage:"{number} selected",allowDeselect:!0}})}}),Qt={id:"maxValuesShown",class:"content"},Xt={class:"row"},Zt={ref:"maxValuesShown",multiple:""};function el(n,t,p,r,d,c){return i(),u("div",Qt,[t[1]||(t[1]=e("h2",{class:"header"},"maxValuesShown",-1)),t[2]||(t[2]=e("p",null," When using multiselect you can set a threshold so when selecting more items than the input value, the items will not display as values, but the 'n selected' will be displayed. The text that will be displayed can be customized with the use of '{number}' in the maxValuesMessage setting. ",-1)),t[3]||(t[3]=e("p",null,[e("strong",null,"Default:"),l(" 20")],-1)),e("div",Xt,[e("select",Zt,t[0]||(t[0]=[g('',8)]),512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#selectElement', settings: { @@ -312,7 +312,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `),l(` - `)],-1))])}const Zt=a(zt,[["render",Xt]]),el=s({name:"MinMax",mounted(){new o({select:this.$refs.selectMultiMax,settings:{allowDeselect:!0,closeOnSelect:!1,minSelected:2,maxSelected:5},events:{addable:n=>n}})}}),tl={id:"minmax",class:"content"},ll={class:"row"},ol={ref:"selectMultiMax",multiple:""};function nl(n,t,p,r,d,c){return i(),u("div",tl,[t[1]||(t[1]=e("h2",{class:"header"},"Min/Max Selected",-1)),t[2]||(t[2]=e("p",null,"When using multi select you can set a min and/or max on the amount of selections you can have.",-1)),e("div",ll,[e("select",ol,t[0]||(t[0]=[g('',6)]),512)]),t[3]||(t[3]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const tl=a(Jt,[["render",el]]),ll=s({name:"MinMax",mounted(){new o({select:this.$refs.selectMultiMax,settings:{allowDeselect:!0,closeOnSelect:!1,minSelected:2,maxSelected:5},events:{addable:n=>n}})}}),ol={id:"minmax",class:"content"},nl={class:"row"},sl={ref:"selectMultiMax",multiple:""};function al(n,t,p,r,d,c){return i(),u("div",ol,[t[1]||(t[1]=e("h2",{class:"header"},"Min/Max Selected",-1)),t[2]||(t[2]=e("p",null,"When using multi select you can set a min and/or max on the amount of selections you can have.",-1)),e("div",nl,[e("select",sl,t[0]||(t[0]=[g('',6)]),512)]),t[3]||(t[3]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` let slim = new SlimSelect({ select: '#selectElement', settings: { @@ -331,7 +331,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `),l(` - `)],-1))])}const sl=a(el,[["render",nl]]),al=s({name:"OpenPosition",mounted(){new o({select:this.$refs.openPositionUp,settings:{openPosition:"up"}}),new o({select:this.$refs.openPositionDown,settings:{openPosition:"down"}})}}),il={id:"openPosition",class:"content"},ul={class:"row"},pl={ref:"openPositionUp"},rl={ref:"openPositionDown"};function dl(n,t,p,r,d,c){return i(),u("div",il,[t[2]||(t[2]=e("h2",{class:"header"},"openPosition",-1)),t[3]||(t[3]=e("p",null," openPosition is a string value that will decide where to show your content when it comes out. By default slim select will try to put the content where it can without going off screen. But you may want to always show it in one direction. ",-1)),t[4]||(t[4]=e("p",null,[l("Possible Options: "),e("b",null,"'auto', 'up' or 'down'"),l(". Default is "),e("b",null,"'auto'")],-1)),e("div",ul,[e("select",pl,t[0]||(t[0]=[e("option",{value:"up1"},"Up 1",-1),e("option",{value:"up2"},"Up 2",-1),e("option",{value:"up3"},"Up 3",-1)]),512),e("select",rl,t[1]||(t[1]=[e("option",{value:"down1"},"Down 1",-1),e("option",{value:"down2"},"Down 2",-1),e("option",{value:"down3"},"Down 3",-1)]),512)]),t[5]||(t[5]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const il=a(ll,[["render",al]]),ul=s({name:"OpenPosition",mounted(){new o({select:this.$refs.openPositionUp,settings:{openPosition:"up"}}),new o({select:this.$refs.openPositionDown,settings:{openPosition:"down"}})}}),pl={id:"openPosition",class:"content"},rl={class:"row"},dl={ref:"openPositionUp"},cl={ref:"openPositionDown"};function vl(n,t,p,r,d,c){return i(),u("div",pl,[t[2]||(t[2]=e("h2",{class:"header"},"openPosition",-1)),t[3]||(t[3]=e("p",null," openPosition is a string value that will decide where to show your content when it comes out. By default slim select will try to put the content where it can without going off screen. But you may want to always show it in one direction. ",-1)),t[4]||(t[4]=e("p",null,[l("Possible Options: "),e("b",null,"'auto', 'up' or 'down'"),l(". Default is "),e("b",null,"'auto'")],-1)),e("div",rl,[e("select",dl,t[0]||(t[0]=[e("option",{value:"up1"},"Up 1",-1),e("option",{value:"up2"},"Up 2",-1),e("option",{value:"up3"},"Up 3",-1)]),512),e("select",cl,t[1]||(t[1]=[e("option",{value:"down1"},"Down 1",-1),e("option",{value:"down2"},"Down 2",-1),e("option",{value:"down3"},"Down 3",-1)]),512)]),t[5]||(t[5]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#selectElement', settings: { @@ -339,7 +339,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro } }) `),l(` - `)],-1))])}const cl=a(al,[["render",dl]]),vl=s({name:"Placeholder",mounted(){new o({select:this.$refs.placeholderSingle,settings:{placeholderText:"Custom Placeholder Text"}}),new o({select:this.$refs.placeholderMultiple,settings:{placeholderText:"Make Selection"}}),new o({select:this.$refs.placeholderNone,settings:{placeholderText:""}})}}),ml={id:"placeholder",class:"content"},gl={class:"row"},hl={ref:"placeholderSingle"},fl={ref:"placeholderMultiple",multiple:""},$l={ref:"placeholderNone"};function wl(n,t,p,r,d,c){return i(),u("div",ml,[t[3]||(t[3]=e("h2",{class:"header"},"placeholderText",-1)),t[4]||(t[4]=e("p",null,' Placeholders consists of setting the placeholder option value. The only difference is single selects require an empty option with data-placeholder set to true. Default value is "Select Value". ',-1)),t[5]||(t[5]=e("div",{class:"alert info"}," Notice you can also set placeholder to empty if that is what you would like to do as well. ",-1)),e("div",gl,[e("select",hl,t[0]||(t[0]=[e("option",{"data-placeholder":"true"},null,-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",fl,t[1]||(t[1]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",$l,t[2]||(t[2]=[e("option",{"data-placeholder":"true"},null,-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[6]||(t[6]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const ml=a(ul,[["render",vl]]),gl=s({name:"Placeholder",mounted(){new o({select:this.$refs.placeholderSingle,settings:{placeholderText:"Custom Placeholder Text"}}),new o({select:this.$refs.placeholderMultiple,settings:{placeholderText:"Make Selection"}}),new o({select:this.$refs.placeholderNone,settings:{placeholderText:""}})}}),fl={id:"placeholder",class:"content"},hl={class:"row"},$l={ref:"placeholderSingle"},wl={ref:"placeholderMultiple",multiple:""},Vl={ref:"placeholderNone"};function bl(n,t,p,r,d,c){return i(),u("div",fl,[t[3]||(t[3]=e("h2",{class:"header"},"placeholderText",-1)),t[4]||(t[4]=e("p",null,' Placeholders consists of setting the placeholder option value. The only difference is single selects require an empty option with data-placeholder set to true. Default value is "Select Value". ',-1)),t[5]||(t[5]=e("div",{class:"alert info"}," Notice you can also set placeholder to empty if that is what you would like to do as well. ",-1)),e("div",hl,[e("select",$l,t[0]||(t[0]=[e("option",{"data-placeholder":"true"},null,-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",wl,t[1]||(t[1]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",Vl,t[2]||(t[2]=[e("option",{"data-placeholder":"true"},null,-1),e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512)]),t[6]||(t[6]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#placeholder', settings: { @@ -357,7 +357,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `),l(` - `)],-1))])}const Vl=a(vl,[["render",wl]]),bl=s({name:"Search",mounted(){new o({select:this.$refs.showSearchSingle,settings:{showSearch:!1}}),new o({select:this.$refs.focusSearchSingle,settings:{focusSearch:!1}}),new o({select:this.$refs.searchTextSingle,settings:{searchText:"Sorry, nothing to see here"}}),new o({select:this.$refs.searchPlaceholderSingle,settings:{searchPlaceholder:"Search for the good stuff!"}}),new o({select:this.$refs.searchHighlightSingle,settings:{searchHighlight:!0}}),new o({select:this.$refs.showSearchMulti,settings:{showSearch:!1}}),new o({select:this.$refs.focusSearchMulti,settings:{focusSearch:!1}}),new o({select:this.$refs.searchTextMulti,settings:{searchText:"Sorry nothing to see here"}}),new o({select:this.$refs.searchPlaceholderMulti,settings:{searchPlaceholder:"Search for the good stuff!"}}),new o({select:this.$refs.searchHighlightMulti,settings:{searchHighlight:!0}})}}),Sl={id:"search",class:"content"},yl={class:"row",style:{padding:"0 0 var(--spacing-half) 0"}},xl={ref:"showSearchSingle"},_l={ref:"focusSearchSingle"},Ol={ref:"searchTextSingle"},Dl={ref:"searchPlaceholderSingle"},Ml={ref:"searchHighlightSingle"},Cl={class:"row"},Tl={ref:"showSearchMulti",multiple:""},Pl={ref:"focusSearchMulti",multiple:""},Bl={ref:"searchTextMulti",multiple:""},Ll={ref:"searchPlaceholderMulti",multiple:""},Al={ref:"searchHighlightMulti",multiple:""};function El(n,t,p,r,d,c){return i(),u("div",Sl,[t[10]||(t[10]=g('

showSearch / focusSearch / searchText / searchingText / searchHighlight

showSearch - is a boolean value that will decide whether or not to show the search. Default is true.

focusSearch - is a boolean value that will decide whether or not to focus on the search on open. Default is true.

searchText - is a string value that will show in the event there are no results. Default is 'No Results'.

searchingText - is a string value that will show during an fetch search request. Default is 'Searching...'.

searchPlaceholder - is a string value that will set the value of the input search placeholder text. Default is 'Search'.

searchHighlight - is a boolean value that will highlight search results. Default is false.

',7)),e("div",yl,[e("select",xl,t[0]||(t[0]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",_l,t[1]||(t[1]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Ol,t[2]||(t[2]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Dl,t[3]||(t[3]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Ml,t[4]||(t[4]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512)]),e("div",Cl,[e("select",Tl,t[5]||(t[5]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Pl,t[6]||(t[6]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Bl,t[7]||(t[7]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Ll,t[8]||(t[8]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Al,t[9]||(t[9]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512)]),t[11]||(t[11]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const Sl=a(gl,[["render",bl]]),yl=s({name:"Search",mounted(){new o({select:this.$refs.showSearchSingle,settings:{showSearch:!1}}),new o({select:this.$refs.focusSearchSingle,settings:{focusSearch:!1}}),new o({select:this.$refs.searchTextSingle,settings:{searchText:"Sorry, nothing to see here"}}),new o({select:this.$refs.searchPlaceholderSingle,settings:{searchPlaceholder:"Search for the good stuff!"}}),new o({select:this.$refs.searchHighlightSingle,settings:{searchHighlight:!0}}),new o({select:this.$refs.showSearchMulti,settings:{showSearch:!1}}),new o({select:this.$refs.focusSearchMulti,settings:{focusSearch:!1}}),new o({select:this.$refs.searchTextMulti,settings:{searchText:"Sorry nothing to see here"}}),new o({select:this.$refs.searchPlaceholderMulti,settings:{searchPlaceholder:"Search for the good stuff!"}}),new o({select:this.$refs.searchHighlightMulti,settings:{searchHighlight:!0}})}}),xl={id:"search",class:"content"},_l={class:"row",style:{padding:"0 0 var(--spacing-half) 0"}},Ol={ref:"showSearchSingle"},Dl={ref:"focusSearchSingle"},Ml={ref:"searchTextSingle"},Cl={ref:"searchPlaceholderSingle"},Tl={ref:"searchHighlightSingle"},Pl={class:"row"},Bl={ref:"showSearchMulti",multiple:""},Ll={ref:"focusSearchMulti",multiple:""},Al={ref:"searchTextMulti",multiple:""},El={ref:"searchPlaceholderMulti",multiple:""},jl={ref:"searchHighlightMulti",multiple:""};function Hl(n,t,p,r,d,c){return i(),u("div",xl,[t[10]||(t[10]=g('

showSearch / focusSearch / searchText / searchingText / searchHighlight

showSearch - is a boolean value that will decide whether or not to show the search. Default is true.

focusSearch - is a boolean value that will decide whether or not to focus on the search on open. Default is true.

searchText - is a string value that will show in the event there are no results. Default is 'No Results'.

searchingText - is a string value that will show during an fetch search request. Default is 'Searching...'.

searchPlaceholder - is a string value that will set the value of the input search placeholder text. Default is 'Search'.

searchHighlight - is a boolean value that will highlight search results. Default is false.

',7)),e("div",_l,[e("select",Ol,t[0]||(t[0]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Dl,t[1]||(t[1]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Ml,t[2]||(t[2]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Cl,t[3]||(t[3]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Tl,t[4]||(t[4]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512)]),e("div",Pl,[e("select",Bl,t[5]||(t[5]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Ll,t[6]||(t[6]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",Al,t[7]||(t[7]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",El,t[8]||(t[8]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512),e("select",jl,t[9]||(t[9]=[e("option",{value:"dog"},"Dog",-1),e("option",{value:"cat"},"Cat",-1),e("option",{value:"bird"},"Bird",-1)]),512)]),t[11]||(t[11]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` let slim = new SlimSelect({ select: '#selectElement', settings: { @@ -369,7 +369,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro } }) `),l(` - `)],-1))])}const jl=a(bl,[["render",El]]),Hl=s({name:"Select"}),kl={id:"select",class:"content"};function ql(n,t,p,r,d,c){return i(),u("div",kl,t[0]||(t[0]=[e("h2",{class:"header"},"select",-1),e("p",null," The select field is used to identify the select element that will be used to create slim select. You can use any value you normally would in a querySelector or pass the element directly. ",-1),e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const kl=a(yl,[["render",Hl]]),ql=s({name:"Select"}),Il={id:"select",class:"content"};function Rl(n,t,p,r,d,c){return i(),u("div",Il,t[0]||(t[0]=[e("h2",{class:"header"},"select",-1),e("p",null," The select field is used to identify the select element that will be used to create slim select. You can use any value you normally would in a querySelector or pass the element directly. ",-1),e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#selectElement', // or @@ -381,7 +381,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro let el = document.querySelector('#selectElement') el.slim.open() // Or any other options/methods `),l(` - `)],-1)]))}const Il=a(Hl,[["render",ql]]),Rl=s({name:"SelectAll",mounted(){new o({select:this.$refs.selectAll})}}),Nl={id:"selectAll",class:"content"},Gl={ref:"selectAll",multiple:""};function Ul(n,t,p,r,d,c){return i(),u("div",Nl,[t[1]||(t[1]=e("h2",{class:"header"},"selectAll",-1)),t[2]||(t[2]=e("p",null," selectAll is a setting that can be used to add a select all action to an optgroup. This setting can be set to true or false. If set to true, a select all option will be added to the top of the selected values. If set to false or not set at all, no select all action will be added to the optgroup. ",-1)),t[3]||(t[3]=e("p",null,"selectAllText is a setting that can be used to change the text of the select all optgroup.",-1)),t[4]||(t[4]=e("div",{class:"alert info"}," You can set selectAll/selectAllText either by data or by html dataset added to the optgroup element ",-1)),e("select",Gl,t[0]||(t[0]=[g('',2)]),512),t[5]||(t[5]=e("br",null,null,-1)),t[6]||(t[6]=e("h3",null,"Via data",-1)),t[7]||(t[7]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1)]))}const Nl=a(ql,[["render",Rl]]),Gl=s({name:"SelectAll",mounted(){new o({select:this.$refs.selectAll})}}),Ul={id:"selectAll",class:"content"},Fl={ref:"selectAll",multiple:""};function Yl(n,t,p,r,d,c){return i(),u("div",Ul,[t[1]||(t[1]=e("h2",{class:"header"},"selectAll",-1)),t[2]||(t[2]=e("p",null," selectAll is a setting that can be used to add a select all action to an optgroup. This setting can be set to true or false. If set to true, a select all option will be added to the top of the selected values. If set to false or not set at all, no select all action will be added to the optgroup. ",-1)),t[3]||(t[3]=e("p",null,"selectAllText is a setting that can be used to change the text of the select all optgroup.",-1)),t[4]||(t[4]=e("div",{class:"alert info"}," You can set selectAll/selectAllText either by data or by html dataset added to the optgroup element ",-1)),e("select",Fl,t[0]||(t[0]=[g('',2)]),512),t[5]||(t[5]=e("br",null,null,-1)),t[6]||(t[6]=e("h3",null,"Via data",-1)),t[7]||(t[7]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#selectElement', data: [ @@ -421,7 +421,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro `),l(` - `)],-1))])}const Yl=a(Rl,[["render",Ul]]),Kl=s({name:"ShowTooltip",mounted(){new o({select:this.$refs.showOptionTooltips,settings:{showOptionTooltips:!0}})}}),Wl={id:"showOptionTooltips",class:"content"},zl={ref:"showOptionTooltips"};function Fl(n,t,p,r,d,c){return i(),u("div",Wl,[t[1]||(t[1]=e("h2",{class:"header"},"showOptionTooltips",-1)),t[2]||(t[2]=e("p",null," showOptionTooltips option is used to active displaying the on-hover tooltips for select options. The tooltip text is equal to the option text content. ",-1)),e("select",zl,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),t[3]||(t[3]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` + `)],-1))])}const Kl=a(Gl,[["render",Yl]]),Wl=s({name:"ShowTooltip",mounted(){new o({select:this.$refs.showOptionTooltips,settings:{showOptionTooltips:!0}})}}),zl={id:"showOptionTooltips",class:"content"},Jl={ref:"showOptionTooltips"};function Ql(n,t,p,r,d,c){return i(),u("div",zl,[t[1]||(t[1]=e("h2",{class:"header"},"showOptionTooltips",-1)),t[2]||(t[2]=e("p",null," showOptionTooltips option is used to active displaying the on-hover tooltips for select options. The tooltip text is equal to the option text content. ",-1)),e("select",Jl,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),t[3]||(t[3]=e("pre",null,[l(" "),e("code",{class:"language-javascript"},` new SlimSelect({ select: '#selectElement', settings: { @@ -429,7 +429,7 @@ import{d as s,S as o,_ as a,o as i,c as u,a as e,e as l,b as g,f as v,r as m}fro } }) `),l(` - `)],-1))])}const Jl=a(Kl,[["render",Fl]]),Ql=s({name:"Styles",mounted(){new o({select:this.$refs.selectStyle}),new o({select:this.$refs.optionStyle})}}),Xl={id:"inlineStyles",class:"content"},Zl={class:"row"},eo={ref:"selectStyle",style:{color:"red"}},to={ref:"optionStyle"};function lo(n,t,p,r,d,c){return i(),u("div",Xl,[t[2]||(t[2]=e("h2",{class:"header"},"inline styles",-1)),t[3]||(t[3]=e("p",null," Slim select will inherit any styles that were added to the original select element. This includes options as well. ",-1)),e("div",Zl,[e("select",eo,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",to,t[1]||(t[1]=[e("option",{style:{color:"red"},value:"value1"},"Red",-1),e("option",{style:{color:"green"}},"Green",-1),e("option",{style:{color:"blue"}},"Blue",-1)]),512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-html"},` + `)],-1))])}const Xl=a(Wl,[["render",Ql]]),Zl=s({name:"Styles",mounted(){new o({select:this.$refs.selectStyle}),new o({select:this.$refs.optionStyle})}}),eo={id:"inlineStyles",class:"content"},to={class:"row"},lo={ref:"selectStyle",style:{color:"red"}},oo={ref:"optionStyle"};function no(n,t,p,r,d,c){return i(),u("div",eo,[t[2]||(t[2]=e("h2",{class:"header"},"inline styles",-1)),t[3]||(t[3]=e("p",null," Slim select will inherit any styles that were added to the original select element. This includes options as well. ",-1)),e("div",to,[e("select",lo,t[0]||(t[0]=[e("option",{value:"value1"},"Value 1",-1),e("option",{value:"value2"},"Value 2",-1),e("option",{value:"value3"},"Value 3",-1)]),512),e("select",oo,t[1]||(t[1]=[e("option",{style:{color:"red"},value:"value1"},"Red",-1),e("option",{style:{color:"green"}},"Green",-1),e("option",{style:{color:"blue"}},"Blue",-1)]),512)]),t[4]||(t[4]=e("pre",null,[l(" "),e("code",{class:"language-html"},` `),l(` - `)],-1))])}const oo=a(Ql,[["render",lo]]),no=s({name:"Settings",components:{Select:Il,CssClasses:qe,AlwaysOpen:J,ContentLocation:fe,ContentPosition:_e,OpenPosition:cl,Placeholder:Vl,Deselect:Ze,Display:wt,Disabled:dt,Mandatory:Wt,MinMax:sl,DataAttributes:Ke,MaxValuesShown:Zt,Css:Be,Styles:oo,Html:Lt,KeepOrder:qt,Search:jl,CloseOnSelect:re,ShowTooltip:Jl,SelectAll:Yl,Closable:oe,HideSelected:Ot}}),so={id:"settings",class:"contents"};function ao(n,t,p,r,d,c){const h=m("Select"),f=m("CssClasses"),$=m("AlwaysOpen"),w=m("ContentLocation"),V=m("ContentPosition"),b=m("OpenPosition"),S=m("Placeholder"),y=m("SelectAll"),x=m("Deselect"),_=m("Display"),O=m("Disabled"),D=m("Mandatory"),M=m("MinMax"),C=m("DataAttributes"),T=m("Css"),P=m("Styles"),B=m("Html"),L=m("KeepOrder"),A=m("Search"),E=m("CloseOnSelect"),j=m("ShowTooltip"),H=m("Closable"),k=m("HideSelected"),q=m("MaxValuesShown");return i(),u("div",so,[v(h),v(f),v($),v(w),v(V),v(b),v(S),v(y),v(x),v(_),v(O),v(D),v(M),v(C),v(T),v(P),v(B),v(L),v(A),v(E),v(j),v(H),v(k),v(q)])}const uo=a(no,[["render",ao]]);export{uo as default}; + `)],-1))])}const so=a(Zl,[["render",no]]),ao=s({name:"Settings",components:{Select:Nl,CssClasses:Re,AlwaysOpen:J,ContentLocation:he,ContentPosition:De,OpenPosition:ml,Placeholder:Sl,Deselect:tt,Display:bt,Disabled:vt,Mandatory:zt,MinMax:il,DataAttributes:We,MaxValuesShown:tl,Css:Ae,Styles:so,Html:Et,KeepOrder:Rt,Search:kl,CloseOnSelect:re,ShowTooltip:Xl,SelectAll:Kl,Closable:oe,HideSelected:Mt}}),io={id:"settings",class:"contents"};function uo(n,t,p,r,d,c){const f=m("Select"),h=m("CssClasses"),$=m("AlwaysOpen"),w=m("ContentLocation"),V=m("ContentPosition"),b=m("OpenPosition"),S=m("Placeholder"),y=m("SelectAll"),x=m("Deselect"),_=m("Display"),O=m("Disabled"),D=m("Mandatory"),M=m("MinMax"),C=m("DataAttributes"),T=m("Css"),P=m("Styles"),B=m("Html"),L=m("KeepOrder"),A=m("Search"),E=m("CloseOnSelect"),j=m("ShowTooltip"),H=m("Closable"),k=m("HideSelected"),q=m("MaxValuesShown");return i(),u("div",io,[v(f),v(h),v($),v(w),v(V),v(b),v(S),v(y),v(x),v(_),v(O),v(D),v(M),v(C),v(T),v(P),v(B),v(L),v(A),v(E),v(j),v(H),v(k),v(q)])}const ro=a(ao,[["render",uo]]);export{ro as default}; diff --git a/package-lock.json b/package-lock.json index d407bb44..64c2b91a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,28 +1,28 @@ { "name": "slim-select", - "version": "2.9.2", + "version": "2.10.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "slim-select", - "version": "2.9.2", + "version": "2.10.0", "license": "MIT", "devDependencies": { "@jest/globals": "^29.7.0", "@rollup/plugin-babel": "^6.0.4", - "@rollup/plugin-commonjs": "^28.0.0", + "@rollup/plugin-commonjs": "^28.0.1", "@rollup/plugin-node-resolve": "^15.3.0", "@rollup/plugin-replace": "^6.0.1", "@rollup/plugin-terser": "^0.4.4", - "@rollup/plugin-typescript": "^12.1.0", - "@testing-library/jest-dom": "^6.5.0", + "@rollup/plugin-typescript": "^12.1.1", + "@testing-library/jest-dom": "^6.6.3", "@testing-library/user-event": "^14.5.2", "@types/downloadjs": "^1.4.6", - "@types/jest": "^29.5.13", + "@types/jest": "^29.5.14", "@typescript-eslint/eslint-plugin": "^8.8.1", "@typescript-eslint/parser": "^8.8.1", - "@vitejs/plugin-vue": "^5.1.4", + "@vitejs/plugin-vue": "^5.2.0", "clipboard": "^2.0.11", "downloadjs": "^1.4.7", "eslint": "^9.12.0", @@ -35,19 +35,19 @@ "prettier": "^3.3.3", "prismjs": "^1.29.0", "rimraf": "^6.0.1", - "rollup": "^4.24.0", + "rollup": "^4.27.3", "rollup-plugin-peer-deps-external": "^2.2.4", "rollup-plugin-typescript2": "^0.36.0", "rollup-plugin-vue": "^6.0.0", - "sass": "^1.79.5", + "sass": "^1.81.0", "ts-jest": "^29.2.5", - "tslib": "^2.7.0", + "tslib": "^2.8.1", "typescript": "^5.6.3", - "vite": "^5.4.8", - "vite-plugin-dts": "^4.2.4", - "vue": "^3.5.12", + "vite": "^5.4.11", + "vite-plugin-dts": "^4.3.0", + "vue": "^3.5.13", "vue-router": "^4.4.5", - "vue-tsc": "^2.1.6", + "vue-tsc": "^2.1.10", "vuex": "^4.0.2" } }, @@ -2054,19 +2054,19 @@ } }, "node_modules/@microsoft/api-extractor": { - "version": "7.47.7", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.47.7.tgz", - "integrity": "sha512-fNiD3G55ZJGhPOBPMKD/enozj8yxJSYyVJWxRWdcUtw842rvthDHJgUWq9gXQTensFlMHv2wGuCjjivPv53j0A==", + "version": "7.47.11", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.47.11.tgz", + "integrity": "sha512-lrudfbPub5wzBhymfFtgZKuBvXxoSIAdrvS2UbHjoMT2TjIEddq6Z13pcve7A03BAouw0x8sW8G4txdgfiSwpQ==", "dev": true, "license": "MIT", "dependencies": { - "@microsoft/api-extractor-model": "7.29.6", + "@microsoft/api-extractor-model": "7.29.8", "@microsoft/tsdoc": "~0.15.0", "@microsoft/tsdoc-config": "~0.17.0", - "@rushstack/node-core-library": "5.7.0", + "@rushstack/node-core-library": "5.9.0", "@rushstack/rig-package": "0.5.3", - "@rushstack/terminal": "0.14.0", - "@rushstack/ts-command-line": "4.22.6", + "@rushstack/terminal": "0.14.2", + "@rushstack/ts-command-line": "4.23.0", "lodash": "~4.17.15", "minimatch": "~3.0.3", "resolve": "~1.22.1", @@ -2079,15 +2079,15 @@ } }, "node_modules/@microsoft/api-extractor-model": { - "version": "7.29.6", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.29.6.tgz", - "integrity": "sha512-gC0KGtrZvxzf/Rt9oMYD2dHvtN/1KPEYsrQPyMKhLHnlVuO/f4AFN3E4toqZzD2pt4LhkKoYmL2H9tX3yCOyRw==", + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.29.8.tgz", + "integrity": "sha512-t3Z/xcO6TRbMcnKGVMs4uMzv/gd5j0NhMiJIGjD4cJMeFJ1Hf8wnLSx37vxlRlL0GWlGJhnFgxvnaL6JlS+73g==", "dev": true, "license": "MIT", "dependencies": { "@microsoft/tsdoc": "~0.15.0", "@microsoft/tsdoc-config": "~0.17.0", - "@rushstack/node-core-library": "5.7.0" + "@rushstack/node-core-library": "5.9.0" } }, "node_modules/@microsoft/api-extractor/node_modules/lru-cache": { @@ -2241,6 +2241,7 @@ "integrity": "sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==", "dev": true, "license": "MIT", + "optional": true, "dependencies": { "detect-libc": "^1.0.3", "is-glob": "^4.0.3", @@ -2570,19 +2571,19 @@ } }, "node_modules/@rollup/plugin-commonjs": { - "version": "28.0.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.0.tgz", - "integrity": "sha512-BJcu+a+Mpq476DMXG+hevgPSl56bkUoi88dKT8t3RyUp8kGuOh+2bU8Gs7zXDlu+fyZggnJ+iOBGrb/O1SorYg==", + "version": "28.0.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.1.tgz", + "integrity": "sha512-+tNWdlWKbpB3WgBN7ijjYkq9X5uhjmcvyjEght4NmH5fAU++zfQzAJ6wumLS+dNcvwEZhKx2Z+skY8m7v0wGSA==", "dev": true, "license": "MIT", "dependencies": { "@rollup/pluginutils": "^5.0.1", "commondir": "^1.0.1", "estree-walker": "^2.0.2", - "fdir": "^6.1.1", + "fdir": "^6.2.0", "is-reference": "1.2.1", "magic-string": "^0.30.3", - "picomatch": "^2.3.1" + "picomatch": "^4.0.2" }, "engines": { "node": ">=16.0.0 || 14 >= 14.17" @@ -2596,19 +2597,6 @@ } } }, - "node_modules/@rollup/plugin-commonjs/node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, "node_modules/@rollup/plugin-node-resolve": { "version": "15.3.0", "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.0.tgz", @@ -2679,9 +2667,9 @@ } }, "node_modules/@rollup/plugin-typescript": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-12.1.0.tgz", - "integrity": "sha512-Kzs8KGJofe7cfTRODsnG1jNGxSvU8gVoNNd7Z/QaY25AYwe2LSSUpx/kPxqF38NYkpR8de3m51r9uwJpDlz6dg==", + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-12.1.1.tgz", + "integrity": "sha512-t7O653DpfB5MbFrqPe/VcKFFkvRuFNp9qId3xq4Eth5xlyymzxNpye2z8Hrl0RIMuXTSr5GGcFpkdlMeacUiFQ==", "dev": true, "license": "MIT", "dependencies": { @@ -2741,9 +2729,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.0.tgz", - "integrity": "sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.27.3.tgz", + "integrity": "sha512-EzxVSkIvCFxUd4Mgm4xR9YXrcp976qVaHnqom/Tgm+vU79k4vV4eYTjmRvGfeoW8m9LVcsAy/lGjcgVegKEhLQ==", "cpu": [ "arm" ], @@ -2755,9 +2743,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.0.tgz", - "integrity": "sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.27.3.tgz", + "integrity": "sha512-LJc5pDf1wjlt9o/Giaw9Ofl+k/vLUaYsE2zeQGH85giX2F+wn/Cg8b3c5CDP3qmVmeO5NzwVUzQQxwZvC2eQKw==", "cpu": [ "arm64" ], @@ -2769,9 +2757,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.0.tgz", - "integrity": "sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.27.3.tgz", + "integrity": "sha512-OuRysZ1Mt7wpWJ+aYKblVbJWtVn3Cy52h8nLuNSzTqSesYw1EuN6wKp5NW/4eSre3mp12gqFRXOKTcN3AI3LqA==", "cpu": [ "arm64" ], @@ -2783,9 +2771,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.0.tgz", - "integrity": "sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.27.3.tgz", + "integrity": "sha512-xW//zjJMlJs2sOrCmXdB4d0uiilZsOdlGQIC/jjmMWT47lkLLoB1nsNhPUcnoqyi5YR6I4h+FjBpILxbEy8JRg==", "cpu": [ "x64" ], @@ -2796,10 +2784,38 @@ "darwin" ] }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.27.3.tgz", + "integrity": "sha512-58E0tIcwZ+12nK1WiLzHOD8I0d0kdrY/+o7yFVPRHuVGY3twBwzwDdTIBGRxLmyjciMYl1B/U515GJy+yn46qw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.27.3.tgz", + "integrity": "sha512-78fohrpcVwTLxg1ZzBMlwEimoAJmY6B+5TsyAZ3Vok7YabRBUvjYTsRXPTjGEvv/mfgVBepbW28OlMEz4w8wGA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.0.tgz", - "integrity": "sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.27.3.tgz", + "integrity": "sha512-h2Ay79YFXyQi+QZKo3ISZDyKaVD7uUvukEHTOft7kh00WF9mxAaxZsNs3o/eukbeKuH35jBvQqrT61fzKfAB/Q==", "cpu": [ "arm" ], @@ -2811,9 +2827,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.0.tgz", - "integrity": "sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.27.3.tgz", + "integrity": "sha512-Sv2GWmrJfRY57urktVLQ0VKZjNZGogVtASAgosDZ1aUB+ykPxSi3X1nWORL5Jk0sTIIwQiPH7iE3BMi9zGWfkg==", "cpu": [ "arm" ], @@ -2825,9 +2841,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.0.tgz", - "integrity": "sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.27.3.tgz", + "integrity": "sha512-FPoJBLsPW2bDNWjSrwNuTPUt30VnfM8GPGRoLCYKZpPx0xiIEdFip3dH6CqgoT0RnoGXptaNziM0WlKgBc+OWQ==", "cpu": [ "arm64" ], @@ -2839,9 +2855,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.0.tgz", - "integrity": "sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.27.3.tgz", + "integrity": "sha512-TKxiOvBorYq4sUpA0JT+Fkh+l+G9DScnG5Dqx7wiiqVMiRSkzTclP35pE6eQQYjP4Gc8yEkJGea6rz4qyWhp3g==", "cpu": [ "arm64" ], @@ -2853,9 +2869,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.0.tgz", - "integrity": "sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.27.3.tgz", + "integrity": "sha512-v2M/mPvVUKVOKITa0oCFksnQQ/TqGrT+yD0184/cWHIu0LoIuYHwox0Pm3ccXEz8cEQDLk6FPKd1CCm+PlsISw==", "cpu": [ "ppc64" ], @@ -2867,9 +2883,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.0.tgz", - "integrity": "sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.27.3.tgz", + "integrity": "sha512-LdrI4Yocb1a/tFVkzmOE5WyYRgEBOyEhWYJe4gsDWDiwnjYKjNs7PS6SGlTDB7maOHF4kxevsuNBl2iOcj3b4A==", "cpu": [ "riscv64" ], @@ -2881,9 +2897,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.0.tgz", - "integrity": "sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.27.3.tgz", + "integrity": "sha512-d4wVu6SXij/jyiwPvI6C4KxdGzuZOvJ6y9VfrcleHTwo68fl8vZC5ZYHsCVPUi4tndCfMlFniWgwonQ5CUpQcA==", "cpu": [ "s390x" ], @@ -2895,9 +2911,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.0.tgz", - "integrity": "sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.27.3.tgz", + "integrity": "sha512-/6bn6pp1fsCGEY5n3yajmzZQAh+mW4QPItbiWxs69zskBzJuheb3tNynEjL+mKOsUSFK11X4LYF2BwwXnzWleA==", "cpu": [ "x64" ], @@ -2909,9 +2925,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.0.tgz", - "integrity": "sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.27.3.tgz", + "integrity": "sha512-nBXOfJds8OzUT1qUreT/en3eyOXd2EH5b0wr2bVB5999qHdGKkzGzIyKYaKj02lXk6wpN71ltLIaQpu58YFBoQ==", "cpu": [ "x64" ], @@ -2923,9 +2939,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.0.tgz", - "integrity": "sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.27.3.tgz", + "integrity": "sha512-ogfbEVQgIZOz5WPWXF2HVb6En+kWzScuxJo/WdQTqEgeyGkaa2ui5sQav9Zkr7bnNCLK48uxmmK0TySm22eiuw==", "cpu": [ "arm64" ], @@ -2937,9 +2953,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.0.tgz", - "integrity": "sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.27.3.tgz", + "integrity": "sha512-ecE36ZBMLINqiTtSNQ1vzWc5pXLQHlf/oqGp/bSbi7iedcjcNb6QbCBNG73Euyy2C+l/fn8qKWEwxr+0SSfs3w==", "cpu": [ "ia32" ], @@ -2951,9 +2967,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.0.tgz", - "integrity": "sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.27.3.tgz", + "integrity": "sha512-vliZLrDmYKyaUoMzEbMTg2JkerfBjn03KmAw9CykO0Zzkzoyd7o3iZNam/TpyWNjNT+Cz2iO3P9Smv2wgrR+Eg==", "cpu": [ "x64" ], @@ -2965,9 +2981,9 @@ ] }, "node_modules/@rushstack/node-core-library": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.7.0.tgz", - "integrity": "sha512-Ff9Cz/YlWu9ce4dmqNBZpA45AEya04XaBFIjV7xTVeEf+y/kTjEasmozqFELXlNG4ROdevss75JrrZ5WgufDkQ==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.9.0.tgz", + "integrity": "sha512-MMsshEWkTbXqxqFxD4gcIUWQOCeBChlGczdZbHfqmNZQFLHB3yWxDFSMHFUdu2/OB9NUk7Awn5qRL+rws4HQNg==", "dev": true, "license": "MIT", "dependencies": { @@ -3111,13 +3127,13 @@ } }, "node_modules/@rushstack/terminal": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.14.0.tgz", - "integrity": "sha512-juTKMAMpTIJKudeFkG5slD8Z/LHwNwGZLtU441l/u82XdTBfsP+LbGKJLCNwP5se+DMCT55GB8x9p6+C4UL7jw==", + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.14.2.tgz", + "integrity": "sha512-2fC1wqu1VCExKC0/L+0noVcFQEXEnoBOtCIex1TOjBzEDWcw8KzJjjj7aTP6mLxepG0XIyn9OufeFb6SFsa+sg==", "dev": true, "license": "MIT", "dependencies": { - "@rushstack/node-core-library": "5.7.0", + "@rushstack/node-core-library": "5.9.0", "supports-color": "~8.1.1" }, "peerDependencies": { @@ -3156,13 +3172,13 @@ } }, "node_modules/@rushstack/ts-command-line": { - "version": "4.22.6", - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.22.6.tgz", - "integrity": "sha512-QSRqHT/IfoC5nk9zn6+fgyqOPXHME0BfchII9EUPR19pocsNp/xSbeBCbD3PIR2Lg+Q5qk7OFqk1VhWPMdKHJg==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.23.0.tgz", + "integrity": "sha512-jYREBtsxduPV6ptNq8jOKp9+yx0ld1Tb/Tkdnlj8gTjazl1sF3DwX2VbluyYrNd0meWIL0bNeer7WDf5tKFjaQ==", "dev": true, "license": "MIT", "dependencies": { - "@rushstack/terminal": "0.14.0", + "@rushstack/terminal": "0.14.2", "@types/argparse": "1.0.38", "argparse": "~1.0.9", "string-argv": "~0.3.1" @@ -3299,9 +3315,9 @@ } }, "node_modules/@testing-library/jest-dom": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.5.0.tgz", - "integrity": "sha512-xGGHpBXYSHUUr6XsKBfs85TWlYKpTc37cSBBVrXcib2MkHLboWlkClhWF37JKlDb9KEq3dHs+f2xR7XJEWGBxA==", + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.6.3.tgz", + "integrity": "sha512-IteBhl4XqYNkM54f4ejhLRJiZNqcSCoXUOG2CPK7qbD322KjQozM4kHQOfkG2oln9b9HTYqs+Sae8vBATubxxA==", "dev": true, "license": "MIT", "dependencies": { @@ -3516,9 +3532,9 @@ } }, "node_modules/@types/jest": { - "version": "29.5.13", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.13.tgz", - "integrity": "sha512-wd+MVEZCHt23V0/L642O5APvspWply/rGY5BcW4SUETo2UzPU3Z26qr8jC2qxpimI2jjx9h7+2cj2FwIr01bXg==", + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, "license": "MIT", "dependencies": { @@ -3848,9 +3864,9 @@ } }, "node_modules/@vitejs/plugin-vue": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.1.4.tgz", - "integrity": "sha512-N2XSI2n3sQqp5w7Y/AN/L2XDjBIRGqXko+eDp42sydYSBeJuSm5a1sLf8zakmo8u7tA8NmBgoDLA1HeOESjp9A==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.0.tgz", + "integrity": "sha512-7n7KdUEtx/7Yl7I/WVAMZ1bEb0eVvXF3ummWTeLcs/9gvo9pJhuLdouSXGjdZ/MKD1acf1I272+X0RMua4/R3g==", "dev": true, "license": "MIT", "engines": { @@ -3862,86 +3878,86 @@ } }, "node_modules/@volar/language-core": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.4.tgz", - "integrity": "sha512-kO9k4kTLfxpg+6lq7/KAIv3m2d62IHuCL6GbVgYZTpfKvIGoAIlDxK7pFcB/eczN2+ydg/vnyaeZ6SGyZrJw2w==", + "version": "2.4.10", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.10.tgz", + "integrity": "sha512-hG3Z13+nJmGaT+fnQzAkS0hjJRa2FCeqZt6Bd+oGNhUkQ+mTFsDETg5rqUTxyzIh5pSOGY7FHCWUS8G82AzLCA==", "dev": true, "license": "MIT", "dependencies": { - "@volar/source-map": "2.4.4" + "@volar/source-map": "2.4.10" } }, "node_modules/@volar/source-map": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.4.tgz", - "integrity": "sha512-xG3PZqOP2haG8XG4Pg3PD1UGDAdqZg24Ru8c/qYjYAnmcj6GBR64mstx+bZux5QOyRaJK+/lNM/RnpvBD3489g==", + "version": "2.4.10", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.10.tgz", + "integrity": "sha512-OCV+b5ihV0RF3A7vEvNyHPi4G4kFa6ukPmyVocmqm5QzOd8r5yAtiNvaPEjl8dNvgC/lj4JPryeeHLdXd62rWA==", "dev": true, "license": "MIT" }, "node_modules/@volar/typescript": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.4.tgz", - "integrity": "sha512-QQMQRVj0fVHJ3XdRKiS1LclhG0VBXdFYlyuHRQF/xLk2PuJuHNWP26MDZNvEVCvnyUQuUQhIAfylwY5TGPgc6w==", + "version": "2.4.10", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.10.tgz", + "integrity": "sha512-F8ZtBMhSXyYKuBfGpYwqA5rsONnOwAVvjyE7KPYJ7wgZqo2roASqNWUnianOomJX5u1cxeRooHV59N0PhvEOgw==", "dev": true, "license": "MIT", "dependencies": { - "@volar/language-core": "2.4.4", + "@volar/language-core": "2.4.10", "path-browserify": "^1.0.1", "vscode-uri": "^3.0.8" } }, "node_modules/@vue/compiler-core": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.12.tgz", - "integrity": "sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.13.tgz", + "integrity": "sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==", "dev": true, "license": "MIT", "dependencies": { "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.12", + "@vue/shared": "3.5.13", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.12.tgz", - "integrity": "sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz", + "integrity": "sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==", "dev": true, "license": "MIT", "dependencies": { - "@vue/compiler-core": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/compiler-core": "3.5.13", + "@vue/shared": "3.5.13" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.12.tgz", - "integrity": "sha512-2k973OGo2JuAa5+ZlekuQJtitI5CgLMOwgl94BzMCsKZCX/xiqzJYzapl4opFogKHqwJk34vfsaKpfEhd1k5nw==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz", + "integrity": "sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==", "dev": true, "license": "MIT", "dependencies": { "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.12", - "@vue/compiler-dom": "3.5.12", - "@vue/compiler-ssr": "3.5.12", - "@vue/shared": "3.5.12", + "@vue/compiler-core": "3.5.13", + "@vue/compiler-dom": "3.5.13", + "@vue/compiler-ssr": "3.5.13", + "@vue/shared": "3.5.13", "estree-walker": "^2.0.2", "magic-string": "^0.30.11", - "postcss": "^8.4.47", + "postcss": "^8.4.48", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.12.tgz", - "integrity": "sha512-eLwc7v6bfGBSM7wZOGPmRavSWzNFF6+PdRhE+VFJhNCgHiF8AM7ccoqcv5kBXA2eWUfigD7byekvf/JsOfKvPA==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.13.tgz", + "integrity": "sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==", "dev": true, "license": "MIT", "dependencies": { - "@vue/compiler-dom": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/compiler-dom": "3.5.13", + "@vue/shared": "3.5.13" } }, "node_modules/@vue/compiler-vue2": { @@ -4013,57 +4029,57 @@ } }, "node_modules/@vue/reactivity": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.12.tgz", - "integrity": "sha512-UzaN3Da7xnJXdz4Okb/BGbAaomRHc3RdoWqTzlvd9+WBR5m3J39J1fGcHes7U3za0ruYn/iYy/a1euhMEHvTAg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.13.tgz", + "integrity": "sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==", "dev": true, "license": "MIT", "dependencies": { - "@vue/shared": "3.5.12" + "@vue/shared": "3.5.13" } }, "node_modules/@vue/runtime-core": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.12.tgz", - "integrity": "sha512-hrMUYV6tpocr3TL3Ad8DqxOdpDe4zuQY4HPY3X/VRh+L2myQO8MFXPAMarIOSGNu0bFAjh1yBkMPXZBqCk62Uw==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.13.tgz", + "integrity": "sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==", "dev": true, "license": "MIT", "dependencies": { - "@vue/reactivity": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/reactivity": "3.5.13", + "@vue/shared": "3.5.13" } }, "node_modules/@vue/runtime-dom": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.12.tgz", - "integrity": "sha512-q8VFxR9A2MRfBr6/55Q3umyoN7ya836FzRXajPB6/Vvuv0zOPL+qltd9rIMzG/DbRLAIlREmnLsplEF/kotXKA==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.13.tgz", + "integrity": "sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==", "dev": true, "license": "MIT", "dependencies": { - "@vue/reactivity": "3.5.12", - "@vue/runtime-core": "3.5.12", - "@vue/shared": "3.5.12", + "@vue/reactivity": "3.5.13", + "@vue/runtime-core": "3.5.13", + "@vue/shared": "3.5.13", "csstype": "^3.1.3" } }, "node_modules/@vue/server-renderer": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.12.tgz", - "integrity": "sha512-I3QoeDDeEPZm8yR28JtY+rk880Oqmj43hreIBVTicisFTx/Dl7JpG72g/X7YF8hnQD3IFhkky5i2bPonwrTVPg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.13.tgz", + "integrity": "sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==", "dev": true, "license": "MIT", "dependencies": { - "@vue/compiler-ssr": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/compiler-ssr": "3.5.13", + "@vue/shared": "3.5.13" }, "peerDependencies": { - "vue": "3.5.12" + "vue": "3.5.13" } }, "node_modules/@vue/shared": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz", + "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==", "dev": true, "license": "MIT" }, @@ -4183,6 +4199,13 @@ "dev": true, "license": "MIT" }, + "node_modules/alien-signals": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-0.2.2.tgz", + "integrity": "sha512-cZIRkbERILsBOXTQmMrxc9hgpxglstn69zm+F1ARf4aPAzdAFYd6sBq87ErO0Fj3DV94tglcyHG5kQz9nDC/8A==", + "dev": true, + "license": "MIT" + }, "node_modules/ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", @@ -5088,6 +5111,7 @@ "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", "dev": true, "license": "Apache-2.0", + "optional": true, "bin": { "detect-libc": "bin/detect-libc.js" }, @@ -5724,11 +5748,11 @@ "dev": true }, "node_modules/fast-uri": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", - "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", + "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==", "dev": true, - "license": "MIT" + "license": "BSD-3-Clause" }, "node_modules/fastq": { "version": "1.17.1", @@ -6287,10 +6311,11 @@ } }, "node_modules/immutable": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.4.tgz", - "integrity": "sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==", - "dev": true + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz", + "integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==", + "dev": true, + "license": "MIT" }, "node_modules/import-fresh": { "version": "3.3.0", @@ -9366,7 +9391,8 @@ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "optional": true }, "node_modules/node-int64": { "version": "0.4.0", @@ -9633,9 +9659,9 @@ "dev": true }, "node_modules/picocolors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", - "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true, "license": "ISC" }, @@ -9645,8 +9671,6 @@ "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", "dev": true, "license": "MIT", - "optional": true, - "peer": true, "engines": { "node": ">=12" }, @@ -9739,9 +9763,9 @@ } }, "node_modules/postcss": { - "version": "8.4.47", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", - "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", + "version": "8.4.49", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", + "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", "dev": true, "funding": [ { @@ -9760,7 +9784,7 @@ "license": "MIT", "dependencies": { "nanoid": "^3.3.7", - "picocolors": "^1.1.0", + "picocolors": "^1.1.1", "source-map-js": "^1.2.1" }, "engines": { @@ -10180,9 +10204,9 @@ } }, "node_modules/rollup": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.0.tgz", - "integrity": "sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.27.3.tgz", + "integrity": "sha512-SLsCOnlmGt9VoZ9Ek8yBK8tAdmPHeppkw+Xa7yDlCEhDTvwYei03JlWo1fdc7YTfLZ4tD8riJCUyAgTbszk1fQ==", "dev": true, "license": "MIT", "dependencies": { @@ -10196,22 +10220,24 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.24.0", - "@rollup/rollup-android-arm64": "4.24.0", - "@rollup/rollup-darwin-arm64": "4.24.0", - "@rollup/rollup-darwin-x64": "4.24.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.24.0", - "@rollup/rollup-linux-arm-musleabihf": "4.24.0", - "@rollup/rollup-linux-arm64-gnu": "4.24.0", - "@rollup/rollup-linux-arm64-musl": "4.24.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.24.0", - "@rollup/rollup-linux-riscv64-gnu": "4.24.0", - "@rollup/rollup-linux-s390x-gnu": "4.24.0", - "@rollup/rollup-linux-x64-gnu": "4.24.0", - "@rollup/rollup-linux-x64-musl": "4.24.0", - "@rollup/rollup-win32-arm64-msvc": "4.24.0", - "@rollup/rollup-win32-ia32-msvc": "4.24.0", - "@rollup/rollup-win32-x64-msvc": "4.24.0", + "@rollup/rollup-android-arm-eabi": "4.27.3", + "@rollup/rollup-android-arm64": "4.27.3", + "@rollup/rollup-darwin-arm64": "4.27.3", + "@rollup/rollup-darwin-x64": "4.27.3", + "@rollup/rollup-freebsd-arm64": "4.27.3", + "@rollup/rollup-freebsd-x64": "4.27.3", + "@rollup/rollup-linux-arm-gnueabihf": "4.27.3", + "@rollup/rollup-linux-arm-musleabihf": "4.27.3", + "@rollup/rollup-linux-arm64-gnu": "4.27.3", + "@rollup/rollup-linux-arm64-musl": "4.27.3", + "@rollup/rollup-linux-powerpc64le-gnu": "4.27.3", + "@rollup/rollup-linux-riscv64-gnu": "4.27.3", + "@rollup/rollup-linux-s390x-gnu": "4.27.3", + "@rollup/rollup-linux-x64-gnu": "4.27.3", + "@rollup/rollup-linux-x64-musl": "4.27.3", + "@rollup/rollup-win32-arm64-msvc": "4.27.3", + "@rollup/rollup-win32-ia32-msvc": "4.27.3", + "@rollup/rollup-win32-x64-msvc": "4.27.3", "fsevents": "~2.3.2" } }, @@ -10380,15 +10406,14 @@ "dev": true }, "node_modules/sass": { - "version": "1.79.5", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.79.5.tgz", - "integrity": "sha512-W1h5kp6bdhqFh2tk3DsI771MoEJjvrSY/2ihJRJS4pjIyfJCw0nTsxqhnrUzaLMOJjFchj8rOvraI/YUVjtx5g==", + "version": "1.81.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.81.0.tgz", + "integrity": "sha512-Q4fOxRfhmv3sqCLoGfvrC9pRV8btc0UtqL9mN6Yrv6Qi9ScL55CVH1vlPP863ISLEEMNLLuu9P+enCeGHlnzhA==", "dev": true, "license": "MIT", "dependencies": { - "@parcel/watcher": "^2.4.1", "chokidar": "^4.0.0", - "immutable": "^4.0.0", + "immutable": "^5.0.2", "source-map-js": ">=0.6.2 <2.0.0" }, "bin": { @@ -10396,6 +10421,9 @@ }, "engines": { "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" } }, "node_modules/saxes": { @@ -10969,9 +10997,9 @@ } }, "node_modules/tslib": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", - "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true, "license": "0BSD" }, @@ -11107,9 +11135,9 @@ } }, "node_modules/vite": { - "version": "5.4.8", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.8.tgz", - "integrity": "sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==", + "version": "5.4.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz", + "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==", "dev": true, "license": "MIT", "dependencies": { @@ -11167,13 +11195,13 @@ } }, "node_modules/vite-plugin-dts": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-4.2.4.tgz", - "integrity": "sha512-REcYoxO90Pi8c0P1J7XAa/nVwNVGkX2eYkBEIfFSfcKE4g1W8sB0R23a7SU3aLEMfdOdb0SVHq3JlJ+Qb6gjgA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-4.3.0.tgz", + "integrity": "sha512-LkBJh9IbLwL6/rxh0C1/bOurDrIEmRE7joC+jFdOEEciAFPbpEKOLSAr5nNh5R7CJ45cMbksTrFfy52szzC5eA==", "dev": true, "license": "MIT", "dependencies": { - "@microsoft/api-extractor": "7.47.7", + "@microsoft/api-extractor": "^7.47.11", "@rollup/pluginutils": "^5.1.0", "@volar/typescript": "^2.4.4", "@vue/language-core": "2.1.6", @@ -11203,17 +11231,17 @@ "dev": true }, "node_modules/vue": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.12.tgz", - "integrity": "sha512-CLVZtXtn2ItBIi/zHZ0Sg1Xkb7+PU32bJJ8Bmy7ts3jxXTcbfsEfBivFYYWz1Hur+lalqGAh65Coin0r+HRUfg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.13.tgz", + "integrity": "sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==", "dev": true, "license": "MIT", "dependencies": { - "@vue/compiler-dom": "3.5.12", - "@vue/compiler-sfc": "3.5.12", - "@vue/runtime-dom": "3.5.12", - "@vue/server-renderer": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/compiler-dom": "3.5.13", + "@vue/compiler-sfc": "3.5.13", + "@vue/runtime-dom": "3.5.13", + "@vue/server-renderer": "3.5.13", + "@vue/shared": "3.5.13" }, "peerDependencies": { "typescript": "*" @@ -11241,14 +11269,14 @@ } }, "node_modules/vue-tsc": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-2.1.6.tgz", - "integrity": "sha512-f98dyZp5FOukcYmbFpuSCJ4Z0vHSOSmxGttZJCsFeX0M4w/Rsq0s4uKXjcSRsZqsRgQa6z7SfuO+y0HVICE57Q==", + "version": "2.1.10", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-2.1.10.tgz", + "integrity": "sha512-RBNSfaaRHcN5uqVqJSZh++Gy/YUzryuv9u1aFWhsammDJXNtUiJMNoJ747lZcQ68wUQFx6E73y4FY3D8E7FGMA==", "dev": true, "license": "MIT", "dependencies": { - "@volar/typescript": "~2.4.1", - "@vue/language-core": "2.1.6", + "@volar/typescript": "~2.4.8", + "@vue/language-core": "2.1.10", "semver": "^7.5.4" }, "bin": { @@ -11258,6 +11286,41 @@ "typescript": ">=5.0.0" } }, + "node_modules/vue-tsc/node_modules/@vue/language-core": { + "version": "2.1.10", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-2.1.10.tgz", + "integrity": "sha512-DAI289d0K3AB5TUG3xDp9OuQ71CnrujQwJrQnfuZDwo6eGNf0UoRlPuaVNO+Zrn65PC3j0oB2i7mNmVPggeGeQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "~2.4.8", + "@vue/compiler-dom": "^3.5.0", + "@vue/compiler-vue2": "^2.7.16", + "@vue/shared": "^3.5.0", + "alien-signals": "^0.2.0", + "minimatch": "^9.0.3", + "muggle-string": "^0.4.1", + "path-browserify": "^1.0.1" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-tsc/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, "node_modules/vue-tsc/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -11270,6 +11333,22 @@ "node": ">=10" } }, + "node_modules/vue-tsc/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/vue-tsc/node_modules/semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", @@ -13018,18 +13097,18 @@ } }, "@microsoft/api-extractor": { - "version": "7.47.7", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.47.7.tgz", - "integrity": "sha512-fNiD3G55ZJGhPOBPMKD/enozj8yxJSYyVJWxRWdcUtw842rvthDHJgUWq9gXQTensFlMHv2wGuCjjivPv53j0A==", + "version": "7.47.11", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.47.11.tgz", + "integrity": "sha512-lrudfbPub5wzBhymfFtgZKuBvXxoSIAdrvS2UbHjoMT2TjIEddq6Z13pcve7A03BAouw0x8sW8G4txdgfiSwpQ==", "dev": true, "requires": { - "@microsoft/api-extractor-model": "7.29.6", + "@microsoft/api-extractor-model": "7.29.8", "@microsoft/tsdoc": "~0.15.0", "@microsoft/tsdoc-config": "~0.17.0", - "@rushstack/node-core-library": "5.7.0", + "@rushstack/node-core-library": "5.9.0", "@rushstack/rig-package": "0.5.3", - "@rushstack/terminal": "0.14.0", - "@rushstack/ts-command-line": "4.22.6", + "@rushstack/terminal": "0.14.2", + "@rushstack/ts-command-line": "4.23.0", "lodash": "~4.17.15", "minimatch": "~3.0.3", "resolve": "~1.22.1", @@ -13080,14 +13159,14 @@ } }, "@microsoft/api-extractor-model": { - "version": "7.29.6", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.29.6.tgz", - "integrity": "sha512-gC0KGtrZvxzf/Rt9oMYD2dHvtN/1KPEYsrQPyMKhLHnlVuO/f4AFN3E4toqZzD2pt4LhkKoYmL2H9tX3yCOyRw==", + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.29.8.tgz", + "integrity": "sha512-t3Z/xcO6TRbMcnKGVMs4uMzv/gd5j0NhMiJIGjD4cJMeFJ1Hf8wnLSx37vxlRlL0GWlGJhnFgxvnaL6JlS+73g==", "dev": true, "requires": { "@microsoft/tsdoc": "~0.15.0", "@microsoft/tsdoc-config": "~0.17.0", - "@rushstack/node-core-library": "5.7.0" + "@rushstack/node-core-library": "5.9.0" } }, "@microsoft/tsdoc": { @@ -13159,6 +13238,7 @@ "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.4.1.tgz", "integrity": "sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==", "dev": true, + "optional": true, "requires": { "@parcel/watcher-android-arm64": "2.4.1", "@parcel/watcher-darwin-arm64": "2.4.1", @@ -13286,26 +13366,18 @@ } }, "@rollup/plugin-commonjs": { - "version": "28.0.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.0.tgz", - "integrity": "sha512-BJcu+a+Mpq476DMXG+hevgPSl56bkUoi88dKT8t3RyUp8kGuOh+2bU8Gs7zXDlu+fyZggnJ+iOBGrb/O1SorYg==", + "version": "28.0.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.1.tgz", + "integrity": "sha512-+tNWdlWKbpB3WgBN7ijjYkq9X5uhjmcvyjEght4NmH5fAU++zfQzAJ6wumLS+dNcvwEZhKx2Z+skY8m7v0wGSA==", "dev": true, "requires": { "@rollup/pluginutils": "^5.0.1", "commondir": "^1.0.1", "estree-walker": "^2.0.2", - "fdir": "^6.1.1", + "fdir": "^6.2.0", "is-reference": "1.2.1", "magic-string": "^0.30.3", - "picomatch": "^2.3.1" - }, - "dependencies": { - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - } + "picomatch": "^4.0.2" } }, "@rollup/plugin-node-resolve": { @@ -13343,9 +13415,9 @@ } }, "@rollup/plugin-typescript": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-12.1.0.tgz", - "integrity": "sha512-Kzs8KGJofe7cfTRODsnG1jNGxSvU8gVoNNd7Z/QaY25AYwe2LSSUpx/kPxqF38NYkpR8de3m51r9uwJpDlz6dg==", + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-12.1.1.tgz", + "integrity": "sha512-t7O653DpfB5MbFrqPe/VcKFFkvRuFNp9qId3xq4Eth5xlyymzxNpye2z8Hrl0RIMuXTSr5GGcFpkdlMeacUiFQ==", "dev": true, "requires": { "@rollup/pluginutils": "^5.1.0", @@ -13372,121 +13444,135 @@ } }, "@rollup/rollup-android-arm-eabi": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.0.tgz", - "integrity": "sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.27.3.tgz", + "integrity": "sha512-EzxVSkIvCFxUd4Mgm4xR9YXrcp976qVaHnqom/Tgm+vU79k4vV4eYTjmRvGfeoW8m9LVcsAy/lGjcgVegKEhLQ==", "dev": true, "optional": true }, "@rollup/rollup-android-arm64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.0.tgz", - "integrity": "sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.27.3.tgz", + "integrity": "sha512-LJc5pDf1wjlt9o/Giaw9Ofl+k/vLUaYsE2zeQGH85giX2F+wn/Cg8b3c5CDP3qmVmeO5NzwVUzQQxwZvC2eQKw==", "dev": true, "optional": true }, "@rollup/rollup-darwin-arm64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.0.tgz", - "integrity": "sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.27.3.tgz", + "integrity": "sha512-OuRysZ1Mt7wpWJ+aYKblVbJWtVn3Cy52h8nLuNSzTqSesYw1EuN6wKp5NW/4eSre3mp12gqFRXOKTcN3AI3LqA==", "dev": true, "optional": true }, "@rollup/rollup-darwin-x64": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.0.tgz", - "integrity": "sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.27.3.tgz", + "integrity": "sha512-xW//zjJMlJs2sOrCmXdB4d0uiilZsOdlGQIC/jjmMWT47lkLLoB1nsNhPUcnoqyi5YR6I4h+FjBpILxbEy8JRg==", + "dev": true, + "optional": true + }, + "@rollup/rollup-freebsd-arm64": { + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.27.3.tgz", + "integrity": "sha512-58E0tIcwZ+12nK1WiLzHOD8I0d0kdrY/+o7yFVPRHuVGY3twBwzwDdTIBGRxLmyjciMYl1B/U515GJy+yn46qw==", + "dev": true, + "optional": true + }, + "@rollup/rollup-freebsd-x64": { + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.27.3.tgz", + "integrity": "sha512-78fohrpcVwTLxg1ZzBMlwEimoAJmY6B+5TsyAZ3Vok7YabRBUvjYTsRXPTjGEvv/mfgVBepbW28OlMEz4w8wGA==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.0.tgz", - "integrity": "sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.27.3.tgz", + "integrity": "sha512-h2Ay79YFXyQi+QZKo3ISZDyKaVD7uUvukEHTOft7kh00WF9mxAaxZsNs3o/eukbeKuH35jBvQqrT61fzKfAB/Q==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm-musleabihf": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.0.tgz", - "integrity": "sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.27.3.tgz", + "integrity": "sha512-Sv2GWmrJfRY57urktVLQ0VKZjNZGogVtASAgosDZ1aUB+ykPxSi3X1nWORL5Jk0sTIIwQiPH7iE3BMi9zGWfkg==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.0.tgz", - "integrity": "sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.27.3.tgz", + "integrity": "sha512-FPoJBLsPW2bDNWjSrwNuTPUt30VnfM8GPGRoLCYKZpPx0xiIEdFip3dH6CqgoT0RnoGXptaNziM0WlKgBc+OWQ==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm64-musl": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.0.tgz", - "integrity": "sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.27.3.tgz", + "integrity": "sha512-TKxiOvBorYq4sUpA0JT+Fkh+l+G9DScnG5Dqx7wiiqVMiRSkzTclP35pE6eQQYjP4Gc8yEkJGea6rz4qyWhp3g==", "dev": true, "optional": true }, "@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.0.tgz", - "integrity": "sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.27.3.tgz", + "integrity": "sha512-v2M/mPvVUKVOKITa0oCFksnQQ/TqGrT+yD0184/cWHIu0LoIuYHwox0Pm3ccXEz8cEQDLk6FPKd1CCm+PlsISw==", "dev": true, "optional": true }, "@rollup/rollup-linux-riscv64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.0.tgz", - "integrity": "sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.27.3.tgz", + "integrity": "sha512-LdrI4Yocb1a/tFVkzmOE5WyYRgEBOyEhWYJe4gsDWDiwnjYKjNs7PS6SGlTDB7maOHF4kxevsuNBl2iOcj3b4A==", "dev": true, "optional": true }, "@rollup/rollup-linux-s390x-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.0.tgz", - "integrity": "sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.27.3.tgz", + "integrity": "sha512-d4wVu6SXij/jyiwPvI6C4KxdGzuZOvJ6y9VfrcleHTwo68fl8vZC5ZYHsCVPUi4tndCfMlFniWgwonQ5CUpQcA==", "dev": true, "optional": true }, "@rollup/rollup-linux-x64-gnu": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.0.tgz", - "integrity": "sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.27.3.tgz", + "integrity": "sha512-/6bn6pp1fsCGEY5n3yajmzZQAh+mW4QPItbiWxs69zskBzJuheb3tNynEjL+mKOsUSFK11X4LYF2BwwXnzWleA==", "dev": true, "optional": true }, "@rollup/rollup-linux-x64-musl": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.0.tgz", - "integrity": "sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.27.3.tgz", + "integrity": "sha512-nBXOfJds8OzUT1qUreT/en3eyOXd2EH5b0wr2bVB5999qHdGKkzGzIyKYaKj02lXk6wpN71ltLIaQpu58YFBoQ==", "dev": true, "optional": true }, "@rollup/rollup-win32-arm64-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.0.tgz", - "integrity": "sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.27.3.tgz", + "integrity": "sha512-ogfbEVQgIZOz5WPWXF2HVb6En+kWzScuxJo/WdQTqEgeyGkaa2ui5sQav9Zkr7bnNCLK48uxmmK0TySm22eiuw==", "dev": true, "optional": true }, "@rollup/rollup-win32-ia32-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.0.tgz", - "integrity": "sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.27.3.tgz", + "integrity": "sha512-ecE36ZBMLINqiTtSNQ1vzWc5pXLQHlf/oqGp/bSbi7iedcjcNb6QbCBNG73Euyy2C+l/fn8qKWEwxr+0SSfs3w==", "dev": true, "optional": true }, "@rollup/rollup-win32-x64-msvc": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.0.tgz", - "integrity": "sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.27.3.tgz", + "integrity": "sha512-vliZLrDmYKyaUoMzEbMTg2JkerfBjn03KmAw9CykO0Zzkzoyd7o3iZNam/TpyWNjNT+Cz2iO3P9Smv2wgrR+Eg==", "dev": true, "optional": true }, "@rushstack/node-core-library": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.7.0.tgz", - "integrity": "sha512-Ff9Cz/YlWu9ce4dmqNBZpA45AEya04XaBFIjV7xTVeEf+y/kTjEasmozqFELXlNG4ROdevss75JrrZ5WgufDkQ==", + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.9.0.tgz", + "integrity": "sha512-MMsshEWkTbXqxqFxD4gcIUWQOCeBChlGczdZbHfqmNZQFLHB3yWxDFSMHFUdu2/OB9NUk7Awn5qRL+rws4HQNg==", "dev": true, "requires": { "ajv": "~8.13.0", @@ -13587,12 +13673,12 @@ } }, "@rushstack/terminal": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.14.0.tgz", - "integrity": "sha512-juTKMAMpTIJKudeFkG5slD8Z/LHwNwGZLtU441l/u82XdTBfsP+LbGKJLCNwP5se+DMCT55GB8x9p6+C4UL7jw==", + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.14.2.tgz", + "integrity": "sha512-2fC1wqu1VCExKC0/L+0noVcFQEXEnoBOtCIex1TOjBzEDWcw8KzJjjj7aTP6mLxepG0XIyn9OufeFb6SFsa+sg==", "dev": true, "requires": { - "@rushstack/node-core-library": "5.7.0", + "@rushstack/node-core-library": "5.9.0", "supports-color": "~8.1.1" }, "dependencies": { @@ -13614,12 +13700,12 @@ } }, "@rushstack/ts-command-line": { - "version": "4.22.6", - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.22.6.tgz", - "integrity": "sha512-QSRqHT/IfoC5nk9zn6+fgyqOPXHME0BfchII9EUPR19pocsNp/xSbeBCbD3PIR2Lg+Q5qk7OFqk1VhWPMdKHJg==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.23.0.tgz", + "integrity": "sha512-jYREBtsxduPV6ptNq8jOKp9+yx0ld1Tb/Tkdnlj8gTjazl1sF3DwX2VbluyYrNd0meWIL0bNeer7WDf5tKFjaQ==", "dev": true, "requires": { - "@rushstack/terminal": "0.14.0", + "@rushstack/terminal": "0.14.2", "@types/argparse": "1.0.38", "argparse": "~1.0.9", "string-argv": "~0.3.1" @@ -13735,9 +13821,9 @@ } }, "@testing-library/jest-dom": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.5.0.tgz", - "integrity": "sha512-xGGHpBXYSHUUr6XsKBfs85TWlYKpTc37cSBBVrXcib2MkHLboWlkClhWF37JKlDb9KEq3dHs+f2xR7XJEWGBxA==", + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.6.3.tgz", + "integrity": "sha512-IteBhl4XqYNkM54f4ejhLRJiZNqcSCoXUOG2CPK7qbD322KjQozM4kHQOfkG2oln9b9HTYqs+Sae8vBATubxxA==", "dev": true, "requires": { "@adobe/css-tools": "^4.4.0", @@ -13919,9 +14005,9 @@ } }, "@types/jest": { - "version": "29.5.13", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.13.tgz", - "integrity": "sha512-wd+MVEZCHt23V0/L642O5APvspWply/rGY5BcW4SUETo2UzPU3Z26qr8jC2qxpimI2jjx9h7+2cj2FwIr01bXg==", + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, "requires": { "expect": "^29.0.0", @@ -14135,86 +14221,86 @@ } }, "@vitejs/plugin-vue": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.1.4.tgz", - "integrity": "sha512-N2XSI2n3sQqp5w7Y/AN/L2XDjBIRGqXko+eDp42sydYSBeJuSm5a1sLf8zakmo8u7tA8NmBgoDLA1HeOESjp9A==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.0.tgz", + "integrity": "sha512-7n7KdUEtx/7Yl7I/WVAMZ1bEb0eVvXF3ummWTeLcs/9gvo9pJhuLdouSXGjdZ/MKD1acf1I272+X0RMua4/R3g==", "dev": true, "requires": {} }, "@volar/language-core": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.4.tgz", - "integrity": "sha512-kO9k4kTLfxpg+6lq7/KAIv3m2d62IHuCL6GbVgYZTpfKvIGoAIlDxK7pFcB/eczN2+ydg/vnyaeZ6SGyZrJw2w==", + "version": "2.4.10", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.10.tgz", + "integrity": "sha512-hG3Z13+nJmGaT+fnQzAkS0hjJRa2FCeqZt6Bd+oGNhUkQ+mTFsDETg5rqUTxyzIh5pSOGY7FHCWUS8G82AzLCA==", "dev": true, "requires": { - "@volar/source-map": "2.4.4" + "@volar/source-map": "2.4.10" } }, "@volar/source-map": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.4.tgz", - "integrity": "sha512-xG3PZqOP2haG8XG4Pg3PD1UGDAdqZg24Ru8c/qYjYAnmcj6GBR64mstx+bZux5QOyRaJK+/lNM/RnpvBD3489g==", + "version": "2.4.10", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.10.tgz", + "integrity": "sha512-OCV+b5ihV0RF3A7vEvNyHPi4G4kFa6ukPmyVocmqm5QzOd8r5yAtiNvaPEjl8dNvgC/lj4JPryeeHLdXd62rWA==", "dev": true }, "@volar/typescript": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.4.tgz", - "integrity": "sha512-QQMQRVj0fVHJ3XdRKiS1LclhG0VBXdFYlyuHRQF/xLk2PuJuHNWP26MDZNvEVCvnyUQuUQhIAfylwY5TGPgc6w==", + "version": "2.4.10", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.10.tgz", + "integrity": "sha512-F8ZtBMhSXyYKuBfGpYwqA5rsONnOwAVvjyE7KPYJ7wgZqo2roASqNWUnianOomJX5u1cxeRooHV59N0PhvEOgw==", "dev": true, "requires": { - "@volar/language-core": "2.4.4", + "@volar/language-core": "2.4.10", "path-browserify": "^1.0.1", "vscode-uri": "^3.0.8" } }, "@vue/compiler-core": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.12.tgz", - "integrity": "sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.13.tgz", + "integrity": "sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==", "dev": true, "requires": { "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.12", + "@vue/shared": "3.5.13", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "@vue/compiler-dom": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.12.tgz", - "integrity": "sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz", + "integrity": "sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==", "dev": true, "requires": { - "@vue/compiler-core": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/compiler-core": "3.5.13", + "@vue/shared": "3.5.13" } }, "@vue/compiler-sfc": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.12.tgz", - "integrity": "sha512-2k973OGo2JuAa5+ZlekuQJtitI5CgLMOwgl94BzMCsKZCX/xiqzJYzapl4opFogKHqwJk34vfsaKpfEhd1k5nw==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz", + "integrity": "sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==", "dev": true, "requires": { "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.12", - "@vue/compiler-dom": "3.5.12", - "@vue/compiler-ssr": "3.5.12", - "@vue/shared": "3.5.12", + "@vue/compiler-core": "3.5.13", + "@vue/compiler-dom": "3.5.13", + "@vue/compiler-ssr": "3.5.13", + "@vue/shared": "3.5.13", "estree-walker": "^2.0.2", "magic-string": "^0.30.11", - "postcss": "^8.4.47", + "postcss": "^8.4.48", "source-map-js": "^1.2.0" } }, "@vue/compiler-ssr": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.12.tgz", - "integrity": "sha512-eLwc7v6bfGBSM7wZOGPmRavSWzNFF6+PdRhE+VFJhNCgHiF8AM7ccoqcv5kBXA2eWUfigD7byekvf/JsOfKvPA==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.13.tgz", + "integrity": "sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==", "dev": true, "requires": { - "@vue/compiler-dom": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/compiler-dom": "3.5.13", + "@vue/shared": "3.5.13" } }, "@vue/compiler-vue2": { @@ -14270,50 +14356,50 @@ } }, "@vue/reactivity": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.12.tgz", - "integrity": "sha512-UzaN3Da7xnJXdz4Okb/BGbAaomRHc3RdoWqTzlvd9+WBR5m3J39J1fGcHes7U3za0ruYn/iYy/a1euhMEHvTAg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.13.tgz", + "integrity": "sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==", "dev": true, "requires": { - "@vue/shared": "3.5.12" + "@vue/shared": "3.5.13" } }, "@vue/runtime-core": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.12.tgz", - "integrity": "sha512-hrMUYV6tpocr3TL3Ad8DqxOdpDe4zuQY4HPY3X/VRh+L2myQO8MFXPAMarIOSGNu0bFAjh1yBkMPXZBqCk62Uw==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.13.tgz", + "integrity": "sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==", "dev": true, "requires": { - "@vue/reactivity": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/reactivity": "3.5.13", + "@vue/shared": "3.5.13" } }, "@vue/runtime-dom": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.12.tgz", - "integrity": "sha512-q8VFxR9A2MRfBr6/55Q3umyoN7ya836FzRXajPB6/Vvuv0zOPL+qltd9rIMzG/DbRLAIlREmnLsplEF/kotXKA==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.13.tgz", + "integrity": "sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==", "dev": true, "requires": { - "@vue/reactivity": "3.5.12", - "@vue/runtime-core": "3.5.12", - "@vue/shared": "3.5.12", + "@vue/reactivity": "3.5.13", + "@vue/runtime-core": "3.5.13", + "@vue/shared": "3.5.13", "csstype": "^3.1.3" } }, "@vue/server-renderer": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.12.tgz", - "integrity": "sha512-I3QoeDDeEPZm8yR28JtY+rk880Oqmj43hreIBVTicisFTx/Dl7JpG72g/X7YF8hnQD3IFhkky5i2bPonwrTVPg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.13.tgz", + "integrity": "sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==", "dev": true, "requires": { - "@vue/compiler-ssr": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/compiler-ssr": "3.5.13", + "@vue/shared": "3.5.13" } }, "@vue/shared": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz", + "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==", "dev": true }, "abab": { @@ -14401,6 +14487,12 @@ } } }, + "alien-signals": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-0.2.2.tgz", + "integrity": "sha512-cZIRkbERILsBOXTQmMrxc9hgpxglstn69zm+F1ARf4aPAzdAFYd6sBq87ErO0Fj3DV94tglcyHG5kQz9nDC/8A==", + "dev": true + }, "ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", @@ -15083,7 +15175,8 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", - "dev": true + "dev": true, + "optional": true }, "detect-newline": { "version": "3.1.0", @@ -15524,9 +15617,9 @@ "dev": true }, "fast-uri": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", - "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", + "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==", "dev": true }, "fastq": { @@ -15940,9 +16033,9 @@ "dev": true }, "immutable": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.4.tgz", - "integrity": "sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz", + "integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==", "dev": true }, "import-fresh": { @@ -18230,7 +18323,8 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", - "dev": true + "dev": true, + "optional": true }, "node-int64": { "version": "0.4.0", @@ -18428,18 +18522,16 @@ "dev": true }, "picocolors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", - "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true }, "picomatch": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", - "dev": true, - "optional": true, - "peer": true + "dev": true }, "pirates": { "version": "4.0.6", @@ -18507,13 +18599,13 @@ } }, "postcss": { - "version": "8.4.47", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", - "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", + "version": "8.4.49", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", + "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", "dev": true, "requires": { "nanoid": "^3.3.7", - "picocolors": "^1.1.0", + "picocolors": "^1.1.1", "source-map-js": "^1.2.1" } }, @@ -18790,27 +18882,29 @@ } }, "rollup": { - "version": "4.24.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.0.tgz", - "integrity": "sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==", - "dev": true, - "requires": { - "@rollup/rollup-android-arm-eabi": "4.24.0", - "@rollup/rollup-android-arm64": "4.24.0", - "@rollup/rollup-darwin-arm64": "4.24.0", - "@rollup/rollup-darwin-x64": "4.24.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.24.0", - "@rollup/rollup-linux-arm-musleabihf": "4.24.0", - "@rollup/rollup-linux-arm64-gnu": "4.24.0", - "@rollup/rollup-linux-arm64-musl": "4.24.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.24.0", - "@rollup/rollup-linux-riscv64-gnu": "4.24.0", - "@rollup/rollup-linux-s390x-gnu": "4.24.0", - "@rollup/rollup-linux-x64-gnu": "4.24.0", - "@rollup/rollup-linux-x64-musl": "4.24.0", - "@rollup/rollup-win32-arm64-msvc": "4.24.0", - "@rollup/rollup-win32-ia32-msvc": "4.24.0", - "@rollup/rollup-win32-x64-msvc": "4.24.0", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.27.3.tgz", + "integrity": "sha512-SLsCOnlmGt9VoZ9Ek8yBK8tAdmPHeppkw+Xa7yDlCEhDTvwYei03JlWo1fdc7YTfLZ4tD8riJCUyAgTbszk1fQ==", + "dev": true, + "requires": { + "@rollup/rollup-android-arm-eabi": "4.27.3", + "@rollup/rollup-android-arm64": "4.27.3", + "@rollup/rollup-darwin-arm64": "4.27.3", + "@rollup/rollup-darwin-x64": "4.27.3", + "@rollup/rollup-freebsd-arm64": "4.27.3", + "@rollup/rollup-freebsd-x64": "4.27.3", + "@rollup/rollup-linux-arm-gnueabihf": "4.27.3", + "@rollup/rollup-linux-arm-musleabihf": "4.27.3", + "@rollup/rollup-linux-arm64-gnu": "4.27.3", + "@rollup/rollup-linux-arm64-musl": "4.27.3", + "@rollup/rollup-linux-powerpc64le-gnu": "4.27.3", + "@rollup/rollup-linux-riscv64-gnu": "4.27.3", + "@rollup/rollup-linux-s390x-gnu": "4.27.3", + "@rollup/rollup-linux-x64-gnu": "4.27.3", + "@rollup/rollup-linux-x64-musl": "4.27.3", + "@rollup/rollup-win32-arm64-msvc": "4.27.3", + "@rollup/rollup-win32-ia32-msvc": "4.27.3", + "@rollup/rollup-win32-x64-msvc": "4.27.3", "@types/estree": "1.0.6", "fsevents": "~2.3.2" } @@ -18927,14 +19021,14 @@ "dev": true }, "sass": { - "version": "1.79.5", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.79.5.tgz", - "integrity": "sha512-W1h5kp6bdhqFh2tk3DsI771MoEJjvrSY/2ihJRJS4pjIyfJCw0nTsxqhnrUzaLMOJjFchj8rOvraI/YUVjtx5g==", + "version": "1.81.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.81.0.tgz", + "integrity": "sha512-Q4fOxRfhmv3sqCLoGfvrC9pRV8btc0UtqL9mN6Yrv6Qi9ScL55CVH1vlPP863ISLEEMNLLuu9P+enCeGHlnzhA==", "dev": true, "requires": { "@parcel/watcher": "^2.4.1", "chokidar": "^4.0.0", - "immutable": "^4.0.0", + "immutable": "^5.0.2", "source-map-js": ">=0.6.2 <2.0.0" } }, @@ -19355,9 +19449,9 @@ } }, "tslib": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", - "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true }, "type-check": { @@ -19446,9 +19540,9 @@ } }, "vite": { - "version": "5.4.8", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.8.tgz", - "integrity": "sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==", + "version": "5.4.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz", + "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==", "dev": true, "requires": { "esbuild": "^0.21.3", @@ -19458,12 +19552,12 @@ } }, "vite-plugin-dts": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-4.2.4.tgz", - "integrity": "sha512-REcYoxO90Pi8c0P1J7XAa/nVwNVGkX2eYkBEIfFSfcKE4g1W8sB0R23a7SU3aLEMfdOdb0SVHq3JlJ+Qb6gjgA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-4.3.0.tgz", + "integrity": "sha512-LkBJh9IbLwL6/rxh0C1/bOurDrIEmRE7joC+jFdOEEciAFPbpEKOLSAr5nNh5R7CJ45cMbksTrFfy52szzC5eA==", "dev": true, "requires": { - "@microsoft/api-extractor": "7.47.7", + "@microsoft/api-extractor": "^7.47.11", "@rollup/pluginutils": "^5.1.0", "@volar/typescript": "^2.4.4", "@vue/language-core": "2.1.6", @@ -19481,16 +19575,16 @@ "dev": true }, "vue": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.12.tgz", - "integrity": "sha512-CLVZtXtn2ItBIi/zHZ0Sg1Xkb7+PU32bJJ8Bmy7ts3jxXTcbfsEfBivFYYWz1Hur+lalqGAh65Coin0r+HRUfg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.13.tgz", + "integrity": "sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==", "dev": true, "requires": { - "@vue/compiler-dom": "3.5.12", - "@vue/compiler-sfc": "3.5.12", - "@vue/runtime-dom": "3.5.12", - "@vue/server-renderer": "3.5.12", - "@vue/shared": "3.5.12" + "@vue/compiler-dom": "3.5.13", + "@vue/compiler-sfc": "3.5.13", + "@vue/runtime-dom": "3.5.13", + "@vue/server-renderer": "3.5.13", + "@vue/shared": "3.5.13" } }, "vue-router": { @@ -19503,16 +19597,41 @@ } }, "vue-tsc": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-2.1.6.tgz", - "integrity": "sha512-f98dyZp5FOukcYmbFpuSCJ4Z0vHSOSmxGttZJCsFeX0M4w/Rsq0s4uKXjcSRsZqsRgQa6z7SfuO+y0HVICE57Q==", + "version": "2.1.10", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-2.1.10.tgz", + "integrity": "sha512-RBNSfaaRHcN5uqVqJSZh++Gy/YUzryuv9u1aFWhsammDJXNtUiJMNoJ747lZcQ68wUQFx6E73y4FY3D8E7FGMA==", "dev": true, "requires": { - "@volar/typescript": "~2.4.1", - "@vue/language-core": "2.1.6", + "@volar/typescript": "~2.4.8", + "@vue/language-core": "2.1.10", "semver": "^7.5.4" }, "dependencies": { + "@vue/language-core": { + "version": "2.1.10", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-2.1.10.tgz", + "integrity": "sha512-DAI289d0K3AB5TUG3xDp9OuQ71CnrujQwJrQnfuZDwo6eGNf0UoRlPuaVNO+Zrn65PC3j0oB2i7mNmVPggeGeQ==", + "dev": true, + "requires": { + "@volar/language-core": "~2.4.8", + "@vue/compiler-dom": "^3.5.0", + "@vue/compiler-vue2": "^2.7.16", + "@vue/shared": "^3.5.0", + "alien-signals": "^0.2.0", + "minimatch": "^9.0.3", + "muggle-string": "^0.4.1", + "path-browserify": "^1.0.1" + } + }, + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -19522,6 +19641,15 @@ "yallist": "^4.0.0" } }, + "minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + }, "semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", diff --git a/package.json b/package.json index b5e5131c..02c7c98f 100644 --- a/package.json +++ b/package.json @@ -1,13 +1,24 @@ { "name": "slim-select", "description": "Slim advanced select dropdown", - "version": "2.9.2", + "version": "2.10.0", "author": "Brian Voelker (http://webiswhatido.com)", "homepage": "https://slimselectjs.com", "license": "MIT", + "repository": { + "type": "git", + "url": "git+https://github.com/brianvoe/slim-select.git" + }, "bugs": { "url": "https://github.com/brianvoe/slim-select/issues" }, + "keywords": [ + "select", + "vanilla", + "dropdown", + "search", + "multiselect" + ], "main": "dist/slimselect.umd.js", "browser": "dist/slimselect.umd.js", "module": "dist/slimselect.es.js", @@ -26,17 +37,6 @@ }, "./styles": "./dist/slimselect.css" }, - "repository": { - "type": "git", - "url": "git+https://github.com/brianvoe/slim-select.git" - }, - "keywords": [ - "select", - "vanilla", - "dropdown", - "search", - "multiselect" - ], "scripts": { "dev": "vite --port=1111", "format": "prettier --write --cache --parser typescript \"src/**/*.ts\"", @@ -53,18 +53,18 @@ "devDependencies": { "@jest/globals": "^29.7.0", "@rollup/plugin-babel": "^6.0.4", - "@rollup/plugin-commonjs": "^28.0.0", + "@rollup/plugin-commonjs": "^28.0.1", "@rollup/plugin-node-resolve": "^15.3.0", "@rollup/plugin-replace": "^6.0.1", "@rollup/plugin-terser": "^0.4.4", - "@rollup/plugin-typescript": "^12.1.0", - "@testing-library/jest-dom": "^6.5.0", + "@rollup/plugin-typescript": "^12.1.1", + "@testing-library/jest-dom": "^6.6.3", "@testing-library/user-event": "^14.5.2", "@types/downloadjs": "^1.4.6", - "@types/jest": "^29.5.13", + "@types/jest": "^29.5.14", "@typescript-eslint/eslint-plugin": "^8.8.1", "@typescript-eslint/parser": "^8.8.1", - "@vitejs/plugin-vue": "^5.1.4", + "@vitejs/plugin-vue": "^5.2.0", "clipboard": "^2.0.11", "downloadjs": "^1.4.7", "eslint": "^9.12.0", @@ -77,19 +77,19 @@ "prettier": "^3.3.3", "prismjs": "^1.29.0", "rimraf": "^6.0.1", - "rollup": "^4.24.0", + "rollup": "^4.27.3", "rollup-plugin-peer-deps-external": "^2.2.4", "rollup-plugin-typescript2": "^0.36.0", "rollup-plugin-vue": "^6.0.0", - "sass": "^1.79.5", + "sass": "^1.81.0", "ts-jest": "^29.2.5", - "tslib": "^2.7.0", + "tslib": "^2.8.1", "typescript": "^5.6.3", - "vite": "^5.4.8", - "vite-plugin-dts": "^4.2.4", - "vue": "^3.5.12", + "vite": "^5.4.11", + "vite-plugin-dts": "^4.3.0", + "vue": "^3.5.13", "vue-router": "^4.4.5", - "vue-tsc": "^2.1.6", + "vue-tsc": "^2.1.10", "vuex": "^4.0.2" } } \ No newline at end of file diff --git a/src/docs/assets/scss/index.scss b/src/docs/assets/scss/index.scss index 72847446..2f0dcddc 100644 --- a/src/docs/assets/scss/index.scss +++ b/src/docs/assets/scss/index.scss @@ -1,9 +1,9 @@ -@import '_variables'; -@import 'layout'; -@import 'prism'; -@import 'misc'; -@import 'animations'; -@import 'button'; -@import 'input'; -@import 'alert'; -@import 'slim'; +@use '_variables'; +@use 'layout'; +@use 'prism'; +@use 'misc'; +@use 'animations'; +@use 'button'; +@use 'input'; +@use 'alert'; +@use 'slim'; diff --git a/src/docs/assets/scss/slim.scss b/src/docs/assets/scss/slim.scss index f077722a..28f17827 100644 --- a/src/docs/assets/scss/slim.scss +++ b/src/docs/assets/scss/slim.scss @@ -1,4 +1,4 @@ -@import '../../../slim-select/slimselect.scss'; +@use '../../../slim-select/slimselect.scss'; .ss-main, .ss-content { diff --git a/src/docs/pages/settings/content_position.vue b/src/docs/pages/settings/content_position.vue index 1d1b4949..1abe89d1 100644 --- a/src/docs/pages/settings/content_position.vue +++ b/src/docs/pages/settings/content_position.vue @@ -20,6 +20,13 @@ export default defineComponent({ contentPosition: 'absolute' } }) + + new SlimSelect({ + select: this.$refs.contentPositionFixed as HTMLSelectElement, + settings: { + contentPosition: 'fixed' + } + }) } }) @@ -32,11 +39,15 @@ export default defineComponent({ } .relative { - width: 200px; + max-width: 200px; } .absolute { - width: 200px; + max-width: 200px; + } + + .fixed { + max-width: 200px; } } } @@ -45,13 +56,17 @@ export default defineComponent({ diff --git a/src/slim-select/index.ts b/src/slim-select/index.ts index 2d228129..98171b3c 100644 --- a/src/slim-select/index.ts +++ b/src/slim-select/index.ts @@ -403,6 +403,7 @@ export default class SlimSelect { // Update settings this.settings.isOpen = false this.settings.isFullOpen = false + // Reset the content below setTimeout(() => { // Run afterClose callback diff --git a/src/slim-select/render.ts b/src/slim-select/render.ts index c1b33db4..7531dc40 100644 --- a/src/slim-select/render.ts +++ b/src/slim-select/render.ts @@ -154,7 +154,7 @@ export default class Render { // Misc classes // Add content position class - if (this.settings.contentPosition === 'relative') { + if (this.settings.contentPosition === 'relative' || this.settings.contentPosition === 'fixed') { this.content.main.classList.add('ss-' + this.settings.contentPosition) } } @@ -174,7 +174,7 @@ export default class Render { // Add id to data-id main.dataset.id = this.settings.id - // main.id = this.settings.id+'-main' // Remove for now as it is not needed + // main.id = this.settings.id+'-main' // Remove for now as it is not needed and add duplicate id errors // Add label main.setAttribute('aria-label', this.settings.ariaLabel) @@ -209,6 +209,11 @@ export default class Render { return false } + // Check if they type a-z, A-Z and 0-9 + if (e.key.length === 1) { + this.callbacks.open() + } + return true } @@ -589,7 +594,7 @@ export default class Render { // Add id to data-id main.dataset.id = this.settings.id - // main.id = this.settings.id + '-content' // Remove for now as it is not needed + // main.id = this.settings.id + '-content' // Remove for now as it is not needed and add duplicate id errors // Add search const search = this.searchDiv() @@ -1167,7 +1172,7 @@ export default class Render { // Create option const optionEl = document.createElement('div') optionEl.dataset.id = option.id // Dataset id for identifying an option - optionEl.id = option.id + // optionEl.id = option.id // Remove for now as it is not needed and add duplicate id errors optionEl.classList.add(this.classes.option) optionEl.setAttribute('role', 'option') // WCAG attribute if (option.class) { @@ -1355,8 +1360,10 @@ export default class Render { // Set the content position const containerRect = this.main.main.getBoundingClientRect() this.content.main.style.margin = '-' + (mainHeight + contentHeight - 1) + 'px 0px 0px 0px' - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px' - this.content.main.style.left = containerRect.left + window.scrollX + 'px' + this.content.main.style.top = + containerRect.top + containerRect.height + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + 'px' + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px' this.content.main.style.width = containerRect.width + 'px' } @@ -1372,8 +1379,13 @@ export default class Render { this.content.main.style.margin = '-1px 0px 0px 0px' // Dont do anything if the content is relative if (this.settings.contentPosition !== 'relative') { - this.content.main.style.top = containerRect.top + containerRect.height + window.scrollY + 'px' - this.content.main.style.left = containerRect.left + window.scrollX + 'px' + this.content.main.style.top = + containerRect.top + + containerRect.height + + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollY) + + 'px' + this.content.main.style.left = + containerRect.left + (this.settings.contentPosition === 'fixed' ? 0 : window.scrollX) + 'px' this.content.main.style.width = containerRect.width + 'px' } } diff --git a/src/slim-select/settings.ts b/src/slim-select/settings.ts index 16518049..06d61784 100644 --- a/src/slim-select/settings.ts +++ b/src/slim-select/settings.ts @@ -25,7 +25,7 @@ export default class Settings { public searchHighlight: boolean public closeOnSelect: boolean public contentLocation: HTMLElement | null - public contentPosition: 'relative' | 'absolute' + public contentPosition: 'relative' | 'absolute' | 'fixed' public openPosition: 'auto' | 'up' | 'down' public placeholderText: string public allowDeselect: boolean diff --git a/src/slim-select/slimselect.scss b/src/slim-select/slimselect.scss index d5295a4d..edcff9e8 100644 --- a/src/slim-select/slimselect.scss +++ b/src/slim-select/slimselect.scss @@ -261,6 +261,10 @@ height: 100%; } + &.ss-fixed { + position: fixed; + } + &.ss-open-above { flex-direction: column-reverse; opacity: 1;