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