@molin.ai/shop-ai 0.9.44 → 0.9.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/molin-shop-ai.min.js +492 -304
- package/package.json +1 -1
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDescriptor;var Za=Object.getOwnPropertyNames;var Ja=Object.getPrototypeOf,Ka=Object.prototype.hasOwnProperty;var Ne=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Ya=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Za(e))!Ka.call(t,i)&&i!==r&&Ji(t,i,{get:()=>e[i],enumerable:!(n=Ga(e,i))||n.enumerable});return t};var sn=(t,e,r)=>(r=t!=null?Wa(Ja(t)):{},Ya(e||!t||!t.__esModule?Ji(r,"default",{value:t,enumerable:!0}):r,t));var Tn=Ne(ie=>{"use strict";Object.defineProperty(ie,"__esModule",{value:!0});ie.parseCookie=_s;ie.parse=_s;ie.stringifyCookie=$l;ie.stringifySetCookie=lr;ie.serialize=lr;ie.parseSetCookie=_l;ie.stringifySetCookie=lr;ie.serialize=lr;var Es=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,$s=/^[\u0021-\u003A\u003C-\u007E]*$/,xl=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,kl=/^[\u0020-\u003A\u003D-\u007E]*$/,Cl=/^-?\d+$/,Sl=Object.prototype.toString,El=(()=>{let t=function(){};return t.prototype=Object.create(null),t})();function _s(t,e){let r=new El,n=t.length;if(n<2)return r;let i=e?.decode||Ms,s=0;do{let o=An(t,s,n);if(o===-1)break;let a=In(t,s,n);if(o>a){s=t.lastIndexOf(";",o-1)+1;continue}let l=we(t,s,o);r[l]===void 0&&(r[l]=i(we(t,o+1,a))),s=a+1}while(s<n);return r}function $l(t,e){let r=e?.encode||encodeURIComponent,n=[];for(let i of Object.keys(t)){let s=t[i];if(s===void 0)continue;if(!Es.test(i))throw new TypeError(`cookie name is invalid: ${i}`);let o=r(s);if(!$s.test(o))throw new TypeError(`cookie val is invalid: ${s}`);n.push(`${i}=${o}`)}return n.join("; ")}function lr(t,e,r){let n=typeof t=="object"?t:{...r,name:t,value:String(e)},s=(typeof e=="object"?e:r)?.encode||encodeURIComponent;if(!Es.test(n.name))throw new TypeError(`argument name is invalid: ${n.name}`);let o=n.value?s(n.value):"";if(!$s.test(o))throw new TypeError(`argument val is invalid: ${n.value}`);let a=n.name+"="+o;if(n.maxAge!==void 0){if(!Number.isInteger(n.maxAge))throw new TypeError(`option maxAge is invalid: ${n.maxAge}`);a+="; Max-Age="+n.maxAge}if(n.domain){if(!xl.test(n.domain))throw new TypeError(`option domain is invalid: ${n.domain}`);a+="; Domain="+n.domain}if(n.path){if(!kl.test(n.path))throw new TypeError(`option path is invalid: ${n.path}`);a+="; Path="+n.path}if(n.expires){if(!Ml(n.expires)||!Number.isFinite(n.expires.valueOf()))throw new TypeError(`option expires is invalid: ${n.expires}`);a+="; Expires="+n.expires.toUTCString()}if(n.httpOnly&&(a+="; HttpOnly"),n.secure&&(a+="; Secure"),n.partitioned&&(a+="; Partitioned"),n.priority)switch(typeof n.priority=="string"?n.priority.toLowerCase():void 0){case"low":a+="; Priority=Low";break;case"medium":a+="; Priority=Medium";break;case"high":a+="; Priority=High";break;default:throw new TypeError(`option priority is invalid: ${n.priority}`)}if(n.sameSite)switch(typeof n.sameSite=="string"?n.sameSite.toLowerCase():n.sameSite){case!0:case"strict":a+="; SameSite=Strict";break;case"lax":a+="; SameSite=Lax";break;case"none":a+="; SameSite=None";break;default:throw new TypeError(`option sameSite is invalid: ${n.sameSite}`)}return a}function _l(t,e){let r=e?.decode||Ms,n=t.length,i=In(t,0,n),s=An(t,0,i),o=s===-1?{name:"",value:r(we(t,0,i))}:{name:we(t,0,s),value:r(we(t,s+1,i))},a=i+1;for(;a<n;){let l=In(t,a,n),c=An(t,a,l),u=c===-1?we(t,a,l):we(t,a,c),h=c===-1?void 0:we(t,c+1,l);switch(u.toLowerCase()){case"httponly":o.httpOnly=!0;break;case"secure":o.secure=!0;break;case"partitioned":o.partitioned=!0;break;case"domain":o.domain=h;break;case"path":o.path=h;break;case"max-age":h&&Cl.test(h)&&(o.maxAge=Number(h));break;case"expires":if(!h)break;let p=new Date(h);Number.isFinite(p.valueOf())&&(o.expires=p);break;case"priority":if(!h)break;let g=h.toLowerCase();(g==="low"||g==="medium"||g==="high")&&(o.priority=g);break;case"samesite":if(!h)break;let f=h.toLowerCase();(f==="lax"||f==="strict"||f==="none")&&(o.sameSite=f);break}a=l+1}return o}function In(t,e,r){let n=t.indexOf(";",e);return n===-1?r:n}function An(t,e,r){let n=t.indexOf("=",e);return n<r?n:-1}function we(t,e,r){let n=e,i=r;do{let s=t.charCodeAt(n);if(s!==32&&s!==9)break}while(++n<i);for(;i>n;){let s=t.charCodeAt(i-1);if(s!==32&&s!==9)break;i--}return t.slice(n,i)}function Ms(t){if(t.indexOf("%")===-1)return t;try{return decodeURIComponent(t)}catch{return t}}function Ml(t){return Sl.call(t)==="[object Date]"}});var Uo=Ne(Ue=>{"use strict";var $c=Ue&&Ue.__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 a(u){try{c(n.next(u))}catch(h){o(h)}}function l(u){try{c(n.throw(u))}catch(h){o(h)}}function c(u){u.done?s(u.value):i(u.value).then(a,l)}c((n=n.apply(t,e||[])).next())})},_c=Ue&&Ue.__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=a(0),o.throw=a(1),o.return=a(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(c){return function(u){return l([c,u])}}function l(c){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(r=0)),r;)try{if(n=1,i&&(s=c[0]&2?i.return:c[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,c[1])).done)return s;switch(i=0,s&&(c=[c[0]&2,s.value]),c[0]){case 0:case 1:s=c;break;case 4:return r.label++,{value:c[1],done:!1};case 5:r.label++,i=c[1],c=[0];continue;case 7:c=r.ops.pop(),r.trys.pop();continue;default:if(s=r.trys,!(s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){r.label=c[1];break}if(c[0]===6&&r.label<s[1]){r.label=s[1],s=c;break}if(s&&r.label<s[2]){r.label=s[2],r.ops.push(c);break}s[2]&&r.ops.pop(),r.trys.pop();continue}c=e.call(t,r)}catch(u){c=[6,u],i=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}};Object.defineProperty(Ue,"__esModule",{value:!0});Ue.base64ToBlob=Mc;function Mc(t){return $c(this,void 0,void 0,function(){var e,r,n;return _c(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=Ac(t),n&&(r=r.slice(0,r.size,n)),[2,r]}})})}var Ic=/^data:(.+);base64,/;function Ac(t){var e;return(e=t.match(Ic))===null||e===void 0?void 0:e.slice(1,2).pop()}});var Po=Ne(Pe=>{"use strict";var Tc=Pe&&Pe.__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 a(u){try{c(n.next(u))}catch(h){o(h)}}function l(u){try{c(n.throw(u))}catch(h){o(h)}}function c(u){u.done?s(u.value):i(u.value).then(a,l)}c((n=n.apply(t,e||[])).next())})},Lc=Pe&&Pe.__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=a(0),o.throw=a(1),o.return=a(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(c){return function(u){return l([c,u])}}function l(c){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(r=0)),r;)try{if(n=1,i&&(s=c[0]&2?i.return:c[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,c[1])).done)return s;switch(i=0,s&&(c=[c[0]&2,s.value]),c[0]){case 0:case 1:s=c;break;case 4:return r.label++,{value:c[1],done:!1};case 5:r.label++,i=c[1],c=[0];continue;case 7:c=r.ops.pop(),r.trys.pop();continue;default:if(s=r.trys,!(s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){r.label=c[1];break}if(c[0]===6&&r.label<s[1]){r.label=s[1],s=c;break}if(s&&r.label<s[2]){r.label=s[2],r.ops.push(c);break}s[2]&&r.ops.pop(),r.trys.pop();continue}c=e.call(t,r)}catch(u){c=[6,u],i=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}};Object.defineProperty(Pe,"__esModule",{value:!0});Pe.base64ToFile=jc;function jc(t,e,r){return Tc(this,void 0,void 0,function(){var n,i;return Lc(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 hi=Ne(Re=>{"use strict";var ui=Re&&Re.__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 a(u){try{c(n.next(u))}catch(h){o(h)}}function l(u){try{c(n.throw(u))}catch(h){o(h)}}function c(u){u.done?s(u.value):i(u.value).then(a,l)}c((n=n.apply(t,e||[])).next())})},di=Re&&Re.__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=a(0),o.throw=a(1),o.return=a(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(c){return function(u){return l([c,u])}}function l(c){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(r=0)),r;)try{if(n=1,i&&(s=c[0]&2?i.return:c[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,c[1])).done)return s;switch(i=0,s&&(c=[c[0]&2,s.value]),c[0]){case 0:case 1:s=c;break;case 4:return r.label++,{value:c[1],done:!1};case 5:r.label++,i=c[1],c=[0];continue;case 7:c=r.ops.pop(),r.trys.pop();continue;default:if(s=r.trys,!(s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){r.label=c[1];break}if(c[0]===6&&r.label<s[1]){r.label=s[1],s=c;break}if(s&&r.label<s[2]){r.label=s[2],r.ops.push(c);break}s[2]&&r.ops.pop(),r.trys.pop();continue}c=e.call(t,r)}catch(u){c=[6,u],i=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}};Object.defineProperty(Re,"__esModule",{value:!0});Re.blobToBase64=Dc;function Dc(t){return ui(this,void 0,void 0,function(){return di(this,function(e){return[2,typeof FileReader=="function"?Oc(t):Pc(t)]})})}var nt;(function(t){t.error="error",t.loadend="loadend"})(nt||(nt={}));function Oc(t){return ui(this,void 0,void 0,function(){return di(this,function(e){return[2,new Promise(function(r,n){try{var i=new FileReader,s=function(){r(i.result),i.removeEventListener(nt.loadend,s)};i.addEventListener(nt.loadend,s);var o=function(){n(i.error),i.removeEventListener(nt.error,o)};i.addEventListener(nt.error,o),i.readAsDataURL(t)}catch(a){n(a)}})]})})}var Uc="application/octet-stream";function Pc(t){return ui(this,void 0,void 0,function(){var e,r,n,i;return di(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 Ro=Ne(Ar=>{"use strict";Object.defineProperty(Ar,"__esModule",{value:!0});Ar.fileToBase64=void 0;var Rc=hi();Object.defineProperty(Ar,"fileToBase64",{enumerable:!0,get:function(){return Rc.blobToBase64}})});var Bo=Ne(ae=>{"use strict";var Bc=ae&&ae.__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]})),Tr=ae&&ae.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Bc(e,t,r)};Object.defineProperty(ae,"__esModule",{value:!0});Tr(Uo(),ae);Tr(Po(),ae);Tr(hi(),ae);Tr(Ro(),ae)});var Wt=globalThis,Gt=Wt.ShadowRoot&&(Wt.ShadyCSS===void 0||Wt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,on=Symbol(),Ki=new WeakMap,gt=class{constructor(e,r,n){if(this._$cssResult$=!0,n!==on)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(Gt&&e===void 0){let n=r!==void 0&&r.length===1;n&&(e=Ki.get(r)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),n&&Ki.set(r,e))}return e}toString(){return this.cssText}},Yi=t=>new gt(typeof t=="string"?t:t+"",void 0,on),j=(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 gt(r,t,on)},Xi=(t,e)=>{if(Gt)t.adoptedStyleSheets=e.map((r=>r instanceof CSSStyleSheet?r:r.styleSheet));else for(let r of e){let n=document.createElement("style"),i=Wt.litNonce;i!==void 0&&n.setAttribute("nonce",i),n.textContent=r.cssText,t.appendChild(n)}},an=Gt?t=>t:t=>t instanceof CSSStyleSheet?(e=>{let r="";for(let n of e.cssRules)r+=n.cssText;return Yi(r)})(t):t;var{is:Xa,defineProperty:Qa,getOwnPropertyDescriptor:el,getOwnPropertyNames:tl,getOwnPropertySymbols:rl,getPrototypeOf:nl}=Object,Zt=globalThis,Qi=Zt.trustedTypes,il=Qi?Qi.emptyScript:"",sl=Zt.reactiveElementPolyfillSupport,wt=(t,e)=>t,ln={toAttribute(t,e){switch(e){case Boolean:t=t?il: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}},ts=(t,e)=>!Xa(t,e),es={attribute:!0,type:String,converter:ln,reflect:!1,useDefault:!1,hasChanged:ts};Symbol.metadata??=Symbol("metadata"),Zt.litPropertyMetadata??=new WeakMap;var de=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=es){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&&Qa(this.prototype,e,i)}}static getPropertyDescriptor(e,r,n){let{get:i,set:s}=el(this.prototype,e)??{get(){return this[r]},set(o){this[r]=o}};return{get:i,set(o){let a=i?.call(this);s?.call(this,o),this.requestUpdate(e,a,n)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??es}static _$Ei(){if(this.hasOwnProperty(wt("elementProperties")))return;let e=nl(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(wt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(wt("properties"))){let r=this.properties,n=[...tl(r),...rl(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(an(i))}else e!==void 0&&r.push(an(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 Xi(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:ln).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:ln;this._$Em=i;let a=o.fromAttribute(r,s.type);this[i]=a??this._$Ej?.get(i)??a,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??ts)(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,a=this[i];o!==!0||this._$AL.has(i)||a===void 0||this.C(i,void 0,s,a)}}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){}};de.elementStyles=[],de.shadowRootOptions={mode:"open"},de[wt("elementProperties")]=new Map,de[wt("finalized")]=new Map,sl?.({ReactiveElement:de}),(Zt.reactiveElementVersions??=[]).push("2.1.1");var un=globalThis,Jt=un.trustedTypes,rs=Jt?Jt.createPolicy("lit-html",{createHTML:t=>t}):void 0,dn="$lit$",he=`lit$${Math.random().toFixed(9).slice(2)}$`,hn="?"+he,ol=`<${hn}>`,Me=document,vt=()=>Me.createComment(""),bt=t=>t===null||typeof t!="object"&&typeof t!="function",pn=Array.isArray,ls=t=>pn(t)||typeof t?.[Symbol.iterator]=="function",cn=`[
|
|
2
|
-
\f\r]`,
|
|
3
|
-
\f\r"'\`<>=]|("|')|))|$)`,"g"),
|
|
1
|
+
var Ja=Object.create;var Yi=Object.defineProperty;var Ka=Object.getOwnPropertyDescriptor;var Xa=Object.getOwnPropertyNames;var Ya=Object.getPrototypeOf,Qa=Object.prototype.hasOwnProperty;var Ve=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var el=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Xa(e))!Qa.call(t,i)&&i!==r&&Yi(t,i,{get:()=>e[i],enumerable:!(n=Ka(e,i))||n.enumerable});return t};var an=(t,e,r)=>(r=t!=null?Ja(Ya(t)):{},el(e||!t||!t.__esModule?Yi(r,"default",{value:t,enumerable:!0}):r,t));var jn=Ve(oe=>{"use strict";Object.defineProperty(oe,"__esModule",{value:!0});oe.parseCookie=As;oe.parse=As;oe.stringifyCookie=Il;oe.stringifySetCookie=ur;oe.serialize=ur;oe.parseSetCookie=Al;oe.stringifySetCookie=ur;oe.serialize=ur;var Ms=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,Is=/^[\u0021-\u003A\u003C-\u007E]*$/,Sl=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,$l=/^[\u0020-\u003A\u003D-\u007E]*$/,El=/^-?\d+$/,_l=Object.prototype.toString,Ml=(()=>{let t=function(){};return t.prototype=Object.create(null),t})();function As(t,e){let r=new Ml,n=t.length;if(n<2)return r;let i=e?.decode||Ts,s=0;do{let o=Ln(t,s,n);if(o===-1)break;let a=Dn(t,s,n);if(o>a){s=t.lastIndexOf(";",o-1)+1;continue}let l=ye(t,s,o);r[l]===void 0&&(r[l]=i(ye(t,o+1,a))),s=a+1}while(s<n);return r}function Il(t,e){let r=e?.encode||encodeURIComponent,n=[];for(let i of Object.keys(t)){let s=t[i];if(s===void 0)continue;if(!Ms.test(i))throw new TypeError(`cookie name is invalid: ${i}`);let o=r(s);if(!Is.test(o))throw new TypeError(`cookie val is invalid: ${s}`);n.push(`${i}=${o}`)}return n.join("; ")}function ur(t,e,r){let n=typeof t=="object"?t:{...r,name:t,value:String(e)},s=(typeof e=="object"?e:r)?.encode||encodeURIComponent;if(!Ms.test(n.name))throw new TypeError(`argument name is invalid: ${n.name}`);let o=n.value?s(n.value):"";if(!Is.test(o))throw new TypeError(`argument val is invalid: ${n.value}`);let a=n.name+"="+o;if(n.maxAge!==void 0){if(!Number.isInteger(n.maxAge))throw new TypeError(`option maxAge is invalid: ${n.maxAge}`);a+="; Max-Age="+n.maxAge}if(n.domain){if(!Sl.test(n.domain))throw new TypeError(`option domain is invalid: ${n.domain}`);a+="; Domain="+n.domain}if(n.path){if(!$l.test(n.path))throw new TypeError(`option path is invalid: ${n.path}`);a+="; Path="+n.path}if(n.expires){if(!Tl(n.expires)||!Number.isFinite(n.expires.valueOf()))throw new TypeError(`option expires is invalid: ${n.expires}`);a+="; Expires="+n.expires.toUTCString()}if(n.httpOnly&&(a+="; HttpOnly"),n.secure&&(a+="; Secure"),n.partitioned&&(a+="; Partitioned"),n.priority)switch(typeof n.priority=="string"?n.priority.toLowerCase():void 0){case"low":a+="; Priority=Low";break;case"medium":a+="; Priority=Medium";break;case"high":a+="; Priority=High";break;default:throw new TypeError(`option priority is invalid: ${n.priority}`)}if(n.sameSite)switch(typeof n.sameSite=="string"?n.sameSite.toLowerCase():n.sameSite){case!0:case"strict":a+="; SameSite=Strict";break;case"lax":a+="; SameSite=Lax";break;case"none":a+="; SameSite=None";break;default:throw new TypeError(`option sameSite is invalid: ${n.sameSite}`)}return a}function Al(t,e){let r=e?.decode||Ts,n=t.length,i=Dn(t,0,n),s=Ln(t,0,i),o=s===-1?{name:"",value:r(ye(t,0,i))}:{name:ye(t,0,s),value:r(ye(t,s+1,i))},a=i+1;for(;a<n;){let l=Dn(t,a,n),c=Ln(t,a,l),d=c===-1?ye(t,a,l):ye(t,a,c),h=c===-1?void 0:ye(t,c+1,l);switch(d.toLowerCase()){case"httponly":o.httpOnly=!0;break;case"secure":o.secure=!0;break;case"partitioned":o.partitioned=!0;break;case"domain":o.domain=h;break;case"path":o.path=h;break;case"max-age":h&&El.test(h)&&(o.maxAge=Number(h));break;case"expires":if(!h)break;let p=new Date(h);Number.isFinite(p.valueOf())&&(o.expires=p);break;case"priority":if(!h)break;let g=h.toLowerCase();(g==="low"||g==="medium"||g==="high")&&(o.priority=g);break;case"samesite":if(!h)break;let f=h.toLowerCase();(f==="lax"||f==="strict"||f==="none")&&(o.sameSite=f);break}a=l+1}return o}function Dn(t,e,r){let n=t.indexOf(";",e);return n===-1?r:n}function Ln(t,e,r){let n=t.indexOf("=",e);return n<r?n:-1}function ye(t,e,r){let n=e,i=r;do{let s=t.charCodeAt(n);if(s!==32&&s!==9)break}while(++n<i);for(;i>n;){let s=t.charCodeAt(i-1);if(s!==32&&s!==9)break;i--}return t.slice(n,i)}function Ts(t){if(t.indexOf("%")===-1)return t;try{return decodeURIComponent(t)}catch{return t}}function Tl(t){return _l.call(t)==="[object Date]"}});var Bo=Ve(Ue=>{"use strict";var Mc=Ue&&Ue.__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 a(d){try{c(n.next(d))}catch(h){o(h)}}function l(d){try{c(n.throw(d))}catch(h){o(h)}}function c(d){d.done?s(d.value):i(d.value).then(a,l)}c((n=n.apply(t,e||[])).next())})},Ic=Ue&&Ue.__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=a(0),o.throw=a(1),o.return=a(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(c){return function(d){return l([c,d])}}function l(c){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(r=0)),r;)try{if(n=1,i&&(s=c[0]&2?i.return:c[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,c[1])).done)return s;switch(i=0,s&&(c=[c[0]&2,s.value]),c[0]){case 0:case 1:s=c;break;case 4:return r.label++,{value:c[1],done:!1};case 5:r.label++,i=c[1],c=[0];continue;case 7:c=r.ops.pop(),r.trys.pop();continue;default:if(s=r.trys,!(s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){r.label=c[1];break}if(c[0]===6&&r.label<s[1]){r.label=s[1],s=c;break}if(s&&r.label<s[2]){r.label=s[2],r.ops.push(c);break}s[2]&&r.ops.pop(),r.trys.pop();continue}c=e.call(t,r)}catch(d){c=[6,d],i=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}};Object.defineProperty(Ue,"__esModule",{value:!0});Ue.base64ToBlob=Ac;function Ac(t){return Mc(this,void 0,void 0,function(){var e,r,n;return Ic(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=Dc(t),n&&(r=r.slice(0,r.size,n)),[2,r]}})})}var Tc=/^data:(.+);base64,/;function Dc(t){var e;return(e=t.match(Tc))===null||e===void 0?void 0:e.slice(1,2).pop()}});var qo=Ve(Pe=>{"use strict";var Lc=Pe&&Pe.__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 a(d){try{c(n.next(d))}catch(h){o(h)}}function l(d){try{c(n.throw(d))}catch(h){o(h)}}function c(d){d.done?s(d.value):i(d.value).then(a,l)}c((n=n.apply(t,e||[])).next())})},jc=Pe&&Pe.__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=a(0),o.throw=a(1),o.return=a(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(c){return function(d){return l([c,d])}}function l(c){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(r=0)),r;)try{if(n=1,i&&(s=c[0]&2?i.return:c[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,c[1])).done)return s;switch(i=0,s&&(c=[c[0]&2,s.value]),c[0]){case 0:case 1:s=c;break;case 4:return r.label++,{value:c[1],done:!1};case 5:r.label++,i=c[1],c=[0];continue;case 7:c=r.ops.pop(),r.trys.pop();continue;default:if(s=r.trys,!(s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){r.label=c[1];break}if(c[0]===6&&r.label<s[1]){r.label=s[1],s=c;break}if(s&&r.label<s[2]){r.label=s[2],r.ops.push(c);break}s[2]&&r.ops.pop(),r.trys.pop();continue}c=e.call(t,r)}catch(d){c=[6,d],i=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}};Object.defineProperty(Pe,"__esModule",{value:!0});Pe.base64ToFile=Oc;function Oc(t,e,r){return Lc(this,void 0,void 0,function(){var n,i;return jc(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 pi=Ve(Re=>{"use strict";var di=Re&&Re.__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 a(d){try{c(n.next(d))}catch(h){o(h)}}function l(d){try{c(n.throw(d))}catch(h){o(h)}}function c(d){d.done?s(d.value):i(d.value).then(a,l)}c((n=n.apply(t,e||[])).next())})},hi=Re&&Re.__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=a(0),o.throw=a(1),o.return=a(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(c){return function(d){return l([c,d])}}function l(c){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(r=0)),r;)try{if(n=1,i&&(s=c[0]&2?i.return:c[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,c[1])).done)return s;switch(i=0,s&&(c=[c[0]&2,s.value]),c[0]){case 0:case 1:s=c;break;case 4:return r.label++,{value:c[1],done:!1};case 5:r.label++,i=c[1],c=[0];continue;case 7:c=r.ops.pop(),r.trys.pop();continue;default:if(s=r.trys,!(s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){r.label=c[1];break}if(c[0]===6&&r.label<s[1]){r.label=s[1],s=c;break}if(s&&r.label<s[2]){r.label=s[2],r.ops.push(c);break}s[2]&&r.ops.pop(),r.trys.pop();continue}c=e.call(t,r)}catch(d){c=[6,d],i=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}};Object.defineProperty(Re,"__esModule",{value:!0});Re.blobToBase64=Uc;function Uc(t){return di(this,void 0,void 0,function(){return hi(this,function(e){return[2,typeof FileReader=="function"?Pc(t):Bc(t)]})})}var st;(function(t){t.error="error",t.loadend="loadend"})(st||(st={}));function Pc(t){return di(this,void 0,void 0,function(){return hi(this,function(e){return[2,new Promise(function(r,n){try{var i=new FileReader,s=function(){r(i.result),i.removeEventListener(st.loadend,s)};i.addEventListener(st.loadend,s);var o=function(){n(i.error),i.removeEventListener(st.error,o)};i.addEventListener(st.error,o),i.readAsDataURL(t)}catch(a){n(a)}})]})})}var Rc="application/octet-stream";function Bc(t){return di(this,void 0,void 0,function(){var e,r,n,i;return hi(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||Rc,[2,"data:".concat(i,";base64,").concat(e.toString("base64"))]}})})}});var Fo=Ve(Dr=>{"use strict";Object.defineProperty(Dr,"__esModule",{value:!0});Dr.fileToBase64=void 0;var qc=pi();Object.defineProperty(Dr,"fileToBase64",{enumerable:!0,get:function(){return qc.blobToBase64}})});var No=Ve(le=>{"use strict";var Fc=le&&le.__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]})),Lr=le&&le.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Fc(e,t,r)};Object.defineProperty(le,"__esModule",{value:!0});Lr(Bo(),le);Lr(qo(),le);Lr(pi(),le);Lr(Fo(),le)});var Zt=globalThis,Jt=Zt.ShadowRoot&&(Zt.ShadyCSS===void 0||Zt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,ln=Symbol(),Qi=new WeakMap,yt=class{constructor(e,r,n){if(this._$cssResult$=!0,n!==ln)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(Jt&&e===void 0){let n=r!==void 0&&r.length===1;n&&(e=Qi.get(r)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),n&&Qi.set(r,e))}return e}toString(){return this.cssText}},es=t=>new yt(typeof t=="string"?t:t+"",void 0,ln),O=(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 yt(r,t,ln)},ts=(t,e)=>{if(Jt)t.adoptedStyleSheets=e.map((r=>r instanceof CSSStyleSheet?r:r.styleSheet));else for(let r of e){let n=document.createElement("style"),i=Zt.litNonce;i!==void 0&&n.setAttribute("nonce",i),n.textContent=r.cssText,t.appendChild(n)}},cn=Jt?t=>t:t=>t instanceof CSSStyleSheet?(e=>{let r="";for(let n of e.cssRules)r+=n.cssText;return es(r)})(t):t;var{is:tl,defineProperty:rl,getOwnPropertyDescriptor:nl,getOwnPropertyNames:il,getOwnPropertySymbols:sl,getPrototypeOf:ol}=Object,Kt=globalThis,rs=Kt.trustedTypes,al=rs?rs.emptyScript:"",ll=Kt.reactiveElementPolyfillSupport,vt=(t,e)=>t,un={toAttribute(t,e){switch(e){case Boolean:t=t?al: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}},is=(t,e)=>!tl(t,e),ns={attribute:!0,type:String,converter:un,reflect:!1,useDefault:!1,hasChanged:is};Symbol.metadata??=Symbol("metadata"),Kt.litPropertyMetadata??=new WeakMap;var he=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=ns){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&&rl(this.prototype,e,i)}}static getPropertyDescriptor(e,r,n){let{get:i,set:s}=nl(this.prototype,e)??{get(){return this[r]},set(o){this[r]=o}};return{get:i,set(o){let a=i?.call(this);s?.call(this,o),this.requestUpdate(e,a,n)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??ns}static _$Ei(){if(this.hasOwnProperty(vt("elementProperties")))return;let e=ol(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(vt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(vt("properties"))){let r=this.properties,n=[...il(r),...sl(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(cn(i))}else e!==void 0&&r.push(cn(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 ts(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:un).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:un;this._$Em=i;let a=o.fromAttribute(r,s.type);this[i]=a??this._$Ej?.get(i)??a,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??is)(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,a=this[i];o!==!0||this._$AL.has(i)||a===void 0||this.C(i,void 0,s,a)}}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){}};he.elementStyles=[],he.shadowRootOptions={mode:"open"},he[vt("elementProperties")]=new Map,he[vt("finalized")]=new Map,ll?.({ReactiveElement:he}),(Kt.reactiveElementVersions??=[]).push("2.1.1");var hn=globalThis,Xt=hn.trustedTypes,ss=Xt?Xt.createPolicy("lit-html",{createHTML:t=>t}):void 0,pn="$lit$",pe=`lit$${Math.random().toFixed(9).slice(2)}$`,fn="?"+pe,cl=`<${fn}>`,Ae=document,xt=()=>Ae.createComment(""),kt=t=>t===null||typeof t!="object"&&typeof t!="function",mn=Array.isArray,ds=t=>mn(t)||typeof t?.[Symbol.iterator]=="function",dn=`[
|
|
2
|
+
\f\r]`,bt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,os=/-->/g,as=/>/g,Me=RegExp(`>|${dn}(?:([^\\s"'>=/]+)(${dn}*=${dn}*(?:[^
|
|
3
|
+
\f\r"'\`<>=]|("|')|))|$)`,"g"),ls=/'/g,cs=/"/g,hs=/^(?:script|style|textarea|title)$/i,gn=t=>(e,...r)=>({_$litType$:t,strings:e,values:r}),u=gn(1),Qu=gn(2),ed=gn(3),ne=Symbol.for("lit-noChange"),U=Symbol.for("lit-nothing"),us=new WeakMap,Ie=Ae.createTreeWalker(Ae,129);function ps(t,e){if(!mn(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return ss!==void 0?ss.createHTML(e):e}var fs=(t,e)=>{let r=t.length-1,n=[],i,s=e===2?"<svg>":e===3?"<math>":"",o=bt;for(let a=0;a<r;a++){let l=t[a],c,d,h=-1,p=0;for(;p<l.length&&(o.lastIndex=p,d=o.exec(l),d!==null);)p=o.lastIndex,o===bt?d[1]==="!--"?o=os:d[1]!==void 0?o=as:d[2]!==void 0?(hs.test(d[2])&&(i=RegExp("</"+d[2],"g")),o=Me):d[3]!==void 0&&(o=Me):o===Me?d[0]===">"?(o=i??bt,h=-1):d[1]===void 0?h=-2:(h=o.lastIndex-d[2].length,c=d[1],o=d[3]===void 0?Me:d[3]==='"'?cs:ls):o===cs||o===ls?o=Me:o===os||o===as?o=bt:(o=Me,i=void 0);let g=o===Me&&t[a+1].startsWith("/>")?" ":"";s+=o===bt?l+cl:h>=0?(n.push(c),l.slice(0,h)+pn+l.slice(h)+pe+g):l+pe+(h===-2?a:g)}return[ps(t,s+(t[r]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),n]},Ct=class t{constructor({strings:e,_$litType$:r},n){let i;this.parts=[];let s=0,o=0,a=e.length-1,l=this.parts,[c,d]=fs(e,r);if(this.el=t.createElement(c,n),Ie.currentNode=this.el.content,r===2||r===3){let h=this.el.content.firstChild;h.replaceWith(...h.childNodes)}for(;(i=Ie.nextNode())!==null&&l.length<a;){if(i.nodeType===1){if(i.hasAttributes())for(let h of i.getAttributeNames())if(h.endsWith(pn)){let p=d[o++],g=i.getAttribute(h).split(pe),f=/([.?@])?(.*)/.exec(p);l.push({type:1,index:s,name:f[2],strings:g,ctor:f[1]==="."?Qt:f[1]==="?"?er:f[1]==="@"?tr:De}),i.removeAttribute(h)}else h.startsWith(pe)&&(l.push({type:6,index:s}),i.removeAttribute(h));if(hs.test(i.tagName)){let h=i.textContent.split(pe),p=h.length-1;if(p>0){i.textContent=Xt?Xt.emptyScript:"";for(let g=0;g<p;g++)i.append(h[g],xt()),Ie.nextNode(),l.push({type:2,index:++s});i.append(h[p],xt())}}}else if(i.nodeType===8)if(i.data===fn)l.push({type:2,index:s});else{let h=-1;for(;(h=i.data.indexOf(pe,h+1))!==-1;)l.push({type:7,index:s}),h+=pe.length-1}s++}}static createElement(e,r){let n=Ae.createElement("template");return n.innerHTML=e,n}};function Te(t,e,r=t,n){if(e===ne)return e;let i=n!==void 0?r._$Co?.[n]:r._$Cl,s=kt(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=Te(t,i._$AS(t,e.values),i,n)),e}var Yt=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??Ae).importNode(r,!0);Ie.currentNode=i;let s=Ie.nextNode(),o=0,a=0,l=n[0];for(;l!==void 0;){if(o===l.index){let c;l.type===2?c=new He(s,s.nextSibling,this,e):l.type===1?c=new l.ctor(s,l.name,l.strings,this,e):l.type===6&&(c=new rr(s,this,e)),this._$AV.push(c),l=n[++a]}o!==l?.index&&(s=Ie.nextNode(),o++)}return Ie.currentNode=Ae,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++}},He=class t{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,r,n,i){this.type=2,this._$AH=U,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=Te(this,e,r),kt(e)?e===U||e==null||e===""?(this._$AH!==U&&this._$AR(),this._$AH=U):e!==this._$AH&&e!==ne&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):ds(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!==U&&kt(this._$AH)?this._$AA.nextSibling.data=e:this.T(Ae.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=Ct.createElement(ps(n.h,n.h[0]),this.options)),n);if(this._$AH?._$AD===i)this._$AH.p(r);else{let s=new Yt(i,this),o=s.u(this.options);s.p(r),this.T(o),this._$AH=s}}_$AC(e){let r=us.get(e.strings);return r===void 0&&us.set(e.strings,r=new Ct(e)),r}k(e){mn(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(xt()),this.O(xt()),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))}},De=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,r,n,i,s){this.type=1,this._$AH=U,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=U}_$AI(e,r=this,n,i){let s=this.strings,o=!1;if(s===void 0)e=Te(this,e,r,0),o=!kt(e)||e!==this._$AH&&e!==ne,o&&(this._$AH=e);else{let a=e,l,c;for(e=s[0],l=0;l<s.length-1;l++)c=Te(this,a[n+l],r,l),c===ne&&(c=this._$AH[l]),o||=!kt(c)||c!==this._$AH[l],c===U?e=U:e!==U&&(e+=(c??"")+s[l+1]),this._$AH[l]=c}o&&!i&&this.j(e)}j(e){e===U?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}},Qt=class extends De{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===U?void 0:e}},er=class extends De{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==U)}},tr=class extends De{constructor(e,r,n,i,s){super(e,r,n,i,s),this.type=5}_$AI(e,r=this){if((e=Te(this,e,r,0)??U)===ne)return;let n=this._$AH,i=e===U&&n!==U||e.capture!==n.capture||e.once!==n.once||e.passive!==n.passive,s=e!==U&&(n===U||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)}},rr=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){Te(this,e)}},ms={M:pn,P:pe,A:fn,C:1,L:fs,R:Yt,D:ds,V:Te,I:He,H:De,N:er,U:tr,B:Qt,F:rr},ul=hn.litHtmlPolyfillSupport;ul?.(Ct,He),(hn.litHtmlVersions??=[]).push("3.3.1");var gs=(t,e,r)=>{let n=r?.renderBefore??e,i=n._$litPart$;if(i===void 0){let s=r?.renderBefore??null;n._$litPart$=i=new He(e.insertBefore(xt(),s),s,void 0,r??{})}return i._$AI(t),i};var wn=globalThis,v=class extends he{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=gs(r,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return ne}};v._$litElement$=!0,v.finalized=!0,wn.litElementHydrateSupport?.({LitElement:v});var dl=wn.litElementPolyfillSupport;dl?.({LitElement:v});(wn.litElementVersions??=[]).push("4.2.1");var nr=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
4
|
:host {
|
|
5
5
|
display: inline-block;
|
|
6
6
|
line-height: 0;
|
|
7
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
|
|
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 ws={clock:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
9
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
10
|
</svg>`,"arrow-path":`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
11
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"/>
|
|
@@ -127,7 +127,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
127
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
128
|
</svg>`,star:`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
129
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 cl=fs,gn=class extends tr{resolveIcon(e){let r=cl[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",gn);var rr=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 wn=t=>!!(t&&t.constructor&&t.call&&t.apply);var ms=t=>!(!t||!t.then||!wn(t.then));var gs=(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*yn(t,e,r=i=>i,n=1){let i=wn(r)?r:()=>r,s=e?t:0,o=e??t;for(let a=s;a<=o&&(yield i(a),!(a+n>o));a+=n);}var ws=(t,e,r,n)=>Array.from(yn(t,e,r,n));var ys=(t,e)=>t?t.reduce((r,n)=>{let[i,s]=r;return e(n)?[[...i,n],s]:[i,[...s,n]]},[[],[]]):[[],[]];var vn=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}},bn=async(t,e,r)=>{let n=e.map((c,u)=>({index:u,item:c})),i=async c=>{let u=[];for(;;){let h=n.pop();if(!h)return c(u);let[p,g]=await nr(r)(h.item);u.push({error:p,result:g,index:h.index})}},s=ws(1,t).map(()=>new Promise(i)),o=await Promise.all(s),[a,l]=ys(gs(o.flat(),c=>c.index),c=>!!c.error);if(a.length>0)throw new vn(a.map(c=>c.error));return l.map(c=>c.result)};var xn=async(t,e)=>{let r=t?.times??3,n=t?.delay,i=t?.backoff??null;for(let s of yn(1,r)){let[o,a]=await nr(e)(l=>{throw{_exited:l}});if(!o)return a;if(o._exited)throw o._exited;if(s===r)throw o;n&&await He(n),i&&await He(i(s))}},He=t=>new Promise(e=>setTimeout(e,t)),nr=t=>(...e)=>{try{let r=t(...e);return ms(r)?r.then(n=>[void 0,n]).catch(n=>[n,void 0]):[void 0,r]}catch(r){return[r,void 0]}};var ze=({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 vs(t,e){let r=t?.times??3,n=t?.delay,i=t?.backoff??null,s=o=>{throw{_bailed:o}};for(let o=0;o<r;o++)try{return await e(s,o)}catch(a){if(a&&typeof a=="object"&&"_bailed"in a)throw a._bailed;if(o===r-1)throw a;n&&await He(n),i&&await He(i(o+1))}throw new Error("unreachable")}var dl=!0,kn="Invariant failed";function I(t,e){if(!t){if(dl)throw new Error(kn);var r=typeof e=="function"?e():e,n=r?"".concat(kn,": ").concat(r):kn;throw new Error(n)}}var ir=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 vs({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 a=this.#o(s,o);s===e&&(i=a)}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){I(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 rr(this.#e,{url:()=>this.#t.url(this.conversationId,{}),onOpen:e=>this.#a(e),onMessage:e=>this.#d(JSON.parse(e.data)),onError:e=>this.#c(e),onClose:e=>this.#l(e)})}#a(e){this.#n=0}#d(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 Kd=Symbol(),hl=Symbol();var bs=Object.getPrototypeOf,Cn=new WeakMap,pl=t=>t&&(Cn.has(t)?Cn.get(t):bs(t)===Object.prototype||bs(t)===Array.prototype);var xs=t=>pl(t)&&t[hl]||null,Sn=(t,e=!0)=>{Cn.set(t,e)};var $n=t=>typeof t=="object"&&t!==null,fl=t=>$n(t)&&!_n.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),Ss=(t,e)=>{let r=ks.get(t);if(r?.[0]===e)return r[1];let n=Array.isArray(t)?[]:Object.create(Object.getPrototypeOf(t));return Sn(n,!0),ks.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),a={value:s,enumerable:o,configurable:!0};if(_n.has(s))Sn(s,!1);else if(Te.has(s)){let[l,c]=Te.get(s);a.value=Ss(l,c())}Object.defineProperty(n,i,a)}),Object.preventExtensions(n)},ml=(t,e,r,n)=>({deleteProperty(i,s){let o=Reflect.get(i,s);r(s);let a=Reflect.deleteProperty(i,s);return a&&n(["delete",[s],o]),a},set(i,s,o,a){let l=!t()&&Reflect.has(i,s),c=Reflect.get(i,s,a);if(l&&(Cs(c,o)||sr.has(o)&&Cs(c,sr.get(o))))return!0;r(s),$n(o)&&(o=xs(o)||o);let u=!Te.has(o)&&wl(o)?Mn(o):o;return e(s,u),Reflect.set(i,s,u,a),n(["set",[s],o,c]),!0}}),Te=new WeakMap,_n=new WeakSet,ks=new WeakMap,En=[1],sr=new WeakMap,Cs=Object.is,gl=(t,e)=>new Proxy(t,e),wl=fl,yl=Ss,vl=ml;function Mn(t={}){if(!$n(t))throw new Error("object required");let e=sr.get(t);if(e)return e;let r=En[0],n=new Set,i=(b,E=++En[0])=>{r!==E&&(s=r=E,n.forEach(y=>y(b,E)))},s=r,o=(b=En[0])=>(s!==b&&(s=b,l.forEach(([E])=>{let y=E[1](b);y>r&&(r=y)})),r),a=b=>(E,y)=>{let x=[...E];x[1]=[b,...x[1]],i(x,y)},l=new Map,c=(b,E)=>{let y=!_n.has(E)&&Te.get(E);if(y){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 x=y[2](a(b));l.set(b,[y,x])}else l.set(b,[y])}},u=b=>{var E;let y=l.get(b);y&&(l.delete(b),(E=y[1])==null||E.call(y))},h=b=>(n.add(b),n.size===1&&l.forEach(([y,x],$)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&x)throw new Error("remove already exists");let L=y[2](a($));l.set($,[y,L])}),()=>{n.delete(b),n.size===0&&l.forEach(([y,x],$)=>{x&&(x(),l.set($,[y]))})}),p=!0,g=vl(()=>p,c,u,i),f=gl(t,g);sr.set(t,f);let S=[t,o,h];return Te.set(f,S),Reflect.ownKeys(t).forEach(b=>{let E=Object.getOwnPropertyDescriptor(t,b);"value"in E&&E.writable&&(f[b]=t[b])}),p=!1,f}function or(t,e,r){let n=Te.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],a=!1,c=o(u=>{if(s.push(u),r){e(s.splice(0));return}i||(i=Promise.resolve().then(()=>{i=void 0,a&&e(s.splice(0))}))});return a=!0,()=>{a=!1,c()}}function We(t){let e=Te.get(t);(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!e&&console.warn("Please use proxy object");let[r,n]=e;return yl(r,n())}var Ge=class{#e;#t;#r;#n=()=>{};constructor(e,r){this.#e=e,this.#t=r,this.#r=We(r),e.addController(this)}get state(){return this.#r}get value(){return this.#r}hostConnected(){this.#n(),this.#n=or(this.#t,()=>{this.#r=We(this.#t),this.#e.requestUpdate()})}hostDisconnected(){this.#n()}};var ge=class{#e;#t;proxyObject;#r;#n=()=>{};constructor(e,r,n){this.#e=e,this.#t=n,this.proxyObject=Mn(r),this.#r=We(this.proxyObject),e.addController(this)}get state(){return this.#r}get value(){return this.#r}hostConnected(){this.#n(),this.#t?.subscribe&&(this.#n=or(this.proxyObject,()=>{this.#r=We(this.proxyObject),this.#e.requestUpdate()}))}hostDisconnected(){this.#n()}};var ar=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=bl(this.#e,this.#t),!this.#n))return;let e=this.#n[this.#r]instanceof ge?this.#n[this.#r]:null;e&&(this.#i=new Ge(this.#e,e.proxyObject))}hostDisconnected(){}};function bl(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 kt=sn(Tn(),1);var cr=class{#e;constructor({document:e}){this.#e=e}getCookies(){return kt.parse(this.#e.cookie)||{}}getCookie(e){return this.getCookies()[e]||null}setCookie(e,r,n){if(I(typeof e=="string",`cookie name must be a string, got: ${typeof e}`),I(e,"cookie name must not be empty"),r==null){this.#e.cookie=kt.serialize(e,"",{expires:new Date(0)});return}I(typeof r=="string",`value of cookie \`${e}\` must be a string, got: ${typeof r}`),this.#e.cookie=kt.serialize(e,r,n)}deleteCookie(e){this.setCookie(e,null)}deleteCookies(e){let r=this.getCookies();for(let n in r)e(n)&&this.deleteCookie(n)}};var ur=class{#e;constructor({localStorage:e}){this.#e=e}getItem(e){try{let r=this.#e.getItem(e);return r?JSON.parse(r):null}catch{return null}}setItem(e,r){if(r==null){this.#e.removeItem(e);return}try{let n=JSON.stringify(r);this.#e.setItem(e,n)}catch(n){console.error(`Failed to store ${e} in localStorage:`,n)}}removeItem(e){this.#e.removeItem(e)}removeItems(e){let r=[];for(let n=0;n<this.#e.length;n++){let i=this.#e.key(n);i&&e(i)&&r.push(i)}for(let n of r)this.#e.removeItem(n)}};var Ct=sn(Tn(),1);function Ln({window:t}){let e=t.location.hostname,r=t.document;if(e==="localhost"||/^\d+\.\d+\.\d+\.\d+$/.test(e)||/^\[.*\]$/.test(e))return;let n=e.split(".");if(n.length<2)return;let i="__molin_domain_test__";for(let s=2;s<=n.length;s++){let o=`.${n.slice(-s).join(".")}`;try{if(r.cookie=Ct.serialize(i,"1",{domain:o,path:"/"}),Ct.parse(r.cookie)[i]==="1")return r.cookie=Ct.serialize(i,"",{domain:o,path:"/",expires:new Date(0)}),o}catch{continue}}return`.${n.slice(-2).join(".")}`}var jn=class{#e;#t;#r;#n;constructor({window:e}){this.#e=e,this.#t=new cr({document:e.document}),this.#r=new ur({localStorage:e.localStorage}),this.#n=e.localStorage}get distinctID(){return this.#t.getCookie("molin_distinct_id")||this.#n.getItem("molin_distinct_id")||this.#r.getItem("molin_shop_assistant_distinct_id")}set distinctID(e){if(this.#r.removeItem("molin_shop_assistant_distinct_id"),!e){this.#t.deleteCookie("molin_distinct_id"),this.#n.removeItem("molin_distinct_id");return}I(typeof e=="string","distinct_id must be a string");try{this.#t.setCookie("molin_distinct_id",e,{path:"/",sameSite:"lax",expires:new Date(Date.now()+1e3*60*60*24*365),domain:Ln({window:this.#e})})}catch(r){console.warn("Could not write distinct_id to cookie:",r)}try{this.#n.setItem("molin_distinct_id",e)}catch(r){console.warn("Could not write distinct_id to localStorage:",r)}}get widgetState(){return this.#r.getItem("molin_widget")||this.#r.getItem("_molin_widget_open_state")}set widgetState(e){this.#r.setItem("molin_widget",e),this.#r.removeItem("_molin_widget_open_state")}get popupState(){return this.#r.getItem("molin_popup")||this.#r.getItem("_molin_popup")}set popupState(e){this.#r.setItem("molin_popup",e),this.#r.removeItem("_molin_popup")}get disclaimerDismissed(){return this.#r.getItem("molin_disclaimer_dismissed")??!1}set disclaimerDismissed(e){this.#r.setItem("molin_disclaimer_dismissed",e)}getConversationId(e){I(typeof e=="string","widgetId must be a string"),I(e,"widgetId must not be empty");let r=`molin_${e}_conversation_id`;return this.#t.getCookie(r)||this.#n.getItem(r)||this.#r.getItem(`_molin_${e}`)?.conversationId}setConversationId(e,r){I(typeof e=="string","widgetId must be a string"),I(e,"widgetId must not be empty");let n=`molin_${e}_conversation_id`;if(!r){this.#t.deleteCookie(n),this.#n.removeItem(n);return}I(typeof r=="string",`conversation ID for widget ${e} must be a string`);try{this.#t.setCookie(n,r,{path:"/",sameSite:"lax",expires:new Date(Date.now()+1e3*60*60*24*365),domain:Ln({window:this.#e})})}catch(i){console.warn(`Could not write ${n} to cookie:`,i)}try{this.#n.setItem(n,r)}catch(i){console.warn(`Could not write ${n} to localStorage:`,i)}}getConversationState(e){I(typeof e=="string","widgetId must be a string"),I(e,"widgetId must not be empty");let r=`molin_${e}_conversation`;return this.#r.getItem(r)||this.#r.getItem(`_molin_${e}`)}setConversationState(e,r){this.#r.removeItem(`_molin_${e}`),I(typeof e=="string","widgetId must be a string"),I(e,"widgetId must not be empty");let n=`molin_${e}_conversation`;this.#r.setItem(n,r)}resetAll(){this.distinctID=null,this.widgetState=null,this.popupState=null,this.disclaimerDismissed=!1,this.#r.removeItems(e=>e.startsWith("_molin_")),this.#t.deleteCookies(e=>e.startsWith("_molin_"))}},U=new jn({window});var Is=()=>{if(window.Shopify)try{return{customerId:Il()}}catch{return null}return null},Il=()=>{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},As=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 Ts(t,e="http"){return t.startsWith("http://")||t.startsWith("https://")?t:`${e}://${t}`}function Dn(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 Ls(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 js=()=>{if(window.ShopRenter)try{let t=Tl();return{customerEmail:t?.customerEmail,customerId:t?.customerId,customerName:t?.customerName}}catch{return null}return null},Tl=()=>{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}}},Ds=async()=>{try{let t=window.ShopRenter.shop?.domain;if(!t)return[];let e=Ts(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 Os=()=>{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},Us=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 On;function Rs(t){return{lang:t?.lang??On?.lang,message:t?.message,abortEarly:t?.abortEarly??On?.abortEarly,abortPipeEarly:t?.abortPipeEarly??On?.abortPipeEarly}}var Dl;function Ol(t){return Dl?.get(t)}var Ul;function Pl(t){return Ul?.get(t)}var Rl;function Bl(t,e){return Rl?.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 H(t,e,r,n,i){let s=i&&"input"in i?i.input:r.value,o=i?.expected??t.expects??null,a=i?.received??Bs(s),l={kind:t.kind,type:t.type,input:s,expected:o,received:a,message:`Invalid ${e}: ${o?`Expected ${o} but r`:"R"}eceived ${a}`,requirement:t.requirement,path:i?.path,issues:i?.issues,lang:n.lang,abortEarly:n.abortEarly,abortPipeEarly:n.abortPipeEarly},c=t.kind==="schema",u=i?.message??t.message??Bl(t.reference,l.lang)??(c?Pl(l.lang):null)??n.message??Ol(l.lang);u!==void 0&&(l.message=typeof u=="function"?u(l):u),c&&(r.typed=!1),r.issues?r.issues.push(l):r.issues=[l]}function G(t){return{version:1,vendor:"valibot",validate(e){return t["~run"]({value:e},Rs())}}}function qs(t,e){return Object.hasOwn(t,e)&&e!=="__proto__"&&e!=="prototype"&&e!=="constructor"}function Fs(t,e){let r=[...new Set(t)];return r.length>1?`(${r.join(` ${e} `)})`:r[0]??"never"}function Un(t,e){return{kind:"validation",type:"max_length",reference:Un,async:!1,expects:`<=${t}`,requirement:t,message:e,"~run"(r,n){return r.typed&&r.value.length>this.requirement&&H(this,"length",r,n,{received:`${r.value.length}`}),r}}}function Pn(t,e){return{kind:"validation",type:"min_length",reference:Pn,async:!1,expects:`>=${t}`,requirement:t,message:e,"~run"(r,n){return r.typed&&r.value.length<this.requirement&&H(this,"length",r,n,{received:`${r.value.length}`}),r}}}function St(t){return{kind:"transformation",type:"transform",reference:St,async:!1,operation:t,"~run"(e){return e.value=this.operation(e.value),e}}}function Ns(t,e,r){return typeof t.fallback=="function"?t.fallback(e,r):t.fallback}function Rn(t,e,r){return typeof t.default=="function"?t.default(e,r):t.default}function Et(){return{kind:"schema",type:"any",reference:Et,expects:"any",async:!1,get"~standard"(){return G(this)},"~run"(t){return t.typed=!0,t}}}function Ze(t,e){return{kind:"schema",type:"array",reference:Ze,expects:"Array",async:!1,item:t,message:e,get"~standard"(){return G(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],a=this.item["~run"]({value:o},n);if(a.issues){let l={type:"array",origin:"value",input:i,key:s,value:o};for(let c of a.issues)c.path?c.path.unshift(l):c.path=[l],r.issues?.push(c);if(r.issues||(r.issues=a.issues),n.abortEarly){r.typed=!1;break}}a.typed||(r.typed=!1),r.value.push(a.value)}}else H(this,"type",r,n);return r}}}function Bn(t){return{kind:"schema",type:"boolean",reference:Bn,expects:"boolean",async:!1,message:t,get"~standard"(){return G(this)},"~run"(e,r){return typeof e.value=="boolean"?e.typed=!0:H(this,"type",e,r),e}}}function qn(t,e){return{kind:"schema",type:"loose_object",reference:qn,expects:"Object",async:!1,entries:t,message:e,get"~standard"(){return G(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 a=s in i?i[s]:Rn(o),l=o["~run"]({value:a},n);if(l.issues){let c={type:"object",origin:"value",input:i,key:s,value:a};for(let u of l.issues)u.path?u.path.unshift(c):u.path=[c],r.issues?.push(u);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]=Ns(o);else if(o.type!=="exact_optional"&&o.type!=="optional"&&o.type!=="nullish"&&(H(this,"key",r,n,{input:void 0,expected:`"${s}"`,path:[{type:"object",origin:"key",input:i,key:s,value:i[s]}]}),n.abortEarly))break}if(!r.issues||!n.abortEarly)for(let s in i)qs(i,s)&&!(s in this.entries)&&(r.value[s]=i[s])}else H(this,"type",r,n);return r}}}function Fn(t){return{kind:"schema",type:"null",reference:Fn,expects:"null",async:!1,message:t,get"~standard"(){return G(this)},"~run"(e,r){return e.value===null?e.typed=!0:H(this,"type",e,r),e}}}function dr(t){return{kind:"schema",type:"number",reference:dr,expects:"number",async:!1,message:t,get"~standard"(){return G(this)},"~run"(e,r){return typeof e.value=="number"&&!isNaN(e.value)?e.typed=!0:H(this,"type",e,r),e}}}function se(t,e){return{kind:"schema",type:"object",reference:se,expects:"Object",async:!1,entries:t,message:e,get"~standard"(){return G(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 a=s in i?i[s]:Rn(o),l=o["~run"]({value:a},n);if(l.issues){let c={type:"object",origin:"value",input:i,key:s,value:a};for(let u of l.issues)u.path?u.path.unshift(c):u.path=[c],r.issues?.push(u);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]=Ns(o);else if(o.type!=="exact_optional"&&o.type!=="optional"&&o.type!=="nullish"&&(H(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 H(this,"type",r,n);return r}}}function Je(t,e){return{kind:"schema",type:"optional",reference:Je,expects:`(${t.expects} | undefined)`,async:!1,wrapped:t,default:e,get"~standard"(){return G(this)},"~run"(r,n){return r.value===void 0&&(this.default!==void 0&&(r.value=Rn(this,r,n)),r.value===void 0)?(r.typed=!0,r):this.wrapped["~run"](r,n)}}}function Nn(t,e){return{kind:"schema",type:"picklist",reference:Nn,expects:Fs(t.map(Bs),"|"),async:!1,options:t,message:e,get"~standard"(){return G(this)},"~run"(r,n){return this.options.includes(r.value)?r.typed=!0:H(this,"type",r,n),r}}}function hr(t,e,r){return{kind:"schema",type:"record",reference:hr,expects:"Object",async:!1,key:t,value:e,message:r,get"~standard"(){return G(this)},"~run"(n,i){let s=n.value;if(s&&typeof s=="object"){n.typed=!0,n.value={};for(let o in s)if(qs(s,o)){let a=s[o],l=this.key["~run"]({value:o},i);if(l.issues){let u={type:"object",origin:"key",input:s,key:o,value:a};for(let h of l.issues)h.path=[u],n.issues?.push(h);if(n.issues||(n.issues=l.issues),i.abortEarly){n.typed=!1;break}}let c=this.value["~run"]({value:a},i);if(c.issues){let u={type:"object",origin:"value",input:s,key:o,value:a};for(let h of c.issues)h.path?h.path.unshift(u):h.path=[u],n.issues?.push(h);if(n.issues||(n.issues=c.issues),i.abortEarly){n.typed=!1;break}}(!l.typed||!c.typed)&&(n.typed=!1),l.typed&&(n.value[l.value]=c.value)}}else H(this,"type",n,i);return n}}}function P(t){return{kind:"schema",type:"string",reference:P,expects:"string",async:!1,message:t,get"~standard"(){return G(this)},"~run"(e,r){return typeof e.value=="string"?e.typed=!0:H(this,"type",e,r),e}}}function Ps(t){let e;if(t)for(let r of t)e?e.push(...r.issues):e=r.issues;return e}function pr(t,e){return{kind:"schema",type:"union",reference:pr,expects:Fs(t.map(r=>r.expects),"|"),async:!1,options:t,message:e,get"~standard"(){return G(this)},"~run"(r,n){let i,s,o;for(let a of this.options){let l=a["~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];H(this,"type",r,n,{issues:Ps(s)}),r.typed=!0}else{if(o?.length===1)return o[0];H(this,"type",r,n,{issues:Ps(o)})}return r}}}function Vs(t,e){let r={};for(let n in t.entries)r[n]=!e||e.includes(n)?Je(t.entries[n]):t.entries[n];return{...t,entries:r,get"~standard"(){return G(this)}}}function Ke(...t){return{...t[0],pipe:t,get"~standard"(){return G(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 Le(t,e,r){let n=t["~run"]({value:e},Rs(r));return{typed:n.typed,success:!n.issues,output:n.value,issues:n.issues}}var Hs=hr(P(),pr([P(),dr(),Bn(),Fn()])),zs=Ke(P(),Pn(1),Un(5e3)),Ws=()=>{try{return window.UNAS?Os():window.Shopify?Is():window.ShopRenter?js():null}catch{return null}},Gs=async()=>{try{return window.UNAS?await Us():window.Shopify?await As():window.ShopRenter?await Ds():[]}catch{return[]}},Ye={schema:se({conversationId:Je(P()),messages:Je(Ze(se({id:P(),timestamp:dr(),role:Nn(["user","assistant","support"]),content:P(),parts:Je(Ze(pr([se({text:P()}),se({html:P()}),se({tag:P(),data:hr(P(),Et())})])))})))}),persist(t,e,r){U.setConversationState(t,{conversationId:e,messages:r}),U.setConversationId(t,e)},restore(t){try{let e=U.getConversationState(t),r=e?Le(this.schema,e):void 0;return r?.success&&r.output.conversationId?{conversationId:r.output.conversationId,messages:r.output.messages||[]}:{conversationId:U.getConversationId(t)||"",messages:[]}}catch(e){return console.error("Failed to restore conversation state:",e),{conversationId:"",messages:[]}}},reset(t){U.setConversationState(t,null),U.setConversationId(t,null)}};var Xe=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 ge(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 ir(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:()=>{Ye.reset(this.widgetId)},onConnect:(e,r)=>{let n=Ws();this.#i.sendUserMeta({xUserData:this.xUserData,xCustomInstructions:this.xCustomInstructions,customerInformation:n,language:window.navigator.language,cart:[]}),Gs().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)=>{Ye.persist(this.widgetId,e,r)},restoreConversationState:()=>Ye.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=Le(Hs,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=Le(zs,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={}){this.#e.some(s=>s.role==="assistant"&&s.parts?.some(o=>"tag"in o&&o.tag==="request-input-v1"&&"data"in o&&o.data.type==="new-conversation-button"))&&(this.sendNewChat(),this.reset());let i={xUserData:this.xUserData,xCustomInstructions:this.xCustomInstructions,role:"user",expectStreaming:!0,...r};return this.#i.enqueueUserInput(e,i)}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 d`<slot></slot>`}};function Zs(t){let e=new ar(t,{provider:Xe,tag:"mw-context-widget",key:"contextCtrl"});return new Proxy({value:null},{get(r,n){if(n==="value")return e.value}})}Xe.ConnectedEvent=class extends CustomEvent{static type="mw-context-widget:connected";constructor(e,r={}){super(Xe.ConnectedEvent.type,{detail:e,bubbles:!0,composed:!0,...r})}};customElements.get("mw-context-widget")||customElements.define("mw-context-widget",Xe);function Xn(t){return[...t.v,(t.i?"!":"")+t.n].join(":")}function ql(t,e=","){return t.map(Xn).join(e)}var to=typeof CSS<"u"&&CSS.escape||(t=>t.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function fr(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 wr(t,e="@media "){return e+A(t).map(r=>(typeof r=="string"&&(r={min:r}),r.raw||Object.keys(r).map(n=>`(${n}-width:${r[n]})`).join(" and "))).join(",")}function A(t=[]){return Array.isArray(t)?t:t==null?[]:[t]}function Js(t){return t}function yr(){}var B={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function ro(t){return t.match(/[-=:;]/g)?.length||0}function Gn(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(ro(t),15)<<18}var Fl=["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=Xn({n:t,i:e,v:r})),s=[...A(s)];for(let a of r){let l=n.theme("screens",a);for(let c of A(l&&wr(l)||n.v(a))){var o;s.push(c),i|=l?67108864|Gn(c):a=="dark"?1073741824:c[0]=="@"?Gn(c):(o=c,1<<~(/:([a-z-]+)/.test(o)&&~Fl.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:t,p:i,r:s,i:e}}var no=new Map;function Zn(t){if(t.d){let e=[],r=Vn(t.r.reduce((n,i)=>i[0]=="@"?(e.push(i),n):i?Vn(n,s=>Vn(i,o=>{let a=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(o);if(a){let l=s.indexOf(a[1]);return~l?s.slice(0,l)+a[0]+s.slice(l+a[1].length):Hn(s,o)}return Hn(o,s)})):n,"&"),n=>Hn(n,t.n?"."+to(t.n):""));return r&&e.push(r.replace(/:merge\((.+?)\)/g,"$1")),e.reduceRight((n,i)=>i+"{"+n+"}",t.d)}}function Vn(t,e){return t.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(r,n,i)=>e(n)+i)}function Hn(t,e){return t.replace(/&/g,e)}var Ks=new Intl.Collator("en",{numeric:!0});function io(t,e){for(var r=0,n=t.length;r<n;){let i=n+r>>1;0>=so(t[i],e)?r=i+1:n=i}return n}function so(t,e){let r=t.p&B.o;return r==(e.p&B.o)&&(r==B.b||r==B.o)?0:t.p-e.p||t.o-e.o||Ks.compare(Ys(t.n),Ys(e.n))||Ks.compare(Xs(t.n),Xs(e.n))}function Ys(t){return(t||"").split(/:/).pop().split("/").pop()||"\0"}function Xs(t){return(t||"").replace(/\W/g,e=>String.fromCharCode(127+e.charCodeAt(0)))+"\0"}function zn(t,e){return Math.round(parseInt(t,16)*e)}function Y(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(${[zn(t.substr(1,s),o),zn(t.substr(1+s,s),o),zn(t.substr(1+2*s,s),o),i]})`}return i=="1"?t:i=="0"?"#0000":t.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${i})`)}function oo(t,e,r,n,i=[]){return(function s(o,{n:a,p:l,r:c=[],i:u},h){let p=[],g="",f=0,S=0;for(let y in o||{}){var b,E;let x=o[y];if(y[0]=="@"){if(!x)continue;if(y[1]=="a"){p.push(...ti(a,l,gr(""+x),h,l,c,u,!0));continue}if(y[1]=="l"){for(let $ of A(x))p.push(...s($,{n:a,p:(b=B[y[7]],l&~B.o|b),r:y[7]=="d"?[]:c,i:u},h));continue}if(y[1]=="i"){p.push(...A(x).map($=>({p:-1,o:0,r:[],d:y+" "+$})));continue}if(y[1]=="k"){p.push({p:B.d,o:0,r:[y],d:s(x,{p:B.d},h).map(Zn).join("")});continue}if(y[1]=="f"){p.push(...A(x).map($=>({p:B.d,o:0,r:[y],d:s($,{p:B.d},h).map(Zn).join("")})));continue}}if(typeof x!="object"||Array.isArray(x))y=="label"&&x?a=x+fr(JSON.stringify([l,u,o])):(x||x===0)&&(y=y.replace(/[A-Z]/g,$=>"-"+$.toLowerCase()),S+=1,f=Math.max(f,(E=y)[0]=="-"?0:ro(E)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(E)?+!!RegExp.$1||-!!RegExp.$2:0)+1),g+=(g?";":"")+A(x).map($=>h.s(y,ei(""+$,h.theme)+(u?" !important":""))).join(";"));else if(y[0]=="@"||y.includes("&")){let $=l;y[0]=="@"&&(y=y.replace(/\bscreen\(([^)]+)\)/g,(L,R)=>{let F=h.theme("screens",R);return F?($|=67108864,wr(F,"")):L}),$|=Gn(y)),p.push(...s(x,{n:a,p:$,r:[...c,y],i:u},h))}else p.push(...s(x,{p:l,r:[...c,y]},h))}return p.unshift({n:a,p:l,o:Math.max(0,15-S)+1.5*Math.min(f||15,15),r:c,d:g}),p.sort(so)})(t,Qn(e,r,n,i),r)}function ei(t,e){return t.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(r,n,i,s,o="")=>{let a=e(i,o);return typeof a=="function"&&/color|fill|stroke/i.test(i)?Y(a):""+A(a).filter(l=>Object(l)!==l)})}function ao(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 mr(t,e,r=B.u,n,i){let s=[];for(let o of t)for(let a of(function(l,c,u,h,p){l={...l,i:l.i||p};let g=(function(f,S){let b=no.get(f.n);return b?b(f,S):S.r(f.n,f.v[0]=="dark")})(l,c);return g?typeof g=="string"?({r:h,p:u}=Qn(l,c,u,h),ao(mr(gr(g),c,u,h,l.i),l.n)):Array.isArray(g)?g.map(f=>{var S,b;return{o:0,...f,r:[...A(h),...A(f.r)],p:(S=u,b=f.p??u,S&~B.o|b)}}):oo(g,l,c,u,h):[{c:Xn(l),p:0,o:0,r:[]}]})(o,e,r,n,i))s.splice(io(s,a),0,a);return s}function ti(t,e,r,n,i,s,o,a){return ao((a?r.flatMap(l=>mr([l],n,i,s,o)):mr(r,n,i,s,o)).map(l=>l.p&B.o&&(l.n||e==B.b)?{...l,p:l.p&~B.o|e,o:0}:l),t)}function Nl(t,e,r,n){var i;return i=(s,o)=>{let{n:a,p:l,r:c,i:u}=Qn(s,o,e);return r&&ti(a,e,r,o,l,c,u,n)},no.set(t,i),t}function Wn(t,e,r){if(t[t.length-1]!="("){let n=[],i=!1,s=!1,o="";for(let a of t)if(!(a=="("||/[~@]$/.test(a))){if(a[0]=="!"&&(a=a.slice(1),i=!i),a.endsWith(":")){n[a=="dark:"?"unshift":"push"](a.slice(0,-1));continue}a[0]=="-"&&(a=a.slice(1),s=!s),a.endsWith("-")&&(a=a.slice(0,-1)),a&&a!="&"&&(o+=(o&&"-")+a)}o&&(s&&(o="-"+o),e[0].push({n:o,v:n.filter(Vl),i}))}}function Vl(t,e,r){return r.indexOf(t)==e}var Qs=new Map;function gr(t){let e=Qs.get(t);if(!e){let r=[],n=[[]],i=0,s=0,o=null,a=0,l=(c,u=0)=>{i!=a&&(r.push(t.slice(i,a+u)),c&&Wn(r,n)),i=a+1};for(;a<t.length;a++){let c=t[a];if(s)t[a-1]!="\\"&&(s+=+(c=="[")||-(c=="]"));else if(c=="[")s+=1;else if(o)t[a-1]!="\\"&&o.test(t.slice(a))&&(o=null,i=a+RegExp.lastMatch.length);else if(c=="/"&&t[a-1]!="\\"&&(t[a+1]=="*"||t[a+1]=="/"))o=t[a+1]=="*"?/^\*\//:/^[\r\n]/;else if(c=="(")l(),r.push(c);else if(c==":")t[a+1]!=":"&&l(!1,1);else if(/[\s,)]/.test(c)){l(!0);let u=r.lastIndexOf("(");if(c==")"){let h=r[u-1];if(/[~@]$/.test(h)){let p=n.shift();r.length=u,Wn([...r,"#"],n);let{v:g}=n[0].pop();for(let f of p)f.v.splice(+(f.v[0]=="dark")-+(g[0]=="dark"),g.length);Wn([...r,Nl(h.length>1?h.slice(0,-1)+fr(JSON.stringify([h,p])):h+"("+ql(p)+")",B.a,p,/@$/.test(h))],n)}u=r.lastIndexOf("(",u-1)}r.length=u+1}else/[~@]/.test(c)&&t[a+1]=="("&&n.unshift([])}l(!0),Qs.set(t,e=n[0])}return e}function m(t,e,r){return[t,Jn(e,r)]}function Jn(t,e){return typeof t=="function"?t:typeof t=="string"&&/^[\w-]+$/.test(t)?(r,n)=>({[t]:e?e(r,n):Kn(r,1)}):r=>t||{[r[1]]:Kn(r,2)}}function Kn(t,e,r=t.slice(e).find(Boolean)||t.$$||t.input){return t.input[0]=="-"?`calc(${r} * -1)`:r}function w(t,e,r,n){return[t,ri(e,r,n)]}function ri(t,e,r){let n=typeof e=="string"?(i,s)=>({[e]:r?r(i,s):i._}):e||(({1:i,_:s},o,a)=>({[i||a]:s}));return(i,s)=>{let o=lo(t||i[1]),a=s.theme(o,i.$$)??oe(i.$$,o,s);if(a!=null)return i._=Kn(i,0,a),n(i,s,o)}}function q(t,e={},r){return[t,Hl(e,r)]}function Hl(t={},e){return(r,n)=>{let{section:i=lo(r[0]).replace("-","")+"Color"}=t,[s,o]=zl(r.$$);if(!s)return;let a=n.theme(i,s)||oe(s,i,n);if(!a||typeof a=="object")return;let{opacityVariable:l=`--tw-${r[0].replace(/-$/,"")}-opacity`,opacitySection:c=i.replace("Color","Opacity"),property:u=i,selector:h}=t,p=n.theme(c,o||"DEFAULT")||o&&oe(o,c,n),g=e||(({_:S})=>{let b=_t(u,S);return h?{[h]:b}:b});r._={value:Y(a,{opacityVariable:l||void 0,opacityValue:p||void 0}),color:S=>Y(a,S),opacityVariable:l||void 0,opacityValue:p||void 0};let f=g(r,n);if(!r.dark){let S=n.d(i,s,a);S&&S!==a&&(r._={value:Y(S,{opacityVariable:l||void 0,opacityValue:p||"1"}),color:b=>Y(S,b),opacityVariable:l||void 0,opacityValue:p||void 0},f={"&":f,[n.v("dark")]:g(r,n)})}return f}}function zl(t){return(t.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function _t(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 oe(t,e,r){if(t[0]=="["&&t.slice(-1)=="]"){if(t=Qe(ei(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 lo(t){return t.replace(/-./g,e=>e[1].toUpperCase())}function Qe(t){return t.includes("url(")?t.replace(/(.*?)(url\(.*?\))(.*?)/g,(e,r="",n,i="")=>Qe(r)+n+Qe(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 Mt({presets:t=[],...e}){let r={darkMode:void 0,darkColor:void 0,preflight:e.preflight!==!1&&[],theme:{},variants:A(e.variants),rules:A(e.rules),ignorelist:A(e.ignorelist),hash:void 0,stringify:(n,i)=>n+":"+i,finalize:[]};for(let n of A([...t,{darkMode:e.darkMode,darkColor:e.darkColor,preflight:e.preflight!==!1&&A(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:a,variants:l,rules:c,ignorelist:u,hash:h=r.hash,stringify:p=r.stringify,finalize:g}=typeof n=="function"?n(r):n;r={preflight:r.preflight!==!1&&i!==!1&&[...r.preflight,...A(i)],darkMode:s,darkColor:o,theme:{...r.theme,...a,extend:{...r.theme.extend,...a?.extend}},variants:[...r.variants,...A(l)],rules:[...r.rules,...A(c)],ignorelist:[...r.ignorelist,...A(u)],hash:h,stringify:p,finalize:[...r.finalize,...A(g)]}}return r}function eo(t,e,r,n,i,s){for(let o of e){let a=r.get(o);a||r.set(o,a=n(o));let l=a(t,i,s);if(l)return l}}function Wl(t){var e;return Yn(t[0],typeof(e=t[1])=="function"?e:()=>e)}function Gl(t){var e,r;return Array.isArray(t)?Yn(t[0],Jn(t[1],t[2])):Yn(t,Jn(e,r))}function Yn(t,e){return co(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 co(t,e){let r=A(t).map(Zl);return(n,i,s)=>{for(let o of r){let a=e(n,o,i,s);if(a)return a}}}function Zl(t){return typeof t=="string"?RegExp("^"+t+(t.includes("$")||t.slice(-1)=="-"?"":"$")):t}function uo(t,e){let r=Mt(t),n=(function({theme:l,darkMode:c,darkColor:u=yr,variants:h,rules:p,hash:g,stringify:f,ignorelist:S,finalize:b}){let E=new Map,y=new Map,x=new Map,$=new Map,L=co(S,(M,N)=>N.test(M));h.push(["dark",Array.isArray(c)||c=="class"?`${A(c)[1]||".dark"} &`:typeof c=="string"&&c!="media"?c:"@media (prefers-color-scheme:dark)"]);let R=typeof g=="function"?M=>g(M,fr):g?fr:Js;R!==Js&&b.push(M=>({...M,n:M.n&&R(M.n),d:M.d?.replace(/--(tw(?:-[\w-]+)?)\b/g,(N,W)=>"--"+R(W).replace("#",""))}));let F={theme:(function({extend:M={},...N}){let W={},nn={get colors(){return Ce("colors")},theme:Ce,negative(){return{}},breakpoints(O){let V={};for(let Z in O)typeof O[Z]=="string"&&(V["screen-"+Z]=O[Z]);return V}};return Ce;function Ce(O,V,Z,pt){if(O){if({1:O,2:pt}=/^(\S+?)(?:\s*\/\s*([^/]+))?$/.exec(O)||[,O],/[.[]/.test(O)){let ue=[];O.replace(/\[([^\]]+)\]|([^.[]+)/g,(Ee,mt,za=mt)=>ue.push(za)),O=ue.shift(),Z=V,V=ue.join("-")}let ne=W[O]||Object.assign(Object.assign(W[O]={},zt(N,O)),zt(M,O));if(V==null)return ne;V||(V="DEFAULT");let Se=ne[V]??V.split("-").reduce((ue,Ee)=>ue?.[Ee],ne)??Z;return pt?Y(Se,{opacityValue:ei(pt,Ce)}):Se}let ft={};for(let ne of[...Object.keys(N),...Object.keys(M)])ft[ne]=Ce(ne);return ft}function zt(O,V){let Z=O[V];return typeof Z=="function"&&(Z=Z(nn)),Z&&/color|fill|stroke/i.test(V)?(function pt(ft,ne=[]){let Se={};for(let ue in ft){let Ee=ft[ue],mt=[...ne,ue];Se[mt.join("-")]=Ee,ue=="DEFAULT"&&(mt=ne,Se[ne.join("-")]=Ee),typeof Ee=="object"&&Object.assign(Se,pt(Ee,mt))}return Se})(Z):Z}})(l),e:to,h:R,s(M,N){return f(M,N,F)},d(M,N,W){return u(M,N,F,W)},v(M){return E.has(M)||E.set(M,eo(M,h,y,Wl,F)||"&:"+M),E.get(M)},r(M,N){let W=JSON.stringify([M,N]);return x.has(W)||x.set(W,!L(M,F)&&eo(M,p,$,Gl,F,N)),x.get(W)},f(M){return b.reduce((N,W)=>W(N,F),M)}};return F})(r),i=new Map,s=[],o=new Set;e.resume(l=>i.set(l,l),(l,c)=>{e.insert(l,s.length,c),s.push(c),o.add(l)});function a(l){let c=n.f(l),u=Zn(c);if(u&&!o.has(u)){o.add(u);let h=io(s,l);e.insert(u,h,l),s.splice(h,0,l)}return c.n}return Object.defineProperties(function(c){if(!i.size)for(let h of A(r.preflight))typeof h=="function"&&(h=h(n)),h&&(typeof h=="string"?ti("",B.b,gr(h),n,B.b,[],!1,!0):oo(h,{},n,B.b)).forEach(a);c=""+c;let u=i.get(c);if(!u){let h=new Set;for(let p of mr(gr(c),n))h.add(p.c).add(a(p));u=[...h].filter(Boolean).join(" "),i.set(c,u).set(u,u)}return u},Object.getOwnPropertyDescriptors({get target(){return e.target},theme:n.theme,config:r,snapshot(){let l=e.snapshot(),c=new Set(o),u=new Map(i),h=[...s];return()=>{l(),o=c,i=u,s=h}},clear(){e.clear(),o=new Set,i=new Map,s=[]},destroy(){this.clear(),e.destroy()}}))}function Jl(t,e){return t!=e&&""+t.split(" ").sort()!=""+e.split(" ").sort()}function ho(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 a of o.querySelectorAll("[class]"))n(a);e.takeRecords()}function n(i){let s,o=i.getAttribute?.("class");o&&Jl(o,s=t(o))&&i.setAttribute("class",s)}}function Kl(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 vr(t){let e=t?.cssRules?t:(t&&typeof t!="string"?t:Kl(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:yr}}var Yl=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 po(t){return Yl.get(t)}function fo(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 mo(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 Xl=[["-webkit-",1],["-moz-",2],["-ms-",4]];function br(){return({stringify:t})=>({stringify(e,r,n){let i="",s=po(e);s&&(i+=t(s,r,n)+";");let o=fo(e),a=mo(e,r);for(let l of Xl)o&l[1]&&(i+=t(l[0]+e,r,n)+";"),a&l[1]&&(i+=t(e,l[0]+r,n)+";");return i+t(e,r,n)}})}function xr(){return{rules:[["line-clamp-none",{"-webkit-line-clamp":"unset"}],["line-clamp-",ri("lineClamp",({_:t})=>go(t))],["line-clamp-(\\d+)",({1:t})=>go(t)]]}}function go(t){return{overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":`${t}`}}var At={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",...J(4,"rem",4,.5,.5),...J(12,"rem",4,5),14:"3.5rem",...J(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:{...J(200,"",100,0,50),...J(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",...X(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:{...J(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"),...It(2,6),...It(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"),...It(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:t})=>({...t("spacing"),...It(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:{...J(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:{...J(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:X(8,"px"),outlineWidth:X(8,"px"),ringColor:({theme:t})=>({...t("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:_("colors"),ringOffsetWidth:X(8,"px"),ringOpacity:({theme:t})=>({...t("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...X(8,"px")},rotate:{...X(2,"deg"),...X(12,"deg",3),...X(180,"deg",45)},saturate:J(200,"",100,0,50),scale:{...J(150,"",100,0,50),...J(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:_("spacing"),scrollPadding:_("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...X(2,"deg"),...X(12,"deg",3)},space:_("spacing"),stroke:({theme:t})=>({...t("colors"),none:"none"}),strokeWidth:J(2),textColor:_("colors"),textDecorationColor:_("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...X(8,"px")},textUnderlineOffset:{auto:"auto",...X(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"),...It(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:{...J(50,"",1,0,10),auto:"auto"}};function It(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 X(t,e,r=0){let n={};for(;r<=t;r=2*r||1)n[r]=r+e;return n}function J(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 wo={"*,::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, ${At.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, ${At.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 Co=[m("\\[([-\\w]+):(.+)]",({1:t,2:e},r)=>({"@layer overrides":{"&":{[t]:oe(`[${e}]`,"",r)}}})),m("(group|peer)([~/][^-[]+)?",({input:t},{h:e})=>[{c:e(t)}]),w("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 a in r){let l=r[a];typeof l=="string"&&(s[wr(l)]={"&":{maxWidth:l,...o(a)}})}return s;function o(a){let l=i&&(typeof i=="string"?i:i[a]||i.DEFAULT);if(l)return{paddingRight:l,paddingLeft:l}}}),w("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"),w("object-","objectPosition"),m("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",kr),m("overscroll(-[xy])?-(auto|contain|none)",({1:t="",2:e})=>({["overscroll-behavior"+t]:e})),m("(static|fixed|absolute|relative|sticky)","position"),w("-?inset(-[xy])?(?:$|-)","inset",({1:t,_:e})=>({top:t!="-x"&&e,right:t!="-y"&&e,bottom:t!="-x"&&e,left:t!="-y"&&e})),w("-?(top|bottom|left|right)(?:$|-)","inset"),m("(visible|collapse)","visibility"),m("invisible",{visibility:"hidden"}),w("-?z-","zIndex"),m("flex-((row|col)(-reverse)?)","flexDirection",yo),m("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),w("(flex-(?:grow|shrink))(?:$|-)"),w("(flex)-"),w("grow(?:$|-)","flexGrow"),w("shrink(?:$|-)","flexShrink"),w("basis-","flexBasis"),w("-?(order)-"),"-?(order)-(\\d+)",w("grid-cols-","gridTemplateColumns"),m("grid-cols-(\\d+)","gridTemplateColumns",ko),w("col-","gridColumn"),m("col-(span)-(\\d+)","gridColumn",xo),w("col-start-","gridColumnStart"),m("col-start-(auto|\\d+)","gridColumnStart"),w("col-end-","gridColumnEnd"),m("col-end-(auto|\\d+)","gridColumnEnd"),w("grid-rows-","gridTemplateRows"),m("grid-rows-(\\d+)","gridTemplateRows",ko),w("row-","gridRow"),m("row-(span)-(\\d+)","gridRow",xo),w("row-start-","gridRowStart"),m("row-start-(auto|\\d+)","gridRowStart"),w("row-end-","gridRowEnd"),m("row-end-(auto|\\d+)","gridRowEnd"),m("grid-flow-((row|col)(-dense)?)","gridAutoFlow",t=>kr(yo(t))),m("grid-flow-(dense)","gridAutoFlow"),w("auto-cols-","gridAutoColumns"),w("auto-rows-","gridAutoRows"),w("gap-x(?:$|-)","gap","columnGap"),w("gap-y(?:$|-)","gap","rowGap"),w("gap(?:$|-)","gap"),"(justify-(?:items|self))-",m("justify-","justifyContent",vo),m("(content|items|self)-",t=>({["align-"+t[1]]:vo(t)})),m("(place-(content|items|self))-",({1:t,$$:e})=>({[t]:("wun".includes(e[3])?"space-":"")+e})),w("p([xytrbl])?(?:$|-)","padding",et("padding")),w("-?m([xytrbl])?(?:$|-)","margin",et("margin")),w("-?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"}})),w("w-","width"),w("min-w-","minWidth"),w("max-w-","maxWidth"),w("h-","height"),w("min-h-","minHeight"),w("max-h-","maxHeight"),w("font-","fontWeight"),w("font-","fontFamily",({_:t})=>typeof(t=A(t))[1]=="string"?{fontFamily:re(t)}:{fontFamily:re(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)",...ye({"--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,/*!*/ /*!*/)"})}),w("tracking-","letterSpacing"),w("leading-","lineHeight"),m("list-(inside|outside)","listStylePosition"),w("list-","listStyleType"),m("list-","listStyleType"),w("placeholder-opacity-","placeholderOpacity",({_:t})=>({"&::placeholder":{"--tw-placeholder-opacity":t}})),q("placeholder-",{property:"color",selector:"&::placeholder"}),m("text-(left|center|right|justify|start|end)","textAlign"),m("text-(ellipsis|clip)","textOverflow"),w("text-opacity-","textOpacity","--tw-text-opacity"),q("text-",{property:"color"}),w("text-","fontSize",({_:t})=>typeof t=="string"?{fontSize:t}:{fontSize:t[0],...typeof t[1]=="string"?{lineHeight:t[1]}:t[1]}),w("indent-","textIndent"),m("(overline|underline|line-through)","textDecorationLine"),m("no-underline",{textDecorationLine:"none"}),w("underline-offset-","textUnderlineOffset"),q("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),w("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"}),q("caret-",{opacityVariable:!1,opacitySection:"opacity"}),q("accent-",{opacityVariable:!1,opacitySection:"opacity"}),m("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:t})=>`linear-gradient(to ${je(t," ")},var(--tw-gradient-stops))`),q("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)"})),q("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)`})),q("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")),w("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),q("bg-",{section:"backgroundColor"}),w("bg-","backgroundImage"),w("bg-","backgroundPosition"),m("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",kr),w("bg-","backgroundSize"),w("rounded(?:$|-)","borderRadius"),w("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-${je(r[0])}-radius`]:e,[`border-${je(r[1])}-radius`]:e}}),m("border-(collapse|separate)","borderCollapse"),w("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),m("border-(solid|dashed|dotted|double|none)","borderStyle"),w("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:t,_:e})=>({...ye({"--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)"})),q("border-([xytrbl])-",{section:"borderColor"},et("border","Color")),q("border-"),w("border-([xytrbl])(?:$|-)","borderWidth",et("border","Width")),w("border(?:$|-)","borderWidth"),w("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"}})),w("divide-([xy])(?:$|-)","divideWidth",({1:t,_:e})=>{let r={x:"lr",y:"tb"}[t];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${t}-reverse`]:"0",[`border-${je(r[0])}Width`]:`calc(${e} * calc(1 - var(--tw-divide-${t}-reverse)))`,[`border-${je(r[1])}Width`]:`calc(${e} * var(--tw-divide-${t}-reverse))`}}}),q("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),w("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),q("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),w("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),m("ring-inset",{"--tw-ring-inset":"inset"}),q("ring-",{property:"--tw-ring-color"}),w("ring(?:$|-)","ringWidth",({_:t},{theme:e})=>({...ye({"--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":Y(e("ringOffsetColor","","#fff")),"--tw-ring-color":Y(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)"})),q("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:t})=>({"--tw-shadow-color":t.value,"--tw-shadow":"var(--tw-shadow-colored)"})),w("shadow(?:$|-)","boxShadow",({_:t})=>({...ye({"--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":re(t),"--tw-shadow-colored":re(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)"})),w("(opacity)-"),m("mix-blend-","mixBlendMode"),...bo(),...bo("backdrop-"),w("transition(?:$|-)","transitionProperty",(t,{theme:e})=>({transitionProperty:re(t),transitionTimingFunction:t._=="none"?void 0:re(e("transitionTimingFunction","")),transitionDuration:t._=="none"?void 0:re(e("transitionDuration",""))})),w("duration(?:$|-)","transitionDuration","transitionDuration",re),w("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",re),w("delay(?:$|-)","transitionDelay","transitionDelay",re),w("animate(?:$|-)","animation",(t,{theme:e,h:r,e:n})=>{let i=re(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",ii),m("transform-(cpu|gpu)",({1:t})=>({"--tw-transform":So(t=="gpu")})),w("scale(-[xy])?-","scale",({1:t,_:e})=>({["--tw-scale"+(t||"-x")]:e,["--tw-scale"+(t||"-y")]:e,...ii()})),w("-?(rotate)-","rotate",ni),w("-?(translate-[xy])-","translate",ni),w("-?(skew-[xy])-","skew",ni),m("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",kr),"(appearance)-",w("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",w("(cursor)-"),"(cursor)-",m("snap-(none)","scroll-snap-type"),m("snap-(x|y|both)",({1:t})=>({...ye({"--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"),w("scroll-p([xytrbl])?(?:$|-)","padding",et("scroll-padding")),w("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",et("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})=>({...ye({"--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"),w("-?(outline-offset)-"),q("outline-",{opacityVariable:!1,opacitySection:"opacity"}),w("outline-","outlineWidth"),"(pointer-events)-",w("(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"),q("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),q("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),w("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 kr(t){return(typeof t=="string"?t:t[1]).replace(/-/g," ").trim()}function yo(t){return(typeof t=="string"?t:t[1]).replace("col","column")}function je(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 re(t){return t&&""+(t._||t)}function vo({$$:t}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[t[3]||""]||"")+t}function et(t,e=""){return({1:r,_:n})=>{let i={x:"lr",y:"tb"}[r]||r+r;return i?{..._t(t+"-"+je(i[0])+e,n),..._t(t+"-"+je(i[1])+e,n)}:_t(t+e,n)}}function bo(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={...ye(r),[`${t}filter`]:e.map(n=>`var(--tw-${t}${n})`).join(" ")},[`(${t}filter)-(none)`,m(`${t}filter`,r),...e.map(n=>w(`${n[0]=="h"?"-?":""}(${t}${n})(?:$|-)`,n,({1:i,_:s})=>({[`--tw-${i}`]:A(s).map(o=>`${n}(${o})`).join(" "),...r})))]}function ni({1:t,_:e}){return{["--tw-"+t]:e,...ii()}}function ii(){return{...ye({"--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 xo({1:t,2:e}){return`${t} ${e} / ${t} ${e}`}function ko({1:t}){return`repeat(${t},minmax(0,1fr))`}function ye(t){return{"@layer defaults":{"*,::before,::after":t,"::backdrop":t}}}var Eo=[["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)||oe(e,"",r)||`${e}="true"`}]`],["((group|peer)(~[^-[]+)?)(-\\[(.+)]|[-[].+?)(\\/.+)?",({2:t,3:e="",4:r,5:n="",6:i=e},{e:s,h:o,v:a})=>{let l=Qe(n)||(r[0]=="["?r:a(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)||oe(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)||oe(t,"",e)),typeof t=="string")return`@media not all and (min-width:${t})`}],["min-",({$$:t},e)=>(t&&(t=oe(t,"",e)),t&&`@media (min-width:${t})`)],[/^\[(.+)]$/,({1:t})=>/[&@]/.test(t)&&Qe(t).replace(/[}]+$/,"").split("{")]];function $o({colors:t,disablePreflight:e}={}){return{preflight:e?void 0:wo,theme:{...At,colors:{inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",...t}},variants:Eo,rules:Co,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 Ql={50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a"},ec={50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},tc={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b"},rc={50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717"},nc={50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917"},ic={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},sc={50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12"},oc={50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f"},ac={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},lc={50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314"},cc={50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},uc={50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b"},dc={50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a"},hc={50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63"},pc={50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e"},fc={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a"},mc={50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81"},gc={50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95"},wc={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87"},yc={50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75"},vc={50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843"},bc={50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337"},_o={__proto__:null,slate:Ql,gray:ec,zinc:tc,neutral:rc,stone:nc,red:ic,orange:sc,amber:oc,yellow:ac,lime:lc,green:cc,emerald:uc,teal:dc,cyan:hc,sky:pc,blue:fc,indigo:mc,violet:gc,purple:wc,fuchsia:yc,pink:vc,rose:bc};function Cr({disablePreflight:t}={}){return $o({colors:_o,disablePreflight:t})}function Sr({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}`,(a,l)=>Ao(t,o[0]=="."?"."+l.e(l.h(o.slice(1))):o,l,c=>`& :is(${c.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 a=Io(o.theme("fontSize",s));return a&&{"@layer components":a}}],[t+"-",({$$:s},o)=>i(s,o)],[t,(s,o)=>({...i(e,o),"@layer base":[Mo(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"}}),Mo(t,o,r)],"@layer components":{...Io(o.theme("fontSize","base")),color:"var(--tw-prose-body)",maxWidth:"theme(max-w.prose, 65ch)"}})]]};function i(s,o){let a={},l={},c=(u,h,p)=>{let g=o.theme(`colors.${s}.${h}`,h);p["--tw-prose-"+u]=Y(g);let f=p!=l&&o.d("colors",`${s}-${h}`,g);f&&(l["--tw-prose-"+u]=Y(f))};for(let u in n){let h=n[u];u!="dark"&&h&&c(u,h,a)}for(let u in n.dark||{}){let h=n.dark[u];h&&(n.dark?c("invert-"+u,h,a):c(u,h,l))}return Object.keys(a).length?{"@layer defaults":{"&":a,[o.v("dark")]:l}}:void 0}}function Mo(t,e,r){let n={};for(let i in r)n[Ao(t,i,e,s=>`.${e.e(e.h(t))}${s}`)]=r[i];return n}function Ao(t,e,{e:r,h:n},i){return e.replace(/^[^>:]+$|(>)?((?:[^:,]+(?::[\w-]+)?)|:[\w-]+)(::[\w-]+)?/g,(s,o=" ",a=s,l="")=>i(`${o}:where(${a}):not(:where(.${r(n("not-"+t))} *))${l}`))}function Io(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 si=Mt({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:[Cr(),br(),xr(),Sr()]});function Er(t,e=!0){let r=(function(){if(xc)try{let l=vr(new CSSStyleSheet);return l.connect=c=>{let u=oi(c);u.adoptedStyleSheets=[...u.adoptedStyleSheets,l.target]},l.disconnect=yr,l}catch{}let s=document.createElement("style");s.media="not all",document.head.prepend(s);let o=[vr(s)],a=new WeakMap;return{get target(){return o[0].target},snapshot(){let l=o.map(c=>c.snapshot());return()=>l.forEach(c=>c())},clear(){o.forEach(l=>l.clear())},destroy(){o.forEach(l=>l.destroy())},insert(l,c,u){o[0].insert(l,c,u);let h=this.target.cssRules[c];o.forEach((p,g)=>g&&p.target.insertRule(h.cssText,c))},resume(l,c){return o[0].resume(l,c)},connect(l){let c=document.createElement("style");oi(l).appendChild(c);let u=vr(c),{cssRules:h}=this.target;for(let p=0;p<h.length;p++)u.target.insertRule(h[p].cssText,p);o.push(u),a.set(l,u)},disconnect(l){let c=o.indexOf(a.get(l));c>=0&&o.splice(c,1)}}})(),n=uo({...t,hash:t.hash??e},r),i=ho(n);return function(o){return class extends o{connectedCallback(){super.connectedCallback?.(),r.connect(this),i.observe(oi(this))}disconnectedCallback(){r.disconnect(this),super.disconnectedCallback?.()}constructor(...l){super(...l),this.tw=n}}}}var xc=typeof ShadowRoot<"u"&&(typeof ShadyCSS>"u"||ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype;function oi(t){return t.shadowRoot||t.attachShadow({mode:"open"})}var C=t=>Er(si)(t);var ai=class extends C(v){static properties={color:{type:String},radius:{type:String},size:{type:String},border:{type:String},darkMode:{type:Boolean,attribute:"dark-mode"}};static styles=j`
|
|
130
|
+
</svg>`};var hl=ws,yn=class extends nr{resolveIcon(e){let r=hl[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",yn);var ir=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 vn=t=>!!(t&&t.constructor&&t.call&&t.apply);var ys=t=>!(!t||!t.then||!vn(t.then));var vs=(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*bn(t,e,r=i=>i,n=1){let i=vn(r)?r:()=>r,s=e?t:0,o=e??t;for(let a=s;a<=o&&(yield i(a),!(a+n>o));a+=n);}var bs=(t,e,r,n)=>Array.from(bn(t,e,r,n));var xs=(t,e)=>t?t.reduce((r,n)=>{let[i,s]=r;return e(n)?[[...i,n],s]:[i,[...s,n]]},[[],[]]):[[],[]];var xn=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}},kn=async(t,e,r)=>{let n=e.map((c,d)=>({index:d,item:c})),i=async c=>{let d=[];for(;;){let h=n.pop();if(!h)return c(d);let[p,g]=await sr(r)(h.item);d.push({error:p,result:g,index:h.index})}},s=bs(1,t).map(()=>new Promise(i)),o=await Promise.all(s),[a,l]=xs(vs(o.flat(),c=>c.index),c=>!!c.error);if(a.length>0)throw new xn(a.map(c=>c.error));return l.map(c=>c.result)};var Cn=async(t,e)=>{let r=t?.times??3,n=t?.delay,i=t?.backoff??null;for(let s of bn(1,r)){let[o,a]=await sr(e)(l=>{throw{_exited:l}});if(!o)return a;if(o._exited)throw o._exited;if(s===r)throw o;n&&await ze(n),i&&await ze(i(s))}},ze=t=>new Promise(e=>setTimeout(e,t)),sr=t=>(...e)=>{try{let r=t(...e);return ys(r)?r.then(n=>[void 0,n]).catch(n=>[n,void 0]):[void 0,r]}catch(r){return[r,void 0]}};var We=({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 ks(t,e){let r=t?.times??3,n=t?.delay,i=t?.backoff??null,s=o=>{throw{_bailed:o}};for(let o=0;o<r;o++)try{return await e(s,o)}catch(a){if(a&&typeof a=="object"&&"_bailed"in a)throw a._bailed;if(o===r-1)throw a;n&&await ze(n),i&&await ze(i(o+1))}throw new Error("unreachable")}var fl=!0,Sn="Invariant failed";function T(t,e){if(!t){if(fl)throw new Error(Sn);var r=typeof e=="function"?e():e,n=r?"".concat(Sn,": ").concat(r):Sn;throw new Error(n)}}var or=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 ks({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 a=this.#o(s,o);s===e&&(i=a)}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){T(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 ir(this.#e,{url:()=>this.#t.url(this.conversationId,{}),onOpen:e=>this.#a(e),onMessage:e=>this.#d(JSON.parse(e.data)),onError:e=>this.#c(e),onClose:e=>this.#l(e)})}#a(e){this.#n=0}#d(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 Qd=Symbol(),ml=Symbol();var Cs=Object.getPrototypeOf,$n=new WeakMap,gl=t=>t&&($n.has(t)?$n.get(t):Cs(t)===Object.prototype||Cs(t)===Array.prototype);var Ss=t=>gl(t)&&t[ml]||null,En=(t,e=!0)=>{$n.set(t,e)};var Mn=t=>typeof t=="object"&&t!==null,wl=t=>Mn(t)&&!In.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),_s=(t,e)=>{let r=$s.get(t);if(r?.[0]===e)return r[1];let n=Array.isArray(t)?[]:Object.create(Object.getPrototypeOf(t));return En(n,!0),$s.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),a={value:s,enumerable:o,configurable:!0};if(In.has(s))En(s,!1);else if(Le.has(s)){let[l,c]=Le.get(s);a.value=_s(l,c())}Object.defineProperty(n,i,a)}),Object.preventExtensions(n)},yl=(t,e,r,n)=>({deleteProperty(i,s){let o=Reflect.get(i,s);r(s);let a=Reflect.deleteProperty(i,s);return a&&n(["delete",[s],o]),a},set(i,s,o,a){let l=!t()&&Reflect.has(i,s),c=Reflect.get(i,s,a);if(l&&(Es(c,o)||ar.has(o)&&Es(c,ar.get(o))))return!0;r(s),Mn(o)&&(o=Ss(o)||o);let d=!Le.has(o)&&bl(o)?An(o):o;return e(s,d),Reflect.set(i,s,d,a),n(["set",[s],o,c]),!0}}),Le=new WeakMap,In=new WeakSet,$s=new WeakMap,_n=[1],ar=new WeakMap,Es=Object.is,vl=(t,e)=>new Proxy(t,e),bl=wl,xl=_s,kl=yl;function An(t={}){if(!Mn(t))throw new Error("object required");let e=ar.get(t);if(e)return e;let r=_n[0],n=new Set,i=(b,S=++_n[0])=>{r!==S&&(s=r=S,n.forEach(y=>y(b,S)))},s=r,o=(b=_n[0])=>(s!==b&&(s=b,l.forEach(([S])=>{let y=S[1](b);y>r&&(r=y)})),r),a=b=>(S,y)=>{let x=[...S];x[1]=[b,...x[1]],i(x,y)},l=new Map,c=(b,S)=>{let y=!In.has(S)&&Le.get(S);if(y){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 x=y[2](a(b));l.set(b,[y,x])}else l.set(b,[y])}},d=b=>{var S;let y=l.get(b);y&&(l.delete(b),(S=y[1])==null||S.call(y))},h=b=>(n.add(b),n.size===1&&l.forEach(([y,x],$)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&x)throw new Error("remove already exists");let j=y[2](a($));l.set($,[y,j])}),()=>{n.delete(b),n.size===0&&l.forEach(([y,x],$)=>{x&&(x(),l.set($,[y]))})}),p=!0,g=kl(()=>p,c,d,i),f=vl(t,g);ar.set(t,f);let E=[t,o,h];return Le.set(f,E),Reflect.ownKeys(t).forEach(b=>{let S=Object.getOwnPropertyDescriptor(t,b);"value"in S&&S.writable&&(f[b]=t[b])}),p=!1,f}function lr(t,e,r){let n=Le.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],a=!1,c=o(d=>{if(s.push(d),r){e(s.splice(0));return}i||(i=Promise.resolve().then(()=>{i=void 0,a&&e(s.splice(0))}))});return a=!0,()=>{a=!1,c()}}function Ge(t){let e=Le.get(t);(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!e&&console.warn("Please use proxy object");let[r,n]=e;return xl(r,n())}var Ze=class{#e;#t;#r;#n=()=>{};constructor(e,r){this.#e=e,this.#t=r,this.#r=Ge(r),e.addController(this)}get state(){return this.#r}get value(){return this.#r}hostConnected(){this.#n(),this.#n=lr(this.#t,()=>{this.#r=Ge(this.#t),this.#e.requestUpdate()})}hostDisconnected(){this.#n()}};var we=class{#e;#t;proxyObject;#r;#n=()=>{};constructor(e,r,n){this.#e=e,this.#t=n,this.proxyObject=An(r),this.#r=Ge(this.proxyObject),e.addController(this)}get state(){return this.#r}get value(){return this.#r}hostConnected(){this.#n(),this.#t?.subscribe&&(this.#n=lr(this.proxyObject,()=>{this.#r=Ge(this.proxyObject),this.#e.requestUpdate()}))}hostDisconnected(){this.#n()}};var cr=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=Cl(this.#e,this.#t),!this.#n))return;let e=this.#n[this.#r]instanceof we?this.#n[this.#r]:null;e&&(this.#i=new Ze(this.#e,e.proxyObject))}hostDisconnected(){}};function Cl(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}function Tn(t,e){if(e<=0)return"";if(t=t??"",t.length>e){let r=e-1;return r>0&&t.charCodeAt(r-1)>=55296&&t.charCodeAt(r-1)<=56319&&r--,t.slice(0,r)+"\u2026"}return t}var St=an(jn(),1);var dr=class{#e;constructor({document:e}){this.#e=e}getCookies(){return(0,St.parseCookie)(this.#e.cookie)||{}}getCookie(e){return this.getCookies()[e]||null}setCookie(e,r,n){if(T(typeof e=="string",`cookie name must be a string, got: ${typeof e}`),T(e,"cookie name must not be empty"),r==null){this.#e.cookie=(0,St.stringifySetCookie)(e,"",{expires:new Date(0)});return}T(typeof r=="string",`value of cookie \`${e}\` must be a string, got: ${typeof r}`),this.#e.cookie=(0,St.stringifySetCookie)(e,r,n)}deleteCookie(e){this.setCookie(e,null)}deleteCookies(e){let r=this.getCookies();for(let n in r)e(n)&&this.deleteCookie(n)}};var hr=class{#e;constructor({localStorage:e}){this.#e=e}getItem(e){try{let r=this.#e.getItem(e);return r?JSON.parse(r):null}catch{return null}}setItem(e,r){if(r==null){this.#e.removeItem(e);return}try{let n=JSON.stringify(r);this.#e.setItem(e,n)}catch(n){console.error(`Failed to store ${e} in localStorage:`,n)}}removeItem(e){this.#e.removeItem(e)}removeItems(e){let r=[];for(let n=0;n<this.#e.length;n++){let i=this.#e.key(n);i&&e(i)&&r.push(i)}for(let n of r)this.#e.removeItem(n)}};var $t=an(jn(),1);function On({window:t}){let e=t.location.hostname,r=t.document;if(e==="localhost"||/^\d+\.\d+\.\d+\.\d+$/.test(e)||/^\[.*\]$/.test(e))return;let n=e.split(".");if(n.length<2)return;let i="__molin_domain_test__";for(let s=2;s<=n.length;s++){let o=`.${n.slice(-s).join(".")}`;try{if(r.cookie=(0,$t.stringifySetCookie)(i,"1",{domain:o,path:"/"}),(0,$t.parseCookie)(r.cookie)[i]==="1")return r.cookie=(0,$t.stringifySetCookie)(i,"",{domain:o,path:"/",expires:new Date(0)}),o}catch{continue}}return`.${n.slice(-2).join(".")}`}var Un=class{#e;#t;#r;#n;constructor({window:e}){this.#e=e,this.#t=new dr({document:e.document}),this.#r=new hr({localStorage:e.localStorage}),this.#n=e.localStorage}get distinctID(){return this.#t.getCookie("molin_distinct_id")||this.#n.getItem("molin_distinct_id")||this.#r.getItem("molin_shop_assistant_distinct_id")}set distinctID(e){if(this.#r.removeItem("molin_shop_assistant_distinct_id"),this.#t.deleteCookie("molin_shop_assistant_distinct_id"),!e){this.#t.deleteCookie("molin_distinct_id"),this.#n.removeItem("molin_distinct_id");return}T(typeof e=="string","distinct_id must be a string");try{this.#t.setCookie("molin_distinct_id",e,{path:"/",sameSite:"lax",expires:new Date(Date.now()+1e3*60*60*24*365),domain:On({window:this.#e})})}catch(r){console.warn("Could not write distinct_id to cookie:",r)}try{this.#n.setItem("molin_distinct_id",e)}catch(r){console.warn("Could not write distinct_id to localStorage:",r)}}get widgetState(){return this.#r.getItem("molin_widget")||this.#r.getItem("_molin_widget_open_state")}set widgetState(e){this.#r.setItem("molin_widget",e),this.#r.removeItem("_molin_widget_open_state")}get popupState(){return this.#r.getItem("molin_popup")||this.#r.getItem("_molin_popup")}set popupState(e){this.#r.setItem("molin_popup",e),this.#r.removeItem("_molin_popup")}get disclaimerDismissed(){return this.#r.getItem("molin_disclaimer_dismissed")??!1}set disclaimerDismissed(e){this.#r.setItem("molin_disclaimer_dismissed",e)}getConversationId(e){T(typeof e=="string","widgetId must be a string"),T(e,"widgetId must not be empty");let r=`molin_${e}_conversation_id`;return this.#t.getCookie(r)||this.#n.getItem(r)||this.#r.getItem(`_molin_${e}`)?.conversationId}setConversationId(e,r){T(typeof e=="string","widgetId must be a string"),T(e,"widgetId must not be empty");let n=`molin_${e}_conversation_id`;if(!r){this.#t.deleteCookie(n),this.#n.removeItem(n);return}T(typeof r=="string",`conversation ID for widget ${e} must be a string`);try{this.#t.setCookie(n,r,{path:"/",sameSite:"lax",expires:new Date(Date.now()+1e3*60*60*24*365),domain:On({window:this.#e})})}catch(i){console.warn(`Could not write ${n} to cookie:`,i)}try{this.#n.setItem(n,r)}catch(i){console.warn(`Could not write ${n} to localStorage:`,i)}}getConversationState(e){T(typeof e=="string","widgetId must be a string"),T(e,"widgetId must not be empty");let r=`molin_${e}_conversation`;return this.#r.getItem(r)||this.#r.getItem(`_molin_${e}`)}setConversationState(e,r){this.#r.removeItem(`_molin_${e}`),T(typeof e=="string","widgetId must be a string"),T(e,"widgetId must not be empty");let n=`molin_${e}_conversation`;this.#r.setItem(n,r)}resetAll(){this.distinctID=null,this.widgetState=null,this.popupState=null,this.disclaimerDismissed=!1,this.#r.removeItems(e=>e.startsWith("_molin_")),this.#t.deleteCookies(e=>e.startsWith("_molin_"))}},R=new Un({window});var Ds=()=>{if(window.Shopify)try{return{customerId:Dl()}}catch{return null}return null},Dl=()=>{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},Ls=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 js(t,e="http"){return t.startsWith("http://")||t.startsWith("https://")?t:`${e}://${t}`}function Je(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 Os(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 Us=()=>{if(window.ShopRenter)try{let t=jl();return{customerEmail:t?.customerEmail,customerId:t?.customerId,customerName:t?.customerName}}catch{return null}return null},jl=()=>{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}}},Ps=async()=>{try{let t=window.ShopRenter.shop?.domain;if(!t)return[];let e=js(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 Rs=()=>{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},Bs=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 Pn;function Fs(t){return{lang:t?.lang??Pn?.lang,message:t?.message,abortEarly:t?.abortEarly??Pn?.abortEarly,abortPipeEarly:t?.abortPipeEarly??Pn?.abortPipeEarly}}var Pl;function Rl(t){return Pl?.get(t)}var Bl;function ql(t){return Bl?.get(t)}var Fl;function Nl(t,e){return Fl?.get(t)?.get(e)}function Ns(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 G(t,e,r,n,i){let s=i&&"input"in i?i.input:r.value,o=i?.expected??t.expects??null,a=i?.received??Ns(s),l={kind:t.kind,type:t.type,input:s,expected:o,received:a,message:`Invalid ${e}: ${o?`Expected ${o} but r`:"R"}eceived ${a}`,requirement:t.requirement,path:i?.path,issues:i?.issues,lang:n.lang,abortEarly:n.abortEarly,abortPipeEarly:n.abortPipeEarly},c=t.kind==="schema",d=i?.message??t.message??Nl(t.reference,l.lang)??(c?ql(l.lang):null)??n.message??Rl(l.lang);d!==void 0&&(l.message=typeof d=="function"?d(l):d),c&&(r.typed=!1),r.issues?r.issues.push(l):r.issues=[l]}function K(t){return{version:1,vendor:"valibot",validate(e){return t["~run"]({value:e},Fs())}}}function Vs(t,e){return Object.hasOwn(t,e)&&e!=="__proto__"&&e!=="prototype"&&e!=="constructor"}function Hs(t,e){let r=[...new Set(t)];return r.length>1?`(${r.join(` ${e} `)})`:r[0]??"never"}function Rn(t,e){return{kind:"validation",type:"max_length",reference:Rn,async:!1,expects:`<=${t}`,requirement:t,message:e,"~run"(r,n){return r.typed&&r.value.length>this.requirement&&G(this,"length",r,n,{received:`${r.value.length}`}),r}}}function Bn(t,e){return{kind:"validation",type:"min_length",reference:Bn,async:!1,expects:`>=${t}`,requirement:t,message:e,"~run"(r,n){return r.typed&&r.value.length<this.requirement&&G(this,"length",r,n,{received:`${r.value.length}`}),r}}}function Et(t){return{kind:"transformation",type:"transform",reference:Et,async:!1,operation:t,"~run"(e){return e.value=this.operation(e.value),e}}}function zs(t,e,r){return typeof t.fallback=="function"?t.fallback(e,r):t.fallback}function qn(t,e,r){return typeof t.default=="function"?t.default(e,r):t.default}function _t(){return{kind:"schema",type:"any",reference:_t,expects:"any",async:!1,get"~standard"(){return K(this)},"~run"(t){return t.typed=!0,t}}}function Ke(t,e){return{kind:"schema",type:"array",reference:Ke,expects:"Array",async:!1,item:t,message:e,get"~standard"(){return K(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],a=this.item["~run"]({value:o},n);if(a.issues){let l={type:"array",origin:"value",input:i,key:s,value:o};for(let c of a.issues)c.path?c.path.unshift(l):c.path=[l],r.issues?.push(c);if(r.issues||(r.issues=a.issues),n.abortEarly){r.typed=!1;break}}a.typed||(r.typed=!1),r.value.push(a.value)}}else G(this,"type",r,n);return r}}}function Fn(t){return{kind:"schema",type:"boolean",reference:Fn,expects:"boolean",async:!1,message:t,get"~standard"(){return K(this)},"~run"(e,r){return typeof e.value=="boolean"?e.typed=!0:G(this,"type",e,r),e}}}function Nn(t,e){return{kind:"schema",type:"loose_object",reference:Nn,expects:"Object",async:!1,entries:t,message:e,get"~standard"(){return K(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 a=s in i?i[s]:qn(o),l=o["~run"]({value:a},n);if(l.issues){let c={type:"object",origin:"value",input:i,key:s,value:a};for(let d of l.issues)d.path?d.path.unshift(c):d.path=[c],r.issues?.push(d);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]=zs(o);else if(o.type!=="exact_optional"&&o.type!=="optional"&&o.type!=="nullish"&&(G(this,"key",r,n,{input:void 0,expected:`"${s}"`,path:[{type:"object",origin:"key",input:i,key:s,value:i[s]}]}),n.abortEarly))break}if(!r.issues||!n.abortEarly)for(let s in i)Vs(i,s)&&!(s in this.entries)&&(r.value[s]=i[s])}else G(this,"type",r,n);return r}}}function Vn(t){return{kind:"schema",type:"null",reference:Vn,expects:"null",async:!1,message:t,get"~standard"(){return K(this)},"~run"(e,r){return e.value===null?e.typed=!0:G(this,"type",e,r),e}}}function pr(t){return{kind:"schema",type:"number",reference:pr,expects:"number",async:!1,message:t,get"~standard"(){return K(this)},"~run"(e,r){return typeof e.value=="number"&&!isNaN(e.value)?e.typed=!0:G(this,"type",e,r),e}}}function W(t,e){return{kind:"schema",type:"object",reference:W,expects:"Object",async:!1,entries:t,message:e,get"~standard"(){return K(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 a=s in i?i[s]:qn(o),l=o["~run"]({value:a},n);if(l.issues){let c={type:"object",origin:"value",input:i,key:s,value:a};for(let d of l.issues)d.path?d.path.unshift(c):d.path=[c],r.issues?.push(d);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]=zs(o);else if(o.type!=="exact_optional"&&o.type!=="optional"&&o.type!=="nullish"&&(G(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 G(this,"type",r,n);return r}}}function A(t,e){return{kind:"schema",type:"optional",reference:A,expects:`(${t.expects} | undefined)`,async:!1,wrapped:t,default:e,get"~standard"(){return K(this)},"~run"(r,n){return r.value===void 0&&(this.default!==void 0&&(r.value=qn(this,r,n)),r.value===void 0)?(r.typed=!0,r):this.wrapped["~run"](r,n)}}}function Mt(t,e){return{kind:"schema",type:"picklist",reference:Mt,expects:Hs(t.map(Ns),"|"),async:!1,options:t,message:e,get"~standard"(){return K(this)},"~run"(r,n){return this.options.includes(r.value)?r.typed=!0:G(this,"type",r,n),r}}}function fr(t,e,r){return{kind:"schema",type:"record",reference:fr,expects:"Object",async:!1,key:t,value:e,message:r,get"~standard"(){return K(this)},"~run"(n,i){let s=n.value;if(s&&typeof s=="object"){n.typed=!0,n.value={};for(let o in s)if(Vs(s,o)){let a=s[o],l=this.key["~run"]({value:o},i);if(l.issues){let d={type:"object",origin:"key",input:s,key:o,value:a};for(let h of l.issues)h.path=[d],n.issues?.push(h);if(n.issues||(n.issues=l.issues),i.abortEarly){n.typed=!1;break}}let c=this.value["~run"]({value:a},i);if(c.issues){let d={type:"object",origin:"value",input:s,key:o,value:a};for(let h of c.issues)h.path?h.path.unshift(d):h.path=[d],n.issues?.push(h);if(n.issues||(n.issues=c.issues),i.abortEarly){n.typed=!1;break}}(!l.typed||!c.typed)&&(n.typed=!1),l.typed&&(n.value[l.value]=c.value)}}else G(this,"type",n,i);return n}}}function _(t){return{kind:"schema",type:"string",reference:_,expects:"string",async:!1,message:t,get"~standard"(){return K(this)},"~run"(e,r){return typeof e.value=="string"?e.typed=!0:G(this,"type",e,r),e}}}function qs(t){let e;if(t)for(let r of t)e?e.push(...r.issues):e=r.issues;return e}function mr(t,e){return{kind:"schema",type:"union",reference:mr,expects:Hs(t.map(r=>r.expects),"|"),async:!1,options:t,message:e,get"~standard"(){return K(this)},"~run"(r,n){let i,s,o;for(let a of this.options){let l=a["~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];G(this,"type",r,n,{issues:qs(s)}),r.typed=!0}else{if(o?.length===1)return o[0];G(this,"type",r,n,{issues:qs(o)})}return r}}}function Ws(t,e){let r={};for(let n in t.entries)r[n]=!e||e.includes(n)?A(t.entries[n]):t.entries[n];return{...t,entries:r,get"~standard"(){return K(this)}}}function Xe(...t){return{...t[0],pipe:t,get"~standard"(){return K(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 ve(t,e,r){let n=t["~run"]({value:e},Fs(r));return{typed:n.typed,success:!n.issues,output:n.value,issues:n.issues}}var Gs=fr(_(),mr([_(),pr(),Fn(),Vn()])),Zs=Xe(_(),Bn(1),Rn(5e3)),Js=()=>{try{return window.UNAS?Rs():window.Shopify?Ds():window.ShopRenter?Us():null}catch{return null}},Ks=async()=>{try{return window.UNAS?await Bs():window.Shopify?await Ls():window.ShopRenter?await Ps():[]}catch{return[]}},Qe={schema:W({conversationId:A(_()),messages:A(Ke(W({id:_(),timestamp:pr(),role:Mt(["user","assistant","support"]),content:_(),parts:A(Ke(mr([W({text:_()}),W({html:_()}),W({tag:_(),data:fr(_(),_t())})])))})))}),persist(t,e,r){R.setConversationState(t,{conversationId:e,messages:r}),R.setConversationId(t,e)},restore(t){try{let e=R.getConversationState(t),r=e?ve(this.schema,e):void 0;return r?.success&&r.output.conversationId?{conversationId:r.output.conversationId,messages:r.output.messages||[]}:{conversationId:R.getConversationId(t)||"",messages:[]}}catch(e){return console.error("Failed to restore conversation state:",e),{conversationId:"",messages:[]}}},reset(t){R.setConversationState(t,null),R.setConversationId(t,null)}};var et=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 we(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 or(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:()=>{Qe.reset(this.widgetId)},onConnect:(e,r)=>{let n=Js();this.#i.sendUserMeta({xUserData:this.xUserData,xCustomInstructions:this.xCustomInstructions,customerInformation:n,language:window.navigator.language,cart:[]}),Ks().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)=>{Qe.persist(this.widgetId,e,r)},restoreConversationState:()=>Qe.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=ve(Gs,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=ve(Zs,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={}){e.length>1e3&&(console.error("Message exceeds max length of 1000 characters, trimming"),e=Tn(e,1e3)),this.#e.some(o=>o.role==="assistant"&&o.parts?.some(a=>"tag"in a&&a.tag==="request-input-v1"&&"data"in a&&a.data.type==="new-conversation-button"))&&(this.sendNewChat(),this.reset());let s={xUserData:this.xUserData,xCustomInstructions:this.xCustomInstructions,role:"user",expectStreaming:!0,...r};return this.#i.enqueueUserInput(e,s)}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 Xs(t){let e=new cr(t,{provider:et,tag:"mw-context-widget",key:"contextCtrl"});return new Proxy({value:null},{get(r,n){if(n==="value")return e.value}})}et.ConnectedEvent=class extends CustomEvent{static type="mw-context-widget:connected";constructor(e,r={}){super(et.ConnectedEvent.type,{detail:e,bubbles:!0,composed:!0,...r})}};customElements.get("mw-context-widget")||customElements.define("mw-context-widget",et);function Qn(t){return[...t.v,(t.i?"!":"")+t.n].join(":")}function Vl(t,e=","){return t.map(Qn).join(e)}var io=typeof CSS<"u"&&CSS.escape||(t=>t.replace(/[!"'`*+.,;:\\/<=>?@#$%&^|~()[\]{}]/g,"\\$&").replace(/^\d/,"\\3$& "));function gr(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 vr(t,e="@media "){return e+D(t).map(r=>(typeof r=="string"&&(r={min:r}),r.raw||Object.keys(r).map(n=>`(${n}-width:${r[n]})`).join(" and "))).join(",")}function D(t=[]){return Array.isArray(t)?t:t==null?[]:[t]}function Ys(t){return t}function br(){}var q={d:0,b:134217728,c:268435456,a:671088640,u:805306368,o:939524096};function so(t){return t.match(/[-=:;]/g)?.length||0}function Zn(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(so(t),15)<<18}var Hl=["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 ei({n:t,i:e,v:r=[]},n,i,s){t&&(t=Qn({n:t,i:e,v:r})),s=[...D(s)];for(let a of r){let l=n.theme("screens",a);for(let c of D(l&&vr(l)||n.v(a))){var o;s.push(c),i|=l?67108864|Zn(c):a=="dark"?1073741824:c[0]=="@"?Zn(c):(o=c,1<<~(/:([a-z-]+)/.test(o)&&~Hl.indexOf(RegExp.$1.slice(2,7))||-18))}}return{n:t,p:i,r:s,i:e}}var oo=new Map;function Jn(t){if(t.d){let e=[],r=Hn(t.r.reduce((n,i)=>i[0]=="@"?(e.push(i),n):i?Hn(n,s=>Hn(i,o=>{let a=/(:merge\(.+?\))(:[a-z-]+|\\[.+])/.exec(o);if(a){let l=s.indexOf(a[1]);return~l?s.slice(0,l)+a[0]+s.slice(l+a[1].length):zn(s,o)}return zn(o,s)})):n,"&"),n=>zn(n,t.n?"."+io(t.n):""));return r&&e.push(r.replace(/:merge\((.+?)\)/g,"$1")),e.reduceRight((n,i)=>i+"{"+n+"}",t.d)}}function Hn(t,e){return t.replace(/ *((?:\(.+?\)|\[.+?\]|[^,])+) *(,|$)/g,(r,n,i)=>e(n)+i)}function zn(t,e){return t.replace(/&/g,e)}var Qs=new Intl.Collator("en",{numeric:!0});function ao(t,e){for(var r=0,n=t.length;r<n;){let i=n+r>>1;0>=lo(t[i],e)?r=i+1:n=i}return n}function lo(t,e){let r=t.p&q.o;return r==(e.p&q.o)&&(r==q.b||r==q.o)?0:t.p-e.p||t.o-e.o||Qs.compare(eo(t.n),eo(e.n))||Qs.compare(to(t.n),to(e.n))}function eo(t){return(t||"").split(/:/).pop().split("/").pop()||"\0"}function to(t){return(t||"").replace(/\W/g,e=>String.fromCharCode(127+e.charCodeAt(0)))+"\0"}function Wn(t,e){return Math.round(parseInt(t,16)*e)}function ee(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(${[Wn(t.substr(1,s),o),Wn(t.substr(1+s,s),o),Wn(t.substr(1+2*s,s),o),i]})`}return i=="1"?t:i=="0"?"#0000":t.replace(/^(rgb|hsl)(\([^)]+)\)$/,`$1a$2,${i})`)}function co(t,e,r,n,i=[]){return(function s(o,{n:a,p:l,r:c=[],i:d},h){let p=[],g="",f=0,E=0;for(let y in o||{}){var b,S;let x=o[y];if(y[0]=="@"){if(!x)continue;if(y[1]=="a"){p.push(...ri(a,l,yr(""+x),h,l,c,d,!0));continue}if(y[1]=="l"){for(let $ of D(x))p.push(...s($,{n:a,p:(b=q[y[7]],l&~q.o|b),r:y[7]=="d"?[]:c,i:d},h));continue}if(y[1]=="i"){p.push(...D(x).map($=>({p:-1,o:0,r:[],d:y+" "+$})));continue}if(y[1]=="k"){p.push({p:q.d,o:0,r:[y],d:s(x,{p:q.d},h).map(Jn).join("")});continue}if(y[1]=="f"){p.push(...D(x).map($=>({p:q.d,o:0,r:[y],d:s($,{p:q.d},h).map(Jn).join("")})));continue}}if(typeof x!="object"||Array.isArray(x))y=="label"&&x?a=x+gr(JSON.stringify([l,d,o])):(x||x===0)&&(y=y.replace(/[A-Z]/g,$=>"-"+$.toLowerCase()),E+=1,f=Math.max(f,(S=y)[0]=="-"?0:so(S)+(/^(?:(border-(?!w|c|sty)|[tlbr].{2,4}m?$|c.{7,8}$)|([fl].{5}l|g.{8}$|pl))/.test(S)?+!!RegExp.$1||-!!RegExp.$2:0)+1),g+=(g?";":"")+D(x).map($=>h.s(y,ti(""+$,h.theme)+(d?" !important":""))).join(";"));else if(y[0]=="@"||y.includes("&")){let $=l;y[0]=="@"&&(y=y.replace(/\bscreen\(([^)]+)\)/g,(j,B)=>{let N=h.theme("screens",B);return N?($|=67108864,vr(N,"")):j}),$|=Zn(y)),p.push(...s(x,{n:a,p:$,r:[...c,y],i:d},h))}else p.push(...s(x,{p:l,r:[...c,y]},h))}return p.unshift({n:a,p:l,o:Math.max(0,15-E)+1.5*Math.min(f||15,15),r:c,d:g}),p.sort(lo)})(t,ei(e,r,n,i),r)}function ti(t,e){return t.replace(/theme\((["'`])?(.+?)\1(?:\s*,\s*(["'`])?(.+?)\3)?\)/g,(r,n,i,s,o="")=>{let a=e(i,o);return typeof a=="function"&&/color|fill|stroke/i.test(i)?ee(a):""+D(a).filter(l=>Object(l)!==l)})}function uo(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 wr(t,e,r=q.u,n,i){let s=[];for(let o of t)for(let a of(function(l,c,d,h,p){l={...l,i:l.i||p};let g=(function(f,E){let b=oo.get(f.n);return b?b(f,E):E.r(f.n,f.v[0]=="dark")})(l,c);return g?typeof g=="string"?({r:h,p:d}=ei(l,c,d,h),uo(wr(yr(g),c,d,h,l.i),l.n)):Array.isArray(g)?g.map(f=>{var E,b;return{o:0,...f,r:[...D(h),...D(f.r)],p:(E=d,b=f.p??d,E&~q.o|b)}}):co(g,l,c,d,h):[{c:Qn(l),p:0,o:0,r:[]}]})(o,e,r,n,i))s.splice(ao(s,a),0,a);return s}function ri(t,e,r,n,i,s,o,a){return uo((a?r.flatMap(l=>wr([l],n,i,s,o)):wr(r,n,i,s,o)).map(l=>l.p&q.o&&(l.n||e==q.b)?{...l,p:l.p&~q.o|e,o:0}:l),t)}function zl(t,e,r,n){var i;return i=(s,o)=>{let{n:a,p:l,r:c,i:d}=ei(s,o,e);return r&&ri(a,e,r,o,l,c,d,n)},oo.set(t,i),t}function Gn(t,e,r){if(t[t.length-1]!="("){let n=[],i=!1,s=!1,o="";for(let a of t)if(!(a=="("||/[~@]$/.test(a))){if(a[0]=="!"&&(a=a.slice(1),i=!i),a.endsWith(":")){n[a=="dark:"?"unshift":"push"](a.slice(0,-1));continue}a[0]=="-"&&(a=a.slice(1),s=!s),a.endsWith("-")&&(a=a.slice(0,-1)),a&&a!="&"&&(o+=(o&&"-")+a)}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 ro=new Map;function yr(t){let e=ro.get(t);if(!e){let r=[],n=[[]],i=0,s=0,o=null,a=0,l=(c,d=0)=>{i!=a&&(r.push(t.slice(i,a+d)),c&&Gn(r,n)),i=a+1};for(;a<t.length;a++){let c=t[a];if(s)t[a-1]!="\\"&&(s+=+(c=="[")||-(c=="]"));else if(c=="[")s+=1;else if(o)t[a-1]!="\\"&&o.test(t.slice(a))&&(o=null,i=a+RegExp.lastMatch.length);else if(c=="/"&&t[a-1]!="\\"&&(t[a+1]=="*"||t[a+1]=="/"))o=t[a+1]=="*"?/^\*\//:/^[\r\n]/;else if(c=="(")l(),r.push(c);else if(c==":")t[a+1]!=":"&&l(!1,1);else if(/[\s,)]/.test(c)){l(!0);let d=r.lastIndexOf("(");if(c==")"){let h=r[d-1];if(/[~@]$/.test(h)){let p=n.shift();r.length=d,Gn([...r,"#"],n);let{v:g}=n[0].pop();for(let f of p)f.v.splice(+(f.v[0]=="dark")-+(g[0]=="dark"),g.length);Gn([...r,zl(h.length>1?h.slice(0,-1)+gr(JSON.stringify([h,p])):h+"("+Vl(p)+")",q.a,p,/@$/.test(h))],n)}d=r.lastIndexOf("(",d-1)}r.length=d+1}else/[~@]/.test(c)&&t[a+1]=="("&&n.unshift([])}l(!0),ro.set(t,e=n[0])}return e}function m(t,e,r){return[t,Kn(e,r)]}function Kn(t,e){return typeof t=="function"?t:typeof t=="string"&&/^[\w-]+$/.test(t)?(r,n)=>({[t]:e?e(r,n):Xn(r,1)}):r=>t||{[r[1]]:Xn(r,2)}}function Xn(t,e,r=t.slice(e).find(Boolean)||t.$$||t.input){return t.input[0]=="-"?`calc(${r} * -1)`:r}function w(t,e,r,n){return[t,ni(e,r,n)]}function ni(t,e,r){let n=typeof e=="string"?(i,s)=>({[e]:r?r(i,s):i._}):e||(({1:i,_:s},o,a)=>({[i||a]:s}));return(i,s)=>{let o=ho(t||i[1]),a=s.theme(o,i.$$)??ae(i.$$,o,s);if(a!=null)return i._=Xn(i,0,a),n(i,s,o)}}function F(t,e={},r){return[t,Gl(e,r)]}function Gl(t={},e){return(r,n)=>{let{section:i=ho(r[0]).replace("-","")+"Color"}=t,[s,o]=Zl(r.$$);if(!s)return;let a=n.theme(i,s)||ae(s,i,n);if(!a||typeof a=="object")return;let{opacityVariable:l=`--tw-${r[0].replace(/-$/,"")}-opacity`,opacitySection:c=i.replace("Color","Opacity"),property:d=i,selector:h}=t,p=n.theme(c,o||"DEFAULT")||o&&ae(o,c,n),g=e||(({_:E})=>{let b=It(d,E);return h?{[h]:b}:b});r._={value:ee(a,{opacityVariable:l||void 0,opacityValue:p||void 0}),color:E=>ee(a,E),opacityVariable:l||void 0,opacityValue:p||void 0};let f=g(r,n);if(!r.dark){let E=n.d(i,s,a);E&&E!==a&&(r._={value:ee(E,{opacityVariable:l||void 0,opacityValue:p||"1"}),color:b=>ee(E,b),opacityVariable:l||void 0,opacityValue:p||void 0},f={"&":f,[n.v("dark")]:g(r,n)})}return f}}function Zl(t){return(t.match(/^(\[[^\]]+]|[^/]+?)(?:\/(.+))?$/)||[]).slice(1)}function It(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 ae(t,e,r){if(t[0]=="["&&t.slice(-1)=="]"){if(t=tt(ti(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 ho(t){return t.replace(/-./g,e=>e[1].toUpperCase())}function tt(t){return t.includes("url(")?t.replace(/(.*?)(url\(.*?\))(.*?)/g,(e,r="",n,i="")=>tt(r)+n+tt(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 At({presets:t=[],...e}){let r={darkMode:void 0,darkColor:void 0,preflight:e.preflight!==!1&&[],theme:{},variants:D(e.variants),rules:D(e.rules),ignorelist:D(e.ignorelist),hash:void 0,stringify:(n,i)=>n+":"+i,finalize:[]};for(let n of D([...t,{darkMode:e.darkMode,darkColor:e.darkColor,preflight:e.preflight!==!1&&D(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:a,variants:l,rules:c,ignorelist:d,hash:h=r.hash,stringify:p=r.stringify,finalize:g}=typeof n=="function"?n(r):n;r={preflight:r.preflight!==!1&&i!==!1&&[...r.preflight,...D(i)],darkMode:s,darkColor:o,theme:{...r.theme,...a,extend:{...r.theme.extend,...a?.extend}},variants:[...r.variants,...D(l)],rules:[...r.rules,...D(c)],ignorelist:[...r.ignorelist,...D(d)],hash:h,stringify:p,finalize:[...r.finalize,...D(g)]}}return r}function no(t,e,r,n,i,s){for(let o of e){let a=r.get(o);a||r.set(o,a=n(o));let l=a(t,i,s);if(l)return l}}function Jl(t){var e;return Yn(t[0],typeof(e=t[1])=="function"?e:()=>e)}function Kl(t){var e,r;return Array.isArray(t)?Yn(t[0],Kn(t[1],t[2])):Yn(t,Kn(e,r))}function Yn(t,e){return po(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 po(t,e){let r=D(t).map(Xl);return(n,i,s)=>{for(let o of r){let a=e(n,o,i,s);if(a)return a}}}function Xl(t){return typeof t=="string"?RegExp("^"+t+(t.includes("$")||t.slice(-1)=="-"?"":"$")):t}function fo(t,e){let r=At(t),n=(function({theme:l,darkMode:c,darkColor:d=br,variants:h,rules:p,hash:g,stringify:f,ignorelist:E,finalize:b}){let S=new Map,y=new Map,x=new Map,$=new Map,j=po(E,(I,V)=>V.test(I));h.push(["dark",Array.isArray(c)||c=="class"?`${D(c)[1]||".dark"} &`:typeof c=="string"&&c!="media"?c:"@media (prefers-color-scheme:dark)"]);let B=typeof g=="function"?I=>g(I,gr):g?gr:Ys;B!==Ys&&b.push(I=>({...I,n:I.n&&B(I.n),d:I.d?.replace(/--(tw(?:-[\w-]+)?)\b/g,(V,J)=>"--"+B(J).replace("#",""))}));let N={theme:(function({extend:I={},...V}){let J={},on={get colors(){return $e("colors")},theme:$e,negative(){return{}},breakpoints(P){let z={};for(let X in P)typeof P[X]=="string"&&(z["screen-"+X]=P[X]);return z}};return $e;function $e(P,z,X,mt){if(P){if({1:P,2:mt}=/^(\S+?)(?:\s*\/\s*([^/]+))?$/.exec(P)||[,P],/[.[]/.test(P)){let de=[];P.replace(/\[([^\]]+)\]|([^.[]+)/g,(_e,wt,Za=wt)=>de.push(Za)),P=de.shift(),X=z,z=de.join("-")}let se=J[P]||Object.assign(Object.assign(J[P]={},Gt(V,P)),Gt(I,P));if(z==null)return se;z||(z="DEFAULT");let Ee=se[z]??z.split("-").reduce((de,_e)=>de?.[_e],se)??X;return mt?ee(Ee,{opacityValue:ti(mt,$e)}):Ee}let gt={};for(let se of[...Object.keys(V),...Object.keys(I)])gt[se]=$e(se);return gt}function Gt(P,z){let X=P[z];return typeof X=="function"&&(X=X(on)),X&&/color|fill|stroke/i.test(z)?(function mt(gt,se=[]){let Ee={};for(let de in gt){let _e=gt[de],wt=[...se,de];Ee[wt.join("-")]=_e,de=="DEFAULT"&&(wt=se,Ee[se.join("-")]=_e),typeof _e=="object"&&Object.assign(Ee,mt(_e,wt))}return Ee})(X):X}})(l),e:io,h:B,s(I,V){return f(I,V,N)},d(I,V,J){return d(I,V,N,J)},v(I){return S.has(I)||S.set(I,no(I,h,y,Jl,N)||"&:"+I),S.get(I)},r(I,V){let J=JSON.stringify([I,V]);return x.has(J)||x.set(J,!j(I,N)&&no(I,p,$,Kl,N,V)),x.get(J)},f(I){return b.reduce((V,J)=>J(V,N),I)}};return N})(r),i=new Map,s=[],o=new Set;e.resume(l=>i.set(l,l),(l,c)=>{e.insert(l,s.length,c),s.push(c),o.add(l)});function a(l){let c=n.f(l),d=Jn(c);if(d&&!o.has(d)){o.add(d);let h=ao(s,l);e.insert(d,h,l),s.splice(h,0,l)}return c.n}return Object.defineProperties(function(c){if(!i.size)for(let h of D(r.preflight))typeof h=="function"&&(h=h(n)),h&&(typeof h=="string"?ri("",q.b,yr(h),n,q.b,[],!1,!0):co(h,{},n,q.b)).forEach(a);c=""+c;let d=i.get(c);if(!d){let h=new Set;for(let p of wr(yr(c),n))h.add(p.c).add(a(p));d=[...h].filter(Boolean).join(" "),i.set(c,d).set(d,d)}return d},Object.getOwnPropertyDescriptors({get target(){return e.target},theme:n.theme,config:r,snapshot(){let l=e.snapshot(),c=new Set(o),d=new Map(i),h=[...s];return()=>{l(),o=c,i=d,s=h}},clear(){e.clear(),o=new Set,i=new Map,s=[]},destroy(){this.clear(),e.destroy()}}))}function Yl(t,e){return t!=e&&""+t.split(" ").sort()!=""+e.split(" ").sort()}function mo(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 a of o.querySelectorAll("[class]"))n(a);e.takeRecords()}function n(i){let s,o=i.getAttribute?.("class");o&&Yl(o,s=t(o))&&i.setAttribute("class",s)}}function Ql(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 xr(t){let e=t?.cssRules?t:(t&&typeof t!="string"?t:Ql(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:br}}var ec=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 go(t){return ec.get(t)}function wo(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 yo(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 tc=[["-webkit-",1],["-moz-",2],["-ms-",4]];function kr(){return({stringify:t})=>({stringify(e,r,n){let i="",s=go(e);s&&(i+=t(s,r,n)+";");let o=wo(e),a=yo(e,r);for(let l of tc)o&l[1]&&(i+=t(l[0]+e,r,n)+";"),a&l[1]&&(i+=t(e,l[0]+r,n)+";");return i+t(e,r,n)}})}function Cr(){return{rules:[["line-clamp-none",{"-webkit-line-clamp":"unset"}],["line-clamp-",ni("lineClamp",({_:t})=>vo(t))],["line-clamp-(\\d+)",({1:t})=>vo(t)]]}}function vo(t){return{overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":`${t}`}}var Dt={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",...Y(4,"rem",4,.5,.5),...Y(12,"rem",4,5),14:"3.5rem",...Y(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:M("blur"),backdropBrightness:M("brightness"),backdropContrast:M("contrast"),backdropGrayscale:M("grayscale"),backdropHueRotate:M("hueRotate"),backdropInvert:M("invert"),backdropOpacity:M("opacity"),backdropSaturate:M("saturate"),backdropSepia:M("sepia"),backgroundColor:M("colors"),backgroundImage:{none:"none"},backgroundOpacity:M("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:{...Y(200,"",100,0,50),...Y(110,"",100,90,5),75:"0.75",125:"1.25"},borderColor:({theme:t})=>({DEFAULT:t("colors.gray.200","currentColor"),...t("colors")}),borderOpacity:M("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:M("spacing"),borderWidth:{DEFAULT:"1px",...te(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:M("colors"),caretColor:M("colors"),accentColor:({theme:t})=>({auto:"auto",...t("colors")}),contrast:{...Y(200,"",100,0,50),75:"0.75",125:"1.25"},content:{none:"none"},divideColor:M("borderColor"),divideOpacity:M("borderOpacity"),divideWidth:M("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"),...Tt(2,6),...Tt(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:M("spacing"),gradientColorStops:M("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"),...Tt(2,6),min:"min-content",max:"max-content",fit:"fit-content",auto:"auto",full:"100%",screen:"100vh"}),inset:({theme:t})=>({...t("spacing"),...Tt(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:{...Y(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:{...Y(100,"",100,0,10),5:"0.05",25:"0.25",75:"0.75",95:"0.95"},order:{first:"-9999",last:"9999",none:"0"},padding:M("spacing"),placeholderColor:M("colors"),placeholderOpacity:M("opacity"),outlineColor:M("colors"),outlineOffset:te(8,"px"),outlineWidth:te(8,"px"),ringColor:({theme:t})=>({...t("colors"),DEFAULT:"#3b82f6"}),ringOffsetColor:M("colors"),ringOffsetWidth:te(8,"px"),ringOpacity:({theme:t})=>({...t("opacity"),DEFAULT:"0.5"}),ringWidth:{DEFAULT:"3px",...te(8,"px")},rotate:{...te(2,"deg"),...te(12,"deg",3),...te(180,"deg",45)},saturate:Y(200,"",100,0,50),scale:{...Y(150,"",100,0,50),...Y(110,"",100,90,5),75:"0.75",125:"1.25"},scrollMargin:M("spacing"),scrollPadding:M("spacing"),sepia:{0:"0",DEFAULT:"100%"},skew:{...te(2,"deg"),...te(12,"deg",3)},space:M("spacing"),stroke:({theme:t})=>({...t("colors"),none:"none"}),strokeWidth:Y(2),textColor:M("colors"),textDecorationColor:M("colors"),textDecorationThickness:{"from-font":"from-font",auto:"auto",...te(8,"px")},textUnderlineOffset:{auto:"auto",...te(8,"px")},textIndent:M("spacing"),textOpacity:M("opacity"),transitionDuration:({theme:t})=>({...t("durations"),DEFAULT:"150ms"}),transitionDelay:M("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"),...Tt(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:{...Y(50,"",1,0,10),auto:"auto"}};function Tt(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 te(t,e,r=0){let n={};for(;r<=t;r=2*r||1)n[r]=r+e;return n}function Y(t,e="",r=1,n=0,i=1,s={}){for(;n<=t;n+=i)s[n]=n/r+e;return s}function M(t){return({theme:e})=>e(t)}var bo={"*,::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, ${Dt.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, ${Dt.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 Eo=[m("\\[([-\\w]+):(.+)]",({1:t,2:e},r)=>({"@layer overrides":{"&":{[t]:ae(`[${e}]`,"",r)}}})),m("(group|peer)([~/][^-[]+)?",({input:t},{h:e})=>[{c:e(t)}]),w("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 a in r){let l=r[a];typeof l=="string"&&(s[vr(l)]={"&":{maxWidth:l,...o(a)}})}return s;function o(a){let l=i&&(typeof i=="string"?i:i[a]||i.DEFAULT);if(l)return{paddingRight:l,paddingLeft:l}}}),w("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"),w("object-","objectPosition"),m("object-(top|bottom|center|(left|right)(-(top|bottom))?)","objectPosition",Sr),m("overscroll(-[xy])?-(auto|contain|none)",({1:t="",2:e})=>({["overscroll-behavior"+t]:e})),m("(static|fixed|absolute|relative|sticky)","position"),w("-?inset(-[xy])?(?:$|-)","inset",({1:t,_:e})=>({top:t!="-x"&&e,right:t!="-y"&&e,bottom:t!="-x"&&e,left:t!="-y"&&e})),w("-?(top|bottom|left|right)(?:$|-)","inset"),m("(visible|collapse)","visibility"),m("invisible",{visibility:"hidden"}),w("-?z-","zIndex"),m("flex-((row|col)(-reverse)?)","flexDirection",xo),m("flex-(wrap|wrap-reverse|nowrap)","flexWrap"),w("(flex-(?:grow|shrink))(?:$|-)"),w("(flex)-"),w("grow(?:$|-)","flexGrow"),w("shrink(?:$|-)","flexShrink"),w("basis-","flexBasis"),w("-?(order)-"),"-?(order)-(\\d+)",w("grid-cols-","gridTemplateColumns"),m("grid-cols-(\\d+)","gridTemplateColumns",$o),w("col-","gridColumn"),m("col-(span)-(\\d+)","gridColumn",So),w("col-start-","gridColumnStart"),m("col-start-(auto|\\d+)","gridColumnStart"),w("col-end-","gridColumnEnd"),m("col-end-(auto|\\d+)","gridColumnEnd"),w("grid-rows-","gridTemplateRows"),m("grid-rows-(\\d+)","gridTemplateRows",$o),w("row-","gridRow"),m("row-(span)-(\\d+)","gridRow",So),w("row-start-","gridRowStart"),m("row-start-(auto|\\d+)","gridRowStart"),w("row-end-","gridRowEnd"),m("row-end-(auto|\\d+)","gridRowEnd"),m("grid-flow-((row|col)(-dense)?)","gridAutoFlow",t=>Sr(xo(t))),m("grid-flow-(dense)","gridAutoFlow"),w("auto-cols-","gridAutoColumns"),w("auto-rows-","gridAutoRows"),w("gap-x(?:$|-)","gap","columnGap"),w("gap-y(?:$|-)","gap","rowGap"),w("gap(?:$|-)","gap"),"(justify-(?:items|self))-",m("justify-","justifyContent",ko),m("(content|items|self)-",t=>({["align-"+t[1]]:ko(t)})),m("(place-(content|items|self))-",({1:t,$$:e})=>({[t]:("wun".includes(e[3])?"space-":"")+e})),w("p([xytrbl])?(?:$|-)","padding",rt("padding")),w("-?m([xytrbl])?(?:$|-)","margin",rt("margin")),w("-?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"}})),w("w-","width"),w("min-w-","minWidth"),w("max-w-","maxWidth"),w("h-","height"),w("min-h-","minHeight"),w("max-h-","maxHeight"),w("font-","fontWeight"),w("font-","fontFamily",({_:t})=>typeof(t=D(t))[1]=="string"?{fontFamily:ie(t)}:{fontFamily:ie(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)",...be({"--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,/*!*/ /*!*/)"})}),w("tracking-","letterSpacing"),w("leading-","lineHeight"),m("list-(inside|outside)","listStylePosition"),w("list-","listStyleType"),m("list-","listStyleType"),w("placeholder-opacity-","placeholderOpacity",({_:t})=>({"&::placeholder":{"--tw-placeholder-opacity":t}})),F("placeholder-",{property:"color",selector:"&::placeholder"}),m("text-(left|center|right|justify|start|end)","textAlign"),m("text-(ellipsis|clip)","textOverflow"),w("text-opacity-","textOpacity","--tw-text-opacity"),F("text-",{property:"color"}),w("text-","fontSize",({_:t})=>typeof t=="string"?{fontSize:t}:{fontSize:t[0],...typeof t[1]=="string"?{lineHeight:t[1]}:t[1]}),w("indent-","textIndent"),m("(overline|underline|line-through)","textDecorationLine"),m("no-underline",{textDecorationLine:"none"}),w("underline-offset-","textUnderlineOffset"),F("decoration-",{section:"textDecorationColor",opacityVariable:!1,opacitySection:"opacity"}),w("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"}),F("caret-",{opacityVariable:!1,opacitySection:"opacity"}),F("accent-",{opacityVariable:!1,opacitySection:"opacity"}),m("bg-gradient-to-([trbl]|[tb][rl])","backgroundImage",({1:t})=>`linear-gradient(to ${je(t," ")},var(--tw-gradient-stops))`),F("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)"})),F("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)`})),F("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")),w("bg-opacity-","backgroundOpacity","--tw-bg-opacity"),F("bg-",{section:"backgroundColor"}),w("bg-","backgroundImage"),w("bg-","backgroundPosition"),m("bg-(top|bottom|center|(left|right)(-(top|bottom))?)","backgroundPosition",Sr),w("bg-","backgroundSize"),w("rounded(?:$|-)","borderRadius"),w("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-${je(r[0])}-radius`]:e,[`border-${je(r[1])}-radius`]:e}}),m("border-(collapse|separate)","borderCollapse"),w("border-opacity(?:$|-)","borderOpacity","--tw-border-opacity"),m("border-(solid|dashed|dotted|double|none)","borderStyle"),w("border-spacing(-[xy])?(?:$|-)","borderSpacing",({1:t,_:e})=>({...be({"--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)"})),F("border-([xytrbl])-",{section:"borderColor"},rt("border","Color")),F("border-"),w("border-([xytrbl])(?:$|-)","borderWidth",rt("border","Width")),w("border(?:$|-)","borderWidth"),w("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"}})),w("divide-([xy])(?:$|-)","divideWidth",({1:t,_:e})=>{let r={x:"lr",y:"tb"}[t];return{"&>:not([hidden])~:not([hidden])":{[`--tw-divide-${t}-reverse`]:"0",[`border-${je(r[0])}Width`]:`calc(${e} * calc(1 - var(--tw-divide-${t}-reverse)))`,[`border-${je(r[1])}Width`]:`calc(${e} * var(--tw-divide-${t}-reverse))`}}}),F("divide-",{property:"borderColor",selector:"&>:not([hidden])~:not([hidden])"}),w("ring-opacity(?:$|-)","ringOpacity","--tw-ring-opacity"),F("ring-offset-",{property:"--tw-ring-offset-color",opacityVariable:!1}),w("ring-offset(?:$|-)","ringOffsetWidth","--tw-ring-offset-width"),m("ring-inset",{"--tw-ring-inset":"inset"}),F("ring-",{property:"--tw-ring-color"}),w("ring(?:$|-)","ringWidth",({_:t},{theme:e})=>({...be({"--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":ee(e("ringOffsetColor","","#fff")),"--tw-ring-color":ee(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)"})),F("shadow-",{section:"boxShadowColor",opacityVariable:!1,opacitySection:"opacity"},({_:t})=>({"--tw-shadow-color":t.value,"--tw-shadow":"var(--tw-shadow-colored)"})),w("shadow(?:$|-)","boxShadow",({_:t})=>({...be({"--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":ie(t),"--tw-shadow-colored":ie(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)"})),w("(opacity)-"),m("mix-blend-","mixBlendMode"),...Co(),...Co("backdrop-"),w("transition(?:$|-)","transitionProperty",(t,{theme:e})=>({transitionProperty:ie(t),transitionTimingFunction:t._=="none"?void 0:ie(e("transitionTimingFunction","")),transitionDuration:t._=="none"?void 0:ie(e("transitionDuration",""))})),w("duration(?:$|-)","transitionDuration","transitionDuration",ie),w("ease(?:$|-)","transitionTimingFunction","transitionTimingFunction",ie),w("delay(?:$|-)","transitionDelay","transitionDelay",ie),w("animate(?:$|-)","animation",(t,{theme:e,h:r,e:n})=>{let i=ie(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",si),m("transform-(cpu|gpu)",({1:t})=>({"--tw-transform":_o(t=="gpu")})),w("scale(-[xy])?-","scale",({1:t,_:e})=>({["--tw-scale"+(t||"-x")]:e,["--tw-scale"+(t||"-y")]:e,...si()})),w("-?(rotate)-","rotate",ii),w("-?(translate-[xy])-","translate",ii),w("-?(skew-[xy])-","skew",ii),m("origin-(center|((top|bottom)(-(left|right))?)|left|right)","transformOrigin",Sr),"(appearance)-",w("(columns)-"),"(columns)-(\\d+)","(break-(?:before|after|inside))-",w("(cursor)-"),"(cursor)-",m("snap-(none)","scroll-snap-type"),m("snap-(x|y|both)",({1:t})=>({...be({"--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"),w("scroll-p([xytrbl])?(?:$|-)","padding",rt("scroll-padding")),w("-?scroll-m([xytrbl])?(?:$|-)","scroll-margin",rt("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})=>({...be({"--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"),w("-?(outline-offset)-"),F("outline-",{opacityVariable:!1,opacitySection:"opacity"}),w("outline-","outlineWidth"),"(pointer-events)-",w("(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"),F("fill-",{section:"fill",opacityVariable:!1,opacitySection:"opacity"}),F("stroke-",{section:"stroke",opacityVariable:!1,opacitySection:"opacity"}),w("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 Sr(t){return(typeof t=="string"?t:t[1]).replace(/-/g," ").trim()}function xo(t){return(typeof t=="string"?t:t[1]).replace("col","column")}function je(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 ie(t){return t&&""+(t._||t)}function ko({$$:t}){return({r:"flex-","":"flex-",w:"space-",u:"space-",n:"space-"}[t[3]||""]||"")+t}function rt(t,e=""){return({1:r,_:n})=>{let i={x:"lr",y:"tb"}[r]||r+r;return i?{...It(t+"-"+je(i[0])+e,n),...It(t+"-"+je(i[1])+e,n)}:It(t+e,n)}}function Co(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={...be(r),[`${t}filter`]:e.map(n=>`var(--tw-${t}${n})`).join(" ")},[`(${t}filter)-(none)`,m(`${t}filter`,r),...e.map(n=>w(`${n[0]=="h"?"-?":""}(${t}${n})(?:$|-)`,n,({1:i,_:s})=>({[`--tw-${i}`]:D(s).map(o=>`${n}(${o})`).join(" "),...r})))]}function ii({1:t,_:e}){return{["--tw-"+t]:e,...si()}}function si(){return{...be({"--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":_o()}),transform:"var(--tw-transform)"}}function _o(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 So({1:t,2:e}){return`${t} ${e} / ${t} ${e}`}function $o({1:t}){return`repeat(${t},minmax(0,1fr))`}function be(t){return{"@layer defaults":{"*,::before,::after":t,"::backdrop":t}}}var Mo=[["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)||ae(e,"",r)||`${e}="true"`}]`],["((group|peer)(~[^-[]+)?)(-\\[(.+)]|[-[].+?)(\\/.+)?",({2:t,3:e="",4:r,5:n="",6:i=e},{e:s,h:o,v:a})=>{let l=tt(n)||(r[0]=="["?r:a(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)||ae(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)||ae(t,"",e)),typeof t=="string")return`@media not all and (min-width:${t})`}],["min-",({$$:t},e)=>(t&&(t=ae(t,"",e)),t&&`@media (min-width:${t})`)],[/^\[(.+)]$/,({1:t})=>/[&@]/.test(t)&&tt(t).replace(/[}]+$/,"").split("{")]];function Io({colors:t,disablePreflight:e}={}){return{preflight:e?void 0:bo,theme:{...Dt,colors:{inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",...t}},variants:Mo,rules:Eo,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 rc={50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a"},nc={50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},ic={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b"},sc={50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717"},oc={50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917"},ac={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},lc={50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12"},cc={50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f"},uc={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},dc={50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314"},hc={50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},pc={50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b"},fc={50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a"},mc={50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63"},gc={50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e"},wc={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a"},yc={50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81"},vc={50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95"},bc={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87"},xc={50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75"},kc={50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843"},Cc={50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337"},Ao={__proto__:null,slate:rc,gray:nc,zinc:ic,neutral:sc,stone:oc,red:ac,orange:lc,amber:cc,yellow:uc,lime:dc,green:hc,emerald:pc,teal:fc,cyan:mc,sky:gc,blue:wc,indigo:yc,violet:vc,purple:bc,fuchsia:xc,pink:kc,rose:Cc};function $r({disablePreflight:t}={}){return Io({colors:Ao,disablePreflight:t})}function Er({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}`,(a,l)=>Lo(t,o[0]=="."?"."+l.e(l.h(o.slice(1))):o,l,c=>`& :is(${c.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 a=Do(o.theme("fontSize",s));return a&&{"@layer components":a}}],[t+"-",({$$:s},o)=>i(s,o)],[t,(s,o)=>({...i(e,o),"@layer base":[To(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:C(20,16),marginBottom:C(20,16),paddingLeft:C(26,16)},li:{marginTop:C(8,16),marginBottom:C(8,16)},"ol>li,ul>li":{paddingLeft:C(6,16)},">ul>li p":{marginTop:C(12,16),marginBottom:C(12,16)},">ul>li>*:first-child,>ol>li>*:last-child":{marginTop:C(20,16)},">ul>li>*:last-child,>ol>li>*:last-child":{marginBottom:C(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:C(12,16),marginBottom:C(12,16)},hr:{borderColor:"var(--tw-prose-hr)",borderTopWidth:"1",marginTop:C(48,16),marginBottom:C(48,16)},blockquote:{marginTop:C(32,20),marginBottom:C(32,20),paddingLeft:C(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:C(20,16),marginBottom:C(20,16)},h1:{color:"var(--tw-prose-headings)",fontWeight:"800",fontSize:C(36,16),marginTop:"0",marginBottom:C(32,36),lineHeight:1.15},"h1 strong":{fontWeight:"900",color:"inherit"},h2:{color:"var(--tw-prose-headings)",fontWeight:"700",fontSize:C(24,16),marginTop:C(48,24),marginBottom:C(24,24),lineHeight:"1.35"},"h2 strong":{fontWeight:"800",color:"inherit"},h3:{color:"var(--tw-prose-headings)",fontWeight:"600",fontSize:C(20,16),marginTop:C(32,20),marginBottom:C(12,20),lineHeight:"1.6"},"h3 strong":{fontWeight:"700",color:"inherit"},h4:{color:"var(--tw-prose-headings)",fontWeight:"600",marginTop:C(24,16),marginBottom:C(8,16),lineHeight:"1.5"},"h4 strong":{fontWeight:"700",color:"inherit"},"hr+*,h2+*,h3+*,h4+*":{marginTop:"0"},"img,video,figure":{marginTop:C(32,16),marginBottom:C(32,16)},"figure>*":{marginTop:"0",marginBottom:"0"},figcaption:{color:"var(--tw-prose-captions)",fontSize:C(14,16),lineHeight:"1.4",marginTop:C(12,14)},code:{color:"var(--tw-prose-code)",fontWeight:"600",fontSize:C(14,16)},"code::before,code::after":{content:'"`"'},"h2 code":{fontSize:C(21,24)},"h3 code":{fontSize:C(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:C(14,16),lineHeight:"1.7",marginTop:C(24,14),marginBottom:C(24,14),borderRadius:"0.375rem",paddingTop:C(12,14),paddingRight:C(16,14),paddingBottom:C(12,14),paddingLeft:C(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:C(32,16),marginBottom:C(32,16),fontSize:C(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:C(8,14),paddingBottom:C(8,14),paddingLeft:C(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:C(8,14),paddingRight:C(8,14),paddingBottom:C(8,14),paddingLeft:C(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:C(20,16),lineHeight:"1.6",marginTop:C(24,20),marginBottom:C(24,20)},">:first-child":{marginTop:"0"},">:last-child":{marginBottom:"0"}}),To(t,o,r)],"@layer components":{...Do(o.theme("fontSize","base")),color:"var(--tw-prose-body)",maxWidth:"theme(max-w.prose, 65ch)"}})]]};function i(s,o){let a={},l={},c=(d,h,p)=>{let g=o.theme(`colors.${s}.${h}`,h);p["--tw-prose-"+d]=ee(g);let f=p!=l&&o.d("colors",`${s}-${h}`,g);f&&(l["--tw-prose-"+d]=ee(f))};for(let d in n){let h=n[d];d!="dark"&&h&&c(d,h,a)}for(let d in n.dark||{}){let h=n.dark[d];h&&(n.dark?c("invert-"+d,h,a):c(d,h,l))}return Object.keys(a).length?{"@layer defaults":{"&":a,[o.v("dark")]:l}}:void 0}}function To(t,e,r){let n={};for(let i in r)n[Lo(t,i,e,s=>`.${e.e(e.h(t))}${s}`)]=r[i];return n}function Lo(t,e,{e:r,h:n},i){return e.replace(/^[^>:]+$|(>)?((?:[^:,]+(?::[\w-]+)?)|:[\w-]+)(::[\w-]+)?/g,(s,o=" ",a=s,l="")=>i(`${o}:where(${a}):not(:where(.${r(n("not-"+t))} *))${l}`))}function Do(t){return t?typeof t=="string"?{fontSize:t}:{fontSize:t[0],...typeof t[1]=="string"?{lineHeight:t[1]}:t[1]}:void 0}function C(t,e){return`${(t/e).toFixed(3).replace(/^0|\.?0+$/g,"")}em`}var oi=At({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:[$r(),kr(),Cr(),Er()]});function _r(t,e=!0){let r=(function(){if(Sc)try{let l=xr(new CSSStyleSheet);return l.connect=c=>{let d=ai(c);d.adoptedStyleSheets=[...d.adoptedStyleSheets,l.target]},l.disconnect=br,l}catch{}let s=document.createElement("style");s.media="not all",document.head.prepend(s);let o=[xr(s)],a=new WeakMap;return{get target(){return o[0].target},snapshot(){let l=o.map(c=>c.snapshot());return()=>l.forEach(c=>c())},clear(){o.forEach(l=>l.clear())},destroy(){o.forEach(l=>l.destroy())},insert(l,c,d){o[0].insert(l,c,d);let h=this.target.cssRules[c];o.forEach((p,g)=>g&&p.target.insertRule(h.cssText,c))},resume(l,c){return o[0].resume(l,c)},connect(l){let c=document.createElement("style");ai(l).appendChild(c);let d=xr(c),{cssRules:h}=this.target;for(let p=0;p<h.length;p++)d.target.insertRule(h[p].cssText,p);o.push(d),a.set(l,d)},disconnect(l){let c=o.indexOf(a.get(l));c>=0&&o.splice(c,1)}}})(),n=fo({...t,hash:t.hash??e},r),i=mo(n);return function(o){return class extends o{connectedCallback(){super.connectedCallback?.(),r.connect(this),i.observe(ai(this))}disconnectedCallback(){r.disconnect(this),super.disconnectedCallback?.()}constructor(...l){super(...l),this.tw=n}}}}var Sc=typeof ShadowRoot<"u"&&(typeof ShadyCSS>"u"||ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype;function ai(t){return t.shadowRoot||t.attachShadow({mode:"open"})}var k=t=>_r(oi)(t);var li=class extends k(v){static properties={color:{type:String},radius:{type:String},size:{type:String},border:{type:String},darkMode:{type:Boolean,attribute:"dark-mode"}};static styles=O`
|
|
131
131
|
:host {
|
|
132
132
|
display: block;
|
|
133
133
|
}
|
|
@@ -142,7 +142,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
142
142
|
transform: rotate(360deg);
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
|
-
`;constructor(){super(),this.color="#601feb",this.radius="16.8576px",this.size="320px",this.border="#d1d5db",this.darkMode=!1}render(){return
|
|
145
|
+
`;constructor(){super(),this.color="#601feb",this.radius="16.8576px",this.size="320px",this.border="#d1d5db",this.darkMode=!1}render(){return u`
|
|
146
146
|
<div class="${this.darkMode?"dark":""} flex flex-row flex-wrap gap-0">
|
|
147
147
|
<div class="relative z-0 flex min-h-9 items-center justify-center overflow-hidden" style="border-radius: ${this.radius};">
|
|
148
148
|
<!-- Spinning gradient background -->
|
|
@@ -154,7 +154,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
154
154
|
<slot></slot>
|
|
155
155
|
</div>
|
|
156
156
|
</div>
|
|
157
|
-
`}};customElements.get("mw-spinning-border")||customElements.define("mw-spinning-border",
|
|
157
|
+
`}};customElements.get("mw-spinning-border")||customElements.define("mw-spinning-border",li);var ci=class extends k(v){static properties={state:{type:String},color:{type:String},bubbleStyle:{type:String},src:{type:String},width:{type:String},height:{type:String}};static styles=O`
|
|
158
158
|
.shadow-button {
|
|
159
159
|
box-shadow:
|
|
160
160
|
-58.9194px 74.8436px 38.218px rgba(0, 0, 0, 0.01),
|
|
@@ -162,7 +162,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
162
162
|
-14.3318px 19.109px 23.8863px rgba(0, 0, 0, 0.09),
|
|
163
163
|
-3.18483px 4.77725px 12.7393px rgba(0, 0, 0, 0.1);
|
|
164
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=()=>
|
|
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
166
|
<div class="shadow-button inline-block transition-transform hover:scale-105 active:scale-90" style="border-radius: ${this.dynamicRadius};">
|
|
167
167
|
<mw-spinning-border .color="${this.color}" .border="${"#f9fafb"}" .radius="${this.dynamicRadius}">
|
|
168
168
|
<!-- we want the transform transition on the root element so that both the transform transition and state switch transition are continuous and fluid -->
|
|
@@ -173,14 +173,14 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
173
173
|
aria-label="Open Molin AI chat window">
|
|
174
174
|
<!-- the 'open' state invites the user to open (e.g. the chat window) -->
|
|
175
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?
|
|
176
|
+
${this.src?u`
|
|
177
177
|
<!-- load given source -->
|
|
178
178
|
<img
|
|
179
179
|
class="flex items-center justify-center bg-white"
|
|
180
180
|
style="width: calc(${this.width} - 2px); height: calc(${this.height} - 2px); border-radius: ${this.dynamicRadius};"
|
|
181
181
|
src="${this.src}"
|
|
182
182
|
alt="Molin AI chat" />
|
|
183
|
-
`:
|
|
183
|
+
`:u`
|
|
184
184
|
<!-- the solid background with AI text -->
|
|
185
185
|
<div
|
|
186
186
|
class="flex items-center justify-center bg-[${this.backgroundColor}]"
|
|
@@ -219,7 +219,97 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
219
219
|
</button>
|
|
220
220
|
</mw-spinning-border>
|
|
221
221
|
</div>
|
|
222
|
-
`};customElements.get("mw-bubble")||customElements.define("mw-bubble",
|
|
222
|
+
`};customElements.get("mw-bubble")||customElements.define("mw-bubble",ci);var Mr={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Ir=t=>(...e)=>({_$litDirective$:t,values:e}),nt=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:$c}=ms;var jo=()=>document.createComment(""),it=(t,e,r)=>{let n=t._$AA.parentNode,i=e===void 0?t._$AB:e._$AA;if(r===void 0){let s=n.insertBefore(jo(),i),o=n.insertBefore(jo(),i);r=new $c(s,o,t,t.options)}else{let s=r._$AB.nextSibling,o=r._$AM,a=o!==t;if(a){let l;r._$AQ?.(t),r._$AM=t,r._$AP!==void 0&&(l=t._$AU)!==o._$AU&&r._$AP(l)}if(s!==i||a){let l=r._$AA;for(;l!==s;){let c=l.nextSibling;n.insertBefore(l,i),l=c}}}return r},xe=(t,e,r=t)=>(t._$AI(e,r),t),Ec={},Oo=(t,e=Ec)=>t._$AH=e,Uo=t=>t._$AH,Ar=t=>{t._$AR(),t._$AA.remove()};var Po=(t,e,r)=>{let n=new Map;for(let i=e;i<=r;i++)n.set(t[i],i);return n},Z=Ir(class extends nt{constructor(t){if(super(t),t.type!==Mr.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 a of t)i[o]=n?n(a,o):o,s[o]=r(a,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=Uo(t),{values:s,keys:o}=this.dt(e,r,n);if(!Array.isArray(i))return this.ut=o,s;let a=this.ut??=[],l=[],c,d,h=0,p=i.length-1,g=0,f=s.length-1;for(;h<=p&&g<=f;)if(i[h]===null)h++;else if(i[p]===null)p--;else if(a[h]===o[g])l[g]=xe(i[h],s[g]),h++,g++;else if(a[p]===o[f])l[f]=xe(i[p],s[f]),p--,f--;else if(a[h]===o[f])l[f]=xe(i[h],s[f]),it(t,l[f+1],i[h]),h++,f--;else if(a[p]===o[g])l[g]=xe(i[p],s[g]),it(t,i[h],i[p]),p--,g++;else if(c===void 0&&(c=Po(o,g,f),d=Po(a,h,p)),c.has(a[h]))if(c.has(a[p])){let E=d.get(o[g]),b=E!==void 0?i[E]:null;if(b===null){let S=it(t,i[h]);xe(S,s[g]),l[g]=S}else l[g]=xe(b,s[g]),it(t,i[h],b),i[E]=null;g++}else Ar(i[p]),p--;else Ar(i[h]),h++;for(;g<=f;){let E=it(t,l[f+1]);xe(E,s[g]),l[g++]=E}for(;h<=p;){let E=i[h++];E!==null&&Ar(E)}return this.ut=o,Oo(t,l),ne}});var Lt=class t extends k(v){static properties={examples:{type:Object},color:{type:String},darkMode:{type:Boolean,attribute:"dark-mode"}};constructor(){super(),this.examples={title:"",items:[]},this.color="",this.darkMode=!1}render(){return!this.examples?.title&&!this.examples?.items?.length?null:u`
|
|
223
|
+
<div class="${this.darkMode?"dark":""} flex h-full w-full flex-1 flex-col overflow-y-auto px-4 pt-6 pb-2">
|
|
224
|
+
${this.examples.title?u`
|
|
225
|
+
<h2 class="mt-14 px-2 pt-9 pb-2 text-left text-3xl leading-tight font-bold tracking-tight text-black dark:text-white">
|
|
226
|
+
<span>${this.examples.title}</span>
|
|
227
|
+
<svg class="inline-block h-9 w-9 align-middle" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 58 61">
|
|
228
|
+
<path
|
|
229
|
+
fill="${this.darkMode?"#6B7280":"#D2D2D2"}"
|
|
230
|
+
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" />
|
|
231
|
+
</svg>
|
|
232
|
+
</h2>
|
|
233
|
+
`:null}
|
|
234
|
+
${this.examples?.items?.length?u`
|
|
235
|
+
<ul class="mt-auto flex flex-wrap justify-end gap-2.5 text-sm leading-6 text-black select-none dark:text-white">
|
|
236
|
+
${Z(this.examples.items,e=>e,e=>u`
|
|
237
|
+
<li
|
|
238
|
+
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 dark:border-gray-600"
|
|
239
|
+
@click="${()=>this.#e(e)}">
|
|
240
|
+
<span>${e.trim()}</span>
|
|
241
|
+
</li>
|
|
242
|
+
`)}
|
|
243
|
+
</ul>
|
|
244
|
+
`:null}
|
|
245
|
+
</div>
|
|
246
|
+
`}#e(e){this.dispatchEvent(new t.ExampleClickEvent({example:e}))}};Lt.ExampleClickEvent=class extends CustomEvent{static type="mw:example-click";constructor(e,r={}){super(Lt.ExampleClickEvent.type,{detail:e,...r})}};customElements.get("mw-chat-background")||customElements.define("mw-chat-background",Lt);var Oe=class t extends k(v){static properties={content:{type:Object},showNewChat:{type:Boolean,attribute:"show-new-chat"},showClose:{type:Boolean,attribute:"show-close"},darkMode:{type:Boolean,attribute:"dark-mode"}};constructor(){super(),this.content={logoUrl:"",title:"",color:""},this.showNewChat=!1,this.showClose=!1,this.darkMode=!1}static styles=O`
|
|
247
|
+
/* blurred background */
|
|
248
|
+
|
|
249
|
+
[part='gradient-blur'] {
|
|
250
|
+
/* blur gradient */
|
|
251
|
+
mask-image: linear-gradient(to bottom, white 70%, transparent);
|
|
252
|
+
-webkit-mask-image: linear-gradient(to bottom, white 70%, transparent);
|
|
253
|
+
backdrop-filter: blur(2px);
|
|
254
|
+
|
|
255
|
+
/* bg-color gradient */
|
|
256
|
+
background-image: linear-gradient(to bottom, white 20%, transparent);
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
.dark [part='gradient-blur'] {
|
|
260
|
+
/* bg-color gradient for dark mode */
|
|
261
|
+
background-image: linear-gradient(to bottom, #2b2d31 20%, transparent);
|
|
262
|
+
}
|
|
263
|
+
`;render(){return u`
|
|
264
|
+
<div class="${this.darkMode?"dark":""} relative z-10 h-12">
|
|
265
|
+
<div part="gradient-blur" class="absolute inset-x-0.5 mt-2 h-12"></div>
|
|
266
|
+
|
|
267
|
+
<div class="absolute inset-0 h-12 overflow-hidden rounded-full">
|
|
268
|
+
<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">
|
|
269
|
+
<path
|
|
270
|
+
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"
|
|
271
|
+
fill="currentColor" />
|
|
272
|
+
</svg>
|
|
273
|
+
</div>
|
|
274
|
+
|
|
275
|
+
<div class="absolute inset-0 px-4 py-3">
|
|
276
|
+
<!-- title + buttons -->
|
|
277
|
+
<!-- h-6 keeps the same height as the right buttons to stop the text jitter when they become visible -->
|
|
278
|
+
<div class="z-10 flex h-6 items-center gap-3">
|
|
279
|
+
<!-- TODO: line-clamp-2 -->
|
|
280
|
+
<h1 class="line-clamp-2 max-w-[40%] leading-tight font-semibold tracking-tight text-white dark:text-white">${this.content.title}</h1>
|
|
281
|
+
|
|
282
|
+
<!-- spacer to push other elements to the sides -->
|
|
283
|
+
<div class="flex-grow"></div>
|
|
284
|
+
|
|
285
|
+
<!-- new chat btn -->
|
|
286
|
+
<button @click=${this.#e} type="button" class="${this.showNewChat?"inline-flex":"hidden"} shrink-0">
|
|
287
|
+
<!-- svg icon of a bubble with a plus -->
|
|
288
|
+
<svg class="h-6 w-6 fill-white dark:fill-white" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 37 36">
|
|
289
|
+
<path
|
|
290
|
+
fill-rule="evenodd"
|
|
291
|
+
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"
|
|
292
|
+
clip-rule="evenodd" />
|
|
293
|
+
</svg>
|
|
294
|
+
</button>
|
|
295
|
+
|
|
296
|
+
<!-- close chat btn -->
|
|
297
|
+
<button @click=${this.#t} class="${this.showClose?"inline-flex":"hidden"} shrink-0">
|
|
298
|
+
<!-- svg icon of an X -->
|
|
299
|
+
<svg class="h-6 w-6 stroke-white dark:stroke-white" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2">
|
|
300
|
+
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18 18 6M6 6l12 12" />
|
|
301
|
+
</svg>
|
|
302
|
+
</button>
|
|
303
|
+
</div>
|
|
304
|
+
|
|
305
|
+
<!-- logo -->
|
|
306
|
+
<div class="absolute top-1/2 left-1/2 z-10 -mt-0.5 -translate-x-1/2">
|
|
307
|
+
<!-- when injected from the dashboard, it's a base64 string data:image format -->
|
|
308
|
+
<img class="inline-block h-[52px] w-[52px] rounded-full bg-white object-cover dark:bg-gray-700" src="${this.content.logoUrl}" alt="Logo" />
|
|
309
|
+
</div>
|
|
310
|
+
</div>
|
|
311
|
+
</div>
|
|
312
|
+
`}#e(){this.dispatchEvent(new t.NewChatClickEvent)}#t(){this.dispatchEvent(new t.CloseClickEvent)}};Oe.NewChatClickEvent=class extends CustomEvent{static type="mw:new-chat-click";constructor(e={}){super(Oe.NewChatClickEvent.type,{...e})}};Oe.CloseClickEvent=class extends CustomEvent{static type="mw:close-click";constructor(e={}){super(Oe.CloseClickEvent.type,{...e})}};customElements.get("mw-chat-header")||customElements.define("mw-chat-header",Oe);var Ro={airplay:`<svg
|
|
223
313
|
xmlns="http://www.w3.org/2000/svg"
|
|
224
314
|
width="24"
|
|
225
315
|
height="24"
|
|
@@ -1463,150 +1553,27 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1463
1553
|
stroke-linejoin="round"
|
|
1464
1554
|
>
|
|
1465
1555
|
<path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z" />
|
|
1466
|
-
</svg>`};var
|
|
1556
|
+
</svg>`};var Tr=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=`
|
|
1467
1557
|
:host {
|
|
1468
1558
|
display: inline-block;
|
|
1469
1559
|
line-height: 0;
|
|
1470
1560
|
}
|
|
1471
|
-
`,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
|
|
1472
|
-
<mw-spinning-border
|
|
1473
|
-
.size=${"420px"}
|
|
1474
|
-
.color=${this.color||"#8B5CF6"}
|
|
1475
|
-
.radius=${"24px"}
|
|
1476
|
-
?dark-mode="${this.dark}"
|
|
1477
|
-
class="${this.dark?"dark":""} rounded-[24px] font-sans text-sm shadow-lg transition-transform duration-500 hover:scale-105">
|
|
1478
|
-
<form
|
|
1479
|
-
@submit="${this.#r}"
|
|
1480
|
-
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">
|
|
1481
|
-
<lucide-icon class="h-5 w-5 flex-none text-[${this.color||"#8B5CF6"}]" name="${"sparkles"}"></lucide-icon>
|
|
1482
|
-
|
|
1483
|
-
<input
|
|
1484
|
-
?disabled="${this.disabled}"
|
|
1485
|
-
@keydown="${this.#s}"
|
|
1486
|
-
@input="${this.#t}"
|
|
1487
|
-
.value="${this._inputValue}"
|
|
1488
|
-
placeholder="${this.placeholder}"
|
|
1489
|
-
autocomplete="off"
|
|
1490
|
-
name="input"
|
|
1491
|
-
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" />
|
|
1492
|
-
|
|
1493
|
-
<!-- submit button -->
|
|
1494
|
-
<button
|
|
1495
|
-
?disabled="${this.disabled||!this._inputValue.trim()}"
|
|
1496
|
-
class="${this.dark?"text-gray-800":"text-white"} relative ml-2 h-8 w-8 flex-none rounded-full bg-[${this.color||"#8B5CF6"}] p-0 hover:opacity-70 disabled:bg-gray-400 disabled:text-gray-300 disabled:hover:opacity-100"
|
|
1497
|
-
type="submit">
|
|
1498
|
-
<div class="absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
|
|
1499
|
-
<lucide-icon class="${this.dark?"text-gray-800":"text-white"} block h-5 w-5" name="${"arrow-up"}"></lucide-icon>
|
|
1500
|
-
</div>
|
|
1501
|
-
</button>
|
|
1502
|
-
</form>
|
|
1503
|
-
</mw-spinning-border>
|
|
1504
|
-
`}#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){Cc(e)&&(e.preventDefault(),this.disabled||this.#i?.click())}};De.SubmitInputEvent=class extends CustomEvent{static type="mw-floating-ask-ai:submit";constructor(e,r={}){super(De.SubmitInputEvent.type,{detail:e,bubbles:!0,composed:!0,...r})}};De.ChangeEvent=class extends CustomEvent{static type="mw-floating-ask-ai:change";constructor(e,r={}){super(De.ChangeEvent.type,{detail:e,bubbles:!0,composed:!0,...r})}};function Cc(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",De);var _r={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Mr=t=>(...e)=>({_$litDirective$:t,values:e}),tt=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:Sc}=hs;var Lo=()=>document.createComment(""),rt=(t,e,r)=>{let n=t._$AA.parentNode,i=e===void 0?t._$AB:e._$AA;if(r===void 0){let s=n.insertBefore(Lo(),i),o=n.insertBefore(Lo(),i);r=new Sc(s,o,t,t.options)}else{let s=r._$AB.nextSibling,o=r._$AM,a=o!==t;if(a){let l;r._$AQ?.(t),r._$AM=t,r._$AP!==void 0&&(l=t._$AU)!==o._$AU&&r._$AP(l)}if(s!==i||a){let l=r._$AA;for(;l!==s;){let c=l.nextSibling;n.insertBefore(l,i),l=c}}}return r},ve=(t,e,r=t)=>(t._$AI(e,r),t),Ec={},jo=(t,e=Ec)=>t._$AH=e,Do=t=>t._$AH,Ir=t=>{t._$AR(),t._$AA.remove()};var Oo=(t,e,r)=>{let n=new Map;for(let i=e;i<=r;i++)n.set(t[i],i);return n},Q=Mr(class extends tt{constructor(t){if(super(t),t.type!==_r.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 a of t)i[o]=n?n(a,o):o,s[o]=r(a,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=Do(t),{values:s,keys:o}=this.dt(e,r,n);if(!Array.isArray(i))return this.ut=o,s;let a=this.ut??=[],l=[],c,u,h=0,p=i.length-1,g=0,f=s.length-1;for(;h<=p&&g<=f;)if(i[h]===null)h++;else if(i[p]===null)p--;else if(a[h]===o[g])l[g]=ve(i[h],s[g]),h++,g++;else if(a[p]===o[f])l[f]=ve(i[p],s[f]),p--,f--;else if(a[h]===o[f])l[f]=ve(i[h],s[f]),rt(t,l[f+1],i[h]),h++,f--;else if(a[p]===o[g])l[g]=ve(i[p],s[g]),rt(t,i[h],i[p]),p--,g++;else if(c===void 0&&(c=Oo(o,g,f),u=Oo(a,h,p)),c.has(a[h]))if(c.has(a[p])){let S=u.get(o[g]),b=S!==void 0?i[S]:null;if(b===null){let E=rt(t,i[h]);ve(E,s[g]),l[g]=E}else l[g]=ve(b,s[g]),rt(t,i[h],b),i[S]=null;g++}else Ir(i[p]),p--;else Ir(i[h]),h++;for(;g<=f;){let S=rt(t,l[f+1]);ve(S,s[g]),l[g++]=S}for(;h<=p;){let S=i[h++];S!==null&&Ir(S)}return this.ut=o,jo(t,l),te}});var Tt=class t extends C(v){static properties={examples:{type:Object},color:{type:String},darkMode:{type:Boolean,attribute:"dark-mode"}};constructor(){super(),this.examples={title:"",items:[]},this.color="",this.darkMode=!1}render(){return!this.examples?.title&&!this.examples?.items?.length?null:d`
|
|
1505
|
-
<div class="${this.darkMode?"dark":""} flex h-full w-full flex-1 flex-col overflow-y-auto px-4 pt-6 pb-2">
|
|
1506
|
-
${this.examples.title?d`
|
|
1507
|
-
<h2 class="mt-14 px-2 pt-9 pb-2 text-left text-3xl leading-tight font-bold tracking-tight text-black dark:text-white">
|
|
1508
|
-
<span>${this.examples.title}</span>
|
|
1509
|
-
<svg class="inline-block h-9 w-9 align-middle" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 58 61">
|
|
1510
|
-
<path
|
|
1511
|
-
fill="${this.darkMode?"#6B7280":"#D2D2D2"}"
|
|
1512
|
-
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" />
|
|
1513
|
-
</svg>
|
|
1514
|
-
</h2>
|
|
1515
|
-
`:null}
|
|
1516
|
-
${this.examples?.items?.length?d`
|
|
1517
|
-
<ul class="mt-auto flex flex-wrap justify-end gap-2.5 text-sm leading-6 text-black select-none dark:text-white">
|
|
1518
|
-
${Q(this.examples.items,e=>e,e=>d`
|
|
1519
|
-
<li
|
|
1520
|
-
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 dark:border-gray-600"
|
|
1521
|
-
@click="${()=>this.#e(e)}">
|
|
1522
|
-
<span>${e.trim()}</span>
|
|
1523
|
-
</li>
|
|
1524
|
-
`)}
|
|
1525
|
-
</ul>
|
|
1526
|
-
`:null}
|
|
1527
|
-
</div>
|
|
1528
|
-
`}#e(e){this.dispatchEvent(new t.ExampleClickEvent({example:e}))}};Tt.ExampleClickEvent=class extends CustomEvent{static type="mw:example-click";constructor(e,r={}){super(Tt.ExampleClickEvent.type,{detail:e,...r})}};customElements.get("mw-chat-background")||customElements.define("mw-chat-background",Tt);var Oe=class t extends C(v){static properties={content:{type:Object},showNewChat:{type:Boolean,attribute:"show-new-chat"},showClose:{type:Boolean,attribute:"show-close"},darkMode:{type:Boolean,attribute:"dark-mode"}};constructor(){super(),this.content={logoUrl:"",title:"",color:""},this.showNewChat=!1,this.showClose=!1,this.darkMode=!1}static styles=j`
|
|
1529
|
-
/* blurred background */
|
|
1530
|
-
|
|
1531
|
-
[part='gradient-blur'] {
|
|
1532
|
-
/* blur gradient */
|
|
1533
|
-
mask-image: linear-gradient(to bottom, white 70%, transparent);
|
|
1534
|
-
-webkit-mask-image: linear-gradient(to bottom, white 70%, transparent);
|
|
1535
|
-
backdrop-filter: blur(2px);
|
|
1536
|
-
|
|
1537
|
-
/* bg-color gradient */
|
|
1538
|
-
background-image: linear-gradient(to bottom, white 20%, transparent);
|
|
1539
|
-
}
|
|
1540
|
-
|
|
1541
|
-
.dark [part='gradient-blur'] {
|
|
1542
|
-
/* bg-color gradient for dark mode */
|
|
1543
|
-
background-image: linear-gradient(to bottom, #2b2d31 20%, transparent);
|
|
1544
|
-
}
|
|
1545
|
-
`;render(){return d`
|
|
1546
|
-
<div class="${this.darkMode?"dark":""} relative z-10 h-12">
|
|
1547
|
-
<div part="gradient-blur" class="absolute inset-x-0.5 mt-2 h-12"></div>
|
|
1548
|
-
|
|
1549
|
-
<div class="absolute inset-0 h-12 overflow-hidden rounded-full">
|
|
1550
|
-
<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">
|
|
1551
|
-
<path
|
|
1552
|
-
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"
|
|
1553
|
-
fill="currentColor" />
|
|
1554
|
-
</svg>
|
|
1555
|
-
</div>
|
|
1556
|
-
|
|
1557
|
-
<div class="absolute inset-0 px-4 py-3">
|
|
1558
|
-
<!-- title + buttons -->
|
|
1559
|
-
<!-- h-6 keeps the same height as the right buttons to stop the text jitter when they become visible -->
|
|
1560
|
-
<div class="z-10 flex h-6 items-center gap-3">
|
|
1561
|
-
<!-- TODO: line-clamp-2 -->
|
|
1562
|
-
<h1 class="line-clamp-2 max-w-[40%] leading-tight font-semibold tracking-tight text-white dark:text-white">${this.content.title}</h1>
|
|
1563
|
-
|
|
1564
|
-
<!-- spacer to push other elements to the sides -->
|
|
1565
|
-
<div class="flex-grow"></div>
|
|
1566
|
-
|
|
1567
|
-
<!-- new chat btn -->
|
|
1568
|
-
<button @click=${this.#e} type="button" class="${this.showNewChat?"inline-flex":"hidden"} shrink-0">
|
|
1569
|
-
<!-- svg icon of a bubble with a plus -->
|
|
1570
|
-
<svg class="h-6 w-6 fill-white dark:fill-white" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 37 36">
|
|
1571
|
-
<path
|
|
1572
|
-
fill-rule="evenodd"
|
|
1573
|
-
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"
|
|
1574
|
-
clip-rule="evenodd" />
|
|
1575
|
-
</svg>
|
|
1576
|
-
</button>
|
|
1577
|
-
|
|
1578
|
-
<!-- close chat btn -->
|
|
1579
|
-
<button @click=${this.#t} class="${this.showClose?"inline-flex":"hidden"} shrink-0">
|
|
1580
|
-
<!-- svg icon of an X -->
|
|
1581
|
-
<svg class="h-6 w-6 stroke-white dark:stroke-white" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2">
|
|
1582
|
-
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18 18 6M6 6l12 12" />
|
|
1583
|
-
</svg>
|
|
1584
|
-
</button>
|
|
1585
|
-
</div>
|
|
1586
|
-
|
|
1587
|
-
<!-- logo -->
|
|
1588
|
-
<div class="absolute top-1/2 left-1/2 z-10 -mt-0.5 -translate-x-1/2">
|
|
1589
|
-
<!-- when injected from the dashboard, it's a base64 string data:image format -->
|
|
1590
|
-
<img class="inline-block h-[52px] w-[52px] rounded-full bg-white object-cover dark:bg-gray-700" src="${this.content.logoUrl}" alt="Logo" />
|
|
1591
|
-
</div>
|
|
1592
|
-
</div>
|
|
1593
|
-
</div>
|
|
1594
|
-
`}#e(){this.dispatchEvent(new t.NewChatClickEvent)}#t(){this.dispatchEvent(new t.CloseClickEvent)}};Oe.NewChatClickEvent=class extends CustomEvent{static type="mw:new-chat-click";constructor(e={}){super(Oe.NewChatClickEvent.type,{...e})}};Oe.CloseClickEvent=class extends CustomEvent{static type="mw:close-click";constructor(e={}){super(Oe.CloseClickEvent.type,{...e})}};customElements.get("mw-chat-header")||customElements.define("mw-chat-header",Oe);var qo=sn(Bo(),1);var le=Object.freeze({PENDING:"pending",READY:"ready",ERROR:"error"}),Lr=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()}hostDisconnected(){this.#a(),this.#c(),this.#r&&this.#r.parentNode&&this.#r.parentNode.removeChild(this.#r)}#o(){this.#t.enabled&&(this.#e.addEventListener("dragover",this.#m),this.#e.addEventListener("dragenter",this.#v),this.#e.addEventListener("dragleave",this.#b),this.#e.addEventListener("drop",this.#x))}#a(){this.#e.removeEventListener("dragover",this.#m),this.#e.removeEventListener("dragenter",this.#v),this.#e.removeEventListener("dragleave",this.#b),this.#e.removeEventListener("drop",this.#x)}#d(){this.#t.enabled&&this.#e.addEventListener("paste",this.#w)}#c(){this.#e.removeEventListener("paste",this.#w)}#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.#h),document.body.appendChild(this.#r)}#h=e=>{let r=e.target,n=Array.from(r.files||[]);this.#t.isConnected()||this.#t.onConnect?.(),this.#p(n),r.value=""};#m=e=>{e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="copy")};#v=e=>{e.preventDefault(),e.dataTransfer&&this.#y(e.dataTransfer)&&this.#g(!0)};#b=e=>{e.preventDefault();let r=e.relatedTarget;this.#e.contains(r)||this.#g(!1)};#x=e=>{if(e.preventDefault(),this.#g(!1),e.dataTransfer){let r=Array.from(e.dataTransfer.files||[]);this.#p(r)}};#w=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()).flatMap(s=>s?[s]:[]);this.#p(i)};#y(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.#k()},6e3)}#k(){this.#i=null,this.#e.requestUpdate()}async#p(e){if(e.length===0)return;this.#k();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 a=(await Promise.all(r.map(l=>this.#S(l)))).filter(l=>!this.#s.some(c=>c.dataUrl===l.dataUrl));this.#s=[...this.#s,...a],this.#e.requestUpdate(),await xn({times:5,delay:2e3},async()=>{if(this.#t.isConnected())await bn(3,a,async l=>{await this.#f(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#S(e){try{let r=await(0,qo.fileToBase64)(e);return{id:crypto.randomUUID(),name:e.name,type:e.type,size:e.size,dataUrl:r,file:e,processingState:le.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#f(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=le.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=le.READY):e.processingState=le.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=le.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===le.PENDING)}openImagePicker=()=>{if(!this.#t.enabled||!this.#t.widgetId){console.warn("Image uploads are disabled");return}this.#r&&this.#r.click()};clearError(){this.#k()}updateUploadOptions(e){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.#o(),this.#d()):(this.#a(),this.#c())}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:le.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.#k(),this.#e.requestUpdate()}};var pi={maxHeight:120,initialHeight:32,paddingY:12},K=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},darkMode:{type:Boolean,attribute:"dark-mode"},images:{type:Array}};#e=new Date;constructor(){super(),this.disabled=!1,this.streaming=!1,this.loading=!1,this.placeholder="Type a message...",this.enableImageUpload=!1,this.darkMode=!1,this.images=[],this.color="#8B5CF6"}get value(){return this.#t?.value?.trim()??""}render(){let e=this.streaming||this.loading||!this.value&&(!this.enableImageUpload||this.images.length===0);return d`
|
|
1561
|
+
`,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 _c=Ro,ui=class extends Tr{resolveIcon(e){return _c[e]}};customElements.get("lucide-icon")||customElements.define("lucide-icon",ui);var Vo=an(No(),1);var ce=Object.freeze({PENDING:"pending",READY:"ready",ERROR:"error"}),jr=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()}hostDisconnected(){this.#a(),this.#c(),this.#r&&this.#r.parentNode&&this.#r.parentNode.removeChild(this.#r)}#o(){this.#t.enabled&&(this.#e.addEventListener("dragover",this.#m),this.#e.addEventListener("dragenter",this.#v),this.#e.addEventListener("dragleave",this.#b),this.#e.addEventListener("drop",this.#x))}#a(){this.#e.removeEventListener("dragover",this.#m),this.#e.removeEventListener("dragenter",this.#v),this.#e.removeEventListener("dragleave",this.#b),this.#e.removeEventListener("drop",this.#x)}#d(){this.#t.enabled&&this.#e.addEventListener("paste",this.#w)}#c(){this.#e.removeEventListener("paste",this.#w)}#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.#h),document.body.appendChild(this.#r)}#h=e=>{let r=e.target,n=Array.from(r.files||[]);this.#t.isConnected()||this.#t.onConnect?.(),this.#p(n),r.value=""};#m=e=>{e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="copy")};#v=e=>{e.preventDefault(),e.dataTransfer&&this.#y(e.dataTransfer)&&this.#g(!0)};#b=e=>{e.preventDefault();let r=e.relatedTarget;this.#e.contains(r)||this.#g(!1)};#x=e=>{if(e.preventDefault(),this.#g(!1),e.dataTransfer){let r=Array.from(e.dataTransfer.files||[]);this.#p(r)}};#w=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()).flatMap(s=>s?[s]:[]);this.#p(i)};#y(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.#k()},6e3)}#k(){this.#i=null,this.#e.requestUpdate()}async#p(e){if(e.length===0)return;this.#k();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 a=(await Promise.all(r.map(l=>this.#S(l)))).filter(l=>!this.#s.some(c=>c.dataUrl===l.dataUrl));this.#s=[...this.#s,...a],this.#e.requestUpdate(),await Cn({times:5,delay:2e3},async()=>{if(this.#t.isConnected())await kn(3,a,async l=>{await this.#f(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#S(e){try{let r=await(0,Vo.fileToBase64)(e);return{id:crypto.randomUUID(),name:e.name,type:e.type,size:e.size,dataUrl:r,file:e,processingState:ce.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#f(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=ce.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=ce.READY):e.processingState=ce.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=ce.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===ce.PENDING)}openImagePicker=()=>{if(!this.#t.enabled||!this.#t.widgetId){console.warn("Image uploads are disabled");return}this.#r&&this.#r.click()};clearError(){this.#k()}updateUploadOptions(e){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.#o(),this.#d()):(this.#a(),this.#c())}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:ce.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.#k(),this.#e.requestUpdate()}};var fi={maxHeight:120,initialHeight:32,paddingY:12},Q=class t extends k(v){static properties={disabled:{type:Boolean},streaming:{type:Boolean},loading:{type:Boolean},placeholder:{type:String},color:{type:String},enableImageUpload:{type:Boolean},darkMode:{type:Boolean,attribute:"dark-mode"},images:{type:Array}};#e=new Date;constructor(){super(),this.disabled=!1,this.streaming=!1,this.loading=!1,this.placeholder="Type a message...",this.enableImageUpload=!1,this.darkMode=!1,this.images=[],this.color="#8B5CF6"}get value(){return this.#t?.value?.trim()??""}render(){let e=this.streaming||this.loading||!this.value&&(!this.enableImageUpload||this.images.length===0);return u`
|
|
1595
1562
|
<div
|
|
1596
1563
|
class="${this.darkMode?"dark bg-[#1E1F23]":"bg-white"} ${this.enableImageUpload&&this.images.length>0?`ring-2 ring-[${this.color}] ring-opacity-50`:""} focus-within:ring-opacity-50 w-full overflow-hidden rounded-[18px] shadow-[0px_3px_20px_0px_rgba(0,0,0,0.2)] transition-all duration-200 focus-within:ring-2 focus-within:ring-[${this.color}]">
|
|
1597
1564
|
<!-- Image preview area -->
|
|
1598
|
-
${this.enableImageUpload&&this.images&&this.images.length>0?
|
|
1565
|
+
${this.enableImageUpload&&this.images&&this.images.length>0?u`
|
|
1599
1566
|
<div class="mb-2 flex flex-wrap gap-2 rounded-t-[18px] p-2">
|
|
1600
|
-
${this.images.map(r=>
|
|
1567
|
+
${this.images.map(r=>u`
|
|
1601
1568
|
<div class="relative inline-block">
|
|
1602
1569
|
<img src="${r.dataUrl}" alt="${r.name}" class="h-[60px] w-[60px] rounded-xl object-cover" />
|
|
1603
1570
|
|
|
1604
1571
|
<!-- Progress/Status overlay -->
|
|
1605
|
-
${r.processingState===
|
|
1572
|
+
${r.processingState===ce.PENDING?u`
|
|
1606
1573
|
<div class="absolute inset-0 flex items-center justify-center rounded-xl bg-black/40">
|
|
1607
1574
|
<lucide-icon name="loader-circle" class="inline-flex h-6 w-6 animate-spin text-white transition-all duration-1000"></lucide-icon>
|
|
1608
1575
|
</div>
|
|
1609
|
-
`:r.processingState===
|
|
1576
|
+
`:r.processingState===ce.ERROR?u`
|
|
1610
1577
|
<div class="absolute inset-0 flex items-center justify-center rounded-xl bg-red-500/60">
|
|
1611
1578
|
<lucide-icon name="badge-alert" class="h-6 w-6 text-white"></lucide-icon>
|
|
1612
1579
|
</div>
|
|
@@ -1627,7 +1594,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1627
1594
|
|
|
1628
1595
|
<!-- Input form -->
|
|
1629
1596
|
<form @submit="${this.#i}" class="flex w-full items-center">
|
|
1630
|
-
${this.enableImageUpload?
|
|
1597
|
+
${this.enableImageUpload?u`
|
|
1631
1598
|
<button
|
|
1632
1599
|
data-testid="image-upload-btn"
|
|
1633
1600
|
type="button"
|
|
@@ -1645,8 +1612,9 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1645
1612
|
@keydown="${this.#n}"
|
|
1646
1613
|
autofocus
|
|
1647
1614
|
?disabled="${this.disabled}"
|
|
1615
|
+
maxlength="1000"
|
|
1648
1616
|
placeholder="${this.placeholder}"
|
|
1649
|
-
class="${this.enableImageUpload?"px-1":"pl-3 pr-1"} box-content h-[${
|
|
1617
|
+
class="${this.enableImageUpload?"px-1":"pl-3 pr-1"} box-content h-[${fi.initialHeight}px] w-full resize-none place-content-center rounded bg-transparent py-[${fi.paddingY}px] text-base text-gray-800 outline-none placeholder:text-[14px] placeholder:font-light disabled:place-content-baseline dark:text-gray-200"></textarea>
|
|
1650
1618
|
|
|
1651
1619
|
<button
|
|
1652
1620
|
type="submit"
|
|
@@ -1655,7 +1623,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1655
1623
|
class="mx-1 rounded-full px-2 transition-all duration-150 ease-out disabled:cursor-not-allowed disabled:opacity-50">
|
|
1656
1624
|
<div
|
|
1657
1625
|
class="${this.streaming||this.loading||!this.value&&(!this.enableImageUpload||this.images.length===0)?"bg-gray-400 dark:bg-gray-600":""} ${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">
|
|
1658
|
-
${this.loading?
|
|
1626
|
+
${this.loading?u`<lucide-icon name="loader-circle" class="${e?"text-white":"text-white dark:text-gray-800"} inline-flex h-5 w-5 animate-spin transition-all"></lucide-icon>`:this.streaming?u`<lucide-icon name="x" class="${e?"text-white":"text-white dark:text-gray-800"} inline-flex h-4 w-4 transition-colors"></lucide-icon>`:u`<lucide-icon name="arrow-up" class="${e?"text-white":"text-white dark:text-gray-800"} inline-flex h-4 w-4 transition-colors"></lucide-icon>`}
|
|
1659
1627
|
</div>
|
|
1660
1628
|
</button>
|
|
1661
1629
|
</form>
|
|
@@ -1664,7 +1632,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1664
1632
|
<div class="h-5 w-full"></div>
|
|
1665
1633
|
</slot>
|
|
1666
1634
|
</div>
|
|
1667
|
-
`}get#t(){return this.renderRoot.querySelector('textarea[name="input"]')??null}get#r(){return this.renderRoot.querySelector('button[type="submit"]')??null}#n(e){
|
|
1635
|
+
`}get#t(){return this.renderRoot.querySelector('textarea[name="input"]')??null}get#r(){return this.renderRoot.querySelector('button[type="submit"]')??null}#n(e){Nc(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}=fi;e.style.height=`${n}px`;let s=e.scrollHeight,o=i*2,a=Math.min(s-o,r);e.style.height=`${a}px`,this.requestUpdate()}#a(){this.dispatchEvent(new t.ImageUploadClickEvent)}#d(e){this.dispatchEvent(new t.ImageDeleteEvent(e))}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()}};Q.ChangeEvent=class extends CustomEvent{static type="mw:change";constructor(e,r={}){super(Q.ChangeEvent.type,{detail:e,...r})}};Q.SubmitEvent=class extends CustomEvent{static type="mw:submit";constructor(e,r={}){super(Q.SubmitEvent.type,{detail:e,...r,cancelable:!0})}};Q.CancelEvent=class extends CustomEvent{static type="mw:cancel";constructor(e={}){super(Q.CancelEvent.type,{...e})}};Q.ImageUploadClickEvent=class extends CustomEvent{static type="mw:image-upload-click";constructor(e={}){super(Q.ImageUploadClickEvent.type,{...e})}};Q.ImageDeleteEvent=class extends CustomEvent{static type="mw:image-delete";constructor(e,r={}){super(Q.ImageDeleteEvent.type,{detail:e,...r})}};function Nc(t){return(t.code==="Enter"||t.code==="NumpadEnter")&&!t.ctrlKey&&!t.metaKey&&!t.shiftKey}customElements.get("mw-chat-input")||customElements.define("mw-chat-input",Q);var mi=class extends k(v){static properties={side:{type:String},status:{type:String},color:{type:String},logoUrl:{type:String,attribute:"logo"},position:{type:String},darkMode:{type:Boolean,attribute:"dark-mode"}};constructor(){super(),this.side="assistant",this.status="",this.color="",this.logoUrl="",this.position="single",this.darkMode=!1}render(){return this.#e()}#e(){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`
|
|
1668
1636
|
<div class="${this.darkMode?"dark":""} ml-20 flex justify-end font-sans text-base">
|
|
1669
1637
|
<div class="max-w-full">
|
|
1670
1638
|
<!-- include an invisible border (same color as background) so that this message is the same height as the bot message -->
|
|
@@ -1673,7 +1641,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1673
1641
|
</div>
|
|
1674
1642
|
|
|
1675
1643
|
<!-- render status (if any) -->
|
|
1676
|
-
${this.status==="sent"?
|
|
1644
|
+
${this.status==="sent"?u`
|
|
1677
1645
|
<!-- tick mark -->
|
|
1678
1646
|
<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">
|
|
1679
1647
|
<path stroke-linecap="round" stroke-linejoin="round" d="m4.5 12.75 6 6 9-13.5" />
|
|
@@ -1681,7 +1649,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1681
1649
|
`:null}
|
|
1682
1650
|
</div>
|
|
1683
1651
|
</div>
|
|
1684
|
-
`;case"assistant":case"support":return
|
|
1652
|
+
`;case"assistant":case"support":return u`
|
|
1685
1653
|
<div class="${this.darkMode?"dark":""} mr-8 flex justify-start font-sans text-base">
|
|
1686
1654
|
<div class="flex max-w-full space-x-2">
|
|
1687
1655
|
<!--
|
|
@@ -1700,13 +1668,13 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1700
1668
|
</div>
|
|
1701
1669
|
</div>
|
|
1702
1670
|
</div>
|
|
1703
|
-
`;default:throw new Error(`Unknown side: ${this.side}`)}}};customElements.get("mw-chat-message")||customElements.define("mw-chat-message",
|
|
1671
|
+
`;default:throw new Error(`Unknown side: ${this.side}`)}}};customElements.get("mw-chat-message")||customElements.define("mw-chat-message",mi);var fe=class extends k(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`
|
|
1704
1672
|
<div class="${this.#i} mb-2 min-h-[100px]">
|
|
1705
1673
|
<div class="${this.#s} relative">
|
|
1706
1674
|
<!-- Placeholder background that's only shown when loading or error -->
|
|
1707
|
-
${this.#e?null:
|
|
1675
|
+
${this.#e?null:u`
|
|
1708
1676
|
<div class="flex items-center justify-center bg-gray-100" style="width: ${this.width}; height: 200px;">
|
|
1709
|
-
${this.#t?
|
|
1677
|
+
${this.#t?u`
|
|
1710
1678
|
<!-- Error icon -->
|
|
1711
1679
|
<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">
|
|
1712
1680
|
<path
|
|
@@ -1714,7 +1682,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1714
1682
|
stroke-linejoin="round"
|
|
1715
1683
|
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" />
|
|
1716
1684
|
</svg>
|
|
1717
|
-
`:
|
|
1685
|
+
`:u`
|
|
1718
1686
|
<!-- Loading pulse animation -->
|
|
1719
1687
|
<div class="h-8 w-8 animate-pulse rounded-full bg-gray-300"></div>
|
|
1720
1688
|
`}
|
|
@@ -1735,7 +1703,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1735
1703
|
</div>
|
|
1736
1704
|
|
|
1737
1705
|
<!-- Full image modal -->
|
|
1738
|
-
${this.#r?
|
|
1706
|
+
${this.#r?u`
|
|
1739
1707
|
<div
|
|
1740
1708
|
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"
|
|
1741
1709
|
@click="${this.#l}">
|
|
@@ -1759,15 +1727,15 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1759
1727
|
</div>
|
|
1760
1728
|
</div>
|
|
1761
1729
|
`:null}
|
|
1762
|
-
`:(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}))};#d=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()};#h=e=>{e.preventDefault(),e.stopPropagation()}};
|
|
1730
|
+
`:(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}))};#d=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()};#h=e=>{e.preventDefault(),e.stopPropagation()}};fe.ErrorEvent=class extends CustomEvent{static type="mw-chat-image:error";constructor(e,r={}){super(fe.ErrorEvent.type,{detail:e,...r})}};fe.LoadEvent=class extends CustomEvent{static type="mw-chat-image:load";constructor(e,r={}){super(fe.LoadEvent.type,{detail:e,...r})}};fe.ClickEvent=class extends CustomEvent{static type="mw-chat-image:click";constructor(e,r={}){super(fe.ClickEvent.type,{detail:e,...r})}};customElements.get("mw-chat-image")||customElements.define("mw-chat-image",fe);var H=t=>t??U;var Vc=["javascript:","data:text/html","vbscript:","data:text/javascript","data:text/vbscript","data:text/css","data:text/plain","data:text/xml"],jt=class t extends k(v){static properties={text:{type:String},color:{type:String},dismissible:{type:Boolean},ephemeral:{type:Boolean},darkMode:{type:Boolean,attribute:"dark-mode"},_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.ephemeral=!1,this.darkMode=!1,this._dismissed=!1}connectedCallback(){super.connectedCallback(),this.dismissible&&(this._dismissed=this.#e())}#e(){return this.ephemeral?!1:R.disclaimerDismissed}#t(){this.ephemeral||(R.disclaimerDismissed=!0)}#r=e=>{e.preventDefault(),this._dismissed=!0,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],a=n.index;return Vc.some(l=>o.toLowerCase().startsWith(l))||!o||!s?e:u`${e.slice(0,a)}<a href="${H(o)}" target="_blank" rel="noopener noreferrer" @click="${this.#i}" class="underline" style="color: ${this.color}"
|
|
1763
1731
|
>${s}</a
|
|
1764
|
-
>${e.slice(a+i.length)}`}return e}#i=e=>{e.stopPropagation()};render(){if(this._dismissed)return null;let e=this.#n(this.text);return
|
|
1732
|
+
>${e.slice(a+i.length)}`}return e}#i=e=>{e.stopPropagation()};render(){if(this._dismissed)return null;let e=this.#n(this.text);return u`
|
|
1765
1733
|
<div class="${this.darkMode?"dark":""} flex items-center justify-between">
|
|
1766
1734
|
<div class="flex flex-1 items-center justify-center">
|
|
1767
1735
|
<span class="px-3 text-center text-xs font-light text-gray-500 dark:text-gray-400">${e}</span>
|
|
1768
1736
|
</div>
|
|
1769
1737
|
|
|
1770
|
-
${this.dismissible?
|
|
1738
|
+
${this.dismissible?u`
|
|
1771
1739
|
<button
|
|
1772
1740
|
type="button"
|
|
1773
1741
|
aria-label="Dismiss"
|
|
@@ -1777,12 +1745,12 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1777
1745
|
</button>
|
|
1778
1746
|
`:null}
|
|
1779
1747
|
</div>
|
|
1780
|
-
`}};
|
|
1748
|
+
`}};jt.DismissEvent=class extends CustomEvent{static type="mw-disclaimer:dismiss";constructor(e={}){super(jt.DismissEvent.type,{...e})}};customElements.get("mw-disclaimer")||customElements.define("mw-disclaimer",jt);var gi=class extends k(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`
|
|
1781
1749
|
<div
|
|
1782
1750
|
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">
|
|
1783
1751
|
<div class="${e.bg} mb-2 flex max-w-[70%] items-center justify-center rounded-full px-3 py-2 select-none">
|
|
1784
1752
|
<!-- Icon based on variant -->
|
|
1785
|
-
${this.variant==="info"?
|
|
1753
|
+
${this.variant==="info"?u`
|
|
1786
1754
|
<!-- (i) symbol for info -->
|
|
1787
1755
|
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4">
|
|
1788
1756
|
<path
|
|
@@ -1791,21 +1759,21 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1791
1759
|
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"
|
|
1792
1760
|
fill="white" />
|
|
1793
1761
|
</svg>
|
|
1794
|
-
`:this.variant==="error"?
|
|
1762
|
+
`:this.variant==="error"?u`
|
|
1795
1763
|
<!-- Alert circle for error -->
|
|
1796
1764
|
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4">
|
|
1797
1765
|
<circle cx="12" cy="12" r="10" stroke="white" stroke-width="2" />
|
|
1798
1766
|
<line x1="15" y1="9" x2="9" y2="15" stroke="white" stroke-width="2" />
|
|
1799
1767
|
<line x1="9" y1="9" x2="15" y2="15" stroke="white" stroke-width="2" />
|
|
1800
1768
|
</svg>
|
|
1801
|
-
`:this.variant==="warning"?
|
|
1769
|
+
`:this.variant==="warning"?u`
|
|
1802
1770
|
<!-- Alert triangle for warning -->
|
|
1803
1771
|
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4">
|
|
1804
1772
|
<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" />
|
|
1805
1773
|
<line x1="12" y1="9" x2="12" y2="13" stroke="white" stroke-width="2" stroke-linecap="round" />
|
|
1806
1774
|
<path d="M12 17h.01" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
|
|
1807
1775
|
</svg>
|
|
1808
|
-
`:
|
|
1776
|
+
`:u`
|
|
1809
1777
|
<!-- Check circle for success -->
|
|
1810
1778
|
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4">
|
|
1811
1779
|
<path d="M22 11.08V12a10 10 0 11-5.93-9.14" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
|
|
@@ -1816,7 +1784,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1816
1784
|
<span class="${e.text} ml-1 text-xs">${this.text}</span>
|
|
1817
1785
|
</div>
|
|
1818
1786
|
</div>
|
|
1819
|
-
`}};customElements.get("mw-info-banner")||customElements.define("mw-info-banner",
|
|
1787
|
+
`}};customElements.get("mw-info-banner")||customElements.define("mw-info-banner",gi);var wi=class extends k(v){render=()=>u`
|
|
1820
1788
|
<svg class="inline-block h-full w-full leading-none" 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">
|
|
1821
1789
|
<circle fill="currentColor" stroke="none" cx="27" cy="50" r="6">
|
|
1822
1790
|
<animate attributeName="opacity" dur="1s" values="0;1;0" repeatCount="indefinite" begin="0.1" />
|
|
@@ -1828,11 +1796,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1828
1796
|
<animate attributeName="opacity" dur="1s" values="0;1;0" repeatCount="indefinite" begin="0.3" />
|
|
1829
1797
|
</circle>
|
|
1830
1798
|
</svg>
|
|
1831
|
-
`};customElements.get("mw-loading")||customElements.define("mw-loading",
|
|
1799
|
+
`};customElements.get("mw-loading")||customElements.define("mw-loading",wi);var Hc="https://molin.ai/?utm_source=molin-shop-ai&utm_medium=widget&utm_campaign=poweredby",yi=class extends k(v){static properties={darkMode:{type:Boolean,attribute:"dark-mode"}};constructor(){super(),this.darkMode=!1}render(){return u`
|
|
1832
1800
|
<p class="${this.darkMode?"dark text-gray-300":"text-gray-600"} flex items-center justify-center text-xs whitespace-nowrap">
|
|
1833
1801
|
<span>Powered by</span>
|
|
1834
1802
|
|
|
1835
|
-
<a href="${
|
|
1803
|
+
<a href="${Hc}" target="_blank" class="${this.darkMode?"text-gray-200":""} inline-flex items-center underline">
|
|
1836
1804
|
<svg class="mx-1 inline-block h-4 w-4" viewBox="0 0 21 21" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1837
1805
|
<circle cx="10.0361" cy="10.0361" r="10.0361" fill="#242038" />
|
|
1838
1806
|
<path
|
|
@@ -1851,17 +1819,17 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1851
1819
|
<span>Molin AI</span>
|
|
1852
1820
|
</a>
|
|
1853
1821
|
</p>
|
|
1854
|
-
`}};customElements.get("mw-powered-by")||customElements.define("mw-powered-by",
|
|
1822
|
+
`}};customElements.get("mw-powered-by")||customElements.define("mw-powered-by",yi);var zc=Math.pow(10,8)*24*60*60*1e3,l1=-zc;var Wc=3600;var Ho=Wc*24,c1=Ho*7,Gc=Ho*365.2425,Zc=Gc/12,u1=Zc*3,vi=Symbol.for("constructDateFrom");function zo(t,e){return typeof t=="function"?t(e):t&&typeof t=="object"&&vi in t?t[vi](e):t instanceof Date?new t.constructor(e):new Date(e)}function bi(t,e){return zo(e||t,t)}function Wo(t){return e=>{let n=(t?Math[t]:Math.trunc)(e);return n===0?0:n}}function Go(t,e){return+bi(t)-+bi(e)}function xi(t,e,r){let n=Go(t,e)/1e3;return Wo(r?.roundingMethod)(n)}var ki=class extends k(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},darkMode:{type:Boolean,attribute:"dark-mode"},_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=O`
|
|
1855
1823
|
:host {
|
|
1856
1824
|
display: block;
|
|
1857
1825
|
}
|
|
1858
|
-
`;#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.darkMode=!1,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
|
|
1826
|
+
`;#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.darkMode=!1,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`
|
|
1859
1827
|
<div class="mt-3 flex items-center justify-center gap-1">
|
|
1860
1828
|
<span class="text-[11px] text-black/40 dark:text-gray-500">Inspired by</span>
|
|
1861
1829
|
|
|
1862
1830
|
<img src="${e}" alt="Career Ladder" class="h-6" />
|
|
1863
1831
|
</div>
|
|
1864
|
-
`}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?
|
|
1832
|
+
`}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`
|
|
1865
1833
|
<div class="${this.darkMode?"dark bg-[#1E1F23] ring-white/10":"bg-white/70 ring-black/10"} mx-auto w-full max-w-xs rounded-2xl p-4 shadow-sm ring-1 backdrop-blur">
|
|
1866
1834
|
<div class="flex items-center justify-between">
|
|
1867
1835
|
<div class="text-[13px] text-black/60 dark:text-gray-300">${r}</div>
|
|
@@ -1877,30 +1845,30 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1877
1845
|
<div class="rounded-xl bg-black/[0.04] px-3 py-2 dark:bg-white/10">${i} ${this._guessedJob}.</div>
|
|
1878
1846
|
</div>
|
|
1879
1847
|
|
|
1880
|
-
${this._guessValidated?"":
|
|
1848
|
+
${this._guessValidated?"":u`
|
|
1881
1849
|
<div class="mt-3 grid grid-cols-2 gap-2">
|
|
1882
1850
|
<button
|
|
1883
1851
|
@click="${()=>this.#n(!1)}"
|
|
1884
1852
|
?disabled="${!!this._validatingButton}"
|
|
1885
1853
|
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 dark:bg-[#2B2D31] dark:text-gray-200">
|
|
1886
|
-
${this._validatingButton==="wrong"?
|
|
1854
|
+
${this._validatingButton==="wrong"?u`<lucide-icon class="h-4 w-4 animate-spin" name="loader-circle"></lucide-icon>`:this.wrongButtonText}
|
|
1887
1855
|
</button>
|
|
1888
1856
|
<button
|
|
1889
1857
|
@click="${()=>this.#n(!0)}"
|
|
1890
1858
|
?disabled="${!!this._validatingButton}"
|
|
1891
1859
|
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">
|
|
1892
|
-
${this._validatingButton==="correct"?
|
|
1860
|
+
${this._validatingButton==="correct"?u`<lucide-icon class="h-4 w-4 animate-spin" name="loader-circle"></lucide-icon>`:this.correctButtonText}
|
|
1893
1861
|
</button>
|
|
1894
1862
|
</div>
|
|
1895
1863
|
`}
|
|
1896
|
-
${this._guessValidated?"":
|
|
1864
|
+
${this._guessValidated?"":u`
|
|
1897
1865
|
<div class="mt-3 h-1.5 overflow-hidden rounded-full bg-black/5 dark:bg-white/10">
|
|
1898
1866
|
<div class="h-full rounded-full bg-[${this.color}] transition-[width] duration-300" style="width: 100%"></div>
|
|
1899
1867
|
</div>
|
|
1900
1868
|
`}
|
|
1901
1869
|
${this.#s()}
|
|
1902
1870
|
</div>
|
|
1903
|
-
`:this._currentQuestion?
|
|
1871
|
+
`:this._currentQuestion?u`
|
|
1904
1872
|
<div class="${this.darkMode?"dark bg-[#1E1F23] ring-white/10":"bg-white/70 ring-black/10"} mx-auto w-full max-w-xs rounded-2xl p-4 shadow-sm ring-1 backdrop-blur">
|
|
1905
1873
|
<div class="flex items-center justify-between">
|
|
1906
1874
|
<div class="text-[13px] text-black/60 dark:text-gray-300">${r}</div>
|
|
@@ -1920,12 +1888,12 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1920
1888
|
<div class="mt-3 rounded-xl bg-black/[0.04] px-3 py-2 text-[14px] font-medium text-black dark:bg-white/10 dark:text-white">${this._currentQuestion}</div>
|
|
1921
1889
|
|
|
1922
1890
|
<div class="mt-3 grid grid-cols-2 gap-1">
|
|
1923
|
-
${this.options.map((s,o)=>{let a=this._loadingAnswer===s;return
|
|
1891
|
+
${this.options.map((s,o)=>{let a=this._loadingAnswer===s;return u`
|
|
1924
1892
|
<button
|
|
1925
1893
|
@click="${()=>this.#r(s)}"
|
|
1926
1894
|
?disabled="${this._isLoadingNextQuestion}"
|
|
1927
1895
|
class="${o===0?`bg-white dark:bg-[#2B2D31] text-black dark:text-gray-200 flex items-center justify-center gap-1 rounded-xl border border-[${this.color}] 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`}">
|
|
1928
|
-
${a?
|
|
1896
|
+
${a?u`<lucide-icon class="h-3.5 w-3.5 animate-spin" name="loader-circle"></lucide-icon>`:s}
|
|
1929
1897
|
</button>
|
|
1930
1898
|
`})}
|
|
1931
1899
|
</div>
|
|
@@ -1936,11 +1904,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1936
1904
|
|
|
1937
1905
|
${this.#s()}
|
|
1938
1906
|
</div>
|
|
1939
|
-
`:
|
|
1907
|
+
`:u` <div class="${this.darkMode?"dark bg-[#1E1F23] text-gray-300":"bg-white/70 text-black/60"} mx-auto w-full max-w-xs rounded-2xl p-4 text-center text-sm">Loading game...</div> `}};customElements.get("mw-chat-wait-game")||customElements.define("mw-chat-wait-game",ki);var Ci=class extends k(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"},darkMode:{type:Boolean,attribute:"dark-mode"},_remainingSeconds:{type:Number,state:!0},_isComplete:{type:Boolean,state:!0},_showGame:{type:Boolean,state:!0}};static styles=O`
|
|
1940
1908
|
:host {
|
|
1941
1909
|
display: block;
|
|
1942
1910
|
}
|
|
1943
|
-
`;#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.darkMode=!1,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(
|
|
1911
|
+
`;#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.darkMode=!1,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(xi(this.#t,new Date),0),this.#i()}#i(){if(this.#t===null)return;let e=new Date,r=xi(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.#l(),this._showGame=!0,this.dispatchEvent(new CustomEvent("mw-chat-wait-timer:game-click",{bubbles:!0,composed:!0}))};#d(){if(!this.question)return!1;try{return localStorage.getItem("_molin_timer_sound_question")===this.question}catch{return!1}}#c(){if(this.question)try{localStorage.setItem("_molin_timer_sound_question",this.question)}catch(e){console.error("Error saving sound state to localStorage:",e,{})}}#l(){if(!this.soundUrl||!this.question||this.#d())return;let e=new Audio(this.soundUrl);e.volume=.5,e.play().then(()=>{this.#c()}).catch(r=>{console.error("Error playing audio:",r,{})})}#h(){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)}}#m(){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.#h();if(this._showGame)return u`
|
|
1944
1912
|
<mw-chat-wait-game
|
|
1945
1913
|
.question="${this.question}"
|
|
1946
1914
|
.options="${this.options||["No","Yes"]}"
|
|
@@ -1955,7 +1923,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1955
1923
|
.minutes="${e}"
|
|
1956
1924
|
.seconds="${r}"
|
|
1957
1925
|
?dark-mode="${this.darkMode}"></mw-chat-wait-game>
|
|
1958
|
-
`;let n=this.#m();return
|
|
1926
|
+
`;let n=this.#m();return u`
|
|
1959
1927
|
<div class="${this.darkMode?"dark bg-[#1E1F23] ring-white/10":"bg-white/70 ring-black/10"} mx-auto w-full max-w-xs rounded-2xl p-4 shadow-sm ring-1 backdrop-blur">
|
|
1960
1928
|
<!-- Time -->
|
|
1961
1929
|
<div class="font-[ui-monospace,Menlo,Monaco,Consolas] text-4xl tracking-tight text-black tabular-nums dark:text-white" aria-live="polite">
|
|
@@ -1975,33 +1943,213 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
1975
1943
|
<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>
|
|
1976
1944
|
</div>
|
|
1977
1945
|
</div>
|
|
1978
|
-
`}};customElements.get("mw-chat-wait-timer")||customElements.define("mw-chat-wait-timer",
|
|
1946
|
+
`}};customElements.get("mw-chat-wait-timer")||customElements.define("mw-chat-wait-timer",Ci);var ot=(t,e,r)=>{for(let n of e)if(n[0]===t)return(0,n[1])();return r?.()};var Si=class extends k(v){static properties={orderDetails:{type:Object},streaming:{type:Boolean},linksNewTab:{type:Boolean,attribute:"links-new-tab"},color:{type:String},darkMode:{type:Boolean,attribute:"dark-mode"}};constructor(){super(),this.orderDetails=null,this.streaming=!1,this.linksNewTab=!1,this.color="#601feb",this.darkMode=!1}render(){if(!this.orderDetails)return u`
|
|
1947
|
+
<div class="${this.darkMode?"dark border-white/10 bg-[#1E1F23]":"border-gray-200 bg-white"} flex w-full max-w-md flex-col rounded-3xl border p-4">
|
|
1948
|
+
<div class="mb-2">
|
|
1949
|
+
<div class="h-7 w-full animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
1950
|
+
</div>
|
|
1951
|
+
</div>
|
|
1952
|
+
`;let e=this.orderDetails.timeline?.step?.flatMap(n=>n.label?[{...n,label:n.label}]:[])||[],r=this.orderDetails.items?.item?.flatMap(n=>n.name?[{...n,name:n.name}]:[])||[];return u`
|
|
1953
|
+
<div class="${this.darkMode?"dark border-white/10 bg-[#1E1F23]":"border-gray-200 bg-white"} flex w-full max-w-md flex-col rounded-3xl border p-4">
|
|
1954
|
+
<!-- Header with order ID -->
|
|
1955
|
+
<div class="mb-2">
|
|
1956
|
+
${this.orderDetails.order_id_label||!this.streaming?u`<h2 class="text-lg font-semibold text-gray-900 dark:text-white">${this.orderDetails.order_id_label} ${this.orderDetails.order_id_value}</h2>`:u`<div class="h-7 w-full animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>`}
|
|
1957
|
+
</div>
|
|
1958
|
+
|
|
1959
|
+
<!-- Progress timeline -->
|
|
1960
|
+
<div>
|
|
1961
|
+
<ol role="list" class="w-full overflow-hidden">
|
|
1962
|
+
${Z(e,n=>n.label,(n,i)=>{let s=n.status==="completed",o=n.status==="in_progress",a=i===e.length-1;return u`
|
|
1963
|
+
<li class="relative pb-4">
|
|
1964
|
+
${a?"":u`<div class="${`absolute left-2 top-2 -ml-px mt-0.5 h-full w-0.5 ${s?`bg-[${this.color}]`:"bg-gray-300 dark:bg-gray-600"}`}" aria-hidden="true"></div>`}
|
|
1965
|
+
|
|
1966
|
+
<div class="group relative flex items-start">
|
|
1967
|
+
${ot(n.status,[["completed",()=>u`
|
|
1968
|
+
<span class="flex h-6 items-center">
|
|
1969
|
+
<span class="flex h-4 w-4 items-center justify-center rounded-full bg-[${this.color}]">
|
|
1970
|
+
<hi-outline class="mb-3 block h-3 w-3 text-white dark:text-gray-800" name="check"></hi-outline>
|
|
1971
|
+
</span>
|
|
1972
|
+
</span>
|
|
1973
|
+
`],["in_progress",()=>u`<span class="flex h-6 items-center">
|
|
1974
|
+
<span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-[${this.color}] bg-white dark:bg-[#1E1F23]">
|
|
1975
|
+
<span class="h-1.5 w-1.5 rounded-full bg-[${this.color}]"></span>
|
|
1976
|
+
</span>
|
|
1977
|
+
</span>`],["pending",()=>u` <span class="flex h-6 items-center">
|
|
1978
|
+
<span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-gray-300 bg-white dark:border-gray-500 dark:bg-[#1E1F23]">
|
|
1979
|
+
<span class="h-1.5 w-1.5 rounded-full bg-transparent"></span>
|
|
1980
|
+
</span>
|
|
1981
|
+
</span>`]],()=>u`<span class="flex h-6 items-center">
|
|
1982
|
+
<span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-[${this.color}] bg-white dark:bg-[#1E1F23]">
|
|
1983
|
+
<span class="h-1.5 w-1.5 rounded-full bg-[${this.color}]"></span>
|
|
1984
|
+
</span>
|
|
1985
|
+
</span>`)}
|
|
1986
|
+
|
|
1987
|
+
<span class="ml-3 flex min-w-0 flex-col">
|
|
1988
|
+
<span class="${`text-sm font-medium ${o?`text-[${this.color}]`:s?"text-gray-900 dark:text-gray-100":"text-gray-500 dark:text-gray-400"}`}">
|
|
1989
|
+
${n.label}
|
|
1990
|
+
</span>
|
|
1991
|
+
</span>
|
|
1992
|
+
</div>
|
|
1993
|
+
</li>
|
|
1994
|
+
`})}
|
|
1995
|
+
</ol>
|
|
1996
|
+
</div>
|
|
1997
|
+
|
|
1998
|
+
<!-- Products list with order items -->
|
|
1999
|
+
<div class="mb-2 w-full">
|
|
2000
|
+
${r.length===0&&!this.orderDetails.total_amount&&this.streaming?u`
|
|
2001
|
+
<!-- Loading shimmer for products -->
|
|
2002
|
+
<div class="w-full space-y-4">
|
|
2003
|
+
<div class="flex items-center gap-2">
|
|
2004
|
+
<div class="h-12 w-12 animate-pulse rounded-lg bg-gray-200 dark:bg-gray-600"></div>
|
|
2005
|
+
<div class="flex-1 space-y-2">
|
|
2006
|
+
<div class="h-4 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2007
|
+
<div class="h-4 w-24 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2008
|
+
</div>
|
|
2009
|
+
</div>
|
|
2010
|
+
<div class="flex items-center justify-between">
|
|
2011
|
+
<div class="h-4 w-12 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2012
|
+
<div class="h-4 w-10 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2013
|
+
</div>
|
|
2014
|
+
</div>
|
|
2015
|
+
`:u`
|
|
2016
|
+
<div class="divide-y divide-gray-100 dark:divide-gray-600">
|
|
2017
|
+
${this.streaming&&!r.length?u`
|
|
2018
|
+
<!-- Loading shimmer for individual products -->
|
|
2019
|
+
${[1,2].map(()=>u`
|
|
2020
|
+
<div class="flex items-center gap-2 py-1.5">
|
|
2021
|
+
<div class="h-12 w-12 animate-pulse rounded-lg bg-gray-200 dark:bg-gray-600"></div>
|
|
2022
|
+
<div class="min-w-0 flex-1">
|
|
2023
|
+
<div class="h-4 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2024
|
+
</div>
|
|
2025
|
+
<div class="h-4 w-24 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2026
|
+
</div>
|
|
2027
|
+
`)}
|
|
2028
|
+
`:Z(r,n=>n.name,n=>u`
|
|
2029
|
+
<div class="flex items-center gap-2 py-1.5">
|
|
2030
|
+
<img src="${H(n.image)}" class="block h-12 w-12 rounded-lg bg-gray-100 object-contain dark:bg-gray-700" loading="lazy" />
|
|
2031
|
+
|
|
2032
|
+
<div class="min-w-0 flex-1">
|
|
2033
|
+
${!n.name&&this.streaming?u`<div class="h-4 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>`:u`<h3 class="truncate text-sm font-medium text-gray-900 dark:text-gray-100">${n.name}</h3>`}
|
|
2034
|
+
</div>
|
|
2035
|
+
|
|
2036
|
+
${!n.price&&this.streaming?u`<div class="h-4 w-24 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>`:u`<span class="text-sm text-gray-500 dark:text-gray-400">${n.quantity&&Number(n.quantity)>1?"x":""} ${n.price}</span>`}
|
|
2037
|
+
</div>
|
|
2038
|
+
`)}
|
|
2039
|
+
</div>
|
|
2040
|
+
|
|
2041
|
+
<!-- Order total -->
|
|
2042
|
+
<div class="mt-1 border-t border-gray-200 pt-1 dark:border-gray-600">
|
|
2043
|
+
<div class="flex justify-between font-medium text-gray-900 dark:text-gray-100">
|
|
2044
|
+
<span>${this.orderDetails.total_label}</span>
|
|
2045
|
+
<span>${this.orderDetails.total_amount}</span>
|
|
2046
|
+
</div>
|
|
2047
|
+
</div>
|
|
2048
|
+
`}
|
|
2049
|
+
</div>
|
|
2050
|
+
|
|
2051
|
+
<!-- Shipping and payment information -->
|
|
2052
|
+
<div class="mb-2 flex w-full flex-col gap-2 overflow-hidden">
|
|
2053
|
+
${this.streaming&&!this.orderDetails?u`
|
|
2054
|
+
<!-- Loading shimmer template -->
|
|
2055
|
+
${[1,2].map(()=>u`
|
|
2056
|
+
<div>
|
|
2057
|
+
<div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2058
|
+
<div class="space-y-2 overflow-hidden">
|
|
2059
|
+
<div class="h-4 w-40 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2060
|
+
<div class="h-4 w-36 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2061
|
+
</div>
|
|
2062
|
+
</div>
|
|
2063
|
+
`)}
|
|
2064
|
+
`:u`
|
|
2065
|
+
<!-- Shipping Section -->
|
|
2066
|
+
<div>
|
|
2067
|
+
${this.streaming&&!this.orderDetails.shipping_label&&!this.orderDetails.shipping_method?u`
|
|
2068
|
+
<div>
|
|
2069
|
+
<div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2070
|
+
<div class="space-y-2 overflow-hidden">
|
|
2071
|
+
<div class="h-4 w-40 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2072
|
+
<div class="h-4 w-36 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2073
|
+
</div>
|
|
2074
|
+
</div>
|
|
2075
|
+
`:this.orderDetails.shipping_label||this.orderDetails.shipping_method||this.orderDetails.customer_name?u`
|
|
2076
|
+
<h3 class="mb-1 text-sm font-medium text-gray-900 dark:text-gray-100">${this.orderDetails.shipping_label}</h3>
|
|
2077
|
+
<div class="space-y-1">
|
|
2078
|
+
${this.orderDetails.customer_name?u`<p class="text-xs text-gray-600 dark:text-gray-400">${this.orderDetails.customer_name}</p>`:""}
|
|
2079
|
+
${this.orderDetails.shipping_method?u`<p class="text-xs text-gray-600 dark:text-gray-400">${this.orderDetails.shipping_method}</p>`:""}
|
|
2080
|
+
</div>
|
|
2081
|
+
`:""}
|
|
2082
|
+
</div>
|
|
2083
|
+
|
|
2084
|
+
<!-- Payment Section -->
|
|
2085
|
+
<div>
|
|
2086
|
+
${this.streaming&&!this.orderDetails.payment_label?u`
|
|
2087
|
+
<div>
|
|
2088
|
+
<div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2089
|
+
<div class="space-y-2 overflow-hidden">
|
|
2090
|
+
<div class="h-4 w-40 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2091
|
+
<div class="h-4 w-36 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2092
|
+
</div>
|
|
2093
|
+
</div>
|
|
2094
|
+
`:this.orderDetails.payment_label?u`
|
|
2095
|
+
<h3 class="mb-1 text-sm font-medium text-gray-900 dark:text-gray-100">${this.orderDetails.payment_label}</h3>
|
|
2096
|
+
${this.orderDetails.payment_method_label&&this.orderDetails.payment_method_value?u`
|
|
2097
|
+
<p class="text-xs text-gray-600 dark:text-gray-400">
|
|
2098
|
+
<span class="font-medium">${this.orderDetails.payment_method_label}:</span>
|
|
2099
|
+
${this.orderDetails.payment_method_value}
|
|
2100
|
+
</p>
|
|
2101
|
+
`:""}
|
|
2102
|
+
${this.orderDetails.payment_status_label&&this.orderDetails.payment_status_value?u`
|
|
2103
|
+
<p class="text-xs text-gray-600 dark:text-gray-400">
|
|
2104
|
+
<span class="font-medium">${this.orderDetails.payment_status_label}:</span>
|
|
2105
|
+
<span>${this.orderDetails.payment_status_value}</span>
|
|
2106
|
+
</p>
|
|
2107
|
+
`:""}
|
|
2108
|
+
`:""}
|
|
2109
|
+
</div>
|
|
2110
|
+
`}
|
|
2111
|
+
</div>
|
|
2112
|
+
|
|
2113
|
+
<!-- Action buttons section -->
|
|
2114
|
+
<div class="flex w-full flex-col gap-2 overflow-hidden">
|
|
2115
|
+
${this.streaming&&!this.orderDetails.order_tracking_label&&!Je(this.orderDetails.order_tracking_url||"")?u`
|
|
2116
|
+
<!-- Loading shimmer for buttons -->
|
|
2117
|
+
<div class="h-10 w-full min-w-[250px] animate-pulse overflow-hidden rounded-xl bg-gray-200 dark:bg-gray-600"></div>
|
|
2118
|
+
`:this.orderDetails.order_tracking_url&&Je(this.orderDetails.order_tracking_url)?u`<a
|
|
2119
|
+
target="${this.linksNewTab?"_blank":"_self"}"
|
|
2120
|
+
href="${this.orderDetails.order_tracking_url}"
|
|
2121
|
+
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">
|
|
2122
|
+
${this.orderDetails.order_tracking_label}
|
|
2123
|
+
</a>`:null}
|
|
2124
|
+
</div>
|
|
2125
|
+
</div>
|
|
2126
|
+
`}};customElements.get("mw-order-card")||customElements.define("mw-order-card",Si);var $i=class extends k(v){static properties={product:{type:Object},streaming:{type:Boolean},linksNewTab:{type:Boolean,attribute:"links-new-tab"},searchParams:{type:Object},imagesByProductUrl:{type:Object},darkMode:{type:Boolean,attribute:"dark-mode"}};constructor(){super(),this.product=void 0,this.streaming=!1,this.linksNewTab=!1,this.searchParams=void 0,this.imagesByProductUrl={},this.darkMode=!1}get trackedProductUrl(){let e=this.product?.url,r=this.searchParams;try{if(e&&r)return Os(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`
|
|
1979
2127
|
<a
|
|
1980
|
-
href="${
|
|
1981
|
-
title="${
|
|
2128
|
+
href="${H(this.trackedProductUrl)}"
|
|
2129
|
+
title="${H(e)}"
|
|
1982
2130
|
class="${this.darkMode?"dark":""} group flex w-full max-w-md cursor-pointer gap-[10px] overflow-hidden rounded-lg"
|
|
1983
2131
|
target="${this.linksNewTab?"_blank":"_self"}"
|
|
1984
2132
|
?disabled="${this.streaming}">
|
|
1985
|
-
${this.streaming?
|
|
2133
|
+
${this.streaming?u`
|
|
1986
2134
|
<!-- shimmer -->
|
|
1987
2135
|
<div class="h-[70px] w-[70px] animate-pulse overflow-hidden rounded-lg bg-gray-200 dark:bg-gray-700"></div>
|
|
1988
|
-
`:
|
|
2136
|
+
`:u`<img src="${H(s)}" class="block h-[70px] w-[70px] rounded-lg bg-gray-100 object-contain dark:bg-gray-700" loading="lazy" />`}
|
|
1989
2137
|
|
|
1990
2138
|
<div class="flex flex-1 flex-col justify-between">
|
|
1991
2139
|
<div>
|
|
1992
|
-
${e||!this.streaming?
|
|
2140
|
+
${e||!this.streaming?u`<h3 class="line-clamp-1 text-sm font-medium text-black group-hover:underline dark:text-white">${e}</h3>`:u`<div class="h-5 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div>`}
|
|
1993
2141
|
|
|
1994
2142
|
<!-- no margin here -->
|
|
1995
2143
|
|
|
1996
|
-
${r||!this.streaming?
|
|
2144
|
+
${r||!this.streaming?u`<p class="line-clamp-2 text-xs text-gray-500 dark:text-gray-400">${r}</p>`:u`<div class="my-1 h-6 w-3/4 animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div>`}
|
|
1997
2145
|
</div>
|
|
1998
2146
|
|
|
1999
2147
|
<!-- flexbox filled space -->
|
|
2000
2148
|
|
|
2001
|
-
${n||!this.streaming?
|
|
2149
|
+
${n||!this.streaming?u`<span class="text-xs text-gray-900 dark:text-white">${n}</span>`:u`<div class="h-4 w-14 animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div>`}
|
|
2002
2150
|
</div>
|
|
2003
2151
|
</a>
|
|
2004
|
-
`}};customElements.get("mw-product-card-horizontal")||customElements.define("mw-product-card-horizontal",Ci);function jr(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 Dr=function(){},it=function(){};var jt=(t,e,r)=>Math.min(Math.max(r,t),e);var Si=.001,Gc=.01,zo=10,Zc=.05,Jc=1;function Wo({duration:t=800,bounce:e=.25,velocity:r=0,mass:n=1}){let i,s;Dr(t<=zo*1e3,"Spring duration must be 10 seconds or less");let o=1-e;o=jt(Zc,Jc,o),t=jt(Gc,zo,t/1e3),o<1?(i=c=>{let u=c*o,h=u*t,p=u-r,g=Or(c,o),f=Math.exp(-h);return Si-p/g*f},s=c=>{let h=c*o*t,p=h*r+r,g=Math.pow(o,2)*Math.pow(c,2)*t,f=Math.exp(-h),S=Or(Math.pow(c,2),o);return(-i(c)+Si>0?-1:1)*((p-g)*f)/S}):(i=c=>{let u=Math.exp(-c*t),h=(c-r)*t+1;return-Si+u*h},s=c=>{let u=Math.exp(-c*t),h=(r-c)*(t*t);return u*h});let a=5/t,l=Yc(i,s,a);if(t=t*1e3,isNaN(l))return{stiffness:100,damping:10,duration:t};{let c=Math.pow(l,2)*n;return{stiffness:c,damping:o*2*Math.sqrt(n*c),duration:t}}}var Kc=12;function Yc(t,e,r){let n=r;for(let i=1;i<Kc;i++)n=n-t(n)/e(n);return n}function Or(t,e){return t*Math.sqrt(1-e*e)}var Xc=["duration","bounce"],Qc=["stiffness","damping","mass"];function Go(t,e){return e.some(r=>t[r]!==void 0)}function eu(t){let e=Object.assign({velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1},t);if(!Go(t,Qc)&&Go(t,Xc)){let r=Wo(t);e=Object.assign(Object.assign(Object.assign({},e),r),{velocity:0,mass:1}),e.isResolvedFromDuration=!0}return e}function Ur(t){var{from:e=0,to:r=1,restSpeed:n=2,restDelta:i}=t,s=jr(t,["from","to","restSpeed","restDelta"]);let o={done:!1,value:e},{stiffness:a,damping:l,mass:c,velocity:u,duration:h,isResolvedFromDuration:p}=eu(s),g=Zo,f=Zo;function S(){let b=u?-(u/1e3):0,E=r-e,y=l/(2*Math.sqrt(a*c)),x=Math.sqrt(a/c)/1e3;if(i===void 0&&(i=Math.min(Math.abs(r-e)/100,.4)),y<1){let $=Or(x,y);g=L=>{let R=Math.exp(-y*x*L);return r-R*((b+y*x*E)/$*Math.sin($*L)+E*Math.cos($*L))},f=L=>{let R=Math.exp(-y*x*L);return y*x*R*(Math.sin($*L)*(b+y*x*E)/$+E*Math.cos($*L))-R*(Math.cos($*L)*(b+y*x*E)-$*E*Math.sin($*L))}}else if(y===1)g=$=>r-Math.exp(-x*$)*(E+(b+x*E)*$);else{let $=x*Math.sqrt(y*y-1);g=L=>{let R=Math.exp(-y*x*L),F=Math.min($*L,300);return r-R*((b+y*x*E)*Math.sinh(F)+$*E*Math.cosh(F))/$}}}return S(),{next:b=>{let E=g(b);if(p)o.done=b>=h;else{let y=f(b)*1e3,x=Math.abs(y)<=n,$=Math.abs(r-E)<=i;o.done=x&&$}return o.value=o.done?r:E,o},flipTarget:()=>{u=-u,[e,r]=[r,e],S()}}}Ur.needsInterpolation=(t,e)=>typeof t=="string"||typeof e=="string";var Zo=t=>0;var Ei=(t,e,r)=>{let n=e-t;return n===0?1:(r-t)/n};var st=(t,e,r)=>-r*t+r*e+t;var Pr=(t,e)=>r=>Math.max(Math.min(r,e),t),be=t=>t%1?Number(t.toFixed(5)):t,ot=/(-)?([\d]*\.?[\d])+/g,Rr=/(#[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,Jo=/^(#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function fe(t){return typeof t=="string"}var at={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},Br=Object.assign(Object.assign({},at),{transform:Pr(0,1)}),Q1=Object.assign(Object.assign({},at),{default:1});var Dt=t=>({test:e=>fe(e)&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),rf=Dt("deg"),lt=Dt("%"),nf=Dt("px"),sf=Dt("vh"),of=Dt("vw"),af=Object.assign(Object.assign({},lt),{parse:t=>lt.parse(t)/100,transform:t=>lt.transform(t*100)});var ct=(t,e)=>r=>!!(fe(r)&&Jo.test(r)&&r.startsWith(t)||e&&Object.prototype.hasOwnProperty.call(r,e)),qr=(t,e,r)=>n=>{if(!fe(n))return n;let[i,s,o,a]=n.match(ot);return{[t]:parseFloat(i),[e]:parseFloat(s),[r]:parseFloat(o),alpha:a!==void 0?parseFloat(a):1}};var ce={test:ct("hsl","hue"),parse:qr("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:r,alpha:n=1})=>"hsla("+Math.round(t)+", "+lt.transform(be(e))+", "+lt.transform(be(r))+", "+be(Br.transform(n))+")"};var tu=Pr(0,255),Fr=Object.assign(Object.assign({},at),{transform:t=>Math.round(tu(t))}),ee={test:ct("rgb","red"),parse:qr("red","green","blue"),transform:({red:t,green:e,blue:r,alpha:n=1})=>"rgba("+Fr.transform(t)+", "+Fr.transform(e)+", "+Fr.transform(r)+", "+be(Br.transform(n))+")"};function ru(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 ut={test:ct("#"),parse:ru,transform:ee.transform};var xe={test:t=>ee.test(t)||ut.test(t)||ce.test(t),parse:t=>ee.test(t)?ee.parse(t):ce.test(t)?ce.parse(t):ut.parse(t),transform:t=>fe(t)?t:t.hasOwnProperty("red")?ee.transform(t):ce.transform(t)};var Ko="${c}",Yo="${n}";function nu(t){var e,r,n,i;return isNaN(t)&&fe(t)&&((r=(e=t.match(ot))===null||e===void 0?void 0:e.length)!==null&&r!==void 0?r:0)+((i=(n=t.match(Rr))===null||n===void 0?void 0:n.length)!==null&&i!==void 0?i:0)>0}function Xo(t){typeof t=="number"&&(t=`${t}`);let e=[],r=0,n=t.match(Rr);n&&(r=n.length,t=t.replace(Rr,Ko),e.push(...n.map(xe.parse)));let i=t.match(ot);return i&&(t=t.replace(ot,Yo),e.push(...i.map(at.parse))),{values:e,numColors:r,tokenised:t}}function Qo(t){return Xo(t).values}function ea(t){let{values:e,numColors:r,tokenised:n}=Xo(t),i=e.length;return s=>{let o=n;for(let a=0;a<i;a++)o=o.replace(a<r?Ko:Yo,a<r?xe.transform(s[a]):be(s[a]));return o}}var iu=t=>typeof t=="number"?0:t;function su(t){let e=Qo(t);return ea(t)(e.map(iu))}var Nr={test:nu,parse:Qo,createTransformer:ea,getAnimatableNone:su};function $i(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 _i({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 a=r<.5?r*(1+e):r+e-r*e,l=2*r-a;i=$i(l,a,t+1/3),s=$i(l,a,t),o=$i(l,a,t-1/3)}return{red:Math.round(i*255),green:Math.round(s*255),blue:Math.round(o*255),alpha:n}}var ou=(t,e,r)=>{let n=t*t,i=e*e;return Math.sqrt(Math.max(0,r*(i-n)+n))},au=[ut,ee,ce],ta=t=>au.find(e=>e.test(t)),ra=t=>`'${t}' is not an animatable color. Use the equivalent color code instead.`,Vr=(t,e)=>{let r=ta(t),n=ta(e);it(!!r,ra(t)),it(!!n,ra(e));let i=r.parse(t),s=n.parse(e);r===ce&&(i=_i(i),r=ee),n===ce&&(s=_i(s),n=ee);let o=Object.assign({},i);return a=>{for(let l in o)l!=="alpha"&&(o[l]=ou(i[l],s[l],a));return o.alpha=st(i.alpha,s.alpha,a),r.transform(o)}};var na=t=>typeof t=="number";var lu=(t,e)=>r=>e(t(r)),Hr=(...t)=>t.reduce(lu);function sa(t,e){return na(t)?r=>st(t,e,r):xe.test(t)?Vr(t,e):Ii(t,e)}var Mi=(t,e)=>{let r=[...t],n=r.length,i=t.map((s,o)=>sa(s,e[o]));return s=>{for(let o=0;o<n;o++)r[o]=i[o](s);return r}},oa=(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]=sa(t[i],e[i]));return i=>{for(let s in n)r[s]=n[s](i);return r}};function ia(t){let e=Nr.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 Ii=(t,e)=>{let r=Nr.createTransformer(e),n=ia(t),i=ia(e);return n.numHSL===i.numHSL&&n.numRGB===i.numRGB&&n.numNumbers>=i.numNumbers?Hr(Mi(n.parsed,i.parsed),r):(Dr(!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 cu=(t,e)=>r=>st(t,e,r);function uu(t){if(typeof t=="number")return cu;if(typeof t=="string")return xe.test(t)?Vr:Ii;if(Array.isArray(t))return Mi;if(typeof t=="object")return oa}function du(t,e,r){let n=[],i=r||uu(t[0]),s=t.length-1;for(let o=0;o<s;o++){let a=i(t[o],t[o+1]);if(e){let l=Array.isArray(e)?e[o]:e;a=Hr(l,a)}n.push(a)}return n}function hu([t,e],[r]){return n=>r(Ei(t,e,n))}function pu(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 a=Ei(t[s],t[s+1],i);return e[s](a)}}function zr(t,e,{clamp:r=!0,ease:n,mixer:i}={}){let s=t.length;it(s===e.length,"Both input and output ranges must be the same length"),it(!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=du(e,n,i),a=s===2?hu(t,o):pu(t,o);return r?l=>a(jt(t[0],t[s-1],l)):a}var Ot=t=>e=>1-t(1-e),Wr=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,aa=t=>e=>Math.pow(e,t),Ai=t=>e=>e*e*((t+1)*e-t),la=t=>{let e=Ai(t);return r=>(r*=2)<1?.5*e(r):.5*(2-Math.pow(2,-10*(r-1)))};var ca=1.525,fu=4/11,mu=8/11,gu=9/10;var ua=aa(2),u2=Ot(ua),da=Wr(ua),wu=t=>1-Math.sin(Math.acos(t)),yu=Ot(wu),d2=Wr(yu),ha=Ai(ca),h2=Ot(ha),p2=Wr(ha),f2=la(ca),vu=4356/361,bu=35442/1805,xu=16061/1805,ku=t=>{if(t===1||t===0)return t;let e=t*t;return t<fu?7.5625*e:t<mu?9.075*e-9.9*t+3.4:t<gu?vu*e-bu*t+xu:10.8*t*t-20.52*t+10.72},m2=Ot(ku);function Cu(t,e){return t.map(()=>e||da).splice(0,t.length-1)}function Su(t){let e=t.length;return t.map((r,n)=>n!==0?n/(e-1):0)}function Eu(t,e){return t.map(r=>r*e)}function Ut({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],a=Eu(n&&n.length===o.length?n:Su(o),i);function l(){return zr(a,o,{ease:Array.isArray(r)?r:Cu(o,r)})}let c=l();return{next:u=>(s.value=c(u),s.done=u>=i,s),flipTarget:()=>{o.reverse(),c=l()}}}function pa({velocity:t=0,from:e=0,power:r=.8,timeConstant:n=350,restDelta:i=.5,modifyTarget:s}){let o={done:!1,value:e},a=r*t,l=e+a,c=s===void 0?l:s(l);return c!==l&&(a=c-e),{next:u=>{let h=-a*Math.exp(-u/n);return o.done=!(h>i||h<-i),o.value=o.done?c:c+h,o},flipTarget:()=>{}}}var fa={keyframes:Ut,spring:Ur,decay:pa};function ma(t){if(Array.isArray(t.to))return Ut;if(fa[t.type])return fa[t.type];let e=new Set(Object.keys(t));return e.has("ease")||e.has("duration")&&!e.has("dampingRatio")?Ut:e.has("dampingRatio")||e.has("stiffness")||e.has("mass")||e.has("damping")||e.has("restSpeed")||e.has("restDelta")?Ur:Ut}var Ti=16.666666666666668,$u=typeof performance<"u"?()=>performance.now():()=>Date.now(),Li=typeof window<"u"?t=>window.requestAnimationFrame(t):t=>setTimeout(()=>t($u()),Ti);function ga(t){let e=[],r=[],n=0,i=!1,s=!1,o=new WeakSet,a={schedule:(l,c=!1,u=!1)=>{let h=u&&i,p=h?e:r;return c&&o.add(l),p.indexOf(l)===-1&&(p.push(l),h&&i&&(n=e.length)),l},cancel:l=>{let c=r.indexOf(l);c!==-1&&r.splice(c,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 c=0;c<n;c++){let u=e[c];u(l),o.has(u)&&(a.schedule(u),t())}i=!1,s&&(s=!1,a.process(l))}};return a}var _u=40,ji=!0,Rt=!1,Di=!1,Pt={delta:0,timestamp:0},Bt=["read","update","preRender","render","postRender"],Gr=Bt.reduce((t,e)=>(t[e]=ga(()=>Rt=!0),t),{}),Mu=Bt.reduce((t,e)=>{let r=Gr[e];return t[e]=(n,i=!1,s=!1)=>(Rt||Au(),r.schedule(n,i,s)),t},{}),wa=Bt.reduce((t,e)=>(t[e]=Gr[e].cancel,t),{}),I2=Bt.reduce((t,e)=>(t[e]=()=>Gr[e].process(Pt),t),{}),Iu=t=>Gr[t].process(Pt),ya=t=>{Rt=!1,Pt.delta=ji?Ti:Math.max(Math.min(t-Pt.timestamp,_u),1),Pt.timestamp=t,Di=!0,Bt.forEach(Iu),Di=!1,Rt&&(ji=!1,Li(ya))},Au=()=>{Rt=!0,ji=!0,Di||Li(ya)};var va=Mu;function Oi(t,e,r=0){return t-e-r}function ba(t,e,r=0,n=!0){return n?Oi(e+-t,e,r):e-(t-e)+r}function xa(t,e,r,n){return n?t>=e+r:t<=-r}var Tu=t=>{let e=({delta:r})=>t(r);return{start:()=>va.update(e,!0),stop:()=>wa.update(e)}};function Ui(t){var e,r,{from:n,autoplay:i=!0,driver:s=Tu,elapsed:o=0,repeat:a=0,repeatType:l="loop",repeatDelay:c=0,onPlay:u,onStop:h,onComplete:p,onRepeat:g,onUpdate:f}=t,S=jr(t,["from","autoplay","driver","elapsed","repeat","repeatType","repeatDelay","onPlay","onStop","onComplete","onRepeat","onUpdate"]);let{to:b}=S,E,y=0,x=S.duration,$,L=!1,R=!0,F,M=ma(S);!((r=(e=M).needsInterpolation)===null||r===void 0)&&r.call(e,n,b)&&(F=zr([0,100],[n,b],{clamp:!1}),n=0,b=100);let N=M(Object.assign(Object.assign({},S),{from:n,to:b}));function W(){y++,l==="reverse"?(R=y%2===0,o=ba(o,x,c,R)):(o=Oi(o,x,c),l==="mirror"&&N.flipTarget()),L=!1,g&&g()}function nn(){E.stop(),p&&p()}function Ce(O){if(R||(O=-O),o+=O,!L){let V=N.next(Math.max(0,o));$=V.value,F&&($=F($)),L=R?V.done:o<=0}f?.($),L&&(y===0&&(x??(x=o)),y<a?xa(o,x,c,R)&&W():nn())}function zt(){u?.(),E=s(Ce),E.start()}return i&&zt(),{stop:()=>{h?.(),E.stop()}}}var qt=class t extends C(v){static properties={product:{type:Object},labels:{type:Object},darkMode:{type:Boolean,attribute:"dark-mode"},_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.darkMode=!1,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 d`
|
|
2152
|
+
`}};customElements.get("mw-product-card-horizontal")||customElements.define("mw-product-card-horizontal",$i);function Or(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 Ur=function(){},at=function(){};var Ot=(t,e,r)=>Math.min(Math.max(r,t),e);var Ei=.001,Jc=.01,Zo=10,Kc=.05,Xc=1;function Jo({duration:t=800,bounce:e=.25,velocity:r=0,mass:n=1}){let i,s;Ur(t<=Zo*1e3,"Spring duration must be 10 seconds or less");let o=1-e;o=Ot(Kc,Xc,o),t=Ot(Jc,Zo,t/1e3),o<1?(i=c=>{let d=c*o,h=d*t,p=d-r,g=Pr(c,o),f=Math.exp(-h);return Ei-p/g*f},s=c=>{let h=c*o*t,p=h*r+r,g=Math.pow(o,2)*Math.pow(c,2)*t,f=Math.exp(-h),E=Pr(Math.pow(c,2),o);return(-i(c)+Ei>0?-1:1)*((p-g)*f)/E}):(i=c=>{let d=Math.exp(-c*t),h=(c-r)*t+1;return-Ei+d*h},s=c=>{let d=Math.exp(-c*t),h=(r-c)*(t*t);return d*h});let a=5/t,l=Qc(i,s,a);if(t=t*1e3,isNaN(l))return{stiffness:100,damping:10,duration:t};{let c=Math.pow(l,2)*n;return{stiffness:c,damping:o*2*Math.sqrt(n*c),duration:t}}}var Yc=12;function Qc(t,e,r){let n=r;for(let i=1;i<Yc;i++)n=n-t(n)/e(n);return n}function Pr(t,e){return t*Math.sqrt(1-e*e)}var eu=["duration","bounce"],tu=["stiffness","damping","mass"];function Ko(t,e){return e.some(r=>t[r]!==void 0)}function ru(t){let e=Object.assign({velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1},t);if(!Ko(t,tu)&&Ko(t,eu)){let r=Jo(t);e=Object.assign(Object.assign(Object.assign({},e),r),{velocity:0,mass:1}),e.isResolvedFromDuration=!0}return e}function Rr(t){var{from:e=0,to:r=1,restSpeed:n=2,restDelta:i}=t,s=Or(t,["from","to","restSpeed","restDelta"]);let o={done:!1,value:e},{stiffness:a,damping:l,mass:c,velocity:d,duration:h,isResolvedFromDuration:p}=ru(s),g=Xo,f=Xo;function E(){let b=d?-(d/1e3):0,S=r-e,y=l/(2*Math.sqrt(a*c)),x=Math.sqrt(a/c)/1e3;if(i===void 0&&(i=Math.min(Math.abs(r-e)/100,.4)),y<1){let $=Pr(x,y);g=j=>{let B=Math.exp(-y*x*j);return r-B*((b+y*x*S)/$*Math.sin($*j)+S*Math.cos($*j))},f=j=>{let B=Math.exp(-y*x*j);return y*x*B*(Math.sin($*j)*(b+y*x*S)/$+S*Math.cos($*j))-B*(Math.cos($*j)*(b+y*x*S)-$*S*Math.sin($*j))}}else if(y===1)g=$=>r-Math.exp(-x*$)*(S+(b+x*S)*$);else{let $=x*Math.sqrt(y*y-1);g=j=>{let B=Math.exp(-y*x*j),N=Math.min($*j,300);return r-B*((b+y*x*S)*Math.sinh(N)+$*S*Math.cosh(N))/$}}}return E(),{next:b=>{let S=g(b);if(p)o.done=b>=h;else{let y=f(b)*1e3,x=Math.abs(y)<=n,$=Math.abs(r-S)<=i;o.done=x&&$}return o.value=o.done?r:S,o},flipTarget:()=>{d=-d,[e,r]=[r,e],E()}}}Rr.needsInterpolation=(t,e)=>typeof t=="string"||typeof e=="string";var Xo=t=>0;var _i=(t,e,r)=>{let n=e-t;return n===0?1:(r-t)/n};var lt=(t,e,r)=>-r*t+r*e+t;var Br=(t,e)=>r=>Math.max(Math.min(r,e),t),ke=t=>t%1?Number(t.toFixed(5)):t,ct=/(-)?([\d]*\.?[\d])+/g,qr=/(#[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,Yo=/^(#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function me(t){return typeof t=="string"}var ut={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},Fr=Object.assign(Object.assign({},ut),{transform:Br(0,1)}),of=Object.assign(Object.assign({},ut),{default:1});var Ut=t=>({test:e=>me(e)&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),cf=Ut("deg"),dt=Ut("%"),uf=Ut("px"),df=Ut("vh"),hf=Ut("vw"),pf=Object.assign(Object.assign({},dt),{parse:t=>dt.parse(t)/100,transform:t=>dt.transform(t*100)});var ht=(t,e)=>r=>!!(me(r)&&Yo.test(r)&&r.startsWith(t)||e&&Object.prototype.hasOwnProperty.call(r,e)),Nr=(t,e,r)=>n=>{if(!me(n))return n;let[i,s,o,a]=n.match(ct);return{[t]:parseFloat(i),[e]:parseFloat(s),[r]:parseFloat(o),alpha:a!==void 0?parseFloat(a):1}};var ue={test:ht("hsl","hue"),parse:Nr("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:r,alpha:n=1})=>"hsla("+Math.round(t)+", "+dt.transform(ke(e))+", "+dt.transform(ke(r))+", "+ke(Fr.transform(n))+")"};var nu=Br(0,255),Vr=Object.assign(Object.assign({},ut),{transform:t=>Math.round(nu(t))}),re={test:ht("rgb","red"),parse:Nr("red","green","blue"),transform:({red:t,green:e,blue:r,alpha:n=1})=>"rgba("+Vr.transform(t)+", "+Vr.transform(e)+", "+Vr.transform(r)+", "+ke(Fr.transform(n))+")"};function iu(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 pt={test:ht("#"),parse:iu,transform:re.transform};var Ce={test:t=>re.test(t)||pt.test(t)||ue.test(t),parse:t=>re.test(t)?re.parse(t):ue.test(t)?ue.parse(t):pt.parse(t),transform:t=>me(t)?t:t.hasOwnProperty("red")?re.transform(t):ue.transform(t)};var Qo="${c}",ea="${n}";function su(t){var e,r,n,i;return isNaN(t)&&me(t)&&((r=(e=t.match(ct))===null||e===void 0?void 0:e.length)!==null&&r!==void 0?r:0)+((i=(n=t.match(qr))===null||n===void 0?void 0:n.length)!==null&&i!==void 0?i:0)>0}function ta(t){typeof t=="number"&&(t=`${t}`);let e=[],r=0,n=t.match(qr);n&&(r=n.length,t=t.replace(qr,Qo),e.push(...n.map(Ce.parse)));let i=t.match(ct);return i&&(t=t.replace(ct,ea),e.push(...i.map(ut.parse))),{values:e,numColors:r,tokenised:t}}function ra(t){return ta(t).values}function na(t){let{values:e,numColors:r,tokenised:n}=ta(t),i=e.length;return s=>{let o=n;for(let a=0;a<i;a++)o=o.replace(a<r?Qo:ea,a<r?Ce.transform(s[a]):ke(s[a]));return o}}var ou=t=>typeof t=="number"?0:t;function au(t){let e=ra(t);return na(t)(e.map(ou))}var Hr={test:su,parse:ra,createTransformer:na,getAnimatableNone:au};function Mi(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 Ii({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 a=r<.5?r*(1+e):r+e-r*e,l=2*r-a;i=Mi(l,a,t+1/3),s=Mi(l,a,t),o=Mi(l,a,t-1/3)}return{red:Math.round(i*255),green:Math.round(s*255),blue:Math.round(o*255),alpha:n}}var lu=(t,e,r)=>{let n=t*t,i=e*e;return Math.sqrt(Math.max(0,r*(i-n)+n))},cu=[pt,re,ue],ia=t=>cu.find(e=>e.test(t)),sa=t=>`'${t}' is not an animatable color. Use the equivalent color code instead.`,zr=(t,e)=>{let r=ia(t),n=ia(e);at(!!r,sa(t)),at(!!n,sa(e));let i=r.parse(t),s=n.parse(e);r===ue&&(i=Ii(i),r=re),n===ue&&(s=Ii(s),n=re);let o=Object.assign({},i);return a=>{for(let l in o)l!=="alpha"&&(o[l]=lu(i[l],s[l],a));return o.alpha=lt(i.alpha,s.alpha,a),r.transform(o)}};var oa=t=>typeof t=="number";var uu=(t,e)=>r=>e(t(r)),Wr=(...t)=>t.reduce(uu);function la(t,e){return oa(t)?r=>lt(t,e,r):Ce.test(t)?zr(t,e):Ti(t,e)}var Ai=(t,e)=>{let r=[...t],n=r.length,i=t.map((s,o)=>la(s,e[o]));return s=>{for(let o=0;o<n;o++)r[o]=i[o](s);return r}},ca=(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]=la(t[i],e[i]));return i=>{for(let s in n)r[s]=n[s](i);return r}};function aa(t){let e=Hr.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 Ti=(t,e)=>{let r=Hr.createTransformer(e),n=aa(t),i=aa(e);return n.numHSL===i.numHSL&&n.numRGB===i.numRGB&&n.numNumbers>=i.numNumbers?Wr(Ai(n.parsed,i.parsed),r):(Ur(!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 du=(t,e)=>r=>lt(t,e,r);function hu(t){if(typeof t=="number")return du;if(typeof t=="string")return Ce.test(t)?zr:Ti;if(Array.isArray(t))return Ai;if(typeof t=="object")return ca}function pu(t,e,r){let n=[],i=r||hu(t[0]),s=t.length-1;for(let o=0;o<s;o++){let a=i(t[o],t[o+1]);if(e){let l=Array.isArray(e)?e[o]:e;a=Wr(l,a)}n.push(a)}return n}function fu([t,e],[r]){return n=>r(_i(t,e,n))}function mu(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 a=_i(t[s],t[s+1],i);return e[s](a)}}function Gr(t,e,{clamp:r=!0,ease:n,mixer:i}={}){let s=t.length;at(s===e.length,"Both input and output ranges must be the same length"),at(!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=pu(e,n,i),a=s===2?fu(t,o):mu(t,o);return r?l=>a(Ot(t[0],t[s-1],l)):a}var Pt=t=>e=>1-t(1-e),Zr=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,ua=t=>e=>Math.pow(e,t),Di=t=>e=>e*e*((t+1)*e-t),da=t=>{let e=Di(t);return r=>(r*=2)<1?.5*e(r):.5*(2-Math.pow(2,-10*(r-1)))};var ha=1.525,gu=4/11,wu=8/11,yu=9/10;var pa=ua(2),g2=Pt(pa),fa=Zr(pa),vu=t=>1-Math.sin(Math.acos(t)),bu=Pt(vu),w2=Zr(bu),ma=Di(ha),y2=Pt(ma),v2=Zr(ma),b2=da(ha),xu=4356/361,ku=35442/1805,Cu=16061/1805,Su=t=>{if(t===1||t===0)return t;let e=t*t;return t<gu?7.5625*e:t<wu?9.075*e-9.9*t+3.4:t<yu?xu*e-ku*t+Cu:10.8*t*t-20.52*t+10.72},x2=Pt(Su);function $u(t,e){return t.map(()=>e||fa).splice(0,t.length-1)}function Eu(t){let e=t.length;return t.map((r,n)=>n!==0?n/(e-1):0)}function _u(t,e){return t.map(r=>r*e)}function Rt({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],a=_u(n&&n.length===o.length?n:Eu(o),i);function l(){return Gr(a,o,{ease:Array.isArray(r)?r:$u(o,r)})}let c=l();return{next:d=>(s.value=c(d),s.done=d>=i,s),flipTarget:()=>{o.reverse(),c=l()}}}function ga({velocity:t=0,from:e=0,power:r=.8,timeConstant:n=350,restDelta:i=.5,modifyTarget:s}){let o={done:!1,value:e},a=r*t,l=e+a,c=s===void 0?l:s(l);return c!==l&&(a=c-e),{next:d=>{let h=-a*Math.exp(-d/n);return o.done=!(h>i||h<-i),o.value=o.done?c:c+h,o},flipTarget:()=>{}}}var wa={keyframes:Rt,spring:Rr,decay:ga};function ya(t){if(Array.isArray(t.to))return Rt;if(wa[t.type])return wa[t.type];let e=new Set(Object.keys(t));return e.has("ease")||e.has("duration")&&!e.has("dampingRatio")?Rt:e.has("dampingRatio")||e.has("stiffness")||e.has("mass")||e.has("damping")||e.has("restSpeed")||e.has("restDelta")?Rr:Rt}var Li=16.666666666666668,Mu=typeof performance<"u"?()=>performance.now():()=>Date.now(),ji=typeof window<"u"?t=>window.requestAnimationFrame(t):t=>setTimeout(()=>t(Mu()),Li);function va(t){let e=[],r=[],n=0,i=!1,s=!1,o=new WeakSet,a={schedule:(l,c=!1,d=!1)=>{let h=d&&i,p=h?e:r;return c&&o.add(l),p.indexOf(l)===-1&&(p.push(l),h&&i&&(n=e.length)),l},cancel:l=>{let c=r.indexOf(l);c!==-1&&r.splice(c,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 c=0;c<n;c++){let d=e[c];d(l),o.has(d)&&(a.schedule(d),t())}i=!1,s&&(s=!1,a.process(l))}};return a}var Iu=40,Oi=!0,qt=!1,Ui=!1,Bt={delta:0,timestamp:0},Ft=["read","update","preRender","render","postRender"],Jr=Ft.reduce((t,e)=>(t[e]=va(()=>qt=!0),t),{}),Au=Ft.reduce((t,e)=>{let r=Jr[e];return t[e]=(n,i=!1,s=!1)=>(qt||Du(),r.schedule(n,i,s)),t},{}),ba=Ft.reduce((t,e)=>(t[e]=Jr[e].cancel,t),{}),O2=Ft.reduce((t,e)=>(t[e]=()=>Jr[e].process(Bt),t),{}),Tu=t=>Jr[t].process(Bt),xa=t=>{qt=!1,Bt.delta=Oi?Li:Math.max(Math.min(t-Bt.timestamp,Iu),1),Bt.timestamp=t,Ui=!0,Ft.forEach(Tu),Ui=!1,qt&&(Oi=!1,ji(xa))},Du=()=>{qt=!0,Oi=!0,Ui||ji(xa)};var ka=Au;function Pi(t,e,r=0){return t-e-r}function Ca(t,e,r=0,n=!0){return n?Pi(e+-t,e,r):e-(t-e)+r}function Sa(t,e,r,n){return n?t>=e+r:t<=-r}var Lu=t=>{let e=({delta:r})=>t(r);return{start:()=>ka.update(e,!0),stop:()=>ba.update(e)}};function Ri(t){var e,r,{from:n,autoplay:i=!0,driver:s=Lu,elapsed:o=0,repeat:a=0,repeatType:l="loop",repeatDelay:c=0,onPlay:d,onStop:h,onComplete:p,onRepeat:g,onUpdate:f}=t,E=Or(t,["from","autoplay","driver","elapsed","repeat","repeatType","repeatDelay","onPlay","onStop","onComplete","onRepeat","onUpdate"]);let{to:b}=E,S,y=0,x=E.duration,$,j=!1,B=!0,N,I=ya(E);!((r=(e=I).needsInterpolation)===null||r===void 0)&&r.call(e,n,b)&&(N=Gr([0,100],[n,b],{clamp:!1}),n=0,b=100);let V=I(Object.assign(Object.assign({},E),{from:n,to:b}));function J(){y++,l==="reverse"?(B=y%2===0,o=Ca(o,x,c,B)):(o=Pi(o,x,c),l==="mirror"&&V.flipTarget()),j=!1,g&&g()}function on(){S.stop(),p&&p()}function $e(P){if(B||(P=-P),o+=P,!j){let z=V.next(Math.max(0,o));$=z.value,N&&($=N($)),j=B?z.done:o<=0}f?.($),j&&(y===0&&(x??(x=o)),y<a?Sa(o,x,c,B)&&J():on())}function Gt(){d?.(),S=s($e),S.start()}return i&&Gt(),{stop:()=>{h?.(),S.stop()}}}var Nt=class t extends k(v){static properties={product:{type:Object},labels:{type:Object},darkMode:{type:Boolean,attribute:"dark-mode"},_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.darkMode=!1,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`
|
|
2005
2153
|
<div class="${this.darkMode?"dark border-gray-600 bg-[#1E1F23]":"border-[#5e5d59]/25 bg-white"} my-2 w-full rounded-3xl border p-4">
|
|
2006
2154
|
<div class="relative mx-auto mb-4 max-w-[240px]">
|
|
2007
2155
|
<div class="h-[180px] w-full animate-pulse rounded-2xl bg-gray-200 dark:bg-gray-700"></div>
|
|
@@ -2020,15 +2168,15 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2020
2168
|
<div class="h-8 flex-auto animate-pulse rounded-xl bg-gray-200 dark:bg-gray-700"></div>
|
|
2021
2169
|
</div>
|
|
2022
2170
|
</div>
|
|
2023
|
-
`;if(this.product.layout==="horizontal")return
|
|
2171
|
+
`;if(this.product.layout==="horizontal")return u` <mw-product-card-horizontal product="${JSON.stringify(this.product)}" ?dark-mode="${this.darkMode}"></mw-product-card-horizontal> `;let{name:e,description:r,price:n,category:i}=this.product;return u`
|
|
2024
2172
|
<div class="${this.darkMode?"dark border-gray-600 bg-[#1E1F23]":"border-[#5e5d59]/25 bg-white"} my-2 w-full rounded-3xl border-[0.5px] p-4 hover:shadow-sm">
|
|
2025
2173
|
<div class="pointer-events-auto mx-auto mb-4">
|
|
2026
2174
|
<div class="group relative overflow-hidden rounded-2xl">
|
|
2027
2175
|
<div class="image-slider z-0 flex transition-transform duration-300 ease-in-out" style="transform: translateX(-${this._currentImageIndex*100}%)">
|
|
2028
|
-
${this.images.length>0?
|
|
2176
|
+
${this.images.length>0?Z(this.images,s=>s,(s,o)=>u`
|
|
2029
2177
|
<!-- TODO: add srcset with 1x/2x variants for high DPI displays -->
|
|
2030
2178
|
<img src="${s}" alt="image ${o+1}: ${e}" class="h-auto w-full flex-shrink-0 object-scale-down" loading="lazy" />
|
|
2031
|
-
`):
|
|
2179
|
+
`):u`
|
|
2032
2180
|
<div class="h-full w-full flex-shrink-0 object-scale-down"></div>
|
|
2033
2181
|
<svg class="rounded-lg" height="144" viewBox="0 0 100 133" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2034
2182
|
<rect width="100" height="133" rx="2" fill="#EEEEEE" style="" transform="matrix(0.9999999999999999, 0, 0, 0.9999999999999999, 0, -7.105427357601002e-15)" />
|
|
@@ -2040,7 +2188,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2040
2188
|
</svg>
|
|
2041
2189
|
`}
|
|
2042
2190
|
</div>
|
|
2043
|
-
${this.images.length>1?
|
|
2191
|
+
${this.images.length>1?u`
|
|
2044
2192
|
<div class="absolute inset-0 flex items-center justify-between px-4">
|
|
2045
2193
|
<button
|
|
2046
2194
|
@click="${this.#s}"
|
|
@@ -2054,9 +2202,9 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2054
2202
|
</button>
|
|
2055
2203
|
</div>
|
|
2056
2204
|
`:null}
|
|
2057
|
-
${this.images?.length>1?
|
|
2205
|
+
${this.images?.length>1?u`
|
|
2058
2206
|
<div class="slider-dots absolute bottom-3 left-1/2 flex -translate-x-1/2 gap-2">
|
|
2059
|
-
${this.images.map((s,o)=>
|
|
2207
|
+
${this.images.map((s,o)=>u`
|
|
2060
2208
|
<button
|
|
2061
2209
|
@click="${()=>this.#o(o)}"
|
|
2062
2210
|
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 dark:bg-gray-400"></button>
|
|
@@ -2066,17 +2214,17 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2066
2214
|
</div>
|
|
2067
2215
|
</div>
|
|
2068
2216
|
<div @click="${this.#t}" class="cursor-pointer">
|
|
2069
|
-
${i?
|
|
2217
|
+
${i?u`<a @click="${this.#t}" class="${this._isValidUrl?"":"pointer-events-none"} line-clamp-1 text-xs text-gray-600 hover:underline dark:text-gray-400">
|
|
2070
2218
|
${i}
|
|
2071
2219
|
</a>`:null}
|
|
2072
2220
|
|
|
2073
2221
|
<h3
|
|
2074
2222
|
@click="${this.#t}"
|
|
2075
2223
|
class="${this._isValidUrl?"":"pointer-events-none cursor-default"} mb-1 line-clamp-2 cursor-pointer text-lg font-semibold text-black transition-all hover:underline dark:text-gray-200">
|
|
2076
|
-
${e||
|
|
2224
|
+
${e||u`<span class="inline-block h-6 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-700"></span>`}
|
|
2077
2225
|
</h3>
|
|
2078
|
-
${r?
|
|
2079
|
-
<span class="text-lg font-bold text-black dark:text-gray-200"> ${n||
|
|
2226
|
+
${r?u`<p class="mb-2 line-clamp-2 text-sm text-gray-600 dark:text-gray-400">${r}</p>`:u`<div class="mb-2 h-4 w-3/4 animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div>`}
|
|
2227
|
+
<span class="text-lg font-bold text-black dark:text-gray-200"> ${n||u`<span class="inline-block h-6 w-16 animate-pulse rounded bg-gray-200 dark:bg-gray-700"></span>`} </span>
|
|
2080
2228
|
|
|
2081
2229
|
<!-- <div class="my-4 border-t border-gray-200"></div> -->
|
|
2082
2230
|
|
|
@@ -2088,21 +2236,21 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2088
2236
|
</button> -->
|
|
2089
2237
|
</div>
|
|
2090
2238
|
</div>
|
|
2091
|
-
`}#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&&
|
|
2239
|
+
`}#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&&Ri({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")}};Nt.AddToCartEvent=class extends CustomEvent{static type="mw-product-card:add-to-cart";constructor(e,r={}){super(Nt.AddToCartEvent.type,{detail:{product:e},...r})}};customElements.get("mw-product-card")||customElements.define("mw-product-card",Nt);function Kr(t){return Array.isArray(t)?t:t?[t]:[]}function $a(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 Bi=class extends k(v){static properties={orderDetails:{type:Object},streaming:{type:Boolean},linksNewTab:{type:Boolean,attribute:"links-new-tab"},color:{type:String},darkMode:{type:Boolean,attribute:"dark-mode"}};constructor(){super(),this.orderDetails=null,this.streaming=!1,this.linksNewTab=!1,this.color="#601feb",this.darkMode=!1}render(){let e=Kr(this.orderDetails?.order_status?.step||[]),r=Kr(this.orderDetails?.items?.item||[]),n=Kr(this.orderDetails?.actions||[]);return u`
|
|
2092
2240
|
<div class="${this.darkMode?"dark border-white/10 bg-[#1E1F23]":"border-gray-200 bg-white"} flex w-full max-w-md flex-col rounded-3xl border p-4">
|
|
2093
2241
|
<!-- Header with order ID -->
|
|
2094
2242
|
<div class="mb-2">
|
|
2095
|
-
${this.orderDetails?.order_id?.label||!this.streaming?
|
|
2243
|
+
${this.orderDetails?.order_id?.label||!this.streaming?u`<h2 class="text-lg font-semibold text-gray-900 dark:text-white">${this.orderDetails?.order_id?.label} ${this.orderDetails?.order_id?.value}</h2>`:u`<div class="h-7 w-full animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>`}
|
|
2096
2244
|
</div>
|
|
2097
2245
|
|
|
2098
2246
|
<!-- Progress Timeline -->
|
|
2099
2247
|
<div>
|
|
2100
2248
|
<ol role="list" class="w-full overflow-hidden">
|
|
2101
|
-
${this.streaming&&!this.orderDetails?
|
|
2249
|
+
${this.streaming&&!this.orderDetails?u`
|
|
2102
2250
|
<!-- Loading for status timeline -->
|
|
2103
|
-
${[1,2,3].map((i,s)=>
|
|
2251
|
+
${[1,2,3].map((i,s)=>u`
|
|
2104
2252
|
<li class="w-full pb-8">
|
|
2105
|
-
${s<2?
|
|
2253
|
+
${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 dark:bg-gray-600" aria-hidden="true"></div>`:""}
|
|
2106
2254
|
<div class="group relative flex items-start">
|
|
2107
2255
|
<span class="flex h-6 items-center">
|
|
2108
2256
|
<span class="h-4 w-4 animate-pulse rounded-full bg-gray-200 dark:bg-gray-600"></span>
|
|
@@ -2113,25 +2261,25 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2113
2261
|
</div>
|
|
2114
2262
|
</li>
|
|
2115
2263
|
`)}
|
|
2116
|
-
`:
|
|
2117
|
-
${l?"":
|
|
2264
|
+
`:Z(e,i=>i.label,(i,s)=>{let o=i.status==="completed",a=i.status==="in_progress",l=s===e.length-1;return u`<li class="relative pb-4">
|
|
2265
|
+
${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 dark:bg-gray-600"}`}" aria-hidden="true"></div>`}
|
|
2118
2266
|
|
|
2119
2267
|
<div class="group relative flex items-start">
|
|
2120
|
-
${
|
|
2268
|
+
${ot(i.status,[["pending",()=>u` <span class="flex h-6 items-center">
|
|
2121
2269
|
<span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-gray-300 bg-white dark:border-gray-500 dark:bg-[#1E1F23]">
|
|
2122
2270
|
<span class="h-1.5 w-1.5 rounded-full bg-transparent"></span>
|
|
2123
2271
|
</span>
|
|
2124
|
-
</span>`],["in_progress",()=>
|
|
2272
|
+
</span>`],["in_progress",()=>u`<span class="flex h-6 items-center">
|
|
2125
2273
|
<span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-[${this.color}] bg-white dark:bg-[#1E1F23]">
|
|
2126
2274
|
<span class="h-1.5 w-1.5 rounded-full bg-[${this.color}]"></span>
|
|
2127
2275
|
</span>
|
|
2128
|
-
</span>`],["completed",()=>
|
|
2276
|
+
</span>`],["completed",()=>u`
|
|
2129
2277
|
<span class="flex h-6 items-center">
|
|
2130
2278
|
<span class="flex h-4 w-4 items-center justify-center rounded-full bg-[${this.color}]">
|
|
2131
2279
|
<hi-outline class="mb-3 block h-3 w-3 text-white dark:text-gray-800" name="check"></hi-outline>
|
|
2132
2280
|
</span>
|
|
2133
2281
|
</span>
|
|
2134
|
-
`]],()=>
|
|
2282
|
+
`]],()=>u`<span class="flex h-6 items-center">
|
|
2135
2283
|
<span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-[${this.color}] bg-white dark:bg-[#1E1F23]">
|
|
2136
2284
|
<span class="h-1.5 w-1.5 rounded-full bg-[${this.color}]"></span>
|
|
2137
2285
|
</span>
|
|
@@ -2149,7 +2297,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2149
2297
|
|
|
2150
2298
|
<!-- Products list with order items -->
|
|
2151
2299
|
<div class="mb-2 w-full">
|
|
2152
|
-
${r.length===0&&!this.orderDetails?.total?.amount&&this.streaming?
|
|
2300
|
+
${r.length===0&&!this.orderDetails?.total?.amount&&this.streaming?u`
|
|
2153
2301
|
<!-- Loading shimmer for products -->
|
|
2154
2302
|
<div class="w-full space-y-4">
|
|
2155
2303
|
<div class="flex items-center gap-2">
|
|
@@ -2164,11 +2312,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2164
2312
|
<div class="h-4 w-10 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2165
2313
|
</div>
|
|
2166
2314
|
</div>
|
|
2167
|
-
`:
|
|
2315
|
+
`:u`
|
|
2168
2316
|
<div class="divide-y divide-gray-100 dark:divide-gray-600">
|
|
2169
|
-
${this.streaming&&!r.length?
|
|
2317
|
+
${this.streaming&&!r.length?u`
|
|
2170
2318
|
<!-- Loading shimmer for individual products -->
|
|
2171
|
-
${[1,2].map(()=>
|
|
2319
|
+
${[1,2].map(()=>u`
|
|
2172
2320
|
<div class="flex items-center gap-2 py-1.5">
|
|
2173
2321
|
<div class="h-12 w-12 animate-pulse rounded-lg bg-gray-200 dark:bg-gray-600"></div>
|
|
2174
2322
|
<div class="min-w-0 flex-1">
|
|
@@ -2177,14 +2325,14 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2177
2325
|
<div class="h-4 w-24 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2178
2326
|
</div>
|
|
2179
2327
|
`)}
|
|
2180
|
-
`:r?.map(i=>{let s=i?.image_url;return
|
|
2328
|
+
`:r?.map(i=>{let s=i?.image_url;return u`
|
|
2181
2329
|
<div class="flex items-center gap-2 py-1.5">
|
|
2182
|
-
<img src="${
|
|
2330
|
+
<img src="${H(s)}" class="block h-12 w-12 rounded-lg bg-gray-100 object-contain dark:bg-gray-700" loading="lazy" />
|
|
2183
2331
|
|
|
2184
2332
|
<div class="min-w-0 flex-1">
|
|
2185
|
-
${!i?.name&&this.streaming?
|
|
2333
|
+
${!i?.name&&this.streaming?u`<div class="h-4 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>`:u`<h3 class="truncate text-sm font-medium text-gray-900 dark:text-gray-100">${i?.name}</h3>`}
|
|
2186
2334
|
</div>
|
|
2187
|
-
${!i?.price&&this.streaming?
|
|
2335
|
+
${!i?.price&&this.streaming?u`<div class="h-4 w-24 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>`:u`<span class="text-sm text-gray-500 dark:text-gray-400">${i?.quantity&&Number(i.quantity)>1?"x":""} ${i?.price}</span>`}
|
|
2188
2336
|
</div>
|
|
2189
2337
|
`})}
|
|
2190
2338
|
</div>
|
|
@@ -2200,9 +2348,9 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2200
2348
|
|
|
2201
2349
|
<!-- Shipping and payment information -->
|
|
2202
2350
|
<div class="mb-2 flex w-full flex-col gap-2 overflow-hidden">
|
|
2203
|
-
${this.streaming&&!this.orderDetails?
|
|
2351
|
+
${this.streaming&&!this.orderDetails?u`
|
|
2204
2352
|
<!-- Loading shimmer template -->
|
|
2205
|
-
${[1,2].map(()=>
|
|
2353
|
+
${[1,2].map(()=>u`
|
|
2206
2354
|
<div>
|
|
2207
2355
|
<div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2208
2356
|
<div class="space-y-2 overflow-hidden">
|
|
@@ -2211,10 +2359,10 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2211
2359
|
</div>
|
|
2212
2360
|
</div>
|
|
2213
2361
|
`)}
|
|
2214
|
-
`:
|
|
2362
|
+
`:u`
|
|
2215
2363
|
<!-- Shipping Section -->
|
|
2216
2364
|
<div>
|
|
2217
|
-
${this.streaming&&!this.orderDetails?.shipping?
|
|
2365
|
+
${this.streaming&&!this.orderDetails?.shipping?u`
|
|
2218
2366
|
<div>
|
|
2219
2367
|
<div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2220
2368
|
<div class="space-y-2 overflow-hidden">
|
|
@@ -2222,18 +2370,18 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2222
2370
|
<div class="h-4 w-36 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2223
2371
|
</div>
|
|
2224
2372
|
</div>
|
|
2225
|
-
`:this.orderDetails?.shipping?.method||this.orderDetails?.customer?.name?
|
|
2373
|
+
`:this.orderDetails?.shipping?.method||this.orderDetails?.customer?.name?u`
|
|
2226
2374
|
<h3 class="mb-1 text-sm font-medium text-gray-900 dark:text-gray-100">${this.orderDetails?.shipping?.label}</h3>
|
|
2227
2375
|
<div class="space-y-1">
|
|
2228
|
-
${this.orderDetails.customer?.name?
|
|
2229
|
-
${this.orderDetails.shipping?.method?
|
|
2376
|
+
${this.orderDetails.customer?.name?u`<p class="text-xs text-gray-600 dark:text-gray-400">${this.orderDetails.customer.name}</p>`:""}
|
|
2377
|
+
${this.orderDetails.shipping?.method?u`<p class="text-xs text-gray-600 dark:text-gray-400">${this.orderDetails.shipping.method}</p>`:""}
|
|
2230
2378
|
</div>
|
|
2231
2379
|
`:""}
|
|
2232
2380
|
</div>
|
|
2233
2381
|
|
|
2234
2382
|
<!-- Payment Section -->
|
|
2235
2383
|
<div>
|
|
2236
|
-
${this.streaming&&!this.orderDetails?.payment?
|
|
2384
|
+
${this.streaming&&!this.orderDetails?.payment?u`
|
|
2237
2385
|
<div>
|
|
2238
2386
|
<div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2239
2387
|
<div class="space-y-2 overflow-hidden">
|
|
@@ -2241,15 +2389,15 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2241
2389
|
<div class="h-4 w-36 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2242
2390
|
</div>
|
|
2243
2391
|
</div>
|
|
2244
|
-
`:this.orderDetails?.payment?
|
|
2392
|
+
`:this.orderDetails?.payment?u`
|
|
2245
2393
|
<h3 class="mb-1 text-sm font-medium text-gray-900 dark:text-gray-100">${this.orderDetails.payment.label}</h3>
|
|
2246
|
-
${this.orderDetails.payment?.method?.value?
|
|
2394
|
+
${this.orderDetails.payment?.method?.value?u`
|
|
2247
2395
|
<p class="text-xs text-gray-600 dark:text-gray-400">
|
|
2248
2396
|
<span class="font-medium">${this.orderDetails.payment.method.label}:</span>
|
|
2249
2397
|
${this.orderDetails.payment.method.value}
|
|
2250
2398
|
</p>
|
|
2251
2399
|
`:""}
|
|
2252
|
-
${this.orderDetails.payment.status?.value?
|
|
2400
|
+
${this.orderDetails.payment.status?.value?u`
|
|
2253
2401
|
<p class="text-xs text-gray-600 dark:text-gray-400">
|
|
2254
2402
|
<span class="font-medium">${this.orderDetails.payment.status.label}:</span>
|
|
2255
2403
|
<span>${this.orderDetails.payment.status.value}</span>
|
|
@@ -2262,11 +2410,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2262
2410
|
|
|
2263
2411
|
<!-- Action buttons section -->
|
|
2264
2412
|
<div class="flex w-full flex-col gap-2 overflow-hidden">
|
|
2265
|
-
${this.streaming&&!n[0]?.track_order?.label&&!
|
|
2413
|
+
${this.streaming&&!n[0]?.track_order?.label&&!Je(n[0]?.track_order?.tracking_url||"")?u`
|
|
2266
2414
|
<!-- Loading shimmer for buttons -->
|
|
2267
2415
|
<div class="h-10 w-full min-w-[250px] animate-pulse overflow-hidden rounded-xl bg-gray-200 dark:bg-gray-600"></div>
|
|
2268
|
-
`:
|
|
2269
|
-
${
|
|
2416
|
+
`:Z(n,(i,s)=>`action-${s}`,i=>{if(i?.track_order?.label)return u`
|
|
2417
|
+
${Je(i.track_order?.tracking_url||"")?u` <a
|
|
2270
2418
|
target="${this.linksNewTab?"_blank":"_self"}"
|
|
2271
2419
|
href="${i.track_order?.tracking_url}"
|
|
2272
2420
|
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"
|
|
@@ -2275,7 +2423,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2275
2423
|
`})}
|
|
2276
2424
|
</div>
|
|
2277
2425
|
</div>
|
|
2278
|
-
`}};customElements.get("mw-product-order-status-card")||customElements.define("mw-product-order-status-card",
|
|
2426
|
+
`}};customElements.get("mw-product-order-status-card")||customElements.define("mw-product-order-status-card",Bi);var ju={".section-spacing":{"@apply":"relative flex justify-center px-[25px] py-16 sm:px-9 sm:py-[45px] lg:px-24 lg:py-[104px]"}},qi=At({preflight:{...ju},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:[$r(),kr(),Cr(),Er()],ignorelist:/^(sb-|css-|sbdocs|docblock|innerZoomElementWrapper|docs-|rejt-)/});var Fi=t=>_r(qi)(t);var Ni=class extends Fi(v){static styles=O`
|
|
2279
2427
|
:host {
|
|
2280
2428
|
--w-hover-arrow--hovered: 0;
|
|
2281
2429
|
}
|
|
@@ -2289,21 +2437,21 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2289
2437
|
transform: translateX(calc(var(--w-hover-arrow--hovered) * 3px));
|
|
2290
2438
|
transition: transform 0.3s ease-in-out;
|
|
2291
2439
|
}
|
|
2292
|
-
`;render(){return
|
|
2440
|
+
`;render(){return u`
|
|
2293
2441
|
<svg width="10" height="10" viewBox="0 0 10 10" aria-hidden="true">
|
|
2294
2442
|
<g fill-rule="evenodd">
|
|
2295
2443
|
<path part="line" stroke="currentColor" fill="currentColor" d="M0 5h7"></path>
|
|
2296
2444
|
<path part="tip" stroke="currentColor" fill="transparent" d="M1 1l4 4-4 4"></path>
|
|
2297
2445
|
</g>
|
|
2298
2446
|
</svg>
|
|
2299
|
-
`}};customElements.get("w-hover-arrow")||customElements.define("w-hover-arrow",
|
|
2447
|
+
`}};customElements.get("w-hover-arrow")||customElements.define("w-hover-arrow",Ni);var Vt=class t extends k(v){static properties={title:{type:String},type:{type:String},color:{type:String},darkMode:{type:Boolean,attribute:"dark-mode"},_hoverRating:{type:Number,state:!0}};constructor(){super(),this.title="",this.type="star-rating",this.color="#8B5CF6",this.darkMode=!1,this._hoverRating=0}render(){return u`
|
|
2300
2448
|
<div
|
|
2301
2449
|
class="${this.darkMode?"dark bg-[#1E1F23]":"bg-white"} focus-within:ring-opacity-50 w-full overflow-hidden rounded-[18px] shadow-[0px_3px_20px_0px_rgba(0,0,0,0.2)] transition-all duration-200 focus-within:ring-2 focus-within:ring-[${this.color}]">
|
|
2302
2450
|
<div class="flex flex-col gap-2 p-4">
|
|
2303
|
-
${
|
|
2451
|
+
${ot(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>`)}
|
|
2304
2452
|
</div>
|
|
2305
2453
|
</div>
|
|
2306
|
-
`}#e(){return
|
|
2454
|
+
`}#e(){return u`
|
|
2307
2455
|
<button
|
|
2308
2456
|
type="button"
|
|
2309
2457
|
@click="${()=>this.dispatchEvent(new t.SubmitEvent({type:"new-conversation-button"}))}">
|
|
@@ -2312,10 +2460,10 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2312
2460
|
<w-hover-arrow class="text-[${this.color}] group-hover:[--w-hover-arrow--hovered:1]"></w-hover-arrow>
|
|
2313
2461
|
</span>
|
|
2314
2462
|
</button>
|
|
2315
|
-
`}#t(){return
|
|
2316
|
-
${this.title?
|
|
2463
|
+
`}#t(){return u`
|
|
2464
|
+
${this.title?u`<p class="text-sm font-medium text-gray-700 dark:text-gray-200">${this.title}</p>`:null}
|
|
2317
2465
|
<div class="flex justify-center gap-1">
|
|
2318
|
-
${[1,2,3,4,5].map(e=>
|
|
2466
|
+
${[1,2,3,4,5].map(e=>u`
|
|
2319
2467
|
<button
|
|
2320
2468
|
type="button"
|
|
2321
2469
|
@click="${()=>this.#i(e)}"
|
|
@@ -2327,8 +2475,8 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2327
2475
|
</button>
|
|
2328
2476
|
`)}
|
|
2329
2477
|
</div>
|
|
2330
|
-
`}#r(){return
|
|
2331
|
-
${this.title?
|
|
2478
|
+
`}#r(){return u`
|
|
2479
|
+
${this.title?u`<p class="text-sm font-medium text-gray-700 dark:text-gray-200">${this.title}</p>`:null}
|
|
2332
2480
|
<div class="flex justify-center gap-4">
|
|
2333
2481
|
<button
|
|
2334
2482
|
type="button"
|
|
@@ -2355,7 +2503,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2355
2503
|
</svg>
|
|
2356
2504
|
</button>
|
|
2357
2505
|
</div>
|
|
2358
|
-
`}#n(e){let r=e<=this._hoverRating;return
|
|
2506
|
+
`}#n(e){let r=e<=this._hoverRating;return u`
|
|
2359
2507
|
<svg class="${r?"text-yellow-400":"text-gray-300"} h-6 w-6" fill="${r?"currentColor":"none"}" stroke="currentColor" viewBox="0 0 24 24">
|
|
2360
2508
|
<path
|
|
2361
2509
|
stroke-linecap="round"
|
|
@@ -2363,41 +2511,48 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2363
2511
|
stroke-width="2"
|
|
2364
2512
|
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" />
|
|
2365
2513
|
</svg>
|
|
2366
|
-
`}#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}))}};
|
|
2367
|
-
${p?
|
|
2514
|
+
`}#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}))}};Vt.SubmitEvent=class extends CustomEvent{static type="mw-request-input:submit";constructor(e,r={}){super(Vt.SubmitEvent.type,{detail:e,bubbles:!0,composed:!0,...r})}};customElements.get("mw-request-input")||customElements.define("mw-request-input",Vt);var Ht=class extends nt{constructor(e){if(super(e),this.it=U,e.type!==Mr.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===U||e==null)return this._t=void 0,this.it=e;if(e===ne)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:[]}}};Ht.directiveName="unsafeHTML",Ht.resultType=1;var Ea=Ir(Ht);var Ou=new Map([["amp","&"],["lt","<"],["gt",">"],["quot",'"'],["apos","'"],["nbsp","\xA0"],["ensp","\u2002"],["emsp","\u2003"],["thinsp","\u2009"],["eacute","\xE9"],["Eacute","\xC9"],["ntilde","\xF1"],["uuml","\xFC"],["ccedil","\xE7"],["aacute","\xE1"],["Aacute","\xC1"],["agrave","\xE0"],["Agrave","\xC0"],["acirc","\xE2"],["Acirc","\xC2"],["auml","\xE4"],["Auml","\xC4"],["aring","\xE5"],["Aring","\xC5"],["aelig","\xE6"],["AElig","\xC6"],["egrave","\xE8"],["Egrave","\xC8"],["ecirc","\xEA"],["Ecirc","\xCA"],["euml","\xEB"],["Euml","\xCB"],["iacute","\xED"],["Iacute","\xCD"],["igrave","\xEC"],["Igrave","\xCC"],["icirc","\xEE"],["Icirc","\xCE"],["iuml","\xEF"],["Iuml","\xCF"],["oacute","\xF3"],["Oacute","\xD3"],["ograve","\xF2"],["Ograve","\xD2"],["ocirc","\xF4"],["Ocirc","\xD4"],["ouml","\xF6"],["Ouml","\xD6"],["oslash","\xF8"],["Oslash","\xD8"],["otilde","\xF5"],["Otilde","\xD5"],["uacute","\xFA"],["Uacute","\xDA"],["ugrave","\xF9"],["Ugrave","\xD9"],["ucirc","\xFB"],["Ucirc","\xDB"],["Uuml","\xDC"],["yacute","\xFD"],["Yacute","\xDD"],["yuml","\xFF"],["Yuml","\u0178"],["Ntilde","\xD1"],["Ccedil","\xC7"],["euro","\u20AC"],["pound","\xA3"],["yen","\xA5"],["cent","\xA2"],["copy","\xA9"],["reg","\xAE"],["trade","\u2122"],["curren","\xA4"],["plusmn","\xB1"],["times","\xD7"],["divide","\xF7"],["le","\u2264"],["ge","\u2265"],["ne","\u2260"],["sum","\u2211"],["prod","\u220F"],["int","\u222B"],["infin","\u221E"],["radic","\u221A"],["minus","\u2212"],["sup2","\xB2"],["sup3","\xB3"],["frac14","\xBC"],["frac12","\xBD"],["frac34","\xBE"],["larr","\u2190"],["rarr","\u2192"],["uarr","\u2191"],["darr","\u2193"],["harr","\u2194"],["lArr","\u21D0"],["rArr","\u21D2"],["uArr","\u21D1"],["dArr","\u21D3"],["hArr","\u21D4"],["alpha","\u03B1"],["beta","\u03B2"],["gamma","\u03B3"],["delta","\u03B4"],["epsilon","\u03B5"],["zeta","\u03B6"],["eta","\u03B7"],["theta","\u03B8"],["iota","\u03B9"],["kappa","\u03BA"],["lambda","\u03BB"],["mu","\u03BC"],["nu","\u03BD"],["xi","\u03BE"],["omicron","\u03BF"],["pi","\u03C0"],["rho","\u03C1"],["sigma","\u03C3"],["tau","\u03C4"],["upsilon","\u03C5"],["phi","\u03C6"],["chi","\u03C7"],["psi","\u03C8"],["omega","\u03C9"],["Alpha","\u0391"],["Beta","\u0392"],["Gamma","\u0393"],["Delta","\u0394"],["Epsilon","\u0395"],["Zeta","\u0396"],["Eta","\u0397"],["Theta","\u0398"],["Iota","\u0399"],["Kappa","\u039A"],["Lambda","\u039B"],["Mu","\u039C"],["Nu","\u039D"],["Xi","\u039E"],["Omicron","\u039F"],["Pi","\u03A0"],["Rho","\u03A1"],["Sigma","\u03A3"],["Tau","\u03A4"],["Upsilon","\u03A5"],["Phi","\u03A6"],["Chi","\u03A7"],["Psi","\u03A8"],["Omega","\u03A9"],["clubs","\u2663"],["hearts","\u2665"],["diams","\u2666"],["spades","\u2660"],["iexcl","\xA1"],["iquest","\xBF"],["sect","\xA7"],["para","\xB6"],["deg","\xB0"],["middot","\xB7"],["bull","\u2022"],["hellip","\u2026"],["prime","\u2032"],["Prime","\u2033"],["lsaquo","\u2039"],["rsaquo","\u203A"],["laquo","\xAB"],["raquo","\xBB"],["lsquo","\u2018"],["rsquo","\u2019"],["ldquo","\u201C"],["rdquo","\u201D"],["sbquo","\u201A"],["bdquo","\u201E"],["ndash","\u2013"],["mdash","\u2014"],["macr","\xAF"],["oline","\u203E"],["not","\xAC"],["shy","\xAD"],["ordf","\xAA"],["ordm","\xBA"],["micro","\xB5"],["acute","\xB4"],["cedil","\xB8"],["uml","\xA8"]]),Uu=/&(?:(#[xX])([0-9a-fA-F]+)|(#)([0-9]+)|([a-zA-Z]+));/g;function Pu(t,e,r,n,i,s){if(e){let o=Number.parseInt(r,16);return o>=0&&o<=1114111?String.fromCodePoint(o):t}if(n){let o=Number.parseInt(i,10);return o>=0&&o<=1114111?String.fromCodePoint(o):t}if(s){let o=Ou.get(s);if(o!==void 0)return o}return t}function _a(t){return t.replace(Uu,Pu)}function Ma(t){if(!t.includes("&"))return t;try{t=_a(t)}catch{}if(!t.includes("&"))return t;try{t=_a(t)}catch{}return t}var Vi=t=>Xe(_t(),Et(e=>Array.isArray(e)?e:[e]),Ke(t)),Nm=Xe(_(),Et(Ma));var Vm=Xe(Nn({}),Et(t=>{function e(r){let n={};for(let[i,s]of Object.entries(r))s!==null&&(typeof s=="object"&&s!==null&&!Array.isArray(s)?n[i]=e(s):n[i]=s);return n}return e(t)}));var Ia=W({order_id_label:A(_()),order_id_value:A(_()),timeline:A(W({step:Vi(W({label:A(_()),status:A(Mt(["completed","in_progress","pending"]))}))})),items:A(W({item:Vi(W({name:A(_()),quantity:A(_()),price:A(_()),image:A(_())}))})),total_label:A(_()),total_amount:A(_()),customer_name:A(_()),shipping_label:A(_()),shipping_method:A(_()),payment_label:A(_()),payment_method_label:A(_()),payment_method_value:A(_()),payment_status_label:A(_()),payment_status_value:A(_()),order_tracking_label:A(_()),order_tracking_url:A(_())});var Aa=Ws(W({url:_(),name:_(),description:_(),price:_()}));function Ta(t,e,r,{imagesByProductUrl:n,linksNewTab:i=!0,searchParams:s,messageIsStreaming:o=!1,isSupportAgent:a,color:l="#601feb",darkMode:c=!1,apiBaseUrl:d="",cdnBaseUrl:h=""}){if(!t)return u``;let p=e>0&&r[e-1]&&"data"in r[e-1],g=e<r.length-1||!o;if("text"in t)return u`<p>${t.text}</p>`;if("html"in t)return u`${Ea(t.html)}`;if("data"in t)switch(t.tag){case"product-card":case"product-card-v1":case"product-card-horizontal":{let f=ve(Aa,t.data);if(f.success)return u`
|
|
2515
|
+
${p?u`<div class="my-3 w-full border-t border-gray-200/50"></div>`:null}
|
|
2368
2516
|
<mw-product-card-horizontal
|
|
2369
|
-
product="${
|
|
2517
|
+
.product="${f.output}"
|
|
2370
2518
|
?streaming="${!g}"
|
|
2371
2519
|
?links-new-tab="${i}"
|
|
2372
2520
|
?dark-mode="${c}"
|
|
2373
2521
|
.searchParams="${s}"
|
|
2374
2522
|
.imagesByProductUrl="${n}"></mw-product-card-horizontal>
|
|
2375
|
-
|
|
2376
|
-
order-
|
|
2377
|
-
|
|
2378
|
-
|
|
2379
|
-
|
|
2380
|
-
|
|
2381
|
-
|
|
2382
|
-
|
|
2383
|
-
|
|
2384
|
-
|
|
2385
|
-
|
|
2386
|
-
|
|
2387
|
-
|
|
2388
|
-
|
|
2389
|
-
|
|
2390
|
-
|
|
2391
|
-
|
|
2392
|
-
|
|
2393
|
-
|
|
2394
|
-
|
|
2395
|
-
|
|
2523
|
+
`;console.warn(f.issues);break}case"order-status-card-v1":return u`
|
|
2524
|
+
<mw-product-order-status-card
|
|
2525
|
+
.orderDetails="${t.data}"
|
|
2526
|
+
?streaming="${!g}"
|
|
2527
|
+
?links-new-tab="${i}"
|
|
2528
|
+
?dark-mode="${c}"
|
|
2529
|
+
color="${l}"></mw-product-order-status-card>
|
|
2530
|
+
`;case"order-card-v2":{let f=ve(Ia,t.data);return f.success||console.warn(f.issues),u`
|
|
2531
|
+
<!-- -->
|
|
2532
|
+
<mw-order-card .orderDetails="${t.data}" ?streaming="${!g}" ?links-new-tab="${i}" ?dark-mode="${c}" color="${l}"></mw-order-card>
|
|
2533
|
+
`}case"live-chat-wait-card-v1":{let f=t.data||{};return a?u`<p><i>${f.message}</i></p>`:u`
|
|
2534
|
+
<mw-chat-wait-timer
|
|
2535
|
+
heading="${f.title||""}"
|
|
2536
|
+
message="${f.message||""}"
|
|
2537
|
+
completeMessage="${f.completeMessage||""}"
|
|
2538
|
+
gameButton="${f.gameButton||""}"
|
|
2539
|
+
target-end-time="${f.targetEndTime||""}"
|
|
2540
|
+
question="${f.firstQuestion||""}"
|
|
2541
|
+
.options="${f.options?.option||["No","Yes"]}"
|
|
2542
|
+
game-title="${f.gameTitle||""}"
|
|
2543
|
+
result-prefix="${f.resultPrefix||""}"
|
|
2544
|
+
correct-button-text="${f.correctButtonText||"Correct"}"
|
|
2545
|
+
wrong-button-text="${f.wrongButtonText||"Wrong"}"
|
|
2546
|
+
color="${l}"
|
|
2547
|
+
apiBaseUrl="${d}"
|
|
2548
|
+
cdnBaseUrl="${h}"
|
|
2549
|
+
sound="${h?`${h}/assets/game-intro.aac`:""}"></mw-chat-wait-timer>
|
|
2550
|
+
`}case"request-input-v1":return u``}return console.warn("could not render part:",t),u`<p><i>data type not supported</i></p>`}var Xr=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 Da(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 La(t){t?.body?.cancel().catch(console.warn)}var Hi=class{#e=[];#t;#r=10;#n=5e3;#i=!1;async add(e,r){if(this.#e.push(Ua(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 Oa(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",Yr()).href,e)}catch(e){console.error("Failed to send final events:",e)}}},ja=new Hi;window.addEventListener("beforeunload",()=>{ja.flushBeforeUnload().catch(console.error)});async function L(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"&&qu("molin_link_click",e),r?.immediate){await Oa([Ua(t,e)]);return}else return ja.add(t,e)}catch(n){console.error("Failed to send event:",n)}}async function Oa(t,{signal:e}={}){let r=new FormData;r.set("events",JSON.stringify(t));let n=await fetch(new URL("/widgets/data/collect",Yr()),{method:"POST",body:r,signal:e});if(!n.ok)throw new Error(`HTTP error! status: ${n.status}`);La(n)}function Ua(t,e){return{event:t,widget_id:e.widgetId,properties:Object.assign({},e,Bu()),distinct_id:Ru(),timestamp:new Date().toISOString()}}function Ru(){let t=R.distinctID;if(t&&typeof t=="string")return t;let e=crypto.randomUUID();try{R.distinctID=e}catch(r){console.error("Failed to store distinct_id:",r)}return e}function Bu(){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 Yr(){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 qu(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 Ra(){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 Ba(){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 Fu="\xB7 \xB7 \xB7",Nu=["star-rating","binary-vote","new-conversation-button"],zt=class t extends k(v){static styles=O`
|
|
2396
2551
|
div.dark::before {
|
|
2397
2552
|
opacity: 0.8;
|
|
2398
2553
|
background-color: rgba(20, 22, 26, var(--tw-bg-opacity));
|
|
2399
2554
|
}
|
|
2400
|
-
`;static properties={showClose:{type:Boolean,attribute:"show-close"},_currentRequestInputIndex:{type:Number,state:!0}};#e=
|
|
2555
|
+
`;static properties={showClose:{type:Boolean,attribute:"show-close"},_currentRequestInputIndex:{type:Number,state:!0}};#e=Xs(this);#t=[];constructor(){super(),this.showClose=!1,this._currentRequestInputIndex=0}#r=new Xr(this,{typingStarted:()=>this.#e.value?.sendUserTypingStart(),typingStopped:()=>this.#e.value?.sendUserTypingStop()});#n=new jr(this,{onImageDelete:e=>{if(!this.#e.value){console.warn("widget context not available, cannot delete image");return}this.#e.value.sendImageDelete(e),this.#f?.focus()},uploadUrl:new URL("/v1/uploads",Ra()).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.#d),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.#d),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})};#d=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(){T(this.config,"config is required");let e=$a(this.messages,s=>{try{let o=new Date(s.timestamp),a=Math.floor(o.getUTCMinutes()/5)*5;return o.setUTCMinutes(a,0,0),o.valueOf().toString()}catch(o){console.error(o)}}),r=Math.max(0,Math.min(this._currentRequestInputIndex,this.#p.length-1)),n=this.#p[r],i=this.config.darkMode;return u`
|
|
2401
2556
|
<div
|
|
2402
2557
|
class="${i?"dark":""} 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] dark:bg-[#14161A]">
|
|
2403
2558
|
<div
|
|
@@ -2418,7 +2573,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2418
2573
|
</div>
|
|
2419
2574
|
|
|
2420
2575
|
<!-- drag overlay -->
|
|
2421
|
-
${this.config.enableImageUpload&&this.#n.isDragging?
|
|
2576
|
+
${this.config.enableImageUpload&&this.#n.isDragging?u`
|
|
2422
2577
|
<div class="bg-opacity-90 absolute inset-0 z-50 flex items-center justify-center bg-white sm:rounded-[30px] dark:bg-[#2B2D31]">
|
|
2423
2578
|
<div class="p-8 text-center">
|
|
2424
2579
|
<lucide-icon name="image-plus" class="mx-auto mb-4 h-12 w-12 text-blue-500"></lucide-icon>
|
|
@@ -2430,8 +2585,8 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2430
2585
|
|
|
2431
2586
|
<!-- this structure of 2 divs is required for the browser native stick/scroll to bottom -->
|
|
2432
2587
|
<div id="scrollable-content" class="mt-6 flex h-full flex-shrink flex-grow flex-col-reverse overflow-auto">
|
|
2433
|
-
${this.config.enableImageUpload&&this.#n.error?
|
|
2434
|
-
${this.config?.showStillLearningBanner?
|
|
2588
|
+
${this.config.enableImageUpload&&this.#n.error?u`<mw-info-banner variant="error" text="${this.#n.error}" auto-dismissable></mw-info-banner> `:null}
|
|
2589
|
+
${this.config?.showStillLearningBanner?u`<mw-info-banner variant="info" text="I'm still learning!"></mw-info-banner>`:u`
|
|
2435
2590
|
<!-- this makes the chat stick to bottom when the banner is hidden -->
|
|
2436
2591
|
<div class="flex p-1"></div>
|
|
2437
2592
|
`}
|
|
@@ -2439,11 +2594,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2439
2594
|
<!-- the padding at the top makes empty room at the top when scrolling and content is hidden behind header -->
|
|
2440
2595
|
<!-- this is the 2nd (inner) div that will natively stick/scroll to bottom -->
|
|
2441
2596
|
<div class="${this.messages.length>0?"pt-20":""}">
|
|
2442
|
-
${
|
|
2443
|
-
<div class="my-2 text-center text-xs text-gray-500 dark:text-gray-400">${
|
|
2444
|
-
${
|
|
2445
|
-
${a.images?
|
|
2446
|
-
<div data-id="${a.id}" class="${
|
|
2597
|
+
${Z(Array.from(e),([s])=>s,([s,o])=>u`
|
|
2598
|
+
<div class="my-2 text-center text-xs text-gray-500 dark:text-gray-400">${Da(new Date(Number(s)),window.navigator.language)}</div>
|
|
2599
|
+
${Z(o??[],a=>a.id,(a,l)=>{let d=o[l+1]?.role===a.role,p=(l>0?o[l-1]:void 0)?.role===a.role,f=(o.length>0?o[o.length-1]:void 0)?.id===a.id,E=()=>f&&!p&&!d?"single-current":!p&&!d?"single":!p&&d?"first":f&&p&&!d?"last-current":p&&!d?"last":p&&d?"middle":"single";this.#i=E();let b=this.isLiveMode&&a.role==="user"&&a.id===this.lastMsg?.id?"sent":"",S=(a.content.includes("<request-input-v1>")||!a.content)&&a.parts?.every(y=>"data"in y&&y.tag==="request-input-v1");return u`
|
|
2600
|
+
${a.images?Z(a.images,y=>y,y=>u`
|
|
2601
|
+
<div data-id="${a.id}" class="${d?"mb-[1px]":"mb-3"} mr-2 ml-[15px] flex-row">
|
|
2447
2602
|
<mw-chat-image
|
|
2448
2603
|
src="${y}"
|
|
2449
2604
|
alt="User uploaded image"
|
|
@@ -2452,7 +2607,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2452
2607
|
width="300px"></mw-chat-image>
|
|
2453
2608
|
</div>
|
|
2454
2609
|
`):null}
|
|
2455
|
-
${(a.content||a.parts)&&!
|
|
2610
|
+
${(a.content||a.parts)&&!S?u` <div data-id="${a.id}" class="${d?"mb-[1px]":"mb-3"} mx-2 flex-row">
|
|
2456
2611
|
<mw-chat-message
|
|
2457
2612
|
.color="${this.config?.color}"
|
|
2458
2613
|
status="${b}"
|
|
@@ -2463,7 +2618,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2463
2618
|
@click="${this.#l}">
|
|
2464
2619
|
<div
|
|
2465
2620
|
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:font-bold prose-h2:text-lg prose-h2:font-bold prose-h3:text-base prose-h3:font-bold prose-h4:text-sm prose-h4:font-bold prose-p:whitespace-pre-wrap dark:prose-headings:text-white dark:prose-strong:text-white dark:prose-p:text-inherit break-words text-inherit">
|
|
2466
|
-
${a.content===
|
|
2621
|
+
${a.content===Fu?u`<mw-loading class="-mx-2 block h-8 max-h-[24px] w-8 fill-[${this.config?.color}]"></mw-loading>`:a.parts?Z(a.parts,(y,x)=>x,(y,x)=>Ta(y,x,a.parts??[],{imagesByProductUrl:a.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:a.streaming,color:this.config?.color,darkMode:i,apiBaseUrl:Yr(),cdnBaseUrl:Ba()})):u`<p>${a.content}</p>`}
|
|
2467
2622
|
</div>
|
|
2468
2623
|
</mw-chat-message>
|
|
2469
2624
|
</div>`:null}
|
|
@@ -2471,7 +2626,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2471
2626
|
`)}
|
|
2472
2627
|
|
|
2473
2628
|
<!-- show typing indicator if the non-user side is typing -->
|
|
2474
|
-
${["assistant","support"].includes(this.typingIndicator?.role??"")&&this.typingIndicator?.role?
|
|
2629
|
+
${["assistant","support"].includes(this.typingIndicator?.role??"")&&this.typingIndicator?.role?u`
|
|
2475
2630
|
<mw-chat-message
|
|
2476
2631
|
class="mx-2 mb-3 block"
|
|
2477
2632
|
color="${this.config?.color}"
|
|
@@ -2494,20 +2649,20 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2494
2649
|
@mw:example-click="${this.#h}"></mw-chat-background>
|
|
2495
2650
|
</div>
|
|
2496
2651
|
|
|
2497
|
-
${this.messages.length===0&&this.config.disclaimerFloating?
|
|
2652
|
+
${this.messages.length===0&&this.config.disclaimerFloating?u`
|
|
2498
2653
|
<div class="mx-4 mb-2 rounded-xl bg-[#eeedf1] px-3 py-2 dark:bg-[#1E1F23]">
|
|
2499
2654
|
<mw-disclaimer .text="${this.config.disclaimerFloating}" .color="${this.config.color}" ?dark-mode="${i}"></mw-disclaimer>
|
|
2500
2655
|
</div>
|
|
2501
2656
|
`:null}
|
|
2502
2657
|
|
|
2503
2658
|
<div class="m-1.5 flex-shrink-0 flex-grow-0 space-y-2 rounded-3xl bg-[#eeedf1] p-1.5 dark:bg-[#1E1F23]">
|
|
2504
|
-
${this.config.disclaimer&&!this.config.removePoweredBy?
|
|
2659
|
+
${this.config.disclaimer&&!this.config.removePoweredBy?u`
|
|
2505
2660
|
<!-- spacing between input box and disclaimer or bottom -->
|
|
2506
2661
|
<div class="mb-1.5">
|
|
2507
2662
|
<mw-disclaimer .text="${this.config.disclaimer}" .color="${this.config.color}" ?dark-mode="${i}"></mw-disclaimer>
|
|
2508
2663
|
</div>
|
|
2509
2664
|
`:null}
|
|
2510
|
-
${this.#p.length===0?
|
|
2665
|
+
${this.#p.length===0?u`
|
|
2511
2666
|
<mw-chat-input
|
|
2512
2667
|
@mw:change="${this.#b}"
|
|
2513
2668
|
@mw:submit="${this.#v}"
|
|
@@ -2523,7 +2678,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2523
2678
|
color="${this.config?.color??""}"
|
|
2524
2679
|
.images="${this.config?.enableImageUpload?this.#n.selectedImages:[]}">
|
|
2525
2680
|
</mw-chat-input>
|
|
2526
|
-
`:
|
|
2681
|
+
`:u`
|
|
2527
2682
|
<mw-request-input
|
|
2528
2683
|
.title="${n?.title}"
|
|
2529
2684
|
.type="${n?.type}"
|
|
@@ -2532,12 +2687,12 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2532
2687
|
@mw-request-input:submit="${this.#u}">
|
|
2533
2688
|
</mw-request-input>
|
|
2534
2689
|
`}
|
|
2535
|
-
${this.config.removePoweredBy?this.config.disclaimer?
|
|
2690
|
+
${this.config.removePoweredBy?this.config.disclaimer?u`
|
|
2536
2691
|
<!-- spacing between input box and disclaimer or bottom -->
|
|
2537
2692
|
<div class="mt-1.5">
|
|
2538
2693
|
<mw-disclaimer .text="${this.config.disclaimer}" .color="${this.config.color}" ?dark-mode="${i}"></mw-disclaimer>
|
|
2539
2694
|
</div>
|
|
2540
|
-
`:null:
|
|
2695
|
+
`:null:u`
|
|
2541
2696
|
<!-- spacing between input box and powered-by or bottom -->
|
|
2542
2697
|
<div class="h-4">
|
|
2543
2698
|
<mw-powered-by ?dark-mode="${i}"></mw-powered-by>
|
|
@@ -2546,7 +2701,40 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2546
2701
|
</div>
|
|
2547
2702
|
</div>
|
|
2548
2703
|
</div>
|
|
2549
|
-
`}#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)}}#h(e){if(this.isStreaming)return;e.preventDefault();let r=e.detail.example;this.#m(r)}#m=
|
|
2704
|
+
`}#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)}}#h(e){if(this.isStreaming)return;e.preventDefault();let r=e.detail.example;this.#m(r)}#m=We({interval:200},async e=>{T(this.#e.value,"widget context is required"),await this.#e.value.enqueueUserInput(e,{xUserData:this.#e.value?.xUserData,xCustomInstructions:this.#e.value?.xCustomInstructions})&&(this.#f?.setValue(""),this.callbacks.onUserSentInput?.({widgetId:this.widgetId,text:e,example:!0,conversationId:this.conversationId}))});#v(e){if(T(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.#f?.setValue(""),this.#n.clearImages(),this.#r.typingStopped(),this.callbacks.onUserSentInput?.({widgetId:this.widgetId,text:r,example:!1,conversationId:this.conversationId}),window.requestAnimationFrame(()=>{this.#f?.focus()}))}).catch(console.warn)}#b(e){this.#r.onInput(e.detail.full)}#x(){T(this.#e.value,"widget context is required"),this.#e.value.sendUserCancel(),this.callbacks.onUserCanceledStreaming?.({widgetId:this.widgetId})}#w(e){this.#n.onImageDelete(e.detail)}#y(){T(this.#e.value,"widget context is required"),this.#e.value.sendNewChat(),this.reset()}#g(){this.dispatchEvent(new t.CloseClickEvent)}#u(e){T(this.#e.value,"widget context is required");let r=this.#p,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.#y(),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.#k(),this.requestUpdate()}async#k(){if(T(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#p(){T(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)||!Nu.includes(i.data.type)?null:{title:i.data.title,type:i.data.type,key:i.data.key}).filter(i=>i!==null)}get#C(){if(this.#p.length===0)return!1;let r=this.#p.filter(n=>n.type==="star-rating"||n.type==="binary-vote").length;return this.#t.length<r}get#S(){return this.renderRoot.querySelector("#scrollable-content")}get#f(){return this.renderRoot.querySelector("mw-chat-input")}reloadConfig(){this.#e.value?.reloadConfig(),this.requestUpdate()}sendMessage=We({interval:200},async e=>{if(!e?.trim())return console.warn("sendMessage: Message must be a non-empty string"),!1;T(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.#f?.setValue(""),n??!1});setInputValue(e){if(!e||typeof e!="string"){console.warn("setInputValue requires a valid string value");return}let r=this.#f;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.#f?.focus()})}reset(){this.#n.clearImages(),this._currentRequestInputIndex=0,this.#t=[],this.#e.value?.reset()}};zt.CloseClickEvent=class extends CustomEvent{static type="mw:close-click";constructor(e={}){super(zt.CloseClickEvent.type,{...e})}};customElements.get("mw-chat")||customElements.define("mw-chat",zt);var Be=class t extends k(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`
|
|
2705
|
+
<mw-spinning-border
|
|
2706
|
+
.size=${"420px"}
|
|
2707
|
+
.color=${this.color||"#8B5CF6"}
|
|
2708
|
+
.radius=${"24px"}
|
|
2709
|
+
?dark-mode="${this.dark}"
|
|
2710
|
+
class="${this.dark?"dark":""} rounded-[24px] font-sans text-sm shadow-lg transition-transform duration-500 hover:scale-105">
|
|
2711
|
+
<form
|
|
2712
|
+
@submit="${this.#r}"
|
|
2713
|
+
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">
|
|
2714
|
+
<lucide-icon class="h-5 w-5 flex-none text-[${this.color||"#8B5CF6"}]" name="${"sparkles"}"></lucide-icon>
|
|
2715
|
+
|
|
2716
|
+
<input
|
|
2717
|
+
?disabled="${this.disabled}"
|
|
2718
|
+
@keydown="${this.#s}"
|
|
2719
|
+
@input="${this.#t}"
|
|
2720
|
+
.value="${this._inputValue}"
|
|
2721
|
+
placeholder="${this.placeholder}"
|
|
2722
|
+
autocomplete="off"
|
|
2723
|
+
name="input"
|
|
2724
|
+
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" />
|
|
2725
|
+
|
|
2726
|
+
<!-- submit button -->
|
|
2727
|
+
<button
|
|
2728
|
+
?disabled="${this.disabled||!this._inputValue.trim()}"
|
|
2729
|
+
class="${this.dark?"text-gray-800":"text-white"} relative ml-2 h-8 w-8 flex-none rounded-full bg-[${this.color||"#8B5CF6"}] p-0 hover:opacity-70 disabled:bg-gray-400 disabled:text-gray-300 disabled:hover:opacity-100"
|
|
2730
|
+
type="submit">
|
|
2731
|
+
<div class="absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
|
|
2732
|
+
<lucide-icon class="${this.dark?"text-gray-800":"text-white"} block h-5 w-5" name="${"arrow-up"}"></lucide-icon>
|
|
2733
|
+
</div>
|
|
2734
|
+
</button>
|
|
2735
|
+
</form>
|
|
2736
|
+
</mw-spinning-border>
|
|
2737
|
+
`}#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){Vu(e)&&(e.preventDefault(),this.disabled||this.#i?.click())}};Be.SubmitInputEvent=class extends CustomEvent{static type="mw-floating-ask-ai:submit";constructor(e,r={}){super(Be.SubmitInputEvent.type,{detail:e,bubbles:!0,composed:!0,...r})}};Be.ChangeEvent=class extends CustomEvent{static type="mw-floating-ask-ai:change";constructor(e,r={}){super(Be.ChangeEvent.type,{detail:e,bubbles:!0,composed:!0,...r})}};function Vu(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",Be);var qe=class t extends k(v){static properties={text:{type:String},color:{type:String},darkMode:{type:Boolean,attribute:"dark-mode"}};static styles=O`
|
|
2550
2738
|
.popup-desktop:hover button {
|
|
2551
2739
|
transition-delay: 0s !important;
|
|
2552
2740
|
}
|
|
@@ -2554,7 +2742,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2554
2742
|
.popup-desktop button {
|
|
2555
2743
|
transition-delay: 1s;
|
|
2556
2744
|
}
|
|
2557
|
-
`;constructor(){super(),this.text="Hello there. How can we help?",this.color="#601feb",this.darkMode=!1}render=()=>
|
|
2745
|
+
`;constructor(){super(),this.text="Hello there. How can we help?",this.color="#601feb",this.darkMode=!1}render=()=>u`
|
|
2558
2746
|
<div class="${this.darkMode?"dark":""} popup-desktop group relative w-[300px] cursor-pointer rounded-[17px] shadow-2xl select-none">
|
|
2559
2747
|
<mw-spinning-border .color="${this.color}" .border="${"transparent"}" .radius="${"17px"}" ?dark-mode="${this.darkMode}">
|
|
2560
2748
|
<!-- wrapper -->
|
|
@@ -2574,7 +2762,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2574
2762
|
×
|
|
2575
2763
|
</button>
|
|
2576
2764
|
</div>
|
|
2577
|
-
`;#e(){this.dispatchEvent(new t.CloseEvent)}#t(){this.dispatchEvent(new t.ClickEvent)}};
|
|
2765
|
+
`;#e(){this.dispatchEvent(new t.CloseEvent)}#t(){this.dispatchEvent(new t.ClickEvent)}};qe.CloseEvent=class extends CustomEvent{static type="mw:close";constructor(e={}){super(qe.CloseEvent.type,{...e})}};qe.ClickEvent=class extends CustomEvent{static type="mw:click";constructor(e={}){super(qe.ClickEvent.type,{...e})}};customElements.get("mw-popup-desktop")||customElements.define("mw-popup-desktop",qe);var Fe=class t extends k(v){static properties={text:{type:String},button:{type:String},color:{type:String},darkMode:{type:Boolean,attribute:"dark-mode"}};constructor(){super(),this.text="Hello there. How can we help?",this.button="Chat now",this.color="#601feb",this.darkMode=!1}render(){return u`
|
|
2578
2766
|
<!-- wrapper -->
|
|
2579
2767
|
<div
|
|
2580
2768
|
class="${this.darkMode?"dark bg-[#2B2D31] text-gray-200":"bg-white text-gray-800"} group relative z-[2147483647] rounded-t-2xl text-left font-sans text-base text-[16px] leading-normal shadow-2xl transition-all select-none">
|
|
@@ -2590,7 +2778,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2590
2778
|
<div class="p-4 text-gray-800 dark:text-gray-200" @click="${this.#t}">
|
|
2591
2779
|
<h1 class="font-display mr-8 py-2.5 text-left text-lg font-bold">${this.text}</h1>
|
|
2592
2780
|
<div class="h-4"></div>
|
|
2593
|
-
${this.button&&this.color?
|
|
2781
|
+
${this.button&&this.color?u`
|
|
2594
2782
|
<!-- only visible if button text and color are given -->
|
|
2595
2783
|
<button class="w-full rounded-2xl bg-[${this.color}] px-5 py-2.5 text-center text-sm font-medium text-white dark:text-gray-800" type="button">${this.button}</button>
|
|
2596
2784
|
`:null}
|
|
@@ -2599,7 +2787,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2599
2787
|
<!-- can append any other content -->
|
|
2600
2788
|
<slot name="footer"></slot>
|
|
2601
2789
|
</div>
|
|
2602
|
-
`}#e(){this.dispatchEvent(new t.CloseEvent)}#t(){this.dispatchEvent(new t.ClickEvent)}};
|
|
2790
|
+
`}#e(){this.dispatchEvent(new t.CloseEvent)}#t(){this.dispatchEvent(new t.ClickEvent)}};Fe.CloseEvent=class extends CustomEvent{static type="mw:close";constructor(e={}){super(Fe.CloseEvent.type,{...e})}};Fe.ClickEvent=class extends CustomEvent{static type="mw:click";constructor(e={}){super(Fe.ClickEvent.type,{...e})}};customElements.get("mw-popup-mobile")||customElements.define("mw-popup-mobile",Fe);var Qr=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 Hu=1440*60*1e3,en=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<Hu||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 Wt=class t extends k(v){static properties={positionClasses:{type:String,attribute:"position"},delayMs:{type:Number,attribute:"delay"},soundUrl:{type:String,attribute:"sound"},content:{type:Object},darkMode:{type:Boolean,attribute:"dark-mode"}};#e=new en(this,{getDelayMs:()=>this.delayMs,playPopupSound:()=>{this.soundUrl&&new Audio(this.soundUrl).play().then(()=>{}).catch(e=>{console.error("Error playing audio:",e,{})})},setPersistedState:e=>{R.popupState=e},getPersistedState:()=>R.popupState});#t=new Qr(this,this.#e);constructor(){super(),this.positionClasses="",this.delayMs=0,this.soundUrl="",this.darkMode=!1,this.content={desktop:{text:"",color:""},mobile:{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`
|
|
2603
2791
|
<!-- mobile shadow backdrop -->
|
|
2604
2792
|
<div @click="${this.#r}" class="${e} fixed inset-0 z-[2147483647] bg-black/50 transition-[opacity,visibility] sm:hidden"></div>
|
|
2605
2793
|
|
|
@@ -2612,7 +2800,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2612
2800
|
?dark-mode="${this.darkMode}"
|
|
2613
2801
|
@mw:click="${this.#n}"
|
|
2614
2802
|
@mw:close="${this.#r}">
|
|
2615
|
-
${r.mobile.poweredBy?
|
|
2803
|
+
${r.mobile.poweredBy?u`<mw-powered-by class="block p-4" slot="footer" ?dark-mode="${this.darkMode}"></mw-powered-by>`:null}
|
|
2616
2804
|
</mw-popup-mobile>
|
|
2617
2805
|
</div>
|
|
2618
2806
|
|
|
@@ -2620,7 +2808,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2620
2808
|
<div class="${e} ${this.positionClasses} fixed z-[2147483647] transition-[opacity,translate,visibility] max-sm:hidden">
|
|
2621
2809
|
<mw-popup-desktop color="${r.desktop.color}" text="${r.desktop.text}" ?dark-mode="${this.darkMode}" @mw:click="${this.#n}" @mw:close="${this.#r}"></mw-popup-desktop>
|
|
2622
2810
|
</div>
|
|
2623
|
-
`}#r(){this.#e.onCloseClick()}#n(){this.dispatchEvent(new t.ClickEvent),this.#e.onContentClick()}hide(){this.#e.hide()}};
|
|
2811
|
+
`}#r(){this.#e.onCloseClick()}#n(){this.dispatchEvent(new t.ClickEvent),this.#e.onContentClick()}hide(){this.#e.hide()}};Wt.ClickEvent=class extends CustomEvent{static type="mw:click";constructor(e={}){super(Wt.ClickEvent.type,{...e})}};customElements.get("mw-popup")||customElements.define("mw-popup",Wt);var zi=class extends k(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`
|
|
2624
2812
|
<span class="relative inline-flex">
|
|
2625
2813
|
<slot></slot>
|
|
2626
2814
|
<span class="${this.#e} pointer-events-none absolute z-10 flex h-3 w-3">
|
|
@@ -2628,7 +2816,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2628
2816
|
<span class="bg-${this.color} relative inline-flex h-3 w-3 rounded-full"></span>
|
|
2629
2817
|
</span>
|
|
2630
2818
|
</span>
|
|
2631
|
-
`;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",
|
|
2819
|
+
`;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",zi);var Wi=class extends k(v){static properties={positionClasses:{type:String,attribute:"position"},text:{type:String}};constructor(){super(),this.positionClasses="",this.text="Try it out"}render=()=>u`
|
|
2632
2820
|
<div class="${this.positionClasses} fixed right-6 bottom-24 z-10 flex animate-bounce flex-col items-center justify-center font-sans text-base">
|
|
2633
2821
|
<p class="mb-2 -translate-x-4 -rotate-12 transform text-lg leading-normal font-bold text-gray-800">${this.text}</p>
|
|
2634
2822
|
|
|
@@ -2641,11 +2829,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2641
2829
|
stroke-linecap="round"></path>
|
|
2642
2830
|
</svg>
|
|
2643
2831
|
</div>
|
|
2644
|
-
`};customElements.get("mw-try-it-out")||customElements.define("mw-try-it-out",
|
|
2832
|
+
`};customElements.get("mw-try-it-out")||customElements.define("mw-try-it-out",Wi);function Se(){return window.molinSettings&&typeof window.molinSettings=="object"?window.molinSettings:null}var tn=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 Gi=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=qa();e&&e.widgetId===this.#e.widgetId?this.#n=e.config:this.#r=new tn(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})}},ft=(t,e)=>new Gi(t,{onError:e?.onError||console.error,...e});var Ne=class t extends k(v){static styles=O`
|
|
2645
2833
|
:host {
|
|
2646
2834
|
all: initial; /* reset all properties that can pierce the shadow DOM */
|
|
2647
2835
|
}
|
|
2648
|
-
`;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),
|
|
2836
|
+
`;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),L("ShopAssistant: error",{...e},{immediate:!0})},onNewMessageStartedStreaming:e=>{L("ShopAssistant: user received bot message (streaming started)",e)},onMessageEndedStreaming:e=>{L("ShopAssistant: user received bot message (streaming ended)",e)},onUserCanceledStreaming:e=>{L("ShopAssistant: user canceled streaming",e)},onUserClickedLink:e=>{L("ShopAssistant: user clicked link",e)},onUserSentInput:e=>{L("ShopAssistant: user sent input",e)}};constructor(){super(),this.cdn="https://widget.molin.ai",this.widgetId="",this.showClose=!1,this.xUserData=Se()?.userData,this.xCustomInstructions=Se()?.customInstructions,this.#e=ft(this)}render(){return this.config?u`
|
|
2649
2837
|
<mw-context-widget
|
|
2650
2838
|
.widgetId="${this.widgetId}"
|
|
2651
2839
|
.config="${this.config}"
|
|
@@ -2658,11 +2846,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2658
2846
|
<slot name="banner" slot="banner"></slot>
|
|
2659
2847
|
</mw-chat>
|
|
2660
2848
|
</mw-context-widget>
|
|
2661
|
-
`: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",
|
|
2849
|
+
`: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",Ne);Ne.CloseClickEvent=class extends CustomEvent{static type="mw:close-click";constructor(e={}){super(Ne.CloseClickEvent.type,{...e})}};var Zi=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 ge&&e.showLauncher()}hideLauncher(){for(let e of document.querySelectorAll("molin-shop-ai"))e instanceof ge&&e.hideLauncher()}openChat(e){let{message:r,autoSend:n}=e||{};for(let i of document.querySelectorAll("molin-shop-ai"))i instanceof ge&&i.openChat({message:r,autoSend:n})}closeChat(){for(let e of document.querySelectorAll("molin-shop-ai"))e instanceof ge&&e.closeChat()}reset(){R.resetAll();for(let e of document.querySelectorAll("molin-shop-ai"))e instanceof ge&&e.reset();for(let e of document.querySelectorAll("molin-shop-ai-chat"))e instanceof Ne&&e.reset()}};function Fa({hidden:t}){let e=new Zi({hidden:t});return window.Molin=e,e}function rn(){let t=window.Molin;if(!t)throw new Error("window.Molin global not initialized");return t}window.__INIT_MOLIN_SHOP_AI=function(e){zu(e);let r=Se(),n=typeof r?.hidden=="boolean"?r.hidden:window.self!==window.top;if(Fa({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 zu(t){window.__INIT_MOLIN_SHOP_AI_OPTIONS=t}function qa(){return window.__INIT_MOLIN_SHOP_AI_OPTIONS}var Ji=class extends k(v){static styles=O`
|
|
2662
2850
|
:host {
|
|
2663
2851
|
all: initial; /* reset all properties that can pierce the shadow DOM */
|
|
2664
2852
|
}
|
|
2665
|
-
`;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=
|
|
2853
|
+
`;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=ft(this);get config(){return this.#e.data}render(){return this.config?u`
|
|
2666
2854
|
<!-- embed our bubble component forwarding props -->
|
|
2667
2855
|
<!-- these props are never internally updated by mw-bubble so we pass them down only one way -->
|
|
2668
2856
|
<mw-bubble
|
|
@@ -2670,13 +2858,13 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2670
2858
|
.color="${this.config?.bubble?.color||this.config?.color}"
|
|
2671
2859
|
.bubbleStyle="${this.config?.bubble?.style}"
|
|
2672
2860
|
.src="${this.config?.bubble?.bubbleUrl}"
|
|
2673
|
-
width="${
|
|
2674
|
-
height="${
|
|
2675
|
-
`:null}};customElements.get("molin-shop-ai-launcher")||customElements.define("molin-shop-ai-launcher",
|
|
2861
|
+
width="${H(this.config?.bubble?.size?.width)}"
|
|
2862
|
+
height="${H(this.config?.bubble?.size?.height)}"></mw-bubble>
|
|
2863
|
+
`:null}};customElements.get("molin-shop-ai-launcher")||customElements.define("molin-shop-ai-launcher",Ji);var Bw="navigator"in globalThis&&/Mobi|Android|iPhone/i.test(navigator.userAgent),qw="navigator"in globalThis&&"share"in navigator,Wu=Object.freeze({sm:640,md:768,lg:1024,xl:1280,"2xl":1536});function Gu(t){if(typeof window>"u")return!1;let e=Wu[t];return typeof e!="number"?(console.warn(`Invalid breakpoint: ${t}`),!1):window.matchMedia(`(min-width: ${e}px)`).matches}function Ki(){return Gu("sm")}var nn=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 Na({minMs:t,maxMs:e}){return Math.random()*(e-t)+t}function sn(t,e=""){return Object.entries(t).filter(([r,n])=>n).map(([r,n])=>`${e}${r}-[${n}]`).join(" ")}function Va(t,e={}){return[sn(t),sn(e,"max-sm:")].join(" ")}function Ha(t){return sn(t)}function za(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 Wa(t){let e=sn(t),n=`sm:bottom-[${t.bottom?`calc(${t.bottom}+72px)`:"72px"}]`;return[e,n].filter(Boolean).join(" ")}var Xi=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 Ga(t,e,r){return new Xi(t,e,r)}var ge=class extends k(v){static styles=O`
|
|
2676
2864
|
:host {
|
|
2677
2865
|
all: initial; /* reset all properties that can pierce the shadow DOM */
|
|
2678
2866
|
}
|
|
2679
|
-
`;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=
|
|
2867
|
+
`;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=Se()?.userData,this.xCustomInstructions=Se()?.customInstructions}#e=ft(this);#t=Ga(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 nn(this,/.*/i,{navigated:()=>{if(this.requestUpdate(),!this.widgetId){console.warn("No widgetId set, cannot track page view");return}let e=this.#l?.conversationId,r=Qe.restore(this.widgetId)?.conversationId,n=e||r;n&&L("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.#d})}});#i=!1;#s={onError:e=>{alert(e.error),console.error(e.widgetId,e.error),L("ShopAssistant: error",{...e},{immediate:!0})},onNewMessageStartedStreaming:e=>{L("ShopAssistant: user received bot message (streaming started)",e)},onMessageEndedStreaming:e=>{L("ShopAssistant: user received bot message (streaming ended)",e)},onUserCanceledStreaming:e=>{L("ShopAssistant: user canceled streaming",e)},onUserClickedLink:e=>{L("ShopAssistant: user clicked link",e)},onUserSentInput:e=>{L("ShopAssistant: user sent input",e)},onWaitGameQuestionAnswered:e=>{L("ShopAssistant: wait game question answered",e)},onWaitGameCompleted:e=>{L("ShopAssistant: wait game completed",e)},onWaitGameGuessValidated:e=>{L("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#d(){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=Ha(this.config.bubble.position),n=za(this.config.bubble.position),i=Wa(this.config.bubble.position);return this.config.hidden||rn().hidden||this.#d?null:u`
|
|
2680
2868
|
<mw-context-widget
|
|
2681
2869
|
.widgetId="${this.widgetId}"
|
|
2682
2870
|
.config="${this.config}"
|
|
@@ -2691,14 +2879,14 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2691
2879
|
.color="${this.config?.bubble?.color||this.config?.color}"
|
|
2692
2880
|
.bubbleStyle="${this.config?.bubble?.style}"
|
|
2693
2881
|
.src="${this.config?.bubble?.bubbleUrl}"
|
|
2694
|
-
width="${
|
|
2695
|
-
height="${
|
|
2882
|
+
width="${H(this.config?.bubble?.size?.width)}"
|
|
2883
|
+
height="${H(this.config?.bubble?.size?.height)}"></mw-bubble>
|
|
2696
2884
|
|
|
2697
2885
|
<!-- only load the component if enabled on any platform -->
|
|
2698
|
-
${this.isPopupEnabled?
|
|
2886
|
+
${this.isPopupEnabled?u`
|
|
2699
2887
|
<mw-popup
|
|
2700
2888
|
position="${i}"
|
|
2701
|
-
delay="${this.config.popup?.delayMs||
|
|
2889
|
+
delay="${this.config.popup?.delayMs||Na({minMs:2e3,maxMs:5e3})}"
|
|
2702
2890
|
sound="${this.config.popup?.muteSounds?"":this.config.popup?.soundUrl||""}"
|
|
2703
2891
|
?dark-mode="${this.config?.darkMode}"
|
|
2704
2892
|
.content="${{desktop:{text:this.config.popup?.text||"Hello there. How can we help?",color:this.config?.bubble?.color||this.config.color},mobile:{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}}}"
|
|
@@ -2706,7 +2894,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2706
2894
|
`:null}
|
|
2707
2895
|
|
|
2708
2896
|
<!-- show "Try it out" if enabled (even if the chat window is showing) -->
|
|
2709
|
-
${this.config?.tryItOut?.mobileEnabled||this.config?.tryItOut?.desktopEnabled?
|
|
2897
|
+
${this.config?.tryItOut?.mobileEnabled||this.config?.tryItOut?.desktopEnabled?u`<mw-try-it-out
|
|
2710
2898
|
class="${this.config?.tryItOut?.mobileEnabled?"visible":"invisible"} ${this.config?.tryItOut?.desktopEnabled?"sm:visible":"sm:invisible"}"
|
|
2711
2899
|
position="${r}"
|
|
2712
2900
|
text="${this.config.tryItOut?.text||""}"></mw-try-it-out>`:null}
|
|
@@ -2720,17 +2908,17 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2720
2908
|
</div>
|
|
2721
2909
|
|
|
2722
2910
|
<!-- Floating input only visible when enabled, in center, on desktop only -->
|
|
2723
|
-
${this.config?.floatingAskAI?.enabled&&this.#a?
|
|
2911
|
+
${this.config?.floatingAskAI?.enabled&&this.#a?u`
|
|
2724
2912
|
<mw-floating-ask-ai
|
|
2725
2913
|
?dark="${this.config?.floatingAskAI?.darkMode}"
|
|
2726
2914
|
.color="${this.config.color||this.config?.bubble?.color}"
|
|
2727
|
-
placeholder="${
|
|
2915
|
+
placeholder="${H(this.config?.floatingAskAI?.placeholder)}"
|
|
2728
2916
|
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"
|
|
2729
2917
|
style="bottom: ${this.config.bubble.position.bottom||"1.5rem"}"
|
|
2730
2918
|
@mw-floating-ask-ai:submit="${this.#x}"></mw-floating-ask-ai>
|
|
2731
2919
|
`:null}
|
|
2732
2920
|
</mw-context-widget>
|
|
2733
|
-
`}get isPopupEnabled(){return
|
|
2921
|
+
`}get isPopupEnabled(){return Ki()?!!this.config?.popup?.desktopEnabled:!!this.config?.popup?.mobileEnabled}updated(){this._dialogShown&&this.#c?.hide(),this._dialogShown&&setTimeout(()=>{this.#l?.focusInput()},0)}firstUpdated(){Ki()&&R.widgetState?.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#h(){return this.renderRoot.querySelector("mw-context-widget")}#m(){this._dialogShown=!0,this.#i=!0,this.requestUpdate(),this.#u(!0),L("ShopAssistant: user toggled window",{widgetId:this.widgetId,source:"popup-click",state:this._dialogShown?"open":"close"})}#v(){this._dialogShown=!this._dialogShown,this.#i=!0,this.requestUpdate(),this.#u(this._dialogShown),this.#c?.hide(),L("ShopAssistant: user toggled window",{widgetId:this.widgetId,source:"bubble-toggle",state:this._dialogShown?"open":"close"})}#b(){this._dialogShown=!1,this._floatingInputVisible=!0,this.requestUpdate(),this.#u(!1),L("ShopAssistant: user toggled window",{widgetId:this.widgetId,source:"top-right-close-button",state:this._dialogShown?"open":"close"})}#x=e=>{let r=e.detail.text,n=this.#h;n&&typeof n.connect=="function"&&n.connect(),this._dialogShown=!0,this.#i=!0,this.requestUpdate(),this.#u(!0),setTimeout(()=>{this.#g(r),this.#y(r).catch(console.warn)},100),L("ShopAssistant: user sent input",{widgetId:this.widgetId,text:r,example:!1,conversationId:this.#l?.conversationId||"",source:"ask-ai"})};#w=We({interval:200},({message:e,autoSend:r=!1}={})=>{if(!e)return;this.#g(e);let n=this.#l?.isLiveMode;n||this.reset(),r&&!n&&this.#y(e).catch(console.warn)});openChat(e){let{message:r,autoSend:n}=e||{};if(this._dialogShown){this.#w({message:r,autoSend:n});return}let i=this.#h;i&&typeof i.connect=="function"&&i.connect(),this._dialogShown=!0,this.#i=!0,this.requestUpdate(),this.#u(!0),this.#c?.hide(),setTimeout(()=>{this.#w({message:r,autoSend:n})},100),L("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(),L("ShopAssistant: user toggled window",{widgetId:this.widgetId,source:"programmatic-method",state:this._dialogShown?"open":"close"}))}showLauncher(){let e=rn();e.hidden=!1,this.requestUpdate(),L("ShopAssistant: called show launcher",{widgetId:this.widgetId,source:"programmatic-method"})}hideLauncher(){let e=rn();e.hidden=!0,this.requestUpdate(),L("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#y(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){R.widgetState={isOpen:e}}};customElements.get("molin-shop-ai")||customElements.define("molin-shop-ai",ge);export{ge as MolinShopAI};
|
|
2734
2922
|
/*! Bundled license information:
|
|
2735
2923
|
|
|
2736
2924
|
@lit/reactive-element/css-tag.js:
|