UNPKG

@jinntec/jinn-codemirror

Version:

Source code editor component based on codemirror with language support for XML and Leiden+

1 lines 722 kB
"use strict";(()=>{var fS=Object.create;var iu=Object.defineProperty;var uS=Object.getOwnPropertyDescriptor;var dS=Object.getOwnPropertyNames;var pS=Object.getPrototypeOf,OS=Object.prototype.hasOwnProperty;var mS=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports);var gS=(i,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of dS(e))!OS.call(i,r)&&r!==t&&iu(i,r,{get:()=>e[r],enumerable:!(n=uS(e,r))||n.enumerable});return i};var bS=(i,e,t)=>(t=i!=null?fS(pS(i)):{},gS(e||!i||!i.__esModule?iu(t,"default",{value:i,enumerable:!0}):t,i));var Xg=mS((Nc,jc)=>{(function(i,e){typeof Nc=="object"&&typeof jc<"u"?jc.exports=e():typeof define=="function"&&define.amd?define(e):(i=typeof globalThis<"u"?globalThis:i||self,i.TomSelect=e())})(Nc,function(){"use strict";function i(b,u){b.split(/\s+/).forEach(p=>{u(p)})}class e{constructor(){this._events=void 0,this._events={}}on(u,p){i(u,g=>{let y=this._events[g]||[];y.push(p),this._events[g]=y})}off(u,p){var g=arguments.length;if(g===0){this._events={};return}i(u,y=>{if(g===1){delete this._events[y];return}let k=this._events[y];k!==void 0&&(k.splice(k.indexOf(p),1),this._events[y]=k)})}trigger(u,...p){var g=this;i(u,y=>{let k=g._events[y];k!==void 0&&k.forEach(x=>{x.apply(g,p)})})}}function t(b){return b.plugins={},class extends b{constructor(...u){super(...u),this.plugins={names:[],settings:{},requested:{},loaded:{}}}static define(u,p){b.plugins[u]={name:u,fn:p}}initializePlugins(u){var p,g;let y=this,k=[];if(Array.isArray(u))u.forEach(x=>{typeof x=="string"?k.push(x):(y.plugins.settings[x.name]=x.options,k.push(x.name))});else if(u)for(p in u)u.hasOwnProperty(p)&&(y.plugins.settings[p]=u[p],k.push(p));for(;g=k.shift();)y.require(g)}loadPlugin(u){var p=this,g=p.plugins,y=b.plugins[u];if(!b.plugins.hasOwnProperty(u))throw new Error('Unable to find "'+u+'" plugin');g.requested[u]=!0,g.loaded[u]=y.fn.apply(p,[p.plugins.settings[u]||{}]),g.names.push(u)}require(u){var p=this,g=p.plugins;if(!p.plugins.loaded.hasOwnProperty(u)){if(g.requested[u])throw new Error('Plugin has circular dependency ("'+u+'")');p.loadPlugin(u)}return g.loaded[u]}}}let n=b=>(b=b.filter(Boolean),b.length<2?b[0]||"":a(b)==1?"["+b.join("")+"]":"(?:"+b.join("|")+")"),r=b=>{if(!o(b))return b.join("");let u="",p=0,g=()=>{p>1&&(u+="{"+p+"}")};return b.forEach((y,k)=>{if(y===b[k-1]){p++;return}g(),u+=y,p=1}),g(),u},s=b=>{let u=c(b);return n(u)},o=b=>new Set(b).size!==b.length,l=b=>(b+"").replace(/([\$\(\)\*\+\.\?\[\]\^\{\|\}\\])/gu,"\\$1"),a=b=>b.reduce((u,p)=>Math.max(u,h(p)),0),h=b=>c(b).length,c=b=>Array.from(b);let f=b=>{if(b.length===1)return[[b]];let u=[],p=b.substring(1);return f(p).forEach(function(y){let k=y.slice(0);k[0]=b.charAt(0)+k[0],u.push(k),k=y.slice(0),k.unshift(b.charAt(0)),u.push(k)}),u};let d=[[0,65535]],m="[\u0300-\u036F\xB7\u02BE\u02BC]",S,w,v=3,Q={},$={"/":"\u2044\u2215",0:"\u07C0",a:"\u2C65\u0250\u0251",aa:"\uA733",ae:"\xE6\u01FD\u01E3",ao:"\uA735",au:"\uA737",av:"\uA739\uA73B",ay:"\uA73D",b:"\u0180\u0253\u0183",c:"\uA73F\u0188\u023C\u2184",d:"\u0111\u0257\u0256\u1D05\u018C\uABB7\u0501\u0266",e:"\u025B\u01DD\u1D07\u0247",f:"\uA77C\u0192",g:"\u01E5\u0260\uA7A1\u1D79\uA77F\u0262",h:"\u0127\u2C68\u2C76\u0265",i:"\u0268\u0131",j:"\u0249\u0237",k:"\u0199\u2C6A\uA741\uA743\uA745\uA7A3",l:"\u0142\u019A\u026B\u2C61\uA749\uA747\uA781\u026D",m:"\u0271\u026F\u03FB",n:"\uA7A5\u019E\u0272\uA791\u1D0E\u043B\u0509",o:"\xF8\u01FF\u0254\u0275\uA74B\uA74D\u1D11",oe:"\u0153",oi:"\u01A3",oo:"\uA74F",ou:"\u0223",p:"\u01A5\u1D7D\uA751\uA753\uA755\u03C1",q:"\uA757\uA759\u024B",r:"\u024D\u027D\uA75B\uA7A7\uA783",s:"\xDF\u023F\uA7A9\uA785\u0282",t:"\u0167\u01AD\u0288\u2C66\uA787",th:"\xFE",tz:"\uA729",u:"\u0289",v:"\u028B\uA75F\u028C",vy:"\uA761",w:"\u2C73",y:"\u01B4\u024F\u1EFF",z:"\u01B6\u0225\u0240\u2C6C\uA763",hv:"\u0195"};for(let b in $){let u=$[b]||"";for(let p=0;p<u.length;p++){let g=u.substring(p,p+1);Q[g]=b}}let Z=new RegExp(Object.keys(Q).join("|")+"|"+m,"gu"),_=b=>{S===void 0&&(S=se(b||d))},T=(b,u="NFKD")=>b.normalize(u),V=b=>c(b).reduce((u,p)=>u+L(p),""),L=b=>(b=T(b).toLowerCase().replace(Z,u=>Q[u]||""),T(b,"NFC"));function*J(b){for(let[u,p]of b)for(let g=u;g<=p;g++){let y=String.fromCharCode(g),k=V(y);k!=y.toLowerCase()&&(k.length>v||k.length!=0&&(yield{folded:k,composed:y,code_point:g}))}}let te=b=>{let u={},p=(g,y)=>{let k=u[g]||new Set,x=new RegExp("^"+s(k)+"$","iu");y.match(x)||(k.add(l(y)),u[g]=k)};for(let g of J(b))p(g.folded,g.folded),p(g.folded,g.composed);return u},se=b=>{let u=te(b),p={},g=[];for(let k in u){let x=u[k];x&&(p[k]=s(x)),k.length>1&&g.push(l(k))}g.sort((k,x)=>x.length-k.length);let y=n(g);return w=new RegExp("^"+y,"u"),p},ee=(b,u=1)=>{let p=0;return b=b.map(g=>(S[g]&&(p+=g.length),S[g]||g)),p>=u?r(b):""},K=(b,u=1)=>(u=Math.max(u,b.length-1),n(f(b).map(p=>ee(p,u)))),ce=(b,u=!0)=>{let p=b.length>1?1:0;return n(b.map(g=>{let y=[],k=u?g.length():g.length()-1;for(let x=0;x<k;x++)y.push(K(g.substrs[x]||"",p));return r(y)}))},ae=(b,u)=>{for(let p of u){if(p.start!=b.start||p.end!=b.end||p.substrs.join("")!==b.substrs.join(""))continue;let g=b.parts,y=x=>{for(let P of g){if(P.start===x.start&&P.substr===x.substr)return!1;if(!(x.length==1||P.length==1)&&(x.start<P.start&&x.end>P.start||P.start<x.start&&P.end>x.start))return!0}return!1};if(!(p.parts.filter(y).length>0))return!0}return!1};class j{constructor(){this.parts=[],this.substrs=[],this.start=0,this.end=0}add(u){u&&(this.parts.push(u),this.substrs.push(u.substr),this.start=Math.min(u.start,this.start),this.end=Math.max(u.end,this.end))}last(){return this.parts[this.parts.length-1]}length(){return this.parts.length}clone(u,p){let g=new j,y=JSON.parse(JSON.stringify(this.parts)),k=y.pop();for(let X of y)g.add(X);let x=p.substr.substring(0,u-k.start),P=x.length;return g.add({start:k.start,end:k.start+P,length:P,substr:x}),g}}let ne=b=>{_(),b=V(b);let u="",p=[new j];for(let g=0;g<b.length;g++){let k=b.substring(g).match(w),x=b.substring(g,g+1),P=k?k[0]:null,X=[],A=new Set;for(let I of p){let M=I.last();if(!M||M.length==1||M.end<=g)if(P){let U=P.length;I.add({start:g,end:g+U,length:U,substr:P}),A.add("1")}else I.add({start:g,end:g+1,length:1,substr:x}),A.add("2");else if(P){let U=I.clone(g,M),Qe=P.length;U.add({start:g,end:g+Qe,length:Qe,substr:P}),X.push(U)}else A.add("3")}if(X.length>0){X=X.sort((I,M)=>I.length()-M.length());for(let I of X)ae(I,p)||p.push(I);continue}if(g>0&&A.size==1&&!A.has("3")){u+=ce(p,!1);let I=new j,M=p[0];M&&I.add(M.last()),p=[I]}}return u+=ce(p,!0),u};let Xe=(b,u)=>{if(b)return b[u]},et=(b,u)=>{if(b){for(var p,g=u.split(".");(p=g.shift())&&(b=b[p]););return b}},je=(b,u,p)=>{var g,y;return!b||(b=b+"",u.regex==null)||(y=b.search(u.regex),y===-1)?0:(g=u.string.length/b.length,y===0&&(g+=.5),g*p)},Re=(b,u)=>{var p=b[u];if(typeof p=="function")return p;p&&!Array.isArray(p)&&(b[u]=[p])},ue=(b,u)=>{if(Array.isArray(b))b.forEach(u);else for(var p in b)b.hasOwnProperty(p)&&u(b[p],p)},Ye=(b,u)=>typeof b=="number"&&typeof u=="number"?b>u?1:b<u?-1:0:(b=V(b+"").toLowerCase(),u=V(u+"").toLowerCase(),b>u?1:u>b?-1:0);class tt{constructor(u,p){this.items=void 0,this.settings=void 0,this.items=u,this.settings=p||{diacritics:!0}}tokenize(u,p,g){if(!u||!u.length)return[];let y=[],k=u.split(/\s+/);var x;return g&&(x=new RegExp("^("+Object.keys(g).map(l).join("|")+"):(.*)$")),k.forEach(P=>{let X,A=null,I=null;x&&(X=P.match(x))&&(A=X[1],P=X[2]),P.length>0&&(this.settings.diacritics?I=ne(P)||null:I=l(P),I&&p&&(I="\\b"+I)),y.push({string:P,regex:I?new RegExp(I,"iu"):null,field:A})}),y}getScoreFunction(u,p){var g=this.prepareSearch(u,p);return this._getScoreFunction(g)}_getScoreFunction(u){let p=u.tokens,g=p.length;if(!g)return function(){return 0};let y=u.options.fields,k=u.weights,x=y.length,P=u.getAttrFn;if(!x)return function(){return 1};let X=function(){return x===1?function(A,I){let M=y[0].field;return je(P(I,M),A,k[M]||1)}:function(A,I){var M=0;if(A.field){let U=P(I,A.field);!A.regex&&U?M+=1/x:M+=je(U,A,1)}else ue(k,(U,Qe)=>{M+=je(P(I,Qe),A,U)});return M/x}}();return g===1?function(A){return X(p[0],A)}:u.options.conjunction==="and"?function(A){var I,M=0;for(let U of p){if(I=X(U,A),I<=0)return 0;M+=I}return M/g}:function(A){var I=0;return ue(p,M=>{I+=X(M,A)}),I/g}}getSortFunction(u,p){var g=this.prepareSearch(u,p);return this._getSortFunction(g)}_getSortFunction(u){var p,g=[];let y=this,k=u.options,x=!u.query&&k.sort_empty?k.sort_empty:k.sort;if(typeof x=="function")return x.bind(this);let P=function(I,M){return I==="$score"?M.score:u.getAttrFn(y.items[M.id],I)};if(x)for(let A of x)(u.query||A.field!=="$score")&&g.push(A);if(u.query){p=!0;for(let A of g)if(A.field==="$score"){p=!1;break}p&&g.unshift({field:"$score",direction:"desc"})}else g=g.filter(A=>A.field!=="$score");return g.length?function(A,I){var M,U;for(let Qe of g)if(U=Qe.field,M=(Qe.direction==="desc"?-1:1)*Ye(P(U,A),P(U,I)),M)return M;return 0}:null}prepareSearch(u,p){let g={};var y=Object.assign({},p);if(Re(y,"sort"),Re(y,"sort_empty"),y.fields){Re(y,"fields");let k=[];y.fields.forEach(x=>{typeof x=="string"&&(x={field:x,weight:1}),k.push(x),g[x.field]="weight"in x?x.weight:1}),y.fields=k}return{options:y,query:u.toLowerCase().trim(),tokens:this.tokenize(u,y.respect_word_boundaries,g),total:0,items:[],weights:g,getAttrFn:y.nesting?et:Xe}}search(u,p){var g=this,y,k;k=this.prepareSearch(u,p),p=k.options,u=k.query;let x=p.score||g._getScoreFunction(k);u.length?ue(g.items,(X,A)=>{y=x(X),(p.filter===!1||y>0)&&k.items.push({score:y,id:A})}):ue(g.items,(X,A)=>{k.items.push({score:1,id:A})});let P=g._getSortFunction(k);return P&&k.items.sort(P),k.total=k.items.length,typeof p.limit=="number"&&(k.items=k.items.slice(0,p.limit)),k}}let kt=(b,u)=>{if(Array.isArray(b))b.forEach(u);else for(var p in b)b.hasOwnProperty(p)&&u(b[p],p)},Ve=b=>{if(b.jquery)return b[0];if(b instanceof HTMLElement)return b;if(sr(b)){var u=document.createElement("template");return u.innerHTML=b.trim(),u.content.firstChild}return document.querySelector(b)},sr=b=>typeof b=="string"&&b.indexOf("<")>-1,Eb=b=>b.replace(/['"\\]/g,"\\$&"),Vl=(b,u)=>{var p=document.createEvent("HTMLEvents");p.initEvent(u,!0,!1),b.dispatchEvent(p)},hs=(b,u)=>{Object.assign(b.style,u)},ot=(b,...u)=>{var p=Uf(u);b=qf(b),b.map(g=>{p.map(y=>{g.classList.add(y)})})},pi=(b,...u)=>{var p=Uf(u);b=qf(b),b.map(g=>{p.map(y=>{g.classList.remove(y)})})},Uf=b=>{var u=[];return kt(b,p=>{typeof p=="string"&&(p=p.trim().split(/[\11\12\14\15\40]/)),Array.isArray(p)&&(u=u.concat(p))}),u.filter(Boolean)},qf=b=>(Array.isArray(b)||(b=[b]),b),cs=(b,u,p)=>{if(!(p&&!p.contains(b)))for(;b&&b.matches;){if(b.matches(u))return b;b=b.parentNode}},Nf=(b,u=0)=>u>0?b[b.length-1]:b[0],Rb=b=>Object.keys(b).length===0,fs=(b,u)=>{if(!b)return-1;u=u||b.nodeName;for(var p=0;b=b.previousElementSibling;)b.matches(u)&&p++;return p},Ze=(b,u)=>{kt(u,(p,g)=>{p==null?b.removeAttribute(g):b.setAttribute(g,""+p)})},Ml=(b,u)=>{b.parentNode&&b.parentNode.replaceChild(u,b)},Vb=(b,u)=>{if(u===null)return;if(typeof u=="string"){if(!u.length)return;u=new RegExp(u,"i")}let p=k=>{var x=k.data.match(u);if(x&&k.data.length>0){var P=document.createElement("span");P.className="highlight";var X=k.splitText(x.index);X.splitText(x[0].length);var A=X.cloneNode(!0);return P.appendChild(A),Ml(X,P),1}return 0},g=k=>{k.nodeType===1&&k.childNodes&&!/(script|style)/i.test(k.tagName)&&(k.className!=="highlight"||k.tagName!=="SPAN")&&Array.from(k.childNodes).forEach(x=>{y(x)})},y=k=>k.nodeType===3?p(k):(g(k),0);y(b)},Mb=b=>{var u=b.querySelectorAll("span.highlight");Array.prototype.forEach.call(u,function(p){var g=p.parentNode;g.replaceChild(p.firstChild,p),g.normalize()})},Lb=65,Db=13,jf=27,Ll=37,Ib=38,Ff=39,Yb=40,Gf=8,Wb=46,Dl=9,us=(typeof navigator>"u"?!1:/Mac/.test(navigator.userAgent))?"metaKey":"ctrlKey";var Hf={options:[],optgroups:[],plugins:[],delimiter:",",splitOn:null,persist:!0,diacritics:!0,create:null,createOnBlur:!1,createFilter:null,highlight:!0,openOnFocus:!0,shouldOpen:null,maxOptions:50,maxItems:null,hideSelected:null,duplicates:!1,addPrecedence:!1,selectOnTab:!1,preload:null,allowEmptyOption:!1,refreshThrottle:300,loadThrottle:300,loadingClass:"loading",dataAttr:null,optgroupField:"optgroup",valueField:"value",labelField:"text",disabledField:"disabled",optgroupLabelField:"label",optgroupValueField:"value",lockOptgroupOrder:!1,sortField:"$order",searchField:["text"],searchConjunction:"and",mode:null,wrapperClass:"ts-wrapper",controlClass:"ts-control",dropdownClass:"ts-dropdown",dropdownContentClass:"ts-dropdown-content",itemClass:"item",optionClass:"option",dropdownParent:null,controlInput:'<input type="text" autocomplete="off" size="1" />',copyClassesToDropdown:!1,placeholder:null,hidePlaceholder:null,shouldLoad:function(b){return b.length>0},render:{}};let Rt=b=>typeof b>"u"||b===null?null:ds(b),ds=b=>typeof b=="boolean"?b?"1":"0":b+"",ps=b=>(b+"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),Bb=(b,u)=>u>0?setTimeout(b,u):(b.call(null),null),zb=(b,u)=>{var p;return function(g,y){var k=this;p&&(k.loading=Math.max(k.loading-1,0),clearTimeout(p)),p=setTimeout(function(){p=null,k.loadedSearches[g]=!0,b.call(k,g,y)},u)}},Jf=(b,u,p)=>{var g,y=b.trigger,k={};b.trigger=function(){var x=arguments[0];if(u.indexOf(x)!==-1)k[x]=arguments;else return y.apply(b,arguments)},p.apply(b,[]),b.trigger=y;for(g of u)g in k&&y.apply(b,k[g])},Ub=b=>({start:b.selectionStart||0,length:(b.selectionEnd||0)-(b.selectionStart||0)}),be=(b,u=!1)=>{b&&(b.preventDefault(),u&&b.stopPropagation())},Se=(b,u,p,g)=>{b.addEventListener(u,p,g)},Gi=(b,u)=>{if(!u||!u[b])return!1;var p=(u.altKey?1:0)+(u.ctrlKey?1:0)+(u.shiftKey?1:0)+(u.metaKey?1:0);return p===1},Il=(b,u)=>{let p=b.getAttribute("id");return p||(b.setAttribute("id",u),u)},Kf=b=>b.replace(/[\\"']/g,"\\$&"),Hi=(b,u)=>{u&&b.append(u)};function eu(b,u){var p=Object.assign({},Hf,u),g=p.dataAttr,y=p.labelField,k=p.valueField,x=p.disabledField,P=p.optgroupField,X=p.optgroupLabelField,A=p.optgroupValueField,I=b.tagName.toLowerCase(),M=b.getAttribute("placeholder")||b.getAttribute("data-placeholder");if(!M&&!p.allowEmptyOption){let he=b.querySelector('option[value=""]');he&&(M=he.textContent)}var U={placeholder:M,options:[],optgroups:[],items:[],maxItems:null},Qe=()=>{var he,_e=U.options,ye={},G=1;let Me=0;var ii=oe=>{var Oe=Object.assign({},oe.dataset),re=g&&Oe[g];return typeof re=="string"&&re.length&&(Oe=Object.assign(Oe,JSON.parse(re))),Oe},Os=(oe,Oe)=>{var re=Rt(oe.value);if(re!=null&&!(!re&&!p.allowEmptyOption)){if(ye.hasOwnProperty(re)){if(Oe){var it=ye[re][P];it?Array.isArray(it)?it.push(Oe):ye[re][P]=[it,Oe]:ye[re][P]=Oe}}else{var we=ii(oe);we[y]=we[y]||oe.textContent,we[k]=we[k]||re,we[x]=we[x]||oe.disabled,we[P]=we[P]||Oe,we.$option=oe,we.$order=we.$order||++Me,ye[re]=we,_e.push(we)}oe.selected&&U.items.push(re)}},vn=oe=>{var Oe,re;re=ii(oe),re[X]=re[X]||oe.getAttribute("label")||"",re[A]=re[A]||G++,re[x]=re[x]||oe.disabled,re.$order=re.$order||++Me,U.optgroups.push(re),Oe=re[A],kt(oe.children,it=>{Os(it,Oe)})};U.maxItems=b.hasAttribute("multiple")?null:1,kt(b.children,oe=>{he=oe.tagName.toLowerCase(),he==="optgroup"?vn(oe):he==="option"&&Os(oe)})},z=()=>{let he=b.getAttribute(g);if(he)U.options=JSON.parse(he),kt(U.options,ye=>{U.items.push(ye[k])});else{var _e=b.value.trim()||"";if(!p.allowEmptyOption&&!_e.length)return;let ye=_e.split(p.delimiter);kt(ye,G=>{let Me={};Me[y]=G,Me[k]=G,U.options.push(Me)}),U.items=ye}};return I==="select"?Qe():z(),Object.assign({},Hf,U,u)}var tu=0;class lt extends t(e){constructor(u,p){super(),this.control_input=void 0,this.wrapper=void 0,this.dropdown=void 0,this.control=void 0,this.dropdown_content=void 0,this.focus_node=void 0,this.order=0,this.settings=void 0,this.input=void 0,this.tabIndex=void 0,this.is_select_tag=void 0,this.rtl=void 0,this.inputId=void 0,this._destroy=void 0,this.sifter=void 0,this.isOpen=!1,this.isDisabled=!1,this.isReadOnly=!1,this.isRequired=void 0,this.isInvalid=!1,this.isValid=!0,this.isLocked=!1,this.isFocused=!1,this.isInputHidden=!1,this.isSetup=!1,this.ignoreFocus=!1,this.ignoreHover=!1,this.hasOptions=!1,this.currentResults=void 0,this.lastValue="",this.caretPos=0,this.loading=0,this.loadedSearches={},this.activeOption=null,this.activeItems=[],this.optgroups={},this.options={},this.userOptions={},this.items=[],this.refreshTimeout=null,tu++;var g,y=Ve(u);if(y.tomselect)throw new Error("Tom Select already initialized on this element");y.tomselect=this;var k=window.getComputedStyle&&window.getComputedStyle(y,null);g=k.getPropertyValue("direction");let x=eu(y,p);this.settings=x,this.input=y,this.tabIndex=y.tabIndex||0,this.is_select_tag=y.tagName.toLowerCase()==="select",this.rtl=/rtl/i.test(g),this.inputId=Il(y,"tomselect-"+tu),this.isRequired=y.required,this.sifter=new tt(this.options,{diacritics:x.diacritics}),x.mode=x.mode||(x.maxItems===1?"single":"multi"),typeof x.hideSelected!="boolean"&&(x.hideSelected=x.mode==="multi"),typeof x.hidePlaceholder!="boolean"&&(x.hidePlaceholder=x.mode!=="multi");var P=x.createFilter;typeof P!="function"&&(typeof P=="string"&&(P=new RegExp(P)),P instanceof RegExp?x.createFilter=_e=>P.test(_e):x.createFilter=_e=>this.settings.duplicates||!this.options[_e]),this.initializePlugins(x.plugins),this.setupCallbacks(),this.setupTemplates();let X=Ve("<div>"),A=Ve("<div>"),I=this._render("dropdown"),M=Ve('<div role="listbox" tabindex="-1">'),U=this.input.getAttribute("class")||"",Qe=x.mode;var z;if(ot(X,x.wrapperClass,U,Qe),ot(A,x.controlClass),Hi(X,A),ot(I,x.dropdownClass,Qe),x.copyClassesToDropdown&&ot(I,U),ot(M,x.dropdownContentClass),Hi(I,M),Ve(x.dropdownParent||X).appendChild(I),sr(x.controlInput)){z=Ve(x.controlInput);var he=["autocorrect","autocapitalize","autocomplete","spellcheck"];ue(he,_e=>{y.getAttribute(_e)&&Ze(z,{[_e]:y.getAttribute(_e)})}),z.tabIndex=-1,A.appendChild(z),this.focus_node=z}else x.controlInput?(z=Ve(x.controlInput),this.focus_node=z):(z=Ve("<input/>"),this.focus_node=A);this.wrapper=X,this.dropdown=I,this.dropdown_content=M,this.control=A,this.control_input=z,this.setup()}setup(){let u=this,p=u.settings,g=u.control_input,y=u.dropdown,k=u.dropdown_content,x=u.wrapper,P=u.control,X=u.input,A=u.focus_node,I={passive:!0},M=u.inputId+"-ts-dropdown";Ze(k,{id:M}),Ze(A,{role:"combobox","aria-haspopup":"listbox","aria-expanded":"false","aria-controls":M});let U=Il(A,u.inputId+"-ts-control"),Qe="label[for='"+Eb(u.inputId)+"']",z=document.querySelector(Qe),he=u.focus.bind(u);if(z){Se(z,"click",he),Ze(z,{for:U});let G=Il(z,u.inputId+"-ts-label");Ze(A,{"aria-labelledby":G}),Ze(k,{"aria-labelledby":G})}if(x.style.width=X.style.width,u.plugins.names.length){let G="plugin-"+u.plugins.names.join(" plugin-");ot([x,y],G)}(p.maxItems===null||p.maxItems>1)&&u.is_select_tag&&Ze(X,{multiple:"multiple"}),p.placeholder&&Ze(g,{placeholder:p.placeholder}),!p.splitOn&&p.delimiter&&(p.splitOn=new RegExp("\\s*"+l(p.delimiter)+"+\\s*")),p.load&&p.loadThrottle&&(p.load=zb(p.load,p.loadThrottle)),Se(y,"mousemove",()=>{u.ignoreHover=!1}),Se(y,"mouseenter",G=>{var Me=cs(G.target,"[data-selectable]",y);Me&&u.onOptionHover(G,Me)},{capture:!0}),Se(y,"click",G=>{let Me=cs(G.target,"[data-selectable]");Me&&(u.onOptionSelect(G,Me),be(G,!0))}),Se(P,"click",G=>{var Me=cs(G.target,"[data-ts-item]",P);if(Me&&u.onItemSelect(G,Me)){be(G,!0);return}g.value==""&&(u.onClick(),be(G,!0))}),Se(A,"keydown",G=>u.onKeyDown(G)),Se(g,"keypress",G=>u.onKeyPress(G)),Se(g,"input",G=>u.onInput(G)),Se(A,"blur",G=>u.onBlur(G)),Se(A,"focus",G=>u.onFocus(G)),Se(g,"paste",G=>u.onPaste(G));let _e=G=>{let Me=G.composedPath()[0];if(!x.contains(Me)&&!y.contains(Me)){u.isFocused&&u.blur(),u.inputState();return}Me==g&&u.isOpen?G.stopPropagation():be(G,!0)},ye=()=>{u.isOpen&&u.positionDropdown()};Se(document,"mousedown",_e),Se(window,"scroll",ye,I),Se(window,"resize",ye,I),this._destroy=()=>{document.removeEventListener("mousedown",_e),window.removeEventListener("scroll",ye),window.removeEventListener("resize",ye),z&&z.removeEventListener("click",he)},this.revertSettings={innerHTML:X.innerHTML,tabIndex:X.tabIndex},X.tabIndex=-1,X.insertAdjacentElement("afterend",u.wrapper),u.sync(!1),p.items=[],delete p.optgroups,delete p.options,Se(X,"invalid",()=>{u.isValid&&(u.isValid=!1,u.isInvalid=!0,u.refreshState())}),u.updateOriginalInput(),u.refreshItems(),u.close(!1),u.inputState(),u.isSetup=!0,X.disabled?u.disable():X.readOnly?u.setReadOnly(!0):u.enable(),u.on("change",this.onChange),ot(X,"tomselected","ts-hidden-accessible"),u.trigger("initialize"),p.preload===!0&&u.preload()}setupOptions(u=[],p=[]){this.addOptions(u),ue(p,g=>{this.registerOptionGroup(g)})}setupTemplates(){var u=this,p=u.settings.labelField,g=u.settings.optgroupLabelField,y={optgroup:k=>{let x=document.createElement("div");return x.className="optgroup",x.appendChild(k.options),x},optgroup_header:(k,x)=>'<div class="optgroup-header">'+x(k[g])+"</div>",option:(k,x)=>"<div>"+x(k[p])+"</div>",item:(k,x)=>"<div>"+x(k[p])+"</div>",option_create:(k,x)=>'<div class="create">Add <strong>'+x(k.input)+"</strong>&hellip;</div>",no_results:()=>'<div class="no-results">No results found</div>',loading:()=>'<div class="spinner"></div>',not_loading:()=>{},dropdown:()=>"<div></div>"};u.settings.render=Object.assign({},y,u.settings.render)}setupCallbacks(){var u,p,g={initialize:"onInitialize",change:"onChange",item_add:"onItemAdd",item_remove:"onItemRemove",item_select:"onItemSelect",clear:"onClear",option_add:"onOptionAdd",option_remove:"onOptionRemove",option_clear:"onOptionClear",optgroup_add:"onOptionGroupAdd",optgroup_remove:"onOptionGroupRemove",optgroup_clear:"onOptionGroupClear",dropdown_open:"onDropdownOpen",dropdown_close:"onDropdownClose",type:"onType",load:"onLoad",focus:"onFocus",blur:"onBlur"};for(u in g)p=this.settings[g[u]],p&&this.on(u,p)}sync(u=!0){let p=this,g=u?eu(p.input,{delimiter:p.settings.delimiter}):p.settings;p.setupOptions(g.options,g.optgroups),p.setValue(g.items||[],!0),p.lastQuery=null}onClick(){var u=this;if(u.activeItems.length>0){u.clearActiveItems(),u.focus();return}u.isFocused&&u.isOpen?u.blur():u.focus()}onMouseDown(){}onChange(){Vl(this.input,"input"),Vl(this.input,"change")}onPaste(u){var p=this;if(p.isInputHidden||p.isLocked){be(u);return}p.settings.splitOn&&setTimeout(()=>{var g=p.inputValue();if(g.match(p.settings.splitOn)){var y=g.trim().split(p.settings.splitOn);ue(y,k=>{Rt(k)&&(this.options[k]?p.addItem(k):p.createItem(k))})}},0)}onKeyPress(u){var p=this;if(p.isLocked){be(u);return}var g=String.fromCharCode(u.keyCode||u.which);if(p.settings.create&&p.settings.mode==="multi"&&g===p.settings.delimiter){p.createItem(),be(u);return}}onKeyDown(u){var p=this;if(p.ignoreHover=!0,p.isLocked){u.keyCode!==Dl&&be(u);return}switch(u.keyCode){case Lb:if(Gi(us,u)&&p.control_input.value==""){be(u),p.selectAll();return}break;case jf:p.isOpen&&(be(u,!0),p.close()),p.clearActiveItems();return;case Yb:if(!p.isOpen&&p.hasOptions)p.open();else if(p.activeOption){let g=p.getAdjacent(p.activeOption,1);g&&p.setActiveOption(g)}be(u);return;case Ib:if(p.activeOption){let g=p.getAdjacent(p.activeOption,-1);g&&p.setActiveOption(g)}be(u);return;case Db:p.canSelect(p.activeOption)?(p.onOptionSelect(u,p.activeOption),be(u)):(p.settings.create&&p.createItem()||document.activeElement==p.control_input&&p.isOpen)&&be(u);return;case Ll:p.advanceSelection(-1,u);return;case Ff:p.advanceSelection(1,u);return;case Dl:p.settings.selectOnTab&&(p.canSelect(p.activeOption)&&(p.onOptionSelect(u,p.activeOption),be(u)),p.settings.create&&p.createItem()&&be(u));return;case Gf:case Wb:p.deleteSelection(u);return}p.isInputHidden&&!Gi(us,u)&&be(u)}onInput(u){if(this.isLocked)return;let p=this.inputValue();if(this.lastValue!==p){if(this.lastValue=p,p==""){this._onInput();return}this.refreshTimeout&&clearTimeout(this.refreshTimeout),this.refreshTimeout=Bb(()=>{this.refreshTimeout=null,this._onInput()},this.settings.refreshThrottle)}}_onInput(){let u=this.lastValue;this.settings.shouldLoad.call(this,u)&&this.load(u),this.refreshOptions(),this.trigger("type",u)}onOptionHover(u,p){this.ignoreHover||this.setActiveOption(p,!1)}onFocus(u){var p=this,g=p.isFocused;if(p.isDisabled||p.isReadOnly){p.blur(),be(u);return}p.ignoreFocus||(p.isFocused=!0,p.settings.preload==="focus"&&p.preload(),g||p.trigger("focus"),p.activeItems.length||(p.inputState(),p.refreshOptions(!!p.settings.openOnFocus)),p.refreshState())}onBlur(u){if(document.hasFocus()!==!1){var p=this;if(p.isFocused){p.isFocused=!1,p.ignoreFocus=!1;var g=()=>{p.close(),p.setActiveItem(),p.setCaret(p.items.length),p.trigger("blur")};p.settings.create&&p.settings.createOnBlur?p.createItem(null,g):g()}}}onOptionSelect(u,p){var g,y=this;p.parentElement&&p.parentElement.matches("[data-disabled]")||(p.classList.contains("create")?y.createItem(null,()=>{y.settings.closeAfterSelect&&y.close()}):(g=p.dataset.value,typeof g<"u"&&(y.lastQuery=null,y.addItem(g),y.settings.closeAfterSelect&&y.close(),!y.settings.hideSelected&&u.type&&/click/.test(u.type)&&y.setActiveOption(p))))}canSelect(u){return!!(this.isOpen&&u&&this.dropdown_content.contains(u))}onItemSelect(u,p){var g=this;return!g.isLocked&&g.settings.mode==="multi"?(be(u),g.setActiveItem(p,u),!0):!1}canLoad(u){return!(!this.settings.load||this.loadedSearches.hasOwnProperty(u))}load(u){let p=this;if(!p.canLoad(u))return;ot(p.wrapper,p.settings.loadingClass),p.loading++;let g=p.loadCallback.bind(p);p.settings.load.call(p,u,g)}loadCallback(u,p){let g=this;g.loading=Math.max(g.loading-1,0),g.lastQuery=null,g.clearActiveOption(),g.setupOptions(u,p),g.refreshOptions(g.isFocused&&!g.isInputHidden),g.loading||pi(g.wrapper,g.settings.loadingClass),g.trigger("load",u,p)}preload(){var u=this.wrapper.classList;u.contains("preloaded")||(u.add("preloaded"),this.load(""))}setTextboxValue(u=""){var p=this.control_input,g=p.value!==u;g&&(p.value=u,Vl(p,"update"),this.lastValue=u)}getValue(){return this.is_select_tag&&this.input.hasAttribute("multiple")?this.items:this.items.join(this.settings.delimiter)}setValue(u,p){var g=p?[]:["change"];Jf(this,g,()=>{this.clear(p),this.addItems(u,p)})}setMaxItems(u){u===0&&(u=null),this.settings.maxItems=u,this.refreshState()}setActiveItem(u,p){var g=this,y,k,x,P,X,A;if(g.settings.mode!=="single"){if(!u){g.clearActiveItems(),g.isFocused&&g.inputState();return}if(y=p&&p.type.toLowerCase(),y==="click"&&Gi("shiftKey",p)&&g.activeItems.length){for(A=g.getLastActive(),x=Array.prototype.indexOf.call(g.control.children,A),P=Array.prototype.indexOf.call(g.control.children,u),x>P&&(X=x,x=P,P=X),k=x;k<=P;k++)u=g.control.children[k],g.activeItems.indexOf(u)===-1&&g.setActiveItemClass(u);be(p)}else y==="click"&&Gi(us,p)||y==="keydown"&&Gi("shiftKey",p)?u.classList.contains("active")?g.removeActiveItem(u):g.setActiveItemClass(u):(g.clearActiveItems(),g.setActiveItemClass(u));g.inputState(),g.isFocused||g.focus()}}setActiveItemClass(u){let p=this,g=p.control.querySelector(".last-active");g&&pi(g,"last-active"),ot(u,"active last-active"),p.trigger("item_select",u),p.activeItems.indexOf(u)==-1&&p.activeItems.push(u)}removeActiveItem(u){var p=this.activeItems.indexOf(u);this.activeItems.splice(p,1),pi(u,"active")}clearActiveItems(){pi(this.activeItems,"active"),this.activeItems=[]}setActiveOption(u,p=!0){u!==this.activeOption&&(this.clearActiveOption(),u&&(this.activeOption=u,Ze(this.focus_node,{"aria-activedescendant":u.getAttribute("id")}),Ze(u,{"aria-selected":"true"}),ot(u,"active"),p&&this.scrollToOption(u)))}scrollToOption(u,p){if(!u)return;let g=this.dropdown_content,y=g.clientHeight,k=g.scrollTop||0,x=u.offsetHeight,P=u.getBoundingClientRect().top-g.getBoundingClientRect().top+k;P+x>y+k?this.scroll(P-y+x,p):P<k&&this.scroll(P,p)}scroll(u,p){let g=this.dropdown_content;p&&(g.style.scrollBehavior=p),g.scrollTop=u,g.style.scrollBehavior=""}clearActiveOption(){this.activeOption&&(pi(this.activeOption,"active"),Ze(this.activeOption,{"aria-selected":null})),this.activeOption=null,Ze(this.focus_node,{"aria-activedescendant":null})}selectAll(){let u=this;if(u.settings.mode==="single")return;let p=u.controlChildren();p.length&&(u.inputState(),u.close(),u.activeItems=p,ue(p,g=>{u.setActiveItemClass(g)}))}inputState(){var u=this;u.control.contains(u.control_input)&&(Ze(u.control_input,{placeholder:u.settings.placeholder}),u.activeItems.length>0||!u.isFocused&&u.settings.hidePlaceholder&&u.items.length>0?(u.setTextboxValue(),u.isInputHidden=!0):(u.settings.hidePlaceholder&&u.items.length>0&&Ze(u.control_input,{placeholder:""}),u.isInputHidden=!1),u.wrapper.classList.toggle("input-hidden",u.isInputHidden))}inputValue(){return this.control_input.value.trim()}focus(){var u=this;u.isDisabled||u.isReadOnly||(u.ignoreFocus=!0,u.control_input.offsetWidth?u.control_input.focus():u.focus_node.focus(),setTimeout(()=>{u.ignoreFocus=!1,u.onFocus()},0))}blur(){this.focus_node.blur(),this.onBlur()}getScoreFunction(u){return this.sifter.getScoreFunction(u,this.getSearchOptions())}getSearchOptions(){var u=this.settings,p=u.sortField;return typeof u.sortField=="string"&&(p=[{field:u.sortField}]),{fields:u.searchField,conjunction:u.searchConjunction,sort:p,nesting:u.nesting}}search(u){var p,g,y=this,k=this.getSearchOptions();if(y.settings.score&&(g=y.settings.score.call(y,u),typeof g!="function"))throw new Error('Tom Select "score" setting must be a function that returns a function');return u!==y.lastQuery?(y.lastQuery=u,p=y.sifter.search(u,Object.assign(k,{score:g})),y.currentResults=p):p=Object.assign({},y.currentResults),y.settings.hideSelected&&(p.items=p.items.filter(x=>{let P=Rt(x.id);return!(P&&y.items.indexOf(P)!==-1)})),p}refreshOptions(u=!0){var p,g,y,k,x,P,X,A,I,M;let U={},Qe=[];var z=this,he=z.inputValue();let _e=he===z.lastQuery||he==""&&z.lastQuery==null;var ye=z.search(he),G=null,Me=z.settings.shouldOpen||!1,ii=z.dropdown_content;_e&&(G=z.activeOption,G&&(I=G.closest("[data-group]"))),k=ye.items.length,typeof z.settings.maxOptions=="number"&&(k=Math.min(k,z.settings.maxOptions)),k>0&&(Me=!0);let Os=(oe,Oe)=>{let re=U[oe];if(re!==void 0){let we=Qe[re];if(we!==void 0)return[re,we.fragment]}let it=document.createDocumentFragment();return re=Qe.length,Qe.push({fragment:it,order:Oe,optgroup:oe}),[re,it]};for(p=0;p<k;p++){let oe=ye.items[p];if(!oe)continue;let Oe=oe.id,re=z.options[Oe];if(re===void 0)continue;let it=ds(Oe),we=z.getOption(it,!0);for(z.settings.hideSelected||we.classList.toggle("selected",z.items.includes(it)),x=re[z.settings.optgroupField]||"",P=Array.isArray(x)?x:[x],g=0,y=P&&P.length;g<y;g++){x=P[g];let ms=re.$order,gs=z.optgroups[x];gs===void 0?x="":ms=gs.$order;let[hS,cS]=Os(x,ms);g>0&&(we=we.cloneNode(!0),Ze(we,{id:re.$id+"-clone-"+g,"aria-selected":null}),we.classList.add("ts-cloned"),pi(we,"active"),z.activeOption&&z.activeOption.dataset.value==Oe&&I&&I.dataset.group===x.toString()&&(G=we)),cS.appendChild(we),x!=""&&(U[x]=hS)}}z.settings.lockOptgroupOrder&&Qe.sort((oe,Oe)=>oe.order-Oe.order),X=document.createDocumentFragment(),ue(Qe,oe=>{let Oe=oe.fragment,re=oe.optgroup;if(!Oe||!Oe.children.length)return;let it=z.optgroups[re];if(it!==void 0){let we=document.createDocumentFragment(),ms=z.render("optgroup_header",it);Hi(we,ms),Hi(we,Oe);let gs=z.render("optgroup",{group:it,options:we});Hi(X,gs)}else Hi(X,Oe)}),ii.innerHTML="",Hi(ii,X),z.settings.highlight&&(Mb(ii),ye.query.length&&ye.tokens.length&&ue(ye.tokens,oe=>{Vb(ii,oe.regex)}));var vn=oe=>{let Oe=z.render(oe,{input:he});return Oe&&(Me=!0,ii.insertBefore(Oe,ii.firstChild)),Oe};if(z.loading?vn("loading"):z.settings.shouldLoad.call(z,he)?ye.items.length===0&&vn("no_results"):vn("not_loading"),A=z.canCreate(he),A&&(M=vn("option_create")),z.hasOptions=ye.items.length>0||A,Me){if(ye.items.length>0){if(!G&&z.settings.mode==="single"&&z.items[0]!=null&&(G=z.getOption(z.items[0])),!ii.contains(G)){let oe=0;M&&!z.settings.addPrecedence&&(oe=1),G=z.selectable()[oe]}}else M&&(G=M);u&&!z.isOpen&&(z.open(),z.scrollToOption(G,"auto")),z.setActiveOption(G)}else z.clearActiveOption(),u&&z.isOpen&&z.close(!1)}selectable(){return this.dropdown_content.querySelectorAll("[data-selectable]")}addOption(u,p=!1){let g=this;if(Array.isArray(u))return g.addOptions(u,p),!1;let y=Rt(u[g.settings.valueField]);return y===null||g.options.hasOwnProperty(y)?!1:(u.$order=u.$order||++g.order,u.$id=g.inputId+"-opt-"+u.$order,g.options[y]=u,g.lastQuery=null,p&&(g.userOptions[y]=p,g.trigger("option_add",y,u)),y)}addOptions(u,p=!1){ue(u,g=>{this.addOption(g,p)})}registerOption(u){return this.addOption(u)}registerOptionGroup(u){var p=Rt(u[this.settings.optgroupValueField]);return p===null?!1:(u.$order=u.$order||++this.order,this.optgroups[p]=u,p)}addOptionGroup(u,p){var g;p[this.settings.optgroupValueField]=u,(g=this.registerOptionGroup(p))&&this.trigger("optgroup_add",g,p)}removeOptionGroup(u){this.optgroups.hasOwnProperty(u)&&(delete this.optgroups[u],this.clearCache(),this.trigger("optgroup_remove",u))}clearOptionGroups(){this.optgroups={},this.clearCache(),this.trigger("optgroup_clear")}updateOption(u,p){let g=this;var y,k;let x=Rt(u),P=Rt(p[g.settings.valueField]);if(x===null)return;let X=g.options[x];if(X==null)return;if(typeof P!="string")throw new Error("Value must be set in option data");let A=g.getOption(x),I=g.getItem(x);if(p.$order=p.$order||X.$order,delete g.options[x],g.uncacheValue(P),g.options[P]=p,A){if(g.dropdown_content.contains(A)){let M=g._render("option",p);Ml(A,M),g.activeOption===A&&g.setActiveOption(M)}A.remove()}I&&(k=g.items.indexOf(x),k!==-1&&g.items.splice(k,1,P),y=g._render("item",p),I.classList.contains("active")&&ot(y,"active"),Ml(I,y)),g.lastQuery=null}removeOption(u,p){let g=this;u=ds(u),g.uncacheValue(u),delete g.userOptions[u],delete g.options[u],g.lastQuery=null,g.trigger("option_remove",u),g.removeItem(u,p)}clearOptions(u){let p=(u||this.clearFilter).bind(this);this.loadedSearches={},this.userOptions={},this.clearCache();let g={};ue(this.options,(y,k)=>{p(y,k)&&(g[k]=y)}),this.options=this.sifter.items=g,this.lastQuery=null,this.trigger("option_clear")}clearFilter(u,p){return this.items.indexOf(p)>=0}getOption(u,p=!1){let g=Rt(u);if(g===null)return null;let y=this.options[g];if(y!=null){if(y.$div)return y.$div;if(p)return this._render("option",y)}return null}getAdjacent(u,p,g="option"){var y=this,k;if(!u)return null;g=="item"?k=y.controlChildren():k=y.dropdown_content.querySelectorAll("[data-selectable]");for(let x=0;x<k.length;x++)if(k[x]==u)return p>0?k[x+1]:k[x-1];return null}getItem(u){if(typeof u=="object")return u;var p=Rt(u);return p!==null?this.control.querySelector(`[data-value="${Kf(p)}"]`):null}addItems(u,p){var g=this,y=Array.isArray(u)?u:[u];y=y.filter(x=>g.items.indexOf(x)===-1);let k=y[y.length-1];y.forEach(x=>{g.isPending=x!==k,g.addItem(x,p)})}addItem(u,p){var g=p?[]:["change","dropdown_close"];Jf(this,g,()=>{var y,k;let x=this,P=x.settings.mode,X=Rt(u);if(!(X&&x.items.indexOf(X)!==-1&&(P==="single"&&x.close(),P==="single"||!x.settings.duplicates))&&!(X===null||!x.options.hasOwnProperty(X))&&(P==="single"&&x.clear(p),!(P==="multi"&&x.isFull()))){if(y=x._render("item",x.options[X]),x.control.contains(y)&&(y=y.cloneNode(!0)),k=x.isFull(),x.items.splice(x.caretPos,0,X),x.insertAtCaret(y),x.isSetup){if(!x.isPending&&x.settings.hideSelected){let A=x.getOption(X),I=x.getAdjacent(A,1);I&&x.setActiveOption(I)}!x.isPending&&!x.settings.closeAfterSelect&&x.refreshOptions(x.isFocused&&P!=="single"),x.settings.closeAfterSelect!=!1&&x.isFull()?x.close():x.isPending||x.positionDropdown(),x.trigger("item_add",X,y),x.isPending||x.updateOriginalInput({silent:p})}(!x.isPending||!k&&x.isFull())&&(x.inputState(),x.refreshState())}})}removeItem(u=null,p){let g=this;if(u=g.getItem(u),!u)return;var y,k;let x=u.dataset.value;y=fs(u),u.remove(),u.classList.contains("active")&&(k=g.activeItems.indexOf(u),g.activeItems.splice(k,1),pi(u,"active")),g.items.splice(y,1),g.lastQuery=null,!g.settings.persist&&g.userOptions.hasOwnProperty(x)&&g.removeOption(x,p),y<g.caretPos&&g.setCaret(g.caretPos-1),g.updateOriginalInput({silent:p}),g.refreshState(),g.positionDropdown(),g.trigger("item_remove",x,u)}createItem(u=null,p=()=>{}){arguments.length===3&&(p=arguments[2]),typeof p!="function"&&(p=()=>{});var g=this,y=g.caretPos,k;if(u=u||g.inputValue(),!g.canCreate(u))return p(),!1;g.lock();var x=!1,P=X=>{if(g.unlock(),!X||typeof X!="object")return p();var A=Rt(X[g.settings.valueField]);if(typeof A!="string")return p();g.setTextboxValue(),g.addOption(X,!0),g.setCaret(y),g.addItem(A),p(X),x=!0};return typeof g.settings.create=="function"?k=g.settings.create.call(this,u,P):k={[g.settings.labelField]:u,[g.settings.valueField]:u},x||P(k),!0}refreshItems(){var u=this;u.lastQuery=null,u.isSetup&&u.addItems(u.items),u.updateOriginalInput(),u.refreshState()}refreshState(){let u=this;u.refreshValidityState();let p=u.isFull(),g=u.isLocked;u.wrapper.classList.toggle("rtl",u.rtl);let y=u.wrapper.classList;y.toggle("focus",u.isFocused),y.toggle("disabled",u.isDisabled),y.toggle("readonly",u.isReadOnly),y.toggle("required",u.isRequired),y.toggle("invalid",!u.isValid),y.toggle("locked",g),y.toggle("full",p),y.toggle("input-active",u.isFocused&&!u.isInputHidden),y.toggle("dropdown-active",u.isOpen),y.toggle("has-options",Rb(u.options)),y.toggle("has-items",u.items.length>0)}refreshValidityState(){var u=this;u.input.validity&&(u.isValid=u.input.validity.valid,u.isInvalid=!u.isValid)}isFull(){return this.settings.maxItems!==null&&this.items.length>=this.settings.maxItems}updateOriginalInput(u={}){let p=this;var g,y;let k=p.input.querySelector('option[value=""]');if(p.is_select_tag){let X=function(A,I,M){return A||(A=Ve('<option value="'+ps(I)+'">'+ps(M)+"</option>")),A!=k&&p.input.append(A),x.push(A),(A!=k||P>0)&&(A.selected=!0),A},x=[],P=p.input.querySelectorAll("option:checked").length;p.input.querySelectorAll("option:checked").forEach(A=>{A.selected=!1}),p.items.length==0&&p.settings.mode=="single"?X(k,"",""):p.items.forEach(A=>{if(g=p.options[A],y=g[p.settings.labelField]||"",x.includes(g.$option)){let I=p.input.querySelector(`option[value="${Kf(A)}"]:not(:checked)`);X(I,A,y)}else g.$option=X(g.$option,A,y)})}else p.input.value=p.getValue();p.isSetup&&(u.silent||p.trigger("change",p.getValue()))}open(){var u=this;u.isLocked||u.isOpen||u.settings.mode==="multi"&&u.isFull()||(u.isOpen=!0,Ze(u.focus_node,{"aria-expanded":"true"}),u.refreshState(),hs(u.dropdown,{visibility:"hidden",display:"block"}),u.positionDropdown(),hs(u.dropdown,{visibility:"visible",display:"block"}),u.focus(),u.trigger("dropdown_open",u.dropdown))}close(u=!0){var p=this,g=p.isOpen;u&&(p.setTextboxValue(),p.settings.mode==="single"&&p.items.length&&p.inputState()),p.isOpen=!1,Ze(p.focus_node,{"aria-expanded":"false"}),hs(p.dropdown,{display:"none"}),p.settings.hideSelected&&p.clearActiveOption(),p.refreshState(),g&&p.trigger("dropdown_close",p.dropdown)}positionDropdown(){if(this.settings.dropdownParent==="body"){var u=this.control,p=u.getBoundingClientRect(),g=u.offsetHeight+p.top+window.scrollY,y=p.left+window.scrollX;hs(this.dropdown,{width:p.width+"px",top:g+"px",left:y+"px"})}}clear(u){var p=this;if(p.items.length){var g=p.controlChildren();ue(g,y=>{p.removeItem(y,!0)}),p.inputState(),u||p.updateOriginalInput(),p.trigger("clear")}}insertAtCaret(u){let p=this,g=p.caretPos,y=p.control;y.insertBefore(u,y.children[g]||null),p.setCaret(g+1)}deleteSelection(u){var p,g,y,k,x=this;p=u&&u.keyCode===Gf?-1:1,g=Ub(x.control_input);let P=[];if(x.activeItems.length)k=Nf(x.activeItems,p),y=fs(k),p>0&&y++,ue(x.activeItems,X=>P.push(X));else if((x.isFocused||x.settings.mode==="single")&&x.items.length){let X=x.controlChildren(),A;p<0&&g.start===0&&g.length===0?A=X[x.caretPos-1]:p>0&&g.start===x.inputValue().length&&(A=X[x.caretPos]),A!==void 0&&P.push(A)}if(!x.shouldDelete(P,u))return!1;for(be(u,!0),typeof y<"u"&&x.setCaret(y);P.length;)x.removeItem(P.pop());return x.inputState(),x.positionDropdown(),x.refreshOptions(!1),!0}shouldDelete(u,p){let g=u.map(y=>y.dataset.value);return!(!g.length||typeof this.settings.onDelete=="function"&&this.settings.onDelete(g,p)===!1)}advanceSelection(u,p){var g,y,k=this;k.rtl&&(u*=-1),!k.inputValue().length&&(Gi(us,p)||Gi("shiftKey",p)?(g=k.getLastActive(u),g?g.classList.contains("active")?y=k.getAdjacent(g,u,"item"):y=g:u>0?y=k.control_input.nextElementSibling:y=k.control_input.previousElementSibling,y&&(y.classList.contains("active")&&k.removeActiveItem(g),k.setActiveItemClass(y))):k.moveCaret(u))}moveCaret(u){}getLastActive(u){let p=this.control.querySelector(".last-active");if(p)return p;var g=this.control.querySelectorAll(".active");if(g)return Nf(g,u)}setCaret(u){this.caretPos=this.items.length}controlChildren(){return Array.from(this.control.querySelectorAll("[data-ts-item]"))}lock(){this.setLocked(!0)}unlock(){this.setLocked(!1)}setLocked(u=this.isReadOnly||this.isDisabled){this.isLocked=u,this.refreshState()}disable(){this.setDisabled(!0),this.close()}enable(){this.setDisabled(!1)}setDisabled(u){this.focus_node.tabIndex=u?-1:this.tabIndex,this.isDisabled=u,this.input.disabled=u,this.control_input.disabled=u,this.setLocked()}setReadOnly(u){this.isReadOnly=u,this.input.readOnly=u,this.control_input.readOnly=u,this.setLocked()}destroy(){var u=this,p=u.revertSettings;u.trigger("destroy"),u.off(),u.wrapper.remove(),u.dropdown.remove(),u.input.innerHTML=p.innerHTML,u.input.tabIndex=p.tabIndex,pi(u.input,"tomselected","ts-hidden-accessible"),u._destroy(),delete u.input.tomselect}render(u,p){var g,y;let k=this;if(typeof this.settings.render[u]!="function"||(y=k.settings.render[u].call(this,p,ps),!y))return null;if(y=Ve(y),u==="option"||u==="option_create"?p[k.settings.disabledField]?Ze(y,{"aria-disabled":"true"}):Ze(y,{"data-selectable":""}):u==="optgroup"&&(g=p.group[k.settings.optgroupValueField],Ze(y,{"data-group":g}),p.group[k.settings.disabledField]&&Ze(y,{"data-disabled":""})),u==="option"||u==="item"){let x=ds(p[k.settings.valueField]);Ze(y,{"data-value":x}),u==="item"?(ot(y,k.settings.itemClass),Ze(y,{"data-ts-item":""})):(ot(y,k.settings.optionClass),Ze(y,{role:"option",id:p.$id}),p.$div=y,k.options[x]=p)}return y}_render(u,p){let g=this.render(u,p);if(g==null)throw"HTMLElement expected";return g}clearCache(){ue(this.options,u=>{u.$div&&(u.$div.remove(),delete u.$div)})}uncacheValue(u){let p=this.getOption(u);p&&p.remove()}canCreate(u){return this.settings.create&&u.length>0&&this.settings.createFilter.call(this,u)}hook(u,p,g){var y=this,k=y[p];y[p]=function(){var x,P;return u==="after"&&(x=k.apply(y,arguments)),P=g.apply(y,arguments),u==="instead"?P:(u==="before"&&(x=k.apply(y,arguments)),x)}}}function qb(){Se(this.input,"change",()=>{this.sync()})}function Nb(b){var u=this,p=u.onOptionSelect;u.settings.hideSelected=!1;let g=Object.assign({className:"tomselect-checkbox",checkedClassNames:void 0,uncheckedClassNames:void 0},b);var y=function(P,X){X?(P.checked=!0,g.uncheckedClassNames&&P.classList.remove(...g.uncheckedClassNames),g.checkedClassNames&&P.classList.add(...g.checkedClassNames)):(P.checked=!1,g.checkedClassNames&&P.classList.remove(...g.checkedClassNames),g.uncheckedClassNames&&P.classList.add(...g.uncheckedClassNames))},k=function(P){setTimeout(()=>{var X=P.querySelector("input."+g.className);X instanceof HTMLInputElement&&y(X,P.classList.contains("selected"))},1)};u.hook("after","setupTemplates",()=>{var x=u.settings.render.option;u.settings.render.option=(P,X)=>{var A=Ve(x.call(u,P,X)),I=document.createElement("input");g.className&&I.classList.add(g.className),I.addEventListener("click",function(U){be(U)}),I.type="checkbox";let M=Rt(P[u.settings.valueField]);return y(I,!!(M&&u.items.indexOf(M)>-1)),A.prepend(I),A}}),u.on("item_remove",x=>{var P=u.getOption(x);P&&(P.classList.remove("selected"),k(P))}),u.on("item_add",x=>{var P=u.getOption(x);P&&k(P)}),u.hook("instead","onOptionSelect",(x,P)=>{if(P.classList.contains("selected")){P.classList.remove("selected"),u.removeItem(P.dataset.value),u.refreshOptions(),be(x,!0);return}p.call(u,x,P),k(P)})}function jb(b){let u=this,p=Object.assign({className:"clear-button",title:"Clear All",html:g=>`<div class="${g.className}" title="${g.title}">&#10799;</div>`},b);u.on("initialize",()=>{var g=Ve(p.html(p));g.addEventListener("click",y=>{u.isLocked||(u.clear(),u.settings.mode==="single"&&u.settings.allowEmptyOption&&u.addItem(""),y.preventDefault(),y.stopPropagation())}),u.control.appendChild(g)})}let Fb=(b,u)=>{var p;(p=b.parentNode)==null||p.insertBefore(u,b.nextSibling)},Gb=(b,u)=>{var p;(p=b.parentNode)==null||p.insertBefore(u,b)},Hb=(b,u)=>{do{var p;if(u=(p=u)==null?void 0:p.previousElementSibling,b==u)return!0}while(u&&u.previousElementSibling);return!1};function Jb(){var b=this;if(b.settings.mode!=="multi")return;var u=b.lock,p=b.unlock;let g=!0,y;b.hook("after","setupTemplates",()=>{var k=b.settings.render.item;b.settings.render.item=(x,P)=>{let X=Ve(k.call(b,x,P));Ze(X,{draggable:"true"});let A=he=>{g||be(he),he.stopPropagation()},I=he=>{y=X,setTimeout(()=>{X.classList.add("ts-dragging")},0)},M=he=>{he.preventDefault(),X.classList.add("ts-drag-over"),Qe(X,y)},U=()=>{X.classList.remove("ts-drag-over")},Qe=(he,_e)=>{_e!==void 0&&(Hb(_e,X)?Fb(he,_e):Gb(he,_e))},z=()=>{var he;document.querySelectorAll(".ts-drag-over").forEach(ye=>ye.classList.remove("ts-drag-over")),(he=y)==null||he.classList.remove("ts-dragging"),y=void 0;var _e=[];b.control.querySelectorAll("[data-value]").forEach(ye=>{if(ye.dataset.value){let G=ye.dataset.value;G&&_e.push(G)}}),b.setValue(_e)};return Se(X,"mousedown",A),Se(X,"dragstart",I),Se(X,"dragenter",M),Se(X,"dragover",M),Se(X,"dragleave",U),Se(X,"dragend",z),X}}),b.hook("instead","lock",()=>(g=!1,u.call(b))),b.hook("instead","unlock",()=>(g=!0,p.call(b)))}function Kb(b){let u=this,p=Object.assign({title:"Untitled",headerClass:"dropdown-header",titleRowClass:"dropdown-header-title",labelClass:"dropdown-header-label",closeClass:"dropdown-header-close",html:g=>'<div class="'+g.headerClass+'"><div class="'+g.titleRowClass+'"><span class="'+g.labelClass+'">'+g.title+'</span><a class="'+g.closeClass+'">&times;</a></div></div>'},b);u.on("initialize",()=>{var g=Ve(p.html(p)),y=g.querySelector("."+p.closeClass);y&&y.addEventListener("click",k=>{be(k,!0),u.close()}),u.dropdown.insertBefore(g,u.dropdown.firstChild)})}function eS(){var b=this;b.hook("instead","setCaret",u=>{b.settings.mode==="single"||!b.control.contains(b.control_input)?u=b.items.length:(u=Math.max(0,Math.min(b.items.length,u)),u!=b.caretPos&&!b.isPending&&b.controlChildren().forEach((p,g)=>{g<u?b.control_input.insertAdjacentElement("beforebegin",p):b.control.appendChild(p)})),b.caretPos=u}),b.hook("instead","moveCaret",u=>{if(!b.isFocused)return;let p=b.getLastActive(u);if(p){let g=fs(p);b.setCaret(u>0?g+1:g),b.setActiveItem(),pi(p,"last-active")}else b.setCaret(b.caretPos+u)})}function tS(){let b=this;b.settings.shouldOpen=!0,b.hook("before","setup",()=>{b.focus_node=b.control,ot(b.control_input,"dropdown-input");let u=Ve('<div class="dropdown-input-wrap">');u.append(b.control_input),b.dropdown.insertBefore(u,b.dropdown.firstChild);let p=Ve('<input class="items-placeholder" tabindex="-1" />');p.placeholder=b.settings.placeholder||"",b.control.append(p)}),b.on("initialize",()=>{b.control_input.addEventListener("keydown",p=>{switch(p.keyCode){case jf:b.isOpen&&(be(p,!0),b.close()),b.clearActiveItems();return;case Dl:b.focus_node.tabIndex=-1;break}return b.onKeyDown.call(b,p)}),b.on("blur",()=>{b.focus_node.tabIndex=b.isDisabled?-1:b.tabIndex}),b.on("dropdown_open",()=>{b.control_input.focus()});let u=b.onBlur;b.hook("instead","onBlur",p=>{if(!(p&&p.relatedTarget==b.control_input))return u.call(b)}),Se(b.control_input,"blur",()=>b.onBlur()),b.hook("before","close",()=>{b.isOpen&&b.focus_node.focus({preventScroll:!0})})})}function iS(){var b=this;b.on("initialize",()=>{var u=document.createElement("span"),p=b.control_input;u.style.cssText="position:absolute; top:-99999px; left:-99999px; width:auto; padding:0; white-space:pre; ",b.wrapper.appendChild(u);var g=["letterSpacing","fontSize","fontFamily","fontWeight","textTransform"];for(let k of g)u.style[k]=p.style[k];var y=()=>{u.textContent=p.value,p.style.width=u.clientWidth+"px"};y(),b.on("update item_add item_remove",y),Se(p,"input",y),Se(p,"keyup",y),Se(p,"blur",y),Se(p,"update",y)})}function nS(){var b=this,u=b.deleteSelection;this.hook("instead","deleteSelection",p=>b.activeItems.length?u.call(b,p):!1)}function rS(){this.hook("instead","setActiveItem",()=>{}),this.hook("instead","selectAll",()=>{})}function sS(){var b=this,u=b.onKeyDown;b.hook("instead","onKeyDown",p=>{var g,y,k,x;if(!b.isOpen||!(p.keyCode===Ll||p.keyCode===Ff))return u.call(b,p);b.ignoreHover=!0,x=cs(b.activeOption,"[data-group]"),g=fs(b.activeOption,"[data-selectable]"),x&&(p.keyCode===Ll?x=x.previousSibling:x=x.nextSibling,x&&(k=x.querySelectorAll("[data-selectable]"),y=k[Math.min(k.length-1,g)],y&&b.setActiveOption(y)))})}function oS(b){let u=Object.assign({label:"&times;",title:"Remove",className:"remove",append:!0},b);var p=this;if(u.append){var g='<a href="javascript:void(0)" class="'+u.className+'" tabindex="-1" title="'+ps(u.title)+'">'+u.label+"</a>";p.hook("after","setupTemplates",()=>{var y=p.settings.render.item;p.settings.render.item=(k,x)=>{var P=Ve(y.call(p,k,x)),X=Ve(g);return P.appendChild(X),Se(X,"mousedown",A=>{be(A,!0)}),Se(X,"click",A=>{p.isLocked||(be(A,!0),!p.isLocked&&p.shouldDelete([P],A)&&(p.removeItem(P),p.refreshOptions(!1),p.inputState()))}),P}})}}function lS(b){let u=this,p=Object.assign({text:g=>g[u.settings.labelField]},b);u.on("item_remove",function(g){if(u.isFocused&&u.control_input.value.trim()===""){var y=u.options[g];y&&u.setTextboxValue(p.text.call(u,y))}})}function aS(){let b=this,u=b.canLoad,p=b.clearActiveOption,g=b.loadCallback;var y={},k,x=!1,P,X=[];if(b.settings.shouldLoadMore||(b.settings.shouldLoadMore=()=>{if(k.clientHeight/(k.scrollHeight-k.scrollTop)>.9)return!0;if(b.activeOption){var U=b.selectable(),Qe=Array.from(U).indexOf(b.activeOption);if(Qe>=U.length-2)return!0}return!1}),!b.settings.firstUrl)thr