@davicotico/iconpicker
Version:
Vanilla Javascript Icon Picker (made with Typescript)
26 lines (18 loc) • 50.1 kB
JavaScript
(function(_,G){typeof exports=="object"&&typeof module<"u"?G(exports):typeof define=="function"&&define.amd?define(["exports"],G):(_=typeof globalThis<"u"?globalThis:_||self,G(_.IconPicker={}))})(this,function(_){"use strict";var yi=Object.defineProperty;var bi=(_,G,vt)=>G in _?yi(_,G,{enumerable:!0,configurable:!0,writable:!0,value:vt}):_[G]=vt;var g=(_,G,vt)=>(bi(_,typeof G!="symbol"?G+"":G,vt),vt);/**!
IconPicker 1.0.0 | Vanilla Javascript Icon Picker (made with Typescript)
@author David Tomas Ticona Saravia (https://davidticona.com)
@version 1.0.0
@license MIT
*/class G{constructor(){g(this,"eventTarget",new EventTarget)}on(e,n){this.eventTarget.addEventListener(e,r=>{n(r.detail)})}emit(e,n){const r=new CustomEvent(e,{detail:n});this.eventTarget.dispatchEvent(r)}}const vt={ENTER:"Enter",ESCAPE:"Escape"},Tn='<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 16 21" style="width: 16px; height: 21.6px; vertical-align: middle;"><path d="M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z"/></svg>',Me={inputPlaceholder:"Search...",iconButtonClass:"ip-icon-button",selectedIconButtonClass:"ip-selected-icon-button",navButtonClass:"ip-nav-button",inputClass:"ip-input-search",arrowPrevIconClass:"",arrowNextIconClass:"",templateFooter:"[{start} - {end}] of {total}",placement:"right",popoverTheme:"dark"};function he(t,e=""){const n=document.createElement("button");return n.className=e,typeof t=="string"?(n.innerHTML=t,n):(n.append(t),n)}function Jt(t){const e=document.createElement("i");return e.className=t,e}function Pt(t,e){let n=document.createElement("div");return n.style.width=e,n.className=t,n}function Bn(t){let e=Jt("");e.style.display="inline-block",t.append(e);let n=document.createElement("span");return n.innerHTML=Tn,n.style.marginLeft="10px",t.append(n),t}function jt(t){for(;t.firstChild;)t.removeChild(t.firstChild)}class An{constructor(e){g(this,"container");g(this,"template");this.container=Pt("ip-footer","100%"),this.container.style.marginTop="8px",this.container.style.marginBottom="8px",this.container.style.textAlign="center",this.template=e}update(e,n,r,o){let a=e*n+1,u=a-1+r;this.container.innerHTML=this.interpolate(this.template,a,u,o)}interpolate(e,n,r,o){var a={"{start}":n,"{end}":r,"{total}":o},u=new RegExp(Object.keys(a).join("|"),"gi");return e.replace(u,c=>a[c].toString())}getElement(){return this.container}}class Ln{constructor(e,n,r){g(this,"container");g(this,"buttonClass","");g(this,"selectedButtonClass","");g(this,"selected","");g(this,"iconButtonEvent");g(this,"currentGroup",[]);this.container=Pt("icon-button-group","100%"),this.container.style.display="grid",this.container.style.gridTemplateColumns="repeat(auto-fit, minmax(40px, 1fr))",this.container.style.gap="8px",this.buttonClass=n,this.selectedButtonClass=r,this.iconButtonEvent=e}setSelected(e){this.selected=e}updateIconButtons(e){this.currentGroup=e,e.forEach(n=>{let r=n==this.selected?this.selectedButtonClass:this.buttonClass,o=he(Jt(n),r);o.addEventListener("click",()=>{this.iconButtonEvent.emit("select",{icon:n,button:o})}),this.container.append(o)})}refresh(){jt(this.container),this.updateIconButtons(this.currentGroup)}getElement(){return this.container}}class Dn{constructor(e,n){g(this,"items");g(this,"totalItems");g(this,"sizeGroup");g(this,"groups",[]);g(this,"totalGroups",0);g(this,"index",0);this.sizeGroup=n,this.items=e,this.totalItems=this.items.length,this.groups=this.creatGroups(this.items,this.sizeGroup),this.totalGroups=this.groups.length}previous(){return this.isFirst()?this.groups[0]:(this.index--,this.groups[this.index])}next(){return this.isLast()?this.groups[this.totalGroups-1]:(this.index++,this.groups[this.index])}first(){return this.index=0,this.groups[this.index]}last(){return this.index=this.groups.length-1,this.groups[this.index]}isFirst(){return this.index==0}isLast(){return this.index+1>=this.totalGroups}hasPrevious(){return this.index-1>=0}hasNext(){return this.index+1<this.totalGroups}getIndex(){return this.index}getTotalItems(){return this.totalItems}getTotalGroups(){return this.totalGroups}creatGroups(e,n){return e.reduce((r,o,a)=>{const u=Math.floor(a/n);return r[u]||(r[u]=[]),r[u].push(o),r},[])}search(e){let n=this.items.filter(r=>r.indexOf(e)>=0);return this.groups=this.creatGroups(n,this.sizeGroup),this.totalGroups=this.groups.length,n.length}goTo(e){return e>=0&&e<this.groups.length?(this.index=e,this.groups[this.index]):[]}getGroupIndex(e){for(let n=0;n<this.groups.length;n++)for(let r=0;r<this.groups[n].length;r++)if(this.groups[n][r]===e)return n;return-1}getAllItems(){return this.items}}class Cn{constructor(e,n){g(this,"container");g(this,"input");this.container=Pt("ip-search","100%"),this.container.style.marginTop="8px",this.container.style.marginBottom="8px",this.input=document.createElement("input"),this.input.type="text",this.input.style.boxSizing="border-box",this.input.style.width="100%",this.input.className=e,this.input.placeholder=n}getInput(){return this.input}mount(){this.container.append(this.input)}getElement(){return this.container}}class Sn{constructor(e,n,r){g(this,"container");g(this,"label");g(this,"navButtons");this.container=Pt("action-buttons","100%"),this.container.style.display="flex",this.container.style.marginBottom="8px",this.label=document.createElement("div"),this.label.style.flexGrow="1",this.label.style.display="flex",this.label.style.justifyContent="center",this.label.style.alignItems="center",this.navButtons={previous:he(Jt(n),e),next:he(Jt(r),e)}}setupNavLabel(e,n){this.updateNavLabel(e,n)}updateNavButtons(e,n,r,o){r.disabled=e,o.disabled=n}updateNavLabel(e,n){this.label.innerHTML=`${e+1} / ${n}`}getButtons(){return this.navButtons}getLabel(){return this.label}mount(){this.container.append(this.getButtons().previous),this.container.append(this.getLabel()),this.container.append(this.getButtons().next)}getElement(){return this.container}}var H="top",Y="bottom",X="right",W="left",me="auto",Mt=[H,Y,X,W],Et="start",Rt="end",Nn="clippingParents",Re="viewport",kt="popper",In="reference",ke=Mt.reduce(function(t,e){return t.concat([e+"-"+Et,e+"-"+Rt])},[]),Ve=[].concat(Mt,[me]).reduce(function(t,e){return t.concat([e,e+"-"+Et,e+"-"+Rt])},[]),Pn="beforeRead",jn="read",Mn="afterRead",Rn="beforeMain",kn="main",Vn="afterMain",$n="beforeWrite",Hn="write",Wn="afterWrite",Gn=[Pn,jn,Mn,Rn,kn,Vn,$n,Hn,Wn];function Z(t){return t?(t.nodeName||"").toLowerCase():null}function F(t){if(t==null)return window;if(t.toString()!=="[object Window]"){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function ht(t){var e=F(t).Element;return t instanceof e||t instanceof Element}function K(t){var e=F(t).HTMLElement;return t instanceof e||t instanceof HTMLElement}function ge(t){if(typeof ShadowRoot>"u")return!1;var e=F(t).ShadowRoot;return t instanceof e||t instanceof ShadowRoot}function Fn(t){var e=t.state;Object.keys(e.elements).forEach(function(n){var r=e.styles[n]||{},o=e.attributes[n]||{},a=e.elements[n];!K(a)||!Z(a)||(Object.assign(a.style,r),Object.keys(o).forEach(function(u){var c=o[u];c===!1?a.removeAttribute(u):a.setAttribute(u,c===!0?"":c)}))})}function Un(t){var e=t.state,n={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,n.popper),e.styles=n,e.elements.arrow&&Object.assign(e.elements.arrow.style,n.arrow),function(){Object.keys(e.elements).forEach(function(r){var o=e.elements[r],a=e.attributes[r]||{},u=Object.keys(e.styles.hasOwnProperty(r)?e.styles[r]:n[r]),c=u.reduce(function(p,f){return p[f]="",p},{});!K(o)||!Z(o)||(Object.assign(o.style,c),Object.keys(a).forEach(function(p){o.removeAttribute(p)}))})}}const $e={name:"applyStyles",enabled:!0,phase:"write",fn:Fn,effect:Un,requires:["computeStyles"]};function tt(t){return t.split("-")[0]}var mt=Math.max,Qt=Math.min,Ot=Math.round;function ye(){var t=navigator.userAgentData;return t!=null&&t.brands&&Array.isArray(t.brands)?t.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function He(){return!/^((?!chrome|android).)*safari/i.test(ye())}function Tt(t,e,n){e===void 0&&(e=!1),n===void 0&&(n=!1);var r=t.getBoundingClientRect(),o=1,a=1;e&&K(t)&&(o=t.offsetWidth>0&&Ot(r.width)/t.offsetWidth||1,a=t.offsetHeight>0&&Ot(r.height)/t.offsetHeight||1);var u=ht(t)?F(t):window,c=u.visualViewport,p=!He()&&n,f=(r.left+(p&&c?c.offsetLeft:0))/o,l=(r.top+(p&&c?c.offsetTop:0))/a,w=r.width/o,O=r.height/a;return{width:w,height:O,top:l,right:f+w,bottom:l+O,left:f,x:f,y:l}}function be(t){var e=Tt(t),n=t.offsetWidth,r=t.offsetHeight;return Math.abs(e.width-n)<=1&&(n=e.width),Math.abs(e.height-r)<=1&&(r=e.height),{x:t.offsetLeft,y:t.offsetTop,width:n,height:r}}function We(t,e){var n=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(n&&ge(n)){var r=e;do{if(r&&t.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function ot(t){return F(t).getComputedStyle(t)}function zn(t){return["table","td","th"].indexOf(Z(t))>=0}function lt(t){return((ht(t)?t.ownerDocument:t.document)||window.document).documentElement}function Zt(t){return Z(t)==="html"?t:t.assignedSlot||t.parentNode||(ge(t)?t.host:null)||lt(t)}function Ge(t){return!K(t)||ot(t).position==="fixed"?null:t.offsetParent}function qn(t){var e=/firefox/i.test(ye()),n=/Trident/i.test(ye());if(n&&K(t)){var r=ot(t);if(r.position==="fixed")return null}var o=Zt(t);for(ge(o)&&(o=o.host);K(o)&&["html","body"].indexOf(Z(o))<0;){var a=ot(o);if(a.transform!=="none"||a.perspective!=="none"||a.contain==="paint"||["transform","perspective"].indexOf(a.willChange)!==-1||e&&a.willChange==="filter"||e&&a.filter&&a.filter!=="none")return o;o=o.parentNode}return null}function Vt(t){for(var e=F(t),n=Ge(t);n&&zn(n)&&ot(n).position==="static";)n=Ge(n);return n&&(Z(n)==="html"||Z(n)==="body"&&ot(n).position==="static")?e:n||qn(t)||e}function we(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function $t(t,e,n){return mt(t,Qt(e,n))}function _n(t,e,n){var r=$t(t,e,n);return r>n?n:r}function Fe(){return{top:0,right:0,bottom:0,left:0}}function Ue(t){return Object.assign({},Fe(),t)}function ze(t,e){return e.reduce(function(n,r){return n[r]=t,n},{})}var Yn=function(e,n){return e=typeof e=="function"?e(Object.assign({},n.rects,{placement:n.placement})):e,Ue(typeof e!="number"?e:ze(e,Mt))};function Xn(t){var e,n=t.state,r=t.name,o=t.options,a=n.elements.arrow,u=n.modifiersData.popperOffsets,c=tt(n.placement),p=we(c),f=[W,X].indexOf(c)>=0,l=f?"height":"width";if(!(!a||!u)){var w=Yn(o.padding,n),O=be(a),m=p==="y"?H:W,x=p==="y"?Y:X,y=n.rects.reference[l]+n.rects.reference[p]-u[p]-n.rects.popper[l],b=u[p]-n.rects.reference[p],B=Vt(a),L=B?p==="y"?B.clientHeight||0:B.clientWidth||0:0,C=y/2-b/2,i=w[m],T=L-O[l]-w[x],d=L/2-O[l]/2+C,D=$t(i,d,T),j=p;n.modifiersData[r]=(e={},e[j]=D,e.centerOffset=D-d,e)}}function Kn(t){var e=t.state,n=t.options,r=n.element,o=r===void 0?"[data-popper-arrow]":r;o!=null&&(typeof o=="string"&&(o=e.elements.popper.querySelector(o),!o)||We(e.elements.popper,o)&&(e.elements.arrow=o))}const Jn={name:"arrow",enabled:!0,phase:"main",fn:Xn,effect:Kn,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Bt(t){return t.split("-")[1]}var Qn={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Zn(t,e){var n=t.x,r=t.y,o=e.devicePixelRatio||1;return{x:Ot(n*o)/o||0,y:Ot(r*o)/o||0}}function qe(t){var e,n=t.popper,r=t.popperRect,o=t.placement,a=t.variation,u=t.offsets,c=t.position,p=t.gpuAcceleration,f=t.adaptive,l=t.roundOffsets,w=t.isFixed,O=u.x,m=O===void 0?0:O,x=u.y,y=x===void 0?0:x,b=typeof l=="function"?l({x:m,y}):{x:m,y};m=b.x,y=b.y;var B=u.hasOwnProperty("x"),L=u.hasOwnProperty("y"),C=W,i=H,T=window;if(f){var d=Vt(n),D="clientHeight",j="clientWidth";if(d===F(n)&&(d=lt(n),ot(d).position!=="static"&&c==="absolute"&&(D="scrollHeight",j="scrollWidth")),d=d,o===H||(o===W||o===X)&&a===Rt){i=Y;var P=w&&d===T&&T.visualViewport?T.visualViewport.height:d[D];y-=P-r.height,y*=p?1:-1}if(o===W||(o===H||o===Y)&&a===Rt){C=X;var N=w&&d===T&&T.visualViewport?T.visualViewport.width:d[j];m-=N-r.width,m*=p?1:-1}}var M=Object.assign({position:c},f&&Qn),I=l===!0?Zn({x:m,y},F(n)):{x:m,y};if(m=I.x,y=I.y,p){var S;return Object.assign({},M,(S={},S[i]=L?"0":"",S[C]=B?"0":"",S.transform=(T.devicePixelRatio||1)<=1?"translate("+m+"px, "+y+"px)":"translate3d("+m+"px, "+y+"px, 0)",S))}return Object.assign({},M,(e={},e[i]=L?y+"px":"",e[C]=B?m+"px":"",e.transform="",e))}function tr(t){var e=t.state,n=t.options,r=n.gpuAcceleration,o=r===void 0?!0:r,a=n.adaptive,u=a===void 0?!0:a,c=n.roundOffsets,p=c===void 0?!0:c,f={placement:tt(e.placement),variation:Bt(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:o,isFixed:e.options.strategy==="fixed"};e.modifiersData.popperOffsets!=null&&(e.styles.popper=Object.assign({},e.styles.popper,qe(Object.assign({},f,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:u,roundOffsets:p})))),e.modifiersData.arrow!=null&&(e.styles.arrow=Object.assign({},e.styles.arrow,qe(Object.assign({},f,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:p})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})}const er={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:tr,data:{}};var te={passive:!0};function nr(t){var e=t.state,n=t.instance,r=t.options,o=r.scroll,a=o===void 0?!0:o,u=r.resize,c=u===void 0?!0:u,p=F(e.elements.popper),f=[].concat(e.scrollParents.reference,e.scrollParents.popper);return a&&f.forEach(function(l){l.addEventListener("scroll",n.update,te)}),c&&p.addEventListener("resize",n.update,te),function(){a&&f.forEach(function(l){l.removeEventListener("scroll",n.update,te)}),c&&p.removeEventListener("resize",n.update,te)}}const rr={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:nr,data:{}};var ir={left:"right",right:"left",bottom:"top",top:"bottom"};function ee(t){return t.replace(/left|right|bottom|top/g,function(e){return ir[e]})}var or={start:"end",end:"start"};function _e(t){return t.replace(/start|end/g,function(e){return or[e]})}function xe(t){var e=F(t),n=e.pageXOffset,r=e.pageYOffset;return{scrollLeft:n,scrollTop:r}}function Ee(t){return Tt(lt(t)).left+xe(t).scrollLeft}function ar(t,e){var n=F(t),r=lt(t),o=n.visualViewport,a=r.clientWidth,u=r.clientHeight,c=0,p=0;if(o){a=o.width,u=o.height;var f=He();(f||!f&&e==="fixed")&&(c=o.offsetLeft,p=o.offsetTop)}return{width:a,height:u,x:c+Ee(t),y:p}}function sr(t){var e,n=lt(t),r=xe(t),o=(e=t.ownerDocument)==null?void 0:e.body,a=mt(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),u=mt(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),c=-r.scrollLeft+Ee(t),p=-r.scrollTop;return ot(o||n).direction==="rtl"&&(c+=mt(n.clientWidth,o?o.clientWidth:0)-a),{width:a,height:u,x:c,y:p}}function Oe(t){var e=ot(t),n=e.overflow,r=e.overflowX,o=e.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function Ye(t){return["html","body","#document"].indexOf(Z(t))>=0?t.ownerDocument.body:K(t)&&Oe(t)?t:Ye(Zt(t))}function Ht(t,e){var n;e===void 0&&(e=[]);var r=Ye(t),o=r===((n=t.ownerDocument)==null?void 0:n.body),a=F(r),u=o?[a].concat(a.visualViewport||[],Oe(r)?r:[]):r,c=e.concat(u);return o?c:c.concat(Ht(Zt(u)))}function Te(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function ur(t,e){var n=Tt(t,!1,e==="fixed");return n.top=n.top+t.clientTop,n.left=n.left+t.clientLeft,n.bottom=n.top+t.clientHeight,n.right=n.left+t.clientWidth,n.width=t.clientWidth,n.height=t.clientHeight,n.x=n.left,n.y=n.top,n}function Xe(t,e,n){return e===Re?Te(ar(t,n)):ht(e)?ur(e,n):Te(sr(lt(t)))}function pr(t){var e=Ht(Zt(t)),n=["absolute","fixed"].indexOf(ot(t).position)>=0,r=n&&K(t)?Vt(t):t;return ht(r)?e.filter(function(o){return ht(o)&&We(o,r)&&Z(o)!=="body"}):[]}function cr(t,e,n,r){var o=e==="clippingParents"?pr(t):[].concat(e),a=[].concat(o,[n]),u=a[0],c=a.reduce(function(p,f){var l=Xe(t,f,r);return p.top=mt(l.top,p.top),p.right=Qt(l.right,p.right),p.bottom=Qt(l.bottom,p.bottom),p.left=mt(l.left,p.left),p},Xe(t,u,r));return c.width=c.right-c.left,c.height=c.bottom-c.top,c.x=c.left,c.y=c.top,c}function Ke(t){var e=t.reference,n=t.element,r=t.placement,o=r?tt(r):null,a=r?Bt(r):null,u=e.x+e.width/2-n.width/2,c=e.y+e.height/2-n.height/2,p;switch(o){case H:p={x:u,y:e.y-n.height};break;case Y:p={x:u,y:e.y+e.height};break;case X:p={x:e.x+e.width,y:c};break;case W:p={x:e.x-n.width,y:c};break;default:p={x:e.x,y:e.y}}var f=o?we(o):null;if(f!=null){var l=f==="y"?"height":"width";switch(a){case Et:p[f]=p[f]-(e[l]/2-n[l]/2);break;case Rt:p[f]=p[f]+(e[l]/2-n[l]/2);break}}return p}function Wt(t,e){e===void 0&&(e={});var n=e,r=n.placement,o=r===void 0?t.placement:r,a=n.strategy,u=a===void 0?t.strategy:a,c=n.boundary,p=c===void 0?Nn:c,f=n.rootBoundary,l=f===void 0?Re:f,w=n.elementContext,O=w===void 0?kt:w,m=n.altBoundary,x=m===void 0?!1:m,y=n.padding,b=y===void 0?0:y,B=Ue(typeof b!="number"?b:ze(b,Mt)),L=O===kt?In:kt,C=t.rects.popper,i=t.elements[x?L:O],T=cr(ht(i)?i:i.contextElement||lt(t.elements.popper),p,l,u),d=Tt(t.elements.reference),D=Ke({reference:d,element:C,strategy:"absolute",placement:o}),j=Te(Object.assign({},C,D)),P=O===kt?j:d,N={top:T.top-P.top+B.top,bottom:P.bottom-T.bottom+B.bottom,left:T.left-P.left+B.left,right:P.right-T.right+B.right},M=t.modifiersData.offset;if(O===kt&&M){var I=M[o];Object.keys(N).forEach(function(S){var z=[X,Y].indexOf(S)>=0?1:-1,q=[H,Y].indexOf(S)>=0?"y":"x";N[S]+=I[q]*z})}return N}function lr(t,e){e===void 0&&(e={});var n=e,r=n.placement,o=n.boundary,a=n.rootBoundary,u=n.padding,c=n.flipVariations,p=n.allowedAutoPlacements,f=p===void 0?Ve:p,l=Bt(r),w=l?c?ke:ke.filter(function(x){return Bt(x)===l}):Mt,O=w.filter(function(x){return f.indexOf(x)>=0});O.length===0&&(O=w);var m=O.reduce(function(x,y){return x[y]=Wt(t,{placement:y,boundary:o,rootBoundary:a,padding:u})[tt(y)],x},{});return Object.keys(m).sort(function(x,y){return m[x]-m[y]})}function fr(t){if(tt(t)===me)return[];var e=ee(t);return[_e(t),e,_e(e)]}function dr(t){var e=t.state,n=t.options,r=t.name;if(!e.modifiersData[r]._skip){for(var o=n.mainAxis,a=o===void 0?!0:o,u=n.altAxis,c=u===void 0?!0:u,p=n.fallbackPlacements,f=n.padding,l=n.boundary,w=n.rootBoundary,O=n.altBoundary,m=n.flipVariations,x=m===void 0?!0:m,y=n.allowedAutoPlacements,b=e.options.placement,B=tt(b),L=B===b,C=p||(L||!x?[ee(b)]:fr(b)),i=[b].concat(C).reduce(function(st,Q){return st.concat(tt(Q)===me?lr(e,{placement:Q,boundary:l,rootBoundary:w,padding:f,flipVariations:x,allowedAutoPlacements:y}):Q)},[]),T=e.rects.reference,d=e.rects.popper,D=new Map,j=!0,P=i[0],N=0;N<i.length;N++){var M=i[N],I=tt(M),S=Bt(M)===Et,z=[H,Y].indexOf(I)>=0,q=z?"width":"height",k=Wt(e,{placement:M,boundary:l,rootBoundary:w,altBoundary:O,padding:f}),V=z?S?X:W:S?Y:H;T[q]>d[q]&&(V=ee(V));var R=ee(V),nt=[];if(a&&nt.push(k[I]<=0),c&&nt.push(k[V]<=0,k[R]<=0),nt.every(function(st){return st})){P=M,j=!1;break}D.set(M,nt)}if(j)for(var rt=x?3:1,yt=function(Q){var ut=i.find(function(Dt){var pt=D.get(Dt);if(pt)return pt.slice(0,Q).every(function(Ct){return Ct})});if(ut)return P=ut,"break"},it=rt;it>0;it--){var bt=yt(it);if(bt==="break")break}e.placement!==P&&(e.modifiersData[r]._skip=!0,e.placement=P,e.reset=!0)}}const vr={name:"flip",enabled:!0,phase:"main",fn:dr,requiresIfExists:["offset"],data:{_skip:!1}};function Je(t,e,n){return n===void 0&&(n={x:0,y:0}),{top:t.top-e.height-n.y,right:t.right-e.width+n.x,bottom:t.bottom-e.height+n.y,left:t.left-e.width-n.x}}function Qe(t){return[H,X,Y,W].some(function(e){return t[e]>=0})}function hr(t){var e=t.state,n=t.name,r=e.rects.reference,o=e.rects.popper,a=e.modifiersData.preventOverflow,u=Wt(e,{elementContext:"reference"}),c=Wt(e,{altBoundary:!0}),p=Je(u,r),f=Je(c,o,a),l=Qe(p),w=Qe(f);e.modifiersData[n]={referenceClippingOffsets:p,popperEscapeOffsets:f,isReferenceHidden:l,hasPopperEscaped:w},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":l,"data-popper-escaped":w})}const mr={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:hr};function gr(t,e,n){var r=tt(t),o=[W,H].indexOf(r)>=0?-1:1,a=typeof n=="function"?n(Object.assign({},e,{placement:t})):n,u=a[0],c=a[1];return u=u||0,c=(c||0)*o,[W,X].indexOf(r)>=0?{x:c,y:u}:{x:u,y:c}}function yr(t){var e=t.state,n=t.options,r=t.name,o=n.offset,a=o===void 0?[0,0]:o,u=Ve.reduce(function(l,w){return l[w]=gr(w,e.rects,a),l},{}),c=u[e.placement],p=c.x,f=c.y;e.modifiersData.popperOffsets!=null&&(e.modifiersData.popperOffsets.x+=p,e.modifiersData.popperOffsets.y+=f),e.modifiersData[r]=u}const br={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:yr};function wr(t){var e=t.state,n=t.name;e.modifiersData[n]=Ke({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})}const xr={name:"popperOffsets",enabled:!0,phase:"read",fn:wr,data:{}};function Er(t){return t==="x"?"y":"x"}function Or(t){var e=t.state,n=t.options,r=t.name,o=n.mainAxis,a=o===void 0?!0:o,u=n.altAxis,c=u===void 0?!1:u,p=n.boundary,f=n.rootBoundary,l=n.altBoundary,w=n.padding,O=n.tether,m=O===void 0?!0:O,x=n.tetherOffset,y=x===void 0?0:x,b=Wt(e,{boundary:p,rootBoundary:f,padding:w,altBoundary:l}),B=tt(e.placement),L=Bt(e.placement),C=!L,i=we(B),T=Er(i),d=e.modifiersData.popperOffsets,D=e.rects.reference,j=e.rects.popper,P=typeof y=="function"?y(Object.assign({},e.rects,{placement:e.placement})):y,N=typeof P=="number"?{mainAxis:P,altAxis:P}:Object.assign({mainAxis:0,altAxis:0},P),M=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,I={x:0,y:0};if(d){if(a){var S,z=i==="y"?H:W,q=i==="y"?Y:X,k=i==="y"?"height":"width",V=d[i],R=V+b[z],nt=V-b[q],rt=m?-j[k]/2:0,yt=L===Et?D[k]:j[k],it=L===Et?-j[k]:-D[k],bt=e.elements.arrow,st=m&&bt?be(bt):{width:0,height:0},Q=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:Fe(),ut=Q[z],Dt=Q[q],pt=$t(0,D[k],st[k]),Ct=C?D[k]/2-rt-pt-ut-N.mainAxis:yt-pt-ut-N.mainAxis,ft=C?-D[k]/2+rt+pt+Dt+N.mainAxis:it+pt+Dt+N.mainAxis,St=e.elements.arrow&&Vt(e.elements.arrow),ie=St?i==="y"?St.clientTop||0:St.clientLeft||0:0,qt=(S=M==null?void 0:M[i])!=null?S:0,oe=V+Ct-qt-ie,ae=V+ft-qt,_t=$t(m?Qt(R,oe):R,V,m?mt(nt,ae):nt);d[i]=_t,I[i]=_t-V}if(c){var Yt,se=i==="x"?H:W,ue=i==="x"?Y:X,ct=d[T],dt=T==="y"?"height":"width",Xt=ct+b[se],wt=ct-b[ue],Kt=[H,W].indexOf(B)!==-1,pe=(Yt=M==null?void 0:M[T])!=null?Yt:0,ce=Kt?Xt:ct-D[dt]-j[dt]-pe+N.altAxis,le=Kt?ct+D[dt]+j[dt]-pe-N.altAxis:wt,fe=m&&Kt?_n(ce,ct,le):$t(m?ce:Xt,ct,m?le:wt);d[T]=fe,I[T]=fe-ct}e.modifiersData[r]=I}}const Tr={name:"preventOverflow",enabled:!0,phase:"main",fn:Or,requiresIfExists:["offset"]};function Br(t){return{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}}function Ar(t){return t===F(t)||!K(t)?xe(t):Br(t)}function Lr(t){var e=t.getBoundingClientRect(),n=Ot(e.width)/t.offsetWidth||1,r=Ot(e.height)/t.offsetHeight||1;return n!==1||r!==1}function Dr(t,e,n){n===void 0&&(n=!1);var r=K(e),o=K(e)&&Lr(e),a=lt(e),u=Tt(t,o,n),c={scrollLeft:0,scrollTop:0},p={x:0,y:0};return(r||!r&&!n)&&((Z(e)!=="body"||Oe(a))&&(c=Ar(e)),K(e)?(p=Tt(e,!0),p.x+=e.clientLeft,p.y+=e.clientTop):a&&(p.x=Ee(a))),{x:u.left+c.scrollLeft-p.x,y:u.top+c.scrollTop-p.y,width:u.width,height:u.height}}function Cr(t){var e=new Map,n=new Set,r=[];t.forEach(function(a){e.set(a.name,a)});function o(a){n.add(a.name);var u=[].concat(a.requires||[],a.requiresIfExists||[]);u.forEach(function(c){if(!n.has(c)){var p=e.get(c);p&&o(p)}}),r.push(a)}return t.forEach(function(a){n.has(a.name)||o(a)}),r}function Sr(t){var e=Cr(t);return Gn.reduce(function(n,r){return n.concat(e.filter(function(o){return o.phase===r}))},[])}function Nr(t){var e;return function(){return e||(e=new Promise(function(n){Promise.resolve().then(function(){e=void 0,n(t())})})),e}}function Ir(t){var e=t.reduce(function(n,r){var o=n[r.name];return n[r.name]=o?Object.assign({},o,r,{options:Object.assign({},o.options,r.options),data:Object.assign({},o.data,r.data)}):r,n},{});return Object.keys(e).map(function(n){return e[n]})}var Ze={placement:"bottom",modifiers:[],strategy:"absolute"};function tn(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return!e.some(function(r){return!(r&&typeof r.getBoundingClientRect=="function")})}function Pr(t){t===void 0&&(t={});var e=t,n=e.defaultModifiers,r=n===void 0?[]:n,o=e.defaultOptions,a=o===void 0?Ze:o;return function(c,p,f){f===void 0&&(f=a);var l={placement:"bottom",orderedModifiers:[],options:Object.assign({},Ze,a),modifiersData:{},elements:{reference:c,popper:p},attributes:{},styles:{}},w=[],O=!1,m={state:l,setOptions:function(B){var L=typeof B=="function"?B(l.options):B;y(),l.options=Object.assign({},a,l.options,L),l.scrollParents={reference:ht(c)?Ht(c):c.contextElement?Ht(c.contextElement):[],popper:Ht(p)};var C=Sr(Ir([].concat(r,l.options.modifiers)));return l.orderedModifiers=C.filter(function(i){return i.enabled}),x(),m.update()},forceUpdate:function(){if(!O){var B=l.elements,L=B.reference,C=B.popper;if(tn(L,C)){l.rects={reference:Dr(L,Vt(C),l.options.strategy==="fixed"),popper:be(C)},l.reset=!1,l.placement=l.options.placement,l.orderedModifiers.forEach(function(N){return l.modifiersData[N.name]=Object.assign({},N.data)});for(var i=0;i<l.orderedModifiers.length;i++){if(l.reset===!0){l.reset=!1,i=-1;continue}var T=l.orderedModifiers[i],d=T.fn,D=T.options,j=D===void 0?{}:D,P=T.name;typeof d=="function"&&(l=d({state:l,options:j,name:P,instance:m})||l)}}}},update:Nr(function(){return new Promise(function(b){m.forceUpdate(),b(l)})}),destroy:function(){y(),O=!0}};if(!tn(c,p))return m;m.setOptions(f).then(function(b){!O&&f.onFirstUpdate&&f.onFirstUpdate(b)});function x(){l.orderedModifiers.forEach(function(b){var B=b.name,L=b.options,C=L===void 0?{}:L,i=b.effect;if(typeof i=="function"){var T=i({state:l,name:B,instance:m,options:C}),d=function(){};w.push(T||d)}})}function y(){w.forEach(function(b){return b()}),w=[]}return m}}var jr=[rr,xr,er,$e,br,vr,Tr,Jn,mr],Mr=Pr({defaultModifiers:jr}),Rr="tippy-box",en="tippy-content",kr="tippy-backdrop",nn="tippy-arrow",rn="tippy-svg-arrow",gt={passive:!0,capture:!0},on=function(){return document.body};function Vr(t,e){return{}.hasOwnProperty.call(t,e)}function Be(t,e,n){if(Array.isArray(t)){var r=t[e];return r??(Array.isArray(n)?n[e]:n)}return t}function Ae(t,e){var n={}.toString.call(t);return n.indexOf("[object")===0&&n.indexOf(e+"]")>-1}function an(t,e){return typeof t=="function"?t.apply(void 0,e):t}function sn(t,e){if(e===0)return t;var n;return function(r){clearTimeout(n),n=setTimeout(function(){t(r)},e)}}function $r(t,e){var n=Object.assign({},t);return e.forEach(function(r){delete n[r]}),n}function Hr(t){return t.split(/\s+/).filter(Boolean)}function At(t){return[].concat(t)}function un(t,e){t.indexOf(e)===-1&&t.push(e)}function Wr(t){return t.filter(function(e,n){return t.indexOf(e)===n})}function Gr(t){return t.split("-")[0]}function ne(t){return[].slice.call(t)}function pn(t){return Object.keys(t).reduce(function(e,n){return t[n]!==void 0&&(e[n]=t[n]),e},{})}function Gt(){return document.createElement("div")}function Ft(t){return["Element","Fragment"].some(function(e){return Ae(t,e)})}function Fr(t){return Ae(t,"NodeList")}function Ur(t){return Ae(t,"MouseEvent")}function zr(t){return!!(t&&t._tippy&&t._tippy.reference===t)}function qr(t){return Ft(t)?[t]:Fr(t)?ne(t):Array.isArray(t)?t:ne(document.querySelectorAll(t))}function Le(t,e){t.forEach(function(n){n&&(n.style.transitionDuration=e+"ms")})}function cn(t,e){t.forEach(function(n){n&&n.setAttribute("data-state",e)})}function _r(t){var e,n=At(t),r=n[0];return r!=null&&(e=r.ownerDocument)!=null&&e.body?r.ownerDocument:document}function Yr(t,e){var n=e.clientX,r=e.clientY;return t.every(function(o){var a=o.popperRect,u=o.popperState,c=o.props,p=c.interactiveBorder,f=Gr(u.placement),l=u.modifiersData.offset;if(!l)return!0;var w=f==="bottom"?l.top.y:0,O=f==="top"?l.bottom.y:0,m=f==="right"?l.left.x:0,x=f==="left"?l.right.x:0,y=a.top-r+w>p,b=r-a.bottom-O>p,B=a.left-n+m>p,L=n-a.right-x>p;return y||b||B||L})}function De(t,e,n){var r=e+"EventListener";["transitionend","webkitTransitionEnd"].forEach(function(o){t[r](o,n)})}function ln(t,e){for(var n=e;n;){var r;if(t.contains(n))return!0;n=n.getRootNode==null||(r=n.getRootNode())==null?void 0:r.host}return!1}var et={isTouch:!1},fn=0;function Xr(){et.isTouch||(et.isTouch=!0,window.performance&&document.addEventListener("mousemove",dn))}function dn(){var t=performance.now();t-fn<20&&(et.isTouch=!1,document.removeEventListener("mousemove",dn)),fn=t}function Kr(){var t=document.activeElement;if(zr(t)){var e=t._tippy;t.blur&&!e.state.isVisible&&t.blur()}}function Jr(){document.addEventListener("touchstart",Xr,gt),window.addEventListener("blur",Kr)}var Qr=typeof window<"u"&&typeof document<"u",Zr=Qr?!!window.msCrypto:!1;function Lt(t){var e=t==="destroy"?"n already-":" ";return[t+"() was called on a"+e+"destroyed instance. This is a no-op but","indicates a potential memory leak."].join(" ")}function vn(t){var e=/[ \t]{2,}/g,n=/^[ \t]*/gm;return t.replace(e," ").replace(n,"").trim()}function ti(t){return vn(`
%ctippy.js
%c`+vn(t)+`
%c👷 This is a development-only message. It will be removed in production.
`)}function hn(t){return[ti(t),"color: #00C584; font-size: 1.3em; font-weight: bold;","line-height: 1.5","color: #a6a095;"]}var Ut;process.env.NODE_ENV!=="production"&&ei();function ei(){Ut=new Set}function at(t,e){if(t&&!Ut.has(e)){var n;Ut.add(e),(n=console).warn.apply(n,hn(e))}}function Ce(t,e){if(t&&!Ut.has(e)){var n;Ut.add(e),(n=console).error.apply(n,hn(e))}}function ni(t){var e=!t,n=Object.prototype.toString.call(t)==="[object Object]"&&!t.addEventListener;Ce(e,["tippy() was passed","`"+String(t)+"`","as its targets (first) argument. Valid types are: String, Element,","Element[], or NodeList."].join(" ")),Ce(n,["tippy() was passed a plain object which is not supported as an argument","for virtual positioning. Use props.getReferenceClientRect instead."].join(" "))}var mn={animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},ri={allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999},U=Object.assign({appendTo:on,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},mn,ri),ii=Object.keys(U),oi=function(e){process.env.NODE_ENV!=="production"&&bn(e,[]);var n=Object.keys(e);n.forEach(function(r){U[r]=e[r]})};function gn(t){var e=t.plugins||[],n=e.reduce(function(r,o){var a=o.name,u=o.defaultValue;if(a){var c;r[a]=t[a]!==void 0?t[a]:(c=U[a])!=null?c:u}return r},{});return Object.assign({},t,n)}function ai(t,e){var n=e?Object.keys(gn(Object.assign({},U,{plugins:e}))):ii,r=n.reduce(function(o,a){var u=(t.getAttribute("data-tippy-"+a)||"").trim();if(!u)return o;if(a==="content")o[a]=u;else try{o[a]=JSON.parse(u)}catch{o[a]=u}return o},{});return r}function yn(t,e){var n=Object.assign({},e,{content:an(e.content,[t])},e.ignoreAttributes?{}:ai(t,e.plugins));return n.aria=Object.assign({},U.aria,n.aria),n.aria={expanded:n.aria.expanded==="auto"?e.interactive:n.aria.expanded,content:n.aria.content==="auto"?e.interactive?null:"describedby":n.aria.content},n}function bn(t,e){t===void 0&&(t={}),e===void 0&&(e=[]);var n=Object.keys(t);n.forEach(function(r){var o=$r(U,Object.keys(mn)),a=!Vr(o,r);a&&(a=e.filter(function(u){return u.name===r}).length===0),at(a,["`"+r+"`","is not a valid prop. You may have spelled it incorrectly, or if it's","a plugin, forgot to pass it in an array as props.plugins.",`
`,`All props: https://atomiks.github.io/tippyjs/v6/all-props/
`,"Plugins: https://atomiks.github.io/tippyjs/v6/plugins/"].join(" "))})}var si=function(){return"innerHTML"};function Se(t,e){t[si()]=e}function wn(t){var e=Gt();return t===!0?e.className=nn:(e.className=rn,Ft(t)?e.appendChild(t):Se(e,t)),e}function xn(t,e){Ft(e.content)?(Se(t,""),t.appendChild(e.content)):typeof e.content!="function"&&(e.allowHTML?Se(t,e.content):t.textContent=e.content)}function Ne(t){var e=t.firstElementChild,n=ne(e.children);return{box:e,content:n.find(function(r){return r.classList.contains(en)}),arrow:n.find(function(r){return r.classList.contains(nn)||r.classList.contains(rn)}),backdrop:n.find(function(r){return r.classList.contains(kr)})}}function En(t){var e=Gt(),n=Gt();n.className=Rr,n.setAttribute("data-state","hidden"),n.setAttribute("tabindex","-1");var r=Gt();r.className=en,r.setAttribute("data-state","hidden"),xn(r,t.props),e.appendChild(n),n.appendChild(r),o(t.props,t.props);function o(a,u){var c=Ne(e),p=c.box,f=c.content,l=c.arrow;u.theme?p.setAttribute("data-theme",u.theme):p.removeAttribute("data-theme"),typeof u.animation=="string"?p.setAttribute("data-animation",u.animation):p.removeAttribute("data-animation"),u.inertia?p.setAttribute("data-inertia",""):p.removeAttribute("data-inertia"),p.style.maxWidth=typeof u.maxWidth=="number"?u.maxWidth+"px":u.maxWidth,u.role?p.setAttribute("role",u.role):p.removeAttribute("role"),(a.content!==u.content||a.allowHTML!==u.allowHTML)&&xn(f,t.props),u.arrow?l?a.arrow!==u.arrow&&(p.removeChild(l),p.appendChild(wn(u.arrow))):p.appendChild(wn(u.arrow)):l&&p.removeChild(l)}return{popper:e,onUpdate:o}}En.$$tippy=!0;var ui=1,re=[],Ie=[];function pi(t,e){var n=yn(t,Object.assign({},U,gn(pn(e)))),r,o,a,u=!1,c=!1,p=!1,f=!1,l,w,O,m=[],x=sn(oe,n.interactiveDebounce),y,b=ui++,B=null,L=Wr(n.plugins),C={isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},i={id:b,reference:t,popper:Gt(),popperInstance:B,props:n,state:C,plugins:L,clearDelayTimeouts:ce,setProps:le,setContent:fe,show:fi,hide:di,hideWithInteractivity:vi,enable:Kt,disable:pe,unmount:hi,destroy:mi};if(!n.render)return process.env.NODE_ENV!=="production"&&Ce(!0,"render() function has not been supplied."),i;var T=n.render(i),d=T.popper,D=T.onUpdate;d.setAttribute("data-tippy-root",""),d.id="tippy-"+i.id,i.popper=d,t._tippy=i,d._tippy=i;var j=L.map(function(s){return s.fn(i)}),P=t.hasAttribute("aria-expanded");return St(),rt(),V(),R("onCreate",[i]),n.showOnCreate&&Xt(),d.addEventListener("mouseenter",function(){i.props.interactive&&i.state.isVisible&&i.clearDelayTimeouts()}),d.addEventListener("mouseleave",function(){i.props.interactive&&i.props.trigger.indexOf("mouseenter")>=0&&z().addEventListener("mousemove",x)}),i;function N(){var s=i.props.touch;return Array.isArray(s)?s:[s,0]}function M(){return N()[0]==="hold"}function I(){var s;return!!((s=i.props.render)!=null&&s.$$tippy)}function S(){return y||t}function z(){var s=S().parentNode;return s?_r(s):document}function q(){return Ne(d)}function k(s){return i.state.isMounted&&!i.state.isVisible||et.isTouch||l&&l.type==="focus"?0:Be(i.props.delay,s?0:1,U.delay)}function V(s){s===void 0&&(s=!1),d.style.pointerEvents=i.props.interactive&&!s?"":"none",d.style.zIndex=""+i.props.zIndex}function R(s,v,h){if(h===void 0&&(h=!0),j.forEach(function(E){E[s]&&E[s].apply(E,v)}),h){var A;(A=i.props)[s].apply(A,v)}}function nt(){var s=i.props.aria;if(s.content){var v="aria-"+s.content,h=d.id,A=At(i.props.triggerTarget||t);A.forEach(function(E){var $=E.getAttribute(v);if(i.state.isVisible)E.setAttribute(v,$?$+" "+h:h);else{var J=$&&$.replace(h,"").trim();J?E.setAttribute(v,J):E.removeAttribute(v)}})}}function rt(){if(!(P||!i.props.aria.expanded)){var s=At(i.props.triggerTarget||t);s.forEach(function(v){i.props.interactive?v.setAttribute("aria-expanded",i.state.isVisible&&v===S()?"true":"false"):v.removeAttribute("aria-expanded")})}}function yt(){z().removeEventListener("mousemove",x),re=re.filter(function(s){return s!==x})}function it(s){if(!(et.isTouch&&(p||s.type==="mousedown"))){var v=s.composedPath&&s.composedPath()[0]||s.target;if(!(i.props.interactive&&ln(d,v))){if(At(i.props.triggerTarget||t).some(function(h){return ln(h,v)})){if(et.isTouch||i.state.isVisible&&i.props.trigger.indexOf("click")>=0)return}else R("onClickOutside",[i,s]);i.props.hideOnClick===!0&&(i.clearDelayTimeouts(),i.hide(),c=!0,setTimeout(function(){c=!1}),i.state.isMounted||ut())}}}function bt(){p=!0}function st(){p=!1}function Q(){var s=z();s.addEventListener("mousedown",it,!0),s.addEventListener("touchend",it,gt),s.addEventListener("touchstart",st,gt),s.addEventListener("touchmove",bt,gt)}function ut(){var s=z();s.removeEventListener("mousedown",it,!0),s.removeEventListener("touchend",it,gt),s.removeEventListener("touchstart",st,gt),s.removeEventListener("touchmove",bt,gt)}function Dt(s,v){Ct(s,function(){!i.state.isVisible&&d.parentNode&&d.parentNode.contains(d)&&v()})}function pt(s,v){Ct(s,v)}function Ct(s,v){var h=q().box;function A(E){E.target===h&&(De(h,"remove",A),v())}if(s===0)return v();De(h,"remove",w),De(h,"add",A),w=A}function ft(s,v,h){h===void 0&&(h=!1);var A=At(i.props.triggerTarget||t);A.forEach(function(E){E.addEventListener(s,v,h),m.push({node:E,eventType:s,handler:v,options:h})})}function St(){M()&&(ft("touchstart",qt,{passive:!0}),ft("touchend",ae,{passive:!0})),Hr(i.props.trigger).forEach(function(s){if(s!=="manual")switch(ft(s,qt),s){case"mouseenter":ft("mouseleave",ae);break;case"focus":ft(Zr?"focusout":"blur",_t);break;case"focusin":ft("focusout",_t);break}})}function ie(){m.forEach(function(s){var v=s.node,h=s.eventType,A=s.handler,E=s.options;v.removeEventListener(h,A,E)}),m=[]}function qt(s){var v,h=!1;if(!(!i.state.isEnabled||Yt(s)||c)){var A=((v=l)==null?void 0:v.type)==="focus";l=s,y=s.currentTarget,rt(),!i.state.isVisible&&Ur(s)&&re.forEach(function(E){return E(s)}),s.type==="click"&&(i.props.trigger.indexOf("mouseenter")<0||u)&&i.props.hideOnClick!==!1&&i.state.isVisible?h=!0:Xt(s),s.type==="click"&&(u=!h),h&&!A&&wt(s)}}function oe(s){var v=s.target,h=S().contains(v)||d.contains(v);if(!(s.type==="mousemove"&&h)){var A=dt().concat(d).map(function(E){var $,J=E._tippy,Nt=($=J.popperInstance)==null?void 0:$.state;return Nt?{popperRect:E.getBoundingClientRect(),popperState:Nt,props:n}:null}).filter(Boolean);Yr(A,s)&&(yt(),wt(s))}}function ae(s){var v=Yt(s)||i.props.trigger.indexOf("click")>=0&&u;if(!v){if(i.props.interactive){i.hideWithInteractivity(s);return}wt(s)}}function _t(s){i.props.trigger.indexOf("focusin")<0&&s.target!==S()||i.props.interactive&&s.relatedTarget&&d.contains(s.relatedTarget)||wt(s)}function Yt(s){return et.isTouch?M()!==s.type.indexOf("touch")>=0:!1}function se(){ue();var s=i.props,v=s.popperOptions,h=s.placement,A=s.offset,E=s.getReferenceClientRect,$=s.moveTransition,J=I()?Ne(d).arrow:null,Nt=E?{getBoundingClientRect:E,contextElement:E.contextElement||S()}:t,On={name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(de){var It=de.state;if(I()){var gi=q(),je=gi.box;["placement","reference-hidden","escaped"].forEach(function(ve){ve==="placement"?je.setAttribute("data-placement",It.placement):It.attributes.popper["data-popper-"+ve]?je.setAttribute("data-"+ve,""):je.removeAttribute("data-"+ve)}),It.attributes.popper={}}}},xt=[{name:"offset",options:{offset:A}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!$}},On];I()&&J&&xt.push({name:"arrow",options:{element:J,padding:3}}),xt.push.apply(xt,(v==null?void 0:v.modifiers)||[]),i.popperInstance=Mr(Nt,d,Object.assign({},v,{placement:h,onFirstUpdate:O,modifiers:xt}))}function ue(){i.popperInstance&&(i.popperInstance.destroy(),i.popperInstance=null)}function ct(){var s=i.props.appendTo,v,h=S();i.props.interactive&&s===on||s==="parent"?v=h.parentNode:v=an(s,[h]),v.contains(d)||v.appendChild(d),i.state.isMounted=!0,se(),process.env.NODE_ENV!=="production"&&at(i.props.interactive&&s===U.appendTo&&h.nextElementSibling!==d,["Interactive tippy element may not be accessible via keyboard","navigation because it is not directly after the reference element","in the DOM source order.",`
`,"Using a wrapper <div> or <span> tag around the reference element","solves this by creating a new parentNode context.",`
`,"Specifying `appendTo: document.body` silences this warning, but it","assumes you are using a focus management solution to handle","keyboard navigation.",`
`,"See: https://atomiks.github.io/tippyjs/v6/accessibility/#interactivity"].join(" "))}function dt(){return ne(d.querySelectorAll("[data-tippy-root]"))}function Xt(s){i.clearDelayTimeouts(),s&&R("onTrigger",[i,s]),Q();var v=k(!0),h=N(),A=h[0],E=h[1];et.isTouch&&A==="hold"&&E&&(v=E),v?r=setTimeout(function(){i.show()},v):i.show()}function wt(s){if(i.clearDelayTimeouts(),R("onUntrigger",[i,s]),!i.state.isVisible){ut();return}if(!(i.props.trigger.indexOf("mouseenter")>=0&&i.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(s.type)>=0&&u)){var v=k(!1);v?o=setTimeout(function(){i.state.isVisible&&i.hide()},v):a=requestAnimationFrame(function(){i.hide()})}}function Kt(){i.state.isEnabled=!0}function pe(){i.hide(),i.state.isEnabled=!1}function ce(){clearTimeout(r),clearTimeout(o),cancelAnimationFrame(a)}function le(s){if(process.env.NODE_ENV!=="production"&&at(i.state.isDestroyed,Lt("setProps")),!i.state.isDestroyed){R("onBeforeUpdate",[i,s]),ie();var v=i.props,h=yn(t,Object.assign({},v,pn(s),{ignoreAttributes:!0}));i.props=h,St(),v.interactiveDebounce!==h.interactiveDebounce&&(yt(),x=sn(oe,h.interactiveDebounce)),v.triggerTarget&&!h.triggerTarget?At(v.triggerTarget).forEach(function(A){A.removeAttribute("aria-expanded")}):h.triggerTarget&&t.removeAttribute("aria-expanded"),rt(),V(),D&&D(v,h),i.popperInstance&&(se(),dt().forEach(function(A){requestAnimationFrame(A._tippy.popperInstance.forceUpdate)})),R("onAfterUpdate",[i,s])}}function fe(s){i.setProps({content:s})}function fi(){process.env.NODE_ENV!=="production"&&at(i.state.isDestroyed,Lt("show"));var s=i.state.isVisible,v=i.state.isDestroyed,h=!i.state.isEnabled,A=et.isTouch&&!i.props.touch,E=Be(i.props.duration,0,U.duration);if(!(s||v||h||A)&&!S().hasAttribute("disabled")&&(R("onShow",[i],!1),i.props.onShow(i)!==!1)){if(i.state.isVisible=!0,I()&&(d.style.visibility="visible"),V(),Q(),i.state.isMounted||(d.style.transition="none"),I()){var $=q(),J=$.box,Nt=$.content;Le([J,Nt],0)}O=function(){var xt;if(!(!i.state.isVisible||f)){if(f=!0,d.offsetHeight,d.style.transition=i.props.moveTransition,I()&&i.props.animation){var Pe=q(),de=Pe.box,It=Pe.content;Le([de,It],E),cn([de,It],"visible")}nt(),rt(),un(Ie,i),(xt=i.popperInstance)==null||xt.forceUpdate(),R("onMount",[i]),i.props.animation&&I()&&pt(E,function(){i.state.isShown=!0,R("onShown",[i])})}},ct()}}function di(){process.env.NODE_ENV!=="production"&&at(i.state.isDestroyed,Lt("hide"));var s=!i.state.isVisible,v=i.state.isDestroyed,h=!i.state.isEnabled,A=Be(i.props.duration,1,U.duration);if(!(s||v||h)&&(R("onHide",[i],!1),i.props.onHide(i)!==!1)){if(i.state.isVisible=!1,i.state.isShown=!1,f=!1,u=!1,I()&&(d.style.visibility="hidden"),yt(),ut(),V(!0),I()){var E=q(),$=E.box,J=E.content;i.props.animation&&(Le([$,J],A),cn([$,J],"hidden"))}nt(),rt(),i.props.animation?I()&&Dt(A,i.unmount):i.unmount()}}function vi(s){process.env.NODE_ENV!=="production"&&at(i.state.isDestroyed,Lt("hideWithInteractivity")),z().addEventListener("mousemove",x),un(re,x),x(s)}function hi(){process.env.NODE_ENV!=="production"&&at(i.state.isDestroyed,Lt("unmount")),i.state.isVisible&&i.hide(),i.state.isMounted&&(ue(),dt().forEach(function(s){s._tippy.unmount()}),d.parentNode&&d.parentNode.removeChild(d),Ie=Ie.filter(function(s){return s!==i}),i.state.isMounted=!1,R("onHidden",[i]))}function mi(){process.env.NODE_ENV!=="production"&&at(i.state.isDestroyed,Lt("destroy")),!i.state.isDestroyed&&(i.clearDelayTimeouts(),i.unmount(),ie(),delete t._tippy,i.state.isDestroyed=!0,R("onDestroy",[i]))}}function zt(t,e){e===void 0&&(e={});var n=U.plugins.concat(e.plugins||[]);process.env.NODE_ENV!=="production"&&(ni(t),bn(e,n)),Jr();var r=Object.assign({},e,{plugins:n}),o=qr(t);if(process.env.NODE_ENV!=="production"){var a=Ft(r.content),u=o.length>1;at(a&&u,["tippy() was passed an Element as the `content` prop, but more than","one tippy instance was created by this invocation. This means the","content element will only be appended to the last tippy instance.",`
`,"Instead, pass the .innerHTML of the element, or use a function that","returns a cloned version of the element instead.",`
`,`1) content: element.innerHTML
`,"2) content: () => element.cloneNode(true)"].join(" "))}var c=o.reduce(function(p,f){var l=f&&pi(f,r);return l&&p.push(l),p},[]);return Ft(t)?c[0]:c}zt.defaultProps=U,zt.setDefaultProps=oi,zt.currentInput=et,Object.assign({},$e,{effect:function(e){var n=e.state,r={popper:{position:n.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(n.elements.popper.style,r.popper),n.styles=r,n.elements.arrow&&Object.assign(n.elements.arrow.style,r.arrow)}}),zt.setDefaultProps({render:En});const wi="";class ci{constructor(e,n,r="bottom",o="dark"){g(this,"instance");this.instance=zt(n,{content:e,appendTo:document.body,interactive:!0,trigger:"click",placement:r,theme:o})}hide(){this.instance.hide()}setTheme(e){this.instance.setProps({theme:e})}}class li{constructor(e,n,r=20,o=Me){g(this,"iconset");g(this,"container");g(this,"inputSearch");g(this,"iconButtonGroup");g(this,"footer");g(this,"navBar");g(this,"groupList");g(this,"iconButtonEvent",new G);g(this,"options");g(this,"totalResult",0);g(this,"groupSize");g(this,"isButton",!1);g(this,"button",null);g(this,"popover",null);g(this,"selected","");let a=document.getElementById(e);if(a==null)throw Error("Element does not exists");switch(a.tagName){case"DIV":this.container=a;break;case"BUTTON":this.container=Pt(e+"-ip-container","200px"),this.isButton=!0,this.button=Bn(a);break;default:throw Error("Element it is not a div or button")}this.iconset=n,this.options={...Me,...o},this.groupSize=r,this.groupList=new Dn(this.iconset,this.groupSize),this.totalResult=this.groupList.getTotalItems(),this.inputSearch=new Cn(this.options.inputClass,this.options.inputPlaceholder),this.navBar=new Sn(this.options.navButtonClass,this.options.arrowPrevIconClass,this.options.arrowNextIconClass),this.iconButtonGroup=new Ln(this.iconButtonEvent,this.options.iconButtonClass,this.options.selectedIconButtonClass),this.footer=new An(this.options.templateFooter),this.onChange(u=>{var c;if(this.iconButtonGroup.setSelected(u.icon),this.iconButtonGroup.refresh(),this.isButton){let p=(c=this.button)==null?void 0:c.getElementsByTagName("i").item(0);p.className=u.icon}})}onChange(e){this.iconButtonEvent.on("select",e)}setSelected(e){let n=this.groupList.getGroupIndex(e);if(n>=0){this.iconButtonGroup.setSelected(e);let r=this.groupList.goTo(n);jt(this.iconButtonGroup.getElement()),this.updateElements(this.groupList,r,this.totalResult,this.navBar.getButtons())}}setupInputSearch(){var e;this.inputSearch.getInput().addEventListener("keyup",n=>{var r;if(n.key==vt.ESCAPE&&this.isButton){(r=this.popover)==null||r.hide();return}if(this.totalResult=this.groupList.search(this.inputSearch.getInput().value),jt(this.iconButtonGroup.getElement()),this.totalResult>0){let o=this.groupList.first();this.iconButtonGroup.updateIconButtons(o),this.navBar.updateNavLabel(this.groupList.getIndex(),this.groupList.getTotalGroups()),this.navBar.updateNavButtons(this.groupList.isFirst(),this.groupList.isLast(),this.navBar.getButtons().previous,this.navBar.getButtons().next),this.footer.update(this.groupList.getIndex(),this.groupSize,o.length,this.totalResult)}else this.navBar.updateNavLabel(-1,0),this.navBar.updateNavButtons(!0,!0,this.navBar.getButtons().previous,this.navBar.getButtons().next),this.footer.getElement().innerHTML=`'${this.inputSearch.getInput().value}' is not found`}),this.inputSearch.mount(),(e=this.container)==null||e.append(this.inputSearch.getElement())}setupNavButtons(){let e=this.groupList.getTotalGroups();this.navBar.setupNavLabel(this.groupList.getIndex(),e),this.navBar.updateNavButtons(this.groupList.isFirst(),this.groupList.isLast(),this.navBar.getButtons().previous,this.navBar.getButtons().next),this.navBar.getButtons().next.addEventListener("click",()=>{jt(this.iconButtonGroup.getElement());let n=this.groupList.next();this.updateElements(this.groupList,n,this.totalResult,this.navBar.getButtons())}),this.navBar.getButtons().previous.addEventListener("click",()=>{jt(this.iconButtonGroup.getElement());let n=this.groupList.previous();this.updateElements(this.groupList,n,this.totalResult,this.navBar.getButtons())}),this.navBar.mount(),this.container.append(this.navBar.getElement())}updateElements(e,n,r,o){this.navBar.updateNavLabel(e.getIndex(),e.getTotalGroups()),this.iconButtonGroup.updateIconButtons(n),this.navBar.updateNavButtons(e.isFirst(),e.isLast(),o.previous,o.next),this.footer.update(this.groupList.getIndex(),this.groupSize,n.length,r)}setPopoverTheme(e){var n;this.isButton&&((n=this.popover)==null||n.setTheme(e))}mount(){let e=this.groupList.first();this.iconButtonGroup.updateIconButtons(e),this.setupInputSearch(),this.setupNavButtons(),this.container.append(this.iconButtonGroup.getElement()),this.footer.update(this.groupList.getIndex(),this.groupSize,e.length,this.groupList.getTotalItems()),this.container.append(this.footer.getElement()),this.isButton&&(this.popover=new ci(this.container,this.button,this.options.placement,this.options.popoverTheme),this.iconButtonEvent.on("select",()=>{var n;(n=this.popover)==null||n.hide()