domma-js 0.3.0-a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +674 -0
- package/README.md +392 -0
- package/package.json +68 -0
- package/public/dist/bundles/domma-complete.css +11147 -0
- package/public/dist/bundles/domma-data-focused.css +11147 -0
- package/public/dist/bundles/domma-essentials.css +11147 -0
- package/public/dist/bundles/domma-full.css +11147 -0
- package/public/dist/bundles/domma-minimal.css +2867 -0
- package/public/dist/domma.css +2314 -0
- package/public/dist/domma.esm.js +8 -0
- package/public/dist/domma.min.js +8 -0
- package/public/dist/elements.css +4798 -0
- package/public/dist/grid.css +538 -0
- package/public/dist/syntax.css +166 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Domma v0.3.0a
|
|
3
|
+
* Dynamic Object Manipulation & Modeling API
|
|
4
|
+
* (c) 2025 Darryl Waterhouse & DCBW-IT
|
|
5
|
+
* Built: 2025-12-29T16:28:51.768Z
|
|
6
|
+
* Commit: 8a467f0
|
|
7
|
+
*/
|
|
8
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Domma={})}(this,function(e){"use strict";class t{constructor(e,o){if("string"==typeof e)if(e.trim().startsWith("<")){const t=document.createElement("div");t.innerHTML=e.trim(),this.elements=Array.from(t.children)}else{const t=o||document;this.elements=Array.from(t.querySelectorAll(e))}else e instanceof Node?this.elements=[e]:e instanceof NodeList||e instanceof HTMLCollection?this.elements=Array.from(e):Array.isArray(e)?this.elements=e.filter(e=>e instanceof HTMLElement):this.elements=e instanceof t?[...e.elements]:[];this.length=this.elements.length}find(e){const o=[];return this.elements.forEach(t=>{o.push(...t.querySelectorAll(e))}),new t(o)}children(e){const o=[];return this.elements.forEach(e=>{o.push(...e.children)}),new t(e?o.filter(t=>t.matches(e)):o)}parent(e){const o=[];return this.elements.forEach(t=>{t.parentElement&&(e&&!t.parentElement.matches(e)||o.includes(t.parentElement)||o.push(t.parentElement))}),new t(o)}parents(e){const o=[];return this.elements.forEach(t=>{let n=t.parentElement;for(;n;)e&&!n.matches(e)||o.includes(n)||o.push(n),n=n.parentElement}),new t(o)}closest(e){const o=[];return this.elements.forEach(t=>{const n=t.closest(e);n&&!o.includes(n)&&o.push(n)}),new t(o)}siblings(e){const o=[];return this.elements.forEach(t=>{t.parentElement&&Array.from(t.parentElement.children).forEach(n=>{n===t||o.includes(n)||e&&!n.matches(e)||o.push(n)})}),new t(o)}next(e){const o=[];return this.elements.forEach(t=>{let n=t.nextElementSibling;n&&(e&&!n.matches(e)||o.push(n))}),new t(o)}nextAll(e){const o=[];return this.elements.forEach(t=>{let n=t.nextElementSibling;for(;n;)e&&!n.matches(e)||o.includes(n)||o.push(n),n=n.nextElementSibling}),new t(o)}prev(e){const o=[];return this.elements.forEach(t=>{let n=t.previousElementSibling;n&&(e&&!n.matches(e)||o.push(n))}),new t(o)}prevAll(e){const o=[];return this.elements.forEach(t=>{let n=t.previousElementSibling;for(;n;)e&&!n.matches(e)||o.includes(n)||o.unshift(n),n=n.previousElementSibling}),new t(o)}first(){return new t(this.elements[0]?[this.elements[0]]:[])}last(){return new t(this.elements.length?[this.elements[this.elements.length-1]]:[])}eq(e){const o=e<0?this.elements.length+e:e;return new t(this.elements[o]?[this.elements[o]]:[])}get(e){if(void 0===e)return this.elements;const t=e<0?this.elements.length+e:e;return this.elements[t]}filter(e){return new t("function"==typeof e?this.elements.filter((t,o)=>e.call(t,o,t)):this.elements.filter(t=>t.matches(e)))}not(e){return new t("function"==typeof e?this.elements.filter((t,o)=>!e.call(t,o,t)):this.elements.filter(t=>!t.matches(e)))}is(e){return this.elements.some(t=>t.matches(e))}has(e){return new t(this.elements.filter(t=>t.querySelector(e)))}add(e){const o=new t(e),n=[...this.elements];return o.elements.forEach(e=>{n.includes(e)||n.push(e)}),new t(n)}contents(){const e=[];return this.elements.forEach(t=>{e.push(...t.childNodes)}),new t(e)}toArray(){return[...this.elements]}index(e){if(void 0===e){const e=this.elements[0];return e&&e.parentElement?Array.from(e.parentElement.children).indexOf(e):-1}return"string"==typeof e?new t(e).elements.indexOf(this.elements[0]):this.elements.indexOf(e)}each(e){return this.elements.forEach((t,o)=>e.call(t,o,t)),this}html(e){return void 0===e?this.elements[0]?this.elements[0].innerHTML:"":this.each((t,o)=>{o.innerHTML=e})}text(e){return void 0===e?this.elements.map(e=>e.textContent).join(""):this.each((t,o)=>{o.textContent=e})}val(e){if(void 0===e){const e=this.elements[0];if(!e)return;return"checkbox"===e.type||"radio"===e.type?e.checked?e.value:void 0:"SELECT"===e.tagName&&e.multiple?Array.from(e.selectedOptions).map(e=>e.value):e.value}return this.each((t,o)=>{"checkbox"===o.type||"radio"===o.type?o.checked=Array.isArray(e)?e.includes(o.value):o.value===e:"SELECT"===o.tagName&&o.multiple&&Array.isArray(e)?Array.from(o.options).forEach(t=>{t.selected=e.includes(t.value)}):o.value=e})}attr(e,t){return"object"==typeof e?this.each((t,o)=>{Object.entries(e).forEach(([e,t])=>{o.setAttribute(e,t)})}):void 0===t?this.elements[0]?this.elements[0].getAttribute(e):void 0:this.each((o,n)=>{n.setAttribute(e,t)})}removeAttr(e){const t=e.split(/\s+/);return this.each((e,o)=>{t.forEach(e=>o.removeAttribute(e))})}prop(e,t){return"object"==typeof e?this.each((t,o)=>{Object.entries(e).forEach(([e,t])=>{o[e]=t})}):void 0===t?this.elements[0]?this.elements[0][e]:void 0:this.each((o,n)=>{n[e]=t})}removeProp(e){return this.each((t,o)=>{delete o[e]})}data(e,t){if(void 0===e){const e=this.elements[0];if(!e)return;const t={};return Object.keys(e.dataset).forEach(o=>{t[o]=e.dataset[o]}),t}return"object"==typeof e?this.each((t,o)=>{Object.entries(e).forEach(([e,t])=>{o.dataset[e]=t})}):void 0===t?this.elements[0]?this.elements[0].dataset[e]:void 0:this.each((o,n)=>{n.dataset[e]=t})}removeData(e){return this.each((t,o)=>{delete o.dataset[e]})}css(e,t){return"object"==typeof e?this.each((t,o)=>{Object.entries(e).forEach(([e,t])=>{o.style[e]=t})}):void 0===t?this.elements[0]?getComputedStyle(this.elements[0])[e]:"":this.each((o,n)=>{n.style[e]=t})}addClass(e){if("function"==typeof e)return this.each((t,o)=>{const n=e.call(o,t,o.className);n&&o.classList.add(...n.split(/\s+/).filter(Boolean))});const t=e.split(/\s+/).filter(Boolean);return this.each((e,o)=>{o.classList.add(...t)})}removeClass(e){if(void 0===e)return this.each((e,t)=>{t.className=""});if("function"==typeof e)return this.each((t,o)=>{const n=e.call(o,t,o.className);n&&o.classList.remove(...n.split(/\s+/).filter(Boolean))});const t=e.split(/\s+/).filter(Boolean);return this.each((e,o)=>{o.classList.remove(...t)})}toggleClass(e,t){if("function"==typeof e)return this.each((o,n)=>{const i=e.call(n,o,n.className,t);i&&i.split(/\s+/).filter(Boolean).forEach(e=>{n.classList.toggle(e,t)})});const o=e.split(/\s+/).filter(Boolean);return this.each((e,n)=>{o.forEach(e=>{n.classList.toggle(e,t)})})}hasClass(e){return this.elements.some(t=>t.classList.contains(e))}append(e){return this.each((t,o)=>{this._getNodes(e,t,o).forEach(e=>o.appendChild(e))})}prepend(e){return this.each((t,o)=>{const n=this._getNodes(e,t,o),i=o.firstChild;n.forEach(e=>o.insertBefore(e,i))})}after(e){return this.each((t,o)=>{const n=this._getNodes(e,t,o),i=o.parentNode,s=o.nextSibling;n.forEach(e=>i.insertBefore(e,s))})}before(e){return this.each((t,o)=>{const n=this._getNodes(e,t,o),i=o.parentNode;n.forEach(e=>i.insertBefore(e,o))})}appendTo(e){return new t(e).append(this),this}prependTo(e){return new t(e).prepend(this),this}insertAfter(e){return new t(e).after(this),this}insertBefore(e){return new t(e).before(this),this}wrap(e){return this.each((t,o)=>{const n=this._getWrapper(e,t,o);o.parentNode&&(o.parentNode.insertBefore(n,o),n.appendChild(o))})}wrapAll(e){if(0===this.elements.length)return this;const t=this._getWrapper(e,0,this.elements[0]);return this.elements[0].parentNode.insertBefore(t,this.elements[0]),this.elements.forEach(e=>t.appendChild(e)),this}wrapInner(e){return this.each((t,o)=>{const n=this._getWrapper(e,t,o);for(;o.firstChild;)n.appendChild(o.firstChild);o.appendChild(n)})}unwrap(e){return this.parent(e).each((e,t)=>{const o=t.parentNode;for(;t.firstChild;)o.insertBefore(t.firstChild,t);o.removeChild(t)}),this}remove(e){return(e?this.filter(e):this).each((e,t)=>{t.parentNode&&t.parentNode.removeChild(t)}),this}detach(){return this.remove()}empty(){return this.each((e,t)=>{t.innerHTML=""})}clone(e=!0){return new t(this.elements.map(t=>t.cloneNode(e)))}replaceWith(e){return this.each((t,o)=>{const n=this._getNodes(e,t,o),i=o.parentNode;n.forEach((e,t)=>{0===t?i.replaceChild(e,o):i.insertBefore(e,n[t-1].nextSibling)})})}replaceAll(e){return new t(e).replaceWith(this),this}_getNodes(e,o,n){if("function"==typeof e&&(e=e.call(n,o,n.innerHTML)),"string"==typeof e){if(e.trim().startsWith("<")){const t=document.createElement("div");return t.innerHTML=e,Array.from(t.childNodes)}return[document.createTextNode(e)]}return e instanceof HTMLElement?[e.cloneNode(!0)]:e instanceof t?e.elements.map(e=>e.cloneNode(!0)):[]}_getWrapper(e,o,n){let i;if("function"==typeof e&&(e=e.call(n,o)),"string"==typeof e){const t=document.createElement("div");t.innerHTML=e.trim(),i=t.firstElementChild}else i=e instanceof HTMLElement?e.cloneNode(!0):e instanceof t?e.elements[0].cloneNode(!0):document.createElement("div");return i}on(e,t,o){"function"==typeof t&&(o=t,t=null);const n=e.split(/\s+/);return this.each((e,i)=>{n.forEach(e=>{if(t){const n=e=>{const n=e.target.closest(t);n&&i.contains(n)&&o.call(n,e)};i.addEventListener(e,n),i._dommaHandlers=i._dommaHandlers||[],i._dommaHandlers.push({event:e,selector:t,handler:o,delegated:n})}else i.addEventListener(e,o)})})}off(e,t,o){return"function"==typeof t&&(o=t,t=null),this.each((n,i)=>{if(e){e.split(/\s+/).forEach(e=>{t&&i._dommaHandlers?i._dommaHandlers=i._dommaHandlers.filter(n=>!!(n.event!==e||n.selector!==t||o&&n.handler!==o)||(i.removeEventListener(e,n.delegated),!1)):o&&i.removeEventListener(e,o)})}})}one(e,t,o){"function"==typeof t&&(o=t,t=null);const n=this,i=function(s){o.call(this,s),n.off(e,t,i)};return this.on(e,t,i)}trigger(e,t){const o=new CustomEvent(e,{detail:t,bubbles:!0,cancelable:!0});return this.each((e,t)=>{t.dispatchEvent(o)})}triggerNative(e){return this.each((t,o)=>{const n=new Event(e,{bubbles:!0,cancelable:!0});o.dispatchEvent(n)})}click(e){return e?this.on("click",e):this.triggerNative("click")}dblclick(e){return e?this.on("dblclick",e):this.trigger("dblclick")}mousedown(e){return e?this.on("mousedown",e):this.trigger("mousedown")}mouseup(e){return e?this.on("mouseup",e):this.trigger("mouseup")}mousemove(e){return e?this.on("mousemove",e):this.trigger("mousemove")}mouseover(e){return e?this.on("mouseover",e):this.trigger("mouseover")}mouseout(e){return e?this.on("mouseout",e):this.trigger("mouseout")}mouseenter(e){return e?this.on("mouseenter",e):this.trigger("mouseenter")}mouseleave(e){return e?this.on("mouseleave",e):this.trigger("mouseleave")}keydown(e){return e?this.on("keydown",e):this.trigger("keydown")}keyup(e){return e?this.on("keyup",e):this.trigger("keyup")}keypress(e){return e?this.on("keypress",e):this.trigger("keypress")}focus(e){return e?this.on("focus",e):this.each((e,t)=>t.focus())}blur(e){return e?this.on("blur",e):this.each((e,t)=>t.blur())}change(e){return e?this.on("change",e):this.trigger("change")}select(e){return e?this.on("select",e):this.trigger("select")}submit(e){return e?this.on("submit",e):this.each((e,t)=>{t.submit&&t.submit()})}scroll(e){return e?this.on("scroll",e):this.trigger("scroll")}resize(e){return e?this.on("resize",e):this.trigger("resize")}hover(e,t){return this.on("mouseenter",e),t?this.on("mouseleave",t):this.on("mouseleave",e),this}show(e,t){return this.each((o,n)=>{e?(n.style.display="",n.style.opacity="0",n.style.transition=`opacity ${this._getDuration(e)}ms`,requestAnimationFrame(()=>{n.style.opacity="1",t&&setTimeout(()=>t.call(n),this._getDuration(e))})):(n.style.display="",t&&t.call(n))})}hide(e,t){return this.each((o,n)=>{e?(n.style.transition=`opacity ${this._getDuration(e)}ms`,n.style.opacity="0",setTimeout(()=>{n.style.display="none",n.style.opacity="",n.style.transition="",t&&t.call(n)},this._getDuration(e))):(n.style.display="none",t&&t.call(n))})}toggle(e,o){return this.each((n,i)=>{"none"===getComputedStyle(i).display?new t(i).show(e,o):new t(i).hide(e,o)})}fadeIn(e=400,t){return this.each((o,n)=>{n.style.display="",n.style.opacity="0",n.style.transition=`opacity ${this._getDuration(e)}ms`,requestAnimationFrame(()=>{n.style.opacity="1",setTimeout(()=>{n.style.transition="",t&&t.call(n)},this._getDuration(e))})})}fadeOut(e=400,t){return this.each((o,n)=>{n.style.transition=`opacity ${this._getDuration(e)}ms`,n.style.opacity="0",setTimeout(()=>{n.style.display="none",n.style.opacity="",n.style.transition="",t&&t.call(n)},this._getDuration(e))})}fadeToggle(e=400,o){return this.each((n,i)=>{"none"===getComputedStyle(i).display||"0"===getComputedStyle(i).opacity?new t(i).fadeIn(e,o):new t(i).fadeOut(e,o)})}fadeTo(e,t,o){return this.each((n,i)=>{i.style.display="",i.style.transition=`opacity ${this._getDuration(e)}ms`,requestAnimationFrame(()=>{i.style.opacity=String(t),setTimeout(()=>{i.style.transition="",o&&o.call(i)},this._getDuration(e))})})}slideUp(e=400,t){return this.each((o,n)=>{const i=n.offsetHeight;n.style.overflow="hidden",n.style.height=i+"px",n.style.transition=`height ${this._getDuration(e)}ms`,requestAnimationFrame(()=>{n.style.height="0",setTimeout(()=>{n.style.display="none",n.style.height="",n.style.overflow="",n.style.transition="",t&&t.call(n)},this._getDuration(e))})})}slideDown(e=400,t){return this.each((o,n)=>{n.style.display="";const i=n.scrollHeight;n.style.overflow="hidden",n.style.height="0",n.style.transition=`height ${this._getDuration(e)}ms`,requestAnimationFrame(()=>{n.style.height=i+"px",setTimeout(()=>{n.style.height="",n.style.overflow="",n.style.transition="",t&&t.call(n)},this._getDuration(e))})})}slideToggle(e=400,o){return this.each((n,i)=>{"none"===getComputedStyle(i).display?new t(i).slideDown(e,o):new t(i).slideUp(e,o)})}animate(e,t=400,o="ease",n){"function"==typeof t?(n=t,t=400,o="ease"):"function"==typeof o&&(n=o,o="ease");const i=Object.keys(e).join(", "),s=this._getDuration(t);return this.each((t,r)=>{r.style.transition=`${i} ${s}ms ${o}`,requestAnimationFrame(()=>{Object.entries(e).forEach(([e,t])=>{r.style[e]="number"==typeof t?t+"px":t}),setTimeout(()=>{r.style.transition="",n&&n.call(r)},s)})})}stop(){return this.each((e,t)=>{const o=getComputedStyle(t);t.style.transition="none",["opacity","height","width"].forEach(e=>{t.style[e]&&(t.style[e]=o[e])})})}delay(e){return new Promise(t=>{setTimeout(()=>t(this),e)})}_getDuration(e){return"number"==typeof e?e:"fast"===e?200:"slow"===e?600:400}width(e){if(void 0===e){const e=this.elements[0];if(!e)return;return e.getBoundingClientRect().width}return this.each((o,n)=>{const i="function"==typeof e?e.call(n,o,new t(n).width()):e;n.style.width="number"==typeof i?i+"px":i})}height(e){if(void 0===e){const e=this.elements[0];if(!e)return;return e.getBoundingClientRect().height}return this.each((o,n)=>{const i="function"==typeof e?e.call(n,o,new t(n).height()):e;n.style.height="number"==typeof i?i+"px":i})}innerWidth(){const e=this.elements[0];return e?e.clientWidth:void 0}innerHeight(){const e=this.elements[0];return e?e.clientHeight:void 0}outerWidth(e=!1){const t=this.elements[0];if(!t)return;let o=t.offsetWidth;if(e){const e=getComputedStyle(t);o+=parseFloat(e.marginLeft)+parseFloat(e.marginRight)}return o}outerHeight(e=!1){const t=this.elements[0];if(!t)return;let o=t.offsetHeight;if(e){const e=getComputedStyle(t);o+=parseFloat(e.marginTop)+parseFloat(e.marginBottom)}return o}offset(e){if(void 0===e){const e=this.elements[0];if(!e)return;const t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}}return this.each((o,n)=>{"static"===getComputedStyle(n).position&&(n.style.position="relative");const i=new t(n).offset(),s=parseFloat(getComputedStyle(n).left)||0,r=parseFloat(getComputedStyle(n).top)||0;void 0!==e.left&&(n.style.left=s+e.left-i.left+"px"),void 0!==e.top&&(n.style.top=r+e.top-i.top+"px")})}position(){const e=this.elements[0];if(e)return{top:e.offsetTop,left:e.offsetLeft}}scrollTop(e){if(void 0===e){const e=this.elements[0];if(!e)return;return e===window?window.pageYOffset:e.scrollTop}return this.each((t,o)=>{o===window?window.scrollTo(window.pageXOffset,e):o.scrollTop=e})}scrollLeft(e){if(void 0===e){const e=this.elements[0];if(!e)return;return e===window?window.pageXOffset:e.scrollLeft}return this.each((t,o)=>{o===window?window.scrollTo(e,window.pageYOffset):o.scrollLeft=e})}offsetParent(){return new t(this.elements.map(e=>e.offsetParent||document.body))}}const o=(e,o)=>"function"==typeof e?("loading"===document.readyState?document.addEventListener("DOMContentLoaded",e):e(),new t([])):new t(e,o),n={async request(e,t,o=null,n={}){const i={method:e,headers:{"Content-Type":"application/json",...n.headers},...n};o&&"GET"!==e&&"HEAD"!==e&&(i.body=JSON.stringify(o));try{const e=await fetch(t,i);if(!e.ok)throw new Error(`HTTP Error: ${e.status}`);return await e.json()}catch(e){throw console.error("Domma HTTP Error:",e),e}},get(e,t){return this.request("GET",e,null,t)},post(e,t,o){return this.request("POST",e,t,o)},put(e,t,o){return this.request("PUT",e,t,o)},delete(e,t){return this.request("DELETE",e,null,t)}},i={chunk(e,t=1){if(!e||t<1)return[];const o=[];for(let n=0;n<e.length;n+=t)o.push(e.slice(n,n+t));return o},compact:e=>e?e.filter(Boolean):[],concat:(e,...t)=>e?e.concat(...t):[],difference(e,...t){if(!e)return[];const o=new Set(t.flat());return e.filter(e=>!o.has(e))},differenceBy(e,t,o){if(!e)return[];const n=new Set(t.map(o));return e.filter(e=>!n.has(o(e)))},differenceWith:(e,t,o)=>e?e.filter(e=>!t.some(t=>o(e,t))):[],drop:(e,t=1)=>e?e.slice(t):[],dropRight(e,t=1){if(!e)return[];const o=e.length-t;return o>0?e.slice(0,o):[]},dropRightWhile(e,t){if(!e)return[];let o=e.length;for(;o--&&t(e[o],o,e););return e.slice(0,o+1)},dropWhile(e,t){if(!e)return[];let o=0;for(;o<e.length&&t(e[o],o,e);)o++;return e.slice(o)},eq:(e,t)=>e===t||e!=e&&t!=t,fill:(e,t,o=0,n)=>e?e.fill(t,o,n):[],findIndex(e,t,o=0){if(!e)return-1;for(let n=o;n<e.length;n++)if(t(e[n],n,e))return n;return-1},findLastIndex(e,t,o){if(!e)return-1;for(let n=void 0!==o?o:e.length-1;n>=0;n--)if(t(e[n],n,e))return n;return-1},first:e=>e?e[0]:void 0,head(e){return this.first(e)},flatten:e=>e?e.flat(1):[],flattenDeep:e=>e?e.flat(1/0):[],flattenDepth:(e,t=1)=>e?e.flat(t):[],fromPairs:e=>e?Object.fromEntries(e):{},indexOf:(e,t,o=0)=>e?e.indexOf(t,o):-1,initial:e=>e?e.slice(0,-1):[],intersection(...e){if(!e.length)return[];return e[0].filter(t=>e.every(e=>e.includes(t)))},join:(e,t=",")=>e?e.join(t):"",last:e=>e?e[e.length-1]:void 0,lastIndexOf:(e,t,o)=>e?void 0!==o?e.lastIndexOf(t,o):e.lastIndexOf(t):-1,nth(e,t=0){if(e)return t<0?e[e.length+t]:e[t]},pull(e,...t){if(!e)return[];const o=new Set(t);for(let t=e.length-1;t>=0;t--)o.has(e[t])&&e.splice(t,1);return e},pullAt(e,...t){if(!e)return[];const o=t.flat().sort((e,t)=>t-e),n=[];return o.forEach(t=>{t>=0&&t<e.length&&n.unshift(e.splice(t,1)[0])}),n},reverse:e=>e?e.reverse():[],slice:(e,t=0,o)=>e?void 0!==o?e.slice(t,o):e.slice(t):[],tail:e=>e?e.slice(1):[],take:(e,t=1)=>e?e.slice(0,t):[],takeRight(e,t=1){if(!e)return[];const o=Math.max(0,e.length-t);return e.slice(o)},union:(...e)=>[...new Set(e.flat())],uniq:e=>e?[...new Set(e)]:[],uniqBy(e,t){if(!e)return[];const o=new Set;return e.filter(e=>{const n=t(e);return!o.has(n)&&(o.add(n),!0)})},without(e,...t){if(!e)return[];const o=new Set(t);return e.filter(e=>!o.has(e))},xor(...e){if(!e.length)return[];const t=new Map;return e.flat().forEach(e=>{t.set(e,(t.get(e)||0)+1)}),[...t.entries()].filter(([,e])=>1===e).map(([e])=>e)},zip(...e){if(!e.length)return[];const t=Math.max(...e.map(e=>e.length)),o=[];for(let n=0;n<t;n++)o.push(e.map(e=>e[n]));return o},zipObject(e,t){if(!e)return{};const o={};return e.forEach((e,n)=>{o[e]=t?t[n]:void 0}),o},times(e,t){if((e=Math.floor(e))<1)return[];const o=new Array(e);for(let n=0;n<e;n++)o[n]=t?t(n):n;return o},range(e,t,o){if(void 0===t&&(t=e,e=0),0===(o=void 0===o?e<t?1:-1:o))return[];const n=Math.max(Math.ceil((t-e)/(o||1)),0),i=new Array(n);for(let t=0;t<n;t++)i[t]=e+t*o;return i},uniqueId:(()=>{let e=0;return function(t=""){const o=++e;return t?`${t}${o}`:String(o)}})(),countBy(e,t){const o={};return this.each(e,e=>{const n=t(e);o[n]=(o[n]||0)+1}),o},each:(e,t)=>(Array.isArray(e)?e.forEach((o,n)=>t(o,n,e)):e&&"object"==typeof e&&Object.keys(e).forEach(o=>t(e[o],o,e)),e),forEach(e,t){return this.each(e,t)},eachRight(e,t){if(Array.isArray(e))for(let o=e.length-1;o>=0;o--)t(e[o],o,e);else if(e&&"object"==typeof e){Object.keys(e).reverse().forEach(o=>t(e[o],o,e))}return e},forEachRight(e,t){return this.eachRight(e,t)},every:(e,t)=>Array.isArray(e)?e.every(t):!e||"object"!=typeof e||Object.values(e).every(t),filter:(e,t)=>Array.isArray(e)?e.filter(t):e&&"object"==typeof e?Object.values(e).filter(t):[],find:(e,t)=>Array.isArray(e)?e.find(t):e&&"object"==typeof e?Object.values(e).find(t):void 0,findLast(e,t){if(Array.isArray(e)){for(let o=e.length-1;o>=0;o--)if(t(e[o],o,e))return e[o]}else if(e&&"object"==typeof e){return Object.values(e).reverse().find(t)}},flatMap(e,t){return this.map(e,t).flat(1)},flatMapDeep(e,t){return this.map(e,t).flat(1/0)},groupBy(e,t){const o={};return this.each(e,e=>{const n="function"==typeof t?t(e):e[t];o[n]||(o[n]=[]),o[n].push(e)}),o},includes:(e,t,o=0)=>"string"==typeof e||Array.isArray(e)?e.includes(t,o):!(!e||"object"!=typeof e)&&Object.values(e).includes(t),keyBy(e,t){const o={};return this.each(e,e=>{const n="function"==typeof t?t(e):e[t];o[n]=e}),o},map:(e,t)=>Array.isArray(e)?e.map(t):e&&"object"==typeof e?Object.entries(e).map(([o,n])=>t(n,o,e)):[],orderBy(e,t,o){const n=Array.isArray(e)?[...e]:Object.values(e),i=Array.isArray(t)?t:[t],s=Array.isArray(o)?o:[o||"asc"];return n.sort((e,t)=>{for(let o=0;o<i.length;o++){const n=i[o],r=s[o]||"asc",a="function"==typeof n?n(e):e[n],l="function"==typeof n?n(t):t[n];if(a<l)return"asc"===r?-1:1;if(a>l)return"asc"===r?1:-1}return 0})},partition(e,t){const o=[],n=[];return this.each(e,(i,s)=>{t(i,s,e)?o.push(i):n.push(i)}),[o,n]},reduce(e,t,o){if(Array.isArray(e))return void 0!==o?e.reduce(t,o):e.reduce(t);if(e&&"object"==typeof e){const n=Object.entries(e);let i=o,s=0;void 0===i&&n.length>0&&(i=n[0][1],s=1);for(let o=s;o<n.length;o++){const[s,r]=n[o];i=t(i,r,s,e)}return i}return o},reduceRight(e,t,o){if(Array.isArray(e))return void 0!==o?e.reduceRight(t,o):e.reduceRight(t);if(e&&"object"==typeof e){const n=Object.entries(e).reverse();let i=o,s=0;void 0===i&&n.length>0&&(i=n[0][1],s=1);for(let o=s;o<n.length;o++){const[s,r]=n[o];i=t(i,r,s,e)}return i}return o},reject(e,t){return this.filter(e,(e,o,n)=>!t(e,o,n))},sample(e){const t=Array.isArray(e)?e:Object.values(e||{});return t[Math.floor(Math.random()*t.length)]},sampleSize(e,t=1){return this.shuffle(Array.isArray(e)?[...e]:Object.values(e||{})).slice(0,t)},shuffle(e){const t=Array.isArray(e)?[...e]:Object.values(e||{});for(let e=t.length-1;e>0;e--){const o=Math.floor(Math.random()*(e+1));[t[e],t[o]]=[t[o],t[e]]}return t},size:e=>null==e?0:"string"==typeof e||Array.isArray(e)?e.length:"object"==typeof e?Object.keys(e).length:0,some:(e,t)=>Array.isArray(e)?e.some(t):!(!e||"object"!=typeof e)&&Object.values(e).some(t),sortBy:(e,t)=>(Array.isArray(e)?[...e]:Object.values(e)).sort((e,o)=>{const n="function"==typeof t?t(e):e[t],i="function"==typeof t?t(o):o[t];return n<i?-1:n>i?1:0}),after(e,t){let o=0;return function(...n){if(++o>=e)return t.apply(this,n)}},ary:(e,t=e.length)=>function(...o){return e.apply(this,o.slice(0,t))},before(e,t){let o,n=0;return function(...i){return++n<e&&(o=t.apply(this,i)),o}},bind:(e,t,...o)=>function(...n){return e.apply(t,[...o,...n])},curry:(e,t=e.length)=>function o(...n){return n.length>=t?e.apply(this,n):function(...e){return o.apply(this,[...n,...e])}},curryRight:(e,t=e.length)=>function o(...n){return n.length>=t?e.apply(this,n):function(...e){return o.apply(this,[...e,...n])}},debounce(e,t=0,o={}){let n,i,s,r,a,l=0;const h=o.leading||!1,c=!1!==o.trailing,d=o.maxWait;function u(t){const o=i,n=s;return i=s=void 0,l=t,r=e.apply(n,o),r}function p(e){const o=e-a;return void 0===a||o>=t||o<0||void 0!==d&&e-l>=d}function m(){const e=Date.now();if(p(e))return f(e);n=setTimeout(m,function(e){const o=e-a,n=e-l,i=t-o;return void 0!==d?Math.min(i,d-n):i}(e))}function f(e){return n=void 0,c&&i?u(e):(i=s=void 0,r)}function k(...e){const o=Date.now(),c=p(o);if(i=e,s=this,a=o,c){if(void 0===n)return function(e){return l=e,n=setTimeout(m,t),h?u(e):r}(a);if(void 0!==d)return n=setTimeout(m,t),u(a)}return void 0===n&&(n=setTimeout(m,t)),r}return k.cancel=function(){void 0!==n&&clearTimeout(n),l=0,i=a=s=n=void 0},k.flush=function(){return void 0===n?r:f(Date.now())},k},defer(e,...t){return setTimeout(()=>e.apply(this,t),1)},delay(e,t,...o){return setTimeout(()=>e.apply(this,o),t)},flip:e=>function(...t){return e.apply(this,t.reverse())},flow(...e){const t=e.length;return 0===t?function(e){return e}:1===t?e[0]:function(...o){let n=e[0].apply(this,o);for(let o=1;o<t;o++)n=e[o].call(this,n);return n}},compose(...e){return this.flow(...e.reverse())},memoize(e,t){const o=new Map,n=function(...n){const i=t?t.apply(this,n):n[0];if(o.has(i))return o.get(i);const s=e.apply(this,n);return o.set(i,s),s};return n.cache=o,n},negate:e=>function(...t){return!e.apply(this,t)},once(e){return this.before(2,e)},partial:(e,...t)=>function(...o){return e.apply(this,[...t,...o])},partialRight:(e,...t)=>function(...o){return e.apply(this,[...o,...t])},throttle(e,t=0,o={}){const n=!1!==o.leading,i=!1!==o.trailing;return this.debounce(e,t,{leading:n,trailing:i,maxWait:t})},unary(e){return this.ary(e,1)},wrap:(e,t)=>function(...o){return t.apply(this,[e,...o])},assign:(e,...t)=>Object.assign(e||{},...t),assignIn(e,...t){const o=e||{};return t.forEach(e=>{if(e)for(const t in e)o[t]=e[t]}),o},extend(e,...t){return this.assignIn(e,...t)},at(e,...t){return t.flat().map(t=>this.get(e,t))},clone:e=>null===e||"object"!=typeof e?e:Array.isArray(e)?[...e]:{...e},cloneDeep(e){if(null===e||"object"!=typeof e)return e;if(Array.isArray(e))return e.map(e=>this.cloneDeep(e));if(e instanceof Date)return new Date(e);if(e instanceof RegExp)return new RegExp(e);const t={};for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=this.cloneDeep(e[o]));return t},defaults(e,...t){const o=e||{};return t.forEach(e=>{e&&Object.keys(e).forEach(t=>{void 0===o[t]&&(o[t]=e[t])})}),o},defaultsDeep(e,...t){const o=e||{};return t.forEach(e=>{e&&"object"==typeof e&&Object.keys(e).forEach(t=>{const n=o[t],i=e[t];void 0===n?o[t]=this.cloneDeep(i):n&&"object"==typeof n&&i&&"object"==typeof i&&!Array.isArray(n)&&!Array.isArray(i)&&this.defaultsDeep(n,i)})}),o},entries:e=>e?Object.entries(e):[],toPairs(e){return this.entries(e)},findKey(e,t){if(e)for(const o of Object.keys(e))if(t(e[o],o,e))return o},findLastKey(e,t){if(!e)return;const o=Object.keys(e).reverse();for(const n of o)if(t(e[n],n,e))return n},forIn(e,t){if(e)for(const o in e)if(!1===t(e[o],o,e))break;return e},forOwn(e,t){if(e)for(const o of Object.keys(e))if(!1===t(e[o],o,e))break;return e},get(e,t,o){if(!e)return o;const n=Array.isArray(t)?t:t.replace(/\[(\d+)]/g,".$1").split(".");let i=e;for(const e of n){if(null==i)return o;i=i[e]}return void 0===i?o:i},has(e,t){if(!e)return!1;const o=Array.isArray(t)?t:t.replace(/\[(\d+)]/g,".$1").split(".");let n=e;for(const e of o){if(!Object.prototype.hasOwnProperty.call(n,e))return!1;n=n[e]}return!0},invert(e){const t={};return e&&Object.entries(e).forEach(([e,o])=>{t[o]=e}),t},invertBy(e,t=e=>e){const o={};return e&&Object.entries(e).forEach(([e,n])=>{const i=t(n);o[i]||(o[i]=[]),o[i].push(e)}),o},keys:e=>e?Object.keys(e):[],keysIn(e){const t=[];for(const o in e)t.push(o);return t},mapKeys(e,t){const o={};return e&&Object.entries(e).forEach(([n,i])=>{o[t(i,n,e)]=i}),o},mapValues(e,t){const o={};return e&&Object.entries(e).forEach(([n,i])=>{o[n]=t(i,n,e)}),o},merge(e,...t){const o=e||{};return t.forEach(e=>{e&&"object"==typeof e&&Object.keys(e).forEach(t=>{const n=o[t],i=e[t];n&&"object"==typeof n&&i&&"object"==typeof i&&!Array.isArray(n)&&!Array.isArray(i)?this.merge(n,i):o[t]=i})}),o},omit(e,...t){if(!e)return{};const o=new Set(t.flat()),n={};return Object.keys(e).forEach(t=>{o.has(t)||(n[t]=e[t])}),n},omitBy(e,t){if(!e)return{};const o={};return Object.entries(e).forEach(([e,n])=>{t(n,e)||(o[e]=n)}),o},pick(e,...t){if(!e)return{};const o=new Set(t.flat()),n={};return o.forEach(t=>{t in e&&(n[t]=e[t])}),n},pickBy(e,t){if(!e)return{};const o={};return Object.entries(e).forEach(([e,n])=>{t(n,e)&&(o[e]=n)}),o},set(e,t,o){if(!e)return e;const n=Array.isArray(t)?t:t.replace(/\[(\d+)]/g,".$1").split(".");let i=e;for(let e=0;e<n.length-1;e++){const t=n[e],o=n[e+1];t in i&&null!==i[t]&&"object"==typeof i[t]||(i[t]=/^\d+$/.test(o)?[]:{}),i=i[t]}return i[n[n.length-1]]=o,e},unset(e,t){if(!e)return!0;const o=Array.isArray(t)?t:t.replace(/\[(\d+)]/g,".$1").split(".");let n=e;for(let e=0;e<o.length-1;e++){const t=o[e];if(!(t in n))return!0;n=n[t]}return delete n[o[o.length-1]]},setIfUndefined(e,t,o){return void 0===this.get(e,t)&&this.set(e,t,o),e},values:e=>e?Object.values(e):[],valuesIn(e){const t=[];for(const o in e)t.push(e[o]);return t},isArray:e=>Array.isArray(e),isBoolean:e=>"boolean"==typeof e||e instanceof Boolean,isDate:e=>e instanceof Date,isEmpty:e=>null==e||(Array.isArray(e)||"string"==typeof e?0===e.length:e instanceof Map||e instanceof Set?0===e.size:"object"!=typeof e||0===Object.keys(e).length),isEqual(e,t){if(e===t)return!0;if(null===e||null===t)return e===t;if(typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length&&e.every((e,o)=>this.isEqual(e,t[o]));if(Array.isArray(e)||Array.isArray(t))return!1;const o=Object.keys(e),n=Object.keys(t);return o.length===n.length&&o.every(o=>this.isEqual(e[o],t[o]))},isMatch(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if("object"!=typeof e||"object"!=typeof t)return!1;const o=Object.keys(t);for(const n of o){const o=e[n],i=t[n];if("object"==typeof i&&null!==i){if(!this.isMatch(o,i))return!1}else if(o!==i)return!1}return!0},isFinite:e=>Number.isFinite(e),isFunction:e=>"function"==typeof e,isInteger:e=>Number.isInteger(e),isNaN:e=>Number.isNaN(e),isNil:e=>null==e,isNull:e=>null===e,isNumber:e=>"number"==typeof e||e instanceof Number,isObject:e=>null!==e&&"object"==typeof e,isPlainObject(e){if(null===e||"object"!=typeof e)return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype},isRegExp:e=>e instanceof RegExp,isString:e=>"string"==typeof e||e instanceof String,isSymbol:e=>"symbol"==typeof e,isUndefined:e=>void 0===e,parseInt:(e,t)=>(void 0===t&&(t=/^0x/i.test(e)?16:10),null==e?NaN:"number"==typeof e?Math.trunc(e):(e=String(e).trim(),parseInt(e,t))),toNumber(e){if("number"==typeof e)return e;if("symbol"==typeof e)return NaN;if(this.isObject(e)){const t="function"==typeof e.valueOf?e.valueOf():e;e=this.isObject(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.trim();const t=/^0b[01]+$/i.test(e),o=/^0o[0-7]+$/i.test(e),n=/^[-+]0x[0-9a-f]+$/i.test(e);return t||o?parseInt(e.slice(2),t?2:8):n?NaN:+e},toInteger(e){const t=this.toNumber(e);return Number.isNaN(t)?0:0!==t&&Number.isFinite(t)?Math.trunc(t):t},toFinite(e){const t=17976931348623157e292;if(!e)return 0===e?e:0;const o=this.toNumber(e);return o===1/0?t:o===-1/0?-t:o==o?o:0},toSafeInteger(e){const t=9007199254740991,o=this.toInteger(e);return o<-9007199254740991?-9007199254740991:o>t?t:o},toString(e){if(null==e)return"";if("string"==typeof e)return e;if(Array.isArray(e))return e.map(e=>null==e?"":this.toString(e)).join(",");if("symbol"==typeof e)return e.toString();const t=String(e);return"0"===t&&1/e==-1/0?"-0":t},toArray(e){return e?this.isArray(e)?[...e]:"string"==typeof e?e.split(""):this.isObject(e)?"function"==typeof e[Symbol.iterator]?[...e]:Object.values(e):[]:[]},castArray(...e){if(!e.length)return[];const t=e[0];return this.isArray(t)?t:[t]},toLength(e){const t=4294967295,o=this.toInteger(e);return o<0?0:o>t?t:o},toPlainObject(e){const t={};for(const o in e)t[o]=e[o];return t},add:(e,t)=>e+t,ceil(e,t=0){const o=Math.pow(10,t);return Math.ceil(e*o)/o},divide:(e,t)=>e/t,floor(e,t=0){const o=Math.pow(10,t);return Math.floor(e*o)/o},max:e=>e&&e.length?Math.max(...e):void 0,maxBy(e,t){if(e&&e.length)return e.reduce((e,o)=>("function"==typeof t?t(o):o[t])>("function"==typeof t?t(e):e[t])?o:e)},mean(e){return e&&e.length?this.sum(e)/e.length:NaN},meanBy(e,t){return e&&e.length?this.sumBy(e,t)/e.length:NaN},min:e=>e&&e.length?Math.min(...e):void 0,minBy(e,t){if(e&&e.length)return e.reduce((e,o)=>("function"==typeof t?t(o):o[t])<("function"==typeof t?t(e):e[t])?o:e)},multiply:(e,t)=>e*t,round(e,t=0){const o=Math.pow(10,t);return Math.round(e*o)/o},subtract:(e,t)=>e-t,sum:e=>e?e.reduce((e,t)=>e+t,0):0,sumBy:(e,t)=>e?e.reduce((e,o)=>e+("function"==typeof t?t(o):o[t]),0):0,clamp:(e,t,o)=>(void 0===o&&(o=t,t=void 0),void 0!==t&&e<t?t:void 0!==o&&e>o?o:e),inRange:(e,t,o)=>(void 0===o&&(o=t,t=0),t>o&&([t,o]=[o,t]),e>=t&&e<o),random:(e=0,t=1,o)=>("boolean"==typeof e?(o=e,e=0,t=1):"boolean"==typeof t&&(o=t,t=e,e=0),e>t&&([e,t]=[t,e]),o||e%1!=0||t%1!=0?e+Math.random()*(t-e):e+Math.floor(Math.random()*(t-e+1))),camelCase:e=>e?e.replace(/[^a-zA-Z0-9]+(.)/g,(e,t)=>t.toUpperCase()).replace(/^[A-Z]/,e=>e.toLowerCase()):"",capitalize:e=>e?e.charAt(0).toUpperCase()+e.slice(1).toLowerCase():"",endsWith:(e,t,o)=>!!e&&(void 0!==o?e.slice(0,o).endsWith(t):e.endsWith(t)),escape(e){if(!e)return"";const t={"&":"&","<":"<",">":">",'"':""","'":"'"};return e.replace(/[&<>"']/g,e=>t[e])},kebabCase:e=>e?e.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[\s_]+/g,"-").toLowerCase():"",lowerCase(e){return e?this.words(e).join(" ").toLowerCase():""},lowerFirst:e=>e?e.charAt(0).toLowerCase()+e.slice(1):"",pad(e="",t=0,o=" "){const n=e.length;if(n>=t)return e;const i=t-n,s=Math.floor(i/2),r=i-s;return o.repeat(Math.ceil(s/o.length)).slice(0,s)+e+o.repeat(Math.ceil(r/o.length)).slice(0,r)},padEnd(e="",t=0,o=" "){const n=e.length;if(n>=t)return e;const i=t-n;return e+o.repeat(Math.ceil(i/o.length)).slice(0,i)},padStart(e="",t=0,o=" "){const n=e.length;if(n>=t)return e;const i=t-n;return o.repeat(Math.ceil(i/o.length)).slice(0,i)+e},repeat:(e="",t=1)=>e.repeat(Math.max(0,Math.floor(t))),replace:(e="",t,o)=>e.replace(t,o),snakeCase(e){return e?this.words(e).join("_").toLowerCase():""},split:(e="",t,o)=>e.split(t,o),startCase(e){return e?this.words(e).map(e=>this.capitalize(e)).join(" "):""},startsWith:(e,t,o=0)=>!!e&&e.startsWith(t,o),toLower:e=>e?e.toLowerCase():"",toUpper:e=>e?e.toUpperCase():"",trim(e="",t){if(!t)return e.trim();const o=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return e.replace(new RegExp(`^[${o}]+|[${o}]+$`,"g"),"")},trimEnd(e="",t){if(!t)return e.trimEnd();const o=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return e.replace(new RegExp(`[${o}]+$`,"g"),"")},trimStart(e="",t){if(!t)return e.trimStart();const o=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return e.replace(new RegExp(`^[${o}]+`,"g"),"")},truncate(e="",t={}){const o=t.length||30,n=t.omission||"...",i=t.separator;if(e.length<=o)return e;let s=o-n.length;if(s<1)return n;let r=e.slice(0,s);if(i){const e="string"==typeof i?r.lastIndexOf(i):r.search(new RegExp(i.source+"(?!.*"+i.source+")"));e>-1&&(r=r.slice(0,e))}return r+n},unescape(e){if(!e)return"";const t={"&":"&","<":"<",">":">",""":'"',"'":"'"};return e.replace(/&(?:amp|lt|gt|quot|#39);/g,e=>t[e])},upperCase(e){return e?this.words(e).join(" ").toUpperCase():""},upperFirst:e=>e?e.charAt(0).toUpperCase()+e.slice(1):"",words:(e="",t)=>t?e.match(t)||[]:(e=e.replace(/([a-z])([A-Z])/g,"$1 $2")).match(/[a-zA-Z0-9]+/g)||[],sprintf(e,...t){if(!e)return"";let o=0;return e.replace(/%(?:(\d+)\$)?([+-])?(\d+)?(?:\.(\d+))?([sdifojx%])/g,(e,n,i,s,r,a)=>{if("%"===a)return"%";const l=n?parseInt(n,10)-1:o++,h=t[l];if(void 0===h)return e;if(null===h)return"null";let c;switch(a){case"s":default:c=String(h);break;case"d":case"i":c=String(parseInt(h,10));break;case"f":const e=parseFloat(h);c=void 0!==r?e.toFixed(parseInt(r,10)):String(e);break;case"o":c=Object.prototype.toString.call(h);break;case"j":try{c=JSON.stringify(h)}catch(e){c="[Circular]"}break;case"x":c=parseInt(h,10).toString(16)}if(s){const e=parseInt(s,10),t="0"===i?"0":" ";c="-"===i?c.padEnd(e," "):c.padStart(e,t)}if("+"===i&&("d"===a||"i"===a||"f"===a)){parseFloat(c)>=0&&!c.startsWith("+")&&(c="+"+c)}return c})},format(e,...t){return this.sprintf(e,...t)},template(e,t={}){const{partials:o={},helpers:n={}}=t,i=e=>null==e?"":String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"),s=(e,t)=>"."===t?e:t.startsWith("@")?e[t]:t.split(".").reduce((e,t)=>e&&void 0!==e[t]?e[t]:"",e),r=(e,t,a=null)=>{let l=e;return l=l.replace(/\{\{#with\s+([^}]+)\}\}([\s\S]*?)\{\{\/with\}\}/g,(e,o,n)=>{const i=s(t,o.trim());return i&&"object"==typeof i?r(n,i,t):""}),l=l.replace(/\{\{#each\s+([^}]+)\}\}([\s\S]*?)\{\{\/each\}\}/g,(e,o,n)=>{const i=s(t,o.trim());return Array.isArray(i)?i.map((e,o)=>{const s="object"==typeof e?{...e,"@index":o,"@first":0===o,"@last":o===i.length-1}:{".":e,"@index":o,"@first":0===o,"@last":o===i.length-1};return r(n,s,t)}).join(""):""}),l=l.replace(/\{\{#if\s+([^}]+)\}\}([\s\S]*?)(?:\{\{else\}\}([\s\S]*?))?\{\{\/if\}\}/g,(e,o,n,i="")=>{const l=s(t,o.trim()),h=Array.isArray(l)?l.length>0:Boolean(l);return r(h?n:i,t,a)}),l=l.replace(/\{\{#unless\s+([^}]+)\}\}([\s\S]*?)\{\{\/unless\}\}/g,(e,o,n)=>{const i=s(t,o.trim());return(Array.isArray(i)?0===i.length:!i)?r(n,t,a):""}),l=l.replace(/\{\{>\s*([^}]+)\}\}/g,(e,n)=>{const i=o[n.trim()];return i?r(i,t,a):""}),l=l.replace(/\{\{\{([^}]+)\}\}\}/g,(e,o)=>{const n=s(t,o.trim());return null!=n?String(n):""}),l=l.replace(/\{\{([^#/>][^}]*)\}\}/g,(e,o)=>{const r=o.trim(),a=r.match(/^(\w+)\s+(.+)$/);if(a&&n[a[1]]){const e=a[2].split(/\s+/).map(e=>/^["'].*["']$/.test(e)?e.slice(1,-1):s(t,e));return i(n[a[1]](...e))}const l=s(t,r);return i(l)}),l};return(t={})=>r(e,t)},render(e,t,o={}){return this.template(e,o)(t)},async copyToClipboard(e){if(navigator.clipboard?.writeText)try{return await navigator.clipboard.writeText(e),!0}catch(e){}const t=document.createElement("textarea");t.value=e,t.style.cssText="position:fixed;opacity:0;pointer-events:none",document.body.appendChild(t),t.select();try{return document.execCommand("copy")}catch(e){return!1}finally{document.body.removeChild(t)}},chain(e){const t={_value:e,value(){return this._value}};["chunk","compact","concat","difference","drop","dropRight","fill","findIndex","findLastIndex","flatten","flattenDeep","flattenDepth","fromPairs","head","indexOf","initial","intersection","join","last","lastIndexOf","nth","pull","pullAll","pullAt","remove","reverse","slice","sortedIndex","sortedUniq","tail","take","takeRight","union","uniq","uniqBy","unzip","without","xor","zip","countBy","each","every","filter","find","findLast","flatMap","groupBy","includes","invokeMap","keyBy","map","orderBy","partition","reduce","reduceRight","reject","sample","sampleSize","shuffle","size","some","sortBy","assign","assignIn","at","defaults","entries","extend","findKey","findLastKey","forIn","forOwn","functions","get","has","invert","invertBy","invoke","keys","mapKeys","mapValues","merge","omit","omitBy","pick","pickBy","result","set","toPairs","transform","unset","update","values","camelCase","capitalize","deburr","endsWith","escape","escapeRegExp","kebabCase","lowerCase","lowerFirst","pad","padEnd","padStart","parseInt","repeat","replace","snakeCase","split","startCase","startsWith","toLower","toUpper","trim","trimEnd","trimStart","truncate","unescape","upperCase","upperFirst","words"].forEach(e=>{"function"==typeof this[e]&&(t[e]=function(...t){return this._value=i[e](this._value,...t),this})});return["sum","mean","min","max","toArray","toJSON","toString"].forEach(e=>{"function"==typeof this[e]&&(t[e]=function(...t){return i[e](this._value,...t)})}),t}};class s{constructor(e,t={}){this.element="string"==typeof e?document.querySelector(e):e,this.options={...this.constructor.defaults,...t},this._eventHandlers=[],this.element&&(this.element._dommaComponent=this)}on(e,t){this.options[e]&&"function"==typeof this.options[e]&&this.options[e](t)}setOptions(e){return this.options={...this.options,...e},"function"==typeof this._applyOptions&&this._applyOptions(),this}_addEventListener(e,t,o){e.addEventListener(t,o),this._eventHandlers.push({element:e,event:t,handler:o})}destroy(){for(const{element:e,event:t,handler:o}of this._eventHandlers)e.removeEventListener(t,o);this._eventHandlers=[],this.element&&delete this.element._dommaComponent}}class r extends s{static defaults={data:[],idKey:"id",parentKey:"parent_id",childrenKey:"children",labelKey:"name",iconKey:"icon",colorKey:"color",expandedByDefault:!0,expandedNodes:[],selectable:!0,multiSelect:!1,selectedNodes:[],renderNode:null,getBadge:null,getNodeIcon:null,getNodeClass:null,actions:[],indentSize:1.5,showIcons:!0,showToggleButtons:!0,toggleIcon:"chevron-down",onSelect:null,onDeselect:null,onExpand:null,onCollapse:null,onAction:null,onClick:null};constructor(e,t={}){super(e,t),this.element?(this._tree=[],this._flatMap={},this._expandedNodes=new Set,this._selectedNodes=new Set,this._init()):console.error("TreeView: Element not found",e)}_init(){this.element.classList.contains("dm-treeview")||this.element.classList.add("dm-treeview"),this.options.expandedNodes.length>0&&this.options.expandedNodes.forEach(e=>this._expandedNodes.add(e)),this.options.selectedNodes.length>0&&this.options.selectedNodes.forEach(e=>this._selectedNodes.add(e)),this.options.data&&this.options.data.length>0&&this.setData(this.options.data),this._setupEventListeners()}_setupEventListeners(){this._addEventListener(this.element,"click",e=>{const t=e.target.closest(".dm-treeview-node");if(!t||e.target.closest(".dm-treeview-toggle")||e.target.closest(".dm-treeview-action"))return;const o=this._parseNodeId(t.dataset.nodeId);this._handleSelect(o,e)}),this._addEventListener(this.element,"click",e=>{const t=e.target.closest(".dm-treeview-toggle");if(t){e.stopPropagation();const o=this._parseNodeId(t.dataset.nodeId);this.toggle(o)}}),this._addEventListener(this.element,"click",e=>{const t=e.target.closest(".dm-treeview-action");if(t){e.stopPropagation();const o=this._parseNodeId(t.dataset.nodeId),n=t.dataset.action;this._handleAction(n,o,e)}})}_buildTree(e){const t={},o=[],n=this.options.idKey,i=this.options.parentKey,s=this.options.childrenKey;return e.forEach(e=>{t[e[n]]={...e,[s]:[]}}),e.forEach(e=>{const r=t[e[n]],a=e[i];null==a?o.push(r):t[a]?t[a][s].push(r):o.push(r)}),this._sortTree(o),{tree:o,nodeMap:t}}_sortTree(e){const t=this.options.childrenKey,o=this.options.labelKey;e.sort((e,t)=>{const n=(e[o]||"").toLowerCase(),i=(t[o]||"").toLowerCase();return n.localeCompare(i)}),e.forEach(e=>{e[t]&&e[t].length>0&&this._sortTree(e[t])})}_render(){const e=this._tree.map(e=>this._renderNode(e,0)).join("");this.element.innerHTML=e}_renderNode(e,t){const o=this.options.idKey,n=this.options.childrenKey,i=e[o],s=e[n]&&e[n].length>0,r=this._expandedNodes.has(i),a=this._selectedNodes.has(i),l={isExpanded:r,isSelected:a,hasChildren:s},h=this.options.renderNode?this.options.renderNode(e,t,l):this._defaultRenderNode(e,t,l),c=this.options.getBadge?this.options.getBadge(e):null;let d=`\n <div class="dm-treeview-node ${a?"dm-treeview-node-selected":""} ${this.options.getNodeClass?this.options.getNodeClass(e):""}"\n data-node-id="${i}"\n data-depth="${t}"\n style="padding-left: ${t*this.options.indentSize}rem;">\n <div class="dm-treeview-node-content">\n ${s&&this.options.showToggleButtons?this._renderToggle(i,r):'<span class="dm-treeview-spacer"></span>'}\n ${h}\n ${null!=c?`<span class="dm-treeview-badge">${c}</span>`:""}\n </div>\n ${this.options.actions.length>0?this._renderActions(e):""}\n </div>\n `;return s&&r&&(d+=`<div class="dm-treeview-children" data-parent-id="${i}">`,e[n].forEach(e=>{d+=this._renderNode(e,t+1)}),d+="</div>"),d}_defaultRenderNode(e,t,o){const n=this.options.labelKey,i=this.options.iconKey,s=this.options.colorKey,r=e[n]||"",a=this.options.getNodeIcon?this.options.getNodeIcon(e):e[i],l=e[s];let h="";return this.options.showIcons&&a&&(h+=`<span class="dm-treeview-icon" data-icon="${a}" ${l?`style="color: ${l};"`:""}></span>`),h+=`<span class="dm-treeview-label">${this._escapeHtml(r)}</span>`,h}_renderToggle(e,t){return`\n <button type="button"\n class="dm-treeview-toggle ${t?"dm-treeview-expanded":"dm-treeview-collapsed"}"\n data-node-id="${e}"\n aria-label="${t?"Collapse":"Expand"}">\n <span data-icon="${this.options.toggleIcon}"></span>\n </button>\n `}_renderActions(e){const t=e[this.options.idKey],o=this.options.actions.filter(t=>"function"!=typeof t.visible||t.visible(e));if(0===o.length)return"";let n='<div class="dm-treeview-actions">';return o.forEach(e=>{n+=`\n <button type="button"\n class="dm-treeview-action"\n data-node-id="${t}"\n data-action="${e.name}"\n title="${e.tooltip||e.name}"\n aria-label="${e.tooltip||e.name}">\n ${e.icon?`<span data-icon="${e.icon}"></span>`:e.name}\n </button>\n `}),n+="</div>",n}_handleSelect(e,t){if(!this.options.selectable)return;const o=this._flatMap[e];if(!o)return;"function"==typeof this.options.onClick&&this.options.onClick(e,o,t);const n=this._selectedNodes.has(e);this.options.multiSelect?n?this.deselect(e):this.select(e):n?this.deselect(e):(this.deselectAll(!0),this.select(e))}_handleAction(e,t,o){const n=this._flatMap[t];n&&"function"==typeof this.options.onAction&&this.options.onAction(e,t,n,o)}_parseNodeId(e){const t=Number(e);return isNaN(t)||e!==t.toString()?e:t}_escapeHtml(e){const t=document.createElement("div");return t.textContent=e,t.innerHTML}setData(e){const{tree:t,nodeMap:o}=this._buildTree(e);return this._tree=t,this._flatMap=o,this.options.expandedByDefault&&Object.keys(o).forEach(e=>{const t=o[e],n=this.options.childrenKey;t[n]&&t[n].length>0&&this._expandedNodes.add(this._parseNodeId(e))}),this._render(),this}getData(){return this._tree}getFlatData(){return Object.values(this._flatMap)}refresh(){return this._render(),"undefined"!=typeof window&&window.Domma&&window.Domma.icons&&window.Domma.icons.scan(this.element),this}getNode(e){return this._flatMap[e]||null}updateNode(e,t){const o=this._flatMap[e];return o&&(Object.assign(o,t),this.refresh()),this}select(e,t=!1){if(!this.options.selectable)return this;const o=this._flatMap[e];return o?(this._selectedNodes.add(e),this.refresh(),t||"function"!=typeof this.options.onSelect||this.options.onSelect(e,o,null),this):this}deselect(e,t=!1){const o=this._flatMap[e];return o?(this._selectedNodes.delete(e),this.refresh(),t||"function"!=typeof this.options.onDeselect||this.options.onDeselect(e,o,null),this):this}toggleSelect(e){return this._selectedNodes.has(e)?this.deselect(e):this.select(e),this}selectAll(){return this.options.multiSelect?(Object.keys(this._flatMap).forEach(e=>{this._selectedNodes.add(this._parseNodeId(e))}),this.refresh(),this):this}deselectAll(e=!1){const t=Array.from(this._selectedNodes);return this._selectedNodes.clear(),this.refresh(),e||"function"!=typeof this.options.onDeselect||t.forEach(e=>{const t=this._flatMap[e];t&&this.options.onDeselect(e,t,null)}),this}getSelected(){return Array.from(this._selectedNodes)}getSelectedNodes(){return this.getSelected().map(e=>this._flatMap[e]).filter(Boolean)}isSelected(e){return this._selectedNodes.has(e)}expand(e,t=!1){const o=this._flatMap[e];return o?(this._expandedNodes.add(e),this.refresh(),t||"function"!=typeof this.options.onExpand||this.options.onExpand(e,o,null),this):this}collapse(e,t=!1){const o=this._flatMap[e];return o?(this._expandedNodes.delete(e),this.refresh(),t||"function"!=typeof this.options.onCollapse||this.options.onCollapse(e,o,null),this):this}toggle(e){return this._expandedNodes.has(e)?this.collapse(e):this.expand(e),this}expandAll(){return Object.keys(this._flatMap).forEach(e=>{const t=this._flatMap[e],o=this.options.childrenKey;t[o]&&t[o].length>0&&this._expandedNodes.add(this._parseNodeId(e))}),this.refresh(),this}collapseAll(){return this._expandedNodes.clear(),this.refresh(),this}isExpanded(e){return this._expandedNodes.has(e)}getExpanded(){return Array.from(this._expandedNodes)}getParent(e){const t=this._flatMap[e];if(!t)return null;const o=t[this.options.parentKey];return null!=o&&this._flatMap[o]||null}getChildren(e){const t=this._flatMap[e];if(!t)return[];return t[this.options.childrenKey]||[]}getAncestors(e){const t=[];let o=this.getParent(e);for(;o;)t.unshift(o),o=this.getParent(o[this.options.idKey]);return t}getDescendants(e){const t=[];return this.getChildren(e).forEach(e=>{t.push(e);const o=e[this.options.idKey];t.push(...this.getDescendants(o))}),t}getSiblings(e){if(!this._flatMap[e])return[];const t=this.getParent(e);return t?this.getChildren(t[this.options.idKey]).filter(t=>t[this.options.idKey]!==e):this._tree.filter(t=>t[this.options.idKey]!==e)}getLevel(e){return this.getAncestors(e).length}find(e){for(const t in this._flatMap){const o=this._flatMap[t];if(e(o))return o}return null}filter(e){const t=[];for(const o in this._flatMap){const n=this._flatMap[o];e(n)&&t.push(n)}return t}forEach(e){for(const t in this._flatMap)e(this._flatMap[t],t);return this}scrollToNode(e,t={}){const o=this.element.querySelector(`[data-node-id="${e}"]`);return o&&o.scrollIntoView({behavior:t.behavior||"smooth",block:t.block||"center",inline:t.inline||"nearest"}),this}destroy(){this._tree=[],this._flatMap={},this._expandedNodes.clear(),this._selectedNodes.clear(),this.element.innerHTML="",super.destroy()}}class a extends s{static defaults={hoverable:!0,shadow:"medium",rounded:!0,animation:!0,animationDuration:200,onHover:null,onLeave:null,onClick:null};constructor(e,t={}){super(e,t),this._init()}_init(){if(!this.element)return;const e=this.element,t=this.options;e.style.transition=t.animation?`transform ${t.animationDuration}ms ease, box-shadow ${t.animationDuration}ms ease`:"none",t.rounded&&(e.style.borderRadius="8px"),this._applyShadow(t.shadow),t.hoverable&&(this._addEventListener(e,"mouseenter",o=>{e.style.transform="scale(1.02)",this._applyShadow("large"),t.onHover&&t.onHover(o,this)}),this._addEventListener(e,"mouseleave",o=>{e.style.transform="scale(1)",this._applyShadow(t.shadow),t.onLeave&&t.onLeave(o,this)})),t.onClick&&(e.style.cursor="pointer",this._addEventListener(e,"click",e=>{t.onClick(e,this)}))}_applyShadow(e){const t={none:"none",small:"0 1px 3px rgba(0,0,0,0.12)",medium:"0 2px 8px rgba(0,0,0,0.15)",large:"0 8px 20px rgba(0,0,0,0.2)"};this.element.style.boxShadow=t[e]||t.medium}setShadow(e){return this.options.shadow=e,this._applyShadow(e),this}}class l extends s{static defaults={backdrop:!0,backdropClose:!0,keyboard:!0,animation:"fade",animationDuration:300,closeButton:!0,onOpen:null,onOpened:null,onClose:null,onClosed:null,size:"medium",centered:!0,scrollable:!1,title:"",content:"",footer:"",buttons:[],className:"",headerClass:"",bodyClass:"",footerClass:"",onButtonClick:null};constructor(e,t={}){super(e,t),this._backdrop=null,this._isOpen=!1,this._init()}_init(){if(!this.element)return;const e=this.element,t=this.options;if(t._factoryCreated?(e.style.opacity="0",e.style.transition=`opacity ${t.animationDuration}ms ease, transform ${t.animationDuration}ms ease`):(e.style.display="none",e.style.position="fixed",e.style.top="50%",e.style.left="50%",e.style.transform="translate(-50%, -50%)",e.style.zIndex="1001",e.style.opacity="0",e.style.transition=`opacity ${t.animationDuration}ms ease, transform ${t.animationDuration}ms ease`),t.keyboard&&(this._keyHandler=e=>{"Escape"===e.key&&this._isOpen&&this.close()},document.addEventListener("keydown",this._keyHandler)),t.closeButton){const t=e.querySelector("[data-close], .modal-close, .close");t&&this._addEventListener(t,"click",()=>this.close())}e.querySelectorAll(".modal-close-btn").forEach(e=>{this._addEventListener(e,"click",()=>this.close())})}open(){if(this._isOpen)return this;const e=this.options,t=this.element;return e.onOpen&&e.onOpen(this),e.backdrop&&(this._backdrop=document.createElement("div"),this._backdrop.style.cssText=`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1000;\n opacity: 0;\n transition: opacity ${e.animationDuration}ms ease;\n `,document.body.appendChild(this._backdrop),e.backdropClose&&this._addEventListener(this._backdrop,"click",()=>this.close()),this._backdrop.offsetHeight,this._backdrop.style.opacity="1"),t.style.display="block",t.offsetHeight,"fade"===e.animation?t.style.opacity="1":"slide"===e.animation?(t.style.transform="translate(-50%, -50%)",t.style.opacity="1"):"zoom"===e.animation?(t.style.transform="translate(-50%, -50%) scale(1)",t.style.opacity="1"):t.style.opacity="1",this._isOpen=!0,setTimeout(()=>{e.onOpened&&e.onOpened(this)},e.animationDuration),this}close(){if(!this._isOpen)return this;const e=this.options,t=this.element;return e.onClose&&e.onClose(this),t.style.opacity="0",this._backdrop&&(this._backdrop.style.opacity="0"),setTimeout(()=>{t.style.display="none",this._backdrop&&(this._backdrop.remove(),this._backdrop=null),this._isOpen=!1,e.onClosed&&e.onClosed(this)},e.animationDuration),this}toggle(){return this._isOpen?this.close():this.open()}isOpen(){return this._isOpen}destroy(){super.destroy(),this._keyHandler&&document.removeEventListener("keydown",this._keyHandler),this._backdrop&&this._backdrop.remove()}remove(){return this._isOpen&&this.close(),setTimeout(()=>{this.destroy(),this.element&&this.element.parentNode&&this.element.remove(),this._backdrop&&(this._backdrop.remove(),this._backdrop=null);const e=void 0!==E?E:"undefined"!=typeof window&&window.Domma&&window.Domma.elements||null;e&&e._instances&&e._instances.has(this.element)&&e._instances.delete(this.element),this._overlay&&this._overlay.parentNode&&this._overlay.remove()},this.options.animationDuration),this}}const h={_container:null,_zIndexBase:1050,_activeModals:[],_defaults:{size:"medium",title:"",content:"",buttons:[{id:"close",text:"Close",variant:"secondary"}],backdrop:!0,backdropClose:!0,keyboard:!0,animation:!0,animationDuration:300,className:"",headerClass:"",bodyClass:"",footerClass:"",scrollable:!1,onButtonClick:null,onOpen:null,onClose:null},_ensureContainer(){return this._container||(this._container=document.createElement("div"),this._container.className="dm-dialog-container",this._container.style.cssText="position: fixed; top: 0; left: 0; right: 0; bottom: 0; pointer-events: none; z-index: 1040;",document.body.appendChild(this._container)),this._container},_createElements(e){const t={...this._defaults,...e};this._ensureContainer();const o=document.createElement("div");o.className="dm-dialog-overlay",o.style.cssText=`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n display: none;\n align-items: center;\n justify-content: center;\n z-index: ${this._getNextZIndex()};\n pointer-events: auto;\n opacity: 0;\n transition: opacity ${t.animationDuration}ms ease;\n `;const n=document.createElement("div");n.className=`dm-dialog dm-dialog-${t.size}${t.className?" "+t.className:""}`,n.setAttribute("role","dialog"),n.setAttribute("aria-modal","true"),n.style.cssText=`\n background: white;\n border-radius: 8px;\n box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);\n max-width: 90%;\n max-height: 90vh;\n overflow: hidden;\n transform: scale(0.95) translateY(-10px);\n transition: transform ${t.animationDuration}ms ease, opacity ${t.animationDuration}ms ease;\n opacity: 0;\n `;let i='<div class="dm-dialog-content">';return t.title&&(i+=`<div class="dm-dialog-header${t.headerClass?" "+t.headerClass:""}" style="position: relative; padding: 1.5rem 1.5rem 1rem; border-bottom: 1px solid #e5e7eb;">`,i+=`<h3 class="dm-dialog-title" style="margin: 0; font-size: 1.25rem; font-weight: 600;">${t.title}</h3>`,t.backdrop&&t.backdropClose&&(i+='<button type="button" class="dm-dialog-close" aria-label="Close" style="position: absolute; right: 1rem; top: 1rem; background: none; border: none; font-size: 1.5rem; cursor: pointer; color: #6b7280; line-height: 1; padding: 0; width: 2rem; height: 2rem;">×</button>'),i+="</div>"),i+=`<div class="dm-dialog-body${t.bodyClass?" "+t.bodyClass:""}${t.scrollable?" dm-dialog-body-scrollable":""}" style="padding: 1.5rem;">`,i+=t.content,i+="</div>",t.buttons&&t.buttons.length>0&&(i+=`<div class="dm-dialog-footer${t.footerClass?" "+t.footerClass:""}" style="display: flex; justify-content: flex-end; gap: 0.5rem; padding: 1rem 1.5rem; border-top: 1px solid #e5e7eb; background: #f9fafb;">`,t.buttons.forEach(e=>{const t=e.variant||"secondary";i+=`<button type="button" class="btn btn-${t}" data-button-id="${e.id}">${e.text}</button>`}),i+="</div>"),i+="</div>",n.innerHTML=i,o.appendChild(n),{overlay:o,dialog:n,opts:t}},_getNextZIndex(){return this._zIndexBase+10*this._activeModals.length},createModal(e){const{overlay:t,dialog:o,opts:n}=this._createElements(e);n._factoryCreated=!0;const i=new l(o,n);i._overlay=t,i._factoryCreated=!0,this._ensureContainer().appendChild(t);const s=o.querySelector(".dm-dialog-close");return s&&s.addEventListener("click",()=>{i.close(),i._factoryCreated&&setTimeout(()=>i.remove(),n.animationDuration)}),o.querySelectorAll("[data-button-id]").forEach(e=>{e.addEventListener("click",()=>{const t=e.getAttribute("data-button-id");n.onButtonClick&&n.onButtonClick(t,i);const o=n.buttons.find(e=>e.id===t);o&&!1===o.close||(i.close(),i._factoryCreated&&setTimeout(()=>i.remove(),n.animationDuration))})}),n.backdropClose&&t.addEventListener("click",e=>{e.target===t&&(i.close(),i._factoryCreated&&setTimeout(()=>i.remove(),n.animationDuration))}),i.open.bind(i),i.open=function(){return t.style.display="flex",o.style.display="block",this._activeModals.push(i),setTimeout(()=>{t.style.opacity="1",o.style.transform="scale(1) translateY(0)",o.style.opacity="1"},10),n.onOpen&&n.onOpen(i),n.onOpened&&setTimeout(()=>n.onOpened(i),n.animationDuration),i._isOpen=!0,i}.bind(this),i.close.bind(i),i.close=function(){return i._isOpen?(n.onClose&&n.onClose(i),t.style.opacity="0",o.style.transform="scale(0.95) translateY(-10px)",o.style.opacity="0",setTimeout(()=>{t.style.display="none",o.style.display="none";const e=this._activeModals.indexOf(i);e>-1&&this._activeModals.splice(e,1),i._isOpen=!1,n.onClosed&&n.onClosed(i)},n.animationDuration),i):i}.bind(this),i},showModal(e){return new Promise(t=>{this.createModal({...e,onButtonClick:(o,n)=>{e.onButtonClick&&e.onButtonClick(o,n),t(o)}}).open()})}};class c extends s{static defaults={active:0,animation:"fade",animationDuration:200,tabSelector:".tab-item, [data-tab]",panelSelector:".tab-panel, [data-panel]",activeClass:"active",onChange:null};constructor(e,t={}){super(e,t),this._activeIndex=this.options.active,this._init()}_init(){if(!this.element)return;const e=this.options;this._tabs=this.element.querySelectorAll(e.tabSelector),this._panels=this.element.querySelectorAll(e.panelSelector),this._tabs.forEach((e,t)=>{this._addEventListener(e,"click",e=>{e.preventDefault(),this.activate(t)})}),this._updateState()}activate(e){if(e===this._activeIndex)return this;if(e<0||e>=this._tabs.length)return this;const t=this.options,o=this._activeIndex;return this._activeIndex=e,this._updateState(),t.onChange&&t.onChange({index:e,oldIndex:o,tab:this._tabs[e],panel:this._panels[e]}),this}_updateState(){const e=this.options;this._tabs.forEach((t,o)=>{o===this._activeIndex?t.classList.add(e.activeClass):t.classList.remove(e.activeClass)}),this._panels.forEach((t,o)=>{o===this._activeIndex?(t.style.display="block","fade"===e.animation&&(t.style.opacity="0",t.style.transition=`opacity ${e.animationDuration}ms ease`,t.offsetHeight,t.style.opacity="1")):t.style.display="none"})}getActive(){return this._activeIndex}show(e){return this.activate(e)}next(){const e=(this._activeIndex+1)%this._tabs.length;return this.activate(e)}prev(){const e=(this._activeIndex-1+this._tabs.length)%this._tabs.length;return this.activate(e)}}class d extends s{static defaults={allowMultiple:!1,multiExpand:null,activeIndex:null,animation:!0,animationDuration:300,headerSelector:".accordion-header, [data-accordion-header]",contentSelector:".accordion-body, [data-accordion-content]",activeClass:"active",onChange:null};constructor(e,t={}){super(e,t),null!==this.options.multiExpand&&(this.options.allowMultiple=this.options.multiExpand),this._init()}_init(){if(!this.element)return;const e=this.options;this._headers=this.element.querySelectorAll(e.headerSelector),this._contents=this.element.querySelectorAll(e.contentSelector),this._contents.forEach((t,o)=>{t.style.overflow="hidden",t.style.transition=e.animation?`height ${e.animationDuration}ms ease`:"none";const n=this._headers[o]?.parentElement;let i=n?.classList.contains(e.activeClass);null!==e.activeIndex&&(i=Array.isArray(e.activeIndex)?e.activeIndex.includes(o):e.activeIndex===o,i?n?.classList.add(e.activeClass):n?.classList.remove(e.activeClass)),t.style.height=i?"auto":"0"}),this._headers.forEach((e,t)=>{this._addEventListener(e,"click",()=>{this.toggle(t)})})}toggle(e){const t=this.options,o=this._headers[e],n=this._contents[e],i=o.parentElement.classList.contains(t.activeClass);return t.allowMultiple||this._headers.forEach((t,o)=>{o!==e&&this._close(o)}),i?this._close(e):this._open(e),t.onChange&&t.onChange({index:e,isOpen:!i,header:o,content:n}),this}_open(e){const t=this.options,o=this._headers[e],n=this._contents[e];o.parentElement.classList.add(t.activeClass),n.style.height=n.scrollHeight+"px",setTimeout(()=>{n.style.height="auto"},t.animationDuration)}_close(e){const t=this.options,o=this._headers[e],n=this._contents[e];o.parentElement.classList.remove(t.activeClass),n.style.height=n.scrollHeight+"px",n.offsetHeight,n.style.height="0"}open(e){return e>=0&&e<this._headers.length&&this._open(e),this}close(e){return e>=0&&e<this._headers.length&&this._close(e),this}openAll(){return this._headers.forEach((e,t)=>this._open(t)),this}closeAll(){return this._headers.forEach((e,t)=>this._close(t)),this}}class u extends s{static defaults={content:"",position:"top",trigger:"hover",delay:{show:0,hide:0},animation:!0,animationDuration:150,html:!1,offset:[0,8],container:null,onShow:null,onHide:null};constructor(e,t={}){super(e,t),this._tooltip=null,this._isVisible=!1,this._showTimeout=null,this._hideTimeout=null,this._init()}_init(){if(!this.element)return;const e=this.options,t=this.element;!e.content&&t.dataset.tooltip&&(e.content=t.dataset.tooltip),"hover"===e.trigger?(this._addEventListener(t,"mouseenter",()=>this.show()),this._addEventListener(t,"mouseleave",()=>this.hide())):"click"===e.trigger?this._addEventListener(t,"click",()=>this.toggle()):"focus"===e.trigger&&(this._addEventListener(t,"focus",()=>this.show()),this._addEventListener(t,"blur",()=>this.hide()))}show(){if(clearTimeout(this._hideTimeout),this._isVisible)return this;const e=this.options;return this._showTimeout=setTimeout(()=>{this._createTooltip(),this._positionTooltip(),e.onShow&&e.onShow(this)},e.delay.show),this}hide(){if(clearTimeout(this._showTimeout),!this._isVisible)return this;const e=this.options;return this._hideTimeout=setTimeout(()=>{this._tooltip&&(this._tooltip.classList.remove("show"),setTimeout(()=>{this._tooltip&&(this._tooltip.remove(),this._tooltip=null),this._isVisible=!1,e.onHide&&e.onHide(this)},e.animationDuration))},e.delay.hide),this}toggle(){return this._isVisible?this.hide():this.show()}_createTooltip(){const e=this.options;this._tooltip=document.createElement("div"),this._tooltip.className="domma-tooltip",e.html?this._tooltip.innerHTML=e.content:this._tooltip.textContent=e.content;(e.container||document.body).appendChild(this._tooltip),this._tooltip.offsetHeight,this._tooltip.classList.add("show"),this._isVisible=!0}_positionTooltip(){if(!this._tooltip||!this.element)return;const e=this.options,t=this.element.getBoundingClientRect(),o=this._tooltip.getBoundingClientRect(),[n,i]=e.offset;let s,r;switch(e.position){case"top":default:s=t.top-o.height-i,r=t.left+(t.width-o.width)/2+n;break;case"bottom":s=t.bottom+i,r=t.left+(t.width-o.width)/2+n;break;case"left":s=t.top+(t.height-o.height)/2+n,r=t.left-o.width-i;break;case"right":s=t.top+(t.height-o.height)/2+n,r=t.right+i}s+=window.scrollY,r+=window.scrollX,this._tooltip.style.top=s+"px",this._tooltip.style.left=r+"px"}setContent(e){return this.options.content=e,this._tooltip&&(this.options.html?this._tooltip.innerHTML=e:this._tooltip.textContent=e,this._positionTooltip()),this}destroy(){super.destroy(),clearTimeout(this._showTimeout),clearTimeout(this._hideTimeout),this._tooltip&&this._tooltip.remove()}}class p extends s{static defaults={variant:"primary",size:"medium",pill:!1,outline:!1,removable:!1,onClick:null,onRemove:null};static variants={primary:{bg:"#4f46e5",color:"#fff"},secondary:{bg:"#6b7280",color:"#fff"},success:{bg:"#10b981",color:"#fff"},danger:{bg:"#ef4444",color:"#fff"},warning:{bg:"#f59e0b",color:"#000"},info:{bg:"#3b82f6",color:"#fff"},light:{bg:"#f3f4f6",color:"#111"},dark:{bg:"#1f2937",color:"#fff"}};static sizes={small:{padding:"2px 6px",fontSize:"10px"},medium:{padding:"4px 10px",fontSize:"12px"},large:{padding:"6px 14px",fontSize:"14px"}};constructor(e,t={}){super(e,t),this._init()}_init(){this.element&&(this._applyStyles(),this.options.onClick&&(this.element.style.cursor="pointer",this._addEventListener(this.element,"click",e=>{e.target.classList.contains("domma-badge-remove")||this.options.onClick(e,this)})),this.options.removable&&this._addRemoveButton())}_applyStyles(){const e=this.options,t=p.variants[e.variant]||p.variants.primary,o=p.sizes[e.size]||p.sizes.medium;let n={display:"inline-flex",alignItems:"center",gap:"4px",fontWeight:"500",lineHeight:"1",borderRadius:e.pill?"9999px":"4px",transition:"all 150ms ease",...o};e.outline?(n.background="transparent",n.color=t.bg,n.border=`1px solid ${t.bg}`):(n.background=t.bg,n.color=t.color,n.border="none"),Object.assign(this.element.style,n)}_addRemoveButton(){const e=document.createElement("span");e.className="domma-badge-remove",e.innerHTML="×",this._addEventListener(e,"click",e=>{e.stopPropagation(),this.options.onRemove&&this.options.onRemove(e,this),this.remove()}),this.element.appendChild(e)}setVariant(e){return this.options.variant=e,this._applyStyles(),this}setText(e){const t=this.element.querySelector(".domma-badge-remove");return this.element.textContent=e,t&&this.element.appendChild(t),this}remove(){this.element&&this.element.remove(),this.destroy()}}class m extends s{static defaults={trigger:"click",position:"bottom-start",offset:[0,4],animation:!0,animationDuration:150,closeOnSelect:!0,closeOnClickOutside:!0,items:[],model:null,modelKey:null,itemTemplate:null,onOpen:null,onClose:null,onSelect:null};constructor(e,t={}){super(e,t),this._menu=null,this._isOpen=!1,this._items=[...this.options.items],this._selectedValue=null,this._modelUnsubscribe=null,this._init()}_init(){if(!this.element)return;const e=this.options;"click"===e.trigger?this._addEventListener(this.element,"click",e=>{e.stopPropagation(),this.toggle()}):"hover"===e.trigger&&(this._addEventListener(this.element,"mouseenter",()=>this.open()),this._addEventListener(this.element,"mouseleave",()=>this.close())),e.closeOnClickOutside&&(this._outsideClickHandler=e=>{!this._isOpen||this.element.contains(e.target)||this._menu&&this._menu.contains(e.target)||this.close()},document.addEventListener("click",this._outsideClickHandler)),e.model&&e.modelKey&&this._bindToModel(e.model,e.modelKey)}_bindToModel(e,t){if(e&&"function"==typeof e.get){const o=e.get(t);Array.isArray(o)&&(this._items=[...o]),"function"==typeof e.onChange&&(this._modelUnsubscribe=e.onChange((e,o)=>{e===t&&Array.isArray(o)&&(this._items=[...o],this._isOpen&&this._renderMenu())}))}}open(){if(this._isOpen)return this;const e=this.options;return e.onOpen&&e.onOpen(this),this._createMenu(),this._positionMenu(),this._isOpen=!0,this}close(){if(!this._isOpen)return this;const e=this.options;return this._menu&&(this._menu.classList.remove("show"),setTimeout(()=>{this._menu&&(this._menu.remove(),this._menu=null)},e.animationDuration)),this._isOpen=!1,e.onClose&&e.onClose(this),this}toggle(){return this._isOpen?this.close():this.open()}_createMenu(){this.options,this._menu=document.createElement("div"),this._menu.className="domma-dropdown-menu",this._renderMenu(),document.body.appendChild(this._menu),this._menu.offsetHeight,this._menu.classList.add("show")}_renderMenu(){if(!this._menu)return;const e=this.options;this._menu.innerHTML="",this._items.forEach((t,o)=>{const n=document.createElement("div");if(n.className="domma-dropdown-item","string"==typeof t)n.textContent=t,n.dataset.value=t;else{if(t.divider)return n.className="domma-dropdown-divider",void this._menu.appendChild(n);if(t.header)return n.className="domma-dropdown-header",n.textContent=t.header,void this._menu.appendChild(n);if(e.itemTemplate?n.innerHTML=e.itemTemplate(t,o):n.textContent=t.label||t.text||t.name||"",n.dataset.value=void 0!==t.value?t.value:o,t.disabled&&n.classList.add("disabled"),t.icon){const e=document.createElement("span");e.className="domma-dropdown-icon",e.innerHTML=t.icon,n.insertBefore(e,n.firstChild)}}this._addEventListener(n,"click",e=>{e.stopPropagation(),this._selectItem(t,o,n.dataset.value)}),this._menu.appendChild(n)})}_selectItem(e,t,o){const n=this.options;if(this._selectedValue=o,n.onSelect&&n.onSelect({item:e,index:t,value:o},this),n.model&&n.modelKey&&"function"==typeof n.model.set){const e=n.selectedKey||n.modelKey+"_selected";n.model.set(e,o)}n.closeOnSelect&&this.close()}_positionMenu(){if(!this._menu||!this.element)return;const e=this.options,t=this.element.getBoundingClientRect(),[o,n]=e.offset;let i,s;switch(e.position){case"bottom-start":default:i=t.bottom+n,s=t.left+o;break;case"bottom-end":i=t.bottom+n,s=t.right-this._menu.offsetWidth+o;break;case"top-start":i=t.top-this._menu.offsetHeight-n,s=t.left+o;break;case"top-end":i=t.top-this._menu.offsetHeight-n,s=t.right-this._menu.offsetWidth+o}i+=window.scrollY,s+=window.scrollX,this._menu.style.top=i+"px",this._menu.style.left=s+"px"}setItems(e){return this._items=[...e],this._isOpen&&this._renderMenu(),this}addItem(e){return this._items.push(e),this._isOpen&&this._renderMenu(),this}removeItem(e){return this._items.splice(e,1),this._isOpen&&this._renderMenu(),this}getSelected(){return this._selectedValue}isOpen(){return this._isOpen}destroy(){super.destroy(),this._outsideClickHandler&&document.removeEventListener("click",this._outsideClickHandler),this._modelUnsubscribe&&"function"==typeof this._modelUnsubscribe&&this._modelUnsubscribe(),this._menu&&this._menu.remove()}}class f{static defaults={position:"top-right",duration:3e3,pauseOnHover:!0,showProgress:!0,animation:"slide",animationDuration:300,closable:!0,maxToasts:5};static _containers={};static _toasts=[];static _getContainer(e){if(!f._containers[e]){const t=document.createElement("div");t.className=`domma-toast-container domma-toast-${e}`,document.body.appendChild(t),f._containers[e]=t}return f._containers[e]}static show(e,t={}){const o={...f.defaults,...t},n=f._getContainer(o.position);for(;f._toasts.length>=o.maxToasts;){const e=f._toasts.shift();e&&e.close()}const i=new k(e,o,n);return f._toasts.push(i),i}static success(e,t={}){return f.show(e,{...t,type:"success",icon:'<svg width="20" height="20" viewBox="0 0 20 20" fill="currentColor"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clip-rule="evenodd"/></svg>'})}static error(e,t={}){return f.show(e,{...t,type:"error",icon:'<svg width="20" height="20" viewBox="0 0 20 20" fill="currentColor"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clip-rule="evenodd"/></svg>'})}static warning(e,t={}){return f.show(e,{...t,type:"warning",icon:'<svg width="20" height="20" viewBox="0 0 20 20" fill="currentColor"><path fill-rule="evenodd" d="M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z" clip-rule="evenodd"/></svg>'})}static info(e,t={}){return f.show(e,{...t,type:"info",icon:'<svg width="20" height="20" viewBox="0 0 20 20" fill="currentColor"><path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z" clip-rule="evenodd"/></svg>'})}static closeAll(){f._toasts.forEach(e=>e.close()),f._toasts=[]}}class k{static typeStyles={default:{bg:"#1f2937",color:"#fff",accent:"#6b7280"},success:{bg:"#065f46",color:"#fff",accent:"#10b981"},error:{bg:"#991b1b",color:"#fff",accent:"#ef4444"},warning:{bg:"#92400e",color:"#fff",accent:"#f59e0b"},info:{bg:"#1e40af",color:"#fff",accent:"#3b82f6"}};constructor(e,t,o){this.options=t,this.container=o,this._element=null,this._progressBar=null,this._timeout=null,this._isPaused=!1,this._remainingTime=t.duration,this._startTime=null,this._create(e),this._show(),t.duration>0&&this._startTimer()}_create(e){const t=this.options,o=k.typeStyles[t.type||"default"];if(this._element=document.createElement("div"),this._element.className=`domma-toast domma-toast-${t.type||"default"}`,t.icon){const e=document.createElement("div");e.className="domma-toast-icon",e.innerHTML=t.icon,this._element.appendChild(e)}const n=document.createElement("div");if(n.className="domma-toast-content",t.title){const e=document.createElement("div");e.className="domma-toast-title",e.textContent=t.title,n.appendChild(e)}const i=document.createElement("div");if(i.className="domma-toast-message",t.html?i.innerHTML=e:i.textContent=e,n.appendChild(i),t.actions&&t.actions.length){const e=document.createElement("div");e.className="domma-toast-actions",t.actions.forEach(t=>{const n=document.createElement("button");n.textContent=t.label,n.style.cssText=`\n padding: 6px 12px;\n border: none;\n border-radius: 4px;\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n background: ${t.primary?o.accent:"rgba(255,255,255,0.2)"};\n color: #fff;\n transition: opacity 150ms;\n `,n.addEventListener("mouseenter",()=>n.style.opacity="0.8"),n.addEventListener("mouseleave",()=>n.style.opacity="1"),n.addEventListener("click",()=>{t.onClick&&t.onClick(this),!1!==t.closeOnClick&&this.close()}),e.appendChild(n)}),n.appendChild(e)}if(this._element.appendChild(n),t.closable){const e=document.createElement("button");e.innerHTML="×",e.style.cssText="\n background: none;\n border: none;\n color: inherit;\n font-size: 20px;\n cursor: pointer;\n opacity: 0.7;\n padding: 0;\n line-height: 1;\n flex-shrink: 0;\n transition: opacity 150ms;\n ",e.addEventListener("mouseenter",()=>e.style.opacity="1"),e.addEventListener("mouseleave",()=>e.style.opacity="0.7"),e.addEventListener("click",()=>this.close()),this._element.appendChild(e)}t.showProgress&&t.duration>0&&(this._progressBar=document.createElement("div"),this._progressBar.style.cssText=`\n position: absolute;\n bottom: 0;\n left: 0;\n height: 3px;\n background: ${o.accent};\n width: 100%;\n transform-origin: left;\n transition: transform linear;\n `,this._element.appendChild(this._progressBar)),t.pauseOnHover&&(this._element.addEventListener("mouseenter",()=>this._pause()),this._element.addEventListener("mouseleave",()=>this._resume())),this.container.appendChild(this._element)}_show(){this._element.offsetHeight,this._element.classList.add("show")}_startTimer(){this._startTime=Date.now(),this._progressBar&&(this._progressBar.style.transitionDuration=this._remainingTime+"ms",this._progressBar.offsetHeight,this._progressBar.style.transform="scaleX(0)"),this._timeout=setTimeout(()=>this.close(),this._remainingTime)}_pause(){if(!this._isPaused&&this._timeout&&(this._isPaused=!0,clearTimeout(this._timeout),this._remainingTime-=Date.now()-this._startTime,this._progressBar)){const e=getComputedStyle(this._progressBar);this._progressBar.style.transitionDuration="0ms",this._progressBar.style.transform=e.transform}}_resume(){this._isPaused&&(this._isPaused=!1,this._startTimer())}close(){if(!this._element)return;const e=this.options;clearTimeout(this._timeout),this._element.classList.add("hiding"),this._element.classList.remove("show"),setTimeout(()=>{if(this._element){this._element.remove(),this._element=null;const t=f._toasts.indexOf(this);t>-1&&f._toasts.splice(t,1),e.onClose&&e.onClose(this)}},e.animationDuration)}update(e,t={}){if(!this._element)return;const o=this._element.querySelector(".domma-toast > div:nth-child(2) > div:last-of-type");return o&&(t.html?o.innerHTML=e:o.textContent=e),this}}class v{static permission="undefined"!=typeof Notification?Notification.permission:"denied";static isSupported="undefined"!=typeof Notification;static _instances=[];static defaults={title:"Notification",body:"",icon:null,badge:null,tag:null,requireInteraction:!1,silent:!1,data:null,onClick:null,onClose:null,onError:null,onShow:null};static async requestPermission(){if(!v.isSupported)return console.warn("Notifications are not supported in this browser"),"denied";try{const e=await Notification.requestPermission();return v.permission=e,e}catch(e){return console.error("Error requesting notification permission:",e),"denied"}}static notify(e,t={}){const o=new v({title:e,...t});return o.show(),o}static closeAll(){v._instances.forEach(e=>{e.isShown()&&e.close()}),v._instances=[]}constructor(e={}){this.options={...v.defaults,...e},this.notification=null,this._shown=!1}async show(){if(!v.isSupported)return console.warn("Notifications are not supported in this browser"),this.options.onError&&this.options.onError(new Error("Notifications not supported")),this;if("granted"!==v.permission){if("default"!==v.permission)return console.warn("Notification permission denied"),this.options.onError&&this.options.onError(new Error("Permission denied")),this;if("granted"!==await v.requestPermission())return console.warn("Notification permission denied"),this.options.onError&&this.options.onError(new Error("Permission denied")),this}try{const e={};this.options.body&&(e.body=this.options.body),this.options.icon&&(e.icon=this.options.icon),this.options.badge&&(e.badge=this.options.badge),this.options.tag&&(e.tag=this.options.tag),void 0!==this.options.requireInteraction&&(e.requireInteraction=this.options.requireInteraction),void 0!==this.options.silent&&(e.silent=this.options.silent),this.options.data&&(e.data=this.options.data),this.notification=new Notification(this.options.title,e),this._shown=!0,v._instances.push(this),this.options.onClick&&(this.notification.onclick=e=>{this.options.onClick(e,this)}),this.options.onClose?this.notification.onclose=e=>{this._shown=!1;const t=v._instances.indexOf(this);t>-1&&v._instances.splice(t,1),this.options.onClose(e,this)}:this.notification.onclose=()=>{this._shown=!1;const e=v._instances.indexOf(this);e>-1&&v._instances.splice(e,1)},this.options.onError&&(this.notification.onerror=e=>{this._shown=!1,this.options.onError(e,this)}),this.options.onShow&&(this.notification.onshow=e=>{this.options.onShow(e,this)})}catch(e){console.error("Error showing notification:",e),this.options.onError&&this.options.onError(e)}return this}close(){return this.notification&&this._shown&&(this.notification.close(),this._shown=!1),this}isShown(){return this._shown}}class g extends s{static defaults={duration:6e4,autoStart:!1,format:"mm:ss",showControls:!1,updateInterval:100,notification:!1,notificationOptions:{},sound:!1,soundUrl:null,onTick:null,onComplete:null,onStart:null,onPause:null,onReset:null};constructor(e,t={}){super(e,t),e||(this.element=null,this.options={...g.defaults,...t}),this._running=!1,this._remaining=this.options.duration,this._intervalId=null,this._startTime=null,this._pausedTime=null,this._display=null,this._controls=null,this._audio=null,this._init()}_init(){this.element&&(this._createDisplay(),this.options.showControls&&this._createControls()),this.options.sound&&this.options.soundUrl&&(this._audio=new Audio(this.options.soundUrl)),this.options.autoStart&&this.start()}_createDisplay(){if(!this.element)return;const e=document.createElement("div");e.className="dm-timer",this._display=document.createElement("div"),this._display.className="dm-timer-display";const t=document.createElement("span");t.className="dm-timer-time",t.textContent=this._formatTime(this._remaining),this._display.appendChild(t),e.appendChild(this._display),this.element.innerHTML="",this.element.appendChild(e),this._container=e}_createControls(){if(!this.element||!this._container)return;const e=document.createElement("div");e.className="dm-timer-controls",this._startBtn=document.createElement("button"),this._startBtn.className="dm-timer-button dm-timer-start",this._startBtn.textContent="Start",this._startBtn.addEventListener("click",()=>this.start()),this._pauseBtn=document.createElement("button"),this._pauseBtn.className="dm-timer-button dm-timer-pause",this._pauseBtn.textContent="Pause",this._pauseBtn.style.display="none",this._pauseBtn.addEventListener("click",()=>this.pause()),this._resetBtn=document.createElement("button"),this._resetBtn.className="dm-timer-button dm-timer-reset",this._resetBtn.textContent="Reset",this._resetBtn.addEventListener("click",()=>this.reset()),e.appendChild(this._startBtn),e.appendChild(this._pauseBtn),e.appendChild(this._resetBtn),this._container.appendChild(e),this._controls=e}_updateDisplay(){if(!this._display)return;const e=this._display.querySelector(".dm-timer-time");e&&(e.textContent=this._formatTime(this._remaining))}_formatTime(e){const t=Math.max(0,Math.floor(e/1e3)),o=Math.floor(t/3600),n=Math.floor(t%3600/60),i=t%60,s=this.options.format.toLowerCase();if("hh:mm:ss"===s)return`${String(o).padStart(2,"0")}:${String(n).padStart(2,"0")}:${String(i).padStart(2,"0")}`;if("mm:ss"===s){const e=Math.floor(t/60);return`${String(e).padStart(2,"0")}:${String(i).padStart(2,"0")}`}return"ss"===s?String(t).padStart(2,"0"):`${String(n).padStart(2,"0")}:${String(i).padStart(2,"0")}`}_tick(){if(!this._running)return;const e=Date.now()-this._startTime;this._remaining=Math.max(0,this.options.duration-e),this._updateDisplay(),this.options.onTick&&this.options.onTick(this._remaining),0===this._remaining&&this._complete()}_complete(){if(this.stop(),this.options.sound&&this._audio&&this._audio.play().catch(e=>{console.warn("Failed to play timer sound:",e)}),this.options.notification&&v.isSupported){const e={title:"Timer Complete",body:"Your countdown has finished",...this.options.notificationOptions};v.notify(e.title,e)}this.options.onComplete&&this.options.onComplete()}start(){return this._running||(this._running=!0,this._startTime=Date.now()-(this.options.duration-this._remaining),this._intervalId=setInterval(()=>this._tick(),this.options.updateInterval),this._startBtn&&(this._startBtn.style.display="none"),this._pauseBtn&&(this._pauseBtn.style.display="inline-block"),this.options.onStart&&this.options.onStart()),this}pause(){return this._running?(this._running=!1,this._pausedTime=Date.now(),this._intervalId&&(clearInterval(this._intervalId),this._intervalId=null),this._startBtn&&(this._startBtn.style.display="inline-block"),this._pauseBtn&&(this._pauseBtn.style.display="none"),this.options.onPause&&this.options.onPause(),this):this}reset(){return this.stop(),this._remaining=this.options.duration,this._updateDisplay(),this._startBtn&&(this._startBtn.style.display="inline-block"),this._pauseBtn&&(this._pauseBtn.style.display="none"),this.options.onReset&&this.options.onReset(),this}stop(){return this._running=!1,this._intervalId&&(clearInterval(this._intervalId),this._intervalId=null),this}add(e){return this._remaining=Math.min(this._remaining+e,864e5),this._updateDisplay(),this}subtract(e){return this._remaining=Math.max(0,this._remaining-e),this._updateDisplay(),0===this._remaining&&this._running&&this._complete(),this}setDuration(e){return this.options.duration=e,this._running||(this._remaining=e,this._updateDisplay()),this}isRunning(){return this._running}getRemaining(){return this._remaining}getElapsed(){return this.options.duration-this._remaining}destroy(){this.stop(),this._startBtn&&this._startBtn.removeEventListener("click",this.start),this._pauseBtn&&this._pauseBtn.removeEventListener("click",this.pause),this._resetBtn&&this._resetBtn.removeEventListener("click",this.reset),this.element&&this._container&&this.element.removeChild(this._container),this._display=null,this._controls=null,this._audio=null,this._container=null,super.destroy&&super.destroy()}}class M{static defaults={alarms:[],timezone:"local",checkInterval:3e4,storageKey:"domma-alarms",onTrigger:null,onSnooze:null,onDismiss:null,onAlarmAdd:null,onAlarmRemove:null};static _instance=null;static _checkInterval=null;static _nextAlarmId=1;constructor(e={}){if(M._instance)return M._instance;this.options={...M.defaults,...e},this._alarms=[],this._init(),M._instance=this}_init(){this._loadAlarms(),this._startChecking()}_loadAlarms(){try{const e=localStorage.getItem(this.options.storageKey);if(e){const t=JSON.parse(e);if(this._alarms=Array.isArray(t)?t:[],this._alarms.length>0){const e=Math.max(...this._alarms.map(e=>{const t=String(e.id).match(/\d+$/);return t?parseInt(t[0]):0}));M._nextAlarmId=e+1}}else this.options.alarms&&this.options.alarms.length>0&&(this._alarms=this.options.alarms.map(e=>({id:"alarm-"+M._nextAlarmId++,enabled:!0,notification:!0,notificationOptions:{},sound:!1,soundUrl:null,repeat:null,lastTriggered:null,snoozedUntil:null,...e})),this._saveAlarms())}catch(e){console.error("Failed to load alarms from localStorage:",e),this._alarms=[]}}_saveAlarms(){try{localStorage.setItem(this.options.storageKey,JSON.stringify(this._alarms))}catch(e){console.error("Failed to save alarms to localStorage:",e)}}_startChecking(){M._checkInterval||(M._checkInterval=setInterval(()=>{this._checkAlarms()},this.options.checkInterval),this._checkAlarms())}_stopChecking(){M._checkInterval&&(clearInterval(M._checkInterval),M._checkInterval=null)}_checkAlarms(){const e=new Date;this._alarms.forEach(t=>{t.enabled&&(t.snoozedUntil&&e<new Date(t.snoozedUntil)||(t.snoozedUntil&&e>=new Date(t.snoozedUntil)&&(t.snoozedUntil=null,this._saveAlarms()),this._shouldTrigger(t,e)&&this._triggerAlarm(t)))})}_shouldTrigger(e,t){const{hours:o,minutes:n}=this._parseTime(e.time),i=t.getHours(),s=t.getMinutes();if(i!==o||s!==n)return!1;if(e.lastTriggered){if(t-new Date(e.lastTriggered)<5e4)return!1}return!!this._matchesRepeatPattern(e,t)}_parseTime(e){const[t,o]=e.split(":").map(e=>parseInt(e,10));return{hours:t,minutes:o}}_matchesRepeatPattern(e,t){if(!e.repeat)return!0;const o=t.getDay();if("daily"===e.repeat)return!0;if("weekdays"===e.repeat)return o>=1&&o<=5;if("weekends"===e.repeat)return 0===o||6===o;if(Array.isArray(e.repeat)){const t=["sun","mon","tue","wed","thu","fri","sat"][o];return e.repeat.includes(t)}return!1}_triggerAlarm(e){if(e.lastTriggered=Date.now(),this._saveAlarms(),e.sound&&e.soundUrl){new Audio(e.soundUrl).play().catch(e=>{console.warn("Failed to play alarm sound:",e)})}if(e.notification&&v.isSupported){const t={title:"Alarm",body:e.label||`Alarm at ${e.time}`,requireInteraction:!0,...e.notificationOptions};v.notify(t.title,t)}this.options.onTrigger&&this.options.onTrigger(e),e.repeat||(e.enabled=!1,this._saveAlarms())}add(e){const t={id:"alarm-"+M._nextAlarmId++,enabled:!0,notification:!0,notificationOptions:{},sound:!1,soundUrl:null,repeat:null,lastTriggered:null,snoozedUntil:null,...e};return this._alarms.push(t),this._saveAlarms(),this.options.onAlarmAdd&&this.options.onAlarmAdd(t),t}remove(e){const t=this._alarms.findIndex(t=>t.id===e);if(-1===t)return!1;const o=this._alarms.splice(t,1)[0];return this._saveAlarms(),this.options.onAlarmRemove&&this.options.onAlarmRemove(o),!0}update(e,t){const o=this._alarms.find(t=>t.id===e);return o?(Object.assign(o,t),this._saveAlarms(),o):null}enable(e){return null!==this.update(e,{enabled:!0})}disable(e){return null!==this.update(e,{enabled:!1})}toggle(e){const t=this._alarms.find(t=>t.id===e);return t?(t.enabled=!t.enabled,this._saveAlarms(),t.enabled):null}snooze(e,t=3e5){const o=this._alarms.find(t=>t.id===e);return!!o&&(o.snoozedUntil=Date.now()+t,this._saveAlarms(),this.options.onSnooze&&this.options.onSnooze(o,t),!0)}getAlarms(){return[...this._alarms]}getAlarm(e){return this._alarms.find(t=>t.id===e)||null}getNextAlarm(){const e=new Date;let t=null,o=null;return this._alarms.forEach(n=>{if(!n.enabled)return;const i=this._getNextOccurrence(n,e);i&&(!o||i<o)&&(o=i,t={...n,nextTrigger:i})}),t}_getNextOccurrence(e,t){const{hours:o,minutes:n}=this._parseTime(e.time),i=new Date(t),s=new Date(i);s.setHours(o,n,0,0),s<=i&&s.setDate(s.getDate()+1);for(let t=0;t<7;t++){if(this._matchesRepeatPattern(e,s))return s;s.setDate(s.getDate()+1)}return null}clearAll(){return this._alarms=[],this._saveAlarms(),this}destroy(){this._stopChecking(),this._alarms=[],M._instance=null}}class _ extends s{static defaults={autoplay:!1,interval:5e3,pauseOnHover:!0,loop:!0,animation:"slide",animationDuration:500,showArrows:!0,showIndicators:!0,slideSelector:".carousel-slide, [data-slide]",activeClass:"active",onChange:null};constructor(e,t={}){super(e,t),this._currentIndex=0,this._autoplayTimer=null,this._isAnimating=!1,this._init()}_init(){if(!this.element)return;const e=this.options;this._slides=this.element.querySelectorAll(e.slideSelector),this._track=this.element.querySelector(".carousel-track"),0!==this._slides.length&&(this.element.style.position="relative",this.element.style.overflow="hidden",this._slides.forEach((t,o)=>{"fade"===e.animation?(t.style.position=0===o?"relative":"absolute",t.style.top="0",t.style.left="0",t.style.width="100%",t.style.opacity=0===o?"1":"0",t.style.zIndex=0===o?"1":"0",t.style.transition=`opacity ${e.animationDuration}ms ease`):(t.style.position="relative",t.style.width="100%",t.style.flexShrink="0")}),"slide"===e.animation&&this._track&&(this._track.style.display="flex",this._track.style.transition=`transform ${e.animationDuration}ms ease`),e.showArrows&&this._createArrows(),e.showIndicators&&this._createIndicators(),e.autoplay&&(this._startAutoplay(),e.pauseOnHover&&(this._addEventListener(this.element,"mouseenter",()=>this._stopAutoplay()),this._addEventListener(this.element,"mouseleave",()=>this._startAutoplay()))),this._addEventListener(this.element,"keydown",e=>{"ArrowLeft"===e.key&&this.prev(),"ArrowRight"===e.key&&this.next()}),this.element.tabIndex=0,this._updateState())}_createArrows(){const e=document.createElement("button");e.className="carousel-arrow carousel-prev",e.innerHTML='<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M15 18l-6-6 6-6"/></svg>',e.style.cssText="\n position: absolute;\n top: 50%;\n left: 1rem;\n transform: translateY(-50%);\n z-index: 10;\n background: rgba(255,255,255,0.9);\n border: none;\n border-radius: 50%;\n width: 40px;\n height: 40px;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: all 0.2s ease;\n box-shadow: 0 2px 8px rgba(0,0,0,0.15);\n ",this._addEventListener(e,"click",()=>this.prev()),this._addEventListener(e,"mouseenter",()=>e.style.background="#fff"),this._addEventListener(e,"mouseleave",()=>e.style.background="rgba(255,255,255,0.9)");const t=document.createElement("button");t.className="carousel-arrow carousel-next",t.innerHTML='<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 18l6-6-6-6"/></svg>',t.style.cssText=e.style.cssText.replace("left: 1rem","right: 1rem"),this._addEventListener(t,"click",()=>this.next()),this._addEventListener(t,"mouseenter",()=>t.style.background="#fff"),this._addEventListener(t,"mouseleave",()=>t.style.background="rgba(255,255,255,0.9)"),this.element.appendChild(e),this.element.appendChild(t),this._prevBtn=e,this._nextBtn=t}_createIndicators(){const e=document.createElement("div");e.className="carousel-indicators",e.style.cssText="\n position: absolute;\n bottom: 1rem;\n left: 50%;\n transform: translateX(-50%);\n display: flex;\n gap: 0.5rem;\n z-index: 10;\n ",this._slides.forEach((t,o)=>{const n=document.createElement("button");n.className="carousel-indicator",n.style.cssText="\n width: 10px;\n height: 10px;\n border-radius: 50%;\n border: none;\n background: rgba(255,255,255,0.5);\n cursor: pointer;\n padding: 0;\n transition: all 0.2s ease;\n ",this._addEventListener(n,"click",()=>this.goTo(o)),e.appendChild(n)}),this.element.appendChild(e),this._indicators=e}_updateState(){const e=this.options;if("fade"===e.animation?this._slides.forEach((e,t)=>{const o=t===this._currentIndex;e.style.position=o?"relative":"absolute",e.style.opacity=o?"1":"0",e.style.zIndex=o?"1":"0"}):this._track&&(this._track.style.transform=`translateX(-${100*this._currentIndex}%)`),this._indicators){this._indicators.querySelectorAll(".carousel-indicator").forEach((e,t)=>{e.style.background=t===this._currentIndex?"rgba(255,255,255,1)":"rgba(255,255,255,0.5)",e.style.transform=t===this._currentIndex?"scale(1.2)":"scale(1)"})}!e.loop&&this._prevBtn&&this._nextBtn&&(this._prevBtn.style.opacity=0===this._currentIndex?"0.3":"1",this._prevBtn.style.pointerEvents=0===this._currentIndex?"none":"auto",this._nextBtn.style.opacity=this._currentIndex===this._slides.length-1?"0.3":"1",this._nextBtn.style.pointerEvents=this._currentIndex===this._slides.length-1?"none":"auto")}_startAutoplay(){this._autoplayTimer||(this._autoplayTimer=setInterval(()=>{this.next()},this.options.interval))}_stopAutoplay(){this._autoplayTimer&&(clearInterval(this._autoplayTimer),this._autoplayTimer=null)}goTo(e){if(this._isAnimating)return this;const t=this.options,o=this._currentIndex,n=this._slides.length-1;if(t.loop)e<0&&(e=n),e>n&&(e=0);else if(e<0||e>n)return this;return e===this._currentIndex||(this._isAnimating=!0,this._currentIndex=e,this._updateState(),setTimeout(()=>{this._isAnimating=!1},t.animationDuration),t.onChange&&t.onChange({index:e,oldIndex:o,slide:this._slides[e]})),this}next(){return this.goTo(this._currentIndex+1)}prev(){return this.goTo(this._currentIndex-1)}play(){return this._startAutoplay(),this}pause(){return this._stopAutoplay(),this}getIndex(){return this._currentIndex}getSlide(e=this._currentIndex){return this._slides[e]}destroy(){super.destroy(),this._stopAutoplay()}}class y extends s{static defaults={showAfter:null,duration:300,position:"bottom-right",offset:16,target:null,zIndex:1e3,onShow:null,onHide:null,onScroll:null};constructor(e,t={}){super(e,t),this._isVisible=!1,this._isScrolling=!1,this._init()}_init(){this._setupButton(),this._bindEvents(),this._checkVisibility()}_setupButton(){this.options.target?(this._button="string"==typeof this.options.target?document.querySelector(this.options.target):this.options.target,this._created=!1):(this._button=this._createButton(),this._created=!0,document.body.appendChild(this._button)),this._button&&this._applyStyles()}_createButton(){const e=document.createElement("button");return e.className="dm-back-to-top",e.setAttribute("title","Back to top"),e.setAttribute("aria-label","Scroll back to top"),e.innerHTML='<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 15l-6-6-6 6"/></svg>',e}_applyStyles(){const{position:e,offset:t,zIndex:o}=this.options,n="bottom-left"===e,i={position:"fixed",bottom:`${t}px`,[n?"left":"right"]:`${t}px`,padding:"0.5rem",background:"var(--dm-surface, #fff)",border:"1px solid var(--dm-border, #dee2e6)",borderRadius:"9999px",cursor:"pointer",zIndex:o,width:"40px",height:"40px",display:"flex",alignItems:"center",justifyContent:"center",opacity:"0",visibility:"hidden",transform:"translateY(10px)",transition:"opacity 0.2s ease, transform 0.15s ease, visibility 0.2s, background 0.2s ease, box-shadow 0.15s ease"};Object.assign(this._button.style,i),this._addEventListener(this._button,"mouseenter",()=>{this._isVisible&&(this._button.style.background="var(--dm-hover-bg, rgba(0,0,0,0.04))",this._button.style.transform="translateY(0) scale(1.1)",this._button.style.boxShadow="0 2px 8px rgba(0,0,0,0.15)")}),this._addEventListener(this._button,"mouseleave",()=>{this._isVisible&&(this._button.style.background="var(--dm-surface, #fff)",this._button.style.transform="translateY(0)",this._button.style.boxShadow="none")});const s=this._button.querySelector("svg");s&&(s.style.color="var(--dm-text, #212529)")}_bindEvents(){this._scrollHandler=()=>this._checkVisibility(),window.addEventListener("scroll",this._scrollHandler,{passive:!0}),this._addEventListener(this._button,"click",e=>{e.preventDefault(),this.scroll()})}_checkVisibility(){const e=this.options.showAfter??window.innerHeight,t=window.scrollY>e;t&&!this._isVisible?this.show():!t&&this._isVisible&&this.hide(),this.options.onScroll&&this.options.onScroll({scrollY:window.scrollY,isVisible:this._isVisible})}scroll(){if(this._isScrolling)return this;this._isScrolling=!0;const e=window.scrollY,t=performance.now(),o=this.options.duration,n=i=>{const s=i-t,r=Math.min(s/o,1),a=(l=r)*(2-l);var l;window.scrollTo(0,e*(1-a)),r<1?requestAnimationFrame(n):this._isScrolling=!1};return requestAnimationFrame(n),this}show(){return this._isVisible||(this._isVisible=!0,this._button.style.opacity="1",this._button.style.visibility="visible",this._button.style.transform="translateY(0)",this.options.onShow&&this.options.onShow({button:this._button})),this}hide(){return this._isVisible?(this._isVisible=!1,this._button.style.opacity="0",this._button.style.visibility="hidden",this._button.style.transform="translateY(10px)",this.options.onHide&&this.options.onHide({button:this._button}),this):this}toggle(){return this._isVisible?this.hide():this.show()}isVisible(){return this._isVisible}getButton(){return this._button}destroy(){window.removeEventListener("scroll",this._scrollHandler),super.destroy(),this._created&&this._button&&this._button.parentNode&&this._button.parentNode.removeChild(this._button)}}const L={_container:null,_defaults:{title:"",message:"",confirmText:"OK",cancelText:"Cancel",inputPlaceholder:"",inputValue:"",inputType:"text",animation:!0,backdrop:!0,backdropClose:!1,keyboard:!0,className:""},_ensureContainer(){return this._container||(this._container=document.createElement("div"),this._container.className="dm-dialog-container",document.body.appendChild(this._container)),this._container},_createDialog(e,t){const o={...this._defaults,...t},n=this._ensureContainer();return new Promise(t=>{const i=document.createElement("div");i.className="dm-dialog-overlay"+(o.animation?" dm-dialog-animate":"");const s=document.createElement("div");s.className=`dm-dialog dm-dialog-${e}${o.className?" "+o.className:""}`,s.setAttribute("role","dialog"),s.setAttribute("aria-modal","true");let r='<div class="dm-dialog-content">';o.title&&(r+=`<div class="dm-dialog-header"><h3 class="dm-dialog-title">${o.title}</h3></div>`),r+='<div class="dm-dialog-body">',o.message&&(r+=`<p class="dm-dialog-message">${o.message}</p>`),"prompt"===e&&(r+=`<input type="${o.inputType}" class="dm-dialog-input form-input" placeholder="${o.inputPlaceholder}" value="${o.inputValue}">`),r+="</div>",r+='<div class="dm-dialog-footer">',"confirm"!==e&&"prompt"!==e||(r+=`<button type="button" class="btn btn-outline dm-dialog-cancel">${o.cancelText}</button>`),r+=`<button type="button" class="btn btn-primary dm-dialog-confirm">${o.confirmText}</button>`,r+="</div></div>",s.innerHTML=r,i.appendChild(s),n.appendChild(i);const a=s.querySelector(".dm-dialog-confirm"),l=s.querySelector(".dm-dialog-cancel"),h=s.querySelector(".dm-dialog-input"),c=h||a;setTimeout(()=>c?.focus(),50),h&&h.select();const d=e=>{o.animation?(i.classList.add("dm-dialog-closing"),setTimeout(()=>{i.remove(),t(e)},200)):(i.remove(),t(e))},u=()=>{d("prompt"===e?h.value:"confirm"===e||void 0)},p=()=>{d("prompt"===e&&null)};if(a.addEventListener("click",u),l?.addEventListener("click",p),o.backdropClose&&i.addEventListener("click",e=>{e.target===i&&p()}),o.keyboard){const t=o=>{"Escape"===o.key?(p(),document.removeEventListener("keydown",t)):("Enter"===o.key&&"prompt"!==e||"Enter"===o.key&&"prompt"===e&&o.target===h)&&(u(),document.removeEventListener("keydown",t))};document.addEventListener("keydown",t)}})},alert(e,t={}){return"object"==typeof e&&(e=(t=e).message||""),this._createDialog("alert",{...t,message:e})},confirm(e,t={}){return"object"==typeof e&&(e=(t=e).message||""),this._createDialog("confirm",{...t,message:e})},prompt(e,t={}){return"object"==typeof e&&(e=(t=e).message||""),this._createDialog("prompt",{...t,message:e})}};class w extends s{static defaults={mode:"single",activeClass:"active",allowEmpty:!1,onChange:null};constructor(e,t={}){super(e,t),this._init()}_init(){this.element&&(this.buttons=Array.from(this.element.querySelectorAll(".btn")),this.buttons.forEach((e,t)=>{e.dataset.index=t,this._addEventListener(e,"click",o=>{o.preventDefault(),this._handleClick(e,t)})}))}_handleClick(e,t){const o=e.classList.contains(this.options.activeClass);"single"===this.options.mode?o&&this.options.allowEmpty?this.options.allowEmpty&&e.classList.remove(this.options.activeClass):(this.buttons.forEach(e=>e.classList.remove(this.options.activeClass)),e.classList.add(this.options.activeClass)):e.classList.toggle(this.options.activeClass),this.options.onChange&&this.options.onChange(this.getValue(),t,e)}getValue(){const e=this.buttons.map((e,t)=>e.classList.contains(this.options.activeClass)?t:-1).filter(e=>-1!==e);return"single"===this.options.mode?e.length>0?e[0]:null:e}getActive(){const e=this.buttons.filter(e=>e.classList.contains(this.options.activeClass));return"single"===this.options.mode?e.length>0?e[0]:null:e}setValue(e){const t=Array.isArray(e)?e:[e];return this.buttons.forEach((e,o)=>{t.includes(o)?e.classList.add(this.options.activeClass):e.classList.remove(this.options.activeClass)}),this}toggle(e){return e>=0&&e<this.buttons.length&&this._handleClick(this.buttons[e],e),this}selectAll(){return"multiple"===this.options.mode&&(this.buttons.forEach(e=>e.classList.add(this.options.activeClass)),this.options.onChange&&this.options.onChange(this.getValue(),-1,null)),this}deselectAll(){return this.buttons.forEach(e=>e.classList.remove(this.options.activeClass)),this.options.onChange&&this.options.onChange(this.getValue(),-1,null),this}}class b extends s{static defaults={type:"spinner",size:"medium",color:"primary",overlay:!1,text:"",centered:!0};static sizes={small:24,medium:40,large:64};static _overlayInstances=new Map;constructor(e,t={}){super(e,t),this._visible=!1,this._init()}_init(){this.element&&this._render()}_getSize(){const{size:e}=this.options;return"number"==typeof e?e:b.sizes[e]||b.sizes.medium}_getColor(){const{color:e}=this.options;return{primary:"var(--dm-primary, #6495ED)",secondary:"var(--dm-secondary, #6c757d)",success:"var(--dm-success, #28a745)",danger:"var(--dm-danger, #dc3545)",warning:"var(--dm-warning, #ffc107)",info:"var(--dm-info, #17a2b8)",white:"#ffffff",dark:"var(--dm-gray-800, #343a40)"}[e]||e}_render(){const e=this._getSize(),t=this._getColor(),{type:o,overlay:n,text:i,centered:s}=this.options;this._wrapper=document.createElement("div"),this._wrapper.className="dm-loader",this._wrapper.setAttribute("role","status"),this._wrapper.setAttribute("aria-live","polite");const r={display:"inline-flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:"0.75rem"};switch(n?(Object.assign(r,{position:"absolute",inset:"0",background:"rgba(0, 0, 0, 0.5)",zIndex:"1000"}),this.element.style.position="relative"):s&&(Object.assign(r,{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)"}),"static"===getComputedStyle(this.element).position&&(this.element.style.position="relative")),Object.assign(this._wrapper.style,r),this._spinner=document.createElement("div"),this._spinner.className=`dm-loader-${o}`,o){case"dots":this._renderDots(e,t);break;case"pulse":this._renderPulse(e,t);break;case"bars":this._renderBars(e,t);break;default:this._renderSpinner(e,t)}this._wrapper.appendChild(this._spinner),i&&(this._textEl=document.createElement("span"),this._textEl.className="dm-loader-text",this._textEl.textContent=i,this._textEl.style.cssText=`\n color: ${n?"#fff":"var(--dm-text, #212529)"};\n font-size: var(--dm-text-sm, 0.875rem);\n `,this._wrapper.appendChild(this._textEl)),this._wrapper.style.display="none",this.element.appendChild(this._wrapper)}_renderSpinner(e,t){this._spinner.style.cssText=`\n width: ${e}px;\n height: ${e}px;\n border: ${Math.max(2,e/10)}px solid ${t};\n border-top-color: transparent;\n border-radius: 50%;\n animation: dm-loader-spin 0.8s linear infinite;\n `,this._injectKeyframes("dm-loader-spin","\n @keyframes dm-loader-spin {\n to { transform: rotate(360deg); }\n }\n ")}_renderDots(e,t){const o=e/4;this._spinner.style.cssText=`\n display: flex;\n gap: ${o/2}px;\n `;for(let e=0;e<3;e++){const n=document.createElement("span");n.style.cssText=`\n width: ${o}px;\n height: ${o}px;\n background: ${t};\n border-radius: 50%;\n animation: dm-loader-bounce 1.4s ease-in-out ${.16*e}s infinite both;\n `,this._spinner.appendChild(n)}this._injectKeyframes("dm-loader-bounce","\n @keyframes dm-loader-bounce {\n 0%, 80%, 100% { transform: scale(0); }\n 40% { transform: scale(1); }\n }\n ")}_renderPulse(e,t){this._spinner.style.cssText=`\n width: ${e}px;\n height: ${e}px;\n background: ${t};\n border-radius: 50%;\n animation: dm-loader-pulse 1.2s ease-in-out infinite;\n `,this._injectKeyframes("dm-loader-pulse","\n @keyframes dm-loader-pulse {\n 0% { transform: scale(0); opacity: 1; }\n 100% { transform: scale(1); opacity: 0; }\n }\n ")}_renderBars(e,t){const o=e/6,n=e;this._spinner.style.cssText=`\n display: flex;\n align-items: center;\n gap: ${o/2}px;\n height: ${n}px;\n `;for(let e=0;e<4;e++){const n=document.createElement("span");n.style.cssText=`\n width: ${o}px;\n height: 100%;\n background: ${t};\n border-radius: 2px;\n animation: dm-loader-bars 1s ease-in-out ${.1*e}s infinite;\n `,this._spinner.appendChild(n)}this._injectKeyframes("dm-loader-bars","\n @keyframes dm-loader-bars {\n 0%, 40%, 100% { transform: scaleY(0.4); }\n 20% { transform: scaleY(1); }\n }\n ")}_injectKeyframes(e,t){if(document.getElementById(`dm-loader-${e}`))return;const o=document.createElement("style");o.id=`dm-loader-${e}`,o.textContent=t,document.head.appendChild(o)}show(){return this._wrapper&&(this._wrapper.style.display="inline-flex",this._visible=!0),this}hide(){return this._wrapper&&(this._wrapper.style.display="none",this._visible=!1),this}toggle(){return this._visible?this.hide():this.show()}isVisible(){return this._visible}setText(e){return this._textEl?this._textEl.textContent=e:e&&this._wrapper&&(this._textEl=document.createElement("span"),this._textEl.className="dm-loader-text",this._textEl.textContent=e,this._textEl.style.cssText=`\n color: ${this.options.overlay?"#fff":"var(--dm-text, #212529)"};\n font-size: var(--dm-text-sm, 0.875rem);\n `,this._wrapper.appendChild(this._textEl)),this}destroy(){this._wrapper&&this._wrapper.remove(),super.destroy()}static show(e,t={}){const o="string"==typeof e?document.querySelector(e):e;if(!o)return null;let n=b._overlayInstances.get(o);return n||(n=new b(o,t),b._overlayInstances.set(o,n)),n.show(),n}static hide(e){const t="string"==typeof e?document.querySelector(e):e,o=b._overlayInstances.get(t);o&&o.hide()}static fullscreen(e="Loading...",t={}){let o=document.getElementById("dm-loader-fullscreen");o||(o=document.createElement("div"),o.id="dm-loader-fullscreen",o.style.cssText="\n position: fixed;\n inset: 0;\n background: rgba(0, 0, 0, 0.7);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 9999;\n ",document.body.appendChild(o));const n=new b(o,{type:t.type||"spinner",size:t.size||"large",color:t.color||"white",text:e,overlay:!1,centered:!1});n.show(),n._fullscreenContainer=o;const i=n.destroy.bind(n);return n.destroy=()=>{i(),o.parentNode&&o.remove()},n}}class x extends s{static defaults={items:[],separator:"/",homeIcon:!1,responsive:!0,onChange:null};static separators={"/":"/",">":"›","→":"→",chevron:'<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 18l6-6-6-6"/></svg>'};constructor(e,t={}){super(e,t),this._init()}_init(){this.element&&(this._render(),this._bindEvents())}_getSeparatorHTML(){const{separator:e}=this.options;return x.separators[e]||e}_render(){const{items:e,homeIcon:t,responsive:o}=this.options,n=this._getSeparatorHTML();this.element.className="dm-breadcrumbs",o&&this.element.classList.add("dm-breadcrumbs-responsive"),this.element.setAttribute("aria-label","Breadcrumb"),this.element.style.cssText="\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 0.5rem;\n font-size: var(--dm-text-sm, 0.875rem);\n color: var(--dm-text-muted, #6c757d);\n ";let i="";e.forEach((o,s)=>{const r=s===e.length-1,a=0===s;s>0&&(i+=`<span class="dm-breadcrumb-separator" aria-hidden="true" style="\n display: inline-flex;\n align-items: center;\n opacity: 0.5;\n ">${n}</span>`);let l=o.text||o;a&&t&&(l=`<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" style="vertical-align: middle; margin-right: 4px;"><path d="M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2z"/><polyline points="9 22 9 12 15 12 15 22"/></svg>${l}`),r||o.active?i+=`<span class="dm-breadcrumb-item active" aria-current="page" style="\n color: var(--dm-text, #212529);\n font-weight: 500;\n ">${l}</span>`:i+=`<a href="${o.url||"#"}" class="dm-breadcrumb-item dm-breadcrumb-link" data-index="${s}" style="\n color: inherit;\n text-decoration: none;\n transition: color 0.15s ease;\n ">${l}</a>`}),this.element.innerHTML=i,this._injectStyles()}_injectStyles(){if(document.getElementById("dm-breadcrumbs-styles"))return;const e=document.createElement("style");e.id="dm-breadcrumbs-styles",e.textContent="\n .dm-breadcrumb-link:hover {\n color: var(--dm-primary, #6495ED) !important;\n }\n @media (max-width: 576px) {\n .dm-breadcrumbs-responsive .dm-breadcrumb-item:not(:last-child):not(:first-child) {\n display: none;\n }\n .dm-breadcrumbs-responsive .dm-breadcrumb-separator:not(:first-of-type):not(:last-of-type) {\n display: none;\n }\n }\n ",document.head.appendChild(e)}_bindEvents(){this._addEventListener(this.element,"click",e=>{const t=e.target.closest(".dm-breadcrumb-link");if(t){const o=parseInt(t.dataset.index,10);this.options.onChange&&(e.preventDefault(),this.options.onChange(this.options.items[o],o,e))}})}setItems(e){return this.options.items=e,this._render(),this}addItem(e){if(this.options.items.length>0){const e=this.options.items[this.options.items.length-1];"object"==typeof e&&(e.active=!1)}return this.options.items.push(e),this._render(),this}removeItem(e){return e>=0&&e<this.options.items.length&&(this.options.items.splice(e,1),this._render()),this}getItems(){return[...this.options.items]}}class C extends s{static defaults={brand:null,items:[],position:"static",variant:"light",collapsible:!0,collapseAt:768,actions:[],onItemClick:null};constructor(e,t={}){super(e,t),this._isCollapsed=!0,this._init()}_init(){this.element&&(this._render(),this._bindEvents())}_render(){const{brand:e,items:t,position:o,variant:n,collapsible:i,actions:s}=this.options;this.element.className="navbar",this.element.classList.add(`navbar-${n}`),"static"!==o&&this.element.classList.add(`navbar-${o}`),this.element.setAttribute("role","navigation");let r='<div class="navbar-container">';e&&(r+='<div class="navbar-brand">',e.url&&(r+=`<a href="${e.url}" class="navbar-brand-link">`),e.html?r+=e.html:(e.logo&&(r+=`<img src="${e.logo}" alt="${e.text||""}" class="navbar-logo">`),e.text&&(r+=`<span class="navbar-brand-text">${e.text}</span>`)),e.url&&(r+="</a>"),r+="</div>"),i&&(r+='\n <button class="navbar-toggle" aria-label="Toggle navigation" aria-expanded="false">\n <span class="navbar-toggle-icon"></span>\n </button>\n '),r+='<div class="navbar-collapse">',r+='<ul class="navbar-nav">',t.forEach((e,t)=>{e.items&&e.items.length>0?(r+='<li class="navbar-item navbar-dropdown">',r+=`<button class="navbar-link navbar-dropdown-toggle" data-index="${t}">\n ${e.text}\n <svg class="navbar-caret" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">\n <path d="M6 9l6 6 6-6"/>\n </svg>\n </button>`,r+='<ul class="navbar-dropdown-menu">',e.items.forEach((e,o)=>{r+=`<li><a href="${e.url||"#"}" class="navbar-dropdown-item" data-index="${t}" data-subindex="${o}">${e.text}</a></li>`}),r+="</ul>",r+="</li>"):(r+='<li class="navbar-item">',r+=`<a href="${e.url||"#"}" class="navbar-link${e.active?" active":""}" data-index="${t}">${e.text}</a>`,r+="</li>")}),r+="</ul>",s&&s.length>0&&(r+='<div class="navbar-actions">',s.forEach((e,t)=>{const o=e.variant||"primary";r+=`<a href="${e.url||"#"}" class="navbar-action dm-btn dm-btn-${o}" data-action="${t}">${e.text}</a>`}),r+="</div>"),r+="</div>",r+="</div>",this.element.innerHTML=r,this._toggle=this.element.querySelector(".navbar-toggle"),this._collapse=this.element.querySelector(".navbar-collapse")}_bindEvents(){this._toggle&&this._addEventListener(this._toggle,"click",()=>{this.toggle()}),this._addEventListener(this.element,"click",e=>{const t=e.target.closest(".navbar-link:not(.navbar-dropdown-toggle)");if(t){const o=parseInt(t.dataset.index,10);this.options.onItemClick&&(e.preventDefault(),this.options.onItemClick(this.options.items[o],o,e)),window.innerWidth<this.options.collapseAt&&this.collapse()}const o=e.target.closest(".navbar-dropdown-item");if(o){const t=parseInt(o.dataset.index,10),n=parseInt(o.dataset.subindex,10);if(this.options.onItemClick){e.preventDefault();const o=this.options.items[t];this.options.onItemClick(o.items[n],n,e,o)}}}),this._addEventListener(this.element,"click",e=>{const t=e.target.closest(".navbar-dropdown-toggle");if(t){t.closest(".navbar-dropdown").classList.toggle("open")}}),this._addEventListener(document,"click",e=>{e.target.closest(".navbar-dropdown")||this.element.querySelectorAll(".navbar-dropdown.open").forEach(e=>{e.classList.remove("open")})}),this._addEventListener(window,"resize",()=>{window.innerWidth>=this.options.collapseAt&&(this._collapse?.classList.remove("show"),this._isCollapsed=!0,this._toggle&&this._toggle.setAttribute("aria-expanded","false"))})}setActive(e){return this.options.items.forEach((t,o)=>{t.active=o===e}),this._render(),this}setItems(e){return this.options.items=e,this._render(),this}expand(){return this._collapse&&(this._collapse.classList.add("show"),this._isCollapsed=!1,this._toggle&&this._toggle.setAttribute("aria-expanded","true")),this}collapse(){return this._collapse&&(this._collapse.classList.remove("show"),this._isCollapsed=!0,this._toggle&&this._toggle.setAttribute("aria-expanded","false")),this}toggle(){return this._isCollapsed?this.expand():this.collapse()}isCollapsed(){return this._isCollapsed}}class j extends s{static defaults={data:[],dataSource:null,minChars:1,maxResults:10,debounce:300,filterFn:null,renderItem:null,highlightMatches:!0,position:"auto",placeholder:"",emptyMessage:"No results found",loadingMessage:"Loading...",caseSensitive:!1,selectOnEnter:!0,clearOnSelect:!1,onSelect:null,onChange:null,onOpen:null,onClose:null,onFilter:null};constructor(e,t={}){super(e,t),this.model=t.model||null,this.modelKey=t.modelKey||null,this._isOpen=!1,this._activeIndex=-1,this._filteredData=[],this._loading=!1,this._debounceTimer=null,this._dropdown=null,this._list=null,this._loadingEl=null,this._emptyEl=null,this._init(),this.model&&"function"==typeof this.model.onChange&&(this._modelUnsubscribe=this.model.onChange((e,t)=>{e===this.modelKey&&t!==this.getValue()&&this.setValue(t)}))}_init(){this.element&&("INPUT"===this.element.tagName?(this.options.placeholder&&this.element.setAttribute("placeholder",this.options.placeholder),this._createDropdown(),this._bindEvents(),this.element.setAttribute("role","combobox"),this.element.setAttribute("aria-autocomplete","list"),this.element.setAttribute("aria-expanded","false"),this.element.setAttribute("aria-controls",this._dropdown.id)):console.error("Autocomplete requires an input element"))}_createDropdown(){let e=this.element.parentElement;e&&e.classList.contains("dm-autocomplete")||(e=document.createElement("div"),e.className="dm-autocomplete",this.element.parentNode.insertBefore(e,this.element),e.appendChild(this.element)),this._dropdown=document.createElement("div"),this._dropdown.className="dm-autocomplete-dropdown",this._dropdown.id=`autocomplete-${Math.random().toString(36).substr(2,9)}`,this._dropdown.setAttribute("role","listbox"),this._dropdown.style.display="none",this._loadingEl=document.createElement("div"),this._loadingEl.className="dm-autocomplete-loading",this._loadingEl.textContent=this.options.loadingMessage,this._loadingEl.style.display="none",this._dropdown.appendChild(this._loadingEl),this._emptyEl=document.createElement("div"),this._emptyEl.className="dm-autocomplete-empty",this._emptyEl.textContent=this.options.emptyMessage,this._emptyEl.style.display="none",this._dropdown.appendChild(this._emptyEl),this._list=document.createElement("ul"),this._list.className="dm-autocomplete-list",this._dropdown.appendChild(this._list),e.appendChild(this._dropdown)}_bindEvents(){const e=this._handleInput.bind(this),t=this._handleKeydown.bind(this);this._addEventListener(this.element,"input",e),this._addEventListener(this.element,"keydown",t),this._addEventListener(this.element,"focus",()=>{this.element.value.length>=this.options.minChars&&this._filterData(this.element.value)}),this._addEventListener(this.element,"blur",e=>{setTimeout(()=>{this._dropdown.contains(document.activeElement)||this.close()},200)})}_handleInput(e){const t=e.target.value;this._debounceTimer&&clearTimeout(this._debounceTimer),this.model&&this.modelKey&&this.model.set(this.modelKey,t),this.options.onChange&&this.options.onChange(t,e),t.length<this.options.minChars?this.close():this._debounceTimer=setTimeout(()=>{this._filterData(t)},this.options.debounce)}_handleKeydown(e){if(!this._isOpen)return void("ArrowDown"===e.key&&this.element.value.length>=this.options.minChars&&(e.preventDefault(),this._filterData(this.element.value)));const t=this._list.querySelectorAll(".dm-autocomplete-item");switch(e.key){case"ArrowDown":e.preventDefault(),this._activeIndex=Math.min(this._activeIndex+1,t.length-1),this._updateActive();break;case"ArrowUp":e.preventDefault(),this._activeIndex=Math.max(this._activeIndex-1,-1),this._updateActive();break;case"Enter":e.preventDefault(),this._activeIndex>=0&&this.options.selectOnEnter&&this._selectItem(this._activeIndex);break;case"Escape":e.preventDefault(),this.close();break;case"Tab":this._activeIndex>=0&&(e.preventDefault(),this._selectItem(this._activeIndex)),this.close()}}async _filterData(e){let t=[];if(this.options.dataSource){this._setLoading(!0);try{t=await this.options.dataSource(e)}catch(e){console.error("Autocomplete dataSource error:",e),t=[]}this._setLoading(!1)}else{const o=this.options.filterFn||this._defaultFilter.bind(this);t=this.options.data.filter(t=>o(t,e))}this.options.maxResults&&(t=t.slice(0,this.options.maxResults)),this.options.onFilter&&(t=this.options.onFilter(t,e)||t),this._filteredData=t,this._renderResults(e)}_defaultFilter(e,t){const o="string"==typeof e?e:e.label||e.value||String(e),n=this.options.caseSensitive?t:t.toLowerCase();return(this.options.caseSensitive?o:o.toLowerCase()).includes(n)}_renderResults(e){if(this._list.innerHTML="",this._activeIndex=-1,0===this._filteredData.length)return this._emptyEl.style.display="block",this._list.style.display="none",void this.open();this._emptyEl.style.display="none",this._list.style.display="block",this._filteredData.forEach((t,o)=>{const n=document.createElement("li");if(n.className="dm-autocomplete-item",n.setAttribute("role","option"),n.setAttribute("data-index",o),this.options.renderItem){const o=this.options.renderItem(t,e);n.innerHTML="string"==typeof o?o:"","string"!=typeof o&&n.appendChild(o)}else{const o="string"==typeof t?t:t.label||t.value||String(t);this.options.highlightMatches?n.innerHTML=this._highlightMatch(o,e):n.textContent=o}n.addEventListener("click",()=>{this._selectItem(o)}),n.addEventListener("mouseenter",()=>{this._activeIndex=o,this._updateActive()}),this._list.appendChild(n)}),this.open()}_highlightMatch(e,t){if(!t)return e;const o=new RegExp(`(${this._escapeRegex(t)})`,this.options.caseSensitive?"g":"gi");return e.replace(o,'<span class="dm-autocomplete-match">$1</span>')}_escapeRegex(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}_updateActive(){const e=this._list.querySelectorAll(".dm-autocomplete-item");if(e.forEach((e,t)=>{t===this._activeIndex?(e.classList.add("active"),e.setAttribute("aria-selected","true"),e.scrollIntoView({block:"nearest"})):(e.classList.remove("active"),e.setAttribute("aria-selected","false"))}),this._activeIndex>=0){const t=e[this._activeIndex];if(t){const e=t.id||`autocomplete-item-${this._activeIndex}`;t.id=e,this.element.setAttribute("aria-activedescendant",e)}}else this.element.removeAttribute("aria-activedescendant")}_selectItem(e){const t=this._filteredData[e];if(!t)return;const o="string"==typeof t?t:t.value||t.label||String(t);this.element.value=o,this.options.onSelect&&this.options.onSelect(t,{target:this.element}),this.options.clearOnSelect&&setTimeout(()=>{this.element.value=""},100),this.close(),this.element.focus()}_setLoading(e){this._loading=e,e?(this._loadingEl.style.display="block",this._list.style.display="none",this._emptyEl.style.display="none",this.open()):this._loadingEl.style.display="none"}_updatePosition(){if(!this._isOpen||!this._dropdown)return;const e=this.element.getBoundingClientRect(),t=this._dropdown.offsetHeight,o=window.innerHeight;let n=this.options.position;if("auto"===n){const i=o-e.bottom,s=e.top;n=i>=t||i>=s?"below":"above"}"above"===n?(this._dropdown.style.top="auto",this._dropdown.style.bottom="100%",this._dropdown.style.marginBottom="4px",this._dropdown.style.marginTop="0"):(this._dropdown.style.top="100%",this._dropdown.style.bottom="auto",this._dropdown.style.marginTop="4px",this._dropdown.style.marginBottom="0")}open(){return this._isOpen||(this._isOpen=!0,this._dropdown.style.display="block",this.element.setAttribute("aria-expanded","true"),this._updatePosition(),this.options.onOpen&&this.options.onOpen()),this}close(){return this._isOpen?(this._isOpen=!1,this._dropdown.style.display="none",this.element.setAttribute("aria-expanded","false"),this._activeIndex=-1,this.options.onClose&&this.options.onClose(),this):this}toggle(){return this._isOpen?this.close():this.open()}isOpen(){return this._isOpen}setValue(e){return this.element.value=e,this}getValue(){return this.element.value}setData(e){return this.options.data=e,this}refresh(){const e=this.element.value;return e.length>=this.options.minChars&&this._filterData(e),this}focus(){return this.element.focus(),this}clearValue(){return this.element.value="",this.close(),this}destroy(){this.close(),this._dropdown&&this._dropdown.parentNode&&this._dropdown.parentNode.removeChild(this._dropdown),this._debounceTimer&&clearTimeout(this._debounceTimer),this._modelUnsubscribe&&this._modelUnsubscribe(),super.destroy()}}class B extends s{static defaults={data:[],value:[],placeholder:"Add items...",searchable:!0,creatable:!1,maxItems:null,duplicates:!1,clearable:!0,size:"medium",renderPill:null,renderOption:null,pillTemplate:"<span>{label}</span>",validatePill:null,maxItemsMessage:"Maximum {max} items allowed",duplicateMessage:"Item already exists",noResultsMessage:"No results found",onAdd:null,onRemove:null,onChange:null,onCreate:null,onMaxReached:null,onValidationError:null};constructor(e,t={}){super(e,t),this.model=t.model||null,this.modelKey=t.modelKey||null,this._pills=[],this._isOpen=!1,this._activeIndex=-1,this._container=null,this._input=null,this._clearBtn=null,this._dropdown=null,this._optionsList=null,this._filteredData=[],this._init(),this.model&&"function"==typeof this.model.onChange&&(this._modelUnsubscribe=this.model.onChange((e,t)=>{if(e===this.modelKey&&Array.isArray(t)){const e=this.getValue();JSON.stringify(e)!==JSON.stringify(t)&&this.setValue(t)}}))}_init(){this.element&&("INPUT"===this.element.tagName?(this.element.style.display="none",this._createStructure(),this.options.value&&this.options.value.length>0&&this.options.value.forEach(e=>{const t=this._findItemByValue(e);t?this._addPill(t.value,t.label):"string"==typeof e&&this._addPill(e,e)}),this._bindEvents(),this._input.setAttribute("role","combobox"),this._input.setAttribute("aria-autocomplete","list"),this._input.setAttribute("aria-expanded","false")):console.error("Pillbox requires an input element"))}_createStructure(){const e=document.createElement("div");if(e.className=`dm-pillbox dm-pillbox-${this.options.size}`,this._container=document.createElement("div"),this._container.className="dm-pillbox-container",this._input=document.createElement("input"),this._input.type="text",this._input.className="dm-pillbox-input",this._input.placeholder=this.options.placeholder,this._container.appendChild(this._input),e.appendChild(this._container),this.options.clearable&&(this._clearBtn=document.createElement("button"),this._clearBtn.type="button",this._clearBtn.className="dm-pillbox-clear",this._clearBtn.innerHTML="×",this._clearBtn.title="Clear all",this._clearBtn.style.display="none",e.appendChild(this._clearBtn)),this.options.searchable){this._dropdown=document.createElement("div"),this._dropdown.className="dm-pillbox-dropdown",this._dropdown.style.display="none",this._optionsList=document.createElement("ul"),this._optionsList.className="dm-pillbox-options",this._dropdown.appendChild(this._optionsList);const t=document.createElement("div");t.className="dm-pillbox-empty",t.textContent=this.options.noResultsMessage,t.style.display="none",this._dropdown.appendChild(t),e.appendChild(this._dropdown)}this.element.parentNode.insertBefore(e,this.element.nextSibling),this._wrapper=e}_bindEvents(){const e=this._handleInput.bind(this),t=this._handleKeydown.bind(this);this._addEventListener(this._input,"input",e),this._addEventListener(this._input,"keydown",t),this._addEventListener(this._input,"focus",()=>{this.options.searchable&&this._input.value&&this._filterOptions(this._input.value)}),this._addEventListener(this._input,"blur",()=>{setTimeout(()=>{this._dropdown?.contains(document.activeElement)||this.close()},200)}),this._clearBtn&&this._addEventListener(this._clearBtn,"click",()=>{this.clear(),this._input.focus()}),this._addEventListener(this._container,"click",e=>{e.target===this._container&&this._input.focus()})}_handleInput(e){const t=e.target.value;this.options.searchable&&t?this._filterOptions(t):this.close()}_handleKeydown(e){const t=this._input.value;if("Backspace"===e.key&&!t&&this._pills.length>0){e.preventDefault();const t=this._container.querySelectorAll(".dm-pill")[this._pills.length-1];return void this._removePill(t)}if("Enter"===e.key&&t)return e.preventDefault(),void(this._isOpen&&this._activeIndex>=0?this._selectOption(this._activeIndex):this.options.creatable&&this._createPill(t));if(this._isOpen){const t=this._optionsList.querySelectorAll(".dm-pillbox-option");switch(e.key){case"ArrowDown":e.preventDefault(),this._activeIndex=Math.min(this._activeIndex+1,t.length-1),this._updateActive();break;case"ArrowUp":e.preventDefault(),this._activeIndex=Math.max(this._activeIndex-1,-1),this._updateActive();break;case"Escape":e.preventDefault(),this.close();break;case"Tab":this.close()}}}_filterOptions(e){const t=e.toLowerCase(),o=this._pills.map(e=>e.value);this._filteredData=this.options.data.filter(e=>{const n="string"==typeof e?e:e.value,i="string"==typeof e?e:e.label||e.value;return!o.includes(n)&&(!e.disabled&&i.toLowerCase().includes(t))}),this._renderOptions()}_renderOptions(){this._optionsList.innerHTML="",this._activeIndex=-1;const e=this._dropdown.querySelector(".dm-pillbox-empty");if(0===this._filteredData.length)return e.style.display="block",this._optionsList.style.display="none",void this.open();e.style.display="none",this._optionsList.style.display="block",this._filteredData.forEach((e,t)=>{const o=document.createElement("li");if(o.className="dm-pillbox-option",o.setAttribute("data-index",t),this.options.renderOption){const t=this.options.renderOption(e);o.innerHTML="string"==typeof t?t:"","string"!=typeof t&&o.appendChild(t)}else{const t="string"==typeof e?e:e.label||e.value;o.textContent=t}o.addEventListener("click",()=>{this._selectOption(t)}),o.addEventListener("mouseenter",()=>{this._activeIndex=t,this._updateActive()}),this._optionsList.appendChild(o)}),this.open()}_updateActive(){this._optionsList.querySelectorAll(".dm-pillbox-option").forEach((e,t)=>{t===this._activeIndex?(e.classList.add("active"),e.scrollIntoView({block:"nearest"})):e.classList.remove("active")})}_selectOption(e){const t=this._filteredData[e];if(!t)return;const o="string"==typeof t?t:t.value,n="string"==typeof t?t:t.label||t.value;this._addPill(o,n),this._input.value="",this.close(),this._input.focus()}_createPill(e){if(!e.trim())return;const t=this._validate(e);t?this.options.onValidationError&&this.options.onValidationError(t,e):(this._addPill(e,e),this._input.value="",this.options.onCreate&&this.options.onCreate(e))}_addPill(e,t){const o=this._validate(e);if(o)return void(this.options.onValidationError&&this.options.onValidationError(o,e));const n=document.createElement("div");if(n.className="dm-pill",n.setAttribute("data-value",e),this.options.renderPill){const o=this.options.renderPill({value:e,label:t});n.innerHTML="string"==typeof o?o:"","string"!=typeof o&&n.appendChild(o)}else{const e=this.options.pillTemplate.replace("{label}",t);n.innerHTML=e}const i=document.createElement("button");i.type="button",i.className="dm-pill-remove",i.innerHTML="×",i.title=`Remove ${t}`,i.addEventListener("click",e=>{e.stopPropagation(),this._removePill(n)}),n.appendChild(i),this._container.insertBefore(n,this._input),this._pills.push({value:e,label:t,element:n}),this._updateHiddenInput(),this._clearBtn&&(this._clearBtn.style.display="block"),this.options.onAdd&&this.options.onAdd(e,n),this._triggerChange()}_removePill(e){const t=e.getAttribute("data-value"),o=this._pills.findIndex(e=>e.value===t);-1!==o&&(this._pills[o],e.remove(),this._pills.splice(o,1),this._updateHiddenInput(),0===this._pills.length&&this._clearBtn&&(this._clearBtn.style.display="none"),this.options.onRemove&&this.options.onRemove(t,e),this._triggerChange())}_validate(e){if(this.options.maxItems&&this._pills.length>=this.options.maxItems)return this.options.onMaxReached&&this.options.onMaxReached(),this.options.maxItemsMessage.replace("{max}",this.options.maxItems);if(!this.options.duplicates&&this._pills.some(t=>t.value===e))return this.options.duplicateMessage;if(this.options.validatePill){const t=this.options.validatePill(e);if(!0!==t&&void 0!==t)return"string"==typeof t?t:"Invalid value"}return null}_findItemByValue(e){return this.options.data.find(t=>("string"==typeof t?t:t.value)===e)}_updateHiddenInput(){const e=this._pills.map(e=>e.value);this.element.value=JSON.stringify(e)}_triggerChange(){const e=this.getValue();this.model&&this.modelKey&&this.model.set(this.modelKey,e),this.options.onChange&&this.options.onChange(e)}open(){return!this._dropdown||this._isOpen||(this._isOpen=!0,this._dropdown.style.display="block",this._input.setAttribute("aria-expanded","true")),this}close(){return this._dropdown&&this._isOpen?(this._isOpen=!1,this._dropdown.style.display="none",this._input.setAttribute("aria-expanded","false"),this._activeIndex=-1,this):this}isOpen(){return this._isOpen}getValue(){return this._pills.map(e=>e.value)}setValue(e){return this.clear(),Array.isArray(e)&&e.forEach(e=>{const t=this._findItemByValue(e);if(t){const o="string"==typeof t?t:t.label||t.value;this._addPill(e,o)}else"string"==typeof e&&this._addPill(e,e)}),this}addPill(e,t){return t=t||e,this._addPill(e,t),this}removePill(e){const t=this._container.querySelector(`.dm-pill[data-value="${e}"]`);return t&&this._removePill(t),this}removePillAt(e){return e>=0&&e<this._pills.length&&this._removePill(this._pills[e].element),this}clear(){return[...this._pills].forEach(e=>{this._removePill(e.element)}),this}getCount(){return this._pills.length}setData(e){return this.options.data=e,this}focus(){return this._input.focus(),this}enable(){return this._input.disabled=!1,this._wrapper.classList.remove("disabled"),this}disable(){return this._input.disabled=!0,this._wrapper.classList.add("disabled"),this.close(),this}destroy(){this.close(),this._wrapper&&this._wrapper.parentNode&&this._wrapper.parentNode.removeChild(this._wrapper),this.element.style.display="",this._modelUnsubscribe&&this._modelUnsubscribe(),super.destroy()}}const E={_instances:new Map,card(e,t={}){const o=new a(e,t);return o.element&&this._instances.set(o.element,o),o},modal(e,t={}){if("object"==typeof e&&!e.nodeType&&"string"!=typeof e)return h.createModal(e);const o=new l(e,t);return o.element&&this._instances.set(o.element,o),o},tabs(e,t={}){const o=new c(e,t);return o.element&&this._instances.set(o.element,o),o},accordion(e,t={}){const o=new d(e,t);return o.element&&this._instances.set(o.element,o),o},tooltip(e,t={}){const o="string"==typeof e?document.querySelectorAll(e):[e],n=[];for(const e of o){const o=new u(e,t);this._instances.set(e,o),n.push(o)}return 1===n.length?n[0]:n},badge(e,t={}){const o="string"==typeof e?document.querySelectorAll(e):[e],n=[];for(const e of o){const o=new p(e,t);this._instances.set(e,o),n.push(o)}return 1===n.length?n[0]:n},dropdown(e,t={}){const o=new m(e,t);return o.element&&this._instances.set(o.element,o),o},carousel(e,t={}){const o=new _(e,t);return o.element&&this._instances.set(o.element,o),o},backToTop(e,t={}){const o=new y(e,t);return this._instances.set("backToTop",o),o},buttonGroup(e,t={}){const o="string"==typeof e?document.querySelectorAll(e):[e],n=[];for(const e of o){const o=new w(e,t);this._instances.set(e,o),n.push(o)}return 1===n.length?n[0]:n},loader(e,t={}){const o=new b(e,t);return o.element&&this._instances.set(o.element,o),o},showLoader:b.show.bind(b),hideLoader:b.hide.bind(b),fullscreenLoader:b.fullscreen.bind(b),breadcrumbs(e,t={}){const o=new x(e,t);return o.element&&this._instances.set(o.element,o),o},navbar(e,t={}){const o=new C(e,t);return o.element&&this._instances.set(o.element,o),o},notification:(e={})=>new v(e),notify:(e,t={})=>v.notify(e,t),timer(e,t={}){const o=new g(e,t);return o.element&&this._instances.set(o.element,o),o},alarm:(e={})=>new M(e),autocomplete(e,t={}){const o=new j(e,t);return o.element&&this._instances.set(o.element,o),o},pillbox(e,t={}){const o=new B(e,t);return o.element&&this._instances.set(o.element,o),o},treeView(e,t={}){const o=new r(e,t);return o.element&&this._instances.set(o.element,o),o},toast:Object.assign((e,t={})=>f.show(e,t),{show:f.show.bind(f),success:f.success.bind(f),error:f.error.bind(f),warning:f.warning.bind(f),info:f.info.bind(f),closeAll:f.closeAll.bind(f)}),dialog:L,alert:L.alert.bind(L),confirm:L.confirm.bind(L),prompt:L.prompt.bind(L),createModal:h.createModal.bind(h),showModal:h.showModal.bind(h),get(e){const t="string"==typeof e?document.querySelector(e):e;return this._instances.get(t)},destroy(e){const t="string"==typeof e?document.querySelector(e):e,o=this._instances.get(t);o&&(o.destroy(),this._instances.delete(t))},destroyAll(){for(const e of this._instances.values())e.destroy();this._instances.clear()},_registry:new Map,register(e,t){this._registry.set(e,t)},create(e,t,o={}){const n=this._registry.get(e);if(n)return new n(t,o);throw new Error(`Unknown component: ${e}`)}},z={_configs:new Map,_components:new Map,_eventHandlers:new Map,process(e){e&&"object"==typeof e&&Object.keys(e).forEach(t=>{const n=e[t];this._configs.set(t,i.cloneDeep(n));const s=o(t);if(n.component){const e=this.initComponent(t,n.component,n.options||{});e&&this._components.set(t,e)}n.initial&&this.applyProperties(s,n.initial),n.events&&this.bindEvents(t,n.events,!0)})},update(e,t){const n=this._configs.get(e);if(!n)return this.process({[e]:t}),this._configs.get(e);const s=i.merge({},n,t);this._configs.set(e,s);const r=o(e);if(t.options&&this._components.has(e)){const o=this._components.get(e);o&&"function"==typeof o.setOptions&&o.setOptions(t.options)}return t.initial&&this.applyProperties(r,t.initial),t.events&&this.updateEvents(e,t.events),s},config(e){if(!e){const e={};return this._configs.forEach((t,o)=>{e[o]=t}),e}return this._configs.get(e)||null},reset(e){if(!e){return void Array.from(this._configs.keys()).forEach(e=>this.reset(e))}const t=this._components.get(e);t&&"function"==typeof t.destroy&&t.destroy(),this._components.delete(e),this.unbindEvents(e),this._configs.delete(e)},initComponent(e,t,o){const n={card:E.card,modal:E.modal,tabs:E.tabs,accordion:E.accordion,tooltip:E.tooltip,carousel:E.carousel,dropdown:E.dropdown,badge:E.badge,backToTop:E.backToTop,buttonGroup:E.buttonGroup,loader:E.loader,breadcrumbs:E.breadcrumbs,navbar:E.navbar,notification:E.notification,timer:E.timer,alarm:E.alarm,autocomplete:E.autocomplete,pillbox:E.pillbox}[t];if(n)return n.call(E,e,o);console.warn(`Unknown component type: ${t}`)},applyProperties(e,t){Object.keys(t).forEach(o=>{"css"===o?e.css(t[o]):"text"===o?e.text(t[o]):"html"===o?e.html(t[o]):"addClass"===o?e.addClass(t[o]):"removeClass"===o?e.removeClass(t[o]):"toggleClass"===o?e.toggleClass(t[o]):"attr"===o&&Object.keys(t[o]).forEach(n=>{e.attr(n,t[o][n])})})},bindEvents(e,t,n=!1){const i=o(e);n&&!this._eventHandlers.has(e)&&this._eventHandlers.set(e,new Map),Object.keys(t).forEach(o=>{const s=t[o],r=e=>this.executeActions(e,s);i.on(o,r),n&&this._eventHandlers.get(e).set(o,r)})},unbindEvents(e){const t=this._eventHandlers.get(e);if(!t)return;const n=o(e);t.forEach((e,t)=>{n.off(t,e)}),this._eventHandlers.delete(e)},updateEvents(e,t){const n=this._eventHandlers.get(e),i=o(e);n&&Object.keys(t).forEach(e=>{n.has(e)&&(i.off(e,n.get(e)),n.delete(e))}),this.bindEvents(e,t,!0)},executeActions(e,t){if("function"==typeof t)return void t.call(e.target,e,o(e.target));const n=Array.isArray(t)?t:[t],i=o(e.target);n.forEach(t=>{if("function"==typeof t)return void t.call(e.target,e,i);const n=t.target?o(t.target):i;t.css&&n.css(t.css),t.text&&n.text(t.text),t.html&&n.html(t.html),t.addClass&&n.addClass(t.addClass),t.removeClass&&n.removeClass(t.removeClass),t.toggleClass&&n.toggleClass(t.toggleClass),t.log&&console.log(t.log)})}},W={_prefix:"domma:",_available:null,isAvailable(){if(null!==this._available)return this._available;try{const e=`${this._prefix}__test__`;localStorage.setItem(e,"test"),localStorage.removeItem(e),this._available=!0}catch(e){this._available=!1}return this._available},_prefixKey(e){return`${this._prefix}${e}`},_unprefixKey(e){return e.slice(this._prefix.length)},get(e,t=null){if(!this.isAvailable())return t;try{const o=this._prefixKey(e),n=localStorage.getItem(o);return null===n?t:JSON.parse(n)}catch(o){return console.warn(`Domma storage: Failed to parse key "${e}"`,o),t}},set(e,t){if(!this.isAvailable())return!1;try{const o=this._prefixKey(e),n=JSON.stringify(t);return localStorage.setItem(o,n),!0}catch(t){return console.warn(`Domma storage: Failed to set key "${e}"`,t),!1}},remove(e){if(!this.isAvailable())return!1;try{const t=this._prefixKey(e);return localStorage.removeItem(t),!0}catch(t){return console.warn(`Domma storage: Failed to remove key "${e}"`,t),!1}},has(e){if(!this.isAvailable())return!1;try{const t=this._prefixKey(e);return null!==localStorage.getItem(t)}catch(e){return!1}},clear(){if(!this.isAvailable())return 0;try{const e=this.keys();return e.forEach(e=>this.remove(e)),e.length}catch(e){return console.warn("Domma storage: Failed to clear storage",e),0}},keys(){if(!this.isAvailable())return[];try{const e=[];for(let t=0;t<localStorage.length;t++){const o=localStorage.key(t);o&&o.startsWith(this._prefix)&&e.push(this._unprefixKey(o))}return e}catch(e){return[]}},size(e){if(!this.isAvailable())return 0;try{const t=this._prefixKey(e),o=localStorage.getItem(t);return o?new Blob([o]).size:0}catch(e){return 0}},totalSize(){if(!this.isAvailable())return 0;try{let e=0;return this.keys().forEach(t=>{e+=this.size(t)}),e}catch(e){return 0}},getAll(){if(!this.isAvailable())return{};const e={};return this.keys().forEach(t=>{e[t]=this.get(t)}),e},setAll(e){if(!this.isAvailable()||!e)return!1;let t=!0;return Object.keys(e).forEach(o=>{this.set(o,e[o])||(t=!1)}),t}};class S{constructor(e,t={},o={}){this._schema=e,this._data={},this._initialData={},this._bindings=new Map,this._changeCallbacks=new Set,this._fieldCallbacks=new Map,this._persistKey=o.persist||null,this._autoSave=!1!==o.autoSave;for(const o in e){const n=e[o],i=void 0!==n.default?n.default:null;this._data[o]=void 0!==t[o]?t[o]:i,this._initialData[o]=this._data[o]}this._persistKey&&this._loadFromStorage()}get(e){return e?this._data[e]:{...this._data}}set(e,t){if("object"==typeof e)for(const t in e)this._setField(t,e[t]);else this._setField(e,t);return this}_setField(e,t){const o=this._data[e];if(this._schema[e]){const o=this._validateField(e,t);if(!o.valid)throw new Error(`Validation failed for ${e}: ${o.error}`)}this._data[e]=t,i.isEqual(o,t)||(this._notifyChange(e,t,o),this._updateBindings(e,t),this._persistKey&&this._autoSave&&this._saveToStorage())}_validateField(e,t){const o=this._schema[e];if(o.required&&(null==t||""===t))return{valid:!1,error:"Required field is empty"};if(null!=t&&o.type){const e=H.types[o.type];if(e&&!e(t))return{valid:!1,error:`Expected type ${o.type}`}}if(void 0!==o.min&&"number"==typeof t&&t<o.min)return{valid:!1,error:`Value must be at least ${o.min}`};if(void 0!==o.max&&"number"==typeof t&&t>o.max)return{valid:!1,error:`Value must be at most ${o.max}`};if(void 0!==o.minLength&&"string"==typeof t&&t.length<o.minLength)return{valid:!1,error:`Length must be at least ${o.minLength}`};if(void 0!==o.maxLength&&"string"==typeof t&&t.length>o.maxLength)return{valid:!1,error:`Length must be at most ${o.maxLength}`};if(o.pattern&&"string"==typeof t&&!o.pattern.test(t))return{valid:!1,error:"Value does not match pattern"};if(o.validate&&"function"==typeof o.validate){const e=o.validate(t);if(!1===e)return{valid:!1,error:"Custom validation failed"};if("string"==typeof e)return{valid:!1,error:e}}return{valid:!0}}validate(){const e=[];for(const t in this._schema){const o=this._validateField(t,this._data[t]);o.valid||e.push({field:t,error:o.error})}return{valid:0===e.length,errors:e}}toJSON(){return{...this._data}}onChange(e){return this._changeCallbacks.add(e),()=>this._changeCallbacks.delete(e)}onFieldChange(e,t){return this._fieldCallbacks.has(e)||this._fieldCallbacks.set(e,new Set),this._fieldCallbacks.get(e).add(t),()=>this._fieldCallbacks.get(e).delete(t)}_notifyChange(e,t,o){for(const n of this._changeCallbacks)n({field:e,newValue:t,oldValue:o,model:this});if(this._fieldCallbacks.has(e))for(const n of this._fieldCallbacks.get(e))n(t,o,this)}_updateBindings(e,t){if(this._bindings.has(e))for(const o of this._bindings.get(e))o.update(t)}_addBinding(e,t){this._bindings.has(e)||this._bindings.set(e,new Set),this._bindings.get(e).add(t)}_removeBinding(e,t){this._bindings.has(e)&&this._bindings.get(e).delete(t)}reset(e=!1){for(const e in this._initialData)this.set(e,i.cloneDeep(this._initialData[e]));return e&&this._persistKey&&this.clearStorage(),this}destroy(e=!1){e&&this._persistKey&&this.clearStorage(),this._changeCallbacks.clear(),this._fieldCallbacks.clear(),this._bindings.clear()}save(){return this._saveToStorage()}load(){return this._loadFromStorage()}clearStorage(){return!!this._persistKey&&W.remove(`model:${this._persistKey}`)}getPersistKey(){return this._persistKey}isPersisted(){return null!==this._persistKey}_saveToStorage(){if(!this._persistKey)return!1;try{return W.set(`model:${this._persistKey}`,this._data)}catch(e){return console.warn("Domma Model: Failed to save to storage",e),!1}}_loadFromStorage(){if(!this._persistKey)return!1;try{const e=W.get(`model:${this._persistKey}`);if(e&&"object"==typeof e){for(const t in e)void 0!==this._schema[t]&&(this._data[t]=e[t]);return!0}return!1}catch(e){return console.warn("Domma Model: Failed to load from storage",e),!1}}}class A{constructor(e,t,o,n={}){this.model=e,this.field=t,this.element=o,this.options=n,this.format=n.format||(e=>e),this.parse=n.parse||(e=>e),this.twoWay=n.twoWay||!1,this._eventHandler=null,this.update(e.get(t)),this.twoWay&&this._setupTwoWay()}update(e){const t=this.format(e),o=this.element;"INPUT"===o.tagName||"TEXTAREA"===o.tagName?"checkbox"===o.type?o.checked=Boolean(t):"radio"===o.type?o.checked=o.value===String(t):o.value=null!=t?t:"":"SELECT"===o.tagName?o.value=t:o.textContent=null!=t?t:""}_setupTwoWay(){const e=this.element,t=this._getEventType();this._eventHandler=t=>{let o;o="checkbox"===e.type?e.checked:"number"===e.type||"range"===e.type?""===e.value?null:Number(e.value):e.value;try{this.model.set(this.field,this.parse(o))}catch(e){console.warn("Binding validation error:",e.message)}},e.addEventListener(t,this._eventHandler)}_getEventType(){const e=this.element;return"SELECT"===e.tagName||"checkbox"===e.type||"radio"===e.type?"change":"input"}destroy(){if(this._eventHandler){const e=this._getEventType();this.element.removeEventListener(e,this._eventHandler)}this.model._removeBinding(this.field,this)}}const H={_events:new Map,subscribe(e,t){return this._events.has(e)||this._events.set(e,new Set),this._events.get(e).add(t),()=>this.unsubscribe(e,t)},on(e,t){return this.subscribe(e,t)},unsubscribe(e,t){this._events.has(e)&&this._events.get(e).delete(t)},off(e,t){this.unsubscribe(e,t)},publish(e,t){if(this._events.has(e))for(const o of this._events.get(e))o(t)},emit(e,t){this.publish(e,t)},once(e,t){const o=n=>{this.unsubscribe(e,o),t(n)};return this.subscribe(e,o)},clear(e){e?this._events.delete(e):this._events.clear()},create:(e,t={},o={})=>new S(e,t,o),types:{string:e=>"string"==typeof e,number:e=>"number"==typeof e&&!Number.isNaN(e),boolean:e=>"boolean"==typeof e,array:e=>Array.isArray(e),object:e=>null!==e&&"object"==typeof e&&!Array.isArray(e),date:e=>e instanceof Date&&!isNaN(e.getTime()),any:()=>!0},bind(e,t,o,n={}){const i="string"==typeof o?document.querySelectorAll(o):[o],s=[];for(const o of i){const i=new A(e,t,o,n);e._addBinding(t,i),s.push(i)}return()=>{for(const e of s)e.destroy()}},_stores:new Map,store(e,t={}){if(!this._stores.has(e)){const o={state:{...t},listeners:new Set,getState(){return{...this.state}},setState(e){const t={...this.state};this.state={...this.state,...e};for(const e of this.listeners)e(this.state,t)},subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)},reset(e){this.state=e?{...e}:{...t};for(const e of this.listeners)e(this.state,{})}};this._stores.set(e,o)}return this._stores.get(e)},getStore(e){return this._stores.get(e)},removeStore(e){this._stores.delete(e)}},T=1e3,V=6e4,N=36e5,D=864e5,O=6048e5,I=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],$=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],P=["January","February","March","April","May","June","July","August","September","October","November","December"],R=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];class q{constructor(e){e instanceof q?this._date=new Date(e._date):e instanceof Date?this._date=new Date(e):this._date="string"==typeof e||"number"==typeof e?new Date(e):null==e?new Date:new Date(e)}add(e,t){const o=this._normalizeUnit(t),n=this._date;return"years"===o?n.setFullYear(n.getFullYear()+e):"months"===o?n.setMonth(n.getMonth()+e):"weeks"===o?n.setDate(n.getDate()+7*e):"days"===o?n.setDate(n.getDate()+e):"hours"===o?n.setHours(n.getHours()+e):"minutes"===o?n.setMinutes(n.getMinutes()+e):"seconds"===o?n.setSeconds(n.getSeconds()+e):"milliseconds"===o&&n.setMilliseconds(n.getMilliseconds()+e),this}subtract(e,t){return this.add(-e,t)}startOf(e){const t=this._normalizeUnit(e),o=this._date;return"years"===t||"year"===t?(o.setMonth(0,1),o.setHours(0,0,0,0)):"months"===t||"month"===t?(o.setDate(1),o.setHours(0,0,0,0)):"weeks"===t||"week"===t?(o.setDate(o.getDate()-o.getDay()),o.setHours(0,0,0,0)):"days"===t||"day"===t?o.setHours(0,0,0,0):"hours"===t||"hour"===t?o.setMinutes(0,0,0):"minutes"===t||"minute"===t?o.setSeconds(0,0):"seconds"!==t&&"second"!==t||o.setMilliseconds(0),this}endOf(e){const t=this._normalizeUnit(e),o=this._date;return"years"===t||"year"===t?(o.setMonth(11,31),o.setHours(23,59,59,999)):"months"===t||"month"===t?(o.setMonth(o.getMonth()+1,0),o.setHours(23,59,59,999)):"weeks"===t||"week"===t?(o.setDate(o.getDate()+(6-o.getDay())),o.setHours(23,59,59,999)):"days"===t||"day"===t?o.setHours(23,59,59,999):"hours"===t||"hour"===t?o.setMinutes(59,59,999):"minutes"===t||"minute"===t?o.setSeconds(59,999):"seconds"!==t&&"second"!==t||o.setMilliseconds(999),this}set(e,t){const o=this._normalizeUnit(e),n=this._date;return"years"===o||"year"===o?n.setFullYear(t):"months"===o||"month"===o?n.setMonth(t):"days"===o||"day"===o||"date"===o?n.setDate(t):"hours"===o||"hour"===o?n.setHours(t):"minutes"===o||"minute"===o?n.setMinutes(t):"seconds"===o||"second"===o?n.setSeconds(t):"milliseconds"!==o&&"millisecond"!==o||n.setMilliseconds(t),this}get(e){if(!e)return this._date;const t=this._normalizeUnit(e),o=this._date;return"years"===t||"year"===t?o.getFullYear():"months"===t||"month"===t?o.getMonth():"days"===t||"day"===t?o.getDay():"date"===t?o.getDate():"hours"===t||"hour"===t?o.getHours():"minutes"===t||"minute"===t?o.getMinutes():"seconds"===t||"second"===t?o.getSeconds():"milliseconds"===t||"millisecond"===t?o.getMilliseconds():this._date}year(){return this._date.getFullYear()}month(){return this._date.getMonth()}date(){return this._date.getDate()}day(){return this._date.getDay()}hour(){return this._date.getHours()}minute(){return this._date.getMinutes()}second(){return this._date.getSeconds()}millisecond(){return this._date.getMilliseconds()}dayOfYear(){const e=new Date(this._date.getFullYear(),0,0),t=this._date-e;return Math.floor(t/864e5)}week(){const e=new Date(this._date.getFullYear(),0,1),t=this._date-e;return Math.ceil(t/6048e5+e.getDay()/7)}quarter(){return Math.floor(this._date.getMonth()/3)+1}unix(){return Math.floor(this._date.getTime()/1e3)}valueOf(){return this._date.getTime()}format(e="YYYY-MM-DD HH:mm:ss"){const t=this._date,o=t.getFullYear(),n=t.getMonth(),i=t.getDate(),s=t.getDay(),r=t.getHours(),a=t.getMinutes(),l=t.getSeconds(),h=t.getMilliseconds(),c=r%12||12,d=(e,t=2)=>String(e).padStart(t,"0"),u={YYYY:o,YY:String(o).slice(-2),MMMM:P[n],MMM:R[n],MM:d(n+1),M:n+1,dddd:I[s],ddd:$[s],DD:d(i),D:i,HH:d(r),H:r,hh:d(c),h:c,mm:d(a),m:a,ss:d(l),s:l,SSS:d(h,3),A:r<12?"AM":"PM",a:r<12?"am":"pm"},p=Object.keys(u).sort((e,t)=>t.length-e.length),m=new RegExp(p.join("|"),"g");return e.replace(m,e=>u[e])}toISOString(){return this._date.toISOString()}toDate(){return new Date(this._date)}toString(){return this._date.toString()}fromNow(e){const t=e?new q(e)._date:new Date,o=this._date.getTime()-t.getTime(),n=Math.abs(o),i=o<0;let s,r;return n<V?"just now":(n<N?(s=Math.floor(n/V),r=1===s?"minute":"minutes"):n<D?(s=Math.floor(n/N),r=1===s?"hour":"hours"):n<O?(s=Math.floor(n/D),r=1===s?"day":"days"):n<30*D?(s=Math.floor(n/O),r=1===s?"week":"weeks"):n<365*D?(s=Math.floor(n/(30*D)),r=1===s?"month":"months"):(s=Math.floor(n/(365*D)),r=1===s?"year":"years"),i?`${s} ${r} ago`:`in ${s} ${r}`)}to(e){const t=new q(e)._date.getTime()-this._date.getTime(),o=Math.abs(t),n=t>0;let i,s;return o<V?"just now":(o<N?(i=Math.floor(o/V),s=1===i?"minute":"minutes"):o<D?(i=Math.floor(o/N),s=1===i?"hour":"hours"):o<O?(i=Math.floor(o/D),s=1===i?"day":"days"):o<30*D?(i=Math.floor(o/O),s=1===i?"week":"weeks"):o<365*D?(i=Math.floor(o/(30*D)),s=1===i?"month":"months"):(i=Math.floor(o/(365*D)),s=1===i?"year":"years"),n?`in ${i} ${s}`:`${i} ${s} ago`)}isBefore(e,t){const o=new q(e);return t?this.clone().endOf(t).valueOf()<o.clone().startOf(t).valueOf():this._date.getTime()<o._date.getTime()}isAfter(e,t){const o=new q(e);return t?this.clone().startOf(t).valueOf()>o.clone().endOf(t).valueOf():this._date.getTime()>o._date.getTime()}isSame(e,t){const o=new q(e);if(!t)return this._date.getTime()===o._date.getTime();const n=this.clone().startOf(t).valueOf(),i=this.clone().endOf(t).valueOf(),s=o.valueOf();return s>=n&&s<=i}isBetween(e,t,o,n="()"){const i=new q(e),s=new q(t);let r,a,l;o?(r=i.clone().startOf(o).valueOf(),a=s.clone().endOf(o).valueOf(),l=this.clone().startOf(o).valueOf()):(r=i.valueOf(),a=s.valueOf(),l=this.valueOf());const h="["===n[0],c="]"===n[1];return(h?l>=r:l>r)&&(c?l<=a:l<a)}diff(e,t="milliseconds",o=!1){const n=new q(e),i=this._date.getTime()-n._date.getTime(),s=this._normalizeUnit(t);let r;return r="milliseconds"===s?i:"seconds"===s?i/T:"minutes"===s?i/V:"hours"===s?i/N:"days"===s?i/D:"weeks"===s?i/O:"months"===s?this._monthDiff(n):"years"===s?this._monthDiff(n)/12:i,o?r:Math.floor(r)}_monthDiff(e){const t=this._date,o=e._date;return 12*(t.getFullYear()-o.getFullYear())+(t.getMonth()-o.getMonth())}isValid(){return!isNaN(this._date.getTime())}isLeapYear(){const e=this._date.getFullYear();return e%4==0&&e%100!=0||e%400==0}daysInMonth(){return new Date(this._date.getFullYear(),this._date.getMonth()+1,0).getDate()}clone(){return new q(this._date)}_normalizeUnit(e){if(!e)return e;const t=String(e).toLowerCase().trim();return"year"===t?"years":"month"===t?"months":"week"===t?"weeks":"day"===t?"days":"hour"===t?"hours":"minute"===t?"minutes":"second"===t?"seconds":"millisecond"===t?"milliseconds":t}}const F=function(e){return new q(e)};Object.assign(F,{now:()=>Date.now(),parse(e,t){if(!t)return new q(e);const o={YYYY:{regex:"(\\d{4})",setter:"year"},YY:{regex:"(\\d{2})",setter:"year",transform:e=>2e3+parseInt(e)},MM:{regex:"(\\d{2})",setter:"month",transform:e=>parseInt(e)-1},M:{regex:"(\\d{1,2})",setter:"month",transform:e=>parseInt(e)-1},DD:{regex:"(\\d{2})",setter:"date"},D:{regex:"(\\d{1,2})",setter:"date"},HH:{regex:"(\\d{2})",setter:"hour"},H:{regex:"(\\d{1,2})",setter:"hour"},mm:{regex:"(\\d{2})",setter:"minute"},m:{regex:"(\\d{1,2})",setter:"minute"},ss:{regex:"(\\d{2})",setter:"second"},s:{regex:"(\\d{1,2})",setter:"second"}};let n=t;const i=[],s=Object.keys(o).sort((e,t)=>t.length-e.length);for(const e of s)if(t.includes(e)){-1!==n.indexOf(e)&&(n=n.replace(e,o[e].regex),i.push({token:e,...o[e]}))}n=n.replace(/[-\/\\^$*+?.()|[\]{}]/g,e=>"("===e||")"===e?e:"\\"+e);try{const t=new RegExp("^"+n+"$"),o=e.match(t);if(!o)return new q(NaN);const s=new q;s.set("hour",0).set("minute",0).set("second",0).set("millisecond",0);for(let e=0;e<i.length;e++){let t=parseInt(o[e+1]);i[e].transform&&(t=i[e].transform(o[e+1])),s.set(i[e].setter,t)}return s}catch(e){return new q(NaN)}},isValid:e=>new q(e).isValid(),min(...e){const t=e.flat().map(e=>new q(e));let o=t[0];for(let e=1;e<t.length;e++)t[e].valueOf()<o.valueOf()&&(o=t[e]);return o},max(...e){const t=e.flat().map(e=>new q(e));let o=t[0];for(let e=1;e<t.length;e++)t[e].valueOf()>o.valueOf()&&(o=t[e]);return o},tokens:{YYYY:"Full year (2025)",YY:"Short year (25)",MM:"Month 01-12",M:"Month 1-12",DD:"Day 01-31",D:"Day 1-31",HH:"Hour 00-23",H:"Hour 0-23",hh:"Hour 01-12",h:"Hour 1-12",mm:"Minute 00-59",m:"Minute 0-59",ss:"Second 00-59",s:"Second 0-59",SSS:"Milliseconds",A:"AM/PM",a:"am/pm",ddd:"Day name short (Mon)",dddd:"Day name full (Monday)",MMM:"Month name short (Jan)",MMMM:"Month name full (January)"}});const K={"arrow-up":{viewBox:"0 0 24 24",path:"M12 19V5M5 12l7-7 7 7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"arrow-down":{viewBox:"0 0 24 24",path:"M12 5v14M19 12l-7 7-7-7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"arrow-left":{viewBox:"0 0 24 24",path:"M19 12H5M12 19l-7-7 7-7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"arrow-right":{viewBox:"0 0 24 24",path:"M5 12h14M12 5l7 7-7 7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"arrow-up-left":{viewBox:"0 0 24 24",path:"M17 17L7 7M7 17V7h10",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"arrow-up-right":{viewBox:"0 0 24 24",path:"M7 17L17 7M7 7h10v10",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"arrow-down-left":{viewBox:"0 0 24 24",path:"M17 7L7 17M17 17H7V7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"arrow-down-right":{viewBox:"0 0 24 24",path:"M7 7l10 10M17 7v10H7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},menu:{viewBox:"0 0 24 24",paths:["M3 6h18","M3 12h18","M3 18h18"],stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round"},"menu-alt":{viewBox:"0 0 24 24",paths:["M3 6h18","M3 12h12","M3 18h18"],stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round"},"dots-horizontal":{viewBox:"0 0 24 24",paths:["M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0","M19 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0","M5 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0"],fill:"currentColor"},"dots-vertical":{viewBox:"0 0 24 24",paths:["M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0","M12 19m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0","M12 5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0"],fill:"currentColor"},grid:{viewBox:"0 0 24 24",path:"M3 3h7v7H3zM14 3h7v7h-7zM14 14h7v7h-7zM3 14h7v7H3z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},list:{viewBox:"0 0 24 24",paths:["M8 6h13","M8 12h13","M8 18h13","M3 6h.01","M3 12h.01","M3 18h.01"],stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},columns:{viewBox:"0 0 24 24",path:"M12 3v18M3 3h18v18H3V3z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},layout:{viewBox:"0 0 24 24",path:"M4 3h16a1 1 0 011 1v16a1 1 0 01-1 1H4a1 1 0 01-1-1V4a1 1 0 011-1zM9 21V9m12-6H3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},close:{viewBox:"0 0 24 24",path:"M18 6L6 18M6 6l12 12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},plus:{viewBox:"0 0 24 24",path:"M12 5v14M5 12h14",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},minus:{viewBox:"0 0 24 24",path:"M5 12h14",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},search:{viewBox:"0 0 24 24",path:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},refresh:{viewBox:"0 0 24 24",path:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},edit:{viewBox:"0 0 24 24",path:"M11 4H4a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2v-7M18.5 2.5a2.121 2.121 0 013 3L12 15l-4 1 1-4 9.5-9.5z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},trash:{viewBox:"0 0 24 24",path:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filter:{viewBox:"0 0 24 24",path:"M3 4a1 1 0 011-1h16a1 1 0 011 1v2.586a1 1 0 01-.293.707l-6.414 6.414a1 1 0 00-.293.707V17l-4 4v-6.586a1 1 0 00-.293-.707L3.293 7.293A1 1 0 013 6.586V4z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},sort:{viewBox:"0 0 24 24",paths:["M3 6h7","M3 12h5","M3 18h3","M16 6l4 4-4 4","M20 10H10"],stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},home:{viewBox:"0 0 24 24",path:"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},user:{viewBox:"0 0 24 24",path:"M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},users:{viewBox:"0 0 24 24",path:"M17 21v-2a4 4 0 00-4-4H5a4 4 0 00-4 4v2M9 11a4 4 0 100-8 4 4 0 000 8zM23 21v-2a4 4 0 00-3-3.87M16 3.13a4 4 0 010 7.75",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},settings:{viewBox:"0 0 24 24",path:"M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065zM15 12a3 3 0 11-6 0 3 3 0 016 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},cog:{viewBox:"0 0 24 24",path:"M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},tool:{viewBox:"0 0 24 24",path:"M14.7 6.3a1 1 0 000 1.4l1.6 1.6a1 1 0 001.4 0l3.77-3.77a6 6 0 01-7.94 7.94l-6.91 6.91a2.12 2.12 0 01-3-3l6.91-6.91a6 6 0 017.94-7.94l-3.76 3.76z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},eye:{viewBox:"0 0 24 24",path:"M15 12a3 3 0 11-6 0 3 3 0 016 0z M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"eye-off":{viewBox:"0 0 24 24",path:"M13.875 18.825A10.05 10.05 0 0112 19c-4.478 0-8.268-2.943-9.543-7a9.97 9.97 0 011.563-3.029m5.858.908a3 3 0 114.243 4.243M9.878 9.878l4.242 4.242M9.88 9.88l-3.29-3.29m7.532 7.532l3.29 3.29M3 3l3.59 3.59m0 0A9.953 9.953 0 0112 5c4.478 0 8.268 2.943 9.543 7a10.025 10.025 0 01-4.132 5.411m0 0L21 21",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},lock:{viewBox:"0 0 24 24",path:"M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},unlock:{viewBox:"0 0 24 24",path:"M8 11V7a4 4 0 118 0m-4 8v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},clock:{viewBox:"0 0 24 24",path:"M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},calendar:{viewBox:"0 0 24 24",path:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},star:{viewBox:"0 0 24 24",path:"M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"star-filled":{viewBox:"0 0 24 24",path:"M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z",fill:"currentColor"},sun:{viewBox:"0 0 24 24",path:"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 11-8 0 4 4 0 018 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},moon:{viewBox:"0 0 24 24",path:"M20.354 15.354A9 9 0 018.646 3.646 9.003 9.003 0 0012 21a9.003 9.003 0 008.354-5.646z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},globe:{viewBox:"0 0 24 24",path:"M21 12a9 9 0 01-9 9m9-9a9 9 0 00-9-9m9 9H3m9 9a9 9 0 01-9-9m9 9c1.657 0 3-4.03 3-9s-1.343-9-3-9m0 18c-1.657 0-3-4.03-3-9s1.343-9 3-9m-9 9a9 9 0 019-9",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},map:{viewBox:"0 0 24 24",path:"M9 20l-5.447-2.724A1 1 0 013 16.382V5.618a1 1 0 011.447-.894L9 7m0 13l6-3m-6 3V7m6 10l4.553 2.276A1 1 0 0021 18.382V7.618a1 1 0 00-.553-.894L15 4m0 13V4m0 0L9 7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},pin:{viewBox:"0 0 24 24",path:"M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.827 0l-4.244-4.243a8 8 0 1111.314 0z M15 11a3 3 0 11-6 0 3 3 0 016 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},feather:{viewBox:"0 0 24 24",path:"M20.24 12.24a6 6 0 00-8.49-8.49L5 10.5V19h8.5zM16 8L2 22M17.5 15H9",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},palette:{viewBox:"0 0 24 24",path:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10c.93 0 1.68-.75 1.68-1.68 0-.43-.16-.84-.44-1.13-.27-.29-.43-.7-.43-1.13 0-.93.76-1.69 1.69-1.69h1.98c3.03 0 5.52-2.49 5.52-5.52C22 6.48 17.52 2 12 2zm-5.5 9c-.83 0-1.5-.67-1.5-1.5S5.67 8 6.5 8 8 8.67 8 9.5 7.33 11 6.5 11zm3-4C8.67 7 8 6.33 8 5.5S8.67 4 9.5 4s1.5.67 1.5 1.5S10.33 7 9.5 7zm5 0c-.83 0-1.5-.67-1.5-1.5S13.67 4 14.5 4s1.5.67 1.5 1.5S15.33 7 14.5 7zm3 4c-.83 0-1.5-.67-1.5-1.5S16.67 8 17.5 8s1.5.67 1.5 1.5-.67 1.5-1.5 1.5z",fill:"currentColor"},type:{viewBox:"0 0 24 24",path:"M4 7V4h16v3M9 20h6M12 4v16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},square:{viewBox:"0 0 24 24",path:"M5 3h14a2 2 0 012 2v14a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"mouse-pointer":{viewBox:"0 0 24 24",path:"M3 3l7.07 16.97 2.51-7.39 7.39-2.51L3 3z M13 13l6 6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"refresh-cw":{viewBox:"0 0 24 24",path:"M23 4v6h-6M1 20v-6h6M3.51 9a9 9 0 0114.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0020.49 15",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},gauge:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 0110 10c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2z M8 12l4 4 4-4M12 16V8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"map-pin":{viewBox:"0 0 24 24",path:"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z M12 13a3 3 0 100-6 3 3 0 000 6z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},U={mail:{viewBox:"0 0 24 24",path:"M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"mail-open":{viewBox:"0 0 24 24",path:"M3 19V9a2 2 0 012-2h.93a2 2 0 001.664-.89l.812-1.22A2 2 0 0110.07 4h3.86a2 2 0 011.664.89l.812 1.22A2 2 0 0018.07 7H19a2 2 0 012 2v10a2 2 0 01-2 2H5a2 2 0 01-2-2z M3 9l9 6 9-6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},inbox:{viewBox:"0 0 24 24",path:"M20 13V6a2 2 0 00-2-2H6a2 2 0 00-2 2v7m16 0v5a2 2 0 01-2 2H6a2 2 0 01-2-2v-5m16 0h-2.586a1 1 0 00-.707.293l-2.414 2.414a1 1 0 01-.707.293h-3.172a1 1 0 01-.707-.293l-2.414-2.414A1 1 0 006.586 13H4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},send:{viewBox:"0 0 24 24",path:"M22 2L11 13M22 2l-7 20-4-9-9-4 20-7z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},phone:{viewBox:"0 0 24 24",path:"M3 5a2 2 0 012-2h3.28a1 1 0 01.948.684l1.498 4.493a1 1 0 01-.502 1.21l-2.257 1.13a11.042 11.042 0 005.516 5.516l1.13-2.257a1 1 0 011.21-.502l4.493 1.498a1 1 0 01.684.949V19a2 2 0 01-2 2h-1C9.716 21 3 14.284 3 6V5z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"phone-incoming":{viewBox:"0 0 24 24",path:"M14.5 2v6m0 0h6m-6 0l7-7M3 5a2 2 0 012-2h3.28a1 1 0 01.948.684l1.498 4.493a1 1 0 01-.502 1.21l-2.257 1.13a11.042 11.042 0 005.516 5.516l1.13-2.257a1 1 0 011.21-.502l4.493 1.498a1 1 0 01.684.949V19a2 2 0 01-2 2h-1C9.716 21 3 14.284 3 6V5z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"phone-outgoing":{viewBox:"0 0 24 24",path:"M21.5 2h-6m6 0v6m0-6l-7 7M3 5a2 2 0 012-2h3.28a1 1 0 01.948.684l1.498 4.493a1 1 0 01-.502 1.21l-2.257 1.13a11.042 11.042 0 005.516 5.516l1.13-2.257a1 1 0 011.21-.502l4.493 1.498a1 1 0 01.684.949V19a2 2 0 01-2 2h-1C9.716 21 3 14.284 3 6V5z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"phone-off":{viewBox:"0 0 24 24",path:"M16.5 10.5l5.5-5.5M22 5l-5.5 5.5M10.68 13.31a16 16 0 003.41 2.6l1.27-1.27a2 2 0 012.11-.45 12.84 12.84 0 002.81.7 2 2 0 011.72 2v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07 19.42 19.42 0 01-6-6 19.79 19.79 0 01-3.07-8.67A2 2 0 014.11 2h3a2 2 0 012 1.72 12.84 12.84 0 00.7 2.81 2 2 0 01-.45 2.11L8.09 9.91",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},chat:{viewBox:"0 0 24 24",path:"M8 12h.01M12 12h.01M16 12h.01M21 12c0 4.418-4.03 8-9 8a9.863 9.863 0 01-4.255-.949L3 20l1.395-3.72C3.512 15.042 3 13.574 3 12c0-4.418 4.03-8 9-8s9 3.582 9 8z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chat-alt":{viewBox:"0 0 24 24",path:"M17 8h2a2 2 0 012 2v6a2 2 0 01-2 2h-2v4l-4-4H9a1.994 1.994 0 01-1.414-.586m0 0L11 14h4a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2v4l.586-.586z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"message-circle":{viewBox:"0 0 24 24",path:"M21 11.5a8.38 8.38 0 01-.9 3.8 8.5 8.5 0 01-7.6 4.7 8.38 8.38 0 01-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 01-.9-3.8 8.5 8.5 0 014.7-7.6 8.38 8.38 0 013.8-.9h.5a8.48 8.48 0 018 8v.5z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"message-square":{viewBox:"0 0 24 24",path:"M21 15a2 2 0 01-2 2H7l-4 4V5a2 2 0 012-2h14a2 2 0 012 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},bell:{viewBox:"0 0 24 24",path:"M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"bell-off":{viewBox:"0 0 24 24",path:"M13.73 21a2 2 0 01-3.46 0M18.63 13A17.89 17.89 0 0118 8M6.26 6.26A5.86 5.86 0 006 8c0 7-3 9-3 9h14M18 8a6 6 0 00-9.33-5M1 1l22 22",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},notification:{viewBox:"0 0 24 24",path:"M12 22c1.1 0 2-.9 2-2h-4c0 1.1.9 2 2 2zm6-6v-5c0-3.07-1.63-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.64 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2zm-2 1H8v-6c0-2.48 1.51-4.5 4-4.5s4 2.02 4 4.5v6z",fill:"currentColor"},"at-sign":{viewBox:"0 0 24 24",path:"M16 12a4 4 0 10-8 0 4 4 0 008 0zm0 0v1.5a2.5 2.5 0 005 0V12a9 9 0 10-9 9",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},paperclip:{viewBox:"0 0 24 24",path:"M21.44 11.05l-9.19 9.19a6 6 0 01-8.49-8.49l9.19-9.19a4 4 0 015.66 5.66l-9.2 9.19a2 2 0 01-2.83-2.83l8.49-8.48",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},rss:{viewBox:"0 0 24 24",path:"M4 11a9 9 0 019 9M4 4a16 16 0 0116 16M5 20a1 1 0 100-2 1 1 0 000 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},Y={play:{viewBox:"0 0 24 24",path:"M14.752 11.168l-3.197-2.132A1 1 0 0010 9.87v4.263a1 1 0 001.555.832l3.197-2.132a1 1 0 000-1.664z M21 12a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"play-filled":{viewBox:"0 0 24 24",path:"M5 3l14 9-14 9V3z",fill:"currentColor"},pause:{viewBox:"0 0 24 24",path:"M10 9v6m4-6v6m7-3a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"pause-filled":{viewBox:"0 0 24 24",paths:["M6 4h4v16H6z","M14 4h4v16h-4z"],fill:"currentColor"},stop:{viewBox:"0 0 24 24",path:"M21 12a9 9 0 11-18 0 9 9 0 0118 0z M9 10a1 1 0 011-1h4a1 1 0 011 1v4a1 1 0 01-1 1h-4a1 1 0 01-1-1v-4z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"stop-filled":{viewBox:"0 0 24 24",path:"M6 6h12v12H6z",fill:"currentColor"},"skip-back":{viewBox:"0 0 24 24",path:"M19 20L9 12l10-8v16zM5 19V5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"skip-forward":{viewBox:"0 0 24 24",path:"M5 4l10 8-10 8V4zM19 5v14",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},rewind:{viewBox:"0 0 24 24",path:"M11 19l-7-7 7-7m8 14l-7-7 7-7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"fast-forward":{viewBox:"0 0 24 24",path:"M13 5l7 7-7 7M5 5l7 7-7 7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},volume:{viewBox:"0 0 24 24",path:"M15.536 8.464a5 5 0 010 7.072M12 6l-4 4H4v4h4l4 4V6z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"volume-up":{viewBox:"0 0 24 24",path:"M15.536 8.464a5 5 0 010 7.072m2.828-9.9a9 9 0 010 12.728M12 6l-4 4H4v4h4l4 4V6z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"volume-down":{viewBox:"0 0 24 24",path:"M15.536 8.464a5 5 0 010 7.072M12 6l-4 4H4v4h4l4 4V6z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"volume-mute":{viewBox:"0 0 24 24",path:"M5.586 15H4a1 1 0 01-1-1v-4a1 1 0 011-1h1.586l4.707-4.707C10.923 3.663 12 4.109 12 5v14c0 .891-1.077 1.337-1.707.707L5.586 15z M17 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"volume-off":{viewBox:"0 0 24 24",path:"M12 6l-4 4H4v4h4l4 4V6z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},camera:{viewBox:"0 0 24 24",path:"M3 9a2 2 0 012-2h.93a2 2 0 001.664-.89l.812-1.22A2 2 0 0110.07 4h3.86a2 2 0 011.664.89l.812 1.22A2 2 0 0018.07 7H19a2 2 0 012 2v9a2 2 0 01-2 2H5a2 2 0 01-2-2V9z M15 13a3 3 0 11-6 0 3 3 0 016 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"camera-off":{viewBox:"0 0 24 24",path:"M1 1l22 22M21 21H3a2 2 0 01-2-2V8a2 2 0 012-2h3m3-3h6l2 3h4a2 2 0 012 2v9.34m-7.72-2.06a4 4 0 11-5.56-5.56",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},video:{viewBox:"0 0 24 24",path:"M15 10l4.553-2.276A1 1 0 0121 8.618v6.764a1 1 0 01-1.447.894L15 14M5 18h8a2 2 0 002-2V8a2 2 0 00-2-2H5a2 2 0 00-2 2v8a2 2 0 002 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"video-off":{viewBox:"0 0 24 24",path:"M16 16v1a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h2m5.66 0H14a2 2 0 012 2v3.34l1 1L23 7v10M1 1l22 22",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},image:{viewBox:"0 0 24 24",path:"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},images:{viewBox:"0 0 24 24",path:"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z M9 3h12a2 2 0 012 2v12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},music:{viewBox:"0 0 24 24",path:"M9 19V6l12-3v13M9 19c0 1.105-1.343 2-3 2s-3-.895-3-2 1.343-2 3-2 3 .895 3 2zm12-3c0 1.105-1.343 2-3 2s-3-.895-3-2 1.343-2 3-2 3 .895 3 2zM9 10l12-3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},mic:{viewBox:"0 0 24 24",path:"M19 10v2a7 7 0 01-14 0v-2m7 9v4m-4 0h8m-4-13a3 3 0 00-3 3v4a3 3 0 006 0v-4a3 3 0 00-3-3z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"mic-off":{viewBox:"0 0 24 24",path:"M1 1l22 22m-2-2a10 10 0 01-11 2.955M12 19v4m-4 0h8M9 9v3a3 3 0 005.12 2.12M15 9.34V4a3 3 0 00-5.94-.6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},headphones:{viewBox:"0 0 24 24",path:"M3 18v-6a9 9 0 0118 0v6M21 19a2 2 0 01-2 2h-1a2 2 0 01-2-2v-3a2 2 0 012-2h3zM3 19a2 2 0 002 2h1a2 2 0 002-2v-3a2 2 0 00-2-2H3z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},radio:{viewBox:"0 0 24 24",path:"M12 14m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0 M16.24 7.76a6 6 0 010 8.49m-8.48-.01a6 6 0 010-8.49m11.31-2.82a10 10 0 010 14.14m-14.14 0a10 10 0 010-14.14",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},film:{viewBox:"0 0 24 24",path:"M7 4v16M17 4v16M3 8h4m10 0h4M3 12h18M3 16h4m10 0h4M4 20h16a1 1 0 001-1V5a1 1 0 00-1-1H4a1 1 0 00-1 1v14a1 1 0 001 1z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},tv:{viewBox:"0 0 24 24",path:"M20 7H4a2 2 0 00-2 2v10a2 2 0 002 2h16a2 2 0 002-2V9a2 2 0 00-2-2zM17 3l-5 4-5-4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},cast:{viewBox:"0 0 24 24",path:"M2 16.1A5 5 0 015.9 20M2 12.05A9 9 0 019.95 20M2 8V6a2 2 0 012-2h16a2 2 0 012 2v12a2 2 0 01-2 2h-6M2 20h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},maximize:{viewBox:"0 0 24 24",path:"M8 3H5a2 2 0 00-2 2v3m18 0V5a2 2 0 00-2-2h-3m0 18h3a2 2 0 002-2v-3M3 16v3a2 2 0 002 2h3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},minimize:{viewBox:"0 0 24 24",path:"M8 3v3a2 2 0 01-2 2H3m18 0h-3a2 2 0 01-2-2V3m0 18v-3a2 2 0 012-2h3M3 16h3a2 2 0 012 2v3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},J={document:{viewBox:"0 0 24 24",path:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"document-text":{viewBox:"0 0 24 24",path:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z M14 2v6h6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"document-add":{viewBox:"0 0 24 24",path:"M9 13h6m-3-3v6m5 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"document-remove":{viewBox:"0 0 24 24",path:"M9 13h6m2 8H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"document-check":{viewBox:"0 0 24 24",path:"M9 12l2 2 4-4m2 11H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},folder:{viewBox:"0 0 24 24",path:"M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"folder-open":{viewBox:"0 0 24 24",path:"M5 19a2 2 0 01-2-2V7a2 2 0 012-2h4l2 2h6a2 2 0 012 2v1M5 19h14a2 2 0 002-2v-5a2 2 0 00-2-2H9a2 2 0 00-2 2v5a2 2 0 01-2 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"folder-add":{viewBox:"0 0 24 24",path:"M9 13h6m-3-3v6M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"folder-remove":{viewBox:"0 0 24 24",path:"M9 13h6M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},download:{viewBox:"0 0 24 24",path:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},upload:{viewBox:"0 0 24 24",path:"M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-8l-4-4m0 0L8 8m4-4v12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"cloud-download":{viewBox:"0 0 24 24",path:"M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M9 19l3 3m0 0l3-3m-3 3V10",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"cloud-upload":{viewBox:"0 0 24 24",path:"M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M15 13l-3-3m0 0l-3 3m3-3v12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},cloud:{viewBox:"0 0 24 24",path:"M8 19c-3.314 0-6-2.462-6-5.5S4.686 8 8 8c.642-2.87 3.251-5 6.375-5C18.086 3 21 5.91 21 9.5a6.458 6.458 0 01-.705 2.945A4.5 4.5 0 0119 21H8z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},attachment:{viewBox:"0 0 24 24",path:"M15.172 7l-6.586 6.586a2 2 0 102.828 2.828l6.414-6.586a4 4 0 00-5.656-5.656l-6.415 6.585a6 6 0 108.486 8.486L20.5 13",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},copy:{viewBox:"0 0 24 24",path:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},clipboard:{viewBox:"0 0 24 24",path:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"clipboard-check":{viewBox:"0 0 24 24",path:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"clipboard-list":{viewBox:"0 0 24 24",path:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},save:{viewBox:"0 0 24 24",path:"M8 7H5a2 2 0 00-2 2v9a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-3m-1 4l-3 3m0 0l-3-3m3 3V4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},archive:{viewBox:"0 0 24 24",path:"M5 8h14M5 8a2 2 0 110-4h14a2 2 0 110 4M5 8v10a2 2 0 002 2h10a2 2 0 002-2V8m-9 4h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"file-code":{viewBox:"0 0 24 24",path:"M10 20l4-16m4 4l4 4-4 4M6 16l-4-4 4-4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"file-zip":{viewBox:"0 0 24 24",path:"M17 21H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2zM10 3v4h1V3h-1zm1 4h-1v2h1V7zm-1 2v2h1V9h-1zm1 2h-1v2h1v-2zm-1 2v2h1v-2h-1z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},database:{viewBox:"0 0 24 24",path:"M4 7v10c0 2.21 3.582 4 8 4s8-1.79 8-4V7M4 7c0 2.21 3.582 4 8 4s8-1.79 8-4M4 7c0-2.21 3.582-4 8-4s8 1.79 8 4m0 5c0 2.21-3.582 4-8 4s-8-1.79-8-4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},server:{viewBox:"0 0 24 24",path:"M5 12h14M5 12a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v4a2 2 0 01-2 2M5 12a2 2 0 00-2 2v4a2 2 0 002 2h14a2 2 0 002-2v-4a2 2 0 00-2-2m-2-4h.01M17 16h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"hard-drive":{viewBox:"0 0 24 24",path:"M22 12H2M5.45 5.11L2 12v6a2 2 0 002 2h16a2 2 0 002-2v-6l-3.45-6.89A2 2 0 0016.76 4H7.24a2 2 0 00-1.79 1.11zM6 16h.01M10 16h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"file-text":{viewBox:"0 0 24 24",path:"M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8l-6-6zM14 2v6h6M16 13H8M16 17H8M10 9H8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},book:{viewBox:"0 0 24 24",path:"M4 19.5A2.5 2.5 0 016.5 17H20M4 19.5A2.5 2.5 0 006.5 22H20v-5M6 3h14v16H6a2 2 0 01-2-2V5a2 2 0 012-2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"book-open":{viewBox:"0 0 24 24",path:"M2 3h6a4 4 0 014 4v14a3 3 0 00-3-3H2V3zM22 3h-6a4 4 0 00-4 4v14a3 3 0 013-3h7V3z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"book-closed":{viewBox:"0 0 24 24",path:"M4 19.5A2.5 2.5 0 016.5 17H20M4 19.5A2.5 2.5 0 006.5 22H20v-5M6 3h14v16H6a2 2 0 01-2-2V5a2 2 0 012-2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"folder-plus":{viewBox:"0 0 24 24",path:"M9 13h6m-3-3v6M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"folder-minus":{viewBox:"0 0 24 24",path:"M9 13h6M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},Q={share:{viewBox:"0 0 24 24",path:"M8.684 13.342C8.886 12.938 9 12.482 9 12c0-.482-.114-.938-.316-1.342m0 2.684a3 3 0 110-2.684m0 2.684l6.632 3.316m-6.632-6l6.632-3.316m0 0a3 3 0 105.367-2.684 3 3 0 00-5.367 2.684zm0 9.316a3 3 0 105.368 2.684 3 3 0 00-5.368-2.684z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"share-alt":{viewBox:"0 0 24 24",path:"M4 12v8a2 2 0 002 2h12a2 2 0 002-2v-8M16 6l-4-4-4 4M12 2v13",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},heart:{viewBox:"0 0 24 24",path:"M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"heart-filled":{viewBox:"0 0 24 24",path:"M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z",fill:"currentColor"},bookmark:{viewBox:"0 0 24 24",path:"M5 5a2 2 0 012-2h10a2 2 0 012 2v16l-7-3.5L5 21V5z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"bookmark-filled":{viewBox:"0 0 24 24",path:"M5 5a2 2 0 012-2h10a2 2 0 012 2v16l-7-3.5L5 21V5z",fill:"currentColor"},"thumb-up":{viewBox:"0 0 24 24",path:"M14 10h4.764a2 2 0 011.789 2.894l-3.5 7A2 2 0 0115.263 21h-4.017c-.163 0-.326-.02-.485-.06L7 20m7-10V5a2 2 0 00-2-2h-.095c-.5 0-.905.405-.905.905 0 .714-.211 1.412-.608 2.006L7 11v9m7-10h-2M7 20H5a2 2 0 01-2-2v-6a2 2 0 012-2h2.5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"thumb-down":{viewBox:"0 0 24 24",path:"M10 14H5.236a2 2 0 01-1.789-2.894l3.5-7A2 2 0 018.736 3h4.018a2 2 0 01.485.06l3.76.94m-7 10v5a2 2 0 002 2h.096c.5 0 .905-.405.905-.904 0-.715.211-1.413.608-2.008L17 13V4m-7 10h2m5-10h2a2 2 0 012 2v6a2 2 0 01-2 2h-2.5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},comment:{viewBox:"0 0 24 24",path:"M8 12h.01M12 12h.01M16 12h.01M21 12c0 4.418-4.03 8-9 8a9.863 9.863 0 01-4.255-.949L3 20l1.395-3.72C3.512 15.042 3 13.574 3 12c0-4.418 4.03-8 9-8s9 3.582 9 8z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"user-add":{viewBox:"0 0 24 24",path:"M18 9v3m0 0v3m0-3h3m-3 0h-3m-2-5a4 4 0 11-8 0 4 4 0 018 0zM3 20a6 6 0 0112 0v1H3v-1z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"user-plus":{viewBox:"0 0 24 24",path:"M18 9v3m0 0v3m0-3h3m-3 0h-3m-2-5a4 4 0 11-8 0 4 4 0 018 0zM3 20a6 6 0 0112 0v1H3v-1z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"user-remove":{viewBox:"0 0 24 24",path:"M13 7a4 4 0 11-8 0 4 4 0 018 0zM9 14a6 6 0 00-6 6v1h12v-1a6 6 0 00-6-6zM21 12h-6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"user-group":{viewBox:"0 0 24 24",path:"M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0zm6 3a2 2 0 11-4 0 2 2 0 014 0zM7 10a2 2 0 11-4 0 2 2 0 014 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"emoji-happy":{viewBox:"0 0 24 24",path:"M14.828 14.828a4 4 0 01-5.656 0M9 10h.01M15 10h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"emoji-sad":{viewBox:"0 0 24 24",path:"M9.172 16.172a4 4 0 015.656 0M9 10h.01M15 10h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},flag:{viewBox:"0 0 24 24",path:"M3 21v-4m0 0V5a2 2 0 012-2h6.5l1 1H21l-3 6 3 6h-8.5l-1-1H5a2 2 0 00-2 2zm9-13.5V9",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},award:{viewBox:"0 0 24 24",path:"M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},trophy:{viewBox:"0 0 24 24",path:"M12 15V17M8 21H16M8 3H16V9C16 11.2091 14.2091 13 12 13C9.79086 13 8 11.2091 8 9V3ZM16 5H18C19.1046 5 20 5.89543 20 7V8C20 9.10457 19.1046 10 18 10H16M8 5H6C4.89543 5 4 5.89543 4 7V8C4 9.10457 4.89543 10 6 10H8M12 17V21",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},gift:{viewBox:"0 0 24 24",path:"M12 8V21M12 8H8.464C7.103 8 6 6.897 6 5.536C6 4.175 7.103 3 8.464 3C10.059 3 11.162 4.162 12 5.536M12 8H15.536C16.897 8 18 6.897 18 5.536C18 4.175 16.897 3 15.536 3C13.941 3 12.838 4.162 12 5.536M20 12V21H4V12M3 8H21V12H3V8Z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},sparkles:{viewBox:"0 0 24 24",path:"M5 3v4M3 5h4M6 17v4m-2-2h4m5-16l2.286 6.857L21 12l-5.714 2.143L13 21l-2.286-6.857L5 12l5.714-2.143L13 3z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},fire:{viewBox:"0 0 24 24",path:"M17.657 18.657A8 8 0 016.343 7.343S7 9 9 10c0-2 .5-5 2.986-7C14 5 16.09 5.777 17.656 7.343A7.975 7.975 0 0120 13a7.975 7.975 0 01-2.343 5.657z M9.879 16.121A3 3 0 1012.015 11L11 14H9c0 .768.293 1.536.879 2.121z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},github:{viewBox:"0 0 24 24",path:"M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0022 12.017C22 6.484 17.522 2 12 2z",fill:"currentColor"}},Z={cart:{viewBox:"0 0 24 24",path:"M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"cart-add":{viewBox:"0 0 24 24",path:"M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0zm6-8v-2m0 0V7m0 2h2m-2 0H11",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"shopping-bag":{viewBox:"0 0 24 24",path:"M16 11V7a4 4 0 00-8 0v4M5 9h14l1 12H4L5 9z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},store:{viewBox:"0 0 24 24",path:"M3 3h18v4H3V3zM3 7v12a2 2 0 002 2h14a2 2 0 002-2V7M3 11h18M12 7v14M8 11v10M16 11v10",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"credit-card":{viewBox:"0 0 24 24",path:"M3 10h18M7 15h1m4 0h1m-7 4h12a3 3 0 003-3V8a3 3 0 00-3-3H6a3 3 0 00-3 3v8a3 3 0 003 3z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},wallet:{viewBox:"0 0 24 24",path:"M17 9V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-2m-5-3h9m0 0l-3-3m3 3l-3 3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},cash:{viewBox:"0 0 24 24",path:"M17 9V7a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2m2 4h10a2 2 0 002-2v-6a2 2 0 00-2-2H9a2 2 0 00-2 2v6a2 2 0 002 2zm7-5a2 2 0 11-4 0 2 2 0 014 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"currency-dollar":{viewBox:"0 0 24 24",path:"M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"currency-pound":{viewBox:"0 0 24 24",path:"M15 9a3 3 0 00-3-3H9a3 3 0 00-3 3v6a3 3 0 003 3h6a3 3 0 003-3M9 12h6M21 12a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"currency-euro":{viewBox:"0 0 24 24",path:"M15 9a3 3 0 00-3-3H9a3 3 0 00-3 3v6a3 3 0 003 3h3a3 3 0 003-3M7 10h5m-5 4h5M21 12a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},tag:{viewBox:"0 0 24 24",path:"M7 7h.01M7 3h5c.512 0 1.024.195 1.414.586l7 7a2 2 0 010 2.828l-7 7a2 2 0 01-2.828 0l-7-7A1.994 1.994 0 013 12V7a4 4 0 014-4z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},tags:{viewBox:"0 0 24 24",path:"M7 7h.01M7 3h5c.512 0 1.024.195 1.414.586l7 7a2 2 0 010 2.828l-7 7a2 2 0 01-2.828 0l-7-7A1.994 1.994 0 013 12V7a4 4 0 014-4z M17 17l4.414-4.414a2 2 0 000-2.828L14 3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},receipt:{viewBox:"0 0 24 24",path:"M9 14l6 0M9 10l6 0M9 18l3 0M5 21l1-2 1 2 1-2 1 2 1-2 1 2 1-2 1 2 1-2 1 2 1-2 1 2V3l-1 2-1-2-1 2-1-2-1 2-1-2-1 2-1-2-1 2-1-2-1 2-1-2v18z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},barcode:{viewBox:"0 0 24 24",path:"M5 7v10M8 7v10M11 7v10M14 7v10M19 7v10M17 7v10",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round"},qrcode:{viewBox:"0 0 24 24",path:"M3 3h6v6H3V3zM15 3h6v6h-6V3zM3 15h6v6H3v-6zM15 15h2v2h-2v-2zM19 15h2v2h-2v-2zM15 19h2v2h-2v-2zM19 19h2v2h-2v-2zM5 5h2v2H5V5zM17 5h2v2h-2V5zM5 17h2v2H5v-2zM12 3h1v4h-1V3zM12 9h1v3h-1V9zM3 12h4v1H3v-1zM9 12h3v1H9v-1zM12 14h1v3h-1v-3zM12 19h1v2h-1v-2z",fill:"currentColor"},percent:{viewBox:"0 0 24 24",path:"M9 9a1.5 1.5 0 100-3 1.5 1.5 0 000 3zM15 18a1.5 1.5 0 100-3 1.5 1.5 0 000 3zM19 5L5 19",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},package:{viewBox:"0 0 24 24",path:"M20 7l-8-4-8 4m16 0l-8 4m8-4v10l-8 4m0-10L4 7m8 4v10M4 7v10l8 4M9 4l3 1.5L15 4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},truck:{viewBox:"0 0 24 24",path:"M13 16V6a1 1 0 00-1-1H4a1 1 0 00-1 1v10a1 1 0 001 1h1m8-1a1 1 0 01-1 1H9m4-1V8a1 1 0 011-1h2.586a1 1 0 01.707.293l3.414 3.414a1 1 0 01.293.707V16a1 1 0 01-1 1h-1m-6-1a1 1 0 001 1h1M5 17a2 2 0 104 0m-4 0a2 2 0 114 0m6 0a2 2 0 104 0m-4 0a2 2 0 114 0",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},box:{viewBox:"0 0 24 24",path:"M12 3L2 8.5V15.5L12 21L22 15.5V8.5L12 3ZM12 12V21M12 12L2 7M12 12L22 7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},shipping:{viewBox:"0 0 24 24",path:"M20 21v-2a4 4 0 00-4-4H8a4 4 0 00-4 4v2M4 7V4h16v3M4 7h16M8 4v3M16 4v3M12 11v4m-2-2h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},calculator:{viewBox:"0 0 24 24",path:"M4 4a2 2 0 012-2h12a2 2 0 012 2v16a2 2 0 01-2 2H6a2 2 0 01-2-2V4zM8 6h8v4H8V6zM8 14h.01M12 14h.01M16 14h.01M8 18h.01M12 18h.01M16 18h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},briefcase:{viewBox:"0 0 24 24",path:"M20 7H4a2 2 0 00-2 2v10a2 2 0 002 2h16a2 2 0 002-2V9a2 2 0 00-2-2zM16 21V5a2 2 0 00-2-2h-4a2 2 0 00-2 2v16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},X={check:{viewBox:"0 0 24 24",path:"M5 13l4 4L19 7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"check-circle":{viewBox:"0 0 24 24",path:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"check-circle-filled":{viewBox:"0 0 24 24",path:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z",fill:"currentColor"},"check-square":{viewBox:"0 0 24 24",path:"M9 11l3 3L22 4M21 12v7a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2h11",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},x:{viewBox:"0 0 24 24",path:"M6 18L18 6M6 6l12 12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"x-circle":{viewBox:"0 0 24 24",path:"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"x-circle-filled":{viewBox:"0 0 24 24",path:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z",fill:"currentColor"},warning:{viewBox:"0 0 24 24",path:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"warning-filled":{viewBox:"0 0 24 24",path:"M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z",fill:"currentColor"},"alert-warning":{viewBox:"0 0 24 24",path:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},info:{viewBox:"0 0 24 24",path:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"info-filled":{viewBox:"0 0 24 24",path:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z",fill:"currentColor"},question:{viewBox:"0 0 24 24",path:"M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},exclamation:{viewBox:"0 0 24 24",path:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"alert-circle":{viewBox:"0 0 24 24",path:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},ban:{viewBox:"0 0 24 24",path:"M18.364 18.364A9 9 0 005.636 5.636m12.728 12.728A9 9 0 015.636 5.636m12.728 12.728L5.636 5.636",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},shield:{viewBox:"0 0 24 24",path:"M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"shield-check":{viewBox:"0 0 24 24",path:"M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"shield-x":{viewBox:"0 0 24 24",path:"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m5.618-6.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},spinner:{viewBox:"0 0 24 24",path:"M12 2v4m0 12v4m10-10h-4M6 12H2m15.364-5.364l-2.828 2.828M9.464 14.536l-2.828 2.828m11.728 0l-2.828-2.828M9.464 9.464L6.636 6.636",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},loading:{viewBox:"0 0 24 24",path:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z",fill:"currentColor"},loader:{viewBox:"0 0 24 24",path:"M12 2v4M12 18v4M4.93 4.93l2.83 2.83M16.24 16.24l2.83 2.83M2 12h4M18 12h4M4.93 19.07l2.83-2.83M16.24 7.76l2.83-2.83",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},circle:{viewBox:"0 0 24 24",path:"M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"circle-filled":{viewBox:"0 0 24 24",path:"M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10z",fill:"currentColor"},dot:{viewBox:"0 0 24 24",path:"M12 12m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0",fill:"currentColor"},badge:{viewBox:"0 0 24 24",path:"M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},zap:{viewBox:"0 0 24 24",path:"M13 10V3L4 14h7v7l9-11h-7z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},activity:{viewBox:"0 0 24 24",path:"M22 12h-4l-3 9L9 3l-3 9H2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},pulse:{viewBox:"0 0 24 24",path:"M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"trending-up":{viewBox:"0 0 24 24",path:"M23 6l-9.5 9.5-5-5L1 18M17 6h6v6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"trending-down":{viewBox:"0 0 24 24",path:"M23 18l-9.5-9.5-5 5L1 6M17 18h6v-6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},G={"chevron-up":{viewBox:"0 0 24 24",path:"M5 15l7-7 7 7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chevron-down":{viewBox:"0 0 24 24",path:"M19 9l-7 7-7-7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chevron-left":{viewBox:"0 0 24 24",path:"M15 19l-7-7 7-7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chevron-right":{viewBox:"0 0 24 24",path:"M9 5l7 7-7 7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chevrons-up":{viewBox:"0 0 24 24",path:"M17 11l-5-5-5 5M17 18l-5-5-5 5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chevrons-down":{viewBox:"0 0 24 24",path:"M7 13l5 5 5-5M7 6l5 5 5-5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chevrons-left":{viewBox:"0 0 24 24",path:"M11 17l-5-5 5-5M18 17l-5-5 5-5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chevrons-right":{viewBox:"0 0 24 24",path:"M13 7l5 5-5 5M6 7l5 5-5 5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"external-link":{viewBox:"0 0 24 24",path:"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},link:{viewBox:"0 0 24 24",path:"M13.828 10.172a4 4 0 00-5.656 0l-4 4a4 4 0 105.656 5.656l1.102-1.101m-.758-4.899a4 4 0 005.656 0l4-4a4 4 0 00-5.656-5.656l-1.1 1.1",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},unlink:{viewBox:"0 0 24 24",path:"M18.84 12.25l1.72-1.71h-.02a5.004 5.004 0 00-.12-7.07 5.006 5.006 0 00-6.95 0l-1.72 1.71M5.17 11.75l-1.71 1.71a5.004 5.004 0 00.12 7.07 5.006 5.006 0 006.95 0l1.71-1.71M8 2v3M2 8h3M16 22v-3M22 16h-3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"corner-up-left":{viewBox:"0 0 24 24",path:"M9 14L4 9l5-5M20 20v-7a4 4 0 00-4-4H4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"corner-up-right":{viewBox:"0 0 24 24",path:"M15 14l5-5-5-5M4 20v-7a4 4 0 014-4h12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"corner-down-left":{viewBox:"0 0 24 24",path:"M9 10L4 15l5 5M20 4v7a4 4 0 01-4 4H4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"corner-down-right":{viewBox:"0 0 24 24",path:"M15 10l5 5-5 5M4 4v7a4 4 0 004 4h12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"rotate-cw":{viewBox:"0 0 24 24",path:"M23 4v6h-6M1 20v-6h6M3.51 9a9 9 0 0114.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0020.49 15",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"rotate-ccw":{viewBox:"0 0 24 24",path:"M1 4v6h6M23 20v-6h-6M20.49 9A9 9 0 005.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 013.51 15",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},undo:{viewBox:"0 0 24 24",path:"M3 7v6h6M3 13l4.64-4.36A9 9 0 0121 12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},redo:{viewBox:"0 0 24 24",path:"M21 7v6h-6M21 13l-4.64-4.36A9 9 0 003 12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},move:{viewBox:"0 0 24 24",path:"M5 9l-3 3 3 3M9 5l3-3 3 3M15 19l-3 3-3-3M19 9l3 3-3 3M2 12h20M12 2v20",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},expand:{viewBox:"0 0 24 24",path:"M15 3h6v6M9 21H3v-6M21 3l-7 7M3 21l7-7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},shrink:{viewBox:"0 0 24 24",path:"M4 14h6v6M20 10h-6V4M14 10l7-7M3 21l7-7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"log-in":{viewBox:"0 0 24 24",path:"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"log-out":{viewBox:"0 0 24 24",path:"M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4M16 17l5-5-5-5M21 12H9",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"sidebar-left":{viewBox:"0 0 24 24",path:"M4 4h16a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V6a2 2 0 012-2zM9 4v16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"sidebar-right":{viewBox:"0 0 24 24",path:"M4 4h16a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V6a2 2 0 012-2zM15 4v16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"panel-left":{viewBox:"0 0 24 24",path:"M3 3h18v18H3V3zM9 3v18",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"panel-right":{viewBox:"0 0 24 24",path:"M3 3h18v18H3V3zM15 3v18",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"panel-top":{viewBox:"0 0 24 24",path:"M3 3h18v18H3V3zM3 9h18",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"panel-bottom":{viewBox:"0 0 24 24",path:"M3 3h18v18H3V3zM3 15h18",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},layers:{viewBox:"0 0 24 24",path:"M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},layout:{viewBox:"0 0 24 24",path:"M4 4h16a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V6a2 2 0 012-2zM2 9h20M9 20V9",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},hash:{viewBox:"0 0 24 24",path:"M4 9h16M4 15h16M10 3L8 21M16 3l-2 18",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"more-horizontal":{viewBox:"0 0 24 24",path:"M12 12h.01M8 12h.01M16 12h.01",stroke:"currentColor",fill:"none",strokeWidth:3,strokeLinecap:"round",strokeLinejoin:"round"},"more-vertical":{viewBox:"0 0 24 24",path:"M12 12h.01M12 8h.01M12 16h.01",stroke:"currentColor",fill:"none",strokeWidth:3,strokeLinecap:"round",strokeLinejoin:"round"}},ee={tree:{viewBox:"0 0 24 24",path:"M12 2l2 4h-1l2 4h-1.5l2.5 5h-2l3 6H7l3-6H8l2.5-5H9l2-4h-1l2-4zm-1 19h2v3h-2v-3z",stroke:"currentColor",fill:"none",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"},"star-decoration":{viewBox:"0 0 24 24",path:"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z",stroke:"currentColor",fill:"none",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"},snowflake:{viewBox:"0 0 24 24",paths:["M12 2v20M2 12h20","M4.93 4.93l14.14 14.14M19.07 4.93L4.93 19.07","M12 6l-2 2 2 2 2-2-2-2zM12 14l-2 2 2 2 2-2-2-2z","M6 12l2-2-2-2-2 2 2 2zM14 12l2 2 2-2-2-2-2 2z"],stroke:"currentColor",fill:"none",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"},gift:{viewBox:"0 0 24 24",paths:["M20 12v10H4V12","M22 7H2v5h20V7z","M12 22V7","M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z","M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z"],stroke:"currentColor",fill:"none",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"},"candy-cane":{viewBox:"0 0 24 24",path:"M14.5 3a4.5 4.5 0 0 0-4.5 4.5v13a.5.5 0 0 0 1 0V7.5a3.5 3.5 0 1 1 7 0v1a2.5 2.5 0 0 1-5 0v-.5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},bauble:{viewBox:"0 0 24 24",paths:["M12 22a8 8 0 1 0 0-16 8 8 0 0 0 0 16z","M12 6V3","M9 3h6","M12 6a1 1 0 0 0 1-1V4a1 1 0 0 0-2 0v1a1 1 0 0 0 1 1z"],stroke:"currentColor",fill:"none",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"},bells:{viewBox:"0 0 24 24",paths:["M9 18a5 5 0 0 1-5-5c0-2.76 2.24-5 5-5s5 2.24 5 5a5 5 0 0 1-5 5z","M15 18a5 5 0 0 1-5-5c0-2.76 2.24-5 5-5s5 2.24 5 5a5 5 0 0 1-5 5z","M7 8L5 4M17 8l2-4M9 8V5M15 8V5","M11 5h2"],stroke:"currentColor",fill:"none",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"},holly:{viewBox:"0 0 24 24",paths:["M8 4c-2 2-3 5-1 8 1 2 3 3 5 3s4-1 5-3c2-3 1-6-1-8","M16 4c2 2 3 5 1 8-1 2-3 3-5 3s-4-1-5-3c-2-3-1-6 1-8","M10 17a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3z","M14 17a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3z","M12 19a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3z"],stroke:"currentColor",fill:"none",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"},snowman:{viewBox:"0 0 24 24",paths:["M12 22a5 5 0 1 0 0-10 5 5 0 0 0 0 10z","M12 12a3 3 0 1 0 0-6 3 3 0 0 0 0 6z","M9 9h.01M15 9h.01","M10 10.5s.5 1 2 1 2-1 2-1","M7 2l3 3M17 2l-3 3M12 2v3","M5 15h2M17 15h2"],stroke:"currentColor",fill:"none",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"},reindeer:{viewBox:"0 0 24 24",paths:["M12 22c-3 0-5-2-5-5 0-2 1-4 3-5l2-1 2 1c2 1 3 3 3 5 0 3-2 5-5 5z","M7 12c-2-1-3-3-3-5 0-1 .5-2 1-2s1 .5 1.5 1c.5.5 1 1.5 1.5 2","M17 12c2-1 3-3 3-5 0-1-.5-2-1-2s-1 .5-1.5 1c-.5.5-1 1.5-1.5 2","M4 5l1 2M3 7l2 1M20 5l-1 2M21 7l-2 1","M10 17h.01M14 17h.01","M12 19a1 1 0 1 0 0 2 1 1 0 0 0 0-2z"],stroke:"currentColor",fill:"none",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"},sleigh:{viewBox:"0 0 24 24",paths:["M4 15h14c1 0 2 1 2 2v1H4v-3z","M6 15V8c0-1 1-2 2-2h8c1 0 2 1 2 2v7","M2 20c0-1 2-2 4-2h12c2 0 4 1 4 2","M3 18h1M20 18h1"],stroke:"currentColor",fill:"none",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"},wreath:{viewBox:"0 0 24 24",paths:["M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10z","M12 18a6 6 0 1 0 0-12 6 6 0 0 0 0 12z","M12 2v2M12 20v2M2 12h2M20 12h2","M10 3l1 2M13 3l-1 2","M10 3h4"],stroke:"currentColor",fill:"none",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"}},te={sun:{viewBox:"0 0 24 24",path:"M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41M12 6a6 6 0 1 0 0 12 6 6 0 0 0 0-12z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},sunrise:{viewBox:"0 0 24 24",path:"M17 18a5 5 0 1 0-10 0M12 2v7M4.22 10.22l1.42 1.42M1 18h2M21 18h2M18.36 11.64l1.42-1.42M23 22H1M8 6l4-4 4 4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},sunset:{viewBox:"0 0 24 24",path:"M17 18a5 5 0 1 0-10 0M12 9v7M4.22 10.22l1.42 1.42M1 18h2M21 18h2M18.36 11.64l1.42-1.42M23 22H1M16 5l-4 4-4-4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},cloud:{viewBox:"0 0 24 24",path:"M18 10h-1.26A8 8 0 1 0 9 20h9a5 5 0 0 0 0-10z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"cloud-sun":{viewBox:"0 0 24 24",path:"M12 2v2M4.93 4.93l1.41 1.41M2 12h2M19 12a4 4 0 0 0-4-4h-.35A5.5 5.5 0 0 0 4 11a5 5 0 0 0 0 10h11a4 4 0 0 0 4-5v-4z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"cloud-off":{viewBox:"0 0 24 24",path:"M22.61 16.95A5 5 0 0 0 18 10h-1.26a8 8 0 0 0-7.05-6M5 5a8 8 0 0 0 4 15h9a5 5 0 0 0 1.7-.3M1 1l22 22",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},rain:{viewBox:"0 0 24 24",path:"M16 13v8M8 13v8M12 15v8M20 16.58A5 5 0 0 0 18 7h-1.26A8 8 0 1 0 4 15.25",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"cloud-rain":{viewBox:"0 0 24 24",path:"M16 13v8M8 13v8M12 15v8M20 16.58A5 5 0 0 0 18 7h-1.26A8 8 0 1 0 4 15.25",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"cloud-drizzle":{viewBox:"0 0 24 24",path:"M8 19v2M8 13v2M16 19v2M16 13v2M12 21v2M12 15v2M20 16.58A5 5 0 0 0 18 7h-1.26A8 8 0 1 0 4 15.25",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},snow:{viewBox:"0 0 24 24",path:"M20 17.58A5 5 0 0 0 18 8h-1.26A8 8 0 1 0 4 16.25M8 16h.01M8 20h.01M12 18h.01M12 22h.01M16 16h.01M16 20h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},snowflake:{viewBox:"0 0 24 24",path:"M12 2v20M17.66 7l-11.32 10M20.54 12H3.46M17.66 17L6.34 7M12 2l3 3M12 2l-3 3M12 22l3-3M12 22l-3-3M2 12l3 3M2 12l3-3M22 12l-3 3M22 12l-3-3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},wind:{viewBox:"0 0 24 24",path:"M9.59 4.59A2 2 0 1 1 11 8H2m10.59 11.41A2 2 0 1 0 14 16H2m15.73-8.27A2.5 2.5 0 1 1 19.5 12H2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"cloud-lightning":{viewBox:"0 0 24 24",path:"M19 16.9A5 5 0 0 0 18 7h-1.26a8 8 0 1 0-11.62 9M13 11l-4 6h6l-4 6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},lightning:{viewBox:"0 0 24 24",path:"M13 2L3 14h9l-1 8 10-12h-9l1-8z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},fog:{viewBox:"0 0 24 24",path:"M20 15h2M2 15h8M6 19h14M4 11h16M8 7h12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},haze:{viewBox:"0 0 24 24",path:"M12 3v1M12 20v1M3 12h1M20 12h1M5.6 5.6l.7.7M17.7 17.7l.7.7M5.6 18.4l.7-.7M17.7 6.3l.7-.7M8 12a4 4 0 1 0 8 0 4 4 0 0 0-8 0",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},thermometer:{viewBox:"0 0 24 24",path:"M14 14.76V3.5a2.5 2.5 0 0 0-5 0v11.26a4.5 4.5 0 1 0 5 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"thermometer-sun":{viewBox:"0 0 24 24",path:"M12 9a4 4 0 0 0-2 7.5M12 3v2M5.6 5.6l1.4 1.4M3 12h2M5.6 18.4l1.4-1.4M12 14a2 2 0 1 0 0 4 2 2 0 0 0 0-4zM12 10V3M16 14.76V8a2 2 0 0 0-4 0v6.76",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},moon:{viewBox:"0 0 24 24",path:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"moon-star":{viewBox:"0 0 24 24",path:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9zM19 3v4M17 5h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},umbrella:{viewBox:"0 0 24 24",path:"M23 12a11.05 11.05 0 0 0-22 0zm-5 7a3 3 0 0 1-6 0v-7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},droplet:{viewBox:"0 0 24 24",path:"M12 2.69l5.66 5.66a8 8 0 1 1-11.31 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},droplets:{viewBox:"0 0 24 24",path:"M7 16.3c2.2 0 4-1.83 4-4.05 0-1.16-.57-2.26-1.71-3.19S7.29 6.75 7 5.3c-.29 1.45-1.14 2.84-2.29 3.76S3 11.1 3 12.25c0 2.22 1.8 4.05 4 4.05zM12.56 14.94c1.47 0 2.67-1.25 2.67-2.77 0-.8-.38-1.55-1.14-2.18-.76-.64-1.17-1.32-1.38-2.29-.21.97-.62 1.65-1.38 2.29-.76.63-1.14 1.38-1.14 2.18 0 1.52 1.19 2.77 2.67 2.77zM19.5 17.35c1.1 0 2-.93 2-2.08 0-.6-.29-1.17-.86-1.64-.57-.48-.88-1-.57-1.73-.31.73-.62 1.25-1.19 1.73-.57.47-.86 1.04-.86 1.64 0 1.15.9 2.08 2 2.08z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},rainbow:{viewBox:"0 0 24 24",path:"M22 17a10 10 0 0 0-20 0M18 17a6 6 0 0 0-12 0M14 17a2 2 0 0 0-4 0",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},oe={smartphone:{viewBox:"0 0 24 24",path:"M17 2H7a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zM12 18h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"phone-call":{viewBox:"0 0 24 24",path:"M15.05 5A5 5 0 0 1 19 8.95M15.05 1A9 9 0 0 1 23 8.94m-1 7.98v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"phone-off":{viewBox:"0 0 24 24",path:"M10.68 13.31a16 16 0 0 0 3.41 2.6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7 2 2 0 0 1 1.72 2v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.42 19.42 0 0 1-3.33-2.67m-2.67-3.34a19.79 19.79 0 0 1-3.07-8.63A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91M23 1L1 23",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},tablet:{viewBox:"0 0 24 24",path:"M18 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zM12 18h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"tablet-smartphone":{viewBox:"0 0 24 24",path:"M18 2H10a2 2 0 0 0-2 2v4M14 22h4a2 2 0 0 0 2-2V8M8 14H6a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2zM7 18h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},laptop:{viewBox:"0 0 24 24",path:"M20 16V7a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v9m16 0H4m16 0l1.28 2.55a1 1 0 0 1-.9 1.45H3.62a1 1 0 0 1-.9-1.45L4 16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},monitor:{viewBox:"0 0 24 24",path:"M20 3H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zM8 21h8M12 17v4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},desktop:{viewBox:"0 0 24 24",path:"M20 3H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zM8 21h8M12 17v4M2 12h20",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},tv:{viewBox:"0 0 24 24",path:"M20 7H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2zM17 2l-5 5-5-5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"tv-minimal":{viewBox:"0 0 24 24",path:"M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},watch:{viewBox:"0 0 24 24",path:"M12 19a7 7 0 1 0 0-14 7 7 0 0 0 0 14zM12 9v3l1.5 1.5M16.51 17.35l-.35 3.83a2 2 0 0 1-2 1.82H9.83a2 2 0 0 1-2-1.82l-.35-3.83m.01-10.7l.35-3.83A2 2 0 0 1 9.83 1h4.35a2 2 0 0 1 2 1.82l.35 3.83",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},smartwatch:{viewBox:"0 0 24 24",path:"M18 8a6 6 0 0 0-12 0v8a6 6 0 0 0 12 0V8zM12 11v3M18 6l1-3H5l1 3M18 18l1 3H5l1-3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},speaker:{viewBox:"0 0 24 24",path:"M18 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zM12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM12 6h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},headphones:{viewBox:"0 0 24 24",path:"M3 18v-6a9 9 0 0 1 18 0v6M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3zM3 19a2 2 0 0 0 2 2h1a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H3z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},airpods:{viewBox:"0 0 24 24",path:"M5.5 4a2.5 2.5 0 0 0-2.5 2.5v5a2.5 2.5 0 0 0 5 0v-5A2.5 2.5 0 0 0 5.5 4zM18.5 4a2.5 2.5 0 0 0-2.5 2.5v5a2.5 2.5 0 0 0 5 0v-5A2.5 2.5 0 0 0 18.5 4zM5.5 14v6M18.5 14v6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},camera:{viewBox:"0 0 24 24",path:"M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2zM12 17a4 4 0 1 0 0-8 4 4 0 0 0 0 8z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},webcam:{viewBox:"0 0 24 24",path:"M12 14a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM12 14v8M8 22h8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},keyboard:{viewBox:"0 0 24 24",path:"M20 5H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2zM6 9h.01M10 9h.01M14 9h.01M18 9h.01M6 13h.01M18 13h.01M8 17h8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},mouse:{viewBox:"0 0 24 24",path:"M6 3h12a3 3 0 0 1 3 3v12a3 3 0 0 1-3 3H6a3 3 0 0 1-3-3V6a3 3 0 0 1 3-3zM12 3v6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},gamepad:{viewBox:"0 0 24 24",path:"M6 12h4M8 10v4M15 13h.01M18 11h.01M17.32 5H6.68a4 4 0 0 0-3.978 3.59l-.891 9a4 4 0 0 0 6.9 3.31l1.29-1.29 1.29 1.29a4 4 0 0 0 6.9-3.31l-.891-9A4 4 0 0 0 17.32 5z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},joystick:{viewBox:"0 0 24 24",path:"M21 17a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-2zM6 15v-2M12 15V5m0 0l4 4m-4-4L8 9",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"hard-drive":{viewBox:"0 0 24 24",path:"M22 12H2M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11zM6 16h.01M10 16h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},usb:{viewBox:"0 0 24 24",path:"M16 4h2a2 2 0 0 1 2 2v1M6 4h2a2 2 0 0 1 2 2v1M10 16v-5a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2zM20 16v-5a2 2 0 0 0-2-2h-2a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2zM12 12v8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},router:{viewBox:"0 0 24 24",path:"M20 14H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2zM6 18h.01M12 7a5 5 0 0 0-5 5M19 7a5 5 0 0 0-5-5M12 7V2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},printer:{viewBox:"0 0 24 24",path:"M6 9V2h12v7M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2M6 14h12v8H6z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},cpu:{viewBox:"0 0 24 24",path:"M18 4H6a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zM9 9h6v6H9zM9 1v3M15 1v3M9 20v3M15 20v3M20 9h3M20 14h3M1 9h3M1 14h3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},battery:{viewBox:"0 0 24 24",path:"M17 6H5a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2zM23 13v-2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"battery-charging":{viewBox:"0 0 24 24",path:"M5 18H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3.19M15 6h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-3.19M23 13v-2M11 6l-4 6h6l-4 6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},plug:{viewBox:"0 0 24 24",path:"M12 22v-5M9 8V2M15 8V2M18 8H6a2 2 0 0 0-2 2v1a8 8 0 0 0 16 0v-1a2 2 0 0 0-2-2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},ne={"chart-line":{viewBox:"0 0 24 24",path:"M3 3v18h18M18 9l-5 5-4-4-3 3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chart-bar":{viewBox:"0 0 24 24",path:"M12 20V10M6 20v-4M18 20V4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chart-bar-horizontal":{viewBox:"0 0 24 24",path:"M4 12h10M4 6h4M4 18h14",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chart-pie":{viewBox:"0 0 24 24",path:"M21.21 15.89A10 10 0 1 1 8 2.83M22 12A10 10 0 0 0 12 2v10z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chart-area":{viewBox:"0 0 24 24",path:"M3 3v18h18M7 12l5-5 4 4 5-5v12H7z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"chart-candlestick":{viewBox:"0 0 24 24",path:"M9 5v4M9 11v8M15 5v8M15 17v2M7 9h4v2H7zM13 13h4v4h-4z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"trending-up":{viewBox:"0 0 24 24",path:"M23 6l-9.5 9.5-5-5L1 18",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"trending-down":{viewBox:"0 0 24 24",path:"M23 18l-9.5-9.5-5 5L1 6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"trending-neutral":{viewBox:"0 0 24 24",path:"M22 12H2M18 8l4 4-4 4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},wallet:{viewBox:"0 0 24 24",path:"M21 12V7a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-1M21 12H17a2 2 0 0 1 0-4h4M17 12h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"credit-card":{viewBox:"0 0 24 24",path:"M21 4H3a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zM1 10h22",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},banknote:{viewBox:"0 0 24 24",path:"M2 8a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V8zM12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM6 10h.01M18 14h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},coins:{viewBox:"0 0 24 24",path:"M8 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM8 12c2.2 0 4 1.8 4 4s-1.8 4-4 4-4-1.8-4-4 1.8-4 4-4zM16 8a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM16 8c2.2 0 4 1.8 4 4s-1.8 4-4 4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"dollar-sign":{viewBox:"0 0 24 24",path:"M12 1v22M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"pound-sign":{viewBox:"0 0 24 24",path:"M18 5H9a4 4 0 0 0-4 4v3a4 4 0 0 0 4 4h3M5 12h10M18 19H7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"euro-sign":{viewBox:"0 0 24 24",path:"M4 10h12M4 14h12M17 5a8 8 0 0 0-14 5.5 8 8 0 0 0 14 5.5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},bitcoin:{viewBox:"0 0 24 24",path:"M11.767 19.089c4.924.868 6.14-6.025 1.216-6.894m-1.216 6.894L5.86 18.047m5.908 1.042-.347 1.97m1.563-8.864c4.924.869 6.14-6.025 1.215-6.893m-1.215 6.893-3.94-.694m5.155-6.2L8.29 4.26m5.908 1.042.348-1.97M7.48 20.364l3.126-17.727",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},bank:{viewBox:"0 0 24 24",path:"M3 21h18M4 21V10M8 21V10M12 21V10M16 21V10M20 21V10M12 3L2 8h20z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},vault:{viewBox:"0 0 24 24",path:"M3 5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5zM12 12m-3 0a3 3 0 1 0 6 0 3 3 0 1 0-6 0M7 12h2M15 12h2M12 9V7M12 17v-2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"piggy-bank":{viewBox:"0 0 24 24",path:"M19 5c-1.5 0-2.8 1.4-3 2-3.5-1.5-11-.3-11 5 0 1.8 0 3 2 4.5V20h4v-2h3v2h4v-4c1-.5 1.7-1 2-2h2v-4h-2c0-1-.5-1.5-1-2zM2 9v1c0 1.1.9 2 2 2h1",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},safe:{viewBox:"0 0 24 24",path:"M4 4h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2zM12 12m-2 0a2 2 0 1 0 4 0 2 2 0 1 0-4 0M16 8h.01M16 16h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},receipt:{viewBox:"0 0 24 24",path:"M4 2v20l3-2 3 2 3-2 3 2 3-2 3 2V2l-3 2-3-2-3 2-3-2-3 2-3-2zM8 10h8M8 14h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},invoice:{viewBox:"0 0 24 24",path:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8zM14 2v6h6M8 13h8M8 17h8M8 9h2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},briefcase:{viewBox:"0 0 24 24",path:"M20 7H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2zM16 21V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},percent:{viewBox:"0 0 24 24",path:"M19 5L5 19M6.5 9a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5zM17.5 20a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},calculator:{viewBox:"0 0 24 24",path:"M18 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zM8 6h8M8 10h.01M12 10h.01M16 10h.01M8 14h.01M12 14h.01M16 14h.01M8 18h.01M12 18h.01M16 18h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},growth:{viewBox:"0 0 24 24",path:"M12 20V12M12 12l-4 4M12 12l4 4M8 20h8M3 8l4-4 4 4 5-5 5 5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},investment:{viewBox:"0 0 24 24",path:"M12 2v20M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6M2 12h4M18 12h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},scale:{viewBox:"0 0 24 24",path:"M12 3v18M3 6l3 10a6 6 0 0 0 6 0L15 6M9 6l6 0M21 6l-3 10a6 6 0 0 1-6 0",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},ie={"heart-pulse":{viewBox:"0 0 24 24",path:"M19.5 12.572l-7.5 7.428-7.5-7.428A5 5 0 1 1 12 5.006a5 5 0 1 1 7.5 7.566zM3 12h4l2-4 4 8 2-4h6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},activity:{viewBox:"0 0 24 24",path:"M22 12h-4l-3 9L9 3l-3 9H2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},pulse:{viewBox:"0 0 24 24",path:"M3 12h4l2-7 4 14 2-7h6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},pill:{viewBox:"0 0 24 24",path:"M10.5 20.5l9-9a4.95 4.95 0 0 0-7-7l-9 9a4.95 4.95 0 0 0 7 7zM8.5 8.5l7 7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"pill-bottle":{viewBox:"0 0 24 24",path:"M6 3h12v5H6zM5 8h14a1 1 0 0 1 1 1v11a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V9a1 1 0 0 1 1-1zM10 14h4M12 12v4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},capsule:{viewBox:"0 0 24 24",path:"M8 8a4 4 0 0 1 8 0v8a4 4 0 0 1-8 0V8zM8 12h8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},syringe:{viewBox:"0 0 24 24",path:"M18 2l4 4M15 5l6 6M8 6l10 10-4 4L4 10zM2 22l6-6M7 11l2 2M11 7l2 2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},vaccine:{viewBox:"0 0 24 24",path:"M14 2l4 4M8 8l8 8M3 17l4 4M6.5 6.5L20 20M12 12l2.5-2.5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},stethoscope:{viewBox:"0 0 24 24",path:"M4.8 2.3A.3.3 0 1 0 5 2H4a2 2 0 0 0-2 2v5a6 6 0 0 0 6 6v0a6 6 0 0 0 6-6V4a2 2 0 0 0-2-2h-1a.2.2 0 1 0 .3.3M8 15v1a6 6 0 0 0 6 6v0a6 6 0 0 0 6-6v-4M22 10a2 2 0 1 0-4 0 2 2 0 0 0 4 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"thermometer-medical":{viewBox:"0 0 24 24",path:"M14 4v10.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0zM12 14v2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},bandage:{viewBox:"0 0 24 24",path:"M18 2l4 4-14 14-4-4zM10.5 7.5l6 6M8.5 9.5l1 1M14.5 15.5l1 1M12.5 11.5l1 1",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},hospital:{viewBox:"0 0 24 24",path:"M3 21h18M5 21V7l7-4 7 4v14M9 21v-6h6v6M10 9h4M12 7v4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},ambulance:{viewBox:"0 0 24 24",path:"M10 10H6M8 8v4M15 21a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM7 21a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM21 15V8a2 2 0 0 0-2-2h-3l-2-3H6a2 2 0 0 0-2 2v10M21 9h-4a2 2 0 0 0-2 2v4h6z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"first-aid":{viewBox:"0 0 24 24",path:"M20 6H4a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2zM9 12h6M12 9v6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"medical-cross":{viewBox:"0 0 24 24",path:"M8 3h8v6h5v6h-5v6H8v-6H3V9h5z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},dna:{viewBox:"0 0 24 24",path:"M2 15c6.667-6 13.333 0 20-6M9 22c1.798-1.998 2.518-3.995 2.807-5.993M15 2c-1.798 1.998-2.518 3.995-2.807 5.993M2 9c6.667 6 13.333 0 20 6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},microscope:{viewBox:"0 0 24 24",path:"M6 18h8M3 22h18M14 22a7 7 0 1 0 0-14M9 14h.01M9 6v8M6 6h6l-3-4z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"test-tube":{viewBox:"0 0 24 24",path:"M14.5 2v17.5c0 1.4-1.1 2.5-2.5 2.5s-2.5-1.1-2.5-2.5V2M7 2h10M8.5 14h7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},brain:{viewBox:"0 0 24 24",path:"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18ZM12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18ZM12 5v13",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},lungs:{viewBox:"0 0 24 24",path:"M6.081 20C2.477 20 2 15.5 2 12.5S4 6 4 6s2-1 2-3M17.92 20c3.603 0 4.08-4.5 4.08-7.5S20 6 20 6s-2-1-2-3M12 3v17M12 12c-4 0-7-2-7-2M12 12c4 0 7-2 7-2M12 16c-4 0-7-2-7-2M12 16c4 0 7-2 7-2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},bone:{viewBox:"0 0 24 24",path:"M17 10c.7-.7 1.69 0 2.5 0a2.5 2.5 0 1 0 0-5 .5.5 0 0 1-.5-.5 2.5 2.5 0 1 0-5 0c0 .81.7 1.8 0 2.5l-7 7c-.7.7-1.69 0-2.5 0a2.5 2.5 0 0 0 0 5c.28 0 .5.22.5.5a2.5 2.5 0 1 0 5 0c0-.81-.7-1.8 0-2.5Z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},tooth:{viewBox:"0 0 24 24",path:"M12 2C7 2 4 5 4 8c0 5 1 8 2 10 .5 1 1 4 2.5 4s1.5-2 3.5-2 2 2 3.5 2 2-3 2.5-4c1-2 2-5 2-10 0-3-3-6-8-6z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"eye-medical":{viewBox:"0 0 24 24",path:"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8zM12 9v6M9 12h6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},wheelchair:{viewBox:"0 0 24 24",path:"M12 10a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM15 21a4 4 0 1 0-5-6M12 10v4h4l2 5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},crutch:{viewBox:"0 0 24 24",path:"M5 5l7 7M7 3l7 7M19 19l-7-7M21 17l-7-7M11 11l-6 6M13 13l-6 6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"scale-weight":{viewBox:"0 0 24 24",path:"M12 3a9 9 0 0 0-9 9 9 9 0 0 0 9 9 9 9 0 0 0 9-9 9 9 0 0 0-9-9zM12 7v5l3 3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"blood-drop":{viewBox:"0 0 24 24",path:"M12 2c-4 4-7 7-7 11a7 7 0 0 0 14 0c0-4-3-7-7-11z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},heartbeat:{viewBox:"0 0 24 24",path:"M3 12h4l3-9 4 18 3-9h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},se={football:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM12 6l4 4-4 4-4-4zM6 12l4-4v8zM18 12l-4 4V8z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},soccer:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM12 8l2.5 2-1 3h-3l-1-3zM12 2v3M22 12h-3M12 22v-3M2 12h3M4.93 4.93l2.12 2.12M19.07 4.93l-2.12 2.12M4.93 19.07l2.12-2.12M19.07 19.07l-2.12-2.12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},basketball:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM2.05 11h19.9M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},tennis:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM3.5 8.5c4-1 8 0 12 4M3.5 15.5c4 1 8 0 12-4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},baseball:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM5 5c1.5 2 2.5 4 2.5 7s-1 5-2.5 7M19 5c-1.5 2-2.5 4-2.5 7s1 5 2.5 7",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},volleyball:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM12 2v10M12 12l8.66 5M12 12l-8.66 5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},golf:{viewBox:"0 0 24 24",path:"M12 18v4M8 22h8M12 2v16M12 6l6-2-6 8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},bowling:{viewBox:"0 0 24 24",path:"M12 22a8 8 0 1 0 0-16 8 8 0 0 0 0 16zM12 6V2M10 9h.01M14 9h.01M12 12h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},dumbbell:{viewBox:"0 0 24 24",path:"M6.5 6.5h11M17.5 4v5M6.5 4v5M17.5 15v5M6.5 15v5M4 6v3a1 1 0 0 0 1 1h1.5M4 18v-3a1 1 0 0 1 1-1h1.5M20 6v3a1 1 0 0 1-1 1h-1.5M20 18v-3a1 1 0 0 0-1-1h-1.5M6.5 17.5h11",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},barbell:{viewBox:"0 0 24 24",path:"M4 12h16M6 8v8M10 6v12M14 6v12M18 8v8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},kettlebell:{viewBox:"0 0 24 24",path:"M12 6a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM17 22H7a5 5 0 0 1-1-9.9V10a6 6 0 0 1 12 0v2.1a5 5 0 0 1-1 9.9z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},running:{viewBox:"0 0 24 24",path:"M13 4a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM5 22l3-9 3 3v6M10 6l5 3 4-1M4 13l5 3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},swimming:{viewBox:"0 0 24 24",path:"M2 20c.9 0 1.6-.4 2.2-.9.8-.7 1.9-.7 2.7 0 1.1 1 2.8 1 3.9 0 .8-.7 1.9-.7 2.7 0 1.1 1 2.8 1 3.9 0 .8-.7 1.9-.7 2.7 0 .6.5 1.3.9 2.2.9M8 16l-2-4 4-2 6 4 4-3M15 4a2 2 0 1 0 0-4 2 2 0 0 0 0 4z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},cycling:{viewBox:"0 0 24 24",path:"M5 18a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM19 18a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM5 14l4-4 3 3 4-4M12 6a2 2 0 1 0 0-4 2 2 0 0 0 0 4z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},yoga:{viewBox:"0 0 24 24",path:"M12 4a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM4 17l4-4-2-4 6-3 6 3-2 4 4 4M8 22l4-5 4 5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},trophy:{viewBox:"0 0 24 24",path:"M6 9H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h2M18 9h2a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2h-2M6 3v6a6 6 0 0 0 12 0V3M12 15v4M8 22h8M8 19h8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},medal:{viewBox:"0 0 24 24",path:"M12 15a6 6 0 1 0 0 12 6 6 0 0 0 0-12zM8 3l4 6 4-6M8 3h8M12 9v6M9 19.5l3 1.5 3-1.5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},award:{viewBox:"0 0 24 24",path:"M12 15a7 7 0 1 0 0-14 7 7 0 0 0 0 14zM8.21 13.89L7 23l5-3 5 3-1.21-9.12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},crown:{viewBox:"0 0 24 24",path:"M2 17l3-10 5 6 2-8 2 8 5-6 3 10H2zM4 21h16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},podium:{viewBox:"0 0 24 24",path:"M5 10h4v12H5zM10 6h4v16h-4zM15 14h4v8h-4zM12 2v4M10 4h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},stopwatch:{viewBox:"0 0 24 24",path:"M12 5a9 9 0 1 0 0 18 9 9 0 0 0 0-18zM12 9v5l3 3M10 2h4M21 6l-2-2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},whistle:{viewBox:"0 0 24 24",path:"M5 16a4 4 0 1 0 8 0 4 4 0 0 0-8 0zM2 12l7-4h8l3 4-3 4M18 8l4-4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},target:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM12 6a6 6 0 1 0 0 12 6 6 0 0 0 0-12zM12 10a2 2 0 1 0 0 4 2 2 0 0 0 0-4z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"boxing-glove":{viewBox:"0 0 24 24",path:"M5 8c0-3 2-5 5-5h4c3 0 5 2 5 5v5c0 4-3 7-7 7s-7-3-7-7V8zM9 5v4M12 20v2M9 12h6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},racket:{viewBox:"0 0 24 24",path:"M12 2a6 6 0 0 0-6 6v4a6 6 0 0 0 12 0V8a6 6 0 0 0-6-6zM12 18v4M8 8h8M8 12h8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},skate:{viewBox:"0 0 24 24",path:"M4 16V6a2 2 0 0 1 2-2h8l4 4v8M2 16h18v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-2zM6 20v2M16 20v2M10 10h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},ski:{viewBox:"0 0 24 24",path:"M5 16l14-6M3 21l18-8M12 2a2 2 0 1 0 0 4 2 2 0 0 0 0-4zM12 8l-4 8M14 10l2 4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},surfboard:{viewBox:"0 0 24 24",path:"M21 3L3 21M17 3c3 3 4 8 1 15L3 21c7-3 12-2 15 1M12 12l-4 4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},mountain:{viewBox:"0 0 24 24",path:"M8 21l4-10 3 6 2-4 4 8H3l5-10 4 10z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},tent:{viewBox:"0 0 24 24",path:"M12 2L2 20h20L12 2zM12 2v18M7 14l5-6 5 6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},compass:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM16.24 7.76l-2.12 6.36-6.36 2.12 2.12-6.36z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},fishing:{viewBox:"0 0 24 24",path:"M18 2l-3 3v3l-4 4-5-2-4 4v5h5l4-4-2-5 4-4h3l3-3M12 22c-2 0-3-1-3-3M9 19c-2 0-3-1-3-3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},re={house:{viewBox:"0 0 24 24",path:"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V9zM9 22V12h6v10",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},home:{viewBox:"0 0 24 24",path:"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V9z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},cabin:{viewBox:"0 0 24 24",path:"M2 20h20M4 20V10l8-8 8 8v10M10 20v-6h4v6M12 2v2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},apartment:{viewBox:"0 0 24 24",path:"M4 21V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v17M8 6h2M14 6h2M8 10h2M14 10h2M8 14h2M14 14h2M10 21v-4h4v4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},office:{viewBox:"0 0 24 24",path:"M3 21h18M5 21V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v16M9 21v-4h6v4M9 7h.01M15 7h.01M9 11h.01M15 11h.01M9 15h.01M15 15h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},store:{viewBox:"0 0 24 24",path:"M4 3h16l1 6H3l1-6zM3 9v10a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V9M10 21v-6h4v6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},warehouse:{viewBox:"0 0 24 24",path:"M3 21h18M4 21V8l8-5 8 5v13M9 17h6v4H9zM9 12h6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},factory:{viewBox:"0 0 24 24",path:"M2 21h20M5 21V11l6 4V9l6 4V5a2 2 0 0 1 2-2h0a2 2 0 0 1 2 2v16M8 21v-3M12 21v-3M16 21v-3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},hotel:{viewBox:"0 0 24 24",path:"M4 21V3a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v18M8 5h2M14 5h2M8 9h2M14 9h2M8 13h2M14 13h2M10 21v-4h4v4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},school:{viewBox:"0 0 24 24",path:"M2 22h20M12 2l10 6v14M2 8l10-6M12 8v14M4 10v12M20 10v12M8 14h.01M16 14h.01M10 22v-4h4v4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},university:{viewBox:"0 0 24 24",path:"M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},library:{viewBox:"0 0 24 24",path:"M4 21h16M5 21V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v16M9 7h6M9 11h6M9 15h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},museum:{viewBox:"0 0 24 24",path:"M2 20h20M4 20V10M20 20V10M12 2L2 8h20L12 2zM8 20v-6h3v6M13 20v-6h3v6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},court:{viewBox:"0 0 24 24",path:"M2 20h20M4 20V8l8-6 8 6v12M10 20v-6h4v6M6 10h12M12 4v6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},church:{viewBox:"0 0 24 24",path:"M18 22H6a2 2 0 0 1-2-2V9l8-7 8 7v11a2 2 0 0 1-2 2zM12 2v4M10 4h4M10 22v-5a2 2 0 0 1 4 0v5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},mosque:{viewBox:"0 0 24 24",path:"M3 21h18M5 21v-8c0-2 .5-4 2-6 1.5 2 2 4 2 6v8M15 21v-8c0-2 .5-4 2-6 1.5 2 2 4 2 6v8M12 3a4 4 0 0 1 4 4v14M12 3a4 4 0 0 0-4 4v14M12 1v2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},temple:{viewBox:"0 0 24 24",path:"M2 22h20M4 22V12h4v10M16 22V12h4v10M8 22V8h8v14M12 2l6 6H6l6-6M10 14h4M10 18h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},castle:{viewBox:"0 0 24 24",path:"M2 22h20M4 22V10h4V6H6V2h3v2h2V2h2v2h2V2h3v4h-2v4h4v12M10 22v-5h4v5M4 6h4M16 6h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},fortress:{viewBox:"0 0 24 24",path:"M2 20h20M4 20V8h16v12M8 8V4h2v4M14 8V4h2v4M4 4h4M16 4h4M8 20v-4h3v4M13 20v-4h3v4M7 12h2M15 12h2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},tower:{viewBox:"0 0 24 24",path:"M8 22V4a4 4 0 0 1 8 0v18M8 8h8M8 14h8M10 22v-4h4v4M12 1v1",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},lighthouse:{viewBox:"0 0 24 24",path:"M7 22l2-16h6l2 16M9 6V3a3 3 0 0 1 6 0v3M2 11h5M17 11h5M9 12h6M10 18h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},bridge:{viewBox:"0 0 24 24",path:"M2 18h20M4 14c0-2 2-4 4-4s4 2 4 4c0-2 2-4 4-4s4 2 4 4M4 18v-4M20 18v-4M12 18v-4M8 10V6M16 10V6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},stadium:{viewBox:"0 0 24 24",path:"M2 16c0-3 4.5-5 10-5s10 2 10 5v2c0 3-4.5 5-10 5s-10-2-10-5v-2zM2 12c0-3 4.5-5 10-5s10 2 10 5M12 3v4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},airport:{viewBox:"0 0 24 24",path:"M21 16v-2l-8-5V3.5a1.5 1.5 0 0 0-3 0V9l-8 5v2l8-2.5V19l-2 1.5V22l3.5-1 3.5 1v-1.5L13 19v-5.5z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"train-station":{viewBox:"0 0 24 24",path:"M4 21h16M6 17V7a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v10M8 21v-4h3v4M13 21v-4h3v4M12 2v3M9 9h6M9 13h6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},monument:{viewBox:"0 0 24 24",path:"M8 22h8M10 22V10L12 2l2 8v12M6 18h12M8 14h8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},obelisk:{viewBox:"0 0 24 24",path:"M7 22l2-18h6l2 18M12 2l-1 2h2l-1-2M9 8h6M9 14h6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},arch:{viewBox:"0 0 24 24",path:"M4 22V10a8 8 0 0 1 16 0v12M4 8h16M4 14h16M8 22v-8M16 22v-8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},windmill:{viewBox:"0 0 24 24",path:"M7 22l3-10h4l3 10M12 12V3M12 6l6-3M12 6L6 3M12 6l6 3M12 6L6 9M10 16h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},skyscraper:{viewBox:"0 0 24 24",path:"M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18M2 22h20M10 6h4M10 10h4M10 14h4M10 18h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},pyramid:{viewBox:"0 0 24 24",path:"M12 2L2 22h20L12 2zM12 2v20M7 12h10",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},dome:{viewBox:"0 0 24 24",path:"M2 22h20M4 22v-6a8 8 0 0 1 16 0v6M12 2v6M12 2a3 3 0 0 1 0 6M10 14h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},barn:{viewBox:"0 0 24 24",path:"M3 21h18M5 21V11l7-8 7 8v10M10 21v-5h4v5M9 11h6M12 3v2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},ae={smile:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M16 9h.01M8 14s1.5 2 4 2 4-2 4-2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},grin:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M16 9h.01M6 13a6 6 0 0 0 12 0H6z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},laugh:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM7 9c0-.6.4-1 1-1s1 .4 1 1M15 9c0-.6.4-1 1-1s1 .4 1 1M7 13h10a5 5 0 0 1-10 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},joy:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM7 9l2 1M15 9l2 1M6 13h12a6 6 0 0 1-12 0z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},wink:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M14 9h4M8 14s1.5 2 4 2 4-2 4-2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},blush:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M16 9h.01M8 14s1.5 2 4 2 4-2 4-2M5 13h2M17 13h2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"heart-eyes":{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 14s1.5 2 4 2 4-2 4-2M6.5 10c.5-1 1.5-2 2.5-1s-1 2.5-2.5 1zM15 10c.5-1 1.5-2 2.5-1s-1 2.5-2.5 1z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"star-eyes":{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 14s1.5 2 4 2 4-2 4-2M8 9l.5-1 .5 1 1-.5-.5 1 .5 1-1-.5-.5 1-.5-1-1 .5.5-1-.5-1zM16 9l.5-1 .5 1 1-.5-.5 1 .5 1-1-.5-.5 1-.5-1-1 .5.5-1-.5-1z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},sad:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M16 9h.01M16 16s-1.5-2-4-2-4 2-4 2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},cry:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M16 9h.01M16 16s-1.5-2-4-2-4 2-4 2M8 11v2M16 11v2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},sob:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM6 9l3 1M18 9l-3 1M16 17s-1.5-2-4-2-4 2-4 2M7 12l1 6M17 12l-1 6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},disappointed:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM6 8l4 2M18 8l-4 2M16 16s-1.5-2-4-2-4 2-4 2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},angry:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM6 8l4 2M18 8l-4 2M9 15h6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},rage:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM5 7l5 3M19 7l-5 3M9 16h6M9 16l1-2M15 16l-1-2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},annoyed:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM6 8l4 1M18 8l-4 1M8 9h.01M16 9h.01M9 15h6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},surprised:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 8v1M16 8v1M12 13a2 2 0 1 0 0 4 2 2 0 0 0 0-4z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},shocked:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM7 8l2 1M17 8l-2 1M12 13v5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},astonished:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM6 8l4 1M18 8l-4 1M12 12a3 3 0 1 0 0 6 3 3 0 0 0 0-6z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},thinking:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M16 9h.01M10 15h4c0 1-1 2-2 2s-2-1-2-2zM19 9c1 0 2-1 2-2s-1-2-2-2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},confused:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M16 9h.01M9 15c2-2 4 0 6-2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},neutral:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M16 9h.01M8 15h8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},expressionless:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM7 9h3M14 9h3M8 15h8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},cool:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM5 10h5l1-2h2l1 2h5M5 10c0 1 1 2 2.5 2s2.5-1 2.5-2M14 10c0 1 1 2 2.5 2s2.5-1 2.5-2M8 16s1.5 2 4 2 4-2 4-2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},nerd:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM6 9a2 2 0 1 0 4 0 2 2 0 0 0-4 0zM14 9a2 2 0 1 0 4 0 2 2 0 0 0-4 0zM10 9h4M8 15s1.5 1 4 1 4-1 4-1",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},tongue:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M16 9h.01M8 13h8M10 13v3c0 1 1 2 2 2s2-1 2-2v-3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},silly:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM7 9h2M17 9l-2-1M7 13c2 0 3 3 5 3s3-3 5-3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},zany:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 8v2M15 8l2 2M8 14h8c0 2-2 4-4 4s-4-2-4-4z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},sick:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M16 9h.01M8 15c2 1 6-1 8 0M18 5c1.5 1.5 1.5 3.5 0 5",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},sleepy:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM7 10c.5-.5 1.5-.5 2 0M15 10c.5-.5 1.5-.5 2 0M12 14a2 2 0 1 0 0 4 2 2 0 0 0 0-4zM18 4l2 2M20 4h-2v2",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},dead:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM6 8l4 4M10 8l-4 4M14 8l4 4M18 8l-4 4M8 16h8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},mask:{viewBox:"0 0 24 24",path:"M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM8 9h.01M16 9h.01M4 13h16M5 14c1 2 3 4 7 4s6-2 7-4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}},le={car:{viewBox:"0 0 24 24",path:"M5 11l1.5-4.5h11L19 11M5 17h1m13 0h1M6 13v4m12-4v4M5 17h14a1 1 0 001-1v-5H4v5a1 1 0 001 1z M7.5 6.5l.5 1h8l.5-1a1 1 0 00-1-1H8.5a1 1 0 00-1 1z M7 16a1 1 0 100-2 1 1 0 000 2z M17 16a1 1 0 100-2 1 1 0 000 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},truck:{viewBox:"0 0 24 24",path:"M1 3h15v13H1zM16 8h4l3 3v5h-7V8z M5.5 21a2.5 2.5 0 100-5 2.5 2.5 0 000 5z M18.5 21a2.5 2.5 0 100-5 2.5 2.5 0 000 5z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},van:{viewBox:"0 0 24 24",path:"M3 6h13v11H3z M16 6h2l3 4v7h-5V6z M7 20.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z M17 20.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z M3 10h13",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},motorcycle:{viewBox:"0 0 24 24",path:"M5 19a3 3 0 100-6 3 3 0 000 6z M19 19a3 3 0 100-6 3 3 0 000 6z M12 4l-3 7h5.5L18 8m-4 3l3 8",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},bicycle:{viewBox:"0 0 24 24",path:"M5 19a3 3 0 100-6 3 3 0 000 6z M19 19a3 3 0 100-6 3 3 0 000 6z M12 11l2-5h3M12 19v-8m0 0L9 8M12 11l3-3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},bus:{viewBox:"0 0 24 24",path:"M4 6a2 2 0 012-2h12a2 2 0 012 2v11a3 3 0 01-3 3H7a3 3 0 01-3-3V6z M4 10h16M8 20v-2M16 20v-2M8 14h.01M16 14h.01M4 6h16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},taxi:{viewBox:"0 0 24 24",path:"M5 11l1.5-4.5h11L19 11M5 17h1m13 0h1M6 13v4m12-4v4M5 17h14a1 1 0 001-1v-5H4v5a1 1 0 001 1z M9 4h6v2H9V4z M7 16a1 1 0 100-2 1 1 0 000 2z M17 16a1 1 0 100-2 1 1 0 000 2z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},parking:{viewBox:"0 0 24 24",path:"M4 4h16a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V6a2 2 0 012-2z M9 8v8M9 8h3.5a2.5 2.5 0 010 5H9",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},fuel:{viewBox:"0 0 24 24",path:"M3 4h10v12H3z M13 7h2a2 2 0 012 2v7a2 2 0 002 2M14 7V4M3 10h10M5 20v-4M11 20v-4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},garage:{viewBox:"0 0 24 24",path:"M2 9l10-7 10 7v11a2 2 0 01-2 2H4a2 2 0 01-2-2V9z M7 21V13h10v8M2 9h20",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},road:{viewBox:"0 0 24 24",path:"M6 4h2v16H6zM16 4h2v16h-2zM12 4v4M12 12v4M12 20v1",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}};var he={code:{viewBox:"0 0 24 24",path:"M16 18l6-6-6-6M8 6l-6 6 6 6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},bold:{viewBox:"0 0 24 24",path:"M6 4h8a4 4 0 0 1 4 4 4 4 0 0 1-4 4H6V4zm0 8h9a4 4 0 0 1 4 4 4 4 0 0 1-4 4H6v-8z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},italic:{viewBox:"0 0 24 24",path:"M19 4h-9M14 20H5M15 4L9 20",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},underline:{viewBox:"0 0 24 24",path:"M6 3v7a6 6 0 0 0 6 6 6 6 0 0 0 6-6V3M4 21h16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},strikethrough:{viewBox:"0 0 24 24",path:"M17.3 4.9c-2.3-.6-4.4-1-6.2-.9-2.7.1-5.3 1.1-6.6 3.1-.5.8-.7 1.7-.7 2.6 0 1.7.8 3.1 2 4M3 12h18M13 20c2 0 3.5-.5 4.5-1.5 1-.9 1.5-2.2 1.5-3.5 0-1.3-.5-2.5-1.4-3.4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"heading-1":{viewBox:"0 0 24 24",path:"M4 12h8m-8 6V6m8 12V6m5 6h3m0 0V6m0 6v6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"heading-2":{viewBox:"0 0 24 24",path:"M4 12h8m-8 6V6m8 12V6m5 10.5c0-2.5 4-2.5 4 0s-4 2.5-4 5m4 0h-4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"heading-3":{viewBox:"0 0 24 24",path:"M4 12h8m-8 6V6m8 12V6m5 4.5h3a1.5 1.5 0 0 1 0 3 1.5 1.5 0 0 1 0 3h-3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"list-bullet":{viewBox:"0 0 24 24",path:"M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"list-numbered":{viewBox:"0 0 24 24",path:"M10 6h11M10 12h11M10 18h11M4 6h1v4M4 10h2M6 18H4c0-1 2-2 2-3s-1-1.5-2-1",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},quote:{viewBox:"0 0 24 24",path:"M3 21c3 0 7-1 7-8V5c0-1.25-.756-2.017-2-2H4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2 1 0 1 0 1 1v1c0 1-1 2-2 2s-1 .008-1 1.031V20c0 1 0 1 1 1zM15 21c3 0 7-1 7-8V5c0-1.25-.757-2.017-2-2h-4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2h.75c0 2.25.25 4-2.75 4v3c0 1 0 1 1 1z",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"code-inline":{viewBox:"0 0 24 24",path:"M16 18l6-6-6-6M8 6l-6 6 6 6",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"code-block":{viewBox:"0 0 24 24",path:"M16 18l6-6-6-6M8 6l-6 6 6 6M14 4l-4 16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"link-add":{viewBox:"0 0 24 24",path:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"image-add":{viewBox:"0 0 24 24",path:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4M17 8l-5-5-5 5M12 3v12",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},undo:{viewBox:"0 0 24 24",path:"M3 7v6h6M21 17a9 9 0 0 0-9-9 9 9 0 0 0-9 9",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},redo:{viewBox:"0 0 24 24",path:"M21 7v6h-6M3 17a9 9 0 0 1 9-9 9 9 0 0 1 9 9",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"text-left":{viewBox:"0 0 24 24",path:"M3 6h18M3 12h12M3 18h18",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"text-center":{viewBox:"0 0 24 24",path:"M3 6h18M6 12h12M3 18h18",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"text-right":{viewBox:"0 0 24 24",path:"M3 6h18M9 12h12M3 18h18",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},indent:{viewBox:"0 0 24 24",path:"M3 6h18M3 12h18M3 18h18M3 9l4 3-4 3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},outdent:{viewBox:"0 0 24 24",path:"M3 6h18M3 12h18M3 18h18M7 9l-4 3 4 3",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},embed:{viewBox:"0 0 24 24",path:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v10zM8 10h8M8 14h4",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},"clear-format":{viewBox:"0 0 24 24",path:"M4 7V4h16v3M9 20h6M12 4v16",stroke:"currentColor",fill:"none",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}};const ce={...K,...U,...Y,...J,...Q,...Z,...X,...G,...ee,...te,...oe,...ne,...ie,...se,...re,...ae,...le,...he},de={ui:{name:"UI",description:"Core user interface icons",icons:Object.keys(K)},communication:{name:"Communication",description:"Messaging and notifications",icons:Object.keys(U)},media:{name:"Media",description:"Audio, video, and images",icons:Object.keys(Y)},files:{name:"Files",description:"Documents and file operations",icons:Object.keys(J)},social:{name:"Social",description:"Social interactions and sharing",icons:Object.keys(Q)},commerce:{name:"Commerce",description:"Shopping and payments",icons:Object.keys(Z)},status:{name:"Status",description:"Indicators and alerts",icons:Object.keys(X)},navigation:{name:"Navigation",description:"Directional and navigation",icons:Object.keys(G)},seasonal:{name:"Seasonal",description:"Festive and holiday icons",icons:Object.keys(ee)},weather:{name:"Weather",description:"Weather conditions and meteorology",icons:Object.keys(te)},devices:{name:"Devices",description:"Electronic devices and hardware",icons:Object.keys(oe)},finance:{name:"Finance",description:"Financial and charts",icons:Object.keys(ne)},health:{name:"Health",description:"Medical and wellness",icons:Object.keys(ie)},sport:{name:"Sport",description:"Sports and fitness",icons:Object.keys(se)},buildings:{name:"Buildings",description:"Architecture and structures",icons:Object.keys(re)},emojis:{name:"Emojis",description:"Emoji expressions and faces",icons:Object.keys(ae)},transport:{name:"Transport",description:"Vehicles and transportation",icons:Object.keys(le)},code:{name:"Code & Editor",description:"Text editing, formatting, and code icons",icons:Object.keys(he)}},ue="http://www.w3.org/2000/svg";const pe=new class{constructor(){this._icons={...ce},this._categories={...de}}render(e,t={}){const o=this._icons[e];if(!o)return console.warn(`Icon "${e}" not found`),null;const{size:n=24,class:i="",colour:s=null,color:r=null,attrs:a={}}=t,l=document.createElementNS(ue,"svg");l.setAttribute("viewBox",o.viewBox||"0 0 24 24"),l.setAttribute("width",n),l.setAttribute("height",n),l.setAttribute("fill",o.fill||"none"),l.setAttribute("aria-hidden","true");const h=["dm-icon"];if(i&&h.push(i),l.setAttribute("class",h.join(" ")),o.stroke&&l.setAttribute("stroke",s||r||o.stroke),o.strokeWidth&&l.setAttribute("stroke-width",o.strokeWidth),o.strokeLinecap&&l.setAttribute("stroke-linecap",o.strokeLinecap),o.strokeLinejoin&&l.setAttribute("stroke-linejoin",o.strokeLinejoin),(s||r)&&"currentColor"===o.fill&&l.setAttribute("fill",s||r),Object.entries(a).forEach(([e,t])=>{l.setAttribute(e,t)}),o.path){const e=document.createElementNS(ue,"path");e.setAttribute("d",o.path),"currentColor"===o.fill&&e.setAttribute("fill",s||r||"currentColor"),l.appendChild(e)}return o.paths&&o.paths.forEach(e=>{const t=document.createElementNS(ue,"path");t.setAttribute("d",e),"currentColor"===o.fill&&t.setAttribute("fill",s||r||"currentColor"),l.appendChild(t)}),l}html(e,t={}){const o=this.render(e,t);if(!o)return"";const n=document.createElement("div");return n.appendChild(o),n.innerHTML}inject(e,t,o={}){const{position:n="prepend",...i}=o,s="string"==typeof e?document.querySelector(e):e;if(!s)return console.warn(`Target element not found: ${e}`),null;const r=this.render(t,i);if(!r)return null;switch(n){case"append":s.appendChild(r);break;case"replace":s.innerHTML="",s.appendChild(r);break;default:s.insertBefore(r,s.firstChild)}return r}scan(e=document){const t="string"==typeof e?document.querySelector(e):e;if(!t)return 0;const o=t.querySelectorAll("[data-icon]");let n=0;return o.forEach(e=>{const t=e.dataset.icon,o=parseInt(e.dataset.iconSize,10)||24,i=e.dataset.iconColour||e.dataset.iconColor||null,s=e.dataset.iconClass||"",r=this.render(t,{size:o,colour:i,class:s});if(r){const t=e.className;t&&r.classList.add(...t.split(" ").filter(e=>e)),e.replaceWith(r),n++}}),n}register(e,t){return e&&t?(t.viewBox||(t.viewBox="0 0 24 24"),t.path||t.paths?(this._icons[e]=t,this._categories.custom||(this._categories.custom={name:"Custom",description:"Custom registered icons",icons:[]}),this._categories.custom.icons.push(e),this):(console.warn(`Icon "${e}" must have a path or paths property`),this)):(console.warn("Invalid icon registration: name and definition required"),this)}unregister(e){if(this._icons[e]){if(delete this._icons[e],this._categories.custom){const t=this._categories.custom.icons.indexOf(e);t>-1&&this._categories.custom.icons.splice(t,1)}return!0}return!1}has(e){return!!this._icons[e]}get(e){return this._icons[e]||null}list(e=null){return e&&this._categories[e]?[...this._categories[e].icons]:Object.keys(this._icons)}listCategories(){return{...this._categories}}count(){return Object.keys(this._icons).length}search(e){const t=e.toLowerCase();return Object.keys(this._icons).filter(e=>e.toLowerCase().includes(t))}createSprite(){const e=document.createElementNS(ue,"svg");return e.setAttribute("xmlns",ue),e.style.display="none",Object.entries(this._icons).forEach(([t,o])=>{const n=document.createElementNS(ue,"symbol");if(n.setAttribute("id",`dm-icon-${t}`),n.setAttribute("viewBox",o.viewBox||"0 0 24 24"),o.path){const e=document.createElementNS(ue,"path");e.setAttribute("d",o.path),o.fill&&e.setAttribute("fill",o.fill),o.stroke&&(e.setAttribute("stroke",o.stroke),o.strokeWidth&&e.setAttribute("stroke-width",o.strokeWidth),o.strokeLinecap&&e.setAttribute("stroke-linecap",o.strokeLinecap),o.strokeLinejoin&&e.setAttribute("stroke-linejoin",o.strokeLinejoin)),n.appendChild(e)}o.paths&&o.paths.forEach(e=>{const t=document.createElementNS(ue,"path");t.setAttribute("d",e),o.fill&&t.setAttribute("fill",o.fill),o.stroke&&t.setAttribute("stroke",o.stroke),n.appendChild(t)}),e.appendChild(n)}),e}use(e,t={}){if(!this._icons[e])return console.warn(`Icon "${e}" not found`),null;const{size:o=24,class:n=""}=t,i=document.createElementNS(ue,"svg");i.setAttribute("width",o),i.setAttribute("height",o),i.setAttribute("aria-hidden","true");const s=["dm-icon"];n&&s.push(n),i.setAttribute("class",s.join(" "));const r=document.createElementNS(ue,"use");return r.setAttributeNS("http://www.w3.org/1999/xlink","href",`#dm-icon-${e}`),i.appendChild(r),i}};class me{static stripeColors={none:"transparent",lighter:"var(--dm-gray-100, #f8f9fa)",light:"var(--dm-gray-200, #e9ecef)",medium:"var(--dm-gray-300, #dee2e6)",dark:"var(--dm-gray-400, #ced4da)","primary-tint":"rgba(100, 149, 237, 0.05)","success-tint":"rgba(40, 167, 69, 0.05)","warning-tint":"rgba(255, 193, 7, 0.05)","danger-tint":"rgba(220, 53, 69, 0.05)","info-tint":"rgba(23, 162, 184, 0.05)",default:"#f9f9f9"};static hoverColors={none:"transparent",lighter:"var(--dm-gray-200, #e9ecef)",light:"var(--dm-gray-300, #dee2e6)",medium:"var(--dm-gray-400, #ced4da)",dark:"var(--dm-gray-500, #adb5bd)",default:"#f0f0f0"};constructor(e,t={}){this.element="string"==typeof e?document.querySelector(e):e,this.options={data:[],columns:[],rowKey:"id",sortable:!0,multiSort:!1,defaultSort:null,filterable:!0,searchable:!0,searchPlaceholder:"Search...",pagination:!0,pageSize:10,pageSizeOptions:[10,25,50,100],selectable:!1,selectionMode:"single",editable:!1,editMode:"cell",resizable:!0,striped:!0,hover:!0,bordered:!0,responsive:!0,evenRowColor:null,oddRowColor:null,hoverColor:null,classes:{wrapper:"domma-table-wrapper",table:"domma-table",header:"domma-table-header",body:"domma-table-body",row:"domma-table-row",cell:"domma-table-cell",selected:"domma-table-selected",sorted:"domma-table-sorted",sortAsc:"domma-table-sort-asc",sortDesc:"domma-table-sort-desc",pagination:"domma-table-pagination",search:"domma-table-search"},exportPanel:!1,exportOptions:["copy","csv","excel","json"],columnToggle:!1,regexSearch:!1,onSort:null,onFilter:null,onPageChange:null,onSelect:null,onEdit:null,onRender:null,onExport:null,...t},this._originalData=[...this.options.data],this._data=[...this.options.data],this._filteredData=[...this._data],this._currentPage=1,this._pageSize=this.options.pageSize,this._sorts=[],this._filters=[],this._searchQuery="",this._selected=new Set,this._editingCell=null,this._eventListeners=new Map,this._columnDropdownOpen=!1,this._searchIsRegex=!1,this._columns=this.options.columns.map(e=>({key:e.key||e,title:e.title||e.key||e,sortable:!1!==e.sortable&&this.options.sortable,filterable:!1!==e.filterable,editable:e.editable||!1,width:e.width||null,render:e.render||null,filterOptions:e.filterOptions||null,visible:!1!==e.visible})),this._init()}_init(){this.element&&(this.options.defaultSort&&(this._sorts=[this.options.defaultSort]),this.render())}_resolveColor(e,t,o){return e?t[e]?t[e]:e.startsWith("#")||e.startsWith("rgb")||e.startsWith("hsl")||e.startsWith("var(")?e:o:o}_getRowColors(e){const t=this.options;if(!t.striped)return{background:"transparent",hover:t.hover?this._resolveColor(t.hoverColor,me.hoverColors,me.hoverColors.default):"transparent"};const o=e%2==1,n=this._resolveColor(t.evenRowColor,me.stripeColors,"transparent"),i=this._resolveColor(t.oddRowColor,me.stripeColors,me.stripeColors.default);return{background:o?i:n,hover:t.hover?this._resolveColor(t.hoverColor,me.hoverColors,me.hoverColors.default):null}}setData(e){return this._originalData=[...e],this._data=[...e],this._applyFiltersAndSort(),this._currentPage=1,this.render(),this}getData(){return[...this._getPageData()]}getFilteredData(){return[...this._filteredData]}getOriginalData(){return[...this._originalData]}addRow(e){return this._originalData.push(e),this._data.push(e),this._applyFiltersAndSort(),this.render(),this}updateRow(e,t){const o=this._findRowIndex(e);return-1!==o&&(this._originalData[o]={...this._originalData[o],...t},this._data[o]={...this._data[o],...t},this._applyFiltersAndSort(),this.render()),this}removeRow(e){const t=this._findRowIndex(e);return-1!==t&&(this._originalData.splice(t,1),this._data.splice(t,1),this._applyFiltersAndSort(),this.render()),this}_findRowIndex(e){const t=this.options.rowKey;return"number"==typeof e?e:this._originalData.findIndex(o=>o[t]===e)}sort(e,t="asc"){return this._sorts=[{column:e,direction:t}],this._applyFiltersAndSort(),this.render(),this.options.onSort&&this.options.onSort({column:e,direction:t,sorts:this._sorts}),this}sortMultiple(e){return this._sorts=e,this._applyFiltersAndSort(),this.render(),this.options.onSort&&this.options.onSort({sorts:this._sorts}),this}clearSort(){return this._sorts=[],this._applyFiltersAndSort(),this.render(),this}_applySort(e){return 0===this._sorts.length?e:[...e].sort((e,t)=>{for(const o of this._sorts){const{column:n,direction:i}=o,s=e[n],r=t[n];let a=0;if(null==s?a=1:null==r||s<r?a=-1:s>r&&(a=1),0!==a)return"desc"===i?-a:a}return 0})}search(e){return this._searchQuery=this._searchIsRegex?e.trim():e.toLowerCase().trim(),this._applyFiltersAndSort(),this._currentPage=1,this.render(),this.options.onFilter&&this.options.onFilter({query:e,type:"search",isRegex:this._searchIsRegex}),this}setSearchMode(e){return this._searchIsRegex=e,this._searchQuery&&(this._applyFiltersAndSort(),this.render()),this}toggleSearchMode(){return this.setSearchMode(!this._searchIsRegex)}filter(e,t,o="equals"){return this._filters=this._filters.filter(t=>t.column!==e),null!=t&&""!==t&&this._filters.push({column:e,value:t,operator:o}),this._applyFiltersAndSort(),this._currentPage=1,this.render(),this.options.onFilter&&this.options.onFilter({column:e,value:t,operator:o,type:"column"}),this}filterBy(e){return this._customFilter=e,this._applyFiltersAndSort(),this._currentPage=1,this.render(),this}clearFilters(){return this._filters=[],this._searchQuery="",this._customFilter=null,this._applyFiltersAndSort(),this._currentPage=1,this.render(),this}_applyFilters(e){let t=e;if(this._searchQuery)if(this._searchIsRegex)try{const e=new RegExp(this._searchQuery,"i");t=t.filter(t=>this._columns.some(o=>{const n=t[o.key];return null!=n&&e.test(String(n))}))}catch(e){t=[]}else t=t.filter(e=>this._columns.some(t=>{const o=e[t.key];return null!=o&&String(o).toLowerCase().includes(this._searchQuery)}));for(const e of this._filters)t=t.filter(t=>{const o=t[e.column];return this._matchFilter(o,e.value,e.operator)});return this._customFilter&&(t=t.filter(this._customFilter)),t}_matchFilter(e,t,o){if(null==e)return!1;const n=String(e).toLowerCase(),i=String(t).toLowerCase();switch(o){case"equals":default:return n===i;case"contains":return n.includes(i);case"startsWith":return n.startsWith(i);case"endsWith":return n.endsWith(i);case"gt":return Number(e)>Number(t);case"lt":return Number(e)<Number(t);case"gte":return Number(e)>=Number(t);case"lte":return Number(e)<=Number(t);case"between":const[o,s]=t,r=Number(e);return r>=o&&r<=s;case"in":return t.includes(e)}}_applyFiltersAndSort(){this._filteredData=this._applyFilters(this._data),this._filteredData=this._applySort(this._filteredData)}page(e){const t=this._getTotalPages();return this._currentPage=Math.max(1,Math.min(e,t)),this.render(),this.options.onPageChange&&this.options.onPageChange(this.pageInfo()),this}pageSize(e){return this._pageSize=e,this._currentPage=1,this.render(),this}nextPage(){return this.page(this._currentPage+1)}prevPage(){return this.page(this._currentPage-1)}firstPage(){return this.page(1)}lastPage(){return this.page(this._getTotalPages())}pageInfo(){const e=this._getTotalPages();return{page:this._currentPage,pageSize:this._pageSize,totalPages:e,totalRows:this._filteredData.length,startRow:(this._currentPage-1)*this._pageSize+1,endRow:Math.min(this._currentPage*this._pageSize,this._filteredData.length)}}_getTotalPages(){return this.options.pagination&&Math.ceil(this._filteredData.length/this._pageSize)||1}_getPageData(){if(!this.options.pagination)return this._filteredData;const e=(this._currentPage-1)*this._pageSize,t=e+this._pageSize;return this._filteredData.slice(e,t)}select(e){if(!this.options.selectable)return this;const t=this.options.rowKey,o="object"==typeof e?e[t]:e;return"single"===this.options.selectionMode&&this._selected.clear(),this._selected.add(o),this.render(),this.options.onSelect&&this.options.onSelect(this.getSelected()),this}deselect(e){const t=this.options.rowKey,o="object"==typeof e?e[t]:e;return this._selected.delete(o),this.render(),this.options.onSelect&&this.options.onSelect(this.getSelected()),this}toggleSelect(e){const t=this.options.rowKey,o="object"==typeof e?e[t]:e;return this._selected.has(o)?this.deselect(e):this.select(e),this}selectAll(){if(!this.options.selectable||"single"===this.options.selectionMode)return this;const e=this.options.rowKey;for(const t of this._filteredData)this._selected.add(t[e]);return this.render(),this.options.onSelect&&this.options.onSelect(this.getSelected()),this}deselectAll(){return this._selected.clear(),this.render(),this.options.onSelect&&this.options.onSelect([]),this}getSelected(){const e=this.options.rowKey;return this._filteredData.filter(t=>this._selected.has(t[e]))}isSelected(e){const t=this.options.rowKey,o="object"==typeof e?e[t]:e;return this._selected.has(o)}showColumn(e){const t=this._columns.find(t=>t.key===e);return t&&(t.visible=!0,this.render()),this}hideColumn(e){const t=this._columns.find(t=>t.key===e);return t&&(t.visible=!1,this.render()),this}toggleColumn(e){const t=this._columns.find(t=>t.key===e);return t&&(t.visible=!t.visible,this.render()),this}getVisibleColumns(){return this._columns.filter(e=>e.visible)}getHiddenColumns(){return this._columns.filter(e=>!e.visible)}resizeColumn(e,t){const o=this._columns.find(t=>t.key===e);return o&&(o.width=t,this.render()),this}getColumns(){return[...this._columns]}editCell(e,t){return this.options.editable?(this._editingCell={rowIndex:e,column:t},this.render(),this):this}saveEdits(){return this._editingCell=null,this.render(),this}cancelEdits(){return this._editingCell=null,this.render(),this}toCSV(e={}){const{columns:t=this._columns.filter(e=>e.visible),includeHeaders:o=!0}=e,n=[],i=this._getExportData();o&&n.push(t.map(e=>`"${e.title}"`).join(","));for(const e of i){const o=t.map(t=>{const o=e[t.key];return null==o?'""':`"${String(o).replace(/"/g,'""')}"`});n.push(o.join(","))}return n.join("\n")}_getExportData(){const e=this.getSelected();return e.length>0?e:this._filteredData}toJSON(e={}){const{columns:t=this._columns.filter(e=>e.visible),pretty:o=!1}=e,n=t.map(e=>e.key),i=this._getExportData().map(e=>{const t={};for(const o of n)t[o]=e[o];return t});return o?JSON.stringify(i,null,2):JSON.stringify(i)}download(e,t){let o,n;switch(e){case"csv":o=this.toCSV(),n="text/csv",t=t||"data.csv";break;case"excel":o=this.toExcel(),n="application/vnd.ms-excel",t=t||"data.xls";break;default:o=this.toJSON({pretty:!0}),n="application/json",t=t||"data.json"}const i=new Blob([o],{type:n}),s=URL.createObjectURL(i),r=document.createElement("a");if(r.href=s,r.download=t,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(s),this.options.onExport){const o=this._getExportData(),n=this.getSelected();this.options.onExport({format:e,filename:t,rowCount:o.length,selectedOnly:n.length>0})}}toExcel(e={}){const{columns:t=this._columns.filter(e=>e.visible)}=e,o=this._getExportData();let n='\n <html xmlns:o="urn:schemas-microsoft-com:office:office"\n xmlns:x="urn:schemas-microsoft-com:office:excel">\n <head>\n <meta charset="UTF-8">\n \x3c!--[if gte mso 9]>\n <xml>\n <x:ExcelWorkbook>\n <x:ExcelWorksheets>\n <x:ExcelWorksheet>\n <x:Name>Data</x:Name>\n <x:WorksheetOptions>\n <x:DisplayGridlines/>\n </x:WorksheetOptions>\n </x:ExcelWorksheet>\n </x:ExcelWorksheets>\n </x:ExcelWorkbook>\n </xml>\n <![endif]--\x3e\n <style>\n table { border-collapse: collapse; }\n th, td { border: 1px solid #000; padding: 8px; }\n th { background: #f0f0f0; font-weight: bold; }\n </style>\n </head>\n <body>\n <table>\n <thead>\n <tr>';for(const e of t)n+=`<th>${this._escapeHtml(e.title)}</th>`;n+="</tr></thead><tbody>";for(const e of o){n+="<tr>";for(const o of t){const t=e[o.key];n+=`<td>${null!=t?this._escapeHtml(String(t)):""}</td>`}n+="</tr>"}return n+="</tbody></table></body></html>",n}async copyToClipboard(e="text"){let t;const o=this._getExportData();if("json"===e)t=this.toJSON({pretty:!0});else if("csv"===e)t=this.toCSV();else{const e=this._columns.filter(e=>e.visible),n=[];n.push(e.map(e=>e.title).join("\t"));for(const t of o)n.push(e.map(e=>t[e.key]??"").join("\t"));t=n.join("\n")}return await i.copyToClipboard(t),this.options.onExport&&this.options.onExport({format:"clipboard",rowCount:this._filteredData.length}),this}_escapeHtml(e){const t=document.createElement("div");return t.textContent=e,t.innerHTML}render(){if(!this.element)return this;const e=this.options,t=e.classes,o=this._columns.filter(e=>e.visible),n=this._getPageData();this.element.innerHTML="",this._clearEventListeners();const s=document.createElement("div");s.className=t.wrapper;const r=document.createElement("div");if(r.className="domma-table-toolbar",e.searchable){const t=document.createElement("div");t.className="domma-table-search-wrapper";const o=document.createElement("input");if(o.type="text",o.className="domma-table-search-input"+(this._searchIsRegex?" regex-mode":""),o.placeholder=this._searchIsRegex?"Regex pattern...":e.searchPlaceholder,o.value=this._searchQuery,this._addEventHandler(o,"input",i.debounce(e=>{this.search(e.target.value)},300)),t.appendChild(o),e.regexSearch){const e=document.createElement("button");e.type="button",e.className="domma-table-regex-button"+(this._searchIsRegex?" active":""),e.title=this._searchIsRegex?"Regex mode (click for text)":"Text mode (click for regex)",e.innerHTML=".*",this._addEventHandler(e,"click",()=>{this._searchIsRegex=!this._searchIsRegex,this._searchQuery&&(this._searchQuery=this._searchIsRegex?o.value.trim():o.value.toLowerCase().trim(),this._applyFiltersAndSort()),this.render()}),t.appendChild(e)}r.appendChild(t)}if(e.columnToggle){const e=document.createElement("div");e.className="domma-table-column-toggle";const t=document.createElement("button");t.type="button",t.className="domma-table-column-button",t.innerHTML=`${pe.html("columns",{size:16})} Columns`;const o=document.createElement("div");o.className="domma-column-dropdown"+(this._columnDropdownOpen?" show":"");for(const e of this._columns){const t=document.createElement("label");t.className="domma-column-toggle-item";const n=document.createElement("span");n.className="domma-column-toggle-label",n.textContent=e.title;const i=document.createElement("div");i.className="domma-toggle-switch";const s=document.createElement("input");s.type="checkbox",s.checked=e.visible,s.style.cssText="opacity: 0; width: 0; height: 0; position: absolute;";const r=document.createElement("span");r.className="domma-toggle-track"+(e.visible?" active":"");const a=document.createElement("span");a.className="domma-toggle-knob"+(e.visible?" active":""),r.appendChild(a),i.appendChild(s),i.appendChild(r),this._addEventHandler(t,"click",t=>{t.preventDefault(),t.stopPropagation(),e.visible=!e.visible,e.visible?(r.classList.add("active"),a.classList.add("active")):(r.classList.remove("active"),a.classList.remove("active")),s.checked=e.visible,this._columnDropdownOpen=!0,this.render()}),t.appendChild(n),t.appendChild(i),o.appendChild(t)}this._addEventHandler(t,"click",e=>{e.stopPropagation(),this._columnDropdownOpen=!this._columnDropdownOpen,this._columnDropdownOpen?o.classList.add("show"):o.classList.remove("show")}),this._addEventHandler(document,"click",()=>{this._columnDropdownOpen&&(this._columnDropdownOpen=!1,o.classList.remove("show"))}),this._addEventHandler(o,"click",e=>{e.stopPropagation()}),e.appendChild(t),e.appendChild(o),r.appendChild(e)}if(e.exportPanel){const t=document.createElement("div");t.className="domma-table-export-wrapper";let o=!1;const n=document.createElement("div");n.className="domma-export-mode-toggle";const i=document.createElement("span");i.className="domma-export-mode-label active",i.textContent="Copy";const s=document.createElement("label");s.className="domma-export-toggle-switch";const a=document.createElement("input");a.type="checkbox",a.className="domma-export-toggle-input";const l=document.createElement("span");l.className="domma-export-toggle-slider";const h=document.createElement("span");h.className="domma-export-toggle-knob",l.appendChild(h),s.appendChild(a),s.appendChild(l);const c=document.createElement("span");c.className="domma-export-mode-label",c.textContent="Download";const d=()=>{o?(l.classList.add("active"),h.classList.add("active"),i.classList.remove("active"),c.classList.add("active")):(l.classList.remove("active"),h.classList.remove("active"),i.classList.add("active"),c.classList.remove("active"))};this._addEventHandler(a,"change",()=>{o=a.checked,d()}),d(),n.appendChild(i),n.appendChild(s),n.appendChild(c),t.appendChild(n);const u=document.createElement("span");u.className="domma-export-separator",t.appendChild(u);const p={text:{label:"Text",icon:pe.html("clipboard",{size:16}),format:"text"},csv:{label:"CSV",icon:pe.html("document",{size:16}),format:"csv"},excel:{label:"Excel",icon:pe.html("grid",{size:16}),format:"excel"},json:{label:"JSON",icon:pe.html("file-code",{size:16}),format:"json"}},m=e.exportOptions.map(e=>"copy"===e?"text":e);for(const e of m){const n=p[e];if(!n)continue;const i=document.createElement("button");i.type="button",i.className="domma-export-button",i.setAttribute("data-export",e),i.innerHTML=`${n.icon} ${n.label}`;const s=(e,t=!0)=>{const o=i.innerHTML;i.innerHTML=e,i.classList.add(t?"success":"error"),setTimeout(()=>{i.innerHTML=o,i.classList.remove("success","error")},1500)};this._addEventHandler(i,"click",()=>{const e=this.getSelected(),t=e.length>0?e.length:this._filteredData.length,i=e.length>0?` (${t} selected)`:` (${t} rows)`;if(o){const e="text"===n.format?"csv":n.format;this.download(e),s("✓ Downloaded!"+i)}else{const e="excel"===n.format?"text":n.format;this.copyToClipboard(e),s("✓ Copied!"+i)}}),t.appendChild(i)}r.appendChild(t)}(e.searchable||e.columnToggle||e.exportPanel)&&s.appendChild(r);const a=document.createElement("table");a.className=t.table,a.style.cssText="width: 100%; border-collapse: collapse;";const l=document.createElement("thead");l.className=t.header;const h=document.createElement("tr");if(e.selectable&&"multiple"===e.selectionMode){const e=document.createElement("th");e.style.cssText="padding: 12px; border: 1px solid #ddd; background: #f8f9fa; width: 40px;";const t=document.createElement("input");t.type="checkbox",t.checked=this._selected.size>0&&this._selected.size===n.length,this._addEventHandler(t,"change",()=>{t.checked?this.selectAll():this.deselectAll()}),e.appendChild(t),h.appendChild(e)}for(const e of o){const o=document.createElement("th");o.style.cssText="padding: 12px; border: 1px solid #ddd; background: #f8f9fa; text-align: left;",e.width&&(o.style.width="number"==typeof e.width?e.width+"px":e.width);const n=this._sorts.find(t=>t.column===e.key);n&&(o.classList.add(t.sorted),o.classList.add("asc"===n.direction?t.sortAsc:t.sortDesc)),e.sortable?(o.style.cursor="pointer",o.innerHTML=`${e.title} <span style="opacity: 0.5">${n?"asc"===n.direction?"▲":"▼":"⇅"}</span>`,this._addEventHandler(o,"click",()=>{const t=this._sorts.find(t=>t.column===e.key),o="asc"===t?.direction?"desc":"asc";this.sort(e.key,o)})):o.textContent=e.title,h.appendChild(o)}l.appendChild(h),a.appendChild(l);const c=document.createElement("tbody");c.className=t.body;const d=e.rowKey;if(n.forEach((n,i)=>{const s=document.createElement("tr");s.className=t.row;const r=this._getRowColors(i);if(s.style.background=r.background,e.hover&&r.hover){s.style.transition="background 0.2s";const e=r.background;this._addEventHandler(s,"mouseenter",()=>s.style.background=r.hover),this._addEventHandler(s,"mouseleave",()=>s.style.background=e)}if(this._selected.has(n[d])&&(s.classList.add(t.selected),s.style.background="#e3f2fd"),e.selectable&&"multiple"===e.selectionMode){const e=document.createElement("td");e.style.cssText="padding: 12px; border: 1px solid #ddd;";const t=document.createElement("input");t.type="checkbox",t.checked=this._selected.has(n[d]),this._addEventHandler(t,"change",()=>{this.toggleSelect(n[d])}),e.appendChild(t),s.appendChild(e)}e.selectable&&"single"===e.selectionMode&&(s.style.cursor="pointer",this._addEventHandler(s,"click",()=>{this.toggleSelect(n[d])}));for(const r of o){const o=document.createElement("td");o.className=t.cell,o.style.cssText="padding: 12px; border: 1px solid #ddd;";if(this._editingCell&&this._editingCell.rowIndex===i&&this._editingCell.column===r.key&&r.editable){const t=document.createElement("input");t.type="text",t.value=n[r.key]||"",t.style.cssText="width: 100%; padding: 4px; border: 1px solid #007bff;",this._addEventHandler(t,"blur",()=>{this.updateRow(n[d],{[r.key]:t.value}),this.saveEdits(),e.onEdit&&e.onEdit({row:n,column:r.key,oldValue:n[r.key],newValue:t.value})}),this._addEventHandler(t,"keydown",e=>{"Enter"===e.key?t.blur():"Escape"===e.key&&this.cancelEdits()}),o.appendChild(t),setTimeout(()=>t.focus(),0)}else r.render?o.innerHTML=r.render(n[r.key],n,i):o.textContent=n[r.key]??"",r.editable&&e.editable&&(o.style.cursor="pointer",this._addEventHandler(o,"dblclick",()=>{this.editCell(i,r.key)}));s.appendChild(o)}c.appendChild(s)}),a.appendChild(c),s.appendChild(a),e.pagination){const o=document.createElement("div");o.className=t.pagination,o.style.cssText="display: flex; justify-content: space-between; align-items: center; margin-top: 15px; padding: 10px 0;";const n=this.pageInfo(),i=document.createElement("span");i.textContent=`Showing ${n.startRow}-${n.endRow} of ${n.totalRows}`;const r=document.createElement("span");r.innerHTML="Show ";const a=document.createElement("select");a.className="form-select",a.style.cssText="width: auto; display: inline-block; margin: 0 5px;";for(const t of e.pageSizeOptions){const e=document.createElement("option");e.value=t,e.textContent=t,t===this._pageSize&&(e.selected=!0),a.appendChild(e)}this._addEventHandler(a,"change",()=>{this.pageSize(Number(a.value))}),r.appendChild(a),r.appendChild(document.createTextNode(" entries"));const l=document.createElement("span"),h=(e,t,o=!1,n=!1)=>{const i=document.createElement("button");return n?i.innerHTML=e:i.textContent=e,i.disabled=o,i.style.cssText="padding: 6px 12px; margin: 0 2px; border: 1px solid #ddd; background: #fff; cursor: pointer; border-radius: 4px; display: inline-flex; align-items: center; justify-content: center;",o&&(i.style.opacity="0.5"),this._addEventHandler(i,"click",t),i};l.appendChild(h(pe.html("chevrons-left",{size:14}),()=>this.firstPage(),1===this._currentPage,!0)),l.appendChild(h(pe.html("chevron-left",{size:14}),()=>this.prevPage(),1===this._currentPage,!0));const c=5;let d=Math.max(1,this._currentPage-Math.floor(c/2)),u=Math.min(n.totalPages,d+c-1);d=Math.max(1,u-c+1);for(let e=d;e<=u;e++){const t=h(e,()=>this.page(e),!1);e===this._currentPage&&(t.style.background="#007bff",t.style.color="#fff",t.style.borderColor="#007bff"),l.appendChild(t)}l.appendChild(h(pe.html("chevron-right",{size:14}),()=>this.nextPage(),this._currentPage===n.totalPages,!0)),l.appendChild(h(pe.html("chevrons-right",{size:14}),()=>this.lastPage(),this._currentPage===n.totalPages,!0)),o.appendChild(r),o.appendChild(i),o.appendChild(l),s.appendChild(o)}return this.element.appendChild(s),e.onRender&&e.onRender(this),this}_addEventHandler(e,t,o){e.addEventListener(t,o),this._eventListeners.has(e)||this._eventListeners.set(e,[]),this._eventListeners.get(e).push({event:t,handler:o})}_clearEventListeners(){for(const[e,t]of this._eventListeners)for(const{event:o,handler:n}of t)e.removeEventListener(o,n);this._eventListeners.clear()}on(e,t){if(["sort","filter","page","select","edit","render"].includes(e)){const o="on"+e.charAt(0).toUpperCase()+e.slice(1);this.options[o]=t}return this}off(e){const t="on"+e.charAt(0).toUpperCase()+e.slice(1);return this.options[t]=null,this}refresh(){return this._applyFiltersAndSort(),this.render(),this}destroy(){this._clearEventListeners(),this.element&&(this.element.innerHTML="")}}const fe={_instances:new Map,create(e,t={}){const o="string"==typeof e?document.querySelector(e):e,n=new me(o,t);return o&&this._instances.set(o,n),n},get(e){const t="string"==typeof e?document.querySelector(e):e;return this._instances.get(t)},destroy(e){const t="string"==typeof e?document.querySelector(e):e,o=this._instances.get(t);o&&(o.destroy(),this._instances.delete(t))},destroyAll(){for(const e of this._instances.values())e.destroy();this._instances.clear()}},ke="domma-theme",ve="domma-theme-variant",ge="dm-theme-",Me=["ocean-light","ocean-dark","forest-light","forest-dark","sunset-light","sunset-dark","royal-light","royal-dark","lemon-light","lemon-dark","silver-light","silver-dark","charcoal-light","charcoal-dark","christmas-light","christmas-dark"],_e="charcoal-dark";const ye=new class{constructor(){this._theme=_e,this._listeners=[],this._target=null,this._initialised=!1,this._systemMediaQuery=null,this._autoDetect=!1,this._disabled=!1}init(e={}){const{theme:t=null,autoDetect:o=!1,persist:n=!0,disabled:i=!1,target:s=document.body}=e;if(i)return this._disabled=!0,this._initialised=!0,this;this._target="string"==typeof s?document.querySelector(s):s,this._target||(this._target=document.body),this._persist=n,this._autoDetect=o;let r=t;if(n){const e=this._loadFromStorage();e&&!t&&(r=e)}if(o&&!r){r="dark"===this._getSystemPreference()?"charcoal-dark":"charcoal-light",this._setupSystemListener()}return r=r||_e,Me.includes(r)||(console.warn(`Invalid theme: ${r}. Using default: ${_e}`),r=_e),this._theme=r,this._applyTheme(),this._initialised=!0,this}get(){return this._theme}getBase(){return this._theme.split("-").slice(0,-1).join("-")}getMode(){return this._theme.split("-").pop()}isDark(){return"dark"===this.getMode()}isLight(){return"light"===this.getMode()}set(e){if(!Me.includes(e))return console.warn(`Invalid theme: ${e}. Available themes: ${Me.join(", ")}`),this;const t=this._theme;return t===e||(this._theme=e,this._applyTheme(),this._saveToStorage(),this._notifyListeners(t,e)),this}setVariant(){return console.warn('[ThemeEngine] setVariant() is deprecated. Use set() with full theme name (e.g., set("ocean-dark"))'),this}toggle(){return console.warn("[ThemeEngine] toggle() is deprecated. Use variant selector UI or set() method."),this}onChange(e){return"function"!=typeof e?(console.warn("onChange requires a function callback"),()=>{}):(this._listeners.push(e),()=>{const t=this._listeners.indexOf(e);t>-1&&this._listeners.splice(t,1)})}preview(e){if(!Me.includes(e))return console.warn(`Invalid theme for preview: ${e}`),()=>{};const t=this._theme;return this._theme=e,this._applyTheme(!1),()=>{this._theme=t,this._applyTheme(!1)}}listThemes(){return[...Me]}listBases(){return["ocean","forest","sunset","royal","lemon","silver","charcoal","christmas"]}listVariants(){return console.warn("[ThemeEngine] listVariants() is deprecated. Use listThemes() instead."),this.listBases()}getConfig(){return{theme:this._theme,base:this.getBase(),mode:this.getMode(),autoDetect:this._autoDetect,persist:this._persist,disabled:this._disabled}}_updateMetaThemeColor(){const e={light:"#ffffff",dark:"#121212"};let t=document.querySelector('meta[name="theme-color"]');t||(t=document.createElement("meta"),t.name="theme-color",document.head.appendChild(t)),t.content=e[this.getMode()]||e.dark}isDisabled(){return this._disabled}enable(){return this._disabled=!1,this._target||(this._target=document.body),this._applyTheme(),this}disable(){if(this._disabled=!0,this._target){const e=this._target.className.split(" ").filter(e=>!e.startsWith(ge));this._target.className=e.join(" ").trim()}return this}_applyTheme(e=!0){if(this._disabled)return;const t=this._target||document.body;if(!t)return void console.error("[ThemeEngine] No target element available for theme application");const o=t.className.split(" ").filter(e=>!e.startsWith(ge));o.push(`${ge}${this._theme}`),t.className=o.join(" ").trim(),e&&this._updateMetaThemeColor()}_saveToStorage(){if(this._persist&&"undefined"!=typeof localStorage)try{localStorage.setItem(ke,this._theme),localStorage.removeItem(ve)}catch(e){}}_loadFromStorage(){if("undefined"==typeof localStorage)return null;try{const e=localStorage.getItem(ke);if(e&&Me.includes(e))return e;const t=e,o=localStorage.getItem(ve);if(t&&["light","dark"].includes(t)){const e=`${o||"charcoal"}-${t}`;if(console.log(`[ThemeEngine] Migrating theme: ${t} + ${o} → ${e}`),Me.includes(e))return localStorage.setItem(ke,e),localStorage.removeItem(ve),e}return null}catch(e){return null}}_getSystemPreference(){return"undefined"!=typeof window&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}_setupSystemListener(){if("undefined"==typeof window||!window.matchMedia)return;this._systemMediaQuery=window.matchMedia("(prefers-color-scheme: dark)");const e=e=>{if(!this._autoDetect)return;const t=e.matches?"dark":"light",o=`${this.getBase()}-${t}`;Me.includes(o)&&this.set(o)};this._systemMediaQuery.addEventListener?this._systemMediaQuery.addEventListener("change",e):this._systemMediaQuery.addListener(e)}_notifyListeners(e,t){this._listeners.forEach(o=>{try{o(e,t)}catch(e){console.error("[ThemeEngine] Error in change listener:",e)}})}destroy(){this._systemMediaQuery&&this._systemMediaQuery.removeEventListener,this._listeners=[],this._target=null,this._initialised=!1}};"undefined"!=typeof document&&("loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>{ye._initialised||ye.init({persist:!0,autoDetect:!1})}):ye._initialised||ye.init({persist:!0,autoDetect:!1}));const Le={apiUrl:null,token:null,user:null,config:{},eventHandlers:{},initialized:!1,init(e={}){this.config={apiUrl:e.apiUrl||"http://localhost:3001/api",storageKey:e.storageKey||"auth_token",userStorageKey:e.userStorageKey||"auth_user",autoCheck:!1!==e.autoCheck},this.apiUrl=this.config.apiUrl,this.token=W.get(this.config.storageKey),this.user=W.get(this.config.userStorageKey),this.config.autoCheck&&this.token&&this._verifyToken().catch(()=>{this._clearToken(),this.emit("tokenExpired",null)}),this.initialized=!0},async login(e,t){if(!this.initialized)throw new Error("Auth module not initialized. Call auth.init() first.");try{const o=await n.post(`${this.apiUrl}/auth/login`,{email:e,password:t});if(!o.success||!o.token)throw new Error(o.message||"Login failed");return this.token=o.token,this.user=o.user,this._storeToken(this.token),this._storeUser(this.user),this.emit("login",this.user),this.user}catch(e){throw this.emit("error",e.message||"Login failed"),e}},async register(e,t,o){if(!this.initialized)throw new Error("Auth module not initialized. Call auth.init() first.");try{const i=await n.post(`${this.apiUrl}/auth/register`,{email:e,password:t,name:o});if(!i.success||!i.token)throw new Error(i.message||"Registration failed");return this.token=i.token,this.user=i.user,this._storeToken(this.token),this._storeUser(this.user),this.emit("register",this.user),this.user}catch(e){throw this.emit("error",e.message||"Registration failed"),e}},logout(){this.token=null,this.user=null,this._clearToken(),this._clearUser(),this.emit("logout",null)},getUser(){return this.user},isAuthenticated(){return!!this.token&&!!this.user},getHeaders(){return this.token?{Authorization:`Bearer ${this.token}`}:{}},getRole(){return this.user?.role||null},hasRole(e){return this.user?.role===e},hasAnyRole(e){return e.includes(this.user?.role)},isAdmin(){return"admin"===this.user?.role},isSubscriber(){return"subscriber"===this.user?.role},isGuest(){return"guest"===this.user?.role},async _verifyToken(){if(!this.token)throw new Error("No token to verify");try{const e=await n.get(`${this.apiUrl}/auth/me`,{headers:this.getHeaders()});if(!e.success||!e.user)throw new Error("Token verification failed");return this.user=e.user,this._storeUser(this.user),this.user}catch(e){throw this._clearToken(),this._clearUser(),e}},_storeToken(e){W.set(this.config.storageKey,e)},_storeUser(e){W.set(this.config.userStorageKey,e)},_clearToken(){W.remove(this.config.storageKey),this.token=null},_clearUser(){W.remove(this.config.userStorageKey),this.user=null},on(e,t){this.eventHandlers[e]||(this.eventHandlers[e]=[]),this.eventHandlers[e].push(t)},off(e,t){this.eventHandlers[e]&&(this.eventHandlers[e]=t?this.eventHandlers[e].filter(e=>e!==t):[])},emit(e,t){this.eventHandlers[e]&&this.eventHandlers[e].forEach(o=>{try{o(t)}catch(t){console.error(`Error in auth event handler for '${e}':`,t)}})}};class we extends s{static defaults={emailPlaceholder:"your@email.com",passwordPlaceholder:"Enter your password",buttonText:"Login",showLabels:!0,onSubmit:null,onSuccess:null,onError:null};constructor(e,t={}){super(e,t),this._init()}_init(){if(!this.element)return;this.render();const e=this.element.querySelector("form");e&&this._addEventListener(e,"submit",async e=>{e.preventDefault(),await this.handleSubmit()})}render(){const e=this.options,t=`\n <form class="auth-login-form">\n <div class="form-group">\n ${e.showLabels?'<label class="form-label">Email</label>':""}\n <input\n type="email"\n class="form-input"\n name="email"\n placeholder="${e.emailPlaceholder}"\n required>\n </div>\n <div class="form-group">\n ${e.showLabels?'<label class="form-label">Password</label>':""}\n <input\n type="password"\n class="form-input"\n name="password"\n placeholder="${e.passwordPlaceholder}"\n required>\n </div>\n <button type="submit" class="btn btn-primary btn-block" style="margin-top: 1rem;">${e.buttonText}</button>\n </form>\n `;this.element.innerHTML=t}async handleSubmit(){const e=this.element.querySelector("form"),t=e.querySelector('[name="email"]').value,o=e.querySelector('[name="password"]').value;this.options.onSubmit&&this.options.onSubmit(t,o);try{await Le.login(t,o),this.options.onSuccess&&this.options.onSuccess(Le.getUser())}catch(e){this.options.onError&&this.options.onError(e)}}}class be extends s{static defaults={namePlaceholder:"Your name",emailPlaceholder:"your@email.com",passwordPlaceholder:"Create a password",buttonText:"Register",minPasswordLength:6,showLabels:!0,onSubmit:null,onSuccess:null,onError:null};constructor(e,t={}){super(e,t),this._init()}_init(){if(!this.element)return;this.render();const e=this.element.querySelector("form");e&&this._addEventListener(e,"submit",async e=>{e.preventDefault(),await this.handleSubmit()})}render(){const e=this.options,t=`\n <form class="auth-register-form">\n <div class="form-group">\n ${e.showLabels?'<label class="form-label">Name</label>':""}\n <input\n type="text"\n class="form-input"\n name="name"\n placeholder="${e.namePlaceholder}"\n required>\n </div>\n <div class="form-group">\n ${e.showLabels?'<label class="form-label">Email</label>':""}\n <input\n type="email"\n class="form-input"\n name="email"\n placeholder="${e.emailPlaceholder}"\n required>\n </div>\n <div class="form-group">\n ${e.showLabels?'<label class="form-label">Password</label>':""}\n <input\n type="password"\n class="form-input"\n name="password"\n placeholder="${e.passwordPlaceholder}"\n minlength="${e.minPasswordLength}"\n required>\n </div>\n <button type="submit" class="btn btn-primary btn-block" style="margin-top: 1rem;">${e.buttonText}</button>\n </form>\n `;this.element.innerHTML=t}async handleSubmit(){const e=this.element.querySelector("form"),t=e.querySelector('[name="name"]').value,o=e.querySelector('[name="email"]').value,n=e.querySelector('[name="password"]').value;this.options.onSubmit&&this.options.onSubmit(o,n,t);try{await Le.register(o,n,t),this.options.onSuccess&&this.options.onSuccess(Le.getUser())}catch(e){this.options.onError&&this.options.onError(e)}}}class xe extends s{static defaults={activeTab:"login",loginText:"Login",registerText:"Register",onChange:null};constructor(e,t={}){super(e,t),this._init()}_init(){if(!this.element)return;this.render();this.element.querySelectorAll("[data-tab]").forEach(e=>{this._addEventListener(e,"click",()=>{this.switchTab(e.getAttribute("data-tab"))})})}render(){const e=this.options,t=`\n <div class="btn-group btn-group-block" style="margin-bottom: 1.5rem;">\n <button class="btn ${"login"===e.activeTab?"active":""}" data-tab="login">\n ${e.loginText}\n </button>\n <button class="btn ${"register"===e.activeTab?"active":""}" data-tab="register">\n ${e.registerText}\n </button>\n </div>\n `;this.element.innerHTML=t}switchTab(e){this.options.activeTab=e;this.element.querySelectorAll("[data-tab]").forEach(t=>{t.getAttribute("data-tab")===e?t.classList.add("active"):t.classList.remove("active")}),this.options.onChange&&this.options.onChange(e)}}class Ce extends s{static defaults={showIcon:!0,showRole:!0,logoutText:"Logout",onLogout:null};_init(){if(!this.element)return;this.render();const e=this.element.querySelector(".auth-logout-btn");e&&this._addEventListener(e,"click",()=>{this.handleLogout()}),Le.on("login",()=>this.render()),Le.on("logout",()=>this.render())}render(){const e=this.options,t=Le.getUser();if(!t)return void(this.element.innerHTML="");this.element.innerHTML="";const o=document.createElement("div");o.className="auth-user-info";const n=document.createElement("span");if(n.className="auth-user-email",e.showIcon){const e=document.createElement("span");e.setAttribute("data-icon","user"),e.setAttribute("data-icon-size","18"),n.appendChild(e)}const i=document.createTextNode(t.email);if(n.appendChild(i),!1!==e.showRole&&t.role){const e={admin:"badge-danger",subscriber:"badge-primary",guest:"badge-secondary"}[t.role]||"badge-secondary",o=document.createElement("span");o.className=`badge ${e}`,o.textContent=t.role.charAt(0).toUpperCase()+t.role.slice(1),n.appendChild(o)}const s=document.createElement("button");s.className="auth-logout-btn",s.textContent=e.logoutText,o.appendChild(n),o.appendChild(s),this.element.appendChild(o)}handleLogout(){Le.logout(),this.options.onLogout&&this.options.onLogout()}}Le.LoginForm=we,Le.RegisterForm=be,Le.AuthTabs=xe,Le.UserInfo=Ce,Le.createLoginForm=(e,t)=>new we(e,t),Le.createRegisterForm=(e,t)=>new be(e,t),Le.createAuthTabs=(e,t)=>new xe(e,t),Le.createUserInfo=(e,t)=>new Ce(e,t);const je=(e,t)=>o(e,t);je.version="0.3.0a",je.buildInfo={version:"0.3.0a",built:"29/12/2025 16:28",commit:"8a467f0"},je.http=n,je.utils=i,je.setup=e=>(e.noStyles?ye.init({disabled:!0}):(e.theme||e.autoDetectTheme)&&ye.init({theme:e.theme,autoDetect:e.autoDetectTheme,persist:!1!==e.persistTheme}),e.scanIcons&&pe.scan(),z.process(e)),je.update=(e,t)=>z.update(e,t),je.config=e=>z.config(e),je.reset=e=>z.reset(e),je.models=H,je.elements=E,je.dates=F,je.tables=fe,je.theme=ye,je.icons=pe,je.storage=W,je.auth=Le,je.DesktopNotification=v;const Be=je,Ee=i,ze=H,We=F,Se=W,Ae=Le;je.M=ze,je.D=We,je.S=Se,je.A=Ae,"undefined"!=typeof window&&(window.Domma=je,window.$=Be,window._=Ee,window.M=ze,window.D=We,window.S=Se,window.A=Ae),e.$=Be,e.A=Ae,e.D=We,e.Domma=je,e.M=ze,e.S=Se,e._=Ee,e.default=je,Object.defineProperty(e,"__esModule",{value:!0})});
|