https://www.medisana.de/theme/29dd88a3115312fa1caaeeabf063cd13/js/…/acris-cms.multi-select.53b791.js
1(self.webpackChunk=self.webpackChunk||[]).push([[87646],{118(e){var t;t=function(){"use strict";/*! SlimSelect - Advanced select dropdown */class e{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.contentOpen=e.contentOpen||"ss-open",this.dirAbove=e.dirAbove||"ss-dir-above",this.dirBelow=e.dirBelow||"ss-dir-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.mainOpen=e.mainOpen||"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 t(){return Math.random().toString(36).substring(2,10)}function s(e){let t,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:50,i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return function(){for(var l=arguments.length,n=Array(l),a=0;a<l;a++)n[a]=arguments[a];let r=self,o=i&&!t;clearTimeout(t),t=setTimeout(()=>{t=null,i||e.apply(r,n)},s),o&&e.apply(r,n)}}function i(e,t){return JSON.stringify(e)===JSON.stringify(t)}class l{constructor(e){this.id=e.id&&""!==e.id?e.id:t(),this.value=void 0===e.value?e.text||"":e.value||"",this.text=e.text||"",this.html=e.html||"",this.defaultSelected=void 0!==e.defaultSelected&&e.defaultSelected,this.selected=void 0!==e.selected&&e.selected,this.display=void 0===e.display||e.display,this.disabled=void 0!==e.disabled&&e.disabled,this.mandatory=void 0!==e.mandatory&&e.mandatory,this.placeholder=void 0!==e.placeholder&&e.placeholder,this.class=e.class||"",this.style=e.style||"",this.data=e.data||{}}}class n{constructor(e){if(this.id=e.id&&""!==e.id?e.id:t(),this.label=e.label||"",this.selectAll=void 0!==e.selectAll&&e.selectAll,this.selectAllText=e.selectAllText||"Select All",this.closable=e.closable||"off",this.options=[],e.options)for(let t of e.options)this.options.push(new l(t))}}class a{constructor(e,t){this.selectType="single",this.data=[],this.selectedOrder=[],this.selectType=e,this.setData(t)}validateDataArray(e){if(!Array.isArray(e))return Error("Data must be an array");for(let t of e)if(t){if(t instanceof n||"label"in t){if(!("label"in t))return Error("Optgroup must have a label");if("options"in t&&t.options)for(let e of t.options){let t=this.validateOption(e);if(t)return t}}else{if(!(t instanceof l)&&!("text"in t))return Error("Data object must be a valid optgroup or option");let e=this.validateOption(t);if(e)return e}}return null}validateOption(e){return"text"in e?null:Error("Option must have a text")}partialToFullData(e){let t=[];return e.forEach(e=>{if(e){if(e instanceof n||"label"in e){let s=[];"options"in e&&e.options&&e.options.forEach(e=>{s.push(new l(e))}),s.length>0&&t.push(new n(e))}(e instanceof l||"text"in e)&&t.push(new l(e))}}),t}setData(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=this.partialToFullData(e);if(t){let e=this.getSelectedOptions(),t=[];
1e.forEach(e=>{let i=!1;for(let t of s){if(t instanceof l&&t.id===e.id){i=!0;break}if(t instanceof n){for(let s of t.options)if(s.id===e.id){i=!0;break}}}i||t.push(e)}),this.data=[...t,...s]}else this.data=s;"single"===this.selectType&&this.setSelectedBy("id",this.getSelected())}getData(){return this.filter(null,!0)}getDataOptions(){return this.filter(null,!1)}addOption(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(t){let t=[new l(e)];this.setData(t.concat(this.getData()))}else this.setData(this.getData().concat(new l(e)))}setSelectedBy(e,t){let s=null,i=!1,a=[];for(let r of this.data){if(r instanceof n)for(let l of r.options){s||(s=l);let n=l[e]||"";l.selected=!i&&t.includes(n),l.selected&&(a.push(l),"single"===this.selectType&&(i=!0))}r instanceof l&&(s||(s=r),r.selected=!i&&t.includes(r[e]),r.selected&&(a.push(r),"single"===this.selectType&&(i=!0)))}"single"===this.selectType&&s&&!i&&(s.selected=!0,a.push(s));let r=t.map(t=>a.find(s=>s[e]===t)?.id||"");this.selectedOrder=r}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 t of this.data)if(t instanceof n&&t.id===e)return t;return null}getOptionByID(e){let t=this.filter(t=>t.id===e,!1);return t.length?t[0]:null}getSelectType(){return this.selectType}getFirstOption(){let e=null;for(let t of this.data)if(t instanceof n?e=t.options[0]:t instanceof l&&(e=t),e)break;return e}search(e,t){return""===(e=e.trim())?this.getData():this.filter(s=>t(s,e),!0)}filter(e,t){let s=[];return this.data.forEach(i=>{if(i instanceof n){let a=[];if(i.options.forEach(i=>{(!e||e(i))&&(t?a.push(new l(i)):s.push(new l(i)))}),a.length>0){let e=new n(i);e.options=a,s.push(e)}}i instanceof l&&(!e||e(i))&&s.push(new l(i))}),s}selectedOrderOptions(e){let t=[];return this.selectedOrder.forEach(s=>{let i=e.find(e=>e.id===s);i&&t.push(i)}),e.forEach(e=>{let s=!1;t.forEach(t=>{if(e.id===t.id){s=!0;return}}),s||t.push(e)}),t}}class r{constructor(e,t,s,i){this.store=s,this.settings=e,this.classes=t,this.callbacks=i,this.lastSelectedOption=null,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.main.main.setAttribute("aria-disabled","false"),this.content.search.input.disabled=!1}disable(){this.main.main.classList.add(this.classes.disabled),this.main.main.setAttribute("aria-disabled","true"),this.content.search.input.disabled=!0}open(){this.main.arrow.path.setAttribute("d",this.classes.arrowOpen),this.main.main.setAttribute("aria-expanded","true");let e="up"===this.settings.openPosition?this.classes.dirAbove:this.classes.dirBelow;this.main.main.classList.add(e),this.content.main.classList.add(e),this.content.main.classList.add(this.classes.contentOpen),this.content.search.input.removeAttribute("aria-hidden"),this.moveContent();let t=this.store.getSelectedOptions();if(t.length){let 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.setAttribute("aria-expanded","false"),this.main.arrow.path.setAttribute("d",this.classes.arrowClose),this.content.main.classList.remove(this.classes.contentOpen),this.content.search.input.setAttribute("aria-hidden","true"),this.main.main.removeAttribute("aria-activedescendant"),setTimeout(()=>{this.main.main.classList.remove(this.classes.dirAbove,this.classes.dirBelow),this.content.main.classList.remove(this.classes.dirAbove,this.classes.dirBelow)},100)}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(let e of this.settings.class)""!==e.trim()&&(this.main.main.classList.add(e.trim()),this.content.main.classList.add(e.trim()));("relative"===this.settings.contentPosition||"fixed"===this.settings.contentPosition)&&this.content.main.classList.add("ss-"+this.settings.contentPosition)}updateAriaAttributes(){let e=this.content.list.id;this.main.main.role="combobox",this.main.main.setAttribute("aria-haspopup","listbox"),this.main.main.setAttribute("aria-controls",e),this.main.main.setAttribute("aria-expanded","fal
1se"),this.content.list.setAttribute("role","listbox"),this.content.list.setAttribute("aria-label",this.settings.ariaLabel+" listbox"),this.settings.isMultiple&&this.content.list.setAttribute("aria-multiselectable","true"),this.content.search.input.setAttribute("aria-controls",e)}mainDiv(){let e=document.createElement("div");e.dataset.id=this.settings.id,e.setAttribute("aria-label",this.settings.ariaLabel),e.tabIndex=0,e.onkeydown=e=>{switch(e.key){case"ArrowUp":case"ArrowDown":return this.callbacks.open(),"ArrowDown"===e.key?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Enter":case" ":this.callbacks.open();let t=this.content.list.querySelector("."+this.classes.highlighted);return t&&t.click(),!1;case"Escape":return this.callbacks.close(),!1}return 1===e.key.length&&this.callbacks.open(),!0},e.onclick=e=>{this.settings.disabled||(this.settings.isOpen?this.callbacks.close():this.callbacks.open())};let t=document.createElement("div");t.classList.add(this.classes.values),e.appendChild(t);let s=document.createElement("div");s.classList.add(this.classes.deselect);let i=this.store?.getSelectedOptions();!this.settings.allowDeselect||this.settings.isMultiple&&i&&i.length<=0?s.classList.add(this.classes.hide):s.classList.remove(this.classes.hide),s.onclick=e=>{if(e.stopPropagation(),this.settings.disabled)return;let t=!0,s=this.store.getSelectedOptions();if(this.callbacks.beforeChange&&(t=!0===this.callbacks.beforeChange([],s)),t){if(this.settings.isMultiple)this.callbacks.setSelected([],!1),this.updateDeselectAll();else{let e=this.store.getFirstOption(),t=e?e.id:"";this.callbacks.setSelected(t,!1)}this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(this.store.getSelectedOptions())}};let l=document.createElementNS("http://www.w3.org/2000/svg","svg");l.setAttribute("viewBox","0 0 100 100");let n=document.createElementNS("http://www.w3.org/2000/svg","path");n.setAttribute("d",this.classes.deselectPath),l.appendChild(n),s.appendChild(l),e.appendChild(s);let a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.classList.add(this.classes.arrow),a.setAttribute("viewBox","0 0 100 100");let r=document.createElementNS("http://www.w3.org/2000/svg","path");return r.setAttribute("d",this.classes.arrowClose),this.settings.alwaysOpen&&a.classList.add(this.classes.hide),a.appendChild(r),e.appendChild(a),{main:e,values:t,deselect:{main:s,svg:l,path:n},arrow:{main:a,path:r}}}mainFocus(e){"click"!==e&&this.main.main.focus({preventScroll:!0})}placeholder(){let e=this.store.filter(e=>e.placeholder,!1),t=this.settings.placeholderText;e.length&&(""!==e[0].html?t=e[0].html:""!==e[0].text&&(t=e[0].text));let s=document.createElement("div");return s.classList.add(this.classes.placeholder),s.innerHTML=t,s}renderValues(){if(!this.settings.isMultiple){this.renderSingleValue();return}this.renderMultipleValues(),this.updateDeselectAll()}renderSingleValue(){let e=this.store.filter(e=>e.selected&&!e.placeholder,!1),t=e.length>0?e[0]:null;if(t){let e=document.createElement("div");e.classList.add(this.classes.single),t.html?e.innerHTML=t.html:e.innerText=t.text,this.main.values.innerHTML=e.outerHTML}else this.main.values.innerHTML=this.placeholder().outerHTML;this.settings.allowDeselect&&e.length?this.main.deselect.main.classList.remove(this.classes.hide):this.main.deselect.main.classList.add(this.classes.hide)}renderMultipleValues(){let e=this.main.values.childNodes,t=this.store.filter(e=>e.selected&&e.display,!1);if(0===t.length){this.main.values.innerHTML=this.placeholder().outerHTML;return}{let e=this.main.values.querySelector("."+this.classes.placeholder);e&&e.remove()}if(t.length>this.settings.maxValuesShown){let e=document.createElement("div");e.classList.add(this.classes.max),e.textContent=this.settings.maxValuesMessage.replace("{number}",t.length.toString()),this.main.values.innerHTML=e.outerHTML;return}{let e=this.main.values.querySelector("."+this.classes.max);e&&e.remove()}this.settings.keepOrder&&(t=this.store.selectedOrderOptions(t));let s=[];for(let i=0;i<e.length;i++){let l=e[i],n=l.getAttribute("data-id");n&&(t.filter(e=>e.id===n,!1).length||s.push(l))}for(let e of s)e.classList.add(this.classes.valueOut),setTimeout(()=>{this.main.values.hasChildNodes()&&this.main.values.contains(e)&&this.main.values.removeChild(e)},100);e=this.main.values.childNodes;for(let s=0;s<t.length;s++){let i=!0;for(let l=0;l<e.length;l++)t[s].id===String(e[l].dataset.id)&&(i=!1);i&&(this.settings.keepOrder?this.main.values.appendChild(this.multipleValue(t[s])):0===e.length?this.main.values.appendChild(this.multipleValue(t[s])):0===s?this.main.values.insertBefore(this.multipleValue(t[s]),e[s]):e[s-1].insertAdjacentElement("afterend",this.multipleValue(t[s])))}}multipleValue(e){let t=document.createElement("div");t.classList.add(this.classes.value),t.dataset.id=e.id;let s=document.createElement("div");if(s.classList.add(this.classes.valueText),s.textContent=e.text,t.appendChild(s),!e.mandatory){let s=document.createElement("div");s.classList.add(this.classes.valueDelete),s.setAttribute("tabindex","0"),s.onclick=t=>{if(t.preventDefault(),t.stopPropagation(),this.settings.disabled)return;let s=!0,i=this.store.getSelectedOptions(),a=i.filter(t=>t.selected&&t.id!==e.id,!0);if(!(this.settings.minSelected&&a.length<this.settings.minSelected)&&(this.callbacks.beforeChange&&(s=!0===this.callbacks.beforeChange(a,i)),s)){let e=[];for(let t of a){if(t instanceof n)for(let s of t.options)s.id&&e.push(s.id);t instanceof l&&e.push(t.id)}this.callbacks.setSelected(e,!1),this.settings.closeOnSelect&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(a),this.updateDeselectAll()}};let i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.setAttribute("viewBox","0 0 100 100");let a=document.createElementNS("http://www.w3.org/2000/svg","path");a.setAttribute("d",this.classes.optionDelete),i.appendChild(a),s.appendChild(i),t.appendChild(s),s.onkeydown=e=>{"Enter"===e.key&&s.click()}}return t}contentDiv(){let e=document.createElement("div");e.dataset.id=this.settings.id;let t=this.searchDiv();e.appendChild(t.main);let s=this.listDiv();return e.appendChild(s),{main:e,search:t,list:s}}moveContent(){if("relative"===this.settings.contentPosition||"down"===this.settings.openPosition){this.moveContentBelow();return}if("up"===this.settings.openPosition){this.moveContentAbove();return}"up"===this.putContent()?this.moveContentAbove():this.moveContentBelow()}searchDiv(){let e=document.createElement("div"),t=document.createElement("input"),i=document.createElement("div");e.classList.add(this.classes.search);let n={main:e,input:t};if(this.settings.showSearch||(e.classList.add(this.classes.hide),t.readOnly=!0),t.type="search",t.placeholder=this.settings.searchPlaceholder,t.tabIndex=-1,t.setAttribute("aria-label",this.settings.searchPlaceholder),t.setAttribute("aria-autocomplete","list"),t.setAttribute("autocapitalize","off"),t.setAttribute("autocomplete","off"),t.setAttribute("autocorrect","off"),t.setAttribute("aria-hidden","true"),t.oninput=s(e=>{this.callbacks.search(e.target.value)},100),t.onkeydown=e=>{switch(e.key){case"ArrowUp":case"ArrowDown":return"ArrowDown"===e.key?this.highlight("down"):this.highlight("up"),!1;case"Tab":return this.callbacks.close(),!0;case"Escape":return this.callbacks.close(),!1;case" ":let t=this.content.list.querySelector("."+this.classes.highlighted);return!t||(t.click(),!1);case"Enter":let s=this.content.list.querySelector("."+this.classes.highlighted);
1return s?(s.click(),!1):!this.callbacks.addable||(i.click(),!1)}return!0},e.appendChild(t),this.callbacks.addable){i.classList.add(this.classes.addable);let t=document.createElementNS("http://www.w3.org/2000/svg","svg");t.setAttribute("viewBox","0 0 100 100");let s=document.createElementNS("http://www.w3.org/2000/svg","path");s.setAttribute("d",this.classes.addablePath),t.appendChild(s),i.appendChild(t),i.onclick=e=>{if(e.preventDefault(),e.stopPropagation(),!this.callbacks.addable)return;let t=this.content.search.input.value.trim();if(""===t){this.content.search.input.focus();return}let s=e=>{let t=new l(e);if(this.callbacks.addOption(t),this.settings.isMultiple){let e=this.store.getSelected();e.push(t.id),this.callbacks.setSelected(e,!0)}else this.callbacks.setSelected([t.id],!0);this.callbacks.search(""),this.settings.closeOnSelect&&setTimeout(()=>{this.callbacks.close()},100)},i=this.callbacks.addable(t);!1===i||null==i||(i instanceof Promise?i.then(e=>{"string"==typeof e?s({text:e,value:e}):i instanceof Error?this.renderError(i.message):s(e)}):"string"==typeof i?s({text:i,value:i}):i instanceof Error?this.renderError(i.message):s(i))},e.appendChild(i),n.addable={main:i,svg:t,path:s}}return n}searchFocus(){this.content.search.input.focus()}getOptions(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i="."+this.classes.option;return e&&(i+=":not(."+this.classes.placeholder+")"),t&&(i+=":not(."+this.classes.disabled+")"),s&&(i+=":not(."+this.classes.hide+")"),Array.from(this.content.list.querySelectorAll(i))}highlight(e){let t=this.getOptions(!0,!0,!0);if(0===t.length)return;if(1===t.length&&!t[0].classList.contains(this.classes.highlighted)){t[0].classList.add(this.classes.highlighted);return}let s=!1;for(let e of t)e.classList.contains(this.classes.highlighted)&&(s=!0);if(!s){for(let e of t)if(e.classList.contains(this.classes.selected)){e.classList.add(this.classes.highlighted);break}}for(let s=0;s<t.length;s++)if(t[s].classList.contains(this.classes.highlighted)){let i=t[s];i.classList.remove(this.classes.highlighted);let l=i.parentElement;if(l&&l.classList.contains(this.classes.mainOpen)){let e=l.querySelector("."+this.classes.optgroupLabel);e&&e.click()}let n=t["down"===e?s+1<t.length?s+1:0:s-1>=0?s-1:t.length-1];n.classList.add(this.classes.highlighted),this.ensureElementInView(this.content.list,n),n.id&&this.main.main.setAttribute("aria-activedescendant",n.id);let a=n.parentElement;if(a&&a.classList.contains(this.classes.close)){let e=a.querySelector("."+this.classes.optgroupLabel);e&&e.click()}return}let i=t["down"===e?0:t.length-1];i.classList.add(this.classes.highlighted),i.id&&this.main.main.setAttribute("aria-activedescendant",i.id),this.ensureElementInView(this.content.list,i)}listDiv(){let e=document.createElement("div");e.classList.add(this.classes.list);let t=this.settings.id+"-list";return e.id=t,e.dataset.id=t,e}renderError(e){this.content.list.innerHTML="";let t=document.createElement("div");t.classList.add(this.classes.error),t.textContent=e,this.content.list.appendChild(t)}renderSearching(){this.content.list.innerHTML="";let 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="",0===e.length){let e=document.createElement("div");e.classList.add(this.classes.search),this.callbacks.addable?e.innerHTML=this.settings.addableText.replace("{value}",this.content.search.input.value):e.innerHTML=this.settings.searchText,this.content.list.appendChild(e);return}this.settings.allowDeselect&&!this.settings.isMultiple&&(this.store.filter(e=>e.placeholder,!1).length||this.store.addOption(new l({text:"",value:"",selected:!1,placeholder:!0}),!0));let t=document.createDocumentFragment();for(let s of e){if(s instanceof n){let e=document.createElement("div");e.classList.add(this.classes.optgroup);let i=document.createElement("div");i.classList.add(this.classes.optgroupLabel),e.appendChild(i);let n=document.createElement("div");n.classList.add(this.classes.optgroupLabelText),n.textContent=s.label,i.appendChild(n);let a=document.createElement("div");if(a.classList.add(this.classes.optgroupActions),i.appendChild(a),this.settings.isMultiple&&s.selectAll){let e=document.createElement("div");e.classList.add(this.classes.optgroupSelectAll);let t=!0;for(let e of s.options)if(!e.selected){t=!1;break}t&&e.classList.add(this.classes.selected);let i=document.createElement("span");i.textContent=s.selectAllText,e.appendChild(i);let n=document.createElementNS("http://www.w3.org/2000/svg","svg");n.setAttribute("viewBox","0 0 100 100"),e.appendChild(n);let r=document.createElementNS("http://www.w3.org/2000/svg","path");r.setAttribute("d",this.classes.optgroupSelectAllBox),n.appendChild(r);let o=document.createElementNS("http://www.w3.org/2000/svg","path");o.setAttribute("d",this.classes.optgroupSelectAllCheck),n.appendChild(o),e.addEventListener("click",e=>{e.preventDefault(),e.stopPropagation();let i=this.store.getSelected();if(t){let e=i.filter(e=>{for(let t of s.options)if(e===t.id)return!1;return!0});this.callbacks.setSelected(e,!0);return}{let e=s.options.map(e=>e.id).filter(e=>void 0!==e),t=i.concat(e);for(let e of s.options)e.id&&!this.store.getOptionByID(e.id)&&this.callbacks.addOption(new l(e));this.callbacks.setSelected(t,!0);return}}),a.appendChild(e)}if("off"!==s.closable){let t=document.createElement("div");t.classList.add(this.classes.optgroupClosable);
1let l=document.createElementNS("http://www.w3.org/2000/svg","svg");l.setAttribute("viewBox","0 0 100 100"),l.classList.add(this.classes.arrow),t.appendChild(l);let n=document.createElementNS("http://www.w3.org/2000/svg","path");l.appendChild(n),s.options.some(e=>e.selected)||""!==this.content.search.input.value.trim()?(t.classList.add(this.classes.mainOpen),n.setAttribute("d",this.classes.arrowOpen)):"open"===s.closable?(e.classList.add(this.classes.mainOpen),n.setAttribute("d",this.classes.arrowOpen)):"close"===s.closable&&(e.classList.add(this.classes.close),n.setAttribute("d",this.classes.arrowClose)),i.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation(),e.classList.contains(this.classes.close)?(e.classList.remove(this.classes.close),e.classList.add(this.classes.mainOpen),n.setAttribute("d",this.classes.arrowOpen)):(e.classList.remove(this.classes.mainOpen),e.classList.add(this.classes.close),n.setAttribute("d",this.classes.arrowClose))}),a.appendChild(t)}for(let n of(e.appendChild(i),s.options))e.appendChild(this.option(new l(n))),t.appendChild(e)}s instanceof l&&t.appendChild(this.option(s))}this.content.list.appendChild(t)}option(e){if(e.placeholder){let e=document.createElement("div");return e.classList.add(this.classes.option),e.classList.add(this.classes.hide),e}let t=document.createElement("div");return t.dataset.id=e.id,t.id=this.settings.id+"-"+e.id,t.classList.add(this.classes.option),t.setAttribute("role","option"),e.class&&e.class.split(" ").forEach(e=>{t.classList.add(e)}),e.style&&(t.style.cssText=e.style),this.settings.searchHighlight&&""!==this.content.search.input.value.trim()?t.innerHTML=this.highlightText(""!==e.html?e.html:e.text,this.content.search.input.value,this.classes.searchHighlighter):""!==e.html?t.innerHTML=e.html:t.textContent=e.text,this.settings.showOptionTooltips&&t.textContent&&t.setAttribute("title",t.textContent),e.display||t.classList.add(this.classes.hide),e.disabled&&t.classList.add(this.classes.disabled),e.selected&&this.settings.hideSelected&&t.classList.add(this.classes.hide),e.selected?(t.classList.add(this.classes.selected),t.setAttribute("aria-selected","true"),this.main.main.setAttribute("aria-activedescendant",t.id)):(t.classList.remove(this.classes.selected),t.setAttribute("aria-selected","false")),t.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation();let s=this.store.getSelected(),i=String(t.currentTarget.dataset.id),l=t.ctrlKey||t.metaKey;if(e.disabled||!this.settings.isMultiple&&e.selected&&!this.settings.allowDeselect||e.selected&&e.mandatory||this.settings.isMultiple&&this.settings.maxSelected<=s.length&&!e.selected||this.settings.isMultiple&&this.settings.minSelected>=s.length&&e.selected&&!l)return;let n=!1,a=this.store.getSelectedOptions(),r=[];if(this.settings.isMultiple){let s=a.some(e=>e.id===i);if(t.shiftKey&&this.lastSelectedOption){let t=this.store.getDataOptions(),s=t.findIndex(e=>e.id===this.lastSelectedOption.id),i=t.findIndex(t=>t.id===e.id);if(s>=0&&i>=0){let e=Math.min(s,i),l=Math.max(s,i),n=t.slice(e,l+1).filter(e=>!a.find(t=>t.id===e.id));r=a.length+n.length<=this.settings.maxSelected?a.concat(n):a}else r=a}else r=l?s?a.filter(e=>e.id!==i):a.concat(e):s?a.filter(e=>e.id!==i):a.concat(e),this.lastSelectedOption=e}if(this.settings.isMultiple||(r=e.selected?[]:[e]),this.callbacks.beforeChange||(n=!0),this.callbacks.beforeChange&&(n=!1!==this.callbacks.beforeChange(r,a)),n){this.store.getOptionByID(i)||this.callbacks.addOption(e),this.callbacks.setSelected(r.map(e=>e.id),!1);let s=t.ctrlKey||t.metaKey||t.shiftKey;this.settings.closeOnSelect&&!(this.settings.isMultiple&&s)&&this.callbacks.close(),this.callbacks.afterChange&&this.callbacks.afterChange(r)}}),t}destroy(){this.main.main.remove(),this.content.main.remove()}highlightText(e,t,s){let i=t.trim();if(""===i)return e;let l=i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),n=document.createElement("div");n.innerHTML=e;let a=e=>{if(e.nodeType===Node.TEXT_NODE){let t=e.textContent||"",i=RegExp("("+l+")","i");if(i.test(t)){let l=document.createElement("span");t.split(i).forEach((e,t)=>{if(e&&i.test(e)){let t=document.createElement("mark");t.className=s,t.textContent=e,l.appendChild(t)}else e&&l.appendChild(document.createTextNode(e))}),e.parentNode?.replaceChild(l,e)}}else e.nodeType===Node.ELEMENT_NODE&&Array.from(e.childNodes).forEac
1h(e=>a(e))};return Array.from(n.childNodes).forEach(e=>a(e)),n.innerHTML}moveContentAbove(){let e=this.main.main.offsetHeight,t=this.content.main.offsetHeight;this.main.main.classList.remove(this.classes.dirBelow),this.main.main.classList.add(this.classes.dirAbove),this.content.main.classList.remove(this.classes.dirBelow),this.content.main.classList.add(this.classes.dirAbove);let s=this.main.main.getBoundingClientRect();this.content.main.style.margin="-"+(e+t-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.dirAbove),this.main.main.classList.add(this.classes.dirBelow),this.content.main.classList.remove(this.classes.dirAbove),this.content.main.classList.add(this.classes.dirBelow);let e=this.main.main.getBoundingClientRect();this.content.main.style.margin="-1px 0px 0px 0px","relative"!==this.settings.contentPosition&&(this.content.main.style.top=e.top+e.height+("fixed"===this.settings.contentPosition?0:window.scrollY)+"px",this.content.main.style.left=e.left+("fixed"===this.settings.contentPosition?0:window.scrollX)+"px",this.content.main.style.width=e.width+"px")}ensureElementInView(e,t){let s=e.scrollTop+e.offsetTop,i=s+e.clientHeight,l=t.offsetTop,n=l+t.clientHeight;l<s?e.scrollTop-=s-l:n>i&&(e.scrollTop+=n-i)}putContent(){let e=this.main.main.offsetHeight,t=this.main.main.getBoundingClientRect(),s=this.content.main.offsetHeight;return window.innerHeight-(t.top+e)<=s&&t.top>s?"up":"down"}updateDeselectAll(){if(!this.store||!this.settings)return;let e=this.store.getSelectedOptions(),t=e&&e.length>0,s=this.settings.isMultiple,i=this.settings.allowDeselect,l=this.main.deselect.main,n=this.classes.hide;i&&!(s&&!t)?l.classList.remove(n):l.classList.add(n)}}class o{constructor(e){this.listen=!1,this.observer=null,this.preventNativeSelect=null,this.preventNativeSelectMousedown=null,this.preventNativeSelectFocus=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.position="absolute",this.select.style.width="1px",this.select.style.height="1px",this.select.style.opacity="0",this.select.style.overflow="hidden",this.select.style.pointerEvents="none",this.select.style.margin="0",this.select.style.padding="0",this.select.style.borderWidth="0",this.select.style.clip="rect(0 0 0 0)",this.select.setAttribute("aria-hidden","true"),this.preventNativeSelect||(this.preventNativeSelect=e=>{e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation()},this.preventNativeSelectMousedown=e=>{e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation()},this.preventNativeSelectFocus=e=>{e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation()},this.select.addEventListener("click",this.preventNativeSelect,{capture:!0,passive:!1}),this.select.addEventListener("mousedown",this.preventNativeSelectMousedown,{capture:!0,passive:!1}),this.select.addEventListener("focus",this.preventNativeSelectFocus,{capture:!0,passive:!1}))}showUI(){this.select.removeAttribute("tabindex"),this.select.style.position="",this.select.style.width="",this.select.style.height="",this.select.style.opacity="",this.select.style.overflow="",this.select.style.pointerEvents="",this.select.style.margin="",this.select.style.padding="",this.select.style.borderWidth="",this.select.style.clip="",this.select.removeAttribute("aria-hidden"),this.preventNativeSelect&&(this.select.removeEventListener("click",this.preventNativeSelect,{capture:!0}),this.preventNativeSelect=null),this.preventNativeSelectMousedown&&(this.select.removeEventListener("mousedown",this.preventNativeSelectMousedown,{capture:!0}),this.preventNativeSelectMousedown=null),this.preventNativeSelectFocus&&(this.select.removeEventListener("focus",this.preventNativeSelectFocus,{capture:!0}),this.preventNativeSelectFocus=null)}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 t=!1,s=!1,i=!1;for(let l of e){if(l.target===this.select&&("disabled"===l.attributeName&&(s=!0),"class"===l.attributeName&&(t=!0),"childList"===l.type)){for(let e of Array.from(l.addedNodes))if("OPTION"===e.nodeName&&e.value===this.select.value){this.select.dispatchEvent(new Event("change"));break}i=!0}
1("OPTGROUP"===l.target.nodeName||"OPTION"===l.target.nodeName)&&(i=!0)}t&&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 e=[];for(let t of this.select.childNodes)"OPTGROUP"===t.nodeName&&e.push(this.getDataFromOptgroup(t)),"OPTION"===t.nodeName&&e.push(this.getDataFromOption(t));return e}getDataFromOptgroup(e){let t={id:e.id,label:e.label,selectAll:!!e.dataset&&"true"===e.dataset.selectall,selectAllText:e.dataset?e.dataset.selectalltext:"Select all",closable:e.dataset?e.dataset.closable:"off",options:[]};for(let s of e.childNodes)"OPTION"===s.nodeName&&t.options.push(this.getDataFromOption(s));return t}getDataFromOption(e){return{id:e.id,value:e.value,text:e.text,html:e.dataset&&e.dataset.html?e.dataset.html:"",defaultSelected:e.defaultSelected,selected:e.selected,display:"none"!==e.style.display,disabled:e.disabled,mandatory:!!e.dataset&&"true"===e.dataset.mandatory,placeholder:"true"===e.dataset.placeholder,class:e.className,style:e.style.cssText,data:e.dataset}}getSelectedOptions(){let e=[];for(let t of this.select.childNodes){if("OPTGROUP"===t.nodeName)for(let s of t.childNodes)"OPTION"===s.nodeName&&s.selected&&e.push(this.getDataFromOption(s));"OPTION"===t.nodeName&&t.selected&&e.push(this.getDataFromOption(t))}return e}getSelectedValues(){return this.getSelectedOptions().map(e=>e.value)}setSelected(e){for(let t of(this.changeListen(!1),this.select.childNodes)){if("OPTGROUP"===t.nodeName)for(let s of t.childNodes)"OPTION"===s.nodeName&&(s.selected=e.includes(s.id));"OPTION"===t.nodeName&&(t.selected=e.includes(t.id))}this.changeListen(!0)}setSelectedByValue(e){for(let t of(this.changeListen(!1),this.select.childNodes)){if("OPTGROUP"===t.nodeName)for(let s of t.childNodes)"OPTION"===s.nodeName&&(s.selected=e.includes(s.value));"OPTION"===t.nodeName&&(t.selected=e.includes(t.value))}this.changeListen(!0)}updateSelect(e,t,s){this.changeListen(!1),e&&(this.select.dataset.id=e),t&&(this.select.style.cssText=t),s&&(this.select.className="",s.forEach(e=>{""!==e.trim()&&this.select.classList.add(e.trim())})),this.changeListen(!0)}updateOptions(e){for(let t of(this.changeListen(!1),this.select.innerHTML="",e))t instanceof n&&this.select.appendChild(this.createOptgroup(t)),t instanceof l&&this.select.appendChild(this.createOption(t));this.select.dispatchEvent(new Event("change",{bubbles:!0})),this.changeListen(!0)}createOptgroup(e){let t=document.createElement("optgroup");if(t.id=e.id,t.label=e.label,e.selectAll&&(t.dataset.selectAll="true"),"off"!==e.closable&&(t.dataset.closable=e.closable),e.options)for(let s of e.options)t.appendChild(this.createOption(s));return t}createOption(e){let t=document.createElement("option");return t.id=e.id,t.value=e.value,t.textContent=e.text,""!==e.html&&t.setAttribute("data-html",e.html),t.defaultSelected=e.defaultSelected,t.selected=e.selected,e.disabled&&(t.disabled=!0),e.display||(t.style.display="none"),e.placeholder&&t.setAttribute("data-placeholder","true"),e.mandatory&&t.setAttribute("data-mandatory","true"),e.class&&e.class.split(" ").forEach(e=>{t.classList.add(e)}),e.data&&"object"==typeof e.data&&Object.keys(e.data).forEach(s=>{t.setAttribute("data-"+function(e){let t=e.replace(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g,e=>"-"+e.toLowerCase());return e[0]===e[0].toUpperCase()?t.substring(1):t}(s),e.data[s])}),t}setupLabelHandlers(){let e=[],t=this.select.id;t&&document.querySelectorAll(`label[for="${t}"]`).forEach(t=>e.push(t));let s=this.select.parentElement;for(;s&&s!==document.body;){if("LABEL"===s.tagName){e.push(s);break}s=s.parentElement}Array.from(new Set(e)).forEach(e=>{if(e.__slimSelectLabelHandler)return;let t=e=>{e.preventDefault(),e.stopPropagation(),this.onLabelClick&&setTimeout(()=>{this.onLabelClick()},0)};e.__slimSelectLabelHandler=t,e.addEventListener("click",t,{capture:!0,passive:!1})})}removeLabelHandlers(){let e=[],t=this.select.id;t&&document.querySelectorAll(`label[for="${t}"]`).forEach(t=>e.push(t));let s=this.select.parentElement;for(;s&&s!==document.body;){if("LABEL"===s.tagName){e.push(s);break}s=s.parentElement}
1Array.from(new Set(e)).forEach(e=>{let t=e.__slimSelectLabelHandler;t&&(e.removeEventListener("click",t,{capture:!0}),delete e.__slimSelectLabelHandler)})}destroy(){this.changeListen(!1),this.select.removeEventListener("change",this.valueChange),this.preventNativeSelect&&(this.select.removeEventListener("click",this.preventNativeSelect,{capture:!0}),this.preventNativeSelect=null),this.preventNativeSelectMousedown&&(this.select.removeEventListener("mousedown",this.preventNativeSelectMousedown,{capture:!0}),this.preventNativeSelectMousedown=null),this.preventNativeSelectFocus&&(this.select.removeEventListener("focus",this.preventNativeSelectFocus,{capture:!0}),this.preventNativeSelectFocus=null),this.observer&&(this.observer.disconnect(),this.observer=null),this.removeLabelHandlers(),delete this.select.dataset.id,this.showUI()}}class h{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-"+t(),this.style=e.style||"",this.class=e.class||[],this.disabled=void 0!==e.disabled&&e.disabled,this.alwaysOpen=void 0!==e.alwaysOpen&&e.alwaysOpen,this.showSearch=void 0===e.showSearch||e.showSearch,this.focusSearch=void 0===e.focusSearch||e.focusSearch,this.ariaLabel=e.ariaLabel||"Combobox",this.searchPlaceholder=e.searchPlaceholder||"Search...",this.searchText=e.searchText||"No Results",this.searchingText=e.searchingText||"Searching...",this.searchHighlight=void 0!==e.searchHighlight&&e.searchHighlight,this.closeOnSelect=void 0===e.closeOnSelect||e.closeOnSelect,this.contentLocation=e.contentLocation||document.body,this.contentPosition=e.contentPosition||"absolute",this.openPosition=e.openPosition||"auto",this.placeholderText=void 0!==e.placeholderText?e.placeholderText:"Select Value",this.allowDeselect=void 0!==e.allowDeselect&&e.allowDeselect,this.hideSelected=void 0!==e.hideSelected&&e.hideSelected,this.keepOrder=void 0!==e.keepOrder&&e.keepOrder,this.showOptionTooltips=void 0!==e.showOptionTooltips&&e.showOptionTooltips,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 c{constructor(t){if(this.openTimeout=null,this.closeTimeout=null,this.events={search:void 0,searchFilter:(e,t)=>-1!==e.text.toLowerCase().indexOf(t.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=e=>{this.settings.isOpen&&e.target&&!function(e,t){function s(e,s){return s&&e&&e.classList&&e.classList.contains(s)||s&&e&&e.dataset&&e.dataset.id&&e.dataset.id===t?e:null}return s(e,t)||function e(t,i){return t&&t!==document?s(t,i)?t:e(t.parentNode,i):null}(e,t)}(e.target,this.settings.id)&&this.close(e.type)},this.windowVisibilityChange=()=>{document.hidden&&this.close()},this.selectEl="string"==typeof t.select?document.querySelector(t.select):t.select,!this.selectEl){t.events&&t.events.error&&t.events.error(Error("Could not find select element"));return}if("SELECT"!==this.selectEl.tagName){t.events&&t.events.error&&t.events.error(Error("Element isnt of type select"));return}this.selectEl.dataset.ssid&&this.destroy(),this.settings=new h(t.settings),this.cssClasses=new e(t.cssClasses);let i=["beforeOpen","afterOpen","beforeClose","afterClose"];for(let e in t.events)t.events.hasOwnProperty(e)&&(-1!==i.indexOf(e)?this.events[e]=s(t.events[e],100):this.events[e]=t.events[e]);this.settings.disabled=t.settings?.disabled?t.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 o(this.selectEl),this.selectEl.id||(this.selectEl.id=this.settings.id),this.select.updateSelect(this.settings.id,this.settings.style,this.settings.class),this.select.hideUI(),this.select.onValueChange=e=>{this.setSelected(e.map(e=>e.id))},this.select.onClassChange=e=>{this.settings.class=e,this.render.updateClassStyles()},this.select.onDisabledChange=e=>{e?this.disable():this.enable()},this.select.onOptionsChange=e=>{this.setData(e)},this.select.onLabelClick=()=>{this.settings.disabled||this.open()};let l=t.data?t.data:this.select.getData();this.store=new a(this.settings.isMultiple?"multiple":"single",l),t.data&&this.select.updateOptions(this.store.getData());let 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};
1this.render=new r(this.settings,this.cssClasses,this.store,n),this.render.renderValues(),this.render.renderOptions(this.store.getData());let c=this.selectEl.getAttribute("aria-label"),d=this.selectEl.getAttribute("aria-labelledby");c?this.render.main.main.setAttribute("aria-label",c):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.select.setupLabelHandlers(),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){let t=this.store.getSelected(),s=this.store.validateDataArray(e);if(s){this.events.error&&this.events.error(s);return}this.store.setData(e);let l=this.store.getData();this.select.updateOptions(l),this.render.renderValues(),this.render.renderOptions(l),this.events.afterChange&&!i(t,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(e=>e.value)}setSelected(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],s=this.store.getSelected(),l=this.store.getDataOptions();e=Array.isArray(e)?e:[e];let n=[];for(let t of e){if(l.find(e=>e.id==t)){n.push(t);continue}for(let e of l.filter(e=>e.value==t))n.push(e.id)}this.store.setSelectedBy("id",n);let a=this.store.getData();this.select.updateOptions(a),this.render.renderValues(),""!==this.render.content.search.input.value?this.search(this.render.content.search.input.value):this.render.renderOptions(a),t&&this.events.afterChange&&!i(s,this.store.getSelected())&&this.events.afterChange(this.store.getSelectedOptions())}addOption(e){let t=this.store.getSelected();this.store.getDataOptions().some(t=>t.value===(e.value??e.text))||this.store.addOption(e);let s=this.store.getData();this.select.updateOptions(s),this.render.renderValues(),this.render.renderOptions(s),this.events.afterChange&&!i(t,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,this.openTimeout=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(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]: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,this.closeTimeout=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),""===e){this.render.renderOptions(this.store.getData());return}if(!this.events.search){let t=""===e?this.store.getData():this.store.search(e,this.events.searchFilter);this.render.renderOptions(t);return}this.render.renderSearching();let t=this.events.search(e,this.store.getSelectedOptions());if(t instanceof Promise){t.then(e=>{this.store.setData(e,!0),this.select.updateOptions(this.store.getData()),this.render.renderOptions(this.store.getData())}).catch(e=>{this.render.renderError("string"==typeof e?e:e.message)});return}Array.isArray(t)?(this.store.setData(t,!0),this.select.updateOptions(this.store.getData()),this.render.renderOptions(this.store.getData())):this.render.renderError("Search event must return a promise or an array of data")}destroy(){this.openTimeout&&(clearTimeout(this.openTimeout),this.openTimeout=null),this.closeTimeout&&(clearTimeout(this.closeTimeout),this.closeTimeout=null),this.settings.intervalMove&&(clearInterval(this.settings.intervalMove),this.settings.intervalMove=null),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()}}return Object.assign(c,Object.freeze(Object.defineProperty({__proto__:null,Optgroup:n,Option:l,Settings:h,default:c},Symbol.toStringTag,{value:"Module"}))),c},e.exports=t();/*! End SlimSelect */},156(e){"use strict";var t=function(e){var t;return!!e&&"object"==typeof e&&"[object RegExp]"!==(t=Object.prototype.toString.call(e))&&"[object Date]"!==t&&e.$$typeof!==s},s="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function i(e,t){return!1!==t.clone&&t.isMergeableObject(e)?r(Array.isArray(e)?[]:{},e,t):e}function l(e,t,s){return e.concat(t).map(function(e){return i(e,s)})}function n(e){return Object.keys(e).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[])}function a(e,t){try{return t in e}catch(e){return!1}}function r(e,s,o){(o=o||{}).arrayMerge=o.arrayMerge||l,o.isMergeableObject=o.isMergeableObject||t,o.cloneUnlessOtherwiseSpecified=i;var h,c,d=Array.isArray(s);return d!==Array.isArray(e)?i(s,o):d?o.arrayMerge(e,s,o):(c={},(h=o).isMergeableObject(e)&&n(e).forEach(function(t){c[t]=i(e[t],h)}
1),n(s).forEach(function(t){(!a(e,t)||Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))&&(a(e,t)&&h.isMergeableObject(s[t])?c[t]=(function(e,t){if(!t.customMerge)return r;var s=t.customMerge(e);return"function"==typeof s?s:r})(t,h)(e[t],s[t],h):c[t]=i(s[t],h))}),c)}r.all=function(e,t){if(!Array.isArray(e))throw Error("first argument should be an array");return e.reduce(function(e,s){return r(e,s,t)},{})},e.exports=r},646(e,t,s){"use strict";s.r(t),s.d(t,{default:()=>a});var i=s(737),l=s(118),n=s.n(l);class a extends i.A{static #e=this.options={placeholderText:""};init(){new(n())({select:this.el,settings:{showSearch:!1,placeholderText:this.options.placeholderText}})}}},707(e,t,s){"use strict";s.d(t,{A:()=>i});class i{static ucFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}static lcFirst(e){return e.charAt(0).toLowerCase()+e.slice(1)}static toDashCase(e){return e.replace(/([A-Z])/g,"-$1").replace(/^-/,"").toLowerCase()}static toLowerCamelCase(e,t){let s=i.toUpperCamelCase(e,t);return i.lcFirst(s)}static toUpperCamelCase(e,t){return t?e.split(t).map(e=>i.ucFirst(e.toLowerCase())).join(""):i.ucFirst(e.toLowerCase())}static parsePrimitive(e){try{return/^\d+(.|,)\d+$/.test(e)&&(e=e.replace(",",".")),JSON.parse(e)}catch(t){return e.toString()}}}},737(e,t,s){"use strict";s.d(t,{A:()=>r});var i=s(156),l=s.n(i),n=s(707);class a{constructor(e=document){this._el=e,e.$emitter=this,this._listeners=[]}publish(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=new CustomEvent(e,{detail:t,cancelable:s});return this.el.dispatchEvent(i),i}subscribe(e,t){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=this,l=e.split("."),n=s.scope?t.bind(s.scope):t;if(s.once&&!0===s.once){let t=n;n=function(s){i.unsubscribe(e),t(s)}}return this.el.addEventListener(l[0],n),this.listeners.push({splitEventName:l,opts:s,cb:n}),!0}unsubscribe(e){let t=e.split(".");return this.listeners=this.listeners.reduce((e,s)=>([...s.splitEventName].sort().toString()===t.sort().toString()?this.el.removeEventListener(s.splitEventName[0],s.cb):e.push(s),e),[]),!0}reset(){return this.listeners.forEach(e=>{this.el.removeEventListener(e.splitEventName[0],e.cb)}),this.listeners=[],!0}get el(){return this._el}set el(e){this._el=e}get listeners(){return this._listeners}set listeners(e){this._listeners=e}}class r{constructor(e,t={},s=!1){if(!(e instanceof Node)){console.warn(`There is no valid element given while trying to create a plugin instance for "${s}".`);return}this.el=e,this.$emitter=new a(this.el),this._pluginName=this._getPluginName(s),this.options=this._mergeOptions(t),this._initialized=!1,this._registerInstance(),this._init()}init(){console.warn(`The "init" method for the plugin "${this._pluginName}" is not defined. The plugin will not be initialized.`)}update(){}_init(){this._initialized||(this.init(),this._initialized=!0)}_update(){this._initialized&&this.update()}_mergeOptions(e){let t=[this.constructor.options,this.options,e];return t.push(this._getConfigFromDataAttribute()),t.push(this._getOptionsFromDataAttribute()),l().all(t.filter(e=>e instanceof Object&&!(e instanceof Array)).map(e=>e||{}))}_getConfigFromDataAttribute(){let e={};if("function"!=typeof this.el.getAttribute)return e;let t=n.A.toDashCase(this._pluginName),s=this.el.getAttribute(`data-${t}-config`);return s?window.PluginConfigManager.get(this._pluginName,s):e}_getOptionsFromDataAttribute(){let e={};if("function"!=typeof this.el.getAttribute)return e;let t=n.A.toDashCase(this._pluginName),s=this.el.getAttribute(`data-${t}-options`);if(s)try{return JSON.parse(s)}catch(e){console.error(`The data attribute "data-${t}-options" could not be parsed to json: ${e.message}`)}return e}_registerInstance(){window.PluginManager.getPluginInstancesFromElement(this.el).set(this._pluginName,this),window.PluginManager.getPlugin(this._pluginName,!1).get("instances").push(this)}_getPluginName(e){return e||(e=this.constructor.name),e}}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.