@nordcraft/runtime 1.0.85 → 1.0.87

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