@nordcraft/runtime 1.0.11 → 1.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- var Oo=Object.create;var ye=Object.defineProperty;var Ro=Object.getOwnPropertyDescriptor;var Do=Object.getOwnPropertyNames;var ko=Object.getPrototypeOf,To=Object.prototype.hasOwnProperty;var xo=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),p=(e,r)=>{for(var t in r)ye(e,t,{get:r[t],enumerable:!0})},No=(e,r,t,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Do(r))!To.call(e,n)&&n!==t&&ye(e,n,{get:()=>r[n],enumerable:!(o=Ro(r,n))||o.enumerable});return e};var ee=(e,r,t)=>(t=e!=null?Oo(ko(e)):{},No(r||!e||!e.__esModule?ye(t,"default",{value:e,enumerable:!0}):t,e));var G=xo((Bl,Vt)=>{"use strict";Vt.exports=function e(r,t){if(r===t)return!0;if(r&&t&&typeof r=="object"&&typeof t=="object"){if(r.constructor!==t.constructor)return!1;var o,n,a;if(Array.isArray(r)){if(o=r.length,o!=t.length)return!1;for(n=o;n--!==0;)if(!e(r[n],t[n]))return!1;return!0}if(r.constructor===RegExp)return r.source===t.source&&r.flags===t.flags;if(r.valueOf!==Object.prototype.valueOf)return r.valueOf()===t.valueOf();if(r.toString!==Object.prototype.toString)return r.toString()===t.toString();if(a=Object.keys(r),o=a.length,o!==Object.keys(t).length)return!1;for(n=o;n--!==0;)if(!Object.prototype.hasOwnProperty.call(t,a[n]))return!1;for(n=o;n--!==0;){var s=a[n];if(!e(r[s],t[s]))return!1}return!0}return r!==r&&t!==t}});var $e={};p($e,{clearLocalStorage:()=>Fe,clearSessionStorage:()=>ve,copyToClipboard:()=>je,deleteFromLocalStorage:()=>De,deleteFromSessionStorage:()=>Te,focus:()=>we,gotToURL:()=>Ce,interval:()=>Oe,logToConsole:()=>Ne,preventDefault:()=>Ee,saveToLocalStorage:()=>be,saveToSessionStorage:()=>Ae,setSessionCookies:()=>ke,share:()=>xe,sleep:()=>Se,stopPropagation:()=>Re});var be={};p(be,{default:()=>Po});var $o=async function([e,r]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.setItem(e,JSON.stringify(r))},Po=$o;var ve={};p(ve,{default:()=>Io});var Lo=async function(){window.sessionStorage.clear()},Io=Lo;var Ae={};p(Ae,{default:()=>qo});var Mo=async function([e,r]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.setItem(e,JSON.stringify(r))},qo=Mo;var Ce={};p(Ce,{default:()=>Uo});var Bo=([e],r)=>{typeof e=="string"&&(r.env.runtime==="preview"?window.parent?.postMessage({type:"blockedNavigation",url:e},"*"):window.location.href=e)},Uo=Bo;var Ee={};p(Ee,{default:()=>Ho});var _o=(e,r,t)=>{t?.preventDefault?.()},Ho=_o;var Se={};p(Se,{default:()=>Ko});var R=e=>e!=null,M=e=>typeof e=="object"&&e!==null,x=e=>e!==!1&&e!==void 0&&e!==null;var Vo=([e],r)=>{let t=Number(e);if(!R(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setTimeout(()=>r.triggerActionEvent("tick",null),t);r.abortSignal.addEventListener("abort",()=>{clearTimeout(o)})},Ko=Vo;var we={};p(we,{default:()=>Jo});var Wo=([e])=>{e instanceof HTMLElement&&e.focus()},Jo=Wo;var Fe={};p(Fe,{default:()=>Go});var zo=async function(){window.localStorage.clear()},Go=zo;var je={};p(je,{default:()=>Zo});var Qo=([e])=>{if(typeof e!="string")throw new Error("Input value must be a string");return navigator.clipboard.writeText(e)},Zo=Qo;var Oe={};p(Oe,{default:()=>Xo});var Yo=([e],r)=>{let t=Number(e);if(!R(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setInterval(()=>r.triggerActionEvent("tick",null),t);r.abortSignal.addEventListener("abort",()=>{clearInterval(o)})},Xo=Yo;var Re={};p(Re,{default:()=>rn});var en=(e,r,t)=>{t?.stopPropagation?.()},rn=en;var De={};p(De,{default:()=>on});var tn=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.removeItem(e)},on=tn;var ke={};p(ke,{default:()=>an});var nn=async function([e,r],t){let o=[typeof e=="string"?`name=access_token&value=${encodeURIComponent(e)}`:void 0,isNaN(Number(r))?void 0:`ttl=${r}`].filter(a=>a).join("&"),n=await fetch(`/.toddle/cookies/set-session-cookie?${o}`);n.ok?t.triggerActionEvent("Success",void 0):t.triggerActionEvent("Error",new Error(await n.text()))},an=nn;var Te={};p(Te,{default:()=>ln});var sn=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.removeItem(e)},ln=sn;var xe={};p(xe,{default:()=>dn});var un=([e,r,t])=>{let o=a=>R(a)&&typeof a=="string";if(!o(e)&&!o(r)&&!o(t))throw new Error("Either url, text or title must be provided");let n={};if(o(r)&&(n.title=r),o(t)&&(n.text=t),o(e)&&(n.url=e),R(navigator.share)&&navigator.canShare(n))return navigator.share(n)},dn=un;var Ne={};p(Ne,{default:()=>cn});var fn=([e,r])=>{console.log(e,r)},cn=fn;var wt={};p(wt,{absolute:()=>Jr,add:()=>ut,append:()=>Le,boolean:()=>ur,branchName:()=>Je,canShare:()=>yt,capitalize:()=>ht,clamp:()=>Gr,concatenate:()=>mr,currentURL:()=>qr,dateFromString:()=>He,dateFromTimestamp:()=>nr,decodeBase64:()=>Et,decodeURIComponent:()=>Or,defaultTo:()=>st,deleteKey:()=>Me,divide:()=>gt,drop:()=>Ct,dropLast:()=>tr,encodeBase64:()=>ir,encodeJSON:()=>br,encodeURIComponent:()=>hr,entries:()=>_e,equals:()=>at,every:()=>$r,filter:()=>Ir,find:()=>Ar,findIndex:()=>Ze,findLast:()=>rt,first:()=>Ie,flatten:()=>et,formatDate:()=>tt,formatNumber:()=>Ge,fromEntries:()=>pr,get:()=>it,getCookie:()=>lt,getElementById:()=>jr,getFromLocalStorage:()=>St,getFromSessionStorage:()=>dt,getHttpOnlyCookie:()=>wr,greaterOrEqueal:()=>Er,greaterThan:()=>vt,groupBy:()=>Lr,includes:()=>mt,indexOf:()=>Vr,isServer:()=>Pr,join:()=>Be,json:()=>lr,keyBy:()=>Zr,languages:()=>Ve,last:()=>Tr,lastIndexOf:()=>Ur,lessOrEqual:()=>sr,lessThan:()=>Qr,logarithm:()=>rr,lowercase:()=>Qe,map:()=>vr,matches:()=>cr,max:()=>yr,min:()=>zr,minus:()=>ot,modulo:()=>xr,multiply:()=>Hr,not:()=>Rr,notEqual:()=>At,now:()=>Ke,number:()=>dr,parseJSON:()=>Sr,parseURL:()=>Nr,power:()=>fr,prepend:()=>Fr,randomNumber:()=>Mr,range:()=>Xr,reduce:()=>Dr,replaceAll:()=>kr,reverse:()=>_r,round:()=>Yr,roundDown:()=>nt,roundUp:()=>Kr,set:()=>ze,shuffle:()=>ft,size:()=>ar,some:()=>Br,sort_by:()=>qe,split:()=>ct,squareRoot:()=>Cr,startsWith:()=>pt,string:()=>Pe,sum:()=>gr,take:()=>or,takeLast:()=>Ye,timestamp:()=>Wr,trim:()=>Xe,typeOf:()=>We,unique:()=>bt,uppercase:()=>er,userAgent:()=>Ue});var Pe={};p(Pe,{default:()=>mn});var pn=([e])=>String(e),mn=pn;var Le={};p(Le,{default:()=>gn});var hn=([e,r])=>Array.isArray(e)?[...e,r]:null,gn=hn;var Ie={};p(Ie,{default:()=>bn});var yn=([e])=>typeof e=="string"||Array.isArray(e)?e[0]:null,bn=yn;var Me={};p(Me,{default:()=>An});var vn=([e,r])=>{if(typeof e!="object"||e===null||!Array.isArray(r)&&typeof r!="string"&&typeof r!="number")return null;let t=(n,[a,...s])=>{if(Array.isArray(n)){let l=Number(a);return Number.isNaN(l)?n:s.length===0?n.filter((u,m)=>m!==Number(a)):n.map((u,m)=>m===l?t(n[l],s):u)}return M(n)?s.length===0?Object.fromEntries(Object.entries(n).filter(([l])=>l!==a)):{...n,[a]:t(n[a],s)}:null},o=Array.isArray(r)?r:[r];return t(e,o)},An=vn;var qe={};p(qe,{default:()=>En,getArgumentInputData:()=>Sn});var Cn=([e,r,t])=>{if(!Array.isArray(e)||typeof r!="function"||typeof t!="boolean")return null;let o=t?1:-1;return[...e].sort((n,a)=>{let s=r({item:n}),l=r({item:a});if(Array.isArray(s)&&Array.isArray(l)){for(let u in s)if(s[u]!==l[u])return(s[u]>l[u]?1:-1)*o;return 0}return s===l?0:(s>l?1:-1)*o})},En=Cn,Sn=([e],r,t)=>r===1&&Array.isArray(e)?{...t,Args:{item:e[0]}}:t;var Be={};p(Be,{default:()=>Fn});var wn=([e,r])=>Array.isArray(e)?e.join(String(r)):null,Fn=wn;var Ue={};p(Ue,{default:()=>On});var jn=(e,{env:r})=>r.isServer?r.request?.headers["user-agent"]??null:window.navigator.userAgent,On=jn;var _e={};p(_e,{default:()=>Dn});var Rn=([e])=>typeof e=="object"&&e!==null?Object.entries(e).map(([r,t])=>({key:r,value:t})):null,Dn=Rn;var He={};p(He,{default:()=>Tn});var kn=([e])=>typeof e=="string"?new Date(e):null,Tn=kn;var Ve={};p(Ve,{default:()=>Nn});var xn=(e,{env:r})=>r.isServer?r.request?.headers["accept-language"]?.split(",").map(t=>t.split(";")[0])??[]:window.navigator.languages,Nn=xn;var Ke={};p(Ke,{default:()=>Pn});var $n=()=>new Date,Pn=$n;var We={};p(We,{default:()=>In});var Ln=([e])=>{switch(typeof e){case"number":return isNaN(e)?null:"Number";case"string":return"String";case"boolean":return"Boolean";case"object":return Array.isArray(e)?"Array":e===null?"Null":"Object";case"undefined":return"Null";default:return null}},In=Ln;var Je={};p(Je,{default:()=>qn});var Mn=(e,r)=>r.env.branchName,qn=Mn;var ze={};p(ze,{default:()=>Bn});var Nt=([e,r,t],o)=>{if(typeof r!="string"&&typeof r!="number"&&!Array.isArray(r))return null;let[n,...a]=Array.isArray(r)?r:[r];if(M(e)){let s=Array.isArray(e)?[...e]:{...e};return s[n]=a.length===0?t:Nt([s[n],a,t],o),s}return null},Bn=Nt;var Ge={};p(Ge,{default:()=>_n});var Un=([e,r,t])=>{if(typeof e!="number"||Number.isNaN(e))return null;let o=typeof r=="string"&&r.length>0||Array.isArray(r)&&r.every(F=>typeof F=="string")?r:void 0;if(!t||typeof t!="object")return Intl.NumberFormat(o).format(e);let n=(F,c)=>typeof F=="string"&&(c?.includes(F)??!0)?F:void 0,a=t,s=n(a.style,["decimal","currency","percent","unit"]),l=typeof a.currency=="string"&&a.currency.length===3?a.currency:void 0;if(s==="currency"&&typeof l!="string")return null;let u=n(a.currencyDisplay,["code","symbol","narrowSymbol","name"]),m=typeof a.unit=="string"?a.unit:void 0;if(s==="unit"&&typeof m!="string")return null;let v=n(a.unitDisplay,["short","narrow","long"]),i=typeof a.minimumIntegerDigits=="number"&&a.minimumIntegerDigits>=1&&a.minimumIntegerDigits<=21?a.minimumIntegerDigits:void 0,d=typeof a.minimumFractionDigits=="number"&&a.minimumFractionDigits>=0&&a.minimumFractionDigits<=100?a.minimumFractionDigits:void 0,h=typeof a.maximumFractionDigits=="number"&&a.maximumFractionDigits>=0&&a.maximumFractionDigits<=100?a.maximumFractionDigits:void 0,E=typeof a.minimumSignificantDigits=="number"&&a.minimumSignificantDigits>=1&&a.minimumSignificantDigits<=21?a.minimumSignificantDigits:void 0,g=typeof a.maximumSignificantDigits=="number"&&a.maximumSignificantDigits>=1&&a.maximumSignificantDigits<=21?a.maximumSignificantDigits:void 0,w=n(a.notation,["standard","scientific","engineering","compact"]),b=n(a.compactDisplay,["short","long"]),j=["always","auto","min2"],O=typeof a.useGrouping=="boolean"?a.useGrouping:n(a.useGrouping,j);return new Intl.NumberFormat(o,{style:s,currency:l,currencyDisplay:u,unit:m,unitDisplay:v,minimumIntegerDigits:i,minimumFractionDigits:d,maximumFractionDigits:h,minimumSignificantDigits:E,maximumSignificantDigits:g,notation:w,compactDisplay:b,useGrouping:O}).format(e)},_n=Un;var Qe={};p(Qe,{default:()=>Vn});var Hn=([e])=>typeof e!="string"?null:e.toLocaleLowerCase(),Vn=Hn;var Ze={};p(Ze,{default:()=>Kn,getArgumentInputData:()=>Wn,handler:()=>$t});var $t=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.findIndex((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.entries(e).findIndex(([t,o])=>r({key:t,value:o})):null,Kn=$t,Wn=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t};var Ye={};p(Ye,{default:()=>zn});var Jn=([e,r])=>typeof r!="number"?null:Array.isArray(e)?e.slice(e.length-r):typeof e=="string"?e.substring(e.length-r):null,zn=Jn;var Xe={};p(Xe,{default:()=>Qn});var Gn=([e])=>typeof e!="string"?null:e.trim(),Qn=Gn;var er={};p(er,{default:()=>Yn});var Zn=([e])=>typeof e!="string"?null:e.toLocaleUpperCase(),Yn=Zn;var rr={};p(rr,{default:()=>ea});var Xn=([e])=>typeof e!="number"||Number.isNaN(e)||e<0?null:Math.log(e),ea=Xn;var tr={};p(tr,{default:()=>ta});var ra=([e,r])=>typeof r!="number"||isNaN(r)?null:Array.isArray(e)?e.slice(0,e.length-r):typeof e=="string"?e.substring(0,e.length-r):null,ta=ra;var or={};p(or,{default:()=>na});var oa=([e,r])=>typeof r!="number"?null:Array.isArray(e)?e.slice(0,r):typeof e=="string"?e.substring(0,r):null,na=oa;var nr={};p(nr,{default:()=>sa});var aa=([e])=>typeof e=="number"?new Date(e):null,sa=aa;var ar={};p(ar,{default:()=>la});var ia=([e])=>Array.isArray(e)?e.length:M(e)?Object.keys(e).length:typeof e=="string"?e.length:null,la=ia;var sr={};p(sr,{default:()=>da});var ua=([e,r])=>e<=r,da=ua;var ir={};p(ir,{default:()=>ca});var fa=([e])=>typeof e!="string"?null:btoa(e),ca=fa;var lr={};p(lr,{default:()=>ma});var pa=([e,r])=>{let t=isNaN(Number(r))?0:Number(r);return JSON.stringify(e,null,t)},ma=pa;var ur={};p(ur,{default:()=>ga});var ha=([e])=>x(e),ga=ha;var dr={};p(dr,{default:()=>ba});var ya=([e])=>Number(e),ba=ya;var fr={};p(fr,{default:()=>Aa});var va=([e,r])=>isNaN(Number(e))||isNaN(Number(r))?null:Number(e)**Number(r),Aa=va;var cr={};p(cr,{default:()=>Ea});var Ca=([e,r,t,o,n])=>{if(typeof e!="string"||typeof r!="string")return[];let a=[x(t)?"g":"",x(o)?"i":"",x(n)?"m":""].join(""),s=new RegExp(r,a);return e.match(s)??[]},Ea=Ca;var pr={};p(pr,{default:()=>wa});var Sa=([e])=>{if(Array.isArray(e)){let r={};for(let{key:t,value:o}of e)r[t]=o;return r}return null},wa=Sa;var mr={};p(mr,{default:()=>ja});var Fa=e=>{if(e.every(Array.isArray)){let r=[];for(let t of e)r.push(...t);return r}return e.every(M)?Object.assign({},...e):e.join("")},ja=Fa;var hr={};p(hr,{default:()=>Ra});var Oa=([e])=>typeof e!="string"?null:encodeURIComponent(e),Ra=Oa;var gr={};p(gr,{default:()=>ka});var Da=([e])=>{if(Array.isArray(e)){let r=0;for(let t of e){if(isNaN(t)||typeof t!="number")return null;r+=t}return r}return null},ka=Da;var yr={};p(yr,{default:()=>xa});var Ta=e=>Math.max(...e.map(Number)),xa=Ta;var br={};p(br,{default:()=>$a});var Na=([e,r])=>typeof r!="number"?null:JSON.stringify(e,null,r),$a=Na;var vr={};p(vr,{default:()=>Ia,getArgumentInputData:()=>La});var Pa=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.map((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([t,o])=>{let n=r({key:t,value:o});return"key"in n&&"value"in n?[n.key,n.value]:null})):null,La=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t},Ia=Pa;var Ar={};p(Ar,{default:()=>Ma,getArgumentInputData:()=>qa,handler:()=>Pt});var Pt=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.find((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.entries(e).find(([t,o])=>r({key:t,value:o}))?.[1]:null,Ma=Pt,qa=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t};var Cr={};p(Cr,{default:()=>Ua});var Ba=([e])=>typeof e!="number"?null:Math.sqrt(e),Ua=Ba;var Er={};p(Er,{default:()=>Ha});var _a=([e,r])=>e>=r,Ha=_a;var Sr={};p(Sr,{default:()=>Wa});var Va=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:.\d{1,3})?Z$/;function z(e){return JSON.parse(e,(r,t)=>typeof t=="string"&&t.length===24&&Va.test(t)?new Date(t):t)}var Ka=([e])=>{if(typeof e!="string")return null;try{return z(e)}catch{return null}},Wa=Ka;var wr={};p(wr,{default:()=>Ga});var Lt=(e,r)=>`{{ ${Ja[e]}.${r} }}`,Ja={cookies:"cookies"};var za=([e])=>!e||typeof e!="string"?null:Lt("cookies",e),Ga=za;var Fr={};p(Fr,{default:()=>Za});var Qa=([e,r])=>Array.isArray(e)?[r,...e]:null,Za=Qa;var jr={};p(jr,{default:()=>Xa});var Ya=([e],{root:r})=>typeof e!="string"?null:r.getElementById(e),Xa=Ya;var Or={};p(Or,{default:()=>rs});var es=([e])=>typeof e!="string"?null:decodeURIComponent(e),rs=es;var Rr={};p(Rr,{default:()=>os});var ts=([e])=>!x(e),os=ts;var Dr={};p(Dr,{default:()=>as,getArgumentInputData:()=>ss});var ns=([e,r,t])=>typeof r!="function"?null:Array.isArray(e)?e.reduce((o,n,a)=>r({result:o,item:n,index:a}),t):e&&typeof e=="object"?Object.entries(e).reduce((o,[n,a])=>r({result:o,key:n,value:a}),t):null,as=ns,ss=([e,r,t],o,n)=>{if(o!==1)return n;if(Array.isArray(e))return{...n,Args:{item:e[0],index:0,result:t}};if(e&&typeof e=="object"){let[a]=Object.entries(e);if(a)return{...n,Args:{key:a[0],value:a[1],result:t}}}return n};var kr={};p(kr,{default:()=>ls});var is=([e,r,t])=>typeof e!="string"||typeof r!="string"?null:e.replaceAll(r,String(t)),ls=is;var Tr={};p(Tr,{default:()=>ds});var us=([e])=>typeof e=="string"||Array.isArray(e)?e[e.length-1]:null,ds=us;var xr={};p(xr,{default:()=>cs});var fs=([e,r])=>isNaN(Number(e))||isNaN(Number(r))?null:Number(e)%Number(r),cs=fs;var Nr={};p(Nr,{default:()=>ms});var ps=([e,r])=>{if(typeof e!="string")return null;try{let{hostname:t,searchParams:o,pathname:n,hash:a,href:s,protocol:l,port:u,origin:m}=new URL(e,typeof r=="string"?r:void 0);return{hostname:t,searchParams:Object.fromEntries(o),path:n.split("/").filter((v,i)=>i!==0||v!==""),hash:a.replace("#",""),href:s,protocol:l,port:u,origin:m}}catch{return null}},ms=ps;var $r={};p($r,{default:()=>hs,getArgumentInputData:()=>gs,handler:()=>It});var It=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.every((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.entries(e).every(([t,o])=>r({key:t,value:o})):null,hs=It,gs=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t};var Pr={};p(Pr,{default:()=>bs});var ys=(e,r)=>r.env.isServer,bs=ys;var Lr={};p(Lr,{default:()=>vs,getArgumentInputData:()=>As,handler:()=>Mt});var Mt=([e,r])=>{if(typeof r!="function"||!e||typeof e!="object"||!Array.isArray(e))return null;let t={};for(let o in e){let n=e[o],a=String(r({item:n,index:o}));t[a]=t[a]??[],t[a].push(n)}return t},vs=Mt,As=([e],r,t)=>r===1&&Array.isArray(e)?{...t,Args:{item:e[0],index:0}}:t;var Ir={};p(Ir,{default:()=>Cs,getArgumentInputData:()=>Es,handler:()=>qt});var qt=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.filter((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).filter(([t,o])=>r({key:t,value:o}))):Array.isArray(e)?e.filter((t,o)=>r({item:t,index:o})):null,Cs=qt,Es=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{value:o[1],key:o[0]}}}return t};var Mr={};p(Mr,{default:()=>ws});var Ss=()=>Math.random(),ws=Ss;var qr={};p(qr,{default:()=>js});var Fs=(e,{env:r})=>r.isServer?r.request.url:window?.location.href??null,js=Fs;var Br={};p(Br,{default:()=>Os,getArgumentInputData:()=>Rs,handler:()=>Bt});var Bt=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.some((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.entries(e).some(([t,o])=>r({key:t,value:o})):null,Os=Bt,Rs=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t};var Ur={};p(Ur,{default:()=>ks});var Ds=([e,r])=>typeof e=="string"?e.lastIndexOf(r):Array.isArray(e)?e.findLastIndex(t=>globalThis.toddle.isEqual(t,r)):null,ks=Ds;var _r={};p(_r,{default:()=>xs});var Ts=([e])=>Array.isArray(e)?[...e].reverse():null,xs=Ts;var Hr={};p(Hr,{default:()=>$s});var Ns=e=>e.some(r=>isNaN(Number(r)))?null:e.reduce((r,t)=>r*t,1),$s=Ns;var Vr={};p(Vr,{default:()=>Ls});var Ps=([e,r])=>typeof e=="string"?e.indexOf(r):Array.isArray(e)?e.findIndex(t=>globalThis.toddle.isEqual(t,r)):null,Ls=Ps;var Kr={};p(Kr,{default:()=>Ms});var Is=([e,r])=>{if(typeof e!="number"||typeof r!="number")return null;let t=Math.max(1,Math.pow(10,r));return Math.ceil(e*t)/t},Ms=Is;var Wr={};p(Wr,{default:()=>Bs});var qs=([e])=>!e||!(e instanceof Date)?null:e.getTime(),Bs=qs;var Jr={};p(Jr,{default:()=>_s});var Us=([e])=>typeof e!="number"?null:Math.abs(e),_s=Us;var zr={};p(zr,{default:()=>Vs});var Hs=e=>Math.min(...e.map(Number)),Vs=Hs;var Gr={};p(Gr,{default:()=>Ws});var Ks=([e,r,t])=>typeof e!="number"||typeof r!="number"||typeof t!="number"?null:Math.min(Math.max(e,r),t),Ws=Ks;var Qr={};p(Qr,{default:()=>zs});var Js=([e,r])=>e<r,zs=Js;var Zr={};p(Zr,{default:()=>Gs,getArgumentInputData:()=>Qs,handler:()=>Ut});var Ut=([e,r])=>{if(typeof r!="function"||!e||typeof e!="object")return null;let t=Array.isArray(e)?e:Object.entries(e),o={};for(let n=0;n<t.length;n++){let a=t[n],s=String(r({item:a,i:n}));o[s]=a}return o},Gs=Ut,Qs=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{value:o[1],key:o[0]}}}return t};var Yr={};p(Yr,{default:()=>Ys});var Zs=([e,r])=>{if(typeof e!="number"||typeof r!="number")return null;let t=Math.max(1,Math.pow(10,r));return Math.round(e*t)/t},Ys=Zs;var Xr={};p(Xr,{default:()=>ei});var Xs=([e,r])=>typeof e!="number"||typeof r!="number"?null:e>r?[]:Array.from({length:r-e+1},(t,o)=>o+e),ei=Xs;var et={};p(et,{default:()=>ti});var ri=([e])=>Array.isArray(e)?e.flat():null,ti=ri;var rt={};p(rt,{default:()=>oi,getArgumentInputData:()=>ni,handler:()=>_t});var _t=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.findLast((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.entries(e).findLast(([t,o])=>r({key:t,value:o}))?.[1]:null,oi=_t,ni=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t};var tt={};p(tt,{default:()=>si});var ai=([e,r,t])=>{if(!e||!(e instanceof Date))return null;let o=typeof r=="string"&&r.length>0||Array.isArray(r)&&r.every(F=>typeof F=="string")?r:void 0;if(!t||typeof t!="object")return Intl.DateTimeFormat(o).format(e);let n=(F,c)=>typeof F=="string"&&(c?.includes(F)??!0)?F:void 0,a=t,s=n(a.dateStyle,["full","long","medium","short"]),l=n(a.timeStyle,["full","long","medium","short"]),u=n(a.calendar),m=n(a.weekday,["long","short","narrow"]),v=n(a.era,["long","short","narrow"]),i=n(a.year,["numeric","2-digit"]),d=n(a.month,["long","short","narrow","numeric","2-digit"]),h=n(a.day,["numeric","2-digit"]),E=n(a.hour,["numeric","2-digit"]),g=n(a.minute,["numeric","2-digit"]),w=n(a.second,["numeric","2-digit"]),b=n(a.timeZoneName,["long","short","shortOffset","longOffset","shortGeneric","longGeneric"]),j=n(a.timeZone),O=a.hour12===!0?!0:a.hour12===!1?!1:void 0;return Intl.DateTimeFormat(o,{dateStyle:s,timeStyle:l,calendar:u,weekday:m,era:v,year:i,month:d,day:h,hour:E,minute:g,second:w,timeZoneName:b,timeZone:j,hour12:O}).format(e)},si=ai;var ot={};p(ot,{default:()=>li});var ii=([e,r])=>{let t=Number(e),o=Number(r);return isNaN(t)||isNaN(o)?null:t-o},li=ii;var nt={};p(nt,{default:()=>di});var ui=([e,r])=>{if(typeof e!="number"||typeof r!="number")return null;let t=Math.max(1,Math.pow(10,r));return Math.floor(e*t)/t},di=ui;var at={};p(at,{default:()=>ci});var fi=([e,r])=>globalThis.toddle.isEqual(e,r),ci=fi;var st={};p(st,{default:()=>mi});var pi=e=>{for(let r of e)if(x(r))return r;return null},mi=pi;var it={};p(it,{default:()=>gi});var hi=([e,r])=>{if(typeof e=="string")return e[Number(r)];let t=(o,n)=>{if(n.length===0)return o;let[a,...s]=n;return t(o?.[String(a)],s)};return t(e,Array.isArray(r)?r:[r])},gi=hi;var lt={};p(lt,{default:()=>bi});var yi=([e],{env:r,root:t})=>!e||typeof e!="string"?null:r.isServer?r.request.cookies[e]??null:t instanceof ShadowRoot?null:t.cookie.split("; ")?.find(o=>o.startsWith(`${e}=`))?.split("=")[1]??null,bi=yi;var ut={};p(ut,{default:()=>Ai});var vi=e=>!Array.isArray(e)||e.some(r=>r===null||typeof r!="number")?null:e.reduce((r,t)=>r+Number(t),0),Ai=vi;var dt={};p(dt,{default:()=>Ei});var Ci=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let r=window.sessionStorage.getItem(e);if(r===null)return r;try{return JSON.parse(r)}catch{return r}},Ei=Ci;var ft={};p(ft,{default:()=>wi});var Si=([e])=>Array.isArray(e)?Ht(e):typeof e=="string"?Ht(e.split("")).join(""):null;function Ht(e){let r=[...e];for(let t=r.length-1;t>0;t--){let o=Math.floor(Math.random()*(t+1));[r[t],r[o]]=[r[o],r[t]]}return r}var wi=Si;var ct={};p(ct,{default:()=>ji});var Fi=([e,r])=>typeof e!="string"||typeof r!="string"?null:e.split(r),ji=Fi;var pt={};p(pt,{default:()=>Ri});var Oi=([e,r])=>typeof e!="string"||typeof r!="string"?null:e.startsWith(r),Ri=Oi;var mt={};p(mt,{default:()=>ki});var Di=([e,r])=>typeof e=="string"&&typeof r=="string"?e.includes(r):Array.isArray(e)?e.some(t=>globalThis.toddle.isEqual(t,r)):null,ki=Di;var ht={};p(ht,{default:()=>xi});var Ti=([e])=>typeof e!="string"?null:e.length===0?e:e[0].toLocaleUpperCase()+e.substring(1).toLocaleLowerCase(),xi=Ti;var gt={};p(gt,{default:()=>$i});var Ni=([e,r])=>isNaN(Number(e))||isNaN(Number(r))?null:Number(e)/Number(r),$i=Ni;var yt={};p(yt,{default:()=>Li});var Pi=([e,r,t])=>{if(!R(navigator.canShare))return!1;let o=a=>R(a)&&typeof a=="string";if(!o(e)&&!o(r)&&!o(t))return!1;let n={};return o(r)&&(n.title=r),o(t)&&(n.text=t),o(e)&&(n.url=e),navigator.canShare(n)},Li=Pi;var bt={};p(bt,{default:()=>Mi});var Ii=([e])=>{if(!Array.isArray(e))return null;let r=new Set;return e.filter(t=>{let o=typeof t=="object"?JSON.stringify(t):t;return r.has(o)?!1:(r.add(o),!0)})},Mi=Ii;var vt={};p(vt,{default:()=>Bi});var qi=([e,r])=>e>r,Bi=qi;var At={};p(At,{default:()=>_i});var Ui=([e,r])=>!globalThis.toddle.isEqual(e,r),_i=Ui;var Ct={};p(Ct,{default:()=>Vi});var Hi=([e,r])=>typeof r!="number"||isNaN(r)?null:Array.isArray(e)?e.slice(r):typeof e=="string"?e.substring(r):null,Vi=Hi;var Et={};p(Et,{default:()=>Wi});var Ki=([e])=>typeof e!="string"?null:atob(e),Wi=Ki;var St={};p(St,{default:()=>zi});var Ji=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let r=window.localStorage.getItem(e);if(r===null)return r;try{return JSON.parse(r)}catch{return r}},zi=Ji;var jo=ee(G(),1);var Kt=e=>{let r=e.toLocaleLowerCase().replaceAll(" ","");return r.includes("-")?r:`toddle-${r}`};var re=e=>Object.hasOwn(e,"formula");function _(e){return e&&typeof e=="object"&&typeof e.type=="string"}function C(e,r){if(!_(e))return e;try{switch(e.type){case"value":return e.value;case"path":{let t=r.data;for(let o of e.path)if(t&&typeof t=="object")t=t[o];else return null;return t}case"switch":{for(let t of e.cases)if(x(C(t.condition,r)))return C(t.formula,r);return C(e.default,r)}case"or":{for(let t of e.arguments)if(x(C(t.formula,r)))return!0;return!1}case"and":{for(let t of e.arguments)if(!x(C(t.formula,r)))return!1;return!0}case"function":{let t=e.package??r.package,o=(r.toddle??globalThis.toddle)?.getCustomFormula(e.name,t),n=(r.toddle??globalThis.toddle).getFormula(e.name);if(R(o)){r.package=t;let a=e.arguments.reduce((s,l,u)=>({...s,[l.name??`${u}`]:l.isFunction?m=>C(l.formula,{...r,data:{...r.data,Args:r.data.Args?{...m,"@toddle.parent":r.data.Args}:m}}):C(l.formula,r)}),{});try{return re(o)?C(o.formula,{...r,data:{...r.data,Args:a}}):o.handler(a,{root:r.root??document,env:r.env})}catch(s){return r.toddle.errors.push(s),r.env?.logErrors&&console.error(s),null}}else if(typeof n=="function"){let a=(e.arguments??[]).map(s=>s.isFunction?l=>C(s.formula,{...r,data:{...r.data,Args:r.data.Args?{...l,"@toddle.parent":r.data.Args}:l}}):C(s.formula,r));try{return n(a,r)}catch(s){return r.toddle.errors.push(s),r.env?.logErrors&&console.error(s),null}}return r.env?.logErrors&&console.error(`Could not find formula ${e.name} in package ${t??""}`,e),null}case"object":return Object.fromEntries(e.arguments?.map(t=>[t.name,C(t.formula,r)])??[]);case"record":return Object.fromEntries(e.entries.map(t=>[t.name,C(t.formula,r)]));case"array":return e.arguments.map(t=>C(t.formula,r));case"apply":{let t=r.component.formulas?.[e.name];if(!t)return r.env?.logErrors&&console.log("Component does not have a formula with the name ",e.name),null;let o=Object.fromEntries(e.arguments.map(s=>s.isFunction?[s.name,l=>C(s.formula,{...r,data:{...r.data,Args:r.data.Args?{...l,"@toddle.parent":r.data.Args}:l}})]:[s.name,C(s.formula,r)])),n={...r.data,Args:r.data.Args?{...o,"@toddle.parent":r.data.Args}:o},a=r.formulaCache?.[e.name]?.get(n);if(a?.hit)return a.data;{let s=C(t.formula,{...r,data:n});return r.formulaCache?.[e.name]?.set(n,s),s}}default:r.env?.logErrors&&console.error("Could not recognize formula",e)}}catch(t){return r.env?.logErrors&&console.error(t),null}}var Gi=e=>typeof e=="object"&&e!==null,L=(e,r)=>Object.fromEntries(Object.entries(e).map(r)),Q=(e,r)=>L(e,([t,o])=>[t,r(o)]),Wt=(e,r)=>{let[t,...o]=r,n=Array.isArray(e)?[...e]:Gi(e)?{...e}:{};return o.length===0?delete n[t]:n[t]=Wt(n[t],o),n},H=(e,r)=>Object.fromEntries(Object.entries(e).filter(([t])=>!r.includes(t))),Jt=(e,r)=>r.reduce((t,o)=>Wt(t,o),{...e});function te(e,[r,...t]){return t.length===0?e?.[r]:te(e?.[r],t)}var oe=(e,r,t=!0)=>Qi(Object.entries(e),r,t),Qi=(e,r,t=!0)=>[...e].sort((o,n)=>{let a=r(o),s=r(n);return a===s?0:(a>s?1:-1)*(t?1:-1)});var zt=(e,r=0)=>{let t=3735928559^r,o=1103547991^r;for(let n=0,a;n<e.length;n++)a=e.charCodeAt(n),t=Math.imul(t^a,2654435761),o=Math.imul(o^a,1597334677);return t=Math.imul(t^t>>>16,2246822507),t^=Math.imul(o^o>>>13,3266489909),o=Math.imul(o^o>>>16,2246822507),o^=Math.imul(t^t>>>13,3266489909),4294967296*(2097151&o)+(t>>>0)};var q;(function(e){e.GET="GET",e.POST="POST",e.DELETE="DELETE",e.PUT="PUT",e.PATCH="PATCH",e.HEAD="HEAD",e.OPTIONS="OPTIONS"})(q||(q={}));function*D({formula:e,globalFormulas:r,path:t=[],visitedFormulas:o=new Set,packageName:n}){if(R(e))switch(yield{path:t,formula:e,packageName:n},e.type){case"path":case"value":break;case"record":for(let[a,s]of e.entries.entries())yield*D({formula:s.formula,globalFormulas:r,path:[...t,"entries",a,"formula"],visitedFormulas:o,packageName:n});break;case"function":{n=e.package??n;let a=[n,e.name].filter(R).join("/"),s=!o.has(a);o.add(a);let l=n?r.packages?.[n]?.formulas?.[e.name]:r.formulas?.[e.name];for(let[u,m]of(e.arguments??[]).entries())yield*D({formula:m.formula,globalFormulas:r,path:[...t,"arguments",u,"formula"],visitedFormulas:o,packageName:n});l&&re(l)&&s&&(yield*D({formula:l.formula,globalFormulas:r,path:[...t,"formula"],visitedFormulas:o,packageName:n}));break}case"array":case"or":case"and":case"object":for(let[a,s]of(e.arguments??[]).entries())yield*D({formula:s.formula,globalFormulas:r,path:[...t,"arguments",a,"formula"],visitedFormulas:o,packageName:n});break;case"apply":for(let[a,s]of(e.arguments??[]).entries())yield*D({formula:s.formula,globalFormulas:r,path:[...t,"arguments",a,"formula"],visitedFormulas:o,packageName:n});break;case"switch":for(let[a,s]of e.cases.entries())yield*D({formula:s.condition,globalFormulas:r,path:[...t,"cases",a,"condition"],visitedFormulas:o,packageName:n}),yield*D({formula:s.formula,globalFormulas:r,path:[...t,"cases",a,"formula"],visitedFormulas:o,packageName:n});yield*D({formula:e.default,globalFormulas:r,path:[...t,"default"],visitedFormulas:o,packageName:n});break}}function*I({action:e,globalFormulas:r,path:t=[],visitedFormulas:o=new Set,packageName:n}){if(R(e))switch(e.type){case"Fetch":for(let[a,s]of Object.entries(e.inputs??{}))yield*D({formula:s.formula,globalFormulas:r,path:[...t,"input",a,"formula"],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onSuccess?.actions??{}))yield*I({action:s,globalFormulas:r,path:[...t,"onSuccess","actions",a],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onError?.actions??{}))yield*I({action:s,globalFormulas:r,path:[...t,"onError","actions",a],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onMessage?.actions??{}))yield*I({action:s,globalFormulas:r,path:[...t,"onMessage","actions",a],visitedFormulas:o,packageName:n});break;case"Custom":case void 0:n=e.package??n,_(e.data)&&(yield*D({formula:e.data,globalFormulas:r,path:[...t,"data"],visitedFormulas:o,packageName:n}));for(let[a,s]of Object.entries(e.arguments??{}))yield*D({formula:s.formula,globalFormulas:r,path:[...t,"arguments",a,"formula"],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.events??{}))for(let[l,u]of Object.entries(s.actions??{}))yield*I({action:u,globalFormulas:r,path:[...t,"events",a,"actions",l],visitedFormulas:o,packageName:n});break;case"SetVariable":case"TriggerEvent":yield*D({formula:e.data,globalFormulas:r,path:[...t,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameter":yield*D({formula:e.data,globalFormulas:r,path:[...t,"data"],visitedFormulas:o});break;case"SetURLParameters":for(let[a,s]of Object.entries(e.parameters??{}))yield*D({formula:s,globalFormulas:r,path:[...t,"parameters",a],visitedFormulas:o});break;case"TriggerWorkflow":for(let[a,s]of Object.entries(e.parameters??{}))yield*D({formula:s.formula,globalFormulas:r,path:[...t,"parameters",a,"formula"],visitedFormulas:o,packageName:n});break;case"Switch":R(e.data)&&_(e.data)&&(yield*D({formula:e.data,globalFormulas:r,path:[...t,"data"],visitedFormulas:o,packageName:n}));for(let[a,s]of e.cases.entries()){yield*D({formula:s.condition,globalFormulas:r,path:[...t,"cases",a,"condition"],visitedFormulas:o,packageName:n});for(let[l,u]of Object.entries(s.actions))yield*I({action:u,globalFormulas:r,path:[...t,"cases",a,"actions",l],visitedFormulas:o,packageName:n})}for(let[a,s]of Object.entries(e.default.actions))yield*I({action:s,globalFormulas:r,path:[...t,"default","actions",a],visitedFormulas:o,packageName:n});break}}var Z=class{api;key;globalFormulas;_apiReferences;constructor(r,t,o){this.api=r,this.key=t,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let r=new Set,t=o=>{if(R(o))switch(o.type){case"path":o.path[0]==="Apis"&&r.add(o.path[1]);break;case"value":break;case"record":o.entries.forEach(n=>t(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>t(n.formula));break;case"switch":o.cases.forEach(n=>{t(n.condition),t(n.formula)});break}};return t(this.api.autoFetch),t(this.api.url),Object.values(this.api.path??{}).forEach(o=>t(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>t(o.formula)),_(this.api.headers)?t(this.api.headers):Object.values(this.api.headers??{}).forEach(o=>{t(o)}),t(this.api.body),this._apiReferences=r,r}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get proxy(){return this.api.proxy}get queryParams(){return this.api.queryParams}get headers(){return this.api.headers}get method(){return this.api.method}get body(){return this.api.body}get auth(){return this.api.auth}get throttle(){return this.api.throttle}get debounce(){return this.api.debounce}get onCompleted(){return this.api.onCompleted}get onFailed(){return this.api.onFailed}*formulasInApi(){let r=this.api,t=this.key;yield*D({formula:r.autoFetch,globalFormulas:this.globalFormulas,path:["apis",t,"autoFetch"]}),yield*D({formula:r.url,globalFormulas:this.globalFormulas,path:["apis",t,"url"]});for(let[o,n]of Object.entries(r.path??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"path",o,"formula"]});for(let[o,n]of Object.entries(r.queryParams??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"queryParams",o,"formula"]});if(_(r.headers))yield*D({formula:r.headers,globalFormulas:this.globalFormulas,path:["apis",t,"headers"]});else for(let[o,n]of Object.entries(r.headers??{}))yield*D({formula:n,globalFormulas:this.globalFormulas,path:["apis",t,"headers",o]});yield*D({formula:r.body,globalFormulas:this.globalFormulas,path:["apis",t,"body"]});for(let[o,n]of Object.entries(r.onCompleted?.actions??{}))yield*I({action:n,globalFormulas:this.globalFormulas,path:["apis",t,"onCompleted","actions",o]});for(let[o,n]of Object.entries(r.onFailed?.actions??{}))yield*I({action:n,globalFormulas:this.globalFormulas,path:["apis",t,"onFailed","actions",o]})}};function*B(e,r=[]){if(R(e))switch(yield[r,e],e.type){case"SetVariable":case"SetURLParameter":case"TriggerEvent":case"TriggerWorkflow":break;case"Fetch":for(let[t,o]of Object.entries(e.onSuccess?.actions??{}))yield*B(o,[...r,"onSuccess","actions",t]);for(let[t,o]of Object.entries(e.onError?.actions??{}))yield*B(o,[...r,"onError","actions",t]);for(let[t,o]of Object.entries(e.onMessage?.actions??{}))yield*B(o,[...r,"onMessage","actions",t]);break;case"Custom":case void 0:for(let[t,o]of Object.entries(e.events??{}))for(let[n,a]of Object.entries(o?.actions??{}))yield*B(a,[...r,"events",t,"actions",n]);break;case"Switch":for(let[t,o]of e.cases.entries())for(let[n,a]of Object.entries(o?.actions??{}))yield*B(a,[...r,"cases",t,"actions",n]);for(let[t,o]of Object.entries(e.default.actions))yield*B(o,[...r,"default","actions",t]);break}}var ne=class{api;_apiReferences;key;globalFormulas;constructor(r,t,o){this.api=r,this.key=t,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let r=new Set,t=o=>{if(R(o))switch(o.type){case"path":o.path[0]==="Apis"&&r.add(o.path[1]);break;case"value":break;case"record":o.entries.forEach(n=>t(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>t(n.formula));break;case"switch":o.cases.forEach(n=>{t(n.condition),t(n.formula)});break}};return t(this.api.autoFetch),t(this.api.url),Object.values(this.api.path??{}).forEach(o=>t(o.formula)),Object.values(this.api.headers??{}).forEach(o=>t(o.formula)),t(this.api.body),Object.values(this.api.inputs).forEach(o=>t(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>{t(o.formula)}),t(this.api.server?.proxy?.enabled?.formula),t(this.api.server?.ssr?.enabled?.formula),t(this.api.client?.debounce?.formula),Object.values(this.api.redirectRules??{}).forEach(o=>{t(o.formula)}),t(this.api.isError?.formula),t(this.api.timeout?.formula),r.delete(this.key),this._apiReferences=r,r}get version(){return this.api.version}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get headers(){return this.api.headers}set headers(r){this.api.headers=r}get method(){return this.api.method}get body(){return this.api.body}get inputs(){return this.api.inputs}get queryParams(){return this.api.queryParams}get server(){return this.api.server}get client(){return this.api.client}get redirectRules(){return this.api.redirectRules}get isError(){return this.api.isError}get timeout(){return this.api.timeout}get"@nordcraft/metadata"(){return this.api["@nordcraft/metadata"]}*formulasInApi(){let r=this.api,t=this.key;for(let[o,n]of Object.entries(this.api.inputs))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"inputs",o,"formula"]});yield*D({formula:r.autoFetch,globalFormulas:this.globalFormulas,path:["apis",t,"autoFetch"]}),yield*D({formula:r.url,globalFormulas:this.globalFormulas,path:["apis",t,"url"]});for(let[o,n]of Object.entries(r.path??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"path",o,"formula"]});for(let[o,n]of Object.entries(r.queryParams??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"queryParams",o,"formula"]}),yield*D({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",t,"queryParams",o,"enabled"]});for(let[o,n]of Object.entries(r.headers??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"headers",o,"formula"]}),yield*D({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",t,"headers",o,"enabled"]});yield*D({formula:r.body,globalFormulas:this.globalFormulas,path:["apis",t,"body"]});for(let[o,n]of Object.entries(r.client?.onCompleted?.actions??{}))yield*I({action:n,globalFormulas:this.globalFormulas,path:["apis",t,"client","onCompleted","actions",o]});for(let[o,n]of Object.entries(r.client?.onFailed?.actions??{}))yield*I({action:n,globalFormulas:this.globalFormulas,path:["apis",t,"client","onFailed","actions",o]});yield*D({formula:r.client?.debounce?.formula,globalFormulas:this.globalFormulas,path:["apis",t,"client","debounce","formula"]});for(let[o,n]of Object.entries(r.client?.onMessage?.actions??{}))yield*I({action:n,globalFormulas:this.globalFormulas,path:["apis",t,"client","onMessage","actions",o]});for(let[o,n]of Object.entries(r.redirectRules??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"redirectRules",o,"formula"]});yield*D({formula:r.isError?.formula,globalFormulas:this.globalFormulas,path:["apis",t,"isError","formula"]}),yield*D({formula:r.timeout?.formula,globalFormulas:this.globalFormulas,path:["apis",t,"timeout","formula"]}),yield*D({formula:r.server?.proxy?.enabled.formula,globalFormulas:this.globalFormulas,path:["apis",t,"server","proxy","enabled","formula"]}),yield*D({formula:r.server?.ssr?.enabled?.formula,globalFormulas:this.globalFormulas,path:["apis",t,"server","ssr","enabled","formula"]})}*actionModelsInApi(){for(let[r,t]of Object.entries(this.api.client?.onCompleted?.actions??{}))yield*B(t,["apis",this.key,"client","onCompleted","actions",r]);for(let[r,t]of Object.entries(this.api.client?.onFailed?.actions??{}))yield*B(t,["apis",this.key,"client","onFailed","actions",r]);for(let[r,t]of Object.entries(this.api.client?.onMessage?.actions??{}))yield*B(t,["apis",this.key,"client","onData","actions",r])}};var ae=e=>e instanceof Z?!0:!("version"in e),Gt=({api:e,formulaContext:r,baseUrl:t,defaultHeaders:o})=>{let n=Zi(e,r,t),a=el({api:e,formulaContext:r,defaultHeaders:o});return{url:n,requestSettings:a}},Zi=(e,r,t)=>{let o="",n=new URLSearchParams,a,s=C(e.url,r);if(["string","number"].includes(typeof s)){let i=typeof s=="number"?String(s):s;try{a=new URL(i,t),o=a.pathname,n=a.searchParams}catch{}}let l=rl(e.path,r),u=`${o}${l.length>0&&!o.endsWith("/")?"/":""}${l}`,m=new URLSearchParams([...n,...tl(e.queryParams,r)]),v=[...m.entries()].length>0?`?${m.toString()}`:"";if(a){let i=new URL(a.origin,t);return i.pathname=u,i.search=m.toString(),i}else return new URL(`${u}${v}`,t)},Yi=[q.POST,q.DELETE,q.PUT,q.PATCH,q.OPTIONS],Xi=(e,r,t)=>{if(e.timeout){let o=C(e.timeout.formula,t);typeof o=="number"&&!Number.isNaN(o)&&o>0&&(r.signal=AbortSignal.timeout(o))}},el=({api:e,formulaContext:r,defaultHeaders:t})=>{let o=Object.values(q).includes(e.method)?e.method:q.GET,n=ol({apiHeaders:e.headers,formulaContext:r,defaultHeaders:t}),a=nl({api:e,formulaContext:r,headers:n,method:o});n.get("content-type")==="multipart/form-data"&&n.delete("content-type");let s={method:o,headers:n,body:a};return Xi(e,s,r),s},rl=(e,r)=>oe(e??{},([t,o])=>o.index).map(([t,o])=>C(o.formula,r)).join("/"),tl=(e,r)=>{let t=new URLSearchParams;return Object.entries(e??{}).forEach(([o,n])=>{if(!(R(n.enabled)?C(n.enabled,r):!0))return;let s=C(n.formula,r);if(R(s))if(Array.isArray(s))s.forEach(l=>t.append(o,String(l)));else if(M(s)){let l=(u,m)=>{Object.entries(u).forEach(([v,i])=>{if(!Array.isArray(i)&&M(i))return l(i,`${m}[${v}]`);t.set(`${m}[${v}]`,String(i))})};l(s,o)}else t.set(o,String(s))}),t},ol=({apiHeaders:e,formulaContext:r,defaultHeaders:t})=>{let o=new Headers(t);return Object.entries(e??{}).forEach(([n,a])=>{if(R(a.enabled)?C(a.enabled,r):!0){let l=C(a.formula,r);if(R(l))try{o.set(n.trim(),(typeof l=="string"?l:String(l)).trim())}catch{}}}),o};var Qt=(e,r)=>zt(JSON.stringify({url:e.href,method:r.method,headers:H(Object.fromEntries(Object.entries(r.headers??{})),["host","cookie"]),body:r.body??null})),Zt=({apiName:e,response:r,formulaContext:t,errorFormula:o,performance:n})=>{let a=o?C(o.formula,{component:t.component,package:t.package,toddle:t.toddle,data:{Attributes:{},Args:t.data.Args,Apis:{[e]:{isLoading:!1,data:r.body,error:null,response:{status:r.status,headers:r.headers,performance:n}}}},env:t.env}):null;return a==null?!r.ok:x(a)},nl=({api:e,formulaContext:r,headers:t,method:o})=>{if(!e.body||!Yi.includes(o))return;let n=C(e.body,r);if(n)switch(t.get("content-type")){case"application/x-www-form-urlencoded":return typeof n=="object"&&n!==null?Object.entries(n).map(([a,s])=>Array.isArray(s)?s.map(l=>`${encodeURIComponent(a)}=${encodeURIComponent(l)}`).join("&"):`${encodeURIComponent(a)}=${encodeURIComponent(String(s))}`).join("&"):"";case"multipart/form-data":{let a=new FormData;return typeof n=="object"&&n!==null&&Object.entries(n).forEach(([s,l])=>{a.set(s,l)}),a}case"text/plain":return String(n);default:return JSON.stringify(n)}},se=(e,r)=>new CustomEvent(e,{detail:r}),al=(e,r)=>{let t=e.apiReferences.has(r.name),o=r.apiReferences.has(e.name);return t===o?0:t?1:-1},ie=e=>{let r=new Map,t=(o,n)=>{let a=r.get(n);return a||(a=o.version===2?new ne(o,n,{formulas:{},packages:{}}):new Z(o,n,{formulas:{},packages:{}}),r.set(n,a)),a};return[...e].sort(([o,n],[a,s])=>{let l=t(n,o),u=t(s,a);return al(l,u)})};var sl=(e,r)=>{let t=r.length;for(;t;)e=e*33^r.charCodeAt(--t);return e},Xt=e=>sl(5381,e),il=/(a)(d)/gi;var Yt=e=>String.fromCharCode(e+(e>25?39:97));function eo(e){let r="",t;for(t=Math.abs(e);t>52;t=t/52|0)r=Yt(t%52)+r;return(Yt(t%52)+r).replace(il,"$1-$2")}var le=e=>eo(Xt(JSON.stringify(e))),ue=(e,r=!1)=>{let t=e.trim().replace(/\s+/g,"-");return r&&(t=t.replace(/[^a-zA-Z0-9-_]/g,o=>`\\${o}`)),/^[^a-zA-Z]/.test(t)&&(t=`_${t}`),t};var Ft=`
1
+ var Oo=Object.create;var ye=Object.defineProperty;var Ro=Object.getOwnPropertyDescriptor;var Do=Object.getOwnPropertyNames;var ko=Object.getPrototypeOf,To=Object.prototype.hasOwnProperty;var xo=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),p=(e,r)=>{for(var t in r)ye(e,t,{get:r[t],enumerable:!0})},No=(e,r,t,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Do(r))!To.call(e,n)&&n!==t&&ye(e,n,{get:()=>r[n],enumerable:!(o=Ro(r,n))||o.enumerable});return e};var ee=(e,r,t)=>(t=e!=null?Oo(ko(e)):{},No(r||!e||!e.__esModule?ye(t,"default",{value:e,enumerable:!0}):t,e));var G=xo((Bl,Vt)=>{"use strict";Vt.exports=function e(r,t){if(r===t)return!0;if(r&&t&&typeof r=="object"&&typeof t=="object"){if(r.constructor!==t.constructor)return!1;var o,n,a;if(Array.isArray(r)){if(o=r.length,o!=t.length)return!1;for(n=o;n--!==0;)if(!e(r[n],t[n]))return!1;return!0}if(r.constructor===RegExp)return r.source===t.source&&r.flags===t.flags;if(r.valueOf!==Object.prototype.valueOf)return r.valueOf()===t.valueOf();if(r.toString!==Object.prototype.toString)return r.toString()===t.toString();if(a=Object.keys(r),o=a.length,o!==Object.keys(t).length)return!1;for(n=o;n--!==0;)if(!Object.prototype.hasOwnProperty.call(t,a[n]))return!1;for(n=o;n--!==0;){var s=a[n];if(!e(r[s],t[s]))return!1}return!0}return r!==r&&t!==t}});var $e={};p($e,{clearLocalStorage:()=>Fe,clearSessionStorage:()=>ve,copyToClipboard:()=>be,deleteFromLocalStorage:()=>je,deleteFromSessionStorage:()=>Ae,focus:()=>xe,gotToURL:()=>Te,interval:()=>Se,logToConsole:()=>Ce,preventDefault:()=>we,saveToLocalStorage:()=>Oe,saveToSessionStorage:()=>Re,setSessionCookies:()=>De,share:()=>Ee,sleep:()=>ke,stopPropagation:()=>Ne});var be={};p(be,{default:()=>Po});var $o=([e])=>{if(typeof e!="string")throw new Error("Input value must be a string");return navigator.clipboard.writeText(e)},Po=$o;var ve={};p(ve,{default:()=>Io});var Lo=async function(){window.sessionStorage.clear()},Io=Lo;var Ae={};p(Ae,{default:()=>qo});var Mo=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.removeItem(e)},qo=Mo;var Ce={};p(Ce,{default:()=>Uo});var Bo=([e,r])=>{console.log(e,r)},Uo=Bo;var Ee={};p(Ee,{default:()=>Ho});var R=e=>e!=null,M=e=>typeof e=="object"&&e!==null,x=e=>e!==!1&&e!==void 0&&e!==null;var _o=([e,r,t])=>{let o=a=>R(a)&&typeof a=="string";if(!o(e)&&!o(r)&&!o(t))throw new Error("Either url, text or title must be provided");let n={};if(o(r)&&(n.title=r),o(t)&&(n.text=t),o(e)&&(n.url=e),R(navigator.share)&&navigator.canShare(n))return navigator.share(n)},Ho=_o;var Se={};p(Se,{default:()=>Ko});var Vo=([e],r)=>{let t=Number(e);if(!R(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setInterval(()=>r.triggerActionEvent("tick",null),t);r.abortSignal.addEventListener("abort",()=>{clearInterval(o)})},Ko=Vo;var we={};p(we,{default:()=>Jo});var Wo=(e,r,t)=>{t?.preventDefault?.()},Jo=Wo;var Fe={};p(Fe,{default:()=>Go});var zo=async function(){window.localStorage.clear()},Go=zo;var je={};p(je,{default:()=>Zo});var Qo=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.removeItem(e)},Zo=Qo;var Oe={};p(Oe,{default:()=>Xo});var Yo=async function([e,r]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.setItem(e,JSON.stringify(r))},Xo=Yo;var Re={};p(Re,{default:()=>rn});var en=async function([e,r]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.setItem(e,JSON.stringify(r))},rn=en;var De={};p(De,{default:()=>on});var tn=async function([e,r],t){let o=[typeof e=="string"?`name=access_token&value=${encodeURIComponent(e)}`:void 0,isNaN(Number(r))?void 0:`ttl=${r}`].filter(a=>a).join("&"),n=await fetch(`/.toddle/cookies/set-session-cookie?${o}`);n.ok?t.triggerActionEvent("Success",void 0):t.triggerActionEvent("Error",new Error(await n.text()))},on=tn;var ke={};p(ke,{default:()=>an});var nn=([e],r)=>{let t=Number(e);if(!R(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setTimeout(()=>r.triggerActionEvent("tick",null),t);r.abortSignal.addEventListener("abort",()=>{clearTimeout(o)})},an=nn;var Te={};p(Te,{default:()=>ln});var sn=([e],r)=>{typeof e=="string"&&(r.env.runtime==="preview"?window.parent?.postMessage({type:"blockedNavigation",url:e},"*"):window.location.href=e)},ln=sn;var xe={};p(xe,{default:()=>dn});var un=([e])=>{e instanceof HTMLElement&&e.focus()},dn=un;var Ne={};p(Ne,{default:()=>fn});var cn=(e,r,t)=>{t?.stopPropagation?.()},fn=cn;var wt={};p(wt,{absolute:()=>Mr,add:()=>ar,append:()=>ct,boolean:()=>Kr,branchName:()=>yr,canShare:()=>it,capitalize:()=>Ct,clamp:()=>ft,concatenate:()=>Ue,currentURL:()=>br,dateFromString:()=>At,dateFromTimestamp:()=>Vr,decodeBase64:()=>zr,decodeURIComponent:()=>hr,defaultTo:()=>Me,deleteKey:()=>Et,divide:()=>Ve,drop:()=>at,dropLast:()=>sr,encodeBase64:()=>fr,encodeJSON:()=>kr,encodeURIComponent:()=>xr,entries:()=>Jr,equals:()=>lr,every:()=>qr,filter:()=>Xr,find:()=>nr,findIndex:()=>We,findLast:()=>Wr,first:()=>mt,flatten:()=>cr,formatDate:()=>ze,formatNumber:()=>Ie,fromEntries:()=>Yr,get:()=>Ge,getCookie:()=>et,getElementById:()=>pt,getFromLocalStorage:()=>Er,getFromSessionStorage:()=>ir,getHttpOnlyCookie:()=>Cr,greaterOrEqueal:()=>_e,greaterThan:()=>Je,groupBy:()=>jr,includes:()=>Qr,indexOf:()=>He,isServer:()=>Gr,join:()=>Ar,json:()=>pr,keyBy:()=>Ir,languages:()=>Ur,last:()=>tt,lastIndexOf:()=>Rr,lessOrEqual:()=>tr,lessThan:()=>Ye,logarithm:()=>ur,lowercase:()=>$r,map:()=>ut,matches:()=>vt,max:()=>Fr,min:()=>Or,minus:()=>dt,modulo:()=>gr,multiply:()=>rt,not:()=>lt,notEqual:()=>ot,now:()=>vr,number:()=>yt,parseJSON:()=>rr,parseURL:()=>Qe,power:()=>qe,prepend:()=>Le,randomNumber:()=>Br,range:()=>gt,reduce:()=>Sr,replaceAll:()=>or,reverse:()=>dr,round:()=>Dr,roundDown:()=>_r,roundUp:()=>nt,set:()=>Be,shuffle:()=>Ke,size:()=>ht,some:()=>Pr,sort_by:()=>er,split:()=>Lr,squareRoot:()=>Nr,startsWith:()=>mr,string:()=>Tr,sum:()=>St,take:()=>bt,takeLast:()=>wr,timestamp:()=>Zr,trim:()=>Xe,typeOf:()=>Pe,unique:()=>st,uppercase:()=>Hr,userAgent:()=>Ze});var Pe={};p(Pe,{default:()=>mn});var pn=([e])=>{switch(typeof e){case"number":return isNaN(e)?null:"Number";case"string":return"String";case"boolean":return"Boolean";case"object":return Array.isArray(e)?"Array":e===null?"Null":"Object";case"undefined":return"Null";default:return null}},mn=pn;var Le={};p(Le,{default:()=>gn});var hn=([e,r])=>Array.isArray(e)?[r,...e]:null,gn=hn;var Ie={};p(Ie,{default:()=>bn});var yn=([e,r,t])=>{if(typeof e!="number"||Number.isNaN(e))return null;let o=typeof r=="string"&&r.length>0||Array.isArray(r)&&r.every(F=>typeof F=="string")?r:void 0;if(!t||typeof t!="object")return Intl.NumberFormat(o).format(e);let n=(F,f)=>typeof F=="string"&&(f?.includes(F)??!0)?F:void 0,a=t,s=n(a.style,["decimal","currency","percent","unit"]),l=typeof a.currency=="string"&&a.currency.length===3?a.currency:void 0;if(s==="currency"&&typeof l!="string")return null;let u=n(a.currencyDisplay,["code","symbol","narrowSymbol","name"]),m=typeof a.unit=="string"?a.unit:void 0;if(s==="unit"&&typeof m!="string")return null;let v=n(a.unitDisplay,["short","narrow","long"]),i=typeof a.minimumIntegerDigits=="number"&&a.minimumIntegerDigits>=1&&a.minimumIntegerDigits<=21?a.minimumIntegerDigits:void 0,d=typeof a.minimumFractionDigits=="number"&&a.minimumFractionDigits>=0&&a.minimumFractionDigits<=100?a.minimumFractionDigits:void 0,h=typeof a.maximumFractionDigits=="number"&&a.maximumFractionDigits>=0&&a.maximumFractionDigits<=100?a.maximumFractionDigits:void 0,E=typeof a.minimumSignificantDigits=="number"&&a.minimumSignificantDigits>=1&&a.minimumSignificantDigits<=21?a.minimumSignificantDigits:void 0,g=typeof a.maximumSignificantDigits=="number"&&a.maximumSignificantDigits>=1&&a.maximumSignificantDigits<=21?a.maximumSignificantDigits:void 0,w=n(a.notation,["standard","scientific","engineering","compact"]),b=n(a.compactDisplay,["short","long"]),j=["always","auto","min2"],O=typeof a.useGrouping=="boolean"?a.useGrouping:n(a.useGrouping,j);return new Intl.NumberFormat(o,{style:s,currency:l,currencyDisplay:u,unit:m,unitDisplay:v,minimumIntegerDigits:i,minimumFractionDigits:d,maximumFractionDigits:h,minimumSignificantDigits:E,maximumSignificantDigits:g,notation:w,compactDisplay:b,useGrouping:O}).format(e)},bn=yn;var Me={};p(Me,{default:()=>An});var vn=e=>{for(let r of e)if(x(r))return r;return null},An=vn;var qe={};p(qe,{default:()=>En});var Cn=([e,r])=>isNaN(Number(e))||isNaN(Number(r))?null:Number(e)**Number(r),En=Cn;var Be={};p(Be,{default:()=>Sn});var Nt=([e,r,t],o)=>{if(typeof r!="string"&&typeof r!="number"&&!Array.isArray(r))return null;let[n,...a]=Array.isArray(r)?r:[r];if(M(e)){let s=Array.isArray(e)?[...e]:{...e};return s[n]=a.length===0?t:Nt([s[n],a,t],o),s}return null},Sn=Nt;var Ue={};p(Ue,{default:()=>Fn});var wn=e=>{if(e.every(Array.isArray)){let r=[];for(let t of e)r.push(...t);return r}return e.every(M)?Object.assign({},...e):e.join("")},Fn=wn;var _e={};p(_e,{default:()=>On});var jn=([e,r])=>e>=r,On=jn;var He={};p(He,{default:()=>Dn});var Rn=([e,r])=>typeof e=="string"?e.indexOf(r):Array.isArray(e)?e.findIndex(t=>globalThis.toddle.isEqual(t,r)):null,Dn=Rn;var Ve={};p(Ve,{default:()=>Tn});var kn=([e,r])=>isNaN(Number(e))||isNaN(Number(r))?null:Number(e)/Number(r),Tn=kn;var Ke={};p(Ke,{default:()=>Nn});var xn=([e])=>Array.isArray(e)?$t(e):typeof e=="string"?$t(e.split("")).join(""):null;function $t(e){let r=[...e];for(let t=r.length-1;t>0;t--){let o=Math.floor(Math.random()*(t+1));[r[t],r[o]]=[r[o],r[t]]}return r}var Nn=xn;var We={};p(We,{default:()=>$n,getArgumentInputData:()=>Pn,handler:()=>Pt});var Pt=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.findIndex((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.entries(e).findIndex(([t,o])=>r({key:t,value:o})):null,$n=Pt,Pn=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t};var Je={};p(Je,{default:()=>In});var Ln=([e,r])=>e>r,In=Ln;var ze={};p(ze,{default:()=>qn});var Mn=([e,r,t])=>{if(!e||!(e instanceof Date))return null;let o=typeof r=="string"&&r.length>0||Array.isArray(r)&&r.every(F=>typeof F=="string")?r:void 0;if(!t||typeof t!="object")return Intl.DateTimeFormat(o).format(e);let n=(F,f)=>typeof F=="string"&&(f?.includes(F)??!0)?F:void 0,a=t,s=n(a.dateStyle,["full","long","medium","short"]),l=n(a.timeStyle,["full","long","medium","short"]),u=n(a.calendar),m=n(a.weekday,["long","short","narrow"]),v=n(a.era,["long","short","narrow"]),i=n(a.year,["numeric","2-digit"]),d=n(a.month,["long","short","narrow","numeric","2-digit"]),h=n(a.day,["numeric","2-digit"]),E=n(a.hour,["numeric","2-digit"]),g=n(a.minute,["numeric","2-digit"]),w=n(a.second,["numeric","2-digit"]),b=n(a.timeZoneName,["long","short","shortOffset","longOffset","shortGeneric","longGeneric"]),j=n(a.timeZone),O=a.hour12===!0?!0:a.hour12===!1?!1:void 0;return Intl.DateTimeFormat(o,{dateStyle:s,timeStyle:l,calendar:u,weekday:m,era:v,year:i,month:d,day:h,hour:E,minute:g,second:w,timeZoneName:b,timeZone:j,hour12:O}).format(e)},qn=Mn;var Ge={};p(Ge,{default:()=>Un});var Bn=([e,r])=>{if(typeof e=="string")return e[Number(r)];let t=(o,n)=>{if(n.length===0)return o;let[a,...s]=n;return t(o?.[String(a)],s)};return t(e,Array.isArray(r)?r:[r])},Un=Bn;var Qe={};p(Qe,{default:()=>Hn});var _n=([e,r])=>{if(typeof e!="string")return null;try{let{hostname:t,searchParams:o,pathname:n,hash:a,href:s,protocol:l,port:u,origin:m}=new URL(e,typeof r=="string"?r:void 0);return{hostname:t,searchParams:Object.fromEntries(o),path:n.split("/").filter((v,i)=>i!==0||v!==""),hash:a.replace("#",""),href:s,protocol:l,port:u,origin:m}}catch{return null}},Hn=_n;var Ze={};p(Ze,{default:()=>Kn});var Vn=(e,{env:r})=>r.isServer?r.request?.headers["user-agent"]??null:window.navigator.userAgent,Kn=Vn;var Ye={};p(Ye,{default:()=>Jn});var Wn=([e,r])=>e<r,Jn=Wn;var Xe={};p(Xe,{default:()=>Gn});var zn=([e])=>typeof e!="string"?null:e.trim(),Gn=zn;var er={};p(er,{default:()=>Zn,getArgumentInputData:()=>Yn});var Qn=([e,r,t])=>{if(!Array.isArray(e)||typeof r!="function"||typeof t!="boolean")return null;let o=t?1:-1;return[...e].sort((n,a)=>{let s=r({item:n}),l=r({item:a});if(Array.isArray(s)&&Array.isArray(l)){for(let u in s)if(s[u]!==l[u])return(s[u]>l[u]?1:-1)*o;return 0}return s===l?0:(s>l?1:-1)*o})},Zn=Qn,Yn=([e],r,t)=>r===1&&Array.isArray(e)?{...t,Args:{item:e[0]}}:t;var rr={};p(rr,{default:()=>ra});var Xn=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:.\d{1,3})?Z$/;function z(e){return JSON.parse(e,(r,t)=>typeof t=="string"&&t.length===24&&Xn.test(t)?new Date(t):t)}var ea=([e])=>{if(typeof e!="string")return null;try{return z(e)}catch{return null}},ra=ea;var tr={};p(tr,{default:()=>oa});var ta=([e,r])=>e<=r,oa=ta;var or={};p(or,{default:()=>aa});var na=([e,r,t])=>typeof e!="string"||typeof r!="string"?null:e.replaceAll(r,String(t)),aa=na;var nr={};p(nr,{default:()=>sa,getArgumentInputData:()=>ia,handler:()=>Lt});var Lt=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.find((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.entries(e).find(([t,o])=>r({key:t,value:o}))?.[1]:null,sa=Lt,ia=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t};var ar={};p(ar,{default:()=>ua});var la=e=>!Array.isArray(e)||e.some(r=>r===null||typeof r!="number")?null:e.reduce((r,t)=>r+Number(t),0),ua=la;var sr={};p(sr,{default:()=>ca});var da=([e,r])=>typeof r!="number"||isNaN(r)?null:Array.isArray(e)?e.slice(0,e.length-r):typeof e=="string"?e.substring(0,e.length-r):null,ca=da;var ir={};p(ir,{default:()=>pa});var fa=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let r=window.sessionStorage.getItem(e);if(r===null)return r;try{return JSON.parse(r)}catch{return r}},pa=fa;var lr={};p(lr,{default:()=>ha});var ma=([e,r])=>globalThis.toddle.isEqual(e,r),ha=ma;var ur={};p(ur,{default:()=>ya});var ga=([e])=>typeof e!="number"||Number.isNaN(e)||e<0?null:Math.log(e),ya=ga;var dr={};p(dr,{default:()=>va});var ba=([e])=>Array.isArray(e)?[...e].reverse():null,va=ba;var cr={};p(cr,{default:()=>Ca});var Aa=([e])=>Array.isArray(e)?e.flat():null,Ca=Aa;var fr={};p(fr,{default:()=>Sa});var Ea=([e])=>typeof e!="string"?null:btoa(e),Sa=Ea;var pr={};p(pr,{default:()=>Fa});var wa=([e,r])=>{let t=isNaN(Number(r))?0:Number(r);return JSON.stringify(e,null,t)},Fa=wa;var mr={};p(mr,{default:()=>Oa});var ja=([e,r])=>typeof e!="string"||typeof r!="string"?null:e.startsWith(r),Oa=ja;var hr={};p(hr,{default:()=>Da});var Ra=([e])=>typeof e!="string"?null:decodeURIComponent(e),Da=Ra;var gr={};p(gr,{default:()=>Ta});var ka=([e,r])=>isNaN(Number(e))||isNaN(Number(r))?null:Number(e)%Number(r),Ta=ka;var yr={};p(yr,{default:()=>Na});var xa=(e,r)=>r.env.branchName,Na=xa;var br={};p(br,{default:()=>Pa});var $a=(e,{env:r})=>r.isServer?r.request.url:window?.location.href??null,Pa=$a;var vr={};p(vr,{default:()=>Ia});var La=()=>new Date,Ia=La;var Ar={};p(Ar,{default:()=>qa});var Ma=([e,r])=>Array.isArray(e)?e.join(String(r)):null,qa=Ma;var Cr={};p(Cr,{default:()=>_a});var It=(e,r)=>`{{ ${Ba[e]}.${r} }}`,Ba={cookies:"cookies"};var Ua=([e])=>!e||typeof e!="string"?null:It("cookies",e),_a=Ua;var Er={};p(Er,{default:()=>Va});var Ha=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let r=window.localStorage.getItem(e);if(r===null)return r;try{return JSON.parse(r)}catch{return r}},Va=Ha;var Sr={};p(Sr,{default:()=>Wa,getArgumentInputData:()=>Ja});var Ka=([e,r,t])=>typeof r!="function"?null:Array.isArray(e)?e.reduce((o,n,a)=>r({result:o,item:n,index:a}),t):e&&typeof e=="object"?Object.entries(e).reduce((o,[n,a])=>r({result:o,key:n,value:a}),t):null,Wa=Ka,Ja=([e,r,t],o,n)=>{if(o!==1)return n;if(Array.isArray(e))return{...n,Args:{item:e[0],index:0,result:t}};if(e&&typeof e=="object"){let[a]=Object.entries(e);if(a)return{...n,Args:{key:a[0],value:a[1],result:t}}}return n};var wr={};p(wr,{default:()=>Ga});var za=([e,r])=>typeof r!="number"?null:Array.isArray(e)?e.slice(e.length-r):typeof e=="string"?e.substring(e.length-r):null,Ga=za;var Fr={};p(Fr,{default:()=>Za});var Qa=e=>Math.max(...e.map(Number)),Za=Qa;var jr={};p(jr,{default:()=>Ya,getArgumentInputData:()=>Xa,handler:()=>Mt});var Mt=([e,r])=>{if(typeof r!="function"||!e||typeof e!="object"||!Array.isArray(e))return null;let t={};for(let o in e){let n=e[o],a=String(r({item:n,index:o}));t[a]=t[a]??[],t[a].push(n)}return t},Ya=Mt,Xa=([e],r,t)=>r===1&&Array.isArray(e)?{...t,Args:{item:e[0],index:0}}:t;var Or={};p(Or,{default:()=>rs});var es=e=>Math.min(...e.map(Number)),rs=es;var Rr={};p(Rr,{default:()=>os});var ts=([e,r])=>typeof e=="string"?e.lastIndexOf(r):Array.isArray(e)?e.findLastIndex(t=>globalThis.toddle.isEqual(t,r)):null,os=ts;var Dr={};p(Dr,{default:()=>as});var ns=([e,r])=>{if(typeof e!="number"||typeof r!="number")return null;let t=Math.max(1,Math.pow(10,r));return Math.round(e*t)/t},as=ns;var kr={};p(kr,{default:()=>is});var ss=([e,r])=>typeof r!="number"?null:JSON.stringify(e,null,r),is=ss;var Tr={};p(Tr,{default:()=>us});var ls=([e])=>String(e),us=ls;var xr={};p(xr,{default:()=>cs});var ds=([e])=>typeof e!="string"?null:encodeURIComponent(e),cs=ds;var Nr={};p(Nr,{default:()=>ps});var fs=([e])=>typeof e!="number"?null:Math.sqrt(e),ps=fs;var $r={};p($r,{default:()=>hs});var ms=([e])=>typeof e!="string"?null:e.toLocaleLowerCase(),hs=ms;var Pr={};p(Pr,{default:()=>gs,getArgumentInputData:()=>ys,handler:()=>qt});var qt=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.some((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.entries(e).some(([t,o])=>r({key:t,value:o})):null,gs=qt,ys=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t};var Lr={};p(Lr,{default:()=>vs});var bs=([e,r])=>typeof e!="string"||typeof r!="string"?null:e.split(r),vs=bs;var Ir={};p(Ir,{default:()=>As,getArgumentInputData:()=>Cs,handler:()=>Bt});var Bt=([e,r])=>{if(typeof r!="function"||!e||typeof e!="object")return null;let t=Array.isArray(e)?e:Object.entries(e),o={};for(let n=0;n<t.length;n++){let a=t[n],s=String(r({item:a,i:n}));o[s]=a}return o},As=Bt,Cs=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{value:o[1],key:o[0]}}}return t};var Mr={};p(Mr,{default:()=>Ss});var Es=([e])=>typeof e!="number"?null:Math.abs(e),Ss=Es;var qr={};p(qr,{default:()=>ws,getArgumentInputData:()=>Fs,handler:()=>Ut});var Ut=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.every((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.entries(e).every(([t,o])=>r({key:t,value:o})):null,ws=Ut,Fs=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t};var Br={};p(Br,{default:()=>Os});var js=()=>Math.random(),Os=js;var Ur={};p(Ur,{default:()=>Ds});var Rs=(e,{env:r})=>r.isServer?r.request?.headers["accept-language"]?.split(",").map(t=>t.split(";")[0])??[]:window.navigator.languages,Ds=Rs;var _r={};p(_r,{default:()=>Ts});var ks=([e,r])=>{if(typeof e!="number"||typeof r!="number")return null;let t=Math.max(1,Math.pow(10,r));return Math.floor(e*t)/t},Ts=ks;var Hr={};p(Hr,{default:()=>Ns});var xs=([e])=>typeof e!="string"?null:e.toLocaleUpperCase(),Ns=xs;var Vr={};p(Vr,{default:()=>Ps});var $s=([e])=>typeof e=="number"?new Date(e):null,Ps=$s;var Kr={};p(Kr,{default:()=>Is});var Ls=([e])=>x(e),Is=Ls;var Wr={};p(Wr,{default:()=>Ms,getArgumentInputData:()=>qs,handler:()=>_t});var _t=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.findLast((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.entries(e).findLast(([t,o])=>r({key:t,value:o}))?.[1]:null,Ms=_t,qs=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t};var Jr={};p(Jr,{default:()=>Us});var Bs=([e])=>typeof e=="object"&&e!==null?Object.entries(e).map(([r,t])=>({key:r,value:t})):null,Us=Bs;var zr={};p(zr,{default:()=>Hs});var _s=([e])=>typeof e!="string"?null:atob(e),Hs=_s;var Gr={};p(Gr,{default:()=>Ks});var Vs=(e,r)=>r.env.isServer,Ks=Vs;var Qr={};p(Qr,{default:()=>Js});var Ws=([e,r])=>typeof e=="string"&&typeof r=="string"?e.includes(r):Array.isArray(e)?e.some(t=>globalThis.toddle.isEqual(t,r)):null,Js=Ws;var Zr={};p(Zr,{default:()=>Gs});var zs=([e])=>!e||!(e instanceof Date)?null:e.getTime(),Gs=zs;var Yr={};p(Yr,{default:()=>Zs});var Qs=([e])=>{if(Array.isArray(e)){let r={};for(let{key:t,value:o}of e)r[t]=o;return r}return null},Zs=Qs;var Xr={};p(Xr,{default:()=>Ys,getArgumentInputData:()=>Xs,handler:()=>Ht});var Ht=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.filter((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).filter(([t,o])=>r({key:t,value:o}))):Array.isArray(e)?e.filter((t,o)=>r({item:t,index:o})):null,Ys=Ht,Xs=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{value:o[1],key:o[0]}}}return t};var et={};p(et,{default:()=>ri});var ei=([e],{env:r,root:t})=>!e||typeof e!="string"?null:r.isServer?r.request.cookies[e]??null:t instanceof ShadowRoot?null:t.cookie.split("; ")?.find(o=>o.startsWith(`${e}=`))?.split("=")[1]??null,ri=ei;var rt={};p(rt,{default:()=>oi});var ti=e=>e.some(r=>isNaN(Number(r)))?null:e.reduce((r,t)=>r*t,1),oi=ti;var tt={};p(tt,{default:()=>ai});var ni=([e])=>typeof e=="string"||Array.isArray(e)?e[e.length-1]:null,ai=ni;var ot={};p(ot,{default:()=>ii});var si=([e,r])=>!globalThis.toddle.isEqual(e,r),ii=si;var nt={};p(nt,{default:()=>ui});var li=([e,r])=>{if(typeof e!="number"||typeof r!="number")return null;let t=Math.max(1,Math.pow(10,r));return Math.ceil(e*t)/t},ui=li;var at={};p(at,{default:()=>ci});var di=([e,r])=>typeof r!="number"||isNaN(r)?null:Array.isArray(e)?e.slice(r):typeof e=="string"?e.substring(r):null,ci=di;var st={};p(st,{default:()=>pi});var fi=([e])=>{if(!Array.isArray(e))return null;let r=new Set;return e.filter(t=>{let o=typeof t=="object"?JSON.stringify(t):t;return r.has(o)?!1:(r.add(o),!0)})},pi=fi;var it={};p(it,{default:()=>hi});var mi=([e,r,t])=>{if(!R(navigator.canShare))return!1;let o=a=>R(a)&&typeof a=="string";if(!o(e)&&!o(r)&&!o(t))return!1;let n={};return o(r)&&(n.title=r),o(t)&&(n.text=t),o(e)&&(n.url=e),navigator.canShare(n)},hi=mi;var lt={};p(lt,{default:()=>yi});var gi=([e])=>!x(e),yi=gi;var ut={};p(ut,{default:()=>Ai,getArgumentInputData:()=>vi});var bi=([e,r])=>typeof r!="function"?null:Array.isArray(e)?e.map((t,o)=>r({item:t,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([t,o])=>{let n=r({key:t,value:o});return"key"in n&&"value"in n?[n.key,n.value]:null})):null,vi=([e],r,t)=>{if(r===0)return t;if(Array.isArray(e))return{...t,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...t,Args:{key:o[0],value:o[1]}}}return t},Ai=bi;var dt={};p(dt,{default:()=>Ei});var Ci=([e,r])=>{let t=Number(e),o=Number(r);return isNaN(t)||isNaN(o)?null:t-o},Ei=Ci;var ct={};p(ct,{default:()=>wi});var Si=([e,r])=>Array.isArray(e)?[...e,r]:null,wi=Si;var ft={};p(ft,{default:()=>ji});var Fi=([e,r,t])=>typeof e!="number"||typeof r!="number"||typeof t!="number"?null:Math.min(Math.max(e,r),t),ji=Fi;var pt={};p(pt,{default:()=>Ri});var Oi=([e],{root:r})=>typeof e!="string"?null:r.getElementById(e),Ri=Oi;var mt={};p(mt,{default:()=>ki});var Di=([e])=>typeof e=="string"||Array.isArray(e)?e[0]:null,ki=Di;var ht={};p(ht,{default:()=>xi});var Ti=([e])=>Array.isArray(e)?e.length:M(e)?Object.keys(e).length:typeof e=="string"?e.length:null,xi=Ti;var gt={};p(gt,{default:()=>$i});var Ni=([e,r])=>typeof e!="number"||typeof r!="number"?null:e>r?[]:Array.from({length:r-e+1},(t,o)=>o+e),$i=Ni;var yt={};p(yt,{default:()=>Li});var Pi=([e])=>Number(e),Li=Pi;var bt={};p(bt,{default:()=>Mi});var Ii=([e,r])=>typeof r!="number"?null:Array.isArray(e)?e.slice(0,r):typeof e=="string"?e.substring(0,r):null,Mi=Ii;var vt={};p(vt,{default:()=>Bi});var qi=([e,r,t,o,n])=>{if(typeof e!="string"||typeof r!="string")return[];let a=[x(t)?"g":"",x(o)?"i":"",x(n)?"m":""].join(""),s=new RegExp(r,a);return e.match(s)??[]},Bi=qi;var At={};p(At,{default:()=>_i});var Ui=([e])=>typeof e=="string"?new Date(e):null,_i=Ui;var Ct={};p(Ct,{default:()=>Vi});var Hi=([e])=>typeof e!="string"?null:e.length===0?e:e[0].toLocaleUpperCase()+e.substring(1).toLocaleLowerCase(),Vi=Hi;var Et={};p(Et,{default:()=>Wi});var Ki=([e,r])=>{if(typeof e!="object"||e===null||!Array.isArray(r)&&typeof r!="string"&&typeof r!="number")return null;let t=(n,[a,...s])=>{if(Array.isArray(n)){let l=Number(a);return Number.isNaN(l)?n:s.length===0?n.filter((u,m)=>m!==Number(a)):n.map((u,m)=>m===l?t(n[l],s):u)}return M(n)?s.length===0?Object.fromEntries(Object.entries(n).filter(([l])=>l!==a)):{...n,[a]:t(n[a],s)}:null},o=Array.isArray(r)?r:[r];return t(e,o)},Wi=Ki;var St={};p(St,{default:()=>zi});var Ji=([e])=>{if(Array.isArray(e)){let r=0;for(let t of e){if(isNaN(t)||typeof t!="number")return null;r+=t}return r}return null},zi=Ji;var jo=ee(G(),1);var Kt=e=>{let r=e.toLocaleLowerCase().replaceAll(" ","");return r.includes("-")?r:`toddle-${r}`};var re=e=>Object.hasOwn(e,"formula");function _(e){return e&&typeof e=="object"&&typeof e.type=="string"}function C(e,r){if(!_(e))return e;try{switch(e.type){case"value":return e.value;case"path":{let t=r.data;for(let o of e.path)if(t&&typeof t=="object")t=t[o];else return null;return t}case"switch":{for(let t of e.cases)if(x(C(t.condition,r)))return C(t.formula,r);return C(e.default,r)}case"or":{for(let t of e.arguments)if(x(C(t.formula,r)))return!0;return!1}case"and":{for(let t of e.arguments)if(!x(C(t.formula,r)))return!1;return!0}case"function":{let t=e.package??r.package,o=(r.toddle??globalThis.toddle)?.getCustomFormula(e.name,t),n=(r.toddle??globalThis.toddle).getFormula(e.name);if(R(o)){r.package=t;let a=e.arguments.reduce((s,l,u)=>({...s,[l.name??`${u}`]:l.isFunction?m=>C(l.formula,{...r,data:{...r.data,Args:r.data.Args?{...m,"@toddle.parent":r.data.Args}:m}}):C(l.formula,r)}),{});try{return re(o)?C(o.formula,{...r,data:{...r.data,Args:a}}):o.handler(a,{root:r.root??document,env:r.env})}catch(s){return r.toddle.errors.push(s),r.env?.logErrors&&console.error(s),null}}else if(typeof n=="function"){let a=(e.arguments??[]).map(s=>s.isFunction?l=>C(s.formula,{...r,data:{...r.data,Args:r.data.Args?{...l,"@toddle.parent":r.data.Args}:l}}):C(s.formula,r));try{return n(a,r)}catch(s){return r.toddle.errors.push(s),r.env?.logErrors&&console.error(s),null}}return r.env?.logErrors&&console.error(`Could not find formula ${e.name} in package ${t??""}`,e),null}case"object":return Object.fromEntries(e.arguments?.map(t=>[t.name,C(t.formula,r)])??[]);case"record":return Object.fromEntries(e.entries.map(t=>[t.name,C(t.formula,r)]));case"array":return e.arguments.map(t=>C(t.formula,r));case"apply":{let t=r.component.formulas?.[e.name];if(!t)return r.env?.logErrors&&console.log("Component does not have a formula with the name ",e.name),null;let o=Object.fromEntries(e.arguments.map(s=>s.isFunction?[s.name,l=>C(s.formula,{...r,data:{...r.data,Args:r.data.Args?{...l,"@toddle.parent":r.data.Args}:l}})]:[s.name,C(s.formula,r)])),n={...r.data,Args:r.data.Args?{...o,"@toddle.parent":r.data.Args}:o},a=r.formulaCache?.[e.name]?.get(n);if(a?.hit)return a.data;{let s=C(t.formula,{...r,data:n});return r.formulaCache?.[e.name]?.set(n,s),s}}default:r.env?.logErrors&&console.error("Could not recognize formula",e)}}catch(t){return r.env?.logErrors&&console.error(t),null}}var Gi=e=>typeof e=="object"&&e!==null,L=(e,r)=>Object.fromEntries(Object.entries(e).map(r)),Q=(e,r)=>L(e,([t,o])=>[t,r(o)]),Wt=(e,r)=>{let[t,...o]=r,n=Array.isArray(e)?[...e]:Gi(e)?{...e}:{};return o.length===0?delete n[t]:n[t]=Wt(n[t],o),n},H=(e,r)=>Object.fromEntries(Object.entries(e).filter(([t])=>!r.includes(t))),Jt=(e,r)=>r.reduce((t,o)=>Wt(t,o),{...e});function te(e,[r,...t]){return t.length===0?e?.[r]:te(e?.[r],t)}var oe=(e,r,t=!0)=>Qi(Object.entries(e),r,t),Qi=(e,r,t=!0)=>[...e].sort((o,n)=>{let a=r(o),s=r(n);return a===s?0:(a>s?1:-1)*(t?1:-1)});var zt=(e,r=0)=>{let t=3735928559^r,o=1103547991^r;for(let n=0,a;n<e.length;n++)a=e.charCodeAt(n),t=Math.imul(t^a,2654435761),o=Math.imul(o^a,1597334677);return t=Math.imul(t^t>>>16,2246822507),t^=Math.imul(o^o>>>13,3266489909),o=Math.imul(o^o>>>16,2246822507),o^=Math.imul(t^t>>>13,3266489909),4294967296*(2097151&o)+(t>>>0)};var q;(function(e){e.GET="GET",e.POST="POST",e.DELETE="DELETE",e.PUT="PUT",e.PATCH="PATCH",e.HEAD="HEAD",e.OPTIONS="OPTIONS"})(q||(q={}));function*D({formula:e,globalFormulas:r,path:t=[],visitedFormulas:o=new Set,packageName:n}){if(R(e))switch(yield{path:t,formula:e,packageName:n},e.type){case"path":case"value":break;case"record":for(let[a,s]of e.entries.entries())yield*D({formula:s.formula,globalFormulas:r,path:[...t,"entries",a,"formula"],visitedFormulas:o,packageName:n});break;case"function":{n=e.package??n;let a=[n,e.name].filter(R).join("/"),s=!o.has(a);o.add(a);let l=n?r.packages?.[n]?.formulas?.[e.name]:r.formulas?.[e.name];for(let[u,m]of(e.arguments??[]).entries())yield*D({formula:m.formula,globalFormulas:r,path:[...t,"arguments",u,"formula"],visitedFormulas:o,packageName:n});l&&re(l)&&s&&(yield*D({formula:l.formula,globalFormulas:r,path:[...t,"formula"],visitedFormulas:o,packageName:n}));break}case"array":case"or":case"and":case"object":for(let[a,s]of(e.arguments??[]).entries())yield*D({formula:s.formula,globalFormulas:r,path:[...t,"arguments",a,"formula"],visitedFormulas:o,packageName:n});break;case"apply":for(let[a,s]of(e.arguments??[]).entries())yield*D({formula:s.formula,globalFormulas:r,path:[...t,"arguments",a,"formula"],visitedFormulas:o,packageName:n});break;case"switch":for(let[a,s]of e.cases.entries())yield*D({formula:s.condition,globalFormulas:r,path:[...t,"cases",a,"condition"],visitedFormulas:o,packageName:n}),yield*D({formula:s.formula,globalFormulas:r,path:[...t,"cases",a,"formula"],visitedFormulas:o,packageName:n});yield*D({formula:e.default,globalFormulas:r,path:[...t,"default"],visitedFormulas:o,packageName:n});break}}function*I({action:e,globalFormulas:r,path:t=[],visitedFormulas:o=new Set,packageName:n}){if(R(e))switch(e.type){case"Fetch":for(let[a,s]of Object.entries(e.inputs??{}))yield*D({formula:s.formula,globalFormulas:r,path:[...t,"input",a,"formula"],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onSuccess?.actions??{}))yield*I({action:s,globalFormulas:r,path:[...t,"onSuccess","actions",a],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onError?.actions??{}))yield*I({action:s,globalFormulas:r,path:[...t,"onError","actions",a],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onMessage?.actions??{}))yield*I({action:s,globalFormulas:r,path:[...t,"onMessage","actions",a],visitedFormulas:o,packageName:n});break;case"Custom":case void 0:n=e.package??n,_(e.data)&&(yield*D({formula:e.data,globalFormulas:r,path:[...t,"data"],visitedFormulas:o,packageName:n}));for(let[a,s]of Object.entries(e.arguments??{}))yield*D({formula:s.formula,globalFormulas:r,path:[...t,"arguments",a,"formula"],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.events??{}))for(let[l,u]of Object.entries(s.actions??{}))yield*I({action:u,globalFormulas:r,path:[...t,"events",a,"actions",l],visitedFormulas:o,packageName:n});break;case"SetVariable":case"TriggerEvent":yield*D({formula:e.data,globalFormulas:r,path:[...t,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameter":yield*D({formula:e.data,globalFormulas:r,path:[...t,"data"],visitedFormulas:o});break;case"SetURLParameters":for(let[a,s]of Object.entries(e.parameters??{}))yield*D({formula:s,globalFormulas:r,path:[...t,"parameters",a],visitedFormulas:o});break;case"TriggerWorkflow":for(let[a,s]of Object.entries(e.parameters??{}))yield*D({formula:s.formula,globalFormulas:r,path:[...t,"parameters",a,"formula"],visitedFormulas:o,packageName:n});break;case"Switch":R(e.data)&&_(e.data)&&(yield*D({formula:e.data,globalFormulas:r,path:[...t,"data"],visitedFormulas:o,packageName:n}));for(let[a,s]of e.cases.entries()){yield*D({formula:s.condition,globalFormulas:r,path:[...t,"cases",a,"condition"],visitedFormulas:o,packageName:n});for(let[l,u]of Object.entries(s.actions))yield*I({action:u,globalFormulas:r,path:[...t,"cases",a,"actions",l],visitedFormulas:o,packageName:n})}for(let[a,s]of Object.entries(e.default.actions))yield*I({action:s,globalFormulas:r,path:[...t,"default","actions",a],visitedFormulas:o,packageName:n});break}}var Z=class{api;key;globalFormulas;_apiReferences;constructor(r,t,o){this.api=r,this.key=t,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let r=new Set,t=o=>{if(R(o))switch(o.type){case"path":o.path[0]==="Apis"&&r.add(o.path[1]);break;case"value":break;case"record":o.entries.forEach(n=>t(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>t(n.formula));break;case"switch":o.cases.forEach(n=>{t(n.condition),t(n.formula)});break}};return t(this.api.autoFetch),t(this.api.url),Object.values(this.api.path??{}).forEach(o=>t(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>t(o.formula)),_(this.api.headers)?t(this.api.headers):Object.values(this.api.headers??{}).forEach(o=>{t(o)}),t(this.api.body),this._apiReferences=r,r}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get proxy(){return this.api.proxy}get queryParams(){return this.api.queryParams}get headers(){return this.api.headers}get method(){return this.api.method}get body(){return this.api.body}get auth(){return this.api.auth}get throttle(){return this.api.throttle}get debounce(){return this.api.debounce}get onCompleted(){return this.api.onCompleted}get onFailed(){return this.api.onFailed}*formulasInApi(){let r=this.api,t=this.key;yield*D({formula:r.autoFetch,globalFormulas:this.globalFormulas,path:["apis",t,"autoFetch"]}),yield*D({formula:r.url,globalFormulas:this.globalFormulas,path:["apis",t,"url"]});for(let[o,n]of Object.entries(r.path??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"path",o,"formula"]});for(let[o,n]of Object.entries(r.queryParams??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"queryParams",o,"formula"]});if(_(r.headers))yield*D({formula:r.headers,globalFormulas:this.globalFormulas,path:["apis",t,"headers"]});else for(let[o,n]of Object.entries(r.headers??{}))yield*D({formula:n,globalFormulas:this.globalFormulas,path:["apis",t,"headers",o]});yield*D({formula:r.body,globalFormulas:this.globalFormulas,path:["apis",t,"body"]});for(let[o,n]of Object.entries(r.onCompleted?.actions??{}))yield*I({action:n,globalFormulas:this.globalFormulas,path:["apis",t,"onCompleted","actions",o]});for(let[o,n]of Object.entries(r.onFailed?.actions??{}))yield*I({action:n,globalFormulas:this.globalFormulas,path:["apis",t,"onFailed","actions",o]})}};function*B(e,r=[]){if(R(e))switch(yield[r,e],e.type){case"SetVariable":case"SetURLParameter":case"TriggerEvent":case"TriggerWorkflow":break;case"Fetch":for(let[t,o]of Object.entries(e.onSuccess?.actions??{}))yield*B(o,[...r,"onSuccess","actions",t]);for(let[t,o]of Object.entries(e.onError?.actions??{}))yield*B(o,[...r,"onError","actions",t]);for(let[t,o]of Object.entries(e.onMessage?.actions??{}))yield*B(o,[...r,"onMessage","actions",t]);break;case"Custom":case void 0:for(let[t,o]of Object.entries(e.events??{}))for(let[n,a]of Object.entries(o?.actions??{}))yield*B(a,[...r,"events",t,"actions",n]);break;case"Switch":for(let[t,o]of e.cases.entries())for(let[n,a]of Object.entries(o?.actions??{}))yield*B(a,[...r,"cases",t,"actions",n]);for(let[t,o]of Object.entries(e.default.actions))yield*B(o,[...r,"default","actions",t]);break}}var ne=class{api;_apiReferences;key;globalFormulas;constructor(r,t,o){this.api=r,this.key=t,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let r=new Set,t=o=>{if(R(o))switch(o.type){case"path":o.path[0]==="Apis"&&r.add(o.path[1]);break;case"value":break;case"record":o.entries.forEach(n=>t(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>t(n.formula));break;case"switch":o.cases.forEach(n=>{t(n.condition),t(n.formula)});break}};return t(this.api.autoFetch),t(this.api.url),Object.values(this.api.path??{}).forEach(o=>t(o.formula)),Object.values(this.api.headers??{}).forEach(o=>t(o.formula)),t(this.api.body),Object.values(this.api.inputs).forEach(o=>t(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>{t(o.formula)}),t(this.api.server?.proxy?.enabled?.formula),t(this.api.server?.ssr?.enabled?.formula),t(this.api.client?.debounce?.formula),Object.values(this.api.redirectRules??{}).forEach(o=>{t(o.formula)}),t(this.api.isError?.formula),t(this.api.timeout?.formula),r.delete(this.key),this._apiReferences=r,r}get version(){return this.api.version}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get headers(){return this.api.headers}set headers(r){this.api.headers=r}get method(){return this.api.method}get body(){return this.api.body}get inputs(){return this.api.inputs}get queryParams(){return this.api.queryParams}get server(){return this.api.server}get client(){return this.api.client}get redirectRules(){return this.api.redirectRules}get isError(){return this.api.isError}get timeout(){return this.api.timeout}get"@nordcraft/metadata"(){return this.api["@nordcraft/metadata"]}*formulasInApi(){let r=this.api,t=this.key;for(let[o,n]of Object.entries(this.api.inputs))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"inputs",o,"formula"]});yield*D({formula:r.autoFetch,globalFormulas:this.globalFormulas,path:["apis",t,"autoFetch"]}),yield*D({formula:r.url,globalFormulas:this.globalFormulas,path:["apis",t,"url"]});for(let[o,n]of Object.entries(r.path??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"path",o,"formula"]});for(let[o,n]of Object.entries(r.queryParams??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"queryParams",o,"formula"]}),yield*D({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",t,"queryParams",o,"enabled"]});for(let[o,n]of Object.entries(r.headers??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"headers",o,"formula"]}),yield*D({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",t,"headers",o,"enabled"]});yield*D({formula:r.body,globalFormulas:this.globalFormulas,path:["apis",t,"body"]});for(let[o,n]of Object.entries(r.client?.onCompleted?.actions??{}))yield*I({action:n,globalFormulas:this.globalFormulas,path:["apis",t,"client","onCompleted","actions",o]});for(let[o,n]of Object.entries(r.client?.onFailed?.actions??{}))yield*I({action:n,globalFormulas:this.globalFormulas,path:["apis",t,"client","onFailed","actions",o]});yield*D({formula:r.client?.debounce?.formula,globalFormulas:this.globalFormulas,path:["apis",t,"client","debounce","formula"]});for(let[o,n]of Object.entries(r.client?.onMessage?.actions??{}))yield*I({action:n,globalFormulas:this.globalFormulas,path:["apis",t,"client","onMessage","actions",o]});for(let[o,n]of Object.entries(r.redirectRules??{}))yield*D({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",t,"redirectRules",o,"formula"]});yield*D({formula:r.isError?.formula,globalFormulas:this.globalFormulas,path:["apis",t,"isError","formula"]}),yield*D({formula:r.timeout?.formula,globalFormulas:this.globalFormulas,path:["apis",t,"timeout","formula"]}),yield*D({formula:r.server?.proxy?.enabled.formula,globalFormulas:this.globalFormulas,path:["apis",t,"server","proxy","enabled","formula"]}),yield*D({formula:r.server?.ssr?.enabled?.formula,globalFormulas:this.globalFormulas,path:["apis",t,"server","ssr","enabled","formula"]})}*actionModelsInApi(){for(let[r,t]of Object.entries(this.api.client?.onCompleted?.actions??{}))yield*B(t,["apis",this.key,"client","onCompleted","actions",r]);for(let[r,t]of Object.entries(this.api.client?.onFailed?.actions??{}))yield*B(t,["apis",this.key,"client","onFailed","actions",r]);for(let[r,t]of Object.entries(this.api.client?.onMessage?.actions??{}))yield*B(t,["apis",this.key,"client","onData","actions",r])}};var ae=e=>e instanceof Z?!0:!("version"in e),Gt=({api:e,formulaContext:r,baseUrl:t,defaultHeaders:o})=>{let n=Zi(e,r,t),a=el({api:e,formulaContext:r,defaultHeaders:o});return{url:n,requestSettings:a}},Zi=(e,r,t)=>{let o="",n=new URLSearchParams,a,s=C(e.url,r);if(["string","number"].includes(typeof s)){let i=typeof s=="number"?String(s):s;try{a=new URL(i,t),o=a.pathname,n=a.searchParams}catch{}}let l=rl(e.path,r),u=`${o}${l.length>0&&!o.endsWith("/")?"/":""}${l}`,m=new URLSearchParams([...n,...tl(e.queryParams,r)]),v=[...m.entries()].length>0?`?${m.toString()}`:"";if(a){let i=new URL(a.origin,t);return i.pathname=u,i.search=m.toString(),i}else return new URL(`${u}${v}`,t)},Yi=[q.POST,q.DELETE,q.PUT,q.PATCH,q.OPTIONS],Xi=(e,r,t)=>{if(e.timeout){let o=C(e.timeout.formula,t);typeof o=="number"&&!Number.isNaN(o)&&o>0&&(r.signal=AbortSignal.timeout(o))}},el=({api:e,formulaContext:r,defaultHeaders:t})=>{let o=Object.values(q).includes(e.method)?e.method:q.GET,n=ol({apiHeaders:e.headers,formulaContext:r,defaultHeaders:t}),a=nl({api:e,formulaContext:r,headers:n,method:o});n.get("content-type")==="multipart/form-data"&&n.delete("content-type");let s={method:o,headers:n,body:a};return Xi(e,s,r),s},rl=(e,r)=>oe(e??{},([t,o])=>o.index).map(([t,o])=>C(o.formula,r)).join("/"),tl=(e,r)=>{let t=new URLSearchParams;return Object.entries(e??{}).forEach(([o,n])=>{if(!(R(n.enabled)?C(n.enabled,r):!0))return;let s=C(n.formula,r);if(R(s))if(Array.isArray(s))s.forEach(l=>t.append(o,String(l)));else if(M(s)){let l=(u,m)=>{Object.entries(u).forEach(([v,i])=>{if(!Array.isArray(i)&&M(i))return l(i,`${m}[${v}]`);t.set(`${m}[${v}]`,String(i))})};l(s,o)}else t.set(o,String(s))}),t},ol=({apiHeaders:e,formulaContext:r,defaultHeaders:t})=>{let o=new Headers(t);return Object.entries(e??{}).forEach(([n,a])=>{if(R(a.enabled)?C(a.enabled,r):!0){let l=C(a.formula,r);if(R(l))try{o.set(n.trim(),(typeof l=="string"?l:String(l)).trim())}catch{}}}),o};var Qt=(e,r)=>zt(JSON.stringify({url:e.href,method:r.method,headers:H(Object.fromEntries(Object.entries(r.headers??{})),["host","cookie"]),body:r.body??null})),Zt=({apiName:e,response:r,formulaContext:t,errorFormula:o,performance:n})=>{let a=o?C(o.formula,{component:t.component,package:t.package,toddle:t.toddle,data:{Attributes:{},Args:t.data.Args,Apis:{[e]:{isLoading:!1,data:r.body,error:null,response:{status:r.status,headers:r.headers,performance:n}}}},env:t.env}):null;return a==null?!r.ok:x(a)},nl=({api:e,formulaContext:r,headers:t,method:o})=>{if(!e.body||!Yi.includes(o))return;let n=C(e.body,r);if(n)switch(t.get("content-type")){case"application/x-www-form-urlencoded":return typeof n=="object"&&n!==null?Object.entries(n).map(([a,s])=>Array.isArray(s)?s.map(l=>`${encodeURIComponent(a)}=${encodeURIComponent(l)}`).join("&"):`${encodeURIComponent(a)}=${encodeURIComponent(String(s))}`).join("&"):"";case"multipart/form-data":{let a=new FormData;return typeof n=="object"&&n!==null&&Object.entries(n).forEach(([s,l])=>{a.set(s,l)}),a}case"text/plain":return String(n);default:return JSON.stringify(n)}},se=(e,r)=>new CustomEvent(e,{detail:r}),al=(e,r)=>{let t=e.apiReferences.has(r.name),o=r.apiReferences.has(e.name);return t===o?0:t?1:-1},ie=e=>{let r=new Map,t=(o,n)=>{let a=r.get(n);return a||(a=o.version===2?new ne(o,n,{formulas:{},packages:{}}):new Z(o,n,{formulas:{},packages:{}}),r.set(n,a)),a};return[...e].sort(([o,n],[a,s])=>{let l=t(n,o),u=t(s,a);return al(l,u)})};var sl=(e,r)=>{let t=r.length;for(;t;)e=e*33^r.charCodeAt(--t);return e},Xt=e=>sl(5381,e),il=/(a)(d)/gi;var Yt=e=>String.fromCharCode(e+(e>25?39:97));function eo(e){let r="",t;for(t=Math.abs(e);t>52;t=t/52|0)r=Yt(t%52)+r;return(Yt(t%52)+r).replace(il,"$1-$2")}var le=e=>eo(Xt(JSON.stringify(e))),ue=(e,r=!1)=>{let t=e.trim().replace(/\s+/g,"-");return r&&(t=t.replace(/[^a-zA-Z0-9-_]/g,o=>`\\${o}`)),/^[^a-zA-Z]/.test(t)&&(t=`_${t}`),t};var Ft=`
2
2
  @layer reset {
3
3
  html {
4
4
  height:100%;
@@ -220,16 +220,16 @@ ${Ft}
220
220
  to {
221
221
  opacity:0;
222
222
  }
223
- }`};var oo=e=>[(e.className??e.class)&&`.${e.className}`,(e.evenChild??e["even-child"])&&":nth-child(even)",(e.firstChild??e["first-child"])&&":first-child",(e.focusWithin??e["focus-within"])&&":focus-within",(e.lastChild??e["last-child"])&&":last-child",e.active&&":active",e.autofill&&":is(:-webkit-autofill, :autofill)",e.checked&&":checked",e.disabled&&":disabled",e.empty&&":empty",e.focus&&":focus",e.hover&&":hover",e.invalid&&":invalid",e.link&&":link",e.visited&&":visited",e["first-of-type"]&&":first-of-type",e["focus-visible"]&&":focus-visible",e["last-of-type"]&&":last-of-type",e["popover-open"]&&":popover-open",e.pseudoElement&&`::${e.pseudoElement}`].filter(Boolean).join("");var ul={large:1440,small:576,medium:960};function dl(e){return e.split("").map(r=>"ABCDEFGHIJKLMNOPQRSTYVWXYZ".includes(r)?"-"+r.toLocaleLowerCase():r).join("")}var fl=new Set(["width","min-width","max-width","height","min-height","max-height","margin","margin-top","margin-left","margin-bottom","margin-right","padding","padding-top","padding-left","padding-bottom","padding-right","gap","gap-x","gap-y","border-radius","border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius","border-width","border-top-width","border-left-width","border-bottom-width","border-right-width","font-size","top","right","bottom","left","outline-width"]),no=(e,r,t,o)=>{let n=new Set,a=new Set,s=cl(r),l=to("breakpoints"in t?{...t,fontFamily:Object.fromEntries(Object.entries(t.fontFamily).filter(([d,h])=>h.default??s.has("--font-"+d)))}:{...t,fonts:t.fonts},o),u=d=>Object.entries(d).map(([h,E])=>{if(!R(E))return;let g=dl(h),w=String(Number(E))===String(E)&&fl.has(g)?`${Number(E)*4}px`:E;return`${g}:${w};`}).filter(Boolean).join(`
224
- `),m=(d,h)=>{try{let E=H(d.style??{},["variants","breakpoints","shadows"]),g=d.variants??d.style?.variants,w=(b,j,O)=>{let F=Object.entries(j).filter(([f])=>f=="scrollbar-width"),c=u(j);return O?.startingStyle&&(c=`@starting-style {
225
- ${c}
223
+ }`};var oo=e=>[(e.className??e.class)&&`.${e.className}`,(e.evenChild??e["even-child"]??e["nth-child(even)"])&&":nth-child(even)",(e.firstChild??e["first-child"])&&":first-child",(e.focusWithin??e["focus-within"])&&":focus-within",(e.lastChild??e["last-child"])&&":last-child",e.active&&":active",e.autofill&&":is(:-webkit-autofill, :autofill)",e.checked&&":checked",e.disabled&&":disabled",e.empty&&":empty",e.focus&&":focus",e.hover&&":hover",e.invalid&&":invalid",e.link&&":link",e.visited&&":visited",e["first-of-type"]&&":first-of-type",e["focus-visible"]&&":focus-visible",e["last-of-type"]&&":last-of-type",e["popover-open"]&&":popover-open",e.pseudoElement&&`::${e.pseudoElement}`].filter(Boolean).join("");var ul={large:1440,small:576,medium:960};function dl(e){return e.split("").map(r=>"ABCDEFGHIJKLMNOPQRSTYVWXYZ".includes(r)?"-"+r.toLocaleLowerCase():r).join("")}var cl=new Set(["width","min-width","max-width","height","min-height","max-height","margin","margin-top","margin-left","margin-bottom","margin-right","padding","padding-top","padding-left","padding-bottom","padding-right","gap","gap-x","gap-y","border-radius","border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius","border-width","border-top-width","border-left-width","border-bottom-width","border-right-width","font-size","top","right","bottom","left","outline-width"]),no=(e,r,t,o)=>{let n=new Set,a=new Set,s=fl(r),l=to("breakpoints"in t?{...t,fontFamily:Object.fromEntries(Object.entries(t.fontFamily).filter(([d,h])=>h.default??s.has("--font-"+d)))}:{...t,fonts:t.fonts},o),u=d=>Object.entries(d).map(([h,E])=>{if(!R(E))return;let g=dl(h),w=String(Number(E))===String(E)&&cl.has(g)?`${Number(E)*4}px`:E;return`${g}:${w};`}).filter(Boolean).join(`
224
+ `),m=(d,h)=>{try{let E=H(d.style??{},["variants","breakpoints","shadows"]),g=d.variants??d.style?.variants,w=(b,j,O)=>{let F=Object.entries(j).filter(([c])=>c=="scrollbar-width"),f=u(j);return O?.startingStyle&&(f=`@starting-style {
225
+ ${f}
226
226
  }`),`
227
- ${c.length>0?`${b} {
228
- ${c}
227
+ ${f.length>0?`${b} {
228
+ ${f}
229
229
  }`:""}
230
230
  ${F.length>0?`
231
231
  ${b}::-webkit-scrollbar {
232
- ${F.map(([f,S])=>{switch(S){case"none":return"width: 0;";case"thinn":case"thin":return"width: 4px;";default:return""}}).join(`
232
+ ${F.map(([c,S])=>{switch(S){case"none":return"width: 0;";case"thinn":case"thin":return"width: 4px;";default:return""}}).join(`
233
233
  `)}
234
234
  }
235
235
  `:""}
@@ -247,20 +247,20 @@ ${b}::-webkit-scrollbar {
247
247
  `)}
248
248
  ${d.animations?Object.entries(d.animations).map(([b,j])=>a.has(b)?"":(a.add(b),`
249
249
  @keyframes ${b} {
250
- ${Object.values(j).sort((O,F)=>O.position-F.position).map(({key:O,position:F,value:c})=>`
250
+ ${Object.values(j).sort((O,F)=>O.position-F.position).map(({key:O,position:F,value:f})=>`
251
251
  ${F*100}% {
252
- ${O}: ${c};
252
+ ${O}: ${f};
253
253
  }
254
254
  `).join(`
255
255
  `)}
256
256
  }
257
257
  `)).join(`
258
258
  `):""}
259
- `}catch(E){return console.error(E),""}},v=new Set;function i(d,h){if(!v.has(d.name)){if(v.add(d.name),!d.nodes){console.warn("Unable to find nodes for component",d.name);return}Object.entries(d.nodes).forEach(([E,g])=>{if(g.type==="component"){let b=r.find(j=>j.name===[g.package??h,g.name].filter(O=>O).join("/"));if(b){i(b,g.package??h),l+=m(g,ue(`${d.name}:${E}`,!0));return}}if(g.type!=="element")return;let w=le([g.style,g.variants]);if(n.has(w))return"";n.add(w),l+=m(g,w)})}}return i(e),l},cl=e=>new Set(e.flatMap(r=>Object.values(r.nodes).flatMap(t=>t.type==="element"?[t.style.fontFamily,t.style["font-family"],...t.variants?.map(o=>o.style.fontFamily??o.style["font-family"])??[]].filter(R):[])).map(r=>r.replace("var(","").replace(")","").replace(/'/g,"")));var so=ee(G(),1);function pl(e){for(var r=[],t=0;t<e.length;){var o=e[t];if(o==="*"||o==="+"||o==="?"){r.push({type:"MODIFIER",index:t,value:e[t++]});continue}if(o==="\\"){r.push({type:"ESCAPED_CHAR",index:t++,value:e[t++]});continue}if(o==="{"){r.push({type:"OPEN",index:t,value:e[t++]});continue}if(o==="}"){r.push({type:"CLOSE",index:t,value:e[t++]});continue}if(o===":"){for(var n="",a=t+1;a<e.length;){var s=e.charCodeAt(a);if(s>=48&&s<=57||s>=65&&s<=90||s>=97&&s<=122||s===95){n+=e[a++];continue}break}if(!n)throw new TypeError("Missing parameter name at ".concat(t));r.push({type:"NAME",index:t,value:n}),t=a;continue}if(o==="("){var l=1,u="",a=t+1;if(e[a]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(a));for(;a<e.length;){if(e[a]==="\\"){u+=e[a++]+e[a++];continue}if(e[a]===")"){if(l--,l===0){a++;break}}else if(e[a]==="("&&(l++,e[a+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(a));u+=e[a++]}if(l)throw new TypeError("Unbalanced pattern at ".concat(t));if(!u)throw new TypeError("Missing pattern at ".concat(t));r.push({type:"PATTERN",index:t,value:u}),t=a;continue}r.push({type:"CHAR",index:t,value:e[t++]})}return r.push({type:"END",index:t,value:""}),r}function ml(e,r){r===void 0&&(r={});for(var t=pl(e),o=r.prefixes,n=o===void 0?"./":o,a=r.delimiter,s=a===void 0?"/#?":a,l=[],u=0,m=0,v="",i=function(A){if(m<t.length&&t[m].type===A)return t[m++].value},d=function(A){var k=i(A);if(k!==void 0)return k;var T=t[m],P=T.type,N=T.index;throw new TypeError("Unexpected ".concat(P," at ").concat(N,", expected ").concat(A))},h=function(){for(var A="",k;k=i("CHAR")||i("ESCAPED_CHAR");)A+=k;return A},E=function(A){for(var k=0,T=s;k<T.length;k++){var P=T[k];if(A.indexOf(P)>-1)return!0}return!1},g=function(A){var k=l[l.length-1],T=A||(k&&typeof k=="string"?k:"");if(k&&!T)throw new TypeError('Must have text between two parameters, missing text after "'.concat(k.name,'"'));return!T||E(T)?"[^".concat(jt(s),"]+?"):"(?:(?!".concat(jt(T),")[^").concat(jt(s),"])+?")};m<t.length;){var w=i("CHAR"),b=i("NAME"),j=i("PATTERN");if(b||j){var O=w||"";n.indexOf(O)===-1&&(v+=O,O=""),v&&(l.push(v),v=""),l.push({name:b||u++,prefix:O,suffix:"",pattern:j||g(O),modifier:i("MODIFIER")||""});continue}var F=w||i("ESCAPED_CHAR");if(F){v+=F;continue}v&&(l.push(v),v="");var c=i("OPEN");if(c){var O=h(),f=i("NAME")||"",S=i("PATTERN")||"",y=h();d("CLOSE"),l.push({name:f||(S?u++:""),pattern:f&&!S?g(O):S,prefix:O,suffix:y,modifier:i("MODIFIER")||""});continue}d("END")}return l}function ao(e,r){return hl(ml(e,r),r)}function hl(e,r){r===void 0&&(r={});var t=gl(r),o=r.encode,n=o===void 0?function(u){return u}:o,a=r.validate,s=a===void 0?!0:a,l=e.map(function(u){if(typeof u=="object")return new RegExp("^(?:".concat(u.pattern,")$"),t)});return function(u){for(var m="",v=0;v<e.length;v++){var i=e[v];if(typeof i=="string"){m+=i;continue}var d=u?u[i.name]:void 0,h=i.modifier==="?"||i.modifier==="*",E=i.modifier==="*"||i.modifier==="+";if(Array.isArray(d)){if(!E)throw new TypeError('Expected "'.concat(i.name,'" to not repeat, but got an array'));if(d.length===0){if(h)continue;throw new TypeError('Expected "'.concat(i.name,'" to not be empty'))}for(var g=0;g<d.length;g++){var w=n(d[g],i);if(s&&!l[v].test(w))throw new TypeError('Expected all "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(w,'"'));m+=i.prefix+w+i.suffix}continue}if(typeof d=="string"||typeof d=="number"){var w=n(String(d),i);if(s&&!l[v].test(w))throw new TypeError('Expected "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(w,'"'));m+=i.prefix+w+i.suffix;continue}if(!h){var b=E?"an array":"a string";throw new TypeError('Expected "'.concat(i.name,'" to be ').concat(b))}}return m}}function jt(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function gl(e){return e&&e.sensitive?"":"i"}var Y=({query:e,page:r,route:t,params:o,hash:n})=>{let a;if(t){let u=[];for(let m of t.path)if(m.type==="static")u.push(m.name);else{let v=o[m.name];if(R(v))u.push(v);else break}a="/"+u.join("/")}else a=ao(r,{encode:encodeURIComponent})(o);let s=n===void 0||n===""?"":"#"+n,l=Object.entries(e).filter(([u,m])=>m!==null).map(([u,m])=>`${encodeURIComponent(t?.query[u]?.name??u)}=${encodeURIComponent(String(m))}`).join("&");return`${a}${s}${l.length>0?"?"+l:""}`};function $(e,r,t,o){try{if(!e)throw new Error("Action does not exist");switch(e.type){case"Switch":{let n=e.cases.find(({condition:a})=>x(C(a,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})))??e.default;if(!n)return;for(let a of n.actions)$(a,{...r,...t.dataSignal.get()},t,o);break}case"SetVariable":{let n=C(e.data,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env});t.dataSignal.update(a=>({...a,Variables:{...a.Variables,[e.variable]:n}}));break}case"TriggerEvent":{let n=C(e.data,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env});t.triggerEvent(e.event,n);break}case"SetURLParameter":{t.toddle.locationSignal.update(n=>{let a=C(e.data,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}),s,l;if(n.route?.path.some(v=>v.name===e.parameter)?(s="push",l={...n,params:{...H(n.params,[e.parameter]),[e.parameter]:a}}):(s="replace",l={...n,query:{...H(n.query,[e.parameter]),...R(a)?{[e.parameter]:a}:null}}),!s)return n;let u=Y(n),m=Y(l);return m!==u&&(s=e.historyMode??s,s==="push"?window.history.pushState({},"",m):window.history.replaceState({},"",m)),l});break}case"SetURLParameters":{let n=Object.entries(e.parameters??{});if(n.length===0)return;t.toddle.locationSignal.update(a=>{if(!a.route)return a;let s="replace",l={},u={},m={data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env},v=g=>a.route?.path.some(w=>w.name===g&&w.type==="param"),i=g=>Object.values(a.route?.query??{}).some(w=>w.name===g);for(let[g,w]of n){let b=C(w,m)??null;v(g)?(s="push",u[g]=b):i(g)&&(l[g]=b)}if(Object.keys(u).length===0&&Object.keys(l).length===0)return a;let d={...a,params:{...H(a.params,Object.keys(u)),...u},query:{...H(a.query,Object.keys(l)),...l}};if((0,so.default)(d,a))return a;let h=Y(a),E=Y(d);return E!==h&&(s=e.historyMode??s,s==="push"?window.history.pushState({},"",E):window.history.replaceState({},"",E)),d});break}case"Fetch":{let n=t.apis[e.api];if(!n){console.error("The api ",e.api,"does not exist");return}let a=t.component.apis?.[e.api]?.version===2,s=a?Q(e.inputs??{},m=>C(m.formula,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})):void 0,l=a?{onCompleted:e.onSuccess?.actions,onFailed:e.onError?.actions,onMessage:e.onMessage?.actions}:void 0,u=m=>{if(!a)for(let v of m)$(v,{...r,...t.dataSignal.get()},t,o)};n.fetch({actionInputs:s,actionModels:l}).then(()=>{u(e.onSuccess.actions)},()=>{u(e.onError.actions)});break}case"TriggerWorkflow":{let n=Q(e.parameters??{},s=>C(s.formula,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}));if(e.contextProvider){let s=t.providers[[t.package,e.contextProvider].filter(R).join("/")]??t.providers[e.contextProvider],l=s?.component.workflows?.[e.workflow];if(!l){s&&console.warn(`Cannot find workflow "${e.workflow}" on component "${e.contextProvider}". It has likely been removed or modified.`);return}l.actions.forEach(u=>$(u,{...r,...s.ctx.dataSignal.get(),Parameters:n},s.ctx,o));return}let a=t.component.workflows?.[e.workflow];if(!a){console.warn(`Workflow ${e.workflow} does not exist on component ${t.component.name}`);return}a.actions.forEach(s=>$(s,{...r,...t.dataSignal.get(),Parameters:n},t,o));break}default:try{let n=(s,l)=>{let u=e.events?.[s];u&&u.actions.forEach(m=>$(m,l?{...r,...t.dataSignal.get(),Event:l}:{...r,...t.dataSignal.get()},t,l??o))},a=e.version===2?(t.toddle.getCustomAction??t.toddle.getCustomAction)(e.name,e.package??t.package):void 0;if(a){let s=(e.arguments??[]).reduce((u,m)=>({...u,[m.name]:C(m.formula,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})}),{}),l=a.handler?.(s,{root:t.root,triggerActionEvent:n},o);return l&&(typeof l=="function"||l instanceof Promise)&&t.dataSignal.subscribe(u=>u,{destroy:()=>{l instanceof Promise?l.then(u=>{typeof u=="function"&&u()}).catch(u=>console.error(u)):l()}}),l}else{let s=t.toddle.getAction(e.name);if(!s){console.error("Missing custom action",e.name);return}let l=e.arguments?.map(u=>C(u.formula,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}))??[C(e.data,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})];return s(l,{...t,triggerActionEvent:n},o)}}catch(n){console.error("Error in Custom Action",n)}}}catch(n){return console.error(n),null}}function de(e,r){let t=null;function o(i,d){let h={data:d,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env},E=C(i.url,h)??"",g=i.path&&i.path.length>0?"/"+i.path.map(f=>C(f.formula,h)).join("/"):"",w=Object.values(i.queryParams??{}),b=w.length>0?"?"+w.map(f=>`${f.name}=${encodeURIComponent(C(f.formula,h))}`).join("&"):"",j=_(i.headers)?C(i.headers,{data:d,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}):Q(i.headers??{},f=>C(f,{data:d,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})),O=String(Object.entries(j).find(([f])=>f.toLocaleLowerCase()==="content-type")?.[1]),F=i.method??"GET",c=i.body&&["POST","PUT","PATCH","DELETE"].includes(F)?a(C(i.body,{data:d,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}),O):void 0;return{url:E+g+b,method:F,auth:i.auth,headers:j,body:c}}async function n(i){let d=await i.text();try{return z(d)}catch{return d}}function a(i,d){switch(d){case"application/x-www-form-urlencoded":return typeof i=="object"&&i!==null?Object.entries(i).map(([h,E])=>Array.isArray(E)?E.map(g=>`${encodeURIComponent(h)}=${encodeURIComponent(g)}`).join("&"):`${encodeURIComponent(h)}=${encodeURIComponent(String(E))}`).join("&"):"";case"multipart/form-data":{let h=new FormData;return typeof i=="object"&&i!==null&&Object.entries(i).forEach(([E,g])=>{h.set(E,g)}),h}case"text/plain":return String(i);default:return JSON.stringify(i)}}function s(i){r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[e.name]:{data:i,error:null,isLoading:!1}}}),e.onCompleted?.actions?.forEach(d=>{$(d,r.dataSignal.get(),r)})}function l(i){r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[e.name]:{data:null,isLoading:!1,error:i}}}),e.onFailed?.actions?.forEach(d=>{$(d,r.dataSignal.get(),r)})}async function u(i){r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[e.name]:{data:r.dataSignal.get().Apis?.[e.name]?.data??null,isLoading:!0,error:null}}});let d;try{e.proxy===!1?d=await fetch(i.url,{method:i.method,headers:i.headers,body:i.body}):d=await fetch(`/_query/${encodeURIComponent(r.component.name)}.${encodeURIComponent(e.name)}`,{method:"POST",body:JSON.stringify(i),signal:r.abortSignal,headers:{"Content-Type":"application/json"}});let h=await n(d);if(d.ok)s(h);else throw h}catch(h){return l(h),Promise.reject(h)}}function m(i){return typeof e.debounce=="number"?new Promise((d,h)=>{typeof t=="number"&&clearTimeout(t),t=setTimeout(()=>{u(i).then(d,h)},e.debounce)}):typeof e.throttle=="number"?typeof t=="number"?new Promise(()=>{}):(t=setTimeout(()=>{typeof t=="number"&&clearTimeout(t)},e.throttle),u(i)):u(i)}let v;if(r.dataSignal.update(i=>({...i,Apis:{...i.Apis??{},[e.name]:i.Apis?.[e.name]??{data:null,isLoading:!!(e.autoFetch&&C(e.autoFetch,{data:r.dataSignal.get(),component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})),error:null}}})),e.autoFetch){v=r.dataSignal.map(d=>o(e,d));let i=!0;v.subscribe(d=>{if(e.autoFetch&&C(e.autoFetch,{data:r.dataSignal.get(),component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}))if(i&&r.isRootComponent){i=!1;let h=r.toddle?.pageState?.Apis?.[e.name];h&&h.data?typeof h.data=="string"?s(z(h.data)):s(h.data):m(d)}else m(d)})}return{fetch:i=>{let d=o(e,r.dataSignal.get()),h=d.body,E=new Headers({...d.headers,...i?.headers??{}});i?.body&&(h=a(i.body,E.get("Content-Type")??void 0)),h instanceof FormData&&E.delete("Content-Type");let g={url:i?.url??d.url,method:i?.method??d.method,auth:i?.auth??d.auth,headers:[...E.entries()].reduce((w,[b,j])=>({...w,[b]:j}),{}),body:h};return m(g)},destroy:()=>v?.destroy()}}var io=e=>typeof e!="string"?!1:/^application\/(json|.*\+json)/.test(e),lo=e=>typeof e!="string"?!1:/^(text\/|application\/x-www-form-urlencoded|application\/(xml|.*\+xml))/.test(e),uo=e=>typeof e!="string"?!1:/^text\/event-stream/.test(e),fo=e=>typeof e!="string"?!1:/^(application\/stream\+json|application\/x-ndjson)/.test(e),co=e=>typeof e!="string"?!1:/^image\//.test(e);var po=({path:e,origin:r})=>{if(typeof e!="string")return!1;try{let t=new URL(e,r),o=new URLSearchParams(t.searchParams);return o.forEach((n,a)=>{t.searchParams.delete(a,n)}),o.forEach((n,a)=>{t.searchParams.append(a,n)}),t}catch{return!1}},mo="x-toddle-url";function fe(e,r){let t=null,o={...e};function n(c){let f=window.origin;try{new URL(f)}catch{f=void 0}return Gt({api:c,formulaContext:a(c),baseUrl:f,defaultHeaders:void 0})}function a(c){let f={data:r.dataSignal.get(),component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env},S=Object.entries(c.inputs).reduce((A,[k,T])=>(A[k]=C(T.formula,f),A),{}),y={...f.data,ApiInputs:{...S}};return{component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,data:y,toddle:r.toddle,env:r.env}}function s(c){for(let[f,S]of oe(c.redirectRules??{},([y,A])=>A.index)){let y=C(S.formula,{...a(c),data:{...a(c).data,Apis:{[c.name]:r.dataSignal.get().Apis?.[c.name]}}});if(typeof y=="string"){let A=po({path:y,origin:window.location.origin});if(A){if(r.env.runtime==="preview")return window.parent?.postMessage({type:"blockedNavigation",url:A.href},"*"),{name:f,index:S.index,url:A};window.location.replace(A.href)}}}}function l(c,f,S){switch(c){case"message":{let y=se("message",S.body);f.client?.onMessage?.actions?.forEach(A=>{$(A,{...a(f).data,...r.dataSignal.get(),Event:y},r,y)});break}case"success":{let y=se("success",S.body);f.client?.onCompleted?.actions?.forEach(A=>{$(A,{...a(f).data,...r.dataSignal.get(),Event:y},r,y)});break}case"failed":{let y=se("failed",{error:S.body,status:S.status});f.client?.onFailed?.actions?.forEach(A=>{$(A,{...a(f).data,...r.dataSignal.get(),Event:y},r,y)});break}}}function u(c,f,S){let y=r.dataSignal.get().Apis?.[c.name]?.response?.performance?.requestStart;if(typeof y=="number"&&y>(S.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:f.body,error:null,response:{status:f.status,headers:f.headers,performance:S}}}});let A=s(c);A&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:f.body,error:null,response:{status:f.status,headers:f.headers,performance:S,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:A}}:{}}}}})}function m(c,f,S){let y=r.dataSignal.get().Apis?.[c.name]?.response?.performance?.requestStart;if(typeof y=="number"&&y>(S.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:null,error:f.body,response:{status:f.status,headers:f.headers,performance:S}}}});let A=s(c);A&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:null,error:f.body,response:{status:f.status,headers:f.headers,performance:S,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:A}}:{}}}}})}async function v(c,f,S){let y=async()=>{let A={requestStart:Date.now(),responseStart:null,responseEnd:null};r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!0,data:r.dataSignal.get().Apis?.[c.name]?.data??null,error:null}}});let k;try{if((c.server?.proxy?C(c.server.proxy.enabled.formula,a(c))??!1:!1)===!1)k=await fetch(f,S);else{let P=`/.toddle/omvej/components/${encodeURIComponent(r.component.name)}/apis/${encodeURIComponent(r.component.name)}:${encodeURIComponent(c.name)}`,N=new Headers(S.headers);N.set(mo,decodeURIComponent(f.href.replace(/\+/g," "))),S.headers=N,k=await fetch(P,S)}A.responseStart=Date.now(),await i(c,k,A);return}catch(T){let P=T.cause?{message:T.message,data:T.cause}:T.message;return m(c,{body:P},{...A,responseEnd:Date.now()}),l("failed",c,{body:P}),Promise.reject(T)}};return c.client?.debounce?.formula?new Promise((A,k)=>{typeof t=="number"&&clearTimeout(t),t=setTimeout(()=>{y().then(A,k)},C(c.client?.debounce?.formula,a(c)))}):y()}function i(c,f,S){let y=c.client?.parserMode??"auto";if(y==="auto"){let A=f.headers.get("content-type");uo(A)?y="event-stream":io(A)?y="json":lo(A)?y="text":fo(A)?y="json-stream":co(A)?y="blob":y="text"}switch(y){case"text":return d(c,f,S);case"json":return E(c,f,S);case"event-stream":return w(c,f,S);case"json-stream":return h(c,f,S);case"blob":return g(c,f,S);default:return d(c,f,S)}}function d(c,f,S){return b({api:c,res:f,performance:S,streamType:"text",useTextDecoder:!0,parseChunk:y=>y,parseChunksForData:y=>y.join("")})}function h(c,f,S){return b({api:c,res:f,performance:S,streamType:"json",useTextDecoder:!0,parseChunk:A=>{let k=A;try{k=JSON.parse(A)}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:k})}return k},parseChunksForData:A=>[...A],delimiters:[`\r
259
+ `}catch(E){return console.error(E),""}},v=new Set;function i(d,h){if(!v.has(d.name)){if(v.add(d.name),!d.nodes){console.warn("Unable to find nodes for component",d.name);return}Object.entries(d.nodes).forEach(([E,g])=>{if(g.type==="component"){let b=r.find(j=>j.name===[g.package??h,g.name].filter(O=>O).join("/"));if(b){i(b,g.package??h),l+=m(g,ue(`${d.name}:${E}`,!0));return}}if(g.type!=="element")return;let w=le([g.style,g.variants]);if(n.has(w))return"";n.add(w),l+=m(g,w)})}}return i(e),l},fl=e=>new Set(e.flatMap(r=>Object.values(r.nodes).flatMap(t=>t.type==="element"?[t.style.fontFamily,t.style["font-family"],...t.variants?.map(o=>o.style.fontFamily??o.style["font-family"])??[]].filter(R):[])).map(r=>r.replace("var(","").replace(")","").replace(/'/g,"")));var so=ee(G(),1);function pl(e){for(var r=[],t=0;t<e.length;){var o=e[t];if(o==="*"||o==="+"||o==="?"){r.push({type:"MODIFIER",index:t,value:e[t++]});continue}if(o==="\\"){r.push({type:"ESCAPED_CHAR",index:t++,value:e[t++]});continue}if(o==="{"){r.push({type:"OPEN",index:t,value:e[t++]});continue}if(o==="}"){r.push({type:"CLOSE",index:t,value:e[t++]});continue}if(o===":"){for(var n="",a=t+1;a<e.length;){var s=e.charCodeAt(a);if(s>=48&&s<=57||s>=65&&s<=90||s>=97&&s<=122||s===95){n+=e[a++];continue}break}if(!n)throw new TypeError("Missing parameter name at ".concat(t));r.push({type:"NAME",index:t,value:n}),t=a;continue}if(o==="("){var l=1,u="",a=t+1;if(e[a]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(a));for(;a<e.length;){if(e[a]==="\\"){u+=e[a++]+e[a++];continue}if(e[a]===")"){if(l--,l===0){a++;break}}else if(e[a]==="("&&(l++,e[a+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(a));u+=e[a++]}if(l)throw new TypeError("Unbalanced pattern at ".concat(t));if(!u)throw new TypeError("Missing pattern at ".concat(t));r.push({type:"PATTERN",index:t,value:u}),t=a;continue}r.push({type:"CHAR",index:t,value:e[t++]})}return r.push({type:"END",index:t,value:""}),r}function ml(e,r){r===void 0&&(r={});for(var t=pl(e),o=r.prefixes,n=o===void 0?"./":o,a=r.delimiter,s=a===void 0?"/#?":a,l=[],u=0,m=0,v="",i=function(A){if(m<t.length&&t[m].type===A)return t[m++].value},d=function(A){var k=i(A);if(k!==void 0)return k;var T=t[m],P=T.type,N=T.index;throw new TypeError("Unexpected ".concat(P," at ").concat(N,", expected ").concat(A))},h=function(){for(var A="",k;k=i("CHAR")||i("ESCAPED_CHAR");)A+=k;return A},E=function(A){for(var k=0,T=s;k<T.length;k++){var P=T[k];if(A.indexOf(P)>-1)return!0}return!1},g=function(A){var k=l[l.length-1],T=A||(k&&typeof k=="string"?k:"");if(k&&!T)throw new TypeError('Must have text between two parameters, missing text after "'.concat(k.name,'"'));return!T||E(T)?"[^".concat(jt(s),"]+?"):"(?:(?!".concat(jt(T),")[^").concat(jt(s),"])+?")};m<t.length;){var w=i("CHAR"),b=i("NAME"),j=i("PATTERN");if(b||j){var O=w||"";n.indexOf(O)===-1&&(v+=O,O=""),v&&(l.push(v),v=""),l.push({name:b||u++,prefix:O,suffix:"",pattern:j||g(O),modifier:i("MODIFIER")||""});continue}var F=w||i("ESCAPED_CHAR");if(F){v+=F;continue}v&&(l.push(v),v="");var f=i("OPEN");if(f){var O=h(),c=i("NAME")||"",S=i("PATTERN")||"",y=h();d("CLOSE"),l.push({name:c||(S?u++:""),pattern:c&&!S?g(O):S,prefix:O,suffix:y,modifier:i("MODIFIER")||""});continue}d("END")}return l}function ao(e,r){return hl(ml(e,r),r)}function hl(e,r){r===void 0&&(r={});var t=gl(r),o=r.encode,n=o===void 0?function(u){return u}:o,a=r.validate,s=a===void 0?!0:a,l=e.map(function(u){if(typeof u=="object")return new RegExp("^(?:".concat(u.pattern,")$"),t)});return function(u){for(var m="",v=0;v<e.length;v++){var i=e[v];if(typeof i=="string"){m+=i;continue}var d=u?u[i.name]:void 0,h=i.modifier==="?"||i.modifier==="*",E=i.modifier==="*"||i.modifier==="+";if(Array.isArray(d)){if(!E)throw new TypeError('Expected "'.concat(i.name,'" to not repeat, but got an array'));if(d.length===0){if(h)continue;throw new TypeError('Expected "'.concat(i.name,'" to not be empty'))}for(var g=0;g<d.length;g++){var w=n(d[g],i);if(s&&!l[v].test(w))throw new TypeError('Expected all "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(w,'"'));m+=i.prefix+w+i.suffix}continue}if(typeof d=="string"||typeof d=="number"){var w=n(String(d),i);if(s&&!l[v].test(w))throw new TypeError('Expected "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(w,'"'));m+=i.prefix+w+i.suffix;continue}if(!h){var b=E?"an array":"a string";throw new TypeError('Expected "'.concat(i.name,'" to be ').concat(b))}}return m}}function jt(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function gl(e){return e&&e.sensitive?"":"i"}var Y=({query:e,page:r,route:t,params:o,hash:n})=>{let a;if(t){let u=[];for(let m of t.path)if(m.type==="static")u.push(m.name);else{let v=o[m.name];if(R(v))u.push(v);else break}a="/"+u.join("/")}else a=ao(r,{encode:encodeURIComponent})(o);let s=n===void 0||n===""?"":"#"+n,l=Object.entries(e).filter(([u,m])=>m!==null).map(([u,m])=>`${encodeURIComponent(t?.query[u]?.name??u)}=${encodeURIComponent(String(m))}`).join("&");return`${a}${s}${l.length>0?"?"+l:""}`};function $(e,r,t,o){try{if(!e)throw new Error("Action does not exist");switch(e.type){case"Switch":{let n=e.cases.find(({condition:a})=>x(C(a,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})))??e.default;if(!n)return;for(let a of n.actions)$(a,{...r,...t.dataSignal.get()},t,o);break}case"SetVariable":{let n=C(e.data,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env});t.dataSignal.update(a=>({...a,Variables:{...a.Variables,[e.variable]:n}}));break}case"TriggerEvent":{let n=C(e.data,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env});t.triggerEvent(e.event,n);break}case"SetURLParameter":{t.toddle.locationSignal.update(n=>{let a=C(e.data,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}),s,l;if(n.route?.path.some(v=>v.name===e.parameter)?(s="push",l={...n,params:{...H(n.params,[e.parameter]),[e.parameter]:a}}):(s="replace",l={...n,query:{...H(n.query,[e.parameter]),...R(a)?{[e.parameter]:a}:null}}),!s)return n;let u=Y(n),m=Y(l);return m!==u&&(s=e.historyMode??s,s==="push"?window.history.pushState({},"",m):window.history.replaceState({},"",m)),l});break}case"SetURLParameters":{let n=Object.entries(e.parameters??{});if(n.length===0)return;t.toddle.locationSignal.update(a=>{if(!a.route)return a;let s="replace",l={},u={},m={data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env},v=g=>a.route?.path.some(w=>w.name===g&&w.type==="param"),i=g=>Object.values(a.route?.query??{}).some(w=>w.name===g);for(let[g,w]of n){let b=C(w,m)??null;v(g)?(s="push",u[g]=b):i(g)&&(l[g]=b)}if(Object.keys(u).length===0&&Object.keys(l).length===0)return a;let d={...a,params:{...H(a.params,Object.keys(u)),...u},query:{...H(a.query,Object.keys(l)),...l}};if((0,so.default)(d,a))return a;let h=Y(a),E=Y(d);return E!==h&&(s=e.historyMode??s,s==="push"?window.history.pushState({},"",E):window.history.replaceState({},"",E)),d});break}case"Fetch":{let n=t.apis[e.api];if(!n){console.error("The api ",e.api,"does not exist");return}let a=t.component.apis?.[e.api]?.version===2,s=a?Q(e.inputs??{},m=>C(m.formula,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})):void 0,l=a?{onCompleted:e.onSuccess?.actions,onFailed:e.onError?.actions,onMessage:e.onMessage?.actions}:void 0,u=m=>{if(!a)for(let v of m)$(v,{...r,...t.dataSignal.get()},t,o)};n.fetch({actionInputs:s,actionModels:l}).then(()=>{u(e.onSuccess.actions)},()=>{u(e.onError.actions)});break}case"TriggerWorkflow":{let n=Q(e.parameters??{},s=>C(s.formula,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}));if(e.contextProvider){let s=t.providers[[t.package,e.contextProvider].filter(R).join("/")]??t.providers[e.contextProvider],l=s?.component.workflows?.[e.workflow];if(!l){s&&console.warn(`Cannot find workflow "${e.workflow}" on component "${e.contextProvider}". It has likely been removed or modified.`);return}l.actions.forEach(u=>$(u,{...r,...s.ctx.dataSignal.get(),Parameters:n},s.ctx,o));return}let a=t.component.workflows?.[e.workflow];if(!a){console.warn(`Workflow ${e.workflow} does not exist on component ${t.component.name}`);return}a.actions.forEach(s=>$(s,{...r,...t.dataSignal.get(),Parameters:n},t,o));break}default:try{let n=(s,l)=>{let u=e.events?.[s];u&&u.actions.forEach(m=>$(m,l?{...r,...t.dataSignal.get(),Event:l}:{...r,...t.dataSignal.get()},t,l??o))},a=e.version===2?(t.toddle.getCustomAction??t.toddle.getCustomAction)(e.name,e.package??t.package):void 0;if(a){let s=(e.arguments??[]).reduce((u,m)=>({...u,[m.name]:C(m.formula,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})}),{}),l=a.handler?.(s,{root:t.root,triggerActionEvent:n},o);return l&&(typeof l=="function"||l instanceof Promise)&&t.dataSignal.subscribe(u=>u,{destroy:()=>{l instanceof Promise?l.then(u=>{typeof u=="function"&&u()}).catch(u=>console.error(u)):l()}}),l}else{let s=t.toddle.getAction(e.name);if(!s){console.error("Missing custom action",e.name);return}let l=e.arguments?.map(u=>C(u.formula,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}))??[C(e.data,{data:r,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})];return s(l,{...t,triggerActionEvent:n},o)}}catch(n){console.error("Error in Custom Action",n)}}}catch(n){return console.error(n),null}}function de(e,r){let t=null;function o(i,d){let h={data:d,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env},E=C(i.url,h)??"",g=i.path&&i.path.length>0?"/"+i.path.map(c=>C(c.formula,h)).join("/"):"",w=Object.values(i.queryParams??{}),b=w.length>0?"?"+w.map(c=>`${c.name}=${encodeURIComponent(C(c.formula,h))}`).join("&"):"",j=_(i.headers)?C(i.headers,{data:d,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}):Q(i.headers??{},c=>C(c,{data:d,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})),O=String(Object.entries(j).find(([c])=>c.toLocaleLowerCase()==="content-type")?.[1]),F=i.method??"GET",f=i.body&&["POST","PUT","PATCH","DELETE"].includes(F)?a(C(i.body,{data:d,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}),O):void 0;return{url:E+g+b,method:F,auth:i.auth,headers:j,body:f}}async function n(i){let d=await i.text();try{return z(d)}catch{return d}}function a(i,d){switch(d){case"application/x-www-form-urlencoded":return typeof i=="object"&&i!==null?Object.entries(i).map(([h,E])=>Array.isArray(E)?E.map(g=>`${encodeURIComponent(h)}=${encodeURIComponent(g)}`).join("&"):`${encodeURIComponent(h)}=${encodeURIComponent(String(E))}`).join("&"):"";case"multipart/form-data":{let h=new FormData;return typeof i=="object"&&i!==null&&Object.entries(i).forEach(([E,g])=>{h.set(E,g)}),h}case"text/plain":return String(i);default:return JSON.stringify(i)}}function s(i){r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[e.name]:{data:i,error:null,isLoading:!1}}}),e.onCompleted?.actions?.forEach(d=>{$(d,r.dataSignal.get(),r)})}function l(i){r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[e.name]:{data:null,isLoading:!1,error:i}}}),e.onFailed?.actions?.forEach(d=>{$(d,r.dataSignal.get(),r)})}async function u(i){r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[e.name]:{data:r.dataSignal.get().Apis?.[e.name]?.data??null,isLoading:!0,error:null}}});let d;try{e.proxy===!1?d=await fetch(i.url,{method:i.method,headers:i.headers,body:i.body}):d=await fetch(`/_query/${encodeURIComponent(r.component.name)}.${encodeURIComponent(e.name)}`,{method:"POST",body:JSON.stringify(i),signal:r.abortSignal,headers:{"Content-Type":"application/json"}});let h=await n(d);if(d.ok)s(h);else throw h}catch(h){return l(h),Promise.reject(h)}}function m(i){return typeof e.debounce=="number"?new Promise((d,h)=>{typeof t=="number"&&clearTimeout(t),t=setTimeout(()=>{u(i).then(d,h)},e.debounce)}):typeof e.throttle=="number"?typeof t=="number"?new Promise(()=>{}):(t=setTimeout(()=>{typeof t=="number"&&clearTimeout(t)},e.throttle),u(i)):u(i)}let v;if(r.dataSignal.update(i=>({...i,Apis:{...i.Apis??{},[e.name]:i.Apis?.[e.name]??{data:null,isLoading:!!(e.autoFetch&&C(e.autoFetch,{data:r.dataSignal.get(),component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})),error:null}}})),e.autoFetch){v=r.dataSignal.map(d=>o(e,d));let i=!0;v.subscribe(d=>{if(e.autoFetch&&C(e.autoFetch,{data:r.dataSignal.get(),component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}))if(i&&r.isRootComponent){i=!1;let h=r.toddle?.pageState?.Apis?.[e.name];h&&h.data?typeof h.data=="string"?s(z(h.data)):s(h.data):m(d)}else m(d)})}return{fetch:i=>{let d=o(e,r.dataSignal.get()),h=d.body,E=new Headers({...d.headers,...i?.headers??{}});i?.body&&(h=a(i.body,E.get("Content-Type")??void 0)),h instanceof FormData&&E.delete("Content-Type");let g={url:i?.url??d.url,method:i?.method??d.method,auth:i?.auth??d.auth,headers:[...E.entries()].reduce((w,[b,j])=>({...w,[b]:j}),{}),body:h};return m(g)},destroy:()=>v?.destroy()}}var io=e=>typeof e!="string"?!1:/^application\/(json|.*\+json)/.test(e),lo=e=>typeof e!="string"?!1:/^(text\/|application\/x-www-form-urlencoded|application\/(xml|.*\+xml))/.test(e),uo=e=>typeof e!="string"?!1:/^text\/event-stream/.test(e),co=e=>typeof e!="string"?!1:/^(application\/stream\+json|application\/x-ndjson)/.test(e),fo=e=>typeof e!="string"?!1:/^image\//.test(e);var po=({path:e,origin:r})=>{if(typeof e!="string")return!1;try{let t=new URL(e,r),o=new URLSearchParams(t.searchParams);return o.forEach((n,a)=>{t.searchParams.delete(a,n)}),o.forEach((n,a)=>{t.searchParams.append(a,n)}),t}catch{return!1}},mo="x-toddle-url";function ce(e,r){let t=null,o={...e};function n(f){let c=window.origin;try{new URL(c)}catch{c=void 0}return Gt({api:f,formulaContext:a(f),baseUrl:c,defaultHeaders:void 0})}function a(f){let c={data:r.dataSignal.get(),component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env},S=Object.entries(f.inputs).reduce((A,[k,T])=>(A[k]=C(T.formula,c),A),{}),y={...c.data,ApiInputs:{...S}};return{component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,data:y,toddle:r.toddle,env:r.env}}function s(f){for(let[c,S]of oe(f.redirectRules??{},([y,A])=>A.index)){let y=C(S.formula,{...a(f),data:{...a(f).data,Apis:{[f.name]:r.dataSignal.get().Apis?.[f.name]}}});if(typeof y=="string"){let A=po({path:y,origin:window.location.origin});if(A){if(r.env.runtime==="preview")return window.parent?.postMessage({type:"blockedNavigation",url:A.href},"*"),{name:c,index:S.index,url:A};window.location.replace(A.href)}}}}function l(f,c,S){switch(f){case"message":{let y=se("message",S.body);c.client?.onMessage?.actions?.forEach(A=>{$(A,{...a(c).data,...r.dataSignal.get(),Event:y},r,y)});break}case"success":{let y=se("success",S.body);c.client?.onCompleted?.actions?.forEach(A=>{$(A,{...a(c).data,...r.dataSignal.get(),Event:y},r,y)});break}case"failed":{let y=se("failed",{error:S.body,status:S.status});c.client?.onFailed?.actions?.forEach(A=>{$(A,{...a(c).data,...r.dataSignal.get(),Event:y},r,y)});break}}}function u(f,c,S){let y=r.dataSignal.get().Apis?.[f.name]?.response?.performance?.requestStart;if(typeof y=="number"&&y>(S.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!1,data:c.body,error:null,response:{status:c.status,headers:c.headers,performance:S}}}});let A=s(f);A&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!1,data:c.body,error:null,response:{status:c.status,headers:c.headers,performance:S,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:A}}:{}}}}})}function m(f,c,S){let y=r.dataSignal.get().Apis?.[f.name]?.response?.performance?.requestStart;if(typeof y=="number"&&y>(S.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!1,data:null,error:c.body,response:{status:c.status,headers:c.headers,performance:S}}}});let A=s(f);A&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!1,data:null,error:c.body,response:{status:c.status,headers:c.headers,performance:S,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:A}}:{}}}}})}async function v(f,c,S){let y=async()=>{let A={requestStart:Date.now(),responseStart:null,responseEnd:null};r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!0,data:r.dataSignal.get().Apis?.[f.name]?.data??null,error:null}}});let k;try{if((f.server?.proxy?C(f.server.proxy.enabled.formula,a(f))??!1:!1)===!1)k=await fetch(c,S);else{let P=`/.toddle/omvej/components/${encodeURIComponent(r.component.name)}/apis/${encodeURIComponent(r.component.name)}:${encodeURIComponent(f.name)}`,N=new Headers(S.headers);N.set(mo,decodeURIComponent(c.href.replace(/\+/g," "))),S.headers=N,k=await fetch(P,S)}A.responseStart=Date.now(),await i(f,k,A);return}catch(T){let P=T.cause?{message:T.message,data:T.cause}:T.message;return m(f,{body:P},{...A,responseEnd:Date.now()}),l("failed",f,{body:P}),Promise.reject(T)}};return f.client?.debounce?.formula?new Promise((A,k)=>{typeof t=="number"&&clearTimeout(t),t=setTimeout(()=>{y().then(A,k)},C(f.client?.debounce?.formula,a(f)))}):y()}function i(f,c,S){let y=f.client?.parserMode??"auto";if(y==="auto"){let A=c.headers.get("content-type");uo(A)?y="event-stream":io(A)?y="json":lo(A)?y="text":co(A)?y="json-stream":fo(A)?y="blob":y="text"}switch(y){case"text":return d(f,c,S);case"json":return E(f,c,S);case"event-stream":return w(f,c,S);case"json-stream":return h(f,c,S);case"blob":return g(f,c,S);default:return d(f,c,S)}}function d(f,c,S){return b({api:f,res:c,performance:S,streamType:"text",useTextDecoder:!0,parseChunk:y=>y,parseChunksForData:y=>y.join("")})}function h(f,c,S){return b({api:f,res:c,performance:S,streamType:"json",useTextDecoder:!0,parseChunk:A=>{let k=A;try{k=JSON.parse(A)}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:k})}return k},parseChunksForData:A=>[...A],delimiters:[`\r
260
260
  `,`
261
- `]})}async function E(c,f,S){let A={data:await f.json(),isLoading:!1,error:null,response:{status:f.status,headers:Object.fromEntries(f.headers.entries())}};return j(c,A,S)}async function g(c,f,S){let y=await f.blob(),A={isLoading:!1,data:URL.createObjectURL(y),error:null,response:{status:f.status,headers:Object.fromEntries(f.headers.entries())}};return j(c,A,S)}function w(c,f,S){return b({api:c,res:f,performance:S,streamType:"event",useTextDecoder:!0,parseChunk:A=>{let k=A.match(/event: (.*)/)?.[1]??"message",T=A.match(/data: (.*)/)?.[1]??"",P=A.match(/id: (.*)/)?.[1],N=A.match(/retry: (.*)/)?.[1],J=T;try{J=JSON.parse(T??"")}catch{}return{event:k,data:J,...P?{id:P}:{},...N?{retry:N}:{}}},parseChunksForData:A=>[...A],delimiters:[`
261
+ `]})}async function E(f,c,S){let A={data:await c.json(),isLoading:!1,error:null,response:{status:c.status,headers:Object.fromEntries(c.headers.entries())}};return j(f,A,S)}async function g(f,c,S){let y=await c.blob(),A={isLoading:!1,data:URL.createObjectURL(y),error:null,response:{status:c.status,headers:Object.fromEntries(c.headers.entries())}};return j(f,A,S)}function w(f,c,S){return b({api:f,res:c,performance:S,streamType:"event",useTextDecoder:!0,parseChunk:A=>{let k=A.match(/event: (.*)/)?.[1]??"message",T=A.match(/data: (.*)/)?.[1]??"",P=A.match(/id: (.*)/)?.[1],N=A.match(/retry: (.*)/)?.[1],J=T;try{J=JSON.parse(T??"")}catch{}return{event:k,data:J,...P?{id:P}:{},...N?{retry:N}:{}}},parseChunksForData:A=>[...A],delimiters:[`
262
262
 
263
263
  `,`\r
264
264
  \r
265
- `]})}async function b({api:c,res:f,performance:S,streamType:y,useTextDecoder:A,parseChunk:k,parseChunksForData:T,delimiters:P}){let N={chunks:[],currentChunk:"",add(V){let U=k(V);this.chunks.push(U),U&&(r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!0,data:T(this.chunks),error:null,response:{headers:Object.fromEntries(f.headers.entries())}}}}),(c.client?.onMessage?.actions??[]).length>0&&l("message",c,{body:U}))},processChunk(V){let U=P?.find(ge=>V.includes(ge)),Tt=this.currentChunk+V,xt=U?Tt.split(U):[Tt];this.currentChunk=xt.pop()??"",xt.forEach(ge=>this.add(ge))}},J=A?f.body?.pipeThrough(new TextDecoderStream).getReader():f.body?.getReader();for(;J;){let{done:V,value:U}=await J.read();if(V)break;P?N.processChunk(U):N.add(U)}N.currentChunk&&N.add(N.currentChunk);let X={isLoading:!1,data:N.chunks,error:null,response:{status:f.status,headers:Object.fromEntries(f.headers.entries())}};try{if(y==="json"){let V=JSON.parse(N.chunks.join(""));X.data=V}else y==="text"&&(X.data=N.chunks.join(""))}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:N.chunks.join("")})}return j(c,X,S)}function j(c,f,S){S.responseEnd=Date.now();let y={body:f.data,status:f.response?.status,headers:f.response?.headers??void 0};Zt({apiName:c.name,response:{body:y.body,ok:!!(!f.error&&f.response?.status&&f.response.status<400),status:y.status,headers:y.headers},formulaContext:a(c),errorFormula:c.isError,performance:S})?(!y.body&&f.error&&(y.body=f.error),m(c,y,S),l("failed",c,y)):(u(c,y,S),l("success",c,y))}function O(c){return Jt(c,[["client","onCompleted"],["client","onFailed"],["client","onMessage"],["service"],["server","ssr"]])}let F;return F=r.dataSignal.map(c=>{let f=a(o);return{request:n(o),api:O(o),autoFetch:o.autoFetch?C(o.autoFetch,f):!1,proxy:C(o.server?.proxy?.enabled.formula,f)}}),F.subscribe(async c=>{let{url:f,requestSettings:S}=n(o),y=R(o.autoFetch)&&(o.autoFetch.type!=="value"||o.autoFetch.value===!0)&&(window?.__toddle?.isPageLoaded??!1)===!1?r.toddle.pageState.Apis?.[Qt(f,S)]:void 0;y?y.error?m(o,{body:y.error,status:y.response?.status,headers:y.response?.headers??void 0},{requestStart:y.response?.performance?.requestStart??null,responseStart:y.response?.performance?.responseStart??null,responseEnd:y.response?.performance?.responseEnd??null}):u(o,{body:y.data,status:y.response?.status,headers:y.response?.headers??void 0},{requestStart:y.response?.performance?.requestStart??null,responseStart:y.response?.performance?.responseStart??null,responseEnd:y.response?.performance?.responseEnd??null}):C(o.autoFetch,a(o))?await v(o,f,S):r.dataSignal.update(A=>({...A,Apis:{...A.Apis??{},[o.name]:{isLoading:!1,data:null,error:null}}}))}),{fetch:({actionInputs:c,actionModels:f})=>{let S=Object.entries(c??{}).reduce((T,[P,N])=>(N!==null&&typeof N=="object"&&"formula"in N?T[P]=N:T[P]={formula:{type:"value",value:N}},T),{}),y={...o,inputs:{...o.inputs,...S},client:{...o.client,parserMode:o.client?.parserMode??"auto",onCompleted:{trigger:o.client?.onCompleted?.trigger??"success",actions:[...o.client?.onCompleted?.actions??[],...f?.onCompleted??[]]},onFailed:{trigger:o.client?.onFailed?.trigger??"failed",actions:[...o.client?.onFailed?.actions??[],...f?.onFailed??[]]},onMessage:{trigger:o.client?.onMessage?.trigger??"message",actions:[...o.client?.onMessage?.actions??[],...f?.onMessage??[]]}}},{url:A,requestSettings:k}=n(y);return v(y,A,k)},update:c=>{o=c;let f=a(o),S=o.autoFetch&&C(o.autoFetch,f);S&&F?.set({request:n(c),api:O(c),autoFetch:S,proxy:C(c.server?.proxy?.enabled.formula,f)})},triggerActions:()=>{let c=r.dataSignal.get().Apis?.[o.name];c===void 0||c.data===null&&c.error===null||(c.error?l("failed",o,{body:c.error,status:c.response?.status}):l("success",o,{body:c.data}))},destroy:()=>F?.destroy()}}var Fo=ee(G(),1);var ce=class{batchQueue=[];isProcessing=!1;processBatch(){this.isProcessing||(this.isProcessing=!0,requestAnimationFrame(()=>{for(;this.batchQueue.length>0;)this.batchQueue.shift()?.();this.isProcessing=!1}))}add(r){this.batchQueue.push(r),this.processBatch()}};var Rt=ee(G(),1),Ot=class{value;subscribers;subscriptions;constructor(r){this.value=r,this.subscribers=new Set,this.subscriptions=[]}get(){return this.value}set(r){if(this.subscribers.size===0){this.value=r;return}(0,Rt.default)(r,this.value)===!1&&(this.value=r,this.subscribers.forEach(({notify:t})=>t(this.value)))}update(r){this.set(r(this.value))}subscribe(r,t){let o={notify:r,destroy:t?.destroy};return this.subscribers.add(o),r(this.value),()=>{this.subscribers.delete(o)}}destroy(){this.subscribers.forEach(({destroy:r})=>{r?.()}),this.subscribers.clear(),this.subscriptions?.forEach(r=>r())}cleanSubscribers(){this.subscribers.forEach(({destroy:r})=>{r?.()}),this.subscribers.clear()}map(r){let t=K(r(this.value));return t.subscriptions.push(this.subscribe(o=>t.set(r(o)),{destroy:()=>t.destroy()})),t}};function K(e){return new Ot(e)}typeof window<"u"&&(window.signal=K,window.deepEqual=Rt.default);var Dt=(e,r)=>{let o=e.split(".").slice(-1)[0],n=parseInt(o),a=parseInt(String(o.split("(")[1]));for(let s of r.children){let u=s.getAttribute("data-id")?.split(".").slice(-1)[0],m=parseInt(String(u));if(m===n&&parseInt(String(u?.split("(")[1]))>a||m>n)return s}return null};function ho(e,r,t=null){let o=t,n=o?o.previousSibling:e.lastChild;for(let a=r.length-1;a>=0;a--){let s=r[a];s===n?n=s.previousSibling:e.insertBefore(s,o),o=s}}var pe=e=>e.formulas&&Object.values(e.formulas).some(({exposeInContext:r})=>r)||e.workflows&&Object.values(e.workflows).some(({exposeInContext:r})=>r);function go(e,r,t){Object.entries(r.contexts??{}).forEach(([o,n])=>{let a=t.providers[[t.package,o].filter(R).join("/")];if(a)n.formulas.forEach(s=>{let l=a.formulaDataSignals[s];if(!l){console.warn(`Provider ${o} does not expose a formula named "${s}". Available formulas are: ["${Object.keys(a.formulaDataSignals).join('", "')}"]`);return}l.subscribe(u=>{e.update(m=>({...m,Contexts:{...m.Contexts,[o]:{...m.Contexts?.[o],[s]:u}}}))})});else if(!a&&t.env.runtime==="preview"&&t.toddle._preview){let s=t.components?.find(m=>m.name===[t.package,o].filter(R).join("/"));if(!s){console.error(`Could not find provider "${o}". No such component exist.`);return}let[,l]=o.split("/").reverse(),u={data:{Attributes:L(s.attributes,([m,v])=>[m,v.testValue])},component:s,root:t?.root,formulaCache:{},package:l??t?.package,toddle:t.toddle,env:t.env};s.route&&(u.data["URL parameters"]={...Object.fromEntries(s.route.path.filter(m=>m.type==="param").map(m=>[m.name,m.testValue])),...L(s.route.query,([m,{testValue:v}])=>[m,v])}),u.data.Variables=L(s.variables,([m,v])=>[m,C(v.initialValue,u)]),e.update(m=>({...m,Contexts:{...m.Contexts,[o]:Object.fromEntries(n.formulas.map(v=>{let i=s.formulas?.[v];return i?[v,C(i.formula,u)]:(console.warn(`Could not find formula "${v}" in component "${o}"`),[v,null])}))}}))}})}function yo(e,r){window.__components||(window.__components={}),window.__components[e.name]=r}function bo(e){return R(e.formulas)?L(e.formulas,([r,t])=>{let{canCache:o,keys:n}=t.memoize?yl(t.formula,e):{canCache:!1,keys:[]},a,s;return[r,{get:l=>o&&a&&n.every(u=>te(l,u)===te(a,u))?{hit:!0,data:s}:{hit:!1},set:(l,u)=>{o&&(a=l,s=u)}}]}):{}}function yl(e,r){let t=[];function o(a){if(a&&(a.type=="path"&&a.path[0]!=="Args"&&t.push(a.path),Array.isArray(a?.arguments)&&a?.arguments.forEach(s=>o(s.formula)),a.type==="record"&&Array.isArray(a.entries)&&a.entries.forEach(s=>o(s.formula)),a.type==="apply")){if(!r.formulas?.[a.name]?.memoize)throw new Error("Cannot memoize");o(r.formulas?.[a.name]?.formula)}}try{o(e)}catch{return{canCache:!1,keys:[]}}let n=[];return t.sort((a,s)=>a.length-s.length).forEach(a=>{n.some(s=>s.every((l,u)=>l===a[u]))||n.push(a)}),{canCache:!0,keys:n}}function vo({node:e,path:r,dataSignal:t,ctx:o,parentElement:n,instance:a,namespace:s}){let l=[o.package,e.name].filter(R).join("/"),u=o.components?.find(b=>b.name===l);if(!u)return console.warn(`Could not find component "${l}" for component "${o.component.name}". Available components are: ["${o.components.map(b=>b.name).join('", "')}"]`),[];let m=t.map(b=>L(e.attrs,([j,O])=>[j,O?.type!=="value"?C(O,{data:b,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):O?.value])),v=K({Location:t.get().Location,Attributes:m.get(),Apis:L(u.apis,([b,j])=>[b,{data:null,isLoading:!!(j.autoFetch&&C(j.autoFetch,{data:t.get(),component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),error:null}])});go(v,u,o),v.update(b=>({...b,Variables:L(u.variables,([j,O])=>[j,C(O.initialValue,{data:v.get(),component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})])})),yo(u,v);let i=new AbortController;v.subscribe(()=>{},{destroy:()=>i.abort(`Component ${u.name} unmounted`)});let d=bo(u),h={};ie(Object.entries(u.apis)).forEach(([b,j])=>{ae(j)?h[b]=de(j,{...o,apis:h,component:u,dataSignal:v,abortSignal:i.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(O,F)=>{let c=Object.values(e.events).find(f=>f.trigger===O);c&&c.actions.forEach(f=>$(f,{...t.get(),Event:F},o))}}):h[b]=fe(j,{...o,apis:h,component:u,dataSignal:v,abortSignal:i.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(O,F)=>{let c=Object.values(e.events).find(f=>f.trigger===O);c&&c.actions.forEach(f=>$(f,{...t.get(),Event:F},o))}})}),Object.values(h).filter(b=>b.triggerActions!==void 0).forEach(b=>{b.triggerActions()});let E=(b,j)=>{let O=Object.values(e.events).find(F=>F.trigger===b);O&&O.actions.forEach(F=>$(F,{...t.get(),Event:j},o))},g=o.providers;if(pe(u)){let b=Object.fromEntries(Object.entries(u.formulas??{}).filter(([,j])=>j.exposeInContext).map(([j,O])=>[j,v.map(F=>C(O.formula,{data:F,component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}))]));g={...g,[u.name]:{component:u,formulaDataSignals:b,ctx:{...o,apis:h,component:u,dataSignal:v,abortSignal:i.signal,triggerEvent:E}}}}let w={};for(let b=0;b<e.children.length;b++){let j=e.children[b],F=o.component.nodes[j].slot??"default";w[F]=w[F]??[],w[F].push({id:j,path:`${r}.${b}[${F}]`,dataSignal:t,ctx:{...o,package:e.package??o.package}})}return m.subscribe(b=>v.update(j=>({...j,Attributes:b})),{destroy:()=>v.destroy()}),me({dataSignal:v,component:u,components:o.components,path:r,root:o.root,isRootComponent:!1,children:w,formulaCache:d,providers:g,apis:h,abortSignal:i.signal,package:e.package??o.package,parentElement:n,onEvent:E,toddle:o.toddle,env:o.env,namespace:s,instance:e.id==="root"?{...a,[o.component.name]:"root"}:{[o.component.name]:e.id??""}})}function Ao(e){if(e instanceof DragEvent)return Array.from(e.dataTransfer?.items??[]).reduce((r,t)=>(r[t.type]=e.dataTransfer?.getData(t.type),r),{})}function Co(e,r,t){return r.component.version===2&&t==="root"?`${r.package??r.toddle.project}-${e.tag}`:e.tag}function kt(e,r,t){switch(r){case"srcObject":case"src":e instanceof HTMLMediaElement?e[r]=t:e.setAttribute(r,String(t));break;case"value":case"type":{let o=t;e instanceof HTMLProgressElement&&(!R(t)||!Number.isFinite(Number(t)))&&(o=0),e[r]=x(o)?String(o):void 0;break}case"muted":case"autoplay":e instanceof HTMLMediaElement?e[r]=x(t):e.setAttribute(r,String(t));break;default:x(t)?(e.setAttribute(r,String(t)),r==="autofocus"&&document.body.getAttribute("data-mode")!=="design"&&setTimeout(()=>e.focus(),100)):e.removeAttribute(r)}}function Eo({node:e,dataSignal:r,id:t,path:o,ctx:n,namespace:a,instance:s}){let l=Co(e,n,t);switch(l){case"svg":{a="http://www.w3.org/2000/svg";break}case"math":{a="http://www.w3.org/1998/Math/MathML";break}}e.attrs.xmlns&&e.attrs.xmlns.type==="value"&&(a=String(e.attrs.xmlns.value));let u=a?document.createElementNS(a,l):document.createElement(l);u.setAttribute("data-node-id",t),o&&u.setAttribute("data-id",o),n.isRootComponent===!1&&t!=="root"&&u.setAttribute("data-component",n.component.name);let m=le([e.style,e.variants]);u.classList.add(m),s&&t==="root"&&Object.entries(s).forEach(([i,d])=>{u.classList.add(ue(`${i}:${d}`))}),e.classes&&Object.entries(e.classes)?.forEach(([i,{formula:d}])=>{d?r.map(E=>x(C(d,{data:E,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env}))).subscribe(E=>E?u.classList.add(i):u.classList.remove(i)):u.classList.add(i)}),Object.entries(e.attrs).forEach(([i,d])=>{if(!R(d))return;let h,E=()=>{d.type==="value"?kt(u,i,d?.value):(h=r.map(g=>C(d,{data:g,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})),h.subscribe(g=>{kt(u,i,g)}))};i==="autofocus"&&n.env.runtime==="preview"&&n.toddle._preview?n.toddle._preview.showSignal.subscribe(({testMode:g})=>{g?E():(h?.destroy(),u.removeAttribute(i))}):E()}),e["style-variables"]?.forEach(({formula:i,name:d,unit:h})=>{r.map(g=>{let w=C(i,{data:g,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env});return h?w+h:w}).subscribe(g=>u.style.setProperty(`--${d}`,g))}),Object.values(e.events).forEach(i=>{let d=h=>(i.actions.forEach(E=>{if(h instanceof DragEvent&&(h.data=Ao(h)),h instanceof ClipboardEvent)try{h.data=Array.from(h.clipboardData?.items??[]).reduce((g,w)=>{try{g[w.type]=JSON.parse(h.clipboardData?.getData(w.type))}catch{g[w.type]=h.clipboardData?.getData(w.type)}return g},{})}catch(g){console.error("Could not get paste data",g)}$(E,{...r.get(),Event:h},n,h)}),!1);u.addEventListener(i.trigger,d)});let v=e.tag.toLocaleLowerCase();if(v==="script"||v==="style"){let i=[];e.children.map(d=>n.component.nodes[d]).filter(d=>d?.type==="text").forEach(d=>{if(d.value.type==="value")i.push(String(d.value.value));else{let h=r.map(E=>String(C(d.value,{data:E,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})));i.push(h)}}),i.every(d=>typeof d=="string")&&(u.textContent=i.join("")),i.filter(d=>typeof d!="string").forEach(d=>{d.subscribe(()=>{u.textContent=i.map(h=>typeof h=="string"?h:h.get()).join("")})})}else e.children.forEach((i,d)=>{W({parentElement:u,id:i,path:o+"."+d,dataSignal:r,ctx:n,namespace:a,instance:s}).forEach(E=>u.appendChild(E))});return u}function So({path:e,node:r,dataSignal:t,ctx:o,parentElement:n,instance:a,namespace:s}){let l=r.name??"default",u=[];if(o.children[l]?u=o.children[l].flatMap(m=>{let v=m.dataSignal.map(i=>i);return t.subscribe(i=>i,{destroy:()=>v.destroy()}),W({...m,dataSignal:v,parentElement:n,ctx:{...m.ctx,providers:o.providers},instance:a,namespace:s})}):u=r.children.flatMap((m,v)=>W({id:m,path:e+"."+v,dataSignal:t,ctx:o,parentElement:n,instance:a,namespace:s})),o.env.runtime==="custom-element"&&o.isRootComponent){let m=document.createElement("slot");return m.setAttribute("name",l),u.forEach(v=>{m.appendChild(v)}),[m]}return u}function wo({node:e,id:r,path:t,dataSignal:o,namespace:n,ctx:a}){if(n&&n!=="http://www.w3.org/1999/xhtml")return bl({node:e,dataSignal:o,ctx:a});let{value:s}=e,l=document.createElement("span");return l.setAttribute("data-node-id",r),typeof r=="string"&&l.setAttribute("data-id",t),a.isRootComponent===!1&&l.setAttribute("data-component",a.component.name),l.setAttribute("data-node-type","text"),s.type!=="value"?o.map(m=>String(C(s,{data:m,component:a.component,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:a.toddle,env:a.env}))).subscribe(m=>{l.innerText=m}):l.innerText=String(s.value),l}function bl({node:e,dataSignal:r,ctx:t}){let{value:o}=e,n=document.createTextNode("");return o.type!=="value"?r.map(s=>String(C(o,{data:s,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}))).subscribe(s=>{n.nodeValue=s}):n.nodeValue=String(o.value),n}function W({id:e,dataSignal:r,path:t,ctx:o,namespace:n,parentElement:a,instance:s}){let l=o.component.nodes[e];if(!l)return[];let u=({node:i,...d})=>{switch(i.type){case"element":return[Eo({node:i,...d})];case"component":let h=o.components.some(E=>E.name===i.name);return vo({node:{...i,id:e},...d,ctx:{...o,package:i.package??(h?void 0:o.package)},parentElement:a});case"text":return[wo({...d,node:i})];case"slot":return So({...d,node:i})}};function m({node:i,dataSignal:d,id:h,path:E,ctx:g,namespace:w,parentElement:b,instance:j}){let O=!0,F=null,c=d.map(y=>x(C(i.condition,{data:y,component:g.component,formulaCache:g.formulaCache,root:g.root,package:g.package,toddle:g.toddle,env:g.env}))),f=[],S=y=>{if(y&&f.length===0){if(F?.destroy(),F=d.map(k=>k),f.push(...u({node:i,dataSignal:F,path:E,id:h,ctx:g,namespace:w,parentElement:b,instance:j})),O)return;if(!b||g.root.contains(b)===!1){console.error(`Conditional: Parent element does not exist for "${E}" This is likely due to the DOM being modified outside of toddle.`);return}if(b.querySelector(`[data-id="${E}"]`)){console.warn(`Conditional: Element with data-id="${E}" already exists. This is likely due to the DOM being modified outside of toddle`);return}let A=Dt(E,b);for(let k of f)b.insertBefore(k,A)}else y||(F?.destroy(),f.forEach(A=>A.remove()),f.splice(0,f.length))};return c.subscribe(S,{destroy:()=>{F?.destroy()}}),g.env.runtime==="preview"&&g.toddle._preview&&g.toddle._preview.showSignal.subscribe(({displayedNodes:y,testMode:A})=>{y.includes(E)&&!A?S(!0):S(c.get())}),O=!1,f}function v(){let i=!0,d=new Map;return r.map(E=>{let g=C(l.repeat,{data:E,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env});return typeof g!="object"?[]:Object.entries(g??{})}).subscribe(E=>{let g=new Map;for(let w=0;w<E.length;w++){let[b,j]=E[w],O={...r.get(),ListItem:{...r.get().ListItem?{Parent:r.get().ListItem}:{},Item:j,Index:Number(w),Key:b}},F=l.repeatKey?C(l.repeatKey,{data:O,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):b;g.has(F)&&(console.warn(`Duplicate key "${F}" found in repeat. Fallback to index as key. This will cause a re-render of the duplicated children on every change.`),F=b);let c=d.get(F);if(c)g.set(F,c),c.dataSignal.update(f=>({...f,ListItem:{...r.get().ListItem?{Parent:r.get().ListItem}:{},Item:j,Index:Number(w),Key:b}}));else{let f=K(O),S=r.subscribe(k=>{i||f.update(({ListItem:T})=>({...k,ListItem:T}))},{destroy:()=>f.destroy()}),y={node:l,id:e,dataSignal:f,path:b==="0"?t:`${t}(${b})`,ctx:o,namespace:n,parentElement:a,instance:s},A=l.condition?m(y):u(y);g.set(F,{dataSignal:f,cleanup:S,elements:A})}}if(Array.from(d.entries()).forEach(([w,b])=>{g.has(w)||(b.cleanup(),b.dataSignal.destroy(),b.elements.forEach(j=>j.remove()))}),d=g,!(i||d.size===0)){if(!a||o.root.contains(a)===!1){console.error(`Repeat: Parent element does not exist for ${t}. This is likely due to the DOM being modified outside of toddle.`);return}ho(a,Array.from(d.values()).flatMap(w=>w.elements),Dt(t,a))}},{destroy:()=>Array.from(d.values()).forEach(E=>{E.cleanup(),E.dataSignal.destroy(),E.elements.forEach(g=>g.remove())})}),i=!1,Array.from(d.values()).flatMap(E=>E.elements)}return l.repeat?v():l.condition?m({node:l,dataSignal:r,ctx:o,id:e,path:t,namespace:n,parentElement:a,instance:s}):u({node:l,dataSignal:r,ctx:o,id:e,path:t,namespace:n,parentElement:a,instance:s})}var vl=new ce;function me({component:e,dataSignal:r,onEvent:t,isRootComponent:o,path:n,children:a,formulaCache:s,components:l,apis:u,abortSignal:m,root:v,providers:i,package:d,parentElement:h,instance:E,toddle:g,namespace:w,env:b}){let j={triggerEvent:t,component:e,components:l,dataSignal:r,isRootComponent:o,apis:u,formulaCache:s,children:a,abortSignal:m,root:v,providers:i,package:d,toddle:g,env:b},O=W({id:"root",path:n,dataSignal:r,ctx:j,parentElement:h,namespace:w,instance:E});return vl.add(()=>{let F;e.onAttributeChange?.actions&&e.onAttributeChange.actions.length>0&&r.map(c=>c.Attributes).subscribe(c=>{F&&e.onAttributeChange?.actions.forEach(f=>{$(f,r.get(),j,new CustomEvent("attribute-change",{detail:Object.entries(c).reduce((S,[y,A])=>((0,Fo.default)(A,F[y])===!1&&e.attributes[y]?.name&&(S[e.attributes[y]?.name]={current:F[y],new:A}),S),{})}))}),F=c}),e.onLoad?.actions.forEach(c=>{$(c,r.get(),j)})}),O}var he=class extends HTMLElement{toddle;#t;#e;#o;#r;#n;constructor(r,t,o){super(),this.toddle=o;let n=this.attachInternals();n.shadowRoot?this.#o=n.shadowRoot:this.#o=this.attachShadow({mode:"open"});let a={branchName:o.branch||"main",isServer:!1,request:void 0,runtime:"custom-element",logErrors:!0};this.#t=r,this.#r=Al({component:r,root:this.#o,toddle:o,env:a}),this.#n={themes:t.themes};let s=new AbortController;this.#r.subscribe(()=>{},{destroy:()=>s.abort(`Component ${r.name} unmounted`)}),this.#e={triggerEvent:this.dispatch.bind(this),root:this.#o,isRootComponent:!0,components:t.components,component:this.#t,dataSignal:this.#r,formulaCache:{},apis:{},abortSignal:s.signal,children:{},providers:{},package:void 0,toddle:o,env:a}}connectedCallback(){ie(Object.entries(this.#t.apis)).forEach(([t,o])=>{ae(o)?this.#e.apis[t]=de(o,this.#e):this.#e.apis[t]=fe(o,this.#e)}),Object.values(this.#e.apis).filter(t=>t.triggerActions!==void 0).forEach(t=>{t.triggerActions()});let r=this.#e.providers;if(pe(this.#t)){let t=Object.fromEntries(Object.entries(this.#t.formulas??{}).filter(([,o])=>o.exposeInContext).map(([o,n])=>[o,this.#r.map(a=>C(n.formula,{data:a,component:this.#t,formulaCache:this.#e.formulaCache,root:this.#e.root,package:this.#e.package,toddle:this.#e.toddle,env:this.#e.env}))]));r={...r,[this.#t.name]:{component:this.#t,formulaDataSignals:t,ctx:this.#e}}}this.#e.providers=r,this.render()}disconnectedCallback(){this.#r.destroy()}dispatch(r,t){this.dispatchEvent(new CustomEvent(r,{detail:t,bubbles:!0,composed:!0}))}render(){let r=me({...this.#e,path:"0",onEvent:this.dispatch.bind(this),parentElement:this.#o,instance:{[this.#t.name]:"root"}});this.#o.innerHTML="";let t=no(this.#e.component,this.#e.components,this.#n.themes?Object.values(this.#n.themes)[0]:ro,{includeResetStyle:!0,createFontFaces:!1}),o=document.createElement("style");o.appendChild(document.createTextNode(t)),this.#o.appendChild(o);let n=r[0];n&&this.#o.appendChild(n)}setAttribute(r,t){switch(typeof t){case"number":super.setAttribute(r,String(t));break;case"string":return super.setAttribute(r,t),this;default:super.setAttribute(r,`[Object ${typeof t}]`);break}return this.#r.set({...this.#r.get(),Attributes:{...this.#r.get().Attributes,[r]:t}}),this}getAttribute(r){return this.#r.get().Attributes[r]||super.getAttribute(r)}attributeChangedCallback(r,t,o){let n=this.getAttributeCaseInsensitive(r),a=this.getAttribute(n);o!=="[Object object]"&&parseFloat(o)!==a&&this.#r.set({...this.#r.get(),Attributes:{...this.#r.get().Attributes,[n]:o}})}getAttributeCaseInsensitive(r){let t=Object.keys(this.#r.get().Attributes).find(o=>o.toLowerCase()===r.toLowerCase());if(!t)throw new Error(`Unable to find attribute ${r} on component ${this.#t.name}`);return t}get __component(){return this.#t}get __ctx(){return this.#e}get __signal(){return this.#r}},Al=({component:e,root:r,toddle:t,env:o})=>K({Location:void 0,Variables:L(e.variables,([n,{initialValue:a}])=>{if(!e)throw new Error("Component not found");return[n,C(a,{data:{Attributes:{}},component:e,root:r,package:void 0,toddle:t,env:o})]}),Attributes:L(e.attributes,([n])=>[n,void 0]),Apis:L(e.apis,([n])=>[n,{data:null,isLoading:!1,error:null}])});var Cl=(e,r,t)=>{e.map(o=>r.components.find(n=>n.name===o)).forEach(o=>{let n=Kt(o.name);if(customElements.get(n)){console.warn(`Component ${n} already defined`);return}customElements.define(n,class extends he{constructor(){super(o,r,t)}static get observedAttributes(){return Object.keys(o.attributes??{}).map(a=>a.toLowerCase())}})})};var Af=(e=window.toddle)=>{e.isEqual=jo.default,Object.entries(wt).forEach(([r,t])=>e.registerFormula("@toddle/"+r,t.default,"getArgumentInputData"in t?t.getArgumentInputData:void 0)),Object.entries($e).forEach(([r,t])=>e.registerAction("@toddle/"+r,t.default))};export{Cl as defineComponents,Af as loadCorePlugins};
265
+ `]})}async function b({api:f,res:c,performance:S,streamType:y,useTextDecoder:A,parseChunk:k,parseChunksForData:T,delimiters:P}){let N={chunks:[],currentChunk:"",add(V){let U=k(V);this.chunks.push(U),U&&(r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!0,data:T(this.chunks),error:null,response:{headers:Object.fromEntries(c.headers.entries())}}}}),(f.client?.onMessage?.actions??[]).length>0&&l("message",f,{body:U}))},processChunk(V){let U=P?.find(ge=>V.includes(ge)),Tt=this.currentChunk+V,xt=U?Tt.split(U):[Tt];this.currentChunk=xt.pop()??"",xt.forEach(ge=>this.add(ge))}},J=A?c.body?.pipeThrough(new TextDecoderStream).getReader():c.body?.getReader();for(;J;){let{done:V,value:U}=await J.read();if(V)break;P?N.processChunk(U):N.add(U)}N.currentChunk&&N.add(N.currentChunk);let X={isLoading:!1,data:N.chunks,error:null,response:{status:c.status,headers:Object.fromEntries(c.headers.entries())}};try{if(y==="json"){let V=JSON.parse(N.chunks.join(""));X.data=V}else y==="text"&&(X.data=N.chunks.join(""))}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:N.chunks.join("")})}return j(f,X,S)}function j(f,c,S){S.responseEnd=Date.now();let y={body:c.data,status:c.response?.status,headers:c.response?.headers??void 0};Zt({apiName:f.name,response:{body:y.body,ok:!!(!c.error&&c.response?.status&&c.response.status<400),status:y.status,headers:y.headers},formulaContext:a(f),errorFormula:f.isError,performance:S})?(!y.body&&c.error&&(y.body=c.error),m(f,y,S),l("failed",f,y)):(u(f,y,S),l("success",f,y))}function O(f){return Jt(f,[["client","onCompleted"],["client","onFailed"],["client","onMessage"],["service"],["server","ssr"]])}let F;return F=r.dataSignal.map(f=>{let c=a(o);return{request:n(o),api:O(o),autoFetch:o.autoFetch?C(o.autoFetch,c):!1,proxy:C(o.server?.proxy?.enabled.formula,c)}}),F.subscribe(async f=>{let{url:c,requestSettings:S}=n(o),y=R(o.autoFetch)&&(o.autoFetch.type!=="value"||o.autoFetch.value===!0)&&(window?.__toddle?.isPageLoaded??!1)===!1?r.toddle.pageState.Apis?.[Qt(c,S)]:void 0;y?y.error?m(o,{body:y.error,status:y.response?.status,headers:y.response?.headers??void 0},{requestStart:y.response?.performance?.requestStart??null,responseStart:y.response?.performance?.responseStart??null,responseEnd:y.response?.performance?.responseEnd??null}):u(o,{body:y.data,status:y.response?.status,headers:y.response?.headers??void 0},{requestStart:y.response?.performance?.requestStart??null,responseStart:y.response?.performance?.responseStart??null,responseEnd:y.response?.performance?.responseEnd??null}):C(o.autoFetch,a(o))?await v(o,c,S):r.dataSignal.update(A=>({...A,Apis:{...A.Apis??{},[o.name]:{isLoading:!1,data:null,error:null}}}))}),{fetch:({actionInputs:f,actionModels:c})=>{let S=Object.entries(f??{}).reduce((T,[P,N])=>(N!==null&&typeof N=="object"&&"formula"in N?T[P]=N:T[P]={formula:{type:"value",value:N}},T),{}),y={...o,inputs:{...o.inputs,...S},client:{...o.client,parserMode:o.client?.parserMode??"auto",onCompleted:{trigger:o.client?.onCompleted?.trigger??"success",actions:[...o.client?.onCompleted?.actions??[],...c?.onCompleted??[]]},onFailed:{trigger:o.client?.onFailed?.trigger??"failed",actions:[...o.client?.onFailed?.actions??[],...c?.onFailed??[]]},onMessage:{trigger:o.client?.onMessage?.trigger??"message",actions:[...o.client?.onMessage?.actions??[],...c?.onMessage??[]]}}},{url:A,requestSettings:k}=n(y);return v(y,A,k)},update:f=>{o=f;let c=a(o),S=o.autoFetch&&C(o.autoFetch,c);S&&F?.set({request:n(f),api:O(f),autoFetch:S,proxy:C(f.server?.proxy?.enabled.formula,c)})},triggerActions:()=>{let f=r.dataSignal.get().Apis?.[o.name];f===void 0||f.data===null&&f.error===null||(f.error?l("failed",o,{body:f.error,status:f.response?.status}):l("success",o,{body:f.data}))},destroy:()=>F?.destroy()}}var Fo=ee(G(),1);var fe=class{batchQueue=[];isProcessing=!1;processBatch(){this.isProcessing||(this.isProcessing=!0,requestAnimationFrame(()=>{for(;this.batchQueue.length>0;)this.batchQueue.shift()?.();this.isProcessing=!1}))}add(r){this.batchQueue.push(r),this.processBatch()}};var Rt=ee(G(),1),Ot=class{value;subscribers;subscriptions;constructor(r){this.value=r,this.subscribers=new Set,this.subscriptions=[]}get(){return this.value}set(r){if(this.subscribers.size===0){this.value=r;return}(0,Rt.default)(r,this.value)===!1&&(this.value=r,this.subscribers.forEach(({notify:t})=>t(this.value)))}update(r){this.set(r(this.value))}subscribe(r,t){let o={notify:r,destroy:t?.destroy};return this.subscribers.add(o),r(this.value),()=>{this.subscribers.delete(o)}}destroy(){this.subscribers.forEach(({destroy:r})=>{r?.()}),this.subscribers.clear(),this.subscriptions?.forEach(r=>r())}cleanSubscribers(){this.subscribers.forEach(({destroy:r})=>{r?.()}),this.subscribers.clear()}map(r){let t=K(r(this.value));return t.subscriptions.push(this.subscribe(o=>t.set(r(o)),{destroy:()=>t.destroy()})),t}};function K(e){return new Ot(e)}typeof window<"u"&&(window.signal=K,window.deepEqual=Rt.default);var Dt=(e,r)=>{let o=e.split(".").slice(-1)[0],n=parseInt(o),a=parseInt(String(o.split("(")[1]));for(let s of r.children){let u=s.getAttribute("data-id")?.split(".").slice(-1)[0],m=parseInt(String(u));if(m===n&&parseInt(String(u?.split("(")[1]))>a||m>n)return s}return null};function ho(e,r,t=null){let o=t,n=o?o.previousSibling:e.lastChild;for(let a=r.length-1;a>=0;a--){let s=r[a];s===n?n=s.previousSibling:e.insertBefore(s,o),o=s}}var pe=e=>e.formulas&&Object.values(e.formulas).some(({exposeInContext:r})=>r)||e.workflows&&Object.values(e.workflows).some(({exposeInContext:r})=>r);function go(e,r,t){Object.entries(r.contexts??{}).forEach(([o,n])=>{let a=t.providers[[t.package,o].filter(R).join("/")];if(a)n.formulas.forEach(s=>{let l=a.formulaDataSignals[s];if(!l){console.warn(`Provider ${o} does not expose a formula named "${s}". Available formulas are: ["${Object.keys(a.formulaDataSignals).join('", "')}"]`);return}l.subscribe(u=>{e.update(m=>({...m,Contexts:{...m.Contexts,[o]:{...m.Contexts?.[o],[s]:u}}}))})});else if(!a&&t.env.runtime==="preview"&&t.toddle._preview){let s=t.components?.find(m=>m.name===[t.package,o].filter(R).join("/"));if(!s){console.error(`Could not find provider "${o}". No such component exist.`);return}let[,l]=o.split("/").reverse(),u={data:{Attributes:L(s.attributes,([m,v])=>[m,v.testValue])},component:s,root:t?.root,formulaCache:{},package:l??t?.package,toddle:t.toddle,env:t.env};s.route&&(u.data["URL parameters"]={...Object.fromEntries(s.route.path.filter(m=>m.type==="param").map(m=>[m.name,m.testValue])),...L(s.route.query,([m,{testValue:v}])=>[m,v])}),u.data.Variables=L(s.variables,([m,v])=>[m,C(v.initialValue,u)]),e.update(m=>({...m,Contexts:{...m.Contexts,[o]:Object.fromEntries(n.formulas.map(v=>{let i=s.formulas?.[v];return i?[v,C(i.formula,u)]:(console.warn(`Could not find formula "${v}" in component "${o}"`),[v,null])}))}}))}})}function yo(e,r){window.__components||(window.__components={}),window.__components[e.name]=r}function bo(e){return R(e.formulas)?L(e.formulas,([r,t])=>{let{canCache:o,keys:n}=t.memoize?yl(t.formula,e):{canCache:!1,keys:[]},a,s;return[r,{get:l=>o&&a&&n.every(u=>te(l,u)===te(a,u))?{hit:!0,data:s}:{hit:!1},set:(l,u)=>{o&&(a=l,s=u)}}]}):{}}function yl(e,r){let t=[];function o(a){if(a&&(a.type=="path"&&a.path[0]!=="Args"&&t.push(a.path),Array.isArray(a?.arguments)&&a?.arguments.forEach(s=>o(s.formula)),a.type==="record"&&Array.isArray(a.entries)&&a.entries.forEach(s=>o(s.formula)),a.type==="apply")){if(!r.formulas?.[a.name]?.memoize)throw new Error("Cannot memoize");o(r.formulas?.[a.name]?.formula)}}try{o(e)}catch{return{canCache:!1,keys:[]}}let n=[];return t.sort((a,s)=>a.length-s.length).forEach(a=>{n.some(s=>s.every((l,u)=>l===a[u]))||n.push(a)}),{canCache:!0,keys:n}}function vo({node:e,path:r,dataSignal:t,ctx:o,parentElement:n,instance:a,namespace:s}){let l=[o.package,e.name].filter(R).join("/"),u=o.components?.find(b=>b.name===l);if(!u)return console.warn(`Could not find component "${l}" for component "${o.component.name}". Available components are: ["${o.components.map(b=>b.name).join('", "')}"]`),[];let m=t.map(b=>L(e.attrs,([j,O])=>[j,O?.type!=="value"?C(O,{data:b,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):O?.value])),v=K({Location:t.get().Location,Attributes:m.get(),Apis:L(u.apis,([b,j])=>[b,{data:null,isLoading:!!(j.autoFetch&&C(j.autoFetch,{data:t.get(),component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),error:null}])});go(v,u,o),v.update(b=>({...b,Variables:L(u.variables,([j,O])=>[j,C(O.initialValue,{data:v.get(),component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})])})),yo(u,v);let i=new AbortController;v.subscribe(()=>{},{destroy:()=>i.abort(`Component ${u.name} unmounted`)});let d=bo(u),h={};ie(Object.entries(u.apis)).forEach(([b,j])=>{ae(j)?h[b]=de(j,{...o,apis:h,component:u,dataSignal:v,abortSignal:i.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(O,F)=>{let f=Object.values(e.events).find(c=>c.trigger===O);f&&f.actions.forEach(c=>$(c,{...t.get(),Event:F},o))}}):h[b]=ce(j,{...o,apis:h,component:u,dataSignal:v,abortSignal:i.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(O,F)=>{let f=Object.values(e.events).find(c=>c.trigger===O);f&&f.actions.forEach(c=>$(c,{...t.get(),Event:F},o))}})}),Object.values(h).filter(b=>b.triggerActions!==void 0).forEach(b=>{b.triggerActions()});let E=(b,j)=>{let O=Object.values(e.events).find(F=>F.trigger===b);O&&O.actions.forEach(F=>$(F,{...t.get(),Event:j},o))},g=o.providers;if(pe(u)){let b=Object.fromEntries(Object.entries(u.formulas??{}).filter(([,j])=>j.exposeInContext).map(([j,O])=>[j,v.map(F=>C(O.formula,{data:F,component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}))]));g={...g,[u.name]:{component:u,formulaDataSignals:b,ctx:{...o,apis:h,component:u,dataSignal:v,abortSignal:i.signal,triggerEvent:E}}}}let w={};for(let b=0;b<e.children.length;b++){let j=e.children[b],F=o.component.nodes[j].slot??"default";w[F]=w[F]??[],w[F].push({id:j,path:`${r}.${b}[${F}]`,dataSignal:t,ctx:{...o,package:e.package??o.package}})}return m.subscribe(b=>v.update(j=>({...j,Attributes:b})),{destroy:()=>v.destroy()}),me({dataSignal:v,component:u,components:o.components,path:r,root:o.root,isRootComponent:!1,children:w,formulaCache:d,providers:g,apis:h,abortSignal:i.signal,package:e.package??o.package,parentElement:n,onEvent:E,toddle:o.toddle,env:o.env,namespace:s,instance:e.id==="root"?{...a,[o.component.name]:"root"}:{[o.component.name]:e.id??""}})}function Ao(e){if(e instanceof DragEvent)return Array.from(e.dataTransfer?.items??[]).reduce((r,t)=>(r[t.type]=e.dataTransfer?.getData(t.type),r),{})}function Co(e,r,t){return r.component.version===2&&t==="root"?`${r.package??r.toddle.project}-${e.tag}`:e.tag}function kt(e,r,t){switch(r){case"srcObject":case"src":e instanceof HTMLMediaElement?e[r]=t:e.setAttribute(r,String(t));break;case"value":case"type":{let o=t;e instanceof HTMLProgressElement&&(!R(t)||!Number.isFinite(Number(t)))&&(o=0),e[r]=x(o)?String(o):void 0;break}case"muted":case"autoplay":e instanceof HTMLMediaElement?e[r]=x(t):e.setAttribute(r,String(t));break;default:x(t)?(e.setAttribute(r,String(t)),r==="autofocus"&&document.body.getAttribute("data-mode")!=="design"&&setTimeout(()=>e.focus(),100)):e.removeAttribute(r)}}function Eo({node:e,dataSignal:r,id:t,path:o,ctx:n,namespace:a,instance:s}){let l=Co(e,n,t);switch(l){case"svg":{a="http://www.w3.org/2000/svg";break}case"math":{a="http://www.w3.org/1998/Math/MathML";break}}e.attrs.xmlns&&e.attrs.xmlns.type==="value"&&(a=String(e.attrs.xmlns.value));let u=a?document.createElementNS(a,l):document.createElement(l);u.setAttribute("data-node-id",t),o&&u.setAttribute("data-id",o),n.isRootComponent===!1&&t!=="root"&&u.setAttribute("data-component",n.component.name);let m=le([e.style,e.variants]);u.classList.add(m),s&&t==="root"&&Object.entries(s).forEach(([i,d])=>{u.classList.add(ue(`${i}:${d}`))}),e.classes&&Object.entries(e.classes)?.forEach(([i,{formula:d}])=>{d?r.map(E=>x(C(d,{data:E,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env}))).subscribe(E=>E?u.classList.add(i):u.classList.remove(i)):u.classList.add(i)}),Object.entries(e.attrs).forEach(([i,d])=>{if(!R(d))return;let h,E=()=>{d.type==="value"?kt(u,i,d?.value):(h=r.map(g=>C(d,{data:g,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})),h.subscribe(g=>{kt(u,i,g)}))};i==="autofocus"&&n.env.runtime==="preview"&&n.toddle._preview?n.toddle._preview.showSignal.subscribe(({testMode:g})=>{g?E():(h?.destroy(),u.removeAttribute(i))}):E()}),e["style-variables"]?.forEach(({formula:i,name:d,unit:h})=>{r.map(g=>{let w=C(i,{data:g,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env});return h?w+h:w}).subscribe(g=>u.style.setProperty(`--${d}`,g))}),Object.values(e.events).forEach(i=>{let d=h=>(i.actions.forEach(E=>{if(h instanceof DragEvent&&(h.data=Ao(h)),h instanceof ClipboardEvent)try{h.data=Array.from(h.clipboardData?.items??[]).reduce((g,w)=>{try{g[w.type]=JSON.parse(h.clipboardData?.getData(w.type))}catch{g[w.type]=h.clipboardData?.getData(w.type)}return g},{})}catch(g){console.error("Could not get paste data",g)}$(E,{...r.get(),Event:h},n,h)}),!1);u.addEventListener(i.trigger,d)});let v=e.tag.toLocaleLowerCase();if(v==="script"||v==="style"){let i=[];e.children.map(d=>n.component.nodes[d]).filter(d=>d?.type==="text").forEach(d=>{if(d.value.type==="value")i.push(String(d.value.value));else{let h=r.map(E=>String(C(d.value,{data:E,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})));i.push(h)}}),i.every(d=>typeof d=="string")&&(u.textContent=i.join("")),i.filter(d=>typeof d!="string").forEach(d=>{d.subscribe(()=>{u.textContent=i.map(h=>typeof h=="string"?h:h.get()).join("")})})}else e.children.forEach((i,d)=>{W({parentElement:u,id:i,path:o+"."+d,dataSignal:r,ctx:n,namespace:a,instance:s}).forEach(E=>u.appendChild(E))});return u}function So({path:e,node:r,dataSignal:t,ctx:o,parentElement:n,instance:a,namespace:s}){let l=r.name??"default",u=[];if(o.children[l]?u=o.children[l].flatMap(m=>{let v=m.dataSignal.map(i=>i);return t.subscribe(i=>i,{destroy:()=>v.destroy()}),W({...m,dataSignal:v,parentElement:n,ctx:{...m.ctx,providers:o.providers},instance:a,namespace:s})}):u=r.children.flatMap((m,v)=>W({id:m,path:e+"."+v,dataSignal:t,ctx:o,parentElement:n,instance:a,namespace:s})),o.env.runtime==="custom-element"&&o.isRootComponent){let m=document.createElement("slot");return m.setAttribute("name",l),u.forEach(v=>{m.appendChild(v)}),[m]}return u}function wo({node:e,id:r,path:t,dataSignal:o,namespace:n,ctx:a}){if(n&&n!=="http://www.w3.org/1999/xhtml")return bl({node:e,dataSignal:o,ctx:a});let{value:s}=e,l=document.createElement("span");return l.setAttribute("data-node-id",r),typeof r=="string"&&l.setAttribute("data-id",t),a.isRootComponent===!1&&l.setAttribute("data-component",a.component.name),l.setAttribute("data-node-type","text"),s.type!=="value"?o.map(m=>String(C(s,{data:m,component:a.component,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:a.toddle,env:a.env}))).subscribe(m=>{l.innerText=m}):l.innerText=String(s.value),l}function bl({node:e,dataSignal:r,ctx:t}){let{value:o}=e,n=document.createTextNode("");return o.type!=="value"?r.map(s=>String(C(o,{data:s,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}))).subscribe(s=>{n.nodeValue=s}):n.nodeValue=String(o.value),n}function W({id:e,dataSignal:r,path:t,ctx:o,namespace:n,parentElement:a,instance:s}){let l=o.component.nodes[e];if(!l)return[];let u=({node:i,...d})=>{switch(i.type){case"element":return[Eo({node:i,...d})];case"component":let h=o.components.some(E=>E.name===i.name);return vo({node:{...i,id:e},...d,ctx:{...o,package:i.package??(h?void 0:o.package)},parentElement:a});case"text":return[wo({...d,node:i})];case"slot":return So({...d,node:i})}};function m({node:i,dataSignal:d,id:h,path:E,ctx:g,namespace:w,parentElement:b,instance:j}){let O=!0,F=null,f=d.map(y=>x(C(i.condition,{data:y,component:g.component,formulaCache:g.formulaCache,root:g.root,package:g.package,toddle:g.toddle,env:g.env}))),c=[],S=y=>{if(y&&c.length===0){if(F?.destroy(),F=d.map(k=>k),c.push(...u({node:i,dataSignal:F,path:E,id:h,ctx:g,namespace:w,parentElement:b,instance:j})),O)return;if(!b||g.root.contains(b)===!1){console.error(`Conditional: Parent element does not exist for "${E}" This is likely due to the DOM being modified outside of toddle.`);return}if(b.querySelector(`[data-id="${E}"]`)){console.warn(`Conditional: Element with data-id="${E}" already exists. This is likely due to the DOM being modified outside of toddle`);return}let A=Dt(E,b);for(let k of c)b.insertBefore(k,A)}else y||(F?.destroy(),c.forEach(A=>A.remove()),c.splice(0,c.length))};return f.subscribe(S,{destroy:()=>{F?.destroy()}}),g.env.runtime==="preview"&&g.toddle._preview&&g.toddle._preview.showSignal.subscribe(({displayedNodes:y,testMode:A})=>{y.includes(E)&&!A?S(!0):S(f.get())}),O=!1,c}function v(){let i=!0,d=new Map;return r.map(E=>{let g=C(l.repeat,{data:E,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env});return typeof g!="object"?[]:Object.entries(g??{})}).subscribe(E=>{let g=new Map;for(let w=0;w<E.length;w++){let[b,j]=E[w],O={...r.get(),ListItem:{...r.get().ListItem?{Parent:r.get().ListItem}:{},Item:j,Index:Number(w),Key:b}},F=l.repeatKey?C(l.repeatKey,{data:O,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):b;g.has(F)&&(console.warn(`Duplicate key "${F}" found in repeat. Fallback to index as key. This will cause a re-render of the duplicated children on every change.`),F=b);let f=d.get(F);if(f)g.set(F,f),f.dataSignal.update(c=>({...c,ListItem:{...r.get().ListItem?{Parent:r.get().ListItem}:{},Item:j,Index:Number(w),Key:b}}));else{let c=K(O),S=r.subscribe(k=>{i||c.update(({ListItem:T})=>({...k,ListItem:T}))},{destroy:()=>c.destroy()}),y={node:l,id:e,dataSignal:c,path:b==="0"?t:`${t}(${b})`,ctx:o,namespace:n,parentElement:a,instance:s},A=l.condition?m(y):u(y);g.set(F,{dataSignal:c,cleanup:S,elements:A})}}if(Array.from(d.entries()).forEach(([w,b])=>{g.has(w)||(b.cleanup(),b.dataSignal.destroy(),b.elements.forEach(j=>j.remove()))}),d=g,!(i||d.size===0)){if(!a||o.root.contains(a)===!1){console.error(`Repeat: Parent element does not exist for ${t}. This is likely due to the DOM being modified outside of toddle.`);return}ho(a,Array.from(d.values()).flatMap(w=>w.elements),Dt(t,a))}},{destroy:()=>Array.from(d.values()).forEach(E=>{E.cleanup(),E.dataSignal.destroy(),E.elements.forEach(g=>g.remove())})}),i=!1,Array.from(d.values()).flatMap(E=>E.elements)}return l.repeat?v():l.condition?m({node:l,dataSignal:r,ctx:o,id:e,path:t,namespace:n,parentElement:a,instance:s}):u({node:l,dataSignal:r,ctx:o,id:e,path:t,namespace:n,parentElement:a,instance:s})}var vl=new fe;function me({component:e,dataSignal:r,onEvent:t,isRootComponent:o,path:n,children:a,formulaCache:s,components:l,apis:u,abortSignal:m,root:v,providers:i,package:d,parentElement:h,instance:E,toddle:g,namespace:w,env:b}){let j={triggerEvent:t,component:e,components:l,dataSignal:r,isRootComponent:o,apis:u,formulaCache:s,children:a,abortSignal:m,root:v,providers:i,package:d,toddle:g,env:b},O=W({id:"root",path:n,dataSignal:r,ctx:j,parentElement:h,namespace:w,instance:E});return vl.add(()=>{let F;e.onAttributeChange?.actions&&e.onAttributeChange.actions.length>0&&r.map(f=>f.Attributes).subscribe(f=>{F&&e.onAttributeChange?.actions.forEach(c=>{$(c,r.get(),j,new CustomEvent("attribute-change",{detail:Object.entries(f).reduce((S,[y,A])=>((0,Fo.default)(A,F[y])===!1&&e.attributes[y]?.name&&(S[e.attributes[y]?.name]={current:F[y],new:A}),S),{})}))}),F=f}),e.onLoad?.actions.forEach(f=>{$(f,r.get(),j)})}),O}var he=class extends HTMLElement{toddle;#t;#e;#o;#r;#n;constructor(r,t,o){super(),this.toddle=o;let n=this.attachInternals();n.shadowRoot?this.#o=n.shadowRoot:this.#o=this.attachShadow({mode:"open"});let a={branchName:o.branch||"main",isServer:!1,request:void 0,runtime:"custom-element",logErrors:!0};this.#t=r,this.#r=Al({component:r,root:this.#o,toddle:o,env:a}),this.#n={themes:t.themes};let s=new AbortController;this.#r.subscribe(()=>{},{destroy:()=>s.abort(`Component ${r.name} unmounted`)}),this.#e={triggerEvent:this.dispatch.bind(this),root:this.#o,isRootComponent:!0,components:t.components,component:this.#t,dataSignal:this.#r,formulaCache:{},apis:{},abortSignal:s.signal,children:{},providers:{},package:void 0,toddle:o,env:a}}connectedCallback(){ie(Object.entries(this.#t.apis)).forEach(([t,o])=>{ae(o)?this.#e.apis[t]=de(o,this.#e):this.#e.apis[t]=ce(o,this.#e)}),Object.values(this.#e.apis).filter(t=>t.triggerActions!==void 0).forEach(t=>{t.triggerActions()});let r=this.#e.providers;if(pe(this.#t)){let t=Object.fromEntries(Object.entries(this.#t.formulas??{}).filter(([,o])=>o.exposeInContext).map(([o,n])=>[o,this.#r.map(a=>C(n.formula,{data:a,component:this.#t,formulaCache:this.#e.formulaCache,root:this.#e.root,package:this.#e.package,toddle:this.#e.toddle,env:this.#e.env}))]));r={...r,[this.#t.name]:{component:this.#t,formulaDataSignals:t,ctx:this.#e}}}this.#e.providers=r,this.render()}disconnectedCallback(){this.#r.destroy()}dispatch(r,t){this.dispatchEvent(new CustomEvent(r,{detail:t,bubbles:!0,composed:!0}))}render(){let r=me({...this.#e,path:"0",onEvent:this.dispatch.bind(this),parentElement:this.#o,instance:{[this.#t.name]:"root"}});this.#o.innerHTML="";let t=no(this.#e.component,this.#e.components,this.#n.themes?Object.values(this.#n.themes)[0]:ro,{includeResetStyle:!0,createFontFaces:!1}),o=document.createElement("style");o.appendChild(document.createTextNode(t)),this.#o.appendChild(o);let n=r[0];n&&this.#o.appendChild(n)}setAttribute(r,t){switch(typeof t){case"number":super.setAttribute(r,String(t));break;case"string":return super.setAttribute(r,t),this;default:super.setAttribute(r,`[Object ${typeof t}]`);break}return this.#r.set({...this.#r.get(),Attributes:{...this.#r.get().Attributes,[r]:t}}),this}getAttribute(r){return this.#r.get().Attributes[r]||super.getAttribute(r)}attributeChangedCallback(r,t,o){let n=this.getAttributeCaseInsensitive(r),a=this.getAttribute(n);o!=="[Object object]"&&parseFloat(o)!==a&&this.#r.set({...this.#r.get(),Attributes:{...this.#r.get().Attributes,[n]:o}})}getAttributeCaseInsensitive(r){let t=Object.keys(this.#r.get().Attributes).find(o=>o.toLowerCase()===r.toLowerCase());if(!t)throw new Error(`Unable to find attribute ${r} on component ${this.#t.name}`);return t}get __component(){return this.#t}get __ctx(){return this.#e}get __signal(){return this.#r}},Al=({component:e,root:r,toddle:t,env:o})=>K({Location:void 0,Variables:L(e.variables,([n,{initialValue:a}])=>{if(!e)throw new Error("Component not found");return[n,C(a,{data:{Attributes:{}},component:e,root:r,package:void 0,toddle:t,env:o})]}),Attributes:L(e.attributes,([n])=>[n,void 0]),Apis:L(e.apis,([n])=>[n,{data:null,isLoading:!1,error:null}])});var Cl=(e,r,t)=>{e.map(o=>r.components.find(n=>n.name===o)).forEach(o=>{let n=Kt(o.name);if(customElements.get(n)){console.warn(`Component ${n} already defined`);return}customElements.define(n,class extends he{constructor(){super(o,r,t)}static get observedAttributes(){return Object.keys(o.attributes??{}).map(a=>a.toLowerCase())}})})};var vc=(e=window.toddle)=>{e.isEqual=jo.default,Object.entries(wt).forEach(([r,t])=>e.registerFormula("@toddle/"+r,t.default,"getArgumentInputData"in t?t.getArgumentInputData:void 0)),Object.entries($e).forEach(([r,t])=>e.registerAction("@toddle/"+r,t.default))};export{Cl as defineComponents,vc as loadCorePlugins};
266
266
  //# sourceMappingURL=custom-element.main.esm.js.map