@molin.ai/shop-ai 0.9.33 → 0.9.35

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.
@@ -1,2424 +0,0 @@
1
- var Sa=Object.create;var Pi=Object.defineProperty;var Ea=Object.getOwnPropertyDescriptor;var _a=Object.getOwnPropertyNames;var Ma=Object.getPrototypeOf,Ia=Object.prototype.hasOwnProperty;var ft=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Aa=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of _a(e))!Ia.call(t,i)&&i!==r&&Pi(t,i,{get:()=>e[i],enumerable:!(n=Ea(e,i))||n.enumerable});return t};var Ta=(t,e,r)=>(r=t!=null?Sa(Ma(t)):{},Aa(e||!t||!t.__esModule?Pi(r,"default",{value:t,enumerable:!0}):r,t));var yo=ft(je=>{"use strict";var ec=je&&je.__awaiter||function(t,e,r,n){function i(s){return s instanceof r?s:new r(function(o){o(s)})}return new(r||(r=Promise))(function(s,o){function c(h){try{a(n.next(h))}catch(d){o(d)}}function l(h){try{a(n.throw(h))}catch(d){o(d)}}function a(h){h.done?s(h.value):i(h.value).then(c,l)}a((n=n.apply(t,e||[])).next())})},tc=je&&je.__generator||function(t,e){var r={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},n,i,s,o=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return o.next=c(0),o.throw=c(1),o.return=c(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(a){return function(h){return l([a,h])}}function l(a){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(r=0)),r;)try{if(n=1,i&&(s=a[0]&2?i.return:a[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,a[1])).done)return s;switch(i=0,s&&(a=[a[0]&2,s.value]),a[0]){case 0:case 1:s=a;break;case 4:return r.label++,{value:a[1],done:!1};case 5:r.label++,i=a[1],a=[0];continue;case 7:a=r.ops.pop(),r.trys.pop();continue;default:if(s=r.trys,!(s=s.length>0&&s[s.length-1])&&(a[0]===6||a[0]===2)){r=0;continue}if(a[0]===3&&(!s||a[1]>s[0]&&a[1]<s[3])){r.label=a[1];break}if(a[0]===6&&r.label<s[1]){r.label=s[1],s=a;break}if(s&&r.label<s[2]){r.label=s[2],r.ops.push(a);break}s[2]&&r.ops.pop(),r.trys.pop();continue}a=e.call(t,r)}catch(h){a=[6,h],i=0}finally{n=s=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}};Object.defineProperty(je,"__esModule",{value:!0});je.base64ToBlob=rc;function rc(t){return ec(this,void 0,void 0,function(){var e,r,n;return tc(this,function(i){switch(i.label){case 0:return[4,fetch(t)];case 1:return e=i.sent(),[4,e.blob()];case 2:return r=i.sent(),n=ic(t),n&&(r=r.slice(0,r.size,n)),[2,r]}})})}var nc=/^data:(.+);base64,/;function ic(t){var e;return(e=t.match(nc))===null||e===void 0?void 0:e.slice(1,2).pop()}});var vo=ft(De=>{"use strict";var sc=De&&De.__awaiter||function(t,e,r,n){function i(s){return s instanceof r?s:new r(function(o){o(s)})}return new(r||(r=Promise))(function(s,o){function c(h){try{a(n.next(h))}catch(d){o(d)}}function l(h){try{a(n.throw(h))}catch(d){o(d)}}function a(h){h.done?s(h.value):i(h.value).then(c,l)}a((n=n.apply(t,e||[])).next())})},oc=De&&De.__generator||function(t,e){var r={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},n,i,s,o=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return o.next=c(0),o.throw=c(1),o.return=c(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(a){return function(h){return l([a,h])}}function l(a){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(r=0)),r;)try{if(n=1,i&&(s=a[0]&2?i.return:a[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,a[1])).done)return s;switch(i=0,s&&(a=[a[0]&2,s.value]),a[0]){case 0:case 1:s=a;break;case 4:return r.label++,{value:a[1],done:!1};case 5:r.label++,i=a[1],a=[0];continue;case 7:a=r.ops.pop(),r.trys.pop();continue;default:if(s=r.trys,!(s=s.length>0&&s[s.length-1])&&(a[0]===6||a[0]===2)){r=0;continue}if(a[0]===3&&(!s||a[1]>s[0]&&a[1]<s[3])){r.label=a[1];break}if(a[0]===6&&r.label<s[1]){r.label=s[1],s=a;break}if(s&&r.label<s[2]){r.label=s[2],r.ops.push(a);break}s[2]&&r.ops.pop(),r.trys.pop();continue}a=e.call(t,r)}catch(h){a=[6,h],i=0}finally{n=s=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}};Object.defineProperty(De,"__esModule",{value:!0});De.base64ToFile=ac;function ac(t,e,r){return sc(this,void 0,void 0,function(){var n,i;return oc(this,function(s){switch(s.label){case 0:return[4,fetch(t)];case 1:return n=s.sent(),[4,n.blob()];case 2:return i=s.sent(),[2,new File([i],e,r)]}})})}});var Qn=ft(Oe=>{"use strict";var Yn=Oe&&Oe.__awaiter||function(t,e,r,n){function i(s){return s instanceof r?s:new r(function(o){o(s)})}return new(r||(r=Promise))(function(s,o){function c(h){try{a(n.next(h))}catch(d){o(d)}}function l(h){try{a(n.throw(h))}catch(d){o(d)}}function a(h){h.done?s(h.value):i(h.value).then(c,l)}a((n=n.apply(t,e||[])).next())})},Xn=Oe&&Oe.__generator||function(t,e){var r={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},n,i,s,o=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return o.next=c(0),o.throw=c(1),o.return=c(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(a){return function(h){return l([a,h])}}function l(a){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(r=0)),r;)try{if(n=1,i&&(s=a[0]&2?i.return:a[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,a[1])).done)return s;switch(i=0,s&&(a=[a[0]&2,s.value]),a[0]){case 0:case 1:s=a;break;case 4:return r.label++,{value:a[1],done:!1};case 5:r.label++,i=a[1],a=[0];continue;case 7:a=r.ops.pop(),r.trys.pop();continue;default:if(s=r.trys,!(s=s.length>0&&s[s.length-1])&&(a[0]===6||a[0]===2)){r=0;continue}if(a[0]===3&&(!s||a[1]>s[0]&&a[1]<s[3])){r.label=a[1];break}if(a[0]===6&&r.label<s[1]){r.label=s[1],s=a;break}if(s&&r.label<s[2]){r.label=s[2],r.ops.push(a);break}s[2]&&r.ops.pop(),r.trys.pop();continue}a=e.call(t,r)}catch(h){a=[6,h],i=0}finally{n=s=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}};Object.defineProperty(Oe,"__esModule",{value:!0});Oe.blobToBase64=lc;function lc(t){return Yn(this,void 0,void 0,function(){return Xn(this,function(e){return[2,typeof FileReader=="function"?cc(t):hc(t)]})})}var tt;(function(t){t.error="error",t.loadend="loadend"})(tt||(tt={}));function cc(t){return Yn(this,void 0,void 0,function(){return Xn(this,function(e){return[2,new Promise(function(r,n){try{var i=new FileReader,s=function(){r(i.result),i.removeEventListener(tt.loadend,s)};i.addEventListener(tt.loadend,s);var o=function(){n(i.error),i.removeEventListener(tt.error,o)};i.addEventListener(tt.error,o),i.readAsDataURL(t)}catch(c){n(c)}})]})})}var uc="application/octet-stream";function hc(t){return Yn(this,void 0,void 0,function(){var e,r,n,i;return Xn(this,function(s){switch(s.label){case 0:return n=(r=Buffer).from,[4,t.text()];case 1:return e=n.apply(r,[s.sent()]),i=t.type||uc,[2,"data:".concat(i,";base64,").concat(e.toString("base64"))]}})})}});var bo=ft(xr=>{"use strict";Object.defineProperty(xr,"__esModule",{value:!0});xr.fileToBase64=void 0;var dc=Qn();Object.defineProperty(xr,"fileToBase64",{enumerable:!0,get:function(){return dc.blobToBase64}})});var xo=ft(ie=>{"use strict";var pc=ie&&ie.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),kr=ie&&ie.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&pc(e,t,r)};Object.defineProperty(ie,"__esModule",{value:!0});kr(yo(),ie);kr(vo(),ie);kr(Qn(),ie);kr(bo(),ie)});var Ft=globalThis,Vt=Ft.ShadowRoot&&(Ft.ShadyCSS===void 0||Ft.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Jr=Symbol(),Ri=new WeakMap,mt=class{constructor(e,r,n){if(this._$cssResult$=!0,n!==Jr)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=r}get styleSheet(){let e=this.o,r=this.t;if(Vt&&e===void 0){let n=r!==void 0&&r.length===1;n&&(e=Ri.get(r)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),n&&Ri.set(r,e))}return e}toString(){return this.cssText}},Bi=t=>new mt(typeof t=="string"?t:t+"",void 0,Jr),D=(t,...e)=>{let r=t.length===1?t[0]:e.reduce(((n,i,s)=>n+(o=>{if(o._$cssResult$===!0)return o.cssText;if(typeof o=="number")return o;throw Error("Value passed to 'css' function must be a 'css' function result: "+o+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+t[s+1]),t[0]);return new mt(r,t,Jr)},qi=(t,e)=>{if(Vt)t.adoptedStyleSheets=e.map((r=>r instanceof CSSStyleSheet?r:r.styleSheet));else for(let r of e){let n=document.createElement("style"),i=Ft.litNonce;i!==void 0&&n.setAttribute("nonce",i),n.textContent=r.cssText,t.appendChild(n)}},Kr=Vt?t=>t:t=>t instanceof CSSStyleSheet?(e=>{let r="";for(let n of e.cssRules)r+=n.cssText;return Bi(r)})(t):t;var{is:La,defineProperty:ja,getOwnPropertyDescriptor:Da,getOwnPropertyNames:Oa,getOwnPropertySymbols:Ua,getPrototypeOf:Pa}=Object,Nt=globalThis,Fi=Nt.trustedTypes,Ra=Fi?Fi.emptyScript:"",Ba=Nt.reactiveElementPolyfillSupport,gt=(t,e)=>t,Yr={toAttribute(t,e){switch(e){case Boolean:t=t?Ra:null;break;case Object:case Array:t=t==null?t:JSON.stringify(t)}return t},fromAttribute(t,e){let r=t;switch(e){case Boolean:r=t!==null;break;case Number:r=t===null?null:Number(t);break;case Object:case Array:try{r=JSON.parse(t)}catch{r=null}}return r}},Ni=(t,e)=>!La(t,e),Vi={attribute:!0,type:String,converter:Yr,reflect:!1,useDefault:!1,hasChanged:Ni};Symbol.metadata??=Symbol("metadata"),Nt.litPropertyMetadata??=new WeakMap;var le=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,r=Vi){if(r.state&&(r.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((r=Object.create(r)).wrapped=!0),this.elementProperties.set(e,r),!r.noAccessor){let n=Symbol(),i=this.getPropertyDescriptor(e,n,r);i!==void 0&&ja(this.prototype,e,i)}}static getPropertyDescriptor(e,r,n){let{get:i,set:s}=Da(this.prototype,e)??{get(){return this[r]},set(o){this[r]=o}};return{get:i,set(o){let c=i?.call(this);s?.call(this,o),this.requestUpdate(e,c,n)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??Vi}static _$Ei(){if(this.hasOwnProperty(gt("elementProperties")))return;let e=Pa(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(gt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(gt("properties"))){let r=this.properties,n=[...Oa(r),...Ua(r)];for(let i of n)this.createProperty(i,r[i])}let e=this[Symbol.metadata];if(e!==null){let r=litPropertyMetadata.get(e);if(r!==void 0)for(let[n,i]of r)this.elementProperties.set(n,i)}this._$Eh=new Map;for(let[r,n]of this.elementProperties){let i=this._$Eu(r,n);i!==void 0&&this._$Eh.set(i,r)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){let r=[];if(Array.isArray(e)){let n=new Set(e.flat(1/0).reverse());for(let i of n)r.unshift(Kr(i))}else e!==void 0&&r.push(Kr(e));return r}static _$Eu(e,r){let n=r.attribute;return n===!1?void 0:typeof n=="string"?n:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((e=>this.enableUpdating=e)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((e=>e(this)))}addController(e){(this._$EO??=new Set).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){let e=new Map,r=this.constructor.elementProperties;for(let n of r.keys())this.hasOwnProperty(n)&&(e.set(n,this[n]),delete this[n]);e.size>0&&(this._$Ep=e)}createRenderRoot(){let e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return qi(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((e=>e.hostConnected?.()))}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach((e=>e.hostDisconnected?.()))}attributeChangedCallback(e,r,n){this._$AK(e,n)}_$ET(e,r){let n=this.constructor.elementProperties.get(e),i=this.constructor._$Eu(e,n);if(i!==void 0&&n.reflect===!0){let s=(n.converter?.toAttribute!==void 0?n.converter:Yr).toAttribute(r,n.type);this._$Em=e,s==null?this.removeAttribute(i):this.setAttribute(i,s),this._$Em=null}}_$AK(e,r){let n=this.constructor,i=n._$Eh.get(e);if(i!==void 0&&this._$Em!==i){let s=n.getPropertyOptions(i),o=typeof s.converter=="function"?{fromAttribute:s.converter}:s.converter?.fromAttribute!==void 0?s.converter:Yr;this._$Em=i;let c=o.fromAttribute(r,s.type);this[i]=c??this._$Ej?.get(i)??c,this._$Em=null}}requestUpdate(e,r,n){if(e!==void 0){let i=this.constructor,s=this[e];if(n??=i.getPropertyOptions(e),!((n.hasChanged??Ni)(s,r)||n.useDefault&&n.reflect&&s===this._$Ej?.get(e)&&!this.hasAttribute(i._$Eu(e,n))))return;this.C(e,r,n)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,r,{useDefault:n,reflect:i,wrapped:s},o){n&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,o??r??this[e]),s!==!0||o!==void 0)||(this._$AL.has(e)||(this.hasUpdated||n||(r=void 0),this._$AL.set(e,r)),i===!0&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(r){Promise.reject(r)}let e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[i,s]of this._$Ep)this[i]=s;this._$Ep=void 0}let n=this.constructor.elementProperties;if(n.size>0)for(let[i,s]of n){let{wrapped:o}=s,c=this[i];o!==!0||this._$AL.has(i)||c===void 0||this.C(i,void 0,s,c)}}let e=!1,r=this._$AL;try{e=this.shouldUpdate(r),e?(this.willUpdate(r),this._$EO?.forEach((n=>n.hostUpdate?.())),this.update(r)):this._$EM()}catch(n){throw e=!1,this._$EM(),n}e&&this._$AE(r)}willUpdate(e){}_$AE(e){this._$EO?.forEach((r=>r.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach((r=>this._$ET(r,this[r]))),this._$EM()}updated(e){}firstUpdated(e){}};le.elementStyles=[],le.shadowRootOptions={mode:"open"},le[gt("elementProperties")]=new Map,le[gt("finalized")]=new Map,Ba?.({ReactiveElement:le}),(Nt.reactiveElementVersions??=[]).push("2.1.1");var Qr=globalThis,Ht=Qr.trustedTypes,Hi=Ht?Ht.createPolicy("lit-html",{createHTML:t=>t}):void 0,en="$lit$",ce=`lit$${Math.random().toFixed(9).slice(2)}$`,tn="?"+ce,qa=`<${tn}>`,Ee=document,yt=()=>Ee.createComment(""),vt=t=>t===null||typeof t!="object"&&typeof t!="function",rn=Array.isArray,Ki=t=>rn(t)||typeof t?.[Symbol.iterator]=="function",Xr=`[
2
- \f\r]`,wt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,zi=/-->/g,Wi=/>/g,$e=RegExp(`>|${Xr}(?:([^\\s"'>=/]+)(${Xr}*=${Xr}*(?:[^
3
- \f\r"'\`<>=]|("|')|))|$)`,"g"),Gi=/'/g,Zi=/"/g,Yi=/^(?:script|style|textarea|title)$/i,nn=t=>(e,...r)=>({_$litType$:t,strings:e,values:r}),u=nn(1),xu=nn(2),ku=nn(3),ee=Symbol.for("lit-noChange"),L=Symbol.for("lit-nothing"),Ji=new WeakMap,Se=Ee.createTreeWalker(Ee,129);function Xi(t,e){if(!rn(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return Hi!==void 0?Hi.createHTML(e):e}var Qi=(t,e)=>{let r=t.length-1,n=[],i,s=e===2?"<svg>":e===3?"<math>":"",o=wt;for(let c=0;c<r;c++){let l=t[c],a,h,d=-1,f=0;for(;f<l.length&&(o.lastIndex=f,h=o.exec(l),h!==null);)f=o.lastIndex,o===wt?h[1]==="!--"?o=zi:h[1]!==void 0?o=Wi:h[2]!==void 0?(Yi.test(h[2])&&(i=RegExp("</"+h[2],"g")),o=$e):h[3]!==void 0&&(o=$e):o===$e?h[0]===">"?(o=i??wt,d=-1):h[1]===void 0?d=-2:(d=o.lastIndex-h[2].length,a=h[1],o=h[3]===void 0?$e:h[3]==='"'?Zi:Gi):o===Zi||o===Gi?o=$e:o===zi||o===Wi?o=wt:(o=$e,i=void 0);let p=o===$e&&t[c+1].startsWith("/>")?" ":"";s+=o===wt?l+qa:d>=0?(n.push(a),l.slice(0,d)+en+l.slice(d)+ce+p):l+ce+(d===-2?c:p)}return[Xi(t,s+(t[r]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),n]},bt=class t{constructor({strings:e,_$litType$:r},n){let i;this.parts=[];let s=0,o=0,c=e.length-1,l=this.parts,[a,h]=Qi(e,r);if(this.el=t.createElement(a,n),Se.currentNode=this.el.content,r===2||r===3){let d=this.el.content.firstChild;d.replaceWith(...d.childNodes)}for(;(i=Se.nextNode())!==null&&l.length<c;){if(i.nodeType===1){if(i.hasAttributes())for(let d of i.getAttributeNames())if(d.endsWith(en)){let f=h[o++],p=i.getAttribute(d).split(ce),y=/([.?@])?(.*)/.exec(f);l.push({type:1,index:s,name:y[2],strings:p,ctor:y[1]==="."?Wt:y[1]==="?"?Gt:y[1]==="@"?Zt:Me}),i.removeAttribute(d)}else d.startsWith(ce)&&(l.push({type:6,index:s}),i.removeAttribute(d));if(Yi.test(i.tagName)){let d=i.textContent.split(ce),f=d.length-1;if(f>0){i.textContent=Ht?Ht.emptyScript:"";for(let p=0;p<f;p++)i.append(d[p],yt()),Se.nextNode(),l.push({type:2,index:++s});i.append(d[f],yt())}}}else if(i.nodeType===8)if(i.data===tn)l.push({type:2,index:s});else{let d=-1;for(;(d=i.data.indexOf(ce,d+1))!==-1;)l.push({type:7,index:s}),d+=ce.length-1}s++}}static createElement(e,r){let n=Ee.createElement("template");return n.innerHTML=e,n}};function _e(t,e,r=t,n){if(e===ee)return e;let i=n!==void 0?r._$Co?.[n]:r._$Cl,s=vt(e)?void 0:e._$litDirective$;return i?.constructor!==s&&(i?._$AO?.(!1),s===void 0?i=void 0:(i=new s(t),i._$AT(t,r,n)),n!==void 0?(r._$Co??=[])[n]=i:r._$Cl=i),i!==void 0&&(e=_e(t,i._$AS(t,e.values),i,n)),e}var zt=class{constructor(e,r){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=r}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){let{el:{content:r},parts:n}=this._$AD,i=(e?.creationScope??Ee).importNode(r,!0);Se.currentNode=i;let s=Se.nextNode(),o=0,c=0,l=n[0];for(;l!==void 0;){if(o===l.index){let a;l.type===2?a=new Be(s,s.nextSibling,this,e):l.type===1?a=new l.ctor(s,l.name,l.strings,this,e):l.type===6&&(a=new Jt(s,this,e)),this._$AV.push(a),l=n[++c]}o!==l?.index&&(s=Se.nextNode(),o++)}return Se.currentNode=Ee,i}p(e){let r=0;for(let n of this._$AV)n!==void 0&&(n.strings!==void 0?(n._$AI(e,n,r),r+=n.strings.length-2):n._$AI(e[r])),r++}},Be=class t{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,r,n,i){this.type=2,this._$AH=L,this._$AN=void 0,this._$AA=e,this._$AB=r,this._$AM=n,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode,r=this._$AM;return r!==void 0&&e?.nodeType===11&&(e=r.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,r=this){e=_e(this,e,r),vt(e)?e===L||e==null||e===""?(this._$AH!==L&&this._$AR(),this._$AH=L):e!==this._$AH&&e!==ee&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):Ki(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==L&&vt(this._$AH)?this._$AA.nextSibling.data=e:this.T(Ee.createTextNode(e)),this._$AH=e}$(e){let{values:r,_$litType$:n}=e,i=typeof n=="number"?this._$AC(e):(n.el===void 0&&(n.el=bt.createElement(Xi(n.h,n.h[0]),this.options)),n);if(this._$AH?._$AD===i)this._$AH.p(r);else{let s=new zt(i,this),o=s.u(this.options);s.p(r),this.T(o),this._$AH=s}}_$AC(e){let r=Ji.get(e.strings);return r===void 0&&Ji.set(e.strings,r=new bt(e)),r}k(e){rn(this._$AH)||(this._$AH=[],this._$AR());let r=this._$AH,n,i=0;for(let s of e)i===r.length?r.push(n=new t(this.O(yt()),this.O(yt()),this,this.options)):n=r[i],n._$AI(s),i++;i<r.length&&(this._$AR(n&&n._$AB.nextSibling,i),r.length=i)}_$AR(e=this._$AA.nextSibling,r){for(this._$AP?.(!1,!0,r);e!==this._$AB;){let n=e.nextSibling;e.remove(),e=n}}setConnected(e){this._$AM===void 0&&(this._$Cv=e,this._$AP?.(e))}},Me=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,r,n,i,s){this.type=1,this._$AH=L,this._$AN=void 0,this.element=e,this.name=r,this._$AM=i,this.options=s,n.length>2||n[0]!==""||n[1]!==""?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=L}_$AI(e,r=this,n,i){let s=this.strings,o=!1;if(s===void 0)e=_e(this,e,r,0),o=!vt(e)||e!==this._$AH&&e!==ee,o&&(this._$AH=e);else{let c=e,l,a;for(e=s[0],l=0;l<s.length-1;l++)a=_e(this,c[n+l],r,l),a===ee&&(a=this._$AH[l]),o||=!vt(a)||a!==this._$AH[l],a===L?e=L:e!==L&&(e+=(a??"")+s[l+1]),this._$AH[l]=a}o&&!i&&this.j(e)}j(e){e===L?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}},Wt=class extends Me{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===L?void 0:e}},Gt=class extends Me{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==L)}},Zt=class extends Me{constructor(e,r,n,i,s){super(e,r,n,i,s),this.type=5}_$AI(e,r=this){if((e=_e(this,e,r,0)??L)===ee)return;let n=this._$AH,i=e===L&&n!==L||e.capture!==n.capture||e.once!==n.once||e.passive!==n.passive,s=e!==L&&(n===L||i);i&&this.element.removeEventListener(this.name,this,n),s&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}},Jt=class{constructor(e,r,n){this.element=e,this.type=6,this._$AN=void 0,this._$AM=r,this.options=n}get _$AU(){return this._$AM._$AU}_$AI(e){_e(this,e)}},es={M:en,P:ce,A:tn,C:1,L:Qi,R:zt,D:Ki,V:_e,I:Be,H:Me,N:Gt,U:Zt,B:Wt,F:Jt},Fa=Qr.litHtmlPolyfillSupport;Fa?.(bt,Be),(Qr.litHtmlVersions??=[]).push("3.3.1");var ts=(t,e,r)=>{let n=r?.renderBefore??e,i=n._$litPart$;if(i===void 0){let s=r?.renderBefore??null;n._$litPart$=i=new Be(e.insertBefore(yt(),s),s,void 0,r??{})}return i._$AI(t),i};var sn=globalThis,v=class extends le{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){let r=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=ts(r,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return ee}};v._$litElement$=!0,v.finalized=!0,sn.litElementHydrateSupport?.({LitElement:v});var Va=sn.litElementPolyfillSupport;Va?.({LitElement:v});(sn.litElementVersions??=[]).push("4.2.1");var Kt=class t extends HTMLElement{static observedAttributes=["name"];constructor(){super(),this.attachShadow({mode:"open"})}attributeChangedCallback(e,r,n){if(r!==n&&t.observedAttributes.includes(e)){switch(e){case"name":this.name=n||"";break}this.render()}}resolveIcon(e){throw new Error("Not implemented")}render(){let e=document.createElement("style");for(e.textContent=`
4
- :host {
5
- display: inline-block;
6
- line-height: 0;
7
- }
8
- `;this.shadowRoot?.firstChild;)this.shadowRoot.removeChild(this.shadowRoot.firstChild),this.shadowRoot.appendChild(e);if(!this.name)return;let r=this.resolveIcon(this.name);if(!r){console.warn(`'${this.name}' not found, please add it to ${t.name}`);return}let s=new DOMParser().parseFromString(r,"image/svg+xml").documentElement;s.setAttribute("fill","currentColor"),s.style.width="100%",s.style.height="100%",this.shadowRoot?.appendChild(s)}name=""};var rs={clock:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
9
- <path d="M12 6V12H16.5M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
10
- </svg>`,"arrow-path":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
11
- <path d="M16.0228 9.34841H21.0154V9.34663M2.98413 19.6444V14.6517M2.98413 14.6517L7.97677 14.6517M2.98413 14.6517L6.16502 17.8347C7.15555 18.8271 8.41261 19.58 9.86436 19.969C14.2654 21.1483 18.7892 18.5364 19.9685 14.1353M4.03073 9.86484C5.21 5.46374 9.73377 2.85194 14.1349 4.03121C15.5866 4.4202 16.8437 5.17312 17.8342 6.1655L21.0154 9.34663M21.0154 4.3558V9.34663" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
12
- </svg>`,"x-circle":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
13
- <path d="M9.75 9.75L14.25 14.25M14.25 9.75L9.75 14.25M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
14
- </svg>`,plus:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
15
- <path d="M12 4.5V19.5M19.5 12L4.5 12" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
16
- </svg>`,minus:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
17
- <path d="M5 12H19" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
18
- </svg>`,"user-plus":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
19
- <path d="M18 7.5V10.5M18 10.5V13.5M18 10.5H21M18 10.5H15M12.75 6.375C12.75 8.23896 11.239 9.75 9.375 9.75C7.51104 9.75 6 8.23896 6 6.375C6 4.51104 7.51104 3 9.375 3C11.239 3 12.75 4.51104 12.75 6.375ZM3.00092 19.2343C3.00031 19.198 3 19.1615 3 19.125C3 15.6042 5.85418 12.75 9.375 12.75C12.8958 12.75 15.75 15.6042 15.75 19.125V19.1276C15.75 19.1632 15.7497 19.1988 15.7491 19.2343C13.8874 20.3552 11.7065 21 9.375 21C7.04353 21 4.86264 20.3552 3.00092 19.2343Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
20
- </svg>`,"user-minus":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
21
- <path d="M22 10.5H16M13.75 6.375C13.75 8.23896 12.239 9.75 10.375 9.75C8.51104 9.75 7 8.23896 7 6.375C7 4.51104 8.51104 3 10.375 3C12.239 3 13.75 4.51104 13.75 6.375ZM4.00092 19.2343C4.00031 19.198 4 19.1615 4 19.125C4 15.6042 6.85418 12.75 10.375 12.75C13.8958 12.75 16.75 15.6042 16.75 19.125V19.1276C16.75 19.1632 16.7497 19.1988 16.7491 19.2343C14.8874 20.3552 12.7065 21 10.375 21C8.04353 21 5.86264 20.3552 4.00092 19.2343Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
22
- </svg>`,"x-mark":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
23
- <path d="M6 18L18 6M6 6L18 18" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
24
- </svg>`,"chevron-left":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
25
- <path d="M15.75 19.5L8.25 12L15.75 4.5" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
26
- </svg>`,"chevron-right":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
27
- <path d="M8.25 4.5L15.75 12L8.25 19.5" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
28
- </svg>`,"chevron-up":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
29
- <path d="M4.5 15.75L12 8.25L19.5 15.75" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
30
- </svg>`,"chevron-down":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
31
- <path d="M19.5 8.25L12 15.75L4.5 8.25" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
32
- </svg>`,"arrow-right":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
33
- <path d="M13.5 4.5L21 12M21 12L13.5 19.5M21 12H3" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
34
- </svg>`,"ellipsis-vertical":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
35
- <path d="M12 6.75C11.5858 6.75 11.25 6.41421 11.25 6C11.25 5.58579 11.5858 5.25 12 5.25C12.4142 5.25 12.75 5.58579 12.75 6C12.75 6.41421 12.4142 6.75 12 6.75Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
36
- <path d="M12 12.75C11.5858 12.75 11.25 12.4142 11.25 12C11.25 11.5858 11.5858 11.25 12 11.25C12.4142 11.25 12.75 11.5858 12.75 12C12.75 12.4142 12.4142 12.75 12 12.75Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
37
- <path d="M12 18.75C11.5858 18.75 11.25 18.4142 11.25 18C11.25 17.5858 11.5858 17.25 12 17.25C12.4142 17.25 12.75 17.5858 12.75 18C12.75 18.4142 12.4142 18.75 12 18.75Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
38
- </svg>`,envelope:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
39
- <path d="M21.75 6.75V17.25C21.75 18.4926 20.7426 19.5 19.5 19.5H4.5C3.25736 19.5 2.25 18.4926 2.25 17.25V6.75M21.75 6.75C21.75 5.50736 20.7426 4.5 19.5 4.5H4.5C3.25736 4.5 2.25 5.50736 2.25 6.75M21.75 6.75V6.99271C21.75 7.77405 21.3447 8.49945 20.6792 8.90894L13.1792 13.5243C12.4561 13.9694 11.5439 13.9694 10.8208 13.5243L3.32078 8.90894C2.65535 8.49945 2.25 7.77405 2.25 6.99271V6.75" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
40
- </svg>`,"square-2-stack":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
41
- <path d="M16.5 8.25V6C16.5 4.75736 15.4926 3.75 14.25 3.75H6C4.75736 3.75 3.75 4.75736 3.75 6V14.25C3.75 15.4926 4.75736 16.5 6 16.5H8.25M16.5 8.25H18C19.2426 8.25 20.25 9.25736 20.25 10.5V18C20.25 19.2426 19.2426 20.25 18 20.25H10.5C9.25736 20.25 8.25 19.2426 8.25 18V16.5M16.5 8.25H10.5C9.25736 8.25 8.25 9.25736 8.25 10.5V16.5" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
42
- </svg>`,"clipboard-document":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
43
- <path d="M8.25 7.5V6.10822C8.25 4.97324 9.09499 4.01015 10.2261 3.91627C10.5994 3.88529 10.9739 3.85858 11.3495 3.83619M15.75 18H18C19.2426 18 20.25 16.9926 20.25 15.75V6.10822C20.25 4.97324 19.405 4.01015 18.2739 3.91627C17.9006 3.88529 17.5261 3.85858 17.1505 3.83619M15.75 18.75V16.875C15.75 15.011 14.239 13.5 12.375 13.5H10.875C10.2537 13.5 9.75 12.9963 9.75 12.375V10.875C9.75 9.01104 8.23896 7.5 6.375 7.5H5.25M17.1505 3.83619C16.8672 2.91757 16.0116 2.25 15 2.25H13.5C12.4884 2.25 11.6328 2.91757 11.3495 3.83619M17.1505 3.83619C17.2152 4.04602 17.25 4.26894 17.25 4.5V5.25H11.25V4.5C11.25 4.26894 11.2848 4.04602 11.3495 3.83619M6.75 7.5H4.875C4.25368 7.5 3.75 8.00368 3.75 8.625V20.625C3.75 21.2463 4.25368 21.75 4.875 21.75H14.625C15.2463 21.75 15.75 21.2463 15.75 20.625V16.5C15.75 11.5294 11.7206 7.5 6.75 7.5Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
44
- </svg>`,"clipboard-document-check":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
45
- <path d="M11.3495 3.83619C11.2848 4.04602 11.25 4.26894 11.25 4.5C11.25 4.91421 11.5858 5.25 12 5.25H16.5C16.9142 5.25 17.25 4.91421 17.25 4.5C17.25 4.26894 17.2152 4.04602 17.1505 3.83619M11.3495 3.83619C11.6328 2.91757 12.4884 2.25 13.5 2.25H15C16.0116 2.25 16.8672 2.91757 17.1505 3.83619M11.3495 3.83619C10.9739 3.85858 10.5994 3.88529 10.2261 3.91627C9.09499 4.01015 8.25 4.97324 8.25 6.10822V8.25M17.1505 3.83619C17.5261 3.85858 17.9006 3.88529 18.2739 3.91627C19.405 4.01015 20.25 4.97324 20.25 6.10822V16.5C20.25 17.7426 19.2426 18.75 18 18.75H15.75M8.25 8.25H4.875C4.25368 8.25 3.75 8.75368 3.75 9.375V20.625C3.75 21.2463 4.25368 21.75 4.875 21.75H14.625C15.2463 21.75 15.75 21.2463 15.75 20.625V18.75M8.25 8.25H14.625C15.2463 8.25 15.75 8.75368 15.75 9.375V18.75M7.5 15.75L9 17.25L12 13.5" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
46
- </svg>`,"arrows-right-left":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
47
- <path d="M7.5 21L3 16.5M3 16.5L7.5 12M3 16.5H16.5M16.5 3L21 7.5M21 7.5L16.5 12M21 7.5L7.5 7.5" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
48
- </svg>`,"arrow-top-right-on-square":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
49
- <path d="M13.5 6H5.25C4.00736 6 3 7.00736 3 8.25V18.75C3 19.9926 4.00736 21 5.25 21H15.75C16.9926 21 18 19.9926 18 18.75V10.5M7.5 16.5L21 3M21 3L15.75 3M21 3V8.25" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
50
- </svg>`,"code-bracket-square":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
51
- <path d="M14.25 9.75L16.5 12L14.25 14.25M9.75 14.25L7.5 12L9.75 9.75M6 20.25H18C19.2426 20.25 20.25 19.2426 20.25 18V6C20.25 4.75736 19.2426 3.75 18 3.75H6C4.75736 3.75 3.75 4.75736 3.75 6V18C3.75 19.2426 4.75736 20.25 6 20.25Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
52
- </svg>`,trash:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
53
- <path d="M14.7404 9L14.3942 18M9.60577 18L9.25962 9M19.2276 5.79057C19.5696 5.84221 19.9104 5.89747 20.25 5.95629M19.2276 5.79057L18.1598 19.6726C18.0696 20.8448 17.0921 21.75 15.9164 21.75H8.08357C6.90786 21.75 5.93037 20.8448 5.8402 19.6726L4.77235 5.79057M19.2276 5.79057C18.0812 5.61744 16.9215 5.48485 15.75 5.39432M3.75 5.95629C4.08957 5.89747 4.43037 5.84221 4.77235 5.79057M4.77235 5.79057C5.91878 5.61744 7.07849 5.48485 8.25 5.39432M15.75 5.39432V4.47819C15.75 3.29882 14.8393 2.31423 13.6606 2.27652C13.1092 2.25889 12.5556 2.25 12 2.25C11.4444 2.25 10.8908 2.25889 10.3394 2.27652C9.16065 2.31423 8.25 3.29882 8.25 4.47819V5.39432M15.75 5.39432C14.5126 5.2987 13.262 5.25 12 5.25C10.738 5.25 9.48744 5.2987 8.25 5.39432" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
54
- </svg>`,check:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
55
- <path d="M4.5 12.75L10.5 18.75L19.5 5.25" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
56
- </svg>`,"arrow-down-right":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
57
- <path d="M4.5 4.5L19.5 19.5M19.5 19.5V8.25M19.5 19.5H8.25" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
58
- </svg>`,user:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
59
- <path d="M15.75 6C15.75 8.07107 14.071 9.75 12 9.75C9.9289 9.75 8.24996 8.07107 8.24996 6C8.24996 3.92893 9.9289 2.25 12 2.25C14.071 2.25 15.75 3.92893 15.75 6Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
60
- <path d="M4.5011 20.1182C4.5714 16.0369 7.90184 12.75 12 12.75C16.0982 12.75 19.4287 16.0371 19.4988 20.1185C17.216 21.166 14.6764 21.75 12.0003 21.75C9.32396 21.75 6.78406 21.1659 4.5011 20.1182Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
61
- </svg>`,"credit-card":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
62
- <path d="M2.25 8.25H21.75M2.25 9H21.75M5.25 14.25H11.25M5.25 16.5H8.25M4.5 19.5H19.5C20.7426 19.5 21.75 18.4926 21.75 17.25V6.75C21.75 5.50736 20.7426 4.5 19.5 4.5H4.5C3.25736 4.5 2.25 5.50736 2.25 6.75V17.25C2.25 18.4926 3.25736 19.5 4.5 19.5Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
63
- </svg>`,users:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
64
- <path d="M15 19.1276C15.8329 19.37 16.7138 19.5 17.625 19.5C19.1037 19.5 20.5025 19.1576 21.7464 18.5478C21.7488 18.4905 21.75 18.4329 21.75 18.375C21.75 16.0968 19.9031 14.25 17.625 14.25C16.2069 14.25 14.956 14.9655 14.2136 16.0552M15 19.1276V19.125C15 18.0121 14.7148 16.9658 14.2136 16.0552M15 19.1276C15 19.1632 14.9997 19.1988 14.9991 19.2343C13.1374 20.3552 10.9565 21 8.625 21C6.29353 21 4.11264 20.3552 2.25092 19.2343C2.25031 19.198 2.25 19.1615 2.25 19.125C2.25 15.6042 5.10418 12.75 8.625 12.75C11.0329 12.75 13.129 14.085 14.2136 16.0552M12 6.375C12 8.23896 10.489 9.75 8.625 9.75C6.76104 9.75 5.25 8.23896 5.25 6.375C5.25 4.51104 6.76104 3 8.625 3C10.489 3 12 4.51104 12 6.375ZM20.25 8.625C20.25 10.0747 19.0747 11.25 17.625 11.25C16.1753 11.25 15 10.0747 15 8.625C15 7.17525 16.1753 6 17.625 6C19.0747 6 20.25 7.17525 20.25 8.625Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
65
- </svg>`,"user-group":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
66
- <path d="M17.9999 18.7191C18.2474 18.7396 18.4978 18.75 18.7506 18.75C19.7989 18.75 20.8054 18.5708 21.741 18.2413C21.7473 18.1617 21.7506 18.0812 21.7506 18C21.7506 16.3431 20.4074 15 18.7506 15C18.123 15 17.5403 15.1927 17.0587 15.5222M17.9999 18.7191C18 18.7294 18 18.7397 18 18.75C18 18.975 17.9876 19.1971 17.9635 19.4156C16.2067 20.4237 14.1707 21 12 21C9.82933 21 7.79327 20.4237 6.03651 19.4156C6.01238 19.1971 6 18.975 6 18.75C6 18.7397 6.00003 18.7295 6.00008 18.7192M17.9999 18.7191C17.994 17.5426 17.6494 16.4461 17.0587 15.5222M17.0587 15.5222C15.9928 13.8552 14.1255 12.75 12 12.75C9.87479 12.75 8.00765 13.8549 6.94169 15.5216M6.94169 15.5216C6.46023 15.1925 5.87796 15 5.25073 15C3.59388 15 2.25073 16.3431 2.25073 18C2.25073 18.0812 2.25396 18.1617 2.26029 18.2413C3.19593 18.5708 4.2024 18.75 5.25073 18.75C5.50307 18.75 5.75299 18.7396 6.00008 18.7192M6.94169 15.5216C6.35071 16.4457 6.00598 17.5424 6.00008 18.7192M15 6.75C15 8.40685 13.6569 9.75 12 9.75C10.3431 9.75 9 8.40685 9 6.75C9 5.09315 10.3431 3.75 12 3.75C13.6569 3.75 15 5.09315 15 6.75ZM21 9.75C21 10.9926 19.9926 12 18.75 12C17.5074 12 16.5 10.9926 16.5 9.75C16.5 8.50736 17.5074 7.5 18.75 7.5C19.9926 7.5 21 8.50736 21 9.75ZM7.5 9.75C7.5 10.9926 6.49264 12 5.25 12C4.00736 12 3 10.9926 3 9.75C3 8.50736 4.00736 7.5 5.25 7.5C6.49264 7.5 7.5 8.50736 7.5 9.75Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
67
- </svg>`,"chart-bar":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
68
- <path d="M3 13.125C3 12.5037 3.50368 12 4.125 12H6.375C6.99632 12 7.5 12.5037 7.5 13.125V19.875C7.5 20.4963 6.99632 21 6.375 21H4.125C3.50368 21 3 20.4963 3 19.875V13.125Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
69
- <path d="M9.75 8.625C9.75 8.00368 10.2537 7.5 10.875 7.5H13.125C13.7463 7.5 14.25 8.00368 14.25 8.625V19.875C14.25 20.4963 13.7463 21 13.125 21H10.875C10.2537 21 9.75 20.4963 9.75 19.875V8.625Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
70
- <path d="M16.5 4.125C16.5 3.50368 17.0037 3 17.625 3H19.875C20.4963 3 21 3.50368 21 4.125V19.875C21 20.4963 20.4963 21 19.875 21H17.625C17.0037 21 16.5 20.4963 16.5 19.875V4.125Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
71
- </svg>`,"rectangle-stack":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
72
- <path d="M6 6.87803V6C6 4.75736 7.00736 3.75 8.25 3.75H15.75C16.9926 3.75 18 4.75736 18 6V6.87803M6 6.87803C6.23458 6.79512 6.48702 6.75 6.75 6.75H17.25C17.513 6.75 17.7654 6.79512 18 6.87803M6 6.87803C5.12611 7.18691 4.5 8.02034 4.5 9V9.87803M18 6.87803C18.8739 7.18691 19.5 8.02034 19.5 9V9.87803M19.5 9.87803C19.2654 9.79512 19.013 9.75 18.75 9.75H5.25C4.98702 9.75 4.73458 9.79512 4.5 9.87803M19.5 9.87803C20.3739 10.1869 21 11.0203 21 12V18C21 19.2426 19.9926 20.25 18.75 20.25H5.25C4.00736 20.25 3 19.2426 3 18V12C3 11.0203 3.62611 10.1869 4.5 9.87803" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
73
- </svg>`,"currency-dollar":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
74
- <path d="M12 6V18M9 15.1818L9.87887 15.841C11.0504 16.7197 12.9498 16.7197 14.1214 15.841C15.2929 14.9623 15.2929 13.5377 14.1214 12.659C13.5355 12.2196 12.7677 12 11.9999 12C11.275 12 10.5502 11.7804 9.99709 11.341C8.891 10.4623 8.891 9.03772 9.9971 8.15904C11.1032 7.28036 12.8965 7.28036 14.0026 8.15904L14.4175 8.48863M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
75
- </svg>`,"cog-6-tooth":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
76
- <path d="M9.59356 3.94014C9.68397 3.39768 10.1533 3.00009 10.7033 3.00009H13.2972C13.8472 3.00009 14.3165 3.39768 14.4069 3.94014L14.6204 5.22119C14.6828 5.59523 14.9327 5.9068 15.2645 6.09045C15.3387 6.13151 15.412 6.17393 15.4844 6.21766C15.8095 6.41393 16.2048 6.47495 16.5604 6.34175L17.7772 5.88587C18.2922 5.69293 18.8712 5.9006 19.1462 6.37687L20.4432 8.6233C20.7181 9.09957 20.6085 9.70482 20.1839 10.0544L19.1795 10.8812C18.887 11.122 18.742 11.4938 18.7491 11.8726C18.7498 11.915 18.7502 11.9575 18.7502 12.0001C18.7502 12.0427 18.7498 12.0852 18.7491 12.1275C18.742 12.5064 18.887 12.8782 19.1795 13.119L20.1839 13.9458C20.6085 14.2953 20.7181 14.9006 20.4432 15.3769L19.1462 17.6233C18.8712 18.0996 18.2922 18.3072 17.7772 18.1143L16.5604 17.6584C16.2048 17.5252 15.8095 17.5862 15.4844 17.7825C15.412 17.8263 15.3387 17.8687 15.2645 17.9097C14.9327 18.0934 14.6828 18.4049 14.6204 18.779L14.4069 20.06C14.3165 20.6025 13.8472 21.0001 13.2972 21.0001H10.7033C10.1533 21.0001 9.68397 20.6025 9.59356 20.06L9.38005 18.779C9.31771 18.4049 9.06774 18.0934 8.73597 17.9097C8.66179 17.8687 8.58847 17.8263 8.51604 17.7825C8.19101 17.5863 7.79568 17.5252 7.44011 17.6584L6.22325 18.1143C5.70826 18.3072 5.12926 18.0996 4.85429 17.6233L3.55731 15.3769C3.28234 14.9006 3.39199 14.2954 3.81657 13.9458L4.82092 13.119C5.11343 12.8782 5.25843 12.5064 5.25141 12.1276C5.25063 12.0852 5.25023 12.0427 5.25023 12.0001C5.25023 11.9575 5.25063 11.915 5.25141 11.8726C5.25843 11.4938 5.11343 11.122 4.82092 10.8812L3.81657 10.0544C3.39199 9.70484 3.28234 9.09958 3.55731 8.62332L4.85429 6.37688C5.12926 5.90061 5.70825 5.69295 6.22325 5.88588L7.4401 6.34176C7.79566 6.47496 8.19099 6.41394 8.51603 6.21767C8.58846 6.17393 8.66179 6.13151 8.73597 6.09045C9.06774 5.9068 9.31771 5.59523 9.38005 5.22119L9.59356 3.94014Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
77
- <path d="M15 12C15 13.6569 13.6569 15 12 15C10.3431 15 9 13.6569 9 12C9 10.3432 10.3431 9.00001 12 9.00001C13.6569 9.00001 15 10.3432 15 12Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
78
- </svg>`,sparkles:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
79
- <path d="M9.8132 15.9038L9 18.75L8.1868 15.9038C7.75968 14.4089 6.59112 13.2403 5.09619 12.8132L2.25 12L5.09619 11.1868C6.59113 10.7597 7.75968 9.59112 8.1868 8.09619L9 5.25L9.8132 8.09619C10.2403 9.59113 11.4089 10.7597 12.9038 11.1868L15.75 12L12.9038 12.8132C11.4089 13.2403 10.2403 14.4089 9.8132 15.9038Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
80
- <path d="M18.2589 8.71454L18 9.75L17.7411 8.71454C17.4388 7.50533 16.4947 6.56117 15.2855 6.25887L14.25 6L15.2855 5.74113C16.4947 5.43883 17.4388 4.49467 17.7411 3.28546L18 2.25L18.2589 3.28546C18.5612 4.49467 19.5053 5.43883 20.7145 5.74113L21.75 6L20.7145 6.25887C19.5053 6.56117 18.5612 7.50533 18.2589 8.71454Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
81
- <path d="M16.8942 20.5673L16.5 21.75L16.1058 20.5673C15.8818 19.8954 15.3546 19.3682 14.6827 19.1442L13.5 18.75L14.6827 18.3558C15.3546 18.1318 15.8818 17.6046 16.1058 16.9327L16.5 15.75L16.8942 16.9327C17.1182 17.6046 17.6454 18.1318 18.3173 18.3558L19.5 18.75L18.3173 19.1442C17.6454 19.3682 17.1182 19.8954 16.8942 20.5673Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
82
- </svg>`,"rocket-launch":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
83
- <path d="M15.5904 14.3696C15.6948 14.8128 15.75 15.275 15.75 15.75C15.75 19.0637 13.0637 21.75 9.75 21.75V16.9503M15.5904 14.3696C19.3244 11.6411 21.75 7.22874 21.75 2.25C16.7715 2.25021 12.3595 4.67586 9.63122 8.40975M15.5904 14.3696C13.8819 15.6181 11.8994 16.514 9.75 16.9503M9.63122 8.40975C9.18777 8.30528 8.72534 8.25 8.25 8.25C4.93629 8.25 2.25 10.9363 2.25 14.25H7.05072M9.63122 8.40975C8.38285 10.1183 7.48701 12.1007 7.05072 14.25M9.75 16.9503C9.64659 16.9713 9.54279 16.9912 9.43862 17.0101C8.53171 16.291 7.70991 15.4692 6.99079 14.5623C7.00969 14.4578 7.02967 14.3537 7.05072 14.25M4.81191 16.6408C3.71213 17.4612 3 18.7724 3 20.25C3 20.4869 3.0183 20.7195 3.05356 20.9464C3.28054 20.9817 3.51313 21 3.75 21C5.22758 21 6.53883 20.2879 7.35925 19.1881M16.5 9C16.5 9.82843 15.8284 10.5 15 10.5C14.1716 10.5 13.5 9.82843 13.5 9C13.5 8.17157 14.1716 7.5 15 7.5C15.8284 7.5 16.5 8.17157 16.5 9Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
84
- </svg>`,"paint-brush":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
85
- <path d="M9.53086 16.1224C9.08517 15.0243 8.00801 14.25 6.75 14.25C5.09315 14.25 3.75 15.5931 3.75 17.25C3.75 18.4926 2.74262 19.5 1.49998 19.5C1.44928 19.5 1.39898 19.4983 1.34912 19.495C2.12648 20.8428 3.58229 21.75 5.24998 21.75C7.72821 21.75 9.73854 19.7467 9.74993 17.2711C9.74998 17.2641 9.75 17.2571 9.75 17.25C9.75 16.8512 9.67217 16.4705 9.53086 16.1224ZM9.53086 16.1224C10.7252 15.7153 11.8612 15.1705 12.9175 14.5028M7.875 14.4769C8.2823 13.2797 8.8281 12.1411 9.49724 11.0825M12.9175 14.5028C14.798 13.3141 16.4259 11.7362 17.6806 9.85406L21.5566 4.04006C21.6827 3.85093 21.75 3.6287 21.75 3.40139C21.75 2.76549 21.2345 2.25 20.5986 2.25C20.3713 2.25 20.1491 2.31729 19.9599 2.44338L14.1459 6.31937C12.2638 7.57413 10.6859 9.20204 9.49724 11.0825M12.9175 14.5028C12.2396 12.9833 11.0167 11.7604 9.49724 11.0825" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
86
- </svg>`,"shopping-bag":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
87
- <path d="M15.75 10.5V6C15.75 3.92893 14.0711 2.25 12 2.25C9.92893 2.25 8.25 3.92893 8.25 6V10.5M19.606 8.50723L20.8692 20.5072C20.9391 21.1715 20.4183 21.75 19.7504 21.75H4.24963C3.58172 21.75 3.06089 21.1715 3.13081 20.5072L4.39397 8.50723C4.45424 7.93466 4.93706 7.5 5.51279 7.5H18.4872C19.0629 7.5 19.5458 7.93466 19.606 8.50723ZM8.625 10.5C8.625 10.7071 8.4571 10.875 8.25 10.875C8.04289 10.875 7.875 10.7071 7.875 10.5C7.875 10.2929 8.04289 10.125 8.25 10.125C8.4571 10.125 8.625 10.2929 8.625 10.5ZM16.125 10.5C16.125 10.7071 15.9571 10.875 15.75 10.875C15.5429 10.875 15.375 10.7071 15.375 10.5C15.375 10.2929 15.5429 10.125 15.75 10.125C15.9571 10.125 16.125 10.2929 16.125 10.5Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
88
- </svg>`,"question-mark-circle":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
89
- <path d="M9.87891 7.51884C11.0505 6.49372 12.95 6.49372 14.1215 7.51884C15.2931 8.54397 15.2931 10.206 14.1215 11.2312C13.9176 11.4096 13.6917 11.5569 13.4513 11.6733C12.7056 12.0341 12.0002 12.6716 12.0002 13.5V14.25M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12ZM12 17.25H12.0075V17.2575H12V17.25Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
90
- </svg>`,"puzzle-piece":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
91
- <path d="M14.25 6.08694C14.25 5.73178 14.4361 5.41076 14.6512 5.1282C14.8721 4.8381 15 4.494 15 4.125C15 3.08947 13.9926 2.25 12.75 2.25C11.5074 2.25 10.5 3.08947 10.5 4.125C10.5 4.494 10.6279 4.8381 10.8488 5.1282C11.064 5.41076 11.25 5.73178 11.25 6.08694V6.08694C11.25 6.44822 10.9542 6.73997 10.593 6.72957C9.18939 6.68914 7.80084 6.58845 6.42989 6.43C6.61626 8.04276 6.72269 9.67987 6.74511 11.3373C6.75007 11.7032 6.45293 12 6.08694 12V12C5.73178 12 5.41076 11.814 5.1282 11.5988C4.8381 11.3779 4.494 11.25 4.125 11.25C3.08947 11.25 2.25 12.2574 2.25 13.5C2.25 14.7426 3.08947 15.75 4.125 15.75C4.494 15.75 4.8381 15.6221 5.1282 15.4012C5.41076 15.186 5.73178 15 6.08694 15V15C6.39613 15 6.64157 15.2608 6.6189 15.5691C6.49306 17.2812 6.27742 18.9682 5.97668 20.6256C7.49458 20.8157 9.03451 20.9348 10.5931 20.9797C10.9542 20.9901 11.2501 20.6983 11.2501 20.337V20.337C11.2501 19.9818 11.0641 19.6608 10.8489 19.3782C10.628 19.0881 10.5001 18.744 10.5001 18.375C10.5001 17.3395 11.5075 16.5 12.7501 16.5C13.9928 16.5 15.0001 17.3395 15.0001 18.375C15.0001 18.744 14.8722 19.0881 14.6513 19.3782C14.4362 19.6608 14.2501 19.9818 14.2501 20.337V20.337C14.2501 20.6699 14.5281 20.9357 14.8605 20.9161C16.6992 20.8081 18.5102 20.5965 20.2876 20.2872C20.5571 18.7389 20.7523 17.1652 20.8696 15.5698C20.8923 15.2611 20.6466 15 20.3371 15V15C19.9819 15 19.6609 15.1861 19.3783 15.4013C19.0882 15.6221 18.7441 15.75 18.3751 15.75C17.3396 15.75 16.5001 14.7427 16.5001 13.5C16.5001 12.2574 17.3396 11.25 18.3751 11.25C18.7441 11.25 19.0882 11.378 19.3783 11.5988C19.6609 11.814 19.9819 12 20.3371 12V12C20.7034 12 21.0008 11.703 20.9959 11.3367C20.9713 9.52413 20.8463 7.73572 20.6261 5.97698C18.7403 6.31916 16.816 6.55115 14.8603 6.66605C14.528 6.68557 14.25 6.41979 14.25 6.08694V6.08694Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
92
- </svg>`,"chat-bubble-oval-left":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
93
- <path d="M12 20.25C16.9706 20.25 21 16.5563 21 12C21 7.44365 16.9706 3.75 12 3.75C7.02944 3.75 3 7.44365 3 12C3 14.1036 3.85891 16.0234 5.2728 17.4806C5.70538 17.9265 6.01357 18.5192 5.85933 19.121C5.68829 19.7883 5.368 20.3959 4.93579 20.906C5.0918 20.9339 5.25 20.9558 5.40967 20.9713C5.60376 20.9903 5.80078 21 6 21C7.28201 21 8.47016 20.5979 9.44517 19.9129C10.2551 20.1323 11.1125 20.25 12 20.25Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
94
- </svg>`,"chat-bubble-left-right":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
95
- <path d="M20.25 8.51104C21.1341 8.79549 21.75 9.6392 21.75 10.6082V14.8938C21.75 16.0304 20.9026 16.9943 19.7697 17.0867C19.4308 17.1144 19.0909 17.1386 18.75 17.1592V20.25L15.75 17.25C14.3963 17.25 13.0556 17.1948 11.7302 17.0866C11.4319 17.0623 11.1534 16.9775 10.9049 16.8451M20.25 8.51104C20.0986 8.46232 19.9393 8.43 19.7739 8.41628C18.4472 8.30616 17.1051 8.25 15.75 8.25C14.3948 8.25 13.0528 8.30616 11.7261 8.41627C10.595 8.51015 9.75 9.47323 9.75 10.6082V14.8937C9.75 15.731 10.2099 16.4746 10.9049 16.8451M20.25 8.51104V6.63731C20.25 5.01589 19.0983 3.61065 17.4903 3.40191C15.4478 3.13676 13.365 3 11.2503 3C9.13533 3 7.05233 3.13678 5.00963 3.40199C3.40173 3.61074 2.25 5.01598 2.25 6.63738V12.8626C2.25 14.484 3.40173 15.8893 5.00964 16.098C5.58661 16.1729 6.16679 16.2376 6.75 16.2918V21L10.9049 16.8451" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
96
- </svg>`,"arrow-left-end-on-rectangle":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
97
- <path d="M15.75 9V5.25C15.75 4.00736 14.7426 3 13.5 3L7.5 3C6.25736 3 5.25 4.00736 5.25 5.25L5.25 18.75C5.25 19.9926 6.25736 21 7.5 21H13.5C14.7426 21 15.75 19.9926 15.75 18.75V15M12 9L9 12M9 12L12 15M9 12L21.75 12" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
98
- </svg>`,identification:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
99
- <path d="M15 9H18.75M15 12H18.75M15 15H18.75M4.5 19.5H19.5C20.7426 19.5 21.75 18.4926 21.75 17.25V6.75C21.75 5.50736 20.7426 4.5 19.5 4.5H4.5C3.25736 4.5 2.25 5.50736 2.25 6.75V17.25C2.25 18.4926 3.25736 19.5 4.5 19.5ZM10.5 9.375C10.5 10.4105 9.66053 11.25 8.625 11.25C7.58947 11.25 6.75 10.4105 6.75 9.375C6.75 8.33947 7.58947 7.5 8.625 7.5C9.66053 7.5 10.5 8.33947 10.5 9.375ZM11.7939 15.7114C10.8489 16.2147 9.77021 16.5 8.62484 16.5C7.47948 16.5 6.40074 16.2147 5.45581 15.7114C5.92986 14.4207 7.16983 13.5 8.62484 13.5C10.0799 13.5 11.3198 14.4207 11.7939 15.7114Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
100
- </svg>`,bolt:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
101
- <path d="M3.75 13.5L14.25 2.25L12 10.5H20.25L9.75 21.75L12 13.5H3.75Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
102
- </svg>`,"book-open":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
103
- <path d="M12 6.04168C10.4077 4.61656 8.30506 3.75 6 3.75C4.94809 3.75 3.93834 3.93046 3 4.26212V18.5121C3.93834 18.1805 4.94809 18 6 18C8.30506 18 10.4077 18.8666 12 20.2917M12 6.04168C13.5923 4.61656 15.6949 3.75 18 3.75C19.0519 3.75 20.0617 3.93046 21 4.26212V18.5121C20.0617 18.1805 19.0519 18 18 18C15.6949 18 13.5923 18.8666 12 20.2917M12 6.04168V20.2917" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
104
- </svg>`,"paper-clip":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
105
- <path d="M18.375 12.739L10.682 20.432C8.92462 22.1893 6.07538 22.1893 4.31802 20.432C2.56066 18.6746 2.56066 15.8254 4.31802 14.068L15.2573 3.12868C16.4289 1.95711 18.3283 1.95711 19.4999 3.12868C20.6715 4.30025 20.6715 6.19975 19.4999 7.37132L8.55158 18.3197M8.56066 18.3107C8.55764 18.3137 8.55462 18.3167 8.55158 18.3197M14.2498 8.37865L6.43934 16.1893C5.85355 16.7751 5.85355 17.7249 6.43934 18.3107C7.02211 18.8934 7.9651 18.8964 8.55158 18.3197" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
106
- </svg>`,share:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
107
- <path d="M7.21721 10.9071C6.83295 10.2169 6.096 9.75 5.25 9.75C4.00736 9.75 3 10.7574 3 12C3 13.2426 4.00736 14.25 5.25 14.25C6.096 14.25 6.83295 13.7831 7.21721 13.0929M7.21721 10.9071C7.39737 11.2307 7.5 11.6034 7.5 12C7.5 12.3966 7.39737 12.7693 7.21721 13.0929M7.21721 10.9071L16.7828 5.5929M7.21721 13.0929L16.7828 18.4071M16.7828 18.4071C16.6026 18.7307 16.5 19.1034 16.5 19.5C16.5 20.7426 17.5074 21.75 18.75 21.75C19.9926 21.75 21 20.7426 21 19.5C21 18.2574 19.9926 17.25 18.75 17.25C17.904 17.25 17.1671 17.7169 16.7828 18.4071ZM16.7828 5.5929C17.1671 6.28309 17.904 6.75 18.75 6.75C19.9926 6.75 21 5.74264 21 4.5C21 3.25736 19.9926 2.25 18.75 2.25C17.5074 2.25 16.5 3.25736 16.5 4.5C16.5 4.89664 16.6026 5.26931 16.7828 5.5929Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
108
- </svg>`,"calendar-days":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
109
- <path d="M6.75 3V5.25M17.25 3V5.25M3 18.75V7.5C3 6.25736 4.00736 5.25 5.25 5.25H18.75C19.9926 5.25 21 6.25736 21 7.5V18.75M3 18.75C3 19.9926 4.00736 21 5.25 21H18.75C19.9926 21 21 19.9926 21 18.75M3 18.75V11.25C3 10.0074 4.00736 9 5.25 9H18.75C19.9926 9 21 10.0074 21 11.25V18.75M12 12.75H12.0075V12.7575H12V12.75ZM12 15H12.0075V15.0075H12V15ZM12 17.25H12.0075V17.2575H12V17.25ZM9.75 15H9.7575V15.0075H9.75V15ZM9.75 17.25H9.7575V17.2575H9.75V17.25ZM7.5 15H7.5075V15.0075H7.5V15ZM7.5 17.25H7.5075V17.2575H7.5V17.25ZM14.25 12.75H14.2575V12.7575H14.25V12.75ZM14.25 15H14.2575V15.0075H14.25V15ZM14.25 17.25H14.2575V17.2575H14.25V17.25ZM16.5 12.75H16.5075V12.7575H16.5V12.75ZM16.5 15H16.5075V15.0075H16.5V15Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
110
- </svg>`,map:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
111
- <path d="M9 6.75002V15M15 9.00002V17.25M15.5031 20.7485L20.3781 18.311C20.7592 18.1204 21 17.7309 21 17.3047V4.82031C21 3.98401 20.1199 3.44007 19.3719 3.81408L15.5031 5.74847C15.1864 5.90683 14.8136 5.90683 14.4969 5.74847L9.50312 3.25158C9.1864 3.09322 8.8136 3.09322 8.49688 3.25158L3.62188 5.68908C3.24075 5.87965 3 6.26919 3 6.69531V19.1797C3 20.016 3.8801 20.56 4.62811 20.186L8.49688 18.2516C8.8136 18.0932 9.1864 18.0932 9.50312 18.2516L14.4969 20.7485C14.8136 20.9068 15.1864 20.9068 15.5031 20.7485Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
112
- </svg>`,"document-text":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
113
- <path d="M19.5 14.25V11.625C19.5 9.76104 17.989 8.25 16.125 8.25H14.625C14.0037 8.25 13.5 7.74632 13.5 7.125V5.625C13.5 3.76104 11.989 2.25 10.125 2.25H8.25M8.25 15H15.75M8.25 18H12M10.5 2.25H5.625C5.00368 2.25 4.5 2.75368 4.5 3.375V20.625C4.5 21.2463 5.00368 21.75 5.625 21.75H18.375C18.9963 21.75 19.5 21.2463 19.5 20.625V11.25C19.5 6.27944 15.4706 2.25 10.5 2.25Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
114
- </svg>`,link:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
115
- <path d="M13.1903 8.68842C13.6393 8.90291 14.0601 9.19611 14.432 9.56802C16.1893 11.3254 16.1893 14.1746 14.432 15.932L9.93198 20.432C8.17462 22.1893 5.32538 22.1893 3.56802 20.432C1.81066 18.6746 1.81066 15.8254 3.56802 14.068L5.32499 12.311M18.675 11.689L20.432 9.93198C22.1893 8.17462 22.1893 5.32538 20.432 3.56802C18.6746 1.81066 15.8254 1.81066 14.068 3.56802L9.56802 8.06802C7.81066 9.82538 7.81066 12.6746 9.56802 14.432C9.93992 14.8039 10.3607 15.0971 10.8097 15.3116" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
116
- </svg>`,"globe-alt":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
117
- <path d="M12 21C16.1926 21 19.7156 18.1332 20.7157 14.2529M12 21C7.80742 21 4.28442 18.1332 3.2843 14.2529M12 21C14.4853 21 16.5 16.9706 16.5 12C16.5 7.02944 14.4853 3 12 3M12 21C9.51472 21 7.5 16.9706 7.5 12C7.5 7.02944 9.51472 3 12 3M12 3C15.3652 3 18.299 4.84694 19.8431 7.58245M12 3C8.63481 3 5.70099 4.84694 4.15692 7.58245M19.8431 7.58245C17.7397 9.40039 14.9983 10.5 12 10.5C9.00172 10.5 6.26027 9.40039 4.15692 7.58245M19.8431 7.58245C20.5797 8.88743 21 10.3946 21 12C21 12.778 20.9013 13.5329 20.7157 14.2529M20.7157 14.2529C18.1334 15.6847 15.1619 16.5 12 16.5C8.8381 16.5 5.86662 15.6847 3.2843 14.2529M3.2843 14.2529C3.09871 13.5329 3 12.778 3 12C3 10.3946 3.42032 8.88743 4.15692 7.58245" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
118
- </svg>`,"exclamation-triangle":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
119
- <path d="M11.9998 9.00006V12.7501M2.69653 16.1257C1.83114 17.6257 2.91371 19.5001 4.64544 19.5001H19.3541C21.0858 19.5001 22.1684 17.6257 21.303 16.1257L13.9487 3.37819C13.0828 1.87736 10.9167 1.87736 10.0509 3.37819L2.69653 16.1257ZM11.9998 15.7501H12.0073V15.7576H11.9998V15.7501Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
120
- </svg>`,"arrow-down":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
121
- <path d="M19.5 13.5L12 21M12 21L4.5 13.5M12 21L12 3" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
122
- </svg>`,"bars-3":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
123
- <path d="M3.75 6.75H20.25M3.75 12H20.25M3.75 17.25H20.25" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
124
- </svg>`,phone:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
125
- <path d="M2.25 6.75C2.25 15.0343 8.96573 21.75 17.25 21.75H19.5C20.7426 21.75 21.75 20.7426 21.75 19.5V18.1284C21.75 17.6121 21.3987 17.1622 20.8979 17.037L16.4747 15.9312C16.0355 15.8214 15.5734 15.9855 15.3018 16.3476L14.3316 17.6412C14.05 18.0166 13.563 18.1827 13.1223 18.0212C9.81539 16.8098 7.19015 14.1846 5.97876 10.8777C5.81734 10.437 5.98336 9.94998 6.3588 9.6684L7.65242 8.69818C8.01453 8.4266 8.17861 7.96445 8.06883 7.52533L6.96304 3.10215C6.83783 2.60133 6.38785 2.25 5.87163 2.25H4.5C3.25736 2.25 2.25 3.25736 2.25 4.5V6.75Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
126
- </svg>`,"eye-slash":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
127
- <path d="M3.97993 8.22257C3.05683 9.31382 2.35242 10.596 1.93436 12.0015C3.22565 16.338 7.24311 19.5 11.9991 19.5C12.9917 19.5 13.9521 19.3623 14.8623 19.1049M6.22763 6.22763C7.88389 5.13558 9.86771 4.5 12 4.5C16.756 4.5 20.7734 7.66205 22.0647 11.9985C21.3528 14.3919 19.8106 16.4277 17.772 17.772M6.22763 6.22763L3 3M6.22763 6.22763L9.87868 9.87868M17.772 17.772L21 21M17.772 17.772L14.1213 14.1213M14.1213 14.1213C14.6642 13.5784 15 12.8284 15 12C15 10.3431 13.6569 9 12 9C11.1716 9 10.4216 9.33579 9.87868 9.87868M14.1213 14.1213L9.87868 9.87868" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
128
- </svg>`,star:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
129
- <path d="M11.4806 3.4987C11.6728 3.03673 12.3272 3.03673 12.5193 3.4987L14.6453 8.61016C14.7263 8.80492 14.9095 8.93799 15.1197 8.95485L20.638 9.39724C21.1367 9.43722 21.339 10.0596 20.959 10.3851L16.7546 13.9866C16.5945 14.1238 16.5245 14.3391 16.5734 14.5443L17.8579 19.9292C17.974 20.4159 17.4446 20.8005 17.0176 20.5397L12.2932 17.6541C12.1132 17.5441 11.8868 17.5441 11.7068 17.6541L6.98238 20.5397C6.55539 20.8005 6.02594 20.4159 6.14203 19.9292L7.42652 14.5443C7.47546 14.3391 7.4055 14.1238 7.24531 13.9866L3.04099 10.3851C2.661 10.0596 2.86323 9.43722 3.36197 9.39724L8.88022 8.95485C9.09048 8.93799 9.27363 8.80492 9.35464 8.61016L11.4806 3.4987Z" stroke="#0F172A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
130
- </svg>`};var Na=rs,on=class extends Kt{resolveIcon(e){let r=Na[e];if(!r)throw console.warn("hi-outline: icon not found",e),new Error(`Icon ${e} not found`);return r}render(){super.render();let e=this.shadowRoot?.querySelector("svg");if(!e)throw new Error("svgEl not found "+this.name);e.setAttribute("fill","none"),e.querySelectorAll("[stroke]").forEach(r=>{r.setAttribute("stroke","currentColor")})}};customElements.get("hi-outline")||customElements.define("hi-outline",on);var Yt=class{#e;#t;#r;constructor(e,r){if(!e)throw new Error("host is required");if(!r)throw new Error("config is required");this.#e=e,this.#e.addController(this),this.#t=r}connect(e){this.#t=e,this.#r=this.#n()}hostConnected(){this.#r||setTimeout(()=>{this.#r||(this.#r=this.#n())},0)}hostDisconnected(){this.#r?.close(1e3,"lit_host_disconnected"),this.#r=void 0}send(e){this.#r?.send(e)}close(e,r){this.#r?.close(e,r)}get isConnected(){return this.#r?.readyState===WebSocket.OPEN}get isConnecting(){return this.#r?.readyState===WebSocket.CONNECTING}#n(){let e=new WebSocket(this.#t.url());return this.#t.onClose&&(e.onclose=this.#t.onClose),this.#t.onOpen&&(e.onopen=this.#t.onOpen),this.#t.onError&&(e.onerror=this.#t.onError),this.#t.onMessage&&(e.onmessage=this.#t.onMessage),e}};var ns=Array.isArray;var an=t=>!!(t&&t.constructor&&t.call&&t.apply);var is=t=>!(!t||!t.then||!an(t.then));var ln=(t,e,r=!1)=>{if(!t)return[];let n=(s,o)=>e(s)-e(o),i=(s,o)=>e(o)-e(s);return t.slice().sort(r===!0?i:n)};function*qe(t,e,r=i=>i,n=1){let i=an(r)?r:()=>r,s=e?t:0,o=e??t;for(let c=s;c<=o&&(yield i(c),!(c+n>o));c+=n);}var cn=(t,e,r,n)=>Array.from(qe(t,e,r,n));var un=(t,e)=>t?t.reduce((r,n)=>{let[i,s]=r;return e(n)?[[...i,n],s]:[i,[...s,n]]},[[],[]]):[[],[]];var hn=class extends Error{constructor(e=[]){super();let r=e.find(n=>n.name)?.name??"";this.name=`AggregateError(${r}...)`,this.message=`AggregateError with ${e.length} errors`,this.stack=e.find(n=>n.stack)?.stack??this.stack,this.errors=e}},dn=async(t,e,r)=>{let n=e.map((a,h)=>({index:h,item:a})),i=async a=>{let h=[];for(;;){let d=n.pop();if(!d)return a(h);let[f,p]=await Ve(r)(d.item);h.push({error:f,result:p,index:d.index})}},s=cn(1,t).map(()=>new Promise(i)),o=await Promise.all(s),[c,l]=un(ln(o.flat(),a=>a.index),a=>!!a.error);if(c.length>0)throw new hn(c.map(a=>a.error));return l.map(a=>a.result)};var pn=async(t,e)=>{let r=t?.times??3,n=t?.delay,i=t?.backoff??null;for(let s of qe(1,r)){let[o,c]=await Ve(e)(l=>{throw{_exited:l}});if(!o)return c;if(o._exited)throw o._exited;if(s===r)throw o;n&&await Fe(n),i&&await Fe(i(s))}},Fe=t=>new Promise(e=>setTimeout(e,t)),Ve=t=>(...e)=>{try{let r=t(...e);return is(r)?r.then(n=>[void 0,n]).catch(n=>[n,void 0]):[void 0,r]}catch(r){return[r,void 0]}};var Ne=({interval:t},e)=>{let r=!0,n,i=(...s)=>{r&&(e(...s),r=!1,n=setTimeout(()=>{r=!0,n=void 0},t))};return i.isThrottled=()=>n!==void 0,i};async function ss(t,e){let r=t?.times??3,n=t?.delay,i=t?.backoff??null;for(let s of qe(1,r)){let[o,c]=await Ve(e)(l=>{throw{_exited:l}});if(!o)return c;if(o._exited)throw o._exited;if(s===r)throw o;n&&await Fe(n),i&&await Fe(i(s))}throw new Error("unreachable")}var Ha=!0,fn="Invariant failed";function J(t,e){if(!t){if(Ha)throw new Error(fn);var r=typeof e=="function"?e():e,n=r?"".concat(fn,": ").concat(r):fn;throw new Error(n)}}var Xt=class{#e;#t;#r=null;isStreaming=!1;typingIndicator;ranOutOfCredits=!1;messages=[];conversationId="";#n=0;#i;isLiveMode=!1;get hasQueuedMessages(){return this.#s.length>0}constructor(e,r){this.#e=e,this.#t=r,this.#t.autoConnect!==!1&&(this.#r=this.initWS()),e.addController(this)}#s=[];#o(e,{expectStreaming:r=!1}={}){return this.ranOutOfCredits?!1:this.#r?this.#r.isConnecting?(console.warn("WebSocket is connecting, message not sent",e),!1):this.#r.isConnected?(r&&!this.isLiveMode&&(this.isStreaming=!0,this.#e.requestUpdate()),this.#r.send(JSON.stringify(e)),!0):(console.warn("WebSocket is not connected, message not sent",e),this.retry(),!1):(console.warn("WebSocket not initialized, message not sent",e),this.connect(),!1)}async enqueueMessage(e,{expectStreaming:r=!1}={}){if(this.#s.length>0){let n=this.#s[this.#s.length-1];if(e.type==="USER_INPUT"&&n.message.type==="USER_INPUT"&&e.value===n.message.value)return!0}return this.#r||this.connect(),this.#r?.isConnected?this.#o(e,{expectStreaming:r}):(this.#s.push({message:e,options:{expectStreaming:r}}),this.#e.requestUpdate(),this.#r&&!this.#r.isConnecting&&!this.#r.isConnected&&this.retry(),await ss({times:5,delay:2e3},async()=>{if(this.#r?.isConnected){let n=[...this.#s];this.#s=[],this.#e.requestUpdate();let i=!1;for(let{message:s,options:o}of n){let c=this.#o(s,o);s===e&&(i=c)}return i}else throw new Error("WebSocket not connected yet")}).catch(()=>(console.warn("Failed to send message after retries",e),this.#s=[],this.#e.requestUpdate(),!1)))}async sendUserInput(e,{xUserData:r,xCustomInstructions:n,role:i="user",expectStreaming:s=!1,requestInputResponse:o}={}){return this.enqueueMessage({type:"USER_INPUT",value:e,role:i,xUserData:r,xCustomInstructions:n,requestInputResponse:o},{expectStreaming:s})}async enqueueUserInput(e,{xUserData:r,xCustomInstructions:n,role:i="user",expectStreaming:s=!1,requestInputResponse:o}={}){return this.enqueueMessage({type:"USER_INPUT",value:e,role:i,xUserData:r,xCustomInstructions:n,requestInputResponse:o},{expectStreaming:s})}sendImageDelete(e){J(e,"imageId is required"),this.enqueueMessage({type:"USER_FILE_DELETE",imageId:e}).catch(console.warn)}sendUserCancel(){this.enqueueMessage({type:"USER_CANCEL"}).catch(console.warn)}sendUserTypingStart(){this.#o({type:"USER_TYPING_START"})}sendUserTypingStop(){this.enqueueMessage({type:"USER_TYPING_STOP"}).catch(console.warn)}sendNewChat(){this.enqueueMessage({type:"NEW_CHAT"})}sendUserMeta(e){this.enqueueMessage({type:"USER_META",metadata:e}).catch(console.warn)}reloadConfig(){this.enqueueMessage({type:"RELOAD_CONFIG"}).catch(console.warn)}close(){this.#r?.close(1e3,"closed by user")}retry(){clearTimeout(this.#i),this.#i=setTimeout(()=>{this.#t.onReconnect?.(),this.#r=this.initWS()},1e3*this.#n),this.#n++}initWS(){return new Yt(this.#e,{url:()=>this.#t.url(this.conversationId,{}),onOpen:e=>this.#a(e),onMessage:e=>this.#h(JSON.parse(e.data)),onError:e=>this.#c(e),onClose:e=>this.#l(e)})}#a(e){this.#n=0}#h(e){switch(e.type){case"NEW_MESSAGE":{this.messages=[...this.messages,{...e.message,streaming:!0}].filter((r,n,i)=>n===i.findIndex(s=>s.id===r.id)),this.typingIndicator=void 0,this.#e.requestUpdate(),this.#t.onNewMessage?.(e.message),this.#t.persistConversationState?.(this.conversationId,this.messages);break}case"APPEND_MESSAGE":{let r=this.messages.find(n=>n.id===e.message.id);if(r){switch(e.message.content_type){case"text":{let{part:n,delta:i,position:s}=e.message;r.content=r.content.slice(0,s)+i,r.parts||=[],r.parts[n]={text:r.parts[n]&&"text"in r.parts[n]?(r.parts[n].text||"").slice(0,s)+i:i};break}case"html":{let{part:n,delta:i,position:s}=e.message;r.parts||=[],r.parts[n]={html:r.parts[n]&&"html"in r.parts[n]?(r.parts[n].html||"").slice(0,s)+i:i};break}case"data":{let{part:n}=e.message;r.parts||=[],r.parts[n]={tag:e.message.tag,data:r.parts[n]&&"data"in r.parts[n]?Object.assign(r.parts[n].data||{},e.message.data):e.message.data};break}}e.metadata&&(r.metadata=e.metadata),this.#t.onMessageAppend?.(e),this.#e.requestUpdate()}else throw new Error(`Message with id ${e.message.id} not found`);break}case"MESSAGE_DONE":{let r=this.messages.find(n=>n.id===e.message.id);if(r)Object.assign(r,e.message),r.streaming=!1;else throw new Error(`Message with id ${e.message.id} not found`);this.isStreaming=!1,this.#e.requestUpdate(),this.#t.onMessageDone?.(e,r),this.#t.persistConversationState?.(this.conversationId,this.messages);break}case"MESSAGE_CANCEL":{this.isStreaming=!1,this.typingIndicator=void 0,this.#e.requestUpdate();break}case"ERROR":{this.#t.onMessageError?.(e);break}case"CONNECTED":{this.conversationId=e.conversationId,this.messages=e.messages,this.#t.onConnect?.(e.conversationId,e.metadata),this.#t.persistConversationState?.(e.conversationId,e.messages),this.isLiveMode=e.metadata.isLiveMode,this.#e.requestUpdate();break}case"TYPING_START":{e.role==="assistant"&&(this.isStreaming=!0),this.typingIndicator={role:e.role,metadata:e.metadata},this.#e.requestUpdate();break}case"TYPING_STOP":{this.typingIndicator=void 0,this.#e.requestUpdate();break}case"RAN_OUT_OF_CREDITS":{this.ranOutOfCredits=!0,this.#e.requestUpdate();break}case"RECONNECT":{this.reconnectSocket(),this.#e.requestUpdate();break}default:console.warn(`Unknown message type: ${JSON.stringify(e)}`)}}#c(e){console.error("onError",e),this.#t.onError?.(e)}#l(e){this.#e.isConnected&&this.#r&&!this.#r.isConnected&&e.reason==="reconnect"&&this.retry(),this.isStreaming=!1,this.typingIndicator=void 0,this.#e.requestUpdate(),this.#t.onClose?.()}hostConnected(){this.conversationId=this.#t.restoreConversationState?.()?.conversationId||"",this.messages=this.#t.restoreConversationState?.()?.messages||[]}reset(){this.#t.onReset?.(),this.isStreaming=!1,this.typingIndicator=void 0,this.ranOutOfCredits=!1,this.messages=[],this.conversationId="",this.isLiveMode=!1,this.#s=[],this.#e.requestUpdate()}hostDisconnected(){clearTimeout(this.#i)}connect(){this.#r||(this.#r=this.initWS())}reconnectSocket(){this.#r?.close(1e3,"destroy"),this.#r=this.initWS()}get lastMsg(){if(this.messages.length>0)return this.messages[this.messages.length-1]}get isConnected(){return this.#r?.isConnected??!1}};var Gh=Symbol(),za=Symbol();var os=Object.getPrototypeOf,mn=new WeakMap,Wa=t=>t&&(mn.has(t)?mn.get(t):os(t)===Object.prototype||os(t)===Array.prototype);var as=t=>Wa(t)&&t[za]||null,gn=(t,e=!0)=>{mn.set(t,e)};var yn=t=>typeof t=="object"&&t!==null,Ga=t=>yn(t)&&!vn.has(t)&&(Array.isArray(t)||!(Symbol.iterator in t))&&!(t instanceof WeakMap)&&!(t instanceof WeakSet)&&!(t instanceof Error)&&!(t instanceof Number)&&!(t instanceof Date)&&!(t instanceof String)&&!(t instanceof RegExp)&&!(t instanceof ArrayBuffer)&&!(t instanceof Promise),us=(t,e)=>{let r=ls.get(t);if(r?.[0]===e)return r[1];let n=Array.isArray(t)?[]:Object.create(Object.getPrototypeOf(t));return gn(n,!0),ls.set(t,[e,n]),Reflect.ownKeys(t).forEach(i=>{if(Object.getOwnPropertyDescriptor(n,i))return;let s=Reflect.get(t,i),{enumerable:o}=Reflect.getOwnPropertyDescriptor(t,i),c={value:s,enumerable:o,configurable:!0};if(vn.has(s))gn(s,!1);else if(Ie.has(s)){let[l,a]=Ie.get(s);c.value=us(l,a())}Object.defineProperty(n,i,c)}),Object.preventExtensions(n)},Za=(t,e,r,n)=>({deleteProperty(i,s){let o=Reflect.get(i,s);r(s);let c=Reflect.deleteProperty(i,s);return c&&n(["delete",[s],o]),c},set(i,s,o,c){let l=!t()&&Reflect.has(i,s),a=Reflect.get(i,s,c);if(l&&(cs(a,o)||Qt.has(o)&&cs(a,Qt.get(o))))return!0;r(s),yn(o)&&(o=as(o)||o);let h=!Ie.has(o)&&Ka(o)?bn(o):o;return e(s,h),Reflect.set(i,s,h,c),n(["set",[s],o,a]),!0}}),Ie=new WeakMap,vn=new WeakSet,ls=new WeakMap,wn=[1],Qt=new WeakMap,cs=Object.is,Ja=(t,e)=>new Proxy(t,e),Ka=Ga,Ya=us,Xa=Za;function bn(t={}){if(!yn(t))throw new Error("object required");let e=Qt.get(t);if(e)return e;let r=wn[0],n=new Set,i=(b,x=++wn[0])=>{r!==x&&(s=r=x,n.forEach(w=>w(b,x)))},s=r,o=(b=wn[0])=>(s!==b&&(s=b,l.forEach(([x])=>{let w=x[1](b);w>r&&(r=w)})),r),c=b=>(x,w)=>{let $=[...x];$[1]=[b,...$[1]],i($,w)},l=new Map,a=(b,x)=>{let w=!vn.has(x)&&Ie.get(x);if(w){if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&l.has(b))throw new Error("prop listener already exists");if(n.size){let $=w[2](c(b));l.set(b,[w,$])}else l.set(b,[w])}},h=b=>{var x;let w=l.get(b);w&&(l.delete(b),(x=w[1])==null||x.call(w))},d=b=>(n.add(b),n.size===1&&l.forEach(([w,$],S)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&$)throw new Error("remove already exists");let T=w[2](c(S));l.set(S,[w,T])}),()=>{n.delete(b),n.size===0&&l.forEach(([w,$],S)=>{$&&($(),l.set(S,[w]))})}),f=!0,p=Xa(()=>f,a,h,i),y=Ja(t,p);Qt.set(t,y);let E=[t,o,d];return Ie.set(y,E),Reflect.ownKeys(t).forEach(b=>{let x=Object.getOwnPropertyDescriptor(t,b);"value"in x&&x.writable&&(y[b]=t[b])}),f=!1,y}function er(t,e,r){let n=Ie.get(t);(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!n&&console.warn("Please use proxy object");let i,s=[],o=n[2],c=!1,a=o(h=>{if(s.push(h),r){e(s.splice(0));return}i||(i=Promise.resolve().then(()=>{i=void 0,c&&e(s.splice(0))}))});return c=!0,()=>{c=!1,a()}}function He(t){let e=Ie.get(t);(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!e&&console.warn("Please use proxy object");let[r,n]=e;return Ya(r,n())}var ze=class{#e;#t;#r;#n=()=>{};constructor(e,r){this.#e=e,this.#t=r,this.#r=He(r),e.addController(this)}get state(){return this.#r}get value(){return this.#r}hostConnected(){this.#n(),this.#n=er(this.#t,()=>{this.#r=He(this.#t),this.#e.requestUpdate()})}hostDisconnected(){this.#n()}};var me=class{#e;#t;proxyObject;#r;#n=()=>{};constructor(e,r,n){this.#e=e,this.#t=n,this.proxyObject=bn(r),this.#r=He(this.proxyObject),e.addController(this)}get state(){return this.#r}get value(){return this.#r}hostConnected(){this.#n(),this.#t?.subscribe&&(this.#n=er(this.proxyObject,()=>{this.#r=He(this.proxyObject),this.#e.requestUpdate()}))}hostDisconnected(){this.#n()}};var tr=class{#e;#t;#r;#n=null;#i=null;constructor(e,{provider:r,tag:n,key:i}){this.#e=e,this.#t=n,this.#r=i,e.addController(this)}get value(){return this.#i?this.#i.value:null}hostConnected(){if(this.#i||(this.#n=Qa(this.#e,this.#t),!this.#n))return;let e=this.#n[this.#r]instanceof me?this.#n[this.#r]:null;e&&(this.#i=new ze(this.#e,e.proxyObject))}hostDisconnected(){}};function Qa(t,e){let r=t;for(;r;){let n=r.closest(e);if(n)return n;let i=r.getRootNode();if(i instanceof ShadowRoot)r=i.host;else break}return null}var hs=()=>{if(window.Shopify)try{return{customerId:el()}}catch{return null}return null},el=()=>{try{let t=[()=>window.ShopifyAnalytics?.meta?.page?.customerId,()=>window.meta?.page?.customerId,()=>window._st?.cid,()=>window.ShopifyAnalytics?.lib?.user()?.traits()?.uniqToken];for(let e of t)try{let r=e();if(/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i.test(r))continue;if(r)return r}catch{}}catch{return null}return null},ds=async()=>{try{return(await(await fetch(window.Shopify.routes.root+"cart.js")).json()).items.map(n=>({id:n.id,name:n.title,quantity:n.quantity,price:n.price,variantId:n.variant_id,sku:n.sku,url:n.url,description:n.product_description,image:n.featured_image?.url}))}catch{return[]}};function ps(t,e="http"){return t.startsWith("http://")||t.startsWith("https://")?t:`${e}://${t}`}function xn(t){return new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+!*'();@&=,$]*)*(\\?[-a-z\\d%_.~+!*'();@&=,$]*)?(\\#[-a-z\\d%_.~+!*'();@&=,$]*)?$","i").test(t)}function fs(t,e){let r=t instanceof URL?t:new URL(t);if(e)for(let[n,i]of e)r.searchParams.set(n,i);return r}var ms=()=>{if(window.ShopRenter)try{let t=rl();return{customerEmail:t?.customerEmail,customerId:t?.customerId,customerName:t?.customerName}}catch{return null}return null},rl=()=>{try{if(window.ShopRenter){let t=window.ShopRenter.customer;return{customerEmail:t?.email,customerId:t?.userId,customerName:[t?.name?.firstName,t?.name?.lastName].filter(Boolean).join(" ")}}return{customerEmail:null,customerId:null,customerName:null}}catch{return{customerEmail:null,customerId:null,customerName:null}}},gs=async()=>{try{let t=window.ShopRenter.shop?.domain;if(!t)return[];let e=ps(t,"https")+"/cart.json";return(await(await fetch(e)).json()).items.map(s=>({id:s.id,name:s.name,quantity:s.quantity,price:s.price,sku:s.sku,image:s.image,url:s.href}))}catch{return[]}};var ws=()=>{if(window.UNAS)try{let t=window.UNAS.customer;return{customerEmail:t?.email,customerId:t?.id}}catch(t){return console.error("Error fetching customer information:",t),null}return null},ys=async()=>new Promise((t,e)=>{try{window.UNAS.getCart(r=>{let i=r.items.map(s=>({id:s.id,name:s.name,quantity:s.quantity,price:s.price,sku:s.sku}));t(i)})}catch(r){console.error("Error fetching cart information:",r),e(r)}});var kn;function Cn(t){return{lang:t?.lang??kn?.lang,message:t?.message,abortEarly:t?.abortEarly??kn?.abortEarly,abortPipeEarly:t?.abortPipeEarly??kn?.abortPipeEarly}}var sl;function ol(t){return sl?.get(t)}var al;function ll(t){return al?.get(t)}var cl;function ul(t,e){return cl?.get(t)?.get(e)}function bs(t){let e=typeof t;return e==="string"?`"${t}"`:e==="number"||e==="bigint"||e==="boolean"?`${t}`:e==="object"||e==="function"?(t&&Object.getPrototypeOf(t)?.constructor?.name)??"null":e}function z(t,e,r,n,i){let s=i&&"input"in i?i.input:r.value,o=i?.expected??t.expects??null,c=i?.received??bs(s),l={kind:t.kind,type:t.type,input:s,expected:o,received:c,message:`Invalid ${e}: ${o?`Expected ${o} but r`:"R"}eceived ${c}`,requirement:t.requirement,path:i?.path,issues:i?.issues,lang:n.lang,abortEarly:n.abortEarly,abortPipeEarly:n.abortPipeEarly},a=t.kind==="schema",h=i?.message??t.message??ul(t.reference,l.lang)??(a?ll(l.lang):null)??n.message??ol(l.lang);h!==void 0&&(l.message=typeof h=="function"?h(l):h),a&&(r.typed=!1),r.issues?r.issues.push(l):r.issues=[l]}function W(t){return{version:1,vendor:"valibot",validate(e){return t["~run"]({value:e},Cn())}}}function hl(t,e){return Object.hasOwn(t,e)&&e!=="__proto__"&&e!=="prototype"&&e!=="constructor"}function xs(t,e){let r=[...new Set(t)];return r.length>1?`(${r.join(` ${e} `)})`:r[0]??"never"}var dl=class extends Error{constructor(t){super(t[0].message),this.name="ValiError",this.issues=t}};function $n(t,e){return{kind:"validation",type:"max_length",reference:$n,async:!1,expects:`<=${t}`,requirement:t,message:e,"~run"(r,n){return r.typed&&r.value.length>this.requirement&&z(this,"length",r,n,{received:`${r.value.length}`}),r}}}function Sn(t,e){return{kind:"validation",type:"min_length",reference:Sn,async:!1,expects:`>=${t}`,requirement:t,message:e,"~run"(r,n){return r.typed&&r.value.length<this.requirement&&z(this,"length",r,n,{received:`${r.value.length}`}),r}}}function pl(t,e,r){return typeof t.fallback=="function"?t.fallback(e,r):t.fallback}function ks(t,e,r){return typeof t.default=="function"?t.default(e,r):t.default}function En(){return{kind:"schema",type:"any",reference:En,expects:"any",async:!1,get"~standard"(){return W(this)},"~run"(t){return t.typed=!0,t}}}function We(t,e){return{kind:"schema",type:"array",reference:We,expects:"Array",async:!1,item:t,message:e,get"~standard"(){return W(this)},"~run"(r,n){let i=r.value;if(Array.isArray(i)){r.typed=!0,r.value=[];for(let s=0;s<i.length;s++){let o=i[s],c=this.item["~run"]({value:o},n);if(c.issues){let l={type:"array",origin:"value",input:i,key:s,value:o};for(let a of c.issues)a.path?a.path.unshift(l):a.path=[l],r.issues?.push(a);if(r.issues||(r.issues=c.issues),n.abortEarly){r.typed=!1;break}}c.typed||(r.typed=!1),r.value.push(c.value)}}else z(this,"type",r,n);return r}}}function _n(t){return{kind:"schema",type:"boolean",reference:_n,expects:"boolean",async:!1,message:t,get"~standard"(){return W(this)},"~run"(e,r){return typeof e.value=="boolean"?e.typed=!0:z(this,"type",e,r),e}}}function Mn(t){return{kind:"schema",type:"null",reference:Mn,expects:"null",async:!1,message:t,get"~standard"(){return W(this)},"~run"(e,r){return e.value===null?e.typed=!0:z(this,"type",e,r),e}}}function rr(t){return{kind:"schema",type:"number",reference:rr,expects:"number",async:!1,message:t,get"~standard"(){return W(this)},"~run"(e,r){return typeof e.value=="number"&&!isNaN(e.value)?e.typed=!0:z(this,"type",e,r),e}}}function ue(t,e){return{kind:"schema",type:"object",reference:ue,expects:"Object",async:!1,entries:t,message:e,get"~standard"(){return W(this)},"~run"(r,n){let i=r.value;if(i&&typeof i=="object"){r.typed=!0,r.value={};for(let s in this.entries){let o=this.entries[s];if(s in i||(o.type==="exact_optional"||o.type==="optional"||o.type==="nullish")&&o.default!==void 0){let c=s in i?i[s]:ks(o),l=o["~run"]({value:c},n);if(l.issues){let a={type:"object",origin:"value",input:i,key:s,value:c};for(let h of l.issues)h.path?h.path.unshift(a):h.path=[a],r.issues?.push(h);if(r.issues||(r.issues=l.issues),n.abortEarly){r.typed=!1;break}}l.typed||(r.typed=!1),r.value[s]=l.value}else if(o.fallback!==void 0)r.value[s]=pl(o);else if(o.type!=="exact_optional"&&o.type!=="optional"&&o.type!=="nullish"&&(z(this,"key",r,n,{input:void 0,expected:`"${s}"`,path:[{type:"object",origin:"key",input:i,key:s,value:i[s]}]}),n.abortEarly))break}}else z(this,"type",r,n);return r}}}function Ge(t,e){return{kind:"schema",type:"optional",reference:Ge,expects:`(${t.expects} | undefined)`,async:!1,wrapped:t,default:e,get"~standard"(){return W(this)},"~run"(r,n){return r.value===void 0&&(this.default!==void 0&&(r.value=ks(this,r,n)),r.value===void 0)?(r.typed=!0,r):this.wrapped["~run"](r,n)}}}function In(t,e){return{kind:"schema",type:"picklist",reference:In,expects:xs(t.map(bs),"|"),async:!1,options:t,message:e,get"~standard"(){return W(this)},"~run"(r,n){return this.options.includes(r.value)?r.typed=!0:z(this,"type",r,n),r}}}function nr(t,e,r){return{kind:"schema",type:"record",reference:nr,expects:"Object",async:!1,key:t,value:e,message:r,get"~standard"(){return W(this)},"~run"(n,i){let s=n.value;if(s&&typeof s=="object"){n.typed=!0,n.value={};for(let o in s)if(hl(s,o)){let c=s[o],l=this.key["~run"]({value:o},i);if(l.issues){let h={type:"object",origin:"key",input:s,key:o,value:c};for(let d of l.issues)d.path=[h],n.issues?.push(d);if(n.issues||(n.issues=l.issues),i.abortEarly){n.typed=!1;break}}let a=this.value["~run"]({value:c},i);if(a.issues){let h={type:"object",origin:"value",input:s,key:o,value:c};for(let d of a.issues)d.path?d.path.unshift(h):d.path=[h],n.issues?.push(d);if(n.issues||(n.issues=a.issues),i.abortEarly){n.typed=!1;break}}(!l.typed||!a.typed)&&(n.typed=!1),l.typed&&(n.value[l.value]=a.value)}}else z(this,"type",n,i);return n}}}function O(t){return{kind:"schema",type:"string",reference:O,expects:"string",async:!1,message:t,get"~standard"(){return W(this)},"~run"(e,r){return typeof e.value=="string"?e.typed=!0:z(this,"type",e,r),e}}}function vs(t){let e;if(t)for(let r of t)e?e.push(...r.issues):e=r.issues;return e}function Ze(t,e){return{kind:"schema",type:"union",reference:Ze,expects:xs(t.map(r=>r.expects),"|"),async:!1,options:t,message:e,get"~standard"(){return W(this)},"~run"(r,n){let i,s,o;for(let c of this.options){let l=c["~run"]({value:r.value},n);if(l.typed)if(l.issues)s?s.push(l):s=[l];else{i=l;break}else o?o.push(l):o=[l]}if(i)return i;if(s){if(s.length===1)return s[0];z(this,"type",r,n,{issues:vs(s)}),r.typed=!0}else{if(o?.length===1)return o[0];z(this,"type",r,n,{issues:vs(o)})}return r}}}function Cs(t,e,r){let n=t["~run"]({value:e},Cn(r));if(n.issues)throw new dl(n.issues);return n.value}function $s(t,e){let r={};for(let n in t.entries)r[n]=!e||e.includes(n)?Ge(t.entries[n]):t.entries[n];return{...t,entries:r,get"~standard"(){return W(this)}}}function Ss(...t){return{...t[0],pipe:t,get"~standard"(){return W(this)},"~run"(e,r){for(let n of t)if(n.kind!=="metadata"){if(e.issues&&(n.kind==="schema"||n.kind==="transformation")){e.typed=!1;break}(!e.issues||!r.abortEarly&&!r.abortPipeEarly)&&(e=n["~run"](e,r))}return e}}}function xt(t,e,r){let n=t["~run"]({value:e},Cn(r));return{typed:n.typed,success:!n.issues,output:n.value,issues:n.issues}}var Es=nr(O(),Ze([O(),rr(),_n(),Mn()])),_s=Ss(O(),Sn(1),$n(5e3)),Ms=()=>{try{return window.UNAS?ws():window.Shopify?hs():window.ShopRenter?ms():null}catch{return null}},Is=async()=>{try{return window.UNAS?await ys():window.Shopify?await ds():window.ShopRenter?await gs():[]}catch{return[]}},Je={schema:ue({conversationId:Ge(O()),messages:Ge(We(ue({id:O(),timestamp:rr(),role:In(["user","assistant","support"]),content:O(),parts:Ge(We(Ze([ue({text:O()}),ue({html:O()}),ue({tag:O(),data:nr(O(),En())})])))})))}),getStorageKey(t){if(!t)throw new Error("widgetId is not set");return`_molin_${t}`},persist(t,e,r){let n=this.getStorageKey(t);localStorage.setItem(n,JSON.stringify({conversationId:e,messages:r}))},restore(t){try{let e=this.getStorageKey(t),r=JSON.parse(localStorage.getItem(e)||"{}"),n=Cs(this.schema,r);return{conversationId:n.conversationId||"",messages:n.messages||[]}}catch(e){return console.error("Failed to restore conversation state:",e),{conversationId:"",messages:[]}}},reset(t){let e=this.getStorageKey(t);localStorage.removeItem(e)}};var Ke=class t extends v{static properties={widgetId:{type:String},config:{type:Object},callbacks:{type:Object},xUserData:{type:Object},xCustomInstructions:{type:Object},autoConnect:{type:Boolean}};contextCtrl;constructor(){super(),this.widgetId="",this.config={},this.callbacks={},this.xUserData=void 0,this.xCustomInstructions=void 0,this.autoConnect=!1,this.contextCtrl=new me(this,{config:this.config,callbacks:this.callbacks,xUserData:this.xUserData,xCustomInstructions:this.xCustomInstructions,widgetId:this.widgetId,conversationId:"",messages:[],isStreaming:!1,typingIndicator:void 0,ranOutOfCredits:!1,isLiveMode:!1,lastMsg:void 0,hasQueuedMessages:!1,isConnected:()=>this.#i.isConnected,sendUserInput:this.sendUserInput.bind(this),sendUserCancel:this.sendUserCancel.bind(this),sendUserTypingStart:this.sendUserTypingStart.bind(this),sendUserTypingStop:this.sendUserTypingStop.bind(this),sendNewChat:this.sendNewChat.bind(this),reset:this.reset.bind(this),reloadConfig:this.reloadConfig.bind(this),enqueueUserInput:this.enqueueUserInput.bind(this),connect:this.connect.bind(this),sendImageDelete:this.#i.sendImageDelete.bind(this.#i)})}connectedCallback(){super.connectedCallback(),this.updated()}updated(){this.autoConnect&&this.#i.connect(),Object.assign(this.contextCtrl.proxyObject,{widgetId:this.widgetId,config:this.config,callbacks:this.callbacks,xUserData:this.#t,xCustomInstructions:this.#r,conversationId:this.#i.conversationId,messages:this.#e,isStreaming:this.#i.isStreaming,typingIndicator:this.#i.typingIndicator,ranOutOfCredits:this.#i.ranOutOfCredits,isLiveMode:this.#i.isLiveMode,lastMsg:this.#i.lastMsg,hasQueuedMessages:this.#i.hasQueuedMessages,sendUserInput:this.sendUserInput.bind(this),sendUserCancel:this.sendUserCancel.bind(this),sendUserTypingStart:this.sendUserTypingStart.bind(this),sendUserTypingStop:this.sendUserTypingStop.bind(this),reset:this.reset.bind(this),reloadConfig:this.reloadConfig.bind(this),enqueueUserInput:this.enqueueUserInput.bind(this),connect:this.connect.bind(this),sendImageDelete:this.#i.sendImageDelete.bind(this.#i)}),this.#s()}get#e(){return this.#i?.ranOutOfCredits?[{id:crypto.randomUUID(),role:"assistant",content:"Sorry, I've run out of credits. Please contact the shop directly.",timestamp:Date.now()}]:this.#i?.messages||[]}#t;#r;#n=null;get#i(){return this.#n||(this.#n=new Xt(this,{autoConnect:this.autoConnect,url:e=>{let r=new URL(this.config.wsApiUrl);return r.searchParams.set("widgetId",this.widgetId),r.searchParams.set("conversationId",e),r.searchParams.set("pageUrl",window.location.href),r},onReconnect:()=>{},onError:e=>{console.error("ws error",e)},onClose:()=>{},onNewMessage:e=>{e.role==="assistant"&&this.callbacks.onNewMessageStartedStreaming?.({widgetId:this.widgetId,message:e,conversationId:this.#i.conversationId})},onMessageAppend:e=>{},onMessageDone:(e,r)=>{r.role==="assistant"&&this.callbacks.onMessageEndedStreaming?.({widgetId:this.widgetId,text:r.content??"",message:r,usage_TOKENS_COMPLETION:e.message.usage.TOKENS_COMPLETION,conversationId:this.#i.conversationId})},onMessageError:e=>{console.error("ws message error",e),e.message&&this.callbacks.onError?.({widgetId:this.widgetId,error:"WS: "+e.message})},onReset:()=>{Je.reset(this.widgetId)},onConnect:(e,r)=>{let n=Ms();this.#i.sendUserMeta({xUserData:this.xUserData,xCustomInstructions:this.xCustomInstructions,customerInformation:n,language:window.navigator.language,cart:[]}),Is().then(i=>{i?.length>0&&this.#i.sendUserMeta({xUserData:this.xUserData,xCustomInstructions:this.xCustomInstructions,customerInformation:n,cart:i,language:window.navigator.language})}).catch(i=>{console.error(i)}),this.dispatchEvent(new t.ConnectedEvent({conversationId:e,metadata:r,widgetId:this.widgetId,pendingImages:r?.pendingImages||[]}))},persistConversationState:(e,r)=>{Je.persist(this.widgetId,e,r)},restoreConversationState:()=>Je.restore(this.widgetId)})),this.#n}#s(){function e(n){if(!n)return;let i;try{i=typeof n=="object"?n:JSON.parse(n)}catch(o){console.error("Molin: user-data is not valid JSON",o);return}if(!i||typeof i!="object"||Object.keys(i).length===0)return;let s=xt(Es,i);if(!s.success){console.error("Molin: user-data does not pass schema validation",s.issues);return}return s.output}function r(n){if(!n)return;let i=xt(_s,n);if(!i.success){console.error("Molin: custom-instructions does not pass schema validation",i.issues);return}return i.output}this.#t=e(this.xUserData),this.#r=r(this.xCustomInstructions)}async sendUserInput(e,r={}){let n={xUserData:this.xUserData,xCustomInstructions:this.xCustomInstructions,...r},i=await this.#i.sendUserInput(e,n);return i&&this.callbacks.onUserSentInput?.({widgetId:this.widgetId,text:e,example:!1,conversationId:this.#i.conversationId}),i}async enqueueUserInput(e,r={}){let n={xUserData:this.xUserData,xCustomInstructions:this.xCustomInstructions,role:"user",expectStreaming:!0,...r};return this.#i.enqueueUserInput(e,n)}sendUserCancel(){this.#i.sendUserCancel(),this.callbacks.onUserCanceledStreaming?.({widgetId:this.widgetId})}sendUserTypingStart(){this.#i.sendUserTypingStart()}sendUserTypingStop(){this.#i.sendUserTypingStop()}sendNewChat(){this.#i.sendNewChat()}reset(){this.#i.reset()}reloadConfig(){this.#i.reloadConfig()}connect(){this.#i.connect()}render(){return u`<slot></slot>`}};function As(t){let e=new tr(t,{provider:Ke,tag:"mw-context-widget",key:"contextCtrl"});return new Proxy({value:null},{get(r,n){if(n==="value")return e.value}})}Ke.ConnectedEvent=class extends CustomEvent{static type="mw-context-widget:connected";constructor(e,r={}){super(Ke.ConnectedEvent.type,{detail:e,bubbles:!0,composed:!0,...r})}};customElements.get("mw-context-widget")||customElements.define("mw-context-widget",Ke);function Bn(t){return[...t.v,(t.i?"!":"")+t.n].join(":")}function fl(t,e=","){return t.map(Bn).join(e)}var Ps=typeof CSS<"u"&&CSS.escape||(t=>t.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function sr(t){for(var e=9,r=t.length;r--;)e=Math.imul(e^t.charCodeAt(r),1597334677);return"#"+((e^e>>>9)>>>0).toString(36)}function lr(t,e="@media "){return e+I(t).map(r=>(typeof r=="string"&&(r={min:r}),r.raw||Object.keys(r).map(n=>`(${n}-width:${r[n]})`).join(" and "))).join(",")}function I(t=[]){return Array.isArray(t)?t:t==null?[]:[t]}function Ts(t){return t}function cr(){}var P={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function Rs(t){return t.match(/[-=:;]/g)?.length||0}function Dn(t){return Math.min(/(?:^|width[^\d]+)(\d+(?:.\d+)?)(p)?/.test(t)?Math.max(0,29.63*(+RegExp.$1/(RegExp.$2?15:1))**.137-43):0,15)<<22|Math.min(Rs(t),15)<<18}var ml=["rst-c","st-ch","h-chi","y-lin","nk","sited","ecked","pty","ad-on","cus-w","ver","cus","cus-v","tive","sable","tiona","quire"];function qn({n:t,i:e,v:r=[]},n,i,s){t&&(t=Bn({n:t,i:e,v:r})),s=[...I(s)];for(let c of r){let l=n.theme("screens",c);for(let a of I(l&&lr(l)||n.v(c))){var o;s.push(a),i|=l?67108864|Dn(a):c=="dark"?1073741824:a[0]=="@"?Dn(a):(o=a,1<<~(/:([a-z-]+)/.test(o)&&~ml.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:t,p:i,r:s,i:e}}var Bs=new Map;function On(t){if(t.d){let e=[],r=An(t.r.reduce((n,i)=>i[0]=="@"?(e.push(i),n):i?An(n,s=>An(i,o=>{let c=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(o);if(c){let l=s.indexOf(c[1]);return~l?s.slice(0,l)+c[0]+s.slice(l+c[1].length):Tn(s,o)}return Tn(o,s)})):n,"&"),n=>Tn(n,t.n?"."+Ps(t.n):""));return r&&e.push(r.replace(/:merge\((.+?)\)/g,"$1")),e.reduceRight((n,i)=>i+"{"+n+"}",t.d)}}function An(t,e){return t.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(r,n,i)=>e(n)+i)}function Tn(t,e){return t.replace(/&/g,e)}var Ls=new Intl.Collator("en",{numeric:!0});function qs(t,e){for(var r=0,n=t.length;r<n;){let i=n+r>>1;0>=Fs(t[i],e)?r=i+1:n=i}return n}function Fs(t,e){let r=t.p&P.o;return r==(e.p&P.o)&&(r==P.b||r==P.o)?0:t.p-e.p||t.o-e.o||Ls.compare(js(t.n),js(e.n))||Ls.compare(Ds(t.n),Ds(e.n))}function js(t){return(t||"").split(/:/).pop().split("/").pop()||"\0"}function Ds(t){return(t||"").replace(/\W/g,e=>String.fromCharCode(127+e.charCodeAt(0)))+"\0"}function Ln(t,e){return Math.round(parseInt(t,16)*e)}function K(t,e={}){if(typeof t=="function")return t(e);let{opacityValue:r="1",opacityVariable:n}=e,i=n?`var(${n})`:r;if(t.includes("<alpha-value>"))return t.replace("<alpha-value>",i);if(t[0]=="#"&&(t.length==4||t.length==7)){let s=(t.length-1)/3,o=[17,1,.062272][s-1];return`rgba(${[Ln(t.substr(1,s),o),Ln(t.substr(1+s,s),o),Ln(t.substr(1+2*s,s),o),i]})`}return i=="1"?t:i=="0"?"#0000":t.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${i})`)}function Vs(t,e,r,n,i=[]){return(function s(o,{n:c,p:l,r:a=[],i:h},d){let f=[],p="",y=0,E=0;for(let w in o||{}){var b,x;let $=o[w];if(w[0]=="@"){if(!$)continue;if(w[1]=="a"){f.push(...Vn(c,l,ar(""+$),d,l,a,h,!0));continue}if(w[1]=="l"){for(let S of I($))f.push(...s(S,{n:c,p:(b=P[w[7]],l&~P.o|b),r:w[7]=="d"?[]:a,i:h},d));continue}if(w[1]=="i"){f.push(...I($).map(S=>({p:-1,o:0,r:[],d:w+" "+S})));continue}if(w[1]=="k"){f.push({p:P.d,o:0,r:[w],d:s($,{p:P.d},d).map(On).join("")});continue}if(w[1]=="f"){f.push(...I($).map(S=>({p:P.d,o:0,r:[w],d:s(S,{p:P.d},d).map(On).join("")})));continue}}if(typeof $!="object"||Array.isArray($))w=="label"&&$?c=$+sr(JSON.stringify([l,h,o])):($||$===0)&&(w=w.replace(/[A-Z]/g,S=>"-"+S.toLowerCase()),E+=1,y=Math.max(y,(x=w)[0]=="-"?0:Rs(x)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(x)?+!!RegExp.$1||-!!RegExp.$2:0)+1),p+=(p?";":"")+I($).map(S=>d.s(w,Fn(""+S,d.theme)+(h?" !important":""))).join(";"));else if(w[0]=="@"||w.includes("&")){let S=l;w[0]=="@"&&(w=w.replace(/\bscreen\(([^)]+)\)/g,(T,U)=>{let B=d.theme("screens",U);return B?(S|=67108864,lr(B,"")):T}),S|=Dn(w)),f.push(...s($,{n:c,p:S,r:[...a,w],i:h},d))}else f.push(...s($,{p:l,r:[...a,w]},d))}return f.unshift({n:c,p:l,o:Math.max(0,15-E)+1.5*Math.min(y||15,15),r:a,d:p}),f.sort(Fs)})(t,qn(e,r,n,i),r)}function Fn(t,e){return t.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(r,n,i,s,o="")=>{let c=e(i,o);return typeof c=="function"&&/color|fill|stroke/i.test(i)?K(c):""+I(c).filter(l=>Object(l)!==l)})}function Ns(t,e){let r,n=[];for(let i of t)i.d&&i.n?r?.p==i.p&&""+r.r==""+i.r?(r.c=[r.c,i.c].filter(Boolean).join(" "),r.d=r.d+";"+i.d):n.push(r={...i,n:i.n&&e}):n.push({...i,n:i.n&&e});return n}function or(t,e,r=P.u,n,i){let s=[];for(let o of t)for(let c of(function(l,a,h,d,f){l={...l,i:l.i||f};let p=(function(y,E){let b=Bs.get(y.n);return b?b(y,E):E.r(y.n,y.v[0]=="dark")})(l,a);return p?typeof p=="string"?({r:d,p:h}=qn(l,a,h,d),Ns(or(ar(p),a,h,d,l.i),l.n)):Array.isArray(p)?p.map(y=>{var E,b;return{o:0,...y,r:[...I(d),...I(y.r)],p:(E=h,b=y.p??h,E&~P.o|b)}}):Vs(p,l,a,h,d):[{c:Bn(l),p:0,o:0,r:[]}]})(o,e,r,n,i))s.splice(qs(s,c),0,c);return s}function Vn(t,e,r,n,i,s,o,c){return Ns((c?r.flatMap(l=>or([l],n,i,s,o)):or(r,n,i,s,o)).map(l=>l.p&P.o&&(l.n||e==P.b)?{...l,p:l.p&~P.o|e,o:0}:l),t)}function gl(t,e,r,n){var i;return i=(s,o)=>{let{n:c,p:l,r:a,i:h}=qn(s,o,e);return r&&Vn(c,e,r,o,l,a,h,n)},Bs.set(t,i),t}function jn(t,e,r){if(t[t.length-1]!="("){let n=[],i=!1,s=!1,o="";for(let c of t)if(!(c=="("||/[~@]$/.test(c))){if(c[0]=="!"&&(c=c.slice(1),i=!i),c.endsWith(":")){n[c=="dark:"?"unshift":"push"](c.slice(0,-1));continue}c[0]=="-"&&(c=c.slice(1),s=!s),c.endsWith("-")&&(c=c.slice(0,-1)),c&&c!="&"&&(o+=(o&&"-")+c)}o&&(s&&(o="-"+o),e[0].push({n:o,v:n.filter(wl),i}))}}function wl(t,e,r){return r.indexOf(t)==e}var Os=new Map;function ar(t){let e=Os.get(t);if(!e){let r=[],n=[[]],i=0,s=0,o=null,c=0,l=(a,h=0)=>{i!=c&&(r.push(t.slice(i,c+h)),a&&jn(r,n)),i=c+1};for(;c<t.length;c++){let a=t[c];if(s)t[c-1]!="\\"&&(s+=+(a=="[")||-(a=="]"));else if(a=="[")s+=1;else if(o)t[c-1]!="\\"&&o.test(t.slice(c))&&(o=null,i=c+RegExp.lastMatch.length);else if(a=="/"&&t[c-1]!="\\"&&(t[c+1]=="*"||t[c+1]=="/"))o=t[c+1]=="*"?/^\*\//:/^[\r\n]/;else if(a=="(")l(),r.push(a);else if(a==":")t[c+1]!=":"&&l(!1,1);else if(/[\s,)]/.test(a)){l(!0);let h=r.lastIndexOf("(");if(a==")"){let d=r[h-1];if(/[~@]$/.test(d)){let f=n.shift();r.length=h,jn([...r,"#"],n);let{v:p}=n[0].pop();for(let y of f)y.v.splice(+(y.v[0]=="dark")-+(p[0]=="dark"),p.length);jn([...r,gl(d.length>1?d.slice(0,-1)+sr(JSON.stringify([d,f])):d+"("+fl(f)+")",P.a,f,/@$/.test(d))],n)}h=r.lastIndexOf("(",h-1)}r.length=h+1}else/[~@]/.test(a)&&t[c+1]=="("&&n.unshift([])}l(!0),Os.set(t,e=n[0])}return e}function m(t,e,r){return[t,Un(e,r)]}function Un(t,e){return typeof t=="function"?t:typeof t=="string"&&/^[\w-]+$/.test(t)?(r,n)=>({[t]:e?e(r,n):Pn(r,1)}):r=>t||{[r[1]]:Pn(r,2)}}function Pn(t,e,r=t.slice(e).find(Boolean)||t.$$||t.input){return t.input[0]=="-"?`calc(${r} * -1)`:r}function g(t,e,r,n){return[t,Nn(e,r,n)]}function Nn(t,e,r){let n=typeof e=="string"?(i,s)=>({[e]:r?r(i,s):i._}):e||(({1:i,_:s},o,c)=>({[i||c]:s}));return(i,s)=>{let o=Hs(t||i[1]),c=s.theme(o,i.$$)??ne(i.$$,o,s);if(c!=null)return i._=Pn(i,0,c),n(i,s,o)}}function R(t,e={},r){return[t,yl(e,r)]}function yl(t={},e){return(r,n)=>{let{section:i=Hs(r[0]).replace("-","")+"Color"}=t,[s,o]=vl(r.$$);if(!s)return;let c=n.theme(i,s)||ne(s,i,n);if(!c||typeof c=="object")return;let{opacityVariable:l=`--tw-${r[0].replace(/-$/,"")}-opacity`,opacitySection:a=i.replace("Color","Opacity"),property:h=i,selector:d}=t,f=n.theme(a,o||"DEFAULT")||o&&ne(o,a,n),p=e||(({_:E})=>{let b=kt(h,E);return d?{[d]:b}:b});r._={value:K(c,{opacityVariable:l||void 0,opacityValue:f||void 0}),color:E=>K(c,E),opacityVariable:l||void 0,opacityValue:f||void 0};let y=p(r,n);if(!r.dark){let E=n.d(i,s,c);E&&E!==c&&(r._={value:K(E,{opacityVariable:l||void 0,opacityValue:f||"1"}),color:b=>K(E,b),opacityVariable:l||void 0,opacityValue:f||void 0},y={"&":y,[n.v("dark")]:p(r,n)})}return y}}function vl(t){return(t.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function kt(t,e){let r={};return typeof e=="string"?r[t]=e:(e.opacityVariable&&e.value.includes(e.opacityVariable)&&(r[e.opacityVariable]=e.opacityValue||"1"),r[t]=e.value),r}function ne(t,e,r){if(t[0]=="["&&t.slice(-1)=="]"){if(t=Ye(Fn(t.slice(1,-1),r.theme)),!e)return t;if(!(/color|fill|stroke/i.test(e)&&!(/^color:/.test(t)||/^(#|((hsl|rgb)a?|hwb|lab|lch|color)\(|[a-z]+$)/.test(t))||/image/i.test(e)&&!(/^image:/.test(t)||/^[a-z-]+\(/.test(t))||/weight/i.test(e)&&!(/^(number|any):/.test(t)||/^\d+$/.test(t))||/position/i.test(e)&&/^(length|size):/.test(t)))return t.replace(/^[a-z-]+:/,"")}}function Hs(t){return t.replace(/-./g,e=>e[1].toUpperCase())}function Ye(t){return t.includes("url(")?t.replace(/(.*?)(url\(.*?\))(.*?)/g,(e,r="",n,i="")=>Ye(r)+n+Ye(i)):t.replace(/(^|[^\\])_+/g,(e,r)=>r+" ".repeat(e.length-r.length)).replace(/\\_/g,"_").replace(/(calc|min|max|clamp)\(.+\)/g,e=>e.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g,"$1 $2 "))}function Ct({presets:t=[],...e}){let r={darkMode:void 0,darkColor:void 0,preflight:e.preflight!==!1&&[],theme:{},variants:I(e.variants),rules:I(e.rules),ignorelist:I(e.ignorelist),hash:void 0,stringify:(n,i)=>n+":"+i,finalize:[]};for(let n of I([...t,{darkMode:e.darkMode,darkColor:e.darkColor,preflight:e.preflight!==!1&&I(e.preflight),theme:e.theme,hash:e.hash,stringify:e.stringify,finalize:e.finalize}])){let{preflight:i,darkMode:s=r.darkMode,darkColor:o=r.darkColor,theme:c,variants:l,rules:a,ignorelist:h,hash:d=r.hash,stringify:f=r.stringify,finalize:p}=typeof n=="function"?n(r):n;r={preflight:r.preflight!==!1&&i!==!1&&[...r.preflight,...I(i)],darkMode:s,darkColor:o,theme:{...r.theme,...c,extend:{...r.theme.extend,...c?.extend}},variants:[...r.variants,...I(l)],rules:[...r.rules,...I(a)],ignorelist:[...r.ignorelist,...I(h)],hash:d,stringify:f,finalize:[...r.finalize,...I(p)]}}return r}function Us(t,e,r,n,i,s){for(let o of e){let c=r.get(o);c||r.set(o,c=n(o));let l=c(t,i,s);if(l)return l}}function bl(t){var e;return Rn(t[0],typeof(e=t[1])=="function"?e:()=>e)}function xl(t){var e,r;return Array.isArray(t)?Rn(t[0],Un(t[1],t[2])):Rn(t,Un(e,r))}function Rn(t,e){return zs(t,(r,n,i,s)=>{let o=n.exec(r);if(o)return o.$$=r.slice(o[0].length),o.dark=s,e(o,i)})}function zs(t,e){let r=I(t).map(kl);return(n,i,s)=>{for(let o of r){let c=e(n,o,i,s);if(c)return c}}}function kl(t){return typeof t=="string"?RegExp("^"+t+(t.includes("$")||t.slice(-1)=="-"?"":"$")):t}function Ws(t,e){let r=Ct(t),n=(function({theme:l,darkMode:a,darkColor:h=cr,variants:d,rules:f,hash:p,stringify:y,ignorelist:E,finalize:b}){let x=new Map,w=new Map,$=new Map,S=new Map,T=zs(E,(M,q)=>q.test(M));d.push(["dark",Array.isArray(a)||a=="class"?`${I(a)[1]||".dark"} &`:typeof a=="string"&&a!="media"?a:"@media (prefers-color-scheme:dark)"]);let U=typeof p=="function"?M=>p(M,sr):p?sr:Ts;U!==Ts&&b.push(M=>({...M,n:M.n&&U(M.n),d:M.d?.replace(/--(tw(?:-[\w-]+)?)\b/g,(q,N)=>"--"+U(N).replace("#",""))}));let B={theme:(function({extend:M={},...q}){let N={},Zr={get colors(){return xe("colors")},theme:xe,negative(){return{}},breakpoints(j){let F={};for(let H in j)typeof j[H]=="string"&&(F["screen-"+H]=j[H]);return F}};return xe;function xe(j,F,H,ht){if(j){if({1:j,2:ht}=/^(\S+?)(?:\s*\/\s*([^/]+))?$/.exec(j)||[,j],/[.[]/.test(j)){let ae=[];j.replace(/\[([^\]]+)\]|([^.[]+)/g,(Ce,pt,$a=pt)=>ae.push($a)),j=ae.shift(),H=F,F=ae.join("-")}let re=N[j]||Object.assign(Object.assign(N[j]={},qt(q,j)),qt(M,j));if(F==null)return re;F||(F="DEFAULT");let ke=re[F]??F.split("-").reduce((ae,Ce)=>ae?.[Ce],re)??H;return ht?K(ke,{opacityValue:Fn(ht,xe)}):ke}let dt={};for(let re of[...Object.keys(q),...Object.keys(M)])dt[re]=xe(re);return dt}function qt(j,F){let H=j[F];return typeof H=="function"&&(H=H(Zr)),H&&/color|fill|stroke/i.test(F)?(function ht(dt,re=[]){let ke={};for(let ae in dt){let Ce=dt[ae],pt=[...re,ae];ke[pt.join("-")]=Ce,ae=="DEFAULT"&&(pt=re,ke[re.join("-")]=Ce),typeof Ce=="object"&&Object.assign(ke,ht(Ce,pt))}return ke})(H):H}})(l),e:Ps,h:U,s(M,q){return y(M,q,B)},d(M,q,N){return h(M,q,B,N)},v(M){return x.has(M)||x.set(M,Us(M,d,w,bl,B)||"&:"+M),x.get(M)},r(M,q){let N=JSON.stringify([M,q]);return $.has(N)||$.set(N,!T(M,B)&&Us(M,f,S,xl,B,q)),$.get(N)},f(M){return b.reduce((q,N)=>N(q,B),M)}};return B})(r),i=new Map,s=[],o=new Set;e.resume(l=>i.set(l,l),(l,a)=>{e.insert(l,s.length,a),s.push(a),o.add(l)});function c(l){let a=n.f(l),h=On(a);if(h&&!o.has(h)){o.add(h);let d=qs(s,l);e.insert(h,d,l),s.splice(d,0,l)}return a.n}return Object.defineProperties(function(a){if(!i.size)for(let d of I(r.preflight))typeof d=="function"&&(d=d(n)),d&&(typeof d=="string"?Vn("",P.b,ar(d),n,P.b,[],!1,!0):Vs(d,{},n,P.b)).forEach(c);a=""+a;let h=i.get(a);if(!h){let d=new Set;for(let f of or(ar(a),n))d.add(f.c).add(c(f));h=[...d].filter(Boolean).join(" "),i.set(a,h).set(h,h)}return h},Object.getOwnPropertyDescriptors({get target(){return e.target},theme:n.theme,config:r,snapshot(){let l=e.snapshot(),a=new Set(o),h=new Map(i),d=[...s];return()=>{l(),o=a,i=h,s=d}},clear(){e.clear(),o=new Set,i=new Map,s=[]},destroy(){this.clear(),e.destroy()}}))}function Cl(t,e){return t!=e&&""+t.split(" ").sort()!=""+e.split(" ").sort()}function Gs(t){let e=new MutationObserver(r);return{observe(i){e.observe(i,{attributeFilter:["class"],subtree:!0,childList:!0}),n(i),r([{target:i,type:""}])},disconnect(){e.disconnect()}};function r(i){for(let{type:s,target:o}of i)if(s[0]=="a")n(o);else for(let c of o.querySelectorAll("[class]"))n(c);e.takeRecords()}function n(i){let s,o=i.getAttribute?.("class");o&&Cl(o,s=t(o))&&i.setAttribute("class",s)}}function $l(t){let e=document.querySelector(t||'style[data-twind=""]');return(!e||e.tagName!="STYLE")&&(e=document.createElement("style"),document.head.prepend(e)),e.dataset.twind="claimed",e}function ur(t){let e=t?.cssRules?t:(t&&typeof t!="string"?t:$l(t)).sheet;return{target:e,snapshot(){let r=Array.from(e.cssRules,n=>n.cssText);return()=>{this.clear(),r.forEach(this.insert)}},clear(){for(let r=e.cssRules.length;r--;)e.deleteRule(r)},destroy(){e.ownerNode?.remove()},insert(r,n){try{e.insertRule(r,n)}catch{e.insertRule(":root{}",n)}},resume:cr}}var Sl=new Map([["align-self","-ms-grid-row-align"],["color-adjust","-webkit-print-color-adjust"],["column-gap","grid-column-gap"],["forced-color-adjust","-ms-high-contrast-adjust"],["gap","grid-gap"],["grid-template-columns","-ms-grid-columns"],["grid-template-rows","-ms-grid-rows"],["justify-self","-ms-grid-column-align"],["margin-inline-end","-webkit-margin-end"],["margin-inline-start","-webkit-margin-start"],["mask-border","-webkit-mask-box-image"],["mask-border-outset","-webkit-mask-box-image-outset"],["mask-border-slice","-webkit-mask-box-image-slice"],["mask-border-source","-webkit-mask-box-image-source"],["mask-border-repeat","-webkit-mask-box-image-repeat"],["mask-border-width","-webkit-mask-box-image-width"],["overflow-wrap","word-wrap"],["padding-inline-end","-webkit-padding-end"],["padding-inline-start","-webkit-padding-start"],["print-color-adjust","color-adjust"],["row-gap","grid-row-gap"],["scroll-margin-bottom","scroll-snap-margin-bottom"],["scroll-margin-left","scroll-snap-margin-left"],["scroll-margin-right","scroll-snap-margin-right"],["scroll-margin-top","scroll-snap-margin-top"],["scroll-margin","scroll-snap-margin"],["text-combine-upright","-ms-text-combine-horizontal"]]);function Zs(t){return Sl.get(t)}function Js(t){var e=/^(?:(text-(?:decoration$|e|or|si)|back(?:ground-cl|d|f)|box-d|mask(?:$|-[ispro]|-cl)|pr|hyphena|flex-d)|(tab-|column(?!-s)|text-align-l)|(ap)|u|hy)/i.exec(t);return e?e[1]?1:e[2]?2:e[3]?3:5:0}function Ks(t,e){var r=/^(?:(pos)|(cli)|(background-i)|(flex(?:$|-b)|(?:max-|min-)?(?:block-s|inl|he|widt))|dis)/i.exec(t);return r?r[1]?/^sti/i.test(e)?1:0:r[2]?/^pat/i.test(e)?1:0:r[3]?/^image-/i.test(e)?1:0:r[4]?e[3]==="-"?2:0:/^(?:inline-)?grid$/i.test(e)?4:0:0}var El=[["-webkit-",1],["-moz-",2],["-ms-",4]];function hr(){return({stringify:t})=>({stringify(e,r,n){let i="",s=Zs(e);s&&(i+=t(s,r,n)+";");let o=Js(e),c=Ks(e,r);for(let l of El)o&l[1]&&(i+=t(l[0]+e,r,n)+";"),c&l[1]&&(i+=t(e,l[0]+r,n)+";");return i+t(e,r,n)}})}function dr(){return{rules:[["line-clamp-none",{"-webkit-line-clamp":"unset"}],["line-clamp-",Nn("lineClamp",({_:t})=>Ys(t))],["line-clamp-(\\d+)",({1:t})=>Ys(t)]]}}function Ys(t){return{overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":`${t}`}}var St={screens:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},columns:{auto:"auto","3xs":"16rem","2xs":"18rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem"},spacing:{px:"1px",0:"0px",...G(4,"rem",4,.5,.5),...G(12,"rem",4,5),14:"3.5rem",...G(64,"rem",4,16,4),72:"18rem",80:"20rem",96:"24rem"},durations:{75:"75ms",100:"100ms",150:"150ms",200:"200ms",300:"300ms",500:"500ms",700:"700ms",1e3:"1000ms"},animation:{none:"none",spin:"spin 1s linear infinite",ping:"ping 1s cubic-bezier(0,0,0.2,1) infinite",pulse:"pulse 2s cubic-bezier(0.4,0,0.6,1) infinite",bounce:"bounce 1s infinite"},aspectRatio:{auto:"auto",square:"1/1",video:"16/9"},backdropBlur:_("blur"),backdropBrightness:_("brightness"),backdropContrast:_("contrast"),backdropGrayscale:_("grayscale"),backdropHueRotate:_("hueRotate"),backdropInvert:_("invert"),backdropOpacity:_("opacity"),backdropSaturate:_("saturate"),backdropSepia:_("sepia"),backgroundColor:_("colors"),backgroundImage:{none:"none"},backgroundOpacity:_("opacity"),backgroundSize:{auto:"auto",cover:"cover",contain:"contain"},blur:{none:"none",0:"0",sm:"4px",DEFAULT:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},brightness:{...G(200,"",100,0,50),...G(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:t})=>({DEFAULT:t("colors.gray.200","currentColor"),...t("colors")}),borderOpacity:_("opacity"),borderRadius:{none:"0px",sm:"0.125rem",DEFAULT:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem","1/2":"50%",full:"9999px"},borderSpacing:_("spacing"),borderWidth:{DEFAULT:"1px",...Y(8,"px")},boxShadow:{sm:"0 1px 2px 0 rgba(0,0,0,0.05)",DEFAULT:"0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1)",md:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",lg:"0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1)",xl:"0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1)","2xl":"0 25px 50px -12px rgba(0,0,0,0.25)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.05)",none:"0 0 #0000"},boxShadowColor:_("colors"),caretColor:_("colors"),accentColor:({theme:t})=>({auto:"auto",...t("colors")}),contrast:{...G(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:_("borderColor"),divideOpacity:_("borderOpacity"),divideWidth:_("borderWidth"),dropShadow:{sm:"0 1px 1px rgba(0,0,0,0.05)",DEFAULT:["0 1px 2px rgba(0,0,0,0.1)","0 1px 1px rgba(0,0,0,0.06)"],md:["0 4px 3px rgba(0,0,0,0.07)","0 2px 2px rgba(0,0,0,0.06)"],lg:["0 10px 8px rgba(0,0,0,0.04)","0 4px 3px rgba(0,0,0,0.1)"],xl:["0 20px 13px rgba(0,0,0,0.03)","0 8px 5px rgba(0,0,0,0.08)"],"2xl":"0 25px 25px rgba(0,0,0,0.15)",none:"0 0 #0000"},fill:({theme:t})=>({...t("colors"),none:"none"}),grayscale:{DEFAULT:"100%",0:"0"},hueRotate:{0:"0deg",15:"15deg",30:"30deg",60:"60deg",90:"90deg",180:"180deg"},invert:{DEFAULT:"100%",0:"0"},flex:{1:"1 1 0%",auto:"1 1 auto",initial:"0 1 auto",none:"none"},flexBasis:({theme:t})=>({...t("spacing"),...$t(2,6),...$t(12,12),auto:"auto",full:"100%"}),flexGrow:{DEFAULT:1,0:0},flexShrink:{DEFAULT:1,0:0},fontFamily:{sans:'ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"'.split(","),serif:'ui-serif,Georgia,Cambria,"Times New Roman",Times,serif'.split(","),mono:'ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'.split(",")},fontSize:{xs:["0.75rem","1rem"],sm:["0.875rem","1.25rem"],base:["1rem","1.5rem"],lg:["1.125rem","1.75rem"],xl:["1.25rem","1.75rem"],"2xl":["1.5rem","2rem"],"3xl":["1.875rem","2.25rem"],"4xl":["2.25rem","2.5rem"],"5xl":["3rem","1"],"6xl":["3.75rem","1"],"7xl":["4.5rem","1"],"8xl":["6rem","1"],"9xl":["8rem","1"]},fontWeight:{thin:"100",extralight:"200",light:"300",normal:"400",medium:"500",semibold:"600",bold:"700",extrabold:"800",black:"900"},gap:_("spacing"),gradientColorStops:_("colors"),gridAutoColumns:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridAutoRows:{auto:"auto",min:"min-content",max:"max-content",fr:"minmax(0,1fr)"},gridColumn:{auto:"auto","span-full":"1 / -1"},gridRow:{auto:"auto","span-full":"1 / -1"},gridTemplateColumns:{none:"none"},gridTemplateRows:{none:"none"},height:({theme:t})=>({...t("spacing"),...$t(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:t})=>({...t("spacing"),...$t(2,4),auto:"auto",full:"100%"}),keyframes:{spin:{from:{transform:"rotate(0deg)"},to:{transform:"rotate(360deg)"}},ping:{"0%":{transform:"scale(1)",opacity:"1"},"75%,100%":{transform:"scale(2)",opacity:"0"}},pulse:{"0%,100%":{opacity:"1"},"50%":{opacity:".5"}},bounce:{"0%, 100%":{transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"},"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"}}},letterSpacing:{tighter:"-0.05em",tight:"-0.025em",normal:"0em",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeight:{...G(10,"rem",4,3),none:"1",tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625",loose:"2"},margin:({theme:t})=>({auto:"auto",...t("spacing")}),maxHeight:({theme:t})=>({full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh",...t("spacing")}),maxWidth:({theme:t,breakpoints:e})=>({...e(t("screens")),none:"none",0:"0rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",prose:"65ch"}),minHeight:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content",screen:"100vh"},minWidth:{0:"0px",full:"100%",min:"min-content",max:"max-content",fit:"fit-content"},opacity:{...G(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:_("spacing"),placeholderColor:_("colors"),placeholderOpacity:_("opacity"),outlineColor:_("colors"),outlineOffset:Y(8,"px"),outlineWidth:Y(8,"px"),ringColor:({theme:t})=>({...t("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:_("colors"),ringOffsetWidth:Y(8,"px"),ringOpacity:({theme:t})=>({...t("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...Y(8,"px")},rotate:{...Y(2,"deg"),...Y(12,"deg",3),...Y(180,"deg",45)},saturate:G(200,"",100,0,50),scale:{...G(150,"",100,0,50),...G(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:_("spacing"),scrollPadding:_("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...Y(2,"deg"),...Y(12,"deg",3)},space:_("spacing"),stroke:({theme:t})=>({...t("colors"),none:"none"}),strokeWidth:G(2),textColor:_("colors"),textDecorationColor:_("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...Y(8,"px")},textUnderlineOffset:{auto:"auto",...Y(8,"px")},textIndent:_("spacing"),textOpacity:_("opacity"),transitionDuration:({theme:t})=>({...t("durations"),DEFAULT:"150ms"}),transitionDelay:_("durations"),transitionProperty:{none:"none",all:"all",DEFAULT:"color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter",colors:"color,background-color,border-color,text-decoration-color,fill,stroke",opacity:"opacity",shadow:"box-shadow",transform:"transform"},transitionTimingFunction:{DEFAULT:"cubic-bezier(0.4,0,0.2,1)",linear:"linear",in:"cubic-bezier(0.4,0,1,1)",out:"cubic-bezier(0,0,0.2,1)","in-out":"cubic-bezier(0.4,0,0.2,1)"},translate:({theme:t})=>({...t("spacing"),...$t(2,4),full:"100%"}),width:({theme:t})=>({min:"min-content",max:"max-content",fit:"fit-content",screen:"100vw",...t("flexBasis")}),willChange:{scroll:"scroll-position"},zIndex:{...G(50,"",1,0,10),auto:"auto"}};function $t(t,e){let r={};do for(var n=1;n<t;n++)r[`${n}/${t}`]=Number((n/t*100).toFixed(6))+"%";while(++t<=e);return r}function Y(t,e,r=0){let n={};for(;r<=t;r=2*r||1)n[r]=r+e;return n}function G(t,e="",r=1,n=0,i=1,s={}){for(;n<=t;n+=i)s[n]=n/r+e;return s}function _(t){return({theme:e})=>e(t)}var Xs={"*,::before,::after":{boxSizing:"border-box",borderWidth:"0",borderStyle:"solid",borderColor:"theme(borderColor.DEFAULT, currentColor)"},"::before,::after":{"--tw-content":"''"},html:{lineHeight:1.5,WebkitTextSizeAdjust:"100%",MozTabSize:"4",tabSize:4,fontFamily:`theme(fontFamily.sans, ${St.fontFamily.sans})`,fontFeatureSettings:"theme(fontFamily.sans[1].fontFeatureSettings, normal)"},body:{margin:"0",lineHeight:"inherit"},hr:{height:"0",color:"inherit",borderTopWidth:"1px"},"abbr:where([title])":{textDecoration:"underline dotted"},"h1,h2,h3,h4,h5,h6":{fontSize:"inherit",fontWeight:"inherit"},a:{color:"inherit",textDecoration:"inherit"},"b,strong":{fontWeight:"bolder"},"code,kbd,samp,pre":{fontFamily:`theme(fontFamily.mono, ${St.fontFamily.mono})`,fontFeatureSettings:"theme(fontFamily.mono[1].fontFeatureSettings, normal)",fontSize:"1em"},small:{fontSize:"80%"},"sub,sup":{fontSize:"75%",lineHeight:0,position:"relative",verticalAlign:"baseline"},sub:{bottom:"-0.25em"},sup:{top:"-0.5em"},table:{textIndent:"0",borderColor:"inherit",borderCollapse:"collapse"},"button,input,optgroup,select,textarea":{fontFamily:"inherit",fontSize:"100%",lineHeight:"inherit",color:"inherit",margin:"0",padding:"0"},"button,select":{textTransform:"none"},"button,[type='button'],[type='reset'],[type='submit']":{WebkitAppearance:"button",backgroundColor:"transparent",backgroundImage:"none"},":-moz-focusring":{outline:"auto"},":-moz-ui-invalid":{boxShadow:"none"},progress:{verticalAlign:"baseline"},"::-webkit-inner-spin-button,::-webkit-outer-spin-button":{height:"auto"},"[type='search']":{WebkitAppearance:"textfield",outlineOffset:"-2px"},"::-webkit-search-decoration":{WebkitAppearance:"none"},"::-webkit-file-upload-button":{WebkitAppearance:"button",font:"inherit"},summary:{display:"list-item"},"blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre":{margin:"0"},fieldset:{margin:"0",padding:"0"},legend:{padding:"0"},"ol,ul,menu":{listStyle:"none",margin:"0",padding:"0"},textarea:{resize:"vertical"},"input::placeholder,textarea::placeholder":{opacity:1,color:"theme(colors.gray.400, #9ca3af)"},'button,[role="button"]':{cursor:"pointer"},":disabled":{cursor:"default"},"img,svg,video,canvas,audio,iframe,embed,object":{display:"block",verticalAlign:"middle"},"img,video":{maxWidth:"100%",height:"auto"},"[hidden]":{display:"none"}};var io=[m("\\[([-\\w]+):(.+)]",({1:t,2:e},r)=>({"@layer overrides":{"&":{[t]:ne(`[${e}]`,"",r)}}})),m("(group|peer)([~/][^-[]+)?",({input:t},{h:e})=>[{c:e(t)}]),g("aspect-","aspectRatio"),m("container",(t,{theme:e})=>{let{screens:r=e("screens"),center:n,padding:i}=e("container"),s={width:"100%",marginRight:n&&"auto",marginLeft:n&&"auto",...o("xs")};for(let c in r){let l=r[c];typeof l=="string"&&(s[lr(l)]={"&":{maxWidth:l,...o(c)}})}return s;function o(c){let l=i&&(typeof i=="string"?i:i[c]||i.DEFAULT);if(l)return{paddingRight:l,paddingLeft:l}}}),g("content-","content",({_:t})=>({"--tw-content":t,content:"var(--tw-content)"})),m("(?:box-)?decoration-(slice|clone)","boxDecorationBreak"),m("box-(border|content)","boxSizing",({1:t})=>t+"-box"),m("hidden",{display:"none"}),m("table-(auto|fixed)","tableLayout"),m(["(block|flex|table|grid|inline|contents|flow-root|list-item)","(inline-(block|flex|table|grid))","(table-(caption|cell|column|row|(column|row|footer|header)-group))"],"display"),"(float)-(left|right|none)","(clear)-(left|right|none|both)","(overflow(?:-[xy])?)-(auto|hidden|clip|visible|scroll)","(isolation)-(auto)",m("isolate","isolation"),m("object-(contain|cover|fill|none|scale-down)","objectFit"),g("object-","objectPosition"),m("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",pr),m("overscroll(-[xy])?-(auto|contain|none)",({1:t="",2:e})=>({["overscroll-behavior"+t]:e})),m("(static|fixed|absolute|relative|sticky)","position"),g("-?inset(-[xy])?(?:$|-)","inset",({1:t,_:e})=>({top:t!="-x"&&e,right:t!="-y"&&e,bottom:t!="-x"&&e,left:t!="-y"&&e})),g("-?(top|bottom|left|right)(?:$|-)","inset"),m("(visible|collapse)","visibility"),m("invisible",{visibility:"hidden"}),g("-?z-","zIndex"),m("flex-((row|col)(-reverse)?)","flexDirection",Qs),m("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),g("(flex-(?:grow|shrink))(?:$|-)"),g("(flex)-"),g("grow(?:$|-)","flexGrow"),g("shrink(?:$|-)","flexShrink"),g("basis-","flexBasis"),g("-?(order)-"),"-?(order)-(\\d+)",g("grid-cols-","gridTemplateColumns"),m("grid-cols-(\\d+)","gridTemplateColumns",no),g("col-","gridColumn"),m("col-(span)-(\\d+)","gridColumn",ro),g("col-start-","gridColumnStart"),m("col-start-(auto|\\d+)","gridColumnStart"),g("col-end-","gridColumnEnd"),m("col-end-(auto|\\d+)","gridColumnEnd"),g("grid-rows-","gridTemplateRows"),m("grid-rows-(\\d+)","gridTemplateRows",no),g("row-","gridRow"),m("row-(span)-(\\d+)","gridRow",ro),g("row-start-","gridRowStart"),m("row-start-(auto|\\d+)","gridRowStart"),g("row-end-","gridRowEnd"),m("row-end-(auto|\\d+)","gridRowEnd"),m("grid-flow-((row|col)(-dense)?)","gridAutoFlow",t=>pr(Qs(t))),m("grid-flow-(dense)","gridAutoFlow"),g("auto-cols-","gridAutoColumns"),g("auto-rows-","gridAutoRows"),g("gap-x(?:$|-)","gap","columnGap"),g("gap-y(?:$|-)","gap","rowGap"),g("gap(?:$|-)","gap"),"(justify-(?:items|self))-",m("justify-","justifyContent",eo),m("(content|items|self)-",t=>({["align-"+t[1]]:eo(t)})),m("(place-(content|items|self))-",({1:t,$$:e})=>({[t]:("wun".includes(e[3])?"space-":"")+e})),g("p([xytrbl])?(?:$|-)","padding",Xe("padding")),g("-?m([xytrbl])?(?:$|-)","margin",Xe("margin")),g("-?space-(x|y)(?:$|-)","space",({1:t,_:e})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${t}-reverse`]:"0",["margin-"+{y:"top",x:"left"}[t]]:`calc(${e} * calc(1 - var(--tw-space-${t}-reverse)))`,["margin-"+{y:"bottom",x:"right"}[t]]:`calc(${e} * var(--tw-space-${t}-reverse))`}})),m("space-(x|y)-reverse",({1:t})=>({"&>:not([hidden])~:not([hidden])":{[`--tw-space-${t}-reverse`]:"1"}})),g("w-","width"),g("min-w-","minWidth"),g("max-w-","maxWidth"),g("h-","height"),g("min-h-","minHeight"),g("max-h-","maxHeight"),g("font-","fontWeight"),g("font-","fontFamily",({_:t})=>typeof(t=I(t))[1]=="string"?{fontFamily:te(t)}:{fontFamily:te(t[0]),...t[1]}),m("antialiased",{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),m("subpixel-antialiased",{WebkitFontSmoothing:"auto",MozOsxFontSmoothing:"auto"}),m("italic","fontStyle"),m("not-italic",{fontStyle:"normal"}),m("(ordinal|slashed-zero|(normal|lining|oldstyle|proportional|tabular)-nums|(diagonal|stacked)-fractions)",({1:t,2:e="",3:r})=>e=="normal"?{fontVariantNumeric:"normal"}:{["--tw-"+(r?"numeric-fraction":"pt".includes(e[0])?"numeric-spacing":e?"numeric-figure":t)]:t,fontVariantNumeric:"var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)",...ge({"--tw-ordinal":"var(--tw-empty,/*!*/ /*!*/)","--tw-slashed-zero":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-figure":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-spacing":"var(--tw-empty,/*!*/ /*!*/)","--tw-numeric-fraction":"var(--tw-empty,/*!*/ /*!*/)"})}),g("tracking-","letterSpacing"),g("leading-","lineHeight"),m("list-(inside|outside)","listStylePosition"),g("list-","listStyleType"),m("list-","listStyleType"),g("placeholder-opacity-","placeholderOpacity",({_:t})=>({"&::placeholder":{"--tw-placeholder-opacity":t}})),R("placeholder-",{property:"color",selector:"&::placeholder"}),m("text-(left|center|right|justify|start|end)","textAlign"),m("text-(ellipsis|clip)","textOverflow"),g("text-opacity-","textOpacity","--tw-text-opacity"),R("text-",{property:"color"}),g("text-","fontSize",({_:t})=>typeof t=="string"?{fontSize:t}:{fontSize:t[0],...typeof t[1]=="string"?{lineHeight:t[1]}:t[1]}),g("indent-","textIndent"),m("(overline|underline|line-through)","textDecorationLine"),m("no-underline",{textDecorationLine:"none"}),g("underline-offset-","textUnderlineOffset"),R("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),g("decoration-","textDecorationThickness"),m("decoration-","textDecorationStyle"),m("(uppercase|lowercase|capitalize)","textTransform"),m("normal-case",{textTransform:"none"}),m("truncate",{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}),m("align-","verticalAlign"),m("whitespace-","whiteSpace"),m("break-normal",{wordBreak:"normal",overflowWrap:"normal"}),m("break-words",{overflowWrap:"break-word"}),m("break-all",{wordBreak:"break-all"}),m("break-keep",{wordBreak:"keep-all"}),R("caret-",{opacityVariable:!1,opacitySection:"opacity"}),R("accent-",{opacityVariable:!1,opacitySection:"opacity"}),m("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:t})=>`linear-gradient(to ${Ae(t," ")},var(--tw-gradient-stops))`),R("from-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:t})=>({"--tw-gradient-from":t.value,"--tw-gradient-to":t.color({opacityValue:"0"}),"--tw-gradient-stops":"var(--tw-gradient-from),var(--tw-gradient-to)"})),R("via-",{section:"gradientColorStops",opacityVariable:!1,opacitySection:"opacity"},({_:t})=>({"--tw-gradient-to":t.color({opacityValue:"0"}),"--tw-gradient-stops":`var(--tw-gradient-from),${t.value},var(--tw-gradient-to)`})),R("to-",{section:"gradientColorStops",property:"--tw-gradient-to",opacityVariable:!1,opacitySection:"opacity"}),m("bg-(fixed|local|scroll)","backgroundAttachment"),m("bg-origin-(border|padding|content)","backgroundOrigin",({1:t})=>t+"-box"),m(["bg-(no-repeat|repeat(-[xy])?)","bg-repeat-(round|space)"],"backgroundRepeat"),m("bg-blend-","backgroundBlendMode"),m("bg-clip-(border|padding|content|text)","backgroundClip",({1:t})=>t+(t=="text"?"":"-box")),g("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),R("bg-",{section:"backgroundColor"}),g("bg-","backgroundImage"),g("bg-","backgroundPosition"),m("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",pr),g("bg-","backgroundSize"),g("rounded(?:$|-)","borderRadius"),g("rounded-([trbl]|[tb][rl])(?:$|-)","borderRadius",({1:t,_:e})=>{let r={t:["tl","tr"],r:["tr","br"],b:["bl","br"],l:["bl","tl"]}[t]||[t,t];return{[`border-${Ae(r[0])}-radius`]:e,[`border-${Ae(r[1])}-radius`]:e}}),m("border-(collapse|separate)","borderCollapse"),g("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),m("border-(solid|dashed|dotted|double|none)","borderStyle"),g("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:t,_:e})=>({...ge({"--tw-border-spacing-x":"0","--tw-border-spacing-y":"0"}),["--tw-border-spacing"+(t||"-x")]:e,["--tw-border-spacing"+(t||"-y")]:e,"border-spacing":"var(--tw-border-spacing-x) var(--tw-border-spacing-y)"})),R("border-([xytrbl])-",{section:"borderColor"},Xe("border","Color")),R("border-"),g("border-([xytrbl])(?:$|-)","borderWidth",Xe("border","Width")),g("border(?:$|-)","borderWidth"),g("divide-opacity(?:$|-)","divideOpacity",({_:t})=>({"&>:not([hidden])~:not([hidden])":{"--tw-divide-opacity":t}})),m("divide-(solid|dashed|dotted|double|none)",({1:t})=>({"&>:not([hidden])~:not([hidden])":{borderStyle:t}})),m("divide-([xy]-reverse)",({1:t})=>({"&>:not([hidden])~:not([hidden])":{["--tw-divide-"+t]:"1"}})),g("divide-([xy])(?:$|-)","divideWidth",({1:t,_:e})=>{let r={x:"lr",y:"tb"}[t];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${t}-reverse`]:"0",[`border-${Ae(r[0])}Width`]:`calc(${e} * calc(1 - var(--tw-divide-${t}-reverse)))`,[`border-${Ae(r[1])}Width`]:`calc(${e} * var(--tw-divide-${t}-reverse))`}}}),R("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),g("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),R("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),g("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),m("ring-inset",{"--tw-ring-inset":"inset"}),R("ring-",{property:"--tw-ring-color"}),g("ring(?:$|-)","ringWidth",({_:t},{theme:e})=>({...ge({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000","&":{"--tw-ring-inset":"var(--tw-empty,/*!*/ /*!*/)","--tw-ring-offset-width":e("ringOffsetWidth","","0px"),"--tw-ring-offset-color":K(e("ringOffsetColor","","#fff")),"--tw-ring-color":K(e("ringColor","","#93c5fd"),{opacityVariable:"--tw-ring-opacity"}),"--tw-ring-opacity":e("ringOpacity","","0.5")}}),"--tw-ring-offset-shadow":"var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)","--tw-ring-shadow":`var(--tw-ring-inset) 0 0 0 calc(${t} + var(--tw-ring-offset-width)) var(--tw-ring-color)`,boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),R("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:t})=>({"--tw-shadow-color":t.value,"--tw-shadow":"var(--tw-shadow-colored)"})),g("shadow(?:$|-)","boxShadow",({_:t})=>({...ge({"--tw-ring-offset-shadow":"0 0 #0000","--tw-ring-shadow":"0 0 #0000","--tw-shadow":"0 0 #0000","--tw-shadow-colored":"0 0 #0000"}),"--tw-shadow":te(t),"--tw-shadow-colored":te(t).replace(/([^,]\s+)(?:#[a-f\d]+|(?:(?:hsl|rgb)a?|hwb|lab|lch|color|var)\(.+?\)|[a-z]+)(,|$)/g,"$1var(--tw-shadow-color)$2"),boxShadow:"var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)"})),g("(opacity)-"),m("mix-blend-","mixBlendMode"),...to(),...to("backdrop-"),g("transition(?:$|-)","transitionProperty",(t,{theme:e})=>({transitionProperty:te(t),transitionTimingFunction:t._=="none"?void 0:te(e("transitionTimingFunction","")),transitionDuration:t._=="none"?void 0:te(e("transitionDuration",""))})),g("duration(?:$|-)","transitionDuration","transitionDuration",te),g("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",te),g("delay(?:$|-)","transitionDelay","transitionDelay",te),g("animate(?:$|-)","animation",(t,{theme:e,h:r,e:n})=>{let i=te(t),s=i.split(" "),o=e("keyframes",s[0]);return o?{["@keyframes "+(s[0]=n(r(s[0])))]:o,animation:s.join(" ")}:{animation:i}}),"(transform)-(none)",m("transform",zn),m("transform-(cpu|gpu)",({1:t})=>({"--tw-transform":so(t=="gpu")})),g("scale(-[xy])?-","scale",({1:t,_:e})=>({["--tw-scale"+(t||"-x")]:e,["--tw-scale"+(t||"-y")]:e,...zn()})),g("-?(rotate)-","rotate",Hn),g("-?(translate-[xy])-","translate",Hn),g("-?(skew-[xy])-","skew",Hn),m("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",pr),"(appearance)-",g("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",g("(cursor)-"),"(cursor)-",m("snap-(none)","scroll-snap-type"),m("snap-(x|y|both)",({1:t})=>({...ge({"--tw-scroll-snap-strictness":"proximity"}),"scroll-snap-type":t+" var(--tw-scroll-snap-strictness)"})),m("snap-(mandatory|proximity)","--tw-scroll-snap-strictness"),m("snap-(?:(start|end|center)|align-(none))","scroll-snap-align"),m("snap-(normal|always)","scroll-snap-stop"),m("scroll-(auto|smooth)","scroll-behavior"),g("scroll-p([xytrbl])?(?:$|-)","padding",Xe("scroll-padding")),g("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",Xe("scroll-margin")),m("touch-(auto|none|manipulation)","touch-action"),m("touch-(pinch-zoom|pan-(?:(x|left|right)|(y|up|down)))",({1:t,2:e,3:r})=>({...ge({"--tw-pan-x":"var(--tw-empty,/*!*/ /*!*/)","--tw-pan-y":"var(--tw-empty,/*!*/ /*!*/)","--tw-pinch-zoom":"var(--tw-empty,/*!*/ /*!*/)","--tw-touch-action":"var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)"}),[`--tw-${e?"pan-x":r?"pan-y":t}`]:t,"touch-action":"var(--tw-touch-action)"})),m("outline-none",{outline:"2px solid transparent","outline-offset":"2px"}),m("outline",{outlineStyle:"solid"}),m("outline-(dashed|dotted|double)","outlineStyle"),g("-?(outline-offset)-"),R("outline-",{opacityVariable:!1,opacitySection:"opacity"}),g("outline-","outlineWidth"),"(pointer-events)-",g("(will-change)-"),"(will-change)-",["resize(?:-(none|x|y))?","resize",({1:t})=>({x:"horizontal",y:"vertical"})[t]||t||"both"],m("select-(none|text|all|auto)","userSelect"),R("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),R("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),g("stroke-","strokeWidth"),m("sr-only",{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(0,0,0,0)",borderWidth:"0"}),m("not-sr-only",{position:"static",width:"auto",height:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal",clip:"auto"})];function pr(t){return(typeof t=="string"?t:t[1]).replace(/-/g," ").trim()}function Qs(t){return(typeof t=="string"?t:t[1]).replace("col","column")}function Ae(t,e="-"){let r=[];for(let n of t)r.push({t:"top",r:"right",b:"bottom",l:"left"}[n]);return r.join(e)}function te(t){return t&&""+(t._||t)}function eo({$$:t}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[t[3]||""]||"")+t}function Xe(t,e=""){return({1:r,_:n})=>{let i={x:"lr",y:"tb"}[r]||r+r;return i?{...kt(t+"-"+Ae(i[0])+e,n),...kt(t+"-"+Ae(i[1])+e,n)}:kt(t+e,n)}}function to(t=""){let e=["blur","brightness","contrast","grayscale","hue-rotate","invert",t&&"opacity","saturate","sepia",!t&&"drop-shadow"].filter(Boolean),r={};for(let n of e)r[`--tw-${t}${n}`]="var(--tw-empty,/*!*/ /*!*/)";return r={...ge(r),[`${t}filter`]:e.map(n=>`var(--tw-${t}${n})`).join(" ")},[`(${t}filter)-(none)`,m(`${t}filter`,r),...e.map(n=>g(`${n[0]=="h"?"-?":""}(${t}${n})(?:$|-)`,n,({1:i,_:s})=>({[`--tw-${i}`]:I(s).map(o=>`${n}(${o})`).join(" "),...r})))]}function Hn({1:t,_:e}){return{["--tw-"+t]:e,...zn()}}function zn(){return{...ge({"--tw-translate-x":"0","--tw-translate-y":"0","--tw-rotate":"0","--tw-skew-x":"0","--tw-skew-y":"0","--tw-scale-x":"1","--tw-scale-y":"1","--tw-transform":so()}),transform:"var(--tw-transform)"}}function so(t){return[t?"translate3d(var(--tw-translate-x),var(--tw-translate-y),0)":"translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" ")}function ro({1:t,2:e}){return`${t} ${e} / ${t} ${e}`}function no({1:t}){return`repeat(${t},minmax(0,1fr))`}function ge(t){return{"@layer defaults":{"*,::before,::after":t,"::backdrop":t}}}var oo=[["sticky","@supports ((position: -webkit-sticky) or (position:sticky))"],["motion-reduce","@media (prefers-reduced-motion:reduce)"],["motion-safe","@media (prefers-reduced-motion:no-preference)"],["print","@media print"],["(portrait|landscape)",({1:t})=>`@media (orientation:${t})`],["contrast-(more|less)",({1:t})=>`@media (prefers-contrast:${t})`],["(first-(letter|line)|placeholder|backdrop|before|after)",({1:t})=>`&::${t}`],["(marker|selection)",({1:t})=>`& *::${t},&::${t}`],["file","&::file-selector-button"],["(first|last|only)",({1:t})=>`&:${t}-child`],["even","&:nth-child(2n)"],["odd","&:nth-child(odd)"],["open","&[open]"],["(aria|data)-",({1:t,$$:e},r)=>e&&`&[${t}-${r.theme(t,e)||ne(e,"",r)||`${e}="true"`}]`],["((group|peer)(~[^-[]+)?)(-\\[(.+)]|[-[].+?)(\\/.+)?",({2:t,3:e="",4:r,5:n="",6:i=e},{e:s,h:o,v:c})=>{let l=Ye(n)||(r[0]=="["?r:c(r.slice(1)));return`${(l.includes("&")?l:"&"+l).replace(/&/g,`:merge(.${s(o(t+i))})`)}${t[0]=="p"?"~":" "}&`}],["(ltr|rtl)",({1:t})=>`[dir="${t}"] &`],["supports-",({$$:t},e)=>{if(t&&(t=e.theme("supports",t)||ne(t,"",e)),t)return t.includes(":")||(t+=":var(--tw)"),/^\w*\s*\(/.test(t)||(t=`(${t})`),`@supports ${t.replace(/\b(and|or|not)\b/g," $1 ").trim()}`}],["max-",({$$:t},e)=>{if(t&&(t=e.theme("screens",t)||ne(t,"",e)),typeof t=="string")return`@media not all and (min-width:${t})`}],["min-",({$$:t},e)=>(t&&(t=ne(t,"",e)),t&&`@media (min-width:${t})`)],[/^\[(.+)]$/,({1:t})=>/[&@]/.test(t)&&Ye(t).replace(/[}]+$/,"").split("{")]];function ao({colors:t,disablePreflight:e}={}){return{preflight:e?void 0:Xs,theme:{...St,colors:{inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",...t}},variants:oo,rules:io,finalize(r){return r.n&&r.d&&r.r.some(n=>/^&::(before|after)$/.test(n))&&!/(^|;)content:/.test(r.d)?{...r,d:"content:var(--tw-content);"+r.d}:r}}}var _l={50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a"},Ml={50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},Il={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b"},Al={50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717"},Tl={50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917"},Ll={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},jl={50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12"},Dl={50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f"},Ol={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},Ul={50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314"},Pl={50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},Rl={50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b"},Bl={50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a"},ql={50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63"},Fl={50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e"},Vl={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a"},Nl={50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81"},Hl={50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95"},zl={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87"},Wl={50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75"},Gl={50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843"},Zl={50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337"},lo={__proto__:null,slate:_l,gray:Ml,zinc:Il,neutral:Al,stone:Tl,red:Ll,orange:jl,amber:Dl,yellow:Ol,lime:Ul,green:Pl,emerald:Rl,teal:Bl,cyan:ql,sky:Fl,blue:Vl,indigo:Nl,violet:Hl,purple:zl,fuchsia:Wl,pink:Gl,rose:Zl};function fr({disablePreflight:t}={}){return ao({colors:lo,disablePreflight:t})}function mr({className:t="prose",defaultColor:e="gray",extend:r={},colors:n={}}={}){return n={body:"700",headings:"900",lead:"600",links:"900",bold:"900",counters:"500",bullets:"300",hr:"200",quotes:"900","quote-borders":"200",captions:"500",code:"900","pre-code":"200","pre-bg":"800","th-borders":"300","td-borders":"200",...n,dark:n.dark===null?null:{body:"300",headings:"#fff",lead:"400",links:"#fff",bold:"#fff",counters:"400",bullets:"600",hr:"700",quotes:"100","quote-borders":"700",captions:"400",code:"#fff","pre-code":"300","pre-bg":"rgb(0 0 0 / 50%)","th-borders":"600","td-borders":"700",...n.dark}},{variants:[["headings","h1,h2,h3,h4,h5,h6,th"],["h1"],["h2"],["h3"],["h4"],["h5"],["h6"],["p"],["a"],["blockquote"],["figure"],["figcaption"],["strong"],["em"],["code"],["pre"],["ol"],["ul"],["li"],["table"],["thead"],["tr"],["th"],["td"],["img"],["video"],["hr"],["lead",".lead"]].map(([s,o=s])=>[`${t}-${s}`,(c,l)=>ho(t,o[0]=="."?"."+l.e(l.h(o.slice(1))):o,l,a=>`& :is(${a.trim()})`)]),rules:[[`(lead|not-${t})`,({1:s},{h:o})=>[{c:o(s)}]],[`${t}-invert`,{"@layer base":{"--tw-prose-body":"var(--tw-prose-invert-body)","--tw-prose-headings":"var(--tw-prose-invert-headings)","--tw-prose-lead":"var(--tw-prose-invert-lead)","--tw-prose-links":"var(--tw-prose-invert-links)","--tw-prose-bold":"var(--tw-prose-invert-bold)","--tw-prose-counters":"var(--tw-prose-invert-counters)","--tw-prose-bullets":"var(--tw-prose-invert-bullets)","--tw-prose-hr":"var(--tw-prose-invert-hr)","--tw-prose-quotes":"var(--tw-prose-invert-quotes)","--tw-prose-quote-borders":"var(--tw-prose-invert-quote-borders)","--tw-prose-captions":"var(--tw-prose-invert-captions)","--tw-prose-code":"var(--tw-prose-invert-code)","--tw-prose-pre-code":"var(--tw-prose-invert-pre-code)","--tw-prose-pre-bg":"var(--tw-prose-invert-pre-bg)","--tw-prose-th-borders":"var(--tw-prose-invert-th-borders)","--tw-prose-td-borders":"var(--tw-prose-invert-td-borders)"}}],[t+"-",({$$:s},o)=>{let c=uo(o.theme("fontSize",s));return c&&{"@layer components":c}}],[t+"-",({$$:s},o)=>i(s,o)],[t,(s,o)=>({...i(e,o),"@layer base":[co(t,o,{a:{color:"var(--tw-prose-links)",textDecorationLine:"underline",fontWeight:"500"},strong:{color:"var(--tw-prose-bold)",fontWeight:"600"},"a strong,blockquote strong,thead th strong":{color:"inherit"},ul:{listStyleType:"disc"},ol:{listStyleType:"decimal"},'ol[type="A"]':{listStyleType:"upper-alpha"},'ol[type="a"]':{listStyleType:"lower-alpha"},'ol[type="A" s]':{listStyleType:"upper-alpha"},'ol[type="a" s]':{listStyleType:"lower-alpha"},'ol[type="I"]':{listStyleType:"upper-roman"},'ol[type="i"]':{listStyleType:"lower-roman"},'ol[type="I" s]':{listStyleType:"upper-roman"},'ol[type="i" s]':{listStyleType:"lower-roman"},'ol[type="1"]':{listStyleType:"decimal"},"ol,ul":{marginTop:k(20,16),marginBottom:k(20,16),paddingLeft:k(26,16)},li:{marginTop:k(8,16),marginBottom:k(8,16)},"ol>li,ul>li":{paddingLeft:k(6,16)},">ul>li p":{marginTop:k(12,16),marginBottom:k(12,16)},">ul>li>*:first-child,>ol>li>*:last-child":{marginTop:k(20,16)},">ul>li>*:last-child,>ol>li>*:last-child":{marginBottom:k(20,16)},"ol>li::marker":{fontWeight:"400",color:"var(--tw-prose-counters)"},"ul>li::marker":{color:"var(--tw-prose-bullets)"},"ul ul,ul ol,ol ul,ol ol":{marginTop:k(12,16),marginBottom:k(12,16)},hr:{borderColor:"var(--tw-prose-hr)",borderTopWidth:"1",marginTop:k(48,16),marginBottom:k(48,16)},blockquote:{marginTop:k(32,20),marginBottom:k(32,20),paddingLeft:k(20,20),fontWeight:"500",fontStyle:"italic",color:"var(--tw-prose-quotes)",borderLeftWidth:"0.25rem",borderLeftColor:"var(--tw-prose-quote-borders)",quotes:'"\\201C""\\201D""\\2018""\\2019"'},"blockquote p:first-of-type::before":{content:"open-quote"},"blockquote p:last-of-type::after":{content:"close-quote"},p:{marginTop:k(20,16),marginBottom:k(20,16)},h1:{color:"var(--tw-prose-headings)",fontWeight:"800",fontSize:k(36,16),marginTop:"0",marginBottom:k(32,36),lineHeight:1.15},"h1 strong":{fontWeight:"900",color:"inherit"},h2:{color:"var(--tw-prose-headings)",fontWeight:"700",fontSize:k(24,16),marginTop:k(48,24),marginBottom:k(24,24),lineHeight:"1.35"},"h2 strong":{fontWeight:"800",color:"inherit"},h3:{color:"var(--tw-prose-headings)",fontWeight:"600",fontSize:k(20,16),marginTop:k(32,20),marginBottom:k(12,20),lineHeight:"1.6"},"h3 strong":{fontWeight:"700",color:"inherit"},h4:{color:"var(--tw-prose-headings)",fontWeight:"600",marginTop:k(24,16),marginBottom:k(8,16),lineHeight:"1.5"},"h4 strong":{fontWeight:"700",color:"inherit"},"hr+*,h2+*,h3+*,h4+*":{marginTop:"0"},"img,video,figure":{marginTop:k(32,16),marginBottom:k(32,16)},"figure>*":{marginTop:"0",marginBottom:"0"},figcaption:{color:"var(--tw-prose-captions)",fontSize:k(14,16),lineHeight:"1.4",marginTop:k(12,14)},code:{color:"var(--tw-prose-code)",fontWeight:"600",fontSize:k(14,16)},"code::before,code::after":{content:'"`"'},"h2 code":{fontSize:k(21,24)},"h3 code":{fontSize:k(18,20)},"a code,h1 code,h2 code,h3 code,h4 code,blockquote code,thead th code":{color:"inherit"},pre:{color:"var(--tw-prose-pre-code)",backgroundColor:"var(--tw-prose-pre-bg)",overflowX:"auto",fontWeight:"400",fontSize:k(14,16),lineHeight:"1.7",marginTop:k(24,14),marginBottom:k(24,14),borderRadius:"0.375rem",paddingTop:k(12,14),paddingRight:k(16,14),paddingBottom:k(12,14),paddingLeft:k(16,14)},"pre code":{backgroundColor:"transparent",borderWidth:"0",borderRadius:"0",padding:"0",fontWeight:"inherit",color:"inherit",fontSize:"inherit",fontFamily:"inherit",lineHeight:"inherit"},"pre code::before":{content:"none"},"pre code::after":{content:"none"},table:{width:"100%",tableLayout:"auto",textAlign:"left",marginTop:k(32,16),marginBottom:k(32,16),fontSize:k(14,16),lineHeight:"1.7"},thead:{borderBottomWidth:"1px",borderBottomColor:"var(--tw-prose-th-borders)"},"thead th":{color:"var(--tw-prose-headings)",fontWeight:"600",verticalAlign:"bottom",paddingRight:k(8,14),paddingBottom:k(8,14),paddingLeft:k(8,14)},"thead th:first-child":{paddingLeft:"0"},"thead th:last-child":{paddingRight:"0"},"tbody tr":{borderBottomWidth:"1px",borderBottomColor:"var(--tw-prose-td-borders)"},"tbody tr:last-child":{borderBottomWidth:"0"},"tbody td,tfoot td":{verticalAlign:"baseline",paddingTop:k(8,14),paddingRight:k(8,14),paddingBottom:k(8,14),paddingLeft:k(8,14)},"tbody td:first-child,tfoot td:first-child":{paddingLeft:"0"},"tbody td:last-child,tfoot td:last-child":{paddingRight:"0"},[`.${o.e(o.h("lead"))}`]:{color:"var(--tw-prose-lead)",fontSize:k(20,16),lineHeight:"1.6",marginTop:k(24,20),marginBottom:k(24,20)},">:first-child":{marginTop:"0"},">:last-child":{marginBottom:"0"}}),co(t,o,r)],"@layer components":{...uo(o.theme("fontSize","base")),color:"var(--tw-prose-body)",maxWidth:"theme(max-w.prose, 65ch)"}})]]};function i(s,o){let c={},l={},a=(h,d,f)=>{let p=o.theme(`colors.${s}.${d}`,d);f["--tw-prose-"+h]=K(p);let y=f!=l&&o.d("colors",`${s}-${d}`,p);y&&(l["--tw-prose-"+h]=K(y))};for(let h in n){let d=n[h];h!="dark"&&d&&a(h,d,c)}for(let h in n.dark||{}){let d=n.dark[h];d&&(n.dark?a("invert-"+h,d,c):a(h,d,l))}return Object.keys(c).length?{"@layer defaults":{"&":c,[o.v("dark")]:l}}:void 0}}function co(t,e,r){let n={};for(let i in r)n[ho(t,i,e,s=>`.${e.e(e.h(t))}${s}`)]=r[i];return n}function ho(t,e,{e:r,h:n},i){return e.replace(/^[^>:]+$|(>)?((?:[^:,]+(?::[\w-]+)?)|:[\w-]+)(::[\w-]+)?/g,(s,o=" ",c=s,l="")=>i(`${o}:where(${c}):not(:where(.${r(n("not-"+t))} *))${l}`))}function uo(t){return t?typeof t=="string"?{fontSize:t}:{fontSize:t[0],...typeof t[1]=="string"?{lineHeight:t[1]}:t[1]}:void 0}function k(t,e){return`${(t/e).toFixed(3).replace(/^0|\.?0+$/g,"")}em`}var Wn=Ct({hash:!1,darkMode:"class",theme:{extend:{colors:{violet:{DEFAULT:"#601feb",50:"#f3f2ff",100:"#eae7ff",200:"#d7d2ff",300:"#baaeff",400:"#9980ff",500:"#784dff",600:"#6829fe",700:"#601feb",800:"#4b12c5",900:"#3f11a1",950:"#25086d"},pink:{DEFAULT:"#ff0bbb",50:"#fff0fc",100:"#ffe3fc",200:"#ffc6f9",300:"#ff98f2",400:"#ff58e5",500:"#ff27d5",600:"#ff0bbb",700:"#df0095",800:"#b8007b",900:"#980368",950:"#5f003b"},lime:{DEFAULT:"#b9e901",50:"#fdffe4",100:"#f9ffc5",200:"#f1ff92",300:"#e2ff54",400:"#d1fa21",500:"#b9e901",600:"#8ab400",700:"#688902",800:"#526b09",900:"#465a0d",950:"#243300"}},spacing:{px:"1px",0:"0",.5:"2px",1:"4px",1.5:"6px",2:"8px",2.5:"10px",3:"12px",3.5:"14px",4:"16px",5:"20px",6:"24px",7:"28px",8:"32px",9:"36px",10:"40px",11:"44px",12:"48px",14:"56px",16:"64px",20:"80px",24:"96px",28:"112px",32:"128px",36:"144px",40:"160px",44:"176px",48:"192px",52:"208px",56:"224px",60:"240px",64:"256px",72:"288px",80:"320px",96:"384px"},padding:{px:"1px",0:"0",.5:"2px",1:"4px",1.5:"6px",2:"8px",2.5:"10px",3:"12px",3.5:"14px",4:"16px",5:"20px",6:"24px",7:"28px",8:"32px",9:"36px",10:"40px",11:"44px",12:"48px",14:"56px",16:"64px",20:"80px",24:"96px",28:"112px",32:"128px",36:"144px",40:"160px",44:"176px",48:"192px",52:"208px",56:"224px",60:"240px",64:"256px",72:"288px",80:"320px",96:"384px"},lineHeight:{3:"12px",4:"16px",5:"20px",6:"24px",7:"28px",8:"32px",9:"36px",10:"40px"},maxWidth:{xs:"320px",sm:"384px",md:"448px",lg:"512px",xl:"576px","2xl":"672px","3xl":"768px","4xl":"896px","5xl":"1024px","6xl":"1152px","7xl":"1280px"},maxHeight:{.5:"2px",1:"4px",1.5:"6px",2:"8px",2.5:"10px",3:"12px",3.5:"14px",4:"16px",5:"20px",6:"24px",7:"28px",8:"32px",9:"36px",10:"40px",11:"44px",12:"48px",14:"56px",16:"64px",20:"80px",24:"96px",28:"112px",32:"128px",36:"144px",40:"160px",44:"176px",48:"192px",52:"208px",56:"224px",60:"240px",64:"256px",72:"288px",80:"320px",96:"384px"},borderRadius:{sm:"2px",DEFAULT:"4px",md:"6px",lg:"8px",xl:"12px","2xl":"16px","3xl":"24px"},fontSize:{xs:["12px","16px"],sm:["14px","20px"],base:["16px","24px"],lg:["18px","28px"],xl:["20px","28px"],"2xl":["24px","32px"],"3xl":["30px","36px"],"4xl":["36px","40px"],"5xl":["48px","1"],"6xl":["60px","1"],"7xl":["72px","1"],"8xl":["96px","1"],"9xl":["128px","1"]}}},presets:[fr(),hr(),dr(),mr()]});function gr(t,e=!0){let r=(function(){if(Jl)try{let l=ur(new CSSStyleSheet);return l.connect=a=>{let h=Gn(a);h.adoptedStyleSheets=[...h.adoptedStyleSheets,l.target]},l.disconnect=cr,l}catch{}let s=document.createElement("style");s.media="not all",document.head.prepend(s);let o=[ur(s)],c=new WeakMap;return{get target(){return o[0].target},snapshot(){let l=o.map(a=>a.snapshot());return()=>l.forEach(a=>a())},clear(){o.forEach(l=>l.clear())},destroy(){o.forEach(l=>l.destroy())},insert(l,a,h){o[0].insert(l,a,h);let d=this.target.cssRules[a];o.forEach((f,p)=>p&&f.target.insertRule(d.cssText,a))},resume(l,a){return o[0].resume(l,a)},connect(l){let a=document.createElement("style");Gn(l).appendChild(a);let h=ur(a),{cssRules:d}=this.target;for(let f=0;f<d.length;f++)h.target.insertRule(d[f].cssText,f);o.push(h),c.set(l,h)},disconnect(l){let a=o.indexOf(c.get(l));a>=0&&o.splice(a,1)}}})(),n=Ws({...t,hash:t.hash??e},r),i=Gs(n);return function(o){return class extends o{connectedCallback(){super.connectedCallback?.(),r.connect(this),i.observe(Gn(this))}disconnectedCallback(){r.disconnect(this),super.disconnectedCallback?.()}constructor(...l){super(...l),this.tw=n}}}}var Jl=typeof ShadowRoot<"u"&&(typeof ShadyCSS>"u"||ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype;function Gn(t){return t.shadowRoot||t.attachShadow({mode:"open"})}var C=t=>gr(Wn)(t);var Zn=class extends C(v){static properties={color:{type:String},radius:{type:String},size:{type:String},border:{type:String}};static styles=D`
131
- :host {
132
- display: block;
133
- }
134
- .spin-slow {
135
- animation: spin-slow 4s linear infinite;
136
- }
137
- @keyframes spin-slow {
138
- from {
139
- transform: rotate(0deg);
140
- }
141
- to {
142
- transform: rotate(360deg);
143
- }
144
- }
145
- `;constructor(){super(),this.color="#601feb",this.radius="16.8576px",this.size="320px",this.border="#d1d5db"}render(){return u`
146
- <div class="flex flex-row flex-wrap gap-0">
147
- <div class="relative z-0 flex min-h-9 items-center justify-center overflow-hidden" style="border-radius: ${this.radius};">
148
- <!-- Spinning gradient background -->
149
- <div
150
- class="absolute z-[-2] m-auto animate-[spin-slow_4s_linear_infinite] bg-[0_0] bg-cover bg-no-repeat"
151
- style="background-image: conic-gradient(transparent, ${this.color}, transparent 30%); height: ${this.size}; width: ${this.size}; background-color: ${this.border};"></div>
152
- <!-- White background with 1px border space for gradient -->
153
- <div class="absolute top-[1px] left-[1px] z-[-1] h-[calc(100%_-_2px)] w-[calc(100%_-_2px)] bg-white" style="border-radius: ${this.radius};"></div>
154
- <slot></slot>
155
- </div>
156
- </div>
157
- `}};customElements.get("mw-spinning-border")||customElements.define("mw-spinning-border",Zn);var Jn=class extends C(v){static properties={state:{type:String},color:{type:String},bubbleStyle:{type:String},src:{type:String},width:{type:String},height:{type:String}};static styles=D`
158
- .shadow-button {
159
- box-shadow:
160
- -58.9194px 74.8436px 38.218px rgba(0, 0, 0, 0.01),
161
- -33.4408px 42.9953px 31.8483px rgba(0, 0, 0, 0.05),
162
- -14.3318px 19.109px 23.8863px rgba(0, 0, 0, 0.09),
163
- -3.18483px 4.77725px 12.7393px rgba(0, 0, 0, 0.1);
164
- }
165
- `;constructor(){super(),this.state="open",this.color="#601feb",this.bubbleStyle="solid",this.src="",this.width="64px",this.height="64px"}get iconColor(){return this.bubbleStyle==="solid"?"#ffffff":this.color}get backgroundColor(){return this.bubbleStyle==="solid"?this.color:"#ffffff"}get svgSize(){let e=parseFloat(this.width),r=parseFloat(this.height),i=Math.min(e,r)*.55,s=i,o=i/1.65;return{width:s,height:o}}get dynamicRadius(){let e=parseFloat(this.width),r=parseFloat(this.height);return`${Math.min(e,r)*.265}px`}render=()=>u`
166
- <div class="shadow-button inline-block transition-transform hover:scale-105 active:scale-90" style="border-radius: ${this.dynamicRadius};">
167
- <mw-spinning-border .color="${this.color}" .border="${"#f9fafb"}" .radius="${this.dynamicRadius}">
168
- <!-- we want the transform transition on the root element so that both the transform transition and state switch transition are continuous and fluid -->
169
- <!-- the background color is set on the root button so that when we cross fade between the open/close states there's no white flicker -->
170
- <button
171
- class="relative inline-block bg-transparent text-sm leading-0 text-white"
172
- style="width: ${this.width}; height: ${this.height}; border-radius: ${this.dynamicRadius};"
173
- aria-label="Open Molin AI chat window">
174
- <!-- the 'open' state invites the user to open (e.g. the chat window) -->
175
- <div class="${this.state==="open"?"visible opacity-100":"invisible opacity-0"} absolute top-[1px] right-0 bottom-0 left-[1px] transition-[opacity,visibility]">
176
- ${this.src?u`
177
- <!-- load given source -->
178
- <img
179
- class="flex items-center justify-center bg-white"
180
- style="width: calc(${this.width} - 2px); height: calc(${this.height} - 2px); border-radius: ${this.dynamicRadius};"
181
- src="${this.src}"
182
- alt="Molin AI chat" />
183
- `:u`
184
- <!-- the solid background with AI text -->
185
- <div
186
- class="flex items-center justify-center bg-[${this.backgroundColor}]"
187
- style="width: calc(${this.width} - 2px); height: calc(${this.height} - 2px); border-radius: ${this.dynamicRadius};">
188
- <svg width="${this.svgSize.width}" height="${this.svgSize.height}" viewBox="0 0 211 128" fill="none" xmlns="http://www.w3.org/2000/svg">
189
- <path d="M210.194 14.7905V123.381H187.489V14.7905H210.194Z" fill="${this.iconColor}" />
190
- <path
191
- fill-rule="evenodd"
192
- clip-rule="evenodd"
193
- d="M151.967 123.381H175.495L135.843 14.7905H108.696L105 24.5C96.7393 47.5 108.696 50.5 115.5 53.5C117.266 48.1203 122.023 32.7243 122.023 32.7243L137.818 80.1091H106.392C92.2426 80.1091 85.0275 80.1091 79 96.8912C71.7444 116.761 69.0438 123.381 69.0438 123.381H92.2426L101.292 96.8912H142.918L151.967 123.381Z"
194
- fill="${this.iconColor}" />
195
- <path
196
- d="M20.9534 90.6701C20.3969 90.2385 19.7155 90 19 90C18.2959 90 17.6031 90.2385 17.0466 90.6701C16.4901 91.1016 16.0926 91.7149 15.9223 92.3963L14.832 96.7687C14.3437 98.7107 13.3329 100.494 11.9133 101.913C10.4937 103.333 8.7107 104.344 6.76868 104.832L2.39629 105.922C1.71488 106.093 1.10162 106.49 0.670056 107.047C0.238496 107.603 0 108.285 0 109C0 109.715 0.238496 110.397 0.670056 110.953C1.10162 111.51 1.71488 111.907 2.39629 112.078L6.76868 113.168C8.7107 113.656 10.4937 114.667 11.9133 116.087C13.3329 117.506 14.3437 119.289 14.832 121.231L15.9223 125.604C16.0926 126.285 16.4901 126.898 17.0466 127.33C17.6031 127.762 18.2845 128 19 128C19.7155 128 20.3969 127.762 20.9534 127.33C21.5099 126.898 21.9074 126.285 22.0777 125.604L23.168 121.231C24.1674 117.268 27.2564 114.167 31.2313 113.168L35.6037 112.078C36.2851 111.907 36.8984 111.51 37.3299 110.953C37.7615 110.397 38 109.715 38 109C38 108.285 37.7615 107.603 37.3299 107.047C36.8984 106.49 36.2851 106.093 35.6037 105.922L31.2313 104.832C27.2678 103.833 24.1674 100.744 23.168 96.7687L22.0777 92.3963C21.9074 91.7149 21.5099 91.1016 20.9534 90.6701Z"
197
- fill="${this.iconColor}" />
198
- <path
199
- d="M20.9534 0.670054C20.3969 0.238494 19.7155 0 19 0C18.2959 0 17.6031 0.238494 17.0466 0.670054C16.4901 1.10161 16.0926 1.71488 15.9223 2.39629L14.832 6.76868C14.3437 8.7107 13.3329 10.4937 11.9133 11.9133C10.4937 13.3329 8.7107 14.3437 6.76868 14.832L2.39629 15.9223C1.71488 16.0926 1.10162 16.4901 0.670056 17.0466C0.238496 17.6031 0 18.2845 0 19C0 19.7155 0.238496 20.3969 0.670056 20.9534C1.10162 21.5099 1.71488 21.9074 2.39629 22.0777L6.76868 23.168C8.7107 23.6563 10.4937 24.6671 11.9133 26.0867C13.3329 27.5063 14.3437 29.2893 14.832 31.2313L15.9223 35.6037C16.0926 36.2851 16.4901 36.8984 17.0466 37.3299C17.6031 37.7615 18.2845 38 19 38C19.7155 38 20.3969 37.7615 20.9534 37.3299C21.5099 36.8984 21.9074 36.2851 22.0777 35.6037L23.168 31.2313C24.1674 27.2678 27.2564 24.1674 31.2313 23.168L35.6037 22.0777C36.2851 21.9074 36.8984 21.5099 37.3299 20.9534C37.7615 20.3969 38 19.7155 38 19C38 18.2845 37.7615 17.6031 37.3299 17.0466C36.8984 16.4901 36.2851 16.0926 35.6037 15.9223L31.2313 14.832C27.2678 13.8326 24.1674 10.7436 23.168 6.76868L22.0777 2.39629C21.9074 1.71488 21.5099 1.10161 20.9534 0.670054Z"
200
- fill="${this.iconColor}" />
201
- <path
202
- fill-rule="evenodd"
203
- clip-rule="evenodd"
204
- d="M57.2593 12C58.3812 12 59.4479 12.3678 60.3492 13.03C61.232 13.6921 61.8757 14.6485 62.1884 15.7152L67.7429 35.1559C68.9383 39.3493 71.1822 43.1565 74.2721 46.2464C77.3436 49.3179 81.1692 51.5618 85.3626 52.7757L104.803 58.3301C105.87 58.6428 106.808 59.2865 107.489 60.1694C108.151 61.0522 108.519 62.1373 108.519 63.2593C108.519 64.3812 108.151 65.4479 107.489 66.3492C106.826 67.2504 105.87 67.8757 104.803 68.1884L85.3626 73.7429C81.1692 74.9384 77.362 77.1822 74.2721 80.2721C71.2006 83.3436 68.9567 87.1692 67.7429 91.3627L62.1884 110.803C61.8757 111.87 61.232 112.808 60.3492 113.489C59.4663 114.151 58.3812 114.519 57.2593 114.519C56.1373 114.519 55.0706 114.151 54.1694 113.489C53.2865 112.826 52.6428 111.87 52.3301 110.803L46.7757 91.3627C45.5802 87.1692 43.3363 83.362 40.2464 80.2721C37.1749 77.2006 33.3493 74.9567 29.1559 73.7429L9.71524 68.1884C8.64849 67.8757 7.71048 67.232 7.02997 66.3492C6.36785 65.4663 6 64.3812 6 63.2593C6 62.1373 6.36785 61.0706 7.02997 60.1694C7.69209 59.2865 8.64849 58.6428 9.71524 58.3301L29.1559 52.7757C33.3493 51.5802 37.1565 49.3363 40.2464 46.2464C43.3179 43.1749 45.5618 39.3493 46.7757 35.1559L52.3301 15.7152C52.6428 14.6485 53.2865 13.7105 54.1694 13.03C55.0522 12.3678 56.1373 12 57.2593 12Z"
205
- fill="${this.iconColor}" />
206
- </svg>
207
- </div>
208
- `}
209
- </div>
210
-
211
- <!-- the 'close' state invites the user to close (e.g. the chat window) -->
212
- <div
213
- class="${this.state==="close"?"visible opacity-100":"invisible opacity-0"} absolute top-0 right-0 bottom-0 left-0 inline-flex items-center justify-center bg-slate-800 transition-[opacity,visibility]">
214
- <!-- down arrow -->
215
- <svg class="h-6 w-6" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
216
- <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" />
217
- </svg>
218
- </div>
219
- </button>
220
- </mw-spinning-border>
221
- </div>
222
- `};customElements.get("mw-bubble")||customElements.define("mw-bubble",Jn);var po={airplay:`<svg
223
- xmlns="http://www.w3.org/2000/svg"
224
- width="24"
225
- height="24"
226
- viewBox="0 0 24 24"
227
- fill="none"
228
- stroke="currentColor"
229
- stroke-width="2"
230
- stroke-linecap="round"
231
- stroke-linejoin="round"
232
- >
233
- <path d="M5 17H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-1" />
234
- <path d="m12 15 5 6H7Z" />
235
- </svg>`,"badge-alert":`<svg
236
- xmlns="http://www.w3.org/2000/svg"
237
- width="24"
238
- height="24"
239
- viewBox="0 0 24 24"
240
- fill="none"
241
- stroke="currentColor"
242
- stroke-width="2"
243
- stroke-linecap="round"
244
- stroke-linejoin="round"
245
- >
246
- <path d="M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z" />
247
- <line x1="12" x2="12" y1="8" y2="12" />
248
- <line x1="12" x2="12.01" y1="16" y2="16" />
249
- </svg>`,phone:`<svg
250
- xmlns="http://www.w3.org/2000/svg"
251
- width="24"
252
- height="24"
253
- viewBox="0 0 24 24"
254
- fill="none"
255
- stroke="currentColor"
256
- stroke-width="2"
257
- stroke-linecap="round"
258
- stroke-linejoin="round"
259
- >
260
- <path d="M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384" />
261
- </svg>`,package:`<svg
262
- xmlns="http://www.w3.org/2000/svg"
263
- width="24"
264
- height="24"
265
- viewBox="0 0 24 24"
266
- fill="none"
267
- stroke="currentColor"
268
- stroke-width="2"
269
- stroke-linecap="round"
270
- stroke-linejoin="round"
271
- >
272
- <path d="M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z" />
273
- <path d="M12 22V12" />
274
- <polyline points="3.29 7 12 12 20.71 7" />
275
- <path d="m7.5 4.27 9 5.15" />
276
- </svg>`,"message-square":`<svg
277
- xmlns="http://www.w3.org/2000/svg"
278
- width="24"
279
- height="24"
280
- viewBox="0 0 24 24"
281
- fill="none"
282
- stroke="currentColor"
283
- stroke-width="2"
284
- stroke-linecap="round"
285
- stroke-linejoin="round"
286
- >
287
- <path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z" />
288
- </svg>`,info:`<svg
289
- xmlns="http://www.w3.org/2000/svg"
290
- width="24"
291
- height="24"
292
- viewBox="0 0 24 24"
293
- fill="none"
294
- stroke="currentColor"
295
- stroke-width="2"
296
- stroke-linecap="round"
297
- stroke-linejoin="round"
298
- >
299
- <circle cx="12" cy="12" r="10" />
300
- <path d="M12 16v-4" />
301
- <path d="M12 8h.01" />
302
- </svg>`,user:`<svg
303
- xmlns="http://www.w3.org/2000/svg"
304
- width="24"
305
- height="24"
306
- viewBox="0 0 24 24"
307
- fill="none"
308
- stroke="currentColor"
309
- stroke-width="2"
310
- stroke-linecap="round"
311
- stroke-linejoin="round"
312
- >
313
- <path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2" />
314
- <circle cx="12" cy="7" r="4" />
315
- </svg>`,mail:`<svg
316
- xmlns="http://www.w3.org/2000/svg"
317
- width="24"
318
- height="24"
319
- viewBox="0 0 24 24"
320
- fill="none"
321
- stroke="currentColor"
322
- stroke-width="2"
323
- stroke-linecap="round"
324
- stroke-linejoin="round"
325
- >
326
- <path d="m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7" />
327
- <rect x="2" y="4" width="20" height="16" rx="2" />
328
- </svg>`,hash:`<svg
329
- xmlns="http://www.w3.org/2000/svg"
330
- width="24"
331
- height="24"
332
- viewBox="0 0 24 24"
333
- fill="none"
334
- stroke="currentColor"
335
- stroke-width="2"
336
- stroke-linecap="round"
337
- stroke-linejoin="round"
338
- >
339
- <line x1="4" x2="20" y1="9" y2="9" />
340
- <line x1="4" x2="20" y1="15" y2="15" />
341
- <line x1="10" x2="8" y1="3" y2="21" />
342
- <line x1="16" x2="14" y1="3" y2="21" />
343
- </svg>`,search:`<svg
344
- xmlns="http://www.w3.org/2000/svg"
345
- width="24"
346
- height="24"
347
- viewBox="0 0 24 24"
348
- fill="none"
349
- stroke="currentColor"
350
- stroke-width="2"
351
- stroke-linecap="round"
352
- stroke-linejoin="round"
353
- >
354
- <path d="m21 21-4.34-4.34" />
355
- <circle cx="11" cy="11" r="8" />
356
- </svg>`,"chart-line":`<svg
357
- xmlns="http://www.w3.org/2000/svg"
358
- width="24"
359
- height="24"
360
- viewBox="0 0 24 24"
361
- fill="none"
362
- stroke="currentColor"
363
- stroke-width="2"
364
- stroke-linecap="round"
365
- stroke-linejoin="round"
366
- >
367
- <path d="M3 3v16a2 2 0 0 0 2 2h16" />
368
- <path d="m19 9-5 5-4-4-3 3" />
369
- </svg>`,"credit-card":`<svg
370
- xmlns="http://www.w3.org/2000/svg"
371
- width="24"
372
- height="24"
373
- viewBox="0 0 24 24"
374
- fill="none"
375
- stroke="currentColor"
376
- stroke-width="2"
377
- stroke-linecap="round"
378
- stroke-linejoin="round"
379
- >
380
- <rect width="20" height="14" x="2" y="5" rx="2" />
381
- <line x1="2" x2="22" y1="10" y2="10" />
382
- </svg>`,clock:`<svg
383
- xmlns="http://www.w3.org/2000/svg"
384
- width="24"
385
- height="24"
386
- viewBox="0 0 24 24"
387
- fill="none"
388
- stroke="currentColor"
389
- stroke-width="2"
390
- stroke-linecap="round"
391
- stroke-linejoin="round"
392
- >
393
- <path d="M12 6v6l4 2" />
394
- <circle cx="12" cy="12" r="10" />
395
- </svg>`,circle:`<svg
396
- xmlns="http://www.w3.org/2000/svg"
397
- width="24"
398
- height="24"
399
- viewBox="0 0 24 24"
400
- fill="none"
401
- stroke="currentColor"
402
- stroke-width="2"
403
- stroke-linecap="round"
404
- stroke-linejoin="round"
405
- >
406
- <circle cx="12" cy="12" r="10" />
407
- </svg>`,"chevron-down":`<svg
408
- xmlns="http://www.w3.org/2000/svg"
409
- width="24"
410
- height="24"
411
- viewBox="0 0 24 24"
412
- fill="none"
413
- stroke="currentColor"
414
- stroke-width="2"
415
- stroke-linecap="round"
416
- stroke-linejoin="round"
417
- >
418
- <path d="m6 9 6 6 6-6" />
419
- </svg>`,"chevron-right":`<svg
420
- xmlns="http://www.w3.org/2000/svg"
421
- width="24"
422
- height="24"
423
- viewBox="0 0 24 24"
424
- fill="none"
425
- stroke="currentColor"
426
- stroke-width="2"
427
- stroke-linecap="round"
428
- stroke-linejoin="round"
429
- >
430
- <path d="m9 18 6-6-6-6" />
431
- </svg>`,"circle-check":`<svg
432
- xmlns="http://www.w3.org/2000/svg"
433
- width="24"
434
- height="24"
435
- viewBox="0 0 24 24"
436
- fill="none"
437
- stroke="currentColor"
438
- stroke-width="2"
439
- stroke-linecap="round"
440
- stroke-linejoin="round"
441
- >
442
- <circle cx="12" cy="12" r="10" />
443
- <path d="m9 12 2 2 4-4" />
444
- </svg>`,"circle-x":`<svg
445
- xmlns="http://www.w3.org/2000/svg"
446
- width="24"
447
- height="24"
448
- viewBox="0 0 24 24"
449
- fill="none"
450
- stroke="currentColor"
451
- stroke-width="2"
452
- stroke-linecap="round"
453
- stroke-linejoin="round"
454
- >
455
- <circle cx="12" cy="12" r="10" />
456
- <path d="m15 9-6 6" />
457
- <path d="m9 9 6 6" />
458
- </svg>`,facebook:`<svg
459
- xmlns="http://www.w3.org/2000/svg"
460
- width="24"
461
- height="24"
462
- viewBox="0 0 24 24"
463
- fill="none"
464
- stroke="currentColor"
465
- stroke-width="2"
466
- stroke-linecap="round"
467
- stroke-linejoin="round"
468
- >
469
- <path d="M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z" />
470
- </svg>`,youtube:`<svg
471
- xmlns="http://www.w3.org/2000/svg"
472
- width="24"
473
- height="24"
474
- viewBox="0 0 24 24"
475
- fill="none"
476
- stroke="currentColor"
477
- stroke-width="2"
478
- stroke-linecap="round"
479
- stroke-linejoin="round"
480
- >
481
- <path d="M2.5 17a24.12 24.12 0 0 1 0-10 2 2 0 0 1 1.4-1.4 49.56 49.56 0 0 1 16.2 0A2 2 0 0 1 21.5 7a24.12 24.12 0 0 1 0 10 2 2 0 0 1-1.4 1.4 49.55 49.55 0 0 1-16.2 0A2 2 0 0 1 2.5 17" />
482
- <path d="m10 15 5-3-5-3z" />
483
- </svg>`,linkedin:`<svg
484
- xmlns="http://www.w3.org/2000/svg"
485
- width="24"
486
- height="24"
487
- viewBox="0 0 24 24"
488
- fill="none"
489
- stroke="currentColor"
490
- stroke-width="2"
491
- stroke-linecap="round"
492
- stroke-linejoin="round"
493
- >
494
- <path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z" />
495
- <rect width="4" height="12" x="2" y="9" />
496
- <circle cx="4" cy="4" r="2" />
497
- </svg>`,telegram:"404: Not Found",whatsapp:"404: Not Found",twitter:`<svg
498
- xmlns="http://www.w3.org/2000/svg"
499
- width="24"
500
- height="24"
501
- viewBox="0 0 24 24"
502
- fill="none"
503
- stroke="currentColor"
504
- stroke-width="2"
505
- stroke-linecap="round"
506
- stroke-linejoin="round"
507
- >
508
- <path d="M22 4s-.7 2.1-2 3.4c1.6 10-9.4 17.3-18 11.6 2.2.1 4.4-.6 6-2C3 15.5.5 9.6 3 5c2.2 2.6 5.6 4.1 9 4-.9-4.2 4-6.6 7-3.8 1.1 0 3-1.2 3-1.2z" />
509
- </svg>`,"arrow-right":`<svg
510
- xmlns="http://www.w3.org/2000/svg"
511
- width="24"
512
- height="24"
513
- viewBox="0 0 24 24"
514
- fill="none"
515
- stroke="currentColor"
516
- stroke-width="2"
517
- stroke-linecap="round"
518
- stroke-linejoin="round"
519
- >
520
- <path d="M5 12h14" />
521
- <path d="m12 5 7 7-7 7" />
522
- </svg>`,"arrow-left":`<svg
523
- xmlns="http://www.w3.org/2000/svg"
524
- width="24"
525
- height="24"
526
- viewBox="0 0 24 24"
527
- fill="none"
528
- stroke="currentColor"
529
- stroke-width="2"
530
- stroke-linecap="round"
531
- stroke-linejoin="round"
532
- >
533
- <path d="m12 19-7-7 7-7" />
534
- <path d="M19 12H5" />
535
- </svg>`,"arrow-up":`<svg
536
- xmlns="http://www.w3.org/2000/svg"
537
- width="24"
538
- height="24"
539
- viewBox="0 0 24 24"
540
- fill="none"
541
- stroke="currentColor"
542
- stroke-width="2"
543
- stroke-linecap="round"
544
- stroke-linejoin="round"
545
- >
546
- <path d="m5 12 7-7 7 7" />
547
- <path d="M12 19V5" />
548
- </svg>`,"arrow-down":`<svg
549
- xmlns="http://www.w3.org/2000/svg"
550
- width="24"
551
- height="24"
552
- viewBox="0 0 24 24"
553
- fill="none"
554
- stroke="currentColor"
555
- stroke-width="2"
556
- stroke-linecap="round"
557
- stroke-linejoin="round"
558
- >
559
- <path d="M12 5v14" />
560
- <path d="m19 12-7 7-7-7" />
561
- </svg>`,"arrow-right-to-line":`<svg
562
- xmlns="http://www.w3.org/2000/svg"
563
- width="24"
564
- height="24"
565
- viewBox="0 0 24 24"
566
- fill="none"
567
- stroke="currentColor"
568
- stroke-width="2"
569
- stroke-linecap="round"
570
- stroke-linejoin="round"
571
- >
572
- <path d="M17 12H3" />
573
- <path d="m11 18 6-6-6-6" />
574
- <path d="M21 5v14" />
575
- </svg>`,"arrow-left-to-line":`<svg
576
- xmlns="http://www.w3.org/2000/svg"
577
- width="24"
578
- height="24"
579
- viewBox="0 0 24 24"
580
- fill="none"
581
- stroke="currentColor"
582
- stroke-width="2"
583
- stroke-linecap="round"
584
- stroke-linejoin="round"
585
- >
586
- <path d="M3 19V5" />
587
- <path d="m13 6-6 6 6 6" />
588
- <path d="M7 12h14" />
589
- </svg>`,"maximize-2":`<svg
590
- xmlns="http://www.w3.org/2000/svg"
591
- width="24"
592
- height="24"
593
- viewBox="0 0 24 24"
594
- fill="none"
595
- stroke="currentColor"
596
- stroke-width="2"
597
- stroke-linecap="round"
598
- stroke-linejoin="round"
599
- >
600
- <path d="M15 3h6v6" />
601
- <path d="m21 3-7 7" />
602
- <path d="m3 21 7-7" />
603
- <path d="M9 21H3v-6" />
604
- </svg>`,"minimize-2":`<svg
605
- xmlns="http://www.w3.org/2000/svg"
606
- width="24"
607
- height="24"
608
- viewBox="0 0 24 24"
609
- fill="none"
610
- stroke="currentColor"
611
- stroke-width="2"
612
- stroke-linecap="round"
613
- stroke-linejoin="round"
614
- >
615
- <path d="m14 10 7-7" />
616
- <path d="M20 10h-6V4" />
617
- <path d="m3 21 7-7" />
618
- <path d="M4 14h6v6" />
619
- </svg>`,"skip-forward":`<svg
620
- xmlns="http://www.w3.org/2000/svg"
621
- width="24"
622
- height="24"
623
- viewBox="0 0 24 24"
624
- fill="none"
625
- stroke="currentColor"
626
- stroke-width="2"
627
- stroke-linecap="round"
628
- stroke-linejoin="round"
629
- >
630
- <path d="M21 4v16" />
631
- <path d="M6.029 4.285A2 2 0 0 0 3 6v12a2 2 0 0 0 3.029 1.715l9.997-5.998a2 2 0 0 0 .003-3.432z" />
632
- </svg>`,"skip-back":`<svg
633
- xmlns="http://www.w3.org/2000/svg"
634
- width="24"
635
- height="24"
636
- viewBox="0 0 24 24"
637
- fill="none"
638
- stroke="currentColor"
639
- stroke-width="2"
640
- stroke-linecap="round"
641
- stroke-linejoin="round"
642
- >
643
- <path d="M17.971 4.285A2 2 0 0 1 21 6v12a2 2 0 0 1-3.029 1.715l-9.997-5.998a2 2 0 0 1-.003-3.432z" />
644
- <path d="M3 20V4" />
645
- </svg>`,"mouse-pointer-click":`<svg
646
- xmlns="http://www.w3.org/2000/svg"
647
- width="24"
648
- height="24"
649
- viewBox="0 0 24 24"
650
- fill="none"
651
- stroke="currentColor"
652
- stroke-width="2"
653
- stroke-linecap="round"
654
- stroke-linejoin="round"
655
- >
656
- <path d="M14 4.1 12 6" />
657
- <path d="m5.1 8-2.9-.8" />
658
- <path d="m6 12-1.9 2" />
659
- <path d="M7.2 2.2 8 5.1" />
660
- <path d="M9.037 9.69a.498.498 0 0 1 .653-.653l11 4.5a.5.5 0 0 1-.074.949l-4.349 1.041a1 1 0 0 0-.74.739l-1.04 4.35a.5.5 0 0 1-.95.074z" />
661
- </svg>`,globe:`<svg
662
- xmlns="http://www.w3.org/2000/svg"
663
- width="24"
664
- height="24"
665
- viewBox="0 0 24 24"
666
- fill="none"
667
- stroke="currentColor"
668
- stroke-width="2"
669
- stroke-linecap="round"
670
- stroke-linejoin="round"
671
- >
672
- <circle cx="12" cy="12" r="10" />
673
- <path d="M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20" />
674
- <path d="M2 12h20" />
675
- </svg>`,play:`<svg
676
- xmlns="http://www.w3.org/2000/svg"
677
- width="24"
678
- height="24"
679
- viewBox="0 0 24 24"
680
- fill="none"
681
- stroke="currentColor"
682
- stroke-width="2"
683
- stroke-linecap="round"
684
- stroke-linejoin="round"
685
- >
686
- <path d="M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z" />
687
- </svg>`,pause:`<svg
688
- xmlns="http://www.w3.org/2000/svg"
689
- width="24"
690
- height="24"
691
- viewBox="0 0 24 24"
692
- fill="none"
693
- stroke="currentColor"
694
- stroke-width="2"
695
- stroke-linecap="round"
696
- stroke-linejoin="round"
697
- >
698
- <rect x="14" y="3" width="5" height="18" rx="1" />
699
- <rect x="5" y="3" width="5" height="18" rx="1" />
700
- </svg>`,"volume-off":`<svg
701
- xmlns="http://www.w3.org/2000/svg"
702
- width="24"
703
- height="24"
704
- viewBox="0 0 24 24"
705
- fill="none"
706
- stroke="currentColor"
707
- stroke-width="2"
708
- stroke-linecap="round"
709
- stroke-linejoin="round"
710
- >
711
- <path d="M16 9a5 5 0 0 1 .95 2.293" />
712
- <path d="M19.364 5.636a9 9 0 0 1 1.889 9.96" />
713
- <path d="m2 2 20 20" />
714
- <path d="m7 7-.587.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298V11" />
715
- <path d="M9.828 4.172A.686.686 0 0 1 11 4.657v.686" />
716
- </svg>`,"volume-2":`<svg
717
- xmlns="http://www.w3.org/2000/svg"
718
- width="24"
719
- height="24"
720
- viewBox="0 0 24 24"
721
- fill="none"
722
- stroke="currentColor"
723
- stroke-width="2"
724
- stroke-linecap="round"
725
- stroke-linejoin="round"
726
- >
727
- <path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z" />
728
- <path d="M16 9a5 5 0 0 1 0 6" />
729
- <path d="M19.364 18.364a9 9 0 0 0 0-12.728" />
730
- </svg>`,"panel-left-open":`<svg
731
- xmlns="http://www.w3.org/2000/svg"
732
- width="24"
733
- height="24"
734
- viewBox="0 0 24 24"
735
- fill="none"
736
- stroke="currentColor"
737
- stroke-width="2"
738
- stroke-linecap="round"
739
- stroke-linejoin="round"
740
- >
741
- <rect width="18" height="18" x="3" y="3" rx="2" />
742
- <path d="M9 3v18" />
743
- <path d="m14 9 3 3-3 3" />
744
- </svg>`,"panel-left-close":`<svg
745
- xmlns="http://www.w3.org/2000/svg"
746
- width="24"
747
- height="24"
748
- viewBox="0 0 24 24"
749
- fill="none"
750
- stroke="currentColor"
751
- stroke-width="2"
752
- stroke-linecap="round"
753
- stroke-linejoin="round"
754
- >
755
- <rect width="18" height="18" x="3" y="3" rx="2" />
756
- <path d="M9 3v18" />
757
- <path d="m16 15-3-3 3-3" />
758
- </svg>`,"square-pen":`<svg
759
- xmlns="http://www.w3.org/2000/svg"
760
- width="24"
761
- height="24"
762
- viewBox="0 0 24 24"
763
- fill="none"
764
- stroke="currentColor"
765
- stroke-width="2"
766
- stroke-linecap="round"
767
- stroke-linejoin="round"
768
- >
769
- <path d="M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7" />
770
- <path d="M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z" />
771
- </svg>`,share:`<svg
772
- xmlns="http://www.w3.org/2000/svg"
773
- width="24"
774
- height="24"
775
- viewBox="0 0 24 24"
776
- fill="none"
777
- stroke="currentColor"
778
- stroke-width="2"
779
- stroke-linecap="round"
780
- stroke-linejoin="round"
781
- >
782
- <path d="M12 2v13" />
783
- <path d="m16 6-4-4-4 4" />
784
- <path d="M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8" />
785
- </svg>`,settings:`<svg
786
- xmlns="http://www.w3.org/2000/svg"
787
- width="24"
788
- height="24"
789
- viewBox="0 0 24 24"
790
- fill="none"
791
- stroke="currentColor"
792
- stroke-width="2"
793
- stroke-linecap="round"
794
- stroke-linejoin="round"
795
- >
796
- <path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915" />
797
- <circle cx="12" cy="12" r="3" />
798
- </svg>`,"dollar-sign":`<svg
799
- xmlns="http://www.w3.org/2000/svg"
800
- width="24"
801
- height="24"
802
- viewBox="0 0 24 24"
803
- fill="none"
804
- stroke="currentColor"
805
- stroke-width="2"
806
- stroke-linecap="round"
807
- stroke-linejoin="round"
808
- >
809
- <line x1="12" x2="12" y1="2" y2="22" />
810
- <path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6" />
811
- </svg>`,"book-open":`<svg
812
- xmlns="http://www.w3.org/2000/svg"
813
- width="24"
814
- height="24"
815
- viewBox="0 0 24 24"
816
- fill="none"
817
- stroke="currentColor"
818
- stroke-width="2"
819
- stroke-linecap="round"
820
- stroke-linejoin="round"
821
- >
822
- <path d="M12 7v14" />
823
- <path d="M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z" />
824
- </svg>`,users:`<svg
825
- xmlns="http://www.w3.org/2000/svg"
826
- width="24"
827
- height="24"
828
- viewBox="0 0 24 24"
829
- fill="none"
830
- stroke="currentColor"
831
- stroke-width="2"
832
- stroke-linecap="round"
833
- stroke-linejoin="round"
834
- >
835
- <path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2" />
836
- <path d="M16 3.128a4 4 0 0 1 0 7.744" />
837
- <path d="M22 21v-2a4 4 0 0 0-3-3.87" />
838
- <circle cx="9" cy="7" r="4" />
839
- </svg>`,"help-circle":"404: Not Found",monitor:`<svg
840
- xmlns="http://www.w3.org/2000/svg"
841
- width="24"
842
- height="24"
843
- viewBox="0 0 24 24"
844
- fill="none"
845
- stroke="currentColor"
846
- stroke-width="2"
847
- stroke-linecap="round"
848
- stroke-linejoin="round"
849
- >
850
- <rect width="20" height="14" x="2" y="3" rx="2" />
851
- <line x1="8" x2="16" y1="21" y2="21" />
852
- <line x1="12" x2="12" y1="17" y2="21" />
853
- </svg>`,sun:`<svg
854
- xmlns="http://www.w3.org/2000/svg"
855
- width="24"
856
- height="24"
857
- viewBox="0 0 24 24"
858
- fill="none"
859
- stroke="currentColor"
860
- stroke-width="2"
861
- stroke-linecap="round"
862
- stroke-linejoin="round"
863
- >
864
- <circle cx="12" cy="12" r="4" />
865
- <path d="M12 2v2" />
866
- <path d="M12 20v2" />
867
- <path d="m4.93 4.93 1.41 1.41" />
868
- <path d="m17.66 17.66 1.41 1.41" />
869
- <path d="M2 12h2" />
870
- <path d="M20 12h2" />
871
- <path d="m6.34 17.66-1.41 1.41" />
872
- <path d="m19.07 4.93-1.41 1.41" />
873
- </svg>`,moon:`<svg
874
- xmlns="http://www.w3.org/2000/svg"
875
- width="24"
876
- height="24"
877
- viewBox="0 0 24 24"
878
- fill="none"
879
- stroke="currentColor"
880
- stroke-width="2"
881
- stroke-linecap="round"
882
- stroke-linejoin="round"
883
- >
884
- <path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401" />
885
- </svg>`,"log-out":`<svg
886
- xmlns="http://www.w3.org/2000/svg"
887
- width="24"
888
- height="24"
889
- viewBox="0 0 24 24"
890
- fill="none"
891
- stroke="currentColor"
892
- stroke-width="2"
893
- stroke-linecap="round"
894
- stroke-linejoin="round"
895
- >
896
- <path d="m16 17 5-5-5-5" />
897
- <path d="M21 12H9" />
898
- <path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4" />
899
- </svg>`,send:`<svg
900
- xmlns="http://www.w3.org/2000/svg"
901
- width="24"
902
- height="24"
903
- viewBox="0 0 24 24"
904
- fill="none"
905
- stroke="currentColor"
906
- stroke-width="2"
907
- stroke-linecap="round"
908
- stroke-linejoin="round"
909
- >
910
- <path d="M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z" />
911
- <path d="m21.854 2.147-10.94 10.939" />
912
- </svg>`,x:`<svg
913
- xmlns="http://www.w3.org/2000/svg"
914
- width="24"
915
- height="24"
916
- viewBox="0 0 24 24"
917
- fill="none"
918
- stroke="currentColor"
919
- stroke-width="2"
920
- stroke-linecap="round"
921
- stroke-linejoin="round"
922
- >
923
- <path d="M18 6 6 18" />
924
- <path d="m6 6 12 12" />
925
- </svg>`,"circle-check-big":`<svg
926
- xmlns="http://www.w3.org/2000/svg"
927
- width="24"
928
- height="24"
929
- viewBox="0 0 24 24"
930
- fill="none"
931
- stroke="currentColor"
932
- stroke-width="2"
933
- stroke-linecap="round"
934
- stroke-linejoin="round"
935
- >
936
- <path d="M21.801 10A10 10 0 1 1 17 3.335" />
937
- <path d="m9 11 3 3L22 4" />
938
- </svg>`,"square-mouse-pointer":`<svg
939
- xmlns="http://www.w3.org/2000/svg"
940
- width="24"
941
- height="24"
942
- viewBox="0 0 24 24"
943
- fill="none"
944
- stroke="currentColor"
945
- stroke-width="2"
946
- stroke-linecap="round"
947
- stroke-linejoin="round"
948
- >
949
- <path d="M12.034 12.681a.498.498 0 0 1 .647-.647l9 3.5a.5.5 0 0 1-.033.943l-3.444 1.068a1 1 0 0 0-.66.66l-1.067 3.443a.5.5 0 0 1-.943.033z" />
950
- <path d="M21 11V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h6" />
951
- </svg>`,"loader-circle":`<svg
952
- xmlns="http://www.w3.org/2000/svg"
953
- width="24"
954
- height="24"
955
- viewBox="0 0 24 24"
956
- fill="none"
957
- stroke="currentColor"
958
- stroke-width="2"
959
- stroke-linecap="round"
960
- stroke-linejoin="round"
961
- >
962
- <path d="M21 12a9 9 0 1 1-6.219-8.56" />
963
- </svg>`,"triangle-alert":`<svg
964
- xmlns="http://www.w3.org/2000/svg"
965
- width="24"
966
- height="24"
967
- viewBox="0 0 24 24"
968
- fill="none"
969
- stroke="currentColor"
970
- stroke-width="2"
971
- stroke-linecap="round"
972
- stroke-linejoin="round"
973
- >
974
- <path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3" />
975
- <path d="M12 9v4" />
976
- <path d="M12 17h.01" />
977
- </svg>`,compass:`<svg
978
- xmlns="http://www.w3.org/2000/svg"
979
- width="24"
980
- height="24"
981
- viewBox="0 0 24 24"
982
- fill="none"
983
- stroke="currentColor"
984
- stroke-width="2"
985
- stroke-linecap="round"
986
- stroke-linejoin="round"
987
- >
988
- <path d="m16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z" />
989
- <circle cx="12" cy="12" r="10" />
990
- </svg>`,"bed-double":`<svg
991
- xmlns="http://www.w3.org/2000/svg"
992
- width="24"
993
- height="24"
994
- viewBox="0 0 24 24"
995
- fill="none"
996
- stroke="currentColor"
997
- stroke-width="2"
998
- stroke-linecap="round"
999
- stroke-linejoin="round"
1000
- >
1001
- <path d="M2 20v-8a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v8" />
1002
- <path d="M4 10V6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v4" />
1003
- <path d="M12 4v6" />
1004
- <path d="M2 18h20" />
1005
- </svg>`,"square-library":`<svg
1006
- xmlns="http://www.w3.org/2000/svg"
1007
- width="24"
1008
- height="24"
1009
- viewBox="0 0 24 24"
1010
- fill="none"
1011
- stroke="currentColor"
1012
- stroke-width="2"
1013
- stroke-linecap="round"
1014
- stroke-linejoin="round"
1015
- >
1016
- <rect width="18" height="18" x="3" y="3" rx="2" />
1017
- <path d="M7 7v10" />
1018
- <path d="M11 7v10" />
1019
- <path d="m15 7 2 10" />
1020
- </svg>`,"trending-up":`<svg
1021
- xmlns="http://www.w3.org/2000/svg"
1022
- width="24"
1023
- height="24"
1024
- viewBox="0 0 24 24"
1025
- fill="none"
1026
- stroke="currentColor"
1027
- stroke-width="2"
1028
- stroke-linecap="round"
1029
- stroke-linejoin="round"
1030
- >
1031
- <path d="M16 7h6v6" />
1032
- <path d="m22 7-8.5 8.5-5-5L2 17" />
1033
- </svg>`,plus:`<svg
1034
- xmlns="http://www.w3.org/2000/svg"
1035
- width="24"
1036
- height="24"
1037
- viewBox="0 0 24 24"
1038
- fill="none"
1039
- stroke="currentColor"
1040
- stroke-width="2"
1041
- stroke-linecap="round"
1042
- stroke-linejoin="round"
1043
- >
1044
- <path d="M5 12h14" />
1045
- <path d="M12 5v14" />
1046
- </svg>`,sparkles:`<svg
1047
- xmlns="http://www.w3.org/2000/svg"
1048
- width="24"
1049
- height="24"
1050
- viewBox="0 0 24 24"
1051
- fill="none"
1052
- stroke="currentColor"
1053
- stroke-width="2"
1054
- stroke-linecap="round"
1055
- stroke-linejoin="round"
1056
- >
1057
- <path d="M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z" />
1058
- <path d="M20 2v4" />
1059
- <path d="M22 4h-4" />
1060
- <circle cx="4" cy="20" r="2" />
1061
- </svg>`,"image-plus":`<svg
1062
- xmlns="http://www.w3.org/2000/svg"
1063
- width="24"
1064
- height="24"
1065
- viewBox="0 0 24 24"
1066
- fill="none"
1067
- stroke="currentColor"
1068
- stroke-width="2"
1069
- stroke-linecap="round"
1070
- stroke-linejoin="round"
1071
- >
1072
- <path d="M16 5h6" />
1073
- <path d="M19 2v6" />
1074
- <path d="M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5" />
1075
- <path d="m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21" />
1076
- <circle cx="9" cy="9" r="2" />
1077
- </svg>`,"external-link":`<svg
1078
- xmlns="http://www.w3.org/2000/svg"
1079
- width="24"
1080
- height="24"
1081
- viewBox="0 0 24 24"
1082
- fill="none"
1083
- stroke="currentColor"
1084
- stroke-width="2"
1085
- stroke-linecap="round"
1086
- stroke-linejoin="round"
1087
- >
1088
- <path d="M15 3h6v6" />
1089
- <path d="M10 14 21 3" />
1090
- <path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6" />
1091
- </svg>`,"trash-2":`<svg
1092
- xmlns="http://www.w3.org/2000/svg"
1093
- width="24"
1094
- height="24"
1095
- viewBox="0 0 24 24"
1096
- fill="none"
1097
- stroke="currentColor"
1098
- stroke-width="2"
1099
- stroke-linecap="round"
1100
- stroke-linejoin="round"
1101
- >
1102
- <path d="M10 11v6" />
1103
- <path d="M14 11v6" />
1104
- <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6" />
1105
- <path d="M3 6h18" />
1106
- <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2" />
1107
- </svg>`,dock:`<svg
1108
- xmlns="http://www.w3.org/2000/svg"
1109
- width="24"
1110
- height="24"
1111
- viewBox="0 0 24 24"
1112
- fill="none"
1113
- stroke="currentColor"
1114
- stroke-width="2"
1115
- stroke-linecap="round"
1116
- stroke-linejoin="round"
1117
- >
1118
- <path d="M2 8h20" />
1119
- <rect width="20" height="16" x="2" y="4" rx="2" />
1120
- <path d="M6 16h12" />
1121
- </svg>`,"refresh-cw":`<svg
1122
- xmlns="http://www.w3.org/2000/svg"
1123
- width="24"
1124
- height="24"
1125
- viewBox="0 0 24 24"
1126
- fill="none"
1127
- stroke="currentColor"
1128
- stroke-width="2"
1129
- stroke-linecap="round"
1130
- stroke-linejoin="round"
1131
- >
1132
- <path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8" />
1133
- <path d="M21 3v5h-5" />
1134
- <path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16" />
1135
- <path d="M8 16H3v5" />
1136
- </svg>`,copy:`<svg
1137
- xmlns="http://www.w3.org/2000/svg"
1138
- width="24"
1139
- height="24"
1140
- viewBox="0 0 24 24"
1141
- fill="none"
1142
- stroke="currentColor"
1143
- stroke-width="2"
1144
- stroke-linecap="round"
1145
- stroke-linejoin="round"
1146
- >
1147
- <rect width="14" height="14" x="8" y="8" rx="2" ry="2" />
1148
- <path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2" />
1149
- </svg>`};var wr=class t extends HTMLElement{static observedAttributes=["name","fill","stroke"];constructor(){super(),this.attachShadow({mode:"open"})}attributeChangedCallback(e,r,n){if(r!==n&&t.observedAttributes.includes(e)){switch(e){case"name":this.name=n||"";break;case"fill":this.fill=n||"none";break;case"stroke":this.stroke=n||"currentColor";break}this.render()}}resolveIcon(e){throw new Error("Not implemented")}render(){let e=document.createElement("style");if(e.textContent=`
1150
- :host {
1151
- display: inline-block;
1152
- line-height: 0;
1153
- }
1154
- `,this.shadowRoot){for(;this.shadowRoot.firstChild;)this.shadowRoot.removeChild(this.shadowRoot.firstChild);this.shadowRoot.appendChild(e)}if(!this.name)return;let r=this.resolveIcon(this.name);if(!r){console.warn(`'${this.name}' not found, please add it to ${t.name}`);return}let s=new DOMParser().parseFromString(r,"image/svg+xml").documentElement;s.setAttribute("fill",this.fill),s.setAttribute("stroke",this.stroke),s.style.width="100%",s.style.height="100%",this.shadowRoot?.appendChild(s)}name="";fill="none";stroke="currentColor"};var Kl=po,Kn=class extends wr{resolveIcon(e){return Kl[e]}};customElements.get("lucide-icon")||customElements.define("lucide-icon",Kn);var Te=class t extends C(v){static properties={color:{type:String},disabled:{type:Boolean},placeholder:{type:String},dark:{type:Boolean},_inputValue:{type:String,state:!0}};constructor(){super(),this.color="#8B5CF6",this.disabled=!1,this.placeholder="Ask AI...",this.dark=!1,this._inputValue=""}#e=new Date;#t(e){let r=e.target;this._inputValue=r.value,this.dispatchEvent(new t.ChangeEvent({value:this._inputValue}))}render(){return u`
1155
- <mw-spinning-border
1156
- .size=${"420px"}
1157
- .color=${this.color||"#8B5CF6"}
1158
- .radius=${"24px"}
1159
- class="${this.dark?"dark":""} rounded-[24px] font-sans text-sm shadow-lg transition-transform duration-500 hover:scale-105">
1160
- <form
1161
- @submit="${this.#r}"
1162
- class="m-[1px] flex w-[250px] items-center rounded-[24px] bg-white px-2 py-2 text-gray-800 transition-all duration-500 focus-within:w-[calc(100vw-2rem)] focus-within:scale-100 active:w-[calc(100vw-2rem)] md:focus-within:w-[350px] md:active:w-[350px] dark:bg-gray-900 dark:text-white">
1163
- <lucide-icon class="h-5 w-5 flex-none text-[${this.color||"#8B5CF6"}]" name="${"sparkles"}"></lucide-icon>
1164
-
1165
- <input
1166
- ?disabled="${this.disabled}"
1167
- @keydown="${this.#s}"
1168
- @input="${this.#t}"
1169
- .value="${this._inputValue}"
1170
- placeholder="${this.placeholder}"
1171
- autocomplete="off"
1172
- name="input"
1173
- class="ml-2 w-full bg-transparent text-gray-800 placeholder:font-light placeholder:text-gray-500 focus:outline-none dark:text-white dark:placeholder:text-gray-400" />
1174
-
1175
- <!-- submit button -->
1176
- <button
1177
- ?disabled="${this.disabled||!this._inputValue.trim()}"
1178
- class="relative ml-2 h-8 w-8 flex-none rounded-full bg-[${this.color||"#8B5CF6"}] p-0 text-white hover:opacity-70 disabled:bg-gray-400 disabled:text-gray-300 disabled:hover:opacity-100"
1179
- type="submit">
1180
- <div class="absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
1181
- <lucide-icon class="block h-5 w-5 text-white" name="${"arrow-up"}"></lucide-icon>
1182
- </div>
1183
- </button>
1184
- </form>
1185
- </mw-spinning-border>
1186
- `}#r(e){e.preventDefault();let r=new Date;if(r.getTime()-this.#e.getTime()<500)return;this.#e=r;let i=this._inputValue.trim();i&&this.dispatchEvent(new t.SubmitInputEvent({text:i}))&&(this._inputValue="")}get#n(){return this.renderRoot.querySelector('input[name="input"]')??null}get#i(){return this.renderRoot.querySelector('button[type="submit"]')??null}#s(e){Yl(e)&&(e.preventDefault(),this.disabled||this.#i?.click())}};Te.SubmitInputEvent=class extends CustomEvent{static type="mw-floating-ask-ai:submit";constructor(e,r={}){super(Te.SubmitInputEvent.type,{detail:e,bubbles:!0,composed:!0,...r})}};Te.ChangeEvent=class extends CustomEvent{static type="mw-floating-ask-ai:change";constructor(e,r={}){super(Te.ChangeEvent.type,{detail:e,bubbles:!0,composed:!0,...r})}};function Yl(t){return(t.code==="Enter"||t.code==="NumpadEnter")&&!t.ctrlKey&&!t.metaKey&&!t.shiftKey}customElements.get("mw-floating-ask-ai")||customElements.define("mw-floating-ask-ai",Te);var yr={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},vr=t=>(...e)=>({_$litDirective$:t,values:e}),Qe=class{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,r,n){this._$Ct=e,this._$AM=r,this._$Ci=n}_$AS(e,r){return this.update(e,r)}update(e,r){return this.render(...r)}};var{I:Xl}=es;var fo=()=>document.createComment(""),et=(t,e,r)=>{let n=t._$AA.parentNode,i=e===void 0?t._$AB:e._$AA;if(r===void 0){let s=n.insertBefore(fo(),i),o=n.insertBefore(fo(),i);r=new Xl(s,o,t,t.options)}else{let s=r._$AB.nextSibling,o=r._$AM,c=o!==t;if(c){let l;r._$AQ?.(t),r._$AM=t,r._$AP!==void 0&&(l=t._$AU)!==o._$AU&&r._$AP(l)}if(s!==i||c){let l=r._$AA;for(;l!==s;){let a=l.nextSibling;n.insertBefore(l,i),l=a}}}return r},we=(t,e,r=t)=>(t._$AI(e,r),t),Ql={},mo=(t,e=Ql)=>t._$AH=e,go=t=>t._$AH,br=t=>{t._$AR(),t._$AA.remove()};var wo=(t,e,r)=>{let n=new Map;for(let i=e;i<=r;i++)n.set(t[i],i);return n},X=vr(class extends Qe{constructor(t){if(super(t),t.type!==yr.CHILD)throw Error("repeat() can only be used in text expressions")}dt(t,e,r){let n;r===void 0?r=e:e!==void 0&&(n=e);let i=[],s=[],o=0;for(let c of t)i[o]=n?n(c,o):o,s[o]=r(c,o),o++;return{values:s,keys:i}}render(t,e,r){return this.dt(t,e,r).values}update(t,[e,r,n]){let i=go(t),{values:s,keys:o}=this.dt(e,r,n);if(!Array.isArray(i))return this.ut=o,s;let c=this.ut??=[],l=[],a,h,d=0,f=i.length-1,p=0,y=s.length-1;for(;d<=f&&p<=y;)if(i[d]===null)d++;else if(i[f]===null)f--;else if(c[d]===o[p])l[p]=we(i[d],s[p]),d++,p++;else if(c[f]===o[y])l[y]=we(i[f],s[y]),f--,y--;else if(c[d]===o[y])l[y]=we(i[d],s[y]),et(t,l[y+1],i[d]),d++,y--;else if(c[f]===o[p])l[p]=we(i[f],s[p]),et(t,i[d],i[f]),f--,p++;else if(a===void 0&&(a=wo(o,p,y),h=wo(c,d,f)),a.has(c[d]))if(a.has(c[f])){let E=h.get(o[p]),b=E!==void 0?i[E]:null;if(b===null){let x=et(t,i[d]);we(x,s[p]),l[p]=x}else l[p]=we(b,s[p]),et(t,i[d],b),i[E]=null;p++}else br(i[f]),f--;else br(i[d]),d++;for(;p<=y;){let E=et(t,l[y+1]);we(E,s[p]),l[p++]=E}for(;d<=f;){let E=i[d++];E!==null&&br(E)}return this.ut=o,mo(t,l),ee}});var Et=class t extends C(v){static properties={examples:{type:Object},color:{type:String}};constructor(){super(),this.examples={title:"",items:[]},this.color=""}render(){return!this.examples?.title&&!this.examples?.items?.length?null:u`
1187
- <div class="flex h-full w-full flex-1 flex-col overflow-y-auto px-4 pt-6 pb-2">
1188
- ${this.examples.title?u`
1189
- <h2 class="mt-14 px-2 pt-9 pb-2 text-left text-3xl leading-tight font-bold tracking-tight">
1190
- <span>${this.examples.title}</span>
1191
- <svg class="inline-block h-9 w-9 align-middle" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 58 61">
1192
- <path
1193
- fill="#D2D2D2"
1194
- d="M23.503 12.319c.298-.925 1.605-.925 1.903 0L29.751 25.8a1 1 0 0 0 .695.66l14.515 3.852c.99.263.99 1.67 0 1.933l-14.515 3.852a1 1 0 0 0-.695.66l-4.345 13.483c-.297.924-1.605.924-1.903 0l-4.345-13.483a1 1 0 0 0-.695-.66L3.949 32.246c-.992-.263-.992-1.67 0-1.933l14.514-3.852a1 1 0 0 0 .695-.66l4.345-13.482ZM45.279 2.115c.134-.492.831-.492.965 0l1.688 6.206a.5.5 0 0 0 .373.357l6.642 1.488c.521.117.521.86 0 .976l-6.642 1.488a.5.5 0 0 0-.373.357l-1.688 6.206c-.134.492-.831.492-.965 0l-1.688-6.206a.5.5 0 0 0-.373-.357l-6.642-1.488c-.521-.117-.521-.86 0-.976l6.642-1.488a.5.5 0 0 0 .373-.357l1.688-6.206ZM45.279 42.077c.134-.492.831-.492.965 0l1.688 6.206a.5.5 0 0 0 .373.357l6.642 1.488c.521.117.521.86 0 .976l-6.642 1.488a.5.5 0 0 0-.373.357l-1.688 6.206c-.134.492-.831.492-.965 0l-1.688-6.206a.5.5 0 0 0-.373-.357l-6.642-1.488c-.521-.117-.521-.86 0-.976l6.642-1.488a.5.5 0 0 0 .373-.357l1.688-6.206Z" />
1195
- </svg>
1196
- </h2>
1197
- `:null}
1198
- ${this.examples?.items?.length?u`
1199
- <ul class="mt-auto flex flex-wrap justify-end gap-2.5 text-sm leading-6 text-black select-none">
1200
- ${X(this.examples.items,e=>e,e=>u`
1201
- <li
1202
- class="my-auto inline-block cursor-pointer rounded-2xl border-1 border-gray-300 px-4 py-2 text-left transition-all duration-200 hover:-translate-y-0.5 hover:bg-[${this.color}]/[0.08] hover:opacity-80 hover:shadow"
1203
- @click="${()=>this.#e(e)}">
1204
- <span>${e.trim()}</span>
1205
- </li>
1206
- `)}
1207
- </ul>
1208
- `:null}
1209
- </div>
1210
- `}#e(e){this.dispatchEvent(new t.ExampleClickEvent({example:e}))}};Et.ExampleClickEvent=class extends CustomEvent{static type="mw:example-click";constructor(e,r={}){super(Et.ExampleClickEvent.type,{detail:e,...r})}};customElements.get("mw-chat-background")||customElements.define("mw-chat-background",Et);var Le=class t extends C(v){static properties={content:{type:Object},showNewChat:{type:Boolean,attribute:"show-new-chat"},showClose:{type:Boolean,attribute:"show-close"}};constructor(){super(),this.content={logoUrl:"",title:"",color:""},this.showNewChat=!1,this.showClose=!1}static styles=D`
1211
- /* blurred background */
1212
-
1213
- .gradient-blur {
1214
- /* blur gradient */
1215
- mask-image: linear-gradient(to bottom, white 70%, transparent);
1216
- -webkit-mask-image: linear-gradient(to bottom, white 70%, transparent);
1217
- backdrop-filter: blur(2px);
1218
-
1219
- /* bg-color gradient */
1220
- background-image: linear-gradient(to bottom, white 20%, transparent);
1221
- }
1222
- `;render(){return u`
1223
- <div class="relative z-10 h-12">
1224
- <div class="gradient-blur absolute inset-x-0.5 mt-2 h-12"></div>
1225
-
1226
- <div class="absolute inset-0 h-12 overflow-hidden rounded-full">
1227
- <svg class="absolute left-1/2 -translate-x-1/2 text-[${this.content.color}]/80" width="1000" height="48" viewBox="0 0 1000 48" fill="none" xmlns="http://www.w3.org/2000/svg">
1228
- <path
1229
- d="M0 0V48H448C459.674 47.8029 468.846 37.4168 476.669 28.559L476.764 28.4508C482.429 22.0372 490.665 18 499.833 18C509.002 18 517.239 22.0372 522.903 28.4508L522.998 28.559C530.895 37.5009 540.167 48 552 48H1000V0H0Z"
1230
- fill="currentColor" />
1231
- </svg>
1232
- </div>
1233
-
1234
- <div class="absolute inset-0 px-4 py-3">
1235
- <!-- title + buttons -->
1236
- <!-- h-6 keeps the same height as the right buttons to stop the text jitter when they become visible -->
1237
- <div class="z-10 flex h-6 items-center gap-3">
1238
- <!-- TODO: line-clamp-2 -->
1239
- <h1 class="line-clamp-2 max-w-[40%] leading-tight font-semibold tracking-tight text-white">${this.content.title}</h1>
1240
-
1241
- <!-- spacer to push other elements to the sides -->
1242
- <div class="flex-grow"></div>
1243
-
1244
- <!-- new chat btn -->
1245
- <button @click=${this.#e} type="button" class="${this.showNewChat?"inline-flex":"hidden"} shrink-0">
1246
- <!-- svg icon of a bubble with a plus -->
1247
- <svg class="h-6 w-6" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 37 36">
1248
- <path
1249
- fill="#fff"
1250
- fill-rule="evenodd"
1251
- d="M36.201 17.62c0 10.996-6.18 17.181-17.17 17.181-3.236 0-6.055-.536-8.422-1.574l-8.084 2.697c-1.136.379-2.206-.722-1.797-1.848l2.823-7.77c-1.113-2.42-1.69-5.33-1.69-8.687C1.862 6.623 8.044.438 19.032.438c10.99 0 17.17 6.185 17.17 17.181Zm-15.88-8.653a1.355 1.355 0 0 0-2.71 0v7.897H9.716a1.355 1.355 0 1 0 0 2.71h7.897v7.896a1.355 1.355 0 1 0 2.71 0v-7.896h7.896a1.355 1.355 0 1 0 0-2.71h-7.896V8.967Z"
1252
- clip-rule="evenodd" />
1253
- </svg>
1254
- </button>
1255
-
1256
- <!-- close chat btn -->
1257
- <button @click=${this.#t} class="${this.showClose?"inline-flex":"hidden"} shrink-0">
1258
- <!-- svg icon of an X -->
1259
- <svg class="h-6 w-6" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="white">
1260
- <path stroke-linecap="round" stroke-linejoin="round" d="M6 18 18 6M6 6l12 12" />
1261
- </svg>
1262
- </button>
1263
- </div>
1264
-
1265
- <!-- logo -->
1266
- <div class="absolute top-1/2 left-1/2 z-10 -mt-0.5 -translate-x-1/2">
1267
- <!-- when injected from the dashboard, it's a base64 string data:image format -->
1268
- <img class="inline-block h-[52px] w-[52px] rounded-full bg-white object-cover" src="${this.content.logoUrl}" alt="Logo" />
1269
- </div>
1270
- </div>
1271
- </div>
1272
- `}#e(){this.dispatchEvent(new t.NewChatClickEvent)}#t(){this.dispatchEvent(new t.CloseClickEvent)}};Le.NewChatClickEvent=class extends CustomEvent{static type="mw:new-chat-click";constructor(e={}){super(Le.NewChatClickEvent.type,{...e})}};Le.CloseClickEvent=class extends CustomEvent{static type="mw:close-click";constructor(e={}){super(Le.CloseClickEvent.type,{...e})}};customElements.get("mw-chat-header")||customElements.define("mw-chat-header",Le);var ko=Ta(xo(),1);var se=Object.freeze({PENDING:"pending",READY:"ready",ERROR:"error"}),Cr=class{#e;#t;#r=null;#n=!1;#i=null;#s=[];constructor(e,r){this.#e=e,this.#t={acceptedTypes:["image/jpeg","image/png","image/gif","image/webp","image/svg+xml","image/heic"],maxFileSize:10*1024*1024,maxFiles:3,onError:()=>{},enabled:!0,isConnected:()=>!1,onConnect:()=>{},...r},e.addController(this),this.#l()}hostConnected(){this.#o(),this.#h()}hostDisconnected(){this.#a(),this.#c(),this.#r&&this.#r.parentNode&&this.#r.parentNode.removeChild(this.#r)}#o(){this.#t.enabled&&this.#t.isConnected()&&(this.#e.addEventListener("dragover",this.#w),this.#e.addEventListener("dragenter",this.#y),this.#e.addEventListener("dragleave",this.#v),this.#e.addEventListener("drop",this.#b))}#a(){this.#e.removeEventListener("dragover",this.#w),this.#e.removeEventListener("dragenter",this.#y),this.#e.removeEventListener("dragleave",this.#v),this.#e.removeEventListener("drop",this.#b)}#h(){this.#t.enabled&&this.#e.addEventListener("paste",this.#m)}#c(){this.#e.removeEventListener("paste",this.#m)}#l(){this.#r=document.createElement("input"),this.#r.type="file",this.#r.accept=this.#t.acceptedTypes.join(","),this.#r.multiple=this.#t.maxFiles>1,this.#r.style.display="none",this.#r.addEventListener("change",this.#f),document.body.appendChild(this.#r)}#f=e=>{let r=e.target,n=Array.from(r.files||[]);this.#t.isConnected()||this.#t.onConnect?.(),this.#k(n),r.value=""};#w=e=>{e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="copy")};#y=e=>{e.preventDefault(),e.dataTransfer&&this.#x(e.dataTransfer)&&this.#g(!0)};#v=e=>{e.preventDefault();let r=e.relatedTarget;this.#e.contains(r)||this.#g(!1)};#b=e=>{if(e.preventDefault(),this.#g(!1),e.dataTransfer){let r=Array.from(e.dataTransfer.files||[]);this.#k(r)}};#m=e=>{if(!e.clipboardData)return;let n=Array.from(e.clipboardData.items||[]).filter(s=>s.type.startsWith("image/"));if(n.length===0)return;e.preventDefault();let i=n.map(s=>s.getAsFile()).filter(s=>s!==null);this.#k(i)};#x(e){return e.types&&e.types.includes("Files")}#g(e){this.#n!==e&&(this.#n=e,this.#e.requestUpdate())}#u(e){this.#i=e,this.#t.onError(e),this.#e.requestUpdate(),setTimeout(()=>{this.#d()},6e3)}#d(){this.#i=null,this.#e.requestUpdate()}async#k(e){if(e.length===0)return;this.#d();let r=e.filter(o=>this.#C(o));if(r.length===0)return;let n=this.#s.length,i=this.#t.maxFiles??1/0,s=r.length;if(n+s>i){this.#u(`You can upload a maximum of ${i} files`);return}try{let c=(await Promise.all(r.map(l=>this.#p(l)))).filter(l=>!this.#s.some(a=>a.dataUrl===l.dataUrl));this.#s=[...this.#s,...c],this.#e.requestUpdate(),await pn({times:5,delay:2e3},async()=>{if(this.#t.isConnected())await dn(3,c,async l=>{await this.#$(l)});else throw new Error("Not connected yet")}),this.#e.requestUpdate()}catch(o){console.error("Failed to process and upload images:",o),this.#u("Upload failed")}}#C(e){return this.#t.acceptedTypes.includes(e.type)?e.size>this.#t.maxFileSize?(this.#u(`Max file size: ${this.#t.maxFileSize/(1024*1024)}MB`),!1):!0:(this.#u("Invalid file type"),!1)}async#p(e){try{let r=await(0,ko.fileToBase64)(e);return{id:crypto.randomUUID(),name:e.name,type:e.type,size:e.size,dataUrl:r,file:e,processingState:se.PENDING}}catch(r){let n=r instanceof Error?r:new Error(String(r));throw new Error(`Failed to read file: ${e.name} - ${n.message}`)}}async#$(e){if(!e){console.error("No image provided to upload"),this.#u("No image provided");return}if(!this.#t?.uploadUrl){console.error("Missing uploadUrl in options"),this.#u("Upload URL not configured");return}e.processingState=se.PENDING,this.#e.requestUpdate();let r=new FormData;r.append("file",e.file),r.append("imageId",e.id),r.append("role",this.#t.role||"user"),this.#t.conversationId&&r.append("conversationId",this.#t.conversationId),this.#t.widgetId&&r.append("widgetId",this.#t.widgetId);try{let n=await fetch(this.#t.uploadUrl,{method:"POST",body:r});if(!n.ok)throw new Error(`Upload failed with status: ${n.status}`);let i=await n.json();if(!!!i?.success){let o=i?.error||"Upload failed";throw new Error(o)}i.imageUrl&&i.imageId?(e.imageUrl=i.imageUrl,e.id=i.imageId,e.processingState=se.READY):e.processingState=se.PENDING,this.#e.requestUpdate()}catch(n){let i=n instanceof Error?n:new Error(String(n));console.error("Upload error:",i.message),this.#u(i.message),e.processingState=se.ERROR,this.#e.requestUpdate()}}get isDragging(){return this.#n}get error(){return this.#i}get selectedImages(){return this.#s}get hasPendingImages(){return this.#s.some(e=>e.processingState===se.PENDING)}openImagePicker=()=>{if(!this.#t.enabled||!this.#t.widgetId){console.warn("Image uploads are disabled");return}this.#r&&this.#r.click()};clearError(){this.#d()}updateUploadOptions(e){let r=this.#t.isConnected();e.conversationId!==void 0&&(this.#t.conversationId=e.conversationId),e.widgetId!==void 0&&(this.#t.widgetId=e.widgetId),e.enabled!==void 0&&(this.#t.enabled=!!e.enabled),e.isConnected!==void 0&&(this.#t.isConnected=e.isConnected),e.onConnect!==void 0&&(this.#t.onConnect=e.onConnect),!this.#t.enabled||!this.#t.isConnected()?(this.#a(),this.#c()):!r&&this.#t.isConnected()&&(this.#o(),this.#h())}restoreImages(e){if(!Array.isArray(e)||e.length===0){this.#s=[],this.#e.requestUpdate();return}let r=e.map(n=>{let i=new File([],n.name,{type:n.type});return{id:n.id,name:n.name,type:n.type,size:n.size,dataUrl:n.url,file:i,processingState:se.READY,imageUrl:n.url}});this.#s=r,this.#e.requestUpdate()}clearImages(){this.#s=[],this.clearError(),this.#e.requestUpdate()}onImageDelete=e=>{this.#t.onImageDelete&&this.#t.onImageDelete(e),this.#s=this.#s.filter(r=>r.id!==e),this.#d(),this.#e.requestUpdate()}};var ei={maxHeight:120,initialHeight:32,paddingY:12},he=class t extends C(v){static properties={disabled:{type:Boolean},streaming:{type:Boolean},loading:{type:Boolean},placeholder:{type:String},color:{type:String},enableImageUpload:{type:Boolean},onImageUploadClick:{type:Function},images:{type:Array},onImageDelete:{type:Function}};#e=new Date;constructor(){super(),this.disabled=!1,this.streaming=!1,this.loading=!1,this.placeholder="Type a message...",this.enableImageUpload=!1,this.onImageUploadClick=void 0,this.images=[],this.onImageDelete=void 0,this.color="#8B5CF6"}get value(){return this.#t?.value?.trim()??""}render(){return u`
1273
- <div
1274
- class="focus-within:ring-opacity-50 ${this.enableImageUpload&&this.images.length>0?`ring-2 ring-[${this.color}] ring-opacity-50`:""} w-full overflow-hidden rounded-[18px] bg-white shadow-[0px_3px_20px_0px_rgba(0,0,0,0.2)] transition-all duration-200 focus-within:ring-2 focus-within:ring-[${this.color}]">
1275
- <!-- Image preview area -->
1276
- ${this.enableImageUpload&&this.images&&this.images.length>0?u`
1277
- <div class="mb-2 flex flex-wrap gap-2 rounded-t-[18px] bg-white p-2">
1278
- ${this.images.map(e=>u`
1279
- <div class="relative inline-block">
1280
- <img src="${e.dataUrl}" alt="${e.name}" class="h-[60px] w-[60px] rounded-xl object-cover" />
1281
-
1282
- <!-- Progress/Status overlay -->
1283
- ${e.processingState===se.PENDING?u`
1284
- <div class="absolute inset-0 flex items-center justify-center rounded-xl bg-black/40">
1285
- <lucide-icon name="loader-circle" class="inline-flex animate-spin text-white transition-all duration-1000"></lucide-icon>
1286
- </div>
1287
- `:e.processingState===se.ERROR?u`
1288
- <div class="absolute inset-0 flex items-center justify-center rounded-xl bg-red-500/60">
1289
- <lucide-icon name="badge-alert" class="h-6 w-6 text-white"></lucide-icon>
1290
- </div>
1291
- `:null}
1292
-
1293
- <!-- Delete button -->
1294
- <button
1295
- data-testid="image-delete-btn"
1296
- type="button"
1297
- @click="${()=>this.onImageDelete?.(e.id)}"
1298
- class="absolute -top-1 -right-1 flex h-5 w-5 items-center justify-center rounded-full bg-[#eeedf1] text-white hover:bg-[#eeedf195]">
1299
- <lucide-icon name="x" class="h-3 w-3 text-[#14161a]"></lucide-icon>
1300
- </button>
1301
- </div>
1302
- `)}
1303
- </div>
1304
- `:null}
1305
-
1306
- <!-- Input form -->
1307
- <form @submit="${this.#i}" class="flex w-full items-center">
1308
- ${this.enableImageUpload?u`
1309
- <button
1310
- data-testid="image-upload-btn"
1311
- type="button"
1312
- @click="${this.onImageUploadClick}"
1313
- ?disabled="${this.disabled||this.loading}"
1314
- class="mx-1 px-2 transition-opacity duration-200 hover:opacity-80">
1315
- <lucide-icon name="image-plus" class="block h-6 w-6 text-[#312E30]"></lucide-icon>
1316
- </button>
1317
- `:null}
1318
-
1319
- <textarea
1320
- data-testid="mw-chat-input-textarea"
1321
- name="input"
1322
- @input="${this.#s}"
1323
- @keydown="${this.#n}"
1324
- autofocus
1325
- ?disabled="${this.disabled}"
1326
- placeholder="${this.placeholder}"
1327
- class="${this.enableImageUpload?"px-1":"pl-3 pr-1"} box-content h-[${ei.initialHeight}px] w-full resize-none place-content-center rounded bg-white py-[${ei.paddingY}px] text-base text-gray-800 outline-none placeholder:text-[14px] placeholder:font-light disabled:place-content-baseline"></textarea>
1328
-
1329
- <button
1330
- type="submit"
1331
- data-testid="mw-chat-input-submit-btn"
1332
- ?disabled="${this.disabled||this.loading}"
1333
- class="mx-1 rounded-full px-2 transition-all duration-150 ease-out disabled:cursor-not-allowed disabled:opacity-50">
1334
- <div
1335
- class="${this.streaming||this.loading||!this.value&&(!this.enableImageUpload||this.images.length===0)?"bg-gray-400":""} ${this.streaming||this.loading?"scale-100":"scale-95"} flex h-8 w-8 flex-row items-center justify-center rounded-full bg-[${this.color}] p-1.5 transition-all transition-colors duration-200">
1336
- ${this.loading?u`<lucide-icon name="loader-circle" class="inline-flex animate-spin text-white transition-all"></lucide-icon>`:this.streaming?u`<lucide-icon name="x" class="inline-flex h-4 w-4 text-white transition-colors"></lucide-icon>`:u`<lucide-icon name="arrow-up" class="inline-flex h-4 w-4 text-white transition-colors"></lucide-icon>`}
1337
- </div>
1338
- </button>
1339
- </form>
1340
- </div>
1341
-
1342
- <slot>
1343
- <div class="h-5 w-full"></div>
1344
- </slot>
1345
- `}get#t(){return this.renderRoot.querySelector('textarea[name="input"]')??null}get#r(){return this.renderRoot.querySelector('button[type="submit"]')??null}#n(e){fc(e)&&(e.preventDefault(),!this.streaming&&!this.disabled&&!this.loading&&this.#r?.click())}#i(e){e.preventDefault();let r=new Date;if(r.getTime()-this.#e.getTime()<500)return;if(this.#e=r,this.streaming){this.dispatchEvent(new t.CancelEvent);return}let i=this.#t;if(!i)throw new Error("Expected input element to be present");let s=i.value.trim();(s||this.enableImageUpload&&this.images.length>0)&&this.dispatchEvent(new t.SubmitEvent(s))&&(i.value=""),this.#o(),window.requestAnimationFrame(()=>{this.focus()})}#s(e){this.dispatchEvent(new t.ChangeEvent({delta:e.data,full:e.target instanceof HTMLTextAreaElement?e.target.value:""})),this.#o()}#o(){let e=this.#t;if(!e)return;let{maxHeight:r,initialHeight:n,paddingY:i}=ei;e.style.height=`${n}px`;let s=e.scrollHeight,o=i*2,c=Math.min(s-o,r);e.style.height=`${c}px`,this.requestUpdate()}setValue(e){let r=this.#t;if(!r){console.warn("input element not found, cannot set value");return}r.value=e,this.#o(),this.dispatchEvent(new t.ChangeEvent({delta:null,full:e}))}focus(){this.#t?.focus()}};he.ChangeEvent=class extends CustomEvent{static type="mw:change";constructor(e,r={}){super(he.ChangeEvent.type,{detail:e,...r})}};he.SubmitEvent=class extends CustomEvent{static type="mw:submit";constructor(e,r={}){super(he.SubmitEvent.type,{detail:e,...r,cancelable:!0})}};he.CancelEvent=class extends CustomEvent{static type="mw:cancel";constructor(e={}){super(he.CancelEvent.type,{...e})}};function fc(t){return(t.code==="Enter"||t.code==="NumpadEnter")&&!t.ctrlKey&&!t.metaKey&&!t.shiftKey}customElements.get("mw-chat-input")||customElements.define("mw-chat-input",he);var ti=class extends C(v){static properties={side:{type:String},status:{type:String},color:{type:String},logoUrl:{type:String,attribute:"logo"},position:{type:String}};constructor(){super(),this.side="assistant",this.status="",this.color="",this.logoUrl="",this.position="single"}render(){let r=this.side==="user"&&this.position==="single"?"rounded-2xl":this.side==="user"&&["single-current","first"].includes(this.position)?"rounded-2xl rounded-br-[4px]":this.side==="user"&&["middle","last-current"].includes(this.position)?"rounded-2xl rounded-r-[4px]":this.side==="user"&&this.position==="last"?"rounded-2xl rounded-tr-[4px]":["support","assistant"].includes(this.side)&&["single","single-current"].includes(this.position)?"rounded-2xl":["support","assistant"].includes(this.side)&&this.position==="first"?"rounded-2xl rounded-bl-[4px]":["support","assistant"].includes(this.side)&&this.position==="middle"?"rounded-2xl rounded-l-[4px]":["support","assistant"].includes(this.side)&&["last","last-current"].includes(this.position)?"rounded-2xl rounded-tl-[4px]":"rounded-2xl";switch(this.side){case"user":return u`
1346
- <div class="ml-20 flex justify-end font-sans text-base">
1347
- <div class="max-w-full">
1348
- <!-- include an invisible border (same color as background) so that this message is the same height as the bot message -->
1349
- <div class="${r} border border-[${this.color}] bg-[${this.color}] px-4 py-3 text-left text-white">
1350
- <slot></slot>
1351
- </div>
1352
-
1353
- <!-- render status (if any) -->
1354
- ${this.status==="sent"?u`
1355
- <!-- tick mark -->
1356
- <svg class="ml-auto h-3 w-3 text-gray-400" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor">
1357
- <path stroke-linecap="round" stroke-linejoin="round" d="m4.5 12.75 6 6 9-13.5" />
1358
- </svg>
1359
- `:null}
1360
- </div>
1361
- </div>
1362
- `;case"assistant":case"support":return u`
1363
- <div class="mr-8 flex justify-start font-sans text-base">
1364
- <div class="flex max-w-full space-x-2">
1365
- <!--
1366
- mt-[9px] because the message is 50px tall, the icon is 32px tall, we want to center it
1367
- -->
1368
- <div class="mt-[9px] h-6 w-6 flex-shrink-0 flex-grow-0 overflow-hidden rounded-full">
1369
- <img class="h-full w-full bg-white object-cover" src="${this.logoUrl}" alt="Logo" />
1370
- </div>
1371
-
1372
- <!--
1373
- min-h-[50px] because when we start streaming we sometimes start with an empty paragraph
1374
- -->
1375
- <!-- TODO: maybe add back border? border border-gray-100 -->
1376
- <div class="${r} min-h-[50px] max-w-full overflow-hidden bg-gray-50 px-4 py-3 text-left text-gray-800">
1377
- <slot></slot>
1378
- </div>
1379
- </div>
1380
- </div>
1381
- `;default:throw new Error(`Unknown side: ${this.side}`)}}};customElements.get("mw-chat-message")||customElements.define("mw-chat-message",ti);var de=class extends C(v){static properties={src:{type:String},alt:{type:String},side:{type:String},position:{type:String},width:{type:String},height:{type:String},clickable:{type:Boolean}};constructor(){super(),this.src="",this.alt="",this.side="right",this.position="single",this.width="300px",this.height="auto",this.clickable=!1}#e=!1;#t=!1;#r=!1;#n=!1;updated(e){e.has("src")&&(this.#e=!1,this.#t=!1)}get#i(){return this.side==="left"||this.side==="assistant"?"flex justify-start ml-[25px]":"flex justify-end"}get#s(){let e="inline-block overflow-hidden shadow-sm";if(this.side==="right"||this.side==="user")switch(this.position){case"first":e+=" rounded-2xl rounded-br-[4px]";break;case"middle":e+=" rounded-2xl rounded-r-[4px]";break;case"last":case"last-current":e+=" rounded-2xl rounded-tr-[4px]";break;default:e+=" rounded-2xl";break}else switch(this.position){case"first":e+=" rounded-2xl rounded-bl-[4px]";break;case"middle":e+=" rounded-2xl rounded-l-[4px]";break;case"last":case"last-current":e+=" rounded-2xl rounded-tl-[4px]";break;default:e+=" rounded-2xl";break}return e}#o(){if(!this.src)return"";try{let e=new URL(this.src);return e.searchParams.set("for","full"),e.href}catch{return this.src}}render(){return this.src?u`
1382
- <div class="${this.#i} mb-2 min-h-[100px]">
1383
- <div class="${this.#s} relative">
1384
- <!-- Placeholder background that's only shown when loading or error -->
1385
- ${this.#e?null:u`
1386
- <div class="flex items-center justify-center bg-gray-100" style="width: ${this.width}; height: 200px;">
1387
- ${this.#t?u`
1388
- <!-- Error icon -->
1389
- <svg class="h-8 w-8 text-gray-400" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
1390
- <path
1391
- stroke-linecap="round"
1392
- stroke-linejoin="round"
1393
- d="m2.25 15.75 5.159-5.159a2.25 2.25 0 0 1 3.182 0l5.159 5.159m-1.5-1.5 1.409-1.409a2.25 2.25 0 0 1 3.182 0l2.909 2.909m-18 3.75h16.5a1.5 1.5 0 0 0 1.5-1.5V6a1.5 1.5 0 0 0-1.5-1.5H3.75A1.5 1.5 0 0 0 2.25 6v12a1.5 1.5 0 0 0 1.5 1.5Zm10.5-11.25h.008v.008h-.008V8.25Zm.375 0a.375.375 0 1 1-.75 0 .375.375 0 0 1 .75 0Z" />
1394
- </svg>
1395
- `:u`
1396
- <!-- Loading pulse animation -->
1397
- <div class="h-8 w-8 animate-pulse rounded-full bg-gray-300"></div>
1398
- `}
1399
- </div>
1400
- `}
1401
-
1402
- <!-- Actual image -->
1403
- <img
1404
- src="${this.src}"
1405
- alt="${this.alt}"
1406
- style="width: ${this.width}; height: ${this.height}; display: block;"
1407
- class="${this.#e?"opacity-100":"opacity-0 hidden"} ${this.clickable?"cursor-pointer hover:scale-[105%]":""} h-full w-full max-w-full transition-all duration-200"
1408
- @error="${this.#a}"
1409
- @load="${this.#h}"
1410
- @click="${this.clickable?this.#c:void 0}"
1411
- loading="lazy" />
1412
- </div>
1413
- </div>
1414
-
1415
- <!-- Full image modal -->
1416
- ${this.#r?u`
1417
- <div
1418
- class="${this.#n?"bg-opacity-0":"bg-opacity-75"} fixed inset-0 z-50 flex items-center justify-center bg-black p-4 transition-opacity duration-300"
1419
- @click="${this.#l}">
1420
- <!-- Close button -->
1421
- <button
1422
- type="button"
1423
- class="bg-opacity-50 ${this.#n?"opacity-0":"opacity-75"} hover:bg-opacity-75 absolute top-8 right-8 z-10 rounded-full bg-black p-2 text-white transition-[colors,opacity] delay-300 focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-transparent focus:outline-none"
1424
- @click="${this.#l}"
1425
- aria-label="Close full image">
1426
- <!-- X mark icon -->
1427
- <svg class="h-5 w-5" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
1428
- <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
1429
- </svg>
1430
- </button>
1431
- <div class="relative flex max-h-full max-w-full">
1432
- <img
1433
- src="${this.#o()}"
1434
- alt="${this.alt}"
1435
- class="${this.#n?"scale-75 opacity-0":"scale-100 opacity-100"} max-h-full max-w-full transform rounded-lg shadow-2xl transition-all duration-100 ease-out"
1436
- @click="${this.#f}" />
1437
- </div>
1438
- </div>
1439
- `:null}
1440
- `:(console.warn("MwChatImage: No src provided"),null)}#a=e=>{console.error("Failed to load chat image:",this.src),this.#t=!0,this.requestUpdate(),this.dispatchEvent(new CustomEvent("mw-chat-image:error",{detail:{src:this.src,event:e},bubbles:!0}))};#h=e=>{this.#e=!0,this.requestUpdate(),this.dispatchEvent(new CustomEvent("mw-chat-image:load",{detail:{src:this.src,event:e},bubbles:!0}))};#c=e=>{this.clickable&&(e.preventDefault(),e.stopPropagation(),this.#r=!0,this.requestUpdate(),this.#n=!0,this.requestUpdate(),setTimeout(()=>{this.#n=!1,this.requestUpdate()},500),this.dispatchEvent(new CustomEvent("mw-chat-image:click",{detail:{src:this.src,event:e},bubbles:!0})))};#l=e=>{e.preventDefault(),e.stopPropagation(),this.#r=!1,this.requestUpdate()};#f=e=>{e.preventDefault(),e.stopPropagation()}};de.ErrorEvent=class extends CustomEvent{static type="mw-chat-image:error";constructor(e,r={}){super(de.ErrorEvent.type,{detail:e,...r})}};de.LoadEvent=class extends CustomEvent{static type="mw-chat-image:load";constructor(e,r={}){super(de.LoadEvent.type,{detail:e,...r})}};de.ClickEvent=class extends CustomEvent{static type="mw-chat-image:click";constructor(e,r={}){super(de.ClickEvent.type,{detail:e,...r})}};customElements.get("mw-chat-image")||customElements.define("mw-chat-image",de);var V=t=>t??L;var mc=["javascript:","data:text/html","vbscript:","data:text/javascript","data:text/vbscript","data:text/css","data:text/plain","data:text/xml"],_t=class t extends C(v){static properties={text:{type:String},color:{type:String},dismissible:{type:Boolean},storageKey:{type:String,attribute:"storage-key"},_dismissed:{type:Boolean,state:!0}};constructor(){super(),this.text="By chatting with us, you agree to the monitoring and recording of this chat to deliver our services and processing of your personal data in accordance with our [Privacy Policy](https://docs.molin.ai/legal/privacy-policy).",this.color="#3b82f6",this.dismissible=!1,this.storageKey="mw-disclaimer-dismissed",this._dismissed=!1}updated(e){super.updated(e),e.has("storageKey")&&this.storageKey&&this.dismissible&&(this._dismissed=this.#e())}connectedCallback(){super.connectedCallback(),this.storageKey&&this.dismissible&&(this._dismissed=this.#e())}#e(){try{return localStorage.getItem(this.storageKey)==="true"}catch{return!1}}#t(){try{localStorage.setItem(this.storageKey,"true")}catch(e){console.warn("Could not save disclaimer dismissed state to localStorage:",e)}}#r=e=>{e.preventDefault(),this._dismissed=!0,this.storageKey&&this.#t(),this.dispatchEvent(new t.DismissEvent)};#n(e){let n=/\[([^\]]+)\]\(([^)]+)\)/g.exec(e);if(n){let i=n[0],s=n[1],o=n[2],c=n.index;return mc.some(l=>o.toLowerCase().startsWith(l))||!o||!s?e:u`${e.slice(0,c)}<a href="${V(o)}" target="_blank" rel="noopener noreferrer" @click="${this.#i}" class="underline" style="color: ${this.color}"
1441
- >${s}</a
1442
- >${e.slice(c+i.length)}`}return e}#i=e=>{e.stopPropagation()};render(){if(this._dismissed)return null;let e=this.#n(this.text);return u`
1443
- <div class="flex items-center justify-between">
1444
- <div class="flex flex-1 items-center justify-center">
1445
- <span class="px-3 text-center text-xs font-light text-gray-500">${e}</span>
1446
- </div>
1447
-
1448
- ${this.dismissible?u`
1449
- <button type="button" aria-label="Dismiss" class="ml-2 flex h-4 w-4 flex-shrink-0 cursor-pointer items-center justify-center rounded hover:bg-gray-200" @click="${this.#r}">
1450
- <lucide-icon name="x" class="h-3 w-3 text-gray-500"></lucide-icon>
1451
- </button>
1452
- `:null}
1453
- </div>
1454
- `}};_t.DismissEvent=class extends CustomEvent{static type="mw-disclaimer:dismiss";constructor(e={}){super(_t.DismissEvent.type,{...e})}};customElements.get("mw-disclaimer")||customElements.define("mw-disclaimer",_t);var ri=class extends C(v){static properties={text:{type:String},variant:{type:String},autoDismissable:{type:Boolean,attribute:"auto-dismissable"},dismissDelay:{type:Number,attribute:"dismiss-delay"},_isVisible:{type:Boolean,state:!0}};constructor(){super(),this.text="I'm still learning!",this.variant="info",this.autoDismissable=!1,this.dismissDelay=5e3,this._isVisible=!0}connectedCallback(){super.connectedCallback(),this.autoDismissable&&this.#e()}#e(){setTimeout(()=>{this._isVisible=!1,this.requestUpdate()},this.dismissDelay)}#t(){switch(this.variant){case"error":return{bg:"bg-red-600",text:"text-white",icon:"badge-alert"};case"warning":return{bg:"bg-yellow-600",text:"text-white",icon:"alert-triangle"};case"success":return{bg:"bg-green-600",text:"text-white",icon:"check-circle"};case"info":default:return{bg:"bg-black",text:"text-white",icon:"info"}}}render(){let e=this.#t();return u`
1455
- <div
1456
- class="${this._isVisible?"opacity-100 translate-y-0":"opacity-0 translate-y-[50px] pointer-events-none mt-[-40px]"} flex justify-center transition-all transition-discrete duration-[1s] ease-in-out">
1457
- <div class="${e.bg} mb-2 flex max-w-[70%] items-center justify-center rounded-full px-3 py-2 select-none">
1458
- <!-- Icon based on variant -->
1459
- ${this.variant==="info"?u`
1460
- <!-- (i) symbol for info -->
1461
- <svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4">
1462
- <path
1463
- fill-rule="evenodd"
1464
- clip-rule="evenodd"
1465
- d="M2.25 12C2.25 6.61522 6.61522 2.25 12 2.25C17.3848 2.25 21.75 6.61522 21.75 12C21.75 17.3848 17.3848 21.75 12 21.75C6.61522 21.75 2.25 17.3848 2.25 12ZM10.9562 10.5584C12.1025 9.98533 13.3931 11.0206 13.0823 12.2639L12.3733 15.0999L12.4148 15.0792C12.7852 14.894 13.2357 15.0441 13.421 15.4146C13.6062 15.7851 13.4561 16.2356 13.0856 16.4208L13.0441 16.4416C11.8979 17.0147 10.6072 15.9794 10.9181 14.7361L11.6271 11.9001L11.5856 11.9208C11.2151 12.1061 10.7646 11.9559 10.5793 11.5854C10.3941 11.2149 10.5443 10.7644 10.9148 10.5792L10.9562 10.5584ZM12 9C12.4142 9 12.75 8.66421 12.75 8.25C12.75 7.83579 12.4142 7.5 12 7.5C11.5858 7.5 11.25 7.83579 11.25 8.25C11.25 8.66421 11.5858 9 12 9Z"
1466
- fill="white" />
1467
- </svg>
1468
- `:this.variant==="error"?u`
1469
- <!-- Alert circle for error -->
1470
- <svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4">
1471
- <circle cx="12" cy="12" r="10" stroke="white" stroke-width="2" />
1472
- <line x1="15" y1="9" x2="9" y2="15" stroke="white" stroke-width="2" />
1473
- <line x1="9" y1="9" x2="15" y2="15" stroke="white" stroke-width="2" />
1474
- </svg>
1475
- `:this.variant==="warning"?u`
1476
- <!-- Alert triangle for warning -->
1477
- <svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4">
1478
- <path d="M10.29 3.86L1.82 18a2 2 0 001.71 3h16.94a2 2 0 001.71-3L13.71 3.86a2 2 0 00-3.42 0z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
1479
- <line x1="12" y1="9" x2="12" y2="13" stroke="white" stroke-width="2" stroke-linecap="round" />
1480
- <path d="M12 17h.01" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
1481
- </svg>
1482
- `:u`
1483
- <!-- Check circle for success -->
1484
- <svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4">
1485
- <path d="M22 11.08V12a10 10 0 11-5.93-9.14" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
1486
- <polyline points="22,4 12,14.01 9,11.01" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
1487
- </svg>
1488
- `}
1489
-
1490
- <span class="${e.text} ml-1 text-xs">${this.text}</span>
1491
- </div>
1492
- </div>
1493
- `}};customElements.get("mw-info-banner")||customElements.define("mw-info-banner",ri);var ni=class extends C(v){render=()=>u`
1494
- <svg class="inline-block h-full w-full leading-0" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 100 100" xml:space="preserve">
1495
- <circle fill="currentFill" stroke="none" cx="27" cy="50" r="6">
1496
- <animate attributeName="opacity" dur="1s" values="0;1;0" repeatCount="indefinite" begin="0.1" />
1497
- </circle>
1498
- <circle fill="currentFill" stroke="none" cx="47" cy="50" r="6">
1499
- <animate attributeName="opacity" dur="1s" values="0;1;0" repeatCount="indefinite" begin="0.2" />
1500
- </circle>
1501
- <circle fill="currentFill" stroke="none" cx="67" cy="50" r="6">
1502
- <animate attributeName="opacity" dur="1s" values="0;1;0" repeatCount="indefinite" begin="0.3" />
1503
- </circle>
1504
- </svg>
1505
- `};customElements.get("mw-loading")||customElements.define("mw-loading",ni);var gc="https://molin.ai/?utm_source=molin-shop-ai&utm_medium=widget&utm_campaign=poweredby",ii=class extends C(v){render=()=>u`
1506
- <p class="flex items-center justify-center text-xs whitespace-nowrap">
1507
- <span>Powered by</span>
1508
-
1509
- <a href="${gc}" target="_blank" class="inline-flex items-center underline">
1510
- <svg class="mx-1 inline-block h-4 w-4" viewBox="0 0 21 21" fill="none" xmlns="http://www.w3.org/2000/svg">
1511
- <circle cx="10.0361" cy="10.0361" r="10.0361" fill="#242038" />
1512
- <path
1513
- fill-rule="evenodd"
1514
- clip-rule="evenodd"
1515
- d="M14.4482 15.0424C15.0767 15.2108 15.7464 15.1227 16.3099 14.7973L15.0832 12.6725L13.8564 10.5477L13.8562 10.5479L11.4869 6.44411L11.4774 6.42785L11.475 6.42371C11.1496 5.86018 10.6137 5.44898 9.98519 5.28057C9.35666 5.11215 8.68697 5.20032 8.12345 5.52567L9.35019 7.65045L10.5769 9.77523L10.577 9.77516L12.9461 13.8785L12.9593 13.9008C13.2847 14.4635 13.8202 14.8741 14.4482 15.0424ZM10.8392 15.0436C11.4677 15.212 12.1374 15.1238 12.701 14.7985L11.4742 12.6737L10.2475 10.5489L10.2474 10.549L7.87793 6.44488L7.87142 6.43373L7.86629 6.4248C7.54093 5.86127 7.00505 5.45007 6.37652 5.28166C5.90455 5.15519 5.40058 5.17178 4.94379 5.32631C4.44552 5.48229 4.08397 5.94754 4.08397 6.49724V12.5389C4.08354 12.5576 4.08333 12.5763 4.08333 12.5951C4.08333 13.2451 4.34182 13.8686 4.80194 14.3283C5.26205 14.7879 5.88611 15.0462 6.53681 15.0462V12.6098C6.53724 12.5964 6.53746 12.5831 6.53746 12.5696V9.7318C6.33805 9.40929 6.1011 8.99037 5.8593 8.52589C5.2972 7.44609 4.92176 6.52897 5.02074 6.47745C5.03257 6.47129 5.05064 6.47777 5.07425 6.4958L5.07612 6.49904C5.25259 6.63858 5.72449 7.39502 6.21645 8.34007C6.38575 8.66529 6.53812 8.97576 6.66569 9.25226L6.96825 9.77632L6.96829 9.77629L9.33716 13.8793L9.34457 13.892L9.34944 13.9004C9.67479 14.464 10.2107 14.8752 10.8392 15.0436Z"
1516
- fill="url(#paint0_linear_1_17)" />
1517
- <defs>
1518
- <linearGradient id="paint0_linear_1_17" x1="4.08333" y1="10.1653" x2="16.3099" y2="10.1653" gradientUnits="userSpaceOnUse">
1519
- <stop offset="0.197917" stop-color="#E4FF1A" />
1520
- <stop offset="0.822917" stop-color="#21F4F0" />
1521
- </linearGradient>
1522
- </defs>
1523
- </svg>
1524
-
1525
- <span>Molin AI</span>
1526
- </a>
1527
- </p>
1528
- `};customElements.get("mw-powered-by")||customElements.define("mw-powered-by",ii);var wc=Math.pow(10,8)*24*60*60*1e3,K1=-wc;var yc=3600;var Co=yc*24,Y1=Co*7,vc=Co*365.2425,bc=vc/12,X1=bc*3,si=Symbol.for("constructDateFrom");function $o(t,e){return typeof t=="function"?t(e):t&&typeof t=="object"&&si in t?t[si](e):t instanceof Date?new t.constructor(e):new Date(e)}function oi(t,e){return $o(e||t,t)}function So(t){return e=>{let n=(t?Math[t]:Math.trunc)(e);return n===0?0:n}}function Eo(t,e){return+oi(t)-+oi(e)}function ai(t,e,r){let n=Eo(t,e)/1e3;return So(r?.roundingMethod)(n)}var li=class extends C(v){static properties={question:{type:String},options:{type:Array},heading:{type:String},gameTitle:{type:String},resultPrefix:{type:String},correctButtonText:{type:String},wrongButtonText:{type:String},color:{type:String},apiBaseUrl:{type:String},cdnBaseUrl:{type:String},minutes:{type:String},seconds:{type:String},_currentQuestion:{type:String,state:!0},_questionHistory:{type:Array,state:!0},_guessedJob:{type:String,state:!0},_isLoadingNextQuestion:{type:Boolean,state:!0},_loadingAnswer:{type:String,state:!0},_guessValidated:{type:Boolean,state:!0},_validatingButton:{type:String,state:!0},_currentAttemptQuestionCount:{type:Number,state:!0}};static styles=D`
1529
- :host {
1530
- display: block;
1531
- }
1532
- `;#e=7;constructor(){super(),this.question="",this.options=["No","Yes"],this.heading="",this.gameTitle="",this.resultPrefix="",this.correctButtonText="Correct",this.wrongButtonText="Wrong",this.color="#601feb",this.apiBaseUrl="",this.cdnBaseUrl="",this.minutes="00",this.seconds="00",this._questionHistory=[],this._currentQuestion="",this._guessedJob="",this._isLoadingNextQuestion=!1,this._loadingAnswer="",this._guessValidated=!1,this._validatingButton="",this._currentAttemptQuestionCount=0}firstUpdated(){this._currentQuestion=this.question}async#t(){if(!this.apiBaseUrl)return console.warn("API base URL not configured, cannot fetch next question"),null;this._isLoadingNextQuestion=!0;try{let e=await fetch(`${this.apiBaseUrl}/preview/wait-game/next-question`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({questionAnswers:this._questionHistory,takeGuess:this._currentAttemptQuestionCount>=this.#e})});return e.ok?await e.json():(console.error("failed to fetch next question",e.status),null)}catch(e){return console.error("error fetching next question",e),null}finally{this._isLoadingNextQuestion=!1}}#r=async e=>{this._loadingAnswer=e,this._questionHistory.push({question:this._currentQuestion,answer:e}),this._currentAttemptQuestionCount++,this.dispatchEvent(new CustomEvent("mw-chat-wait-game:question-answered",{bubbles:!0,composed:!0,detail:{questionIndex:this._questionHistory.length-1,question:this._currentQuestion,answer:e,totalQuestions:this.#e,allAnswers:this._questionHistory.map(n=>n.answer)}}));let r=await this.#t();r&&(r.isComplete&&r.guessedJob?(this._guessedJob=r.guessedJob,this.dispatchEvent(new CustomEvent("mw-chat-wait-game:game-completed",{bubbles:!0,composed:!0,detail:{guessedProfession:this._guessedJob,questionCount:this._questionHistory.length,allAnswers:this._questionHistory.map(n=>n.answer)}}))):r.nextQuestion&&(this._currentQuestion=r.nextQuestion)),this._loadingAnswer=""};#n=async e=>{if(this._validatingButton=e?"correct":"wrong",this.dispatchEvent(new CustomEvent("mw-chat-wait-game:guess-validated",{bubbles:!0,composed:!0,detail:{guessedProfession:this._guessedJob,isCorrect:e,questionCount:this._questionHistory.length,allAnswers:this._questionHistory.map(r=>r.answer)}})),e)this._guessValidated=!0,this._validatingButton="";else{let r=await this.#t();r?.nextQuestion&&(this._currentQuestion=r.nextQuestion),this._guessedJob="",this._currentAttemptQuestionCount=0,this._validatingButton=""}};#i(){return Math.round(this._currentAttemptQuestionCount/this.#e*100)}#s(){let e=this.cdnBaseUrl?`${this.cdnBaseUrl}/assets/career-ladder`:"https://widget.molin.ai/assets/career-ladder";return u`
1533
- <div class="mt-3 flex items-center justify-center gap-1">
1534
- <span class="text-[11px] text-black/40">Inspired by</span>
1535
-
1536
- <img src="${e}" alt="Career Ladder" class="h-6" />
1537
- </div>
1538
- `}render(){let e=this.#i(),r=this.heading||"Agent joining in",n=this.gameTitle||"\u{1F9E0} I'll guess your job",i=this.resultPrefix||"I'm pretty confident:";return this._guessedJob?u`
1539
- <div class="mx-auto w-full max-w-xs rounded-2xl bg-white/70 p-4 shadow-sm ring-1 ring-black/10 backdrop-blur">
1540
- <div class="flex items-center justify-between">
1541
- <div class="text-[13px] text-black/60">${r}</div>
1542
- <span class="h-1.5 w-1.5 animate-pulse rounded-full bg-green-500"></span>
1543
- </div>
1544
-
1545
- <!-- Timer -->
1546
- <div class="mt-2 font-[ui-monospace,Menlo,Monaco,Consolas] text-2xl tracking-tight text-black tabular-nums" aria-live="polite">
1547
- ${this.minutes}<span class="text-black/30">:</span>${this.seconds}
1548
- </div>
1549
-
1550
- <div class="mt-3 space-y-1.5 text-[13px] text-black/80">
1551
- <div class="rounded-xl bg-black/[0.04] px-3 py-2">${i} ${this._guessedJob}.</div>
1552
- </div>
1553
-
1554
- ${this._guessValidated?"":u`
1555
- <div class="mt-3 grid grid-cols-2 gap-2">
1556
- <button
1557
- @click="${()=>this.#n(!1)}"
1558
- ?disabled="${!!this._validatingButton}"
1559
- class="flex items-center justify-center gap-1 rounded-xl border border-[${this.color}] bg-white px-4 py-2 text-sm font-medium text-black transition-colors hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50">
1560
- ${this._validatingButton==="wrong"?u`<lucide-icon class="h-4 w-4 animate-spin" name="loader-circle"></lucide-icon>`:this.wrongButtonText}
1561
- </button>
1562
- <button
1563
- @click="${()=>this.#n(!0)}"
1564
- ?disabled="${!!this._validatingButton}"
1565
- class="flex items-center justify-center gap-1 rounded-xl bg-[${this.color}] px-4 py-2 text-sm font-medium text-white transition-colors hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50">
1566
- ${this._validatingButton==="correct"?u`<lucide-icon class="h-4 w-4 animate-spin" name="loader-circle"></lucide-icon>`:this.correctButtonText}
1567
- </button>
1568
- </div>
1569
- `}
1570
-
1571
- <div class="mt-3 h-1.5 overflow-hidden rounded-full bg-black/5">
1572
- <div class="h-full rounded-full bg-[${this.color}] transition-[width] duration-300" style="width: 100%"></div>
1573
- </div>
1574
-
1575
- ${this.#s()}
1576
- </div>
1577
- `:this._currentQuestion?u`
1578
- <div class="mx-auto w-full max-w-xs rounded-2xl bg-white/70 p-4 shadow-sm ring-1 ring-black/10 backdrop-blur">
1579
- <div class="flex items-center justify-between">
1580
- <div class="text-[13px] text-black/60">${r}</div>
1581
- <span class="h-1.5 w-1.5 animate-pulse rounded-full bg-green-500"></span>
1582
- </div>
1583
-
1584
- <!-- Timer -->
1585
- <div class="mt-2 font-[ui-monospace,Menlo,Monaco,Consolas] text-2xl tracking-tight text-black tabular-nums" aria-live="polite">
1586
- ${this.minutes}<span class="text-black/30">:</span>${this.seconds}
1587
- </div>
1588
-
1589
- <div class="mt-2 flex items-center justify-between">
1590
- <h3 class="text-sm font-semibold text-black">${n}</h3>
1591
- <div class="text-xs text-black/40"><span>${this._currentAttemptQuestionCount}</span>/${this.#e}</div>
1592
- </div>
1593
-
1594
- <div class="mt-3 rounded-xl bg-black/[0.04] px-3 py-2 text-[14px] font-medium text-black">${this._currentQuestion}</div>
1595
-
1596
- <div class="mt-3 grid grid-cols-2 gap-1">
1597
- ${this.options.map((s,o)=>{let c=this._loadingAnswer===s;return u`
1598
- <button
1599
- @click="${()=>this.#r(s)}"
1600
- ?disabled="${this._isLoadingNextQuestion}"
1601
- class="${o===0?`flex items-center justify-center gap-1 rounded-xl border border-[${this.color}] bg-white text-black px-1 py-1.5 max-h-[35px] text-sm transition-colors hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50`:`flex items-center justify-center gap-1 rounded-xl bg-[${this.color}] py-1.5 max-h-[35px] px-1 text-sm text-white transition-colors hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50`}">
1602
- ${c?u`<lucide-icon class="h-3.5 w-3.5 animate-spin" name="loader-circle"></lucide-icon>`:s}
1603
- </button>
1604
- `})}
1605
- </div>
1606
-
1607
- <div class="mt-3 h-1.5 overflow-hidden rounded-full bg-black/5">
1608
- <div class="h-full rounded-full bg-[${this.color}] transition-[width] duration-300" style="width: ${e}%"></div>
1609
- </div>
1610
-
1611
- ${this.#s()}
1612
- </div>
1613
- `:u`<div class="mx-auto w-full max-w-xs rounded-2xl bg-white/70 p-4 text-center text-sm text-black/60">Loading game...</div>`}};customElements.get("mw-chat-wait-game")||customElements.define("mw-chat-wait-game",li);var ci=class extends C(v){static properties={totalSeconds:{type:Number},heading:{type:String},message:{type:String},completeMessage:{type:String},gameButton:{type:String},question:{type:String},options:{type:String},gameTitle:{type:String,attribute:"game-title"},resultPrefix:{type:String,attribute:"result-prefix"},correctButtonText:{type:String,attribute:"correct-button-text"},wrongButtonText:{type:String,attribute:"wrong-button-text"},targetEndTime:{type:String,attribute:"target-end-time"},color:{type:String},apiBaseUrl:{type:String},cdnBaseUrl:{type:String},soundUrl:{type:String,attribute:"sound"},_remainingSeconds:{type:Number,state:!0},_isComplete:{type:Boolean,state:!0},_showGame:{type:Boolean,state:!0}};static styles=D`
1614
- :host {
1615
- display: block;
1616
- }
1617
- `;#e=null;#t=null;#r=0;constructor(){super(),this.heading="",this.message="",this.completeMessage="",this.gameButton="",this.question="",this.options="",this.gameTitle="",this.resultPrefix="",this.correctButtonText="Correct",this.wrongButtonText="Wrong",this.targetEndTime="",this.color="#601feb",this.apiBaseUrl="",this.cdnBaseUrl="",this.soundUrl="",this._remainingSeconds=480,this._isComplete=!1,this._showGame=!1}connectedCallback(){super.connectedCallback(),this.#n(),this.#s()}disconnectedCallback(){super.disconnectedCallback(),this.#o()}#n(){this.targetEndTime?this.#t=new Date(this.targetEndTime):this.#t=new Date(Date.now()+this._remainingSeconds*1e3),this.#r=Math.max(ai(this.#t,new Date),0),this.#i()}#i(){if(this.#t===null)return;let e=new Date,r=ai(this.#t,e);r>=0?(this._remainingSeconds=r,this._isComplete=!1):(this._remainingSeconds=Math.abs(r),this._isComplete=!0)}#s(){this.#o(),this.#e=setInterval(()=>{this.#i()},1e3)}#o(){this.#e!==null&&(clearInterval(this.#e),this.#e=null)}#a=()=>{this.#h(),this._showGame=!0,this.dispatchEvent(new CustomEvent("mw-chat-wait-timer:game-click",{bubbles:!0,composed:!0}))};#h(){if(!this.soundUrl)return;let e=new Audio(this.soundUrl);e.volume=.5,e.play().then(()=>{}).catch(r=>{console.error("Error playing audio:",r,{})})}#c(){let e=Math.floor(this._remainingSeconds/60),r=this._remainingSeconds%60,n=i=>String(i).padStart(2,"0");return{minutes:n(e),seconds:n(r)}}#l(){return this._isComplete?0:this.#t===null||this.#r===0?100:Math.round(this._remainingSeconds/this.#r*100)}render(){let{minutes:e,seconds:r}=this.#c();if(this._showGame)return u`
1618
- <mw-chat-wait-game
1619
- .question="${this.question}"
1620
- .options="${this.options||["No","Yes"]}"
1621
- .gameTitle="${this.gameTitle}"
1622
- .resultPrefix="${this.resultPrefix}"
1623
- .correctButtonText="${this.correctButtonText}"
1624
- .wrongButtonText="${this.wrongButtonText}"
1625
- .heading="${this.heading}"
1626
- .color="${this.color}"
1627
- .apiBaseUrl="${this.apiBaseUrl}"
1628
- .cdnBaseUrl="${this.cdnBaseUrl}"
1629
- .minutes="${e}"
1630
- .seconds="${r}"></mw-chat-wait-game>
1631
- `;let n=this.#l();return u`
1632
- <div class="mx-auto w-full max-w-xs rounded-2xl bg-white/70 p-4 shadow-sm ring-1 ring-black/10 backdrop-blur">
1633
- <!-- Time -->
1634
- <div class="font-[ui-monospace,Menlo,Monaco,Consolas] text-4xl tracking-tight text-black tabular-nums" aria-live="polite">${e}<span class="text-black/30">:</span>${r}</div>
1635
-
1636
- <!-- Progress bar -->
1637
- <div class="mt-3 h-1.5 overflow-hidden rounded-full bg-black/5">
1638
- <div class="h-full rounded-full bg-[${this.color}] transition-[width] duration-300" style="width: ${n}%"></div>
1639
- </div>
1640
-
1641
- <!-- Message -->
1642
- <div class="mt-2 text-[12px] leading-tight text-black/50">${this._isComplete?this.completeMessage:this.message}</div>
1643
-
1644
- <!-- Play a Game Button -->
1645
- <div class="mt-4">
1646
- <button @click="${this.#a}" class="w-full rounded-xl bg-[${this.color}] px-4 py-2 text-sm font-medium text-white transition hover:opacity-90">${this.gameButton}</button>
1647
- </div>
1648
- </div>
1649
- `}};customElements.get("mw-chat-wait-timer")||customElements.define("mw-chat-wait-timer",ci);var ui=class extends C(v){static properties={product:{type:Object},streaming:{type:Boolean},linksNewTab:{type:Boolean,attribute:"links-new-tab"},searchParams:{type:Object},imagesByProductUrl:{type:Object}};constructor(){super(),this.product=void 0,this.streaming=!1,this.linksNewTab=!1,this.searchParams=void 0,this.imagesByProductUrl={}}get trackedProductUrl(){let e=this.product?.url,r=this.searchParams;try{if(e&&r)return fs(e,r).href}catch{}return e}render(){let{name:e,description:r,price:n,url:i}=this.product||{},s=i?this.imagesByProductUrl?.[i]:void 0;return u`
1650
- <a
1651
- href="${V(this.trackedProductUrl)}"
1652
- title="${V(e)}"
1653
- class="group flex w-full max-w-md cursor-pointer gap-[10px] overflow-hidden rounded-lg"
1654
- target="${this.linksNewTab?"_blank":"_self"}"
1655
- ?disabled="${this.streaming}">
1656
- ${this.streaming?u`
1657
- <!-- shimmer -->
1658
- <div class="h-[70px] w-[70px] animate-pulse overflow-hidden rounded-lg bg-gray-200"></div>
1659
- `:u`<img src="${V(s)}" class="block h-[70px] w-[70px] rounded-lg bg-gray-100 object-contain" loading="lazy" />`}
1660
-
1661
- <div class="flex flex-1 flex-col justify-between">
1662
- <div>
1663
- ${e||!this.streaming?u`<h3 class="line-clamp-1 text-sm font-medium group-hover:underline">${e}</h3>`:u`<div class="h-5 w-32 animate-pulse rounded bg-gray-200"></div>`}
1664
-
1665
- <!-- no margin here -->
1666
-
1667
- ${r||!this.streaming?u`<p class="line-clamp-2 text-xs text-gray-500">${r}</p>`:u`<div class="my-1 h-6 w-3/4 animate-pulse rounded bg-gray-200"></div>`}
1668
- </div>
1669
-
1670
- <!-- flexbox filled space -->
1671
-
1672
- ${n||!this.streaming?u`<span class="text-xs text-gray-900">${n}</span>`:u`<div class="h-4 w-14 animate-pulse rounded bg-gray-200"></div>`}
1673
- </div>
1674
- </a>
1675
- `}};customElements.get("mw-product-card-horizontal")||customElements.define("mw-product-card-horizontal",ui);function $r(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r}var Sr=function(){},rt=function(){};var Mt=(t,e,r)=>Math.min(Math.max(r,t),e);var hi=.001,xc=.01,_o=10,kc=.05,Cc=1;function Mo({duration:t=800,bounce:e=.25,velocity:r=0,mass:n=1}){let i,s;Sr(t<=_o*1e3,"Spring duration must be 10 seconds or less");let o=1-e;o=Mt(kc,Cc,o),t=Mt(xc,_o,t/1e3),o<1?(i=a=>{let h=a*o,d=h*t,f=h-r,p=Er(a,o),y=Math.exp(-d);return hi-f/p*y},s=a=>{let d=a*o*t,f=d*r+r,p=Math.pow(o,2)*Math.pow(a,2)*t,y=Math.exp(-d),E=Er(Math.pow(a,2),o);return(-i(a)+hi>0?-1:1)*((f-p)*y)/E}):(i=a=>{let h=Math.exp(-a*t),d=(a-r)*t+1;return-hi+h*d},s=a=>{let h=Math.exp(-a*t),d=(r-a)*(t*t);return h*d});let c=5/t,l=Sc(i,s,c);if(t=t*1e3,isNaN(l))return{stiffness:100,damping:10,duration:t};{let a=Math.pow(l,2)*n;return{stiffness:a,damping:o*2*Math.sqrt(n*a),duration:t}}}var $c=12;function Sc(t,e,r){let n=r;for(let i=1;i<$c;i++)n=n-t(n)/e(n);return n}function Er(t,e){return t*Math.sqrt(1-e*e)}var Ec=["duration","bounce"],_c=["stiffness","damping","mass"];function Io(t,e){return e.some(r=>t[r]!==void 0)}function Mc(t){let e=Object.assign({velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1},t);if(!Io(t,_c)&&Io(t,Ec)){let r=Mo(t);e=Object.assign(Object.assign(Object.assign({},e),r),{velocity:0,mass:1}),e.isResolvedFromDuration=!0}return e}function _r(t){var{from:e=0,to:r=1,restSpeed:n=2,restDelta:i}=t,s=$r(t,["from","to","restSpeed","restDelta"]);let o={done:!1,value:e},{stiffness:c,damping:l,mass:a,velocity:h,duration:d,isResolvedFromDuration:f}=Mc(s),p=Ao,y=Ao;function E(){let b=h?-(h/1e3):0,x=r-e,w=l/(2*Math.sqrt(c*a)),$=Math.sqrt(c/a)/1e3;if(i===void 0&&(i=Math.min(Math.abs(r-e)/100,.4)),w<1){let S=Er($,w);p=T=>{let U=Math.exp(-w*$*T);return r-U*((b+w*$*x)/S*Math.sin(S*T)+x*Math.cos(S*T))},y=T=>{let U=Math.exp(-w*$*T);return w*$*U*(Math.sin(S*T)*(b+w*$*x)/S+x*Math.cos(S*T))-U*(Math.cos(S*T)*(b+w*$*x)-S*x*Math.sin(S*T))}}else if(w===1)p=S=>r-Math.exp(-$*S)*(x+(b+$*x)*S);else{let S=$*Math.sqrt(w*w-1);p=T=>{let U=Math.exp(-w*$*T),B=Math.min(S*T,300);return r-U*((b+w*$*x)*Math.sinh(B)+S*x*Math.cosh(B))/S}}}return E(),{next:b=>{let x=p(b);if(f)o.done=b>=d;else{let w=y(b)*1e3,$=Math.abs(w)<=n,S=Math.abs(r-x)<=i;o.done=$&&S}return o.value=o.done?r:x,o},flipTarget:()=>{h=-h,[e,r]=[r,e],E()}}}_r.needsInterpolation=(t,e)=>typeof t=="string"||typeof e=="string";var Ao=t=>0;var di=(t,e,r)=>{let n=e-t;return n===0?1:(r-t)/n};var nt=(t,e,r)=>-r*t+r*e+t;var Mr=(t,e)=>r=>Math.max(Math.min(r,e),t),ye=t=>t%1?Number(t.toFixed(5)):t,it=/(-)?([\d]*\.?[\d])+/g,Ir=/(#[0-9a-f]{6}|#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,To=/^(#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function pe(t){return typeof t=="string"}var st={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},Ar=Object.assign(Object.assign({},st),{transform:Mr(0,1)}),P0=Object.assign(Object.assign({},st),{default:1});var It=t=>({test:e=>pe(e)&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),q0=It("deg"),ot=It("%"),F0=It("px"),V0=It("vh"),N0=It("vw"),H0=Object.assign(Object.assign({},ot),{parse:t=>ot.parse(t)/100,transform:t=>ot.transform(t*100)});var at=(t,e)=>r=>!!(pe(r)&&To.test(r)&&r.startsWith(t)||e&&Object.prototype.hasOwnProperty.call(r,e)),Tr=(t,e,r)=>n=>{if(!pe(n))return n;let[i,s,o,c]=n.match(it);return{[t]:parseFloat(i),[e]:parseFloat(s),[r]:parseFloat(o),alpha:c!==void 0?parseFloat(c):1}};var oe={test:at("hsl","hue"),parse:Tr("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:r,alpha:n=1})=>"hsla("+Math.round(t)+", "+ot.transform(ye(e))+", "+ot.transform(ye(r))+", "+ye(Ar.transform(n))+")"};var Ic=Mr(0,255),Lr=Object.assign(Object.assign({},st),{transform:t=>Math.round(Ic(t))}),Q={test:at("rgb","red"),parse:Tr("red","green","blue"),transform:({red:t,green:e,blue:r,alpha:n=1})=>"rgba("+Lr.transform(t)+", "+Lr.transform(e)+", "+Lr.transform(r)+", "+ye(Ar.transform(n))+")"};function Ac(t){let e="",r="",n="",i="";return t.length>5?(e=t.substr(1,2),r=t.substr(3,2),n=t.substr(5,2),i=t.substr(7,2)):(e=t.substr(1,1),r=t.substr(2,1),n=t.substr(3,1),i=t.substr(4,1),e+=e,r+=r,n+=n,i+=i),{red:parseInt(e,16),green:parseInt(r,16),blue:parseInt(n,16),alpha:i?parseInt(i,16)/255:1}}var lt={test:at("#"),parse:Ac,transform:Q.transform};var ve={test:t=>Q.test(t)||lt.test(t)||oe.test(t),parse:t=>Q.test(t)?Q.parse(t):oe.test(t)?oe.parse(t):lt.parse(t),transform:t=>pe(t)?t:t.hasOwnProperty("red")?Q.transform(t):oe.transform(t)};var Lo="${c}",jo="${n}";function Tc(t){var e,r,n,i;return isNaN(t)&&pe(t)&&((r=(e=t.match(it))===null||e===void 0?void 0:e.length)!==null&&r!==void 0?r:0)+((i=(n=t.match(Ir))===null||n===void 0?void 0:n.length)!==null&&i!==void 0?i:0)>0}function Do(t){typeof t=="number"&&(t=`${t}`);let e=[],r=0,n=t.match(Ir);n&&(r=n.length,t=t.replace(Ir,Lo),e.push(...n.map(ve.parse)));let i=t.match(it);return i&&(t=t.replace(it,jo),e.push(...i.map(st.parse))),{values:e,numColors:r,tokenised:t}}function Oo(t){return Do(t).values}function Uo(t){let{values:e,numColors:r,tokenised:n}=Do(t),i=e.length;return s=>{let o=n;for(let c=0;c<i;c++)o=o.replace(c<r?Lo:jo,c<r?ve.transform(s[c]):ye(s[c]));return o}}var Lc=t=>typeof t=="number"?0:t;function jc(t){let e=Oo(t);return Uo(t)(e.map(Lc))}var jr={test:Tc,parse:Oo,createTransformer:Uo,getAnimatableNone:jc};function pi(t,e,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?t+(e-t)*6*r:r<1/2?e:r<2/3?t+(e-t)*(2/3-r)*6:t}function fi({hue:t,saturation:e,lightness:r,alpha:n}){t/=360,e/=100,r/=100;let i=0,s=0,o=0;if(!e)i=s=o=r;else{let c=r<.5?r*(1+e):r+e-r*e,l=2*r-c;i=pi(l,c,t+1/3),s=pi(l,c,t),o=pi(l,c,t-1/3)}return{red:Math.round(i*255),green:Math.round(s*255),blue:Math.round(o*255),alpha:n}}var Dc=(t,e,r)=>{let n=t*t,i=e*e;return Math.sqrt(Math.max(0,r*(i-n)+n))},Oc=[lt,Q,oe],Po=t=>Oc.find(e=>e.test(t)),Ro=t=>`'${t}' is not an animatable color. Use the equivalent color code instead.`,Dr=(t,e)=>{let r=Po(t),n=Po(e);rt(!!r,Ro(t)),rt(!!n,Ro(e));let i=r.parse(t),s=n.parse(e);r===oe&&(i=fi(i),r=Q),n===oe&&(s=fi(s),n=Q);let o=Object.assign({},i);return c=>{for(let l in o)l!=="alpha"&&(o[l]=Dc(i[l],s[l],c));return o.alpha=nt(i.alpha,s.alpha,c),r.transform(o)}};var Bo=t=>typeof t=="number";var Uc=(t,e)=>r=>e(t(r)),Or=(...t)=>t.reduce(Uc);function Fo(t,e){return Bo(t)?r=>nt(t,e,r):ve.test(t)?Dr(t,e):gi(t,e)}var mi=(t,e)=>{let r=[...t],n=r.length,i=t.map((s,o)=>Fo(s,e[o]));return s=>{for(let o=0;o<n;o++)r[o]=i[o](s);return r}},Vo=(t,e)=>{let r=Object.assign(Object.assign({},t),e),n={};for(let i in r)t[i]!==void 0&&e[i]!==void 0&&(n[i]=Fo(t[i],e[i]));return i=>{for(let s in n)r[s]=n[s](i);return r}};function qo(t){let e=jr.parse(t),r=e.length,n=0,i=0,s=0;for(let o=0;o<r;o++)n||typeof e[o]=="number"?n++:e[o].hue!==void 0?s++:i++;return{parsed:e,numNumbers:n,numRGB:i,numHSL:s}}var gi=(t,e)=>{let r=jr.createTransformer(e),n=qo(t),i=qo(e);return n.numHSL===i.numHSL&&n.numRGB===i.numRGB&&n.numNumbers>=i.numNumbers?Or(mi(n.parsed,i.parsed),r):(Sr(!0,`Complex values '${t}' and '${e}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`),o=>`${o>0?e:t}`)};var Pc=(t,e)=>r=>nt(t,e,r);function Rc(t){if(typeof t=="number")return Pc;if(typeof t=="string")return ve.test(t)?Dr:gi;if(Array.isArray(t))return mi;if(typeof t=="object")return Vo}function Bc(t,e,r){let n=[],i=r||Rc(t[0]),s=t.length-1;for(let o=0;o<s;o++){let c=i(t[o],t[o+1]);if(e){let l=Array.isArray(e)?e[o]:e;c=Or(l,c)}n.push(c)}return n}function qc([t,e],[r]){return n=>r(di(t,e,n))}function Fc(t,e){let r=t.length,n=r-1;return i=>{let s=0,o=!1;if(i<=t[0]?o=!0:i>=t[n]&&(s=n-1,o=!0),!o){let l=1;for(;l<r&&!(t[l]>i||l===n);l++);s=l-1}let c=di(t[s],t[s+1],i);return e[s](c)}}function Ur(t,e,{clamp:r=!0,ease:n,mixer:i}={}){let s=t.length;rt(s===e.length,"Both input and output ranges must be the same length"),rt(!n||!Array.isArray(n)||n.length===s-1,"Array of easing functions must be of length `input.length - 1`, as it applies to the transitions **between** the defined values."),t[0]>t[s-1]&&(t=[].concat(t),e=[].concat(e),t.reverse(),e.reverse());let o=Bc(e,n,i),c=s===2?qc(t,o):Fc(t,o);return r?l=>c(Mt(t[0],t[s-1],l)):c}var At=t=>e=>1-t(1-e),Pr=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,No=t=>e=>Math.pow(e,t),wi=t=>e=>e*e*((t+1)*e-t),Ho=t=>{let e=wi(t);return r=>(r*=2)<1?.5*e(r):.5*(2-Math.pow(2,-10*(r-1)))};var zo=1.525,Vc=4/11,Nc=8/11,Hc=9/10;var Wo=No(2),Zf=At(Wo),Go=Pr(Wo),zc=t=>1-Math.sin(Math.acos(t)),Wc=At(zc),Jf=Pr(Wc),Zo=wi(zo),Kf=At(Zo),Yf=Pr(Zo),Xf=Ho(zo),Gc=4356/361,Zc=35442/1805,Jc=16061/1805,Kc=t=>{if(t===1||t===0)return t;let e=t*t;return t<Vc?7.5625*e:t<Nc?9.075*e-9.9*t+3.4:t<Hc?Gc*e-Zc*t+Jc:10.8*t*t-20.52*t+10.72},Qf=At(Kc);function Yc(t,e){return t.map(()=>e||Go).splice(0,t.length-1)}function Xc(t){let e=t.length;return t.map((r,n)=>n!==0?n/(e-1):0)}function Qc(t,e){return t.map(r=>r*e)}function Tt({from:t=0,to:e=1,ease:r,offset:n,duration:i=300}){let s={done:!1,value:t},o=Array.isArray(e)?e:[t,e],c=Qc(n&&n.length===o.length?n:Xc(o),i);function l(){return Ur(c,o,{ease:Array.isArray(r)?r:Yc(o,r)})}let a=l();return{next:h=>(s.value=a(h),s.done=h>=i,s),flipTarget:()=>{o.reverse(),a=l()}}}function Jo({velocity:t=0,from:e=0,power:r=.8,timeConstant:n=350,restDelta:i=.5,modifyTarget:s}){let o={done:!1,value:e},c=r*t,l=e+c,a=s===void 0?l:s(l);return a!==l&&(c=a-e),{next:h=>{let d=-c*Math.exp(-h/n);return o.done=!(d>i||d<-i),o.value=o.done?a:a+d,o},flipTarget:()=>{}}}var Ko={keyframes:Tt,spring:_r,decay:Jo};function Yo(t){if(Array.isArray(t.to))return Tt;if(Ko[t.type])return Ko[t.type];let e=new Set(Object.keys(t));return e.has("ease")||e.has("duration")&&!e.has("dampingRatio")?Tt:e.has("dampingRatio")||e.has("stiffness")||e.has("mass")||e.has("damping")||e.has("restSpeed")||e.has("restDelta")?_r:Tt}var yi=16.666666666666668,eu=typeof performance<"u"?()=>performance.now():()=>Date.now(),vi=typeof window<"u"?t=>window.requestAnimationFrame(t):t=>setTimeout(()=>t(eu()),yi);function Xo(t){let e=[],r=[],n=0,i=!1,s=!1,o=new WeakSet,c={schedule:(l,a=!1,h=!1)=>{let d=h&&i,f=d?e:r;return a&&o.add(l),f.indexOf(l)===-1&&(f.push(l),d&&i&&(n=e.length)),l},cancel:l=>{let a=r.indexOf(l);a!==-1&&r.splice(a,1),o.delete(l)},process:l=>{if(i){s=!0;return}if(i=!0,[e,r]=[r,e],r.length=0,n=e.length,n)for(let a=0;a<n;a++){let h=e[a];h(l),o.has(h)&&(c.schedule(h),t())}i=!1,s&&(s=!1,c.process(l))}};return c}var tu=40,bi=!0,jt=!1,xi=!1,Lt={delta:0,timestamp:0},Dt=["read","update","preRender","render","postRender"],Rr=Dt.reduce((t,e)=>(t[e]=Xo(()=>jt=!0),t),{}),ru=Dt.reduce((t,e)=>{let r=Rr[e];return t[e]=(n,i=!1,s=!1)=>(jt||iu(),r.schedule(n,i,s)),t},{}),Qo=Dt.reduce((t,e)=>(t[e]=Rr[e].cancel,t),{}),p2=Dt.reduce((t,e)=>(t[e]=()=>Rr[e].process(Lt),t),{}),nu=t=>Rr[t].process(Lt),ea=t=>{jt=!1,Lt.delta=bi?yi:Math.max(Math.min(t-Lt.timestamp,tu),1),Lt.timestamp=t,xi=!0,Dt.forEach(nu),xi=!1,jt&&(bi=!1,vi(ea))},iu=()=>{jt=!0,bi=!0,xi||vi(ea)};var ta=ru;function ki(t,e,r=0){return t-e-r}function ra(t,e,r=0,n=!0){return n?ki(e+-t,e,r):e-(t-e)+r}function na(t,e,r,n){return n?t>=e+r:t<=-r}var su=t=>{let e=({delta:r})=>t(r);return{start:()=>ta.update(e,!0),stop:()=>Qo.update(e)}};function Ci(t){var e,r,{from:n,autoplay:i=!0,driver:s=su,elapsed:o=0,repeat:c=0,repeatType:l="loop",repeatDelay:a=0,onPlay:h,onStop:d,onComplete:f,onRepeat:p,onUpdate:y}=t,E=$r(t,["from","autoplay","driver","elapsed","repeat","repeatType","repeatDelay","onPlay","onStop","onComplete","onRepeat","onUpdate"]);let{to:b}=E,x,w=0,$=E.duration,S,T=!1,U=!0,B,M=Yo(E);!((r=(e=M).needsInterpolation)===null||r===void 0)&&r.call(e,n,b)&&(B=Ur([0,100],[n,b],{clamp:!1}),n=0,b=100);let q=M(Object.assign(Object.assign({},E),{from:n,to:b}));function N(){w++,l==="reverse"?(U=w%2===0,o=ra(o,$,a,U)):(o=ki(o,$,a),l==="mirror"&&q.flipTarget()),T=!1,p&&p()}function Zr(){x.stop(),f&&f()}function xe(j){if(U||(j=-j),o+=j,!T){let F=q.next(Math.max(0,o));S=F.value,B&&(S=B(S)),T=U?F.done:o<=0}y?.(S),T&&(w===0&&($??($=o)),w<c?na(o,$,a,U)&&N():Zr())}function qt(){h?.(),x=s(xe),x.start()}return i&&qt(),{stop:()=>{d?.(),x.stop()}}}var Ot=class t extends C(v){static properties={product:{type:Object},labels:{type:Object},_currentImageIndex:{type:Number,state:!0},_isValidUrl:{type:Boolean,state:!0}};constructor(){super(),this.product=void 0,this.labels={addToCart:"Add to cart",color:"Color",size:"Size"},this._currentImageIndex=0,this._isValidUrl=!1}willUpdate(e){e.has("product")&&this.#e()}#e(){if(!this.product?.url){this._isValidUrl=!1;return}try{let e=new URL(this.product.url);this._isValidUrl=e.protocol==="http:"||e.protocol==="https:"}catch{this._isValidUrl=!1}}get images(){return this.product?.images||[]}render(){if(!this.product)return u`
1676
- <div class="my-2 w-full rounded-3xl border bg-white p-4">
1677
- <div class="relative mx-auto mb-4 max-w-[240px]">
1678
- <div class="h-[180px] w-full animate-pulse rounded-2xl bg-gray-200"></div>
1679
- </div>
1680
- <div class="mb-2 flex items-end justify-between">
1681
- <div>
1682
- <div class="mb-1 h-4 w-20 animate-pulse rounded bg-gray-200"></div>
1683
- <div class="h-6 w-32 animate-pulse rounded bg-gray-200"></div>
1684
- </div>
1685
- <div class="h-6 w-16 animate-pulse rounded bg-gray-200"></div>
1686
- </div>
1687
- <div class="mb-4 h-4 w-3/4 animate-pulse rounded bg-gray-200"></div>
1688
- <div class="my-4 border-t border-gray-200"></div>
1689
- <div class="flex items-end justify-between gap-3">
1690
- <div class="h-6 w-16 animate-pulse rounded bg-gray-200"></div>
1691
- <div class="h-8 flex-auto animate-pulse rounded-xl bg-gray-200"></div>
1692
- </div>
1693
- </div>
1694
- `;if(this.product.layout==="horizontal")return u` <mw-product-card-horizontal product="${JSON.stringify(this.product)}"></mw-product-card-horizontal> `;let{name:e,description:r,price:n,category:i}=this.product;return u`
1695
- <div class="my-2 w-full rounded-3xl border-[0.5px] border-[#5e5d59]/25 bg-white p-4 hover:shadow-sm">
1696
- <div class="pointer-events-auto mx-auto mb-4">
1697
- <div class="group relative overflow-hidden rounded-2xl">
1698
- <div class="image-slider z-0 flex transition-transform duration-300 ease-in-out" style="transform: translateX(-${this._currentImageIndex*100}%)">
1699
- ${this.images.length>0?X(this.images,s=>s,(s,o)=>u`
1700
- <!-- TODO: add srcset with 1x/2x variants for high DPI displays -->
1701
- <img src="${s}" alt="image ${o+1}: ${e}" class="h-auto w-full flex-shrink-0 object-scale-down" loading="lazy" />
1702
- `):u`
1703
- <div class="h-full w-full flex-shrink-0 object-scale-down"></div>
1704
- <svg class="rounded-lg" height="144" viewBox="0 0 100 133" fill="none" xmlns="http://www.w3.org/2000/svg">
1705
- <rect width="100" height="133" rx="2" fill="#EEEEEE" style="" transform="matrix(0.9999999999999999, 0, 0, 0.9999999999999999, 0, -7.105427357601002e-15)" />
1706
- <g transform="matrix(0.6458070278167725, 0, 0, 0.5434090495109558, -19.74715805053711, -14.242161750793464)">
1707
- <rect x="92" y="135.169" width="32" height="26.831" rx="2" stroke-width="4" style="isolation: isolate; stroke: rgb(187, 187, 187); fill: none;" />
1708
- <path fill-rule="evenodd" clip-rule="evenodd" d="M 109.142 156.857 L 104 149 L 94 160 L 108 160 L 114 160 L 122 160 L 115 153 L 109.142 156.857 Z" fill="#BBBBBB" style="" />
1709
- <circle cx="110" cy="146" r="3" fill="#BBBBBB" style="" />
1710
- </g>
1711
- </svg>
1712
- `}
1713
- </div>
1714
- ${this.images.length>1?u`
1715
- <div class="absolute inset-0 flex items-center justify-between px-4">
1716
- <button
1717
- @click="${this.#s}"
1718
- class="bg-opacity-80 hover:bg-opacity-100 absolute top-1/2 left-2 flex h-5 w-5 -translate-y-1/2 items-center justify-center rounded-full bg-white shadow transition-all">
1719
- <hi-outline class="block h-6 w-3" name="chevron-left"></hi-outline>
1720
- </button>
1721
- <button
1722
- @click="${this.#i}"
1723
- class="bg-opacity-80 hover:bg-opacity-100 absolute top-1/2 right-2 flex h-5 w-5 -translate-y-1/2 items-center justify-center rounded-full bg-white shadow transition-all">
1724
- <hi-outline class="block h-6 w-3" name="chevron-right"></hi-outline>
1725
- </button>
1726
- </div>
1727
- `:null}
1728
- ${this.images?.length>1?u`
1729
- <div class="slider-dots absolute bottom-3 left-1/2 flex -translate-x-1/2 gap-2">
1730
- ${this.images.map((s,o)=>u`
1731
- <button
1732
- @click="${()=>this.#o(o)}"
1733
- class="${o===this._currentImageIndex?"bg-opacity-100":"bg-opacity-60"} hover:bg-opacity-80 h-1.5 w-1.5 rounded-full bg-white transition-all"></button>
1734
- `)}
1735
- </div>
1736
- `:null}
1737
- </div>
1738
- </div>
1739
- <div @click="${this.#t}" class="cursor-pointer">
1740
- ${i?u`<a @click="${this.#t}" class="${this._isValidUrl?"":"pointer-events-none"} line-clamp-1 text-xs text-gray-600 hover:underline"> ${i} </a>`:null}
1741
-
1742
- <h3
1743
- @click="${this.#t}"
1744
- class="${this._isValidUrl?"":"pointer-events-none cursor-default"} mb-1 line-clamp-2 cursor-pointer text-lg font-semibold transition-all hover:underline">
1745
- ${e||u`<span class="inline-block h-6 w-32 animate-pulse rounded bg-gray-200"></span>`}
1746
- </h3>
1747
- ${r?u`<p class="mb-2 line-clamp-2 text-sm text-gray-600">${r}</p>`:u`<div class="mb-2 h-4 w-3/4 animate-pulse rounded bg-gray-200"></div>`}
1748
- <span class="text-lg font-bold"> ${n||u`<span class="inline-block h-6 w-16 animate-pulse rounded bg-gray-200"></span>`} </span>
1749
-
1750
- <!-- <div class="my-4 border-t border-gray-200"></div> -->
1751
-
1752
- <!-- <button
1753
- @click="${this.#r}"
1754
- ?disabled="${!this._isValidUrl}"
1755
- class="${this._isValidUrl?"bg-gray-900 hover:bg-gray-800":"bg-gray-900/80 cursor-default"} w-full rounded-xl px-4 py-1.5 text-sm text-white">
1756
- ${this.labels.addToCart}
1757
- </button> -->
1758
- </div>
1759
- </div>
1760
- `}#t(e){e.preventDefault(),!(!this.product?.url||!this._isValidUrl)&&window.open(this.product.url,"_blank")}#r(e){!this.product?.url||!this._isValidUrl||(window.open(this.product.url,"_blank"),this.dispatchEvent(new t.AddToCartEvent(this.product)))}#n(e,r){this.#a&&Ci({from:e,to:r,duration:300,onUpdate:n=>{this.#a&&(this.#a.style.transform=`translateX(${n}%)`)}})}#i(){if(!this.product?.images?.length)return;let e=this._currentImageIndex,r=(e+1)%this.product.images.length,n=-(e*100),i=-(r*100);this.#n(n,i),this._currentImageIndex=r}#s(){if(!this.product?.images?.length)return;let e=this._currentImageIndex,r=(e-1+this.product.images.length)%this.product.images.length,n=-(e*100),i=-(r*100);this.#n(n,i),this._currentImageIndex=r}#o(e){if(!this.product?.images?.length)return;let r=this._currentImageIndex,n=Math.max(0,Math.min(e,this.product.images.length-1)),i=-(r*100),s=-(n*100);this.#n(i,s),this._currentImageIndex=n}get#a(){return this.renderRoot.querySelector(".image-slider")}};Ot.AddToCartEvent=class extends CustomEvent{static type="mw-product-card:add-to-cart";constructor(e,r={}){super(Ot.AddToCartEvent.type,{detail:{product:e},...r})}};customElements.get("mw-product-card")||customElements.define("mw-product-card",Ot);function ct(t){return Array.isArray(t)?t:t?[t]:[]}function ia(t,e){let r=new Map;for(let n of t){let i=e(n);r.has(i)||r.set(i,[]),(r.get(i)||[]).push(n)}return r}var Br=(t,e,r)=>{for(let n of e)if(n[0]===t)return(0,n[1])();return r?.()};var $i=class extends C(v){static properties={orderDetails:{type:Object,attribute:"order-details"},streaming:{type:Boolean},linksNewTab:{type:Boolean,attribute:"links-new-tab"},color:{type:String}};constructor(){super(),this.orderDetails=null,this.streaming=!1,this.linksNewTab=!1,this.color="#601feb"}render(){let e=ct(this.orderDetails?.order_status?.step||[]),r=ct(this.orderDetails?.items?.item||[]),n=ct(this.orderDetails?.actions||[]);return u`
1761
- <div class="flex w-full max-w-md flex-col rounded-3xl border bg-white p-4">
1762
- <!-- Header with order ID -->
1763
- <div class="mb-2">
1764
- ${this.orderDetails?.order_id?.label||!this.streaming?u`<h2 class="text-lg font-semibold">${this.orderDetails?.order_id?.label} ${this.orderDetails?.order_id?.value}</h2>`:u`<div class="h-7 w-full animate-pulse rounded bg-gray-200"></div>`}
1765
- </div>
1766
-
1767
- <!-- Progress Timeline -->
1768
- <div>
1769
- <ol role="list" class="w-full overflow-hidden">
1770
- ${this.streaming&&!this.orderDetails?u`
1771
- <!-- Loading for status timeline -->
1772
- ${[1,2,3].map((i,s)=>u`
1773
- <li class="w-full pb-8">
1774
- ${s<2?u`<div class="absolute top-2 left-2 mt-0.5 -ml-px h-full w-0.5 animate-pulse bg-gray-200" aria-hidden="true"></div>`:""}
1775
- <div class="group relative flex items-start">
1776
- <span class="flex h-6 items-center">
1777
- <span class="h-4 w-4 animate-pulse rounded-full bg-gray-200"></span>
1778
- </span>
1779
- <span class="ml-3 flex min-w-0 flex-col">
1780
- <span class="h-5 w-24 animate-pulse rounded bg-gray-200"></span>
1781
- </span>
1782
- </div>
1783
- </li>
1784
- `)}
1785
- `:X(e,i=>i.label,(i,s)=>{let o=i.status==="completed",c=i.status==="in_progress",l=s===e.length-1;return u`<li class="relative pb-4">
1786
- ${l?"":u`<div class="${`absolute left-2 top-2 -ml-px mt-0.5 h-full w-0.5 ${o?`bg-[${this.color}]`:"bg-gray-300"}`}" aria-hidden="true"></div>`}
1787
-
1788
- <div class="group relative flex items-start">
1789
- ${Br(i.status,[["pending",()=>u` <span class="flex h-6 items-center">
1790
- <span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-gray-300 bg-white">
1791
- <span class="h-1.5 w-1.5 rounded-full bg-transparent"></span>
1792
- </span>
1793
- </span>`],["in_progress",()=>u`<span class="flex h-6 items-center">
1794
- <span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-[${this.color}] bg-white">
1795
- <span class="h-1.5 w-1.5 rounded-full bg-[${this.color}]"></span>
1796
- </span>
1797
- </span>`],["completed",()=>u`
1798
- <span class="flex h-6 items-center">
1799
- <span class="flex h-4 w-4 items-center justify-center rounded-full bg-[${this.color}]">
1800
- <hi-outline class="mb-3 block h-3 w-3 text-white" name="check"></hi-outline>
1801
- </span>
1802
- </span>
1803
- `]],()=>u`<span class="flex h-6 items-center">
1804
- <span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-[${this.color}] bg-white">
1805
- <span class="h-1.5 w-1.5 rounded-full bg-[${this.color}]"></span>
1806
- </span>
1807
- </span>`)}
1808
-
1809
- <span class="ml-3 flex min-w-0 flex-col">
1810
- <span class="${`text-sm font-medium ${c?`text-[${this.color}]`:o?"text-gray-900":"text-gray-500"}`}"> ${i.label} </span>
1811
- </span>
1812
- </div>
1813
- </li>`})}
1814
- </ol>
1815
- </div>
1816
-
1817
- <!-- Products list with order items -->
1818
- <div class="mb-2 w-full">
1819
- ${r.length===0&&!this.orderDetails?.total?.amount&&this.streaming?u`
1820
- <!-- Loading shimmer for products -->
1821
- <div class="w-full space-y-4">
1822
- <div class="flex items-center gap-2">
1823
- <div class="h-12 w-12 animate-pulse rounded-lg bg-gray-200"></div>
1824
- <div class="flex-1 space-y-2">
1825
- <div class="h-4 w-32 animate-pulse rounded bg-gray-200"></div>
1826
- <div class="h-4 w-24 animate-pulse rounded bg-gray-200"></div>
1827
- </div>
1828
- </div>
1829
- <div class="flex items-center justify-between">
1830
- <div class="h-4 w-12 animate-pulse rounded bg-gray-200"></div>
1831
- <div class="h-4 w-10 animate-pulse rounded bg-gray-200"></div>
1832
- </div>
1833
- </div>
1834
- `:u`
1835
- <div class="divide-y divide-gray-100">
1836
- ${this.streaming&&!r.length?u`
1837
- <!-- Loading shimmer for individual products -->
1838
- ${[1,2].map(()=>u`
1839
- <div class="flex items-center gap-2 py-1.5">
1840
- <div class="h-12 w-12 animate-pulse rounded-lg bg-gray-200"></div>
1841
- <div class="min-w-0 flex-1">
1842
- <div class="h-4 w-32 animate-pulse rounded bg-gray-200"></div>
1843
- </div>
1844
- <div class="h-4 w-24 animate-pulse rounded bg-gray-200"></div>
1845
- </div>
1846
- `)}
1847
- `:r?.map(i=>{let s=i?.image_url;return u`
1848
- <div class="flex items-center gap-2 py-1.5">
1849
- <img src="${V(s)}" class="block h-12 w-12 rounded-lg bg-gray-100 object-contain" loading="lazy" />
1850
-
1851
- <div class="min-w-0 flex-1">
1852
- ${!i?.name&&this.streaming?u`<div class="h-4 w-32 animate-pulse rounded bg-gray-200"></div>`:u`<h3 class="truncate text-sm font-medium">${i?.name}</h3>`}
1853
- </div>
1854
- ${!i?.price&&this.streaming?u`<div class="h-4 w-24 animate-pulse rounded bg-gray-200"></div>`:u`<span class="text-sm text-gray-500">${i?.quantity&&Number(i.quantity)>1?"x":""} ${i?.price}</span>`}
1855
- </div>
1856
- `})}
1857
- </div>
1858
- <!-- Order total -->
1859
- <div class="mt-1 border-t border-gray-200 pt-1">
1860
- <div class="flex justify-between font-medium">
1861
- <span>${this.orderDetails?.total?.label}</span>
1862
- <span>${this.orderDetails?.total?.amount}</span>
1863
- </div>
1864
- </div>
1865
- `}
1866
- </div>
1867
-
1868
- <!-- Shipping and payment information -->
1869
- <div class="mb-2 flex w-full flex-col gap-2 overflow-hidden">
1870
- ${this.streaming&&!this.orderDetails?u`
1871
- <!-- Loading shimmer template -->
1872
- ${[1,2].map(()=>u`
1873
- <div>
1874
- <div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200"></div>
1875
- <div class="space-y-2 overflow-hidden">
1876
- <div class="h-4 w-40 animate-pulse rounded bg-gray-200"></div>
1877
- <div class="h-4 w-36 animate-pulse rounded bg-gray-200"></div>
1878
- </div>
1879
- </div>
1880
- `)}
1881
- `:u`
1882
- <!-- Shipping Section -->
1883
- <div>
1884
- ${this.streaming&&!this.orderDetails?.shipping?u`
1885
- <div>
1886
- <div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200"></div>
1887
- <div class="space-y-2 overflow-hidden">
1888
- <div class="h-4 w-40 animate-pulse rounded bg-gray-200"></div>
1889
- <div class="h-4 w-36 animate-pulse rounded bg-gray-200"></div>
1890
- </div>
1891
- </div>
1892
- `:this.orderDetails?.shipping?.method||this.orderDetails?.customer?.name?u`
1893
- <h3 class="mb-1 text-sm font-medium">${this.orderDetails?.shipping?.label}</h3>
1894
- <div class="space-y-1">
1895
- ${this.orderDetails.customer?.name?u`<p class="text-xs text-gray-600">${this.orderDetails.customer.name}</p>`:""}
1896
- ${this.orderDetails.shipping?.method?u`<p class="text-xs text-gray-600">${this.orderDetails.shipping.method}</p>`:""}
1897
- </div>
1898
- `:""}
1899
- </div>
1900
-
1901
- <!-- Payment Section -->
1902
- <div>
1903
- ${this.streaming&&!this.orderDetails?.payment?u`
1904
- <div>
1905
- <div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200"></div>
1906
- <div class="space-y-2 overflow-hidden">
1907
- <div class="h-4 w-40 animate-pulse rounded bg-gray-200"></div>
1908
- <div class="h-4 w-36 animate-pulse rounded bg-gray-200"></div>
1909
- </div>
1910
- </div>
1911
- `:this.orderDetails?.payment?u`
1912
- <h3 class="mb-1 text-sm font-medium">${this.orderDetails.payment.label}</h3>
1913
- ${this.orderDetails.payment?.method?.value?u`
1914
- <p class="text-xs text-gray-600">
1915
- <span class="font-medium">${this.orderDetails.payment.method.label}:</span>
1916
- ${this.orderDetails.payment.method.value}
1917
- </p>
1918
- `:""}
1919
- ${this.orderDetails.payment.status?.value?u`
1920
- <p class="text-xs text-gray-600">
1921
- <span class="font-medium">${this.orderDetails.payment.status.label}:</span>
1922
- <span>${this.orderDetails.payment.status.value}</span>
1923
- </p>
1924
- `:""}
1925
- `:""}
1926
- </div>
1927
- `}
1928
- </div>
1929
-
1930
- <!-- Action buttons section -->
1931
- <div class="flex w-full flex-col gap-2 overflow-hidden">
1932
- ${this.streaming&&!n[0]?.track_order?.label&&!xn(n[0]?.track_order?.tracking_url||"")?u`
1933
- <!-- Loading shimmer for buttons -->
1934
- <div class="h-10 w-full min-w-[250px] animate-pulse overflow-hidden rounded-xl bg-gray-200"></div>
1935
- `:X(n,(i,s)=>`action-${s}`,i=>{if(i?.track_order?.label)return u`
1936
- ${xn(i.track_order?.tracking_url||"")?u` <a
1937
- target="${this.linksNewTab?"_blank":"_self"}"
1938
- href="${i.track_order?.tracking_url}"
1939
- class="mt-1 w-full rounded-xl bg-[${this.color}] px-4 py-2 text-center text-sm font-medium text-white hover:opacity-90"
1940
- >${i.track_order.label}</a
1941
- >`:null}
1942
- `})}
1943
- </div>
1944
- </div>
1945
- `}};customElements.get("mw-product-order-status-card")||customElements.define("mw-product-order-status-card",$i);var ou={".section-spacing":{"@apply":"relative flex justify-center px-[25px] py-16 sm:px-9 sm:py-[45px] lg:px-24 lg:py-[104px]"}},Si=Ct({preflight:{...ou},hash:!1,darkMode:"class",theme:{extend:{fontFamily:{display:["Work Sans","sans-serif"],sans:["Inter","sans-serif"]},colors:{violet:{DEFAULT:"#601feb",50:"#f3f2ff",100:"#eae7ff",200:"#d7d2ff",300:"#baaeff",400:"#9980ff",500:"#784dff",600:"#6829fe",700:"#601feb",800:"#4b12c5",900:"#3f11a1",950:"#25086d"},pink:{DEFAULT:"#ff0bbb",50:"#fff0fc",100:"#ffe3fc",200:"#ffc6f9",300:"#ff98f2",400:"#ff58e5",500:"#ff27d5",600:"#ff0bbb",700:"#df0095",800:"#b8007b",900:"#980368",950:"#5f003b"},lime:{DEFAULT:"#b9e901",50:"#fdffe4",100:"#f9ffc5",200:"#f1ff92",300:"#e2ff54",400:"#d1fa21",500:"#b9e901",600:"#8ab400",700:"#688902",800:"#526b09",900:"#465a0d",950:"#243300"}}}},presets:[fr(),hr(),dr(),mr()],ignorelist:/^(sb-|css-|sbdocs|docblock|innerZoomElementWrapper|docs-|rejt-)/});var Ei=t=>gr(Si)(t);var _i=class extends Ei(v){static styles=D`
1946
- :host {
1947
- --w-hover-arrow--hovered: 0;
1948
- }
1949
-
1950
- [part='line'] {
1951
- opacity: calc(var(--w-hover-arrow--hovered) * 1);
1952
- transition: opacity 0.3s ease-in-out;
1953
- }
1954
-
1955
- [part='tip'] {
1956
- transform: translateX(calc(var(--w-hover-arrow--hovered) * 3px));
1957
- transition: transform 0.3s ease-in-out;
1958
- }
1959
- `;render(){return u`
1960
- <svg width="10" height="10" viewBox="0 0 10 10" aria-hidden="true">
1961
- <g fill-rule="evenodd">
1962
- <path part="line" stroke="currentColor" fill="currentColor" d="M0 5h7"></path>
1963
- <path part="tip" stroke="currentColor" fill="transparent" d="M1 1l4 4-4 4"></path>
1964
- </g>
1965
- </svg>
1966
- `}};customElements.get("w-hover-arrow")||customElements.define("w-hover-arrow",_i);var Ut=class t extends C(v){static properties={title:{type:String},type:{type:String},color:{type:String},_hoverRating:{type:Number,state:!0}};constructor(){super(),this.title="",this.type="star-rating",this.color="#8B5CF6",this._hoverRating=0}render(){return u`
1967
- <div
1968
- class="focus-within:ring-opacity-50 w-full overflow-hidden rounded-[18px] bg-white shadow-[0px_3px_20px_0px_rgba(0,0,0,0.2)] transition-all duration-200 focus-within:ring-2 focus-within:ring-[${this.color}]">
1969
- <div class="flex flex-col gap-2 p-4">
1970
- ${Br(this.type,[["star-rating",()=>this.#t()],["binary-vote",()=>this.#r()],["new-conversation-button",()=>this.#e()]],()=>u`<span class="text-sm text-gray-500">Unsupported input type</span>`)}
1971
- </div>
1972
- </div>
1973
- `}#e(){return u`
1974
- <button
1975
- type="button"
1976
- @click="${()=>this.dispatchEvent(new t.SubmitEvent({type:"new-conversation-button"}))}">
1977
- <span class="group relative flex items-center justify-center gap-3 font-sans text-sm font-semibold whitespace-nowrap text-[${this.color}]">
1978
- ${this.title||"Start a new conversation"}
1979
- <w-hover-arrow class="text-[#8D00FF] group-hover:text-[${this.color}] group-hover:[--w-hover-arrow--hovered:1]"></w-hover-arrow>
1980
- </span>
1981
- </button>
1982
- `}#t(){return u`
1983
- ${this.title?u`<p class="text-sm font-medium text-gray-700">${this.title}</p>`:null}
1984
- <div class="flex justify-center gap-1">
1985
- ${[1,2,3,4,5].map(e=>u`
1986
- <button
1987
- type="button"
1988
- @click="${()=>this.#i(e)}"
1989
- @mouseenter="${()=>this.#s(e)}"
1990
- @mouseleave="${this.#o}"
1991
- class="p-1 transition-transform hover:scale-110"
1992
- aria-label="${e} star${e>1?"s":""}">
1993
- ${this.#n(e)}
1994
- </button>
1995
- `)}
1996
- </div>
1997
- `}#r(){return u`
1998
- ${this.title?u`<p class="text-sm font-medium text-gray-700">${this.title}</p>`:null}
1999
- <div class="flex justify-center gap-4">
2000
- <button
2001
- type="button"
2002
- @click="${()=>this.#a("negative")}"
2003
- class="flex flex-col items-center gap-1 rounded-lg border-2 border-gray-300 p-1 transition-all hover:border-red-400">
2004
- <svg class="h-6 w-6 text-gray-400" fill="none" stroke="currentColor" viewBox="0 0 24 24">
2005
- <path
2006
- stroke-linecap="round"
2007
- stroke-linejoin="round"
2008
- stroke-width="2"
2009
- d="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" />
2010
- </svg>
2011
- </button>
2012
- <button
2013
- type="button"
2014
- @click="${()=>this.#a("positive")}"
2015
- class="flex flex-col items-center gap-1 rounded-lg border-2 border-gray-300 p-1 transition-all hover:border-green-400">
2016
- <svg class="h-6 w-6 text-gray-400" fill="none" stroke="currentColor" viewBox="0 0 24 24">
2017
- <path
2018
- stroke-linecap="round"
2019
- stroke-linejoin="round"
2020
- stroke-width="2"
2021
- d="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" />
2022
- </svg>
2023
- </button>
2024
- </div>
2025
- `}#n(e){let r=e<=this._hoverRating;return u`
2026
- <svg class="${r?"text-yellow-400":"text-gray-300"} h-6 w-6" fill="${r?"currentColor":"none"}" stroke="currentColor" viewBox="0 0 24 24">
2027
- <path
2028
- stroke-linecap="round"
2029
- stroke-linejoin="round"
2030
- stroke-width="2"
2031
- d="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" />
2032
- </svg>
2033
- `}#i(e){this._hoverRating=0,this.dispatchEvent(new t.SubmitEvent({type:"star-rating",rating:e}))}#s(e){this._hoverRating=e}#o(){this._hoverRating=0}#a(e){this.dispatchEvent(new t.SubmitEvent({type:"binary-vote",vote:e}))}};Ut.SubmitEvent=class extends CustomEvent{static type="mw-request-input:submit";constructor(e,r={}){super(Ut.SubmitEvent.type,{detail:e,bubbles:!0,composed:!0,...r})}};customElements.get("mw-request-input")||customElements.define("mw-request-input",Ut);var Pt=class extends Qe{constructor(e){if(super(e),this.it=L,e.type!==yr.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===L||e==null)return this._t=void 0,this.it=e;if(e===ee)return e;if(typeof e!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;let r=[e];return r.raw=r,this._t={_$litType$:this.constructor.resultType,strings:r,values:[]}}};Pt.directiveName="unsafeHTML",Pt.resultType=1;var sa=vr(Pt);var oa=$s(ue({name:O(),description:O(),price:O(),image_url:Ze([O(),We(O())]),category:O(),url:O()}));function aa(t,e,r,{imagesByProductUrl:n,linksNewTab:i=!0,searchParams:s,messageIsStreaming:o=!1,isSupportAgent:c,color:l="#601feb",apiBaseUrl:a="",cdnBaseUrl:h=""}){if(!t)return u``;let d=e>0&&r[e-1]&&"data"in r[e-1],f=e<r.length-1||!o;if("text"in t)return u`<p>${t.text}</p>`;if("html"in t)return u`${sa(t.html)}`;if("data"in t)switch(t.tag){case"product-card":case"product-card-v1":case"product-card-horizontal":{let p=xt(oa,t.data);if(p.success){let y={...p.output,images:[]};return y.images=ct(y.image_url),u`
2034
- ${d?u`<div class="my-3 w-full border-t border-gray-200/50"></div>`:null}
2035
- <mw-product-card-horizontal
2036
- product="${JSON.stringify(y)}"
2037
- ?streaming="${!f}"
2038
- ?links-new-tab="${i}"
2039
- .searchParams="${s}"
2040
- .imagesByProductUrl="${n}"></mw-product-card-horizontal>
2041
- `}console.warn(p.issues);break}case"order-status-card-v1":return u`<mw-product-order-status-card
2042
- order-details="${JSON.stringify(t.data)}"
2043
- ?streaming="${!f}"
2044
- ?links-new-tab="${i}"
2045
- color="${l}"></mw-product-order-status-card> `;case"live-chat-wait-card-v1":{let p=t.data||{};if(c)return u`<p><i>${p.message}</i></p>`;let y=h?`${h}/assets/game-intro.aac`:"";return u`<mw-chat-wait-timer
2046
- heading="${p.title||""}"
2047
- message="${p.message||""}"
2048
- completeMessage="${p.completeMessage||""}"
2049
- gameButton="${p.gameButton||""}"
2050
- target-end-time="${p.targetEndTime||""}"
2051
- question="${p.firstQuestion||""}"
2052
- .options="${p.options?.option||["No","Yes"]}"
2053
- game-title="${p.gameTitle||""}"
2054
- result-prefix="${p.resultPrefix||""}"
2055
- correct-button-text="${p.correctButtonText||"Correct"}"
2056
- wrong-button-text="${p.wrongButtonText||"Wrong"}"
2057
- color="${l}"
2058
- apiBaseUrl="${a}"
2059
- cdnBaseUrl="${h}"
2060
- sound="${y}"></mw-chat-wait-timer>`}case"request-input-v1":return u``}return console.warn("could not render part:",t),u`<p><i>data type not supported</i></p>`}var qr=class{#e;#t;#r;#n=!1;timeoutMs;get isTyping(){return this.#n}constructor(e,r,{timeoutMs:n=2e3}={}){this.#e=e,this.#t=r,this.timeoutMs=n,e.addController(this)}hostDisconnected(){clearTimeout(this.#r),this.#r=void 0}onInput(e){if(this.#e.isConnected){if(!e.trim()){this.typingStopped();return}clearTimeout(this.#r),this.#r=setTimeout(()=>this.typingStopped(),this.timeoutMs),this.#n||this.#i()}}#i(){this.#n=!0,this.#t.typingStarted()}typingStopped(){clearTimeout(this.#r),this.#n=!1,this.#t.typingStopped()}};function la(t,e="en-US"){let r=new Intl.DateTimeFormat(e,{hour:"numeric",minute:"numeric"}).format(t);return`${t.toLocaleDateString(e,{year:"numeric",month:"short",day:"numeric"})}, ${r}`}function ca(t){t?.body?.cancel().catch(console.warn)}var Mi=class{#e;constructor(e=window.localStorage){this.#e=e}#t(e){if(!(typeof e!="string"||e===""))try{return JSON.parse(e)}catch{return}}#r(e){if(e!==void 0)try{return JSON.stringify(e)}catch{return}}setex(e,r,n){return this.#e.setItem(e,this.#r({value:this.#r(r),expiresAt:Date.now()+n*1e3})||"")}set(e,r){return this.#e.setItem(e,this.#r({value:this.#r(r)})||"")}get(e){let r=this.#e.getItem(e);if(!r)return;let n=this.#t(r);if(n){if(n.expiresAt&&n.expiresAt<Date.now()){this.#e.removeItem(e);return}return this.#t(n.value)}}get molin_shop_assistant_distinct_id(){return localStorage.getItem("molin_shop_assistant_distinct_id")}set molin_shop_assistant_distinct_id(e){e===null?localStorage.removeItem("molin_shop_assistant_distinct_id"):localStorage.setItem("molin_shop_assistant_distinct_id",e)}get molin_widget_open_state(){return Z.get("molin-shop-ai-widget-open")??null}set molin_widget_open_state(e){Z.set("molin-shop-ai-widget-open",e)}resetWidgetData(){Z.molin_shop_assistant_distinct_id=null,Z.molin_widget_open_state=null}},Z=new Mi;var Ii=class{#e=[];#t;#r=10;#n=5e3;#i=!1;async add(e,r){if(this.#e.push(da(e,r)),this.#e.length>=this.#r)return this.flush();this.#t||(this.#t=setTimeout(()=>{this.flush().catch(console.error)},this.#n))}async flush(){if(this.#i||this.#e.length===0)return;let e=[...this.#e];try{this.#i=!0,clearTimeout(this.#t),this.#t=void 0,this.#e=[];let r=new AbortController,n=setTimeout(()=>r.abort(),5e3);await ha(e,{signal:r.signal}),clearTimeout(n)}catch(r){if(r.name==="AbortError")console.error("Request timed out, retrying events"),this.#e=[...e,...this.#e];else{console.error("Failed to send events to backend:",r);let n=e.filter(i=>i.event.includes("error"));this.#e=[...n,...this.#e]}}finally{this.#i=!1,this.#e.length>0&&!this.#t&&(this.#t=setTimeout(()=>{this.flush().catch(console.error)},this.#n))}}async flushBeforeUnload(){if(this.#e.length>0)try{let e=new FormData;e.set("events",JSON.stringify(this.#e)),navigator.sendBeacon(new URL("/widgets/data/collect",Fr()).href,e)}catch(e){console.error("Failed to send final events:",e)}}},ua=new Ii;window.addEventListener("beforeunload",()=>{ua.flushBeforeUnload().catch(console.error)});async function A(t,e,r){if(typeof t!="string")throw new TypeError("Event name must be a string");if(typeof e!="object"||e===null)throw new TypeError("Properties must be an object");try{if(t==="ShopAssistant: user clicked link"&&cu("molin_link_click",e),r?.immediate){await ha([da(t,e)]);return}else return ua.add(t,e)}catch(n){console.error("Failed to send event:",n)}}async function ha(t,{signal:e}={}){let r=new FormData;r.set("events",JSON.stringify(t));let n=await fetch(new URL("/widgets/data/collect",Fr()),{method:"POST",body:r,signal:e});if(!n.ok)throw new Error(`HTTP error! status: ${n.status}`);ca(n)}function da(t,e){return{event:t,widget_id:e.widgetId,properties:Object.assign({},e,lu()),distinct_id:au(),timestamp:new Date().toISOString()}}function au(){try{let t=Z.molin_shop_assistant_distinct_id;return t||(t=crypto.randomUUID(),Z.molin_shop_assistant_distinct_id=t),t}catch(t){console.error("Failed to deserialize distinct_id:",t);let e=crypto.randomUUID();try{Z.molin_shop_assistant_distinct_id=e}catch(r){console.error("Failed to store new distinct_id:",r)}return e}}function lu(){return{referrer:document.referrer,userAgent:navigator.userAgent,language:navigator.language,screenWidth:window.innerWidth,screenHeight:window.innerHeight,timestamp:new Date().toISOString(),timezoneOffset:new Date().getTimezoneOffset(),doNotTrack:navigator.doNotTrack??void 0}}function Fr(){let t=new URL(import.meta.url).hostname;return{localhost:"http://localhost:8787","molin.localhost":"http://molin.localhost:8787","widget.molin.foo":"https://widget.molin.foo","widget.molin.ai":"https://widget.molin.ai","molin.ai":"https://molin.ai","molin.foo":"https://molin.foo"}[t]||"https://molin.ai"}function cu(t,e){try{window.dataLayer=window.dataLayer||[];let r={event:t,link_url:e.url};window.dataLayer.push(r)}catch(r){console.error("Failed to send event to dataLayer:",r)}}function fa(){let t=new URL(import.meta.url).hostname;return{localhost:"http://uploads.molin.localhost:8787","molin.localhost":"http://uploads.molin.localhost:8787","widget.molin.foo":"https://widget.molin.foo","widget.molin.ai":"https://widget.molin.ai","molin.ai":"https://widget.molin.ai","molin.foo":"https://widget.molin.foo"}[t]||"https://widget.molin.ai"}function ma(){let t=new URL(import.meta.url).hostname;return{localhost:"http://localhost:8702","molin.localhost":"http://localhost:8702","widget.molin.foo":"https://widget.molin.foo","widget.molin.ai":"https://widget.molin.ai","molin.ai":"https://widget.molin.ai","molin.foo":"https://widget.molin.foo"}[t]||"https://widget.molin.ai"}var uu="\xB7 \xB7 \xB7",hu=["star-rating","binary-vote","new-conversation-button"],Rt=class t extends C(v){#e=As(this);static properties={showClose:{type:Boolean,attribute:"show-close"},_currentRequestInputIndex:{type:Number,state:!0}};#t=[];constructor(){super(),this.showClose=!1,this._currentRequestInputIndex=0}#r=new qr(this,{typingStarted:()=>this.#e.value?.sendUserTypingStart(),typingStopped:()=>this.#e.value?.sendUserTypingStop()});#n=new Cr(this,{onImageDelete:e=>{if(!this.#e.value){console.warn("widget context not available, cannot delete image");return}this.#e.value.sendImageDelete(e),this.#p?.focus()},uploadUrl:new URL("/v1/uploads",fa()).href,onConnect:()=>{this.#e.value?.connect()}});get conversationId(){return this.#e.value?.conversationId||""}get messages(){return this.#e.value?.messages||[]}get config(){return this.#e.value?.config}get callbacks(){return this.#e.value?.callbacks||{}}get widgetId(){return this.#e.value?.widgetId||""}get typingIndicator(){return this.#e.value?.typingIndicator}get isStreaming(){return this.#e.value?.isStreaming}get ranOutOfCredits(){return this.#e.value?.ranOutOfCredits}get isLiveMode(){return this.#e.value?.isLiveMode}get lastMsg(){return this.#e.value?.lastMsg}get hasQueuedMessages(){return this.#e.value?.hasQueuedMessages}#i="single";#s=null;firstUpdated(){document.addEventListener("mw-context-widget:connected",this.#o,{once:!0}),this.addEventListener("mw-chat-wait-game:question-answered",this.#a),this.addEventListener("mw-chat-wait-game:game-completed",this.#h),this.addEventListener("mw-chat-wait-game:guess-validated",this.#c)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("mw-chat-wait-game:question-answered",this.#a),this.removeEventListener("mw-chat-wait-game:game-completed",this.#h),this.removeEventListener("mw-chat-wait-game:guess-validated",this.#c)}#o=e=>{let r=e,{pendingImages:n}=r.detail;Array.isArray(n)&&this.#n.restoreImages(n)};#a=e=>{let r=e,{questionIndex:n,question:i,answer:s,totalQuestions:o}=r.detail;this.callbacks.onWaitGameQuestionAnswered?.({widgetId:this.widgetId,conversationId:this.conversationId,questionIndex:n,question:i,answer:s,totalQuestions:o})};#h=e=>{let r=e,{guessedProfession:n,questionCount:i}=r.detail;this.callbacks.onWaitGameCompleted?.({widgetId:this.widgetId,conversationId:this.conversationId,guessedProfession:n,questionCount:i})};#c=e=>{let r=e,{guessedProfession:n,isCorrect:i,questionCount:s}=r.detail;this.callbacks.onWaitGameGuessValidated?.({widgetId:this.widgetId,conversationId:this.conversationId,guessedProfession:n,isCorrect:i,questionCount:s})};updated(){let e=this.lastMsg?.id;e&&e!==this.#s&&(this.#s=e,this._currentRequestInputIndex=0),this.#e.value?.widgetId&&this.config?.enableImageUpload&&this.#n.updateUploadOptions({conversationId:this.conversationId,widgetId:this.#e.value?.widgetId,enabled:this.config?.enableImageUpload,isConnected:()=>this.#e.value?.isConnected()??!1,onConnect:()=>{this.#e.value?.connect()}})}render(){J(this.config,"config is required");let e=ia(this.messages,i=>{try{let s=new Date(i.timestamp),o=Math.floor(s.getUTCMinutes()/5)*5;return s.setUTCMinutes(o,0,0),s.valueOf().toString()}catch(s){console.error(s)}}),r=Math.max(0,Math.min(this._currentRequestInputIndex,this.#d.length-1)),n=this.#d[r];return u`
2061
- <div class="relative mx-auto h-full bg-[#FDFDFD] font-sans text-base before:absolute before:inset-0 before:bg-[#8d8d8d] before:opacity-10 sm:rounded-[36px] sm:p-1.5 sm:before:rounded-[36px]">
2062
- <div
2063
- class="relative flex h-full flex-col bg-white shadow-[0px_4px_4px_0px_rgba(0,0,0,0.25),-116px_177px_59px_0px_rgba(0,0,0,0.00),-74px_113px_54px_0px_rgba(0,0,0,0.01),-42px_64px_46px_0px_rgba(0,0,0,0.03),-19px_28px_34px_0px_rgba(0,0,0,0.06)] sm:rounded-[30px]">
2064
- <mw-chat-header
2065
- class="absolute top-1.5 right-1.5 left-1.5"
2066
- .content="${{logoUrl:this.config.logoUrl,title:this.config.title,color:this.config.color}}"
2067
- ?show-new-chat="${!this.isLiveMode&&this.messages.length>0&&!this.#k}"
2068
- ?show-close="${this.showClose}"
2069
- @mw:new-chat-click="${this.#m}"
2070
- @mw:close-click="${this.#x}">
2071
- </mw-chat-header>
2072
-
2073
- <!-- used by the dashboard to inject content -->
2074
- <div class="absolute inset-x-0 top-20">
2075
- <slot name="banner"> </slot>
2076
- </div>
2077
-
2078
- <!-- drag overlay -->
2079
- ${this.config.enableImageUpload&&this.#n.isDragging&&this.#e.value?.isConnected()?u`
2080
- <div class="bg-opacity-90 absolute inset-0 z-50 flex items-center justify-center bg-white sm:rounded-[30px]">
2081
- <div class="p-8 text-center">
2082
- <lucide-icon name="image-plus" class="mx-auto mb-4 h-12 w-12 text-blue-500"></lucide-icon>
2083
- <p class="mb-2 text-lg font-semibold text-black">Add images</p>
2084
- <p class="text-opacity-80 text-sm text-black">JPEG, PNG, GIF, WebP, SVG, HEIC supported. Max size: 10MB.</p>
2085
- </div>
2086
- </div>
2087
- `:null}
2088
-
2089
- <!-- this structure of 2 divs is required for the browser native stick/scroll to bottom -->
2090
- <div id="scrollable-content" class="mt-6 flex h-full flex-shrink flex-grow flex-col-reverse overflow-auto">
2091
- ${this.config.enableImageUpload&&this.#n.error?u`<mw-info-banner variant="error" text="${this.#n.error}" auto-dismissable></mw-info-banner> `:null}
2092
- ${this.config?.showStillLearningBanner?u`<mw-info-banner variant="info" text="I'm still learning!"></mw-info-banner>`:u`
2093
- <!-- this makes the chat stick to bottom when the banner is hidden -->
2094
- <div class="flex p-1"></div>
2095
- `}
2096
-
2097
- <!-- the padding at the top makes empty room at the top when scrolling and content is hidden behind header -->
2098
- <!-- this is the 2nd (inner) div that will natively stick/scroll to bottom -->
2099
- <div class="${this.messages.length>0?"pt-20":""}">
2100
- ${X(Array.from(e),([i])=>i,([i,s])=>u`
2101
- <div class="my-2 text-center text-xs text-gray-500">${la(new Date(Number(i)),window.navigator.language)}</div>
2102
- ${X(s??[],o=>o.id,(o,c)=>{let a=s[c+1]?.role===o.role,d=(c>0?s[c-1]:void 0)?.role===o.role,p=(s.length>0?s[s.length-1]:void 0)?.id===o.id,y=()=>p&&!d&&!a?"single-current":!d&&!a?"single":!d&&a?"first":p&&d&&!a?"last-current":d&&!a?"last":d&&a?"middle":"single";this.#i=y();let E=this.isLiveMode&&o.role==="user"&&o.id===this.lastMsg?.id?"sent":"",b=(o.content.includes("<request-input-v1>")||!o.content)&&o.parts?.every(x=>"data"in x&&x.tag==="request-input-v1");return u`
2103
- ${o.images?X(o.images,x=>x,x=>u`
2104
- <div data-id="${o.id}" class="${a?"mb-[1px]":"mb-3"} mr-2 ml-[15px] flex-row">
2105
- <mw-chat-image
2106
- src="${x}"
2107
- alt="User uploaded image"
2108
- .side="${o.role==="user"?"right":"left"}"
2109
- position=${this.#i}
2110
- width="300px"></mw-chat-image>
2111
- </div>
2112
- `):null}
2113
- ${(o.content||o.parts)&&!b?u` <div data-id="${o.id}" class="${a?"mb-[1px]":"mb-3"} mx-2 flex-row">
2114
- <mw-chat-message
2115
- .color="${this.config?.color}"
2116
- status="${E}"
2117
- logo="${o.metadata?.avatar||this.config?.logoUrl}"
2118
- side="${o.role}"
2119
- position=${this.#i}
2120
- @click="${this.#l}">
2121
- <div
2122
- class="prose prose-h1:first:mt-0 prose-h2:first:mt-0 prose-h3:first:mt-0 prose-h4:first:mt-0 prose-h1:last:mb-0 prose-h2:last:mb-0 prose-h3:last:mb-0 prose-h4:last:mb-0 prose-h1:mt-5 prose-h2:mt-5 prose-h3:mt-5 prose-h4:mt-5 prose-h1:mb-2 prose-h2:mb-2 prose-h3:mb-2 prose-h4:mb-2 prose-h1:text-xl prose-h1:text-bold prose-h2:text-lg prose-h2:text-bold prose-h3:text-base prose-h3:text-bold prose-h4:text-sm prose-h4:text-bold prose-p:whitespace-pre-wrap break-words text-inherit">
2123
- ${o.content===uu?u`<mw-loading class="-mx-2 block h-8 max-h-[24px] w-8 fill-[${this.config?.color}]"></mw-loading>`:o.parts?X(o.parts,(x,w)=>w,(x,w)=>aa(x,w,o.parts??[],{imagesByProductUrl:o.metadata?.imagesByProductUrl,linksNewTab:this.config?.linksNewTab??!0,searchParams:this.config?.disableUtmInjection?void 0:new URLSearchParams({utm_source:"molin.ai",utm_medium:"chat",utm_campaign:"general"}),messageIsStreaming:o.streaming,color:this.config?.color,apiBaseUrl:Fr(),cdnBaseUrl:ma()})):u`<p>${o.content}</p>`}
2124
- </div>
2125
- </mw-chat-message>
2126
- </div>`:null}
2127
- `})}
2128
- `)}
2129
-
2130
- <!-- show typing indicator if the non-user side is typing -->
2131
- ${["assistant","support"].includes(this.typingIndicator?.role??"")&&this.typingIndicator?.role?u`
2132
- <mw-chat-message class="mx-2 mb-3 block" color="${this.config?.color}" logo="${this.typingIndicator?.metadata?.avatar||this.config?.logoUrl}" side="${this.typingIndicator.role}">
2133
- <div
2134
- class="prose prose-h1:first:mt-0 prose-h2:first:mt-0 prose-h3:first:mt-0 prose-h4:first:mt-0 prose-h1:last:mb-0 prose-h2:last:mb-0 prose-h3:last:mb-0 prose-h4:last:mb-0 prose-h1:mt-5 prose-h2:mt-5 prose-h3:mt-5 prose-h4:mt-5 prose-h1:mb-2 prose-h2:mb-2 prose-h3:mb-2 prose-h4:mb-2 prose-h1:text-xl prose-h1:text-bold prose-h2:text-lg prose-h2:text-bold prose-h3:text-base prose-h3:text-bold prose-h4:text-sm prose-h4:text-bold break-words text-inherit">
2135
- <mw-loading class="-mx-2 block h-8 max-h-[24px] w-8 fill-[${this.config.color}]"></mw-loading>
2136
- </div>
2137
- </mw-chat-message>
2138
- `:null}
2139
- </div>
2140
-
2141
- <mw-chat-background
2142
- class="flex-grow"
2143
- .examples="${this.messages.length>0?[]:this.config.examples}"
2144
- color="${this.config.color}"
2145
- @mw:example-click="${this.#f}"></mw-chat-background>
2146
- </div>
2147
-
2148
- ${this.messages.length===0&&this.config.disclaimerFloating?u`
2149
- <div class="mx-4 mb-2 rounded-xl bg-[#eeedf1] px-3 py-2">
2150
- <mw-disclaimer .text="${this.config.disclaimerFloating}" .color="${this.config.color}"></mw-disclaimer>
2151
- </div>
2152
- `:null}
2153
-
2154
- <div class="m-1.5 flex-shrink-0 flex-grow-0 space-y-2 rounded-3xl bg-[#eeedf1] p-1.5">
2155
- ${this.config.disclaimer&&!this.config.removePoweredBy?u`
2156
- <!-- spacing between input box and disclaimer or bottom -->
2157
- <div class="mb-1.5">
2158
- <mw-disclaimer .text="${this.config.disclaimer}" .color="${this.config.color}"></mw-disclaimer>
2159
- </div>
2160
- `:null}
2161
- ${this.#d.length===0?u`
2162
- <mw-chat-input
2163
- @mw:change="${this.#v}"
2164
- @mw:submit="${this.#y}"
2165
- @mw:cancel="${this.#b}"
2166
- placeholder="${this.config?.input?.placeholder??""}"
2167
- ?disabled="${this.ranOutOfCredits||this.hasQueuedMessages||this.#n.hasPendingImages}"
2168
- ?streaming="${this.isStreaming??!0}"
2169
- ?loading="${this.hasQueuedMessages||this.#n.hasPendingImages}"
2170
- ?enableImageUpload="${this.config?.enableImageUpload&&!this.ranOutOfCredits}"
2171
- color="${this.config?.color??""}"
2172
- .onImageUploadClick="${this.config?.enableImageUpload?this.#n.openImagePicker:void 0}"
2173
- .images="${this.config?.enableImageUpload?this.#n.selectedImages:[]}"
2174
- .onImageDelete="${this.config?.enableImageUpload?this.#n.onImageDelete:void 0}">
2175
- </mw-chat-input>
2176
- `:u`
2177
- <mw-request-input
2178
- .title="${n?.title}"
2179
- .type="${n?.type}"
2180
- .color="${this.config?.color??"#8B5CF6"}"
2181
- @mw-request-input:submit="${this.#g}">
2182
- </mw-request-input>
2183
- `}
2184
- ${this.config.removePoweredBy?this.config.disclaimer?u`
2185
- <!-- spacing between input box and disclaimer or bottom -->
2186
- <div class="mt-1.5">
2187
- <mw-disclaimer .text="${this.config.disclaimer}" .color="${this.config.color}"></mw-disclaimer>
2188
- </div>
2189
- `:null:u`
2190
- <!-- spacing between input box and powered-by or bottom -->
2191
- <div class="h-4">
2192
- <mw-powered-by></mw-powered-by>
2193
- </div>
2194
- `}
2195
- </div>
2196
- </div>
2197
- </div>
2198
- `}#l(e){let n=e.composedPath().find(i=>i instanceof HTMLAnchorElement);if(n){if(e.preventDefault(),this.callbacks.onUserClickedLink?.({widgetId:this.widgetId,url:n.href,conversationId:this.conversationId}),window.self!==window.top){window.open(n.href,"_blank");return}let s=this.config?.linksNewTab?"_blank":"_self";window.open(n.href,n.target||s)}}#f(e){if(this.isStreaming)return;e.preventDefault();let r=e.detail.example;this.#w(r)}#w=Ne({interval:200},async e=>{J(this.#e.value,"widget context is required"),await this.#e.value.enqueueUserInput(e,{xUserData:this.#e.value?.xUserData,xCustomInstructions:this.#e.value?.xCustomInstructions})&&(this.#p?.setValue(""),this.callbacks.onUserSentInput?.({widgetId:this.widgetId,text:e,example:!0,conversationId:this.conversationId}))});#y(e){if(J(this.#e.value,"widget context is required"),e.preventDefault(),this.config?.enableImageUpload&&this.#n.hasPendingImages)return;let r=e.detail;this.#e.value.enqueueUserInput(r,{xUserData:this.#e.value?.xUserData,xCustomInstructions:this.#e.value?.xCustomInstructions}).then(n=>{n&&(this.#p?.setValue(""),this.#n.clearImages(),this.#r.typingStopped(),this.callbacks.onUserSentInput?.({widgetId:this.widgetId,text:r,example:!1,conversationId:this.conversationId}),window.requestAnimationFrame(()=>{this.#p?.focus()}))}).catch(console.warn)}#v(e){this.#r.onInput(e.detail.full)}#b(){J(this.#e.value,"widget context is required"),this.#e.value.sendUserCancel(),this.callbacks.onUserCanceledStreaming?.({widgetId:this.widgetId})}#m(){J(this.#e.value,"widget context is required"),this.#e.value.sendNewChat(),this.reset()}#x(){this.dispatchEvent(new t.CloseClickEvent)}#g(e){J(this.#e.value,"widget context is required");let r=this.#d,n=r[this._currentRequestInputIndex];if(!n){console.warn("no current state found for request input");return}switch(e.detail.type){case"star-rating":{let{rating:s,type:o}=e.detail;this.#t.push({type:o,rating:s,key:n.key,title:n.title});break}case"binary-vote":{let{vote:s,type:o}=e.detail;this.#t.push({type:o,vote:s,key:n.key,title:n.title});break}case"new-conversation-button":{this.#m(),this.requestUpdate();return}default:console.warn("unknown request input type",e.detail);return}this._currentRequestInputIndex+=1;let i=r.filter(s=>s.type==="star-rating"||s.type==="binary-vote").length;this.#t.length>=i&&this.#u(),this.requestUpdate()}async#u(){if(J(this.#e.value,"widget context is required"),this.#t.length===0)return;if(!this.#e.value.lastMsg?.id){console.warn("cannot submit request inputs without message ID");return}await this.#e.value.enqueueUserInput("",{role:"user",expectStreaming:!1,requestInputResponse:this.#t})&&(this.#t=[]),this.requestUpdate()}get#d(){J(this.#e.value,"widget context is required");let e=this.messages.findLast(i=>i.role==="assistant"&&i.parts?.some(s=>"tag"in s&&s.tag==="request-input-v1"&&"data"in s&&s.data.type==="new-conversation-button")),r=this.#e.value.lastMsg;if(e&&r?.id!==e.id){let i=e?.parts?.find(s=>"tag"in s&&s.tag==="request-input-v1"&&"data"in s&&s.data.type==="new-conversation-button");if(i&&"data"in i)return[{title:i.data.title,type:i.data.type,key:i.data.key}]}if(r?.role!=="assistant")return[];let n=r.parts?.filter(i=>"tag"in i&&i.tag==="request-input-v1");return!n||n.length===0?[]:n.map(i=>!("data"in i)||!hu.includes(i.data.type)?null:{title:i.data.title,type:i.data.type,key:i.data.key}).filter(i=>i!==null)}get#k(){if(this.#d.length===0)return!1;let r=this.#d.filter(n=>n.type==="star-rating"||n.type==="binary-vote").length;return this.#t.length<r}get#C(){return this.renderRoot.querySelector("#scrollable-content")}get#p(){return this.renderRoot.querySelector("mw-chat-input")}reloadConfig(){this.#e.value?.reloadConfig(),this.requestUpdate()}sendMessage=Ne({interval:200},async e=>{if(!e?.trim())return console.warn("sendMessage: Message must be a non-empty string"),!1;J(this.#e.value,"Widget context is required");let{value:r}=this.#e,n=await r.enqueueUserInput(e,{xUserData:r.xUserData,xCustomInstructions:r.xCustomInstructions,role:"user",expectStreaming:!0});return n&&this.#p?.setValue(""),n??!1});setInputValue(e){if(!e||typeof e!="string"){console.warn("setInputValue requires a valid string value");return}let r=this.#p;if(!r){console.warn("input element not found, cannot set value");return}r.setValue?r.setValue(e):console.warn("input element does not have setValue method")}focusInput(){window.requestAnimationFrame(()=>{this.#p?.focus()})}reset(){this.#n.clearImages(),this._currentRequestInputIndex=0,this.#t=[],this.#e.value?.reset()}};Rt.CloseClickEvent=class extends CustomEvent{static type="mw:close-click";constructor(e={}){super(Rt.CloseClickEvent.type,{...e})}};customElements.get("mw-chat")||customElements.define("mw-chat",Rt);var Ue=class t extends C(v){static properties={text:{type:String},color:{type:String}};static styles=D`
2199
- .popup-desktop:hover button {
2200
- transition-delay: 0s !important;
2201
- }
2202
-
2203
- .popup-desktop button {
2204
- transition-delay: 1s;
2205
- }
2206
- `;constructor(){super(),this.text="Hello there. How can we help?",this.color="#601feb"}render=()=>u`
2207
- <div class="popup-desktop group relative w-[300px] cursor-pointer rounded-[17px] shadow-2xl select-none">
2208
- <mw-spinning-border .color="${this.color}" .border="${"transparent"}" .radius="${"17px"}">
2209
- <!-- wrapper -->
2210
- <div class="relative z-[2147483647] m-[1px] w-[300px] rounded-2xl bg-white font-sans text-base leading-normal">
2211
- <!-- content -->
2212
- <div class="p-4 text-left text-gray-800" @click="${this.#t}">
2213
- <p>${this.text}</p>
2214
- </div>
2215
- </div>
2216
- </mw-spinning-border>
2217
-
2218
- <!-- close button -->
2219
- <button
2220
- class="bg-opacity-50 absolute -top-8 right-0 inline-flex h-6 w-6 items-center justify-center rounded-full bg-gray-300 pb-[2px] text-center text-gray-700 opacity-0 shadow transition-opacity duration-300 ease-in-out group-hover:opacity-100"
2221
- @click="${this.#e}"
2222
- aria-label="Close">
2223
- ×
2224
- </button>
2225
- </div>
2226
- `;#e(){this.dispatchEvent(new t.CloseEvent)}#t(){this.dispatchEvent(new t.ClickEvent)}};Ue.CloseEvent=class extends CustomEvent{static type="mw:close";constructor(e={}){super(Ue.CloseEvent.type,{...e})}};Ue.ClickEvent=class extends CustomEvent{static type="mw:click";constructor(e={}){super(Ue.ClickEvent.type,{...e})}};customElements.get("mw-popup-desktop")||customElements.define("mw-popup-desktop",Ue);var Pe=class t extends C(v){static properties={title:{type:String},text:{type:String},button:{type:String},color:{type:String}};constructor(){super(),this.title="Chat with Molin AI",this.text="Hello there. How can we help?",this.button="Chat now",this.color="#601feb"}render=()=>u`
2227
- <!-- wrapper -->
2228
- <div class="group relative z-[2147483647] rounded-t-2xl bg-white text-left font-sans text-base text-[16px] leading-normal text-gray-800 shadow-2xl transition-all select-none">
2229
- <!-- close button -->
2230
- <button
2231
- class="bg-opacity-50 absolute top-[28px] right-4 inline-flex h-7 w-7 items-center justify-center rounded-full bg-gray-300 pb-[2px] text-center text-xl shadow-none duration-300 ease-in-out focus:outline-none"
2232
- @click="${this.#e}"
2233
- aria-label="Close">
2234
- ×
2235
- </button>
2236
-
2237
- <!-- content -->
2238
- <div class="p-4 text-gray-800" @click="${this.#t}">
2239
- <h1 class="font-display mr-8 py-2.5 text-left text-lg font-bold">${this.title}</h1>
2240
- <p class="py-2.5 text-left">${this.text}</p>
2241
- <div class="h-4"></div>
2242
- ${this.button&&this.color?u`
2243
- <!-- only visible if button text and color are given -->
2244
- <button class="w-full rounded-full bg-[${this.color}] px-5 py-2.5 text-center text-sm font-medium text-white" type="button">${this.button}</button>
2245
- `:null}
2246
- </div>
2247
-
2248
- <!-- can append any other content -->
2249
- <slot name="footer"></slot>
2250
- </div>
2251
- `;#e(){this.dispatchEvent(new t.CloseEvent)}#t(){this.dispatchEvent(new t.ClickEvent)}};Pe.CloseEvent=class extends CustomEvent{static type="mw:close";constructor(e={}){super(Pe.CloseEvent.type,{...e})}};Pe.ClickEvent=class extends CustomEvent{static type="mw:click";constructor(e={}){super(Pe.ClickEvent.type,{...e})}};customElements.get("mw-popup-mobile")||customElements.define("mw-popup-mobile",Pe);var Vr=class{#e;#t=!1;constructor(e,r){this.#e=r,e.addController(this)}hostConnected(){this.startListening()}hostDisconnected(){this.stopListening()}startListening(){window.addEventListener("click",this.#r),window.addEventListener("keydown",this.#r)}stopListening(){window.removeEventListener("click",this.#r),window.removeEventListener("keydown",this.#r)}#r=()=>{this.#t||(this.#e.userFirstInteracted?.(),this.#t=!0),this.#e.userInteracted?.()}};var du=1440*60*1e3,Nr=class{#e;#t;#r;#n;#i=!1;#s=!1;get showing(){return this.#i}constructor(e,r,n=Date){this.#e=e,this.#t=r,this.#r=n,e.addController(this)}hostDisconnected(){this.abortAutoShowTimer()}show({sound:e}={}){if(this.abortAutoShowTimer(),!this.#i&&(this.#i=!0,this.#e.requestUpdate(),e)){this.#t.playPopupSound();let r=this.#t.getPersistedState();this.#t.setPersistedState({...r,playedSoundOnce:!0})}}#o(){let e=this.#t.getPersistedState(),r=!!e?.playedSoundOnce;e?.userDismissedAt&&this.#r.now()-e.userDismissedAt<du||this.show({sound:!r})}hide(){this.#s=!0,this.abortAutoShowTimer(),this.#i=!1,this.#e.requestUpdate()}abortAutoShowTimer(){clearTimeout(this.#n)}onCloseClick(){let e=this.#t.getPersistedState();this.#t.setPersistedState({...e,userDismissedAt:this.#r.now()}),this.hide()}onContentClick(){let e=this.#t.getPersistedState();this.#t.setPersistedState({...e,userDismissedAt:this.#r.now()}),this.hide()}userFirstInteracted(){this.abortAutoShowTimer(),this.#s||(this.#n=setTimeout(()=>this.#o(),this.#t.getDelayMs()))}};var Bt=class t extends C(v){static properties={positionClasses:{type:String,attribute:"position"},delayMs:{type:Number,attribute:"delay"},soundUrl:{type:String,attribute:"sound"},content:{type:Object}};#e=new Nr(this,{getDelayMs:()=>this.delayMs,playPopupSound:()=>{this.soundUrl&&new Audio(this.soundUrl).play().then(()=>{}).catch(e=>{console.error("Error playing audio:",e,{})})},setPersistedState:e=>{e?localStorage.setItem("_molin_popup",JSON.stringify(e)):localStorage.removeItem("_molin_popup")},getPersistedState:()=>{let e=localStorage.getItem("_molin_popup");try{return e?JSON.parse(e):null}catch{return null}}});#t=new Vr(this,this.#e);constructor(){super(),this.positionClasses="",this.delayMs=0,this.soundUrl="",this.content={desktop:{text:"",color:""},mobile:{title:"",text:"",button:"",color:"",poweredBy:!0}}}render(){let e=this.#e.showing?"visible opacity-100 translate-y-0":"invisible opacity-0 translate-y-3",r=this.content;return u`
2252
- <!-- mobile shadow backdrop -->
2253
- <div @click="${this.#r}" class="${e} fixed inset-0 z-[2147483647] bg-black/50 transition-[opacity,visibility] sm:hidden"></div>
2254
-
2255
- <!-- mobile overlay -->
2256
- <div class="${e} fixed right-0 bottom-0 left-0 z-[2147483647] sm:hidden">
2257
- <mw-popup-mobile title="${r.mobile.title}" text="${r.mobile.text}" button="${r.mobile.button}" color="${r.mobile.color}" @mw:click="${this.#n}" @mw:close="${this.#r}">
2258
- ${r.mobile.poweredBy?u`<mw-powered-by class="block p-4" slot="footer"></mw-powered-by>`:null}
2259
- </mw-popup-mobile>
2260
- </div>
2261
-
2262
- <!-- desktop -->
2263
- <div class="${e} ${this.positionClasses} fixed z-[2147483647] transition-[opacity,translate,visibility] max-sm:hidden">
2264
- <mw-popup-desktop color="${r.desktop.color}" text="${r.desktop.text}" @mw:click="${this.#n}" @mw:close="${this.#r}"></mw-popup-desktop>
2265
- </div>
2266
- `}#r(){this.#e.onCloseClick()}#n(){this.dispatchEvent(new t.ClickEvent),this.#e.onContentClick()}hide(){this.#e.hide()}};Bt.ClickEvent=class extends CustomEvent{static type="mw:click";constructor(e={}){super(Bt.ClickEvent.type,{...e})}};customElements.get("mw-popup")||customElements.define("mw-popup",Bt);var Ai=class extends C(v){static properties={color:{type:String,attribute:"color"},position:{type:String,attribute:"position"}};constructor(){super(),this.color="sky-500",this.position="top-right"}render=()=>u`
2267
- <span class="relative inline-flex">
2268
- <slot></slot>
2269
- <span class="${this.#e} pointer-events-none absolute z-10 flex h-3 w-3">
2270
- <span class="bg-${this.color} absolute inline-flex h-3 w-3 animate-ping rounded-full opacity-75"></span>
2271
- <span class="bg-${this.color} relative inline-flex h-3 w-3 rounded-full"></span>
2272
- </span>
2273
- </span>
2274
- `;get#e(){switch(this.position){case"top-left":return"top-0 left-0 -mt-1 -ml-1";case"top-right":return"top-0 right-0 -mt-1 -mr-1";case"bottom-left":return"bottom-0 left-0 -mb-1 -ml-1";case"bottom-right":return"bottom-0 right-0 -mb-1 -mr-1";default:throw new Error(`Invalid position: ${this.position}`)}}};customElements.get("mw-pulse-dot")||customElements.define("mw-pulse-dot",Ai);var Ti=class extends C(v){static properties={positionClasses:{type:String,attribute:"position"},text:{type:String}};constructor(){super(),this.positionClasses="",this.text="Try it out"}render=()=>u`
2275
- <div class="${this.positionClasses} fixed right-6 bottom-24 z-10 flex animate-bounce flex-col items-center justify-center font-sans text-base">
2276
- <p class="mb-2 -translate-x-4 -rotate-12 transform text-lg leading-normal font-bold text-gray-800">${this.text}</p>
2277
-
2278
- <!-- arrow -->
2279
- <svg class="h-14 w-14" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 55 58" fill="none">
2280
- <path
2281
- d="M1.41089 1.17749C13.4657 11.874 23.3966 26.992 30.4581 41.4117C31.9751 44.5093 33.1523 47.7224 34.4136 50.9242C34.6288 51.4705 35.4719 52.2988 34.8747 51.5309C33.1064 49.2574 28.9356 48.4966 26.3813 47.9151C23.973 47.3669 17.1432 44.725 19.1984 46.0951C22.9606 48.6033 26.6842 51.3163 30.5552 53.7391C32.8502 55.1756 34.9449 57.9465 37.0101 55.8018C41.8322 50.7943 47.8486 46.2228 53.4629 42.1397"
2282
- stroke="#303132"
2283
- stroke-width="2"
2284
- stroke-linecap="round"></path>
2285
- </svg>
2286
- </div>
2287
- `};customElements.get("mw-try-it-out")||customElements.define("mw-try-it-out",Ti);var Hr=class{#e;#t;#r;#n;isLoading=!1;data=void 0;constructor(e,r,n){this.#e=e,this.#t=r,this.#r=n,e.addController(this)}fetch(){if(this.isLoading)return;this.#n?.abort();let e=new AbortController;this.#n=e,this.isLoading=!0,this.data=void 0,this.#e.requestUpdate(),(async()=>{let r=this.#i();return r.signal?.addEventListener("abort",()=>e.abort(),{signal:e.signal}),fetch(r,{signal:e.signal})})().then(async r=>{if(!r.ok)throw new Error(`${r.statusText}: ${await r.text()}`);this.isLoading=!1,this.data=typeof this.#r?.transform=="function"?await this.#r.transform(r):r,this.#e.requestUpdate()}).catch(r=>{this.#r?.onError?.(r),this.isLoading=!1,this.data=void 0,this.#e.requestUpdate()}).finally(()=>{e.abort()})}#i(){let e=this.#t;if(typeof e=="function"&&(e=e()),!e)throw new Error("missing request");return new Request(e)}hostConnected(){this.isLoading||this.#r?.fetchWhenConnected&&this.fetch()}hostDisconnected(){this.#n?.abort(),this.#n=void 0}};var Li=class{#e;#t;#r;#n;get data(){return this.#n||this.#r?.data}constructor(e,r){this.#e=e,this.#t=r,e.addController(this)}hostConnected(){if(this.#r||this.#n)return;let e=ga();e&&e.widgetId===this.#e.widgetId?this.#n=e.config:this.#r=new Hr(this.#e,()=>{if(this.#e.cdn&&this.#e.widgetId)return`${this.#e.cdn}/config?w=${this.#e.widgetId}`;throw new Error("missing cdn or widgetId")},{fetchWhenConnected:!0,transform:async r=>{let n=await r.json();return n&&!e&&window.__INIT_MOLIN_SHOP_AI({cdn:this.#e.cdn,widgetId:this.#e.widgetId,config:n}),n},onError:this.#t?.onError})}},ut=(t,e)=>new Li(t,{onError:e?.onError||console.error,...e});function be(){return window.molinSettings&&typeof window.molinSettings=="object"?window.molinSettings:null}var Re=class t extends C(v){static styles=D`
2288
- :host {
2289
- all: initial; /* reset all properties that can pierce the shadow DOM */
2290
- }
2291
- `;static properties={cdn:{type:String},widgetId:{type:String,attribute:"widget"},showClose:{type:Boolean,attribute:"show-close"},xUserData:{type:Object,attribute:!1},xCustomInstructions:{type:String,attribute:!1}};#e;get config(){return this.#t||this.#e.data}#t;#r={onError:e=>{alert(e.error),console.error(e.widgetId,e.error),A("ShopAssistant: error",{...e},{immediate:!0})},onNewMessageStartedStreaming:e=>{A("ShopAssistant: user received bot message (streaming started)",e)},onMessageEndedStreaming:e=>{A("ShopAssistant: user received bot message (streaming ended)",e)},onUserCanceledStreaming:e=>{A("ShopAssistant: user canceled streaming",e)},onUserClickedLink:e=>{A("ShopAssistant: user clicked link",e)},onUserSentInput:e=>{A("ShopAssistant: user sent input",e)}};constructor(){super(),this.cdn="https://widget.molin.ai",this.widgetId="",this.showClose=!1,this.xUserData=be()?.userData,this.xCustomInstructions=be()?.customInstructions,this.#e=ut(this)}render(){return this.config?u`
2292
- <mw-context-widget
2293
- .widgetId="${this.widgetId}"
2294
- .config="${this.config}"
2295
- .callbacks="${this.#r}"
2296
- .xUserData="${this.xUserData}"
2297
- .xCustomInstructions="${this.xCustomInstructions}"
2298
- autoConnect>
2299
- <!-- embed our chat component forwarding props -->
2300
- <mw-chat ?show-close="${this.showClose}" @mw:close-click="${this.#n}">
2301
- <slot name="banner" slot="banner"></slot>
2302
- </mw-chat>
2303
- </mw-context-widget>
2304
- `:null}#n(){this.dispatchEvent(new t.CloseClickEvent)}injectConfig(e){this.#t=e,this.requestUpdate()}reloadConfig(){this.#i?.reloadConfig()}reset(){this.xUserData={},this.xCustomInstructions="",this.#i?.reset(),this.requestUpdate()}get#i(){return this.renderRoot.querySelector("mw-chat")}get conversationId(){return this.#i?.conversationId??""}get messages(){return this.#i?.messages??[]}};customElements.get("molin-shop-ai-chat")||customElements.define("molin-shop-ai-chat",Re);Re.CloseClickEvent=class extends CustomEvent{static type="mw:close-click";constructor(e={}){super(Re.CloseClickEvent.type,{...e})}};var ji=class{hidden;constructor({hidden:e=!1}){this.hidden=e}setUserData(e){for(let r of document.querySelectorAll("molin-shop-ai"))e?r.setAttribute("user-data",JSON.stringify(e)):r.removeAttribute("user-data");for(let r of document.querySelectorAll("molin-shop-ai-chat"))e?r.setAttribute("user-data",JSON.stringify(e)):r.removeAttribute("user-data")}setCustomInstructions(e){for(let r of document.querySelectorAll("molin-shop-ai"))e?r.setAttribute("custom-instructions",e):r.removeAttribute("custom-instructions");for(let r of document.querySelectorAll("molin-shop-ai-chat"))e?r.setAttribute("custom-instructions",e):r.removeAttribute("custom-instructions")}showLauncher(){for(let e of document.querySelectorAll("molin-shop-ai"))e instanceof fe&&e.showLauncher()}hideLauncher(){for(let e of document.querySelectorAll("molin-shop-ai"))e instanceof fe&&e.hideLauncher()}openChat(e){let{message:r,autoSend:n}=e||{};for(let i of document.querySelectorAll("molin-shop-ai"))i instanceof fe&&i.openChat({message:r,autoSend:n})}closeChat(){for(let e of document.querySelectorAll("molin-shop-ai"))e instanceof fe&&e.closeChat()}reset(){Z.resetWidgetData();for(let e of document.querySelectorAll("molin-shop-ai"))e instanceof fe&&e.reset();for(let e of document.querySelectorAll("molin-shop-ai-chat"))e instanceof Re&&e.reset()}};function wa({hidden:t}){let e=new ji({hidden:t});return window.Molin=e,e}function zr(){let t=window.Molin;if(!t)throw new Error("window.Molin global not initialized");return t}window.__INIT_MOLIN_SHOP_AI=function(e){pu(e);let r=be(),n=typeof r?.hidden=="boolean"?r.hidden:window.self!==window.top;if(wa({hidden:n}),e.auto){let i=document.createElement("molin-shop-ai");i.setAttribute("cdn",e.cdn),i.setAttribute("widget",e.widgetId),document.body.appendChild(i)}};function pu(t){window.__INIT_MOLIN_SHOP_AI_OPTIONS=t}function ga(){return window.__INIT_MOLIN_SHOP_AI_OPTIONS}var Di=class extends C(v){static styles=D`
2305
- :host {
2306
- all: initial; /* reset all properties that can pierce the shadow DOM */
2307
- }
2308
- `;static properties={cdn:{type:String},widgetId:{type:String,attribute:"widget"},state:{type:String}};constructor(){super(),this.cdn="https://widget.molin.ai",this.widgetId="",this.state="open"}#e=ut(this);get config(){return this.#e.data}render(){return this.config?u`
2309
- <!-- embed our bubble component forwarding props -->
2310
- <!-- these props are never internally updated by mw-bubble so we pass them down only one way -->
2311
- <mw-bubble
2312
- state="${this.state}"
2313
- .color="${this.config?.bubble?.color||this.config?.color}"
2314
- .bubbleStyle="${this.config?.bubble?.style}"
2315
- .src="${this.config?.bubble?.bubbleUrl}"
2316
- width="${V(this.config?.bubble?.size?.width)}"
2317
- height="${V(this.config?.bubble?.size?.height)}"></mw-bubble>
2318
- `:null}};customElements.get("molin-shop-ai-launcher")||customElements.define("molin-shop-ai-launcher",Di);var J5="navigator"in globalThis&&/Mobi|Android|iPhone/i.test(navigator.userAgent),K5="navigator"in globalThis&&"share"in navigator,fu=Object.freeze({sm:640,md:768,lg:1024,xl:1280,"2xl":1536});function mu(t){if(typeof window>"u")return!1;let e=fu[t];return typeof e!="number"?(console.warn(`Invalid breakpoint: ${t}`),!1):window.matchMedia(`(min-width: ${e}px)`).matches}function Oi(){return mu("sm")}var Wr=class{#e;#t;#r;#n;#i=!1;constructor(e,r,n,i=window.history){this.#e=e,this.#t=r,this.#r=n,this.#n=i,e.addController(this)}hostConnected(){this.#s();let e=this.#n.pushState;this.#n.pushState=(...r)=>{if(e.call(this.#n,...r),!this.#i)try{let n=new URL(r[2],window.location.origin);this.#t.test(n.pathname)&&this.#r.navigated()}catch{}}}hostDisconnected(){this.#i=!0}#s=()=>{this.#t.test(window.location.pathname)&&this.#r.navigated()}};function ya({minMs:t,maxMs:e}){return Math.random()*(e-t)+t}function Gr(t,e=""){return Object.entries(t).filter(([r,n])=>n).map(([r,n])=>`${e}${r}-[${n}]`).join(" ")}function va(t,e={}){return[Gr(t),Gr(e,"max-sm:")].join(" ")}function ba(t){return Gr(t)}function xa(t){return Object.entries(t).filter(([e,r])=>r).filter(([e])=>e==="left"||e==="right").map(([e,r])=>{let n=`sm:${e}-[${r}]`;return e==="left"&&(n+=" sm:right-auto"),e==="right"&&(n+=" sm:left-auto"),n}).join(" ")}function ka(t){let e=Gr(t),n=`sm:bottom-[${t.bottom?`calc(${t.bottom}+72px)`:"72px"}]`;return[e,n].filter(Boolean).join(" ")}var Ui=class{#e=0;#t=!1;#r;#n;constructor(e,r,{threshold:n=5}={}){this.#r=r,this.#n=n,e.addController(this)}hostConnected(){this.#e=window.scrollY,window.addEventListener("scroll",this.#i,{passive:!0})}hostDisconnected(){window.removeEventListener("scroll",this.#i)}#i=()=>{this.#t||(requestAnimationFrame(this.#s),this.#t=!0)};#s=()=>{let e=window.scrollY,r=e-this.#e;if(Math.abs(r)>=this.#n){let n=r>0?"down":"up";this.#r({scrollY:e,direction:n,deltaY:Math.abs(r)}),this.#e=e}this.#t=!1}};function Ca(t,e,r){return new Ui(t,e,r)}var fe=class extends C(v){static styles=D`
2319
- :host {
2320
- all: initial; /* reset all properties that can pierce the shadow DOM */
2321
- }
2322
- `;static properties={cdn:{type:String},widgetId:{type:String,attribute:"widget"},xUserData:{type:Object,attribute:!1},xCustomInstructions:{type:String,attribute:!1},_floatingInputVisible:{type:Boolean,state:!0},_dialogShown:{type:Boolean,state:!0}};constructor(){super(),this.cdn="https://widget.molin.ai",this.widgetId="",this._floatingInputVisible=!0,this._dialogShown=!1,this.xUserData=be()?.userData,this.xCustomInstructions=be()?.customInstructions}#e=ut(this);#t=Ca(this,e=>{this.#a&&!this._dialogShown&&(e.direction==="down"?this._floatingInputVisible=!1:e.direction==="up"&&(this._floatingInputVisible=!0),this.requestUpdate())},{threshold:20});get config(){return this.#r||this.#e.data}#r;#n=new Wr(this,/.*/i,{navigated:()=>{if(this.requestUpdate(),!this.widgetId){console.warn("No widgetId set, cannot track page view");return}let e=this.#l?.conversationId,r=Je.restore(this.widgetId)?.conversationId,n=e||r;n&&A("ShopAssistant: pageview",{widgetId:this.widgetId,conversationId:n,url:document.location.href,title:document.title,hidden:this.config?this.config.hidden||!1:void 0,shouldHideForCurrentUrl:this.#h})}});#i=!1;#s={onError:e=>{alert(e.error),console.error(e.widgetId,e.error),A("ShopAssistant: error",{...e},{immediate:!0})},onNewMessageStartedStreaming:e=>{A("ShopAssistant: user received bot message (streaming started)",e)},onMessageEndedStreaming:e=>{A("ShopAssistant: user received bot message (streaming ended)",e)},onUserCanceledStreaming:e=>{A("ShopAssistant: user canceled streaming",e)},onUserClickedLink:e=>{A("ShopAssistant: user clicked link",e)},onUserSentInput:e=>{A("ShopAssistant: user sent input",e)},onWaitGameQuestionAnswered:e=>{A("ShopAssistant: wait game question answered",e)},onWaitGameCompleted:e=>{A("ShopAssistant: wait game completed",e)},onWaitGameGuessValidated:e=>{A("ShopAssistant: wait game guess validated",e)}};get#o(){return typeof this.config?.bubble?.zIndex=="number"?this.config.bubble.zIndex:2147483647}get#a(){return this.config?.floatingAskAI?.enabled||!0}get#h(){if(!this.config?.hideUrls||!Array.isArray(this.config.hideUrls))return!1;let e=window.location.href,r=window.location.pathname;return this.config.hideUrls.some(n=>{if(!n||typeof n!="string")return!1;let i=n.endsWith("*"),s=i?n.slice(0,-1):n;return n.startsWith("http")?i?e.startsWith(s):e===s:i?r.startsWith(s):r===s})}render(){if(!this.config)return null;let e=va(this.config.bubble.position,this.config.bubble.mobilePosition),r=ba(this.config.bubble.position),n=xa(this.config.bubble.position),i=ka(this.config.bubble.position);return this.config.hidden||zr().hidden||this.#h?null:u`
2323
- <mw-context-widget
2324
- .widgetId="${this.widgetId}"
2325
- .config="${this.config}"
2326
- .callbacks="${this.#s}"
2327
- .xUserData="${this.xUserData}"
2328
- .xCustomInstructions="${this.xCustomInstructions}"
2329
- .autoConnect="${this.#i}">
2330
- <mw-bubble
2331
- class="${e} ${this._dialogShown?"opacity-0":"opacity-100"} fixed z-[${this.#o}] transition-opacity"
2332
- @click="${this.#y}"
2333
- state="${this._dialogShown?"close":"open"}"
2334
- .color="${this.config?.bubble?.color||this.config?.color}"
2335
- .bubbleStyle="${this.config?.bubble?.style}"
2336
- .src="${this.config?.bubble?.bubbleUrl}"
2337
- width="${V(this.config?.bubble?.size?.width)}"
2338
- height="${V(this.config?.bubble?.size?.height)}"></mw-bubble>
2339
-
2340
- <!-- only load the component if enabled on any platform -->
2341
- ${this.isPopupEnabled?u`
2342
- <mw-popup
2343
- position="${i}"
2344
- delay="${this.config.popup?.delayMs||ya({minMs:2e3,maxMs:5e3})}"
2345
- sound="${this.config.popup?.muteSounds?"":this.config.popup?.soundUrl||""}"
2346
- .content="${{desktop:{text:this.config.popup?.text||"Hello there. How can we help?",color:this.config?.bubble?.color||this.config.color},mobile:{title:this.config.popup?.mobileTitleText||`Chat with ${this.config.title}`,text:this.config.popup?.text||"Hello there. How can we help?",button:this.config.popup?.mobileButtonText||`Chat with ${this.config.title}`,color:this.config.color,poweredBy:!this.config.removePoweredBy}}}"
2347
- @mw:click="${this.#w}"></mw-popup>
2348
- `:null}
2349
-
2350
- <!-- show "Try it out" if enabled (even if the chat window is showing) -->
2351
- ${this.config?.tryItOut?.mobileEnabled||this.config?.tryItOut?.desktopEnabled?u`<mw-try-it-out
2352
- class="${this.config?.tryItOut?.mobileEnabled?"visible":"invisible"} ${this.config?.tryItOut?.desktopEnabled?"sm:visible":"sm:invisible"}"
2353
- position="${r}"
2354
- text="${this.config.tryItOut?.text||""}"></mw-try-it-out>`:null}
2355
-
2356
- <!-- On first render, do not render the dialog, so it does not connect to backend. Once it's rendered once, it's never removed from the DOM. -->
2357
- <div
2358
- class="${this._dialogShown?"visible opacity-100 translate-y-0":"invisible opacity-0 translate-y-3"} ${n} fixed inset-0 z-[2147483647] bg-white font-sans text-[16px] leading-normal text-gray-800 shadow-2xl transition-all sm:top-auto sm:bottom-[1.5rem] sm:h-[92%] sm:max-h-[800px] sm:w-[calc(100dvh*0.50)] sm:max-w-[400px] sm:min-w-[300px] sm:rounded-[36px] 2xl:max-w-[420px]">
2359
- <mw-chat ?show-close="${!0}" @mw:close-click="${this.#v}">
2360
- <slot name="banner" slot="banner"></slot>
2361
- </mw-chat>
2362
- </div>
2363
-
2364
- <!-- Floating input only visible when enabled, in center, on desktop only -->
2365
- ${this.config?.floatingAskAI?.enabled&&this.#a?u`
2366
- <mw-floating-ask-ai
2367
- ?dark="${this.config?.floatingAskAI?.darkMode}"
2368
- .color="${this.config.color||this.config?.bubble?.color}"
2369
- placeholder="${V(this.config?.floatingAskAI?.placeholder)}"
2370
- class="${!this._dialogShown&&this._floatingInputVisible?"opacity-100 translate-y-0":"opacity-0 translate-y-full"} fixed left-1/2 z-[${this.#o}] hidden -translate-x-1/2 transition-all duration-300 ease-in-out max-md:hidden sm:block"
2371
- style="bottom: ${this.config.bubble.position.bottom||"1.5rem"}"
2372
- @mw-floating-ask-ai:submit="${this.#b}"></mw-floating-ask-ai>
2373
- `:null}
2374
- </mw-context-widget>
2375
- `}get isPopupEnabled(){return Oi()?!!this.config?.popup?.desktopEnabled:!!this.config?.popup?.mobileEnabled}updated(){this._dialogShown&&this.#c?.hide(),this._dialogShown&&setTimeout(()=>{this.#l?.focusInput()},0)}firstUpdated(){Oi()&&Z.molin_widget_open_state?.isOpen&&!this._dialogShown&&(this._dialogShown=!0,this.#i=!0,this.requestUpdate())}get#c(){return this.renderRoot.querySelector("mw-popup")}get#l(){return this.renderRoot.querySelector("mw-chat")}get#f(){return this.renderRoot.querySelector("mw-context-widget")}#w(){this._dialogShown=!0,this.#i=!0,this.requestUpdate(),this.#u(!0),A("ShopAssistant: user toggled window",{widgetId:this.widgetId,source:"popup-click",state:this._dialogShown?"open":"close"})}#y(){this._dialogShown=!this._dialogShown,this.#i=!0,this.requestUpdate(),this.#u(this._dialogShown),this.#c?.hide(),A("ShopAssistant: user toggled window",{widgetId:this.widgetId,source:"bubble-toggle",state:this._dialogShown?"open":"close"})}#v(){this._dialogShown=!1,this._floatingInputVisible=!0,this.requestUpdate(),this.#u(!1),A("ShopAssistant: user toggled window",{widgetId:this.widgetId,source:"top-right-close-button",state:this._dialogShown?"open":"close"})}#b=e=>{let r=e.detail.text,n=this.#f;n&&typeof n.connect=="function"&&n.connect(),this._dialogShown=!0,this.#i=!0,this.requestUpdate(),this.#u(!0),setTimeout(()=>{this.#g(r),this.#x(r).catch(console.warn)},100),A("ShopAssistant: user sent input",{widgetId:this.widgetId,text:r,example:!1,conversationId:this.#l?.conversationId||"",source:"ask-ai"})};#m=Ne({interval:200},({message:e,autoSend:r=!1}={})=>{if(!e)return;this.#g(e);let n=this.#l?.isLiveMode;n||this.reset(),r&&!n&&this.#x(e).catch(console.warn)});openChat(e){let{message:r,autoSend:n}=e||{};if(this._dialogShown){this.#m({message:r,autoSend:n});return}let i=this.#f;i&&typeof i.connect=="function"&&i.connect(),this._dialogShown=!0,this.#i=!0,this.requestUpdate(),this.#u(!0),this.#c?.hide(),setTimeout(()=>{this.#m({message:r,autoSend:n})},100),A("ShopAssistant: user toggled window",{widgetId:this.widgetId,source:"programmatic-method",state:this._dialogShown?"open":"close"})}closeChat(){this._dialogShown&&(this._dialogShown=!1,this._floatingInputVisible=!0,this.requestUpdate(),this.#u(!1),this.#c?.hide(),A("ShopAssistant: user toggled window",{widgetId:this.widgetId,source:"programmatic-method",state:this._dialogShown?"open":"close"}))}showLauncher(){let e=zr();e.hidden=!1,this.requestUpdate(),A("ShopAssistant: called show launcher",{widgetId:this.widgetId,source:"programmatic-method"})}hideLauncher(){let e=zr();e.hidden=!0,this.requestUpdate(),A("ShopAssistant: called hide launcher",{widgetId:this.widgetId,source:"programmatic-method"})}injectConfig(e){this.#r=e,this.requestUpdate()}reset(){this.xUserData={},this.xCustomInstructions="",this.#l?.reset(),this.requestUpdate()}async#x(e){let r=this.#l;if(!r){console.warn("Chat element not found, cannot send message");return}r.sendMessage?await r.sendMessage(e):console.warn("Chat element does not have sendMessage method")}#g(e){let r=this.#l;if(!r){console.warn("Chat element not found, cannot set input value");return}r.setInputValue?r.setInputValue(e):console.warn("Chat element does not have setInputValue method")}#u(e){Z.molin_widget_open_state={isOpen:e}}};customElements.get("molin-shop-ai")||customElements.define("molin-shop-ai",fe);export{fe as MolinShopAI};
2376
- /*! Bundled license information:
2377
-
2378
- @lit/reactive-element/css-tag.js:
2379
- (**
2380
- * @license
2381
- * Copyright 2019 Google LLC
2382
- * SPDX-License-Identifier: BSD-3-Clause
2383
- *)
2384
-
2385
- @lit/reactive-element/reactive-element.js:
2386
- lit-html/lit-html.js:
2387
- lit-element/lit-element.js:
2388
- lit-html/directive.js:
2389
- lit-html/directives/repeat.js:
2390
- lit-html/directives/unsafe-html.js:
2391
- (**
2392
- * @license
2393
- * Copyright 2017 Google LLC
2394
- * SPDX-License-Identifier: BSD-3-Clause
2395
- *)
2396
-
2397
- lit-html/is-server.js:
2398
- (**
2399
- * @license
2400
- * Copyright 2022 Google LLC
2401
- * SPDX-License-Identifier: BSD-3-Clause
2402
- *)
2403
-
2404
- lit-html/directive-helpers.js:
2405
- (**
2406
- * @license
2407
- * Copyright 2020 Google LLC
2408
- * SPDX-License-Identifier: BSD-3-Clause
2409
- *)
2410
-
2411
- lit-html/directives/if-defined.js:
2412
- (**
2413
- * @license
2414
- * Copyright 2018 Google LLC
2415
- * SPDX-License-Identifier: BSD-3-Clause
2416
- *)
2417
-
2418
- lit-html/directives/choose.js:
2419
- (**
2420
- * @license
2421
- * Copyright 2021 Google LLC
2422
- * SPDX-License-Identifier: BSD-3-Clause
2423
- *)
2424
- */