@nordcraft/runtime 1.0.96 → 1.0.97
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/api/createAPIv2.js +4 -4
- package/dist/api/createAPIv2.js.map +1 -1
- package/dist/components/createComponent.js +6 -6
- package/dist/components/createComponent.js.map +1 -1
- package/dist/components/createElement.js +4 -4
- package/dist/components/createElement.js.map +1 -1
- package/dist/components/createNode.js +4 -6
- package/dist/components/createNode.js.map +1 -1
- package/dist/components/createText.js +1 -1
- package/dist/components/createText.js.map +1 -1
- package/dist/custom-element.main.esm.js +12 -12
- package/dist/custom-element.main.esm.js.map +3 -3
- package/dist/editor/editorUtils.d.ts +1 -0
- package/dist/editor/editorUtils.js +12 -0
- package/dist/editor/editorUtils.js.map +1 -1
- package/dist/editor-preview.main.js +20 -9
- package/dist/editor-preview.main.js.map +1 -1
- package/dist/events/handleAction.js +15 -14
- package/dist/events/handleAction.js.map +1 -1
- package/dist/page.main.esm.js +3 -3
- package/dist/page.main.esm.js.map +3 -3
- package/package.json +3 -3
- package/src/api/createAPIv2.ts +36 -24
- package/src/components/createComponent.ts +44 -24
- package/src/components/createElement.ts +4 -4
- package/src/components/createNode.ts +16 -17
- package/src/components/createText.ts +1 -0
- package/src/editor/editorUtils.ts +15 -0
- package/src/editor-preview.main.ts +30 -18
- package/src/events/handleAction.ts +41 -41
package/dist/page.main.esm.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
var An=Object.create;var xe=Object.defineProperty;var Sn=Object.getOwnPropertyDescriptor;var Cn=Object.getOwnPropertyNames;var Fn=Object.getPrototypeOf,wn=Object.prototype.hasOwnProperty;var Rn=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),m=(e,t)=>{for(var r in t)xe(e,r,{get:t[r],enumerable:!0})},jn=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Cn(t))!wn.call(e,n)&&n!==r&&xe(e,n,{get:()=>t[n],enumerable:!(o=Sn(t,n))||o.enumerable});return e};var fe=(e,t,r)=>(r=e!=null?An(Fn(e)):{},jn(t||!e||!e.__esModule?xe(r,"default",{value:e,enumerable:!0}):r,e));var de=Rn((sd,Ho)=>{"use strict";Ho.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var o,n,a;if(Array.isArray(t)){if(o=t.length,o!=r.length)return!1;for(n=o;n--!==0;)if(!e(t[n],r[n]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(a=Object.keys(t),o=a.length,o!==Object.keys(r).length)return!1;for(n=o;n--!==0;)if(!Object.prototype.hasOwnProperty.call(r,a[n]))return!1;for(n=o;n--!==0;){var s=a[n];if(!e(t[s],r[s]))return!1}return!0}return t!==t&&r!==r}});var w=e=>e!=null,H=e=>typeof e=="object"&&e!==null,x=e=>e!==!1&&e!==void 0&&e!==null;var no=(e,t)=>{for(let r=0;r<(e.arguments??[]).length;r++){let o=(e.arguments??[])[r];if(!x(v(o?.formula,t,["arguments",r,"formula"])))return!1}return!0},ao=(e,t)=>{let r=!0;if(!e.arguments||e.arguments.length===0)return r;for(let o=0;o<(e.arguments??[]).length;o++){let n=(e.arguments??[])[o];x(v(n?.formula,t,["arguments",o,"formula"]))||(r=!1)}return r};var z=typeof globalThis<"u"?globalThis:window;z.__nc_measure_max_depth=10;z.__nc_measure_enabled=typeof sessionStorage<"u"&&sessionStorage.getItem("__nc_measure")==="true";z.__nc_enableMeasure=(e=!0,t=10)=>{e?sessionStorage.setItem("__nc_measure","true"):sessionStorage.removeItem("__nc_measure"),z.__nc_measure_enabled=e,z.__nc_measure_max_depth=t};var so=0,ge=[],io=()=>{},ne=(e,t)=>{if(!z.__nc_measure_enabled)return io;let r=so++;if(ge.length>=z.__nc_measure_max_depth)return io;let o=performance.now();ge.push(e);let n=!1;return a=>{if(n)return;n=!0;let s=performance.now(),l=a?{...t,...a}:t;performance.measure(e,{start:o,end:s,detail:{devtools:{dataType:"track-entry",track:"Nordcraft devtools",properties:[...Object.entries(l).map(([i,u])=>[i,String(u)]),["Stack",ge.join(" > ")],["Measure index",r],["Sub-measures",so-r]],tooltipText:`${r}. ${e}`}}}),ge.pop()}};var lo=(e,t)=>{let r=t.component?.formulas?.[e.name];if(!r)return t.env?.logErrors&&console.log("Component does not have a formula with the name ",e.name),null;let o=ne(`Formula: ${r.name}`,{formula:e,component:t.component?.name}),n=Object.fromEntries((e.arguments??[]).map((l,i)=>l.isFunction?[l.name,u=>v(l.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}},["arguments",i])]:[l.name,v(l.formula,t,["arguments",i])])),a={...t.data,Args:t.data.Args?{...n,"@toddle.parent":t.data.Args}:n},s=t.formulaCache?.[e.name]?.get(a);if(s?.hit)return o({cache:"hit"}),s.data;{let l=v(r.formula,{...t,data:a},["formula"]);return t.formulaCache?.[e.name]?.set(a,l),o({cache:"miss"}),l}};var uo=(e,t)=>(e.arguments??[]).map((r,o)=>v(r.formula,t,["arguments",o,"formula"]));var po=(e,t)=>{let r=ne(`Formula: ${e.name}`,{formula:e,component:t.component?.name}),o=e.package??t.package??void 0,n=(t.toddle??globalThis.toddle)?.getCustomFormula(e.name,o);if(w(n)){t.package=o;let a=(e.arguments??[]).reduce((s,l,i)=>({...s,[l.name??`${i}`]:l.isFunction?u=>v(l.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}},["arguments",i]):v(l.formula,t,["arguments",i])}),{});try{return he(n)?v(n.formula,{...t,data:{...t.data,Args:a}},["formula"]):n.handler(a,{root:t.root??document,env:t.env})}catch(s){return t.toddle.errors.push(s),t.env?.logErrors&&console.error(s),null}finally{r()}}else{let a=(t.toddle??globalThis.toddle).getFormula(e.name);if(typeof a=="function"){let s=(e.arguments??[]).map((l,i)=>l.isFunction?u=>v(l.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}},["arguments",i]):v(l.formula,t,["arguments",i]));try{return a(s,t)}catch(l){return t.toddle.errors.push(l),t.env?.logErrors&&console.error(l),null}finally{r()}}}return t.env?.logErrors&&console.error(`Could not find formula ${e.name} in package ${o??""}`,e),null};var co=(e,t)=>Object.fromEntries(e.arguments?.map((r,o)=>[r.name,v(r.formula,t,["arguments",o,"formula"])])??[]);var mo=(e,t)=>{for(let r=0;r<(e.arguments??[]).length;r++){let o=(e.arguments??[])[r];if(x(v(o?.formula,t,["arguments",r,"formula"])))return!0}return!1},fo=(e,t)=>{let r=!1;for(let o=0;o<(e.arguments??[]).length;o++){let n=(e.arguments??[])[o],a=v(n?.formula,t,["arguments",o,"formula"]);x(a)&&(r=!0)}return r};var go=(e,t)=>{let r=t;for(let o of e.path)if(r&&typeof r=="object")r=r[o];else return null;return r};var ho=(e,t)=>Object.fromEntries((e.entries??[]).map((r,o)=>[r.name,v(r.formula,t,["entries",o,"formula"])]));var yo=(e,t)=>{for(let r=0;r<(e.cases??[]).length;r++){let o=(e.cases??[])[r];if(x(v(o?.condition,t,["cases",r,"condition"])))return v(o?.formula,t,["cases",r,"formula"])}return v(e.default,t,["default"])},bo=(e,t)=>{let r=null;for(let n=0;n<(e.cases??[]).length;n++){let a=(e.cases??[])[n],s=v(a?.condition,t,["cases",n,"condition"]),l=v(a?.formula,t,["cases",n,"formula"]);x(s)&&r===null&&(r={match:!0,value:l})}let o=v(e.default,t,["default"]);return r!==null?r.value:o};function J(e){return e&&typeof e=="object"&&typeof e.type=="string"&&["path","function","record","object","array","or","and","apply","value","switch"].includes(e.type)}var he=e=>Object.hasOwn(e,"formula")&&w(e.formula);function v(e,t,r){let o=[...t?.jsonPath??[],...r??[]],n={...t,jsonPath:o},a=(s,l=o)=>(n?.reportFormulaEvaluation?.(l,s),s);if(!J(e))return a(e);try{switch(e.type){case"value":return a(e.value);case"path":return a(go(e,n.data));case"switch":return n.reportFormulaEvaluation?a(bo(e,n)):yo(e,n);case"or":return n.reportFormulaEvaluation?a(fo(e,n)):mo(e,n);case"and":return n.reportFormulaEvaluation?a(ao(e,n)):no(e,n);case"object":return a(co(e,n));case"record":return a(ho(e,n));case"array":return a(uo(e,n));case"function":return a(po(e,n));case"apply":return a(lo(e,n));default:n.env?.logErrors&&console.error("Could not recognize formula",e)}}catch(s){return n.env?.logErrors&&console.error(s),a(null)}return a(void 0)}var q=(e,t)=>{let r={};for(let o in e){let[n,a]=t([o,e[o]]);r[n]=a}return r};var vo=(e,[t,...r])=>{if(r.length>0){let n=Array.isArray(e)?[...e]:{...e};return w(t)&&(n[t]=vo(n[t],r)),n}if(Array.isArray(e))return e.toSpliced(Number(t),1);let o={...e};return w(t)&&delete o[t],o},Y=(e,t)=>Object.fromEntries(Object.entries(e).filter(([r])=>!t.includes(r))),Eo=(e,t)=>t.reduce((r,o)=>vo(r,o),{...e});var Ao=(e,t)=>Object.fromEntries(Object.entries(e).filter(t));function ye(e,[t,...r]){let o=w(t)?e?.[t]:void 0;return r.length===0?o:ye(o,r)}var be=(e,t,r=!0)=>Dn(Object.entries(e),t,r),Dn=(e,t,r=!0)=>[...e].sort((o,n)=>{let a=t(o),s=t(n);return a===s?0:(a>s?1:-1)*(r?1:-1)});var So=(e,t=0)=>{let r=3735928559^t,o=1103547991^t;for(let n=0,a;n<e.length;n++)a=e.charCodeAt(n),r=Math.imul(r^a,2654435761),o=Math.imul(o^a,1597334677);return r=Math.imul(r^r>>>16,2246822507),r^=Math.imul(o^o>>>13,3266489909),o=Math.imul(o^o>>>16,2246822507),o^=Math.imul(r^r>>>13,3266489909),4294967296*(2097151&o)+(r>>>0)};var V;(function(e){e.GET="GET",e.POST="POST",e.DELETE="DELETE",e.PUT="PUT",e.PATCH="PATCH",e.HEAD="HEAD",e.OPTIONS="OPTIONS"})(V||(V={}));var ve=e=>typeof e!="string"?!1:/^application\/(json|.*\+json)/.test(e),Co=e=>typeof e!="string"?!1:/^(text\/|application\/x-www-form-urlencoded|application\/(xml|.*\+xml))/.test(e),Fo=e=>typeof e!="string"?!1:/^text\/event-stream/.test(e),wo=e=>typeof e!="string"?!1:/^(application\/stream\+json|application\/x-ndjson)/.test(e),Ro=e=>typeof e!="string"?!1:/^image\//.test(e),Z=e=>{let t={};for(let[r,o]of e.entries())t[r]?t[r]+=`, ${o}`:t[r]=o;return t};function*k({formula:e,globalFormulas:t,path:r,visitedFormulas:o,packageName:n}){if(!w(e))return;let a=r??[],s=o??new Set;switch(yield{path:a,formula:e,packageName:n??void 0},e.type){case"path":case"value":break;case"record":for(let[l,i]of(e.entries??[]).entries())yield*k({formula:i.formula,globalFormulas:t,path:[...a,"entries",l,"formula"],visitedFormulas:s,packageName:n});break;case"function":{let l=e.package??n,i=[l,e.name].filter(w).join("/"),u=!s.has(i);s.add(i);let g=l?t.packages?.[l]?.formulas?.[e.name]:t.formulas?.[e.name];for(let[p,h]of(e.arguments??[]).entries())yield*k({formula:h.formula,globalFormulas:t,path:[...a,"arguments",p,"formula"],visitedFormulas:s,packageName:n});g&&he(g)&&u&&(yield*k({formula:g.formula,globalFormulas:t,path:l?["packages",l,"formulas",e.name]:["formulas",e.name],visitedFormulas:s,packageName:l}));break}case"array":case"or":case"and":case"object":for(let[l,i]of(e.arguments??[]).entries())yield*k({formula:i.formula,globalFormulas:t,path:[...a,"arguments",l,"formula"],visitedFormulas:s,packageName:n});break;case"apply":for(let[l,i]of(e.arguments??[]).entries())yield*k({formula:i.formula,globalFormulas:t,path:[...a,"arguments",l,"formula"],visitedFormulas:s,packageName:n});break;case"switch":for(let[l,i]of e.cases?.entries()??[])yield*k({formula:i.condition,globalFormulas:t,path:[...a,"cases",l,"condition"],visitedFormulas:s,packageName:n}),yield*k({formula:i.formula,globalFormulas:t,path:[...a,"cases",l,"formula"],visitedFormulas:s,packageName:n});yield*k({formula:e.default,globalFormulas:t,path:[...a,"default"],visitedFormulas:s,packageName:n});break}}function*B({action:e,globalFormulas:t,path:r,visitedFormulas:o=new Set,packageName:n}){if(!w(e))return;let a=r??[];switch(e.type){case"AbortFetch":break;case"Fetch":for(let[s,l]of Object.entries(e.inputs??{}))yield*k({formula:l.formula,globalFormulas:t,path:[...a,"input",s,"formula"],visitedFormulas:o,packageName:n});for(let[s,l]of Object.entries(e.onSuccess?.actions??{}))yield*B({action:l,globalFormulas:t,path:[...a,"onSuccess","actions",s],visitedFormulas:o,packageName:n});for(let[s,l]of Object.entries(e.onError?.actions??{}))yield*B({action:l,globalFormulas:t,path:[...a,"onError","actions",s],visitedFormulas:o,packageName:n});for(let[s,l]of Object.entries(e.onMessage?.actions??{}))yield*B({action:l,globalFormulas:t,path:[...a,"onMessage","actions",s],visitedFormulas:o,packageName:n});break;case"Custom":case void 0:case null:{J(e.data)&&(yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n}));for(let[s,l]of Object.entries(e.arguments??{}))l&&(yield*k({formula:l.formula,globalFormulas:t,path:[...a,"arguments",s,"formula"],visitedFormulas:o,packageName:n}));for(let[s,l]of Object.entries(e.events??{}))for(let[i,u]of Object.entries(l.actions??{}))yield*B({action:u,globalFormulas:t,path:[...a,"events",s,"actions",i],visitedFormulas:o,packageName:n});break}case"SetVariable":case"TriggerEvent":case"TriggerWorkflowCallback":yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameter":yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameters":for(let[s,l]of Object.entries(e.parameters??{}))yield*k({formula:l,globalFormulas:t,path:[...a,"parameters",s],visitedFormulas:o,packageName:n});break;case"TriggerWorkflow":for(let[s,l]of Object.entries(e.parameters??{}))w(l.formula)&&(yield*k({formula:l.formula,globalFormulas:t,path:[...a,"parameters",s,"formula"],visitedFormulas:o,packageName:n}));break;case"Switch":w(e.data)&&J(e.data)&&(yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n}));for(let[s,l]of(e.cases??[]).entries()){yield*k({formula:l.condition,globalFormulas:t,path:[...a,"cases",s,"condition"],visitedFormulas:o,packageName:n});for(let[i,u]of Object.entries(l.actions))yield*B({action:u,globalFormulas:t,path:[...a,"cases",s,"actions",i],visitedFormulas:o,packageName:n})}for(let[s,l]of Object.entries(e.default?.actions??[]))yield*B({action:l,globalFormulas:t,path:[...a,"default","actions",s],visitedFormulas:o,packageName:n});break}}var ue=class{api;key;globalFormulas;_apiReferences;constructor(t,r,o){this.api=t,this.key=r,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let t=new Set,r=o=>{if(w(o))switch(o.type){case"path":if(o.path[0]==="Apis"){let n=o.path[1];typeof n=="string"&&t.add(n)}break;case"value":break;case"record":o.entries?.forEach(n=>r(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>r(n.formula));break;case"switch":o.cases?.forEach(n=>{r(n.condition),r(n.formula)});break}};return r(this.api.autoFetch),r(this.api.url),Object.values(this.api.path??{}).forEach(o=>r(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>r(o.formula)),J(this.api.headers)?r(this.api.headers):Object.values(this.api.headers??{}).forEach(o=>{r(o)}),r(this.api.body),this._apiReferences=t,t}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get proxy(){return this.api.proxy}get queryParams(){return this.api.queryParams}get headers(){return this.api.headers}get method(){return this.api.method}get body(){return this.api.body}get auth(){return this.api.auth}get throttle(){return this.api.throttle}get debounce(){return this.api.debounce}get onCompleted(){return this.api.onCompleted}get onFailed(){return this.api.onFailed}*formulasInApi(){let t=this.api,r=this.key;yield*k({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*k({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]});if(J(t.headers))yield*k({formula:t.headers,globalFormulas:this.globalFormulas,path:["apis",r,"headers"]});else for(let[o,n]of Object.entries(t.headers??{}))yield*k({formula:n,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o]});yield*k({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]});for(let[o,n]of Object.entries(t.onCompleted?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onCompleted","actions",o]});for(let[o,n]of Object.entries(t.onFailed?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onFailed","actions",o]})}};function*K(e,t=[]){if(w(e))switch(yield[t,e],e.type){case"AbortFetch":case"SetURLParameter":case"SetURLParameters":case"SetVariable":case"TriggerEvent":case"TriggerWorkflow":case"TriggerWorkflowCallback":break;case"Fetch":for(let[r,o]of Object.entries(e.onSuccess?.actions??{}))yield*K(o,[...t,"onSuccess","actions",r]);for(let[r,o]of Object.entries(e.onError?.actions??{}))yield*K(o,[...t,"onError","actions",r]);for(let[r,o]of Object.entries(e.onMessage?.actions??{}))yield*K(o,[...t,"onMessage","actions",r]);break;case"Custom":case void 0:case null:for(let[r,o]of Object.entries(e.events??{}))for(let[n,a]of Object.entries(o?.actions??{}))yield*K(a,[...t,"events",r,"actions",n]);break;case"Switch":for(let[r,o]of(e.cases??[]).entries())for(let[n,a]of Object.entries(o?.actions??{}))yield*K(a,[...t,"cases",r,"actions",n]);for(let[r,o]of Object.entries(e.default?.actions??[]))yield*K(o,[...t,"default","actions",r]);break}}var Ee=class{api;_apiReferences;key;globalFormulas;constructor(t,r,o){this.api=t,this.key=r,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let t=new Set,r=o=>{if(w(o))switch(o.type){case"path":if(o.path[0]==="Apis"){let n=o.path[1];typeof n=="string"&&t.add(n)}break;case"value":break;case"record":o.entries?.forEach(n=>r(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>r(n.formula));break;case"switch":o.cases?.forEach(n=>{r(n.condition),r(n.formula)});break}};return r(this.api.autoFetch),r(this.api.url),Object.values(this.api.path??{}).forEach(o=>r(o.formula)),Object.values(this.api.headers??{}).forEach(o=>r(o.formula)),r(this.api.body),Object.values(this.api.inputs).forEach(o=>r(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>{r(o.formula)}),r(this.api.server?.proxy?.enabled?.formula),r(this.api.server?.ssr?.enabled?.formula),r(this.api.client?.debounce?.formula),Object.values(this.api.redirectRules??{}).forEach(o=>{r(o.formula)}),r(this.api.isError?.formula),r(this.api.timeout?.formula),t.delete(this.key),this._apiReferences=t,t}get version(){return this.api.version}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get headers(){return this.api.headers}set headers(t){this.api.headers=t}get method(){return this.api.method}get body(){return this.api.body}get inputs(){return this.api.inputs}get queryParams(){return this.api.queryParams}get server(){return this.api.server}get client(){return this.api.client}get redirectRules(){return this.api.redirectRules}get isError(){return this.api.isError}get timeout(){return this.api.timeout}get"@nordcraft/metadata"(){return this.api["@nordcraft/metadata"]}*formulasInApi(){let t=this.api,r=this.key;for(let[o,n]of Object.entries(this.api.inputs))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"inputs",o,"formula"]});yield*k({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*k({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]}),yield*k({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"enabled"]});for(let[o,n]of Object.entries(t.headers??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"formula"]}),yield*k({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"enabled"]});t.method&&Ie.includes(t.method)&&(yield*k({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]}));for(let[o,n]of Object.entries(t.client?.onCompleted?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onCompleted","actions",o]});for(let[o,n]of Object.entries(t.client?.onFailed?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onFailed","actions",o]});yield*k({formula:t.client?.debounce?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"client","debounce","formula"]});for(let[o,n]of Object.entries(t.client?.onMessage?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onMessage","actions",o]});for(let[o,n]of Object.entries(t.redirectRules??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"redirectRules",o,"formula"]});yield*k({formula:t.isError?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"isError","formula"]}),yield*k({formula:t.timeout?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"timeout","formula"]}),yield*k({formula:t.server?.proxy?.enabled.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","enabled","formula"]}),yield*k({formula:t.server?.proxy?.useTemplatesInBody?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","useTemplatesInBody","formula"]}),yield*k({formula:t.server?.ssr?.enabled?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","ssr","enabled","formula"]})}*actionModelsInApi(){for(let[t,r]of Object.entries(this.api.client?.onCompleted?.actions??{}))yield*K(r,["apis",this.key,"client","onCompleted","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onFailed?.actions??{}))yield*K(r,["apis",this.key,"client","onFailed","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onMessage?.actions??{}))yield*K(r,["apis",this.key,"client","onData","actions",t])}};var Ae=e=>e instanceof ue?!0:!("version"in e),jo=({api:e,formulaContext:t,baseUrl:r,defaultHeaders:o})=>{let n=On(e,{...t,jsonPath:["apis",e.name]},r),a=Pn({api:e,formulaContext:t,defaultHeaders:o});return{url:n,requestSettings:a}},On=(e,t,r)=>{let o="",n=new URLSearchParams,a,s=v(e.url,t,["url"]);if(["string","number"].includes(typeof s)){let d=typeof s=="number"?String(s):s;try{a=new URL(d,r??void 0),o=a.pathname,n=a.searchParams}catch{}}let l=Nn(e.path,t),i=`${o}${l.length>0&&!o.endsWith("/")?"/":""}${l}`,u=new URLSearchParams([...n,...kn(e.queryParams,t)]),g=[...u.entries()].length>0?`?${u.toString()}`:"",p=v(e.hash?.formula,t,["hash","formula"]),h=typeof p=="string"&&p.length>0?`#${p}`:"";if(a){let d=new URL(a.origin,r??void 0);return d.pathname=i,d.search=u.toString(),d.hash=h,d}else return new URL(`${i}${g}${h}`,r??void 0)},Ie=[V.POST,V.DELETE,V.PUT,V.PATCH,V.OPTIONS],Tn=(e,t,r)=>{if(e.timeout){let o=v(e.timeout.formula,r,["timeout","formula"]);typeof o=="number"&&!Number.isNaN(o)&&o>0&&(t.signal=AbortSignal.timeout(o))}},Pn=({api:e,formulaContext:t,defaultHeaders:r})=>{let o=Object.values(V).includes(e.method)?e.method:V.GET,n=xn({apiHeaders:e.headers,formulaContext:t,defaultHeaders:r}),a=In({api:e,formulaContext:t,headers:n,method:o});n.get("content-type")==="multipart/form-data"&&n.delete("content-type");let s={method:o,headers:n,body:a};return Tn(e,s,t),s},Nn=(e,t)=>be(e??{},([r,o])=>o.index).map(([r,o])=>v(o.formula,t,["path",r])).join("/"),kn=(e,t)=>{let r=new URLSearchParams;return Object.entries(e??{}).forEach(([o,n])=>{if(!(w(n.enabled)?v(n.enabled,t,["queryParams",o,"enabled"]):!0))return;let s=v(n.formula,t,["queryParams",o,"formula"]);if(w(s))if(Array.isArray(s))s.forEach(l=>r.append(o,String(l)));else if(H(s)){let l=(i,u)=>{Object.entries(i).forEach(([g,p])=>{if(!Array.isArray(p)&&H(p))return l(p,`${u}[${g}]`);r.set(`${u}[${g}]`,String(p))})};l(s,o)}else r.set(o,String(s))}),r},xn=({apiHeaders:e,formulaContext:t,defaultHeaders:r})=>{let o=new Headers(r);return Object.entries(e??{}).forEach(([n,a])=>{if(w(a.enabled)?v(a.enabled,t,["headers",n,"enabled"]):!0){let l=v(a.formula,t,["headers",n,"formula"]);if(w(l))try{o.set(n.trim(),(typeof l=="string"?l:String(l)).trim())}catch{}}}),o};var Do=(e,t)=>So(JSON.stringify({url:e.href,method:t.method,headers:Y(Object.fromEntries(Object.entries(t.headers??{})),["host","cookie"]),body:t.body??null})),Oo=({apiName:e,response:t,formulaContext:r,errorFormula:o,performance:n})=>{let a=o?v(o.formula,{component:r.component,package:r.package,toddle:r.toddle,data:{Attributes:{},Args:r.data.Args,Apis:{[e]:{isLoading:!1,data:t.body,error:null,response:{status:t.status,headers:t.headers,performance:n}}}},env:r.env,jsonPath:["apis",e,"isError","formula"],reportFormulaEvaluation:r.reportFormulaEvaluation}):null;return a==null?!t.ok:x(a)},In=({api:e,formulaContext:t,headers:r,method:o})=>{if(!e.body||!Ie.includes(o))return;let n=v(e.body,t,["body"]);if(!n)return;let a=r.get("content-type");if(!w(a)||ve(a))return JSON.stringify(n);switch(a){case"application/x-www-form-urlencoded":return typeof n=="object"&&n!==null?Object.entries(n).map(([s,l])=>Array.isArray(l)?l.map(i=>`${encodeURIComponent(s)}=${encodeURIComponent(i)}`).join("&"):`${encodeURIComponent(s)}=${encodeURIComponent(String(l))}`).join("&"):"";case"multipart/form-data":{let s=new FormData;return typeof n=="object"&&n!==null&&Object.entries(n).forEach(([l,i])=>{s.set(l,i)}),s}case"text/plain":return String(n);default:return n}},Se=(e,t)=>new CustomEvent(e,{detail:t}),Mn=(e,t)=>{let r=e.apiReferences.has(t.name),o=t.apiReferences.has(e.name);return r===o?0:r?1:-1},Ce=e=>{let t=new Map,r=(o,n)=>{let a=t.get(n);return a||(a=o.version===2?new Ee(o,n,{formulas:{},packages:{}}):new ue(o,n,{formulas:{},packages:{}}),t.set(n,a)),a};return[...e].sort(([o,n],[a,s])=>{let l=r(n,o),i=r(s,a);return Mn(l,i)})};var To="nc-custom-properties",Me="data-nc-theme",ae="nc-theme";var Po=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"];var rt={};m(rt,{clearLocalStorage:()=>Ye,clearSessionStorage:()=>ze,copyToClipboard:()=>qe,deleteFromLocalStorage:()=>Xe,deleteFromSessionStorage:()=>_e,focus:()=>Be,gotToURL:()=>et,interval:()=>He,logToConsole:()=>Ve,preventDefault:()=>Qe,saveToLocalStorage:()=>Ue,saveToSessionStorage:()=>Je,setCookie:()=>$e,setHttpOnlyCookie:()=>Ke,setSessionCookies:()=>tt,setTheme:()=>Ge,share:()=>Le,sleep:()=>We,stopPropagation:()=>Ze});var Le={};m(Le,{default:()=>_n});var Ln=([e,t,r])=>{let o=a=>w(a)&&typeof a=="string";if(!o(e)&&!o(t)&&!o(r))throw new Error("Either url, text or title must be provided");let n={};if(o(t)&&(n.title=t),o(r)&&(n.text=r),o(e)&&(n.url=e),w(navigator.share)&&navigator.canShare(n))return navigator.share(n)},_n=Ln;var _e={};m(_e,{default:()=>qn});var $n=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.removeItem(e)},qn=$n;var $e={};m($e,{default:()=>Un});var Bn=async function([e,t,r,o,n,a],s){let l=h=>s.triggerActionEvent("Error",new Error(h));if(typeof e!="string"){l('The "Name" argument must be a string');return}if(typeof t!="string"){l('The "Value" argument must be a string');return}let i=o??"Lax";if(typeof i!="string"||!["lax","strict","none"].includes(i.toLocaleLowerCase())){l('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let u=n??"/";if(typeof u!="string"||!u.startsWith("/")){l('The "Path" argument must be a string and start with /');return}if(r!=null&&(typeof r!="number"||isNaN(r))){l('The "Expires in" argument must be a number');return}let g=a??!0;if(typeof g!="boolean"){l('The "Include Subdomains" argument must be a boolean');return}let p=`${e}=${t}; SameSite=${i}; Path=${u}`;if(typeof r=="number"){let h=new Date(Date.now()+r*1e3);p+=`; Expires=${h.toUTCString()}`}g&&(p+=`; Domain=${window.location.hostname}`),document.cookie=p,s.triggerActionEvent("Success",void 0)},Un=Bn;var qe={};m(qe,{default:()=>Vn});var Hn=([e])=>{if(typeof e!="string")throw new Error("Input value must be a string");return navigator.clipboard.writeText(e)},Vn=Hn;var Be={};m(Be,{default:()=>Wn});var Kn=([e,t])=>{e instanceof HTMLElement&&e.focus({preventScroll:x(t)})},Wn=Kn;var Ue={};m(Ue,{default:()=>Gn});var Jn=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.setItem(e,JSON.stringify(t))},Gn=Jn;var He={};m(He,{default:()=>zn});var Qn=([e],t)=>{let r=Number(e);if(!w(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setInterval(()=>t.triggerActionEvent("tick",null),r);t.abortSignal.addEventListener("abort",()=>{clearInterval(o)})},zn=Qn;var Ve={};m(Ve,{default:()=>Zn});var Yn=([e,t])=>{console.log(e,t)},Zn=Yn;var Ke={};m(Ke,{default:()=>ea});var Xn=async function([e,t,r,o,n,a],s){let l=h=>s.triggerActionEvent("Error",new Error(h));if(typeof e!="string"){l('The "Name" argument must be a string');return}if(typeof t!="string"){l('The "Value" argument must be a string');return}let i=o??"Lax";if(typeof i!="string"||!["lax","strict","none"].includes(i.toLocaleLowerCase())){l('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let u=n??"/";if(typeof u!="string"||!u.startsWith("/")){l('The "Path" argument must be a string and start with /');return}if(r!=null&&(typeof r!="number"||isNaN(r))){l('The "Expires in" argument must be a number');return}let g=a??!0;if(typeof g!="boolean"){l('The "Include Subdomains" argument must be a boolean');return}let p=new URLSearchParams;p.set("name",e),p.set("value",t),p.set("sameSite",i),p.set("path",u),p.set("includeSubdomains",String(g)),typeof r=="number"&&p.set("ttl",String(r));try{let h=await fetch(`/.nordcraft/cookies/set-cookie?${p.toString()}`);h.ok?s.triggerActionEvent("Success",void 0):l(await h.text())}catch(h){l(h instanceof Error?h.message:"An unexpected error occurred")}},ea=Xn;var We={};m(We,{default:()=>ra});var ta=([e],t)=>{let r=Number(e);if(!w(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setTimeout(()=>t.triggerActionEvent("tick",null),r);t.abortSignal.addEventListener("abort",()=>{clearTimeout(o)})},ra=ta;var Je={};m(Je,{default:()=>na});var oa=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.setItem(e,JSON.stringify(t))},na=oa;var Ge={};m(Ge,{default:()=>ia});var aa=3600*24*365,sa=async function([e],t){if(typeof e!="string"&&e!==null){t.triggerActionEvent("Error",new Error('The "Name" argument must be a string or null'));return}let r=e===null||e==="";try{await cookieStore.set({name:ae,value:e??"",path:"/",expires:r?0:Date.now()+aa,sameSite:"none"}),t.triggerActionEvent("Success",void 0)}catch(o){t.triggerActionEvent("Error",o)}},ia=sa;var Qe={};m(Qe,{default:()=>ua});var la=(e,t,r)=>{r?.preventDefault?.()},ua=la;var ze={};m(ze,{default:()=>da});var pa=async function(){window.sessionStorage.clear()},da=pa;var Ye={};m(Ye,{default:()=>ma});var ca=async function(){window.localStorage.clear()},ma=ca;var Ze={};m(Ze,{default:()=>ga});var fa=(e,t,r)=>{r?.stopPropagation?.()},ga=fa;var Xe={};m(Xe,{default:()=>ya});var ha=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.removeItem(e)},ya=ha;var et={};m(et,{default:()=>va});var ba=([e],t)=>{typeof e=="string"&&(t.env.runtime==="preview"?window.parent?.postMessage({type:"blockedNavigation",url:e},"*"):window.location.href=e)},va=ba;var tt={};m(tt,{default:()=>Aa});var Ea=async function([e,t],r){let o=[typeof e=="string"?`name=access_token&value=${encodeURIComponent(e)}`:void 0,isNaN(Number(t))?void 0:`ttl=${t}`].filter(a=>a).join("&"),n=await fetch(`/.toddle/cookies/set-session-cookie?${o}`);n.ok?r.triggerActionEvent("Success",void 0):r.triggerActionEvent("Error",new Error(await n.text()))},Aa=Ea;var Qr={};m(Qr,{Id:()=>jt,absolute:()=>Wt,add:()=>$t,append:()=>Ur,boolean:()=>Dt,branchName:()=>Ot,canShare:()=>xr,capitalize:()=>Gt,clamp:()=>gr,concatenate:()=>Qt,currentURL:()=>Ir,dateFromString:()=>ir,dateFromTimestamp:()=>hr,decodeBase64:()=>zt,decodeURIComponent:()=>Yt,defaultTo:()=>ht,deleteKey:()=>Zt,divide:()=>Gr,drop:()=>cr,dropLast:()=>pr,encodeBase64:()=>Lt,encodeJSON:()=>ot,encodeURIComponent:()=>Lr,entries:()=>xt,equals:()=>Cr,every:()=>or,filter:()=>qr,find:()=>Tt,findIndex:()=>kr,findLast:()=>dr,first:()=>pt,flatten:()=>st,formatDate:()=>ur,formatNumber:()=>lt,fromEntries:()=>Nt,get:()=>Hr,getCookie:()=>Fr,getElementById:()=>Bt,getFromLocalStorage:()=>Er,getFromSessionStorage:()=>Sr,getHttpOnlyCookie:()=>_r,greaterOrEqueal:()=>St,greaterThan:()=>Ft,groupBy:()=>Mt,includes:()=>Kt,indexOf:()=>lr,isServer:()=>Wr,join:()=>wr,json:()=>Jr,keyBy:()=>Jt,languages:()=>ut,last:()=>kt,lastIndexOf:()=>Or,lessOrEqual:()=>dt,lessThan:()=>mr,logarithm:()=>mt,lowercase:()=>it,map:()=>rr,matches:()=>Ht,max:()=>jr,min:()=>Kr,minus:()=>Dr,modulo:()=>fr,multiply:()=>sr,not:()=>ct,notEqual:()=>Mr,now:()=>_t,number:()=>Et,parseJSON:()=>vt,parseURL:()=>ar,power:()=>br,prepend:()=>Ar,randomNumber:()=>yt,range:()=>gt,reduce:()=>tr,replaceAll:()=>Tr,reverse:()=>Rr,round:()=>It,roundDown:()=>Vr,roundUp:()=>Pr,set:()=>Pt,shuffle:()=>bt,size:()=>Br,some:()=>ft,sort_by:()=>Ut,split:()=>Vt,squareRoot:()=>Ct,startsWith:()=>nt,string:()=>yr,sum:()=>vr,take:()=>At,takeLast:()=>qt,timestamp:()=>Xt,trim:()=>er,typeOf:()=>wt,unique:()=>$r,uppercase:()=>at,userAgent:()=>Nr});var ot={};m(ot,{default:()=>Ca});var Sa=([e,t])=>typeof t!="number"?null:JSON.stringify(e,null,t),Ca=Sa;var nt={};m(nt,{default:()=>wa});var Fa=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.startsWith(t),wa=Fa;var at={};m(at,{default:()=>ja});var Ra=([e])=>typeof e!="string"?null:e.toLocaleUpperCase(),ja=Ra;var st={};m(st,{default:()=>Oa});var Da=([e])=>Array.isArray(e)?e.flat():null,Oa=Da;var it={};m(it,{default:()=>Pa});var Ta=([e])=>typeof e!="string"?null:e.toLocaleLowerCase(),Pa=Ta;var lt={};m(lt,{default:()=>ka});var Na=([e,t,r])=>{if(typeof e!="number"||Number.isNaN(e))return null;let o=typeof t=="string"&&t.length>0||Array.isArray(t)&&t.every(A=>typeof A=="string")?t:void 0;if(!r||typeof r!="object")return Intl.NumberFormat(o).format(e);let n=(A,T)=>typeof A=="string"&&(T?.includes(A)??!0)?A:void 0,a=r,s=n(a.style,["decimal","currency","percent","unit"]),l=typeof a.currency=="string"&&a.currency.length===3?a.currency:void 0;if(s==="currency"&&typeof l!="string")return null;let i=n(a.currencyDisplay,["code","symbol","narrowSymbol","name"]),u=typeof a.unit=="string"?a.unit:void 0;if(s==="unit"&&typeof u!="string")return null;let g=n(a.unitDisplay,["short","narrow","long"]),p=typeof a.minimumIntegerDigits=="number"&&a.minimumIntegerDigits>=1&&a.minimumIntegerDigits<=21?a.minimumIntegerDigits:void 0,h=typeof a.minimumFractionDigits=="number"&&a.minimumFractionDigits>=0&&a.minimumFractionDigits<=100?a.minimumFractionDigits:void 0,d=typeof a.maximumFractionDigits=="number"&&a.maximumFractionDigits>=0&&a.maximumFractionDigits<=100?a.maximumFractionDigits:void 0,E=typeof a.minimumSignificantDigits=="number"&&a.minimumSignificantDigits>=1&&a.minimumSignificantDigits<=21?a.minimumSignificantDigits:void 0,S=typeof a.maximumSignificantDigits=="number"&&a.maximumSignificantDigits>=1&&a.maximumSignificantDigits<=21?a.maximumSignificantDigits:void 0,C=n(a.notation,["standard","scientific","engineering","compact"]),D=n(a.compactDisplay,["short","long"]),N=["always","auto","min2"],F=typeof a.useGrouping=="boolean"?a.useGrouping:n(a.useGrouping,N);return new Intl.NumberFormat(o,{style:s,currency:l,currencyDisplay:i,unit:u,unitDisplay:g,minimumIntegerDigits:p,minimumFractionDigits:h,maximumFractionDigits:d,minimumSignificantDigits:E,maximumSignificantDigits:S,notation:C,compactDisplay:D,useGrouping:F}).format(e)},ka=Na;var ut={};m(ut,{default:()=>Ia});var xa=(e,{env:t})=>t.isServer?t.request?.headers["accept-language"]?.split(",").map(r=>r.split(";")[0]??"")??[]:window.navigator.languages,Ia=xa;var pt={};m(pt,{default:()=>La});var Ma=([e])=>typeof e=="string"||Array.isArray(e)?e[0]:null,La=Ma;var dt={};m(dt,{default:()=>$a});var _a=([e,t])=>e<=t,$a=_a;var ct={};m(ct,{default:()=>Ba});var qa=([e])=>!x(e),Ba=qa;var mt={};m(mt,{default:()=>Ha});var Ua=([e])=>typeof e!="number"||Number.isNaN(e)||e<0?null:Math.log(e),Ha=Ua;var ft={};m(ft,{default:()=>Va,getArgumentInputData:()=>Ka,handler:()=>No});var No=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.some((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).some(([r,o])=>t({key:r,value:o})):null,Va=No,Ka=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var gt={};m(gt,{default:()=>Ja});var Wa=([e,t])=>typeof e!="number"||typeof t!="number"?null:e>t?[]:Array.from({length:t-e+1},(r,o)=>o+e),Ja=Wa;var ht={};m(ht,{default:()=>Qa});var Ga=e=>{for(let t of e)if(x(t))return t;return null},Qa=Ga;var yt={};m(yt,{default:()=>Ya});var za=()=>Math.random(),Ya=za;var bt={};m(bt,{default:()=>Xa});var Za=([e])=>Array.isArray(e)?ko(e):typeof e=="string"?ko(e.split("")).join(""):null;function ko(e){let t=[...e];for(let r=t.length-1;r>0;r--){let o=Math.floor(Math.random()*(r+1));[t[r],t[o]]=[t[o],t[r]]}return t}var Xa=Za;var vt={};m(vt,{default:()=>rs});var es=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:.\d{1,3})?Z$/;function pe(e){return JSON.parse(e,(t,r)=>typeof r=="string"&&r.length===24&&es.test(r)?new Date(r):r)}var ts=([e,t])=>{if(typeof e!="string")return null;try{return t==null||t?pe(e):JSON.parse(e)}catch{return null}},rs=ts;var Et={};m(Et,{default:()=>ns});var os=([e])=>Number(e),ns=os;var At={};m(At,{default:()=>ss});var as=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(0,t):typeof e=="string"?e.substring(0,t):null,ss=as;var St={};m(St,{default:()=>ls});var is=([e,t])=>e>=t,ls=is;var Ct={};m(Ct,{default:()=>ps});var us=([e])=>typeof e!="number"?null:Math.sqrt(e),ps=us;var Ft={};m(Ft,{default:()=>cs});var ds=([e,t])=>e>t,cs=ds;var wt={};m(wt,{default:()=>fs});var ms=([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}},fs=ms;var jt={};m(jt,{default:()=>bs});var gs=0,Rt=new WeakMap;function hs(e){return Rt.has(e)||Rt.set(e,{idCounter:0}),Rt.get(e)}var ys=(e,t)=>{if(t.env.isServer){let r=hs(t.env.request);return`_id_${r.idCounter++}_`}return`_id_${gs++}_`},bs=ys;var Dt={};m(Dt,{default:()=>Es});var vs=([e])=>x(e),Es=vs;var Ot={};m(Ot,{default:()=>Ss});var As=(e,t)=>t.env.branchName,Ss=As;var Tt={};m(Tt,{default:()=>Cs,getArgumentInputData:()=>Fs,handler:()=>xo});var xo=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.find((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).find(([r,o])=>t({key:r,value:o}))?.[1]:null,Cs=xo,Fs=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var Pt={};m(Pt,{default:()=>ws});var Io=([e,t,r],o)=>{if(typeof t!="string"&&typeof t!="number"&&!Array.isArray(t))return null;let[n,...a]=Array.isArray(t)?t:[t];if(H(e)){let s=Array.isArray(e)?[...e]:{...e};return s[n]=a.length===0?r:Io([s[n],a,r],o),s}return null},ws=Io;var Nt={};m(Nt,{default:()=>js});var Rs=([e])=>{if(Array.isArray(e)){let t={};for(let{key:r,value:o}of e)t[r]=o;return t}return null},js=Rs;var kt={};m(kt,{default:()=>Os});var Ds=([e])=>typeof e=="string"||Array.isArray(e)?e[e.length-1]:null,Os=Ds;var xt={};m(xt,{default:()=>Ps});var Ts=([e])=>typeof e=="object"&&e!==null?Object.entries(e).map(([t,r])=>({key:t,value:r})):null,Ps=Ts;var It={};m(It,{default:()=>ks});var Ns=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.round(e*r)/r},ks=Ns;var Mt={};m(Mt,{default:()=>xs,getArgumentInputData:()=>Is,handler:()=>Mo});var Mo=([e,t])=>{if(typeof t!="function"||!e||typeof e!="object"||!Array.isArray(e))return null;let r={};for(let o in e){let n=e[o],a=String(t({item:n,index:o}));r[a]=r[a]??[],r[a].push(n)}return r},xs=Mo,Is=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0],index:0}}:r;var Lt={};m(Lt,{default:()=>Ls});var Ms=([e])=>typeof e!="string"?null:btoa(e),Ls=Ms;var _t={};m(_t,{default:()=>$s});var _s=()=>new Date,$s=_s;var $t={};m($t,{default:()=>Bs});var qs=e=>!Array.isArray(e)||e.some(t=>t===null||typeof t!="number")?null:e.reduce((t,r)=>t+Number(r),0),Bs=qs;var qt={};m(qt,{default:()=>Hs});var Us=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(e.length-t):typeof e=="string"?e.substring(e.length-t):null,Hs=Us;var Bt={};m(Bt,{default:()=>Ks});var Vs=([e],{root:t})=>typeof e!="string"?null:t.getElementById(e),Ks=Vs;var Ut={};m(Ut,{default:()=>Js,getArgumentInputData:()=>Gs});var Ws=([e,t,r])=>{if(!Array.isArray(e)||typeof t!="function"||typeof r!="boolean")return null;let o=r?1:-1;return[...e].sort((n,a)=>{let s=t({item:n}),l=t({item:a});if(Array.isArray(s)&&Array.isArray(l)){for(let i in s)if(s[i]!==l[i])return(s[i]>l[i]?1:-1)*o;return 0}return s===l?0:(s>l?1:-1)*o})},Js=Ws,Gs=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0]}}:r;var Ht={};m(Ht,{default:()=>zs});var Qs=([e,t,r,o,n])=>{if(typeof e!="string"||typeof t!="string")return[];let a=[x(r)?"g":"",x(o)?"i":"",x(n)?"m":""].join(""),s=new RegExp(t,a);return e.match(s)??[]},zs=Qs;var Vt={};m(Vt,{default:()=>Zs});var Ys=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.split(t),Zs=Ys;var Kt={};m(Kt,{default:()=>ei});var Xs=([e,t])=>typeof e=="string"&&typeof t=="string"?e.includes(t):Array.isArray(e)?e.some(r=>globalThis.toddle.isEqual(r,t)):null,ei=Xs;var Wt={};m(Wt,{default:()=>ri});var ti=([e])=>typeof e!="number"?null:Math.abs(e),ri=ti;var Jt={};m(Jt,{default:()=>oi,getArgumentInputData:()=>ni,handler:()=>Lo});var Lo=([e,t])=>{if(typeof t!="function"||!e||typeof e!="object")return null;let r=Array.isArray(e)?e:Object.entries(e),o={};for(let n=0;n<r.length;n++){let a=r[n],s=String(t({item:a,i:n}));o[s]=a}return o},oi=Lo,ni=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{value:o[1],key:o[0]}}}return r};var Gt={};m(Gt,{default:()=>si});var ai=([e])=>{if(typeof e!="string")return null;let t=e.at(0);return e.length===0||typeof t!="string"?e:t.toLocaleUpperCase()+e.substring(1).toLocaleLowerCase()},si=ai;var Qt={};m(Qt,{default:()=>li});var ii=e=>{if(e.every(Array.isArray)){let t=[];for(let r of e)t.push(...r);return t}return e.every(H)?Object.assign({},...e):e.join("")},li=ii;var zt={};m(zt,{default:()=>pi});var ui=([e])=>typeof e!="string"?null:atob(e),pi=ui;var Yt={};m(Yt,{default:()=>ci});var di=([e])=>typeof e!="string"?null:decodeURIComponent(e),ci=di;var Zt={};m(Zt,{default:()=>fi});var mi=([e,t])=>{if(typeof e!="object"||e===null||!Array.isArray(t)&&typeof t!="string"&&typeof t!="number")return null;let r=(n,[a,...s])=>{if(Array.isArray(n)){let l=Number(a);return Number.isNaN(l)?n:s.length===0?n.filter((i,u)=>u!==Number(a)):n.map((i,u)=>u===l?r(n[l],s):i)}return H(n)?s.length===0?Object.fromEntries(Object.entries(n).filter(([l])=>l!==a)):typeof a!="string"&&typeof a!="number"?{...n}:{...n,[a]:r(n[a],s)}:null},o=Array.isArray(t)?t:[t];return r(e,o)},fi=mi;var Xt={};m(Xt,{default:()=>hi});var gi=([e])=>!e||!(e instanceof Date)?null:e.getTime(),hi=gi;var er={};m(er,{default:()=>bi});var yi=([e])=>typeof e!="string"?null:e.trim(),bi=yi;var tr={};m(tr,{default:()=>Ei,getArgumentInputData:()=>Ai});var vi=([e,t,r])=>typeof t!="function"?null:Array.isArray(e)?e.reduce((o,n,a)=>t({result:o,item:n,index:a}),r):e&&typeof e=="object"?Object.entries(e).reduce((o,[n,a])=>t({result:o,key:n,value:a}),r):null,Ei=vi,Ai=([e,t,r],o,n)=>{if(o!==1)return n;if(Array.isArray(e))return{...n,Args:{item:e[0],index:0,result:r}};if(e&&typeof e=="object"){let[a]=Object.entries(e);if(a)return{...n,Args:{key:a[0],value:a[1],result:r}}}return n};var rr={};m(rr,{default:()=>Fi,getArgumentInputData:()=>Ci});var Si=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.map((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([r,o])=>{let n=t({key:r,value:o});return"key"in n&&"value"in n?[n.key,n.value]:null})):null,Ci=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r},Fi=Si;var or={};m(or,{default:()=>wi,getArgumentInputData:()=>Ri,handler:()=>_o});var _o=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.every((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).every(([r,o])=>t({key:r,value:o})):null,wi=_o,Ri=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var ar={};m(ar,{default:()=>Di});var nr=class{hostname;searchParams;path;hash;href;protocol;port;origin;constructor(t){this.hostname=t.hostname,this.searchParams=Object.fromEntries(t.searchParams),this.path=t.pathname.split("/").filter((r,o)=>o!==0||r!==""),this.hash=t.hash.replace("#",""),this.href=t.href,this.protocol=t.protocol,this.port=t.port,this.origin=t.origin}toString(){return this.href}},ji=([e,t])=>{if(typeof e!="string")return null;try{return new nr(new URL(e,typeof t=="string"?t:void 0))}catch{return null}},Di=ji;var sr={};m(sr,{default:()=>Ti});var Oi=e=>e.some(t=>isNaN(Number(t)))?null:e.reduce((t,r)=>t*r,1),Ti=Oi;var ir={};m(ir,{default:()=>Ni});var Pi=([e])=>typeof e=="string"?new Date(e):null,Ni=Pi;var lr={};m(lr,{default:()=>xi});var ki=([e,t])=>{if(typeof e=="string")return e.indexOf(t);if(Array.isArray(e)){let r=e.indexOf(t);return r!==-1?r:e.findIndex(o=>globalThis.toddle.isEqual(o,t))}return null},xi=ki;var ur={};m(ur,{default:()=>Mi});var Ii=([e,t,r])=>{if(!e||!(e instanceof Date))return null;let o=typeof t=="string"&&t.length>0||Array.isArray(t)&&t.every(A=>typeof A=="string")?t:void 0;if(!r||typeof r!="object")return Intl.DateTimeFormat(o).format(e);let n=(A,T)=>typeof A=="string"&&(T?.includes(A)??!0)?A:void 0,a=r,s=n(a.dateStyle,["full","long","medium","short"]),l=n(a.timeStyle,["full","long","medium","short"]),i=n(a.calendar),u=n(a.weekday,["long","short","narrow"]),g=n(a.era,["long","short","narrow"]),p=n(a.year,["numeric","2-digit"]),h=n(a.month,["long","short","narrow","numeric","2-digit"]),d=n(a.day,["numeric","2-digit"]),E=n(a.hour,["numeric","2-digit"]),S=n(a.minute,["numeric","2-digit"]),C=n(a.second,["numeric","2-digit"]),D=n(a.timeZoneName,["long","short","shortOffset","longOffset","shortGeneric","longGeneric"]),N=n(a.timeZone),F=a.hour12===!0?!0:a.hour12===!1?!1:void 0;return Intl.DateTimeFormat(o,{dateStyle:s,timeStyle:l,calendar:i,weekday:u,era:g,year:p,month:h,day:d,hour:E,minute:S,second:C,timeZoneName:D,timeZone:N,hour12:F}).format(e)},Mi=Ii;var pr={};m(pr,{default:()=>_i});var Li=([e,t])=>typeof t!="number"||isNaN(t)?null:Array.isArray(e)?e.slice(0,e.length-t):typeof e=="string"?e.substring(0,e.length-t):null,_i=Li;var dr={};m(dr,{default:()=>$i,getArgumentInputData:()=>qi,handler:()=>$o});var $o=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.findLast((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).findLast(([r,o])=>t({key:r,value:o}))?.[1]:null,$i=$o,qi=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var cr={};m(cr,{default:()=>Ui});var Bi=([e,t])=>typeof t!="number"||isNaN(t)?null:Array.isArray(e)?e.slice(t):typeof e=="string"?e.substring(t):null,Ui=Bi;var mr={};m(mr,{default:()=>Vi});var Hi=([e,t])=>e<t,Vi=Hi;var fr={};m(fr,{default:()=>Wi});var Ki=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)%Number(t),Wi=Ki;var gr={};m(gr,{default:()=>Gi});var Ji=([e,t,r])=>typeof e!="number"||typeof t!="number"||typeof r!="number"?null:Math.min(Math.max(e,t),r),Gi=Ji;var hr={};m(hr,{default:()=>zi});var Qi=([e])=>typeof e=="number"?new Date(e):null,zi=Qi;var yr={};m(yr,{default:()=>Zi});var Yi=([e])=>String(e),Zi=Yi;var br={};m(br,{default:()=>el});var Xi=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)**Number(t),el=Xi;var vr={};m(vr,{default:()=>rl});var tl=([e])=>{if(Array.isArray(e)){let t=0;for(let r of e){if(isNaN(r)||typeof r!="number")return null;t+=r}return t}return null},rl=tl;var Er={};m(Er,{default:()=>nl});var ol=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let t=window.localStorage.getItem(e);if(t===null)return t;try{return JSON.parse(t)}catch{return t}},nl=ol;var Ar={};m(Ar,{default:()=>sl});var al=([e,t])=>Array.isArray(e)?[t,...e]:null,sl=al;var Sr={};m(Sr,{default:()=>ll});var il=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let t=window.sessionStorage.getItem(e);if(t===null)return t;try{return JSON.parse(t)}catch{return t}},ll=il;var Cr={};m(Cr,{default:()=>pl});var ul=([e,t])=>globalThis.toddle.isEqual(e,t),pl=ul;var Fr={};m(Fr,{default:()=>cl});var dl=([e],{env:t,root:r})=>!e||typeof e!="string"?null:t.isServer?t.request.cookies[e]??null:r instanceof ShadowRoot?null:r.cookie.split("; ")?.find(o=>o.startsWith(`${e}=`))?.split("=")[1]??null,cl=dl;var wr={};m(wr,{default:()=>fl});var ml=([e,t])=>Array.isArray(e)?e.join(String(t)):null,fl=ml;var Rr={};m(Rr,{default:()=>hl});var gl=([e])=>Array.isArray(e)?[...e].reverse():null,hl=gl;var jr={};m(jr,{default:()=>bl});var yl=e=>Math.max(...e.map(Number)),bl=yl;var Dr={};m(Dr,{default:()=>El});var vl=([e,t])=>{let r=Number(e),o=Number(t);return isNaN(r)||isNaN(o)?null:r-o},El=vl;var Or={};m(Or,{default:()=>Sl});var Al=([e,t])=>{if(typeof e=="string")return e.lastIndexOf(t);if(Array.isArray(e)){let r=e.lastIndexOf(t);return r!==-1?r:e.findLastIndex(o=>globalThis.toddle.isEqual(o,t))}return null},Sl=Al;var Tr={};m(Tr,{default:()=>Fl});var Cl=([e,t,r])=>typeof e!="string"||typeof t!="string"?null:e.replaceAll(t,String(r)),Fl=Cl;var Pr={};m(Pr,{default:()=>Rl});var wl=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.ceil(e*r)/r},Rl=wl;var Nr={};m(Nr,{default:()=>Dl});var jl=(e,{env:t})=>t.isServer?t.request?.headers["user-agent"]??null:window.navigator.userAgent,Dl=jl;var kr={};m(kr,{default:()=>Ol,getArgumentInputData:()=>Tl,handler:()=>qo});var qo=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.findIndex((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).findIndex(([r,o])=>t({key:r,value:o})):null,Ol=qo,Tl=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var xr={};m(xr,{default:()=>Nl});var Pl=([e,t,r])=>{if(!w(navigator.canShare))return!1;let o=a=>w(a)&&typeof a=="string";if(!o(e)&&!o(t)&&!o(r))return!1;let n={};return o(t)&&(n.title=t),o(r)&&(n.text=r),o(e)&&(n.url=e),navigator.canShare(n)},Nl=Pl;var Ir={};m(Ir,{default:()=>xl});var kl=(e,{env:t})=>t.isServer?t.request.url:window?.location.href??null,xl=kl;var Mr={};m(Mr,{default:()=>Ml});var Il=([e,t])=>!globalThis.toddle.isEqual(e,t),Ml=Il;var Lr={};m(Lr,{default:()=>_l});var Ll=([e])=>typeof e!="string"?null:encodeURIComponent(e),_l=Ll;var _r={};m(_r,{default:()=>Bl});var Bo=(e,t)=>`{{ ${$l[e]}.${t} }}`,$l={cookies:"cookies"};var ql=([e])=>!e||typeof e!="string"?null:Bo("cookies",e),Bl=ql;var $r={};m($r,{default:()=>Hl});var Ul=([e])=>{if(!Array.isArray(e))return null;let t=new Set;return e.filter(r=>{let o=typeof r=="object"?JSON.stringify(r):r;return t.has(o)?!1:(t.add(o),!0)})},Hl=Ul;var qr={};m(qr,{default:()=>Vl,getArgumentInputData:()=>Kl,handler:()=>Uo});var Uo=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.filter((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).filter(([r,o])=>t({key:r,value:o}))):Array.isArray(e)?e.filter((r,o)=>t({item:r,index:o})):null,Vl=Uo,Kl=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{value:o[1],key:o[0]}}}return r};var Br={};m(Br,{default:()=>Jl});var Wl=([e])=>Array.isArray(e)?e.length:H(e)?Object.keys(e).length:typeof e=="string"?e.length:null,Jl=Wl;var Ur={};m(Ur,{default:()=>Ql});var Gl=([e,t])=>Array.isArray(e)?[...e,t]:null,Ql=Gl;var Hr={};m(Hr,{default:()=>Yl});var zl=([e,t])=>{if(typeof e=="string")return e[Number(t)];let r=(o,n)=>{if(n.length===0)return o;let[a,...s]=n;return r(o?.[String(a)],s)};return r(e,Array.isArray(t)?t:[t])},Yl=zl;var Vr={};m(Vr,{default:()=>Xl});var Zl=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.floor(e*r)/r},Xl=Zl;var Kr={};m(Kr,{default:()=>tu});var eu=e=>Math.min(...e.map(Number)),tu=eu;var Wr={};m(Wr,{default:()=>ou});var ru=(e,t)=>t.env.isServer,ou=ru;var Jr={};m(Jr,{default:()=>au});var nu=([e,t])=>{let r=isNaN(Number(t))?0:Number(t);return JSON.stringify(e,null,r)},au=nu;var Gr={};m(Gr,{default:()=>iu});var su=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)/Number(t),iu=su;var vn=fe(de(),1);function lu(e){for(var t=[],r=0;r<e.length;){var o=e[r];if(o==="*"||o==="+"||o==="?"){t.push({type:"MODIFIER",index:r,value:e[r++]});continue}if(o==="\\"){t.push({type:"ESCAPED_CHAR",index:r++,value:e[r++]});continue}if(o==="{"){t.push({type:"OPEN",index:r,value:e[r++]});continue}if(o==="}"){t.push({type:"CLOSE",index:r,value:e[r++]});continue}if(o===":"){for(var n="",a=r+1;a<e.length;){var s=e.charCodeAt(a);if(s>=48&&s<=57||s>=65&&s<=90||s>=97&&s<=122||s===95){n+=e[a++];continue}break}if(!n)throw new TypeError("Missing parameter name at ".concat(r));t.push({type:"NAME",index:r,value:n}),r=a;continue}if(o==="("){var l=1,i="",a=r+1;if(e[a]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(a));for(;a<e.length;){if(e[a]==="\\"){i+=e[a++]+e[a++];continue}if(e[a]===")"){if(l--,l===0){a++;break}}else if(e[a]==="("&&(l++,e[a+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(a));i+=e[a++]}if(l)throw new TypeError("Unbalanced pattern at ".concat(r));if(!i)throw new TypeError("Missing pattern at ".concat(r));t.push({type:"PATTERN",index:r,value:i}),r=a;continue}t.push({type:"CHAR",index:r,value:e[r++]})}return t.push({type:"END",index:r,value:""}),t}function Vo(e,t){t===void 0&&(t={});for(var r=lu(e),o=t.prefixes,n=o===void 0?"./":o,a=t.delimiter,s=a===void 0?"/#?":a,l=[],i=0,u=0,g="",p=function(f){if(u<r.length&&r[u].type===f)return r[u++].value},h=function(f){var y=p(f);if(y!==void 0)return y;var j=r[u],R=j.type,P=j.index;throw new TypeError("Unexpected ".concat(R," at ").concat(P,", expected ").concat(f))},d=function(){for(var f="",y;y=p("CHAR")||p("ESCAPED_CHAR");)f+=y;return f},E=function(f){for(var y=0,j=s;y<j.length;y++){var R=j[y];if(f.indexOf(R)>-1)return!0}return!1},S=function(f){var y=l[l.length-1],j=f||(y&&typeof y=="string"?y:"");if(y&&!j)throw new TypeError('Must have text between two parameters, missing text after "'.concat(y.name,'"'));return!j||E(j)?"[^".concat(Q(s),"]+?"):"(?:(?!".concat(Q(j),")[^").concat(Q(s),"])+?")};u<r.length;){var C=p("CHAR"),D=p("NAME"),N=p("PATTERN");if(D||N){var F=C||"";n.indexOf(F)===-1&&(g+=F,F=""),g&&(l.push(g),g=""),l.push({name:D||i++,prefix:F,suffix:"",pattern:N||S(F),modifier:p("MODIFIER")||""});continue}var A=C||p("ESCAPED_CHAR");if(A){g+=A;continue}g&&(l.push(g),g="");var T=p("OPEN");if(T){var F=d(),O=p("NAME")||"",c=p("PATTERN")||"",b=d();h("CLOSE"),l.push({name:O||(c?i++:""),pattern:O&&!c?S(F):c,prefix:F,suffix:b,modifier:p("MODIFIER")||""});continue}h("END")}return l}function Ko(e,t){return uu(Vo(e,t),t)}function uu(e,t){t===void 0&&(t={});var r=zr(t),o=t.encode,n=o===void 0?function(i){return i}:o,a=t.validate,s=a===void 0?!0:a,l=e.map(function(i){if(typeof i=="object")return new RegExp("^(?:".concat(i.pattern,")$"),r)});return function(i){for(var u="",g=0;g<e.length;g++){var p=e[g];if(typeof p=="string"){u+=p;continue}var h=i?i[p.name]:void 0,d=p.modifier==="?"||p.modifier==="*",E=p.modifier==="*"||p.modifier==="+";if(Array.isArray(h)){if(!E)throw new TypeError('Expected "'.concat(p.name,'" to not repeat, but got an array'));if(h.length===0){if(d)continue;throw new TypeError('Expected "'.concat(p.name,'" to not be empty'))}for(var S=0;S<h.length;S++){var C=n(h[S],p);if(s&&!l[g].test(C))throw new TypeError('Expected all "'.concat(p.name,'" to match "').concat(p.pattern,'", but got "').concat(C,'"'));u+=p.prefix+C+p.suffix}continue}if(typeof h=="string"||typeof h=="number"){var C=n(String(h),p);if(s&&!l[g].test(C))throw new TypeError('Expected "'.concat(p.name,'" to match "').concat(p.pattern,'", but got "').concat(C,'"'));u+=p.prefix+C+p.suffix;continue}if(!d){var D=E?"an array":"a string";throw new TypeError('Expected "'.concat(p.name,'" to be ').concat(D))}}return u}}function Wo(e,t){var r=[],o=Jo(e,r,t);return pu(o,r,t)}function pu(e,t,r){r===void 0&&(r={});var o=r.decode,n=o===void 0?function(a){return a}:o;return function(a){var s=e.exec(a);if(!s)return!1;for(var l=s[0],i=s.index,u=Object.create(null),g=function(h){if(s[h]===void 0)return"continue";var d=t[h-1];d.modifier==="*"||d.modifier==="+"?u[d.name]=s[h].split(d.prefix+d.suffix).map(function(E){return n(E,d)}):u[d.name]=n(s[h],d)},p=1;p<s.length;p++)g(p);return{path:l,index:i,params:u}}}function Q(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function zr(e){return e&&e.sensitive?"":"i"}function du(e,t){if(!t)return e;for(var r=/\((?:\?<(.*?)>)?(?!\?)/g,o=0,n=r.exec(e.source);n;)t.push({name:n[1]||o++,prefix:"",suffix:"",modifier:"",pattern:""}),n=r.exec(e.source);return e}function cu(e,t,r){var o=e.map(function(n){return Jo(n,t,r).source});return new RegExp("(?:".concat(o.join("|"),")"),zr(r))}function mu(e,t,r){return fu(Vo(e,r),t,r)}function fu(e,t,r){r===void 0&&(r={});for(var o=r.strict,n=o===void 0?!1:o,a=r.start,s=a===void 0?!0:a,l=r.end,i=l===void 0?!0:l,u=r.encode,g=u===void 0?function(y){return y}:u,p=r.delimiter,h=p===void 0?"/#?":p,d=r.endsWith,E=d===void 0?"":d,S="[".concat(Q(E),"]|$"),C="[".concat(Q(h),"]"),D=s?"^":"",N=0,F=e;N<F.length;N++){var A=F[N];if(typeof A=="string")D+=Q(g(A));else{var T=Q(g(A.prefix)),O=Q(g(A.suffix));if(A.pattern)if(t&&t.push(A),T||O)if(A.modifier==="+"||A.modifier==="*"){var c=A.modifier==="*"?"?":"";D+="(?:".concat(T,"((?:").concat(A.pattern,")(?:").concat(O).concat(T,"(?:").concat(A.pattern,"))*)").concat(O,")").concat(c)}else D+="(?:".concat(T,"(").concat(A.pattern,")").concat(O,")").concat(A.modifier);else{if(A.modifier==="+"||A.modifier==="*")throw new TypeError('Can not repeat "'.concat(A.name,'" without a prefix and suffix'));D+="(".concat(A.pattern,")").concat(A.modifier)}else D+="(?:".concat(T).concat(O,")").concat(A.modifier)}}if(i)n||(D+="".concat(C,"?")),D+=r.endsWith?"(?=".concat(S,")"):"$";else{var b=e[e.length-1],f=typeof b=="string"?C.indexOf(b[b.length-1])>-1:b===void 0;n||(D+="(?:".concat(C,"(?=").concat(S,"))?")),f||(D+="(?=".concat(C,"|").concat(S,")"))}return new RegExp(D,zr(r))}function Jo(e,t,r){return e instanceof RegExp?du(e,t):Array.isArray(e)?cu(e,t,r):mu(e,t,r)}var X=e=>"triggerActions"in e,Fe=class{abortControllers=[];applyAbortSignal=t=>{let r=new AbortController;return this.abortControllers.push(r),this.cleanupAbortedControllers(),{...t,signal:t.signal?AbortSignal.any([t.signal,r.signal]):r.signal}};abort=()=>{this.abortControllers.forEach(t=>{t.abort()}),this.abortControllers=[]};cleanupAbortedControllers=()=>{this.abortControllers=this.abortControllers.filter(t=>!t.signal.aborted)}};var Go=fe(de(),1);var ce=({query:e,page:t,route:r,params:o,hash:n})=>{let a;if(r){let i=[];for(let u of r.path)if(u.type==="static")i.push(u.name);else{let g=o[u.name];if(w(g))i.push(g);else break}a="/"+i.join("/")}else a=Ko(t,{encode:encodeURIComponent})(o);let s=n===void 0||n===""?"":"#"+n,l=Object.entries(e).filter(([i,u])=>u!==null).map(([i,u])=>`${encodeURIComponent(r?.query[i]?.name??i)}=${encodeURIComponent(String(u))}`).join("&");return`${a}${s}${l.length>0?"?"+l:""}`};function M(e,t,r,o,n){try{if(!e)throw new Error("Action does not exist");switch(e.type){case"Switch":{let a=e.cases?.find(({condition:s})=>x(v(s,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["cases","condition"])))??e.default;for(let s of a?.actions??[])M(s,{...t,...r.dataSignal.get()},r,o,n);break}case"SetVariable":{let a=v(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["data"]);r.dataSignal.update(s=>({...s,Variables:{...s.Variables,[e.variable]:a}}));break}case"TriggerEvent":{let a=v(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["data"]);r.triggerEvent(e.event,a);break}case"TriggerWorkflowCallback":{let a=v(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["data"]);n?.(e.event,a);break}case"SetURLParameter":{r.toddle.locationSignal.update(a=>{let s=v(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["data"]),l,i;if(a.route?.path.some(p=>p.name===e.parameter)?(l="push",i={...a,params:{...Y(a.params,[e.parameter]),[e.parameter]:s}}):(l="replace",i={...a,query:{...Y(a.query,[e.parameter]),...w(s)?{[e.parameter]:s}:null}}),!l)return a;let u=ce(a),g=ce(i);return g!==u&&(l=e.historyMode??l,l==="push"?window.history.pushState({},"",g):window.history.replaceState({},"",g)),i});break}case"SetURLParameters":{let a=Object.entries(e.parameters??{});if(a.length===0)return;r.toddle.locationSignal.update(s=>{if(!s.route)return s;let l="replace",i={},u={},g={data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},p=C=>s.route?.path.some(D=>D.name===C&&D.type==="param"),h=C=>Object.values(s.route?.query??{}).some(D=>D.name===C);for(let[C,D]of a){let N=v(D,g,["parameters",C])??null;p(C)?(l="push",u[C]=N):h(C)&&(i[C]=N)}if(Object.keys(u).length===0&&Object.keys(i).length===0)return s;let d={...s,params:{...Y(s.params,Object.keys(u)),...u},query:{...Y(s.query,Object.keys(i)),...i}};if((0,Go.default)(d,s))return s;let E=ce(s),S=ce(d);return S!==E&&(l=e.historyMode??l,l==="push"?window.history.pushState({},"",S):window.history.replaceState({},"",S)),d});break}case"Fetch":{let a=r.apis[e.api];if(!a){console.error("The api ",e.api,"does not exist");return}if(X(a)){let s=q(e.inputs??{},([i,u])=>[i,v(u.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["inputs",i,"formula"])]),l={onCompleted:e.onSuccess?.actions??[],onFailed:e.onError?.actions??[],onMessage:e.onMessage?.actions??[]};a.fetch({actionInputs:s,actionModels:l,componentData:t,workflowCallback:n})}else{let s=l=>{for(let i of l)M(i,{...t,...r.dataSignal.get()},r,o,n)};a.fetch().then(()=>{s(e.onSuccess?.actions??[])},()=>{s(e.onError?.actions??[])})}break}case"AbortFetch":{let a=r.apis[e.api];if(!a){console.error("The api ",e.api,"does not exist");return}X(a)?a.cancel():console.warn(`AbortFetch action is not supported for API "${e.api}" as it is not a v2 API.`);break}case"TriggerWorkflow":{let a=q(e.parameters??{},([i,u])=>[i,v(u.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["parameters",i,"formula"])]),s=e.callbacks;if(e.contextProvider){let i=r.providers[[r.package,e.contextProvider].filter(w).join("/")]??r.providers[e.contextProvider],u=i?.component.workflows?.[e.workflow];if(!u){i&&console.warn(`Cannot find workflow "${e.workflow}" on component "${e.contextProvider}". It has likely been removed or modified.`);return}u.actions.forEach(g=>M(g,{...t,...i.ctx.dataSignal.get(),Parameters:a},i.ctx,o,(p,h)=>{s?.[p]?.actions?.forEach(E=>M(E,{...t,...r.dataSignal.get(),Parameters:a,Event:h},r,o,n))}));return}let l=r.component.workflows?.[e.workflow];if(!l){console.warn(`Workflow ${e.workflow} does not exist on component ${r.component.name}`);return}l.actions.forEach(i=>M(i,{...t,...r.dataSignal.get(),Parameters:a},r,o,(u,g)=>{s?.[u]?.actions?.forEach(h=>M(h,{...t,...r.dataSignal.get(),Parameters:a,Event:g},r,o,n))}));break}default:try{let a=(l,i)=>{let u=e.events?.[l];u&&u.actions?.forEach(g=>M(g,i?{...t,...r.dataSignal.get(),Event:i}:{...t,...r.dataSignal.get()},r,i??o,n))},s=e.version===2?(r.toddle.getCustomAction??r.toddle.getCustomAction)(e.name,e.package??r.package):void 0;if(s){let l=(e.arguments??[]).reduce((u,g,p)=>g?{...u,[g.name]:v(g.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["arguments",p,"formula"])}:u,{}),i=s.handler?.(l,{root:r.root,triggerActionEvent:a},o);return i&&(typeof i=="function"||i instanceof Promise)&&r.dataSignal.subscribe(u=>u,{destroy:()=>{i instanceof Promise?i.then(u=>{typeof u=="function"&&u()}).catch(u=>console.error(u)):i()}}),i}else{let l=r.toddle.getAction(e.name);if(!l){console.error("Missing custom action",e.name);return}let i=e.arguments?.map((u,g)=>v(u?.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["arguments",g,"formula"]))??[v(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["arguments","data"])];return l(i,{...r,triggerActionEvent:a},o)}}catch(a){console.error("Error in Custom Action",a)}}}catch(a){return console.error(a),null}}function we(e,t){let r=null;function o(p,h){let d={data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},E=v(p.url,d,["url"])??"",S=p.path&&p.path.length>0?"/"+p.path.map((O,c)=>v(O.formula,d,["path",c,"formula"])).join("/"):"",C=Object.values(p.queryParams??{}),D=C.length>0?"?"+C.map((O,c)=>`${O.name}=${encodeURIComponent(v(O.formula,d,["queryParams",c,"formula"]))}`).join("&"):"",N=J(p.headers)?v(p.headers,{data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["headers"]):q(p.headers??{},([O,c])=>v(c,{data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["headers",O])),F=String(Object.entries(N).find(([O])=>O.toLocaleLowerCase()==="content-type")?.[1]),A=p.method??"GET",T=p.body&&["POST","PUT","PATCH","DELETE"].includes(A)?a(v(p.body,{data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["body"]),F):void 0;return{url:E+S+D,method:A,auth:p.auth,headers:N,body:T}}async function n(p){let h=await p.text();try{return pe(h)}catch{return h}}function a(p,h){switch(h){case"application/x-www-form-urlencoded":return typeof p=="object"&&p!==null?Object.entries(p).map(([d,E])=>Array.isArray(E)?E.map(S=>`${encodeURIComponent(d)}=${encodeURIComponent(S)}`).join("&"):`${encodeURIComponent(d)}=${encodeURIComponent(String(E))}`).join("&"):"";case"multipart/form-data":{let d=new FormData;return typeof p=="object"&&p!==null&&Object.entries(p).forEach(([E,S])=>{d.set(E,S)}),d}case"text/plain":return String(p);default:return JSON.stringify(p)}}function s(p){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:p,error:null,isLoading:!1}}}),e.onCompleted?.actions?.forEach(h=>{M(h,t.dataSignal.get(),t)})}function l(p){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:null,isLoading:!1,error:p}}}),e.onFailed?.actions?.forEach(h=>{M(h,t.dataSignal.get(),t)})}async function i(p){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:t.dataSignal.get().Apis?.[e.name]?.data??null,isLoading:!0,error:null}}});let h;try{e.proxy===!1?h=await fetch(p.url,{method:p.method,headers:p.headers,body:p.body}):h=await fetch(`/_query/${encodeURIComponent(t.component.name)}.${encodeURIComponent(e.name)}`,{method:"POST",body:JSON.stringify(p),signal:t.abortSignal,headers:{"Content-Type":"application/json"}});let d=await n(h);if(h.ok)s(d);else throw d}catch(d){return l(d),Promise.reject(d)}}function u(p){return typeof e.debounce=="number"?new Promise((h,d)=>{typeof r=="number"&&clearTimeout(r),r=setTimeout(()=>{i(p).then(h,d)},e.debounce)}):typeof e.throttle=="number"?typeof r=="number"?new Promise(()=>{}):(r=setTimeout(()=>{typeof r=="number"&&clearTimeout(r)},e.throttle),i(p)):i(p)}let g;if(t.dataSignal.update(p=>({...p,Apis:{...p.Apis??{},[e.name]:p.Apis?.[e.name]??{data:null,isLoading:!!(e.autoFetch&&v(e.autoFetch,{data:t.dataSignal.get(),component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["autoFetch"])),error:null}}})),e.autoFetch){g=t.dataSignal.map(h=>o(e,h));let p=!0;g.subscribe(h=>{if(e.autoFetch&&v(e.autoFetch,{data:t.dataSignal.get(),component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["autoFetch"]))if(p&&t.isRootComponent){p=!1;let d=t.toddle?.pageState?.Apis?.[e.name];d?.data?typeof d.data=="string"?s(pe(d.data)):s(d.data):u(h)}else u(h)})}return{fetch:p=>{let h=o(e,t.dataSignal.get()),d=h.body,E=new Headers({...h.headers,...p?.headers??{}});p?.body&&(d=a(p.body,E.get("Content-Type")??void 0)),d instanceof FormData&&E.delete("Content-Type");let S={url:p?.url??h.url,method:p?.method??h.method,auth:p?.auth??h.auth,headers:Z(E),body:d};return u(S)},destroy:()=>g?.destroy()}}var Qo=({path:e,origin:t})=>{if(typeof e!="string")return!1;try{let r=new URL(e,t),o=new URLSearchParams(r.searchParams);return o.forEach((n,a)=>{r.searchParams.delete(a,n)}),o.forEach((n,a)=>{r.searchParams.append(a,n)}),r}catch{return!1}},zo="x-nordcraft-url",Yo="x-nordcraft-templates-in-body";function Re({apiRequest:e,componentData:t,ctx:r}){let o=null,n={...e};function a(c,b){let f=window.origin;try{new URL(f)}catch{f=void 0}let y=jo({api:c,formulaContext:s(c,b),baseUrl:f,defaultHeaders:void 0});return{...y,requestSettings:{...y.requestSettings,credentials:c.client?.credentials&&["include","same-origin","omit"].includes(c.client.credentials)?c.client.credentials:void 0}}}function s(c,b){let f={data:r.dataSignal.get(),component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},y=Object.entries(c.inputs).reduce((R,[P,_])=>(R[P]=v(_.formula,f,["inputs",P]),R),{}),j={...b,...f.data,ApiInputs:{...y}};return{component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,data:j,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation}}function l(c,b){for(let[f,y]of be(c.redirectRules??{},([j,R])=>R.index)){let j=s(c,b),R=v(y.formula,{...j,data:{...j.data,Apis:{[c.name]:r.dataSignal.get().Apis?.[c.name]}}},["redirectRules",f]);if(typeof R=="string"){let P=Qo({path:R,origin:window.location.origin});if(P){if(r.env.runtime==="preview")return window.parent?.postMessage({type:"blockedNavigation",url:P.href},"*"),{name:f,index:y.index,url:P};window.location.replace(P.href)}}}}function i({eventName:c,api:b,data:f,componentData:y,workflowCallback:j}){switch(c){case"message":{let R=Se("message",f.body);b.client?.onMessage?.actions?.forEach(P=>{M(P,{...s(b,y).data,Event:R},r,R,j)});break}case"success":{let R=Se("success",f.body);b.client?.onCompleted?.actions?.forEach(P=>{M(P,{...s(b,y).data,Event:R},r,R,j)});break}case"failed":{let R=Se("failed",{error:f.body,status:f.status});b.client?.onFailed?.actions?.forEach(P=>{M(P,{...s(b,y).data,Event:R},r,R,j)});break}}}function u({api:c,componentData:b,data:f,performance:y}){let j=r.dataSignal.get().Apis?.[c.name]?.response?.performance?.requestStart;if(typeof j=="number"&&j>(y.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:f.body,error:null,response:{status:f.status,headers:f.headers,performance:y}}}}),r.reportFormulaEvaluation?.(["apis",c.name],{isLoading:!1,data:f.body,error:null,response:{status:f.status,headers:f.headers,performance:y}});let R=l(c,b);R&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:f.body,error:null,response:{status:f.status,headers:f.headers,performance:y,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:R}}:{}}}}})}function g({api:c,componentData:b,data:f,performance:y}){let j=r.dataSignal.get().Apis?.[c.name]?.response?.performance?.requestStart;if(typeof j=="number"&&j>(y.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:null,error:f.body,response:{status:f.status,headers:f.headers,performance:y}}}}),r.reportFormulaEvaluation?.(["apis",c.name],{isLoading:!1,data:null,error:f.body,response:{status:f.status,headers:f.headers,performance:y}});let R=l(c,b);R&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:null,error:f.body,response:{status:f.status,headers:f.headers,performance:y,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:R}}:{}}}}})}async function p({api:c,url:b,requestSettings:f,componentData:y,workflowCallback:j}){let R=async()=>{let P={requestStart:Date.now(),responseStart:null,responseEnd:null};r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!0,data:r.dataSignal.get().Apis?.[c.name]?.data??null,error:null}}}),r.reportFormulaEvaluation?.(["apis",c.name],{isLoading:!0,data:r.dataSignal.get().Apis?.[c.name]?.data??null,error:null});let _;try{let L=c.server?.proxy?v(c.server.proxy.enabled.formula,s(c,y),["server","proxy","enabled"])??!1:!1;if(f=O.applyAbortSignal(f),L===!1)_=await fetch(b,f);else{let $=`/.toddle/omvej/components/${encodeURIComponent(r.component.name)}/apis/${encodeURIComponent(r.component.name)}:${encodeURIComponent(c.name)}`,I=new Headers(f.headers);I.set(zo,decodeURIComponent(b.href.replace(/\+/g," "))),x(v(c.server?.proxy?.useTemplatesInBody?.formula,s(c,y),["server","proxy","useTemplatesInBody"]))&&I.set(Yo,"true"),f.headers=I,_=await fetch($,f)}P.responseStart=Date.now(),await h({api:c,componentData:y,res:_,performance:P,workflowCallback:j});return}catch(L){let $="Unknown error";return L instanceof Error&&($=L.cause?{message:L.message,data:L.cause}:L.message,L.name==="TimeoutError"||L.name==="AbortError"&&($="Request was aborted")),g({api:c,componentData:y,data:{body:$},performance:{...P,responseEnd:Date.now()}}),i({eventName:"failed",api:c,data:{body:$},componentData:y,workflowCallback:j}),Promise.reject(L)}};return c.client?.debounce?.formula?new Promise((P,_)=>{typeof o=="number"&&clearTimeout(o),o=setTimeout(()=>{R().then(P,_)},v(c.client?.debounce?.formula,s(c,y),["client","debounce"]))}):R()}function h({api:c,componentData:b,res:f,performance:y,workflowCallback:j}){let R=c.client?.parserMode??"auto";if(R==="auto"){let P=f.headers.get("content-type");Fo(P)?R="event-stream":ve(P)?R="json":Co(P)?R="text":wo(P)?R="json-stream":Ro(P)?R="blob":R="text"}switch(R){case"text":return d({api:c,componentData:b,res:f,performance:y,workflowCallback:j});case"json":return S({api:c,componentData:b,res:f,performance:y,workflowCallback:j});case"event-stream":return D({api:c,componentData:b,res:f,performance:y,workflowCallback:j});case"json-stream":return E({api:c,componentData:b,res:f,performance:y,workflowCallback:j});case"blob":return C({api:c,componentData:b,res:f,performance:y,workflowCallback:j});default:return d({api:c,componentData:b,res:f,performance:y,workflowCallback:j})}}function d({api:c,res:b,performance:f,componentData:y,workflowCallback:j}){return N({api:c,res:b,performance:f,streamType:"text",useTextDecoder:!0,parseChunk:R=>R,parseChunksForData:R=>R.join(""),componentData:y,workflowCallback:j})}function E({api:c,res:b,performance:f,componentData:y,workflowCallback:j}){return N({api:c,res:b,performance:f,streamType:"json",useTextDecoder:!0,parseChunk:P=>{let _=P;try{_=JSON.parse(P)}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:_})}return _},parseChunksForData:P=>[...P],delimiters:[`\r
|
|
1
|
+
var Sn=Object.create;var xe=Object.defineProperty;var Cn=Object.getOwnPropertyDescriptor;var wn=Object.getOwnPropertyNames;var Fn=Object.getPrototypeOf,jn=Object.prototype.hasOwnProperty;var Rn=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),m=(e,t)=>{for(var r in t)xe(e,r,{get:t[r],enumerable:!0})},Dn=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of wn(t))!jn.call(e,n)&&n!==r&&xe(e,n,{get:()=>t[n],enumerable:!(o=Cn(t,n))||o.enumerable});return e};var fe=(e,t,r)=>(r=e!=null?Sn(Fn(e)):{},Dn(t||!e||!e.__esModule?xe(r,"default",{value:e,enumerable:!0}):r,e));var de=Rn((id,Vo)=>{"use strict";Vo.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var o,n,a;if(Array.isArray(t)){if(o=t.length,o!=r.length)return!1;for(n=o;n--!==0;)if(!e(t[n],r[n]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(a=Object.keys(t),o=a.length,o!==Object.keys(r).length)return!1;for(n=o;n--!==0;)if(!Object.prototype.hasOwnProperty.call(r,a[n]))return!1;for(n=o;n--!==0;){var s=a[n];if(!e(t[s],r[s]))return!1}return!0}return t!==t&&r!==r}});var F=e=>e!=null,H=e=>typeof e=="object"&&e!==null,x=e=>e!==!1&&e!==void 0&&e!==null;var ao=(e,t)=>{for(let r=0;r<(e.arguments??[]).length;r++){let o=(e.arguments??[])[r];if(!x(E(o?.formula,t,["arguments",r,"formula"])))return!1}return!0},so=(e,t)=>{let r=!0;if(!e.arguments||e.arguments.length===0)return r;for(let o=0;o<(e.arguments??[]).length;o++){let n=(e.arguments??[])[o];x(E(n?.formula,t,["arguments",o,"formula"]))||(r=!1)}return r};var z=typeof globalThis<"u"?globalThis:window;z.__nc_measure_max_depth=10;z.__nc_measure_enabled=typeof sessionStorage<"u"&&sessionStorage.getItem("__nc_measure")==="true";z.__nc_enableMeasure=(e=!0,t=10)=>{e?sessionStorage.setItem("__nc_measure","true"):sessionStorage.removeItem("__nc_measure"),z.__nc_measure_enabled=e,z.__nc_measure_max_depth=t};var io=0,ge=[],lo=()=>{},ne=(e,t)=>{if(!z.__nc_measure_enabled)return lo;let r=io++;if(ge.length>=z.__nc_measure_max_depth)return lo;let o=performance.now();ge.push(e);let n=!1;return a=>{if(n)return;n=!0;let s=performance.now(),l=a?{...t,...a}:t;performance.measure(e,{start:o,end:s,detail:{devtools:{dataType:"track-entry",track:"Nordcraft devtools",properties:[...Object.entries(l).map(([i,u])=>[i,String(u)]),["Stack",ge.join(" > ")],["Measure index",r],["Sub-measures",io-r]],tooltipText:`${r}. ${e}`}}}),ge.pop()}};var uo=(e,t)=>{let r=t.component?.formulas?.[e.name];if(!r)return t.env?.logErrors&&console.log("Component does not have a formula with the name ",e.name),null;let o=ne(`Formula: ${r.name}`,{formula:e,component:t.component?.name}),n=Object.fromEntries((e.arguments??[]).map((l,i)=>l.isFunction?[l.name,u=>E(l.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}},["arguments",i])]:[l.name,E(l.formula,t,["arguments",i])])),a={...t.data,Args:t.data.Args?{...n,"@toddle.parent":t.data.Args}:n},s=t.formulaCache?.[e.name]?.get(a);if(s?.hit)return o({cache:"hit"}),s.data;{let l=E(r.formula,{...t,data:a},["formula"]);return t.formulaCache?.[e.name]?.set(a,l),o({cache:"miss"}),l}};var po=(e,t)=>(e.arguments??[]).map((r,o)=>E(r.formula,t,["arguments",o,"formula"]));var co=(e,t)=>{let r=ne(`Formula: ${e.name}`,{formula:e,component:t.component?.name}),o=e.package??t.package??void 0,n=(t.toddle??globalThis.toddle)?.getCustomFormula(e.name,o);if(F(n)){t.package=o;let a=(e.arguments??[]).reduce((s,l,i)=>({...s,[l.name??`${i}`]:l.isFunction?u=>E(l.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}},["arguments",i]):E(l.formula,t,["arguments",i])}),{});try{return he(n)?E(n.formula,{...t,data:{...t.data,Args:a}},["formula"]):n.handler(a,{root:t.root??document,env:t.env})}catch(s){return t.toddle.errors.push(s),t.env?.logErrors&&console.error(s),null}finally{r()}}else{let a=(t.toddle??globalThis.toddle).getFormula(e.name);if(typeof a=="function"){let s=(e.arguments??[]).map((l,i)=>l.isFunction?u=>E(l.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}},["arguments",i]):E(l.formula,t,["arguments",i]));try{return a(s,t)}catch(l){return t.toddle.errors.push(l),t.env?.logErrors&&console.error(l),null}finally{r()}}}return t.env?.logErrors&&console.error(`Could not find formula ${e.name} in package ${o??""}`,e),null};var mo=(e,t)=>Object.fromEntries(e.arguments?.map((r,o)=>[r.name,E(r.formula,t,["arguments",o,"formula"])])??[]);var fo=(e,t)=>{for(let r=0;r<(e.arguments??[]).length;r++){let o=(e.arguments??[])[r];if(x(E(o?.formula,t,["arguments",r,"formula"])))return!0}return!1},go=(e,t)=>{let r=!1;for(let o=0;o<(e.arguments??[]).length;o++){let n=(e.arguments??[])[o],a=E(n?.formula,t,["arguments",o,"formula"]);x(a)&&(r=!0)}return r};var ho=(e,t)=>{let r=t;for(let o of e.path)if(r&&typeof r=="object")r=r[o];else return null;return r};var yo=(e,t)=>Object.fromEntries((e.entries??[]).map((r,o)=>[r.name,E(r.formula,t,["entries",o,"formula"])]));var bo=(e,t)=>{for(let r=0;r<(e.cases??[]).length;r++){let o=(e.cases??[])[r];if(x(E(o?.condition,t,["cases",r,"condition"])))return E(o?.formula,t,["cases",r,"formula"])}return E(e.default,t,["default"])},vo=(e,t)=>{let r=null;for(let n=0;n<(e.cases??[]).length;n++){let a=(e.cases??[])[n],s=E(a?.condition,t,["cases",n,"condition"]),l=E(a?.formula,t,["cases",n,"formula"]);x(s)&&r===null&&(r={match:!0,value:l})}let o=E(e.default,t,["default"]);return r!==null?r.value:o};var Ie=64;function J(e){return e&&typeof e=="object"&&typeof e.type=="string"&&["path","function","record","object","array","or","and","apply","value","switch"].includes(e.type)}var he=e=>Object.hasOwn(e,"formula")&&F(e.formula);function E(e,t,r){let o=[...t?.jsonPath??[],...r??[]],n={...t,jsonPath:o},a=(s,l=o)=>(n?.reportFormulaEvaluation?.(l,s,n),s);if(!J(e))return a(e);try{switch(e.type){case"value":return a(e.value);case"path":return a(ho(e,n.data));case"switch":return n.reportFormulaEvaluation&&n.jsonPath.length<Ie?a(vo(e,n)):bo(e,n);case"or":return n.reportFormulaEvaluation&&n.jsonPath.length<Ie?a(go(e,n)):fo(e,n);case"and":return n.reportFormulaEvaluation&&n.jsonPath.length<Ie?a(so(e,n)):ao(e,n);case"object":return a(mo(e,n));case"record":return a(yo(e,n));case"array":return a(po(e,n));case"function":return a(co(e,n));case"apply":return a(uo(e,n));default:n.env?.logErrors&&console.error("Could not recognize formula",e)}}catch(s){return n.env?.logErrors&&console.error(s),a(null)}return a(void 0)}var q=(e,t)=>{let r={};for(let o in e){let[n,a]=t([o,e[o]]);r[n]=a}return r};var Eo=(e,[t,...r])=>{if(r.length>0){let n=Array.isArray(e)?[...e]:{...e};return F(t)&&(n[t]=Eo(n[t],r)),n}if(Array.isArray(e))return e.toSpliced(Number(t),1);let o={...e};return F(t)&&delete o[t],o},Y=(e,t)=>Object.fromEntries(Object.entries(e).filter(([r])=>!t.includes(r))),Ao=(e,t)=>t.reduce((r,o)=>Eo(r,o),{...e});var So=(e,t)=>Object.fromEntries(Object.entries(e).filter(t));function ye(e,[t,...r]){let o=F(t)?e?.[t]:void 0;return r.length===0?o:ye(o,r)}var be=(e,t,r=!0)=>On(Object.entries(e),t,r),On=(e,t,r=!0)=>[...e].sort((o,n)=>{let a=t(o),s=t(n);return a===s?0:(a>s?1:-1)*(r?1:-1)});var Co=(e,t=0)=>{let r=3735928559^t,o=1103547991^t;for(let n=0,a;n<e.length;n++)a=e.charCodeAt(n),r=Math.imul(r^a,2654435761),o=Math.imul(o^a,1597334677);return r=Math.imul(r^r>>>16,2246822507),r^=Math.imul(o^o>>>13,3266489909),o=Math.imul(o^o>>>16,2246822507),o^=Math.imul(r^r>>>13,3266489909),4294967296*(2097151&o)+(r>>>0)};var K;(function(e){e.GET="GET",e.POST="POST",e.DELETE="DELETE",e.PUT="PUT",e.PATCH="PATCH",e.HEAD="HEAD",e.OPTIONS="OPTIONS"})(K||(K={}));var ve=e=>typeof e!="string"?!1:/^application\/(json|.*\+json)/.test(e),wo=e=>typeof e!="string"?!1:/^(text\/|application\/x-www-form-urlencoded|application\/(xml|.*\+xml))/.test(e),Fo=e=>typeof e!="string"?!1:/^text\/event-stream/.test(e),jo=e=>typeof e!="string"?!1:/^(application\/stream\+json|application\/x-ndjson)/.test(e),Ro=e=>typeof e!="string"?!1:/^image\//.test(e),Z=e=>{let t={};for(let[r,o]of e.entries())t[r]?t[r]+=`, ${o}`:t[r]=o;return t};function*k({formula:e,globalFormulas:t,path:r,visitedFormulas:o,packageName:n}){if(!F(e))return;let a=r??[],s=o??new Set;switch(yield{path:a,formula:e,packageName:n??void 0},e.type){case"path":case"value":break;case"record":for(let[l,i]of(e.entries??[]).entries())yield*k({formula:i.formula,globalFormulas:t,path:[...a,"entries",l,"formula"],visitedFormulas:s,packageName:n});break;case"function":{let l=e.package??n,i=[l,e.name].filter(F).join("/"),u=!s.has(i);s.add(i);let g=l?t.packages?.[l]?.formulas?.[e.name]:t.formulas?.[e.name];for(let[p,h]of(e.arguments??[]).entries())yield*k({formula:h.formula,globalFormulas:t,path:[...a,"arguments",p,"formula"],visitedFormulas:s,packageName:n});g&&he(g)&&u&&(yield*k({formula:g.formula,globalFormulas:t,path:l?["packages",l,"formulas",e.name]:["formulas",e.name],visitedFormulas:s,packageName:l}));break}case"array":case"or":case"and":case"object":for(let[l,i]of(e.arguments??[]).entries())yield*k({formula:i.formula,globalFormulas:t,path:[...a,"arguments",l,"formula"],visitedFormulas:s,packageName:n});break;case"apply":for(let[l,i]of(e.arguments??[]).entries())yield*k({formula:i.formula,globalFormulas:t,path:[...a,"arguments",l,"formula"],visitedFormulas:s,packageName:n});break;case"switch":for(let[l,i]of e.cases?.entries()??[])yield*k({formula:i.condition,globalFormulas:t,path:[...a,"cases",l,"condition"],visitedFormulas:s,packageName:n}),yield*k({formula:i.formula,globalFormulas:t,path:[...a,"cases",l,"formula"],visitedFormulas:s,packageName:n});yield*k({formula:e.default,globalFormulas:t,path:[...a,"default"],visitedFormulas:s,packageName:n});break}}function*B({action:e,globalFormulas:t,path:r,visitedFormulas:o=new Set,packageName:n}){if(!F(e))return;let a=r??[];switch(e.type){case"AbortFetch":break;case"Fetch":for(let[s,l]of Object.entries(e.inputs??{}))yield*k({formula:l.formula,globalFormulas:t,path:[...a,"input",s,"formula"],visitedFormulas:o,packageName:n});for(let[s,l]of Object.entries(e.onSuccess?.actions??{}))yield*B({action:l,globalFormulas:t,path:[...a,"onSuccess","actions",s],visitedFormulas:o,packageName:n});for(let[s,l]of Object.entries(e.onError?.actions??{}))yield*B({action:l,globalFormulas:t,path:[...a,"onError","actions",s],visitedFormulas:o,packageName:n});for(let[s,l]of Object.entries(e.onMessage?.actions??{}))yield*B({action:l,globalFormulas:t,path:[...a,"onMessage","actions",s],visitedFormulas:o,packageName:n});break;case"Custom":case void 0:case null:{J(e.data)&&(yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n}));for(let[s,l]of Object.entries(e.arguments??{}))l&&(yield*k({formula:l.formula,globalFormulas:t,path:[...a,"arguments",s,"formula"],visitedFormulas:o,packageName:n}));for(let[s,l]of Object.entries(e.events??{}))for(let[i,u]of Object.entries(l.actions??{}))yield*B({action:u,globalFormulas:t,path:[...a,"events",s,"actions",i],visitedFormulas:o,packageName:n});break}case"SetVariable":case"TriggerEvent":case"TriggerWorkflowCallback":yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameter":yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameters":for(let[s,l]of Object.entries(e.parameters??{}))yield*k({formula:l,globalFormulas:t,path:[...a,"parameters",s],visitedFormulas:o,packageName:n});break;case"TriggerWorkflow":for(let[s,l]of Object.entries(e.parameters??{}))F(l.formula)&&(yield*k({formula:l.formula,globalFormulas:t,path:[...a,"parameters",s,"formula"],visitedFormulas:o,packageName:n}));for(let[s,l]of Object.entries(e.callbacks??{}))if(F(l?.actions))for(let[i,u]of Object.entries(l.actions))F(u)&&(yield*B({action:u,globalFormulas:t,path:[...a,"callbacks",s,"actions",i],visitedFormulas:o,packageName:n}));break;case"Switch":F(e.data)&&J(e.data)&&(yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n}));for(let[s,l]of(e.cases??[]).entries()){yield*k({formula:l.condition,globalFormulas:t,path:[...a,"cases",s,"condition"],visitedFormulas:o,packageName:n});for(let[i,u]of Object.entries(l.actions))yield*B({action:u,globalFormulas:t,path:[...a,"cases",s,"actions",i],visitedFormulas:o,packageName:n})}for(let[s,l]of Object.entries(e.default?.actions??[]))yield*B({action:l,globalFormulas:t,path:[...a,"default","actions",s],visitedFormulas:o,packageName:n});break}}var ue=class{api;key;globalFormulas;_apiReferences;constructor(t,r,o){this.api=t,this.key=r,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let t=new Set,r=o=>{if(F(o))switch(o.type){case"path":if(o.path[0]==="Apis"){let n=o.path[1];typeof n=="string"&&t.add(n)}break;case"value":break;case"record":o.entries?.forEach(n=>r(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>r(n.formula));break;case"switch":o.cases?.forEach(n=>{r(n.condition),r(n.formula)});break}};return r(this.api.autoFetch),r(this.api.url),Object.values(this.api.path??{}).forEach(o=>r(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>r(o.formula)),J(this.api.headers)?r(this.api.headers):Object.values(this.api.headers??{}).forEach(o=>{r(o)}),r(this.api.body),this._apiReferences=t,t}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get proxy(){return this.api.proxy}get queryParams(){return this.api.queryParams}get headers(){return this.api.headers}get method(){return this.api.method}get body(){return this.api.body}get auth(){return this.api.auth}get throttle(){return this.api.throttle}get debounce(){return this.api.debounce}get onCompleted(){return this.api.onCompleted}get onFailed(){return this.api.onFailed}*formulasInApi(){let t=this.api,r=this.key;yield*k({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*k({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]});if(J(t.headers))yield*k({formula:t.headers,globalFormulas:this.globalFormulas,path:["apis",r,"headers"]});else for(let[o,n]of Object.entries(t.headers??{}))yield*k({formula:n,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o]});yield*k({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]});for(let[o,n]of Object.entries(t.onCompleted?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onCompleted","actions",o]});for(let[o,n]of Object.entries(t.onFailed?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onFailed","actions",o]})}};function*V(e,t=[]){if(F(e))switch(yield[t,e],e.type){case"AbortFetch":case"SetURLParameter":case"SetURLParameters":case"SetVariable":case"TriggerEvent":case"TriggerWorkflowCallback":break;case"TriggerWorkflow":for(let[r,o]of Object.entries(e.callbacks??{}))if(o)for(let[n,a]of Object.entries(o.actions??{}))a&&(yield*V(a,[...t,"callbacks",r,"actions",n]));break;case"Fetch":for(let[r,o]of Object.entries(e.onSuccess?.actions??{}))yield*V(o,[...t,"onSuccess","actions",r]);for(let[r,o]of Object.entries(e.onError?.actions??{}))yield*V(o,[...t,"onError","actions",r]);for(let[r,o]of Object.entries(e.onMessage?.actions??{}))yield*V(o,[...t,"onMessage","actions",r]);break;case"Custom":case void 0:case null:for(let[r,o]of Object.entries(e.events??{}))for(let[n,a]of Object.entries(o?.actions??{}))yield*V(a,[...t,"events",r,"actions",n]);break;case"Switch":for(let[r,o]of(e.cases??[]).entries())for(let[n,a]of Object.entries(o?.actions??{}))yield*V(a,[...t,"cases",r,"actions",n]);for(let[r,o]of Object.entries(e.default?.actions??[]))yield*V(o,[...t,"default","actions",r]);break}}var Ee=class{api;_apiReferences;key;globalFormulas;constructor(t,r,o){this.api=t,this.key=r,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let t=new Set,r=o=>{if(F(o))switch(o.type){case"path":if(o.path[0]==="Apis"){let n=o.path[1];typeof n=="string"&&t.add(n)}break;case"value":break;case"record":o.entries?.forEach(n=>r(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>r(n.formula));break;case"switch":o.cases?.forEach(n=>{r(n.condition),r(n.formula)});break}};return r(this.api.autoFetch),r(this.api.url),Object.values(this.api.path??{}).forEach(o=>r(o.formula)),Object.values(this.api.headers??{}).forEach(o=>r(o.formula)),r(this.api.body),Object.values(this.api.inputs).forEach(o=>r(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>{r(o.formula)}),r(this.api.server?.proxy?.enabled?.formula),r(this.api.server?.ssr?.enabled?.formula),r(this.api.client?.debounce?.formula),Object.values(this.api.redirectRules??{}).forEach(o=>{r(o.formula)}),r(this.api.isError?.formula),r(this.api.timeout?.formula),t.delete(this.key),this._apiReferences=t,t}get version(){return this.api.version}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get headers(){return this.api.headers}set headers(t){this.api.headers=t}get method(){return this.api.method}get body(){return this.api.body}get inputs(){return this.api.inputs}get queryParams(){return this.api.queryParams}get server(){return this.api.server}get client(){return this.api.client}get redirectRules(){return this.api.redirectRules}get isError(){return this.api.isError}get timeout(){return this.api.timeout}get"@nordcraft/metadata"(){return this.api["@nordcraft/metadata"]}*formulasInApi(){let t=this.api,r=this.key;for(let[o,n]of Object.entries(this.api.inputs))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"inputs",o,"formula"]});yield*k({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*k({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]}),yield*k({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"enabled"]});for(let[o,n]of Object.entries(t.headers??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"formula"]}),yield*k({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"enabled"]});t.method&&Me.includes(t.method)&&(yield*k({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]}));for(let[o,n]of Object.entries(t.client?.onCompleted?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onCompleted","actions",o]});for(let[o,n]of Object.entries(t.client?.onFailed?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onFailed","actions",o]});yield*k({formula:t.client?.debounce?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"client","debounce","formula"]});for(let[o,n]of Object.entries(t.client?.onMessage?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onMessage","actions",o]});for(let[o,n]of Object.entries(t.redirectRules??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"redirectRules",o,"formula"]});yield*k({formula:t.isError?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"isError","formula"]}),yield*k({formula:t.timeout?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"timeout","formula"]}),yield*k({formula:t.server?.proxy?.enabled.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","enabled","formula"]}),yield*k({formula:t.server?.proxy?.useTemplatesInBody?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","useTemplatesInBody","formula"]}),yield*k({formula:t.server?.ssr?.enabled?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","ssr","enabled","formula"]})}*actionModelsInApi(){for(let[t,r]of Object.entries(this.api.client?.onCompleted?.actions??{}))yield*V(r,["apis",this.key,"client","onCompleted","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onFailed?.actions??{}))yield*V(r,["apis",this.key,"client","onFailed","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onMessage?.actions??{}))yield*V(r,["apis",this.key,"client","onData","actions",t])}};var Ae=e=>e instanceof ue?!0:!("version"in e),Do=({api:e,formulaContext:t,baseUrl:r,defaultHeaders:o})=>{let n=Pn(e,{...t,jsonPath:["apis",e.name]},r),a=Nn({api:e,formulaContext:t,defaultHeaders:o});return{url:n,requestSettings:a}},Pn=(e,t,r)=>{let o="",n=new URLSearchParams,a,s=E(e.url,t,["url"]);if(["string","number"].includes(typeof s)){let d=typeof s=="number"?String(s):s;try{a=new URL(d,r??void 0),o=a.pathname,n=a.searchParams}catch{}}let l=kn(e.path,t),i=`${o}${l.length>0&&!o.endsWith("/")?"/":""}${l}`,u=new URLSearchParams([...n,...xn(e.queryParams,t)]),g=[...u.entries()].length>0?`?${u.toString()}`:"",p=E(e.hash?.formula,t,["hash","formula"]),h=typeof p=="string"&&p.length>0?`#${p}`:"";if(a){let d=new URL(a.origin,r??void 0);return d.pathname=i,d.search=u.toString(),d.hash=h,d}else return new URL(`${i}${g}${h}`,r??void 0)},Me=[K.POST,K.DELETE,K.PUT,K.PATCH,K.OPTIONS],Tn=(e,t,r)=>{if(e.timeout){let o=E(e.timeout.formula,r,["timeout","formula"]);typeof o=="number"&&!Number.isNaN(o)&&o>0&&(t.signal=AbortSignal.timeout(o))}},Nn=({api:e,formulaContext:t,defaultHeaders:r})=>{let o=Object.values(K).includes(e.method)?e.method:K.GET,n=In({apiHeaders:e.headers,formulaContext:t,defaultHeaders:r}),a=Mn({api:e,formulaContext:t,headers:n,method:o});n.get("content-type")==="multipart/form-data"&&n.delete("content-type");let s={method:o,headers:n,body:a};return Tn(e,s,t),s},kn=(e,t)=>be(e??{},([r,o])=>o.index).map(([r,o])=>E(o.formula,t,["path",r])).join("/"),xn=(e,t)=>{let r=new URLSearchParams;return Object.entries(e??{}).forEach(([o,n])=>{if(!(F(n.enabled)?E(n.enabled,t,["queryParams",o,"enabled"]):!0))return;let s=E(n.formula,t,["queryParams",o,"formula"]);if(F(s))if(Array.isArray(s))s.forEach(l=>r.append(o,String(l)));else if(H(s)){let l=(i,u)=>{Object.entries(i).forEach(([g,p])=>{if(!Array.isArray(p)&&H(p))return l(p,`${u}[${g}]`);r.set(`${u}[${g}]`,String(p))})};l(s,o)}else r.set(o,String(s))}),r},In=({apiHeaders:e,formulaContext:t,defaultHeaders:r})=>{let o=new Headers(r);return Object.entries(e??{}).forEach(([n,a])=>{if(F(a.enabled)?E(a.enabled,t,["headers",n,"enabled"]):!0){let l=E(a.formula,t,["headers",n,"formula"]);if(F(l))try{o.set(n.trim(),(typeof l=="string"?l:String(l)).trim())}catch{}}}),o};var Oo=(e,t)=>Co(JSON.stringify({url:e.href,method:t.method,headers:Y(Object.fromEntries(Object.entries(t.headers??{})),["host","cookie"]),body:t.body??null})),Po=({apiName:e,response:t,formulaContext:r,errorFormula:o,performance:n})=>{let a=o?E(o.formula,{component:r.component,package:r.package,toddle:r.toddle,data:{Attributes:{},Args:r.data.Args,Apis:{[e]:{isLoading:!1,data:t.body,error:null,response:{status:t.status,headers:t.headers,performance:n}}}},env:r.env,jsonPath:["apis",e,"isError","formula"],reportFormulaEvaluation:r.reportFormulaEvaluation}):null;return a==null?!t.ok:x(a)},Mn=({api:e,formulaContext:t,headers:r,method:o})=>{if(!e.body||!Me.includes(o))return;let n=E(e.body,t,["body"]);if(!n)return;let a=r.get("content-type");if(!F(a)||ve(a))return JSON.stringify(n);switch(a){case"application/x-www-form-urlencoded":return typeof n=="object"&&n!==null?Object.entries(n).map(([s,l])=>Array.isArray(l)?l.map(i=>`${encodeURIComponent(s)}=${encodeURIComponent(i)}`).join("&"):`${encodeURIComponent(s)}=${encodeURIComponent(String(l))}`).join("&"):"";case"multipart/form-data":{let s=new FormData;return typeof n=="object"&&n!==null&&Object.entries(n).forEach(([l,i])=>{s.set(l,i)}),s}case"text/plain":return String(n);default:return n}},Se=(e,t)=>new CustomEvent(e,{detail:t}),Ln=(e,t)=>{let r=e.apiReferences.has(t.name),o=t.apiReferences.has(e.name);return r===o?0:r?1:-1},Ce=e=>{let t=new Map,r=(o,n)=>{let a=t.get(n);return a||(a=o.version===2?new Ee(o,n,{formulas:{},packages:{}}):new ue(o,n,{formulas:{},packages:{}}),t.set(n,a)),a};return[...e].sort(([o,n],[a,s])=>{let l=r(n,o),i=r(s,a);return Ln(l,i)})};var To="nc-custom-properties",Le="data-nc-theme",ae="nc-theme";var No=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"];var ot={};m(ot,{clearLocalStorage:()=>Ze,clearSessionStorage:()=>Ye,copyToClipboard:()=>Be,deleteFromLocalStorage:()=>et,deleteFromSessionStorage:()=>$e,focus:()=>Ue,gotToURL:()=>tt,interval:()=>Ve,logToConsole:()=>Ke,preventDefault:()=>ze,saveToLocalStorage:()=>He,saveToSessionStorage:()=>Ge,setCookie:()=>qe,setHttpOnlyCookie:()=>We,setSessionCookies:()=>rt,setTheme:()=>Qe,share:()=>_e,sleep:()=>Je,stopPropagation:()=>Xe});var _e={};m(_e,{default:()=>$n});var _n=([e,t,r])=>{let o=a=>F(a)&&typeof a=="string";if(!o(e)&&!o(t)&&!o(r))throw new Error("Either url, text or title must be provided");let n={};if(o(t)&&(n.title=t),o(r)&&(n.text=r),o(e)&&(n.url=e),F(navigator.share)&&navigator.canShare(n))return navigator.share(n)},$n=_n;var $e={};m($e,{default:()=>Bn});var qn=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.removeItem(e)},Bn=qn;var qe={};m(qe,{default:()=>Hn});var Un=async function([e,t,r,o,n,a],s){let l=h=>s.triggerActionEvent("Error",new Error(h));if(typeof e!="string"){l('The "Name" argument must be a string');return}if(typeof t!="string"){l('The "Value" argument must be a string');return}let i=o??"Lax";if(typeof i!="string"||!["lax","strict","none"].includes(i.toLocaleLowerCase())){l('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let u=n??"/";if(typeof u!="string"||!u.startsWith("/")){l('The "Path" argument must be a string and start with /');return}if(r!=null&&(typeof r!="number"||isNaN(r))){l('The "Expires in" argument must be a number');return}let g=a??!0;if(typeof g!="boolean"){l('The "Include Subdomains" argument must be a boolean');return}let p=`${e}=${t}; SameSite=${i}; Path=${u}`;if(typeof r=="number"){let h=new Date(Date.now()+r*1e3);p+=`; Expires=${h.toUTCString()}`}g&&(p+=`; Domain=${window.location.hostname}`),document.cookie=p,s.triggerActionEvent("Success",void 0)},Hn=Un;var Be={};m(Be,{default:()=>Kn});var Vn=([e])=>{if(typeof e!="string")throw new Error("Input value must be a string");return navigator.clipboard.writeText(e)},Kn=Vn;var Ue={};m(Ue,{default:()=>Jn});var Wn=([e,t])=>{e instanceof HTMLElement&&e.focus({preventScroll:x(t)})},Jn=Wn;var He={};m(He,{default:()=>Qn});var Gn=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.setItem(e,JSON.stringify(t))},Qn=Gn;var Ve={};m(Ve,{default:()=>Yn});var zn=([e],t)=>{let r=Number(e);if(!F(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setInterval(()=>t.triggerActionEvent("tick",null),r);t.abortSignal.addEventListener("abort",()=>{clearInterval(o)})},Yn=zn;var Ke={};m(Ke,{default:()=>Xn});var Zn=([e,t])=>{console.log(e,t)},Xn=Zn;var We={};m(We,{default:()=>ta});var ea=async function([e,t,r,o,n,a],s){let l=h=>s.triggerActionEvent("Error",new Error(h));if(typeof e!="string"){l('The "Name" argument must be a string');return}if(typeof t!="string"){l('The "Value" argument must be a string');return}let i=o??"Lax";if(typeof i!="string"||!["lax","strict","none"].includes(i.toLocaleLowerCase())){l('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let u=n??"/";if(typeof u!="string"||!u.startsWith("/")){l('The "Path" argument must be a string and start with /');return}if(r!=null&&(typeof r!="number"||isNaN(r))){l('The "Expires in" argument must be a number');return}let g=a??!0;if(typeof g!="boolean"){l('The "Include Subdomains" argument must be a boolean');return}let p=new URLSearchParams;p.set("name",e),p.set("value",t),p.set("sameSite",i),p.set("path",u),p.set("includeSubdomains",String(g)),typeof r=="number"&&p.set("ttl",String(r));try{let h=await fetch(`/.nordcraft/cookies/set-cookie?${p.toString()}`);h.ok?s.triggerActionEvent("Success",void 0):l(await h.text())}catch(h){l(h instanceof Error?h.message:"An unexpected error occurred")}},ta=ea;var Je={};m(Je,{default:()=>oa});var ra=([e],t)=>{let r=Number(e);if(!F(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setTimeout(()=>t.triggerActionEvent("tick",null),r);t.abortSignal.addEventListener("abort",()=>{clearTimeout(o)})},oa=ra;var Ge={};m(Ge,{default:()=>aa});var na=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.setItem(e,JSON.stringify(t))},aa=na;var Qe={};m(Qe,{default:()=>la});var sa=3600*24*365,ia=async function([e],t){if(typeof e!="string"&&e!==null){t.triggerActionEvent("Error",new Error('The "Name" argument must be a string or null'));return}let r=e===null||e==="";try{await cookieStore.set({name:ae,value:e??"",path:"/",expires:r?0:Date.now()+sa,sameSite:"none"}),t.triggerActionEvent("Success",void 0)}catch(o){t.triggerActionEvent("Error",o)}},la=ia;var ze={};m(ze,{default:()=>pa});var ua=(e,t,r)=>{r?.preventDefault?.()},pa=ua;var Ye={};m(Ye,{default:()=>ca});var da=async function(){window.sessionStorage.clear()},ca=da;var Ze={};m(Ze,{default:()=>fa});var ma=async function(){window.localStorage.clear()},fa=ma;var Xe={};m(Xe,{default:()=>ha});var ga=(e,t,r)=>{r?.stopPropagation?.()},ha=ga;var et={};m(et,{default:()=>ba});var ya=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.removeItem(e)},ba=ya;var tt={};m(tt,{default:()=>Ea});var va=([e],t)=>{typeof e=="string"&&(t.env.runtime==="preview"?window.parent?.postMessage({type:"blockedNavigation",url:e},"*"):window.location.href=e)},Ea=va;var rt={};m(rt,{default:()=>Sa});var Aa=async function([e,t],r){let o=[typeof e=="string"?`name=access_token&value=${encodeURIComponent(e)}`:void 0,isNaN(Number(t))?void 0:`ttl=${t}`].filter(a=>a).join("&"),n=await fetch(`/.toddle/cookies/set-session-cookie?${o}`);n.ok?r.triggerActionEvent("Success",void 0):r.triggerActionEvent("Error",new Error(await n.text()))},Sa=Aa;var zr={};m(zr,{Id:()=>Dt,absolute:()=>Jt,add:()=>qt,append:()=>Hr,boolean:()=>Ot,branchName:()=>Pt,canShare:()=>Ir,capitalize:()=>Qt,clamp:()=>hr,concatenate:()=>zt,currentURL:()=>Mr,dateFromString:()=>lr,dateFromTimestamp:()=>yr,decodeBase64:()=>Yt,decodeURIComponent:()=>Zt,defaultTo:()=>yt,deleteKey:()=>Xt,divide:()=>Qr,drop:()=>mr,dropLast:()=>dr,encodeBase64:()=>_t,encodeJSON:()=>nt,encodeURIComponent:()=>_r,entries:()=>It,equals:()=>wr,every:()=>nr,filter:()=>Br,find:()=>Tt,findIndex:()=>xr,findLast:()=>cr,first:()=>dt,flatten:()=>it,formatDate:()=>pr,formatNumber:()=>ut,fromEntries:()=>kt,get:()=>Vr,getCookie:()=>Fr,getElementById:()=>Ut,getFromLocalStorage:()=>Ar,getFromSessionStorage:()=>Cr,getHttpOnlyCookie:()=>$r,greaterOrEqueal:()=>Ct,greaterThan:()=>Ft,groupBy:()=>Lt,includes:()=>Wt,indexOf:()=>ur,isServer:()=>Jr,join:()=>jr,json:()=>Gr,keyBy:()=>Gt,languages:()=>pt,last:()=>xt,lastIndexOf:()=>Pr,lessOrEqual:()=>ct,lessThan:()=>fr,logarithm:()=>ft,lowercase:()=>lt,map:()=>or,matches:()=>Vt,max:()=>Dr,min:()=>Wr,minus:()=>Or,modulo:()=>gr,multiply:()=>ir,not:()=>mt,notEqual:()=>Lr,now:()=>$t,number:()=>At,parseJSON:()=>Et,parseURL:()=>sr,power:()=>vr,prepend:()=>Sr,randomNumber:()=>bt,range:()=>ht,reduce:()=>rr,replaceAll:()=>Tr,reverse:()=>Rr,round:()=>Mt,roundDown:()=>Kr,roundUp:()=>Nr,set:()=>Nt,shuffle:()=>vt,size:()=>Ur,some:()=>gt,sort_by:()=>Ht,split:()=>Kt,squareRoot:()=>wt,startsWith:()=>at,string:()=>br,sum:()=>Er,take:()=>St,takeLast:()=>Bt,timestamp:()=>er,trim:()=>tr,typeOf:()=>jt,unique:()=>qr,uppercase:()=>st,userAgent:()=>kr});var nt={};m(nt,{default:()=>wa});var Ca=([e,t])=>typeof t!="number"?null:JSON.stringify(e,null,t),wa=Ca;var at={};m(at,{default:()=>ja});var Fa=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.startsWith(t),ja=Fa;var st={};m(st,{default:()=>Da});var Ra=([e])=>typeof e!="string"?null:e.toLocaleUpperCase(),Da=Ra;var it={};m(it,{default:()=>Pa});var Oa=([e])=>Array.isArray(e)?e.flat():null,Pa=Oa;var lt={};m(lt,{default:()=>Na});var Ta=([e])=>typeof e!="string"?null:e.toLocaleLowerCase(),Na=Ta;var ut={};m(ut,{default:()=>xa});var ka=([e,t,r])=>{if(typeof e!="number"||Number.isNaN(e))return null;let o=typeof t=="string"&&t.length>0||Array.isArray(t)&&t.every(A=>typeof A=="string")?t:void 0;if(!r||typeof r!="object")return Intl.NumberFormat(o).format(e);let n=(A,P)=>typeof A=="string"&&(P?.includes(A)??!0)?A:void 0,a=r,s=n(a.style,["decimal","currency","percent","unit"]),l=typeof a.currency=="string"&&a.currency.length===3?a.currency:void 0;if(s==="currency"&&typeof l!="string")return null;let i=n(a.currencyDisplay,["code","symbol","narrowSymbol","name"]),u=typeof a.unit=="string"?a.unit:void 0;if(s==="unit"&&typeof u!="string")return null;let g=n(a.unitDisplay,["short","narrow","long"]),p=typeof a.minimumIntegerDigits=="number"&&a.minimumIntegerDigits>=1&&a.minimumIntegerDigits<=21?a.minimumIntegerDigits:void 0,h=typeof a.minimumFractionDigits=="number"&&a.minimumFractionDigits>=0&&a.minimumFractionDigits<=100?a.minimumFractionDigits:void 0,d=typeof a.maximumFractionDigits=="number"&&a.maximumFractionDigits>=0&&a.maximumFractionDigits<=100?a.maximumFractionDigits:void 0,b=typeof a.minimumSignificantDigits=="number"&&a.minimumSignificantDigits>=1&&a.minimumSignificantDigits<=21?a.minimumSignificantDigits:void 0,S=typeof a.maximumSignificantDigits=="number"&&a.maximumSignificantDigits>=1&&a.maximumSignificantDigits<=21?a.maximumSignificantDigits:void 0,C=n(a.notation,["standard","scientific","engineering","compact"]),D=n(a.compactDisplay,["short","long"]),N=["always","auto","min2"],w=typeof a.useGrouping=="boolean"?a.useGrouping:n(a.useGrouping,N);return new Intl.NumberFormat(o,{style:s,currency:l,currencyDisplay:i,unit:u,unitDisplay:g,minimumIntegerDigits:p,minimumFractionDigits:h,maximumFractionDigits:d,minimumSignificantDigits:b,maximumSignificantDigits:S,notation:C,compactDisplay:D,useGrouping:w}).format(e)},xa=ka;var pt={};m(pt,{default:()=>Ma});var Ia=(e,{env:t})=>t.isServer?t.request?.headers["accept-language"]?.split(",").map(r=>r.split(";")[0]??"")??[]:window.navigator.languages,Ma=Ia;var dt={};m(dt,{default:()=>_a});var La=([e])=>typeof e=="string"||Array.isArray(e)?e[0]:null,_a=La;var ct={};m(ct,{default:()=>qa});var $a=([e,t])=>e<=t,qa=$a;var mt={};m(mt,{default:()=>Ua});var Ba=([e])=>!x(e),Ua=Ba;var ft={};m(ft,{default:()=>Va});var Ha=([e])=>typeof e!="number"||Number.isNaN(e)||e<0?null:Math.log(e),Va=Ha;var gt={};m(gt,{default:()=>Ka,getArgumentInputData:()=>Wa,handler:()=>ko});var ko=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.some((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).some(([r,o])=>t({key:r,value:o})):null,Ka=ko,Wa=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var ht={};m(ht,{default:()=>Ga});var Ja=([e,t])=>typeof e!="number"||typeof t!="number"?null:e>t?[]:Array.from({length:t-e+1},(r,o)=>o+e),Ga=Ja;var yt={};m(yt,{default:()=>za});var Qa=e=>{for(let t of e)if(x(t))return t;return null},za=Qa;var bt={};m(bt,{default:()=>Za});var Ya=()=>Math.random(),Za=Ya;var vt={};m(vt,{default:()=>es});var Xa=([e])=>Array.isArray(e)?xo(e):typeof e=="string"?xo(e.split("")).join(""):null;function xo(e){let t=[...e];for(let r=t.length-1;r>0;r--){let o=Math.floor(Math.random()*(r+1));[t[r],t[o]]=[t[o],t[r]]}return t}var es=Xa;var Et={};m(Et,{default:()=>os});var ts=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:.\d{1,3})?Z$/;function pe(e){return JSON.parse(e,(t,r)=>typeof r=="string"&&r.length===24&&ts.test(r)?new Date(r):r)}var rs=([e,t])=>{if(typeof e!="string")return null;try{return t==null||t?pe(e):JSON.parse(e)}catch{return null}},os=rs;var At={};m(At,{default:()=>as});var ns=([e])=>Number(e),as=ns;var St={};m(St,{default:()=>is});var ss=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(0,t):typeof e=="string"?e.substring(0,t):null,is=ss;var Ct={};m(Ct,{default:()=>us});var ls=([e,t])=>e>=t,us=ls;var wt={};m(wt,{default:()=>ds});var ps=([e])=>typeof e!="number"?null:Math.sqrt(e),ds=ps;var Ft={};m(Ft,{default:()=>ms});var cs=([e,t])=>e>t,ms=cs;var jt={};m(jt,{default:()=>gs});var fs=([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}},gs=fs;var Dt={};m(Dt,{default:()=>vs});var hs=0,Rt=new WeakMap;function ys(e){return Rt.has(e)||Rt.set(e,{idCounter:0}),Rt.get(e)}var bs=(e,t)=>{if(t.env.isServer){let r=ys(t.env.request);return`_id_${r.idCounter++}_`}return`_id_${hs++}_`},vs=bs;var Ot={};m(Ot,{default:()=>As});var Es=([e])=>x(e),As=Es;var Pt={};m(Pt,{default:()=>Cs});var Ss=(e,t)=>t.env.branchName,Cs=Ss;var Tt={};m(Tt,{default:()=>ws,getArgumentInputData:()=>Fs,handler:()=>Io});var Io=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.find((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).find(([r,o])=>t({key:r,value:o}))?.[1]:null,ws=Io,Fs=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var Nt={};m(Nt,{default:()=>js});var Mo=([e,t,r],o)=>{if(typeof t!="string"&&typeof t!="number"&&!Array.isArray(t))return null;let[n,...a]=Array.isArray(t)?t:[t];if(H(e)){let s=Array.isArray(e)?[...e]:{...e};return s[n]=a.length===0?r:Mo([s[n],a,r],o),s}return null},js=Mo;var kt={};m(kt,{default:()=>Ds});var Rs=([e])=>{if(Array.isArray(e)){let t={};for(let{key:r,value:o}of e)t[r]=o;return t}return null},Ds=Rs;var xt={};m(xt,{default:()=>Ps});var Os=([e])=>typeof e=="string"||Array.isArray(e)?e[e.length-1]:null,Ps=Os;var It={};m(It,{default:()=>Ns});var Ts=([e])=>typeof e=="object"&&e!==null?Object.entries(e).map(([t,r])=>({key:t,value:r})):null,Ns=Ts;var Mt={};m(Mt,{default:()=>xs});var ks=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.round(e*r)/r},xs=ks;var Lt={};m(Lt,{default:()=>Is,getArgumentInputData:()=>Ms,handler:()=>Lo});var Lo=([e,t])=>{if(typeof t!="function"||!e||typeof e!="object"||!Array.isArray(e))return null;let r={};for(let o in e){let n=e[o],a=String(t({item:n,index:o}));r[a]=r[a]??[],r[a].push(n)}return r},Is=Lo,Ms=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0],index:0}}:r;var _t={};m(_t,{default:()=>_s});var Ls=([e])=>typeof e!="string"?null:btoa(e),_s=Ls;var $t={};m($t,{default:()=>qs});var $s=()=>new Date,qs=$s;var qt={};m(qt,{default:()=>Us});var Bs=e=>!Array.isArray(e)||e.some(t=>t===null||typeof t!="number")?null:e.reduce((t,r)=>t+Number(r),0),Us=Bs;var Bt={};m(Bt,{default:()=>Vs});var Hs=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(e.length-t):typeof e=="string"?e.substring(e.length-t):null,Vs=Hs;var Ut={};m(Ut,{default:()=>Ws});var Ks=([e],{root:t})=>typeof e!="string"?null:t.getElementById(e),Ws=Ks;var Ht={};m(Ht,{default:()=>Gs,getArgumentInputData:()=>Qs});var Js=([e,t,r])=>{if(!Array.isArray(e)||typeof t!="function"||typeof r!="boolean")return null;let o=r?1:-1;return[...e].sort((n,a)=>{let s=t({item:n}),l=t({item:a});if(Array.isArray(s)&&Array.isArray(l)){for(let i in s)if(s[i]!==l[i])return(s[i]>l[i]?1:-1)*o;return 0}return s===l?0:(s>l?1:-1)*o})},Gs=Js,Qs=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0]}}:r;var Vt={};m(Vt,{default:()=>Ys});var zs=([e,t,r,o,n])=>{if(typeof e!="string"||typeof t!="string")return[];let a=[x(r)?"g":"",x(o)?"i":"",x(n)?"m":""].join(""),s=new RegExp(t,a);return e.match(s)??[]},Ys=zs;var Kt={};m(Kt,{default:()=>Xs});var Zs=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.split(t),Xs=Zs;var Wt={};m(Wt,{default:()=>ti});var ei=([e,t])=>typeof e=="string"&&typeof t=="string"?e.includes(t):Array.isArray(e)?e.some(r=>globalThis.toddle.isEqual(r,t)):null,ti=ei;var Jt={};m(Jt,{default:()=>oi});var ri=([e])=>typeof e!="number"?null:Math.abs(e),oi=ri;var Gt={};m(Gt,{default:()=>ni,getArgumentInputData:()=>ai,handler:()=>_o});var _o=([e,t])=>{if(typeof t!="function"||!e||typeof e!="object")return null;let r=Array.isArray(e)?e:Object.entries(e),o={};for(let n=0;n<r.length;n++){let a=r[n],s=String(t({item:a,i:n}));o[s]=a}return o},ni=_o,ai=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{value:o[1],key:o[0]}}}return r};var Qt={};m(Qt,{default:()=>ii});var si=([e])=>{if(typeof e!="string")return null;let t=e.at(0);return e.length===0||typeof t!="string"?e:t.toLocaleUpperCase()+e.substring(1).toLocaleLowerCase()},ii=si;var zt={};m(zt,{default:()=>ui});var li=e=>{if(e.every(Array.isArray)){let t=[];for(let r of e)t.push(...r);return t}return e.every(H)?Object.assign({},...e):e.join("")},ui=li;var Yt={};m(Yt,{default:()=>di});var pi=([e])=>typeof e!="string"?null:atob(e),di=pi;var Zt={};m(Zt,{default:()=>mi});var ci=([e])=>typeof e!="string"?null:decodeURIComponent(e),mi=ci;var Xt={};m(Xt,{default:()=>gi});var fi=([e,t])=>{if(typeof e!="object"||e===null||!Array.isArray(t)&&typeof t!="string"&&typeof t!="number")return null;let r=(n,[a,...s])=>{if(Array.isArray(n)){let l=Number(a);return Number.isNaN(l)?n:s.length===0?n.filter((i,u)=>u!==Number(a)):n.map((i,u)=>u===l?r(n[l],s):i)}return H(n)?s.length===0?Object.fromEntries(Object.entries(n).filter(([l])=>l!==a)):typeof a!="string"&&typeof a!="number"?{...n}:{...n,[a]:r(n[a],s)}:null},o=Array.isArray(t)?t:[t];return r(e,o)},gi=fi;var er={};m(er,{default:()=>yi});var hi=([e])=>!e||!(e instanceof Date)?null:e.getTime(),yi=hi;var tr={};m(tr,{default:()=>vi});var bi=([e])=>typeof e!="string"?null:e.trim(),vi=bi;var rr={};m(rr,{default:()=>Ai,getArgumentInputData:()=>Si});var Ei=([e,t,r])=>typeof t!="function"?null:Array.isArray(e)?e.reduce((o,n,a)=>t({result:o,item:n,index:a}),r):e&&typeof e=="object"?Object.entries(e).reduce((o,[n,a])=>t({result:o,key:n,value:a}),r):null,Ai=Ei,Si=([e,t,r],o,n)=>{if(o!==1)return n;if(Array.isArray(e))return{...n,Args:{item:e[0],index:0,result:r}};if(e&&typeof e=="object"){let[a]=Object.entries(e);if(a)return{...n,Args:{key:a[0],value:a[1],result:r}}}return n};var or={};m(or,{default:()=>Fi,getArgumentInputData:()=>wi});var Ci=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.map((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([r,o])=>{let n=t({key:r,value:o});return"key"in n&&"value"in n?[n.key,n.value]:null})):null,wi=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r},Fi=Ci;var nr={};m(nr,{default:()=>ji,getArgumentInputData:()=>Ri,handler:()=>$o});var $o=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.every((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).every(([r,o])=>t({key:r,value:o})):null,ji=$o,Ri=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var sr={};m(sr,{default:()=>Oi});var ar=class{hostname;searchParams;path;hash;href;protocol;port;origin;constructor(t){this.hostname=t.hostname,this.searchParams=Object.fromEntries(t.searchParams),this.path=t.pathname.split("/").filter((r,o)=>o!==0||r!==""),this.hash=t.hash.replace("#",""),this.href=t.href,this.protocol=t.protocol,this.port=t.port,this.origin=t.origin}toString(){return this.href}},Di=([e,t])=>{if(typeof e!="string")return null;try{return new ar(new URL(e,typeof t=="string"?t:void 0))}catch{return null}},Oi=Di;var ir={};m(ir,{default:()=>Ti});var Pi=e=>e.some(t=>isNaN(Number(t)))?null:e.reduce((t,r)=>t*r,1),Ti=Pi;var lr={};m(lr,{default:()=>ki});var Ni=([e])=>typeof e=="string"?new Date(e):null,ki=Ni;var ur={};m(ur,{default:()=>Ii});var xi=([e,t])=>{if(typeof e=="string")return e.indexOf(t);if(Array.isArray(e)){let r=e.indexOf(t);return r!==-1?r:e.findIndex(o=>globalThis.toddle.isEqual(o,t))}return null},Ii=xi;var pr={};m(pr,{default:()=>Li});var Mi=([e,t,r])=>{if(!e||!(e instanceof Date))return null;let o=typeof t=="string"&&t.length>0||Array.isArray(t)&&t.every(A=>typeof A=="string")?t:void 0;if(!r||typeof r!="object")return Intl.DateTimeFormat(o).format(e);let n=(A,P)=>typeof A=="string"&&(P?.includes(A)??!0)?A:void 0,a=r,s=n(a.dateStyle,["full","long","medium","short"]),l=n(a.timeStyle,["full","long","medium","short"]),i=n(a.calendar),u=n(a.weekday,["long","short","narrow"]),g=n(a.era,["long","short","narrow"]),p=n(a.year,["numeric","2-digit"]),h=n(a.month,["long","short","narrow","numeric","2-digit"]),d=n(a.day,["numeric","2-digit"]),b=n(a.hour,["numeric","2-digit"]),S=n(a.minute,["numeric","2-digit"]),C=n(a.second,["numeric","2-digit"]),D=n(a.timeZoneName,["long","short","shortOffset","longOffset","shortGeneric","longGeneric"]),N=n(a.timeZone),w=a.hour12===!0?!0:a.hour12===!1?!1:void 0;return Intl.DateTimeFormat(o,{dateStyle:s,timeStyle:l,calendar:i,weekday:u,era:g,year:p,month:h,day:d,hour:b,minute:S,second:C,timeZoneName:D,timeZone:N,hour12:w}).format(e)},Li=Mi;var dr={};m(dr,{default:()=>$i});var _i=([e,t])=>typeof t!="number"||isNaN(t)?null:Array.isArray(e)?e.slice(0,e.length-t):typeof e=="string"?e.substring(0,e.length-t):null,$i=_i;var cr={};m(cr,{default:()=>qi,getArgumentInputData:()=>Bi,handler:()=>qo});var qo=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.findLast((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).findLast(([r,o])=>t({key:r,value:o}))?.[1]:null,qi=qo,Bi=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var mr={};m(mr,{default:()=>Hi});var Ui=([e,t])=>typeof t!="number"||isNaN(t)?null:Array.isArray(e)?e.slice(t):typeof e=="string"?e.substring(t):null,Hi=Ui;var fr={};m(fr,{default:()=>Ki});var Vi=([e,t])=>e<t,Ki=Vi;var gr={};m(gr,{default:()=>Ji});var Wi=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)%Number(t),Ji=Wi;var hr={};m(hr,{default:()=>Qi});var Gi=([e,t,r])=>typeof e!="number"||typeof t!="number"||typeof r!="number"?null:Math.min(Math.max(e,t),r),Qi=Gi;var yr={};m(yr,{default:()=>Yi});var zi=([e])=>typeof e=="number"?new Date(e):null,Yi=zi;var br={};m(br,{default:()=>Xi});var Zi=([e])=>String(e),Xi=Zi;var vr={};m(vr,{default:()=>tl});var el=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)**Number(t),tl=el;var Er={};m(Er,{default:()=>ol});var rl=([e])=>{if(Array.isArray(e)){let t=0;for(let r of e){if(isNaN(r)||typeof r!="number")return null;t+=r}return t}return null},ol=rl;var Ar={};m(Ar,{default:()=>al});var nl=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let t=window.localStorage.getItem(e);if(t===null)return t;try{return JSON.parse(t)}catch{return t}},al=nl;var Sr={};m(Sr,{default:()=>il});var sl=([e,t])=>Array.isArray(e)?[t,...e]:null,il=sl;var Cr={};m(Cr,{default:()=>ul});var ll=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let t=window.sessionStorage.getItem(e);if(t===null)return t;try{return JSON.parse(t)}catch{return t}},ul=ll;var wr={};m(wr,{default:()=>dl});var pl=([e,t])=>globalThis.toddle.isEqual(e,t),dl=pl;var Fr={};m(Fr,{default:()=>ml});var cl=([e],{env:t,root:r})=>!e||typeof e!="string"?null:t.isServer?t.request.cookies[e]??null:r instanceof ShadowRoot?null:r.cookie.split("; ")?.find(o=>o.startsWith(`${e}=`))?.split("=")[1]??null,ml=cl;var jr={};m(jr,{default:()=>gl});var fl=([e,t])=>Array.isArray(e)?e.join(String(t)):null,gl=fl;var Rr={};m(Rr,{default:()=>yl});var hl=([e])=>Array.isArray(e)?[...e].reverse():null,yl=hl;var Dr={};m(Dr,{default:()=>vl});var bl=e=>Math.max(...e.map(Number)),vl=bl;var Or={};m(Or,{default:()=>Al});var El=([e,t])=>{let r=Number(e),o=Number(t);return isNaN(r)||isNaN(o)?null:r-o},Al=El;var Pr={};m(Pr,{default:()=>Cl});var Sl=([e,t])=>{if(typeof e=="string")return e.lastIndexOf(t);if(Array.isArray(e)){let r=e.lastIndexOf(t);return r!==-1?r:e.findLastIndex(o=>globalThis.toddle.isEqual(o,t))}return null},Cl=Sl;var Tr={};m(Tr,{default:()=>Fl});var wl=([e,t,r])=>typeof e!="string"||typeof t!="string"?null:e.replaceAll(t,String(r)),Fl=wl;var Nr={};m(Nr,{default:()=>Rl});var jl=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.ceil(e*r)/r},Rl=jl;var kr={};m(kr,{default:()=>Ol});var Dl=(e,{env:t})=>t.isServer?t.request?.headers["user-agent"]??null:window.navigator.userAgent,Ol=Dl;var xr={};m(xr,{default:()=>Pl,getArgumentInputData:()=>Tl,handler:()=>Bo});var Bo=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.findIndex((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).findIndex(([r,o])=>t({key:r,value:o})):null,Pl=Bo,Tl=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var Ir={};m(Ir,{default:()=>kl});var Nl=([e,t,r])=>{if(!F(navigator.canShare))return!1;let o=a=>F(a)&&typeof a=="string";if(!o(e)&&!o(t)&&!o(r))return!1;let n={};return o(t)&&(n.title=t),o(r)&&(n.text=r),o(e)&&(n.url=e),navigator.canShare(n)},kl=Nl;var Mr={};m(Mr,{default:()=>Il});var xl=(e,{env:t})=>t.isServer?t.request.url:window?.location.href??null,Il=xl;var Lr={};m(Lr,{default:()=>Ll});var Ml=([e,t])=>!globalThis.toddle.isEqual(e,t),Ll=Ml;var _r={};m(_r,{default:()=>$l});var _l=([e])=>typeof e!="string"?null:encodeURIComponent(e),$l=_l;var $r={};m($r,{default:()=>Ul});var Uo=(e,t)=>`{{ ${ql[e]}.${t} }}`,ql={cookies:"cookies"};var Bl=([e])=>!e||typeof e!="string"?null:Uo("cookies",e),Ul=Bl;var qr={};m(qr,{default:()=>Vl});var Hl=([e])=>{if(!Array.isArray(e))return null;let t=new Set;return e.filter(r=>{let o=typeof r=="object"?JSON.stringify(r):r;return t.has(o)?!1:(t.add(o),!0)})},Vl=Hl;var Br={};m(Br,{default:()=>Kl,getArgumentInputData:()=>Wl,handler:()=>Ho});var Ho=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.filter((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).filter(([r,o])=>t({key:r,value:o}))):Array.isArray(e)?e.filter((r,o)=>t({item:r,index:o})):null,Kl=Ho,Wl=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{value:o[1],key:o[0]}}}return r};var Ur={};m(Ur,{default:()=>Gl});var Jl=([e])=>Array.isArray(e)?e.length:H(e)?Object.keys(e).length:typeof e=="string"?e.length:null,Gl=Jl;var Hr={};m(Hr,{default:()=>zl});var Ql=([e,t])=>Array.isArray(e)?[...e,t]:null,zl=Ql;var Vr={};m(Vr,{default:()=>Zl});var Yl=([e,t])=>{if(typeof e=="string")return e[Number(t)];let r=(o,n)=>{if(n.length===0)return o;let[a,...s]=n;return r(o?.[String(a)],s)};return r(e,Array.isArray(t)?t:[t])},Zl=Yl;var Kr={};m(Kr,{default:()=>eu});var Xl=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.floor(e*r)/r},eu=Xl;var Wr={};m(Wr,{default:()=>ru});var tu=e=>Math.min(...e.map(Number)),ru=tu;var Jr={};m(Jr,{default:()=>nu});var ou=(e,t)=>t.env.isServer,nu=ou;var Gr={};m(Gr,{default:()=>su});var au=([e,t])=>{let r=isNaN(Number(t))?0:Number(t);return JSON.stringify(e,null,r)},su=au;var Qr={};m(Qr,{default:()=>lu});var iu=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)/Number(t),lu=iu;var En=fe(de(),1);function uu(e){for(var t=[],r=0;r<e.length;){var o=e[r];if(o==="*"||o==="+"||o==="?"){t.push({type:"MODIFIER",index:r,value:e[r++]});continue}if(o==="\\"){t.push({type:"ESCAPED_CHAR",index:r++,value:e[r++]});continue}if(o==="{"){t.push({type:"OPEN",index:r,value:e[r++]});continue}if(o==="}"){t.push({type:"CLOSE",index:r,value:e[r++]});continue}if(o===":"){for(var n="",a=r+1;a<e.length;){var s=e.charCodeAt(a);if(s>=48&&s<=57||s>=65&&s<=90||s>=97&&s<=122||s===95){n+=e[a++];continue}break}if(!n)throw new TypeError("Missing parameter name at ".concat(r));t.push({type:"NAME",index:r,value:n}),r=a;continue}if(o==="("){var l=1,i="",a=r+1;if(e[a]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(a));for(;a<e.length;){if(e[a]==="\\"){i+=e[a++]+e[a++];continue}if(e[a]===")"){if(l--,l===0){a++;break}}else if(e[a]==="("&&(l++,e[a+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(a));i+=e[a++]}if(l)throw new TypeError("Unbalanced pattern at ".concat(r));if(!i)throw new TypeError("Missing pattern at ".concat(r));t.push({type:"PATTERN",index:r,value:i}),r=a;continue}t.push({type:"CHAR",index:r,value:e[r++]})}return t.push({type:"END",index:r,value:""}),t}function Ko(e,t){t===void 0&&(t={});for(var r=uu(e),o=t.prefixes,n=o===void 0?"./":o,a=t.delimiter,s=a===void 0?"/#?":a,l=[],i=0,u=0,g="",p=function(f){if(u<r.length&&r[u].type===f)return r[u++].value},h=function(f){var y=p(f);if(y!==void 0)return y;var R=r[u],j=R.type,T=R.index;throw new TypeError("Unexpected ".concat(j," at ").concat(T,", expected ").concat(f))},d=function(){for(var f="",y;y=p("CHAR")||p("ESCAPED_CHAR");)f+=y;return f},b=function(f){for(var y=0,R=s;y<R.length;y++){var j=R[y];if(f.indexOf(j)>-1)return!0}return!1},S=function(f){var y=l[l.length-1],R=f||(y&&typeof y=="string"?y:"");if(y&&!R)throw new TypeError('Must have text between two parameters, missing text after "'.concat(y.name,'"'));return!R||b(R)?"[^".concat(Q(s),"]+?"):"(?:(?!".concat(Q(R),")[^").concat(Q(s),"])+?")};u<r.length;){var C=p("CHAR"),D=p("NAME"),N=p("PATTERN");if(D||N){var w=C||"";n.indexOf(w)===-1&&(g+=w,w=""),g&&(l.push(g),g=""),l.push({name:D||i++,prefix:w,suffix:"",pattern:N||S(w),modifier:p("MODIFIER")||""});continue}var A=C||p("ESCAPED_CHAR");if(A){g+=A;continue}g&&(l.push(g),g="");var P=p("OPEN");if(P){var w=d(),O=p("NAME")||"",c=p("PATTERN")||"",v=d();h("CLOSE"),l.push({name:O||(c?i++:""),pattern:O&&!c?S(w):c,prefix:w,suffix:v,modifier:p("MODIFIER")||""});continue}h("END")}return l}function Wo(e,t){return pu(Ko(e,t),t)}function pu(e,t){t===void 0&&(t={});var r=Yr(t),o=t.encode,n=o===void 0?function(i){return i}:o,a=t.validate,s=a===void 0?!0:a,l=e.map(function(i){if(typeof i=="object")return new RegExp("^(?:".concat(i.pattern,")$"),r)});return function(i){for(var u="",g=0;g<e.length;g++){var p=e[g];if(typeof p=="string"){u+=p;continue}var h=i?i[p.name]:void 0,d=p.modifier==="?"||p.modifier==="*",b=p.modifier==="*"||p.modifier==="+";if(Array.isArray(h)){if(!b)throw new TypeError('Expected "'.concat(p.name,'" to not repeat, but got an array'));if(h.length===0){if(d)continue;throw new TypeError('Expected "'.concat(p.name,'" to not be empty'))}for(var S=0;S<h.length;S++){var C=n(h[S],p);if(s&&!l[g].test(C))throw new TypeError('Expected all "'.concat(p.name,'" to match "').concat(p.pattern,'", but got "').concat(C,'"'));u+=p.prefix+C+p.suffix}continue}if(typeof h=="string"||typeof h=="number"){var C=n(String(h),p);if(s&&!l[g].test(C))throw new TypeError('Expected "'.concat(p.name,'" to match "').concat(p.pattern,'", but got "').concat(C,'"'));u+=p.prefix+C+p.suffix;continue}if(!d){var D=b?"an array":"a string";throw new TypeError('Expected "'.concat(p.name,'" to be ').concat(D))}}return u}}function Jo(e,t){var r=[],o=Go(e,r,t);return du(o,r,t)}function du(e,t,r){r===void 0&&(r={});var o=r.decode,n=o===void 0?function(a){return a}:o;return function(a){var s=e.exec(a);if(!s)return!1;for(var l=s[0],i=s.index,u=Object.create(null),g=function(h){if(s[h]===void 0)return"continue";var d=t[h-1];d.modifier==="*"||d.modifier==="+"?u[d.name]=s[h].split(d.prefix+d.suffix).map(function(b){return n(b,d)}):u[d.name]=n(s[h],d)},p=1;p<s.length;p++)g(p);return{path:l,index:i,params:u}}}function Q(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function Yr(e){return e&&e.sensitive?"":"i"}function cu(e,t){if(!t)return e;for(var r=/\((?:\?<(.*?)>)?(?!\?)/g,o=0,n=r.exec(e.source);n;)t.push({name:n[1]||o++,prefix:"",suffix:"",modifier:"",pattern:""}),n=r.exec(e.source);return e}function mu(e,t,r){var o=e.map(function(n){return Go(n,t,r).source});return new RegExp("(?:".concat(o.join("|"),")"),Yr(r))}function fu(e,t,r){return gu(Ko(e,r),t,r)}function gu(e,t,r){r===void 0&&(r={});for(var o=r.strict,n=o===void 0?!1:o,a=r.start,s=a===void 0?!0:a,l=r.end,i=l===void 0?!0:l,u=r.encode,g=u===void 0?function(y){return y}:u,p=r.delimiter,h=p===void 0?"/#?":p,d=r.endsWith,b=d===void 0?"":d,S="[".concat(Q(b),"]|$"),C="[".concat(Q(h),"]"),D=s?"^":"",N=0,w=e;N<w.length;N++){var A=w[N];if(typeof A=="string")D+=Q(g(A));else{var P=Q(g(A.prefix)),O=Q(g(A.suffix));if(A.pattern)if(t&&t.push(A),P||O)if(A.modifier==="+"||A.modifier==="*"){var c=A.modifier==="*"?"?":"";D+="(?:".concat(P,"((?:").concat(A.pattern,")(?:").concat(O).concat(P,"(?:").concat(A.pattern,"))*)").concat(O,")").concat(c)}else D+="(?:".concat(P,"(").concat(A.pattern,")").concat(O,")").concat(A.modifier);else{if(A.modifier==="+"||A.modifier==="*")throw new TypeError('Can not repeat "'.concat(A.name,'" without a prefix and suffix'));D+="(".concat(A.pattern,")").concat(A.modifier)}else D+="(?:".concat(P).concat(O,")").concat(A.modifier)}}if(i)n||(D+="".concat(C,"?")),D+=r.endsWith?"(?=".concat(S,")"):"$";else{var v=e[e.length-1],f=typeof v=="string"?C.indexOf(v[v.length-1])>-1:v===void 0;n||(D+="(?:".concat(C,"(?=").concat(S,"))?")),f||(D+="(?=".concat(C,"|").concat(S,")"))}return new RegExp(D,Yr(r))}function Go(e,t,r){return e instanceof RegExp?cu(e,t):Array.isArray(e)?mu(e,t,r):fu(e,t,r)}var X=e=>"triggerActions"in e,we=class{abortControllers=[];applyAbortSignal=t=>{let r=new AbortController;return this.abortControllers.push(r),this.cleanupAbortedControllers(),{...t,signal:t.signal?AbortSignal.any([t.signal,r.signal]):r.signal}};abort=()=>{this.abortControllers.forEach(t=>{t.abort()}),this.abortControllers=[]};cleanupAbortedControllers=()=>{this.abortControllers=this.abortControllers.filter(t=>!t.signal.aborted)}};var Qo=fe(de(),1);var ce=({query:e,page:t,route:r,params:o,hash:n})=>{let a;if(r){let i=[];for(let u of r.path)if(u.type==="static")i.push(u.name);else{let g=o[u.name];if(F(g))i.push(g);else break}a="/"+i.join("/")}else a=Wo(t,{encode:encodeURIComponent})(o);let s=n===void 0||n===""?"":"#"+n,l=Object.entries(e).filter(([i,u])=>u!==null).map(([i,u])=>`${encodeURIComponent(r?.query[i]?.name??i)}=${encodeURIComponent(String(u))}`).join("&");return`${a}${s}${l.length>0?"?"+l:""}`};function M(e,t,r,o,n){try{if(!e)throw new Error("Action does not exist");switch(e.type){case"Switch":{let a=e.cases?.find(({condition:s})=>x(E(s,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["cases","condition"])))??e.default;for(let s of a?.actions??[])M(s,{...t,...r.dataSignal.get()},r,o,n);break}case"SetVariable":{let a=E(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath});r.dataSignal.update(s=>({...s,Variables:{...s.Variables,[e.variable]:a}}));break}case"TriggerEvent":{let a=E(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["data"]);r.triggerEvent(e.event,a);break}case"TriggerWorkflowCallback":{let a=E(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["data"]);n?.(e.event,a);break}case"SetURLParameter":{r.toddle.locationSignal.update(a=>{let s=E(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["data"]),l,i;if(a.route?.path.some(p=>p.name===e.parameter)?(l="push",i={...a,params:{...Y(a.params,[e.parameter]),[e.parameter]:s}}):(l="replace",i={...a,query:{...Y(a.query,[e.parameter]),...F(s)?{[e.parameter]:s}:null}}),!l)return a;let u=ce(a),g=ce(i);return g!==u&&(l=e.historyMode??l,l==="push"?window.history.pushState({},"",g):window.history.replaceState({},"",g)),i});break}case"SetURLParameters":{let a=Object.entries(e.parameters??{});if(a.length===0)return;r.toddle.locationSignal.update(s=>{if(!s.route)return s;let l="replace",i={},u={},g={data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},p=C=>s.route?.path.some(D=>D.name===C&&D.type==="param"),h=C=>Object.values(s.route?.query??{}).some(D=>D.name===C);for(let[C,D]of a){let N=E(D,g,["parameters",C])??null;p(C)?(l="push",u[C]=N):h(C)&&(i[C]=N)}if(Object.keys(u).length===0&&Object.keys(i).length===0)return s;let d={...s,params:{...Y(s.params,Object.keys(u)),...u},query:{...Y(s.query,Object.keys(i)),...i}};if((0,Qo.default)(d,s))return s;let b=ce(s),S=ce(d);return S!==b&&(l=e.historyMode??l,l==="push"?window.history.pushState({},"",S):window.history.replaceState({},"",S)),d});break}case"Fetch":{let a=r.apis[e.api];if(!a){console.error("The api ",e.api,"does not exist");return}if(X(a)){let s=q(e.inputs??{},([i,u])=>[i,E(u.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["inputs",i,"formula"])]),l={onCompleted:e.onSuccess?.actions??[],onFailed:e.onError?.actions??[],onMessage:e.onMessage?.actions??[]};a.fetch({actionInputs:s,actionModels:l,componentData:t,workflowCallback:n})}else{let s=l=>{for(let i of l)M(i,{...t,...r.dataSignal.get()},r,o,n)};a.fetch().then(()=>{s(e.onSuccess?.actions??[])},()=>{s(e.onError?.actions??[])})}break}case"AbortFetch":{let a=r.apis[e.api];if(!a){console.error("The api ",e.api,"does not exist");return}X(a)?a.cancel():console.warn(`AbortFetch action is not supported for API "${e.api}" as it is not a v2 API.`);break}case"TriggerWorkflow":{let a=q(e.parameters??{},([i,u])=>[i,E(u.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["parameters",i,"formula"])]),s=e.callbacks;if(e.contextProvider){let i=r.providers[[r.package,e.contextProvider].filter(F).join("/")]??r.providers[e.contextProvider],u=i?.component.workflows?.[e.workflow];if(!u){i&&console.warn(`Cannot find workflow "${e.workflow}" on component "${e.contextProvider}". It has likely been removed or modified.`);return}u.actions.forEach(g=>M(g,{...t,...i.ctx.dataSignal.get(),Parameters:a},i.ctx,o,(p,h)=>{s?.[p]?.actions?.forEach(b=>b&&M(b,{...t,...r.dataSignal.get(),Parameters:a,Event:h},r,o,n))}));return}let l=r.component.workflows?.[e.workflow];if(!l){console.warn(`Workflow ${e.workflow} does not exist on component ${r.component.name}`);return}l.actions.forEach(i=>M(i,{...t,...r.dataSignal.get(),Parameters:a},r,o,(u,g)=>{s?.[u]?.actions?.forEach(h=>h&&M(h,{...t,...r.dataSignal.get(),Parameters:a,Event:g},r,o,n))}));break}default:try{let a=(l,i)=>{let u=e.events?.[l];u&&u.actions?.forEach(g=>M(g,i?{...t,...r.dataSignal.get(),Event:i}:{...t,...r.dataSignal.get()},r,i??o,n))},s=e.version===2?(r.toddle.getCustomAction??r.toddle.getCustomAction)(e.name,e.package??r.package):void 0;if(s){let l=(e.arguments??[]).reduce((u,g,p)=>g?{...u,[g.name]:E(g.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["arguments",p,"formula"])}:u,{}),i=s.handler?.(l,{root:r.root,triggerActionEvent:a},o);return i&&(typeof i=="function"||i instanceof Promise)&&r.dataSignal.subscribe(u=>u,{destroy:()=>{i instanceof Promise?i.then(u=>{typeof u=="function"&&u()}).catch(u=>console.error(u)):i()}}),i}else{let l=r.toddle.getAction(e.name);if(!l){console.error("Missing custom action",e.name);return}let i=e.arguments?.map((u,g)=>E(u?.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["arguments",g,"formula"]))??[E(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["arguments","data"])];return l(i,{...r,triggerActionEvent:a},o)}}catch(a){console.error("Error in Custom Action",a)}}}catch(a){return console.error(a),null}}function Fe(e,t){let r=null;function o(p,h){let d={data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},b=E(p.url,d,["url"])??"",S=p.path&&p.path.length>0?"/"+p.path.map((O,c)=>E(O.formula,d,["path",c,"formula"])).join("/"):"",C=Object.values(p.queryParams??{}),D=C.length>0?"?"+C.map((O,c)=>`${O.name}=${encodeURIComponent(E(O.formula,d,["queryParams",c,"formula"]))}`).join("&"):"",N=J(p.headers)?E(p.headers,{data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["headers"]):q(p.headers??{},([O,c])=>E(c,{data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["headers",O])),w=String(Object.entries(N).find(([O])=>O.toLocaleLowerCase()==="content-type")?.[1]),A=p.method??"GET",P=p.body&&["POST","PUT","PATCH","DELETE"].includes(A)?a(E(p.body,{data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["body"]),w):void 0;return{url:b+S+D,method:A,auth:p.auth,headers:N,body:P}}async function n(p){let h=await p.text();try{return pe(h)}catch{return h}}function a(p,h){switch(h){case"application/x-www-form-urlencoded":return typeof p=="object"&&p!==null?Object.entries(p).map(([d,b])=>Array.isArray(b)?b.map(S=>`${encodeURIComponent(d)}=${encodeURIComponent(S)}`).join("&"):`${encodeURIComponent(d)}=${encodeURIComponent(String(b))}`).join("&"):"";case"multipart/form-data":{let d=new FormData;return typeof p=="object"&&p!==null&&Object.entries(p).forEach(([b,S])=>{d.set(b,S)}),d}case"text/plain":return String(p);default:return JSON.stringify(p)}}function s(p){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:p,error:null,isLoading:!1}}}),e.onCompleted?.actions?.forEach(h=>{M(h,t.dataSignal.get(),t)})}function l(p){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:null,isLoading:!1,error:p}}}),e.onFailed?.actions?.forEach(h=>{M(h,t.dataSignal.get(),t)})}async function i(p){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:t.dataSignal.get().Apis?.[e.name]?.data??null,isLoading:!0,error:null}}});let h;try{e.proxy===!1?h=await fetch(p.url,{method:p.method,headers:p.headers,body:p.body}):h=await fetch(`/_query/${encodeURIComponent(t.component.name)}.${encodeURIComponent(e.name)}`,{method:"POST",body:JSON.stringify(p),signal:t.abortSignal,headers:{"Content-Type":"application/json"}});let d=await n(h);if(h.ok)s(d);else throw d}catch(d){return l(d),Promise.reject(d)}}function u(p){return typeof e.debounce=="number"?new Promise((h,d)=>{typeof r=="number"&&clearTimeout(r),r=setTimeout(()=>{i(p).then(h,d)},e.debounce)}):typeof e.throttle=="number"?typeof r=="number"?new Promise(()=>{}):(r=setTimeout(()=>{typeof r=="number"&&clearTimeout(r)},e.throttle),i(p)):i(p)}let g;if(t.dataSignal.update(p=>({...p,Apis:{...p.Apis??{},[e.name]:p.Apis?.[e.name]??{data:null,isLoading:!!(e.autoFetch&&E(e.autoFetch,{data:t.dataSignal.get(),component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["autoFetch"])),error:null}}})),e.autoFetch){g=t.dataSignal.map(h=>o(e,h));let p=!0;g.subscribe(h=>{if(e.autoFetch&&E(e.autoFetch,{data:t.dataSignal.get(),component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["autoFetch"]))if(p&&t.isRootComponent){p=!1;let d=t.toddle?.pageState?.Apis?.[e.name];d?.data?typeof d.data=="string"?s(pe(d.data)):s(d.data):u(h)}else u(h)})}return{fetch:p=>{let h=o(e,t.dataSignal.get()),d=h.body,b=new Headers({...h.headers,...p?.headers??{}});p?.body&&(d=a(p.body,b.get("Content-Type")??void 0)),d instanceof FormData&&b.delete("Content-Type");let S={url:p?.url??h.url,method:p?.method??h.method,auth:p?.auth??h.auth,headers:Z(b),body:d};return u(S)},destroy:()=>g?.destroy()}}var zo=({path:e,origin:t})=>{if(typeof e!="string")return!1;try{let r=new URL(e,t),o=new URLSearchParams(r.searchParams);return o.forEach((n,a)=>{r.searchParams.delete(a,n)}),o.forEach((n,a)=>{r.searchParams.append(a,n)}),r}catch{return!1}},Yo="x-nordcraft-url",Zo="x-nordcraft-templates-in-body";function je({apiRequest:e,componentData:t,ctx:r}){let o=null,n={...e};function a(c,v){let f=window.origin;try{new URL(f)}catch{f=void 0}let y=Do({api:c,formulaContext:s(c,v),baseUrl:f,defaultHeaders:void 0});return{...y,requestSettings:{...y.requestSettings,credentials:c.client?.credentials&&["include","same-origin","omit"].includes(c.client.credentials)?c.client.credentials:void 0}}}function s(c,v){let f={data:r.dataSignal.get(),component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},y=Object.entries(c.inputs).reduce((j,[T,_])=>(j[T]=E(_.formula,f,["inputs",T]),j),{}),R={...v,...f.data,ApiInputs:{...y}};return{component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,data:R,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation}}function l(c,v){for(let[f,y]of be(c.redirectRules??{},([R,j])=>j.index)){let R=s(c,v),j=E(y.formula,{...R,data:{...R.data,Apis:{[c.name]:r.dataSignal.get().Apis?.[c.name]}}},["redirectRules",f]);if(typeof j=="string"){let T=zo({path:j,origin:window.location.origin});if(T){if(r.env.runtime==="preview")return window.parent?.postMessage({type:"blockedNavigation",url:T.href},"*"),{name:f,index:y.index,url:T};window.location.replace(T.href)}}}}function i({eventName:c,api:v,data:f,componentData:y,workflowCallback:R}){switch(c){case"message":{let j=Se("message",f.body);v.client?.onMessage?.actions?.forEach(T=>{M(T,{...s(v,y).data,Event:j},r,j,R)});break}case"success":{let j=Se("success",f.body);v.client?.onCompleted?.actions?.forEach(T=>{M(T,{...s(v,y).data,Event:j},r,j,R)});break}case"failed":{let j=Se("failed",{error:f.body,status:f.status});v.client?.onFailed?.actions?.forEach(T=>{M(T,{...s(v,y).data,Event:j},r,j,R)});break}}}function u({api:c,componentData:v,data:f,performance:y}){let R=r.dataSignal.get().Apis?.[c.name]?.response?.performance?.requestStart;if(typeof R=="number"&&R>(y.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:f.body,error:null,response:{status:f.status,headers:f.headers,performance:y}}}}),r.reportFormulaEvaluation?.(["apis",c.name],{isLoading:!1,data:f.body,error:null,response:{status:f.status,headers:f.headers,performance:y}},r);let j=l(c,v);j&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:f.body,error:null,response:{status:f.status,headers:f.headers,performance:y,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:j}}:{}}}}})}function g({api:c,componentData:v,data:f,performance:y}){let R=r.dataSignal.get().Apis?.[c.name]?.response?.performance?.requestStart;if(typeof R=="number"&&R>(y.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:null,error:f.body,response:{status:f.status,headers:f.headers,performance:y}}}}),r.reportFormulaEvaluation?.(["apis",c.name],{isLoading:!1,data:null,error:f.body,response:{status:f.status,headers:f.headers,performance:y}},r);let j=l(c,v);j&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:null,error:f.body,response:{status:f.status,headers:f.headers,performance:y,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:j}}:{}}}}})}async function p({api:c,url:v,requestSettings:f,componentData:y,workflowCallback:R}){let j=async()=>{let T={requestStart:Date.now(),responseStart:null,responseEnd:null};r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!0,data:r.dataSignal.get().Apis?.[c.name]?.data??null,error:null}}}),r.reportFormulaEvaluation?.(["apis",c.name],{isLoading:!0,data:r.dataSignal.get().Apis?.[c.name]?.data??null,error:null},r);let _;try{let L=c.server?.proxy?E(c.server.proxy.enabled.formula,s(c,y),["server","proxy","enabled"])??!1:!1;if(f=O.applyAbortSignal(f),L===!1)_=await fetch(v,f);else{let $=`/.toddle/omvej/components/${encodeURIComponent(r.component.name)}/apis/${encodeURIComponent(r.component.name)}:${encodeURIComponent(c.name)}`,I=new Headers(f.headers);I.set(Yo,decodeURIComponent(v.href.replace(/\+/g," "))),x(E(c.server?.proxy?.useTemplatesInBody?.formula,s(c,y),["server","proxy","useTemplatesInBody"]))&&I.set(Zo,"true"),f.headers=I,_=await fetch($,f)}T.responseStart=Date.now(),await h({api:c,componentData:y,res:_,performance:T,workflowCallback:R});return}catch(L){let $="Unknown error";return L instanceof Error&&($=L.cause?{message:L.message,data:L.cause}:L.message,L.name==="TimeoutError"||L.name==="AbortError"&&($="Request was aborted")),g({api:c,componentData:y,data:{body:$},performance:{...T,responseEnd:Date.now()}}),i({eventName:"failed",api:c,data:{body:$},componentData:y,workflowCallback:R}),Promise.reject(L)}};return c.client?.debounce?.formula?new Promise((T,_)=>{typeof o=="number"&&clearTimeout(o),o=setTimeout(()=>{j().then(T,_)},E(c.client?.debounce?.formula,s(c,y),["client","debounce"]))}):j()}function h({api:c,componentData:v,res:f,performance:y,workflowCallback:R}){let j=c.client?.parserMode??"auto";if(j==="auto"){let T=f.headers.get("content-type");Fo(T)?j="event-stream":ve(T)?j="json":wo(T)?j="text":jo(T)?j="json-stream":Ro(T)?j="blob":j="text"}switch(j){case"text":return d({api:c,componentData:v,res:f,performance:y,workflowCallback:R});case"json":return S({api:c,componentData:v,res:f,performance:y,workflowCallback:R});case"event-stream":return D({api:c,componentData:v,res:f,performance:y,workflowCallback:R});case"json-stream":return b({api:c,componentData:v,res:f,performance:y,workflowCallback:R});case"blob":return C({api:c,componentData:v,res:f,performance:y,workflowCallback:R});default:return d({api:c,componentData:v,res:f,performance:y,workflowCallback:R})}}function d({api:c,res:v,performance:f,componentData:y,workflowCallback:R}){return N({api:c,res:v,performance:f,streamType:"text",useTextDecoder:!0,parseChunk:j=>j,parseChunksForData:j=>j.join(""),componentData:y,workflowCallback:R})}function b({api:c,res:v,performance:f,componentData:y,workflowCallback:R}){return N({api:c,res:v,performance:f,streamType:"json",useTextDecoder:!0,parseChunk:T=>{let _=T;try{_=JSON.parse(T)}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:_})}return _},parseChunksForData:T=>[...T],delimiters:[`\r
|
|
2
2
|
`,`
|
|
3
|
-
`],componentData:y,workflowCallback:
|
|
3
|
+
`],componentData:y,workflowCallback:R})}async function S({api:c,componentData:v,res:f,performance:y,workflowCallback:R}){let T={data:await f.json(),isLoading:!1,error:null,response:{status:f.status,headers:Z(f.headers)}};return w({api:c,apiStatus:T,componentData:v,performance:y,workflowCallback:R})}async function C({api:c,componentData:v,res:f,performance:y,workflowCallback:R}){let j=await f.blob(),T={isLoading:!1,data:URL.createObjectURL(j),error:null,response:{status:f.status,headers:Z(f.headers)}};return w({api:c,apiStatus:T,componentData:v,performance:y,workflowCallback:R})}function D({api:c,res:v,performance:f,componentData:y,workflowCallback:R}){return N({api:c,res:v,performance:f,streamType:"event",useTextDecoder:!0,parseChunk:T=>{let _=T.match(/event: (.*)/)?.[1]??"message",L=T.match(/data: (.*)/)?.[1]??"",$=T.match(/id: (.*)/)?.[1],I=T.match(/retry: (.*)/)?.[1],oe=L;try{oe=JSON.parse(L??"")}catch{}return{event:_,data:oe,...$?{id:$}:{},...I?{retry:I}:{}}},parseChunksForData:T=>[...T],delimiters:[`
|
|
4
4
|
|
|
5
5
|
`,`\r
|
|
6
6
|
\r
|
|
7
|
-
`],componentData:y,workflowCallback:j})}async function N({api:c,res:b,performance:f,streamType:y,useTextDecoder:j,parseChunk:R,parseChunksForData:P,delimiters:_,componentData:L,workflowCallback:$}){let I={chunks:[],currentChunk:"",add(G){let W=R(G);this.chunks.push(W),W&&(r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!0,data:P(this.chunks),error:null,response:{headers:Z(b.headers)}}}}),(c.client?.onMessage?.actions??[]).length>0&&i({eventName:"message",api:c,data:{body:W},componentData:L,workflowCallback:$}))},processChunk(G){let W=_?.find(ke=>G.includes(ke)),ro=this.currentChunk+G,oo=W?ro.split(W):[ro];this.currentChunk=oo.pop()??"",oo.forEach(ke=>this.add(ke))}},oe=j?b.body?.pipeThrough(new TextDecoderStream).getReader():b.body?.getReader();for(;oe;){let{done:G,value:W}=await oe.read();if(G)break;_?I.processChunk(W):I.add(W)}I.currentChunk&&I.add(I.currentChunk);let me={isLoading:!1,data:I.chunks,error:null,response:{status:b.status,headers:Z(b.headers)}};try{if(y==="json"){let G=JSON.parse(I.chunks.join(""));me.data=G}else y==="text"&&(me.data=I.chunks.join(""))}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:I.chunks.join("")})}return F({api:c,apiStatus:me,componentData:L,performance:f,workflowCallback:$})}function F({api:c,apiStatus:b,componentData:f,performance:y,workflowCallback:j}){y.responseEnd=Date.now();let R={body:b.data,status:b.response?.status,headers:b.response?.headers??void 0};Oo({apiName:c.name,response:{body:R.body,ok:!!(!b.error&&b.response?.status&&b.response.status<400),status:R.status,headers:R.headers},formulaContext:s(c,f),errorFormula:c.isError,performance:y})?(!R.body&&b.error&&(R.body=b.error),g({api:c,componentData:f,data:R,performance:y}),i({eventName:"failed",api:c,componentData:f,data:R,workflowCallback:j})):(u({api:c,componentData:f,data:R,performance:y}),i({eventName:"success",api:c,componentData:f,data:R,workflowCallback:j}))}function A(c){return Eo(c,[["client","onCompleted"],["client","onFailed"],["client","onMessage"],["service"],["server","ssr"]])}let T,O=new Fe;return T=r.dataSignal.map(c=>{let b=s(n,c),f=a(n,c);if(r.reportFormulaEvaluation){let y=c.Apis?.[n.name];y&&r.reportFormulaEvaluation(["apis",n.name],y)}return{request:f,api:A(n),headers:Array.from(f.requestSettings.headers.entries()),autoFetch:n.autoFetch?v(n.autoFetch,b,["autoFetch"]):!1,proxy:v(n.server?.proxy?.enabled.formula,b,["proxy"])}}),T.subscribe(async c=>{let{url:b,requestSettings:f}=c.request,y=w(n.autoFetch)&&(n.autoFetch.type!=="value"||n.autoFetch.value===!0)&&(window?.__toddle?.isPageLoaded??!1)===!1?r.toddle.pageState.Apis?.[Do(b,f)]:void 0;y?y.error?g({api:n,data:{body:y.error,status:y.response?.status,headers:y.response?.headers??void 0},performance:{requestStart:y.response?.performance?.requestStart??null,responseStart:y.response?.performance?.responseStart??null,responseEnd:y.response?.performance?.responseEnd??null},componentData:t}):u({api:n,data:{body:y.data,status:y.response?.status,headers:y.response?.headers??void 0},performance:{requestStart:y.response?.performance?.requestStart??null,responseStart:y.response?.performance?.responseStart??null,responseEnd:y.response?.performance?.responseEnd??null},componentData:t}):v(n.autoFetch,s(n,t),["autoFetch"])?await p({api:n,url:b,requestSettings:f,componentData:t}):r.dataSignal.get().Apis?.[n.name]||r.dataSignal.update(j=>({...j,Apis:{...j.Apis??{},[n.name]:{isLoading:!1,data:null,error:null}}}))}),{fetch:({actionInputs:c,actionModels:b,componentData:f,workflowCallback:y})=>{let j=Object.entries(c??{}).reduce((L,[$,I])=>(I!==null&&typeof I=="object"&&"formula"in I?L[$]=I:L[$]={formula:{type:"value",value:I}},L),{}),R={...n,inputs:{...n.inputs,...j},client:{...n.client,parserMode:n.client?.parserMode??"auto",onCompleted:{trigger:n.client?.onCompleted?.trigger??"success",actions:[...n.client?.onCompleted?.actions??[],...b?.onCompleted??[]]},onFailed:{trigger:n.client?.onFailed?.trigger??"failed",actions:[...n.client?.onFailed?.actions??[],...b?.onFailed??[]]},onMessage:{trigger:n.client?.onMessage?.trigger??"message",actions:[...n.client?.onMessage?.actions??[],...b?.onMessage??[]]}}},{url:P,requestSettings:_}=a(R,f);return p({api:R,url:P,requestSettings:_,componentData:f,workflowCallback:y})},cancel:O.abort,update:(c,b)=>{n=c;let f=s(n,b),y=n.autoFetch&&v(n.autoFetch,f,["autoFetch"]);if(y){let j=a(c,b);T?.set({request:j,api:A(c),autoFetch:y,proxy:v(c.server?.proxy?.enabled.formula,f,["proxy"]),headers:Array.from(j.requestSettings.headers.entries())})}},triggerActions:c=>{let b=r.dataSignal.get().Apis?.[n.name];!w(b)||b.data===null&&b.error===null||(b.error?i({eventName:"failed",api:n,data:{body:b.error,status:b.response?.status},componentData:c}):i({eventName:"success",api:n,data:{body:b.data},componentData:c}))},destroy:()=>T?.destroy()}}var Zo=e=>{if(!e)return{};let t={};for(let r in e){let o=e[r];(w(o.content)&&o.content.type!=="value"||Object.values(o.attrs??{}).some(n=>n.type!=="value"))&&(t[r]=o)}return t};var yn=fe(de(),1);var je=class{constructor(){}batchQueue=[];isProcessing=!1;processBatch(){this.isProcessing||(this.isProcessing=!0,queueMicrotask(()=>{for(;this.batchQueue.length>0;)this.batchQueue.shift()?.();this.isProcessing=!1}))}add(t){this.batchQueue.push(t),this.processBatch()}};var Zr=fe(de(),1),Yr=class{value;subscribers;subscriptions;destroying=!1;constructor(t){this.value=t,this.subscribers=new Set,this.subscriptions=[]}get(){return this.value}set(t){if(this.subscribers.size===0){this.value=t;return}if((0,Zr.default)(t,this.value)===!1){this.value=t;for(let r of this.subscribers)r.notify(this.value)}}update(t){this.set(t(this.value))}subscribe(t,r){let o={notify:t,destroy:r?.destroy};return this.subscribers.add(o),t(this.value),()=>{this.subscribers.delete(o)}}destroy(){if(!this.destroying){this.destroying=!0;for(let t of this.subscribers)t.destroy?.();this.subscribers.clear();for(let t of this.subscriptions)t();this.subscriptions.splice(0,this.subscriptions.length),this.destroying=!1}}cleanSubscribers(){for(let t of this.subscribers)t.destroy?.();this.subscribers.clear()}map(t){let r=U(t(this.value));return r.subscriptions.push(this.subscribe(o=>r.set(t(o)),{destroy:()=>r.destroy()})),r}};function U(e){return new Yr(e)}typeof window<"u"&&(window.signal=U,window.deepEqual=Zr.default);var gu,De=(e,t,r=!0)=>r?(gu??=new Map(t.map(o=>[o.name,o]))).get(e):t.find(o=>o.name===e);var Xr=(e,t)=>{let o=e.split(".").slice(-1)[0],n=parseInt(o),a=parseInt(String(o.split("(")[1]));for(let s of t.children){let i=s.getAttribute("data-id")?.split(".").slice(-1)[0],u=parseInt(String(i));if(u===n&&parseInt(String(i?.split("(")[1]))>a||u>n)return s}return null};function Xo(e,t,r=null){let o=r,n=o?o.previousSibling:e.lastChild;for(let a=t.length-1;a>=0;a--){let s=t[a];s===n?n=s.previousSibling:e.insertBefore(s,o),o=s}}var se=(e,t)=>w(e)&&w(t)&&!String(e).endsWith(t)?`${e}${t}`:e;var en=e=>[(e.className??e.class)&&`.${e.className}`,(e.evenChild??e["even-child"]??e["nth-child(even)"])&&":nth-child(even)",(e.firstChild??e["first-child"])&&":first-child",(e.focusWithin??e["focus-within"])&&":focus-within",(e.lastChild??e["last-child"])&&":last-child",e.active&&":active",e.autofill&&":is(:-webkit-autofill, :autofill)",e.checked&&":checked",e.disabled&&":disabled",e.empty&&":empty",e.focus&&":focus",e.hover&&":hover",e.invalid&&":invalid",e.link&&":link",e.visited&&":visited",e["first-of-type"]&&":first-of-type",e["focus-visible"]&&":focus-visible",e["last-of-type"]&&":last-of-type",e["popover-open"]&&":popover-open",e.pseudoElement&&`::${e.pseudoElement}`].filter(Boolean).join("");function ee(e,{componentName:t,nodeId:r,variant:o}={}){let n=`[data-id="${e}"]`;return t&&(n+=`.${t}`),r&&(n+=`\\:${r}`),n=n.replace(/(^|[^\\])\//g,"$1\\/"),o&&(n+=en(o)),n}var Oe=e=>e.formulas&&Object.values(e.formulas).some(({exposeInContext:t})=>t)||e.workflows&&Object.values(e.workflows).some(({exposeInContext:t})=>t);function tn(e,t,r){Object.entries(t.contexts??{}).forEach(([o,n])=>{let a=r.providers[[r.package,o].filter(w).join("/")];if(a)n.formulas.forEach(s=>{let l=a.formulaDataSignals[s];if(!l){console.warn(`Component error(${t.name}): Provider ${o} does not expose a formula named "${s}". Available formulas are: ["${Object.keys(a.formulaDataSignals).join('", "')}"]`);return}l.subscribe(i=>{e.update(u=>({...u,Contexts:{...u.Contexts,[o]:{...u.Contexts?.[o],[s]:i}}}))})});else if(!a&&r.env.runtime==="preview"&&r.toddle._preview){let s=r.components?.find(u=>u.name===[r.package,o].filter(w).join("/"));if(!s){console.error(`Component error(${t.name}): Could not find provider "${o}". No such component exist.`);return}let[,l]=o.split("/").reverse(),i={data:{Attributes:q(s.attributes??{},([u,g])=>[u,g.testValue])},component:s,root:r?.root,formulaCache:{},package:l??r?.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation};s.route&&(i.data["URL parameters"]={...Object.fromEntries(s.route.path.filter(u=>u.type==="param").map(u=>[u.name,u.testValue])),...q(s.route.query,([u,{testValue:g}])=>[u,g])}),i.data.Variables=q(s.variables??{},([u,g])=>[u,v(g.initialValue,{...i,reportFormulaEvaluation:void 0})]),e.update(u=>({...u,Contexts:{...u.Contexts,[o]:Object.fromEntries(n.formulas.map(g=>{let p=s.formulas?.[g];return p?[g,v(p.formula,{...i,reportFormulaEvaluation:void 0})]:(console.warn(`Component error(${t.name}): Could not find formula "${g}" in provider "${o}"`),[g,null])}))}}))}})}function rn(){window.logState=()=>{console.table(Object.entries(window.__components??{}).map(([e,t])=>({name:e,...t.get()})))}}function Te(e,t){window.__components||(window.__components={}),window.__components[e.name]=t}function on(e){return w(e.formulas)?q(e.formulas,([t,r])=>{let{canCache:o,keys:n}=r.memoize?hu(r.formula,e):{canCache:!1,keys:[]},a,s;return[t,{get:l=>o&&a&&n.every(i=>ye(l,i)===ye(a,i))?{hit:!0,data:s}:{hit:!1},set:(l,i)=>{o&&(a=l,s=i)}}]}):{}}function hu(e,t){let r=[];function o(a){if(a&&(a.type==="path"&&a.path[0]!=="Args"&&r.push(a.path),Array.isArray(a?.arguments)&&a?.arguments?.forEach(s=>o(s.formula)),a.type==="record"&&Array.isArray(a.entries)&&a.entries.forEach(s=>o(s.formula)),a.type==="apply")){if(!t.formulas?.[a.name]?.memoize)throw new Error("Cannot memoize");o(t.formulas?.[a.name]?.formula)}}try{o(e)}catch{return{canCache:!1,keys:[]}}let n=[];return r.sort((a,s)=>a.length-s.length).forEach(a=>{n.some(s=>s.every((l,i)=>l===a[i]))||n.push(a)}),{canCache:!0,keys:n}}var ie=e=>w(e)&&!(e.type==="value"&&!w(e.value));var Pe=class e{styleSheet;ruleMap;constructor(t,r){r?this.styleSheet=r:(this.styleSheet=new CSSStyleSheet,t.adoptedStyleSheets.push(this.getStyleSheet()))}registerProperty(t,r,o){this.ruleMap??=this.hydrateFromBase();let n=e.getFullSelector(e.escapeSelector(t),o),a=this.ruleMap.get(n);if(!a){let s=this.styleSheet.insertRule(n,this.styleSheet.cssRules.length),l=this.styleSheet.cssRules[s];for(;l.cssRules&&l.cssRules.length>0;)l=l.cssRules[0];a=l,this.ruleMap.set(n,a)}return s=>{a.style.setProperty(r,s)}}unregisterProperty(t,r,o){if(!this.ruleMap)return;let n=e.getFullSelector(e.escapeSelector(t),o),a=this.ruleMap.get(n);a&&(a.style.removeProperty(r),a.style.length===0&&(this.styleSheet.deleteRule(Array.from(this.ruleMap.keys()).indexOf(n)),this.ruleMap.delete(n)))}getStyleSheet(){return this.styleSheet}hydrateFromBase(){let t=new Map;for(let r=0;r<this.styleSheet.cssRules.length;r++){let o=this.styleSheet.cssRules[r],n=e.selectorFromCSSRule(o);for(;o.cssRules&&o.cssRules.length>0;)o=o.cssRules[0];t.set(n,o)}return t}static selectorFromCSSRule(t){switch(t.constructor.name){case"CSSStyleRule":return`${t.selectorText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSStartingStyleRule":return`@starting-style { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSMediaRule":return`@media ${t.media.mediaText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSNestedDeclarations":return"";default:return console.warn(`Unsupported CSS rule type: ${t.constructor.name}. Returning empty selector.`),""}}static getFullSelector(t,r){let o=t+(r?.startingStyle?" { @starting-style { }}":" { }");return r?.mediaQuery&&(o=`@media (${Object.entries(r.mediaQuery).map(([n,a])=>`${n}: ${a}`).filter(Boolean).join(") and (")}) { ${o}}`),o}static escapeSelector(t){return t.replace(/(^|[^\\])\//g,"$1\\/")}};var nn=new WeakMap;function le({selector:e,customPropertyName:t,signal:r,variant:o,root:n}){let a=nn.get(n);a||(a=new Pe(n,n.getElementById(To)?.sheet),nn.set(n,a)),r.subscribe(a.registerProperty(e,t,o),{destroy:()=>{a?.unregisterProperty(e,t,{mediaQuery:o?.mediaQuery,startingStyle:o?.startingStyle})}})}function an({node:e,path:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let l=[o.package,e.name].filter(w).join("/"),i=De(l,o.components,o.env.runtime!=="preview");if(!i)return console.warn(`Could not find component "${l}" for component "${o.component.name}". Available components are: ["${o.components.map(F=>F.name).join('", "')}"]`),[];let u={component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env,reportFormulaEvaluation:o.reportFormulaEvaluation},g=r.map(F=>q(e.attrs,([A,T])=>[A,T?.type!=="value"?v(T,{...u,data:F}):T?.value])),p=U({Location:r.get().Location,Attributes:g.get(),Apis:q(Ao(i.apis??{},([F,A])=>w(A)),([F,A])=>[F,{data:null,isLoading:!!(A.autoFetch&&v(A.autoFetch,{...u,component:i,data:r.get()})),error:null}])});o.stores.theme.subscribe(F=>{p.update(A=>({...A,Page:{...A.Page,Theme:F}}))}),tn(p,i,o),p.update(F=>({...F,Variables:q(i.variables??{},([A,T])=>[A,v(T.initialValue,{...u,component:i,data:p.get()})])})),Te(i,p);let h=new AbortController;p.subscribe(F=>{Object.entries(F.Variables??{}).forEach(([A,T])=>{o.reportFormulaEvaluation?.(["variables",A],T)})},{destroy:()=>h.abort(`Component ${i.name} unmounted`)});let d=on(i),E={};Ce(Object.entries(i.apis??{}).filter(F=>w(F[1]))).forEach(([F,A])=>{Ae(A)?E[F]=we(A,{...o,apis:E,component:i,dataSignal:p,abortSignal:h.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(T,O)=>{let c=Object.values(e.events).find(b=>b.trigger===T);c&&c.actions?.forEach(b=>M(b,{...r.get(),Event:O},o))}}):E[F]=Re({apiRequest:A,ctx:{...o,apis:E,component:i,dataSignal:p,abortSignal:h.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(T,O)=>{let c=Object.values(e.events).find(b=>b.trigger===T);c&&c.actions?.forEach(b=>M(b,{...r.get(),Event:O},o))}},componentData:p.get()})}),Object.values(E).filter(X).forEach(F=>{F.triggerActions(p.get())});let S=(F,A)=>{let T=Object.values(e.events).find(O=>O.trigger===F);T&&T.actions?.forEach(O=>M(O,{...r.get(),Event:A},o))},C=o.providers;if(Oe(i)){let F=Object.fromEntries(Object.entries(i.formulas??{}).filter(([,A])=>A.exposeInContext).map(([A,T])=>[A,p.map(O=>v(T.formula,{data:O,component:i,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env,jsonPath:o.jsonPath,reportFormulaEvaluation:o.reportFormulaEvaluation},["formulas",A]))]));C={...C,[i.name]:{component:i,formulaDataSignals:F,ctx:{...o,apis:E,component:i,dataSignal:p,abortSignal:h.signal,triggerEvent:S}}}}let D={};for(let F=0;F<e.children.length;F++){let A=e.children[F],O=o.component.nodes?.[A]?.slot??"default";D[O]=D[O]??[],D[O].push({id:A,path:`${t}.${F}[${O}]`,dataSignal:r,ctx:{...o,package:e.package??o.package}})}g.subscribe(F=>p.update(A=>({...A,Attributes:F})),{destroy:()=>p.destroy()});let N=Ne({dataSignal:p,component:i,components:o.components,path:t,root:o.root,isRootComponent:!1,children:D,formulaCache:d,providers:C,stores:o.stores,apis:E,abortSignal:h.signal,package:e.package??o.package,parentElement:n,onEvent:S,toddle:o.toddle,env:o.env,namespace:s,instance:e.id==="root"?{...a,[o.component.name]:"root"}:{[o.component.name]:e.id??""},jsonPath:o.jsonPath,reportFormulaEvaluation:o.reportFormulaEvaluation});return Object.entries(e.customProperties??{}).filter(([F,{formula:A}])=>ie(A)).forEach(([F,A])=>le({selector:ee(t,{componentName:o.component.name,nodeId:e.id}),signal:r.map(T=>se(v(A.formula,{...u,data:T}),A.unit)),customPropertyName:F,root:o.root})),e.variants?.forEach(F=>{Object.entries(F.customProperties??{}).filter(([A,{formula:T}])=>ie(T)).forEach(([A,T])=>le({selector:ee(t,{componentName:o.component.name,nodeId:e.id,variant:F}),signal:r.map(O=>se(v(T.formula,{...u,data:O}),T.unit)),customPropertyName:A,variant:F,root:o.root}))}),N}var yu=(e,t)=>{let r=t.length;for(;r;)e=e*33^t.charCodeAt(--r);return e},ln=e=>yu(5381,e),bu=/(a)(d)/gi;var sn=e=>String.fromCharCode(e+(e>25?39:97));function un(e){let t="",r;for(r=Math.abs(e);r>52;r=r/52|0)t=sn(r%52)+t;return(sn(r%52)+t).replace(bu,"$1-$2")}var eo=new Map,pn=e=>{let t=JSON.stringify(e);if(eo.has(t))return eo.get(t);let r=un(ln(t));return eo.set(t,r),r},dn=(e,t=!1)=>{let r=e.trim().replace(/\s+/g,"-");return t&&(r=r.replace(/[^a-zA-Z0-9-_]/g,o=>`\\${o}`)),/^[^a-zA-Z]/.test(r)&&(r=`_${r}`),r};function cn(e){if(e instanceof DragEvent)return Array.from(e.dataTransfer?.items??[]).reduce((t,r)=>(t[r.type]=e.dataTransfer?.getData(r.type),t),{})}function mn(e,t,r){return t.component.version===2&&r==="root"?`${t.package??t.toddle.project}-${e.tag}`:e.tag}function to(e,t,r){switch(t){case"srcObject":case"src":e instanceof HTMLMediaElement?e[t]=r:e.setAttribute(t,String(r));break;case"value":case"type":{if(e instanceof SVGElement)x(r)&&e.setAttribute(t,String(r));else{let o=r;e instanceof HTMLProgressElement&&(!w(r)||!Number.isFinite(Number(r)))&&(o=0),e[t]=x(o)?String(o):void 0}break}case"muted":case"autoplay":e instanceof HTMLMediaElement?e[t]=x(r):e.setAttribute(t,String(r));break;default:x(r)?(e.setAttribute(t,String(r)),t==="autofocus"&&document.body.getAttribute("data-mode")!=="design"&&setTimeout(()=>e.focus(),100)):e.removeAttribute(t)}}function fn({node:e,dataSignal:t,id:r,path:o,ctx:n,namespace:a,instance:s}){let l=mn(e,n,r);switch(l){case"svg":{a="http://www.w3.org/2000/svg";break}case"math":{a="http://www.w3.org/1998/Math/MathML";break}}e.attrs.xmlns?.type==="value"&&(a=String(e.attrs.xmlns.value));let i=a?document.createElementNS(a,l):document.createElement(l),u={component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env,reportFormulaEvaluation:n.reportFormulaEvaluation};i.setAttribute("data-node-id",r),o&&i.setAttribute("data-id",o),n.isRootComponent===!1&&r!=="root"&&i.setAttribute("data-component",n.component.name);let g=pn([e.style,e.variants]);i.classList.add(g),s&&r==="root"&&Object.entries(s).forEach(([d,E])=>{i.classList.add(dn(`${d}:${E}`))}),e.classes&&Object.entries(e.classes)?.forEach(([d,{formula:E}])=>{E?t.map(C=>x(v(E,{...u,data:C}))).subscribe(C=>C?i.classList.add(d):i.classList.remove(d)):i.classList.add(d)}),Object.entries(e.attrs).forEach(([d,E])=>{if(!w(E))return;let S,C=()=>{if(E.type==="value")to(i,d,E?.value);else{let D=["nodes",r,"attrs",d];S=t.map(N=>{let F=v(E,{...u,data:N},D);return n.reportFormulaEvaluation?.(D,F),F}),S.subscribe(N=>{to(i,d,N)})}};d==="autofocus"&&n.env.runtime==="preview"&&n.toddle._preview?n.toddle._preview.showSignal.subscribe(({testMode:D})=>{D?C():(S?.destroy(),i.removeAttribute(d))}):C()}),e["style-variables"]?.forEach((d,E)=>{let{name:S,formula:C,unit:D}=d,N=["nodes",r,"style-variables",E,"formula"];t.map(A=>{let T=v(C,{...u,data:A},N);return n.reportFormulaEvaluation?.(N,T),D?T+D:T}).subscribe(A=>i.style.setProperty(`--${S}`,A))}),Object.entries(e.customProperties??{}).filter(([d,{formula:E}])=>ie(E)).forEach(([d,{formula:E,unit:S}])=>{let C=["nodes",r,"customProperties",d,"formula"];le({customPropertyName:d,selector:n.env.runtime==="custom-element"&&n.isRootComponent&&o==="0"?`${ee(o)}, :host`:ee(o),signal:t.map(D=>{let N=v(E,{...u,data:D},C);return n.reportFormulaEvaluation?.(C,N),se(N,S)}),root:n.root})}),e.variants?.forEach((d,E)=>{Object.entries(d.customProperties??{}).filter(([S,{formula:C}])=>ie(C)).forEach(([S,{formula:C,unit:D}])=>{let N=["nodes",r,"variants",E,"customProperties",S,"formula"];le({customPropertyName:S,selector:ee(o,{variant:d}),variant:d,signal:t.map(F=>{let A=v(C,{...u,data:F},N);return n.reportFormulaEvaluation?.(N,A),se(A,D)}),root:n.root})})});let p=[];Object.values(e.events).forEach(d=>{d&&p.push([d.trigger,vu({event:d,dataSignal:t,ctx:n})])}),p.forEach(([d,E])=>{i.addEventListener(d,E,{signal:n.abortSignal})});let h=e.tag.toLocaleLowerCase();if(h==="script"||h==="style"){let d=[];e.children.map(E=>n.component.nodes?.[E]).filter(E=>E?.type==="text").forEach(E=>{if(E.value.type==="value")d.push(String(E.value.value));else{let S=t.map(C=>String(v(E.value,{...u,data:C})));d.push(S)}}),d.every(E=>typeof E=="string")&&(i.textContent=d.join("")),d.filter(E=>typeof E!="string").forEach(E=>{E.subscribe(()=>{i.textContent=d.map(S=>typeof S=="string"?S:S.get()).join("")})})}else{let d=[];e.children.forEach((E,S)=>{d.push(...te({parentElement:i,id:E,path:o+"."+S,dataSignal:t,ctx:{...n,jsonPath:["nodes",E]},namespace:a,instance:s}))}),i.append(...d)}return t.subscribe(()=>{},{destroy:()=>{i.parentNode?.removeChild(i)}}),i}var vu=({event:e,dataSignal:t,ctx:r})=>o=>(e?.actions?.forEach(n=>{if(o instanceof DragEvent&&(o.data=cn(o)),o instanceof ClipboardEvent)try{o.data=Array.from(o.clipboardData?.items??[]).reduce((a,s)=>{try{a[s.type]=JSON.parse(o.clipboardData?.getData(s.type))}catch{a[s.type]=o.clipboardData?.getData(s.type)}return a},{})}catch(a){console.error("Could not get paste data",a)}M(n,{...t.get(),Event:o},r,o)}),!1);function gn({path:e,node:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let l=t.name??"default",i=[];if(o.children[l]?i=o.children[l].flatMap(u=>{let g=u.dataSignal.map(h=>h);r.subscribe(h=>h,{destroy:()=>g.destroy()});let p=Eu(l,t,o.component.nodes);return te({...u,dataSignal:g,parentElement:n,ctx:{...u.ctx,providers:o.providers,jsonPath:["nodes",u.id]},instance:a,namespace:s,path:p>0?`${u.path}(${p})`:u.path})}):i=t.children.flatMap((u,g)=>te({id:u,path:e+"."+g,dataSignal:r,ctx:{...o,jsonPath:["nodes",u]},parentElement:n,instance:a,namespace:s})),o.env.runtime==="custom-element"&&o.isRootComponent){let u=document.createElement("slot");return u.setAttribute("name",l),i.forEach(g=>{u.appendChild(g)}),[u]}return i}function Eu(e,t,r){let o=0;if(r)for(let n in r){let a=r[n];if(a.type==="slot"&&a.name===e){if(a===t)break;o++}}return o}function hn({node:e,id:t,path:r,dataSignal:o,namespace:n,ctx:a}){if(n&&n!=="http://www.w3.org/1999/xhtml")return Au({node:e,dataSignal:o,ctx:a});let{value:s}=e,l=document.createElement("span");return l.setAttribute("data-node-id",t),typeof t=="string"&&l.setAttribute("data-id",r),a.isRootComponent===!1&&l.setAttribute("data-component",a.component.name),l.setAttribute("data-node-type","text"),s.type!=="value"?o.map(u=>String(v(s,{data:u,component:a.component,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:a.toddle,env:a.env,jsonPath:a.jsonPath,reportFormulaEvaluation:a.reportFormulaEvaluation},["value"]))).subscribe(u=>{l.innerText=u}):(a.reportFormulaEvaluation?.([...a.jsonPath??[],"value"],s.value),l.innerText=String(s.value)),l}function Au({node:e,dataSignal:t,ctx:r}){let{value:o}=e,n=document.createTextNode("");return o.type!=="value"?t.map(s=>String(v(o,{data:s,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["value"]))).subscribe(s=>{n.nodeValue=s}):n.nodeValue=String(o.value),n}function te({id:e,dataSignal:t,path:r,ctx:o,namespace:n,parentElement:a,instance:s}){let l=o.component.nodes?.[e];if(!l)return[];let i=({node:p,...h})=>{switch(p.type){case"element":return[fn({node:p,...h})];case"component":{let d=De(p.name,o.components,o.env.runtime!=="preview")!==void 0;return an({node:{...p,id:e},...h,ctx:{...o,package:p.package??(d?void 0:o.package)},parentElement:a})}case"text":return[hn({...h,node:p})];case"slot":return gn({...h,node:p})}};function u({node:p,dataSignal:h,id:d,path:E,ctx:S,namespace:C,parentElement:D,instance:N}){let F=!0,A=null,T=h.map(b=>{let f=["nodes",d,"condition"],y=x(v(p.condition,{data:b,component:S.component,formulaCache:S.formulaCache,root:S.root,package:S.package,toddle:S.toddle,env:S.env,jsonPath:S.jsonPath,reportFormulaEvaluation:S.reportFormulaEvaluation},f));return S.reportFormulaEvaluation?.(f,y),y}),O=[],c=b=>{if(b&&O.length===0){if(A?.destroy(),A=h.map(y=>y),O.push(...i({node:p,dataSignal:A,path:E,id:d,ctx:S,namespace:C,parentElement:D,instance:N})),F)return;if(!D||S.root.contains(D)===!1){console.error(`Conditional: Parent element does not exist for "${E}" This is likely due to the DOM being modified outside of Nordcraft.`);return}if(D.querySelector(`[data-id="${E}"]`)){console.warn(`Conditional: Element with data-id="${E}" already exists. This is likely due to the DOM being modified outside of Nordcraft`);return}let f=Xr(E,D);for(let y of O)D.insertBefore(y,f)}else b||(A?.destroy(),O.forEach(f=>f.remove()),O.splice(0,O.length))};return T.subscribe(c,{destroy:()=>{A?.destroy()}}),S.env.runtime==="preview"&&S.toddle._preview&&S.toddle._preview.showSignal.subscribe(({displayedNodes:b,testMode:f})=>{b.includes(E)&&!f?c(!0):c(T.get())}),F=!1,O}function g(){let p=!0,h=0,d=new Map;return t.map(S=>{let C=["nodes",e,"repeat"],D=v(l?.repeat,{data:S,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env},C);return o.reportFormulaEvaluation?.(C,D),typeof D!="object"?[]:Object.entries(D??{})}).subscribe(S=>{let C=t.get(),D=C.ListItem,N=D?{Parent:D}:{},F=new Set,A=S.map(([O,c],b)=>{let f={...C,ListItem:{...N,Item:c,Index:Number(b),Key:O}},y=["nodes",e,"repeatKey"],j=l?.repeatKey?v(l.repeatKey,{data:f,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):O;return l?.repeatKey&&o.reportFormulaEvaluation?.(y,j),F.has(j)&&(console.warn(`Duplicate key "${j}" found in repeat. Fallback to index as key. This will cause a re-render of the duplicated children on every change.`),j=O),F.add(j),{Key:O,Item:c,i:b,childData:f,childKey:j}});d.forEach((O,c)=>{F.has(c)||(O.cleanup(),O.dataSignal.destroy(),O.elements.forEach(b=>b.remove()))});let T=new Map;for(let{Key:O,Item:c,i:b,childData:f,childKey:y}of A){let j=d.get(y);if(j)T.set(y,j),j.dataSignal.update(R=>({...R,ListItem:{...N,Item:c,Index:Number(b),Key:O}}));else{let R=U(f),P=t.subscribe($=>{p||R.update(({ListItem:I})=>({...$,ListItem:I}))},{destroy:()=>R.destroy()}),_={node:l,id:e,dataSignal:R,path:O==="0"?r:`${r}(${++h})`,ctx:o,namespace:n,parentElement:a,instance:s},L=l.condition?u(_):i(_);T.set(y,{dataSignal:R,cleanup:P,elements:L})}}if(d=T,!(p||d.size===0)){if(!a||o.root.contains(a)===!1){console.error(`Repeat: Parent element does not exist for ${r}. This is likely due to the DOM being modified outside of Nordcraft.`);return}Xo(a,Array.from(d.values()).flatMap(O=>O.elements),Xr(r,a))}},{destroy:()=>Array.from(d.values()).forEach(S=>{S.cleanup(),S.dataSignal.destroy(),S.elements.forEach(C=>C.remove())})}),p=!1,Array.from(d.values()).flatMap(S=>S.elements)}return l.repeat?g():l.condition?u({node:l,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s}):i({node:l,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s})}var Su=new je;function Ne({component:e,dataSignal:t,onEvent:r,isRootComponent:o,path:n,children:a,formulaCache:s,components:l,apis:i,abortSignal:u,root:g,providers:p,package:h,stores:d,parentElement:E,instance:S,toddle:C,namespace:D,env:N,jsonPath:F,reportFormulaEvaluation:A}){let T=ne(`Render component: ${e.name}`,{component:e.name,path:n}),O={triggerEvent:r,component:e,components:l,dataSignal:t,isRootComponent:o,apis:i,formulaCache:s,children:a,abortSignal:u,root:g,providers:p,stores:d,package:h,toddle:C,env:N,jsonPath:F,reportFormulaEvaluation:A},c=te({id:"root",path:n,dataSignal:t,ctx:{...O,jsonPath:["nodes","root"]},parentElement:E,namespace:D,instance:S});return Su.add(()=>{let b;e.onAttributeChange?.actions&&e.onAttributeChange.actions.length>0&&t.map(f=>f.Attributes).subscribe(f=>{b&&e.onAttributeChange?.actions?.forEach(y=>{M(y,t.get(),O,new CustomEvent("attribute-change",{detail:Object.entries(f).reduce((j,[R,P])=>((0,yn.default)(P,b[R])===!1&&e.attributes?.[R]?.name&&(j[e.attributes?.[R]?.name]={current:b[R],new:P}),j),{})}))}),b=f}),e.onLoad?.actions?.forEach(f=>{M(f,t.get(),O)})}),T(),c}var bn=(e,t,r)=>{let n=e.route?.info?.theme?.formula;if(n&&n.type!=="value")return t.map(()=>v(n,{data:t.get(),component:e,root:document,package:void 0,toddle:window.toddle,env:r}));if(w(n))return U(n.value);{let s=document.cookie.split("; ").find(i=>i.startsWith(`${ae}=`))?.split("=")[1]??null,l=U(s);return"cookieStore"in window&&cookieStore.addEventListener("change",i=>{for(let u of i.changed)u.name===ae&&l.set(u.value??null);for(let u of i.deleted)u.name===ae&&l.set(null)}),l}};rn();var re,Nm=e=>{let t=window.__toddle.component,{params:r,hash:o,query:n}=En(t);re={isServer:!1,branchName:window.__toddle.branch,request:void 0,runtime:"page",logErrors:!0},window.toddle=(()=>{let a={},s={},l={},i={isEqual:vn.default,errors:[],project:window.__toddle.project,branch:window.__toddle.branch,commit:window.__toddle.commit,components:window.__toddle.components,formulas:e?.formulas??{},actions:e?.actions??{},registerAction:(u,g)=>{if(a[u]){console.error("There already exists an action with the name ",u);return}a[u]=g},getAction:u=>a[u],registerFormula:(u,g,p)=>{if(s[u]){console.error("There already exists a formula with the name ",u);return}s[u]=g,p&&(l[u]=p)},getFormula:u=>s[u],getCustomAction:(u,g)=>i.actions[g??window.__toddle.project]?.[u]??i.actions[window.__toddle.project]?.[u],getCustomFormula:(u,g)=>i.formulas[g??window.__toddle.project]?.[u]??i.formulas[window.__toddle.project]?.[u],getArgumentInputData:(u,g,p,h)=>l[u]?.(g,p,h)||h,data:{},locationSignal:U({route:t.route,page:t.page,path:window.location.pathname,params:r,query:n,hash:o}),eventLog:[],pageState:window.__toddle.pageState,env:re};return i})(),Object.entries(Qr).forEach(([a,s])=>window.toddle.registerFormula("@toddle/"+a,s.default,"getArgumentInputData"in s?s.getArgumentInputData:void 0)),Object.entries(rt).forEach(([a,s])=>window.toddle.registerAction("@toddle/"+a,s.default))},km=e=>{let t=window.__toddle.component;if(!e)throw new Error("Cant find root domNode");if(!window.toddle.components)throw new Error("Missing components");window.addEventListener("popstate",()=>{if(!t)return;let{params:i,hash:u,query:g}=En(t);window.toddle.locationSignal.update(()=>({route:t?.route,page:t.page,path:window.location.pathname,params:i,query:g,hash:u}))});let r=window.toddle.locationSignal.map(({query:i,params:u})=>({...i,...u})),o=U({...window.toddle.pageState,Variables:q(t.variables??{},([i,u])=>[i,v(u.initialValue,{data:window.toddle.pageState,component:t,formulaCache:{},root:document,package:void 0,toddle:window.toddle,env:re,jsonPath:[]},["variables",i])])});Te(t,o),r.subscribe(i=>o.update(u=>({...u,"URL parameters":i,Attributes:i})));let n=new AbortController;o.subscribe(()=>{},{destroy:()=>n.abort(`Component ${t.name} unmounted`)});let a={component:t,components:window.toddle.components,root:document,isRootComponent:!0,dataSignal:o,abortSignal:n.signal,children:{},formulaCache:{},providers:{},stores:{theme:bn(t,o,re)},apis:{},toddle:window.toddle,triggerEvent:(i,u)=>console.info("EVENT FIRED",i,u),package:void 0,env:re,jsonPath:[]};Ce(Object.entries(t.apis??{}).filter(i=>w(i[1]))).forEach(([i,u])=>{Ae(u)?a.apis[i]=we(u,{...a,jsonPath:["apis",i]}):a.apis[i]=Re({apiRequest:u,ctx:{...a,jsonPath:["apis",i]},componentData:o.get()})}),Object.values(a.apis).filter(X).forEach(i=>{i.triggerActions(o.get())});let s=a.providers;if(Oe(t)){let i=Object.fromEntries(Object.entries(t.formulas??{}).filter(([,u])=>u.exposeInContext).map(([u,g])=>[u,o.map(p=>v(g.formula,{data:p,component:t,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:window.toddle,env:re}))]));s={...s,[t.name]:{component:t,formulaDataSignals:i,ctx:a}}}a.stores.theme.subscribe(i=>{o.update(u=>({...u,Page:{...u.Page??{},Theme:i}})),w(i)?document.documentElement.setAttribute(Me,i):document.documentElement.removeAttribute(Me)}),Fu(t,o);let l=Ne({...a,providers:s,path:"0",package:void 0,onEvent:a.triggerEvent,parentElement:e,instance:{}});e.innerText="",l.forEach(i=>{e.appendChild(i)}),window.__toddle.isPageLoaded=!0};function En(e){let t=window.location.pathname.split("/").slice(1),r={};e.route?e.route.path.forEach((s,l)=>{s.type==="param"?w(t[l])&&t[l]!==""?r[s.name]=decodeURIComponent(t[l]):r[s.name]=null:r[s.name]=s.name}):r=(Wo(e.page??"",{decode:decodeURIComponent})(window.location.pathname)||{params:{}}).params;let[o]=window.location.hash.split("?"),n=Cu(window.location.search),a=Object.keys(e.route?.query??{}).reduce((s,l)=>({...s,[l]:null}),{});return{params:r,hash:o?.slice(1),query:{...a,...n}}}var Cu=e=>Object.fromEntries(e.replace("?","").split("&").filter(t=>t!=="").map(t=>t.split("=").map(decodeURIComponent))),Fu=(e,t)=>{let r=p=>({data:p,component:e,root:document,package:void 0,toddle:window.toddle,env:re}),o=e.route?.info?.language?.formula;o&&o.type!=="value"&&t.map(p=>e?v(o,r(p),["route","info","language"]):null).subscribe(p=>{w(p)&&document.documentElement.lang!==p&&document.documentElement.setAttribute("lang",p)});let a=e.route?.info?.title?.formula;a&&a.type!=="value"&&t.map(p=>e?v(a,r(p),["route","info","title"]):null).subscribe(p=>{w(p)&&document.title!==p&&(document.title=p)});let l=e.route?.info?.description?.formula,i=e.route?.info?.meta,u=l&&l.type!=="value",g=Zo(i);if(u||Object.keys(g).length>0){let p=d=>[...document.getElementsByTagName("meta")].find(E=>E.name===d||E.getAttribute("property")===d)??null,h=(d,E)=>{let S=null;if(w(E))S=document.querySelector(`[data-toddle-id="${E}"]`);else{let C=Object.entries(d.attrs??{}).find(([D])=>["property","name"].includes(D.toLowerCase()))?.[1];w(C)&&(S=p(C))}S||(S=document.createElement(d.tag),w(E)&&S.setAttribute("data-toddle-id",E),document.getElementsByTagName("head")[0].appendChild(S)),Object.entries(d.attrs??{}).forEach(([C,D])=>{e&&S.setAttribute(C,D)}),typeof d.content=="string"&&!Po.includes(d.tag.toLowerCase())&&(S.textContent=d.content)};if(u&&t.map(d=>e?v(l,r(d),["route","info","description"]):null).subscribe(d=>{if(w(d)){let E=document.getElementsByTagName("meta").namedItem("description");E||(E=document.createElement("meta"),E.name="description"),E.content=d,document.getElementsByTagName("head")[0].appendChild(E),i&&!Object.values(i).some(S=>Object.entries(S.attrs??{}).some(([C,D])=>C.toLowerCase()==="property"&&D.type==="value"&&typeof D.value=="string"&&D.value.toLowerCase()==="og:description"))&&h({tag:"meta",attrs:{property:"og:description",content:d},content:void 0})}}),Object.keys(g).length>0)for(let d in g){let E=g[d];E&&t.map(S=>{let C=r(S);return{attrs:Object.entries(E.attrs??{}).reduce((N,[F,A])=>e?{...N,[F]:v(A,C,["route","info","meta",d,"attrs",F])}:N,{}),content:E.content?v(E.content,C):void 0}}).subscribe(({attrs:S,content:C})=>h({tag:E.tag,attrs:S,content:C},d))}}};export{km as createRoot,Nm as initGlobalObject};
|
|
7
|
+
`],componentData:y,workflowCallback:R})}async function N({api:c,res:v,performance:f,streamType:y,useTextDecoder:R,parseChunk:j,parseChunksForData:T,delimiters:_,componentData:L,workflowCallback:$}){let I={chunks:[],currentChunk:"",add(G){let W=j(G);this.chunks.push(W),W&&(r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!0,data:T(this.chunks),error:null,response:{headers:Z(v.headers)}}}}),(c.client?.onMessage?.actions??[]).length>0&&i({eventName:"message",api:c,data:{body:W},componentData:L,workflowCallback:$}))},processChunk(G){let W=_?.find(ke=>G.includes(ke)),oo=this.currentChunk+G,no=W?oo.split(W):[oo];this.currentChunk=no.pop()??"",no.forEach(ke=>this.add(ke))}},oe=R?v.body?.pipeThrough(new TextDecoderStream).getReader():v.body?.getReader();for(;oe;){let{done:G,value:W}=await oe.read();if(G)break;_?I.processChunk(W):I.add(W)}I.currentChunk&&I.add(I.currentChunk);let me={isLoading:!1,data:I.chunks,error:null,response:{status:v.status,headers:Z(v.headers)}};try{if(y==="json"){let G=JSON.parse(I.chunks.join(""));me.data=G}else y==="text"&&(me.data=I.chunks.join(""))}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:I.chunks.join("")})}return w({api:c,apiStatus:me,componentData:L,performance:f,workflowCallback:$})}function w({api:c,apiStatus:v,componentData:f,performance:y,workflowCallback:R}){y.responseEnd=Date.now();let j={body:v.data,status:v.response?.status,headers:v.response?.headers??void 0};Po({apiName:c.name,response:{body:j.body,ok:!!(!v.error&&v.response?.status&&v.response.status<400),status:j.status,headers:j.headers},formulaContext:s(c,f),errorFormula:c.isError,performance:y})?(!j.body&&v.error&&(j.body=v.error),g({api:c,componentData:f,data:j,performance:y}),i({eventName:"failed",api:c,componentData:f,data:j,workflowCallback:R})):(u({api:c,componentData:f,data:j,performance:y}),i({eventName:"success",api:c,componentData:f,data:j,workflowCallback:R}))}function A(c){return Ao(c,[["client","onCompleted"],["client","onFailed"],["client","onMessage"],["service"],["server","ssr"]])}let P,O=new we;return P=r.dataSignal.map(c=>{let v=s(n,c),f=a(n,c);if(r.reportFormulaEvaluation){let y=c.Apis?.[n.name];y&&r.reportFormulaEvaluation(["apis",n.name],y,r)}return{request:f,api:A(n),headers:Array.from(f.requestSettings.headers.entries()),autoFetch:n.autoFetch?E(n.autoFetch,v,["autoFetch"]):!1,proxy:E(n.server?.proxy?.enabled.formula,v,["proxy"])}}),P.subscribe(async c=>{let{url:v,requestSettings:f}=c.request,y=F(n.autoFetch)&&(n.autoFetch.type!=="value"||n.autoFetch.value===!0)&&(window?.__toddle?.isPageLoaded??!1)===!1?r.toddle.pageState.Apis?.[Oo(v,f)]:void 0;y?y.error?g({api:n,data:{body:y.error,status:y.response?.status,headers:y.response?.headers??void 0},performance:{requestStart:y.response?.performance?.requestStart??null,responseStart:y.response?.performance?.responseStart??null,responseEnd:y.response?.performance?.responseEnd??null},componentData:t}):u({api:n,data:{body:y.data,status:y.response?.status,headers:y.response?.headers??void 0},performance:{requestStart:y.response?.performance?.requestStart??null,responseStart:y.response?.performance?.responseStart??null,responseEnd:y.response?.performance?.responseEnd??null},componentData:t}):E(n.autoFetch,s(n,t),["autoFetch"])?await p({api:n,url:v,requestSettings:f,componentData:t}):r.dataSignal.get().Apis?.[n.name]||r.dataSignal.update(R=>({...R,Apis:{...R.Apis??{},[n.name]:{isLoading:!1,data:null,error:null}}}))}),{fetch:({actionInputs:c,actionModels:v,componentData:f,workflowCallback:y})=>{let R=Object.entries(c??{}).reduce((L,[$,I])=>(I!==null&&typeof I=="object"&&"formula"in I?L[$]=I:L[$]={formula:{type:"value",value:I}},L),{}),j={...n,inputs:{...n.inputs,...R},client:{...n.client,parserMode:n.client?.parserMode??"auto",onCompleted:{trigger:n.client?.onCompleted?.trigger??"success",actions:[...n.client?.onCompleted?.actions??[],...v?.onCompleted??[]]},onFailed:{trigger:n.client?.onFailed?.trigger??"failed",actions:[...n.client?.onFailed?.actions??[],...v?.onFailed??[]]},onMessage:{trigger:n.client?.onMessage?.trigger??"message",actions:[...n.client?.onMessage?.actions??[],...v?.onMessage??[]]}}},{url:T,requestSettings:_}=a(j,f);return p({api:j,url:T,requestSettings:_,componentData:f,workflowCallback:y})},cancel:O.abort,update:(c,v)=>{n=c;let f=s(n,v),y=n.autoFetch&&E(n.autoFetch,f,["autoFetch"]);if(y){let R=a(c,v);P?.set({request:R,api:A(c),autoFetch:y,proxy:E(c.server?.proxy?.enabled.formula,f,["proxy"]),headers:Array.from(R.requestSettings.headers.entries())})}},triggerActions:c=>{let v=r.dataSignal.get().Apis?.[n.name];!F(v)||v.data===null&&v.error===null||(v.error?i({eventName:"failed",api:n,data:{body:v.error,status:v.response?.status},componentData:c}):i({eventName:"success",api:n,data:{body:v.data},componentData:c}))},destroy:()=>P?.destroy()}}var Xo=e=>{if(!e)return{};let t={};for(let r in e){let o=e[r];(F(o.content)&&o.content.type!=="value"||Object.values(o.attrs??{}).some(n=>n.type!=="value"))&&(t[r]=o)}return t};var bn=fe(de(),1);var Re=class{constructor(){}batchQueue=[];isProcessing=!1;processBatch(){this.isProcessing||(this.isProcessing=!0,queueMicrotask(()=>{for(;this.batchQueue.length>0;)this.batchQueue.shift()?.();this.isProcessing=!1}))}add(t){this.batchQueue.push(t),this.processBatch()}};var Xr=fe(de(),1),Zr=class{value;subscribers;subscriptions;destroying=!1;constructor(t){this.value=t,this.subscribers=new Set,this.subscriptions=[]}get(){return this.value}set(t){if(this.subscribers.size===0){this.value=t;return}if((0,Xr.default)(t,this.value)===!1){this.value=t;for(let r of this.subscribers)r.notify(this.value)}}update(t){this.set(t(this.value))}subscribe(t,r){let o={notify:t,destroy:r?.destroy};return this.subscribers.add(o),t(this.value),()=>{this.subscribers.delete(o)}}destroy(){if(!this.destroying){this.destroying=!0;for(let t of this.subscribers)t.destroy?.();this.subscribers.clear();for(let t of this.subscriptions)t();this.subscriptions.splice(0,this.subscriptions.length),this.destroying=!1}}cleanSubscribers(){for(let t of this.subscribers)t.destroy?.();this.subscribers.clear()}map(t){let r=U(t(this.value));return r.subscriptions.push(this.subscribe(o=>r.set(t(o)),{destroy:()=>r.destroy()})),r}};function U(e){return new Zr(e)}typeof window<"u"&&(window.signal=U,window.deepEqual=Xr.default);var hu,De=(e,t,r=!0)=>r?(hu??=new Map(t.map(o=>[o.name,o]))).get(e):t.find(o=>o.name===e);var eo=(e,t)=>{let o=e.split(".").slice(-1)[0],n=parseInt(o),a=parseInt(String(o.split("(")[1]));for(let s of t.children){let i=s.getAttribute("data-id")?.split(".").slice(-1)[0],u=parseInt(String(i));if(u===n&&parseInt(String(i?.split("(")[1]))>a||u>n)return s}return null};function en(e,t,r=null){let o=r,n=o?o.previousSibling:e.lastChild;for(let a=t.length-1;a>=0;a--){let s=t[a];s===n?n=s.previousSibling:e.insertBefore(s,o),o=s}}var se=(e,t)=>F(e)&&F(t)&&!String(e).endsWith(t)?`${e}${t}`:e;var tn=e=>[(e.className??e.class)&&`.${e.className}`,(e.evenChild??e["even-child"]??e["nth-child(even)"])&&":nth-child(even)",(e.firstChild??e["first-child"])&&":first-child",(e.focusWithin??e["focus-within"])&&":focus-within",(e.lastChild??e["last-child"])&&":last-child",e.active&&":active",e.autofill&&":is(:-webkit-autofill, :autofill)",e.checked&&":checked",e.disabled&&":disabled",e.empty&&":empty",e.focus&&":focus",e.hover&&":hover",e.invalid&&":invalid",e.link&&":link",e.visited&&":visited",e["first-of-type"]&&":first-of-type",e["focus-visible"]&&":focus-visible",e["last-of-type"]&&":last-of-type",e["popover-open"]&&":popover-open",e.pseudoElement&&`::${e.pseudoElement}`].filter(Boolean).join("");function ee(e,{componentName:t,nodeId:r,variant:o}={}){let n=`[data-id="${e}"]`;return t&&(n+=`.${t}`),r&&(n+=`\\:${r}`),n=n.replace(/(^|[^\\])\//g,"$1\\/"),o&&(n+=tn(o)),n}var Oe=e=>e.formulas&&Object.values(e.formulas).some(({exposeInContext:t})=>t)||e.workflows&&Object.values(e.workflows).some(({exposeInContext:t})=>t);function rn(e,t,r){Object.entries(t.contexts??{}).forEach(([o,n])=>{let a=r.providers[[r.package,o].filter(F).join("/")];if(a)n.formulas.forEach(s=>{let l=a.formulaDataSignals[s];if(!l){console.warn(`Component error(${t.name}): Provider ${o} does not expose a formula named "${s}". Available formulas are: ["${Object.keys(a.formulaDataSignals).join('", "')}"]`);return}l.subscribe(i=>{e.update(u=>({...u,Contexts:{...u.Contexts,[o]:{...u.Contexts?.[o],[s]:i}}}))})});else if(!a&&r.env.runtime==="preview"&&r.toddle._preview){let s=r.components?.find(u=>u.name===[r.package,o].filter(F).join("/"));if(!s){console.error(`Component error(${t.name}): Could not find provider "${o}". No such component exist.`);return}let[,l]=o.split("/").reverse(),i={data:{Attributes:q(s.attributes??{},([u,g])=>[u,g.testValue])},component:s,root:r?.root,formulaCache:{},package:l??r?.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation};s.route&&(i.data["URL parameters"]={...Object.fromEntries(s.route.path.filter(u=>u.type==="param").map(u=>[u.name,u.testValue])),...q(s.route.query,([u,{testValue:g}])=>[u,g])}),i.data.Variables=q(s.variables??{},([u,g])=>[u,E(g.initialValue,{...i,reportFormulaEvaluation:void 0})]),e.update(u=>({...u,Contexts:{...u.Contexts,[o]:Object.fromEntries(n.formulas.map(g=>{let p=s.formulas?.[g];return p?[g,E(p.formula,{...i,reportFormulaEvaluation:void 0})]:(console.warn(`Component error(${t.name}): Could not find formula "${g}" in provider "${o}"`),[g,null])}))}}))}})}function on(){window.logState=()=>{console.table(Object.entries(window.__components??{}).map(([e,t])=>({name:e,...t.get()})))}}function Pe(e,t){window.__components||(window.__components={}),window.__components[e.name]=t}function nn(e){return F(e.formulas)?q(e.formulas,([t,r])=>{let{canCache:o,keys:n}=r.memoize?yu(r.formula,e):{canCache:!1,keys:[]},a,s;return[t,{get:l=>o&&a&&n.every(i=>ye(l,i)===ye(a,i))?{hit:!0,data:s}:{hit:!1},set:(l,i)=>{o&&(a=l,s=i)}}]}):{}}function yu(e,t){let r=[];function o(a){if(a&&(a.type==="path"&&a.path[0]!=="Args"&&r.push(a.path),Array.isArray(a?.arguments)&&a?.arguments?.forEach(s=>o(s.formula)),a.type==="record"&&Array.isArray(a.entries)&&a.entries.forEach(s=>o(s.formula)),a.type==="apply")){if(!t.formulas?.[a.name]?.memoize)throw new Error("Cannot memoize");o(t.formulas?.[a.name]?.formula)}}try{o(e)}catch{return{canCache:!1,keys:[]}}let n=[];return r.sort((a,s)=>a.length-s.length).forEach(a=>{n.some(s=>s.every((l,i)=>l===a[i]))||n.push(a)}),{canCache:!0,keys:n}}var ie=e=>F(e)&&!(e.type==="value"&&!F(e.value));var Te=class e{styleSheet;ruleMap;constructor(t,r){r?this.styleSheet=r:(this.styleSheet=new CSSStyleSheet,t.adoptedStyleSheets.push(this.getStyleSheet()))}registerProperty(t,r,o){this.ruleMap??=this.hydrateFromBase();let n=e.getFullSelector(e.escapeSelector(t),o),a=this.ruleMap.get(n);if(!a){let s=this.styleSheet.insertRule(n,this.styleSheet.cssRules.length),l=this.styleSheet.cssRules[s];for(;l.cssRules&&l.cssRules.length>0;)l=l.cssRules[0];a=l,this.ruleMap.set(n,a)}return s=>{a.style.setProperty(r,s)}}unregisterProperty(t,r,o){if(!this.ruleMap)return;let n=e.getFullSelector(e.escapeSelector(t),o),a=this.ruleMap.get(n);a&&(a.style.removeProperty(r),a.style.length===0&&(this.styleSheet.deleteRule(Array.from(this.ruleMap.keys()).indexOf(n)),this.ruleMap.delete(n)))}getStyleSheet(){return this.styleSheet}hydrateFromBase(){let t=new Map;for(let r=0;r<this.styleSheet.cssRules.length;r++){let o=this.styleSheet.cssRules[r],n=e.selectorFromCSSRule(o);for(;o.cssRules&&o.cssRules.length>0;)o=o.cssRules[0];t.set(n,o)}return t}static selectorFromCSSRule(t){switch(t.constructor.name){case"CSSStyleRule":return`${t.selectorText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSStartingStyleRule":return`@starting-style { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSMediaRule":return`@media ${t.media.mediaText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSNestedDeclarations":return"";default:return console.warn(`Unsupported CSS rule type: ${t.constructor.name}. Returning empty selector.`),""}}static getFullSelector(t,r){let o=t+(r?.startingStyle?" { @starting-style { }}":" { }");return r?.mediaQuery&&(o=`@media (${Object.entries(r.mediaQuery).map(([n,a])=>`${n}: ${a}`).filter(Boolean).join(") and (")}) { ${o}}`),o}static escapeSelector(t){return t.replace(/(^|[^\\])\//g,"$1\\/")}};var an=new WeakMap;function le({selector:e,customPropertyName:t,signal:r,variant:o,root:n}){let a=an.get(n);a||(a=new Te(n,n.getElementById(To)?.sheet),an.set(n,a)),r.subscribe(a.registerProperty(e,t,o),{destroy:()=>{a?.unregisterProperty(e,t,{mediaQuery:o?.mediaQuery,startingStyle:o?.startingStyle})}})}function sn({node:e,path:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let l=[o.package,e.name].filter(F).join("/"),i=De(l,o.components,o.env.runtime!=="preview");if(!i)return console.warn(`Could not find component "${l}" for component "${o.component.name}". Available components are: ["${o.components.map(w=>w.name).join('", "')}"]`),[];let u={component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env,reportFormulaEvaluation:o.reportFormulaEvaluation},g=r.map(w=>q(e.attrs,([A,P])=>[A,P?.type!=="value"?E(P,{...u,data:w},["attrs",A]):P?.value])),p=U({Location:r.get().Location,Attributes:g.get(),Apis:q(So(i.apis??{},([w,A])=>F(A)),([w,A])=>[w,{data:null,isLoading:!!(A.autoFetch&&E(A.autoFetch,{...u,component:i,data:r.get()},["apis",w,"autoFetch"])),error:null}])});o.stores.theme.subscribe(w=>{p.update(A=>({...A,Page:{...A.Page,Theme:w}}))}),rn(p,i,o),p.update(w=>({...w,Variables:q(i.variables??{},([A,P])=>[A,E(P.initialValue,{...u,component:i,data:p.get()},["variables",A])])})),Pe(i,p);let h=new AbortController;p.subscribe(w=>{Object.entries(w.Variables??{}).forEach(([A,P])=>{o.reportFormulaEvaluation?.(["variables",A],P,o)})},{destroy:()=>h.abort(`Component ${i.name} unmounted`)});let d=nn(i),b={};Ce(Object.entries(i.apis??{}).filter(w=>F(w[1]))).forEach(([w,A])=>{Ae(A)?b[w]=Fe(A,{...o,apis:b,component:i,dataSignal:p,abortSignal:h.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(P,O)=>{let c=Object.values(e.events).find(v=>v.trigger===P);c&&c.actions?.forEach(v=>M(v,{...r.get(),Event:O},o))}}):b[w]=je({apiRequest:A,ctx:{...o,apis:b,component:i,dataSignal:p,abortSignal:h.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(P,O)=>{let c=Object.values(e.events).find(v=>v.trigger===P);c&&c.actions?.forEach(v=>M(v,{...r.get(),Event:O},o))}},componentData:p.get()})}),Object.values(b).filter(X).forEach(w=>{w.triggerActions(p.get())});let S=(w,A)=>{let P=Object.values(e.events).find(O=>O.trigger===w);P&&P.actions?.forEach(O=>M(O,{...r.get(),Event:A},o))},C=o.providers;if(Oe(i)){let w=Object.fromEntries(Object.entries(i.formulas??{}).filter(([,A])=>A.exposeInContext).map(([A,P])=>[A,p.map(O=>E(P.formula,{data:O,component:i,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env,jsonPath:o.jsonPath,reportFormulaEvaluation:o.reportFormulaEvaluation},["formulas",A]))]));C={...C,[i.name]:{component:i,formulaDataSignals:w,ctx:{...o,apis:b,component:i,dataSignal:p,abortSignal:h.signal,triggerEvent:S}}}}let D={};for(let w=0;w<e.children.length;w++){let A=e.children[w],O=o.component.nodes?.[A]?.slot??"default";D[O]=D[O]??[],D[O].push({id:A,path:`${t}.${w}[${O}]`,dataSignal:r,ctx:{...o,package:e.package??o.package}})}g.subscribe(w=>p.update(A=>({...A,Attributes:w})),{destroy:()=>p.destroy()});let N=Ne({dataSignal:p,component:i,components:o.components,path:t,root:o.root,isRootComponent:!1,children:D,formulaCache:d,providers:C,stores:o.stores,apis:b,abortSignal:h.signal,package:e.package??o.package,parentElement:n,onEvent:S,toddle:o.toddle,env:o.env,namespace:s,instance:e.id==="root"?{...a,[o.component.name]:"root"}:{[o.component.name]:e.id??""},jsonPath:o.jsonPath,reportFormulaEvaluation:o.reportFormulaEvaluation});return Object.entries(e.customProperties??{}).filter(([w,{formula:A}])=>ie(A)).forEach(([w,A])=>le({selector:ee(t,{componentName:o.component.name,nodeId:e.id}),signal:r.map(P=>se(E(A.formula,{...u,data:P},["customProperties",w,"formula"]),A.unit)),customPropertyName:w,root:o.root})),e.variants?.forEach(w=>{Object.entries(w.customProperties??{}).filter(([A,{formula:P}])=>ie(P)).forEach(([A,P])=>le({selector:ee(t,{componentName:o.component.name,nodeId:e.id,variant:w}),signal:r.map(O=>se(E(P.formula,{...u,data:O},["customProperties",A,"formula"]),P.unit)),customPropertyName:A,variant:w,root:o.root}))}),N}var bu=(e,t)=>{let r=t.length;for(;r;)e=e*33^t.charCodeAt(--r);return e},un=e=>bu(5381,e),vu=/(a)(d)/gi;var ln=e=>String.fromCharCode(e+(e>25?39:97));function pn(e){let t="",r;for(r=Math.abs(e);r>52;r=r/52|0)t=ln(r%52)+t;return(ln(r%52)+t).replace(vu,"$1-$2")}var to=new Map,dn=e=>{let t=JSON.stringify(e);if(to.has(t))return to.get(t);let r=pn(un(t));return to.set(t,r),r},cn=(e,t=!1)=>{let r=e.trim().replace(/\s+/g,"-");return t&&(r=r.replace(/[^a-zA-Z0-9-_]/g,o=>`\\${o}`)),/^[^a-zA-Z]/.test(r)&&(r=`_${r}`),r};function mn(e){if(e instanceof DragEvent)return Array.from(e.dataTransfer?.items??[]).reduce((t,r)=>(t[r.type]=e.dataTransfer?.getData(r.type),t),{})}function fn(e,t,r){return t.component.version===2&&r==="root"?`${t.package??t.toddle.project}-${e.tag}`:e.tag}function ro(e,t,r){switch(t){case"srcObject":case"src":e instanceof HTMLMediaElement?e[t]=r:e.setAttribute(t,String(r));break;case"value":case"type":{if(e instanceof SVGElement)x(r)&&e.setAttribute(t,String(r));else{let o=r;e instanceof HTMLProgressElement&&(!F(r)||!Number.isFinite(Number(r)))&&(o=0),e[t]=x(o)?String(o):void 0}break}case"muted":case"autoplay":e instanceof HTMLMediaElement?e[t]=x(r):e.setAttribute(t,String(r));break;default:x(r)?(e.setAttribute(t,String(r)),t==="autofocus"&&document.body.getAttribute("data-mode")!=="design"&&setTimeout(()=>e.focus(),100)):e.removeAttribute(t)}}function gn({node:e,dataSignal:t,id:r,path:o,ctx:n,namespace:a,instance:s}){let l=fn(e,n,r);switch(l){case"svg":{a="http://www.w3.org/2000/svg";break}case"math":{a="http://www.w3.org/1998/Math/MathML";break}}e.attrs.xmlns?.type==="value"&&(a=String(e.attrs.xmlns.value));let i=a?document.createElementNS(a,l):document.createElement(l),u={component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env,reportFormulaEvaluation:n.reportFormulaEvaluation};i.setAttribute("data-node-id",r),o&&i.setAttribute("data-id",o),n.isRootComponent===!1&&r!=="root"&&i.setAttribute("data-component",n.component.name);let g=dn([e.style,e.variants]);i.classList.add(g),s&&r==="root"&&Object.entries(s).forEach(([d,b])=>{i.classList.add(cn(`${d}:${b}`))}),e.classes&&Object.entries(e.classes)?.forEach(([d,{formula:b}])=>{b?t.map(C=>x(E(b,{...u,data:C}))).subscribe(C=>C?i.classList.add(d):i.classList.remove(d)):i.classList.add(d)}),Object.entries(e.attrs).forEach(([d,b])=>{if(!F(b))return;let S,C=()=>{if(b.type==="value")ro(i,d,b?.value);else{let D=["nodes",r,"attrs",d];S=t.map(N=>{let w=E(b,{...u,data:N},D);return n.reportFormulaEvaluation?.(D,w,n),w}),S.subscribe(N=>{ro(i,d,N)})}};d==="autofocus"&&n.env.runtime==="preview"&&n.toddle._preview?n.toddle._preview.showSignal.subscribe(({testMode:D})=>{D?C():(S?.destroy(),i.removeAttribute(d))}):C()}),e["style-variables"]?.forEach((d,b)=>{let{name:S,formula:C,unit:D}=d,N=["nodes",r,"style-variables",b,"formula"];t.map(A=>{let P=E(C,{...u,data:A},N);return n.reportFormulaEvaluation?.(N,P,n),D?P+D:P}).subscribe(A=>i.style.setProperty(`--${S}`,A))}),Object.entries(e.customProperties??{}).filter(([d,{formula:b}])=>ie(b)).forEach(([d,{formula:b,unit:S}])=>{let C=["nodes",r,"customProperties",d,"formula"];le({customPropertyName:d,selector:n.env.runtime==="custom-element"&&n.isRootComponent&&o==="0"?`${ee(o)}, :host`:ee(o),signal:t.map(D=>{let N=E(b,{...u,data:D},C);return n.reportFormulaEvaluation?.(C,N,n),se(N,S)}),root:n.root})}),e.variants?.forEach((d,b)=>{Object.entries(d.customProperties??{}).filter(([S,{formula:C}])=>ie(C)).forEach(([S,{formula:C,unit:D}])=>{let N=["nodes",r,"variants",b,"customProperties",S,"formula"];le({customPropertyName:S,selector:ee(o,{variant:d}),variant:d,signal:t.map(w=>{let A=E(C,{...u,data:w},N);return n.reportFormulaEvaluation?.(N,A,n),se(A,D)}),root:n.root})})});let p=[];Object.values(e.events).forEach(d=>{d&&p.push([d.trigger,Eu({event:d,dataSignal:t,ctx:n})])}),p.forEach(([d,b])=>{i.addEventListener(d,b,{signal:n.abortSignal})});let h=e.tag.toLocaleLowerCase();if(h==="script"||h==="style"){let d=[];e.children.map(b=>n.component.nodes?.[b]).filter(b=>b?.type==="text").forEach(b=>{if(b.value.type==="value")d.push(String(b.value.value));else{let S=t.map(C=>String(E(b.value,{...u,data:C})));d.push(S)}}),d.every(b=>typeof b=="string")&&(i.textContent=d.join("")),d.filter(b=>typeof b!="string").forEach(b=>{b.subscribe(()=>{i.textContent=d.map(S=>typeof S=="string"?S:S.get()).join("")})})}else{let d=[];e.children.forEach((b,S)=>{d.push(...te({parentElement:i,id:b,path:o+"."+S,dataSignal:t,ctx:{...n,jsonPath:["nodes",b]},namespace:a,instance:s}))}),i.append(...d)}return t.subscribe(()=>{},{destroy:()=>{i.parentNode?.removeChild(i)}}),i}var Eu=({event:e,dataSignal:t,ctx:r})=>o=>(e?.actions?.forEach(n=>{if(o instanceof DragEvent&&(o.data=mn(o)),o instanceof ClipboardEvent)try{o.data=Array.from(o.clipboardData?.items??[]).reduce((a,s)=>{try{a[s.type]=JSON.parse(o.clipboardData?.getData(s.type))}catch{a[s.type]=o.clipboardData?.getData(s.type)}return a},{})}catch(a){console.error("Could not get paste data",a)}M(n,{...t.get(),Event:o},r,o)}),!1);function hn({path:e,node:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let l=t.name??"default",i=[];if(o.children[l]?i=o.children[l].flatMap(u=>{let g=u.dataSignal.map(h=>h);r.subscribe(h=>h,{destroy:()=>g.destroy()});let p=Au(l,t,o.component.nodes);return te({...u,dataSignal:g,parentElement:n,ctx:{...u.ctx,providers:o.providers,jsonPath:["nodes",u.id]},instance:a,namespace:s,path:p>0?`${u.path}(${p})`:u.path})}):i=t.children.flatMap((u,g)=>te({id:u,path:e+"."+g,dataSignal:r,ctx:{...o,jsonPath:["nodes",u]},parentElement:n,instance:a,namespace:s})),o.env.runtime==="custom-element"&&o.isRootComponent){let u=document.createElement("slot");return u.setAttribute("name",l),i.forEach(g=>{u.appendChild(g)}),[u]}return i}function Au(e,t,r){let o=0;if(r)for(let n in r){let a=r[n];if(a.type==="slot"&&a.name===e){if(a===t)break;o++}}return o}function yn({node:e,id:t,path:r,dataSignal:o,namespace:n,ctx:a}){if(n&&n!=="http://www.w3.org/1999/xhtml")return Su({node:e,dataSignal:o,ctx:a});let{value:s}=e,l=document.createElement("span");return l.setAttribute("data-node-id",t),typeof t=="string"&&l.setAttribute("data-id",r),a.isRootComponent===!1&&l.setAttribute("data-component",a.component.name),l.setAttribute("data-node-type","text"),s.type!=="value"?o.map(u=>String(E(s,{data:u,component:a.component,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:a.toddle,env:a.env,jsonPath:a.jsonPath,reportFormulaEvaluation:a.reportFormulaEvaluation},["value"]))).subscribe(u=>{l.innerText=u}):(a.reportFormulaEvaluation?.([...a.jsonPath??[],"value"],s.value,a),l.innerText=String(s.value)),l}function Su({node:e,dataSignal:t,ctx:r}){let{value:o}=e,n=document.createTextNode("");return o.type!=="value"?t.map(s=>String(E(o,{data:s,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["value"]))).subscribe(s=>{n.nodeValue=s}):n.nodeValue=String(o.value),n}function te({id:e,dataSignal:t,path:r,ctx:o,namespace:n,parentElement:a,instance:s}){let l=o.component.nodes?.[e];if(!l)return[];let i=({node:p,...h})=>{switch(p.type){case"element":return[gn({node:p,...h})];case"component":{let d=De(p.name,o.components,o.env.runtime!=="preview")!==void 0;return sn({node:{...p,id:e},...h,ctx:{...o,package:p.package??(d?void 0:o.package),reportFormulaEvaluation:void 0},parentElement:a})}case"text":return[yn({...h,node:p})];case"slot":return hn({...h,node:p})}};function u({node:p,dataSignal:h,id:d,path:b,ctx:S,namespace:C,parentElement:D,instance:N}){let w=!0,A=null,P=h.map(v=>{let f=["nodes",d,"condition"];return x(E(p.condition,{data:v,component:S.component,formulaCache:S.formulaCache,root:S.root,package:S.package,toddle:S.toddle,env:S.env,jsonPath:S.jsonPath,reportFormulaEvaluation:S.reportFormulaEvaluation},f))}),O=[],c=v=>{if(v&&O.length===0){if(A?.destroy(),A=h.map(y=>y),O.push(...i({node:p,dataSignal:A,path:b,id:d,ctx:S,namespace:C,parentElement:D,instance:N})),w)return;if(!D||S.root.contains(D)===!1){console.error(`Conditional: Parent element does not exist for "${b}" This is likely due to the DOM being modified outside of Nordcraft.`);return}if(D.querySelector(`[data-id="${b}"]`)){console.warn(`Conditional: Element with data-id="${b}" already exists. This is likely due to the DOM being modified outside of Nordcraft`);return}let f=eo(b,D);for(let y of O)D.insertBefore(y,f)}else v||(A?.destroy(),O.forEach(f=>f.remove()),O.splice(0,O.length))};return P.subscribe(c,{destroy:()=>{A?.destroy()}}),S.env.runtime==="preview"&&S.toddle._preview&&S.toddle._preview.showSignal.subscribe(({displayedNodes:v,testMode:f})=>{v.includes(b)&&!f?c(!0):c(P.get())}),w=!1,O}function g(){let p=!0,h=0,d=new Map;return t.map(S=>{let C=["nodes",e,"repeat"],D=E(l?.repeat,{data:S,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env},C);return typeof D!="object"?[]:Object.entries(D??{})}).subscribe(S=>{let C=t.get(),D=C.ListItem,N=D?{Parent:D}:{},w=new Set,A=S.map(([O,c],v)=>{let f={...C,ListItem:{...N,Item:c,Index:Number(v),Key:O}},y=["nodes",e,"repeatKey"],R=l?.repeatKey?E(l.repeatKey,{data:f,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env},y):O;return w.has(R)&&(console.warn(`Duplicate key "${R}" found in repeat. Fallback to index as key. This will cause a re-render of the duplicated children on every change.`),R=O),w.add(R),{Key:O,Item:c,i:v,childData:f,childKey:R}});d.forEach((O,c)=>{w.has(c)||(O.cleanup(),O.dataSignal.destroy(),O.elements.forEach(v=>v.remove()))});let P=new Map;for(let{Key:O,Item:c,i:v,childData:f,childKey:y}of A){let R=d.get(y);if(R)P.set(y,R),R.dataSignal.update(j=>({...j,ListItem:{...N,Item:c,Index:Number(v),Key:O}}));else{let j=U(f),T=t.subscribe($=>{p||j.update(({ListItem:I})=>({...$,ListItem:I}))},{destroy:()=>j.destroy()}),_={node:l,id:e,dataSignal:j,path:O==="0"?r:`${r}(${++h})`,ctx:o,namespace:n,parentElement:a,instance:s},L=l.condition?u(_):i(_);P.set(y,{dataSignal:j,cleanup:T,elements:L})}}if(d=P,!(p||d.size===0)){if(!a||o.root.contains(a)===!1){console.error(`Repeat: Parent element does not exist for ${r}. This is likely due to the DOM being modified outside of Nordcraft.`);return}en(a,Array.from(d.values()).flatMap(O=>O.elements),eo(r,a))}},{destroy:()=>Array.from(d.values()).forEach(S=>{S.cleanup(),S.dataSignal.destroy(),S.elements.forEach(C=>C.remove())})}),p=!1,Array.from(d.values()).flatMap(S=>S.elements)}return l.repeat?g():l.condition?u({node:l,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s}):i({node:l,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s})}var Cu=new Re;function Ne({component:e,dataSignal:t,onEvent:r,isRootComponent:o,path:n,children:a,formulaCache:s,components:l,apis:i,abortSignal:u,root:g,providers:p,package:h,stores:d,parentElement:b,instance:S,toddle:C,namespace:D,env:N,jsonPath:w,reportFormulaEvaluation:A}){let P=ne(`Render component: ${e.name}`,{component:e.name,path:n}),O={triggerEvent:r,component:e,components:l,dataSignal:t,isRootComponent:o,apis:i,formulaCache:s,children:a,abortSignal:u,root:g,providers:p,stores:d,package:h,toddle:C,env:N,jsonPath:w,reportFormulaEvaluation:A},c=te({id:"root",path:n,dataSignal:t,ctx:{...O,jsonPath:["nodes","root"]},parentElement:b,namespace:D,instance:S});return Cu.add(()=>{let v;e.onAttributeChange?.actions&&e.onAttributeChange.actions.length>0&&t.map(f=>f.Attributes).subscribe(f=>{v&&e.onAttributeChange?.actions?.forEach(y=>{M(y,t.get(),O,new CustomEvent("attribute-change",{detail:Object.entries(f).reduce((R,[j,T])=>((0,bn.default)(T,v[j])===!1&&e.attributes?.[j]?.name&&(R[e.attributes?.[j]?.name]={current:v[j],new:T}),R),{})}))}),v=f}),e.onLoad?.actions?.forEach(f=>{M(f,t.get(),O)})}),P(),c}var vn=(e,t,r)=>{let n=e.route?.info?.theme?.formula;if(n&&n.type!=="value")return t.map(()=>E(n,{data:t.get(),component:e,root:document,package:void 0,toddle:window.toddle,env:r}));if(F(n))return U(n.value);{let s=document.cookie.split("; ").find(i=>i.startsWith(`${ae}=`))?.split("=")[1]??null,l=U(s);return"cookieStore"in window&&cookieStore.addEventListener("change",i=>{for(let u of i.changed)u.name===ae&&l.set(u.value??null);for(let u of i.deleted)u.name===ae&&l.set(null)}),l}};on();var re,km=e=>{let t=window.__toddle.component,{params:r,hash:o,query:n}=An(t);re={isServer:!1,branchName:window.__toddle.branch,request:void 0,runtime:"page",logErrors:!0},window.toddle=(()=>{let a={},s={},l={},i={isEqual:En.default,errors:[],project:window.__toddle.project,branch:window.__toddle.branch,commit:window.__toddle.commit,components:window.__toddle.components,formulas:e?.formulas??{},actions:e?.actions??{},registerAction:(u,g)=>{if(a[u]){console.error("There already exists an action with the name ",u);return}a[u]=g},getAction:u=>a[u],registerFormula:(u,g,p)=>{if(s[u]){console.error("There already exists a formula with the name ",u);return}s[u]=g,p&&(l[u]=p)},getFormula:u=>s[u],getCustomAction:(u,g)=>i.actions[g??window.__toddle.project]?.[u]??i.actions[window.__toddle.project]?.[u],getCustomFormula:(u,g)=>i.formulas[g??window.__toddle.project]?.[u]??i.formulas[window.__toddle.project]?.[u],getArgumentInputData:(u,g,p,h)=>l[u]?.(g,p,h)||h,data:{},locationSignal:U({route:t.route,page:t.page,path:window.location.pathname,params:r,query:n,hash:o}),eventLog:[],pageState:window.__toddle.pageState,env:re};return i})(),Object.entries(zr).forEach(([a,s])=>window.toddle.registerFormula("@toddle/"+a,s.default,"getArgumentInputData"in s?s.getArgumentInputData:void 0)),Object.entries(ot).forEach(([a,s])=>window.toddle.registerAction("@toddle/"+a,s.default))},xm=e=>{let t=window.__toddle.component;if(!e)throw new Error("Cant find root domNode");if(!window.toddle.components)throw new Error("Missing components");window.addEventListener("popstate",()=>{if(!t)return;let{params:i,hash:u,query:g}=An(t);window.toddle.locationSignal.update(()=>({route:t?.route,page:t.page,path:window.location.pathname,params:i,query:g,hash:u}))});let r=window.toddle.locationSignal.map(({query:i,params:u})=>({...i,...u})),o=U({...window.toddle.pageState,Variables:q(t.variables??{},([i,u])=>[i,E(u.initialValue,{data:window.toddle.pageState,component:t,formulaCache:{},root:document,package:void 0,toddle:window.toddle,env:re,jsonPath:[]},["variables",i])])});Pe(t,o),r.subscribe(i=>o.update(u=>({...u,"URL parameters":i,Attributes:i})));let n=new AbortController;o.subscribe(()=>{},{destroy:()=>n.abort(`Component ${t.name} unmounted`)});let a={component:t,components:window.toddle.components,root:document,isRootComponent:!0,dataSignal:o,abortSignal:n.signal,children:{},formulaCache:{},providers:{},stores:{theme:vn(t,o,re)},apis:{},toddle:window.toddle,triggerEvent:(i,u)=>console.info("EVENT FIRED",i,u),package:void 0,env:re,jsonPath:[]};Ce(Object.entries(t.apis??{}).filter(i=>F(i[1]))).forEach(([i,u])=>{Ae(u)?a.apis[i]=Fe(u,{...a,jsonPath:["apis",i]}):a.apis[i]=je({apiRequest:u,ctx:{...a,jsonPath:["apis",i]},componentData:o.get()})}),Object.values(a.apis).filter(X).forEach(i=>{i.triggerActions(o.get())});let s=a.providers;if(Oe(t)){let i=Object.fromEntries(Object.entries(t.formulas??{}).filter(([,u])=>u.exposeInContext).map(([u,g])=>[u,o.map(p=>E(g.formula,{data:p,component:t,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:window.toddle,env:re}))]));s={...s,[t.name]:{component:t,formulaDataSignals:i,ctx:a}}}a.stores.theme.subscribe(i=>{o.update(u=>({...u,Page:{...u.Page??{},Theme:i}})),F(i)?document.documentElement.setAttribute(Le,i):document.documentElement.removeAttribute(Le)}),Fu(t,o);let l=Ne({...a,providers:s,path:"0",package:void 0,onEvent:a.triggerEvent,parentElement:e,instance:{}});e.innerText="",l.forEach(i=>{e.appendChild(i)}),window.__toddle.isPageLoaded=!0};function An(e){let t=window.location.pathname.split("/").slice(1),r={};e.route?e.route.path.forEach((s,l)=>{s.type==="param"?F(t[l])&&t[l]!==""?r[s.name]=decodeURIComponent(t[l]):r[s.name]=null:r[s.name]=s.name}):r=(Jo(e.page??"",{decode:decodeURIComponent})(window.location.pathname)||{params:{}}).params;let[o]=window.location.hash.split("?"),n=wu(window.location.search),a=Object.keys(e.route?.query??{}).reduce((s,l)=>({...s,[l]:null}),{});return{params:r,hash:o?.slice(1),query:{...a,...n}}}var wu=e=>Object.fromEntries(e.replace("?","").split("&").filter(t=>t!=="").map(t=>t.split("=").map(decodeURIComponent))),Fu=(e,t)=>{let r=p=>({data:p,component:e,root:document,package:void 0,toddle:window.toddle,env:re}),o=e.route?.info?.language?.formula;o&&o.type!=="value"&&t.map(p=>e?E(o,r(p),["route","info","language"]):null).subscribe(p=>{F(p)&&document.documentElement.lang!==p&&document.documentElement.setAttribute("lang",p)});let a=e.route?.info?.title?.formula;a&&a.type!=="value"&&t.map(p=>e?E(a,r(p),["route","info","title"]):null).subscribe(p=>{F(p)&&document.title!==p&&(document.title=p)});let l=e.route?.info?.description?.formula,i=e.route?.info?.meta,u=l&&l.type!=="value",g=Xo(i);if(u||Object.keys(g).length>0){let p=d=>[...document.getElementsByTagName("meta")].find(b=>b.name===d||b.getAttribute("property")===d)??null,h=(d,b)=>{let S=null;if(F(b))S=document.querySelector(`[data-toddle-id="${b}"]`);else{let C=Object.entries(d.attrs??{}).find(([D])=>["property","name"].includes(D.toLowerCase()))?.[1];F(C)&&(S=p(C))}S||(S=document.createElement(d.tag),F(b)&&S.setAttribute("data-toddle-id",b),document.getElementsByTagName("head")[0].appendChild(S)),Object.entries(d.attrs??{}).forEach(([C,D])=>{e&&S.setAttribute(C,D)}),typeof d.content=="string"&&!No.includes(d.tag.toLowerCase())&&(S.textContent=d.content)};if(u&&t.map(d=>e?E(l,r(d),["route","info","description"]):null).subscribe(d=>{if(F(d)){let b=document.getElementsByTagName("meta").namedItem("description");b||(b=document.createElement("meta"),b.name="description"),b.content=d,document.getElementsByTagName("head")[0].appendChild(b),i&&!Object.values(i).some(S=>Object.entries(S.attrs??{}).some(([C,D])=>C.toLowerCase()==="property"&&D.type==="value"&&typeof D.value=="string"&&D.value.toLowerCase()==="og:description"))&&h({tag:"meta",attrs:{property:"og:description",content:d},content:void 0})}}),Object.keys(g).length>0)for(let d in g){let b=g[d];b&&t.map(S=>{let C=r(S);return{attrs:Object.entries(b.attrs??{}).reduce((N,[w,A])=>e?{...N,[w]:E(A,C,["route","info","meta",d,"attrs",w])}:N,{}),content:b.content?E(b.content,C):void 0}}).subscribe(({attrs:S,content:C})=>h({tag:b.tag,attrs:S,content:C},d))}}};export{xm as createRoot,km as initGlobalObject};
|
|
8
8
|
//# sourceMappingURL=page.main.esm.js.map
|