@nordcraft/runtime 1.0.86 → 1.0.88

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