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