@molin.ai/shop-ai 0.9.43 → 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 +513 -341
- 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,19 +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?
|
|
2070
|
-
|
|
2071
|
-
|
|
2072
|
-
</a>
|
|
2073
|
-
`:null}
|
|
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">
|
|
2218
|
+
${i}
|
|
2219
|
+
</a>`:null}
|
|
2074
2220
|
|
|
2075
2221
|
<h3
|
|
2076
2222
|
@click="${this.#t}"
|
|
2077
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">
|
|
2078
|
-
${e||
|
|
2224
|
+
${e||u`<span class="inline-block h-6 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-700"></span>`}
|
|
2079
2225
|
</h3>
|
|
2080
|
-
${r?
|
|
2081
|
-
<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>
|
|
2082
2228
|
|
|
2083
2229
|
<!-- <div class="my-4 border-t border-gray-200"></div> -->
|
|
2084
2230
|
|
|
@@ -2090,21 +2236,21 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2090
2236
|
</button> -->
|
|
2091
2237
|
</div>
|
|
2092
2238
|
</div>
|
|
2093
|
-
`}#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`
|
|
2094
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">
|
|
2095
2241
|
<!-- Header with order ID -->
|
|
2096
2242
|
<div class="mb-2">
|
|
2097
|
-
${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>`}
|
|
2098
2244
|
</div>
|
|
2099
2245
|
|
|
2100
2246
|
<!-- Progress Timeline -->
|
|
2101
2247
|
<div>
|
|
2102
2248
|
<ol role="list" class="w-full overflow-hidden">
|
|
2103
|
-
${this.streaming&&!this.orderDetails?
|
|
2249
|
+
${this.streaming&&!this.orderDetails?u`
|
|
2104
2250
|
<!-- Loading for status timeline -->
|
|
2105
|
-
${[1,2,3].map((i,s)=>
|
|
2251
|
+
${[1,2,3].map((i,s)=>u`
|
|
2106
2252
|
<li class="w-full pb-8">
|
|
2107
|
-
${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>`:""}
|
|
2108
2254
|
<div class="group relative flex items-start">
|
|
2109
2255
|
<span class="flex h-6 items-center">
|
|
2110
2256
|
<span class="h-4 w-4 animate-pulse rounded-full bg-gray-200 dark:bg-gray-600"></span>
|
|
@@ -2115,51 +2261,43 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2115
2261
|
</div>
|
|
2116
2262
|
</li>
|
|
2117
2263
|
`)}
|
|
2118
|
-
`:
|
|
2119
|
-
|
|
2120
|
-
${l?"":d`<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>`}
|
|
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>`}
|
|
2121
2266
|
|
|
2122
|
-
|
|
2123
|
-
|
|
2124
|
-
<span class="flex h-
|
|
2125
|
-
<span class="
|
|
2126
|
-
<span class="h-1.5 w-1.5 rounded-full bg-transparent"></span>
|
|
2127
|
-
</span>
|
|
2267
|
+
<div class="group relative flex items-start">
|
|
2268
|
+
${ot(i.status,[["pending",()=>u` <span class="flex h-6 items-center">
|
|
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]">
|
|
2270
|
+
<span class="h-1.5 w-1.5 rounded-full bg-transparent"></span>
|
|
2128
2271
|
</span>
|
|
2129
|
-
|
|
2130
|
-
<span class="flex h-
|
|
2131
|
-
<span class="
|
|
2132
|
-
<span class="h-1.5 w-1.5 rounded-full bg-[${this.color}]"></span>
|
|
2133
|
-
</span>
|
|
2272
|
+
</span>`],["in_progress",()=>u`<span class="flex h-6 items-center">
|
|
2273
|
+
<span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-[${this.color}] bg-white dark:bg-[#1E1F23]">
|
|
2274
|
+
<span class="h-1.5 w-1.5 rounded-full bg-[${this.color}]"></span>
|
|
2134
2275
|
</span>
|
|
2135
|
-
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
</span>
|
|
2276
|
+
</span>`],["completed",()=>u`
|
|
2277
|
+
<span class="flex h-6 items-center">
|
|
2278
|
+
<span class="flex h-4 w-4 items-center justify-center rounded-full bg-[${this.color}]">
|
|
2279
|
+
<hi-outline class="mb-3 block h-3 w-3 text-white dark:text-gray-800" name="check"></hi-outline>
|
|
2140
2280
|
</span>
|
|
2141
|
-
`]],()=>d`
|
|
2142
|
-
<span class="flex h-6 items-center">
|
|
2143
|
-
<span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-[${this.color}] bg-white dark:bg-[#1E1F23]">
|
|
2144
|
-
<span class="h-1.5 w-1.5 rounded-full bg-[${this.color}]"></span>
|
|
2145
2281
|
</span>
|
|
2282
|
+
`]],()=>u`<span class="flex h-6 items-center">
|
|
2283
|
+
<span class="flex h-4 w-4 items-center justify-center rounded-full border-2 border-[${this.color}] bg-white dark:bg-[#1E1F23]">
|
|
2284
|
+
<span class="h-1.5 w-1.5 rounded-full bg-[${this.color}]"></span>
|
|
2146
2285
|
</span>
|
|
2147
|
-
|
|
2286
|
+
</span>`)}
|
|
2148
2287
|
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
</span>
|
|
2288
|
+
<span class="ml-3 flex min-w-0 flex-col">
|
|
2289
|
+
<span class="${`text-sm font-medium ${a?`text-[${this.color}]`:o?"text-gray-900 dark:text-gray-100":"text-gray-500 dark:text-gray-400"}`}">
|
|
2290
|
+
${i.label}
|
|
2153
2291
|
</span>
|
|
2154
|
-
</
|
|
2155
|
-
</
|
|
2156
|
-
|
|
2292
|
+
</span>
|
|
2293
|
+
</div>
|
|
2294
|
+
</li>`})}
|
|
2157
2295
|
</ol>
|
|
2158
2296
|
</div>
|
|
2159
2297
|
|
|
2160
2298
|
<!-- Products list with order items -->
|
|
2161
2299
|
<div class="mb-2 w-full">
|
|
2162
|
-
${r.length===0&&!this.orderDetails?.total?.amount&&this.streaming?
|
|
2300
|
+
${r.length===0&&!this.orderDetails?.total?.amount&&this.streaming?u`
|
|
2163
2301
|
<!-- Loading shimmer for products -->
|
|
2164
2302
|
<div class="w-full space-y-4">
|
|
2165
2303
|
<div class="flex items-center gap-2">
|
|
@@ -2174,11 +2312,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2174
2312
|
<div class="h-4 w-10 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2175
2313
|
</div>
|
|
2176
2314
|
</div>
|
|
2177
|
-
`:
|
|
2315
|
+
`:u`
|
|
2178
2316
|
<div class="divide-y divide-gray-100 dark:divide-gray-600">
|
|
2179
|
-
${this.streaming&&!r.length?
|
|
2317
|
+
${this.streaming&&!r.length?u`
|
|
2180
2318
|
<!-- Loading shimmer for individual products -->
|
|
2181
|
-
${[1,2].map(()=>
|
|
2319
|
+
${[1,2].map(()=>u`
|
|
2182
2320
|
<div class="flex items-center gap-2 py-1.5">
|
|
2183
2321
|
<div class="h-12 w-12 animate-pulse rounded-lg bg-gray-200 dark:bg-gray-600"></div>
|
|
2184
2322
|
<div class="min-w-0 flex-1">
|
|
@@ -2187,14 +2325,14 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2187
2325
|
<div class="h-4 w-24 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2188
2326
|
</div>
|
|
2189
2327
|
`)}
|
|
2190
|
-
`:r?.map(i=>{let s=i?.image_url;return
|
|
2328
|
+
`:r?.map(i=>{let s=i?.image_url;return u`
|
|
2191
2329
|
<div class="flex items-center gap-2 py-1.5">
|
|
2192
|
-
<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" />
|
|
2193
2331
|
|
|
2194
2332
|
<div class="min-w-0 flex-1">
|
|
2195
|
-
${!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>`}
|
|
2196
2334
|
</div>
|
|
2197
|
-
${!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>`}
|
|
2198
2336
|
</div>
|
|
2199
2337
|
`})}
|
|
2200
2338
|
</div>
|
|
@@ -2210,9 +2348,9 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2210
2348
|
|
|
2211
2349
|
<!-- Shipping and payment information -->
|
|
2212
2350
|
<div class="mb-2 flex w-full flex-col gap-2 overflow-hidden">
|
|
2213
|
-
${this.streaming&&!this.orderDetails?
|
|
2351
|
+
${this.streaming&&!this.orderDetails?u`
|
|
2214
2352
|
<!-- Loading shimmer template -->
|
|
2215
|
-
${[1,2].map(()=>
|
|
2353
|
+
${[1,2].map(()=>u`
|
|
2216
2354
|
<div>
|
|
2217
2355
|
<div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2218
2356
|
<div class="space-y-2 overflow-hidden">
|
|
@@ -2221,10 +2359,10 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2221
2359
|
</div>
|
|
2222
2360
|
</div>
|
|
2223
2361
|
`)}
|
|
2224
|
-
`:
|
|
2362
|
+
`:u`
|
|
2225
2363
|
<!-- Shipping Section -->
|
|
2226
2364
|
<div>
|
|
2227
|
-
${this.streaming&&!this.orderDetails?.shipping?
|
|
2365
|
+
${this.streaming&&!this.orderDetails?.shipping?u`
|
|
2228
2366
|
<div>
|
|
2229
2367
|
<div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2230
2368
|
<div class="space-y-2 overflow-hidden">
|
|
@@ -2232,18 +2370,18 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2232
2370
|
<div class="h-4 w-36 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2233
2371
|
</div>
|
|
2234
2372
|
</div>
|
|
2235
|
-
`:this.orderDetails?.shipping?.method||this.orderDetails?.customer?.name?
|
|
2373
|
+
`:this.orderDetails?.shipping?.method||this.orderDetails?.customer?.name?u`
|
|
2236
2374
|
<h3 class="mb-1 text-sm font-medium text-gray-900 dark:text-gray-100">${this.orderDetails?.shipping?.label}</h3>
|
|
2237
2375
|
<div class="space-y-1">
|
|
2238
|
-
${this.orderDetails.customer?.name?
|
|
2239
|
-
${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>`:""}
|
|
2240
2378
|
</div>
|
|
2241
2379
|
`:""}
|
|
2242
2380
|
</div>
|
|
2243
2381
|
|
|
2244
2382
|
<!-- Payment Section -->
|
|
2245
2383
|
<div>
|
|
2246
|
-
${this.streaming&&!this.orderDetails?.payment?
|
|
2384
|
+
${this.streaming&&!this.orderDetails?.payment?u`
|
|
2247
2385
|
<div>
|
|
2248
2386
|
<div class="mb-2 h-5 w-32 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2249
2387
|
<div class="space-y-2 overflow-hidden">
|
|
@@ -2251,15 +2389,15 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2251
2389
|
<div class="h-4 w-36 animate-pulse rounded bg-gray-200 dark:bg-gray-600"></div>
|
|
2252
2390
|
</div>
|
|
2253
2391
|
</div>
|
|
2254
|
-
`:this.orderDetails?.payment?
|
|
2392
|
+
`:this.orderDetails?.payment?u`
|
|
2255
2393
|
<h3 class="mb-1 text-sm font-medium text-gray-900 dark:text-gray-100">${this.orderDetails.payment.label}</h3>
|
|
2256
|
-
${this.orderDetails.payment?.method?.value?
|
|
2394
|
+
${this.orderDetails.payment?.method?.value?u`
|
|
2257
2395
|
<p class="text-xs text-gray-600 dark:text-gray-400">
|
|
2258
2396
|
<span class="font-medium">${this.orderDetails.payment.method.label}:</span>
|
|
2259
2397
|
${this.orderDetails.payment.method.value}
|
|
2260
2398
|
</p>
|
|
2261
2399
|
`:""}
|
|
2262
|
-
${this.orderDetails.payment.status?.value?
|
|
2400
|
+
${this.orderDetails.payment.status?.value?u`
|
|
2263
2401
|
<p class="text-xs text-gray-600 dark:text-gray-400">
|
|
2264
2402
|
<span class="font-medium">${this.orderDetails.payment.status.label}:</span>
|
|
2265
2403
|
<span>${this.orderDetails.payment.status.value}</span>
|
|
@@ -2272,11 +2410,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2272
2410
|
|
|
2273
2411
|
<!-- Action buttons section -->
|
|
2274
2412
|
<div class="flex w-full flex-col gap-2 overflow-hidden">
|
|
2275
|
-
${this.streaming&&!n[0]?.track_order?.label&&!
|
|
2413
|
+
${this.streaming&&!n[0]?.track_order?.label&&!Je(n[0]?.track_order?.tracking_url||"")?u`
|
|
2276
2414
|
<!-- Loading shimmer for buttons -->
|
|
2277
2415
|
<div class="h-10 w-full min-w-[250px] animate-pulse overflow-hidden rounded-xl bg-gray-200 dark:bg-gray-600"></div>
|
|
2278
|
-
`:
|
|
2279
|
-
${
|
|
2416
|
+
`:Z(n,(i,s)=>`action-${s}`,i=>{if(i?.track_order?.label)return u`
|
|
2417
|
+
${Je(i.track_order?.tracking_url||"")?u` <a
|
|
2280
2418
|
target="${this.linksNewTab?"_blank":"_self"}"
|
|
2281
2419
|
href="${i.track_order?.tracking_url}"
|
|
2282
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"
|
|
@@ -2285,7 +2423,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2285
2423
|
`})}
|
|
2286
2424
|
</div>
|
|
2287
2425
|
</div>
|
|
2288
|
-
`}};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`
|
|
2289
2427
|
:host {
|
|
2290
2428
|
--w-hover-arrow--hovered: 0;
|
|
2291
2429
|
}
|
|
@@ -2299,21 +2437,21 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2299
2437
|
transform: translateX(calc(var(--w-hover-arrow--hovered) * 3px));
|
|
2300
2438
|
transition: transform 0.3s ease-in-out;
|
|
2301
2439
|
}
|
|
2302
|
-
`;render(){return
|
|
2440
|
+
`;render(){return u`
|
|
2303
2441
|
<svg width="10" height="10" viewBox="0 0 10 10" aria-hidden="true">
|
|
2304
2442
|
<g fill-rule="evenodd">
|
|
2305
2443
|
<path part="line" stroke="currentColor" fill="currentColor" d="M0 5h7"></path>
|
|
2306
2444
|
<path part="tip" stroke="currentColor" fill="transparent" d="M1 1l4 4-4 4"></path>
|
|
2307
2445
|
</g>
|
|
2308
2446
|
</svg>
|
|
2309
|
-
`}};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`
|
|
2310
2448
|
<div
|
|
2311
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}]">
|
|
2312
2450
|
<div class="flex flex-col gap-2 p-4">
|
|
2313
|
-
${
|
|
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>`)}
|
|
2314
2452
|
</div>
|
|
2315
2453
|
</div>
|
|
2316
|
-
`}#e(){return
|
|
2454
|
+
`}#e(){return u`
|
|
2317
2455
|
<button
|
|
2318
2456
|
type="button"
|
|
2319
2457
|
@click="${()=>this.dispatchEvent(new t.SubmitEvent({type:"new-conversation-button"}))}">
|
|
@@ -2322,10 +2460,10 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2322
2460
|
<w-hover-arrow class="text-[${this.color}] group-hover:[--w-hover-arrow--hovered:1]"></w-hover-arrow>
|
|
2323
2461
|
</span>
|
|
2324
2462
|
</button>
|
|
2325
|
-
`}#t(){return
|
|
2326
|
-
${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}
|
|
2327
2465
|
<div class="flex justify-center gap-1">
|
|
2328
|
-
${[1,2,3,4,5].map(e=>
|
|
2466
|
+
${[1,2,3,4,5].map(e=>u`
|
|
2329
2467
|
<button
|
|
2330
2468
|
type="button"
|
|
2331
2469
|
@click="${()=>this.#i(e)}"
|
|
@@ -2337,8 +2475,8 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2337
2475
|
</button>
|
|
2338
2476
|
`)}
|
|
2339
2477
|
</div>
|
|
2340
|
-
`}#r(){return
|
|
2341
|
-
${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}
|
|
2342
2480
|
<div class="flex justify-center gap-4">
|
|
2343
2481
|
<button
|
|
2344
2482
|
type="button"
|
|
@@ -2365,7 +2503,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2365
2503
|
</svg>
|
|
2366
2504
|
</button>
|
|
2367
2505
|
</div>
|
|
2368
|
-
`}#n(e){let r=e<=this._hoverRating;return
|
|
2506
|
+
`}#n(e){let r=e<=this._hoverRating;return u`
|
|
2369
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">
|
|
2370
2508
|
<path
|
|
2371
2509
|
stroke-linecap="round"
|
|
@@ -2373,21 +2511,26 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2373
2511
|
stroke-width="2"
|
|
2374
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" />
|
|
2375
2513
|
</svg>
|
|
2376
|
-
`}#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}))}};
|
|
2377
|
-
${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}
|
|
2378
2516
|
<mw-product-card-horizontal
|
|
2379
|
-
product="${
|
|
2517
|
+
.product="${f.output}"
|
|
2380
2518
|
?streaming="${!g}"
|
|
2381
2519
|
?links-new-tab="${i}"
|
|
2382
2520
|
?dark-mode="${c}"
|
|
2383
2521
|
.searchParams="${s}"
|
|
2384
2522
|
.imagesByProductUrl="${n}"></mw-product-card-horizontal>
|
|
2385
|
-
|
|
2386
|
-
order-
|
|
2387
|
-
|
|
2388
|
-
|
|
2389
|
-
|
|
2390
|
-
|
|
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`
|
|
2391
2534
|
<mw-chat-wait-timer
|
|
2392
2535
|
heading="${f.title||""}"
|
|
2393
2536
|
message="${f.message||""}"
|
|
@@ -2401,15 +2544,15 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2401
2544
|
correct-button-text="${f.correctButtonText||"Correct"}"
|
|
2402
2545
|
wrong-button-text="${f.wrongButtonText||"Wrong"}"
|
|
2403
2546
|
color="${l}"
|
|
2404
|
-
apiBaseUrl="${
|
|
2547
|
+
apiBaseUrl="${d}"
|
|
2405
2548
|
cdnBaseUrl="${h}"
|
|
2406
|
-
sound="${
|
|
2407
|
-
`}case"request-input-v1":return
|
|
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`
|
|
2408
2551
|
div.dark::before {
|
|
2409
2552
|
opacity: 0.8;
|
|
2410
2553
|
background-color: rgba(20, 22, 26, var(--tw-bg-opacity));
|
|
2411
2554
|
}
|
|
2412
|
-
`;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`
|
|
2413
2556
|
<div
|
|
2414
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]">
|
|
2415
2558
|
<div
|
|
@@ -2430,7 +2573,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2430
2573
|
</div>
|
|
2431
2574
|
|
|
2432
2575
|
<!-- drag overlay -->
|
|
2433
|
-
${this.config.enableImageUpload&&this.#n.isDragging?
|
|
2576
|
+
${this.config.enableImageUpload&&this.#n.isDragging?u`
|
|
2434
2577
|
<div class="bg-opacity-90 absolute inset-0 z-50 flex items-center justify-center bg-white sm:rounded-[30px] dark:bg-[#2B2D31]">
|
|
2435
2578
|
<div class="p-8 text-center">
|
|
2436
2579
|
<lucide-icon name="image-plus" class="mx-auto mb-4 h-12 w-12 text-blue-500"></lucide-icon>
|
|
@@ -2442,8 +2585,8 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2442
2585
|
|
|
2443
2586
|
<!-- this structure of 2 divs is required for the browser native stick/scroll to bottom -->
|
|
2444
2587
|
<div id="scrollable-content" class="mt-6 flex h-full flex-shrink flex-grow flex-col-reverse overflow-auto">
|
|
2445
|
-
${this.config.enableImageUpload&&this.#n.error?
|
|
2446
|
-
${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`
|
|
2447
2590
|
<!-- this makes the chat stick to bottom when the banner is hidden -->
|
|
2448
2591
|
<div class="flex p-1"></div>
|
|
2449
2592
|
`}
|
|
@@ -2451,11 +2594,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2451
2594
|
<!-- the padding at the top makes empty room at the top when scrolling and content is hidden behind header -->
|
|
2452
2595
|
<!-- this is the 2nd (inner) div that will natively stick/scroll to bottom -->
|
|
2453
2596
|
<div class="${this.messages.length>0?"pt-20":""}">
|
|
2454
|
-
${
|
|
2455
|
-
<div class="my-2 text-center text-xs text-gray-500 dark:text-gray-400">${
|
|
2456
|
-
${
|
|
2457
|
-
${a.images?
|
|
2458
|
-
<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">
|
|
2459
2602
|
<mw-chat-image
|
|
2460
2603
|
src="${y}"
|
|
2461
2604
|
alt="User uploaded image"
|
|
@@ -2464,28 +2607,26 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2464
2607
|
width="300px"></mw-chat-image>
|
|
2465
2608
|
</div>
|
|
2466
2609
|
`):null}
|
|
2467
|
-
${(a.content||a.parts)&&!
|
|
2468
|
-
<
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2472
|
-
|
|
2473
|
-
|
|
2474
|
-
|
|
2475
|
-
|
|
2476
|
-
|
|
2477
|
-
|
|
2478
|
-
|
|
2479
|
-
|
|
2480
|
-
|
|
2481
|
-
|
|
2482
|
-
</div>
|
|
2483
|
-
`:null}
|
|
2610
|
+
${(a.content||a.parts)&&!S?u` <div data-id="${a.id}" class="${d?"mb-[1px]":"mb-3"} mx-2 flex-row">
|
|
2611
|
+
<mw-chat-message
|
|
2612
|
+
.color="${this.config?.color}"
|
|
2613
|
+
status="${b}"
|
|
2614
|
+
logo="${a.metadata?.avatar||this.config?.logoUrl}"
|
|
2615
|
+
side="${a.role}"
|
|
2616
|
+
position=${this.#i}
|
|
2617
|
+
?dark-mode="${i}"
|
|
2618
|
+
@click="${this.#l}">
|
|
2619
|
+
<div
|
|
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">
|
|
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>`}
|
|
2622
|
+
</div>
|
|
2623
|
+
</mw-chat-message>
|
|
2624
|
+
</div>`:null}
|
|
2484
2625
|
`})}
|
|
2485
2626
|
`)}
|
|
2486
2627
|
|
|
2487
2628
|
<!-- show typing indicator if the non-user side is typing -->
|
|
2488
|
-
${["assistant","support"].includes(this.typingIndicator?.role??"")&&this.typingIndicator?.role?
|
|
2629
|
+
${["assistant","support"].includes(this.typingIndicator?.role??"")&&this.typingIndicator?.role?u`
|
|
2489
2630
|
<mw-chat-message
|
|
2490
2631
|
class="mx-2 mb-3 block"
|
|
2491
2632
|
color="${this.config?.color}"
|
|
@@ -2508,20 +2649,20 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2508
2649
|
@mw:example-click="${this.#h}"></mw-chat-background>
|
|
2509
2650
|
</div>
|
|
2510
2651
|
|
|
2511
|
-
${this.messages.length===0&&this.config.disclaimerFloating?
|
|
2652
|
+
${this.messages.length===0&&this.config.disclaimerFloating?u`
|
|
2512
2653
|
<div class="mx-4 mb-2 rounded-xl bg-[#eeedf1] px-3 py-2 dark:bg-[#1E1F23]">
|
|
2513
2654
|
<mw-disclaimer .text="${this.config.disclaimerFloating}" .color="${this.config.color}" ?dark-mode="${i}"></mw-disclaimer>
|
|
2514
2655
|
</div>
|
|
2515
2656
|
`:null}
|
|
2516
2657
|
|
|
2517
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]">
|
|
2518
|
-
${this.config.disclaimer&&!this.config.removePoweredBy?
|
|
2659
|
+
${this.config.disclaimer&&!this.config.removePoweredBy?u`
|
|
2519
2660
|
<!-- spacing between input box and disclaimer or bottom -->
|
|
2520
2661
|
<div class="mb-1.5">
|
|
2521
2662
|
<mw-disclaimer .text="${this.config.disclaimer}" .color="${this.config.color}" ?dark-mode="${i}"></mw-disclaimer>
|
|
2522
2663
|
</div>
|
|
2523
2664
|
`:null}
|
|
2524
|
-
${this.#p.length===0?
|
|
2665
|
+
${this.#p.length===0?u`
|
|
2525
2666
|
<mw-chat-input
|
|
2526
2667
|
@mw:change="${this.#b}"
|
|
2527
2668
|
@mw:submit="${this.#v}"
|
|
@@ -2537,7 +2678,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2537
2678
|
color="${this.config?.color??""}"
|
|
2538
2679
|
.images="${this.config?.enableImageUpload?this.#n.selectedImages:[]}">
|
|
2539
2680
|
</mw-chat-input>
|
|
2540
|
-
`:
|
|
2681
|
+
`:u`
|
|
2541
2682
|
<mw-request-input
|
|
2542
2683
|
.title="${n?.title}"
|
|
2543
2684
|
.type="${n?.type}"
|
|
@@ -2546,12 +2687,12 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2546
2687
|
@mw-request-input:submit="${this.#u}">
|
|
2547
2688
|
</mw-request-input>
|
|
2548
2689
|
`}
|
|
2549
|
-
${this.config.removePoweredBy?this.config.disclaimer?
|
|
2690
|
+
${this.config.removePoweredBy?this.config.disclaimer?u`
|
|
2550
2691
|
<!-- spacing between input box and disclaimer or bottom -->
|
|
2551
2692
|
<div class="mt-1.5">
|
|
2552
2693
|
<mw-disclaimer .text="${this.config.disclaimer}" .color="${this.config.color}" ?dark-mode="${i}"></mw-disclaimer>
|
|
2553
2694
|
</div>
|
|
2554
|
-
`:null:
|
|
2695
|
+
`:null:u`
|
|
2555
2696
|
<!-- spacing between input box and powered-by or bottom -->
|
|
2556
2697
|
<div class="h-4">
|
|
2557
2698
|
<mw-powered-by ?dark-mode="${i}"></mw-powered-by>
|
|
@@ -2560,7 +2701,40 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2560
2701
|
</div>
|
|
2561
2702
|
</div>
|
|
2562
2703
|
</div>
|
|
2563
|
-
`}#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`
|
|
2564
2738
|
.popup-desktop:hover button {
|
|
2565
2739
|
transition-delay: 0s !important;
|
|
2566
2740
|
}
|
|
@@ -2568,7 +2742,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2568
2742
|
.popup-desktop button {
|
|
2569
2743
|
transition-delay: 1s;
|
|
2570
2744
|
}
|
|
2571
|
-
`;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`
|
|
2572
2746
|
<div class="${this.darkMode?"dark":""} popup-desktop group relative w-[300px] cursor-pointer rounded-[17px] shadow-2xl select-none">
|
|
2573
2747
|
<mw-spinning-border .color="${this.color}" .border="${"transparent"}" .radius="${"17px"}" ?dark-mode="${this.darkMode}">
|
|
2574
2748
|
<!-- wrapper -->
|
|
@@ -2588,7 +2762,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2588
2762
|
×
|
|
2589
2763
|
</button>
|
|
2590
2764
|
</div>
|
|
2591
|
-
`;#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`
|
|
2592
2766
|
<!-- wrapper -->
|
|
2593
2767
|
<div
|
|
2594
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">
|
|
@@ -2604,7 +2778,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2604
2778
|
<div class="p-4 text-gray-800 dark:text-gray-200" @click="${this.#t}">
|
|
2605
2779
|
<h1 class="font-display mr-8 py-2.5 text-left text-lg font-bold">${this.text}</h1>
|
|
2606
2780
|
<div class="h-4"></div>
|
|
2607
|
-
${this.button&&this.color?
|
|
2781
|
+
${this.button&&this.color?u`
|
|
2608
2782
|
<!-- only visible if button text and color are given -->
|
|
2609
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>
|
|
2610
2784
|
`:null}
|
|
@@ -2613,7 +2787,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2613
2787
|
<!-- can append any other content -->
|
|
2614
2788
|
<slot name="footer"></slot>
|
|
2615
2789
|
</div>
|
|
2616
|
-
`}#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`
|
|
2617
2791
|
<!-- mobile shadow backdrop -->
|
|
2618
2792
|
<div @click="${this.#r}" class="${e} fixed inset-0 z-[2147483647] bg-black/50 transition-[opacity,visibility] sm:hidden"></div>
|
|
2619
2793
|
|
|
@@ -2626,7 +2800,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2626
2800
|
?dark-mode="${this.darkMode}"
|
|
2627
2801
|
@mw:click="${this.#n}"
|
|
2628
2802
|
@mw:close="${this.#r}">
|
|
2629
|
-
${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}
|
|
2630
2804
|
</mw-popup-mobile>
|
|
2631
2805
|
</div>
|
|
2632
2806
|
|
|
@@ -2634,7 +2808,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2634
2808
|
<div class="${e} ${this.positionClasses} fixed z-[2147483647] transition-[opacity,translate,visibility] max-sm:hidden">
|
|
2635
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>
|
|
2636
2810
|
</div>
|
|
2637
|
-
`}#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`
|
|
2638
2812
|
<span class="relative inline-flex">
|
|
2639
2813
|
<slot></slot>
|
|
2640
2814
|
<span class="${this.#e} pointer-events-none absolute z-10 flex h-3 w-3">
|
|
@@ -2642,7 +2816,7 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2642
2816
|
<span class="bg-${this.color} relative inline-flex h-3 w-3 rounded-full"></span>
|
|
2643
2817
|
</span>
|
|
2644
2818
|
</span>
|
|
2645
|
-
`;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`
|
|
2646
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">
|
|
2647
2821
|
<p class="mb-2 -translate-x-4 -rotate-12 transform text-lg leading-normal font-bold text-gray-800">${this.text}</p>
|
|
2648
2822
|
|
|
@@ -2655,11 +2829,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2655
2829
|
stroke-linecap="round"></path>
|
|
2656
2830
|
</svg>
|
|
2657
2831
|
</div>
|
|
2658
|
-
`};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`
|
|
2659
2833
|
:host {
|
|
2660
2834
|
all: initial; /* reset all properties that can pierce the shadow DOM */
|
|
2661
2835
|
}
|
|
2662
|
-
`;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`
|
|
2663
2837
|
<mw-context-widget
|
|
2664
2838
|
.widgetId="${this.widgetId}"
|
|
2665
2839
|
.config="${this.config}"
|
|
@@ -2672,11 +2846,11 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2672
2846
|
<slot name="banner" slot="banner"></slot>
|
|
2673
2847
|
</mw-chat>
|
|
2674
2848
|
</mw-context-widget>
|
|
2675
|
-
`: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`
|
|
2676
2850
|
:host {
|
|
2677
2851
|
all: initial; /* reset all properties that can pierce the shadow DOM */
|
|
2678
2852
|
}
|
|
2679
|
-
`;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`
|
|
2680
2854
|
<!-- embed our bubble component forwarding props -->
|
|
2681
2855
|
<!-- these props are never internally updated by mw-bubble so we pass them down only one way -->
|
|
2682
2856
|
<mw-bubble
|
|
@@ -2684,13 +2858,13 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2684
2858
|
.color="${this.config?.bubble?.color||this.config?.color}"
|
|
2685
2859
|
.bubbleStyle="${this.config?.bubble?.style}"
|
|
2686
2860
|
.src="${this.config?.bubble?.bubbleUrl}"
|
|
2687
|
-
width="${
|
|
2688
|
-
height="${
|
|
2689
|
-
`: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`
|
|
2690
2864
|
:host {
|
|
2691
2865
|
all: initial; /* reset all properties that can pierce the shadow DOM */
|
|
2692
2866
|
}
|
|
2693
|
-
`;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`
|
|
2694
2868
|
<mw-context-widget
|
|
2695
2869
|
.widgetId="${this.widgetId}"
|
|
2696
2870
|
.config="${this.config}"
|
|
@@ -2705,14 +2879,14 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2705
2879
|
.color="${this.config?.bubble?.color||this.config?.color}"
|
|
2706
2880
|
.bubbleStyle="${this.config?.bubble?.style}"
|
|
2707
2881
|
.src="${this.config?.bubble?.bubbleUrl}"
|
|
2708
|
-
width="${
|
|
2709
|
-
height="${
|
|
2882
|
+
width="${H(this.config?.bubble?.size?.width)}"
|
|
2883
|
+
height="${H(this.config?.bubble?.size?.height)}"></mw-bubble>
|
|
2710
2884
|
|
|
2711
2885
|
<!-- only load the component if enabled on any platform -->
|
|
2712
|
-
${this.isPopupEnabled?
|
|
2886
|
+
${this.isPopupEnabled?u`
|
|
2713
2887
|
<mw-popup
|
|
2714
2888
|
position="${i}"
|
|
2715
|
-
delay="${this.config.popup?.delayMs||
|
|
2889
|
+
delay="${this.config.popup?.delayMs||Na({minMs:2e3,maxMs:5e3})}"
|
|
2716
2890
|
sound="${this.config.popup?.muteSounds?"":this.config.popup?.soundUrl||""}"
|
|
2717
2891
|
?dark-mode="${this.config?.darkMode}"
|
|
2718
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}}}"
|
|
@@ -2720,12 +2894,10 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2720
2894
|
`:null}
|
|
2721
2895
|
|
|
2722
2896
|
<!-- show "Try it out" if enabled (even if the chat window is showing) -->
|
|
2723
|
-
${this.config?.tryItOut?.mobileEnabled||this.config?.tryItOut?.desktopEnabled?
|
|
2724
|
-
|
|
2725
|
-
|
|
2726
|
-
|
|
2727
|
-
text="${this.config.tryItOut?.text||""}"></mw-try-it-out>
|
|
2728
|
-
`:null}
|
|
2897
|
+
${this.config?.tryItOut?.mobileEnabled||this.config?.tryItOut?.desktopEnabled?u`<mw-try-it-out
|
|
2898
|
+
class="${this.config?.tryItOut?.mobileEnabled?"visible":"invisible"} ${this.config?.tryItOut?.desktopEnabled?"sm:visible":"sm:invisible"}"
|
|
2899
|
+
position="${r}"
|
|
2900
|
+
text="${this.config.tryItOut?.text||""}"></mw-try-it-out>`:null}
|
|
2729
2901
|
|
|
2730
2902
|
<!-- On first render, do not render the dialog, so it does not connect to backend. Once it's rendered once, it's never removed from the DOM. -->
|
|
2731
2903
|
<div
|
|
@@ -2736,17 +2908,17 @@ var Wa=Object.create;var Ji=Object.defineProperty;var Ga=Object.getOwnPropertyDe
|
|
|
2736
2908
|
</div>
|
|
2737
2909
|
|
|
2738
2910
|
<!-- Floating input only visible when enabled, in center, on desktop only -->
|
|
2739
|
-
${this.config?.floatingAskAI?.enabled&&this.#a?
|
|
2911
|
+
${this.config?.floatingAskAI?.enabled&&this.#a?u`
|
|
2740
2912
|
<mw-floating-ask-ai
|
|
2741
2913
|
?dark="${this.config?.floatingAskAI?.darkMode}"
|
|
2742
2914
|
.color="${this.config.color||this.config?.bubble?.color}"
|
|
2743
|
-
placeholder="${
|
|
2915
|
+
placeholder="${H(this.config?.floatingAskAI?.placeholder)}"
|
|
2744
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"
|
|
2745
2917
|
style="bottom: ${this.config.bubble.position.bottom||"1.5rem"}"
|
|
2746
2918
|
@mw-floating-ask-ai:submit="${this.#x}"></mw-floating-ask-ai>
|
|
2747
2919
|
`:null}
|
|
2748
2920
|
</mw-context-widget>
|
|
2749
|
-
`}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};
|
|
2750
2922
|
/*! Bundled license information:
|
|
2751
2923
|
|
|
2752
2924
|
@lit/reactive-element/css-tag.js:
|