@nordcraft/runtime 1.0.15 → 1.0.17

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