@nordcraft/runtime 1.0.95 → 1.0.96

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.
Files changed (74) hide show
  1. package/dist/api/createAPI.js +29 -11
  2. package/dist/api/createAPI.js.map +1 -1
  3. package/dist/api/createAPIv2.js +49 -11
  4. package/dist/api/createAPIv2.js.map +1 -1
  5. package/dist/components/createComponent.js +14 -5
  6. package/dist/components/createComponent.js.map +1 -1
  7. package/dist/components/createElement.js +48 -16
  8. package/dist/components/createElement.js.map +1 -1
  9. package/dist/components/createNode.js +23 -10
  10. package/dist/components/createNode.js.map +1 -1
  11. package/dist/components/createNode.test.js +3 -3
  12. package/dist/components/createNode.test.js.map +1 -1
  13. package/dist/components/createSlot.js +2 -1
  14. package/dist/components/createSlot.js.map +1 -1
  15. package/dist/components/createText.js +7 -2
  16. package/dist/components/createText.js.map +1 -1
  17. package/dist/components/renderComponent.d.ts +4 -1
  18. package/dist/components/renderComponent.js +4 -2
  19. package/dist/components/renderComponent.js.map +1 -1
  20. package/dist/context/subscribeToContext.js +12 -2
  21. package/dist/context/subscribeToContext.js.map +1 -1
  22. package/dist/custom-element/ToddleComponent.js +12 -4
  23. package/dist/custom-element/ToddleComponent.js.map +1 -1
  24. package/dist/custom-element.main.esm.js +29 -29
  25. package/dist/custom-element.main.esm.js.map +4 -4
  26. package/dist/editor/editorUtils.d.ts +1 -0
  27. package/dist/editor/editorUtils.js +14 -0
  28. package/dist/editor/editorUtils.js.map +1 -0
  29. package/dist/editor/types.d.ts +4 -0
  30. package/dist/editor/types.js.map +1 -1
  31. package/dist/editor-preview.main.js +71 -18
  32. package/dist/editor-preview.main.js.map +1 -1
  33. package/dist/events/handleAction.js +62 -31
  34. package/dist/events/handleAction.js.map +1 -1
  35. package/dist/page.main.esm.js +3 -3
  36. package/dist/page.main.esm.js.map +4 -4
  37. package/dist/page.main.js +39 -8
  38. package/dist/page.main.js.map +1 -1
  39. package/dist/utils/createFormulaCache.js.map +1 -1
  40. package/dist/utils/nodes.d.ts +1 -0
  41. package/dist/utils/nodes.js +9 -0
  42. package/dist/utils/nodes.js.map +1 -1
  43. package/dist/utils/nodes.test.d.ts +1 -0
  44. package/dist/utils/nodes.test.js +192 -0
  45. package/dist/utils/nodes.test.js.map +1 -0
  46. package/dist/utils/subscribeCustomProperty.d.ts +1 -1
  47. package/dist/utils/subscribeCustomProperty.js +8 -4
  48. package/dist/utils/subscribeCustomProperty.js.map +1 -1
  49. package/dist/utils/subscribeCustomProperty.test.d.ts +1 -0
  50. package/dist/utils/subscribeCustomProperty.test.js +63 -0
  51. package/dist/utils/subscribeCustomProperty.test.js.map +1 -0
  52. package/package.json +3 -3
  53. package/src/api/createAPI.ts +90 -46
  54. package/src/api/createAPIv2.ts +67 -13
  55. package/src/components/createComponent.ts +85 -67
  56. package/src/components/createElement.ts +63 -27
  57. package/src/components/createNode.test.ts +3 -3
  58. package/src/components/createNode.ts +47 -22
  59. package/src/components/createSlot.ts +2 -1
  60. package/src/components/createText.ts +34 -18
  61. package/src/components/renderComponent.ts +8 -1
  62. package/src/context/subscribeToContext.ts +12 -2
  63. package/src/custom-element/ToddleComponent.ts +37 -22
  64. package/src/editor/editorUtils.ts +13 -0
  65. package/src/editor/types.ts +5 -0
  66. package/src/editor-preview.main.ts +125 -46
  67. package/src/events/handleAction.ts +173 -96
  68. package/src/page.main.ts +64 -26
  69. package/src/types.d.ts +3 -0
  70. package/src/utils/createFormulaCache.ts +2 -2
  71. package/src/utils/nodes.test.ts +246 -0
  72. package/src/utils/nodes.ts +11 -0
  73. package/src/utils/subscribeCustomProperty.test.ts +78 -0
  74. package/src/utils/subscribeCustomProperty.ts +21 -22
@@ -1,8 +1,8 @@
1
- var ln=Object.create;var Pe=Object.defineProperty;var un=Object.getOwnPropertyDescriptor;var cn=Object.getOwnPropertyNames;var dn=Object.getPrototypeOf,pn=Object.prototype.hasOwnProperty;var fn=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),p=(e,t)=>{for(var r in t)Pe(e,r,{get:t[r],enumerable:!0})},mn=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of cn(t))!pn.call(e,n)&&n!==r&&Pe(e,n,{get:()=>t[n],enumerable:!(o=un(t,n))||o.enumerable});return e};var ge=(e,t,r)=>(r=e!=null?ln(dn(e)):{},mn(t||!e||!e.__esModule?Pe(r,"default",{value:e,enumerable:!0}):r,e));var pe=fn((gc,No)=>{"use strict";No.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var o,n,a;if(Array.isArray(t)){if(o=t.length,o!=r.length)return!1;for(n=o;n--!==0;)if(!e(t[n],r[n]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(a=Object.keys(t),o=a.length,o!==Object.keys(r).length)return!1;for(n=o;n--!==0;)if(!Object.prototype.hasOwnProperty.call(r,a[n]))return!1;for(n=o;n--!==0;){var s=a[n];if(!e(t[s],r[s]))return!1}return!0}return t!==t&&r!==r}});var z=typeof globalThis<"u"?globalThis:window;z.__nc_measure_max_depth=10;z.__nc_measure_enabled=typeof sessionStorage<"u"&&sessionStorage.getItem("__nc_measure")==="true";z.__nc_enableMeasure=(e=!0,t=10)=>{e?sessionStorage.setItem("__nc_measure","true"):sessionStorage.removeItem("__nc_measure"),z.__nc_measure_enabled=e,z.__nc_measure_max_depth=t};var ao=0,he=[],so=()=>{},le=(e,t)=>{if(!z.__nc_measure_enabled)return so;let r=ao++;if(he.length>=z.__nc_measure_max_depth)return so;let o=performance.now();return he.push(e),n=>{let a=performance.now(),s=n?{...t,...n}:t;performance.measure(e,{start:o,end:a,detail:{devtools:{dataType:"track-entry",track:"Nordcraft devtools",properties:[...Object.entries(s).map(([i,l])=>[i,String(l)]),["Stack",he.join(" > ")],["Measure index",r],["Sub-measures",ao-r]],tooltipText:`${r}. ${e}`}}}),he.pop()}};var w=e=>e!=null,H=e=>typeof e=="object"&&e!==null,P=e=>e!==!1&&e!==void 0&&e!==null;function J(e){return e&&typeof e=="object"&&typeof e.type=="string"&&["path","function","record","object","array","or","and","apply","value","switch"].includes(e.type)}var Ie=e=>Object.hasOwn(e,"formula")&&w(e.formula);function A(e,t){if(!J(e))return e;try{switch(e.type){case"value":return e.value;case"path":{let r=t.data;for(let o of e.path)if(r&&typeof r=="object")r=r[o];else return null;return r}case"switch":{for(let r of e.cases??[])if(P(A(r.condition,t)))return A(r.formula,t);return A(e.default,t)}case"or":{for(let r of e.arguments??[])if(P(A(r.formula,t)))return!0;return!1}case"and":{for(let r of e.arguments??[])if(!P(A(r.formula,t)))return!1;return!0}case"function":{let r=le(`Formula: ${e.name}`,{formula:e,component:t.component?.name}),o=e.package??t.package??void 0,n=(t.toddle??globalThis.toddle)?.getCustomFormula(e.name,o);if(w(n)){t.package=o;let a=(e.arguments??[]).reduce((s,i,l)=>({...s,[i.name??`${l}`]:i.isFunction?u=>A(i.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}}):A(i.formula,t)}),{});try{return Ie(n)?A(n.formula,{...t,data:{...t.data,Args:a}}):n.handler(a,{root:t.root??document,env:t.env})}catch(s){return t.toddle.errors.push(s),t.env?.logErrors&&console.error(s),null}finally{r()}}else{let a=(t.toddle??globalThis.toddle).getFormula(e.name);if(typeof a=="function"){let s=(e.arguments??[]).map(i=>i.isFunction?l=>A(i.formula,{...t,data:{...t.data,Args:t.data.Args?{...l,"@toddle.parent":t.data.Args}:l}}):A(i.formula,t));try{return a(s,t)}catch(i){return t.toddle.errors.push(i),t.env?.logErrors&&console.error(i),null}finally{r()}}}return t.env?.logErrors&&console.error(`Could not find formula ${e.name} in package ${o??""}`,e),null}case"object":return Object.fromEntries(e.arguments?.map(r=>[r.name,A(r.formula,t)])??[]);case"record":return Object.fromEntries((e.entries??[]).map(r=>[r.name,A(r.formula,t)]));case"array":return(e.arguments??[]).map(r=>A(r.formula,t));case"apply":{let r=t.component?.formulas?.[e.name];if(!r)return t.env?.logErrors&&console.log("Component does not have a formula with the name ",e.name),null;let o=le(`Formula: ${r.name}`,{formula:e,component:t.component?.name}),n=Object.fromEntries((e.arguments??[]).map(i=>i.isFunction?[i.name,l=>A(i.formula,{...t,data:{...t.data,Args:t.data.Args?{...l,"@toddle.parent":t.data.Args}:l}})]:[i.name,A(i.formula,t)])),a={...t.data,Args:t.data.Args?{...n,"@toddle.parent":t.data.Args}:n},s=t.formulaCache?.[e.name]?.get(a);if(s?.hit)return o({cache:"hit"}),s.data;{let i=A(r.formula,{...t,data:a});return t.formulaCache?.[e.name]?.set(a,i),o({cache:"miss"}),i}}default:t.env?.logErrors&&console.error("Could not recognize formula",e)}}catch(r){return t.env?.logErrors&&console.error(r),null}}var q=(e,t)=>{let r={};for(let o in e){let[n,a]=t([o,e[o]]);r[n]=a}return r},ue=(e,t)=>q(e,([r,o])=>[r,t(o)]),io=(e,[t,...r])=>{if(r.length>0){let n=Array.isArray(e)?[...e]:{...e};return w(t)&&(n[t]=io(n[t],r)),n}if(Array.isArray(e))return e.toSpliced(Number(t),1);let o={...e};return w(t)&&delete o[t],o},Y=(e,t)=>Object.fromEntries(Object.entries(e).filter(([r])=>!t.includes(r))),lo=(e,t)=>t.reduce((r,o)=>io(r,o),{...e});function ye(e,[t,...r]){let o=w(t)?e?.[t]:void 0;return r.length===0?o:ye(o,r)}var be=(e,t,r=!0)=>gn(Object.entries(e),t,r),gn=(e,t,r=!0)=>[...e].sort((o,n)=>{let a=t(o),s=t(n);return a===s?0:(a>s?1:-1)*(r?1:-1)});var uo=(e,t=0)=>{let r=3735928559^t,o=1103547991^t;for(let n=0,a;n<e.length;n++)a=e.charCodeAt(n),r=Math.imul(r^a,2654435761),o=Math.imul(o^a,1597334677);return r=Math.imul(r^r>>>16,2246822507),r^=Math.imul(o^o>>>13,3266489909),o=Math.imul(o^o>>>16,2246822507),o^=Math.imul(r^r>>>13,3266489909),4294967296*(2097151&o)+(r>>>0)};var V;(function(e){e.GET="GET",e.POST="POST",e.DELETE="DELETE",e.PUT="PUT",e.PATCH="PATCH",e.HEAD="HEAD",e.OPTIONS="OPTIONS"})(V||(V={}));var ve=e=>typeof e!="string"?!1:/^application\/(json|.*\+json)/.test(e),co=e=>typeof e!="string"?!1:/^(text\/|application\/x-www-form-urlencoded|application\/(xml|.*\+xml))/.test(e),po=e=>typeof e!="string"?!1:/^text\/event-stream/.test(e),fo=e=>typeof e!="string"?!1:/^(application\/stream\+json|application\/x-ndjson)/.test(e),mo=e=>typeof e!="string"?!1:/^image\//.test(e),Z=e=>{let t={};for(let[r,o]of e.entries())t[r]?t[r]+=`, ${o}`:t[r]=o;return t};function*x({formula:e,globalFormulas:t,path:r,visitedFormulas:o,packageName:n}){if(!w(e))return;let a=r??[],s=o??new Set;switch(yield{path:a,formula:e,packageName:n??void 0},e.type){case"path":case"value":break;case"record":for(let[i,l]of(e.entries??[]).entries())yield*x({formula:l.formula,globalFormulas:t,path:[...a,"entries",i,"formula"],visitedFormulas:s,packageName:n});break;case"function":{let i=e.package??n,l=[i,e.name].filter(w).join("/"),u=!s.has(l);s.add(l);let m=i?t.packages?.[i]?.formulas?.[e.name]:t.formulas?.[e.name];for(let[c,g]of(e.arguments??[]).entries())yield*x({formula:g.formula,globalFormulas:t,path:[...a,"arguments",c,"formula"],visitedFormulas:s,packageName:n});m&&Ie(m)&&u&&(yield*x({formula:m.formula,globalFormulas:t,path:i?["packages",i,"formulas",e.name]:["formulas",e.name],visitedFormulas:s,packageName:i}));break}case"array":case"or":case"and":case"object":for(let[i,l]of(e.arguments??[]).entries())yield*x({formula:l.formula,globalFormulas:t,path:[...a,"arguments",i,"formula"],visitedFormulas:s,packageName:n});break;case"apply":for(let[i,l]of(e.arguments??[]).entries())yield*x({formula:l.formula,globalFormulas:t,path:[...a,"arguments",i,"formula"],visitedFormulas:s,packageName:n});break;case"switch":for(let[i,l]of e.cases?.entries()??[])yield*x({formula:l.condition,globalFormulas:t,path:[...a,"cases",i,"condition"],visitedFormulas:s,packageName:n}),yield*x({formula:l.formula,globalFormulas:t,path:[...a,"cases",i,"formula"],visitedFormulas:s,packageName:n});yield*x({formula:e.default,globalFormulas:t,path:[...a,"default"],visitedFormulas:s,packageName:n});break}}function*B({action:e,globalFormulas:t,path:r,visitedFormulas:o=new Set,packageName:n}){if(!w(e))return;let a=r??[];switch(e.type){case"AbortFetch":break;case"Fetch":for(let[s,i]of Object.entries(e.inputs??{}))yield*x({formula:i.formula,globalFormulas:t,path:[...a,"input",s,"formula"],visitedFormulas:o,packageName:n});for(let[s,i]of Object.entries(e.onSuccess?.actions??{}))yield*B({action:i,globalFormulas:t,path:[...a,"onSuccess","actions",s],visitedFormulas:o,packageName:n});for(let[s,i]of Object.entries(e.onError?.actions??{}))yield*B({action:i,globalFormulas:t,path:[...a,"onError","actions",s],visitedFormulas:o,packageName:n});for(let[s,i]of Object.entries(e.onMessage?.actions??{}))yield*B({action:i,globalFormulas:t,path:[...a,"onMessage","actions",s],visitedFormulas:o,packageName:n});break;case"Custom":case void 0:case null:{J(e.data)&&(yield*x({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n}));for(let[s,i]of Object.entries(e.arguments??{}))i&&(yield*x({formula:i.formula,globalFormulas:t,path:[...a,"arguments",s,"formula"],visitedFormulas:o,packageName:n}));for(let[s,i]of Object.entries(e.events??{}))for(let[l,u]of Object.entries(i.actions??{}))yield*B({action:u,globalFormulas:t,path:[...a,"events",s,"actions",l],visitedFormulas:o,packageName:n});break}case"SetVariable":case"TriggerEvent":case"TriggerWorkflowCallback":yield*x({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameter":yield*x({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameters":for(let[s,i]of Object.entries(e.parameters??{}))yield*x({formula:i,globalFormulas:t,path:[...a,"parameters",s],visitedFormulas:o,packageName:n});break;case"TriggerWorkflow":for(let[s,i]of Object.entries(e.parameters??{}))w(i.formula)&&(yield*x({formula:i.formula,globalFormulas:t,path:[...a,"parameters",s,"formula"],visitedFormulas:o,packageName:n}));break;case"Switch":w(e.data)&&J(e.data)&&(yield*x({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n}));for(let[s,i]of(e.cases??[]).entries()){yield*x({formula:i.condition,globalFormulas:t,path:[...a,"cases",s,"condition"],visitedFormulas:o,packageName:n});for(let[l,u]of Object.entries(i.actions))yield*B({action:u,globalFormulas:t,path:[...a,"cases",s,"actions",l],visitedFormulas:o,packageName:n})}for(let[s,i]of Object.entries(e.default?.actions??[]))yield*B({action:i,globalFormulas:t,path:[...a,"default","actions",s],visitedFormulas:o,packageName:n});break}}var ce=class{api;key;globalFormulas;_apiReferences;constructor(t,r,o){this.api=t,this.key=r,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let t=new Set,r=o=>{if(w(o))switch(o.type){case"path":if(o.path[0]==="Apis"){let n=o.path[1];typeof n=="string"&&t.add(n)}break;case"value":break;case"record":o.entries?.forEach(n=>r(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>r(n.formula));break;case"switch":o.cases?.forEach(n=>{r(n.condition),r(n.formula)});break}};return r(this.api.autoFetch),r(this.api.url),Object.values(this.api.path??{}).forEach(o=>r(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>r(o.formula)),J(this.api.headers)?r(this.api.headers):Object.values(this.api.headers??{}).forEach(o=>{r(o)}),r(this.api.body),this._apiReferences=t,t}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get proxy(){return this.api.proxy}get queryParams(){return this.api.queryParams}get headers(){return this.api.headers}get method(){return this.api.method}get body(){return this.api.body}get auth(){return this.api.auth}get throttle(){return this.api.throttle}get debounce(){return this.api.debounce}get onCompleted(){return this.api.onCompleted}get onFailed(){return this.api.onFailed}*formulasInApi(){let t=this.api,r=this.key;yield*x({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*x({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*x({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*x({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]});if(J(t.headers))yield*x({formula:t.headers,globalFormulas:this.globalFormulas,path:["apis",r,"headers"]});else for(let[o,n]of Object.entries(t.headers??{}))yield*x({formula:n,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o]});yield*x({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]});for(let[o,n]of Object.entries(t.onCompleted?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onCompleted","actions",o]});for(let[o,n]of Object.entries(t.onFailed?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onFailed","actions",o]})}};function*K(e,t=[]){if(w(e))switch(yield[t,e],e.type){case"AbortFetch":case"SetURLParameter":case"SetURLParameters":case"SetVariable":case"TriggerEvent":case"TriggerWorkflow":case"TriggerWorkflowCallback":break;case"Fetch":for(let[r,o]of Object.entries(e.onSuccess?.actions??{}))yield*K(o,[...t,"onSuccess","actions",r]);for(let[r,o]of Object.entries(e.onError?.actions??{}))yield*K(o,[...t,"onError","actions",r]);for(let[r,o]of Object.entries(e.onMessage?.actions??{}))yield*K(o,[...t,"onMessage","actions",r]);break;case"Custom":case void 0:case null:for(let[r,o]of Object.entries(e.events??{}))for(let[n,a]of Object.entries(o?.actions??{}))yield*K(a,[...t,"events",r,"actions",n]);break;case"Switch":for(let[r,o]of(e.cases??[]).entries())for(let[n,a]of Object.entries(o?.actions??{}))yield*K(a,[...t,"cases",r,"actions",n]);for(let[r,o]of Object.entries(e.default?.actions??[]))yield*K(o,[...t,"default","actions",r]);break}}var Ae=class{api;_apiReferences;key;globalFormulas;constructor(t,r,o){this.api=t,this.key=r,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let t=new Set,r=o=>{if(w(o))switch(o.type){case"path":if(o.path[0]==="Apis"){let n=o.path[1];typeof n=="string"&&t.add(n)}break;case"value":break;case"record":o.entries?.forEach(n=>r(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>r(n.formula));break;case"switch":o.cases?.forEach(n=>{r(n.condition),r(n.formula)});break}};return r(this.api.autoFetch),r(this.api.url),Object.values(this.api.path??{}).forEach(o=>r(o.formula)),Object.values(this.api.headers??{}).forEach(o=>r(o.formula)),r(this.api.body),Object.values(this.api.inputs).forEach(o=>r(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>{r(o.formula)}),r(this.api.server?.proxy?.enabled?.formula),r(this.api.server?.ssr?.enabled?.formula),r(this.api.client?.debounce?.formula),Object.values(this.api.redirectRules??{}).forEach(o=>{r(o.formula)}),r(this.api.isError?.formula),r(this.api.timeout?.formula),t.delete(this.key),this._apiReferences=t,t}get version(){return this.api.version}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get headers(){return this.api.headers}set headers(t){this.api.headers=t}get method(){return this.api.method}get body(){return this.api.body}get inputs(){return this.api.inputs}get queryParams(){return this.api.queryParams}get server(){return this.api.server}get client(){return this.api.client}get redirectRules(){return this.api.redirectRules}get isError(){return this.api.isError}get timeout(){return this.api.timeout}get"@nordcraft/metadata"(){return this.api["@nordcraft/metadata"]}*formulasInApi(){let t=this.api,r=this.key;for(let[o,n]of Object.entries(this.api.inputs))yield*x({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"inputs",o,"formula"]});yield*x({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*x({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*x({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*x({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]}),yield*x({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"enabled"]});for(let[o,n]of Object.entries(t.headers??{}))yield*x({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"formula"]}),yield*x({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"enabled"]});t.method&&Me.includes(t.method)&&(yield*x({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]}));for(let[o,n]of Object.entries(t.client?.onCompleted?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onCompleted","actions",o]});for(let[o,n]of Object.entries(t.client?.onFailed?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onFailed","actions",o]});yield*x({formula:t.client?.debounce?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"client","debounce","formula"]});for(let[o,n]of Object.entries(t.client?.onMessage?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onMessage","actions",o]});for(let[o,n]of Object.entries(t.redirectRules??{}))yield*x({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"redirectRules",o,"formula"]});yield*x({formula:t.isError?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"isError","formula"]}),yield*x({formula:t.timeout?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"timeout","formula"]}),yield*x({formula:t.server?.proxy?.enabled.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","enabled","formula"]}),yield*x({formula:t.server?.proxy?.useTemplatesInBody?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","useTemplatesInBody","formula"]}),yield*x({formula:t.server?.ssr?.enabled?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","ssr","enabled","formula"]})}*actionModelsInApi(){for(let[t,r]of Object.entries(this.api.client?.onCompleted?.actions??{}))yield*K(r,["apis",this.key,"client","onCompleted","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onFailed?.actions??{}))yield*K(r,["apis",this.key,"client","onFailed","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onMessage?.actions??{}))yield*K(r,["apis",this.key,"client","onData","actions",t])}};var Se=e=>e instanceof ce?!0:!("version"in e),go=({api:e,formulaContext:t,baseUrl:r,defaultHeaders:o})=>{let n=hn(e,t,r),a=bn({api:e,formulaContext:t,defaultHeaders:o});return{url:n,requestSettings:a}},hn=(e,t,r)=>{let o="",n=new URLSearchParams,a,s=A(e.url,t);if(["string","number"].includes(typeof s)){let d=typeof s=="number"?String(s):s;try{a=new URL(d,r??void 0),o=a.pathname,n=a.searchParams}catch{}}let i=vn(e.path,t),l=`${o}${i.length>0&&!o.endsWith("/")?"/":""}${i}`,u=new URLSearchParams([...n,...An(e.queryParams,t)]),m=[...u.entries()].length>0?`?${u.toString()}`:"",c=A(e.hash?.formula,t),g=typeof c=="string"&&c.length>0?`#${c}`:"";if(a){let d=new URL(a.origin,r??void 0);return d.pathname=l,d.search=u.toString(),d.hash=g,d}else return new URL(`${l}${m}${g}`,r??void 0)},Me=[V.POST,V.DELETE,V.PUT,V.PATCH,V.OPTIONS],yn=(e,t,r)=>{if(e.timeout){let o=A(e.timeout.formula,r);typeof o=="number"&&!Number.isNaN(o)&&o>0&&(t.signal=AbortSignal.timeout(o))}},bn=({api:e,formulaContext:t,defaultHeaders:r})=>{let o=Object.values(V).includes(e.method)?e.method:V.GET,n=Sn({apiHeaders:e.headers,formulaContext:t,defaultHeaders:r}),a=En({api:e,formulaContext:t,headers:n,method:o});n.get("content-type")==="multipart/form-data"&&n.delete("content-type");let s={method:o,headers:n,body:a};return yn(e,s,t),s},vn=(e,t)=>be(e??{},([r,o])=>o.index).map(([r,o])=>A(o.formula,t)).join("/"),An=(e,t)=>{let r=new URLSearchParams;return Object.entries(e??{}).forEach(([o,n])=>{if(!(w(n.enabled)?A(n.enabled,t):!0))return;let s=A(n.formula,t);if(w(s))if(Array.isArray(s))s.forEach(i=>r.append(o,String(i)));else if(H(s)){let i=(l,u)=>{Object.entries(l).forEach(([m,c])=>{if(!Array.isArray(c)&&H(c))return i(c,`${u}[${m}]`);r.set(`${u}[${m}]`,String(c))})};i(s,o)}else r.set(o,String(s))}),r},Sn=({apiHeaders:e,formulaContext:t,defaultHeaders:r})=>{let o=new Headers(r);return Object.entries(e??{}).forEach(([n,a])=>{if(w(a.enabled)?A(a.enabled,t):!0){let i=A(a.formula,t);if(w(i))try{o.set(n.trim(),(typeof i=="string"?i:String(i)).trim())}catch{}}}),o};var ho=(e,t)=>uo(JSON.stringify({url:e.href,method:t.method,headers:Y(Object.fromEntries(Object.entries(t.headers??{})),["host","cookie"]),body:t.body??null})),yo=({apiName:e,response:t,formulaContext:r,errorFormula:o,performance:n})=>{let a=o?A(o.formula,{component:r.component,package:r.package,toddle:r.toddle,data:{Attributes:{},Args:r.data.Args,Apis:{[e]:{isLoading:!1,data:t.body,error:null,response:{status:t.status,headers:t.headers,performance:n}}}},env:r.env}):null;return a==null?!t.ok:P(a)},En=({api:e,formulaContext:t,headers:r,method:o})=>{if(!e.body||!Me.includes(o))return;let n=A(e.body,t);if(!n)return;let a=r.get("content-type");if(!w(a)||ve(a))return JSON.stringify(n);switch(a){case"application/x-www-form-urlencoded":return typeof n=="object"&&n!==null?Object.entries(n).map(([s,i])=>Array.isArray(i)?i.map(l=>`${encodeURIComponent(s)}=${encodeURIComponent(l)}`).join("&"):`${encodeURIComponent(s)}=${encodeURIComponent(String(i))}`).join("&"):"";case"multipart/form-data":{let s=new FormData;return typeof n=="object"&&n!==null&&Object.entries(n).forEach(([i,l])=>{s.set(i,l)}),s}case"text/plain":return String(n);default:return n}},Ee=(e,t)=>new CustomEvent(e,{detail:t}),Cn=(e,t)=>{let r=e.apiReferences.has(t.name),o=t.apiReferences.has(e.name);return r===o?0:r?1:-1},Ce=e=>{let t=new Map,r=(o,n)=>{let a=t.get(n);return a||(a=o.version===2?new Ae(o,n,{formulas:{},packages:{}}):new ce(o,n,{formulas:{},packages:{}}),t.set(n,a)),a};return[...e].sort(([o,n],[a,s])=>{let i=r(n,o),l=r(s,a);return Cn(i,l)})};var bo="nc-custom-properties",Le="data-nc-theme",ne="nc-theme";var vo=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"];var ot={};p(ot,{clearLocalStorage:()=>Ge,clearSessionStorage:()=>Je,copyToClipboard:()=>We,deleteFromLocalStorage:()=>Be,deleteFromSessionStorage:()=>ze,focus:()=>tt,gotToURL:()=>Ye,interval:()=>_e,logToConsole:()=>rt,preventDefault:()=>Ze,saveToLocalStorage:()=>Xe,saveToSessionStorage:()=>Ke,setCookie:()=>Ue,setHttpOnlyCookie:()=>Qe,setSessionCookies:()=>et,setTheme:()=>$e,share:()=>He,sleep:()=>qe,stopPropagation:()=>Ve});var _e={};p(_e,{default:()=>Fn});var wn=([e],t)=>{let r=Number(e);if(!w(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setInterval(()=>t.triggerActionEvent("tick",null),r);t.abortSignal.addEventListener("abort",()=>{clearInterval(o)})},Fn=wn;var $e={};p($e,{default:()=>Tn});var Rn=3600*24*365,Dn=async function([e],t){if(typeof e!="string"&&e!==null){t.triggerActionEvent("Error",new Error('The "Name" argument must be a string or null'));return}let r=e===null||e==="";try{await cookieStore.set({name:ne,value:e??"",path:"/",expires:r?0:Date.now()+Rn,sameSite:"none"}),t.triggerActionEvent("Success",void 0)}catch(o){t.triggerActionEvent("Error",o)}},Tn=Dn;var qe={};p(qe,{default:()=>jn});var On=([e],t)=>{let r=Number(e);if(!w(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setTimeout(()=>t.triggerActionEvent("tick",null),r);t.abortSignal.addEventListener("abort",()=>{clearTimeout(o)})},jn=On;var Be={};p(Be,{default:()=>xn});var Nn=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.removeItem(e)},xn=Nn;var Ue={};p(Ue,{default:()=>Pn});var kn=async function([e,t,r,o,n,a],s){let i=g=>s.triggerActionEvent("Error",new Error(g));if(typeof e!="string"){i('The "Name" argument must be a string');return}if(typeof t!="string"){i('The "Value" argument must be a string');return}let l=o??"Lax";if(typeof l!="string"||!["lax","strict","none"].includes(l.toLocaleLowerCase())){i('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let u=n??"/";if(typeof u!="string"||!u.startsWith("/")){i('The "Path" argument must be a string and start with /');return}if(r!=null&&(typeof r!="number"||isNaN(r))){i('The "Expires in" argument must be a number');return}let m=a??!0;if(typeof m!="boolean"){i('The "Include Subdomains" argument must be a boolean');return}let c=`${e}=${t}; SameSite=${l}; Path=${u}`;if(typeof r=="number"){let g=new Date(Date.now()+r*1e3);c+=`; Expires=${g.toUTCString()}`}m&&(c+=`; Domain=${window.location.hostname}`),document.cookie=c,s.triggerActionEvent("Success",void 0)},Pn=kn;var He={};p(He,{default:()=>Mn});var In=([e,t,r])=>{let o=a=>w(a)&&typeof a=="string";if(!o(e)&&!o(t)&&!o(r))throw new Error("Either url, text or title must be provided");let n={};if(o(t)&&(n.title=t),o(r)&&(n.text=r),o(e)&&(n.url=e),w(navigator.share)&&navigator.canShare(n))return navigator.share(n)},Mn=In;var Ve={};p(Ve,{default:()=>_n});var Ln=(e,t,r)=>{r?.stopPropagation?.()},_n=Ln;var Ke={};p(Ke,{default:()=>qn});var $n=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.setItem(e,JSON.stringify(t))},qn=$n;var We={};p(We,{default:()=>Un});var Bn=([e])=>{if(typeof e!="string")throw new Error("Input value must be a string");return navigator.clipboard.writeText(e)},Un=Bn;var Je={};p(Je,{default:()=>Vn});var Hn=async function(){window.sessionStorage.clear()},Vn=Hn;var Ge={};p(Ge,{default:()=>Wn});var Kn=async function(){window.localStorage.clear()},Wn=Kn;var Qe={};p(Qe,{default:()=>Gn});var Jn=async function([e,t,r,o,n,a],s){let i=g=>s.triggerActionEvent("Error",new Error(g));if(typeof e!="string"){i('The "Name" argument must be a string');return}if(typeof t!="string"){i('The "Value" argument must be a string');return}let l=o??"Lax";if(typeof l!="string"||!["lax","strict","none"].includes(l.toLocaleLowerCase())){i('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let u=n??"/";if(typeof u!="string"||!u.startsWith("/")){i('The "Path" argument must be a string and start with /');return}if(r!=null&&(typeof r!="number"||isNaN(r))){i('The "Expires in" argument must be a number');return}let m=a??!0;if(typeof m!="boolean"){i('The "Include Subdomains" argument must be a boolean');return}let c=new URLSearchParams;c.set("name",e),c.set("value",t),c.set("sameSite",l),c.set("path",u),c.set("includeSubdomains",String(m)),typeof r=="number"&&c.set("ttl",String(r));try{let g=await fetch(`/.nordcraft/cookies/set-cookie?${c.toString()}`);g.ok?s.triggerActionEvent("Success",void 0):i(await g.text())}catch(g){i(g instanceof Error?g.message:"An unexpected error occurred")}},Gn=Jn;var ze={};p(ze,{default:()=>zn});var Qn=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.removeItem(e)},zn=Qn;var Ye={};p(Ye,{default:()=>Zn});var Yn=([e],t)=>{typeof e=="string"&&(t.env.runtime==="preview"?window.parent?.postMessage({type:"blockedNavigation",url:e},"*"):window.location.href=e)},Zn=Yn;var Ze={};p(Ze,{default:()=>ea});var Xn=(e,t,r)=>{r?.preventDefault?.()},ea=Xn;var Xe={};p(Xe,{default:()=>ra});var ta=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.setItem(e,JSON.stringify(t))},ra=ta;var et={};p(et,{default:()=>na});var oa=async function([e,t],r){let o=[typeof e=="string"?`name=access_token&value=${encodeURIComponent(e)}`:void 0,isNaN(Number(t))?void 0:`ttl=${t}`].filter(a=>a).join("&"),n=await fetch(`/.toddle/cookies/set-session-cookie?${o}`);n.ok?r.triggerActionEvent("Success",void 0):r.triggerActionEvent("Error",new Error(await n.text()))},na=oa;var tt={};p(tt,{default:()=>sa});var aa=([e,t])=>{e instanceof HTMLElement&&e.focus({preventScroll:P(t)})},sa=aa;var rt={};p(rt,{default:()=>la});var ia=([e,t])=>{console.log(e,t)},la=ia;var Qr={};p(Qr,{Id:()=>Jt,absolute:()=>Qt,add:()=>Rt,append:()=>nt,boolean:()=>ir,branchName:()=>Ur,canShare:()=>It,capitalize:()=>kr,clamp:()=>Ar,concatenate:()=>Hr,currentURL:()=>Br,dateFromString:()=>Mt,dateFromTimestamp:()=>ut,decodeBase64:()=>er,decodeURIComponent:()=>_r,defaultTo:()=>yt,deleteKey:()=>Er,divide:()=>pr,drop:()=>Sr,dropLast:()=>pt,encodeBase64:()=>gt,encodeJSON:()=>Ft,encodeURIComponent:()=>jr,entries:()=>hr,equals:()=>Wr,every:()=>mr,filter:()=>yr,find:()=>Pt,findIndex:()=>sr,findLast:()=>Dr,first:()=>zt,flatten:()=>_t,formatDate:()=>ur,formatNumber:()=>Dt,fromEntries:()=>vr,get:()=>Yt,getCookie:()=>Tt,getElementById:()=>Lt,getFromLocalStorage:()=>Nr,getFromSessionStorage:()=>dr,getHttpOnlyCookie:()=>vt,greaterOrEqueal:()=>Pr,greaterThan:()=>Vr,groupBy:()=>qr,includes:()=>lt,indexOf:()=>bt,isServer:()=>Cr,join:()=>Bt,json:()=>Kr,keyBy:()=>tr,languages:()=>rr,last:()=>or,lastIndexOf:()=>mt,lessOrEqual:()=>Gt,lessThan:()=>St,logarithm:()=>Ir,lowercase:()=>$t,map:()=>Kt,matches:()=>Zt,max:()=>Xt,min:()=>Ut,minus:()=>fr,modulo:()=>Et,multiply:()=>ft,not:()=>st,notEqual:()=>gr,now:()=>Tr,number:()=>Ht,parseJSON:()=>dt,parseURL:()=>xt,power:()=>Vt,prepend:()=>Lr,randomNumber:()=>Rr,range:()=>Ot,reduce:()=>ht,replaceAll:()=>Wt,reverse:()=>qt,round:()=>ar,roundDown:()=>$r,roundUp:()=>xr,set:()=>nr,shuffle:()=>At,size:()=>Mr,some:()=>it,sort_by:()=>ct,split:()=>Fr,squareRoot:()=>cr,startsWith:()=>Jr,string:()=>jt,sum:()=>Or,take:()=>Gr,takeLast:()=>lr,timestamp:()=>at,trim:()=>wt,typeOf:()=>kt,unique:()=>Ct,uppercase:()=>br,userAgent:()=>wr});var nt={};p(nt,{default:()=>ca});var ua=([e,t])=>Array.isArray(e)?[...e,t]:null,ca=ua;var at={};p(at,{default:()=>pa});var da=([e])=>!e||!(e instanceof Date)?null:e.getTime(),pa=da;var st={};p(st,{default:()=>ma});var fa=([e])=>!P(e),ma=fa;var it={};p(it,{default:()=>ga,getArgumentInputData:()=>ha,handler:()=>Ao});var Ao=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.some((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).some(([r,o])=>t({key:r,value:o})):null,ga=Ao,ha=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var lt={};p(lt,{default:()=>ba});var ya=([e,t])=>typeof e=="string"&&typeof t=="string"?e.includes(t):Array.isArray(e)?e.some(r=>globalThis.toddle.isEqual(r,t)):null,ba=ya;var ut={};p(ut,{default:()=>Aa});var va=([e])=>typeof e=="number"?new Date(e):null,Aa=va;var ct={};p(ct,{default:()=>Ea,getArgumentInputData:()=>Ca});var Sa=([e,t,r])=>{if(!Array.isArray(e)||typeof t!="function"||typeof r!="boolean")return null;let o=r?1:-1;return[...e].sort((n,a)=>{let s=t({item:n}),i=t({item:a});if(Array.isArray(s)&&Array.isArray(i)){for(let l in s)if(s[l]!==i[l])return(s[l]>i[l]?1:-1)*o;return 0}return s===i?0:(s>i?1:-1)*o})},Ea=Sa,Ca=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0]}}:r;var dt={};p(dt,{default:()=>Ra});var wa=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:.\d{1,3})?Z$/;function de(e){return JSON.parse(e,(t,r)=>typeof r=="string"&&r.length===24&&wa.test(r)?new Date(r):r)}var Fa=([e,t])=>{if(typeof e!="string")return null;try{return t==null||t?de(e):JSON.parse(e)}catch{return null}},Ra=Fa;var pt={};p(pt,{default:()=>Ta});var Da=([e,t])=>typeof t!="number"||isNaN(t)?null:Array.isArray(e)?e.slice(0,e.length-t):typeof e=="string"?e.substring(0,e.length-t):null,Ta=Da;var ft={};p(ft,{default:()=>ja});var Oa=e=>e.some(t=>isNaN(Number(t)))?null:e.reduce((t,r)=>t*r,1),ja=Oa;var mt={};p(mt,{default:()=>xa});var Na=([e,t])=>{if(typeof e=="string")return e.lastIndexOf(t);if(Array.isArray(e)){let r=e.lastIndexOf(t);return r!==-1?r:e.findLastIndex(o=>globalThis.toddle.isEqual(o,t))}return null},xa=Na;var gt={};p(gt,{default:()=>Pa});var ka=([e])=>typeof e!="string"?null:btoa(e),Pa=ka;var ht={};p(ht,{default:()=>Ma,getArgumentInputData:()=>La});var Ia=([e,t,r])=>typeof t!="function"?null:Array.isArray(e)?e.reduce((o,n,a)=>t({result:o,item:n,index:a}),r):e&&typeof e=="object"?Object.entries(e).reduce((o,[n,a])=>t({result:o,key:n,value:a}),r):null,Ma=Ia,La=([e,t,r],o,n)=>{if(o!==1)return n;if(Array.isArray(e))return{...n,Args:{item:e[0],index:0,result:r}};if(e&&typeof e=="object"){let[a]=Object.entries(e);if(a)return{...n,Args:{key:a[0],value:a[1],result:r}}}return n};var yt={};p(yt,{default:()=>$a});var _a=e=>{for(let t of e)if(P(t))return t;return null},$a=_a;var bt={};p(bt,{default:()=>Ba});var qa=([e,t])=>{if(typeof e=="string")return e.indexOf(t);if(Array.isArray(e)){let r=e.indexOf(t);return r!==-1?r:e.findIndex(o=>globalThis.toddle.isEqual(o,t))}return null},Ba=qa;var vt={};p(vt,{default:()=>Va});var So=(e,t)=>`{{ ${Ua[e]}.${t} }}`,Ua={cookies:"cookies"};var Ha=([e])=>!e||typeof e!="string"?null:So("cookies",e),Va=Ha;var At={};p(At,{default:()=>Wa});var Ka=([e])=>Array.isArray(e)?Eo(e):typeof e=="string"?Eo(e.split("")).join(""):null;function Eo(e){let t=[...e];for(let r=t.length-1;r>0;r--){let o=Math.floor(Math.random()*(r+1));[t[r],t[o]]=[t[o],t[r]]}return t}var Wa=Ka;var St={};p(St,{default:()=>Ga});var Ja=([e,t])=>e<t,Ga=Ja;var Et={};p(Et,{default:()=>za});var Qa=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)%Number(t),za=Qa;var Ct={};p(Ct,{default:()=>Za});var Ya=([e])=>{if(!Array.isArray(e))return null;let t=new Set;return e.filter(r=>{let o=typeof r=="object"?JSON.stringify(r):r;return t.has(o)?!1:(t.add(o),!0)})},Za=Ya;var wt={};p(wt,{default:()=>es});var Xa=([e])=>typeof e!="string"?null:e.trim(),es=Xa;var Ft={};p(Ft,{default:()=>rs});var ts=([e,t])=>typeof t!="number"?null:JSON.stringify(e,null,t),rs=ts;var Rt={};p(Rt,{default:()=>ns});var os=e=>!Array.isArray(e)||e.some(t=>t===null||typeof t!="number")?null:e.reduce((t,r)=>t+Number(r),0),ns=os;var Dt={};p(Dt,{default:()=>ss});var as=([e,t,r])=>{if(typeof e!="number"||Number.isNaN(e))return null;let o=typeof t=="string"&&t.length>0||Array.isArray(t)&&t.every(E=>typeof E=="string")?t:void 0;if(!r||typeof r!="object")return Intl.NumberFormat(o).format(e);let n=(E,j)=>typeof E=="string"&&(j?.includes(E)??!0)?E:void 0,a=r,s=n(a.style,["decimal","currency","percent","unit"]),i=typeof a.currency=="string"&&a.currency.length===3?a.currency:void 0;if(s==="currency"&&typeof i!="string")return null;let l=n(a.currencyDisplay,["code","symbol","narrowSymbol","name"]),u=typeof a.unit=="string"?a.unit:void 0;if(s==="unit"&&typeof u!="string")return null;let m=n(a.unitDisplay,["short","narrow","long"]),c=typeof a.minimumIntegerDigits=="number"&&a.minimumIntegerDigits>=1&&a.minimumIntegerDigits<=21?a.minimumIntegerDigits:void 0,g=typeof a.minimumFractionDigits=="number"&&a.minimumFractionDigits>=0&&a.minimumFractionDigits<=100?a.minimumFractionDigits:void 0,d=typeof a.maximumFractionDigits=="number"&&a.maximumFractionDigits>=0&&a.maximumFractionDigits<=100?a.maximumFractionDigits:void 0,y=typeof a.minimumSignificantDigits=="number"&&a.minimumSignificantDigits>=1&&a.minimumSignificantDigits<=21?a.minimumSignificantDigits:void 0,S=typeof a.maximumSignificantDigits=="number"&&a.maximumSignificantDigits>=1&&a.maximumSignificantDigits<=21?a.maximumSignificantDigits:void 0,C=n(a.notation,["standard","scientific","engineering","compact"]),T=n(a.compactDisplay,["short","long"]),k=["always","auto","min2"],R=typeof a.useGrouping=="boolean"?a.useGrouping:n(a.useGrouping,k);return new Intl.NumberFormat(o,{style:s,currency:i,currencyDisplay:l,unit:u,unitDisplay:m,minimumIntegerDigits:c,minimumFractionDigits:g,maximumFractionDigits:d,minimumSignificantDigits:y,maximumSignificantDigits:S,notation:C,compactDisplay:T,useGrouping:R}).format(e)},ss=as;var Tt={};p(Tt,{default:()=>ls});var is=([e],{env:t,root:r})=>!e||typeof e!="string"?null:t.isServer?t.request.cookies[e]??null:r instanceof ShadowRoot?null:r.cookie.split("; ")?.find(o=>o.startsWith(`${e}=`))?.split("=")[1]??null,ls=is;var Ot={};p(Ot,{default:()=>cs});var us=([e,t])=>typeof e!="number"||typeof t!="number"?null:e>t?[]:Array.from({length:t-e+1},(r,o)=>o+e),cs=us;var jt={};p(jt,{default:()=>ps});var ds=([e])=>String(e),ps=ds;var xt={};p(xt,{default:()=>ms});var Nt=class{hostname;searchParams;path;hash;href;protocol;port;origin;constructor(t){this.hostname=t.hostname,this.searchParams=Object.fromEntries(t.searchParams),this.path=t.pathname.split("/").filter((r,o)=>o!==0||r!==""),this.hash=t.hash.replace("#",""),this.href=t.href,this.protocol=t.protocol,this.port=t.port,this.origin=t.origin}toString(){return this.href}},fs=([e,t])=>{if(typeof e!="string")return null;try{return new Nt(new URL(e,typeof t=="string"?t:void 0))}catch{return null}},ms=fs;var kt={};p(kt,{default:()=>hs});var gs=([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}},hs=gs;var Pt={};p(Pt,{default:()=>ys,getArgumentInputData:()=>bs,handler:()=>Co});var Co=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.find((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).find(([r,o])=>t({key:r,value:o}))?.[1]:null,ys=Co,bs=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var It={};p(It,{default:()=>As});var vs=([e,t,r])=>{if(!w(navigator.canShare))return!1;let o=a=>w(a)&&typeof a=="string";if(!o(e)&&!o(t)&&!o(r))return!1;let n={};return o(t)&&(n.title=t),o(r)&&(n.text=r),o(e)&&(n.url=e),navigator.canShare(n)},As=vs;var Mt={};p(Mt,{default:()=>Es});var Ss=([e])=>typeof e=="string"?new Date(e):null,Es=Ss;var Lt={};p(Lt,{default:()=>ws});var Cs=([e],{root:t})=>typeof e!="string"?null:t.getElementById(e),ws=Cs;var _t={};p(_t,{default:()=>Rs});var Fs=([e])=>Array.isArray(e)?e.flat():null,Rs=Fs;var $t={};p($t,{default:()=>Ts});var Ds=([e])=>typeof e!="string"?null:e.toLocaleLowerCase(),Ts=Ds;var qt={};p(qt,{default:()=>js});var Os=([e])=>Array.isArray(e)?[...e].reverse():null,js=Os;var Bt={};p(Bt,{default:()=>xs});var Ns=([e,t])=>Array.isArray(e)?e.join(String(t)):null,xs=Ns;var Ut={};p(Ut,{default:()=>Ps});var ks=e=>Math.min(...e.map(Number)),Ps=ks;var Ht={};p(Ht,{default:()=>Ms});var Is=([e])=>Number(e),Ms=Is;var Vt={};p(Vt,{default:()=>_s});var Ls=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)**Number(t),_s=Ls;var Kt={};p(Kt,{default:()=>Bs,getArgumentInputData:()=>qs});var $s=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.map((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([r,o])=>{let n=t({key:r,value:o});return"key"in n&&"value"in n?[n.key,n.value]:null})):null,qs=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r},Bs=$s;var Wt={};p(Wt,{default:()=>Hs});var Us=([e,t,r])=>typeof e!="string"||typeof t!="string"?null:e.replaceAll(t,String(r)),Hs=Us;var Jt={};p(Jt,{default:()=>Ws});var Vs=0,Ks=()=>`_id_${Vs++}_`,Ws=Ks;var Gt={};p(Gt,{default:()=>Gs});var Js=([e,t])=>e<=t,Gs=Js;var Qt={};p(Qt,{default:()=>zs});var Qs=([e])=>typeof e!="number"?null:Math.abs(e),zs=Qs;var zt={};p(zt,{default:()=>Zs});var Ys=([e])=>typeof e=="string"||Array.isArray(e)?e[0]:null,Zs=Ys;var Yt={};p(Yt,{default:()=>ei});var Xs=([e,t])=>{if(typeof e=="string")return e[Number(t)];let r=(o,n)=>{if(n.length===0)return o;let[a,...s]=n;return r(o?.[String(a)],s)};return r(e,Array.isArray(t)?t:[t])},ei=Xs;var Zt={};p(Zt,{default:()=>ri});var ti=([e,t,r,o,n])=>{if(typeof e!="string"||typeof t!="string")return[];let a=[P(r)?"g":"",P(o)?"i":"",P(n)?"m":""].join(""),s=new RegExp(t,a);return e.match(s)??[]},ri=ti;var Xt={};p(Xt,{default:()=>ni});var oi=e=>Math.max(...e.map(Number)),ni=oi;var er={};p(er,{default:()=>si});var ai=([e])=>typeof e!="string"?null:atob(e),si=ai;var tr={};p(tr,{default:()=>ii,getArgumentInputData:()=>li,handler:()=>wo});var wo=([e,t])=>{if(typeof t!="function"||!e||typeof e!="object")return null;let r=Array.isArray(e)?e:Object.entries(e),o={};for(let n=0;n<r.length;n++){let a=r[n],s=String(t({item:a,i:n}));o[s]=a}return o},ii=wo,li=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{value:o[1],key:o[0]}}}return r};var rr={};p(rr,{default:()=>ci});var ui=(e,{env:t})=>t.isServer?t.request?.headers["accept-language"]?.split(",").map(r=>r.split(";")[0]??"")??[]:window.navigator.languages,ci=ui;var or={};p(or,{default:()=>pi});var di=([e])=>typeof e=="string"||Array.isArray(e)?e[e.length-1]:null,pi=di;var nr={};p(nr,{default:()=>fi});var Fo=([e,t,r],o)=>{if(typeof t!="string"&&typeof t!="number"&&!Array.isArray(t))return null;let[n,...a]=Array.isArray(t)?t:[t];if(H(e)){let s=Array.isArray(e)?[...e]:{...e};return s[n]=a.length===0?r:Fo([s[n],a,r],o),s}return null},fi=Fo;var ar={};p(ar,{default:()=>gi});var mi=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.round(e*r)/r},gi=mi;var sr={};p(sr,{default:()=>hi,getArgumentInputData:()=>yi,handler:()=>Ro});var Ro=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.findIndex((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).findIndex(([r,o])=>t({key:r,value:o})):null,hi=Ro,yi=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var ir={};p(ir,{default:()=>vi});var bi=([e])=>P(e),vi=bi;var lr={};p(lr,{default:()=>Si});var Ai=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(e.length-t):typeof e=="string"?e.substring(e.length-t):null,Si=Ai;var ur={};p(ur,{default:()=>Ci});var Ei=([e,t,r])=>{if(!e||!(e instanceof Date))return null;let o=typeof t=="string"&&t.length>0||Array.isArray(t)&&t.every(E=>typeof E=="string")?t:void 0;if(!r||typeof r!="object")return Intl.DateTimeFormat(o).format(e);let n=(E,j)=>typeof E=="string"&&(j?.includes(E)??!0)?E:void 0,a=r,s=n(a.dateStyle,["full","long","medium","short"]),i=n(a.timeStyle,["full","long","medium","short"]),l=n(a.calendar),u=n(a.weekday,["long","short","narrow"]),m=n(a.era,["long","short","narrow"]),c=n(a.year,["numeric","2-digit"]),g=n(a.month,["long","short","narrow","numeric","2-digit"]),d=n(a.day,["numeric","2-digit"]),y=n(a.hour,["numeric","2-digit"]),S=n(a.minute,["numeric","2-digit"]),C=n(a.second,["numeric","2-digit"]),T=n(a.timeZoneName,["long","short","shortOffset","longOffset","shortGeneric","longGeneric"]),k=n(a.timeZone),R=a.hour12===!0?!0:a.hour12===!1?!1:void 0;return Intl.DateTimeFormat(o,{dateStyle:s,timeStyle:i,calendar:l,weekday:u,era:m,year:c,month:g,day:d,hour:y,minute:S,second:C,timeZoneName:T,timeZone:k,hour12:R}).format(e)},Ci=Ei;var cr={};p(cr,{default:()=>Fi});var wi=([e])=>typeof e!="number"?null:Math.sqrt(e),Fi=wi;var dr={};p(dr,{default:()=>Di});var Ri=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let t=window.sessionStorage.getItem(e);if(t===null)return t;try{return JSON.parse(t)}catch{return t}},Di=Ri;var pr={};p(pr,{default:()=>Oi});var Ti=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)/Number(t),Oi=Ti;var fr={};p(fr,{default:()=>Ni});var ji=([e,t])=>{let r=Number(e),o=Number(t);return isNaN(r)||isNaN(o)?null:r-o},Ni=ji;var mr={};p(mr,{default:()=>xi,getArgumentInputData:()=>ki,handler:()=>Do});var Do=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.every((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).every(([r,o])=>t({key:r,value:o})):null,xi=Do,ki=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var gr={};p(gr,{default:()=>Ii});var Pi=([e,t])=>!globalThis.toddle.isEqual(e,t),Ii=Pi;var hr={};p(hr,{default:()=>Li});var Mi=([e])=>typeof e=="object"&&e!==null?Object.entries(e).map(([t,r])=>({key:t,value:r})):null,Li=Mi;var yr={};p(yr,{default:()=>_i,getArgumentInputData:()=>$i,handler:()=>To});var To=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.filter((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).filter(([r,o])=>t({key:r,value:o}))):Array.isArray(e)?e.filter((r,o)=>t({item:r,index:o})):null,_i=To,$i=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{value:o[1],key:o[0]}}}return r};var br={};p(br,{default:()=>Bi});var qi=([e])=>typeof e!="string"?null:e.toLocaleUpperCase(),Bi=qi;var vr={};p(vr,{default:()=>Hi});var Ui=([e])=>{if(Array.isArray(e)){let t={};for(let{key:r,value:o}of e)t[r]=o;return t}return null},Hi=Ui;var Ar={};p(Ar,{default:()=>Ki});var Vi=([e,t,r])=>typeof e!="number"||typeof t!="number"||typeof r!="number"?null:Math.min(Math.max(e,t),r),Ki=Vi;var Sr={};p(Sr,{default:()=>Ji});var Wi=([e,t])=>typeof t!="number"||isNaN(t)?null:Array.isArray(e)?e.slice(t):typeof e=="string"?e.substring(t):null,Ji=Wi;var Er={};p(Er,{default:()=>Qi});var Gi=([e,t])=>{if(typeof e!="object"||e===null||!Array.isArray(t)&&typeof t!="string"&&typeof t!="number")return null;let r=(n,[a,...s])=>{if(Array.isArray(n)){let i=Number(a);return Number.isNaN(i)?n:s.length===0?n.filter((l,u)=>u!==Number(a)):n.map((l,u)=>u===i?r(n[i],s):l)}return H(n)?s.length===0?Object.fromEntries(Object.entries(n).filter(([i])=>i!==a)):typeof a!="string"&&typeof a!="number"?{...n}:{...n,[a]:r(n[a],s)}:null},o=Array.isArray(t)?t:[t];return r(e,o)},Qi=Gi;var Cr={};p(Cr,{default:()=>Yi});var zi=(e,t)=>t.env.isServer,Yi=zi;var wr={};p(wr,{default:()=>Xi});var Zi=(e,{env:t})=>t.isServer?t.request?.headers["user-agent"]??null:window.navigator.userAgent,Xi=Zi;var Fr={};p(Fr,{default:()=>tl});var el=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.split(t),tl=el;var Rr={};p(Rr,{default:()=>ol});var rl=()=>Math.random(),ol=rl;var Dr={};p(Dr,{default:()=>nl,getArgumentInputData:()=>al,handler:()=>Oo});var Oo=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.findLast((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).findLast(([r,o])=>t({key:r,value:o}))?.[1]:null,nl=Oo,al=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var Tr={};p(Tr,{default:()=>il});var sl=()=>new Date,il=sl;var Or={};p(Or,{default:()=>ul});var ll=([e])=>{if(Array.isArray(e)){let t=0;for(let r of e){if(isNaN(r)||typeof r!="number")return null;t+=r}return t}return null},ul=ll;var jr={};p(jr,{default:()=>dl});var cl=([e])=>typeof e!="string"?null:encodeURIComponent(e),dl=cl;var Nr={};p(Nr,{default:()=>fl});var pl=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let t=window.localStorage.getItem(e);if(t===null)return t;try{return JSON.parse(t)}catch{return t}},fl=pl;var xr={};p(xr,{default:()=>gl});var ml=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.ceil(e*r)/r},gl=ml;var kr={};p(kr,{default:()=>yl});var hl=([e])=>{if(typeof e!="string")return null;let t=e.at(0);return e.length===0||typeof t!="string"?e:t.toLocaleUpperCase()+e.substring(1).toLocaleLowerCase()},yl=hl;var Pr={};p(Pr,{default:()=>vl});var bl=([e,t])=>e>=t,vl=bl;var Ir={};p(Ir,{default:()=>Sl});var Al=([e])=>typeof e!="number"||Number.isNaN(e)||e<0?null:Math.log(e),Sl=Al;var Mr={};p(Mr,{default:()=>Cl});var El=([e])=>Array.isArray(e)?e.length:H(e)?Object.keys(e).length:typeof e=="string"?e.length:null,Cl=El;var Lr={};p(Lr,{default:()=>Fl});var wl=([e,t])=>Array.isArray(e)?[t,...e]:null,Fl=wl;var _r={};p(_r,{default:()=>Dl});var Rl=([e])=>typeof e!="string"?null:decodeURIComponent(e),Dl=Rl;var $r={};p($r,{default:()=>Ol});var Tl=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.floor(e*r)/r},Ol=Tl;var qr={};p(qr,{default:()=>jl,getArgumentInputData:()=>Nl,handler:()=>jo});var jo=([e,t])=>{if(typeof t!="function"||!e||typeof e!="object"||!Array.isArray(e))return null;let r={};for(let o in e){let n=e[o],a=String(t({item:n,index:o}));r[a]=r[a]??[],r[a].push(n)}return r},jl=jo,Nl=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0],index:0}}:r;var Br={};p(Br,{default:()=>kl});var xl=(e,{env:t})=>t.isServer?t.request.url:window?.location.href??null,kl=xl;var Ur={};p(Ur,{default:()=>Il});var Pl=(e,t)=>t.env.branchName,Il=Pl;var Hr={};p(Hr,{default:()=>Ll});var Ml=e=>{if(e.every(Array.isArray)){let t=[];for(let r of e)t.push(...r);return t}return e.every(H)?Object.assign({},...e):e.join("")},Ll=Ml;var Vr={};p(Vr,{default:()=>$l});var _l=([e,t])=>e>t,$l=_l;var Kr={};p(Kr,{default:()=>Bl});var ql=([e,t])=>{let r=isNaN(Number(t))?0:Number(t);return JSON.stringify(e,null,r)},Bl=ql;var Wr={};p(Wr,{default:()=>Hl});var Ul=([e,t])=>globalThis.toddle.isEqual(e,t),Hl=Ul;var Jr={};p(Jr,{default:()=>Kl});var Vl=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.startsWith(t),Kl=Vl;var Gr={};p(Gr,{default:()=>Jl});var Wl=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(0,t):typeof e=="string"?e.substring(0,t):null,Jl=Wl;var an=ge(pe(),1);function Gl(e){for(var t=[],r=0;r<e.length;){var o=e[r];if(o==="*"||o==="+"||o==="?"){t.push({type:"MODIFIER",index:r,value:e[r++]});continue}if(o==="\\"){t.push({type:"ESCAPED_CHAR",index:r++,value:e[r++]});continue}if(o==="{"){t.push({type:"OPEN",index:r,value:e[r++]});continue}if(o==="}"){t.push({type:"CLOSE",index:r,value:e[r++]});continue}if(o===":"){for(var n="",a=r+1;a<e.length;){var s=e.charCodeAt(a);if(s>=48&&s<=57||s>=65&&s<=90||s>=97&&s<=122||s===95){n+=e[a++];continue}break}if(!n)throw new TypeError("Missing parameter name at ".concat(r));t.push({type:"NAME",index:r,value:n}),r=a;continue}if(o==="("){var i=1,l="",a=r+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(i--,i===0){a++;break}}else if(e[a]==="("&&(i++,e[a+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(a));l+=e[a++]}if(i)throw new TypeError("Unbalanced pattern at ".concat(r));if(!l)throw new TypeError("Missing pattern at ".concat(r));t.push({type:"PATTERN",index:r,value:l}),r=a;continue}t.push({type:"CHAR",index:r,value:e[r++]})}return t.push({type:"END",index:r,value:""}),t}function xo(e,t){t===void 0&&(t={});for(var r=Gl(e),o=t.prefixes,n=o===void 0?"./":o,a=t.delimiter,s=a===void 0?"/#?":a,i=[],l=0,u=0,m="",c=function(b){if(u<r.length&&r[u].type===b)return r[u++].value},g=function(b){var h=c(b);if(h!==void 0)return h;var D=r[u],F=D.type,N=D.index;throw new TypeError("Unexpected ".concat(F," at ").concat(N,", expected ").concat(b))},d=function(){for(var b="",h;h=c("CHAR")||c("ESCAPED_CHAR");)b+=h;return b},y=function(b){for(var h=0,D=s;h<D.length;h++){var F=D[h];if(b.indexOf(F)>-1)return!0}return!1},S=function(b){var h=i[i.length-1],D=b||(h&&typeof h=="string"?h:"");if(h&&!D)throw new TypeError('Must have text between two parameters, missing text after "'.concat(h.name,'"'));return!D||y(D)?"[^".concat(Q(s),"]+?"):"(?:(?!".concat(Q(D),")[^").concat(Q(s),"])+?")};u<r.length;){var C=c("CHAR"),T=c("NAME"),k=c("PATTERN");if(T||k){var R=C||"";n.indexOf(R)===-1&&(m+=R,R=""),m&&(i.push(m),m=""),i.push({name:T||l++,prefix:R,suffix:"",pattern:k||S(R),modifier:c("MODIFIER")||""});continue}var E=C||c("ESCAPED_CHAR");if(E){m+=E;continue}m&&(i.push(m),m="");var j=c("OPEN");if(j){var R=d(),O=c("NAME")||"",f=c("PATTERN")||"",v=d();g("CLOSE"),i.push({name:O||(f?l++:""),pattern:O&&!f?S(R):f,prefix:R,suffix:v,modifier:c("MODIFIER")||""});continue}g("END")}return i}function ko(e,t){return Ql(xo(e,t),t)}function Ql(e,t){t===void 0&&(t={});var r=zr(t),o=t.encode,n=o===void 0?function(l){return l}:o,a=t.validate,s=a===void 0?!0:a,i=e.map(function(l){if(typeof l=="object")return new RegExp("^(?:".concat(l.pattern,")$"),r)});return function(l){for(var u="",m=0;m<e.length;m++){var c=e[m];if(typeof c=="string"){u+=c;continue}var g=l?l[c.name]:void 0,d=c.modifier==="?"||c.modifier==="*",y=c.modifier==="*"||c.modifier==="+";if(Array.isArray(g)){if(!y)throw new TypeError('Expected "'.concat(c.name,'" to not repeat, but got an array'));if(g.length===0){if(d)continue;throw new TypeError('Expected "'.concat(c.name,'" to not be empty'))}for(var S=0;S<g.length;S++){var C=n(g[S],c);if(s&&!i[m].test(C))throw new TypeError('Expected all "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(C,'"'));u+=c.prefix+C+c.suffix}continue}if(typeof g=="string"||typeof g=="number"){var C=n(String(g),c);if(s&&!i[m].test(C))throw new TypeError('Expected "'.concat(c.name,'" to match "').concat(c.pattern,'", but got "').concat(C,'"'));u+=c.prefix+C+c.suffix;continue}if(!d){var T=y?"an array":"a string";throw new TypeError('Expected "'.concat(c.name,'" to be ').concat(T))}}return u}}function Po(e,t){var r=[],o=Io(e,r,t);return zl(o,r,t)}function zl(e,t,r){r===void 0&&(r={});var o=r.decode,n=o===void 0?function(a){return a}:o;return function(a){var s=e.exec(a);if(!s)return!1;for(var i=s[0],l=s.index,u=Object.create(null),m=function(g){if(s[g]===void 0)return"continue";var d=t[g-1];d.modifier==="*"||d.modifier==="+"?u[d.name]=s[g].split(d.prefix+d.suffix).map(function(y){return n(y,d)}):u[d.name]=n(s[g],d)},c=1;c<s.length;c++)m(c);return{path:i,index:l,params:u}}}function Q(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function zr(e){return e&&e.sensitive?"":"i"}function Yl(e,t){if(!t)return e;for(var r=/\((?:\?<(.*?)>)?(?!\?)/g,o=0,n=r.exec(e.source);n;)t.push({name:n[1]||o++,prefix:"",suffix:"",modifier:"",pattern:""}),n=r.exec(e.source);return e}function Zl(e,t,r){var o=e.map(function(n){return Io(n,t,r).source});return new RegExp("(?:".concat(o.join("|"),")"),zr(r))}function Xl(e,t,r){return eu(xo(e,r),t,r)}function eu(e,t,r){r===void 0&&(r={});for(var o=r.strict,n=o===void 0?!1:o,a=r.start,s=a===void 0?!0:a,i=r.end,l=i===void 0?!0:i,u=r.encode,m=u===void 0?function(h){return h}:u,c=r.delimiter,g=c===void 0?"/#?":c,d=r.endsWith,y=d===void 0?"":d,S="[".concat(Q(y),"]|$"),C="[".concat(Q(g),"]"),T=s?"^":"",k=0,R=e;k<R.length;k++){var E=R[k];if(typeof E=="string")T+=Q(m(E));else{var j=Q(m(E.prefix)),O=Q(m(E.suffix));if(E.pattern)if(t&&t.push(E),j||O)if(E.modifier==="+"||E.modifier==="*"){var f=E.modifier==="*"?"?":"";T+="(?:".concat(j,"((?:").concat(E.pattern,")(?:").concat(O).concat(j,"(?:").concat(E.pattern,"))*)").concat(O,")").concat(f)}else T+="(?:".concat(j,"(").concat(E.pattern,")").concat(O,")").concat(E.modifier);else{if(E.modifier==="+"||E.modifier==="*")throw new TypeError('Can not repeat "'.concat(E.name,'" without a prefix and suffix'));T+="(".concat(E.pattern,")").concat(E.modifier)}else T+="(?:".concat(j).concat(O,")").concat(E.modifier)}}if(l)n||(T+="".concat(C,"?")),T+=r.endsWith?"(?=".concat(S,")"):"$";else{var v=e[e.length-1],b=typeof v=="string"?C.indexOf(v[v.length-1])>-1:v===void 0;n||(T+="(?:".concat(C,"(?=").concat(S,"))?")),b||(T+="(?=".concat(C,"|").concat(S,")"))}return new RegExp(T,zr(r))}function Io(e,t,r){return e instanceof RegExp?Yl(e,t):Array.isArray(e)?Zl(e,t,r):Xl(e,t,r)}var X=e=>"triggerActions"in e,we=class{abortControllers=[];applyAbortSignal=t=>{let r=new AbortController;return this.abortControllers.push(r),this.cleanupAbortedControllers(),{...t,signal:t.signal?AbortSignal.any([t.signal,r.signal]):r.signal}};abort=()=>{this.abortControllers.forEach(t=>{t.abort()}),this.abortControllers=[]};cleanupAbortedControllers=()=>{this.abortControllers=this.abortControllers.filter(t=>!t.signal.aborted)}};var Mo=ge(pe(),1);var fe=({query:e,page:t,route:r,params:o,hash:n})=>{let a;if(r){let l=[];for(let u of r.path)if(u.type==="static")l.push(u.name);else{let m=o[u.name];if(w(m))l.push(m);else break}a="/"+l.join("/")}else a=ko(t,{encode:encodeURIComponent})(o);let s=n===void 0||n===""?"":"#"+n,i=Object.entries(e).filter(([l,u])=>u!==null).map(([l,u])=>`${encodeURIComponent(r?.query[l]?.name??l)}=${encodeURIComponent(String(u))}`).join("&");return`${a}${s}${i.length>0?"?"+i:""}`};function M(e,t,r,o,n){try{if(!e)throw new Error("Action does not exist");switch(e.type){case"Switch":{let a=e.cases?.find(({condition:s})=>P(A(s,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})))??e.default;for(let s of a?.actions??[])M(s,{...t,...r.dataSignal.get()},r,o,n);break}case"SetVariable":{let a=A(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env});r.dataSignal.update(s=>({...s,Variables:{...s.Variables,[e.variable]:a}}));break}case"TriggerEvent":{let a=A(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env});r.triggerEvent(e.event,a);break}case"TriggerWorkflowCallback":{let a=A(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env});n?.(e.event,a);break}case"SetURLParameter":{r.toddle.locationSignal.update(a=>{let s=A(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}),i,l;if(a.route?.path.some(c=>c.name===e.parameter)?(i="push",l={...a,params:{...Y(a.params,[e.parameter]),[e.parameter]:s}}):(i="replace",l={...a,query:{...Y(a.query,[e.parameter]),...w(s)?{[e.parameter]:s}:null}}),!i)return a;let u=fe(a),m=fe(l);return m!==u&&(i=e.historyMode??i,i==="push"?window.history.pushState({},"",m):window.history.replaceState({},"",m)),l});break}case"SetURLParameters":{let a=Object.entries(e.parameters??{});if(a.length===0)return;r.toddle.locationSignal.update(s=>{if(!s.route)return s;let i="replace",l={},u={},m={data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env},c=C=>s.route?.path.some(T=>T.name===C&&T.type==="param"),g=C=>Object.values(s.route?.query??{}).some(T=>T.name===C);for(let[C,T]of a){let k=A(T,m)??null;c(C)?(i="push",u[C]=k):g(C)&&(l[C]=k)}if(Object.keys(u).length===0&&Object.keys(l).length===0)return s;let d={...s,params:{...Y(s.params,Object.keys(u)),...u},query:{...Y(s.query,Object.keys(l)),...l}};if((0,Mo.default)(d,s))return s;let y=fe(s),S=fe(d);return S!==y&&(i=e.historyMode??i,i==="push"?window.history.pushState({},"",S):window.history.replaceState({},"",S)),d});break}case"Fetch":{let a=r.apis[e.api];if(!a){console.error("The api ",e.api,"does not exist");return}if(X(a)){let s=ue(e.inputs??{},l=>A(l.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})),i={onCompleted:e.onSuccess?.actions??[],onFailed:e.onError?.actions??[],onMessage:e.onMessage?.actions??[]};a.fetch({actionInputs:s,actionModels:i,componentData:t,workflowCallback:n})}else{let s=i=>{for(let l of i)M(l,{...t,...r.dataSignal.get()},r,o,n)};a.fetch().then(()=>{s(e.onSuccess?.actions??[])},()=>{s(e.onError?.actions??[])})}break}case"AbortFetch":{let a=r.apis[e.api];if(!a){console.error("The api ",e.api,"does not exist");return}X(a)?a.cancel():console.warn(`AbortFetch action is not supported for API "${e.api}" as it is not a v2 API.`);break}case"TriggerWorkflow":{let a=ue(e.parameters??{},l=>A(l.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})),s=e.callbacks;if(e.contextProvider){let l=r.providers[[r.package,e.contextProvider].filter(w).join("/")]??r.providers[e.contextProvider],u=l?.component.workflows?.[e.workflow];if(!u){l&&console.warn(`Cannot find workflow "${e.workflow}" on component "${e.contextProvider}". It has likely been removed or modified.`);return}u.actions.forEach(m=>M(m,{...t,...l.ctx.dataSignal.get(),Parameters:a},l.ctx,o,(c,g)=>{s?.[c]?.actions?.forEach(y=>M(y,{...t,...r.dataSignal.get(),Parameters:a,Event:g},r,o,n))}));return}let i=r.component.workflows?.[e.workflow];if(!i){console.warn(`Workflow ${e.workflow} does not exist on component ${r.component.name}`);return}i.actions.forEach(l=>M(l,{...t,...r.dataSignal.get(),Parameters:a},r,o,(u,m)=>{s?.[u]?.actions?.forEach(g=>M(g,{...t,...r.dataSignal.get(),Parameters:a,Event:m},r,o,n))}));break}default:try{let a=(i,l)=>{let u=e.events?.[i];u&&u.actions?.forEach(m=>M(m,l?{...t,...r.dataSignal.get(),Event:l}:{...t,...r.dataSignal.get()},r,l??o,n))},s=e.version===2?(r.toddle.getCustomAction??r.toddle.getCustomAction)(e.name,e.package??r.package):void 0;if(s){let i=(e.arguments??[]).reduce((u,m)=>m?{...u,[m.name]:A(m.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})}:u,{}),l=s.handler?.(i,{root:r.root,triggerActionEvent:a},o);return l&&(typeof l=="function"||l instanceof Promise)&&r.dataSignal.subscribe(u=>u,{destroy:()=>{l instanceof Promise?l.then(u=>{typeof u=="function"&&u()}).catch(u=>console.error(u)):l()}}),l}else{let i=r.toddle.getAction(e.name);if(!i){console.error("Missing custom action",e.name);return}let l=e.arguments?.map(u=>A(u?.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}))??[A(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})];return i(l,{...r,triggerActionEvent:a},o)}}catch(a){console.error("Error in Custom Action",a)}}}catch(a){return console.error(a),null}}function Fe(e,t){let r=null;function o(c,g){let d={data:g,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env},y=A(c.url,d)??"",S=c.path&&c.path.length>0?"/"+c.path.map(O=>A(O.formula,d)).join("/"):"",C=Object.values(c.queryParams??{}),T=C.length>0?"?"+C.map(O=>`${O.name}=${encodeURIComponent(A(O.formula,d))}`).join("&"):"",k=J(c.headers)?A(c.headers,{data:g,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}):ue(c.headers??{},O=>A(O,{data:g,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})),R=String(Object.entries(k).find(([O])=>O.toLocaleLowerCase()==="content-type")?.[1]),E=c.method??"GET",j=c.body&&["POST","PUT","PATCH","DELETE"].includes(E)?a(A(c.body,{data:g,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}),R):void 0;return{url:y+S+T,method:E,auth:c.auth,headers:k,body:j}}async function n(c){let g=await c.text();try{return de(g)}catch{return g}}function a(c,g){switch(g){case"application/x-www-form-urlencoded":return typeof c=="object"&&c!==null?Object.entries(c).map(([d,y])=>Array.isArray(y)?y.map(S=>`${encodeURIComponent(d)}=${encodeURIComponent(S)}`).join("&"):`${encodeURIComponent(d)}=${encodeURIComponent(String(y))}`).join("&"):"";case"multipart/form-data":{let d=new FormData;return typeof c=="object"&&c!==null&&Object.entries(c).forEach(([y,S])=>{d.set(y,S)}),d}case"text/plain":return String(c);default:return JSON.stringify(c)}}function s(c){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:c,error:null,isLoading:!1}}}),e.onCompleted?.actions?.forEach(g=>{M(g,t.dataSignal.get(),t)})}function i(c){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:null,isLoading:!1,error:c}}}),e.onFailed?.actions?.forEach(g=>{M(g,t.dataSignal.get(),t)})}async function l(c){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:t.dataSignal.get().Apis?.[e.name]?.data??null,isLoading:!0,error:null}}});let g;try{e.proxy===!1?g=await fetch(c.url,{method:c.method,headers:c.headers,body:c.body}):g=await fetch(`/_query/${encodeURIComponent(t.component.name)}.${encodeURIComponent(e.name)}`,{method:"POST",body:JSON.stringify(c),signal:t.abortSignal,headers:{"Content-Type":"application/json"}});let d=await n(g);if(g.ok)s(d);else throw d}catch(d){return i(d),Promise.reject(d)}}function u(c){return typeof e.debounce=="number"?new Promise((g,d)=>{typeof r=="number"&&clearTimeout(r),r=setTimeout(()=>{l(c).then(g,d)},e.debounce)}):typeof e.throttle=="number"?typeof r=="number"?new Promise(()=>{}):(r=setTimeout(()=>{typeof r=="number"&&clearTimeout(r)},e.throttle),l(c)):l(c)}let m;if(t.dataSignal.update(c=>({...c,Apis:{...c.Apis??{},[e.name]:c.Apis?.[e.name]??{data:null,isLoading:!!(e.autoFetch&&A(e.autoFetch,{data:t.dataSignal.get(),component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})),error:null}}})),e.autoFetch){m=t.dataSignal.map(g=>o(e,g));let c=!0;m.subscribe(g=>{if(e.autoFetch&&A(e.autoFetch,{data:t.dataSignal.get(),component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}))if(c&&t.isRootComponent){c=!1;let d=t.toddle?.pageState?.Apis?.[e.name];d?.data?typeof d.data=="string"?s(de(d.data)):s(d.data):u(g)}else u(g)})}return{fetch:c=>{let g=o(e,t.dataSignal.get()),d=g.body,y=new Headers({...g.headers,...c?.headers??{}});c?.body&&(d=a(c.body,y.get("Content-Type")??void 0)),d instanceof FormData&&y.delete("Content-Type");let S={url:c?.url??g.url,method:c?.method??g.method,auth:c?.auth??g.auth,headers:Z(y),body:d};return u(S)},destroy:()=>m?.destroy()}}var Lo=({path:e,origin:t})=>{if(typeof e!="string")return!1;try{let r=new URL(e,t),o=new URLSearchParams(r.searchParams);return o.forEach((n,a)=>{r.searchParams.delete(a,n)}),o.forEach((n,a)=>{r.searchParams.append(a,n)}),r}catch{return!1}},_o="x-nordcraft-url",$o="x-nordcraft-templates-in-body";function Re({apiRequest:e,componentData:t,ctx:r}){let o=null,n={...e};function a(f,v){let b=window.origin;try{new URL(b)}catch{b=void 0}let h=go({api:f,formulaContext:s(f,v),baseUrl:b,defaultHeaders:void 0});return{...h,requestSettings:{...h.requestSettings,credentials:f.client?.credentials&&["include","same-origin","omit"].includes(f.client.credentials)?f.client.credentials:void 0}}}function s(f,v){let b={data:r.dataSignal.get(),component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env},h=Object.entries(f.inputs).reduce((F,[N,_])=>(F[N]=A(_.formula,b),F),{}),D={...v,...b.data,ApiInputs:{...h}};return{component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,data:D,toddle:r.toddle,env:r.env}}function i(f,v){for(let[b,h]of be(f.redirectRules??{},([D,F])=>F.index)){let D=s(f,v),F=A(h.formula,{...D,data:{...D.data,Apis:{[f.name]:r.dataSignal.get().Apis?.[f.name]}}});if(typeof F=="string"){let N=Lo({path:F,origin:window.location.origin});if(N){if(r.env.runtime==="preview")return window.parent?.postMessage({type:"blockedNavigation",url:N.href},"*"),{name:b,index:h.index,url:N};window.location.replace(N.href)}}}}function l({eventName:f,api:v,data:b,componentData:h,workflowCallback:D}){switch(f){case"message":{let F=Ee("message",b.body);v.client?.onMessage?.actions?.forEach(N=>{M(N,{...s(v,h).data,Event:F},r,F,D)});break}case"success":{let F=Ee("success",b.body);v.client?.onCompleted?.actions?.forEach(N=>{M(N,{...s(v,h).data,Event:F},r,F,D)});break}case"failed":{let F=Ee("failed",{error:b.body,status:b.status});v.client?.onFailed?.actions?.forEach(N=>{M(N,{...s(v,h).data,Event:F},r,F,D)});break}}}function u({api:f,componentData:v,data:b,performance:h}){let D=r.dataSignal.get().Apis?.[f.name]?.response?.performance?.requestStart;if(typeof D=="number"&&D>(h.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!1,data:b.body,error:null,response:{status:b.status,headers:b.headers,performance:h}}}});let F=i(f,v);F&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!1,data:b.body,error:null,response:{status:b.status,headers:b.headers,performance:h,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:F}}:{}}}}})}function m({api:f,componentData:v,data:b,performance:h}){let D=r.dataSignal.get().Apis?.[f.name]?.response?.performance?.requestStart;if(typeof D=="number"&&D>(h.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!1,data:null,error:b.body,response:{status:b.status,headers:b.headers,performance:h}}}});let F=i(f,v);F&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!1,data:null,error:b.body,response:{status:b.status,headers:b.headers,performance:h,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:F}}:{}}}}})}async function c({api:f,url:v,requestSettings:b,componentData:h,workflowCallback:D}){let F=async()=>{let N={requestStart:Date.now(),responseStart:null,responseEnd:null};r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!0,data:r.dataSignal.get().Apis?.[f.name]?.data??null,error:null}}});let _;try{let L=f.server?.proxy?A(f.server.proxy.enabled.formula,s(f,h))??!1:!1;if(b=O.applyAbortSignal(b),L===!1)_=await fetch(v,b);else{let $=`/.toddle/omvej/components/${encodeURIComponent(r.component.name)}/apis/${encodeURIComponent(r.component.name)}:${encodeURIComponent(f.name)}`,I=new Headers(b.headers);I.set(_o,decodeURIComponent(v.href.replace(/\+/g," "))),P(A(f.server?.proxy?.useTemplatesInBody?.formula,s(f,h)))&&I.set($o,"true"),b.headers=I,_=await fetch($,b)}N.responseStart=Date.now(),await g({api:f,componentData:h,res:_,performance:N,workflowCallback:D});return}catch(L){let $="Unknown error";return L instanceof Error&&($=L.cause?{message:L.message,data:L.cause}:L.message,L.name==="TimeoutError"||L.name==="AbortError"&&($="Request was aborted")),m({api:f,componentData:h,data:{body:$},performance:{...N,responseEnd:Date.now()}}),l({eventName:"failed",api:f,data:{body:$},componentData:h,workflowCallback:D}),Promise.reject(L)}};return f.client?.debounce?.formula?new Promise((N,_)=>{typeof o=="number"&&clearTimeout(o),o=setTimeout(()=>{F().then(N,_)},A(f.client?.debounce?.formula,s(f,h)))}):F()}function g({api:f,componentData:v,res:b,performance:h,workflowCallback:D}){let F=f.client?.parserMode??"auto";if(F==="auto"){let N=b.headers.get("content-type");po(N)?F="event-stream":ve(N)?F="json":co(N)?F="text":fo(N)?F="json-stream":mo(N)?F="blob":F="text"}switch(F){case"text":return d({api:f,componentData:v,res:b,performance:h,workflowCallback:D});case"json":return S({api:f,componentData:v,res:b,performance:h,workflowCallback:D});case"event-stream":return T({api:f,componentData:v,res:b,performance:h,workflowCallback:D});case"json-stream":return y({api:f,componentData:v,res:b,performance:h,workflowCallback:D});case"blob":return C({api:f,componentData:v,res:b,performance:h,workflowCallback:D});default:return d({api:f,componentData:v,res:b,performance:h,workflowCallback:D})}}function d({api:f,res:v,performance:b,componentData:h,workflowCallback:D}){return k({api:f,res:v,performance:b,streamType:"text",useTextDecoder:!0,parseChunk:F=>F,parseChunksForData:F=>F.join(""),componentData:h,workflowCallback:D})}function y({api:f,res:v,performance:b,componentData:h,workflowCallback:D}){return k({api:f,res:v,performance:b,streamType:"json",useTextDecoder:!0,parseChunk:N=>{let _=N;try{_=JSON.parse(N)}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:_})}return _},parseChunksForData:N=>[...N],delimiters:[`\r
1
+ var An=Object.create;var xe=Object.defineProperty;var Sn=Object.getOwnPropertyDescriptor;var Cn=Object.getOwnPropertyNames;var Fn=Object.getPrototypeOf,wn=Object.prototype.hasOwnProperty;var Rn=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),m=(e,t)=>{for(var r in t)xe(e,r,{get:t[r],enumerable:!0})},jn=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Cn(t))!wn.call(e,n)&&n!==r&&xe(e,n,{get:()=>t[n],enumerable:!(o=Sn(t,n))||o.enumerable});return e};var fe=(e,t,r)=>(r=e!=null?An(Fn(e)):{},jn(t||!e||!e.__esModule?xe(r,"default",{value:e,enumerable:!0}):r,e));var de=Rn((sd,Ho)=>{"use strict";Ho.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var o,n,a;if(Array.isArray(t)){if(o=t.length,o!=r.length)return!1;for(n=o;n--!==0;)if(!e(t[n],r[n]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(a=Object.keys(t),o=a.length,o!==Object.keys(r).length)return!1;for(n=o;n--!==0;)if(!Object.prototype.hasOwnProperty.call(r,a[n]))return!1;for(n=o;n--!==0;){var s=a[n];if(!e(t[s],r[s]))return!1}return!0}return t!==t&&r!==r}});var w=e=>e!=null,H=e=>typeof e=="object"&&e!==null,x=e=>e!==!1&&e!==void 0&&e!==null;var no=(e,t)=>{for(let r=0;r<(e.arguments??[]).length;r++){let o=(e.arguments??[])[r];if(!x(v(o?.formula,t,["arguments",r,"formula"])))return!1}return!0},ao=(e,t)=>{let r=!0;if(!e.arguments||e.arguments.length===0)return r;for(let o=0;o<(e.arguments??[]).length;o++){let n=(e.arguments??[])[o];x(v(n?.formula,t,["arguments",o,"formula"]))||(r=!1)}return r};var z=typeof globalThis<"u"?globalThis:window;z.__nc_measure_max_depth=10;z.__nc_measure_enabled=typeof sessionStorage<"u"&&sessionStorage.getItem("__nc_measure")==="true";z.__nc_enableMeasure=(e=!0,t=10)=>{e?sessionStorage.setItem("__nc_measure","true"):sessionStorage.removeItem("__nc_measure"),z.__nc_measure_enabled=e,z.__nc_measure_max_depth=t};var so=0,ge=[],io=()=>{},ne=(e,t)=>{if(!z.__nc_measure_enabled)return io;let r=so++;if(ge.length>=z.__nc_measure_max_depth)return io;let o=performance.now();ge.push(e);let n=!1;return a=>{if(n)return;n=!0;let s=performance.now(),l=a?{...t,...a}:t;performance.measure(e,{start:o,end:s,detail:{devtools:{dataType:"track-entry",track:"Nordcraft devtools",properties:[...Object.entries(l).map(([i,u])=>[i,String(u)]),["Stack",ge.join(" > ")],["Measure index",r],["Sub-measures",so-r]],tooltipText:`${r}. ${e}`}}}),ge.pop()}};var lo=(e,t)=>{let r=t.component?.formulas?.[e.name];if(!r)return t.env?.logErrors&&console.log("Component does not have a formula with the name ",e.name),null;let o=ne(`Formula: ${r.name}`,{formula:e,component:t.component?.name}),n=Object.fromEntries((e.arguments??[]).map((l,i)=>l.isFunction?[l.name,u=>v(l.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}},["arguments",i])]:[l.name,v(l.formula,t,["arguments",i])])),a={...t.data,Args:t.data.Args?{...n,"@toddle.parent":t.data.Args}:n},s=t.formulaCache?.[e.name]?.get(a);if(s?.hit)return o({cache:"hit"}),s.data;{let l=v(r.formula,{...t,data:a},["formula"]);return t.formulaCache?.[e.name]?.set(a,l),o({cache:"miss"}),l}};var uo=(e,t)=>(e.arguments??[]).map((r,o)=>v(r.formula,t,["arguments",o,"formula"]));var po=(e,t)=>{let r=ne(`Formula: ${e.name}`,{formula:e,component:t.component?.name}),o=e.package??t.package??void 0,n=(t.toddle??globalThis.toddle)?.getCustomFormula(e.name,o);if(w(n)){t.package=o;let a=(e.arguments??[]).reduce((s,l,i)=>({...s,[l.name??`${i}`]:l.isFunction?u=>v(l.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}},["arguments",i]):v(l.formula,t,["arguments",i])}),{});try{return he(n)?v(n.formula,{...t,data:{...t.data,Args:a}},["formula"]):n.handler(a,{root:t.root??document,env:t.env})}catch(s){return t.toddle.errors.push(s),t.env?.logErrors&&console.error(s),null}finally{r()}}else{let a=(t.toddle??globalThis.toddle).getFormula(e.name);if(typeof a=="function"){let s=(e.arguments??[]).map((l,i)=>l.isFunction?u=>v(l.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}},["arguments",i]):v(l.formula,t,["arguments",i]));try{return a(s,t)}catch(l){return t.toddle.errors.push(l),t.env?.logErrors&&console.error(l),null}finally{r()}}}return t.env?.logErrors&&console.error(`Could not find formula ${e.name} in package ${o??""}`,e),null};var co=(e,t)=>Object.fromEntries(e.arguments?.map((r,o)=>[r.name,v(r.formula,t,["arguments",o,"formula"])])??[]);var mo=(e,t)=>{for(let r=0;r<(e.arguments??[]).length;r++){let o=(e.arguments??[])[r];if(x(v(o?.formula,t,["arguments",r,"formula"])))return!0}return!1},fo=(e,t)=>{let r=!1;for(let o=0;o<(e.arguments??[]).length;o++){let n=(e.arguments??[])[o],a=v(n?.formula,t,["arguments",o,"formula"]);x(a)&&(r=!0)}return r};var go=(e,t)=>{let r=t;for(let o of e.path)if(r&&typeof r=="object")r=r[o];else return null;return r};var ho=(e,t)=>Object.fromEntries((e.entries??[]).map((r,o)=>[r.name,v(r.formula,t,["entries",o,"formula"])]));var yo=(e,t)=>{for(let r=0;r<(e.cases??[]).length;r++){let o=(e.cases??[])[r];if(x(v(o?.condition,t,["cases",r,"condition"])))return v(o?.formula,t,["cases",r,"formula"])}return v(e.default,t,["default"])},bo=(e,t)=>{let r=null;for(let n=0;n<(e.cases??[]).length;n++){let a=(e.cases??[])[n],s=v(a?.condition,t,["cases",n,"condition"]),l=v(a?.formula,t,["cases",n,"formula"]);x(s)&&r===null&&(r={match:!0,value:l})}let o=v(e.default,t,["default"]);return r!==null?r.value:o};function J(e){return e&&typeof e=="object"&&typeof e.type=="string"&&["path","function","record","object","array","or","and","apply","value","switch"].includes(e.type)}var he=e=>Object.hasOwn(e,"formula")&&w(e.formula);function v(e,t,r){let o=[...t?.jsonPath??[],...r??[]],n={...t,jsonPath:o},a=(s,l=o)=>(n?.reportFormulaEvaluation?.(l,s),s);if(!J(e))return a(e);try{switch(e.type){case"value":return a(e.value);case"path":return a(go(e,n.data));case"switch":return n.reportFormulaEvaluation?a(bo(e,n)):yo(e,n);case"or":return n.reportFormulaEvaluation?a(fo(e,n)):mo(e,n);case"and":return n.reportFormulaEvaluation?a(ao(e,n)):no(e,n);case"object":return a(co(e,n));case"record":return a(ho(e,n));case"array":return a(uo(e,n));case"function":return a(po(e,n));case"apply":return a(lo(e,n));default:n.env?.logErrors&&console.error("Could not recognize formula",e)}}catch(s){return n.env?.logErrors&&console.error(s),a(null)}return a(void 0)}var q=(e,t)=>{let r={};for(let o in e){let[n,a]=t([o,e[o]]);r[n]=a}return r};var vo=(e,[t,...r])=>{if(r.length>0){let n=Array.isArray(e)?[...e]:{...e};return w(t)&&(n[t]=vo(n[t],r)),n}if(Array.isArray(e))return e.toSpliced(Number(t),1);let o={...e};return w(t)&&delete o[t],o},Y=(e,t)=>Object.fromEntries(Object.entries(e).filter(([r])=>!t.includes(r))),Eo=(e,t)=>t.reduce((r,o)=>vo(r,o),{...e});var Ao=(e,t)=>Object.fromEntries(Object.entries(e).filter(t));function ye(e,[t,...r]){let o=w(t)?e?.[t]:void 0;return r.length===0?o:ye(o,r)}var be=(e,t,r=!0)=>Dn(Object.entries(e),t,r),Dn=(e,t,r=!0)=>[...e].sort((o,n)=>{let a=t(o),s=t(n);return a===s?0:(a>s?1:-1)*(r?1:-1)});var So=(e,t=0)=>{let r=3735928559^t,o=1103547991^t;for(let n=0,a;n<e.length;n++)a=e.charCodeAt(n),r=Math.imul(r^a,2654435761),o=Math.imul(o^a,1597334677);return r=Math.imul(r^r>>>16,2246822507),r^=Math.imul(o^o>>>13,3266489909),o=Math.imul(o^o>>>16,2246822507),o^=Math.imul(r^r>>>13,3266489909),4294967296*(2097151&o)+(r>>>0)};var V;(function(e){e.GET="GET",e.POST="POST",e.DELETE="DELETE",e.PUT="PUT",e.PATCH="PATCH",e.HEAD="HEAD",e.OPTIONS="OPTIONS"})(V||(V={}));var ve=e=>typeof e!="string"?!1:/^application\/(json|.*\+json)/.test(e),Co=e=>typeof e!="string"?!1:/^(text\/|application\/x-www-form-urlencoded|application\/(xml|.*\+xml))/.test(e),Fo=e=>typeof e!="string"?!1:/^text\/event-stream/.test(e),wo=e=>typeof e!="string"?!1:/^(application\/stream\+json|application\/x-ndjson)/.test(e),Ro=e=>typeof e!="string"?!1:/^image\//.test(e),Z=e=>{let t={};for(let[r,o]of e.entries())t[r]?t[r]+=`, ${o}`:t[r]=o;return t};function*k({formula:e,globalFormulas:t,path:r,visitedFormulas:o,packageName:n}){if(!w(e))return;let a=r??[],s=o??new Set;switch(yield{path:a,formula:e,packageName:n??void 0},e.type){case"path":case"value":break;case"record":for(let[l,i]of(e.entries??[]).entries())yield*k({formula:i.formula,globalFormulas:t,path:[...a,"entries",l,"formula"],visitedFormulas:s,packageName:n});break;case"function":{let l=e.package??n,i=[l,e.name].filter(w).join("/"),u=!s.has(i);s.add(i);let g=l?t.packages?.[l]?.formulas?.[e.name]:t.formulas?.[e.name];for(let[p,h]of(e.arguments??[]).entries())yield*k({formula:h.formula,globalFormulas:t,path:[...a,"arguments",p,"formula"],visitedFormulas:s,packageName:n});g&&he(g)&&u&&(yield*k({formula:g.formula,globalFormulas:t,path:l?["packages",l,"formulas",e.name]:["formulas",e.name],visitedFormulas:s,packageName:l}));break}case"array":case"or":case"and":case"object":for(let[l,i]of(e.arguments??[]).entries())yield*k({formula:i.formula,globalFormulas:t,path:[...a,"arguments",l,"formula"],visitedFormulas:s,packageName:n});break;case"apply":for(let[l,i]of(e.arguments??[]).entries())yield*k({formula:i.formula,globalFormulas:t,path:[...a,"arguments",l,"formula"],visitedFormulas:s,packageName:n});break;case"switch":for(let[l,i]of e.cases?.entries()??[])yield*k({formula:i.condition,globalFormulas:t,path:[...a,"cases",l,"condition"],visitedFormulas:s,packageName:n}),yield*k({formula:i.formula,globalFormulas:t,path:[...a,"cases",l,"formula"],visitedFormulas:s,packageName:n});yield*k({formula:e.default,globalFormulas:t,path:[...a,"default"],visitedFormulas:s,packageName:n});break}}function*B({action:e,globalFormulas:t,path:r,visitedFormulas:o=new Set,packageName:n}){if(!w(e))return;let a=r??[];switch(e.type){case"AbortFetch":break;case"Fetch":for(let[s,l]of Object.entries(e.inputs??{}))yield*k({formula:l.formula,globalFormulas:t,path:[...a,"input",s,"formula"],visitedFormulas:o,packageName:n});for(let[s,l]of Object.entries(e.onSuccess?.actions??{}))yield*B({action:l,globalFormulas:t,path:[...a,"onSuccess","actions",s],visitedFormulas:o,packageName:n});for(let[s,l]of Object.entries(e.onError?.actions??{}))yield*B({action:l,globalFormulas:t,path:[...a,"onError","actions",s],visitedFormulas:o,packageName:n});for(let[s,l]of Object.entries(e.onMessage?.actions??{}))yield*B({action:l,globalFormulas:t,path:[...a,"onMessage","actions",s],visitedFormulas:o,packageName:n});break;case"Custom":case void 0:case null:{J(e.data)&&(yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n}));for(let[s,l]of Object.entries(e.arguments??{}))l&&(yield*k({formula:l.formula,globalFormulas:t,path:[...a,"arguments",s,"formula"],visitedFormulas:o,packageName:n}));for(let[s,l]of Object.entries(e.events??{}))for(let[i,u]of Object.entries(l.actions??{}))yield*B({action:u,globalFormulas:t,path:[...a,"events",s,"actions",i],visitedFormulas:o,packageName:n});break}case"SetVariable":case"TriggerEvent":case"TriggerWorkflowCallback":yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameter":yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameters":for(let[s,l]of Object.entries(e.parameters??{}))yield*k({formula:l,globalFormulas:t,path:[...a,"parameters",s],visitedFormulas:o,packageName:n});break;case"TriggerWorkflow":for(let[s,l]of Object.entries(e.parameters??{}))w(l.formula)&&(yield*k({formula:l.formula,globalFormulas:t,path:[...a,"parameters",s,"formula"],visitedFormulas:o,packageName:n}));break;case"Switch":w(e.data)&&J(e.data)&&(yield*k({formula:e.data,globalFormulas:t,path:[...a,"data"],visitedFormulas:o,packageName:n}));for(let[s,l]of(e.cases??[]).entries()){yield*k({formula:l.condition,globalFormulas:t,path:[...a,"cases",s,"condition"],visitedFormulas:o,packageName:n});for(let[i,u]of Object.entries(l.actions))yield*B({action:u,globalFormulas:t,path:[...a,"cases",s,"actions",i],visitedFormulas:o,packageName:n})}for(let[s,l]of Object.entries(e.default?.actions??[]))yield*B({action:l,globalFormulas:t,path:[...a,"default","actions",s],visitedFormulas:o,packageName:n});break}}var ue=class{api;key;globalFormulas;_apiReferences;constructor(t,r,o){this.api=t,this.key=r,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let t=new Set,r=o=>{if(w(o))switch(o.type){case"path":if(o.path[0]==="Apis"){let n=o.path[1];typeof n=="string"&&t.add(n)}break;case"value":break;case"record":o.entries?.forEach(n=>r(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>r(n.formula));break;case"switch":o.cases?.forEach(n=>{r(n.condition),r(n.formula)});break}};return r(this.api.autoFetch),r(this.api.url),Object.values(this.api.path??{}).forEach(o=>r(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>r(o.formula)),J(this.api.headers)?r(this.api.headers):Object.values(this.api.headers??{}).forEach(o=>{r(o)}),r(this.api.body),this._apiReferences=t,t}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get proxy(){return this.api.proxy}get queryParams(){return this.api.queryParams}get headers(){return this.api.headers}get method(){return this.api.method}get body(){return this.api.body}get auth(){return this.api.auth}get throttle(){return this.api.throttle}get debounce(){return this.api.debounce}get onCompleted(){return this.api.onCompleted}get onFailed(){return this.api.onFailed}*formulasInApi(){let t=this.api,r=this.key;yield*k({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*k({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]});if(J(t.headers))yield*k({formula:t.headers,globalFormulas:this.globalFormulas,path:["apis",r,"headers"]});else for(let[o,n]of Object.entries(t.headers??{}))yield*k({formula:n,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o]});yield*k({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]});for(let[o,n]of Object.entries(t.onCompleted?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onCompleted","actions",o]});for(let[o,n]of Object.entries(t.onFailed?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onFailed","actions",o]})}};function*K(e,t=[]){if(w(e))switch(yield[t,e],e.type){case"AbortFetch":case"SetURLParameter":case"SetURLParameters":case"SetVariable":case"TriggerEvent":case"TriggerWorkflow":case"TriggerWorkflowCallback":break;case"Fetch":for(let[r,o]of Object.entries(e.onSuccess?.actions??{}))yield*K(o,[...t,"onSuccess","actions",r]);for(let[r,o]of Object.entries(e.onError?.actions??{}))yield*K(o,[...t,"onError","actions",r]);for(let[r,o]of Object.entries(e.onMessage?.actions??{}))yield*K(o,[...t,"onMessage","actions",r]);break;case"Custom":case void 0:case null:for(let[r,o]of Object.entries(e.events??{}))for(let[n,a]of Object.entries(o?.actions??{}))yield*K(a,[...t,"events",r,"actions",n]);break;case"Switch":for(let[r,o]of(e.cases??[]).entries())for(let[n,a]of Object.entries(o?.actions??{}))yield*K(a,[...t,"cases",r,"actions",n]);for(let[r,o]of Object.entries(e.default?.actions??[]))yield*K(o,[...t,"default","actions",r]);break}}var Ee=class{api;_apiReferences;key;globalFormulas;constructor(t,r,o){this.api=t,this.key=r,this.globalFormulas=o}get apiReferences(){if(this._apiReferences)return this._apiReferences;let t=new Set,r=o=>{if(w(o))switch(o.type){case"path":if(o.path[0]==="Apis"){let n=o.path[1];typeof n=="string"&&t.add(n)}break;case"value":break;case"record":o.entries?.forEach(n=>r(n.formula));break;case"function":case"array":case"or":case"and":case"apply":case"object":o.arguments?.forEach(n=>r(n.formula));break;case"switch":o.cases?.forEach(n=>{r(n.condition),r(n.formula)});break}};return r(this.api.autoFetch),r(this.api.url),Object.values(this.api.path??{}).forEach(o=>r(o.formula)),Object.values(this.api.headers??{}).forEach(o=>r(o.formula)),r(this.api.body),Object.values(this.api.inputs).forEach(o=>r(o.formula)),Object.values(this.api.queryParams??{}).forEach(o=>{r(o.formula)}),r(this.api.server?.proxy?.enabled?.formula),r(this.api.server?.ssr?.enabled?.formula),r(this.api.client?.debounce?.formula),Object.values(this.api.redirectRules??{}).forEach(o=>{r(o.formula)}),r(this.api.isError?.formula),r(this.api.timeout?.formula),t.delete(this.key),this._apiReferences=t,t}get version(){return this.api.version}get name(){return this.api.name}get type(){return this.api.type}get autoFetch(){return this.api.autoFetch}get url(){return this.api.url}get path(){return this.api.path}get headers(){return this.api.headers}set headers(t){this.api.headers=t}get method(){return this.api.method}get body(){return this.api.body}get inputs(){return this.api.inputs}get queryParams(){return this.api.queryParams}get server(){return this.api.server}get client(){return this.api.client}get redirectRules(){return this.api.redirectRules}get isError(){return this.api.isError}get timeout(){return this.api.timeout}get"@nordcraft/metadata"(){return this.api["@nordcraft/metadata"]}*formulasInApi(){let t=this.api,r=this.key;for(let[o,n]of Object.entries(this.api.inputs))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"inputs",o,"formula"]});yield*k({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*k({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]}),yield*k({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"enabled"]});for(let[o,n]of Object.entries(t.headers??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"formula"]}),yield*k({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"enabled"]});t.method&&Ie.includes(t.method)&&(yield*k({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]}));for(let[o,n]of Object.entries(t.client?.onCompleted?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onCompleted","actions",o]});for(let[o,n]of Object.entries(t.client?.onFailed?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onFailed","actions",o]});yield*k({formula:t.client?.debounce?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"client","debounce","formula"]});for(let[o,n]of Object.entries(t.client?.onMessage?.actions??{}))yield*B({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onMessage","actions",o]});for(let[o,n]of Object.entries(t.redirectRules??{}))yield*k({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"redirectRules",o,"formula"]});yield*k({formula:t.isError?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"isError","formula"]}),yield*k({formula:t.timeout?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"timeout","formula"]}),yield*k({formula:t.server?.proxy?.enabled.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","enabled","formula"]}),yield*k({formula:t.server?.proxy?.useTemplatesInBody?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","useTemplatesInBody","formula"]}),yield*k({formula:t.server?.ssr?.enabled?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","ssr","enabled","formula"]})}*actionModelsInApi(){for(let[t,r]of Object.entries(this.api.client?.onCompleted?.actions??{}))yield*K(r,["apis",this.key,"client","onCompleted","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onFailed?.actions??{}))yield*K(r,["apis",this.key,"client","onFailed","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onMessage?.actions??{}))yield*K(r,["apis",this.key,"client","onData","actions",t])}};var Ae=e=>e instanceof ue?!0:!("version"in e),jo=({api:e,formulaContext:t,baseUrl:r,defaultHeaders:o})=>{let n=On(e,{...t,jsonPath:["apis",e.name]},r),a=Pn({api:e,formulaContext:t,defaultHeaders:o});return{url:n,requestSettings:a}},On=(e,t,r)=>{let o="",n=new URLSearchParams,a,s=v(e.url,t,["url"]);if(["string","number"].includes(typeof s)){let d=typeof s=="number"?String(s):s;try{a=new URL(d,r??void 0),o=a.pathname,n=a.searchParams}catch{}}let l=Nn(e.path,t),i=`${o}${l.length>0&&!o.endsWith("/")?"/":""}${l}`,u=new URLSearchParams([...n,...kn(e.queryParams,t)]),g=[...u.entries()].length>0?`?${u.toString()}`:"",p=v(e.hash?.formula,t,["hash","formula"]),h=typeof p=="string"&&p.length>0?`#${p}`:"";if(a){let d=new URL(a.origin,r??void 0);return d.pathname=i,d.search=u.toString(),d.hash=h,d}else return new URL(`${i}${g}${h}`,r??void 0)},Ie=[V.POST,V.DELETE,V.PUT,V.PATCH,V.OPTIONS],Tn=(e,t,r)=>{if(e.timeout){let o=v(e.timeout.formula,r,["timeout","formula"]);typeof o=="number"&&!Number.isNaN(o)&&o>0&&(t.signal=AbortSignal.timeout(o))}},Pn=({api:e,formulaContext:t,defaultHeaders:r})=>{let o=Object.values(V).includes(e.method)?e.method:V.GET,n=xn({apiHeaders:e.headers,formulaContext:t,defaultHeaders:r}),a=In({api:e,formulaContext:t,headers:n,method:o});n.get("content-type")==="multipart/form-data"&&n.delete("content-type");let s={method:o,headers:n,body:a};return Tn(e,s,t),s},Nn=(e,t)=>be(e??{},([r,o])=>o.index).map(([r,o])=>v(o.formula,t,["path",r])).join("/"),kn=(e,t)=>{let r=new URLSearchParams;return Object.entries(e??{}).forEach(([o,n])=>{if(!(w(n.enabled)?v(n.enabled,t,["queryParams",o,"enabled"]):!0))return;let s=v(n.formula,t,["queryParams",o,"formula"]);if(w(s))if(Array.isArray(s))s.forEach(l=>r.append(o,String(l)));else if(H(s)){let l=(i,u)=>{Object.entries(i).forEach(([g,p])=>{if(!Array.isArray(p)&&H(p))return l(p,`${u}[${g}]`);r.set(`${u}[${g}]`,String(p))})};l(s,o)}else r.set(o,String(s))}),r},xn=({apiHeaders:e,formulaContext:t,defaultHeaders:r})=>{let o=new Headers(r);return Object.entries(e??{}).forEach(([n,a])=>{if(w(a.enabled)?v(a.enabled,t,["headers",n,"enabled"]):!0){let l=v(a.formula,t,["headers",n,"formula"]);if(w(l))try{o.set(n.trim(),(typeof l=="string"?l:String(l)).trim())}catch{}}}),o};var Do=(e,t)=>So(JSON.stringify({url:e.href,method:t.method,headers:Y(Object.fromEntries(Object.entries(t.headers??{})),["host","cookie"]),body:t.body??null})),Oo=({apiName:e,response:t,formulaContext:r,errorFormula:o,performance:n})=>{let a=o?v(o.formula,{component:r.component,package:r.package,toddle:r.toddle,data:{Attributes:{},Args:r.data.Args,Apis:{[e]:{isLoading:!1,data:t.body,error:null,response:{status:t.status,headers:t.headers,performance:n}}}},env:r.env,jsonPath:["apis",e,"isError","formula"],reportFormulaEvaluation:r.reportFormulaEvaluation}):null;return a==null?!t.ok:x(a)},In=({api:e,formulaContext:t,headers:r,method:o})=>{if(!e.body||!Ie.includes(o))return;let n=v(e.body,t,["body"]);if(!n)return;let a=r.get("content-type");if(!w(a)||ve(a))return JSON.stringify(n);switch(a){case"application/x-www-form-urlencoded":return typeof n=="object"&&n!==null?Object.entries(n).map(([s,l])=>Array.isArray(l)?l.map(i=>`${encodeURIComponent(s)}=${encodeURIComponent(i)}`).join("&"):`${encodeURIComponent(s)}=${encodeURIComponent(String(l))}`).join("&"):"";case"multipart/form-data":{let s=new FormData;return typeof n=="object"&&n!==null&&Object.entries(n).forEach(([l,i])=>{s.set(l,i)}),s}case"text/plain":return String(n);default:return n}},Se=(e,t)=>new CustomEvent(e,{detail:t}),Mn=(e,t)=>{let r=e.apiReferences.has(t.name),o=t.apiReferences.has(e.name);return r===o?0:r?1:-1},Ce=e=>{let t=new Map,r=(o,n)=>{let a=t.get(n);return a||(a=o.version===2?new Ee(o,n,{formulas:{},packages:{}}):new ue(o,n,{formulas:{},packages:{}}),t.set(n,a)),a};return[...e].sort(([o,n],[a,s])=>{let l=r(n,o),i=r(s,a);return Mn(l,i)})};var To="nc-custom-properties",Me="data-nc-theme",ae="nc-theme";var Po=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"];var rt={};m(rt,{clearLocalStorage:()=>Ye,clearSessionStorage:()=>ze,copyToClipboard:()=>qe,deleteFromLocalStorage:()=>Xe,deleteFromSessionStorage:()=>_e,focus:()=>Be,gotToURL:()=>et,interval:()=>He,logToConsole:()=>Ve,preventDefault:()=>Qe,saveToLocalStorage:()=>Ue,saveToSessionStorage:()=>Je,setCookie:()=>$e,setHttpOnlyCookie:()=>Ke,setSessionCookies:()=>tt,setTheme:()=>Ge,share:()=>Le,sleep:()=>We,stopPropagation:()=>Ze});var Le={};m(Le,{default:()=>_n});var Ln=([e,t,r])=>{let o=a=>w(a)&&typeof a=="string";if(!o(e)&&!o(t)&&!o(r))throw new Error("Either url, text or title must be provided");let n={};if(o(t)&&(n.title=t),o(r)&&(n.text=r),o(e)&&(n.url=e),w(navigator.share)&&navigator.canShare(n))return navigator.share(n)},_n=Ln;var _e={};m(_e,{default:()=>qn});var $n=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.removeItem(e)},qn=$n;var $e={};m($e,{default:()=>Un});var Bn=async function([e,t,r,o,n,a],s){let l=h=>s.triggerActionEvent("Error",new Error(h));if(typeof e!="string"){l('The "Name" argument must be a string');return}if(typeof t!="string"){l('The "Value" argument must be a string');return}let i=o??"Lax";if(typeof i!="string"||!["lax","strict","none"].includes(i.toLocaleLowerCase())){l('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let u=n??"/";if(typeof u!="string"||!u.startsWith("/")){l('The "Path" argument must be a string and start with /');return}if(r!=null&&(typeof r!="number"||isNaN(r))){l('The "Expires in" argument must be a number');return}let g=a??!0;if(typeof g!="boolean"){l('The "Include Subdomains" argument must be a boolean');return}let p=`${e}=${t}; SameSite=${i}; Path=${u}`;if(typeof r=="number"){let h=new Date(Date.now()+r*1e3);p+=`; Expires=${h.toUTCString()}`}g&&(p+=`; Domain=${window.location.hostname}`),document.cookie=p,s.triggerActionEvent("Success",void 0)},Un=Bn;var qe={};m(qe,{default:()=>Vn});var Hn=([e])=>{if(typeof e!="string")throw new Error("Input value must be a string");return navigator.clipboard.writeText(e)},Vn=Hn;var Be={};m(Be,{default:()=>Wn});var Kn=([e,t])=>{e instanceof HTMLElement&&e.focus({preventScroll:x(t)})},Wn=Kn;var Ue={};m(Ue,{default:()=>Gn});var Jn=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.setItem(e,JSON.stringify(t))},Gn=Jn;var He={};m(He,{default:()=>zn});var Qn=([e],t)=>{let r=Number(e);if(!w(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setInterval(()=>t.triggerActionEvent("tick",null),r);t.abortSignal.addEventListener("abort",()=>{clearInterval(o)})},zn=Qn;var Ve={};m(Ve,{default:()=>Zn});var Yn=([e,t])=>{console.log(e,t)},Zn=Yn;var Ke={};m(Ke,{default:()=>ea});var Xn=async function([e,t,r,o,n,a],s){let l=h=>s.triggerActionEvent("Error",new Error(h));if(typeof e!="string"){l('The "Name" argument must be a string');return}if(typeof t!="string"){l('The "Value" argument must be a string');return}let i=o??"Lax";if(typeof i!="string"||!["lax","strict","none"].includes(i.toLocaleLowerCase())){l('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let u=n??"/";if(typeof u!="string"||!u.startsWith("/")){l('The "Path" argument must be a string and start with /');return}if(r!=null&&(typeof r!="number"||isNaN(r))){l('The "Expires in" argument must be a number');return}let g=a??!0;if(typeof g!="boolean"){l('The "Include Subdomains" argument must be a boolean');return}let p=new URLSearchParams;p.set("name",e),p.set("value",t),p.set("sameSite",i),p.set("path",u),p.set("includeSubdomains",String(g)),typeof r=="number"&&p.set("ttl",String(r));try{let h=await fetch(`/.nordcraft/cookies/set-cookie?${p.toString()}`);h.ok?s.triggerActionEvent("Success",void 0):l(await h.text())}catch(h){l(h instanceof Error?h.message:"An unexpected error occurred")}},ea=Xn;var We={};m(We,{default:()=>ra});var ta=([e],t)=>{let r=Number(e);if(!w(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setTimeout(()=>t.triggerActionEvent("tick",null),r);t.abortSignal.addEventListener("abort",()=>{clearTimeout(o)})},ra=ta;var Je={};m(Je,{default:()=>na});var oa=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.setItem(e,JSON.stringify(t))},na=oa;var Ge={};m(Ge,{default:()=>ia});var aa=3600*24*365,sa=async function([e],t){if(typeof e!="string"&&e!==null){t.triggerActionEvent("Error",new Error('The "Name" argument must be a string or null'));return}let r=e===null||e==="";try{await cookieStore.set({name:ae,value:e??"",path:"/",expires:r?0:Date.now()+aa,sameSite:"none"}),t.triggerActionEvent("Success",void 0)}catch(o){t.triggerActionEvent("Error",o)}},ia=sa;var Qe={};m(Qe,{default:()=>ua});var la=(e,t,r)=>{r?.preventDefault?.()},ua=la;var ze={};m(ze,{default:()=>da});var pa=async function(){window.sessionStorage.clear()},da=pa;var Ye={};m(Ye,{default:()=>ma});var ca=async function(){window.localStorage.clear()},ma=ca;var Ze={};m(Ze,{default:()=>ga});var fa=(e,t,r)=>{r?.stopPropagation?.()},ga=fa;var Xe={};m(Xe,{default:()=>ya});var ha=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.removeItem(e)},ya=ha;var et={};m(et,{default:()=>va});var ba=([e],t)=>{typeof e=="string"&&(t.env.runtime==="preview"?window.parent?.postMessage({type:"blockedNavigation",url:e},"*"):window.location.href=e)},va=ba;var tt={};m(tt,{default:()=>Aa});var Ea=async function([e,t],r){let o=[typeof e=="string"?`name=access_token&value=${encodeURIComponent(e)}`:void 0,isNaN(Number(t))?void 0:`ttl=${t}`].filter(a=>a).join("&"),n=await fetch(`/.toddle/cookies/set-session-cookie?${o}`);n.ok?r.triggerActionEvent("Success",void 0):r.triggerActionEvent("Error",new Error(await n.text()))},Aa=Ea;var Qr={};m(Qr,{Id:()=>jt,absolute:()=>Wt,add:()=>$t,append:()=>Ur,boolean:()=>Dt,branchName:()=>Ot,canShare:()=>xr,capitalize:()=>Gt,clamp:()=>gr,concatenate:()=>Qt,currentURL:()=>Ir,dateFromString:()=>ir,dateFromTimestamp:()=>hr,decodeBase64:()=>zt,decodeURIComponent:()=>Yt,defaultTo:()=>ht,deleteKey:()=>Zt,divide:()=>Gr,drop:()=>cr,dropLast:()=>pr,encodeBase64:()=>Lt,encodeJSON:()=>ot,encodeURIComponent:()=>Lr,entries:()=>xt,equals:()=>Cr,every:()=>or,filter:()=>qr,find:()=>Tt,findIndex:()=>kr,findLast:()=>dr,first:()=>pt,flatten:()=>st,formatDate:()=>ur,formatNumber:()=>lt,fromEntries:()=>Nt,get:()=>Hr,getCookie:()=>Fr,getElementById:()=>Bt,getFromLocalStorage:()=>Er,getFromSessionStorage:()=>Sr,getHttpOnlyCookie:()=>_r,greaterOrEqueal:()=>St,greaterThan:()=>Ft,groupBy:()=>Mt,includes:()=>Kt,indexOf:()=>lr,isServer:()=>Wr,join:()=>wr,json:()=>Jr,keyBy:()=>Jt,languages:()=>ut,last:()=>kt,lastIndexOf:()=>Or,lessOrEqual:()=>dt,lessThan:()=>mr,logarithm:()=>mt,lowercase:()=>it,map:()=>rr,matches:()=>Ht,max:()=>jr,min:()=>Kr,minus:()=>Dr,modulo:()=>fr,multiply:()=>sr,not:()=>ct,notEqual:()=>Mr,now:()=>_t,number:()=>Et,parseJSON:()=>vt,parseURL:()=>ar,power:()=>br,prepend:()=>Ar,randomNumber:()=>yt,range:()=>gt,reduce:()=>tr,replaceAll:()=>Tr,reverse:()=>Rr,round:()=>It,roundDown:()=>Vr,roundUp:()=>Pr,set:()=>Pt,shuffle:()=>bt,size:()=>Br,some:()=>ft,sort_by:()=>Ut,split:()=>Vt,squareRoot:()=>Ct,startsWith:()=>nt,string:()=>yr,sum:()=>vr,take:()=>At,takeLast:()=>qt,timestamp:()=>Xt,trim:()=>er,typeOf:()=>wt,unique:()=>$r,uppercase:()=>at,userAgent:()=>Nr});var ot={};m(ot,{default:()=>Ca});var Sa=([e,t])=>typeof t!="number"?null:JSON.stringify(e,null,t),Ca=Sa;var nt={};m(nt,{default:()=>wa});var Fa=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.startsWith(t),wa=Fa;var at={};m(at,{default:()=>ja});var Ra=([e])=>typeof e!="string"?null:e.toLocaleUpperCase(),ja=Ra;var st={};m(st,{default:()=>Oa});var Da=([e])=>Array.isArray(e)?e.flat():null,Oa=Da;var it={};m(it,{default:()=>Pa});var Ta=([e])=>typeof e!="string"?null:e.toLocaleLowerCase(),Pa=Ta;var lt={};m(lt,{default:()=>ka});var Na=([e,t,r])=>{if(typeof e!="number"||Number.isNaN(e))return null;let o=typeof t=="string"&&t.length>0||Array.isArray(t)&&t.every(A=>typeof A=="string")?t:void 0;if(!r||typeof r!="object")return Intl.NumberFormat(o).format(e);let n=(A,T)=>typeof A=="string"&&(T?.includes(A)??!0)?A:void 0,a=r,s=n(a.style,["decimal","currency","percent","unit"]),l=typeof a.currency=="string"&&a.currency.length===3?a.currency:void 0;if(s==="currency"&&typeof l!="string")return null;let i=n(a.currencyDisplay,["code","symbol","narrowSymbol","name"]),u=typeof a.unit=="string"?a.unit:void 0;if(s==="unit"&&typeof u!="string")return null;let g=n(a.unitDisplay,["short","narrow","long"]),p=typeof a.minimumIntegerDigits=="number"&&a.minimumIntegerDigits>=1&&a.minimumIntegerDigits<=21?a.minimumIntegerDigits:void 0,h=typeof a.minimumFractionDigits=="number"&&a.minimumFractionDigits>=0&&a.minimumFractionDigits<=100?a.minimumFractionDigits:void 0,d=typeof a.maximumFractionDigits=="number"&&a.maximumFractionDigits>=0&&a.maximumFractionDigits<=100?a.maximumFractionDigits:void 0,E=typeof a.minimumSignificantDigits=="number"&&a.minimumSignificantDigits>=1&&a.minimumSignificantDigits<=21?a.minimumSignificantDigits:void 0,S=typeof a.maximumSignificantDigits=="number"&&a.maximumSignificantDigits>=1&&a.maximumSignificantDigits<=21?a.maximumSignificantDigits:void 0,C=n(a.notation,["standard","scientific","engineering","compact"]),D=n(a.compactDisplay,["short","long"]),N=["always","auto","min2"],F=typeof a.useGrouping=="boolean"?a.useGrouping:n(a.useGrouping,N);return new Intl.NumberFormat(o,{style:s,currency:l,currencyDisplay:i,unit:u,unitDisplay:g,minimumIntegerDigits:p,minimumFractionDigits:h,maximumFractionDigits:d,minimumSignificantDigits:E,maximumSignificantDigits:S,notation:C,compactDisplay:D,useGrouping:F}).format(e)},ka=Na;var ut={};m(ut,{default:()=>Ia});var xa=(e,{env:t})=>t.isServer?t.request?.headers["accept-language"]?.split(",").map(r=>r.split(";")[0]??"")??[]:window.navigator.languages,Ia=xa;var pt={};m(pt,{default:()=>La});var Ma=([e])=>typeof e=="string"||Array.isArray(e)?e[0]:null,La=Ma;var dt={};m(dt,{default:()=>$a});var _a=([e,t])=>e<=t,$a=_a;var ct={};m(ct,{default:()=>Ba});var qa=([e])=>!x(e),Ba=qa;var mt={};m(mt,{default:()=>Ha});var Ua=([e])=>typeof e!="number"||Number.isNaN(e)||e<0?null:Math.log(e),Ha=Ua;var ft={};m(ft,{default:()=>Va,getArgumentInputData:()=>Ka,handler:()=>No});var No=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.some((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).some(([r,o])=>t({key:r,value:o})):null,Va=No,Ka=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var gt={};m(gt,{default:()=>Ja});var Wa=([e,t])=>typeof e!="number"||typeof t!="number"?null:e>t?[]:Array.from({length:t-e+1},(r,o)=>o+e),Ja=Wa;var ht={};m(ht,{default:()=>Qa});var Ga=e=>{for(let t of e)if(x(t))return t;return null},Qa=Ga;var yt={};m(yt,{default:()=>Ya});var za=()=>Math.random(),Ya=za;var bt={};m(bt,{default:()=>Xa});var Za=([e])=>Array.isArray(e)?ko(e):typeof e=="string"?ko(e.split("")).join(""):null;function ko(e){let t=[...e];for(let r=t.length-1;r>0;r--){let o=Math.floor(Math.random()*(r+1));[t[r],t[o]]=[t[o],t[r]]}return t}var Xa=Za;var vt={};m(vt,{default:()=>rs});var es=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:.\d{1,3})?Z$/;function pe(e){return JSON.parse(e,(t,r)=>typeof r=="string"&&r.length===24&&es.test(r)?new Date(r):r)}var ts=([e,t])=>{if(typeof e!="string")return null;try{return t==null||t?pe(e):JSON.parse(e)}catch{return null}},rs=ts;var Et={};m(Et,{default:()=>ns});var os=([e])=>Number(e),ns=os;var At={};m(At,{default:()=>ss});var as=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(0,t):typeof e=="string"?e.substring(0,t):null,ss=as;var St={};m(St,{default:()=>ls});var is=([e,t])=>e>=t,ls=is;var Ct={};m(Ct,{default:()=>ps});var us=([e])=>typeof e!="number"?null:Math.sqrt(e),ps=us;var Ft={};m(Ft,{default:()=>cs});var ds=([e,t])=>e>t,cs=ds;var wt={};m(wt,{default:()=>fs});var ms=([e])=>{switch(typeof e){case"number":return isNaN(e)?null:"Number";case"string":return"String";case"boolean":return"Boolean";case"object":return Array.isArray(e)?"Array":e===null?"Null":"Object";case"undefined":return"Null";default:return null}},fs=ms;var jt={};m(jt,{default:()=>bs});var gs=0,Rt=new WeakMap;function hs(e){return Rt.has(e)||Rt.set(e,{idCounter:0}),Rt.get(e)}var ys=(e,t)=>{if(t.env.isServer){let r=hs(t.env.request);return`_id_${r.idCounter++}_`}return`_id_${gs++}_`},bs=ys;var Dt={};m(Dt,{default:()=>Es});var vs=([e])=>x(e),Es=vs;var Ot={};m(Ot,{default:()=>Ss});var As=(e,t)=>t.env.branchName,Ss=As;var Tt={};m(Tt,{default:()=>Cs,getArgumentInputData:()=>Fs,handler:()=>xo});var xo=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.find((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).find(([r,o])=>t({key:r,value:o}))?.[1]:null,Cs=xo,Fs=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var Pt={};m(Pt,{default:()=>ws});var Io=([e,t,r],o)=>{if(typeof t!="string"&&typeof t!="number"&&!Array.isArray(t))return null;let[n,...a]=Array.isArray(t)?t:[t];if(H(e)){let s=Array.isArray(e)?[...e]:{...e};return s[n]=a.length===0?r:Io([s[n],a,r],o),s}return null},ws=Io;var Nt={};m(Nt,{default:()=>js});var Rs=([e])=>{if(Array.isArray(e)){let t={};for(let{key:r,value:o}of e)t[r]=o;return t}return null},js=Rs;var kt={};m(kt,{default:()=>Os});var Ds=([e])=>typeof e=="string"||Array.isArray(e)?e[e.length-1]:null,Os=Ds;var xt={};m(xt,{default:()=>Ps});var Ts=([e])=>typeof e=="object"&&e!==null?Object.entries(e).map(([t,r])=>({key:t,value:r})):null,Ps=Ts;var It={};m(It,{default:()=>ks});var Ns=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.round(e*r)/r},ks=Ns;var Mt={};m(Mt,{default:()=>xs,getArgumentInputData:()=>Is,handler:()=>Mo});var Mo=([e,t])=>{if(typeof t!="function"||!e||typeof e!="object"||!Array.isArray(e))return null;let r={};for(let o in e){let n=e[o],a=String(t({item:n,index:o}));r[a]=r[a]??[],r[a].push(n)}return r},xs=Mo,Is=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0],index:0}}:r;var Lt={};m(Lt,{default:()=>Ls});var Ms=([e])=>typeof e!="string"?null:btoa(e),Ls=Ms;var _t={};m(_t,{default:()=>$s});var _s=()=>new Date,$s=_s;var $t={};m($t,{default:()=>Bs});var qs=e=>!Array.isArray(e)||e.some(t=>t===null||typeof t!="number")?null:e.reduce((t,r)=>t+Number(r),0),Bs=qs;var qt={};m(qt,{default:()=>Hs});var Us=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(e.length-t):typeof e=="string"?e.substring(e.length-t):null,Hs=Us;var Bt={};m(Bt,{default:()=>Ks});var Vs=([e],{root:t})=>typeof e!="string"?null:t.getElementById(e),Ks=Vs;var Ut={};m(Ut,{default:()=>Js,getArgumentInputData:()=>Gs});var Ws=([e,t,r])=>{if(!Array.isArray(e)||typeof t!="function"||typeof r!="boolean")return null;let o=r?1:-1;return[...e].sort((n,a)=>{let s=t({item:n}),l=t({item:a});if(Array.isArray(s)&&Array.isArray(l)){for(let i in s)if(s[i]!==l[i])return(s[i]>l[i]?1:-1)*o;return 0}return s===l?0:(s>l?1:-1)*o})},Js=Ws,Gs=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0]}}:r;var Ht={};m(Ht,{default:()=>zs});var Qs=([e,t,r,o,n])=>{if(typeof e!="string"||typeof t!="string")return[];let a=[x(r)?"g":"",x(o)?"i":"",x(n)?"m":""].join(""),s=new RegExp(t,a);return e.match(s)??[]},zs=Qs;var Vt={};m(Vt,{default:()=>Zs});var Ys=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.split(t),Zs=Ys;var Kt={};m(Kt,{default:()=>ei});var Xs=([e,t])=>typeof e=="string"&&typeof t=="string"?e.includes(t):Array.isArray(e)?e.some(r=>globalThis.toddle.isEqual(r,t)):null,ei=Xs;var Wt={};m(Wt,{default:()=>ri});var ti=([e])=>typeof e!="number"?null:Math.abs(e),ri=ti;var Jt={};m(Jt,{default:()=>oi,getArgumentInputData:()=>ni,handler:()=>Lo});var Lo=([e,t])=>{if(typeof t!="function"||!e||typeof e!="object")return null;let r=Array.isArray(e)?e:Object.entries(e),o={};for(let n=0;n<r.length;n++){let a=r[n],s=String(t({item:a,i:n}));o[s]=a}return o},oi=Lo,ni=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{value:o[1],key:o[0]}}}return r};var Gt={};m(Gt,{default:()=>si});var ai=([e])=>{if(typeof e!="string")return null;let t=e.at(0);return e.length===0||typeof t!="string"?e:t.toLocaleUpperCase()+e.substring(1).toLocaleLowerCase()},si=ai;var Qt={};m(Qt,{default:()=>li});var ii=e=>{if(e.every(Array.isArray)){let t=[];for(let r of e)t.push(...r);return t}return e.every(H)?Object.assign({},...e):e.join("")},li=ii;var zt={};m(zt,{default:()=>pi});var ui=([e])=>typeof e!="string"?null:atob(e),pi=ui;var Yt={};m(Yt,{default:()=>ci});var di=([e])=>typeof e!="string"?null:decodeURIComponent(e),ci=di;var Zt={};m(Zt,{default:()=>fi});var mi=([e,t])=>{if(typeof e!="object"||e===null||!Array.isArray(t)&&typeof t!="string"&&typeof t!="number")return null;let r=(n,[a,...s])=>{if(Array.isArray(n)){let l=Number(a);return Number.isNaN(l)?n:s.length===0?n.filter((i,u)=>u!==Number(a)):n.map((i,u)=>u===l?r(n[l],s):i)}return H(n)?s.length===0?Object.fromEntries(Object.entries(n).filter(([l])=>l!==a)):typeof a!="string"&&typeof a!="number"?{...n}:{...n,[a]:r(n[a],s)}:null},o=Array.isArray(t)?t:[t];return r(e,o)},fi=mi;var Xt={};m(Xt,{default:()=>hi});var gi=([e])=>!e||!(e instanceof Date)?null:e.getTime(),hi=gi;var er={};m(er,{default:()=>bi});var yi=([e])=>typeof e!="string"?null:e.trim(),bi=yi;var tr={};m(tr,{default:()=>Ei,getArgumentInputData:()=>Ai});var vi=([e,t,r])=>typeof t!="function"?null:Array.isArray(e)?e.reduce((o,n,a)=>t({result:o,item:n,index:a}),r):e&&typeof e=="object"?Object.entries(e).reduce((o,[n,a])=>t({result:o,key:n,value:a}),r):null,Ei=vi,Ai=([e,t,r],o,n)=>{if(o!==1)return n;if(Array.isArray(e))return{...n,Args:{item:e[0],index:0,result:r}};if(e&&typeof e=="object"){let[a]=Object.entries(e);if(a)return{...n,Args:{key:a[0],value:a[1],result:r}}}return n};var rr={};m(rr,{default:()=>Fi,getArgumentInputData:()=>Ci});var Si=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.map((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([r,o])=>{let n=t({key:r,value:o});return"key"in n&&"value"in n?[n.key,n.value]:null})):null,Ci=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r},Fi=Si;var or={};m(or,{default:()=>wi,getArgumentInputData:()=>Ri,handler:()=>_o});var _o=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.every((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).every(([r,o])=>t({key:r,value:o})):null,wi=_o,Ri=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var ar={};m(ar,{default:()=>Di});var nr=class{hostname;searchParams;path;hash;href;protocol;port;origin;constructor(t){this.hostname=t.hostname,this.searchParams=Object.fromEntries(t.searchParams),this.path=t.pathname.split("/").filter((r,o)=>o!==0||r!==""),this.hash=t.hash.replace("#",""),this.href=t.href,this.protocol=t.protocol,this.port=t.port,this.origin=t.origin}toString(){return this.href}},ji=([e,t])=>{if(typeof e!="string")return null;try{return new nr(new URL(e,typeof t=="string"?t:void 0))}catch{return null}},Di=ji;var sr={};m(sr,{default:()=>Ti});var Oi=e=>e.some(t=>isNaN(Number(t)))?null:e.reduce((t,r)=>t*r,1),Ti=Oi;var ir={};m(ir,{default:()=>Ni});var Pi=([e])=>typeof e=="string"?new Date(e):null,Ni=Pi;var lr={};m(lr,{default:()=>xi});var ki=([e,t])=>{if(typeof e=="string")return e.indexOf(t);if(Array.isArray(e)){let r=e.indexOf(t);return r!==-1?r:e.findIndex(o=>globalThis.toddle.isEqual(o,t))}return null},xi=ki;var ur={};m(ur,{default:()=>Mi});var Ii=([e,t,r])=>{if(!e||!(e instanceof Date))return null;let o=typeof t=="string"&&t.length>0||Array.isArray(t)&&t.every(A=>typeof A=="string")?t:void 0;if(!r||typeof r!="object")return Intl.DateTimeFormat(o).format(e);let n=(A,T)=>typeof A=="string"&&(T?.includes(A)??!0)?A:void 0,a=r,s=n(a.dateStyle,["full","long","medium","short"]),l=n(a.timeStyle,["full","long","medium","short"]),i=n(a.calendar),u=n(a.weekday,["long","short","narrow"]),g=n(a.era,["long","short","narrow"]),p=n(a.year,["numeric","2-digit"]),h=n(a.month,["long","short","narrow","numeric","2-digit"]),d=n(a.day,["numeric","2-digit"]),E=n(a.hour,["numeric","2-digit"]),S=n(a.minute,["numeric","2-digit"]),C=n(a.second,["numeric","2-digit"]),D=n(a.timeZoneName,["long","short","shortOffset","longOffset","shortGeneric","longGeneric"]),N=n(a.timeZone),F=a.hour12===!0?!0:a.hour12===!1?!1:void 0;return Intl.DateTimeFormat(o,{dateStyle:s,timeStyle:l,calendar:i,weekday:u,era:g,year:p,month:h,day:d,hour:E,minute:S,second:C,timeZoneName:D,timeZone:N,hour12:F}).format(e)},Mi=Ii;var pr={};m(pr,{default:()=>_i});var Li=([e,t])=>typeof t!="number"||isNaN(t)?null:Array.isArray(e)?e.slice(0,e.length-t):typeof e=="string"?e.substring(0,e.length-t):null,_i=Li;var dr={};m(dr,{default:()=>$i,getArgumentInputData:()=>qi,handler:()=>$o});var $o=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.findLast((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).findLast(([r,o])=>t({key:r,value:o}))?.[1]:null,$i=$o,qi=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var cr={};m(cr,{default:()=>Ui});var Bi=([e,t])=>typeof t!="number"||isNaN(t)?null:Array.isArray(e)?e.slice(t):typeof e=="string"?e.substring(t):null,Ui=Bi;var mr={};m(mr,{default:()=>Vi});var Hi=([e,t])=>e<t,Vi=Hi;var fr={};m(fr,{default:()=>Wi});var Ki=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)%Number(t),Wi=Ki;var gr={};m(gr,{default:()=>Gi});var Ji=([e,t,r])=>typeof e!="number"||typeof t!="number"||typeof r!="number"?null:Math.min(Math.max(e,t),r),Gi=Ji;var hr={};m(hr,{default:()=>zi});var Qi=([e])=>typeof e=="number"?new Date(e):null,zi=Qi;var yr={};m(yr,{default:()=>Zi});var Yi=([e])=>String(e),Zi=Yi;var br={};m(br,{default:()=>el});var Xi=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)**Number(t),el=Xi;var vr={};m(vr,{default:()=>rl});var tl=([e])=>{if(Array.isArray(e)){let t=0;for(let r of e){if(isNaN(r)||typeof r!="number")return null;t+=r}return t}return null},rl=tl;var Er={};m(Er,{default:()=>nl});var ol=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let t=window.localStorage.getItem(e);if(t===null)return t;try{return JSON.parse(t)}catch{return t}},nl=ol;var Ar={};m(Ar,{default:()=>sl});var al=([e,t])=>Array.isArray(e)?[t,...e]:null,sl=al;var Sr={};m(Sr,{default:()=>ll});var il=([e])=>{if(typeof e!="string"||e.length===0||typeof window>"u")return null;let t=window.sessionStorage.getItem(e);if(t===null)return t;try{return JSON.parse(t)}catch{return t}},ll=il;var Cr={};m(Cr,{default:()=>pl});var ul=([e,t])=>globalThis.toddle.isEqual(e,t),pl=ul;var Fr={};m(Fr,{default:()=>cl});var dl=([e],{env:t,root:r})=>!e||typeof e!="string"?null:t.isServer?t.request.cookies[e]??null:r instanceof ShadowRoot?null:r.cookie.split("; ")?.find(o=>o.startsWith(`${e}=`))?.split("=")[1]??null,cl=dl;var wr={};m(wr,{default:()=>fl});var ml=([e,t])=>Array.isArray(e)?e.join(String(t)):null,fl=ml;var Rr={};m(Rr,{default:()=>hl});var gl=([e])=>Array.isArray(e)?[...e].reverse():null,hl=gl;var jr={};m(jr,{default:()=>bl});var yl=e=>Math.max(...e.map(Number)),bl=yl;var Dr={};m(Dr,{default:()=>El});var vl=([e,t])=>{let r=Number(e),o=Number(t);return isNaN(r)||isNaN(o)?null:r-o},El=vl;var Or={};m(Or,{default:()=>Sl});var Al=([e,t])=>{if(typeof e=="string")return e.lastIndexOf(t);if(Array.isArray(e)){let r=e.lastIndexOf(t);return r!==-1?r:e.findLastIndex(o=>globalThis.toddle.isEqual(o,t))}return null},Sl=Al;var Tr={};m(Tr,{default:()=>Fl});var Cl=([e,t,r])=>typeof e!="string"||typeof t!="string"?null:e.replaceAll(t,String(r)),Fl=Cl;var Pr={};m(Pr,{default:()=>Rl});var wl=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.ceil(e*r)/r},Rl=wl;var Nr={};m(Nr,{default:()=>Dl});var jl=(e,{env:t})=>t.isServer?t.request?.headers["user-agent"]??null:window.navigator.userAgent,Dl=jl;var kr={};m(kr,{default:()=>Ol,getArgumentInputData:()=>Tl,handler:()=>qo});var qo=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.findIndex((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.entries(e).findIndex(([r,o])=>t({key:r,value:o})):null,Ol=qo,Tl=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var xr={};m(xr,{default:()=>Nl});var Pl=([e,t,r])=>{if(!w(navigator.canShare))return!1;let o=a=>w(a)&&typeof a=="string";if(!o(e)&&!o(t)&&!o(r))return!1;let n={};return o(t)&&(n.title=t),o(r)&&(n.text=r),o(e)&&(n.url=e),navigator.canShare(n)},Nl=Pl;var Ir={};m(Ir,{default:()=>xl});var kl=(e,{env:t})=>t.isServer?t.request.url:window?.location.href??null,xl=kl;var Mr={};m(Mr,{default:()=>Ml});var Il=([e,t])=>!globalThis.toddle.isEqual(e,t),Ml=Il;var Lr={};m(Lr,{default:()=>_l});var Ll=([e])=>typeof e!="string"?null:encodeURIComponent(e),_l=Ll;var _r={};m(_r,{default:()=>Bl});var Bo=(e,t)=>`{{ ${$l[e]}.${t} }}`,$l={cookies:"cookies"};var ql=([e])=>!e||typeof e!="string"?null:Bo("cookies",e),Bl=ql;var $r={};m($r,{default:()=>Hl});var Ul=([e])=>{if(!Array.isArray(e))return null;let t=new Set;return e.filter(r=>{let o=typeof r=="object"?JSON.stringify(r):r;return t.has(o)?!1:(t.add(o),!0)})},Hl=Ul;var qr={};m(qr,{default:()=>Vl,getArgumentInputData:()=>Kl,handler:()=>Uo});var Uo=([e,t])=>typeof t!="function"?null:Array.isArray(e)?e.filter((r,o)=>t({item:r,index:o})):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).filter(([r,o])=>t({key:r,value:o}))):Array.isArray(e)?e.filter((r,o)=>t({item:r,index:o})):null,Vl=Uo,Kl=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{value:o[1],key:o[0]}}}return r};var Br={};m(Br,{default:()=>Jl});var Wl=([e])=>Array.isArray(e)?e.length:H(e)?Object.keys(e).length:typeof e=="string"?e.length:null,Jl=Wl;var Ur={};m(Ur,{default:()=>Ql});var Gl=([e,t])=>Array.isArray(e)?[...e,t]:null,Ql=Gl;var Hr={};m(Hr,{default:()=>Yl});var zl=([e,t])=>{if(typeof e=="string")return e[Number(t)];let r=(o,n)=>{if(n.length===0)return o;let[a,...s]=n;return r(o?.[String(a)],s)};return r(e,Array.isArray(t)?t:[t])},Yl=zl;var Vr={};m(Vr,{default:()=>Xl});var Zl=([e,t])=>{if(typeof e!="number"||typeof t!="number")return null;let r=Math.max(1,Math.pow(10,t));return Math.floor(e*r)/r},Xl=Zl;var Kr={};m(Kr,{default:()=>tu});var eu=e=>Math.min(...e.map(Number)),tu=eu;var Wr={};m(Wr,{default:()=>ou});var ru=(e,t)=>t.env.isServer,ou=ru;var Jr={};m(Jr,{default:()=>au});var nu=([e,t])=>{let r=isNaN(Number(t))?0:Number(t);return JSON.stringify(e,null,r)},au=nu;var Gr={};m(Gr,{default:()=>iu});var su=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)/Number(t),iu=su;var vn=fe(de(),1);function lu(e){for(var t=[],r=0;r<e.length;){var o=e[r];if(o==="*"||o==="+"||o==="?"){t.push({type:"MODIFIER",index:r,value:e[r++]});continue}if(o==="\\"){t.push({type:"ESCAPED_CHAR",index:r++,value:e[r++]});continue}if(o==="{"){t.push({type:"OPEN",index:r,value:e[r++]});continue}if(o==="}"){t.push({type:"CLOSE",index:r,value:e[r++]});continue}if(o===":"){for(var n="",a=r+1;a<e.length;){var s=e.charCodeAt(a);if(s>=48&&s<=57||s>=65&&s<=90||s>=97&&s<=122||s===95){n+=e[a++];continue}break}if(!n)throw new TypeError("Missing parameter name at ".concat(r));t.push({type:"NAME",index:r,value:n}),r=a;continue}if(o==="("){var l=1,i="",a=r+1;if(e[a]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(a));for(;a<e.length;){if(e[a]==="\\"){i+=e[a++]+e[a++];continue}if(e[a]===")"){if(l--,l===0){a++;break}}else if(e[a]==="("&&(l++,e[a+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(a));i+=e[a++]}if(l)throw new TypeError("Unbalanced pattern at ".concat(r));if(!i)throw new TypeError("Missing pattern at ".concat(r));t.push({type:"PATTERN",index:r,value:i}),r=a;continue}t.push({type:"CHAR",index:r,value:e[r++]})}return t.push({type:"END",index:r,value:""}),t}function Vo(e,t){t===void 0&&(t={});for(var r=lu(e),o=t.prefixes,n=o===void 0?"./":o,a=t.delimiter,s=a===void 0?"/#?":a,l=[],i=0,u=0,g="",p=function(f){if(u<r.length&&r[u].type===f)return r[u++].value},h=function(f){var y=p(f);if(y!==void 0)return y;var j=r[u],R=j.type,P=j.index;throw new TypeError("Unexpected ".concat(R," at ").concat(P,", expected ").concat(f))},d=function(){for(var f="",y;y=p("CHAR")||p("ESCAPED_CHAR");)f+=y;return f},E=function(f){for(var y=0,j=s;y<j.length;y++){var R=j[y];if(f.indexOf(R)>-1)return!0}return!1},S=function(f){var y=l[l.length-1],j=f||(y&&typeof y=="string"?y:"");if(y&&!j)throw new TypeError('Must have text between two parameters, missing text after "'.concat(y.name,'"'));return!j||E(j)?"[^".concat(Q(s),"]+?"):"(?:(?!".concat(Q(j),")[^").concat(Q(s),"])+?")};u<r.length;){var C=p("CHAR"),D=p("NAME"),N=p("PATTERN");if(D||N){var F=C||"";n.indexOf(F)===-1&&(g+=F,F=""),g&&(l.push(g),g=""),l.push({name:D||i++,prefix:F,suffix:"",pattern:N||S(F),modifier:p("MODIFIER")||""});continue}var A=C||p("ESCAPED_CHAR");if(A){g+=A;continue}g&&(l.push(g),g="");var T=p("OPEN");if(T){var F=d(),O=p("NAME")||"",c=p("PATTERN")||"",b=d();h("CLOSE"),l.push({name:O||(c?i++:""),pattern:O&&!c?S(F):c,prefix:F,suffix:b,modifier:p("MODIFIER")||""});continue}h("END")}return l}function Ko(e,t){return uu(Vo(e,t),t)}function uu(e,t){t===void 0&&(t={});var r=zr(t),o=t.encode,n=o===void 0?function(i){return i}:o,a=t.validate,s=a===void 0?!0:a,l=e.map(function(i){if(typeof i=="object")return new RegExp("^(?:".concat(i.pattern,")$"),r)});return function(i){for(var u="",g=0;g<e.length;g++){var p=e[g];if(typeof p=="string"){u+=p;continue}var h=i?i[p.name]:void 0,d=p.modifier==="?"||p.modifier==="*",E=p.modifier==="*"||p.modifier==="+";if(Array.isArray(h)){if(!E)throw new TypeError('Expected "'.concat(p.name,'" to not repeat, but got an array'));if(h.length===0){if(d)continue;throw new TypeError('Expected "'.concat(p.name,'" to not be empty'))}for(var S=0;S<h.length;S++){var C=n(h[S],p);if(s&&!l[g].test(C))throw new TypeError('Expected all "'.concat(p.name,'" to match "').concat(p.pattern,'", but got "').concat(C,'"'));u+=p.prefix+C+p.suffix}continue}if(typeof h=="string"||typeof h=="number"){var C=n(String(h),p);if(s&&!l[g].test(C))throw new TypeError('Expected "'.concat(p.name,'" to match "').concat(p.pattern,'", but got "').concat(C,'"'));u+=p.prefix+C+p.suffix;continue}if(!d){var D=E?"an array":"a string";throw new TypeError('Expected "'.concat(p.name,'" to be ').concat(D))}}return u}}function Wo(e,t){var r=[],o=Jo(e,r,t);return pu(o,r,t)}function pu(e,t,r){r===void 0&&(r={});var o=r.decode,n=o===void 0?function(a){return a}:o;return function(a){var s=e.exec(a);if(!s)return!1;for(var l=s[0],i=s.index,u=Object.create(null),g=function(h){if(s[h]===void 0)return"continue";var d=t[h-1];d.modifier==="*"||d.modifier==="+"?u[d.name]=s[h].split(d.prefix+d.suffix).map(function(E){return n(E,d)}):u[d.name]=n(s[h],d)},p=1;p<s.length;p++)g(p);return{path:l,index:i,params:u}}}function Q(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function zr(e){return e&&e.sensitive?"":"i"}function du(e,t){if(!t)return e;for(var r=/\((?:\?<(.*?)>)?(?!\?)/g,o=0,n=r.exec(e.source);n;)t.push({name:n[1]||o++,prefix:"",suffix:"",modifier:"",pattern:""}),n=r.exec(e.source);return e}function cu(e,t,r){var o=e.map(function(n){return Jo(n,t,r).source});return new RegExp("(?:".concat(o.join("|"),")"),zr(r))}function mu(e,t,r){return fu(Vo(e,r),t,r)}function fu(e,t,r){r===void 0&&(r={});for(var o=r.strict,n=o===void 0?!1:o,a=r.start,s=a===void 0?!0:a,l=r.end,i=l===void 0?!0:l,u=r.encode,g=u===void 0?function(y){return y}:u,p=r.delimiter,h=p===void 0?"/#?":p,d=r.endsWith,E=d===void 0?"":d,S="[".concat(Q(E),"]|$"),C="[".concat(Q(h),"]"),D=s?"^":"",N=0,F=e;N<F.length;N++){var A=F[N];if(typeof A=="string")D+=Q(g(A));else{var T=Q(g(A.prefix)),O=Q(g(A.suffix));if(A.pattern)if(t&&t.push(A),T||O)if(A.modifier==="+"||A.modifier==="*"){var c=A.modifier==="*"?"?":"";D+="(?:".concat(T,"((?:").concat(A.pattern,")(?:").concat(O).concat(T,"(?:").concat(A.pattern,"))*)").concat(O,")").concat(c)}else D+="(?:".concat(T,"(").concat(A.pattern,")").concat(O,")").concat(A.modifier);else{if(A.modifier==="+"||A.modifier==="*")throw new TypeError('Can not repeat "'.concat(A.name,'" without a prefix and suffix'));D+="(".concat(A.pattern,")").concat(A.modifier)}else D+="(?:".concat(T).concat(O,")").concat(A.modifier)}}if(i)n||(D+="".concat(C,"?")),D+=r.endsWith?"(?=".concat(S,")"):"$";else{var b=e[e.length-1],f=typeof b=="string"?C.indexOf(b[b.length-1])>-1:b===void 0;n||(D+="(?:".concat(C,"(?=").concat(S,"))?")),f||(D+="(?=".concat(C,"|").concat(S,")"))}return new RegExp(D,zr(r))}function Jo(e,t,r){return e instanceof RegExp?du(e,t):Array.isArray(e)?cu(e,t,r):mu(e,t,r)}var X=e=>"triggerActions"in e,Fe=class{abortControllers=[];applyAbortSignal=t=>{let r=new AbortController;return this.abortControllers.push(r),this.cleanupAbortedControllers(),{...t,signal:t.signal?AbortSignal.any([t.signal,r.signal]):r.signal}};abort=()=>{this.abortControllers.forEach(t=>{t.abort()}),this.abortControllers=[]};cleanupAbortedControllers=()=>{this.abortControllers=this.abortControllers.filter(t=>!t.signal.aborted)}};var Go=fe(de(),1);var ce=({query:e,page:t,route:r,params:o,hash:n})=>{let a;if(r){let i=[];for(let u of r.path)if(u.type==="static")i.push(u.name);else{let g=o[u.name];if(w(g))i.push(g);else break}a="/"+i.join("/")}else a=Ko(t,{encode:encodeURIComponent})(o);let s=n===void 0||n===""?"":"#"+n,l=Object.entries(e).filter(([i,u])=>u!==null).map(([i,u])=>`${encodeURIComponent(r?.query[i]?.name??i)}=${encodeURIComponent(String(u))}`).join("&");return`${a}${s}${l.length>0?"?"+l:""}`};function M(e,t,r,o,n){try{if(!e)throw new Error("Action does not exist");switch(e.type){case"Switch":{let a=e.cases?.find(({condition:s})=>x(v(s,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["cases","condition"])))??e.default;for(let s of a?.actions??[])M(s,{...t,...r.dataSignal.get()},r,o,n);break}case"SetVariable":{let a=v(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["data"]);r.dataSignal.update(s=>({...s,Variables:{...s.Variables,[e.variable]:a}}));break}case"TriggerEvent":{let a=v(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["data"]);r.triggerEvent(e.event,a);break}case"TriggerWorkflowCallback":{let a=v(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["data"]);n?.(e.event,a);break}case"SetURLParameter":{r.toddle.locationSignal.update(a=>{let s=v(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["data"]),l,i;if(a.route?.path.some(p=>p.name===e.parameter)?(l="push",i={...a,params:{...Y(a.params,[e.parameter]),[e.parameter]:s}}):(l="replace",i={...a,query:{...Y(a.query,[e.parameter]),...w(s)?{[e.parameter]:s}:null}}),!l)return a;let u=ce(a),g=ce(i);return g!==u&&(l=e.historyMode??l,l==="push"?window.history.pushState({},"",g):window.history.replaceState({},"",g)),i});break}case"SetURLParameters":{let a=Object.entries(e.parameters??{});if(a.length===0)return;r.toddle.locationSignal.update(s=>{if(!s.route)return s;let l="replace",i={},u={},g={data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},p=C=>s.route?.path.some(D=>D.name===C&&D.type==="param"),h=C=>Object.values(s.route?.query??{}).some(D=>D.name===C);for(let[C,D]of a){let N=v(D,g,["parameters",C])??null;p(C)?(l="push",u[C]=N):h(C)&&(i[C]=N)}if(Object.keys(u).length===0&&Object.keys(i).length===0)return s;let d={...s,params:{...Y(s.params,Object.keys(u)),...u},query:{...Y(s.query,Object.keys(i)),...i}};if((0,Go.default)(d,s))return s;let E=ce(s),S=ce(d);return S!==E&&(l=e.historyMode??l,l==="push"?window.history.pushState({},"",S):window.history.replaceState({},"",S)),d});break}case"Fetch":{let a=r.apis[e.api];if(!a){console.error("The api ",e.api,"does not exist");return}if(X(a)){let s=q(e.inputs??{},([i,u])=>[i,v(u.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["inputs",i,"formula"])]),l={onCompleted:e.onSuccess?.actions??[],onFailed:e.onError?.actions??[],onMessage:e.onMessage?.actions??[]};a.fetch({actionInputs:s,actionModels:l,componentData:t,workflowCallback:n})}else{let s=l=>{for(let i of l)M(i,{...t,...r.dataSignal.get()},r,o,n)};a.fetch().then(()=>{s(e.onSuccess?.actions??[])},()=>{s(e.onError?.actions??[])})}break}case"AbortFetch":{let a=r.apis[e.api];if(!a){console.error("The api ",e.api,"does not exist");return}X(a)?a.cancel():console.warn(`AbortFetch action is not supported for API "${e.api}" as it is not a v2 API.`);break}case"TriggerWorkflow":{let a=q(e.parameters??{},([i,u])=>[i,v(u.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["parameters",i,"formula"])]),s=e.callbacks;if(e.contextProvider){let i=r.providers[[r.package,e.contextProvider].filter(w).join("/")]??r.providers[e.contextProvider],u=i?.component.workflows?.[e.workflow];if(!u){i&&console.warn(`Cannot find workflow "${e.workflow}" on component "${e.contextProvider}". It has likely been removed or modified.`);return}u.actions.forEach(g=>M(g,{...t,...i.ctx.dataSignal.get(),Parameters:a},i.ctx,o,(p,h)=>{s?.[p]?.actions?.forEach(E=>M(E,{...t,...r.dataSignal.get(),Parameters:a,Event:h},r,o,n))}));return}let l=r.component.workflows?.[e.workflow];if(!l){console.warn(`Workflow ${e.workflow} does not exist on component ${r.component.name}`);return}l.actions.forEach(i=>M(i,{...t,...r.dataSignal.get(),Parameters:a},r,o,(u,g)=>{s?.[u]?.actions?.forEach(h=>M(h,{...t,...r.dataSignal.get(),Parameters:a,Event:g},r,o,n))}));break}default:try{let a=(l,i)=>{let u=e.events?.[l];u&&u.actions?.forEach(g=>M(g,i?{...t,...r.dataSignal.get(),Event:i}:{...t,...r.dataSignal.get()},r,i??o,n))},s=e.version===2?(r.toddle.getCustomAction??r.toddle.getCustomAction)(e.name,e.package??r.package):void 0;if(s){let l=(e.arguments??[]).reduce((u,g,p)=>g?{...u,[g.name]:v(g.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["arguments",p,"formula"])}:u,{}),i=s.handler?.(l,{root:r.root,triggerActionEvent:a},o);return i&&(typeof i=="function"||i instanceof Promise)&&r.dataSignal.subscribe(u=>u,{destroy:()=>{i instanceof Promise?i.then(u=>{typeof u=="function"&&u()}).catch(u=>console.error(u)):i()}}),i}else{let l=r.toddle.getAction(e.name);if(!l){console.error("Missing custom action",e.name);return}let i=e.arguments?.map((u,g)=>v(u?.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["arguments",g,"formula"]))??[v(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["arguments","data"])];return l(i,{...r,triggerActionEvent:a},o)}}catch(a){console.error("Error in Custom Action",a)}}}catch(a){return console.error(a),null}}function we(e,t){let r=null;function o(p,h){let d={data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},E=v(p.url,d,["url"])??"",S=p.path&&p.path.length>0?"/"+p.path.map((O,c)=>v(O.formula,d,["path",c,"formula"])).join("/"):"",C=Object.values(p.queryParams??{}),D=C.length>0?"?"+C.map((O,c)=>`${O.name}=${encodeURIComponent(v(O.formula,d,["queryParams",c,"formula"]))}`).join("&"):"",N=J(p.headers)?v(p.headers,{data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["headers"]):q(p.headers??{},([O,c])=>v(c,{data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["headers",O])),F=String(Object.entries(N).find(([O])=>O.toLocaleLowerCase()==="content-type")?.[1]),A=p.method??"GET",T=p.body&&["POST","PUT","PATCH","DELETE"].includes(A)?a(v(p.body,{data:h,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["body"]),F):void 0;return{url:E+S+D,method:A,auth:p.auth,headers:N,body:T}}async function n(p){let h=await p.text();try{return pe(h)}catch{return h}}function a(p,h){switch(h){case"application/x-www-form-urlencoded":return typeof p=="object"&&p!==null?Object.entries(p).map(([d,E])=>Array.isArray(E)?E.map(S=>`${encodeURIComponent(d)}=${encodeURIComponent(S)}`).join("&"):`${encodeURIComponent(d)}=${encodeURIComponent(String(E))}`).join("&"):"";case"multipart/form-data":{let d=new FormData;return typeof p=="object"&&p!==null&&Object.entries(p).forEach(([E,S])=>{d.set(E,S)}),d}case"text/plain":return String(p);default:return JSON.stringify(p)}}function s(p){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:p,error:null,isLoading:!1}}}),e.onCompleted?.actions?.forEach(h=>{M(h,t.dataSignal.get(),t)})}function l(p){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:null,isLoading:!1,error:p}}}),e.onFailed?.actions?.forEach(h=>{M(h,t.dataSignal.get(),t)})}async function i(p){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:t.dataSignal.get().Apis?.[e.name]?.data??null,isLoading:!0,error:null}}});let h;try{e.proxy===!1?h=await fetch(p.url,{method:p.method,headers:p.headers,body:p.body}):h=await fetch(`/_query/${encodeURIComponent(t.component.name)}.${encodeURIComponent(e.name)}`,{method:"POST",body:JSON.stringify(p),signal:t.abortSignal,headers:{"Content-Type":"application/json"}});let d=await n(h);if(h.ok)s(d);else throw d}catch(d){return l(d),Promise.reject(d)}}function u(p){return typeof e.debounce=="number"?new Promise((h,d)=>{typeof r=="number"&&clearTimeout(r),r=setTimeout(()=>{i(p).then(h,d)},e.debounce)}):typeof e.throttle=="number"?typeof r=="number"?new Promise(()=>{}):(r=setTimeout(()=>{typeof r=="number"&&clearTimeout(r)},e.throttle),i(p)):i(p)}let g;if(t.dataSignal.update(p=>({...p,Apis:{...p.Apis??{},[e.name]:p.Apis?.[e.name]??{data:null,isLoading:!!(e.autoFetch&&v(e.autoFetch,{data:t.dataSignal.get(),component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["autoFetch"])),error:null}}})),e.autoFetch){g=t.dataSignal.map(h=>o(e,h));let p=!0;g.subscribe(h=>{if(e.autoFetch&&v(e.autoFetch,{data:t.dataSignal.get(),component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env,jsonPath:t.jsonPath,reportFormulaEvaluation:t.reportFormulaEvaluation},["autoFetch"]))if(p&&t.isRootComponent){p=!1;let d=t.toddle?.pageState?.Apis?.[e.name];d?.data?typeof d.data=="string"?s(pe(d.data)):s(d.data):u(h)}else u(h)})}return{fetch:p=>{let h=o(e,t.dataSignal.get()),d=h.body,E=new Headers({...h.headers,...p?.headers??{}});p?.body&&(d=a(p.body,E.get("Content-Type")??void 0)),d instanceof FormData&&E.delete("Content-Type");let S={url:p?.url??h.url,method:p?.method??h.method,auth:p?.auth??h.auth,headers:Z(E),body:d};return u(S)},destroy:()=>g?.destroy()}}var Qo=({path:e,origin:t})=>{if(typeof e!="string")return!1;try{let r=new URL(e,t),o=new URLSearchParams(r.searchParams);return o.forEach((n,a)=>{r.searchParams.delete(a,n)}),o.forEach((n,a)=>{r.searchParams.append(a,n)}),r}catch{return!1}},zo="x-nordcraft-url",Yo="x-nordcraft-templates-in-body";function Re({apiRequest:e,componentData:t,ctx:r}){let o=null,n={...e};function a(c,b){let f=window.origin;try{new URL(f)}catch{f=void 0}let y=jo({api:c,formulaContext:s(c,b),baseUrl:f,defaultHeaders:void 0});return{...y,requestSettings:{...y.requestSettings,credentials:c.client?.credentials&&["include","same-origin","omit"].includes(c.client.credentials)?c.client.credentials:void 0}}}function s(c,b){let f={data:r.dataSignal.get(),component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},y=Object.entries(c.inputs).reduce((R,[P,_])=>(R[P]=v(_.formula,f,["inputs",P]),R),{}),j={...b,...f.data,ApiInputs:{...y}};return{component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,data:j,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation}}function l(c,b){for(let[f,y]of be(c.redirectRules??{},([j,R])=>R.index)){let j=s(c,b),R=v(y.formula,{...j,data:{...j.data,Apis:{[c.name]:r.dataSignal.get().Apis?.[c.name]}}},["redirectRules",f]);if(typeof R=="string"){let P=Qo({path:R,origin:window.location.origin});if(P){if(r.env.runtime==="preview")return window.parent?.postMessage({type:"blockedNavigation",url:P.href},"*"),{name:f,index:y.index,url:P};window.location.replace(P.href)}}}}function i({eventName:c,api:b,data:f,componentData:y,workflowCallback:j}){switch(c){case"message":{let R=Se("message",f.body);b.client?.onMessage?.actions?.forEach(P=>{M(P,{...s(b,y).data,Event:R},r,R,j)});break}case"success":{let R=Se("success",f.body);b.client?.onCompleted?.actions?.forEach(P=>{M(P,{...s(b,y).data,Event:R},r,R,j)});break}case"failed":{let R=Se("failed",{error:f.body,status:f.status});b.client?.onFailed?.actions?.forEach(P=>{M(P,{...s(b,y).data,Event:R},r,R,j)});break}}}function u({api:c,componentData:b,data:f,performance:y}){let j=r.dataSignal.get().Apis?.[c.name]?.response?.performance?.requestStart;if(typeof j=="number"&&j>(y.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:f.body,error:null,response:{status:f.status,headers:f.headers,performance:y}}}}),r.reportFormulaEvaluation?.(["apis",c.name],{isLoading:!1,data:f.body,error:null,response:{status:f.status,headers:f.headers,performance:y}});let R=l(c,b);R&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:f.body,error:null,response:{status:f.status,headers:f.headers,performance:y,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:R}}:{}}}}})}function g({api:c,componentData:b,data:f,performance:y}){let j=r.dataSignal.get().Apis?.[c.name]?.response?.performance?.requestStart;if(typeof j=="number"&&j>(y.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:null,error:f.body,response:{status:f.status,headers:f.headers,performance:y}}}}),r.reportFormulaEvaluation?.(["apis",c.name],{isLoading:!1,data:null,error:f.body,response:{status:f.status,headers:f.headers,performance:y}});let R=l(c,b);R&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:null,error:f.body,response:{status:f.status,headers:f.headers,performance:y,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:R}}:{}}}}})}async function p({api:c,url:b,requestSettings:f,componentData:y,workflowCallback:j}){let R=async()=>{let P={requestStart:Date.now(),responseStart:null,responseEnd:null};r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!0,data:r.dataSignal.get().Apis?.[c.name]?.data??null,error:null}}}),r.reportFormulaEvaluation?.(["apis",c.name],{isLoading:!0,data:r.dataSignal.get().Apis?.[c.name]?.data??null,error:null});let _;try{let L=c.server?.proxy?v(c.server.proxy.enabled.formula,s(c,y),["server","proxy","enabled"])??!1:!1;if(f=O.applyAbortSignal(f),L===!1)_=await fetch(b,f);else{let $=`/.toddle/omvej/components/${encodeURIComponent(r.component.name)}/apis/${encodeURIComponent(r.component.name)}:${encodeURIComponent(c.name)}`,I=new Headers(f.headers);I.set(zo,decodeURIComponent(b.href.replace(/\+/g," "))),x(v(c.server?.proxy?.useTemplatesInBody?.formula,s(c,y),["server","proxy","useTemplatesInBody"]))&&I.set(Yo,"true"),f.headers=I,_=await fetch($,f)}P.responseStart=Date.now(),await h({api:c,componentData:y,res:_,performance:P,workflowCallback:j});return}catch(L){let $="Unknown error";return L instanceof Error&&($=L.cause?{message:L.message,data:L.cause}:L.message,L.name==="TimeoutError"||L.name==="AbortError"&&($="Request was aborted")),g({api:c,componentData:y,data:{body:$},performance:{...P,responseEnd:Date.now()}}),i({eventName:"failed",api:c,data:{body:$},componentData:y,workflowCallback:j}),Promise.reject(L)}};return c.client?.debounce?.formula?new Promise((P,_)=>{typeof o=="number"&&clearTimeout(o),o=setTimeout(()=>{R().then(P,_)},v(c.client?.debounce?.formula,s(c,y),["client","debounce"]))}):R()}function h({api:c,componentData:b,res:f,performance:y,workflowCallback:j}){let R=c.client?.parserMode??"auto";if(R==="auto"){let P=f.headers.get("content-type");Fo(P)?R="event-stream":ve(P)?R="json":Co(P)?R="text":wo(P)?R="json-stream":Ro(P)?R="blob":R="text"}switch(R){case"text":return d({api:c,componentData:b,res:f,performance:y,workflowCallback:j});case"json":return S({api:c,componentData:b,res:f,performance:y,workflowCallback:j});case"event-stream":return D({api:c,componentData:b,res:f,performance:y,workflowCallback:j});case"json-stream":return E({api:c,componentData:b,res:f,performance:y,workflowCallback:j});case"blob":return C({api:c,componentData:b,res:f,performance:y,workflowCallback:j});default:return d({api:c,componentData:b,res:f,performance:y,workflowCallback:j})}}function d({api:c,res:b,performance:f,componentData:y,workflowCallback:j}){return N({api:c,res:b,performance:f,streamType:"text",useTextDecoder:!0,parseChunk:R=>R,parseChunksForData:R=>R.join(""),componentData:y,workflowCallback:j})}function E({api:c,res:b,performance:f,componentData:y,workflowCallback:j}){return N({api:c,res:b,performance:f,streamType:"json",useTextDecoder:!0,parseChunk:P=>{let _=P;try{_=JSON.parse(P)}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:_})}return _},parseChunksForData:P=>[...P],delimiters:[`\r
2
2
  `,`
3
- `],componentData:h,workflowCallback:D})}async function S({api:f,componentData:v,res:b,performance:h,workflowCallback:D}){let N={data:await b.json(),isLoading:!1,error:null,response:{status:b.status,headers:Z(b.headers)}};return R({api:f,apiStatus:N,componentData:v,performance:h,workflowCallback:D})}async function C({api:f,componentData:v,res:b,performance:h,workflowCallback:D}){let F=await b.blob(),N={isLoading:!1,data:URL.createObjectURL(F),error:null,response:{status:b.status,headers:Z(b.headers)}};return R({api:f,apiStatus:N,componentData:v,performance:h,workflowCallback:D})}function T({api:f,res:v,performance:b,componentData:h,workflowCallback:D}){return k({api:f,res:v,performance:b,streamType:"event",useTextDecoder:!0,parseChunk:N=>{let _=N.match(/event: (.*)/)?.[1]??"message",L=N.match(/data: (.*)/)?.[1]??"",$=N.match(/id: (.*)/)?.[1],I=N.match(/retry: (.*)/)?.[1],oe=L;try{oe=JSON.parse(L??"")}catch{}return{event:_,data:oe,...$?{id:$}:{},...I?{retry:I}:{}}},parseChunksForData:N=>[...N],delimiters:[`
3
+ `],componentData:y,workflowCallback:j})}async function S({api:c,componentData:b,res:f,performance:y,workflowCallback:j}){let P={data:await f.json(),isLoading:!1,error:null,response:{status:f.status,headers:Z(f.headers)}};return F({api:c,apiStatus:P,componentData:b,performance:y,workflowCallback:j})}async function C({api:c,componentData:b,res:f,performance:y,workflowCallback:j}){let R=await f.blob(),P={isLoading:!1,data:URL.createObjectURL(R),error:null,response:{status:f.status,headers:Z(f.headers)}};return F({api:c,apiStatus:P,componentData:b,performance:y,workflowCallback:j})}function D({api:c,res:b,performance:f,componentData:y,workflowCallback:j}){return N({api:c,res:b,performance:f,streamType:"event",useTextDecoder:!0,parseChunk:P=>{let _=P.match(/event: (.*)/)?.[1]??"message",L=P.match(/data: (.*)/)?.[1]??"",$=P.match(/id: (.*)/)?.[1],I=P.match(/retry: (.*)/)?.[1],oe=L;try{oe=JSON.parse(L??"")}catch{}return{event:_,data:oe,...$?{id:$}:{},...I?{retry:I}:{}}},parseChunksForData:P=>[...P],delimiters:[`
4
4
 
5
5
  `,`\r
6
6
  \r
7
- `],componentData:h,workflowCallback:D})}async function k({api:f,res:v,performance:b,streamType:h,useTextDecoder:D,parseChunk:F,parseChunksForData:N,delimiters:_,componentData:L,workflowCallback:$}){let I={chunks:[],currentChunk:"",add(G){let W=F(G);this.chunks.push(W),W&&(r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[f.name]:{isLoading:!0,data:N(this.chunks),error:null,response:{headers:Z(v.headers)}}}}),(f.client?.onMessage?.actions??[]).length>0&&l({eventName:"message",api:f,data:{body:W},componentData:L,workflowCallback:$}))},processChunk(G){let W=_?.find(ke=>G.includes(ke)),oo=this.currentChunk+G,no=W?oo.split(W):[oo];this.currentChunk=no.pop()??"",no.forEach(ke=>this.add(ke))}},oe=D?v.body?.pipeThrough(new TextDecoderStream).getReader():v.body?.getReader();for(;oe;){let{done:G,value:W}=await oe.read();if(G)break;_?I.processChunk(W):I.add(W)}I.currentChunk&&I.add(I.currentChunk);let me={isLoading:!1,data:I.chunks,error:null,response:{status:v.status,headers:Z(v.headers)}};try{if(h==="json"){let G=JSON.parse(I.chunks.join(""));me.data=G}else h==="text"&&(me.data=I.chunks.join(""))}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:I.chunks.join("")})}return R({api:f,apiStatus:me,componentData:L,performance:b,workflowCallback:$})}function R({api:f,apiStatus:v,componentData:b,performance:h,workflowCallback:D}){h.responseEnd=Date.now();let F={body:v.data,status:v.response?.status,headers:v.response?.headers??void 0};yo({apiName:f.name,response:{body:F.body,ok:!!(!v.error&&v.response?.status&&v.response.status<400),status:F.status,headers:F.headers},formulaContext:s(f,b),errorFormula:f.isError,performance:h})?(!F.body&&v.error&&(F.body=v.error),m({api:f,componentData:b,data:F,performance:h}),l({eventName:"failed",api:f,componentData:b,data:F,workflowCallback:D})):(u({api:f,componentData:b,data:F,performance:h}),l({eventName:"success",api:f,componentData:b,data:F,workflowCallback:D}))}function E(f){return lo(f,[["client","onCompleted"],["client","onFailed"],["client","onMessage"],["service"],["server","ssr"]])}let j,O=new we;return j=r.dataSignal.map(f=>{let v=s(n,f),b=a(n,f);return{request:b,api:E(n),headers:Array.from(b.requestSettings.headers.entries()),autoFetch:n.autoFetch?A(n.autoFetch,v):!1,proxy:A(n.server?.proxy?.enabled.formula,v)}}),j.subscribe(async f=>{let{url:v,requestSettings:b}=f.request,h=w(n.autoFetch)&&(n.autoFetch.type!=="value"||n.autoFetch.value===!0)&&(window?.__toddle?.isPageLoaded??!1)===!1?r.toddle.pageState.Apis?.[ho(v,b)]:void 0;h?h.error?m({api:n,data:{body:h.error,status:h.response?.status,headers:h.response?.headers??void 0},performance:{requestStart:h.response?.performance?.requestStart??null,responseStart:h.response?.performance?.responseStart??null,responseEnd:h.response?.performance?.responseEnd??null},componentData:t}):u({api:n,data:{body:h.data,status:h.response?.status,headers:h.response?.headers??void 0},performance:{requestStart:h.response?.performance?.requestStart??null,responseStart:h.response?.performance?.responseStart??null,responseEnd:h.response?.performance?.responseEnd??null},componentData:t}):A(n.autoFetch,s(n,t))?await c({api:n,url:v,requestSettings:b,componentData:t}):r.dataSignal.get().Apis?.[n.name]||r.dataSignal.update(D=>({...D,Apis:{...D.Apis??{},[n.name]:{isLoading:!1,data:null,error:null}}}))}),{fetch:({actionInputs:f,actionModels:v,componentData:b,workflowCallback:h})=>{let D=Object.entries(f??{}).reduce((L,[$,I])=>(I!==null&&typeof I=="object"&&"formula"in I?L[$]=I:L[$]={formula:{type:"value",value:I}},L),{}),F={...n,inputs:{...n.inputs,...D},client:{...n.client,parserMode:n.client?.parserMode??"auto",onCompleted:{trigger:n.client?.onCompleted?.trigger??"success",actions:[...n.client?.onCompleted?.actions??[],...v?.onCompleted??[]]},onFailed:{trigger:n.client?.onFailed?.trigger??"failed",actions:[...n.client?.onFailed?.actions??[],...v?.onFailed??[]]},onMessage:{trigger:n.client?.onMessage?.trigger??"message",actions:[...n.client?.onMessage?.actions??[],...v?.onMessage??[]]}}},{url:N,requestSettings:_}=a(F,b);return c({api:F,url:N,requestSettings:_,componentData:b,workflowCallback:h})},cancel:O.abort,update:(f,v)=>{n=f;let b=s(n,v),h=n.autoFetch&&A(n.autoFetch,b);if(h){let D=a(f,v);j?.set({request:D,api:E(f),autoFetch:h,proxy:A(f.server?.proxy?.enabled.formula,b),headers:Array.from(D.requestSettings.headers.entries())})}},triggerActions:f=>{let v=r.dataSignal.get().Apis?.[n.name];v===void 0||v.data===null&&v.error===null||(v.error?l({eventName:"failed",api:n,data:{body:v.error,status:v.response?.status},componentData:f}):l({eventName:"success",api:n,data:{body:v.data},componentData:f}))},destroy:()=>j?.destroy()}}var qo=e=>{if(!e)return{};let t={};for(let r in e){let o=e[r];(w(o.content)&&o.content.type!=="value"||Object.values(o.attrs??{}).some(n=>n.type!=="value"))&&(t[r]=o)}return t};var on=ge(pe(),1);var De=class{constructor(){}batchQueue=[];isProcessing=!1;processBatch(){this.isProcessing||(this.isProcessing=!0,queueMicrotask(()=>{for(;this.batchQueue.length>0;)this.batchQueue.shift()?.();this.isProcessing=!1}))}add(t){this.batchQueue.push(t),this.processBatch()}};var Zr=ge(pe(),1),Yr=class{value;subscribers;subscriptions;destroying=!1;constructor(t){this.value=t,this.subscribers=new Set,this.subscriptions=[]}get(){return this.value}set(t){if(this.subscribers.size===0){this.value=t;return}if((0,Zr.default)(t,this.value)===!1){this.value=t;for(let r of this.subscribers)r.notify(this.value)}}update(t){this.set(t(this.value))}subscribe(t,r){let o={notify:t,destroy:r?.destroy};return this.subscribers.add(o),t(this.value),()=>{this.subscribers.delete(o)}}destroy(){if(!this.destroying){this.destroying=!0;for(let t of this.subscribers)t.destroy?.();this.subscribers.clear();for(let t of this.subscriptions)t();this.subscriptions.splice(0,this.subscriptions.length),this.destroying=!1}}cleanSubscribers(){for(let t of this.subscribers)t.destroy?.();this.subscribers.clear()}map(t){let r=U(t(this.value));return r.subscriptions.push(this.subscribe(o=>r.set(t(o)),{destroy:()=>r.destroy()})),r}};function U(e){return new Yr(e)}typeof window<"u"&&(window.signal=U,window.deepEqual=Zr.default);var tu,Te=(e,t,r=!0)=>r?(tu??=new Map(t.map(o=>[o.name,o]))).get(e):t.find(o=>o.name===e);var Xr=(e,t)=>{let o=e.split(".").slice(-1)[0],n=parseInt(o),a=parseInt(String(o.split("(")[1]));for(let s of t.children){let l=s.getAttribute("data-id")?.split(".").slice(-1)[0],u=parseInt(String(l));if(u===n&&parseInt(String(l?.split("(")[1]))>a||u>n)return s}return null};function Bo(e,t,r=null){let o=r,n=o?o.previousSibling:e.lastChild;for(let a=t.length-1;a>=0;a--){let s=t[a];s===n?n=s.previousSibling:e.insertBefore(s,o),o=s}}var ae=(e,t)=>w(e)&&w(t)&&!String(e).endsWith(t)?`${e}${t}`:e;var Uo=e=>[(e.className??e.class)&&`.${e.className}`,(e.evenChild??e["even-child"]??e["nth-child(even)"])&&":nth-child(even)",(e.firstChild??e["first-child"])&&":first-child",(e.focusWithin??e["focus-within"])&&":focus-within",(e.lastChild??e["last-child"])&&":last-child",e.active&&":active",e.autofill&&":is(:-webkit-autofill, :autofill)",e.checked&&":checked",e.disabled&&":disabled",e.empty&&":empty",e.focus&&":focus",e.hover&&":hover",e.invalid&&":invalid",e.link&&":link",e.visited&&":visited",e["first-of-type"]&&":first-of-type",e["focus-visible"]&&":focus-visible",e["last-of-type"]&&":last-of-type",e["popover-open"]&&":popover-open",e.pseudoElement&&`::${e.pseudoElement}`].filter(Boolean).join("");function ee(e,{componentName:t,nodeId:r,variant:o}={}){let n=`[data-id="${e}"]`;return t&&(n+=`.${t}`),r&&(n+=`\\:${r}`),n=n.replace(/(^|[^\\])\//g,"$1\\/"),o&&(n+=Uo(o)),n}var Oe=e=>e.formulas&&Object.values(e.formulas).some(({exposeInContext:t})=>t)||e.workflows&&Object.values(e.workflows).some(({exposeInContext:t})=>t);function Ho(e,t,r){Object.entries(t.contexts??{}).forEach(([o,n])=>{let a=r.providers[[r.package,o].filter(w).join("/")];if(a)n.formulas.forEach(s=>{let i=a.formulaDataSignals[s];if(!i){console.warn(`Component error(${t.name}): Provider ${o} does not expose a formula named "${s}". Available formulas are: ["${Object.keys(a.formulaDataSignals).join('", "')}"]`);return}i.subscribe(l=>{e.update(u=>({...u,Contexts:{...u.Contexts,[o]:{...u.Contexts?.[o],[s]:l}}}))})});else if(!a&&r.env.runtime==="preview"&&r.toddle._preview){let s=r.components?.find(u=>u.name===[r.package,o].filter(w).join("/"));if(!s){console.error(`Component error(${t.name}): Could not find provider "${o}". No such component exist.`);return}let[,i]=o.split("/").reverse(),l={data:{Attributes:q(s.attributes??{},([u,m])=>[u,m.testValue])},component:s,root:r?.root,formulaCache:{},package:i??r?.package,toddle:r.toddle,env:r.env};s.route&&(l.data["URL parameters"]={...Object.fromEntries(s.route.path.filter(u=>u.type==="param").map(u=>[u.name,u.testValue])),...q(s.route.query,([u,{testValue:m}])=>[u,m])}),l.data.Variables=q(s.variables??{},([u,m])=>[u,A(m.initialValue,l)]),e.update(u=>({...u,Contexts:{...u.Contexts,[o]:Object.fromEntries(n.formulas.map(m=>{let c=s.formulas?.[m];return c?[m,A(c.formula,l)]:(console.warn(`Component error(${t.name}): Could not find formula "${m}" in provider "${o}"`),[m,null])}))}}))}})}function Vo(){window.logState=()=>{console.table(Object.entries(window.__components??{}).map(([e,t])=>({name:e,...t.get()})))}}function je(e,t){window.__components||(window.__components={}),window.__components[e.name]=t}function Ko(e){return w(e.formulas)?q(e.formulas,([t,r])=>{let{canCache:o,keys:n}=r.memoize?ru(r.formula,e):{canCache:!1,keys:[]},a,s;return[t,{get:i=>o&&a&&n.every(l=>ye(i,l)===ye(a,l))?{hit:!0,data:s}:{hit:!1},set:(i,l)=>{o&&(a=i,s=l)}}]}):{}}function ru(e,t){let r=[];function o(a){if(a&&(a.type==="path"&&a.path[0]!=="Args"&&r.push(a.path),Array.isArray(a?.arguments)&&a?.arguments?.forEach(s=>o(s.formula)),a.type==="record"&&Array.isArray(a.entries)&&a.entries.forEach(s=>o(s.formula)),a.type==="apply")){if(!t.formulas?.[a.name]?.memoize)throw new Error("Cannot memoize");o(t.formulas?.[a.name]?.formula)}}try{o(e)}catch{return{canCache:!1,keys:[]}}let n=[];return r.sort((a,s)=>a.length-s.length).forEach(a=>{n.some(s=>s.every((i,l)=>i===a[l]))||n.push(a)}),{canCache:!0,keys:n}}var se=e=>w(e)&&!(e.type==="value"&&!w(e.value));var Ne=class e{styleSheet;ruleMap;constructor(t,r){r?this.styleSheet=r:(this.styleSheet=new CSSStyleSheet,t.adoptedStyleSheets.push(this.getStyleSheet()))}registerProperty(t,r,o){this.ruleMap??=this.hydrateFromBase();let n=e.getFullSelector(e.escapeSelector(t),o),a=this.ruleMap.get(n);if(!a){let s=this.styleSheet.insertRule(n,this.styleSheet.cssRules.length),i=this.styleSheet.cssRules[s];for(;i.cssRules&&i.cssRules.length>0;)i=i.cssRules[0];a=i,this.ruleMap.set(n,a)}return s=>{a.style.setProperty(r,s)}}unregisterProperty(t,r,o){if(!this.ruleMap)return;let n=e.getFullSelector(e.escapeSelector(t),o),a=this.ruleMap.get(n);a&&(a.style.removeProperty(r),a.style.length===0&&(this.styleSheet.deleteRule(Array.from(this.ruleMap.keys()).indexOf(n)),this.ruleMap.delete(n)))}getStyleSheet(){return this.styleSheet}hydrateFromBase(){let t=new Map;for(let r=0;r<this.styleSheet.cssRules.length;r++){let o=this.styleSheet.cssRules[r],n=e.selectorFromCSSRule(o);for(;o.cssRules&&o.cssRules.length>0;)o=o.cssRules[0];t.set(n,o)}return t}static selectorFromCSSRule(t){switch(t.constructor.name){case"CSSStyleRule":return`${t.selectorText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSStartingStyleRule":return`@starting-style { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSMediaRule":return`@media ${t.media.mediaText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSNestedDeclarations":return"";default:return console.warn(`Unsupported CSS rule type: ${t.constructor.name}. Returning empty selector.`),""}}static getFullSelector(t,r){let o=t+(r?.startingStyle?" { @starting-style { }}":" { }");return r?.mediaQuery&&(o=`@media (${Object.entries(r.mediaQuery).map(([n,a])=>`${n}: ${a}`).filter(Boolean).join(") and (")}) { ${o}}`),o}static escapeSelector(t){return t.replace(/(^|[^\\])\//g,"$1\\/")}};var eo;function ie({selector:e,customPropertyName:t,signal:r,variant:o,root:n}){eo??=new Ne(n,n.getElementById(bo)?.sheet),r.subscribe(eo.registerProperty(e,t,o),{destroy:()=>{eo?.unregisterProperty(e,t,{mediaQuery:o?.mediaQuery,startingStyle:o?.startingStyle})}})}function Wo({node:e,path:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let i=[o.package,e.name].filter(w).join("/"),l=Te(i,o.components,o.env.runtime!=="preview");if(!l)return console.warn(`Could not find component "${i}" for component "${o.component.name}". Available components are: ["${o.components.map(R=>R.name).join('", "')}"]`),[];let u={component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env},m=r.map(R=>q(e.attrs,([E,j])=>[E,j?.type!=="value"?A(j,{...u,data:R}):j?.value])),c=U({Location:r.get().Location,Attributes:m.get(),Apis:q(l.apis??{},([R,E])=>[R,{data:null,isLoading:!!(E.autoFetch&&A(E.autoFetch,{...u,component:l,data:r.get()})),error:null}])});o.stores.theme.subscribe(R=>{c.update(E=>({...E,Page:{...E.Page,Theme:R}}))}),Ho(c,l,o),c.update(R=>({...R,Variables:q(l.variables??{},([E,j])=>[E,A(j.initialValue,{...u,component:l,data:c.get()})])})),je(l,c);let g=new AbortController;c.subscribe(()=>{},{destroy:()=>g.abort(`Component ${l.name} unmounted`)});let d=Ko(l),y={};Ce(Object.entries(l.apis??{})).forEach(([R,E])=>{Se(E)?y[R]=Fe(E,{...o,apis:y,component:l,dataSignal:c,abortSignal:g.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(j,O)=>{let f=Object.values(e.events).find(v=>v.trigger===j);f&&f.actions?.forEach(v=>M(v,{...r.get(),Event:O},o))}}):y[R]=Re({apiRequest:E,ctx:{...o,apis:y,component:l,dataSignal:c,abortSignal:g.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(j,O)=>{let f=Object.values(e.events).find(v=>v.trigger===j);f&&f.actions?.forEach(v=>M(v,{...r.get(),Event:O},o))}},componentData:c.get()})}),Object.values(y).filter(X).forEach(R=>{R.triggerActions(c.get())});let S=(R,E)=>{let j=Object.values(e.events).find(O=>O.trigger===R);j&&j.actions?.forEach(O=>M(O,{...r.get(),Event:E},o))},C=o.providers;if(Oe(l)){let R=Object.fromEntries(Object.entries(l.formulas??{}).filter(([,E])=>E.exposeInContext).map(([E,j])=>[E,c.map(O=>A(j.formula,{data:O,component:l,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}))]));C={...C,[l.name]:{component:l,formulaDataSignals:R,ctx:{...o,apis:y,component:l,dataSignal:c,abortSignal:g.signal,triggerEvent:S}}}}let T={};for(let R=0;R<e.children.length;R++){let E=e.children[R],O=o.component.nodes?.[E]?.slot??"default";T[O]=T[O]??[],T[O].push({id:E,path:`${t}.${R}[${O}]`,dataSignal:r,ctx:{...o,package:e.package??o.package}})}m.subscribe(R=>c.update(E=>({...E,Attributes:R})),{destroy:()=>c.destroy()});let k=xe({dataSignal:c,component:l,components:o.components,path:t,root:o.root,isRootComponent:!1,children:T,formulaCache:d,providers:C,stores:o.stores,apis:y,abortSignal:g.signal,package:e.package??o.package,parentElement:n,onEvent:S,toddle:o.toddle,env:o.env,namespace:s,instance:e.id==="root"?{...a,[o.component.name]:"root"}:{[o.component.name]:e.id??""}});return Object.entries(e.customProperties??{}).filter(([R,{formula:E}])=>se(E)).forEach(([R,E])=>ie({selector:ee(t,{componentName:o.component.name,nodeId:e.id}),signal:r.map(j=>ae(A(E.formula,{...u,data:j}),E.unit)),customPropertyName:R,root:o.root})),e.variants?.forEach(R=>{Object.entries(R.customProperties??{}).filter(([E,{formula:j}])=>se(j)).forEach(([E,j])=>ie({selector:ee(t,{componentName:o.component.name,nodeId:e.id,variant:R}),signal:r.map(O=>ae(A(j.formula,{...u,data:O}),j.unit)),customPropertyName:E,variant:R,root:o.root}))}),k}var ou=(e,t)=>{let r=t.length;for(;r;)e=e*33^t.charCodeAt(--r);return e},Go=e=>ou(5381,e),nu=/(a)(d)/gi;var Jo=e=>String.fromCharCode(e+(e>25?39:97));function Qo(e){let t="",r;for(r=Math.abs(e);r>52;r=r/52|0)t=Jo(r%52)+t;return(Jo(r%52)+t).replace(nu,"$1-$2")}var to=new Map,zo=e=>{let t=JSON.stringify(e);if(to.has(t))return to.get(t);let r=Qo(Go(t));return to.set(t,r),r},Yo=(e,t=!1)=>{let r=e.trim().replace(/\s+/g,"-");return t&&(r=r.replace(/[^a-zA-Z0-9-_]/g,o=>`\\${o}`)),/^[^a-zA-Z]/.test(r)&&(r=`_${r}`),r};function Zo(e){if(e instanceof DragEvent)return Array.from(e.dataTransfer?.items??[]).reduce((t,r)=>(t[r.type]=e.dataTransfer?.getData(r.type),t),{})}function Xo(e,t,r){return t.component.version===2&&r==="root"?`${t.package??t.toddle.project}-${e.tag}`:e.tag}function ro(e,t,r){switch(t){case"srcObject":case"src":e instanceof HTMLMediaElement?e[t]=r:e.setAttribute(t,String(r));break;case"value":case"type":{if(e instanceof SVGElement)P(r)&&e.setAttribute(t,String(r));else{let o=r;e instanceof HTMLProgressElement&&(!w(r)||!Number.isFinite(Number(r)))&&(o=0),e[t]=P(o)?String(o):void 0}break}case"muted":case"autoplay":e instanceof HTMLMediaElement?e[t]=P(r):e.setAttribute(t,String(r));break;default:P(r)?(e.setAttribute(t,String(r)),t==="autofocus"&&document.body.getAttribute("data-mode")!=="design"&&setTimeout(()=>e.focus(),100)):e.removeAttribute(t)}}function en({node:e,dataSignal:t,id:r,path:o,ctx:n,namespace:a,instance:s}){let i=Xo(e,n,r);switch(i){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,i):document.createElement(i),u={component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env};l.setAttribute("data-node-id",r),o&&l.setAttribute("data-id",o),n.isRootComponent===!1&&r!=="root"&&l.setAttribute("data-component",n.component.name);let m=zo([e.style,e.variants]);l.classList.add(m),s&&r==="root"&&Object.entries(s).forEach(([d,y])=>{l.classList.add(Yo(`${d}:${y}`))}),e.classes&&Object.entries(e.classes)?.forEach(([d,{formula:y}])=>{y?t.map(C=>P(A(y,{...u,data:C}))).subscribe(C=>C?l.classList.add(d):l.classList.remove(d)):l.classList.add(d)}),Object.entries(e.attrs).forEach(([d,y])=>{if(!w(y))return;let S,C=()=>{y.type==="value"?ro(l,d,y?.value):(S=t.map(T=>A(y,{...u,data:T})),S.subscribe(T=>{ro(l,d,T)}))};d==="autofocus"&&n.env.runtime==="preview"&&n.toddle._preview?n.toddle._preview.showSignal.subscribe(({testMode:T})=>{T?C():(S?.destroy(),l.removeAttribute(d))}):C()}),e["style-variables"]?.forEach(d=>{let{name:y,formula:S,unit:C}=d;t.map(k=>{let R=A(S,{...u,data:k});return C?R+C:R}).subscribe(k=>l.style.setProperty(`--${y}`,k))}),Object.entries(e.customProperties??{}).filter(([d,{formula:y}])=>se(y)).forEach(([d,{formula:y,unit:S}])=>{ie({customPropertyName:d,selector:n.env.runtime==="custom-element"&&n.isRootComponent&&o==="0"?`${ee(o)}, :host`:ee(o),signal:t.map(C=>ae(A(y,{...u,data:C}),S)),root:n.root})}),e.variants?.forEach(d=>{Object.entries(d.customProperties??{}).filter(([y,{formula:S}])=>se(S)).forEach(([y,{formula:S,unit:C}])=>{ie({customPropertyName:y,selector:ee(o,{variant:d}),variant:d,signal:t.map(T=>ae(A(S,{...u,data:T}),C)),root:n.root})})});let c=[];Object.values(e.events).forEach(d=>{d&&c.push([d.trigger,au({event:d,dataSignal:t,ctx:n})])}),c.forEach(([d,y])=>{l.addEventListener(d,y,{signal:n.abortSignal})});let g=e.tag.toLocaleLowerCase();if(g==="script"||g==="style"){let d=[];e.children.map(y=>n.component.nodes?.[y]).filter(y=>y?.type==="text").forEach(y=>{if(y.value.type==="value")d.push(String(y.value.value));else{let S=t.map(C=>String(A(y.value,{...u,data:C})));d.push(S)}}),d.every(y=>typeof y=="string")&&(l.textContent=d.join("")),d.filter(y=>typeof y!="string").forEach(y=>{y.subscribe(()=>{l.textContent=d.map(S=>typeof S=="string"?S:S.get()).join("")})})}else{let d=[];e.children.forEach((y,S)=>{d.push(...te({parentElement:l,id:y,path:o+"."+S,dataSignal:t,ctx:n,namespace:a,instance:s}))}),l.append(...d)}return t.subscribe(()=>{},{destroy:()=>{l.parentNode?.removeChild(l)}}),l}var au=({event:e,dataSignal:t,ctx:r})=>o=>(e?.actions?.forEach(n=>{if(o instanceof DragEvent&&(o.data=Zo(o)),o instanceof ClipboardEvent)try{o.data=Array.from(o.clipboardData?.items??[]).reduce((a,s)=>{try{a[s.type]=JSON.parse(o.clipboardData?.getData(s.type))}catch{a[s.type]=o.clipboardData?.getData(s.type)}return a},{})}catch(a){console.error("Could not get paste data",a)}M(n,{...t.get(),Event:o},r,o)}),!1);function tn({path:e,node:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let i=t.name??"default",l=[];if(o.children[i]?l=o.children[i].flatMap(u=>{let m=u.dataSignal.map(g=>g);r.subscribe(g=>g,{destroy:()=>m.destroy()});let c=su(i,t,o.component.nodes);return te({...u,dataSignal:m,parentElement:n,ctx:{...u.ctx,providers:o.providers},instance:a,namespace:s,path:c>0?`${u.path}(${c})`:u.path})}):l=t.children.flatMap((u,m)=>te({id:u,path:e+"."+m,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s})),o.env.runtime==="custom-element"&&o.isRootComponent){let u=document.createElement("slot");return u.setAttribute("name",i),l.forEach(m=>{u.appendChild(m)}),[u]}return l}function su(e,t,r){let o=0;if(r)for(let n in r){let a=r[n];if(a.type==="slot"&&a.name===e){if(a===t)break;o++}}return o}function rn({node:e,id:t,path:r,dataSignal:o,namespace:n,ctx:a}){if(n&&n!=="http://www.w3.org/1999/xhtml")return iu({node:e,dataSignal:o,ctx:a});let{value:s}=e,i=document.createElement("span");return i.setAttribute("data-node-id",t),typeof t=="string"&&i.setAttribute("data-id",r),a.isRootComponent===!1&&i.setAttribute("data-component",a.component.name),i.setAttribute("data-node-type","text"),s.type!=="value"?o.map(u=>String(A(s,{data:u,component:a.component,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:a.toddle,env:a.env}))).subscribe(u=>{i.innerText=u}):i.innerText=String(s.value),i}function iu({node:e,dataSignal:t,ctx:r}){let{value:o}=e,n=document.createTextNode("");return o.type!=="value"?t.map(s=>String(A(o,{data:s,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}))).subscribe(s=>{n.nodeValue=s}):n.nodeValue=String(o.value),n}function te({id:e,dataSignal:t,path:r,ctx:o,namespace:n,parentElement:a,instance:s}){let i=o.component.nodes?.[e];if(!i)return[];let l=({node:c,...g})=>{switch(c.type){case"element":return[en({node:c,...g})];case"component":{let d=Te(c.name,o.components,o.env.runtime!=="preview")!==void 0;return Wo({node:{...c,id:e},...g,ctx:{...o,package:c.package??(d?void 0:o.package)},parentElement:a})}case"text":return[rn({...g,node:c})];case"slot":return tn({...g,node:c})}};function u({node:c,dataSignal:g,id:d,path:y,ctx:S,namespace:C,parentElement:T,instance:k}){let R=!0,E=null,j=g.map(v=>P(A(c.condition,{data:v,component:S.component,formulaCache:S.formulaCache,root:S.root,package:S.package,toddle:S.toddle,env:S.env}))),O=[],f=v=>{if(v&&O.length===0){if(E?.destroy(),E=g.map(h=>h),O.push(...l({node:c,dataSignal:E,path:y,id:d,ctx:S,namespace:C,parentElement:T,instance:k})),R)return;if(!T||S.root.contains(T)===!1){console.error(`Conditional: Parent element does not exist for "${y}" This is likely due to the DOM being modified outside of Nordcraft.`);return}if(T.querySelector(`[data-id="${y}"]`)){console.warn(`Conditional: Element with data-id="${y}" already exists. This is likely due to the DOM being modified outside of Nordcraft`);return}let b=Xr(y,T);for(let h of O)T.insertBefore(h,b)}else v||(E?.destroy(),O.forEach(b=>b.remove()),O.splice(0,O.length))};return j.subscribe(f,{destroy:()=>{E?.destroy()}}),S.env.runtime==="preview"&&S.toddle._preview&&S.toddle._preview.showSignal.subscribe(({displayedNodes:v,testMode:b})=>{v.includes(y)&&!b?f(!0):f(j.get())}),R=!1,O}function m(){let c=!0,g=0,d=new Map;return t.map(S=>{let C=A(i?.repeat,{data:S,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env});return typeof C!="object"?[]:Object.entries(C??{})}).subscribe(S=>{let C=t.get(),T=C.ListItem,k=T?{Parent:T}:{},R=new Set,E=S.map(([O,f],v)=>{let b={...C,ListItem:{...k,Item:f,Index:Number(v),Key:O}},h=i?.repeatKey?A(i.repeatKey,{data:b,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):O;return R.has(h)&&(console.warn(`Duplicate key "${h}" found in repeat. Fallback to index as key. This will cause a re-render of the duplicated children on every change.`),h=O),R.add(h),{Key:O,Item:f,i:v,childData:b,childKey:h}});d.forEach((O,f)=>{R.has(f)||(O.cleanup(),O.dataSignal.destroy(),O.elements.forEach(v=>v.remove()))});let j=new Map;for(let{Key:O,Item:f,i:v,childData:b,childKey:h}of E){let D=d.get(h);if(D)j.set(h,D),D.dataSignal.update(F=>({...F,ListItem:{...k,Item:f,Index:Number(v),Key:O}}));else{let F=U(b),N=t.subscribe($=>{c||F.update(({ListItem:I})=>({...$,ListItem:I}))},{destroy:()=>F.destroy()}),_={node:i,id:e,dataSignal:F,path:O==="0"?r:`${r}(${++g})`,ctx:o,namespace:n,parentElement:a,instance:s},L=i.condition?u(_):l(_);j.set(h,{dataSignal:F,cleanup:N,elements:L})}}if(d=j,!(c||d.size===0)){if(!a||o.root.contains(a)===!1){console.error(`Repeat: Parent element does not exist for ${r}. This is likely due to the DOM being modified outside of Nordcraft.`);return}Bo(a,Array.from(d.values()).flatMap(O=>O.elements),Xr(r,a))}},{destroy:()=>Array.from(d.values()).forEach(S=>{S.cleanup(),S.dataSignal.destroy(),S.elements.forEach(C=>C.remove())})}),c=!1,Array.from(d.values()).flatMap(S=>S.elements)}return i.repeat?m():i.condition?u({node:i,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s}):l({node:i,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s})}var lu=new De;function xe({component:e,dataSignal:t,onEvent:r,isRootComponent:o,path:n,children:a,formulaCache:s,components:i,apis:l,abortSignal:u,root:m,providers:c,package:g,stores:d,parentElement:y,instance:S,toddle:C,namespace:T,env:k}){let R=le(`Render component: ${e.name}`,{component:e.name,path:n}),E={triggerEvent:r,component:e,components:i,dataSignal:t,isRootComponent:o,apis:l,formulaCache:s,children:a,abortSignal:u,root:m,providers:c,stores:d,package:g,toddle:C,env:k},j=te({id:"root",path:n,dataSignal:t,ctx:E,parentElement:y,namespace:T,instance:S});return lu.add(()=>{let O;e.onAttributeChange?.actions&&e.onAttributeChange.actions.length>0&&t.map(f=>f.Attributes).subscribe(f=>{O&&e.onAttributeChange?.actions?.forEach(v=>{M(v,t.get(),E,new CustomEvent("attribute-change",{detail:Object.entries(f).reduce((b,[h,D])=>((0,on.default)(D,O[h])===!1&&e.attributes?.[h]?.name&&(b[e.attributes?.[h]?.name]={current:O[h],new:D}),b),{})}))}),O=f}),e.onLoad?.actions?.forEach(f=>{M(f,t.get(),E)})}),R(),j}var nn=(e,t,r)=>{let n=e.route?.info?.theme?.formula;if(n&&n.type!=="value")return t.map(()=>A(n,{data:t.get(),component:e,root:document,package:void 0,toddle:window.toddle,env:r}));if(w(n))return U(n.value);{let s=document.cookie.split("; ").find(l=>l.startsWith(`${ne}=`))?.split("=")[1]??null,i=U(s);return"cookieStore"in window&&cookieStore.addEventListener("change",l=>{for(let u of l.changed)u.name===ne&&i.set(u.value??null);for(let u of l.deleted)u.name===ne&&i.set(null)}),i}};Vo();var re,Bp=e=>{let t=window.__toddle.component,{params:r,hash:o,query:n}=sn(t);re={isServer:!1,branchName:window.__toddle.branch,request:void 0,runtime:"page",logErrors:!0},window.toddle=(()=>{let a={},s={},i={},l={isEqual:an.default,errors:[],project:window.__toddle.project,branch:window.__toddle.branch,commit:window.__toddle.commit,components:window.__toddle.components,formulas:e?.formulas??{},actions:e?.actions??{},registerAction:(u,m)=>{if(a[u]){console.error("There already exists an action with the name ",u);return}a[u]=m},getAction:u=>a[u],registerFormula:(u,m,c)=>{if(s[u]){console.error("There already exists a formula with the name ",u);return}s[u]=m,c&&(i[u]=c)},getFormula:u=>s[u],getCustomAction:(u,m)=>l.actions[m??window.__toddle.project]?.[u]??l.actions[window.__toddle.project]?.[u],getCustomFormula:(u,m)=>l.formulas[m??window.__toddle.project]?.[u]??l.formulas[window.__toddle.project]?.[u],getArgumentInputData:(u,m,c,g)=>i[u]?.(m,c,g)||g,data:{},locationSignal:U({route:t.route,page:t.page,path:window.location.pathname,params:r,query:n,hash:o}),eventLog:[],pageState:window.__toddle.pageState,env:re};return l})(),Object.entries(Qr).forEach(([a,s])=>window.toddle.registerFormula("@toddle/"+a,s.default,"getArgumentInputData"in s?s.getArgumentInputData:void 0)),Object.entries(ot).forEach(([a,s])=>window.toddle.registerAction("@toddle/"+a,s.default))},Up=e=>{let t=window.__toddle.component;if(!e)throw new Error("Cant find root domNode");if(!window.toddle.components)throw new Error("Missing components");window.addEventListener("popstate",()=>{if(!t)return;let{params:l,hash:u,query:m}=sn(t);window.toddle.locationSignal.update(()=>({route:t?.route,page:t.page,path:window.location.pathname,params:l,query:m,hash:u}))});let r=window.toddle.locationSignal.map(({query:l,params:u})=>({...l,...u})),o=U({...window.toddle.pageState,Variables:q(t.variables??{},([l,u])=>[l,A(u.initialValue,{data:window.toddle.pageState,component:t,formulaCache:{},root:document,package:void 0,toddle:window.toddle,env:re})])});je(t,o),r.subscribe(l=>o.update(u=>({...u,"URL parameters":l,Attributes:l})));let n=new AbortController;o.subscribe(()=>{},{destroy:()=>n.abort(`Component ${t.name} unmounted`)});let a={component:t,components:window.toddle.components,root:document,isRootComponent:!0,dataSignal:o,abortSignal:n.signal,children:{},formulaCache:{},providers:{},stores:{theme:nn(t,o,re)},apis:{},toddle:window.toddle,triggerEvent:(l,u)=>console.info("EVENT FIRED",l,u),package:void 0,env:re};Ce(Object.entries(t.apis??{})).forEach(([l,u])=>{Se(u)?a.apis[l]=Fe(u,a):a.apis[l]=Re({apiRequest:u,ctx:a,componentData:o.get()})}),Object.values(a.apis).filter(X).forEach(l=>{l.triggerActions(o.get())});let s=a.providers;if(Oe(t)){let l=Object.fromEntries(Object.entries(t.formulas??{}).filter(([,u])=>u.exposeInContext).map(([u,m])=>[u,o.map(c=>A(m.formula,{data:c,component:t,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:window.toddle,env:re}))]));s={...s,[t.name]:{component:t,formulaDataSignals:l,ctx:a}}}a.stores.theme.subscribe(l=>{o.update(u=>({...u,Page:{...u.Page??{},Theme:l}})),w(l)?document.documentElement.setAttribute(Le,l):document.documentElement.removeAttribute(Le)}),cu(t,o);let i=xe({...a,providers:s,path:"0",package:void 0,onEvent:a.triggerEvent,parentElement:e,instance:{}});e.innerText="",i.forEach(l=>{e.appendChild(l)}),window.__toddle.isPageLoaded=!0};function sn(e){let t=window.location.pathname.split("/").slice(1),r={};e.route?e.route.path.forEach((s,i)=>{s.type==="param"?w(t[i])&&t[i]!==""?r[s.name]=decodeURIComponent(t[i]):r[s.name]=null:r[s.name]=s.name}):r=(Po(e.page??"",{decode:decodeURIComponent})(window.location.pathname)||{params:{}}).params;let[o]=window.location.hash.split("?"),n=uu(window.location.search),a=Object.keys(e.route?.query??{}).reduce((s,i)=>({...s,[i]:null}),{});return{params:r,hash:o?.slice(1),query:{...a,...n}}}var uu=e=>Object.fromEntries(e.replace("?","").split("&").filter(t=>t!=="").map(t=>t.split("=").map(decodeURIComponent))),cu=(e,t)=>{let r=c=>({data:c,component:e,root:document,package:void 0,toddle:window.toddle,env:re}),o=e.route?.info?.language?.formula;o&&o.type!=="value"&&t.map(c=>e?A(o,r(c)):null).subscribe(c=>{w(c)&&document.documentElement.lang!==c&&document.documentElement.setAttribute("lang",c)});let a=e.route?.info?.title?.formula;a&&a.type!=="value"&&t.map(c=>e?A(a,r(c)):null).subscribe(c=>{w(c)&&document.title!==c&&(document.title=c)});let i=e.route?.info?.description?.formula,l=e.route?.info?.meta,u=i&&i.type!=="value",m=qo(l);if(u||Object.keys(m).length>0){let c=d=>[...document.getElementsByTagName("meta")].find(y=>y.name===d||y.getAttribute("property")===d)??null,g=(d,y)=>{let S=null;if(w(y))S=document.querySelector(`[data-toddle-id="${y}"]`);else{let C=Object.entries(d.attrs??{}).find(([T])=>["property","name"].includes(T.toLowerCase()))?.[1];w(C)&&(S=c(C))}S||(S=document.createElement(d.tag),w(y)&&S.setAttribute("data-toddle-id",y),document.getElementsByTagName("head")[0].appendChild(S)),Object.entries(d.attrs??{}).forEach(([C,T])=>{e&&S.setAttribute(C,T)}),typeof d.content=="string"&&!vo.includes(d.tag.toLowerCase())&&(S.textContent=d.content)};if(u&&t.map(d=>e?A(i,r(d)):null).subscribe(d=>{if(w(d)){let y=document.getElementsByTagName("meta").namedItem("description");y||(y=document.createElement("meta"),y.name="description"),y.content=d,document.getElementsByTagName("head")[0].appendChild(y),l&&!Object.values(l).some(S=>Object.entries(S.attrs??{}).some(([C,T])=>C.toLowerCase()==="property"&&T.type==="value"&&typeof T.value=="string"&&T.value.toLowerCase()==="og:description"))&&g({tag:"meta",attrs:{property:"og:description",content:d},content:void 0})}}),Object.keys(m).length>0)for(let d in m){let y=m[d];y&&t.map(S=>{let C=r(S);return{attrs:Object.entries(y.attrs??{}).reduce((k,[R,E])=>e?{...k,[R]:A(E,C)}:k,{}),content:y.content?A(y.content,C):void 0}}).subscribe(({attrs:S,content:C})=>g({tag:y.tag,attrs:S,content:C},d))}}};export{Up as createRoot,Bp as initGlobalObject};
7
+ `],componentData:y,workflowCallback:j})}async function N({api:c,res:b,performance:f,streamType:y,useTextDecoder:j,parseChunk:R,parseChunksForData:P,delimiters:_,componentData:L,workflowCallback:$}){let I={chunks:[],currentChunk:"",add(G){let W=R(G);this.chunks.push(W),W&&(r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!0,data:P(this.chunks),error:null,response:{headers:Z(b.headers)}}}}),(c.client?.onMessage?.actions??[]).length>0&&i({eventName:"message",api:c,data:{body:W},componentData:L,workflowCallback:$}))},processChunk(G){let W=_?.find(ke=>G.includes(ke)),ro=this.currentChunk+G,oo=W?ro.split(W):[ro];this.currentChunk=oo.pop()??"",oo.forEach(ke=>this.add(ke))}},oe=j?b.body?.pipeThrough(new TextDecoderStream).getReader():b.body?.getReader();for(;oe;){let{done:G,value:W}=await oe.read();if(G)break;_?I.processChunk(W):I.add(W)}I.currentChunk&&I.add(I.currentChunk);let me={isLoading:!1,data:I.chunks,error:null,response:{status:b.status,headers:Z(b.headers)}};try{if(y==="json"){let G=JSON.parse(I.chunks.join(""));me.data=G}else y==="text"&&(me.data=I.chunks.join(""))}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:I.chunks.join("")})}return F({api:c,apiStatus:me,componentData:L,performance:f,workflowCallback:$})}function F({api:c,apiStatus:b,componentData:f,performance:y,workflowCallback:j}){y.responseEnd=Date.now();let R={body:b.data,status:b.response?.status,headers:b.response?.headers??void 0};Oo({apiName:c.name,response:{body:R.body,ok:!!(!b.error&&b.response?.status&&b.response.status<400),status:R.status,headers:R.headers},formulaContext:s(c,f),errorFormula:c.isError,performance:y})?(!R.body&&b.error&&(R.body=b.error),g({api:c,componentData:f,data:R,performance:y}),i({eventName:"failed",api:c,componentData:f,data:R,workflowCallback:j})):(u({api:c,componentData:f,data:R,performance:y}),i({eventName:"success",api:c,componentData:f,data:R,workflowCallback:j}))}function A(c){return Eo(c,[["client","onCompleted"],["client","onFailed"],["client","onMessage"],["service"],["server","ssr"]])}let T,O=new Fe;return T=r.dataSignal.map(c=>{let b=s(n,c),f=a(n,c);if(r.reportFormulaEvaluation){let y=c.Apis?.[n.name];y&&r.reportFormulaEvaluation(["apis",n.name],y)}return{request:f,api:A(n),headers:Array.from(f.requestSettings.headers.entries()),autoFetch:n.autoFetch?v(n.autoFetch,b,["autoFetch"]):!1,proxy:v(n.server?.proxy?.enabled.formula,b,["proxy"])}}),T.subscribe(async c=>{let{url:b,requestSettings:f}=c.request,y=w(n.autoFetch)&&(n.autoFetch.type!=="value"||n.autoFetch.value===!0)&&(window?.__toddle?.isPageLoaded??!1)===!1?r.toddle.pageState.Apis?.[Do(b,f)]:void 0;y?y.error?g({api:n,data:{body:y.error,status:y.response?.status,headers:y.response?.headers??void 0},performance:{requestStart:y.response?.performance?.requestStart??null,responseStart:y.response?.performance?.responseStart??null,responseEnd:y.response?.performance?.responseEnd??null},componentData:t}):u({api:n,data:{body:y.data,status:y.response?.status,headers:y.response?.headers??void 0},performance:{requestStart:y.response?.performance?.requestStart??null,responseStart:y.response?.performance?.responseStart??null,responseEnd:y.response?.performance?.responseEnd??null},componentData:t}):v(n.autoFetch,s(n,t),["autoFetch"])?await p({api:n,url:b,requestSettings:f,componentData:t}):r.dataSignal.get().Apis?.[n.name]||r.dataSignal.update(j=>({...j,Apis:{...j.Apis??{},[n.name]:{isLoading:!1,data:null,error:null}}}))}),{fetch:({actionInputs:c,actionModels:b,componentData:f,workflowCallback:y})=>{let j=Object.entries(c??{}).reduce((L,[$,I])=>(I!==null&&typeof I=="object"&&"formula"in I?L[$]=I:L[$]={formula:{type:"value",value:I}},L),{}),R={...n,inputs:{...n.inputs,...j},client:{...n.client,parserMode:n.client?.parserMode??"auto",onCompleted:{trigger:n.client?.onCompleted?.trigger??"success",actions:[...n.client?.onCompleted?.actions??[],...b?.onCompleted??[]]},onFailed:{trigger:n.client?.onFailed?.trigger??"failed",actions:[...n.client?.onFailed?.actions??[],...b?.onFailed??[]]},onMessage:{trigger:n.client?.onMessage?.trigger??"message",actions:[...n.client?.onMessage?.actions??[],...b?.onMessage??[]]}}},{url:P,requestSettings:_}=a(R,f);return p({api:R,url:P,requestSettings:_,componentData:f,workflowCallback:y})},cancel:O.abort,update:(c,b)=>{n=c;let f=s(n,b),y=n.autoFetch&&v(n.autoFetch,f,["autoFetch"]);if(y){let j=a(c,b);T?.set({request:j,api:A(c),autoFetch:y,proxy:v(c.server?.proxy?.enabled.formula,f,["proxy"]),headers:Array.from(j.requestSettings.headers.entries())})}},triggerActions:c=>{let b=r.dataSignal.get().Apis?.[n.name];!w(b)||b.data===null&&b.error===null||(b.error?i({eventName:"failed",api:n,data:{body:b.error,status:b.response?.status},componentData:c}):i({eventName:"success",api:n,data:{body:b.data},componentData:c}))},destroy:()=>T?.destroy()}}var Zo=e=>{if(!e)return{};let t={};for(let r in e){let o=e[r];(w(o.content)&&o.content.type!=="value"||Object.values(o.attrs??{}).some(n=>n.type!=="value"))&&(t[r]=o)}return t};var yn=fe(de(),1);var je=class{constructor(){}batchQueue=[];isProcessing=!1;processBatch(){this.isProcessing||(this.isProcessing=!0,queueMicrotask(()=>{for(;this.batchQueue.length>0;)this.batchQueue.shift()?.();this.isProcessing=!1}))}add(t){this.batchQueue.push(t),this.processBatch()}};var Zr=fe(de(),1),Yr=class{value;subscribers;subscriptions;destroying=!1;constructor(t){this.value=t,this.subscribers=new Set,this.subscriptions=[]}get(){return this.value}set(t){if(this.subscribers.size===0){this.value=t;return}if((0,Zr.default)(t,this.value)===!1){this.value=t;for(let r of this.subscribers)r.notify(this.value)}}update(t){this.set(t(this.value))}subscribe(t,r){let o={notify:t,destroy:r?.destroy};return this.subscribers.add(o),t(this.value),()=>{this.subscribers.delete(o)}}destroy(){if(!this.destroying){this.destroying=!0;for(let t of this.subscribers)t.destroy?.();this.subscribers.clear();for(let t of this.subscriptions)t();this.subscriptions.splice(0,this.subscriptions.length),this.destroying=!1}}cleanSubscribers(){for(let t of this.subscribers)t.destroy?.();this.subscribers.clear()}map(t){let r=U(t(this.value));return r.subscriptions.push(this.subscribe(o=>r.set(t(o)),{destroy:()=>r.destroy()})),r}};function U(e){return new Yr(e)}typeof window<"u"&&(window.signal=U,window.deepEqual=Zr.default);var gu,De=(e,t,r=!0)=>r?(gu??=new Map(t.map(o=>[o.name,o]))).get(e):t.find(o=>o.name===e);var Xr=(e,t)=>{let o=e.split(".").slice(-1)[0],n=parseInt(o),a=parseInt(String(o.split("(")[1]));for(let s of t.children){let i=s.getAttribute("data-id")?.split(".").slice(-1)[0],u=parseInt(String(i));if(u===n&&parseInt(String(i?.split("(")[1]))>a||u>n)return s}return null};function Xo(e,t,r=null){let o=r,n=o?o.previousSibling:e.lastChild;for(let a=t.length-1;a>=0;a--){let s=t[a];s===n?n=s.previousSibling:e.insertBefore(s,o),o=s}}var se=(e,t)=>w(e)&&w(t)&&!String(e).endsWith(t)?`${e}${t}`:e;var en=e=>[(e.className??e.class)&&`.${e.className}`,(e.evenChild??e["even-child"]??e["nth-child(even)"])&&":nth-child(even)",(e.firstChild??e["first-child"])&&":first-child",(e.focusWithin??e["focus-within"])&&":focus-within",(e.lastChild??e["last-child"])&&":last-child",e.active&&":active",e.autofill&&":is(:-webkit-autofill, :autofill)",e.checked&&":checked",e.disabled&&":disabled",e.empty&&":empty",e.focus&&":focus",e.hover&&":hover",e.invalid&&":invalid",e.link&&":link",e.visited&&":visited",e["first-of-type"]&&":first-of-type",e["focus-visible"]&&":focus-visible",e["last-of-type"]&&":last-of-type",e["popover-open"]&&":popover-open",e.pseudoElement&&`::${e.pseudoElement}`].filter(Boolean).join("");function ee(e,{componentName:t,nodeId:r,variant:o}={}){let n=`[data-id="${e}"]`;return t&&(n+=`.${t}`),r&&(n+=`\\:${r}`),n=n.replace(/(^|[^\\])\//g,"$1\\/"),o&&(n+=en(o)),n}var Oe=e=>e.formulas&&Object.values(e.formulas).some(({exposeInContext:t})=>t)||e.workflows&&Object.values(e.workflows).some(({exposeInContext:t})=>t);function tn(e,t,r){Object.entries(t.contexts??{}).forEach(([o,n])=>{let a=r.providers[[r.package,o].filter(w).join("/")];if(a)n.formulas.forEach(s=>{let l=a.formulaDataSignals[s];if(!l){console.warn(`Component error(${t.name}): Provider ${o} does not expose a formula named "${s}". Available formulas are: ["${Object.keys(a.formulaDataSignals).join('", "')}"]`);return}l.subscribe(i=>{e.update(u=>({...u,Contexts:{...u.Contexts,[o]:{...u.Contexts?.[o],[s]:i}}}))})});else if(!a&&r.env.runtime==="preview"&&r.toddle._preview){let s=r.components?.find(u=>u.name===[r.package,o].filter(w).join("/"));if(!s){console.error(`Component error(${t.name}): Could not find provider "${o}". No such component exist.`);return}let[,l]=o.split("/").reverse(),i={data:{Attributes:q(s.attributes??{},([u,g])=>[u,g.testValue])},component:s,root:r?.root,formulaCache:{},package:l??r?.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation};s.route&&(i.data["URL parameters"]={...Object.fromEntries(s.route.path.filter(u=>u.type==="param").map(u=>[u.name,u.testValue])),...q(s.route.query,([u,{testValue:g}])=>[u,g])}),i.data.Variables=q(s.variables??{},([u,g])=>[u,v(g.initialValue,{...i,reportFormulaEvaluation:void 0})]),e.update(u=>({...u,Contexts:{...u.Contexts,[o]:Object.fromEntries(n.formulas.map(g=>{let p=s.formulas?.[g];return p?[g,v(p.formula,{...i,reportFormulaEvaluation:void 0})]:(console.warn(`Component error(${t.name}): Could not find formula "${g}" in provider "${o}"`),[g,null])}))}}))}})}function rn(){window.logState=()=>{console.table(Object.entries(window.__components??{}).map(([e,t])=>({name:e,...t.get()})))}}function Te(e,t){window.__components||(window.__components={}),window.__components[e.name]=t}function on(e){return w(e.formulas)?q(e.formulas,([t,r])=>{let{canCache:o,keys:n}=r.memoize?hu(r.formula,e):{canCache:!1,keys:[]},a,s;return[t,{get:l=>o&&a&&n.every(i=>ye(l,i)===ye(a,i))?{hit:!0,data:s}:{hit:!1},set:(l,i)=>{o&&(a=l,s=i)}}]}):{}}function hu(e,t){let r=[];function o(a){if(a&&(a.type==="path"&&a.path[0]!=="Args"&&r.push(a.path),Array.isArray(a?.arguments)&&a?.arguments?.forEach(s=>o(s.formula)),a.type==="record"&&Array.isArray(a.entries)&&a.entries.forEach(s=>o(s.formula)),a.type==="apply")){if(!t.formulas?.[a.name]?.memoize)throw new Error("Cannot memoize");o(t.formulas?.[a.name]?.formula)}}try{o(e)}catch{return{canCache:!1,keys:[]}}let n=[];return r.sort((a,s)=>a.length-s.length).forEach(a=>{n.some(s=>s.every((l,i)=>l===a[i]))||n.push(a)}),{canCache:!0,keys:n}}var ie=e=>w(e)&&!(e.type==="value"&&!w(e.value));var Pe=class e{styleSheet;ruleMap;constructor(t,r){r?this.styleSheet=r:(this.styleSheet=new CSSStyleSheet,t.adoptedStyleSheets.push(this.getStyleSheet()))}registerProperty(t,r,o){this.ruleMap??=this.hydrateFromBase();let n=e.getFullSelector(e.escapeSelector(t),o),a=this.ruleMap.get(n);if(!a){let s=this.styleSheet.insertRule(n,this.styleSheet.cssRules.length),l=this.styleSheet.cssRules[s];for(;l.cssRules&&l.cssRules.length>0;)l=l.cssRules[0];a=l,this.ruleMap.set(n,a)}return s=>{a.style.setProperty(r,s)}}unregisterProperty(t,r,o){if(!this.ruleMap)return;let n=e.getFullSelector(e.escapeSelector(t),o),a=this.ruleMap.get(n);a&&(a.style.removeProperty(r),a.style.length===0&&(this.styleSheet.deleteRule(Array.from(this.ruleMap.keys()).indexOf(n)),this.ruleMap.delete(n)))}getStyleSheet(){return this.styleSheet}hydrateFromBase(){let t=new Map;for(let r=0;r<this.styleSheet.cssRules.length;r++){let o=this.styleSheet.cssRules[r],n=e.selectorFromCSSRule(o);for(;o.cssRules&&o.cssRules.length>0;)o=o.cssRules[0];t.set(n,o)}return t}static selectorFromCSSRule(t){switch(t.constructor.name){case"CSSStyleRule":return`${t.selectorText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSStartingStyleRule":return`@starting-style { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSMediaRule":return`@media ${t.media.mediaText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSNestedDeclarations":return"";default:return console.warn(`Unsupported CSS rule type: ${t.constructor.name}. Returning empty selector.`),""}}static getFullSelector(t,r){let o=t+(r?.startingStyle?" { @starting-style { }}":" { }");return r?.mediaQuery&&(o=`@media (${Object.entries(r.mediaQuery).map(([n,a])=>`${n}: ${a}`).filter(Boolean).join(") and (")}) { ${o}}`),o}static escapeSelector(t){return t.replace(/(^|[^\\])\//g,"$1\\/")}};var nn=new WeakMap;function le({selector:e,customPropertyName:t,signal:r,variant:o,root:n}){let a=nn.get(n);a||(a=new Pe(n,n.getElementById(To)?.sheet),nn.set(n,a)),r.subscribe(a.registerProperty(e,t,o),{destroy:()=>{a?.unregisterProperty(e,t,{mediaQuery:o?.mediaQuery,startingStyle:o?.startingStyle})}})}function an({node:e,path:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let l=[o.package,e.name].filter(w).join("/"),i=De(l,o.components,o.env.runtime!=="preview");if(!i)return console.warn(`Could not find component "${l}" for component "${o.component.name}". Available components are: ["${o.components.map(F=>F.name).join('", "')}"]`),[];let u={component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env,reportFormulaEvaluation:o.reportFormulaEvaluation},g=r.map(F=>q(e.attrs,([A,T])=>[A,T?.type!=="value"?v(T,{...u,data:F}):T?.value])),p=U({Location:r.get().Location,Attributes:g.get(),Apis:q(Ao(i.apis??{},([F,A])=>w(A)),([F,A])=>[F,{data:null,isLoading:!!(A.autoFetch&&v(A.autoFetch,{...u,component:i,data:r.get()})),error:null}])});o.stores.theme.subscribe(F=>{p.update(A=>({...A,Page:{...A.Page,Theme:F}}))}),tn(p,i,o),p.update(F=>({...F,Variables:q(i.variables??{},([A,T])=>[A,v(T.initialValue,{...u,component:i,data:p.get()})])})),Te(i,p);let h=new AbortController;p.subscribe(F=>{Object.entries(F.Variables??{}).forEach(([A,T])=>{o.reportFormulaEvaluation?.(["variables",A],T)})},{destroy:()=>h.abort(`Component ${i.name} unmounted`)});let d=on(i),E={};Ce(Object.entries(i.apis??{}).filter(F=>w(F[1]))).forEach(([F,A])=>{Ae(A)?E[F]=we(A,{...o,apis:E,component:i,dataSignal:p,abortSignal:h.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(T,O)=>{let c=Object.values(e.events).find(b=>b.trigger===T);c&&c.actions?.forEach(b=>M(b,{...r.get(),Event:O},o))}}):E[F]=Re({apiRequest:A,ctx:{...o,apis:E,component:i,dataSignal:p,abortSignal:h.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(T,O)=>{let c=Object.values(e.events).find(b=>b.trigger===T);c&&c.actions?.forEach(b=>M(b,{...r.get(),Event:O},o))}},componentData:p.get()})}),Object.values(E).filter(X).forEach(F=>{F.triggerActions(p.get())});let S=(F,A)=>{let T=Object.values(e.events).find(O=>O.trigger===F);T&&T.actions?.forEach(O=>M(O,{...r.get(),Event:A},o))},C=o.providers;if(Oe(i)){let F=Object.fromEntries(Object.entries(i.formulas??{}).filter(([,A])=>A.exposeInContext).map(([A,T])=>[A,p.map(O=>v(T.formula,{data:O,component:i,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env,jsonPath:o.jsonPath,reportFormulaEvaluation:o.reportFormulaEvaluation},["formulas",A]))]));C={...C,[i.name]:{component:i,formulaDataSignals:F,ctx:{...o,apis:E,component:i,dataSignal:p,abortSignal:h.signal,triggerEvent:S}}}}let D={};for(let F=0;F<e.children.length;F++){let A=e.children[F],O=o.component.nodes?.[A]?.slot??"default";D[O]=D[O]??[],D[O].push({id:A,path:`${t}.${F}[${O}]`,dataSignal:r,ctx:{...o,package:e.package??o.package}})}g.subscribe(F=>p.update(A=>({...A,Attributes:F})),{destroy:()=>p.destroy()});let N=Ne({dataSignal:p,component:i,components:o.components,path:t,root:o.root,isRootComponent:!1,children:D,formulaCache:d,providers:C,stores:o.stores,apis:E,abortSignal:h.signal,package:e.package??o.package,parentElement:n,onEvent:S,toddle:o.toddle,env:o.env,namespace:s,instance:e.id==="root"?{...a,[o.component.name]:"root"}:{[o.component.name]:e.id??""},jsonPath:o.jsonPath,reportFormulaEvaluation:o.reportFormulaEvaluation});return Object.entries(e.customProperties??{}).filter(([F,{formula:A}])=>ie(A)).forEach(([F,A])=>le({selector:ee(t,{componentName:o.component.name,nodeId:e.id}),signal:r.map(T=>se(v(A.formula,{...u,data:T}),A.unit)),customPropertyName:F,root:o.root})),e.variants?.forEach(F=>{Object.entries(F.customProperties??{}).filter(([A,{formula:T}])=>ie(T)).forEach(([A,T])=>le({selector:ee(t,{componentName:o.component.name,nodeId:e.id,variant:F}),signal:r.map(O=>se(v(T.formula,{...u,data:O}),T.unit)),customPropertyName:A,variant:F,root:o.root}))}),N}var yu=(e,t)=>{let r=t.length;for(;r;)e=e*33^t.charCodeAt(--r);return e},ln=e=>yu(5381,e),bu=/(a)(d)/gi;var sn=e=>String.fromCharCode(e+(e>25?39:97));function un(e){let t="",r;for(r=Math.abs(e);r>52;r=r/52|0)t=sn(r%52)+t;return(sn(r%52)+t).replace(bu,"$1-$2")}var eo=new Map,pn=e=>{let t=JSON.stringify(e);if(eo.has(t))return eo.get(t);let r=un(ln(t));return eo.set(t,r),r},dn=(e,t=!1)=>{let r=e.trim().replace(/\s+/g,"-");return t&&(r=r.replace(/[^a-zA-Z0-9-_]/g,o=>`\\${o}`)),/^[^a-zA-Z]/.test(r)&&(r=`_${r}`),r};function cn(e){if(e instanceof DragEvent)return Array.from(e.dataTransfer?.items??[]).reduce((t,r)=>(t[r.type]=e.dataTransfer?.getData(r.type),t),{})}function mn(e,t,r){return t.component.version===2&&r==="root"?`${t.package??t.toddle.project}-${e.tag}`:e.tag}function to(e,t,r){switch(t){case"srcObject":case"src":e instanceof HTMLMediaElement?e[t]=r:e.setAttribute(t,String(r));break;case"value":case"type":{if(e instanceof SVGElement)x(r)&&e.setAttribute(t,String(r));else{let o=r;e instanceof HTMLProgressElement&&(!w(r)||!Number.isFinite(Number(r)))&&(o=0),e[t]=x(o)?String(o):void 0}break}case"muted":case"autoplay":e instanceof HTMLMediaElement?e[t]=x(r):e.setAttribute(t,String(r));break;default:x(r)?(e.setAttribute(t,String(r)),t==="autofocus"&&document.body.getAttribute("data-mode")!=="design"&&setTimeout(()=>e.focus(),100)):e.removeAttribute(t)}}function fn({node:e,dataSignal:t,id:r,path:o,ctx:n,namespace:a,instance:s}){let l=mn(e,n,r);switch(l){case"svg":{a="http://www.w3.org/2000/svg";break}case"math":{a="http://www.w3.org/1998/Math/MathML";break}}e.attrs.xmlns?.type==="value"&&(a=String(e.attrs.xmlns.value));let i=a?document.createElementNS(a,l):document.createElement(l),u={component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env,reportFormulaEvaluation:n.reportFormulaEvaluation};i.setAttribute("data-node-id",r),o&&i.setAttribute("data-id",o),n.isRootComponent===!1&&r!=="root"&&i.setAttribute("data-component",n.component.name);let g=pn([e.style,e.variants]);i.classList.add(g),s&&r==="root"&&Object.entries(s).forEach(([d,E])=>{i.classList.add(dn(`${d}:${E}`))}),e.classes&&Object.entries(e.classes)?.forEach(([d,{formula:E}])=>{E?t.map(C=>x(v(E,{...u,data:C}))).subscribe(C=>C?i.classList.add(d):i.classList.remove(d)):i.classList.add(d)}),Object.entries(e.attrs).forEach(([d,E])=>{if(!w(E))return;let S,C=()=>{if(E.type==="value")to(i,d,E?.value);else{let D=["nodes",r,"attrs",d];S=t.map(N=>{let F=v(E,{...u,data:N},D);return n.reportFormulaEvaluation?.(D,F),F}),S.subscribe(N=>{to(i,d,N)})}};d==="autofocus"&&n.env.runtime==="preview"&&n.toddle._preview?n.toddle._preview.showSignal.subscribe(({testMode:D})=>{D?C():(S?.destroy(),i.removeAttribute(d))}):C()}),e["style-variables"]?.forEach((d,E)=>{let{name:S,formula:C,unit:D}=d,N=["nodes",r,"style-variables",E,"formula"];t.map(A=>{let T=v(C,{...u,data:A},N);return n.reportFormulaEvaluation?.(N,T),D?T+D:T}).subscribe(A=>i.style.setProperty(`--${S}`,A))}),Object.entries(e.customProperties??{}).filter(([d,{formula:E}])=>ie(E)).forEach(([d,{formula:E,unit:S}])=>{let C=["nodes",r,"customProperties",d,"formula"];le({customPropertyName:d,selector:n.env.runtime==="custom-element"&&n.isRootComponent&&o==="0"?`${ee(o)}, :host`:ee(o),signal:t.map(D=>{let N=v(E,{...u,data:D},C);return n.reportFormulaEvaluation?.(C,N),se(N,S)}),root:n.root})}),e.variants?.forEach((d,E)=>{Object.entries(d.customProperties??{}).filter(([S,{formula:C}])=>ie(C)).forEach(([S,{formula:C,unit:D}])=>{let N=["nodes",r,"variants",E,"customProperties",S,"formula"];le({customPropertyName:S,selector:ee(o,{variant:d}),variant:d,signal:t.map(F=>{let A=v(C,{...u,data:F},N);return n.reportFormulaEvaluation?.(N,A),se(A,D)}),root:n.root})})});let p=[];Object.values(e.events).forEach(d=>{d&&p.push([d.trigger,vu({event:d,dataSignal:t,ctx:n})])}),p.forEach(([d,E])=>{i.addEventListener(d,E,{signal:n.abortSignal})});let h=e.tag.toLocaleLowerCase();if(h==="script"||h==="style"){let d=[];e.children.map(E=>n.component.nodes?.[E]).filter(E=>E?.type==="text").forEach(E=>{if(E.value.type==="value")d.push(String(E.value.value));else{let S=t.map(C=>String(v(E.value,{...u,data:C})));d.push(S)}}),d.every(E=>typeof E=="string")&&(i.textContent=d.join("")),d.filter(E=>typeof E!="string").forEach(E=>{E.subscribe(()=>{i.textContent=d.map(S=>typeof S=="string"?S:S.get()).join("")})})}else{let d=[];e.children.forEach((E,S)=>{d.push(...te({parentElement:i,id:E,path:o+"."+S,dataSignal:t,ctx:{...n,jsonPath:["nodes",E]},namespace:a,instance:s}))}),i.append(...d)}return t.subscribe(()=>{},{destroy:()=>{i.parentNode?.removeChild(i)}}),i}var vu=({event:e,dataSignal:t,ctx:r})=>o=>(e?.actions?.forEach(n=>{if(o instanceof DragEvent&&(o.data=cn(o)),o instanceof ClipboardEvent)try{o.data=Array.from(o.clipboardData?.items??[]).reduce((a,s)=>{try{a[s.type]=JSON.parse(o.clipboardData?.getData(s.type))}catch{a[s.type]=o.clipboardData?.getData(s.type)}return a},{})}catch(a){console.error("Could not get paste data",a)}M(n,{...t.get(),Event:o},r,o)}),!1);function gn({path:e,node:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let l=t.name??"default",i=[];if(o.children[l]?i=o.children[l].flatMap(u=>{let g=u.dataSignal.map(h=>h);r.subscribe(h=>h,{destroy:()=>g.destroy()});let p=Eu(l,t,o.component.nodes);return te({...u,dataSignal:g,parentElement:n,ctx:{...u.ctx,providers:o.providers,jsonPath:["nodes",u.id]},instance:a,namespace:s,path:p>0?`${u.path}(${p})`:u.path})}):i=t.children.flatMap((u,g)=>te({id:u,path:e+"."+g,dataSignal:r,ctx:{...o,jsonPath:["nodes",u]},parentElement:n,instance:a,namespace:s})),o.env.runtime==="custom-element"&&o.isRootComponent){let u=document.createElement("slot");return u.setAttribute("name",l),i.forEach(g=>{u.appendChild(g)}),[u]}return i}function Eu(e,t,r){let o=0;if(r)for(let n in r){let a=r[n];if(a.type==="slot"&&a.name===e){if(a===t)break;o++}}return o}function hn({node:e,id:t,path:r,dataSignal:o,namespace:n,ctx:a}){if(n&&n!=="http://www.w3.org/1999/xhtml")return Au({node:e,dataSignal:o,ctx:a});let{value:s}=e,l=document.createElement("span");return l.setAttribute("data-node-id",t),typeof t=="string"&&l.setAttribute("data-id",r),a.isRootComponent===!1&&l.setAttribute("data-component",a.component.name),l.setAttribute("data-node-type","text"),s.type!=="value"?o.map(u=>String(v(s,{data:u,component:a.component,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:a.toddle,env:a.env,jsonPath:a.jsonPath,reportFormulaEvaluation:a.reportFormulaEvaluation},["value"]))).subscribe(u=>{l.innerText=u}):(a.reportFormulaEvaluation?.([...a.jsonPath??[],"value"],s.value),l.innerText=String(s.value)),l}function Au({node:e,dataSignal:t,ctx:r}){let{value:o}=e,n=document.createTextNode("");return o.type!=="value"?t.map(s=>String(v(o,{data:s,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env,jsonPath:r.jsonPath,reportFormulaEvaluation:r.reportFormulaEvaluation},["value"]))).subscribe(s=>{n.nodeValue=s}):n.nodeValue=String(o.value),n}function te({id:e,dataSignal:t,path:r,ctx:o,namespace:n,parentElement:a,instance:s}){let l=o.component.nodes?.[e];if(!l)return[];let i=({node:p,...h})=>{switch(p.type){case"element":return[fn({node:p,...h})];case"component":{let d=De(p.name,o.components,o.env.runtime!=="preview")!==void 0;return an({node:{...p,id:e},...h,ctx:{...o,package:p.package??(d?void 0:o.package)},parentElement:a})}case"text":return[hn({...h,node:p})];case"slot":return gn({...h,node:p})}};function u({node:p,dataSignal:h,id:d,path:E,ctx:S,namespace:C,parentElement:D,instance:N}){let F=!0,A=null,T=h.map(b=>{let f=["nodes",d,"condition"],y=x(v(p.condition,{data:b,component:S.component,formulaCache:S.formulaCache,root:S.root,package:S.package,toddle:S.toddle,env:S.env,jsonPath:S.jsonPath,reportFormulaEvaluation:S.reportFormulaEvaluation},f));return S.reportFormulaEvaluation?.(f,y),y}),O=[],c=b=>{if(b&&O.length===0){if(A?.destroy(),A=h.map(y=>y),O.push(...i({node:p,dataSignal:A,path:E,id:d,ctx:S,namespace:C,parentElement:D,instance:N})),F)return;if(!D||S.root.contains(D)===!1){console.error(`Conditional: Parent element does not exist for "${E}" This is likely due to the DOM being modified outside of Nordcraft.`);return}if(D.querySelector(`[data-id="${E}"]`)){console.warn(`Conditional: Element with data-id="${E}" already exists. This is likely due to the DOM being modified outside of Nordcraft`);return}let f=Xr(E,D);for(let y of O)D.insertBefore(y,f)}else b||(A?.destroy(),O.forEach(f=>f.remove()),O.splice(0,O.length))};return T.subscribe(c,{destroy:()=>{A?.destroy()}}),S.env.runtime==="preview"&&S.toddle._preview&&S.toddle._preview.showSignal.subscribe(({displayedNodes:b,testMode:f})=>{b.includes(E)&&!f?c(!0):c(T.get())}),F=!1,O}function g(){let p=!0,h=0,d=new Map;return t.map(S=>{let C=["nodes",e,"repeat"],D=v(l?.repeat,{data:S,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env},C);return o.reportFormulaEvaluation?.(C,D),typeof D!="object"?[]:Object.entries(D??{})}).subscribe(S=>{let C=t.get(),D=C.ListItem,N=D?{Parent:D}:{},F=new Set,A=S.map(([O,c],b)=>{let f={...C,ListItem:{...N,Item:c,Index:Number(b),Key:O}},y=["nodes",e,"repeatKey"],j=l?.repeatKey?v(l.repeatKey,{data:f,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):O;return l?.repeatKey&&o.reportFormulaEvaluation?.(y,j),F.has(j)&&(console.warn(`Duplicate key "${j}" found in repeat. Fallback to index as key. This will cause a re-render of the duplicated children on every change.`),j=O),F.add(j),{Key:O,Item:c,i:b,childData:f,childKey:j}});d.forEach((O,c)=>{F.has(c)||(O.cleanup(),O.dataSignal.destroy(),O.elements.forEach(b=>b.remove()))});let T=new Map;for(let{Key:O,Item:c,i:b,childData:f,childKey:y}of A){let j=d.get(y);if(j)T.set(y,j),j.dataSignal.update(R=>({...R,ListItem:{...N,Item:c,Index:Number(b),Key:O}}));else{let R=U(f),P=t.subscribe($=>{p||R.update(({ListItem:I})=>({...$,ListItem:I}))},{destroy:()=>R.destroy()}),_={node:l,id:e,dataSignal:R,path:O==="0"?r:`${r}(${++h})`,ctx:o,namespace:n,parentElement:a,instance:s},L=l.condition?u(_):i(_);T.set(y,{dataSignal:R,cleanup:P,elements:L})}}if(d=T,!(p||d.size===0)){if(!a||o.root.contains(a)===!1){console.error(`Repeat: Parent element does not exist for ${r}. This is likely due to the DOM being modified outside of Nordcraft.`);return}Xo(a,Array.from(d.values()).flatMap(O=>O.elements),Xr(r,a))}},{destroy:()=>Array.from(d.values()).forEach(S=>{S.cleanup(),S.dataSignal.destroy(),S.elements.forEach(C=>C.remove())})}),p=!1,Array.from(d.values()).flatMap(S=>S.elements)}return l.repeat?g():l.condition?u({node:l,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s}):i({node:l,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s})}var Su=new je;function Ne({component:e,dataSignal:t,onEvent:r,isRootComponent:o,path:n,children:a,formulaCache:s,components:l,apis:i,abortSignal:u,root:g,providers:p,package:h,stores:d,parentElement:E,instance:S,toddle:C,namespace:D,env:N,jsonPath:F,reportFormulaEvaluation:A}){let T=ne(`Render component: ${e.name}`,{component:e.name,path:n}),O={triggerEvent:r,component:e,components:l,dataSignal:t,isRootComponent:o,apis:i,formulaCache:s,children:a,abortSignal:u,root:g,providers:p,stores:d,package:h,toddle:C,env:N,jsonPath:F,reportFormulaEvaluation:A},c=te({id:"root",path:n,dataSignal:t,ctx:{...O,jsonPath:["nodes","root"]},parentElement:E,namespace:D,instance:S});return Su.add(()=>{let b;e.onAttributeChange?.actions&&e.onAttributeChange.actions.length>0&&t.map(f=>f.Attributes).subscribe(f=>{b&&e.onAttributeChange?.actions?.forEach(y=>{M(y,t.get(),O,new CustomEvent("attribute-change",{detail:Object.entries(f).reduce((j,[R,P])=>((0,yn.default)(P,b[R])===!1&&e.attributes?.[R]?.name&&(j[e.attributes?.[R]?.name]={current:b[R],new:P}),j),{})}))}),b=f}),e.onLoad?.actions?.forEach(f=>{M(f,t.get(),O)})}),T(),c}var bn=(e,t,r)=>{let n=e.route?.info?.theme?.formula;if(n&&n.type!=="value")return t.map(()=>v(n,{data:t.get(),component:e,root:document,package:void 0,toddle:window.toddle,env:r}));if(w(n))return U(n.value);{let s=document.cookie.split("; ").find(i=>i.startsWith(`${ae}=`))?.split("=")[1]??null,l=U(s);return"cookieStore"in window&&cookieStore.addEventListener("change",i=>{for(let u of i.changed)u.name===ae&&l.set(u.value??null);for(let u of i.deleted)u.name===ae&&l.set(null)}),l}};rn();var re,Nm=e=>{let t=window.__toddle.component,{params:r,hash:o,query:n}=En(t);re={isServer:!1,branchName:window.__toddle.branch,request:void 0,runtime:"page",logErrors:!0},window.toddle=(()=>{let a={},s={},l={},i={isEqual:vn.default,errors:[],project:window.__toddle.project,branch:window.__toddle.branch,commit:window.__toddle.commit,components:window.__toddle.components,formulas:e?.formulas??{},actions:e?.actions??{},registerAction:(u,g)=>{if(a[u]){console.error("There already exists an action with the name ",u);return}a[u]=g},getAction:u=>a[u],registerFormula:(u,g,p)=>{if(s[u]){console.error("There already exists a formula with the name ",u);return}s[u]=g,p&&(l[u]=p)},getFormula:u=>s[u],getCustomAction:(u,g)=>i.actions[g??window.__toddle.project]?.[u]??i.actions[window.__toddle.project]?.[u],getCustomFormula:(u,g)=>i.formulas[g??window.__toddle.project]?.[u]??i.formulas[window.__toddle.project]?.[u],getArgumentInputData:(u,g,p,h)=>l[u]?.(g,p,h)||h,data:{},locationSignal:U({route:t.route,page:t.page,path:window.location.pathname,params:r,query:n,hash:o}),eventLog:[],pageState:window.__toddle.pageState,env:re};return i})(),Object.entries(Qr).forEach(([a,s])=>window.toddle.registerFormula("@toddle/"+a,s.default,"getArgumentInputData"in s?s.getArgumentInputData:void 0)),Object.entries(rt).forEach(([a,s])=>window.toddle.registerAction("@toddle/"+a,s.default))},km=e=>{let t=window.__toddle.component;if(!e)throw new Error("Cant find root domNode");if(!window.toddle.components)throw new Error("Missing components");window.addEventListener("popstate",()=>{if(!t)return;let{params:i,hash:u,query:g}=En(t);window.toddle.locationSignal.update(()=>({route:t?.route,page:t.page,path:window.location.pathname,params:i,query:g,hash:u}))});let r=window.toddle.locationSignal.map(({query:i,params:u})=>({...i,...u})),o=U({...window.toddle.pageState,Variables:q(t.variables??{},([i,u])=>[i,v(u.initialValue,{data:window.toddle.pageState,component:t,formulaCache:{},root:document,package:void 0,toddle:window.toddle,env:re,jsonPath:[]},["variables",i])])});Te(t,o),r.subscribe(i=>o.update(u=>({...u,"URL parameters":i,Attributes:i})));let n=new AbortController;o.subscribe(()=>{},{destroy:()=>n.abort(`Component ${t.name} unmounted`)});let a={component:t,components:window.toddle.components,root:document,isRootComponent:!0,dataSignal:o,abortSignal:n.signal,children:{},formulaCache:{},providers:{},stores:{theme:bn(t,o,re)},apis:{},toddle:window.toddle,triggerEvent:(i,u)=>console.info("EVENT FIRED",i,u),package:void 0,env:re,jsonPath:[]};Ce(Object.entries(t.apis??{}).filter(i=>w(i[1]))).forEach(([i,u])=>{Ae(u)?a.apis[i]=we(u,{...a,jsonPath:["apis",i]}):a.apis[i]=Re({apiRequest:u,ctx:{...a,jsonPath:["apis",i]},componentData:o.get()})}),Object.values(a.apis).filter(X).forEach(i=>{i.triggerActions(o.get())});let s=a.providers;if(Oe(t)){let i=Object.fromEntries(Object.entries(t.formulas??{}).filter(([,u])=>u.exposeInContext).map(([u,g])=>[u,o.map(p=>v(g.formula,{data:p,component:t,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:window.toddle,env:re}))]));s={...s,[t.name]:{component:t,formulaDataSignals:i,ctx:a}}}a.stores.theme.subscribe(i=>{o.update(u=>({...u,Page:{...u.Page??{},Theme:i}})),w(i)?document.documentElement.setAttribute(Me,i):document.documentElement.removeAttribute(Me)}),Fu(t,o);let l=Ne({...a,providers:s,path:"0",package:void 0,onEvent:a.triggerEvent,parentElement:e,instance:{}});e.innerText="",l.forEach(i=>{e.appendChild(i)}),window.__toddle.isPageLoaded=!0};function En(e){let t=window.location.pathname.split("/").slice(1),r={};e.route?e.route.path.forEach((s,l)=>{s.type==="param"?w(t[l])&&t[l]!==""?r[s.name]=decodeURIComponent(t[l]):r[s.name]=null:r[s.name]=s.name}):r=(Wo(e.page??"",{decode:decodeURIComponent})(window.location.pathname)||{params:{}}).params;let[o]=window.location.hash.split("?"),n=Cu(window.location.search),a=Object.keys(e.route?.query??{}).reduce((s,l)=>({...s,[l]:null}),{});return{params:r,hash:o?.slice(1),query:{...a,...n}}}var Cu=e=>Object.fromEntries(e.replace("?","").split("&").filter(t=>t!=="").map(t=>t.split("=").map(decodeURIComponent))),Fu=(e,t)=>{let r=p=>({data:p,component:e,root:document,package:void 0,toddle:window.toddle,env:re}),o=e.route?.info?.language?.formula;o&&o.type!=="value"&&t.map(p=>e?v(o,r(p),["route","info","language"]):null).subscribe(p=>{w(p)&&document.documentElement.lang!==p&&document.documentElement.setAttribute("lang",p)});let a=e.route?.info?.title?.formula;a&&a.type!=="value"&&t.map(p=>e?v(a,r(p),["route","info","title"]):null).subscribe(p=>{w(p)&&document.title!==p&&(document.title=p)});let l=e.route?.info?.description?.formula,i=e.route?.info?.meta,u=l&&l.type!=="value",g=Zo(i);if(u||Object.keys(g).length>0){let p=d=>[...document.getElementsByTagName("meta")].find(E=>E.name===d||E.getAttribute("property")===d)??null,h=(d,E)=>{let S=null;if(w(E))S=document.querySelector(`[data-toddle-id="${E}"]`);else{let C=Object.entries(d.attrs??{}).find(([D])=>["property","name"].includes(D.toLowerCase()))?.[1];w(C)&&(S=p(C))}S||(S=document.createElement(d.tag),w(E)&&S.setAttribute("data-toddle-id",E),document.getElementsByTagName("head")[0].appendChild(S)),Object.entries(d.attrs??{}).forEach(([C,D])=>{e&&S.setAttribute(C,D)}),typeof d.content=="string"&&!Po.includes(d.tag.toLowerCase())&&(S.textContent=d.content)};if(u&&t.map(d=>e?v(l,r(d),["route","info","description"]):null).subscribe(d=>{if(w(d)){let E=document.getElementsByTagName("meta").namedItem("description");E||(E=document.createElement("meta"),E.name="description"),E.content=d,document.getElementsByTagName("head")[0].appendChild(E),i&&!Object.values(i).some(S=>Object.entries(S.attrs??{}).some(([C,D])=>C.toLowerCase()==="property"&&D.type==="value"&&typeof D.value=="string"&&D.value.toLowerCase()==="og:description"))&&h({tag:"meta",attrs:{property:"og:description",content:d},content:void 0})}}),Object.keys(g).length>0)for(let d in g){let E=g[d];E&&t.map(S=>{let C=r(S);return{attrs:Object.entries(E.attrs??{}).reduce((N,[F,A])=>e?{...N,[F]:v(A,C,["route","info","meta",d,"attrs",F])}:N,{}),content:E.content?v(E.content,C):void 0}}).subscribe(({attrs:S,content:C})=>h({tag:E.tag,attrs:S,content:C},d))}}};export{km as createRoot,Nm as initGlobalObject};
8
8
  //# sourceMappingURL=page.main.esm.js.map