UNPKG

flyonui

Version:

The easiest, free and open-source Tailwind CSS component library with semantic classes.

8 lines 61.9 kB
var t={68:(t,e,i)=>{i.d(e,{A:()=>s});const s=class{constructor(){this.components=[],this.currentlyOpenedComponents=[],this.activeComponent=null,this.initGlobalListeners()}initGlobalListeners(){document.addEventListener("keydown",t=>this.handleGlobalKeydown(t)),document.addEventListener("focusin",t=>this.handleGlobalFocusin(t))}getActiveComponent(t){if(!t)return null;const e=this.components.filter(e=>e.wrapper.contains(t)||e.context&&e.context.contains(t));if(0===e.length)return null;if(1===e.length)return e[0];let i=null,s=Number.MAX_SAFE_INTEGER;for(const n of e){let e=0,o=t;for(;o&&o!==n.wrapper&&o!==n.context;)e++,o=o.parentElement;e<s&&(s=e,i=n)}return i}handleGlobalFocusin(t){const e=t.target;this.activeComponent=this.getActiveComponent(e)}handleGlobalKeydown(t){const e=t.target;if(this.activeComponent=this.getActiveComponent(e),this.activeComponent)switch(t.key){case"Escape":if(this.activeComponent.isOpened)this.activeComponent.handlers.onEsc&&(this.activeComponent.handlers.onEsc(),t.preventDefault(),t.stopPropagation());else{const i=this.findClosestOpenParent(e);(null==i?void 0:i.handlers.onEsc)&&(i.handlers.onEsc(),t.preventDefault(),t.stopPropagation())}break;case"Enter":this.activeComponent.handlers.onEnter&&(this.activeComponent.handlers.onEnter(),t.preventDefault(),t.stopPropagation());break;case" ":case"Space":if("INPUT"===e.tagName||"TEXTAREA"===e.tagName)return;this.activeComponent.handlers.onSpace&&(this.activeComponent.handlers.onSpace(),t.preventDefault(),t.stopPropagation());break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":if(this.activeComponent.handlers.onArrow){if(t.metaKey||t.ctrlKey||t.altKey||t.shiftKey)return;this.activeComponent.handlers.onArrow(t),t.preventDefault(),t.stopPropagation()}break;case"Tab":if(!this.activeComponent.handlers.onTab)break;const i=t.shiftKey?this.activeComponent.handlers.onShiftTab:this.activeComponent.handlers.onTab;i&&i();break;case"Home":this.activeComponent.handlers.onHome&&(this.activeComponent.handlers.onHome(),t.preventDefault(),t.stopPropagation());break;case"End":this.activeComponent.handlers.onEnd&&(this.activeComponent.handlers.onEnd(),t.preventDefault(),t.stopPropagation());break;default:this.activeComponent.handlers.onFirstLetter&&1===t.key.length&&/^[a-zA-Z]$/.test(t.key)&&(this.activeComponent.handlers.onFirstLetter(t.key),t.preventDefault(),t.stopPropagation())}}findClosestOpenParent(t){let e=t.parentElement;for(;e;){const t=this.currentlyOpenedComponents.find(t=>t.wrapper===e&&t!==this.activeComponent);if(t)return t;e=e.parentElement}return null}registerComponent(t,e,i=!0,s="",n="",o){const l={wrapper:t,handlers:e,isOpened:i,name:s,selector:n,context:o,isRegistered:!0};return this.components.push(l),l}updateComponentState(t,e){t.isOpened=e,e?this.currentlyOpenedComponents.includes(t)||this.currentlyOpenedComponents.push(t):this.currentlyOpenedComponents=this.currentlyOpenedComponents.filter(e=>e!==t)}unregisterComponent(t){this.components=this.components.filter(e=>e!==t),this.currentlyOpenedComponents=this.currentlyOpenedComponents.filter(e=>e!==t)}}},179:(t,e,i)=>{i.d(e,{lP:()=>s});const s={auto:"auto","auto-start":"auto-start","auto-end":"auto-end",top:"top","top-start":"top-start","top-end":"top-end",bottom:"bottom","bottom-start":"bottom-start","bottom-end":"bottom-end",right:"right","right-start":"right-start","right-end":"right-end",left:"left","left-start":"left-start","left-end":"left-end"}},392:(t,e,i)=>{i.d(e,{JD:()=>o,PR:()=>s,en:()=>r,fc:()=>a,sg:()=>n,yd:()=>l}); /* * @version: 3.2.2 * @author: Preline Labs Ltd. * @license: Licensed under MIT and Preline UI Fair Use License (https://preline.co/docs/license.html) * Copyright 2024 Preline Labs Ltd. */ const s=(t,e,i="auto",s=10,n=null)=>{const o=e.getBoundingClientRect(),l=n?n.getBoundingClientRect():null,a=window.innerHeight,r=l?o.top-l.top:o.top,d=(n?l.bottom:a)-o.bottom,h=t.clientHeight+s;return"bottom"===i?d>=h:"top"===i?r>=h:r>=h||d>=h},n=(t,e=200)=>{let i;return(...s)=>{clearTimeout(i),i=setTimeout(()=>{t.apply(void 0,s)},e)}},o=(t,e,i=null)=>{const s=new CustomEvent(t,{detail:{payload:i},bubbles:!0,cancelable:!0,composed:!1});e.dispatchEvent(s)},l=(t,e)=>{const i=()=>{e(),t.removeEventListener("transitionend",i,!0)},s=window.getComputedStyle(t),n=s.getPropertyValue("transition-duration");"none"!==s.getPropertyValue("transition-property")&&parseFloat(n)>0?t.addEventListener("transitionend",i,!0):e()},a=t=>{const e=document.createElement("template");return t=t.trim(),e.innerHTML=t,e.content.firstChild},r=(t,e,i=" ",s="add")=>{t.split(i).forEach(t=>{t.trim()&&("add"===s?e.classList.add(t):e.classList.remove(t))})}},663:(t,e,i)=>{i.d(e,{ll:()=>wt,rD:()=>It,UU:()=>bt,cY:()=>yt});const s=Math.min,n=Math.max,o=Math.round,l=Math.floor,a=t=>({x:t,y:t}),r={left:"right",right:"left",bottom:"top",top:"bottom"},d={start:"end",end:"start"};function h(t,e){return"function"==typeof t?t(e):t}function c(t){return t.split("-")[0]}function p(t){return t.split("-")[1]}function u(t){return"y"===t?"height":"width"}const g=new Set(["top","bottom"]);function m(t){return g.has(c(t))?"y":"x"}function f(t){return"x"===m(t)?"y":"x"}function v(t){return t.replace(/start|end/g,t=>d[t])}const w=["left","right"],y=["right","left"],b=["top","bottom"],I=["bottom","top"];function S(t,e,i,s){const n=p(t);let o=function(t,e,i){switch(t){case"top":case"bottom":return i?e?y:w:e?w:y;case"left":case"right":return e?b:I;default:return[]}}(c(t),"start"===i,s);return n&&(o=o.map(t=>t+"-"+n),e&&(o=o.concat(o.map(v)))),o}function C(t){return t.replace(/left|right|bottom|top/g,t=>r[t])}function T(t){const{x:e,y:i,width:s,height:n}=t;return{width:s,height:n,top:i,left:e,right:e+s,bottom:i+n,x:e,y:i}}function x(t,e,i){let{reference:s,floating:n}=t;const o=m(e),l=f(e),a=u(l),r=c(e),d="y"===o,h=s.x+s.width/2-n.width/2,g=s.y+s.height/2-n.height/2,v=s[a]/2-n[a]/2;let w;switch(r){case"top":w={x:h,y:s.y-n.height};break;case"bottom":w={x:h,y:s.y+s.height};break;case"right":w={x:s.x+s.width,y:g};break;case"left":w={x:s.x-n.width,y:g};break;default:w={x:s.x,y:s.y}}switch(p(e)){case"start":w[l]-=v*(i&&d?-1:1);break;case"end":w[l]+=v*(i&&d?-1:1)}return w}async function L(t,e){var i;void 0===e&&(e={});const{x:s,y:n,platform:o,rects:l,elements:a,strategy:r}=t,{boundary:d="clippingAncestors",rootBoundary:c="viewport",elementContext:p="floating",altBoundary:u=!1,padding:g=0}=h(e,t),m=function(t){return"number"!=typeof t?function(t){return{top:0,right:0,bottom:0,left:0,...t}}(t):{top:t,right:t,bottom:t,left:t}}(g),f=a[u?"floating"===p?"reference":"floating":p],v=T(await o.getClippingRect({element:null==(i=await(null==o.isElement?void 0:o.isElement(f)))||i?f:f.contextElement||await(null==o.getDocumentElement?void 0:o.getDocumentElement(a.floating)),boundary:d,rootBoundary:c,strategy:r})),w="floating"===p?{x:s,y:n,width:l.floating.width,height:l.floating.height}:l.reference,y=await(null==o.getOffsetParent?void 0:o.getOffsetParent(a.floating)),b=await(null==o.isElement?void 0:o.isElement(y))&&await(null==o.getScale?void 0:o.getScale(y))||{x:1,y:1},I=T(o.convertOffsetParentRelativeRectToViewportRelativeRect?await o.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:w,offsetParent:y,strategy:r}):w);return{top:(v.top-I.top+m.top)/b.y,bottom:(I.bottom-v.bottom+m.bottom)/b.y,left:(v.left-I.left+m.left)/b.x,right:(I.right-v.right+m.right)/b.x}}const O=new Set(["left","top"]);function E(){return"undefined"!=typeof window}function A(t){return P(t)?(t.nodeName||"").toLowerCase():"#document"}function M(t){var e;return(null==t||null==(e=t.ownerDocument)?void 0:e.defaultView)||window}function F(t){var e;return null==(e=(P(t)?t.ownerDocument:t.document)||window.document)?void 0:e.documentElement}function P(t){return!!E()&&(t instanceof Node||t instanceof M(t).Node)}function R(t){return!!E()&&(t instanceof Element||t instanceof M(t).Element)}function D(t){return!!E()&&(t instanceof HTMLElement||t instanceof M(t).HTMLElement)}function k(t){return!(!E()||"undefined"==typeof ShadowRoot)&&(t instanceof ShadowRoot||t instanceof M(t).ShadowRoot)}const $=new Set(["inline","contents"]);function H(t){const{overflow:e,overflowX:i,overflowY:s,display:n}=J(t);return/auto|scroll|overlay|hidden|clip/.test(e+s+i)&&!$.has(n)}const q=new Set(["table","td","th"]);function W(t){return q.has(A(t))}const V=[":popover-open",":modal"];function N(t){return V.some(e=>{try{return t.matches(e)}catch(t){return!1}})}const U=["transform","translate","scale","rotate","perspective"],_=["transform","translate","scale","rotate","perspective","filter"],B=["paint","layout","strict","content"];function j(t){const e=K(),i=R(t)?J(t):t;return U.some(t=>!!i[t]&&"none"!==i[t])||!!i.containerType&&"normal"!==i.containerType||!e&&!!i.backdropFilter&&"none"!==i.backdropFilter||!e&&!!i.filter&&"none"!==i.filter||_.some(t=>(i.willChange||"").includes(t))||B.some(t=>(i.contain||"").includes(t))}function K(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}const z=new Set(["html","body","#document"]);function G(t){return z.has(A(t))}function J(t){return M(t).getComputedStyle(t)}function Q(t){return R(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function X(t){if("html"===A(t))return t;const e=t.assignedSlot||t.parentNode||k(t)&&t.host||F(t);return k(e)?e.host:e}function Y(t){const e=X(t);return G(e)?t.ownerDocument?t.ownerDocument.body:t.body:D(e)&&H(e)?e:Y(e)}function Z(t,e,i){var s;void 0===e&&(e=[]),void 0===i&&(i=!0);const n=Y(t),o=n===(null==(s=t.ownerDocument)?void 0:s.body),l=M(n);if(o){const t=tt(l);return e.concat(l,l.visualViewport||[],H(n)?n:[],t&&i?Z(t):[])}return e.concat(n,Z(n,[],i))}function tt(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function et(t){const e=J(t);let i=parseFloat(e.width)||0,s=parseFloat(e.height)||0;const n=D(t),l=n?t.offsetWidth:i,a=n?t.offsetHeight:s,r=o(i)!==l||o(s)!==a;return r&&(i=l,s=a),{width:i,height:s,$:r}}function it(t){return R(t)?t:t.contextElement}function st(t){const e=it(t);if(!D(e))return a(1);const i=e.getBoundingClientRect(),{width:s,height:n,$:l}=et(e);let r=(l?o(i.width):i.width)/s,d=(l?o(i.height):i.height)/n;return r&&Number.isFinite(r)||(r=1),d&&Number.isFinite(d)||(d=1),{x:r,y:d}}const nt=a(0);function ot(t){const e=M(t);return K()&&e.visualViewport?{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}:nt}function lt(t,e,i,s){void 0===e&&(e=!1),void 0===i&&(i=!1);const n=t.getBoundingClientRect(),o=it(t);let l=a(1);e&&(s?R(s)&&(l=st(s)):l=st(t));const r=function(t,e,i){return void 0===e&&(e=!1),!(!i||e&&i!==M(t))&&e}(o,i,s)?ot(o):a(0);let d=(n.left+r.x)/l.x,h=(n.top+r.y)/l.y,c=n.width/l.x,p=n.height/l.y;if(o){const t=M(o),e=s&&R(s)?M(s):s;let i=t,n=tt(i);for(;n&&s&&e!==i;){const t=st(n),e=n.getBoundingClientRect(),s=J(n),o=e.left+(n.clientLeft+parseFloat(s.paddingLeft))*t.x,l=e.top+(n.clientTop+parseFloat(s.paddingTop))*t.y;d*=t.x,h*=t.y,c*=t.x,p*=t.y,d+=o,h+=l,i=M(n),n=tt(i)}}return T({width:c,height:p,x:d,y:h})}function at(t,e){const i=Q(t).scrollLeft;return e?e.left+i:lt(F(t)).left+i}function rt(t,e,i){void 0===i&&(i=!1);const s=t.getBoundingClientRect();return{x:s.left+e.scrollLeft-(i?0:at(t,s)),y:s.top+e.scrollTop}}const dt=new Set(["absolute","fixed"]);function ht(t,e,i){let s;if("viewport"===e)s=function(t,e){const i=M(t),s=F(t),n=i.visualViewport;let o=s.clientWidth,l=s.clientHeight,a=0,r=0;if(n){o=n.width,l=n.height;const t=K();(!t||t&&"fixed"===e)&&(a=n.offsetLeft,r=n.offsetTop)}return{width:o,height:l,x:a,y:r}}(t,i);else if("document"===e)s=function(t){const e=F(t),i=Q(t),s=t.ownerDocument.body,o=n(e.scrollWidth,e.clientWidth,s.scrollWidth,s.clientWidth),l=n(e.scrollHeight,e.clientHeight,s.scrollHeight,s.clientHeight);let a=-i.scrollLeft+at(t);const r=-i.scrollTop;return"rtl"===J(s).direction&&(a+=n(e.clientWidth,s.clientWidth)-o),{width:o,height:l,x:a,y:r}}(F(t));else if(R(e))s=function(t,e){const i=lt(t,!0,"fixed"===e),s=i.top+t.clientTop,n=i.left+t.clientLeft,o=D(t)?st(t):a(1);return{width:t.clientWidth*o.x,height:t.clientHeight*o.y,x:n*o.x,y:s*o.y}}(e,i);else{const i=ot(t);s={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height}}return T(s)}function ct(t,e){const i=X(t);return!(i===e||!R(i)||G(i))&&("fixed"===J(i).position||ct(i,e))}function pt(t,e,i){const s=D(e),n=F(e),o="fixed"===i,l=lt(t,!0,o,e);let r={scrollLeft:0,scrollTop:0};const d=a(0);function h(){d.x=at(n)}if(s||!s&&!o)if(("body"!==A(e)||H(n))&&(r=Q(e)),s){const t=lt(e,!0,o,e);d.x=t.x+e.clientLeft,d.y=t.y+e.clientTop}else n&&h();o&&!s&&n&&h();const c=!n||s||o?a(0):rt(n,r);return{x:l.left+r.scrollLeft-d.x-c.x,y:l.top+r.scrollTop-d.y-c.y,width:l.width,height:l.height}}function ut(t){return"static"===J(t).position}function gt(t,e){if(!D(t)||"fixed"===J(t).position)return null;if(e)return e(t);let i=t.offsetParent;return F(t)===i&&(i=i.ownerDocument.body),i}function mt(t,e){const i=M(t);if(N(t))return i;if(!D(t)){let e=X(t);for(;e&&!G(e);){if(R(e)&&!ut(e))return e;e=X(e)}return i}let s=gt(t,e);for(;s&&W(s)&&ut(s);)s=gt(s,e);return s&&G(s)&&ut(s)&&!j(s)?i:s||function(t){let e=X(t);for(;D(e)&&!G(e);){if(j(e))return e;if(N(e))return null;e=X(e)}return null}(t)||i}const ft={convertOffsetParentRelativeRectToViewportRelativeRect:function(t){let{elements:e,rect:i,offsetParent:s,strategy:n}=t;const o="fixed"===n,l=F(s),r=!!e&&N(e.floating);if(s===l||r&&o)return i;let d={scrollLeft:0,scrollTop:0},h=a(1);const c=a(0),p=D(s);if((p||!p&&!o)&&(("body"!==A(s)||H(l))&&(d=Q(s)),D(s))){const t=lt(s);h=st(s),c.x=t.x+s.clientLeft,c.y=t.y+s.clientTop}const u=!l||p||o?a(0):rt(l,d,!0);return{width:i.width*h.x,height:i.height*h.y,x:i.x*h.x-d.scrollLeft*h.x+c.x+u.x,y:i.y*h.y-d.scrollTop*h.y+c.y+u.y}},getDocumentElement:F,getClippingRect:function(t){let{element:e,boundary:i,rootBoundary:o,strategy:l}=t;const a=[..."clippingAncestors"===i?N(e)?[]:function(t,e){const i=e.get(t);if(i)return i;let s=Z(t,[],!1).filter(t=>R(t)&&"body"!==A(t)),n=null;const o="fixed"===J(t).position;let l=o?X(t):t;for(;R(l)&&!G(l);){const e=J(l),i=j(l);i||"fixed"!==e.position||(n=null),(o?!i&&!n:!i&&"static"===e.position&&n&&dt.has(n.position)||H(l)&&!i&&ct(t,l))?s=s.filter(t=>t!==l):n=e,l=X(l)}return e.set(t,s),s}(e,this._c):[].concat(i),o],r=a[0],d=a.reduce((t,i)=>{const o=ht(e,i,l);return t.top=n(o.top,t.top),t.right=s(o.right,t.right),t.bottom=s(o.bottom,t.bottom),t.left=n(o.left,t.left),t},ht(e,r,l));return{width:d.right-d.left,height:d.bottom-d.top,x:d.left,y:d.top}},getOffsetParent:mt,getElementRects:async function(t){const e=this.getOffsetParent||mt,i=this.getDimensions,s=await i(t.floating);return{reference:pt(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:s.width,height:s.height}}},getClientRects:function(t){return Array.from(t.getClientRects())},getDimensions:function(t){const{width:e,height:i}=et(t);return{width:e,height:i}},getScale:st,isElement:R,isRTL:function(t){return"rtl"===J(t).direction}};function vt(t,e){return t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height}function wt(t,e,i,o){void 0===o&&(o={});const{ancestorScroll:a=!0,ancestorResize:r=!0,elementResize:d="function"==typeof ResizeObserver,layoutShift:h="function"==typeof IntersectionObserver,animationFrame:c=!1}=o,p=it(t),u=a||r?[...p?Z(p):[],...Z(e)]:[];u.forEach(t=>{a&&t.addEventListener("scroll",i,{passive:!0}),r&&t.addEventListener("resize",i)});const g=p&&h?function(t,e){let i,o=null;const a=F(t);function r(){var t;clearTimeout(i),null==(t=o)||t.disconnect(),o=null}return function d(h,c){void 0===h&&(h=!1),void 0===c&&(c=1),r();const p=t.getBoundingClientRect(),{left:u,top:g,width:m,height:f}=p;if(h||e(),!m||!f)return;const v={rootMargin:-l(g)+"px "+-l(a.clientWidth-(u+m))+"px "+-l(a.clientHeight-(g+f))+"px "+-l(u)+"px",threshold:n(0,s(1,c))||1};let w=!0;function y(e){const s=e[0].intersectionRatio;if(s!==c){if(!w)return d();s?d(!1,s):i=setTimeout(()=>{d(!1,1e-7)},1e3)}1!==s||vt(p,t.getBoundingClientRect())||d(),w=!1}try{o=new IntersectionObserver(y,{...v,root:a.ownerDocument})}catch(t){o=new IntersectionObserver(y,v)}o.observe(t)}(!0),r}(p,i):null;let m,f=-1,v=null;d&&(v=new ResizeObserver(t=>{let[s]=t;s&&s.target===p&&v&&(v.unobserve(e),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var t;null==(t=v)||t.observe(e)})),i()}),p&&!c&&v.observe(p),v.observe(e));let w=c?lt(t):null;return c&&function e(){const s=lt(t);w&&!vt(w,s)&&i();w=s,m=requestAnimationFrame(e)}(),i(),()=>{var t;u.forEach(t=>{a&&t.removeEventListener("scroll",i),r&&t.removeEventListener("resize",i)}),null==g||g(),null==(t=v)||t.disconnect(),v=null,c&&cancelAnimationFrame(m)}}const yt=function(t){return void 0===t&&(t=0),{name:"offset",options:t,async fn(e){var i,s;const{x:n,y:o,placement:l,middlewareData:a}=e,r=await async function(t,e){const{placement:i,platform:s,elements:n}=t,o=await(null==s.isRTL?void 0:s.isRTL(n.floating)),l=c(i),a=p(i),r="y"===m(i),d=O.has(l)?-1:1,u=o&&r?-1:1,g=h(e,t);let{mainAxis:f,crossAxis:v,alignmentAxis:w}="number"==typeof g?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};return a&&"number"==typeof w&&(v="end"===a?-1*w:w),r?{x:v*u,y:f*d}:{x:f*d,y:v*u}}(e,t);return l===(null==(i=a.offset)?void 0:i.placement)&&null!=(s=a.arrow)&&s.alignmentOffset?{}:{x:n+r.x,y:o+r.y,data:{...r,placement:l}}}}},bt=function(t){return void 0===t&&(t={}),{name:"flip",options:t,async fn(e){var i,s;const{placement:n,middlewareData:o,rects:l,initialPlacement:a,platform:r,elements:d}=e,{mainAxis:g=!0,crossAxis:w=!0,fallbackPlacements:y,fallbackStrategy:b="bestFit",fallbackAxisSideDirection:I="none",flipAlignment:T=!0,...x}=h(t,e);if(null!=(i=o.arrow)&&i.alignmentOffset)return{};const O=c(n),E=m(a),A=c(a)===a,M=await(null==r.isRTL?void 0:r.isRTL(d.floating)),F=y||(A||!T?[C(a)]:function(t){const e=C(t);return[v(t),e,v(e)]}(a)),P="none"!==I;!y&&P&&F.push(...S(a,T,I,M));const R=[a,...F],D=await L(e,x),k=[];let $=(null==(s=o.flip)?void 0:s.overflows)||[];if(g&&k.push(D[O]),w){const t=function(t,e,i){void 0===i&&(i=!1);const s=p(t),n=f(t),o=u(n);let l="x"===n?s===(i?"end":"start")?"right":"left":"start"===s?"bottom":"top";return e.reference[o]>e.floating[o]&&(l=C(l)),[l,C(l)]}(n,l,M);k.push(D[t[0]],D[t[1]])}if($=[...$,{placement:n,overflows:k}],!k.every(t=>t<=0)){var H,q;const t=((null==(H=o.flip)?void 0:H.index)||0)+1,e=R[t];if(e){if(!("alignment"===w&&E!==m(e))||$.every(t=>m(t.placement)!==E||t.overflows[0]>0))return{data:{index:t,overflows:$},reset:{placement:e}}}let i=null==(q=$.filter(t=>t.overflows[0]<=0).sort((t,e)=>t.overflows[1]-e.overflows[1])[0])?void 0:q.placement;if(!i)switch(b){case"bestFit":{var W;const t=null==(W=$.filter(t=>{if(P){const e=m(t.placement);return e===E||"y"===e}return!0}).map(t=>[t.placement,t.overflows.filter(t=>t>0).reduce((t,e)=>t+e,0)]).sort((t,e)=>t[1]-e[1])[0])?void 0:W[0];t&&(i=t);break}case"initialPlacement":i=a}if(n!==i)return{reset:{placement:i}}}return{}}}},It=(t,e,i)=>{const s=new Map,n={platform:ft,...i},o={...n.platform,_c:s};return(async(t,e,i)=>{const{placement:s="bottom",strategy:n="absolute",middleware:o=[],platform:l}=i,a=o.filter(Boolean),r=await(null==l.isRTL?void 0:l.isRTL(e));let d=await l.getElementRects({reference:t,floating:e,strategy:n}),{x:h,y:c}=x(d,s,r),p=s,u={},g=0;for(let i=0;i<a.length;i++){const{name:o,fn:m}=a[i],{x:f,y:v,data:w,reset:y}=await m({x:h,y:c,initialPlacement:s,placement:p,strategy:n,middlewareData:u,rects:d,platform:l,elements:{reference:t,floating:e}});h=null!=f?f:h,c=null!=v?v:c,u={...u,[o]:{...u[o],...w}},y&&g<=50&&(g++,"object"==typeof y&&(y.placement&&(p=y.placement),y.rects&&(d=!0===y.rects?await l.getElementRects({reference:t,floating:e,strategy:n}):y.rects),({x:h,y:c}=x(d,p,r))),i=-1)}return{x:h,y:c,placement:p,strategy:n,middlewareData:u}})(t,e,{...n,platform:o})}},709:(t,e,i)=>{i.d(e,{A:()=>s});class s{constructor(t,e,i){this.el=t,this.options=e,this.events=i,this.el=t,this.options=e,this.events={}}createCollection(t,e){var i;t.push({id:(null===(i=null==e?void 0:e.el)||void 0===i?void 0:i.id)||t.length+1,element:e})}fireEvent(t,e=null){if(this.events.hasOwnProperty(t))return this.events[t](e)}on(t,e){this.events[t]=e}}}},e={};function i(s){var n=e[s];if(void 0!==n)return n.exports;var o=e[s]={exports:{}};return t[s](o,o.exports,i),o.exports}i.d=(t,e)=>{for(var s in e)i.o(e,s)&&!i.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:e[s]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var s={};i.d(s,{A:()=>c});var n=i(392),o=i(663),l=i(709),a=i(68),r=i(179),d=function(t,e,i,s){return new(i||(i=Promise))(function(n,o){function l(t){try{r(s.next(t))}catch(t){o(t)}}function a(t){try{r(s.throw(t))}catch(t){o(t)}}function r(t){var e;t.done?n(t.value):(e=t.value,e instanceof i?e:new i(function(t){t(e)})).then(l,a)}r((s=s.apply(t,e||[])).next())})};class h extends l.A{constructor(t,e){var i,s,n,o,l;super(t,e),this.disabledObserver=null,this.optionId=0;const a=t.getAttribute("data-select"),r=a?JSON.parse(a):{},d=Object.assign(Object.assign({},r),e);this.value=(null==d?void 0:d.value)||this.el.value||null,this.placeholder=(null==d?void 0:d.placeholder)||"Select...",this.hasSearch=(null==d?void 0:d.hasSearch)||!1,this.minSearchLength=null!==(i=null==d?void 0:d.minSearchLength)&&void 0!==i?i:0,this.preventSearchFocus=(null==d?void 0:d.preventSearchFocus)||!1,this.mode=(null==d?void 0:d.mode)||"default",this.viewport=void 0!==(null==d?void 0:d.viewport)?document.querySelector(null==d?void 0:d.viewport):null,this._isOpened=Boolean(null==d?void 0:d.isOpened)||!1,this.isMultiple=this.el.hasAttribute("multiple")||!1,this.isDisabled=this.el.hasAttribute("disabled")||!1,this.selectedItems=[],this.apiUrl=(null==d?void 0:d.apiUrl)||null,this.apiQuery=(null==d?void 0:d.apiQuery)||null,this.apiOptions=(null==d?void 0:d.apiOptions)||null,this.apiSearchQueryKey=(null==d?void 0:d.apiSearchQueryKey)||null,this.apiDataPart=(null==d?void 0:d.apiDataPart)||null,this.apiLoadMore=!0===(null==d?void 0:d.apiLoadMore)?{perPage:10,scrollThreshold:100}:"object"==typeof(null==d?void 0:d.apiLoadMore)&&null!==(null==d?void 0:d.apiLoadMore)&&{perPage:d.apiLoadMore.perPage||10,scrollThreshold:d.apiLoadMore.scrollThreshold||100},this.apiFieldsMap=(null==d?void 0:d.apiFieldsMap)||null,this.apiIconTag=(null==d?void 0:d.apiIconTag)||null,this.apiSelectedValues=(null==d?void 0:d.apiSelectedValues)||null,this.currentPage=0,this.isLoading=!1,this.hasMore=!0,this.wrapperClasses=(null==d?void 0:d.wrapperClasses)||null,this.toggleTag=(null==d?void 0:d.toggleTag)||null,this.toggleClasses=(null==d?void 0:d.toggleClasses)||null,this.toggleCountText=void 0===typeof(null==d?void 0:d.toggleCountText)?null:d.toggleCountText,this.toggleCountTextPlacement=(null==d?void 0:d.toggleCountTextPlacement)||"postfix",this.toggleCountTextMinItems=(null==d?void 0:d.toggleCountTextMinItems)||1,this.toggleCountTextMode=(null==d?void 0:d.toggleCountTextMode)||"countAfterLimit",this.toggleSeparators={items:(null===(s=null==d?void 0:d.toggleSeparators)||void 0===s?void 0:s.items)||", ",betweenItemsAndCounter:(null===(n=null==d?void 0:d.toggleSeparators)||void 0===n?void 0:n.betweenItemsAndCounter)||"and"},this.tagsItemTemplate=(null==d?void 0:d.tagsItemTemplate)||null,this.tagsItemClasses=(null==d?void 0:d.tagsItemClasses)||null,this.tagsInputId=(null==d?void 0:d.tagsInputId)||null,this.tagsInputClasses=(null==d?void 0:d.tagsInputClasses)||null,this.dropdownTag=(null==d?void 0:d.dropdownTag)||null,this.dropdownClasses=(null==d?void 0:d.dropdownClasses)||null,this.dropdownDirectionClasses=(null==d?void 0:d.dropdownDirectionClasses)||null,this.dropdownSpace=(null==d?void 0:d.dropdownSpace)||10,this.dropdownPlacement=(null==d?void 0:d.dropdownPlacement)||null,this.dropdownVerticalFixedPlacement=(null==d?void 0:d.dropdownVerticalFixedPlacement)||null,this.dropdownScope=(null==d?void 0:d.dropdownScope)||"parent",this.dropdownAutoPlacement=(null==d?void 0:d.dropdownAutoPlacement)||!1,this.searchTemplate=(null==d?void 0:d.searchTemplate)||null,this.searchWrapperTemplate=(null==d?void 0:d.searchWrapperTemplate)||null,this.searchWrapperClasses=(null==d?void 0:d.searchWrapperClasses)||"bg-base-100 sticky top-0 mb-2 px-2 pt-3",this.searchId=(null==d?void 0:d.searchId)||null,this.searchLimit=(null==d?void 0:d.searchLimit)||1/0,this.isSearchDirectMatch=void 0===(null==d?void 0:d.isSearchDirectMatch)||(null==d?void 0:d.isSearchDirectMatch),this.searchClasses=(null==d?void 0:d.searchClasses)||"border-base-content/40 focus:border-primary focus:outline-primary bg-base-100 block w-full rounded-field border px-3 py-2 text-base focus:outline-1",this.searchPlaceholder=(null==d?void 0:d.searchPlaceholder)||"Search...",this.searchNoResultTemplate=(null==d?void 0:d.searchNoResultTemplate)||"<span></span>",this.searchNoResultText=(null==d?void 0:d.searchNoResultText)||"No results found",this.searchNoResultClasses=(null==d?void 0:d.searchNoResultClasses)||"block advance-select-option",this.optionAllowEmptyOption=void 0!==(null==d?void 0:d.optionAllowEmptyOption)&&(null==d?void 0:d.optionAllowEmptyOption),this.optionTemplate=(null==d?void 0:d.optionTemplate)||null,this.optionTag=(null==d?void 0:d.optionTag)||null,this.optionClasses=(null==d?void 0:d.optionClasses)||null,this.extraMarkup=(null==d?void 0:d.extraMarkup)||null,this.descriptionClasses=(null==d?void 0:d.descriptionClasses)||null,this.iconClasses=(null==d?void 0:d.iconClasses)||null,this.isAddTagOnEnter=null===(o=null==d?void 0:d.isAddTagOnEnter)||void 0===o||o,this.isSelectedOptionOnTop=null!==(l=null==d?void 0:d.isSelectedOptionOnTop)&&void 0!==l&&l,this.animationInProcess=!1,this.selectOptions=[],this.remoteOptions=[],this.tagsInputHelper=null,this.disabledObserver=new MutationObserver(t=>{t.some(t=>"disabled"===t.attributeName)&&this.setDisabledState(this.el.hasAttribute("disabled"))}),this.disabledObserver.observe(this.el,{attributes:!0,attributeFilter:["disabled"]}),this.init()}wrapperClick(t){t.target.closest("[data-select-dropdown]")||t.target.closest("[data-tag-value]")||this.tagsInput.focus()}toggleClick(){if(this.isDisabled)return!1;this.toggleFn()}tagsInputFocus(){this._isOpened||this.open()}tagsInputInput(){this.calculateInputWidth()}tagsInputInputSecond(t){this.apiUrl||this.searchOptions(t.target.value)}tagsInputKeydown(t){if("Enter"===t.key&&this.isAddTagOnEnter){const e=t.target.value;if(this.selectOptions.find(t=>t.val===e))return!1;this.addSelectOption(e,e),this.buildOption(e,e),this.buildOriginalOption(e,e),this.dropdown.querySelector(`[data-value="${e}"]`).click(),this.resetTagsInputField()}}searchInput(t){const e=t.target.value;this.apiUrl?this.remoteSearch(e):this.searchOptions(e)}setValue(t){if(this.value=t,this.clearSelections(),Array.isArray(t))if("tags"===this.mode){this.unselectMultipleItems(),this.selectMultipleItems(),this.selectedItems=[];this.wrapper.querySelectorAll("[data-tag-value]").forEach(t=>t.remove()),this.setTagsItems(),this.reassignTagsInputPlaceholder(this.hasValue()?"":this.placeholder)}else this.toggleTextWrapper.innerHTML=this.hasValue()?this.stringFromValue():this.placeholder,this.unselectMultipleItems(),this.selectMultipleItems();else this.setToggleTitle(),this.toggle.querySelector("[data-icon]")&&this.setToggleIcon(),this.toggle.querySelector("[data-title]")&&this.setToggleTitle(),this.selectSingleItem()}setDisabledState(t){this.isDisabled=t;const e="tags"===this.mode?this.wrapper:this.toggle;null==e||e.classList.toggle("disabled",t),t&&this.isOpened()&&this.close()}hasValue(){return this.isMultiple?Array.isArray(this.value)&&this.value.length>0&&this.value.some(t=>null!=t&&""!==t):null!==this.value&&void 0!==this.value&&""!==this.value}init(){this.createCollection(window.$hsSelectCollection,this),this.build(),"undefined"!=typeof window&&(window.HSAccessibilityObserver||(window.HSAccessibilityObserver=new a.A),this.setupAccessibility())}build(){if(this.el.style.display="none",this.el.children&&Array.from(this.el.children).filter(t=>this.optionAllowEmptyOption||!this.optionAllowEmptyOption&&t.value&&""!==t.value).forEach(t=>{const e=t.getAttribute("data-select-option");this.selectOptions=[...this.selectOptions,{title:t.textContent,val:t.value,disabled:t.disabled,options:"undefined"!==e?JSON.parse(e):null}]}),this.optionAllowEmptyOption&&!this.value&&(this.value=""),this.isMultiple){const t=Array.from(this.el.children).filter(t=>t.selected),e=[];t.forEach(t=>{e.push(t.value)}),this.value=e}this.buildWrapper(),"tags"===this.mode?this.buildTags():this.buildToggle(),this.buildDropdown(),this.extraMarkup&&this.buildExtraMarkup()}buildWrapper(){this.wrapper=document.createElement("div"),this.wrapper.classList.add("advance-select","relative"),this.setDisabledState(this.isDisabled),"tags"===this.mode&&(this.onWrapperClickListener=t=>this.wrapperClick(t),this.wrapper.addEventListener("click",this.onWrapperClickListener)),this.wrapperClasses&&(0,n.en)(this.wrapperClasses,this.wrapper),this.el.before(this.wrapper),this.wrapper.append(this.el)}buildExtraMarkup(){const t=t=>{const e=(0,n.fc)(t);return this.wrapper.append(e),e},e=t=>{t.classList.contains("--prevent-click")||t.addEventListener("click",t=>{t.stopPropagation(),this.isDisabled||this.toggleFn()})};if(Array.isArray(this.extraMarkup))this.extraMarkup.forEach(i=>{const s=t(i);e(s)});else{const i=t(this.extraMarkup);e(i)}}buildToggle(){var t,e;let i,s;this.toggleTextWrapper=document.createElement("span"),this.toggleTextWrapper.classList.add("truncate"),this.toggle=(0,n.fc)(this.toggleTag||"<div></div>"),i=this.toggle.querySelector("[data-icon]"),s=this.toggle.querySelector("[data-title]"),!this.isMultiple&&i&&this.setToggleIcon(),!this.isMultiple&&s&&this.setToggleTitle(),this.isMultiple?this.toggleTextWrapper.innerHTML=this.hasValue()?this.stringFromValue():this.placeholder:this.toggleTextWrapper.innerHTML=(null===(t=this.getItemByValue(this.value))||void 0===t?void 0:t.title)||this.placeholder,s||this.toggle.append(this.toggleTextWrapper),this.toggleClasses&&(0,n.en)(this.toggleClasses,this.toggle),this.isDisabled&&this.toggle.classList.add("disabled"),this.wrapper&&this.wrapper.append(this.toggle),(null===(e=this.toggle)||void 0===e?void 0:e.ariaExpanded)&&(this._isOpened?this.toggle.ariaExpanded="true":this.toggle.ariaExpanded="false"),this.onToggleClickListener=()=>this.toggleClick(),this.toggle.addEventListener("click",this.onToggleClickListener)}setToggleIcon(){var t;const e=this.getItemByValue(this.value),i=this.toggle.querySelector("[data-icon]");if(i){i.innerHTML="";const s=(0,n.fc)(this.apiUrl&&this.apiIconTag?this.apiIconTag||"":(null===(t=null==e?void 0:e.options)||void 0===t?void 0:t.icon)||"");this.value&&this.apiUrl&&this.apiIconTag&&e[this.apiFieldsMap.icon]&&(s.src=e[this.apiFieldsMap.icon]||""),i.append(s),(null==s?void 0:s.src)?i.classList.remove("hidden"):i.classList.add("hidden")}}setToggleTitle(){const t=this.toggle.querySelector("[data-title]");let e=this.placeholder;if(this.optionAllowEmptyOption&&""===this.value){const t=this.selectOptions.find(t=>""===t.val);e=(null==t?void 0:t.title)||this.placeholder}else if(this.value)if(this.apiUrl){const t=this.remoteOptions.find(t=>`${t[this.apiFieldsMap.val]}`===this.value||`${t[this.apiFieldsMap.title]}`===this.value);t&&(e=t[this.apiFieldsMap.title])}else{const t=this.selectOptions.find(t=>t.val===this.value);t&&(e=t.title)}t?(t.innerHTML=e,t.classList.add("truncate"),this.toggle.append(t)):this.toggleTextWrapper.innerHTML=e}buildTags(){this.isDisabled&&this.wrapper.classList.add("disabled"),this.wrapper.setAttribute("tabindex","0"),this.buildTagsInput(),this.setTagsItems()}reassignTagsInputPlaceholder(t){this.tagsInput.placeholder=t,this.tagsInputHelper.innerHTML=t,this.calculateInputWidth()}buildTagsItem(t){var e,i,s,o,l;const a=this.getItemByValue(t);let r,d,h,c;const p=document.createElement("div");if(p.setAttribute("data-tag-value",t),this.tagsItemClasses&&(0,n.en)(this.tagsItemClasses,p),this.tagsItemTemplate&&(r=(0,n.fc)(this.tagsItemTemplate),p.append(r)),(null===(e=null==a?void 0:a.options)||void 0===e?void 0:e.icon)||this.apiIconTag){const t=(0,n.fc)(this.apiUrl&&this.apiIconTag?this.apiIconTag:null===(i=null==a?void 0:a.options)||void 0===i?void 0:i.icon);this.apiUrl&&this.apiIconTag&&a[this.apiFieldsMap.icon]&&(t.src=a[this.apiFieldsMap.icon]||""),c=r?r.querySelector("[data-icon]"):document.createElement("span"),c.append(t),r||p.append(c)}!r||!r.querySelector("[data-icon]")||(null===(s=null==a?void 0:a.options)||void 0===s?void 0:s.icon)||this.apiUrl||this.apiIconTag||a[null===(o=this.apiFieldsMap)||void 0===o?void 0:o.icon]||r.querySelector("[data-icon]").classList.add("hidden"),d=r?r.querySelector("[data-title]"):document.createElement("span"),this.apiUrl&&(null===(l=this.apiFieldsMap)||void 0===l?void 0:l.title)&&a[this.apiFieldsMap.title]?d.textContent=a[this.apiFieldsMap.title]:d.textContent=a.title||"",r||p.append(d),r?h=r.querySelector("[data-remove]"):(h=document.createElement("span"),h.textContent="X",p.append(h)),h.addEventListener("click",()=>{this.value=this.value.filter(e=>e!==t),this.selectedItems=this.selectedItems.filter(e=>e!==t),this.hasValue()||this.reassignTagsInputPlaceholder(this.placeholder),this.unselectMultipleItems(),this.selectMultipleItems(),p.remove(),this.triggerChangeEventForNativeSelect()}),this.wrapper.append(p)}getItemByValue(t){return this.apiUrl?this.remoteOptions.find(e=>`${e[this.apiFieldsMap.val]}`===t||e[this.apiFieldsMap.title]===t):this.selectOptions.find(e=>e.val===t)}setTagsItems(){if(this.value){(Array.isArray(this.value)?this.value:null!=this.value?[this.value]:[]).forEach(t=>{this.selectedItems.includes(t)||this.buildTagsItem(t),this.selectedItems=this.selectedItems.includes(t)?this.selectedItems:[...this.selectedItems,t]})}this._isOpened&&this.floatingUIInstance&&this.floatingUIInstance.update()}buildTagsInput(){this.tagsInput=document.createElement("input"),this.tagsInputId&&(this.tagsInput.id=this.tagsInputId),this.tagsInputClasses&&(0,n.en)(this.tagsInputClasses,this.tagsInput),this.tagsInput.setAttribute("tabindex","-1"),this.onTagsInputFocusListener=()=>this.tagsInputFocus(),this.onTagsInputInputListener=()=>this.tagsInputInput(),this.onTagsInputInputSecondListener=(0,n.sg)(t=>this.tagsInputInputSecond(t)),this.onTagsInputKeydownListener=t=>this.tagsInputKeydown(t),this.tagsInput.addEventListener("focus",this.onTagsInputFocusListener),this.tagsInput.addEventListener("input",this.onTagsInputInputListener),this.tagsInput.addEventListener("input",this.onTagsInputInputSecondListener),this.tagsInput.addEventListener("keydown",this.onTagsInputKeydownListener),this.wrapper.append(this.tagsInput),setTimeout(()=>{this.adjustInputWidth(),this.reassignTagsInputPlaceholder(this.hasValue()?"":this.placeholder)})}buildDropdown(){this.dropdown=(0,n.fc)(this.dropdownTag||"<div></div>"),this.dropdown.setAttribute("data-select-dropdown",""),"parent"===this.dropdownScope&&(this.dropdown.classList.add("absolute"),this.dropdownVerticalFixedPlacement||this.dropdown.classList.add("top-full")),this.dropdown.role="listbox",this.dropdown.tabIndex=-1,this.dropdown.ariaOrientation="vertical",this._isOpened||this.dropdown.classList.add("hidden"),this.dropdownClasses&&(0,n.en)(this.dropdownClasses,this.dropdown),this.wrapper&&this.wrapper.append(this.dropdown),this.dropdown&&this.hasSearch&&this.buildSearch(),this.selectOptions&&this.selectOptions.forEach((t,e)=>this.buildOption(t.title,t.val,t.disabled,t.selected,t.options,`${e}`)),this.apiUrl&&this.optionsFromRemoteData(),this.apiUrl||(this.sortElements(this.el,"option"),this.sortElements(this.dropdown,"[data-value]")),"window"===this.dropdownScope&&this.buildFloatingUI(),this.dropdown&&this.apiLoadMore&&this.setupInfiniteScroll()}setupInfiniteScroll(){this.dropdown.addEventListener("scroll",this.handleScroll.bind(this))}handleScroll(){return d(this,void 0,void 0,function*(){if(!this.dropdown||this.isLoading||!this.hasMore||!this.apiLoadMore)return;const{scrollTop:t,scrollHeight:e,clientHeight:i}=this.dropdown;e-t-i<("object"==typeof this.apiLoadMore?this.apiLoadMore.scrollThreshold:100)&&(yield this.loadMore())})}loadMore(){return d(this,void 0,void 0,function*(){var t,e,i,s;if(this.apiUrl&&!this.isLoading&&this.hasMore&&this.apiLoadMore){this.isLoading=!0;try{const n=new URL(this.apiUrl),o=(null===(t=this.apiFieldsMap)||void 0===t?void 0:t.page)||(null===(e=this.apiFieldsMap)||void 0===e?void 0:e.offset)||"page",l=!!(null===(i=this.apiFieldsMap)||void 0===i?void 0:i.offset),a="object"==typeof this.apiLoadMore?this.apiLoadMore.perPage:10;if(l){const t=this.currentPage*a;n.searchParams.set(o,t.toString()),this.currentPage++}else this.currentPage++,n.searchParams.set(o,this.currentPage.toString());n.searchParams.set((null===(s=this.apiFieldsMap)||void 0===s?void 0:s.limit)||"limit",a.toString());const r=yield fetch(n.toString(),this.apiOptions||{}),d=yield r.json(),h=this.apiDataPart?d[this.apiDataPart]:d.results,c=d.count||0,p=this.currentPage*a;h&&h.length>0?(this.remoteOptions=[...this.remoteOptions||[],...h],this.buildOptionsFromRemoteData(h),this.hasMore=p<c):this.hasMore=!1}catch(t){this.hasMore=!1,console.error("Error loading more options:",t)}finally{this.isLoading=!1}}})}buildFloatingUI(){document.body.appendChild(this.dropdown);const t="tags"===this.mode?this.wrapper:this.toggle,e=[(0,o.cY)(0)];this.dropdownAutoPlacement&&e.push((0,o.UU)({fallbackPlacements:["bottom-start","bottom-end","top-start","top-end"]}));const i={placement:r.lP[this.dropdownPlacement]||"bottom",strategy:"fixed",middleware:e},s=()=>{(0,o.rD)(t,this.dropdown,i).then(({x:t,y:e,placement:i})=>{Object.assign(this.dropdown.style,{position:"fixed",left:`${t}px`,top:`${e}px`,["margin"+("bottom"===i?"Top":"top"===i?"Bottom":"right"===i?"Left":"Right")]:`${this.dropdownSpace}px`}),this.dropdown.setAttribute("data-placement",i)})};s();const n=(0,o.ll)(t,this.dropdown,s);this.floatingUIInstance={update:s,destroy:n}}updateDropdownWidth(){const t="tags"===this.mode?this.wrapper:this.toggle;this.dropdown.style.width=`${t.clientWidth}px`}buildSearch(){let t;this.searchWrapper=(0,n.fc)(this.searchWrapperTemplate||"<div></div>"),this.searchWrapperClasses&&(0,n.en)(this.searchWrapperClasses,this.searchWrapper),t=this.searchWrapper.querySelector("[data-input]");const e=(0,n.fc)(this.searchTemplate||'<input type="text">');this.search="INPUT"===e.tagName?e:e.querySelector(":scope input"),this.search.placeholder=this.searchPlaceholder,this.searchClasses&&(0,n.en)(this.searchClasses,this.search),this.searchId&&(this.search.id=this.searchId),this.onSearchInputListener=(0,n.sg)(t=>this.searchInput(t)),this.search.addEventListener("input",this.onSearchInputListener),t?t.append(e):this.searchWrapper.append(e),this.dropdown.append(this.searchWrapper)}buildOption(t,e,i=!1,s=!1,o,l="1",a){var r;let d=null,h=null,c=null,p=null;const u=(0,n.fc)(this.optionTag||"<div></div>");if(u.setAttribute("data-value",e),u.setAttribute("data-title-value",t),u.setAttribute("tabIndex",l),u.classList.add("cursor-pointer"),u.setAttribute("data-id",a||`${this.optionId}`),a||this.optionId++,i&&u.classList.add("disabled"),s&&(this.isMultiple?this.value=[...this.value,e]:this.value=e),this.optionTemplate&&(d=(0,n.fc)(this.optionTemplate),u.append(d)),d?(h=d.querySelector("[data-title]"),h.textContent=t||""):u.textContent=t||"",o){if(o.icon){const e=(0,n.fc)(null!==(r=this.apiIconTag)&&void 0!==r?r:o.icon);if(e.classList.add("max-w-full"),this.apiUrl&&(e.setAttribute("alt",t),e.setAttribute("src",o.icon)),d)c=d.querySelector("[data-icon]"),c.append(e);else{const t=(0,n.fc)("<div></div>");this.iconClasses&&(0,n.en)(this.iconClasses,t),t.append(e),u.append(t)}}if(o.description)if(d)p=d.querySelector("[data-description]"),p&&p.append(o.description);else{const t=(0,n.fc)("<div></div>");t.textContent=o.description,this.descriptionClasses&&(0,n.en)(this.descriptionClasses,t),u.append(t)}}d&&d.querySelector("[data-icon]")&&!o&&!(null==o?void 0:o.icon)&&d.querySelector("[data-icon]").classList.add("hidden"),this.value&&(this.isMultiple?this.value.includes(e):this.value===e)&&u.classList.add("selected"),i||u.addEventListener("click",()=>this.onSelectOption(e)),this.optionClasses&&(0,n.en)(this.optionClasses,u),this.dropdown&&this.dropdown.append(u),s&&this.setNewValue()}buildOptionFromRemoteData(t,e,i=!1,s=!1,n="1",o,l){n?this.buildOption(t,e,i,s,l,n,o):alert("ID parameter is required for generating remote options! Please check your API endpoint have it.")}buildOptionsFromRemoteData(t){t.forEach((t,e)=>{let i=null,s="",n="";const o={id:"",val:"",title:"",icon:null,description:null,rest:{}};Object.keys(t).forEach(e=>{var l;t[this.apiFieldsMap.id]&&(i=t[this.apiFieldsMap.id]),t[this.apiFieldsMap.val]&&(n=`${t[this.apiFieldsMap.val]}`),t[this.apiFieldsMap.title]&&(s=t[this.apiFieldsMap.title],t[this.apiFieldsMap.val]||(n=s)),t[this.apiFieldsMap.icon]&&(o.icon=t[this.apiFieldsMap.icon]),t[null===(l=this.apiFieldsMap)||void 0===l?void 0:l.description]&&(o.description=t[this.apiFieldsMap.description]),o.rest[e]=t[e]});if(!this.dropdown.querySelector(`[data-value="${n}"]`)){const t=!!this.apiSelectedValues&&(Array.isArray(this.apiSelectedValues)?this.apiSelectedValues.includes(n):this.apiSelectedValues===n);this.buildOriginalOption(s,n,i,!1,t,o),this.buildOptionFromRemoteData(s,n,!1,t,`${e}`,i,o),t&&(this.isMultiple?(this.value||(this.value=[]),Array.isArray(this.value)&&(this.value=[...this.value,n])):this.value=n)}}),this.sortElements(this.el,"option"),this.sortElements(this.dropdown,"[data-value]")}optionsFromRemoteData(){return d(this,arguments,void 0,function*(t=""){const e=yield this.apiRequest(t);this.remoteOptions=e,e.length?this.buildOptionsFromRemoteData(this.remoteOptions):console.log("There is no data were responded!")})}apiRequest(){return d(this,arguments,void 0,function*(t=""){var e,i,s,n,o,l,a,r,d,h;try{const c=new URL(this.apiUrl),p=new URLSearchParams(null!==(e=this.apiQuery)&&void 0!==e?e:""),u=null!==(i=this.apiOptions)&&void 0!==i?i:{},g=null!==(s=this.apiSearchQueryKey)&&void 0!==s?s:"q",m=(null!=t?t:"").trim().toLowerCase();if(""!==m&&p.set(g,encodeURIComponent(m)),this.apiLoadMore){const t="object"==typeof this.apiLoadMore?this.apiLoadMore.perPage:10,e=null!==(a=null!==(o=null===(n=this.apiFieldsMap)||void 0===n?void 0:n.page)&&void 0!==o?o:null===(l=this.apiFieldsMap)||void 0===l?void 0:l.offset)&&void 0!==a?a:"page",i=null!==(d=null===(r=this.apiFieldsMap)||void 0===r?void 0:r.limit)&&void 0!==d?d:"limit",s=Boolean(null===(h=this.apiFieldsMap)||void 0===h?void 0:h.offset);p.delete(e),p.delete(i),p.set(e,s?"0":"1"),p.set(i,String(t))}c.search=p.toString();const f=yield fetch(c.toString(),u),v=yield f.json();return this.apiDataPart?v[this.apiDataPart]:v}catch(t){console.error(t)}})}sortElements(t,e){const i=Array.from(t.querySelectorAll(e));this.isSelectedOptionOnTop&&i.sort((t,e)=>{const i=t.classList.contains("selected")||t.hasAttribute("selected"),s=e.classList.contains("selected")||e.hasAttribute("selected");return i&&!s?-1:!i&&s?1:0}),i.forEach(e=>t.appendChild(e))}remoteSearch(t){return d(this,void 0,void 0,function*(){if(t.length<=this.minSearchLength){const t=yield this.apiRequest("");return this.remoteOptions=t,Array.from(this.dropdown.querySelectorAll("[data-value]")).forEach(t=>t.remove()),Array.from(this.el.querySelectorAll("option[value]")).forEach(t=>{t.remove()}),t.length?this.buildOptionsFromRemoteData(t):console.log("No data responded!"),!1}const e=yield this.apiRequest(t);this.remoteOptions=e;let i=e.map(t=>`${t.id}`),s=null;const n=this.dropdown.querySelectorAll("[data-value]");this.el.querySelectorAll("[data-select-option]").forEach(t=>{var e;const s=t.getAttribute("data-id");i.includes(s)||(null===(e=this.value)||void 0===e?void 0:e.includes(t.value))||this.destroyOriginalOption(t.value)}),n.forEach(t=>{var e;const s=t.getAttribute("data-id");i.includes(s)||(null===(e=this.value)||void 0===e?void 0:e.includes(t.getAttribute("data-value")))?i=i.filter(t=>t!==s):this.destroyOption(t.getAttribute("data-value"))}),s=e.filter(t=>i.includes(`${t.id}`)),s.length?this.buildOptionsFromRemoteData(s):console.log("No data responded!")})}destroyOption(t){const e=this.dropdown.querySelector(`[data-value="${t}"]`);if(!e)return!1;e.remove()}buildOriginalOption(t,e,i,s,o,l){const a=(0,n.fc)("<option></option>");a.setAttribute("value",e),s&&a.setAttribute("disabled","disabled"),o&&a.setAttribute("selected","selected"),i&&a.setAttribute("data-id",i),a.setAttribute("data-select-option",JSON.stringify(l)),a.innerText=t,this.el.append(a)}destroyOriginalOption(t){const e=this.el.querySelector(`[value="${t}"]`);if(!e)return!1;e.remove()}buildTagsInputHelper(){this.tagsInputHelper=document.createElement("span"),this.tagsInputHelper.style.fontSize=window.getComputedStyle(this.tagsInput).fontSize,this.tagsInputHelper.style.fontFamily=window.getComputedStyle(this.tagsInput).fontFamily,this.tagsInputHelper.style.fontWeight=window.getComputedStyle(this.tagsInput).fontWeight,this.tagsInputHelper.style.letterSpacing=window.getComputedStyle(this.tagsInput).letterSpacing,this.tagsInputHelper.style.visibility="hidden",this.tagsInputHelper.style.whiteSpace="pre",this.tagsInputHelper.style.position="absolute",this.wrapper.appendChild(this.tagsInputHelper)}calculateInputWidth(){this.tagsInputHelper.textContent=this.tagsInput.value||this.tagsInput.placeholder;const t=parseInt(window.getComputedStyle(this.tagsInput).paddingLeft)+parseInt(window.getComputedStyle(this.tagsInput).paddingRight),e=parseInt(window.getComputedStyle(this.tagsInput).borderLeftWidth)+parseInt(window.getComputedStyle(this.tagsInput).borderRightWidth),i=this.tagsInputHelper.offsetWidth+t+e,s=this.wrapper.offsetWidth-(parseInt(window.getComputedStyle(this.wrapper).paddingLeft)+parseInt(window.getComputedStyle(this.wrapper).paddingRight));this.tagsInput.style.width=`${Math.min(i,s)+2}px`}adjustInputWidth(){this.buildTagsInputHelper(),this.calculateInputWidth()}onSelectOption(t){if(this.clearSelections(),this.isMultiple?(Array.isArray(this.value)||(this.value=[]),this.value=this.value.includes(t)?this.value.filter(e=>e!==t):[...this.value,t],this.selectMultipleItems(),this.setNewValue()):(this.value=t,this.selectSingleItem(),this.setNewValue()),this.fireEvent("change",this.value),"tags"===this.mode){const t=this.selectedItems.filter(t=>!this.value.includes(t));t.length&&t.forEach(t=>{this.selectedItems=this.selectedItems.filter(e=>e!==t),this.wrapper.querySelector(`[data-tag-value="${t}"]`).remove()}),this.resetTagsInputField()}this.isMultiple||(this.toggle.querySelector("[data-icon]")&&this.setToggleIcon(),this.toggle.querySelector("[data-title]")&&this.setToggleTitle(),this.close(!0)),this.hasValue()||"tags"!==this.mode||this.reassignTagsInputPlaceholder(this.placeholder),this._isOpened&&"tags"===this.mode&&this.tagsInput&&this.tagsInput.focus(),this.triggerChangeEventForNativeSelect()}triggerChangeEventForNativeSelect(){const t=new Event("change",{bubbles:!0});this.el.dispatchEvent(t),(0,n.JD)("change.advance.select",this.el,this.value)}addSelectOption(t,e,i,s,n){this.selectOptions=[...this.selectOptions,{title:t,val:e,disabled:i,selected:s,options:n}]}removeSelectOption(t,e=!1){if(!!!this.selectOptions.some(e=>e.val===t))return!1;this.selectOptions=this.selectOptions.filter(e=>e.val!==t),this.value=e?this.value.filter(e=>e!==t):t}resetTagsInputField(){this.tagsInput.value="",this.reassignTagsInputPlaceholder(""),this.searchOptions("")}clearSelections(){Array.from(this.dropdown.children).forEach(t=>{t.classList.contains("selected")&&t.classList.remove("selected")}),Array.from(this.el.children).forEach(t=>{t.selected&&(t.selected=!1)})}setNewValue(){if("tags"===this.mode)this.setTagsItems();else if(this.optionAllowEmptyOption&&""===this.value){const t=this.selectOptions.find(t=>""===t.val);this.toggleTextWrapper.innerHTML=(null==t?void 0:t.title)||this.placeholder}else if(this.hasValue())if(this.apiUrl){const t=this.dropdown.querySelector(`[data-value="${this.value}"]`);if(t)this.toggleTextWrapper.innerHTML=t.getAttribute("data-title-value")||this.placeholder;else{const t=this.remoteOptions.find(t=>(t[this.apiFieldsMap.val]?`${t[this.apiFieldsMap.val]}`:t[this.apiFieldsMap.title])===this.value);this.toggleTextWrapper.innerHTML=t?`${t[this.apiFieldsMap.title]}`:this.stringFromValue()}}else this.toggleTextWrapper.innerHTML=this.stringFromValue();else this.toggleTextWrapper.innerHTML=this.placeholder}stringFromValueBasic(t){var e;const i=[];let s="";if(t.forEach(t=>{this.isMultiple?Array.isArray(this.value)&&this.value.includes(t.val)&&i.push(t.title):this.value===t.val&&i.push(t.title)}),void 0!==this.toggleCountText&&null!==this.toggleCountText&&i.length>=this.toggleCountTextMinItems)if("nItemsAndCount"===this.toggleCountTextMode){const t=i.slice(0,this.toggleCountTextMinItems-1),n=[t.join(this.toggleSeparators.items)],o=""+(i.length-t.length);if((null===(e=null==this?void 0:this.toggleSeparators)||void 0===e?void 0:e.betweenItemsAndCounter)&&n.push(this.toggleSeparators.betweenItemsAndCounter),this.toggleCountText)switch(this.toggleCountTextPlacement){case"postfix-no-space":n.push(`${o}${this.toggleCountText}`);break;case"prefix-no-space":n.push(`${this.toggleCountText}${o}`);break;case"prefix":n.push(`${this.toggleCountText} ${o}`);break;default:n.push(`${o} ${this.toggleCountText}`)}s=n.join(" ")}else s=`${i.length} ${this.toggleCountText}`;else s=i.join(this.toggleSeparators.items);return s}stringFromValueRemoteData(){const t=this.dropdown.querySelectorAll("[data-title-value]"),e=[];let i="";if(t.forEach(t=>{const i=t.getAttribute("data-value"),s=t.getAttribute("data-title-value");this.isMultiple?Array.isArray(this.value)&&this.value.includes(i)&&e.push(s):this.value===i&&e.push(s)}),this.toggleCountText&&""!==this.toggleCountText&&e.length>=this.toggleCountTextMinItems)if("nItemsAndCount"===this.toggleCountTextMode){const t=e.slice(0,this.toggleCountTextMinItems-1);i=`${t.join(this.toggleSeparators.items)} ${this.toggleSeparat