@nordcraft/runtime 1.0.34 → 1.0.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/createNode.js +3 -3
- package/dist/components/createNode.js.map +1 -1
- package/dist/custom-element.main.esm.js +1 -1
- package/dist/custom-element.main.esm.js.map +2 -2
- package/dist/editor/graphql.d.ts +12 -0
- package/dist/editor/graphql.js +150 -0
- package/dist/editor/graphql.js.map +1 -0
- package/dist/editor-preview.main.js +77 -42
- package/dist/editor-preview.main.js.map +1 -1
- package/dist/page.main.esm.js +1 -1
- package/dist/page.main.esm.js.map +2 -2
- package/package.json +3 -3
- package/src/components/createNode.ts +3 -3
- package/src/editor/graphql.ts +167 -0
- package/src/editor-preview.main.ts +239 -176
|
@@ -70,11 +70,11 @@ export function createNode({ id, dataSignal, path, ctx, namespace, parentElement
|
|
|
70
70
|
return;
|
|
71
71
|
}
|
|
72
72
|
if (!parentElement || ctx.root.contains(parentElement) === false) {
|
|
73
|
-
console.error(`Conditional: Parent element does not exist for "${path}" This is likely due to the DOM being modified outside of
|
|
73
|
+
console.error(`Conditional: Parent element does not exist for "${path}" This is likely due to the DOM being modified outside of Nordcraft.`);
|
|
74
74
|
return;
|
|
75
75
|
}
|
|
76
76
|
if (parentElement.querySelector(`[data-id="${path}"]`)) {
|
|
77
|
-
console.warn(`Conditional: Element with data-id="${path}" already exists. This is likely due to the DOM being modified outside of
|
|
77
|
+
console.warn(`Conditional: Element with data-id="${path}" already exists. This is likely due to the DOM being modified outside of Nordcraft`);
|
|
78
78
|
return;
|
|
79
79
|
}
|
|
80
80
|
const nextPathElement = getNextSiblingElement(path, parentElement);
|
|
@@ -226,7 +226,7 @@ export function createNode({ id, dataSignal, path, ctx, namespace, parentElement
|
|
|
226
226
|
return;
|
|
227
227
|
}
|
|
228
228
|
if (!parentElement || ctx.root.contains(parentElement) === false) {
|
|
229
|
-
console.error(`Repeat: Parent element does not exist for ${path}. This is likely due to the DOM being modified outside of
|
|
229
|
+
console.error(`Repeat: Parent element does not exist for ${path}. This is likely due to the DOM being modified outside of Nordcraft.`);
|
|
230
230
|
return;
|
|
231
231
|
}
|
|
232
232
|
ensureEfficientOrdering(parentElement, Array.from(repeatItems.values()).flatMap((e) => e.elements), getNextSiblingElement(path, parentElement));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createNode.js","sourceRoot":"","sources":["../../src/components/createNode.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,MAAM,UAAU,UAAU,CAAC,EACzB,EAAE,EACF,UAAU,EACV,IAAI,EACJ,GAAG,EACH,SAAS,EACT,aAAa,EACb,QAAQ,GAST;IACC,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACpC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,CAAA;IACX,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,EACd,IAAI,EACJ,GAAG,KAAK,EACgB,EAAiC,EAAE;QAC3D,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,SAAS;gBACZ,OAAO;oBACL,aAAa,CAAC;wBACZ,IAAI;wBACJ,GAAG,KAAK;qBACT,CAAC;iBACH,CAAA;YACH,KAAK,WAAW;gBACd,gDAAgD;gBAChD,MAAM,gBAAgB,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAC1C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAC5B,CAAA;gBACD,OAAO,eAAe,CAAC;oBACrB,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,2CAA2C;oBAClE,GAAG,KAAK;oBACR,GAAG,EAAE;wBACH,GAAG,GAAG;wBACN,OAAO,EACL,IAAI,CAAC,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;qBAC/D;oBACD,aAAa;iBACd,CAAC,CAAA;YACJ,KAAK,MAAM;gBACT,OAAO,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;YACzC,KAAK,MAAM;gBACT,OAAO,UAAU,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QACzC,CAAC;IACH,CAAC,CAAA;IAED,SAAS,WAAW,CAAC,EACnB,IAAI,EACJ,UAAU,EACV,EAAE,EACF,IAAI,EACJ,GAAG,EACH,SAAS,EACT,aAAa,EACb,QAAQ,GACgB;QACxB,IAAI,QAAQ,GAAG,IAAI,CAAA;QACnB,IAAI,eAAe,GAAiC,IAAI,CAAA;QACxD,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACzC,SAAS,CACP,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE;YAC3B,IAAI;YACJ,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,GAAG,EAAE,GAAG,CAAC,GAAG;SACb,CAAC,CACH,CACF,CAAA;QAED,MAAM,QAAQ,GAA0B,EAAE,CAAA;QAC1C,MAAM,MAAM,GAAG,CAAC,IAAa,EAAE,EAAE;YAC/B,IAAI,IAAI,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAClC,eAAe,EAAE,OAAO,EAAE,CAAA;gBAC1B,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAA;gBAChD,QAAQ,CAAC,IAAI,CACX,GAAG,MAAM,CAAC;oBACR,IAAI;oBACJ,UAAU,EAAE,eAAe;oBAC3B,IAAI;oBACJ,EAAE;oBACF,GAAG;oBACH,SAAS;oBACT,aAAa;oBACb,QAAQ;iBACT,CAAC,CACH,CAAA;gBAED,6FAA6F;gBAC7F,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAM;gBACR,CAAC;gBAED,IAAI,CAAC,aAAa,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,KAAK,EAAE,CAAC;oBACjE,OAAO,CAAC,KAAK,CACX,mDAAmD,IAAI,
|
|
1
|
+
{"version":3,"file":"createNode.js","sourceRoot":"","sources":["../../src/components/createNode.ts"],"names":[],"mappings":"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"}
|
|
@@ -268,5 +268,5 @@ ${w}::-webkit-scrollbar {
|
|
|
268
268
|
|
|
269
269
|
`,`\r
|
|
270
270
|
\r
|
|
271
|
-
`],componentData:h})}async function w({api:d,res:b,performance:g,streamType:h,useTextDecoder:A,parseChunk:j,parseChunksForData:N,delimiters:L,componentData:M}){let $={chunks:[],currentChunk:"",add(W){let H=j(W);this.chunks.push(H),H&&(r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[d.name]:{isLoading:!0,data:N(this.chunks),error:null,response:{headers:G(b.headers)}}}}),(d.client?.onMessage?.actions??[]).length>0&&u({eventName:"message",api:d,data:{body:H},componentData:M}))},processChunk(W){let H=L?.find(Fe=>W.includes(Fe)),Hr=this.currentChunk+W,Vr=H?Hr.split(H):[Hr];this.currentChunk=Vr.pop()??"",Vr.forEach(Fe=>this.add(Fe))}},Y=A?b.body?.pipeThrough(new TextDecoderStream).getReader():b.body?.getReader();for(;Y;){let{done:W,value:H}=await Y.read();if(W)break;L?$.processChunk(H):$.add(H)}$.currentChunk&&$.add($.currentChunk);let ae={isLoading:!1,data:$.chunks,error:null,response:{status:b.status,headers:G(b.headers)}};try{if(h==="json"){let W=JSON.parse($.chunks.join(""));ae.data=W}else h==="text"&&(ae.data=$.chunks.join(""))}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:$.chunks.join("")})}return D({api:d,apiStatus:ae,componentData:M,performance:g})}function D({api:d,apiStatus:b,componentData:g,performance:h}){h.responseEnd=Date.now();let A={body:b.data,status:b.response?.status,headers:b.response?.headers??void 0};mo({apiName:d.name,response:{body:A.body,ok:!!(!b.error&&b.response?.status&&b.response.status<400),status:A.status,headers:A.headers},formulaContext:s(d,g),errorFormula:d.isError,performance:h})?(!A.body&&b.error&&(A.body=b.error),y({api:d,componentData:g,data:A,performance:h}),u({eventName:"failed",api:d,componentData:g,data:A})):(f({api:d,componentData:g,data:A,performance:h}),u({eventName:"success",api:d,componentData:g,data:A}))}function F(d){return ao(d,[["client","onCompleted"],["client","onFailed"],["client","onMessage"],["service"],["server","ssr"]])}let k;return k=r.dataSignal.map(d=>{let b=s(n,t);return{request:a(n,t),api:F(n),autoFetch:n.autoFetch?v(n.autoFetch,b):!1,proxy:v(n.server?.proxy?.enabled.formula,b)}}),k.subscribe(async d=>{let{url:b,requestSettings:g}=a(n,t),h=O(n.autoFetch)&&(n.autoFetch.type!=="value"||n.autoFetch.value===!0)&&(window?.__toddle?.isPageLoaded??!1)===!1?r.toddle.pageState.Apis?.[fo(b,g)]:void 0;h?h.error?y({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}):f({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}):v(n.autoFetch,s(n,t))?await l({api:n,url:b,requestSettings:g,componentData:t}):r.dataSignal.get().Apis?.[n.name]||r.dataSignal.update(A=>({...A,Apis:{...A.Apis??{},[n.name]:{isLoading:!1,data:null,error:null}}}))}),{fetch:({actionInputs:d,actionModels:b,componentData:g})=>{let h=Object.entries(d??{}).reduce((L,[M,$])=>($!==null&&typeof $=="object"&&"formula"in $?L[M]=$:L[M]={formula:{type:"value",value:$}},L),{}),A={...n,inputs:{...n.inputs,...h},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:j,requestSettings:N}=a(A,g);return l({api:A,url:j,requestSettings:N,componentData:g})},update:(d,b)=>{n=d;let g=s(n,b),h=n.autoFetch&&v(n.autoFetch,g);h&&k?.set({request:a(d,b),api:F(d),autoFetch:h,proxy:v(d.server?.proxy?.enabled.formula,g)})},triggerActions:d=>{let b=r.dataSignal.get().Apis?.[n.name];b===void 0||b.data===null&&b.error===null||(b.error?u({eventName:"failed",api:n,data:{body:b.error,status:b.response?.status},componentData:d}):u({eventName:"success",api:n,data:{body:b.data},componentData:d}))},destroy:()=>k?.destroy()}}var Mo=se(te(),1);var Se=class{batchQueue=[];isProcessing=!1;processBatch(){this.isProcessing||(this.isProcessing=!0,requestAnimationFrame(()=>{for(;this.batchQueue.length>0;)this.batchQueue.shift()?.();this.isProcessing=!1}))}add(t){this.batchQueue.push(t),this.processBatch()}};var qr=se(te(),1),Mr=class{value;subscribers;subscriptions;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}(0,qr.default)(t,this.value)===!1&&(this.value=t,this.subscribers.forEach(({notify:r})=>r(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(){this.subscribers.forEach(({destroy:t})=>{t?.()}),this.subscribers.clear(),this.subscriptions?.forEach(t=>t())}cleanSubscribers(){this.subscribers.forEach(({destroy:t})=>{t?.()}),this.subscribers.clear()}map(t){let r=J(t(this.value));return r.subscriptions.push(this.subscribe(o=>r.set(t(o)),{destroy:()=>r.destroy()})),r}};function J(e){return new Mr(e)}typeof window<"u"&&(window.signal=J,window.deepEqual=qr.default);var Br=(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 u=s.getAttribute("data-id")?.split(".").slice(-1)[0],f=parseInt(String(u));if(f===n&&parseInt(String(u?.split("(")[1]))>a||f>n)return s}return null};function Do(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}}function Q(e,{componentName:t,nodeId:r,variant:o}={}){let n=`[data-id="${e}"]`;return t&&(n+=`.${t}`),r&&(n+=`\\:${r}`),o&&(n+=ye(o)),n}var Ae=e=>e.formulas&&Object.values(e.formulas).some(({exposeInContext:t})=>t)||e.workflows&&Object.values(e.workflows).some(({exposeInContext:t})=>t);function Oo(e,t,r){Object.entries(t.contexts??{}).forEach(([o,n])=>{let a=r.providers[[r.package,o].filter(O).join("/")];if(a)n.formulas.forEach(s=>{let i=a.formulaDataSignals[s];if(!i){console.warn(`Provider ${o} does not expose a formula named "${s}". Available formulas are: ["${Object.keys(a.formulaDataSignals).join('", "')}"]`);return}i.subscribe(u=>{e.update(f=>({...f,Contexts:{...f.Contexts,[o]:{...f.Contexts?.[o],[s]:u}}}))})});else if(!a&&r.env.runtime==="preview"&&r.toddle._preview){let s=r.components?.find(f=>f.name===[r.package,o].filter(O).join("/"));if(!s){console.error(`Could not find provider "${o}". No such component exist.`);return}let[,i]=o.split("/").reverse(),u={data:{Attributes:I(s.attributes,([f,y])=>[f,y.testValue])},component:s,root:r?.root,formulaCache:{},package:i??r?.package,toddle:r.toddle,env:r.env};s.route&&(u.data["URL parameters"]={...Object.fromEntries(s.route.path.filter(f=>f.type==="param").map(f=>[f.name,f.testValue])),...I(s.route.query,([f,{testValue:y}])=>[f,y])}),u.data.Variables=I(s.variables,([f,y])=>[f,v(y.initialValue,u)]),e.update(f=>({...f,Contexts:{...f.Contexts,[o]:Object.fromEntries(n.formulas.map(y=>{let l=s.formulas?.[y];return l?[y,v(l.formula,u)]:(console.warn(`Could not find formula "${y}" in component "${o}"`),[y,null])}))}}))}})}function To(e,t){window.__components||(window.__components={}),window.__components[e.name]=t}function ko(e){return O(e.formulas)?I(e.formulas,([t,r])=>{let{canCache:o,keys:n}=r.memoize?Ll(r.formula,e):{canCache:!1,keys:[]},a,s;return[t,{get:i=>o&&a&&n.every(u=>le(i,u)===le(a,u))?{hit:!0,data:s}:{hit:!1},set:(i,u)=>{o&&(a=i,s=u)}}]}):{}}function Ll(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,u)=>i===a[u]))||n.push(a)}),{canCache:!0,keys:n}}var Ce=class e{styleSheet;ruleMap;constructor(t,r){r?this.styleSheet=r:(this.styleSheet=new CSSStyleSheet,t.adoptedStyleSheets.push(this.getStyleSheet()))}registerProperty(t,r,o){this.ruleMap??=this.hydrateFromBase();let n=e.getFullSelector(t,o),a=this.ruleMap.get(n);if(!a){let s=this.styleSheet.insertRule(n,this.styleSheet.cssRules.length),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(t,o),a=this.ruleMap.get(n);a&&(a.style.removeProperty(r),o?.deepClean&&a.style.length===0&&(this.styleSheet.deleteRule(Array.from(this.ruleMap.keys()).indexOf(n)),this.ruleMap.delete(n)))}getStyleSheet(){return this.styleSheet}hydrateFromBase(){let t=new Map;for(let r=0;r<this.styleSheet.cssRules.length;r++){let o=this.styleSheet.cssRules[r],n=e.selectorFromCSSRule(o);for(;o.cssRules&&o.cssRules.length>0;)o=o.cssRules[0];t.set(n,o)}return t}static selectorFromCSSRule(t){switch(t.constructor.name){case"CSSStyleRule":return`${t.selectorText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSStartingStyleRule":return`@starting-style { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSMediaRule":return`@media ${t.media.mediaText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSNestedDeclarations":return"";default:return console.warn(`Unsupported CSS rule type: ${t.constructor.name}. Returning empty selector.`),""}}static getFullSelector(t,r){let o=t+(r?.startingStyle?" { @starting-style { }}":" { }");return r?.mediaQuery&&(o=`@media (${Object.entries(r.mediaQuery).map(([n,a])=>`${n}: ${a}`).filter(Boolean).join(") and (")}) { ${o}}`),o}};var Ur;function X({selector:e,customPropertyName:t,signal:r,variant:o,root:n,runtime:a}){Ur??=new Ce(n,n.getElementById(vo)?.sheet),r.subscribe(Ur.registerProperty(e,t,o),{destroy:()=>{Ur?.unregisterProperty(e,t,{deepClean:a==="preview",mediaQuery:o?.mediaQuery,startingStyle:o?.startingStyle})}})}function xo({node:e,path:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let i=[o.package,e.name].filter(O).join("/"),u=o.components?.find(E=>E.name===i);if(!u)return console.warn(`Could not find component "${i}" for component "${o.component.name}". Available components are: ["${o.components.map(E=>E.name).join('", "')}"]`),[];let f=r.map(E=>I(e.attrs,([w,D])=>[w,D?.type!=="value"?v(D,{data:E,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):D?.value]));Object.entries(e.customProperties??{}).forEach(([E,w])=>X({selector:Q(t,{componentName:o.component.name,nodeId:e.id}),signal:r.map(D=>v(w.formula,{data:D,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),customPropertyName:E,root:o.root,runtime:o.env.runtime})),e.variants?.forEach(E=>{Object.entries(E.customProperties??{}).forEach(([w,D])=>X({selector:Q(t,{componentName:o.component.name,nodeId:e.id,variant:E}),signal:r.map(F=>v(D.formula,{data:F,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),customPropertyName:w,variant:E,root:o.root,runtime:o.env.runtime}))});let y=J({Location:r.get().Location,Attributes:f.get(),Apis:I(u.apis,([E,w])=>[E,{data:null,isLoading:!!(w.autoFetch&&v(w.autoFetch,{data:r.get(),component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),error:null}])});Oo(y,u,o),y.update(E=>({...E,Variables:I(u.variables,([w,D])=>[w,v(D.initialValue,{data:y.get(),component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})])})),To(u,y);let l=new AbortController;y.subscribe(()=>{},{destroy:()=>l.abort(`Component ${u.name} unmounted`)});let c=ko(u),m={};me(Object.entries(u.apis)).forEach(([E,w])=>{pe(w)?m[E]=be(w,{...o,apis:m,component:u,dataSignal:y,abortSignal:l.signal,isRootComponent:!1,formulaCache:c,package:e.package??o.package,triggerEvent:(D,F)=>{let k=Object.values(e.events).find(d=>d.trigger===D);k&&k.actions.forEach(d=>P(d,{...r.get(),Event:F},o))}}):m[E]=ve({apiRequest:w,ctx:{...o,apis:m,component:u,dataSignal:y,abortSignal:l.signal,isRootComponent:!1,formulaCache:c,package:e.package??o.package,triggerEvent:(D,F)=>{let k=Object.values(e.events).find(d=>d.trigger===D);k&&k.actions.forEach(d=>P(d,{...r.get(),Event:F},o))}},componentData:y.get()})}),Object.values(m).filter(Z).forEach(E=>{E.triggerActions(y.get())});let C=(E,w)=>{let D=Object.values(e.events).find(F=>F.trigger===E);D&&D.actions.forEach(F=>P(F,{...r.get(),Event:w},o))},S=o.providers;if(Ae(u)){let E=Object.fromEntries(Object.entries(u.formulas??{}).filter(([,w])=>w.exposeInContext).map(([w,D])=>[w,y.map(F=>v(D.formula,{data:F,component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}))]));S={...S,[u.name]:{component:u,formulaDataSignals:E,ctx:{...o,apis:m,component:u,dataSignal:y,abortSignal:l.signal,triggerEvent:C}}}}let R={};for(let E=0;E<e.children.length;E++){let w=e.children[E],F=o.component.nodes[w].slot??"default";R[F]=R[F]??[],R[F].push({id:w,path:`${t}.${E}[${F}]`,dataSignal:r,ctx:{...o,package:e.package??o.package}})}return f.subscribe(E=>y.update(w=>({...w,Attributes:E})),{destroy:()=>y.destroy()}),Ee({dataSignal:y,component:u,components:o.components,path:t,root:o.root,isRootComponent:!1,children:R,formulaCache:c,providers:S,apis:m,abortSignal:l.signal,package:e.package??o.package,parentElement:n,onEvent:C,toddle:o.toddle,env:o.env,namespace:s,instance:e.id==="root"?{...a,[o.component.name]:"root"}:{[o.component.name]:e.id??""}})}function No(e){if(e instanceof DragEvent)return Array.from(e.dataTransfer?.items??[]).reduce((t,r)=>(t[r.type]=e.dataTransfer?.getData(r.type),t),{})}function $o(e,t,r){return t.component.version===2&&r==="root"?`${t.package??t.toddle.project}-${e.tag}`:e.tag}function _r(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&&(!O(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 Po({node:e,dataSignal:t,id:r,path:o,ctx:n,namespace:a,instance:s}){let i=$o(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&&e.attrs.xmlns.type==="value"&&(a=String(e.attrs.xmlns.value));let u=a?document.createElementNS(a,i):document.createElement(i);u.setAttribute("data-node-id",r),o&&u.setAttribute("data-id",o),n.isRootComponent===!1&&r!=="root"&&u.setAttribute("data-component",n.component.name);let f=he([e.style,e.variants]);u.classList.add(f),s&&r==="root"&&Object.entries(s).forEach(([l,c])=>{u.classList.add(ge(`${l}:${c}`))}),e.classes&&Object.entries(e.classes)?.forEach(([l,{formula:c}])=>{c?t.map(C=>x(v(c,{data:C,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env}))).subscribe(C=>C?u.classList.add(l):u.classList.remove(l)):u.classList.add(l)}),Object.entries(e.attrs).forEach(([l,c])=>{if(!O(c))return;let m,C=()=>{c.type==="value"?_r(u,l,c?.value):(m=t.map(S=>v(c,{data:S,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})),m.subscribe(S=>{_r(u,l,S)}))};l==="autofocus"&&n.env.runtime==="preview"&&n.toddle._preview?n.toddle._preview.showSignal.subscribe(({testMode:S})=>{S?C():(m?.destroy(),u.removeAttribute(l))}):C()}),e["style-variables"]?.forEach(l=>{let{name:c,formula:m,unit:C}=l;t.map(R=>{let E=v(m,{data:R,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env});return C?E+C:E}).subscribe(R=>u.style.setProperty(`--${c}`,R))}),Object.entries(e.customProperties??{}).forEach(([l,{formula:c}])=>X({customPropertyName:l,selector:n.env.runtime==="custom-element"&&n.isRootComponent&&o==="0"?`${Q(o)}, :host`:Q(o),signal:t.map(m=>v(c,{data:m,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})),root:n.root,runtime:n.env.runtime})),e.variants?.forEach(l=>{Object.entries(l.customProperties??{}).forEach(([c,{formula:m}])=>{X({customPropertyName:c,selector:Q(o,{variant:l}),variant:l,signal:t.map(C=>v(m,{data:C,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})),root:n.root,runtime:n.env.runtime})})}),Object.values(e.events).forEach(l=>{let c=m=>(l.actions.forEach(C=>{if(m instanceof DragEvent&&(m.data=No(m)),m instanceof ClipboardEvent)try{m.data=Array.from(m.clipboardData?.items??[]).reduce((S,R)=>{try{S[R.type]=JSON.parse(m.clipboardData?.getData(R.type))}catch{S[R.type]=m.clipboardData?.getData(R.type)}return S},{})}catch(S){console.error("Could not get paste data",S)}P(C,{...t.get(),Event:m},n,m)}),!1);u.addEventListener(l.trigger,c)});let y=e.tag.toLocaleLowerCase();if(y==="script"||y==="style"){let l=[];e.children.map(c=>n.component.nodes[c]).filter(c=>c?.type==="text").forEach(c=>{if(c.value.type==="value")l.push(String(c.value.value));else{let m=t.map(C=>String(v(c.value,{data:C,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})));l.push(m)}}),l.every(c=>typeof c=="string")&&(u.textContent=l.join("")),l.filter(c=>typeof c!="string").forEach(c=>{c.subscribe(()=>{u.textContent=l.map(m=>typeof m=="string"?m:m.get()).join("")})})}else e.children.forEach((l,c)=>{z({parentElement:u,id:l,path:o+"."+c,dataSignal:t,ctx:n,namespace:a,instance:s}).forEach(C=>u.appendChild(C))});return u}function Lo({path:e,node:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let i=t.name??"default",u=[];if(o.children[i]?u=o.children[i].flatMap(f=>{let y=f.dataSignal.map(l=>l);return r.subscribe(l=>l,{destroy:()=>y.destroy()}),z({...f,dataSignal:y,parentElement:n,ctx:{...f.ctx,providers:o.providers},instance:a,namespace:s})}):u=t.children.flatMap((f,y)=>z({id:f,path:e+"."+y,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s})),o.env.runtime==="custom-element"&&o.isRootComponent){let f=document.createElement("slot");return f.setAttribute("name",i),u.forEach(y=>{f.appendChild(y)}),[f]}return u}function Io({node:e,id:t,path:r,dataSignal:o,namespace:n,ctx:a}){if(n&&n!=="http://www.w3.org/1999/xhtml")return Il({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(f=>String(v(s,{data:f,component:a.component,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:a.toddle,env:a.env}))).subscribe(f=>{i.innerText=f}):i.innerText=String(s.value),i}function Il({node:e,dataSignal:t,ctx:r}){let{value:o}=e,n=document.createTextNode("");return o.type!=="value"?t.map(s=>String(v(o,{data:s,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}))).subscribe(s=>{n.nodeValue=s}):n.nodeValue=String(o.value),n}function z({id:e,dataSignal:t,path:r,ctx:o,namespace:n,parentElement:a,instance:s}){let i=o.component.nodes[e];if(!i)return[];let u=({node:l,...c})=>{switch(l.type){case"element":return[Po({node:l,...c})];case"component":let m=o.components.some(C=>C.name===l.name);return xo({node:{...l,id:e},...c,ctx:{...o,package:l.package??(m?void 0:o.package)},parentElement:a});case"text":return[Io({...c,node:l})];case"slot":return Lo({...c,node:l})}};function f({node:l,dataSignal:c,id:m,path:C,ctx:S,namespace:R,parentElement:E,instance:w}){let D=!0,F=null,k=c.map(g=>x(v(l.condition,{data:g,component:S.component,formulaCache:S.formulaCache,root:S.root,package:S.package,toddle:S.toddle,env:S.env}))),d=[],b=g=>{if(g&&d.length===0){if(F?.destroy(),F=c.map(A=>A),d.push(...u({node:l,dataSignal:F,path:C,id:m,ctx:S,namespace:R,parentElement:E,instance:w})),D)return;if(!E||S.root.contains(E)===!1){console.error(`Conditional: Parent element does not exist for "${C}" This is likely due to the DOM being modified outside of toddle.`);return}if(E.querySelector(`[data-id="${C}"]`)){console.warn(`Conditional: Element with data-id="${C}" already exists. This is likely due to the DOM being modified outside of toddle`);return}let h=Br(C,E);for(let A of d)E.insertBefore(A,h)}else g||(F?.destroy(),d.forEach(h=>h.remove()),d.splice(0,d.length))};return k.subscribe(b,{destroy:()=>{F?.destroy()}}),S.env.runtime==="preview"&&S.toddle._preview&&S.toddle._preview.showSignal.subscribe(({displayedNodes:g,testMode:h})=>{g.includes(C)&&!h?b(!0):b(k.get())}),D=!1,d}function y(){let l=!0,c=new Map;return t.map(C=>{let S=v(i.repeat,{data:C,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env});return typeof S!="object"?[]:Object.entries(S??{})}).subscribe(C=>{let S=new Map;for(let R=0;R<C.length;R++){let[E,w]=C[R],D={...t.get(),ListItem:{...t.get().ListItem?{Parent:t.get().ListItem}:{},Item:w,Index:Number(R),Key:E}},F=i.repeatKey?v(i.repeatKey,{data:D,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):E;S.has(F)&&(console.warn(`Duplicate key "${F}" found in repeat. Fallback to index as key. This will cause a re-render of the duplicated children on every change.`),F=E);let k=c.get(F);if(k)S.set(F,k),k.dataSignal.update(d=>({...d,ListItem:{...t.get().ListItem?{Parent:t.get().ListItem}:{},Item:w,Index:Number(R),Key:E}}));else{let d=J(D),b=t.subscribe(A=>{l||d.update(({ListItem:j})=>({...A,ListItem:j}))},{destroy:()=>d.destroy()}),g={node:i,id:e,dataSignal:d,path:E==="0"?r:`${r}(${E})`,ctx:o,namespace:n,parentElement:a,instance:s},h=i.condition?f(g):u(g);S.set(F,{dataSignal:d,cleanup:b,elements:h})}}if(Array.from(c.entries()).forEach(([R,E])=>{S.has(R)||(E.cleanup(),E.dataSignal.destroy(),E.elements.forEach(w=>w.remove()))}),c=S,!(l||c.size===0)){if(!a||o.root.contains(a)===!1){console.error(`Repeat: Parent element does not exist for ${r}. This is likely due to the DOM being modified outside of toddle.`);return}Do(a,Array.from(c.values()).flatMap(R=>R.elements),Br(r,a))}},{destroy:()=>Array.from(c.values()).forEach(C=>{C.cleanup(),C.dataSignal.destroy(),C.elements.forEach(S=>S.remove())})}),l=!1,Array.from(c.values()).flatMap(C=>C.elements)}return i.repeat?y():i.condition?f({node:i,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s}):u({node:i,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s})}var Ml=new Se;function Ee({component:e,dataSignal:t,onEvent:r,isRootComponent:o,path:n,children:a,formulaCache:s,components:i,apis:u,abortSignal:f,root:y,providers:l,package:c,parentElement:m,instance:C,toddle:S,namespace:R,env:E}){let w={triggerEvent:r,component:e,components:i,dataSignal:t,isRootComponent:o,apis:u,formulaCache:s,children:a,abortSignal:f,root:y,providers:l,package:c,toddle:S,env:E},D=z({id:"root",path:n,dataSignal:t,ctx:w,parentElement:m,namespace:R,instance:C});return Ml.add(()=>{let F;e.onAttributeChange?.actions&&e.onAttributeChange.actions.length>0&&t.map(k=>k.Attributes).subscribe(k=>{F&&e.onAttributeChange?.actions.forEach(d=>{P(d,t.get(),w,new CustomEvent("attribute-change",{detail:Object.entries(k).reduce((b,[g,h])=>((0,Mo.default)(h,F[g])===!1&&e.attributes[g]?.name&&(b[e.attributes[g]?.name]={current:F[g],new:h}),b),{})}))}),F=k}),e.onLoad?.actions.forEach(k=>{P(k,t.get(),w)})}),D}var we=class extends HTMLElement{toddle;#r;#e;#o;#t;#n;constructor(t,r,o){super(),this.toddle=o;let n=this.attachInternals();n.shadowRoot?this.#o=n.shadowRoot:this.#o=this.attachShadow({mode:"open"});let a={branchName:o.branch||"main",isServer:!1,request:void 0,runtime:"custom-element",logErrors:!0};this.#r=t,this.#t=ql({component:t,root:this.#o,toddle:o,env:a}),this.#n={themes:r.themes};let s=new AbortController;this.#t.subscribe(()=>{},{destroy:()=>s.abort(`Component ${t.name} unmounted`)}),this.#e={triggerEvent:this.dispatch.bind(this),root:this.#o,isRootComponent:!0,components:r.components,component:this.#r,dataSignal:this.#t,formulaCache:{},apis:{},abortSignal:s.signal,children:{},providers:{},package:void 0,toddle:o,env:a}}connectedCallback(){me(Object.entries(this.#r.apis)).forEach(([r,o])=>{pe(o)?this.#e.apis[r]=be(o,this.#e):this.#e.apis[r]=ve({apiRequest:o,ctx:this.#e,componentData:this.#t.get()})}),Object.values(this.#e.apis).filter(Z).forEach(r=>{r.triggerActions(this.#t.get())});let t=this.#e.providers;if(Ae(this.#r)){let r=Object.fromEntries(Object.entries(this.#r.formulas??{}).filter(([,o])=>o.exposeInContext).map(([o,n])=>[o,this.#t.map(a=>v(n.formula,{data:a,component:this.#r,formulaCache:this.#e.formulaCache,root:this.#e.root,package:this.#e.package,toddle:this.#e.toddle,env:this.#e.env}))]));t={...t,[this.#r.name]:{component:this.#r,formulaDataSignals:r,ctx:this.#e}}}this.#e.providers=t,this.render()}disconnectedCallback(){this.#t.destroy()}dispatch(t,r){this.dispatchEvent(new CustomEvent(t,{detail:r,bubbles:!0,composed:!0}))}render(){let t=Ee({...this.#e,path:"0",onEvent:this.dispatch.bind(this),parentElement:this.#o,instance:{[this.#r.name]:"root"}});this.#o.innerHTML="";let r=Co(this.#e.component,this.#e.components,this.#n.themes?Object.values(this.#n.themes)[0]:So,{includeResetStyle:!0,createFontFaces:!1}),o=document.createElement("style");o.appendChild(document.createTextNode(r)),this.#o.appendChild(o);let n=t[0];n&&this.#o.appendChild(n)}setAttribute(t,r){switch(typeof r){case"number":super.setAttribute(t,String(r));break;case"string":return super.setAttribute(t,r),this;default:super.setAttribute(t,`[Object ${typeof r}]`);break}return this.#t.set({...this.#t.get(),Attributes:{...this.#t.get().Attributes,[t]:r}}),this}getAttribute(t){return this.#t.get().Attributes[t]||super.getAttribute(t)}attributeChangedCallback(t,r,o){let n=this.getAttributeCaseInsensitive(t),a=this.getAttribute(n);o!=="[Object object]"&&parseFloat(o)!==a&&this.#t.set({...this.#t.get(),Attributes:{...this.#t.get().Attributes,[n]:o}})}getAttributeCaseInsensitive(t){let r=Object.keys(this.#t.get().Attributes).find(o=>o.toLowerCase()===t.toLowerCase());if(!r)throw new Error(`Unable to find attribute ${t} on component ${this.#r.name}`);return r}get __component(){return this.#r}get __ctx(){return this.#e}get __signal(){return this.#t}},ql=({component:e,root:t,toddle:r,env:o})=>J({Location:void 0,Variables:I(e.variables,([n,{initialValue:a}])=>{if(!e)throw new Error("Component not found");return[n,v(a,{data:{Attributes:{}},component:e,root:t,package:void 0,toddle:r,env:o})]}),Attributes:I(e.attributes,([n])=>[n,void 0]),Apis:I(e.apis,([n])=>[n,{data:null,isLoading:!1,error:null}])});var Bl=(e,t,r)=>{e.map(o=>t.components.find(n=>n.name===o)).forEach(o=>{let n=oo(o.name);if(customElements.get(n)){console.warn(`Component ${n} already defined`);return}customElements.define(n,class extends we{constructor(){super(o,t,r)}static get observedAttributes(){return Object.keys(o.attributes??{}).map(a=>a.toLowerCase())}})})};var np=(e=window.toddle)=>{e.isEqual=qo.default,Object.entries(Pr).forEach(([t,r])=>e.registerFormula("@toddle/"+t,r.default,"getArgumentInputData"in r?r.getArgumentInputData:void 0)),Object.entries(Ke).forEach(([t,r])=>e.registerAction("@toddle/"+t,r.default))};export{Bl as defineComponents,np as loadCorePlugins};
|
|
271
|
+
`],componentData:h})}async function w({api:d,res:b,performance:g,streamType:h,useTextDecoder:A,parseChunk:j,parseChunksForData:N,delimiters:L,componentData:M}){let $={chunks:[],currentChunk:"",add(W){let H=j(W);this.chunks.push(H),H&&(r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[d.name]:{isLoading:!0,data:N(this.chunks),error:null,response:{headers:G(b.headers)}}}}),(d.client?.onMessage?.actions??[]).length>0&&u({eventName:"message",api:d,data:{body:H},componentData:M}))},processChunk(W){let H=L?.find(Fe=>W.includes(Fe)),Hr=this.currentChunk+W,Vr=H?Hr.split(H):[Hr];this.currentChunk=Vr.pop()??"",Vr.forEach(Fe=>this.add(Fe))}},Y=A?b.body?.pipeThrough(new TextDecoderStream).getReader():b.body?.getReader();for(;Y;){let{done:W,value:H}=await Y.read();if(W)break;L?$.processChunk(H):$.add(H)}$.currentChunk&&$.add($.currentChunk);let ae={isLoading:!1,data:$.chunks,error:null,response:{status:b.status,headers:G(b.headers)}};try{if(h==="json"){let W=JSON.parse($.chunks.join(""));ae.data=W}else h==="text"&&(ae.data=$.chunks.join(""))}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:$.chunks.join("")})}return D({api:d,apiStatus:ae,componentData:M,performance:g})}function D({api:d,apiStatus:b,componentData:g,performance:h}){h.responseEnd=Date.now();let A={body:b.data,status:b.response?.status,headers:b.response?.headers??void 0};mo({apiName:d.name,response:{body:A.body,ok:!!(!b.error&&b.response?.status&&b.response.status<400),status:A.status,headers:A.headers},formulaContext:s(d,g),errorFormula:d.isError,performance:h})?(!A.body&&b.error&&(A.body=b.error),y({api:d,componentData:g,data:A,performance:h}),u({eventName:"failed",api:d,componentData:g,data:A})):(f({api:d,componentData:g,data:A,performance:h}),u({eventName:"success",api:d,componentData:g,data:A}))}function F(d){return ao(d,[["client","onCompleted"],["client","onFailed"],["client","onMessage"],["service"],["server","ssr"]])}let k;return k=r.dataSignal.map(d=>{let b=s(n,t);return{request:a(n,t),api:F(n),autoFetch:n.autoFetch?v(n.autoFetch,b):!1,proxy:v(n.server?.proxy?.enabled.formula,b)}}),k.subscribe(async d=>{let{url:b,requestSettings:g}=a(n,t),h=O(n.autoFetch)&&(n.autoFetch.type!=="value"||n.autoFetch.value===!0)&&(window?.__toddle?.isPageLoaded??!1)===!1?r.toddle.pageState.Apis?.[fo(b,g)]:void 0;h?h.error?y({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}):f({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}):v(n.autoFetch,s(n,t))?await l({api:n,url:b,requestSettings:g,componentData:t}):r.dataSignal.get().Apis?.[n.name]||r.dataSignal.update(A=>({...A,Apis:{...A.Apis??{},[n.name]:{isLoading:!1,data:null,error:null}}}))}),{fetch:({actionInputs:d,actionModels:b,componentData:g})=>{let h=Object.entries(d??{}).reduce((L,[M,$])=>($!==null&&typeof $=="object"&&"formula"in $?L[M]=$:L[M]={formula:{type:"value",value:$}},L),{}),A={...n,inputs:{...n.inputs,...h},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:j,requestSettings:N}=a(A,g);return l({api:A,url:j,requestSettings:N,componentData:g})},update:(d,b)=>{n=d;let g=s(n,b),h=n.autoFetch&&v(n.autoFetch,g);h&&k?.set({request:a(d,b),api:F(d),autoFetch:h,proxy:v(d.server?.proxy?.enabled.formula,g)})},triggerActions:d=>{let b=r.dataSignal.get().Apis?.[n.name];b===void 0||b.data===null&&b.error===null||(b.error?u({eventName:"failed",api:n,data:{body:b.error,status:b.response?.status},componentData:d}):u({eventName:"success",api:n,data:{body:b.data},componentData:d}))},destroy:()=>k?.destroy()}}var Mo=se(te(),1);var Se=class{batchQueue=[];isProcessing=!1;processBatch(){this.isProcessing||(this.isProcessing=!0,requestAnimationFrame(()=>{for(;this.batchQueue.length>0;)this.batchQueue.shift()?.();this.isProcessing=!1}))}add(t){this.batchQueue.push(t),this.processBatch()}};var qr=se(te(),1),Mr=class{value;subscribers;subscriptions;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}(0,qr.default)(t,this.value)===!1&&(this.value=t,this.subscribers.forEach(({notify:r})=>r(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(){this.subscribers.forEach(({destroy:t})=>{t?.()}),this.subscribers.clear(),this.subscriptions?.forEach(t=>t())}cleanSubscribers(){this.subscribers.forEach(({destroy:t})=>{t?.()}),this.subscribers.clear()}map(t){let r=J(t(this.value));return r.subscriptions.push(this.subscribe(o=>r.set(t(o)),{destroy:()=>r.destroy()})),r}};function J(e){return new Mr(e)}typeof window<"u"&&(window.signal=J,window.deepEqual=qr.default);var Br=(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 u=s.getAttribute("data-id")?.split(".").slice(-1)[0],f=parseInt(String(u));if(f===n&&parseInt(String(u?.split("(")[1]))>a||f>n)return s}return null};function Do(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}}function Q(e,{componentName:t,nodeId:r,variant:o}={}){let n=`[data-id="${e}"]`;return t&&(n+=`.${t}`),r&&(n+=`\\:${r}`),o&&(n+=ye(o)),n}var Ae=e=>e.formulas&&Object.values(e.formulas).some(({exposeInContext:t})=>t)||e.workflows&&Object.values(e.workflows).some(({exposeInContext:t})=>t);function Oo(e,t,r){Object.entries(t.contexts??{}).forEach(([o,n])=>{let a=r.providers[[r.package,o].filter(O).join("/")];if(a)n.formulas.forEach(s=>{let i=a.formulaDataSignals[s];if(!i){console.warn(`Provider ${o} does not expose a formula named "${s}". Available formulas are: ["${Object.keys(a.formulaDataSignals).join('", "')}"]`);return}i.subscribe(u=>{e.update(f=>({...f,Contexts:{...f.Contexts,[o]:{...f.Contexts?.[o],[s]:u}}}))})});else if(!a&&r.env.runtime==="preview"&&r.toddle._preview){let s=r.components?.find(f=>f.name===[r.package,o].filter(O).join("/"));if(!s){console.error(`Could not find provider "${o}". No such component exist.`);return}let[,i]=o.split("/").reverse(),u={data:{Attributes:I(s.attributes,([f,y])=>[f,y.testValue])},component:s,root:r?.root,formulaCache:{},package:i??r?.package,toddle:r.toddle,env:r.env};s.route&&(u.data["URL parameters"]={...Object.fromEntries(s.route.path.filter(f=>f.type==="param").map(f=>[f.name,f.testValue])),...I(s.route.query,([f,{testValue:y}])=>[f,y])}),u.data.Variables=I(s.variables,([f,y])=>[f,v(y.initialValue,u)]),e.update(f=>({...f,Contexts:{...f.Contexts,[o]:Object.fromEntries(n.formulas.map(y=>{let l=s.formulas?.[y];return l?[y,v(l.formula,u)]:(console.warn(`Could not find formula "${y}" in component "${o}"`),[y,null])}))}}))}})}function To(e,t){window.__components||(window.__components={}),window.__components[e.name]=t}function ko(e){return O(e.formulas)?I(e.formulas,([t,r])=>{let{canCache:o,keys:n}=r.memoize?Ll(r.formula,e):{canCache:!1,keys:[]},a,s;return[t,{get:i=>o&&a&&n.every(u=>le(i,u)===le(a,u))?{hit:!0,data:s}:{hit:!1},set:(i,u)=>{o&&(a=i,s=u)}}]}):{}}function Ll(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,u)=>i===a[u]))||n.push(a)}),{canCache:!0,keys:n}}var Ce=class e{styleSheet;ruleMap;constructor(t,r){r?this.styleSheet=r:(this.styleSheet=new CSSStyleSheet,t.adoptedStyleSheets.push(this.getStyleSheet()))}registerProperty(t,r,o){this.ruleMap??=this.hydrateFromBase();let n=e.getFullSelector(t,o),a=this.ruleMap.get(n);if(!a){let s=this.styleSheet.insertRule(n,this.styleSheet.cssRules.length),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(t,o),a=this.ruleMap.get(n);a&&(a.style.removeProperty(r),o?.deepClean&&a.style.length===0&&(this.styleSheet.deleteRule(Array.from(this.ruleMap.keys()).indexOf(n)),this.ruleMap.delete(n)))}getStyleSheet(){return this.styleSheet}hydrateFromBase(){let t=new Map;for(let r=0;r<this.styleSheet.cssRules.length;r++){let o=this.styleSheet.cssRules[r],n=e.selectorFromCSSRule(o);for(;o.cssRules&&o.cssRules.length>0;)o=o.cssRules[0];t.set(n,o)}return t}static selectorFromCSSRule(t){switch(t.constructor.name){case"CSSStyleRule":return`${t.selectorText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSStartingStyleRule":return`@starting-style { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSMediaRule":return`@media ${t.media.mediaText} { ${Array.from(t.cssRules).map(e.selectorFromCSSRule).join(", ")}}`;case"CSSNestedDeclarations":return"";default:return console.warn(`Unsupported CSS rule type: ${t.constructor.name}. Returning empty selector.`),""}}static getFullSelector(t,r){let o=t+(r?.startingStyle?" { @starting-style { }}":" { }");return r?.mediaQuery&&(o=`@media (${Object.entries(r.mediaQuery).map(([n,a])=>`${n}: ${a}`).filter(Boolean).join(") and (")}) { ${o}}`),o}};var Ur;function X({selector:e,customPropertyName:t,signal:r,variant:o,root:n,runtime:a}){Ur??=new Ce(n,n.getElementById(vo)?.sheet),r.subscribe(Ur.registerProperty(e,t,o),{destroy:()=>{Ur?.unregisterProperty(e,t,{deepClean:a==="preview",mediaQuery:o?.mediaQuery,startingStyle:o?.startingStyle})}})}function xo({node:e,path:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let i=[o.package,e.name].filter(O).join("/"),u=o.components?.find(E=>E.name===i);if(!u)return console.warn(`Could not find component "${i}" for component "${o.component.name}". Available components are: ["${o.components.map(E=>E.name).join('", "')}"]`),[];let f=r.map(E=>I(e.attrs,([w,D])=>[w,D?.type!=="value"?v(D,{data:E,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):D?.value]));Object.entries(e.customProperties??{}).forEach(([E,w])=>X({selector:Q(t,{componentName:o.component.name,nodeId:e.id}),signal:r.map(D=>v(w.formula,{data:D,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),customPropertyName:E,root:o.root,runtime:o.env.runtime})),e.variants?.forEach(E=>{Object.entries(E.customProperties??{}).forEach(([w,D])=>X({selector:Q(t,{componentName:o.component.name,nodeId:e.id,variant:E}),signal:r.map(F=>v(D.formula,{data:F,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),customPropertyName:w,variant:E,root:o.root,runtime:o.env.runtime}))});let y=J({Location:r.get().Location,Attributes:f.get(),Apis:I(u.apis,([E,w])=>[E,{data:null,isLoading:!!(w.autoFetch&&v(w.autoFetch,{data:r.get(),component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),error:null}])});Oo(y,u,o),y.update(E=>({...E,Variables:I(u.variables,([w,D])=>[w,v(D.initialValue,{data:y.get(),component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})])})),To(u,y);let l=new AbortController;y.subscribe(()=>{},{destroy:()=>l.abort(`Component ${u.name} unmounted`)});let c=ko(u),m={};me(Object.entries(u.apis)).forEach(([E,w])=>{pe(w)?m[E]=be(w,{...o,apis:m,component:u,dataSignal:y,abortSignal:l.signal,isRootComponent:!1,formulaCache:c,package:e.package??o.package,triggerEvent:(D,F)=>{let k=Object.values(e.events).find(d=>d.trigger===D);k&&k.actions.forEach(d=>P(d,{...r.get(),Event:F},o))}}):m[E]=ve({apiRequest:w,ctx:{...o,apis:m,component:u,dataSignal:y,abortSignal:l.signal,isRootComponent:!1,formulaCache:c,package:e.package??o.package,triggerEvent:(D,F)=>{let k=Object.values(e.events).find(d=>d.trigger===D);k&&k.actions.forEach(d=>P(d,{...r.get(),Event:F},o))}},componentData:y.get()})}),Object.values(m).filter(Z).forEach(E=>{E.triggerActions(y.get())});let C=(E,w)=>{let D=Object.values(e.events).find(F=>F.trigger===E);D&&D.actions.forEach(F=>P(F,{...r.get(),Event:w},o))},S=o.providers;if(Ae(u)){let E=Object.fromEntries(Object.entries(u.formulas??{}).filter(([,w])=>w.exposeInContext).map(([w,D])=>[w,y.map(F=>v(D.formula,{data:F,component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}))]));S={...S,[u.name]:{component:u,formulaDataSignals:E,ctx:{...o,apis:m,component:u,dataSignal:y,abortSignal:l.signal,triggerEvent:C}}}}let R={};for(let E=0;E<e.children.length;E++){let w=e.children[E],F=o.component.nodes[w].slot??"default";R[F]=R[F]??[],R[F].push({id:w,path:`${t}.${E}[${F}]`,dataSignal:r,ctx:{...o,package:e.package??o.package}})}return f.subscribe(E=>y.update(w=>({...w,Attributes:E})),{destroy:()=>y.destroy()}),Ee({dataSignal:y,component:u,components:o.components,path:t,root:o.root,isRootComponent:!1,children:R,formulaCache:c,providers:S,apis:m,abortSignal:l.signal,package:e.package??o.package,parentElement:n,onEvent:C,toddle:o.toddle,env:o.env,namespace:s,instance:e.id==="root"?{...a,[o.component.name]:"root"}:{[o.component.name]:e.id??""}})}function No(e){if(e instanceof DragEvent)return Array.from(e.dataTransfer?.items??[]).reduce((t,r)=>(t[r.type]=e.dataTransfer?.getData(r.type),t),{})}function $o(e,t,r){return t.component.version===2&&r==="root"?`${t.package??t.toddle.project}-${e.tag}`:e.tag}function _r(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&&(!O(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 Po({node:e,dataSignal:t,id:r,path:o,ctx:n,namespace:a,instance:s}){let i=$o(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&&e.attrs.xmlns.type==="value"&&(a=String(e.attrs.xmlns.value));let u=a?document.createElementNS(a,i):document.createElement(i);u.setAttribute("data-node-id",r),o&&u.setAttribute("data-id",o),n.isRootComponent===!1&&r!=="root"&&u.setAttribute("data-component",n.component.name);let f=he([e.style,e.variants]);u.classList.add(f),s&&r==="root"&&Object.entries(s).forEach(([l,c])=>{u.classList.add(ge(`${l}:${c}`))}),e.classes&&Object.entries(e.classes)?.forEach(([l,{formula:c}])=>{c?t.map(C=>x(v(c,{data:C,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env}))).subscribe(C=>C?u.classList.add(l):u.classList.remove(l)):u.classList.add(l)}),Object.entries(e.attrs).forEach(([l,c])=>{if(!O(c))return;let m,C=()=>{c.type==="value"?_r(u,l,c?.value):(m=t.map(S=>v(c,{data:S,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})),m.subscribe(S=>{_r(u,l,S)}))};l==="autofocus"&&n.env.runtime==="preview"&&n.toddle._preview?n.toddle._preview.showSignal.subscribe(({testMode:S})=>{S?C():(m?.destroy(),u.removeAttribute(l))}):C()}),e["style-variables"]?.forEach(l=>{let{name:c,formula:m,unit:C}=l;t.map(R=>{let E=v(m,{data:R,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env});return C?E+C:E}).subscribe(R=>u.style.setProperty(`--${c}`,R))}),Object.entries(e.customProperties??{}).forEach(([l,{formula:c}])=>X({customPropertyName:l,selector:n.env.runtime==="custom-element"&&n.isRootComponent&&o==="0"?`${Q(o)}, :host`:Q(o),signal:t.map(m=>v(c,{data:m,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})),root:n.root,runtime:n.env.runtime})),e.variants?.forEach(l=>{Object.entries(l.customProperties??{}).forEach(([c,{formula:m}])=>{X({customPropertyName:c,selector:Q(o,{variant:l}),variant:l,signal:t.map(C=>v(m,{data:C,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})),root:n.root,runtime:n.env.runtime})})}),Object.values(e.events).forEach(l=>{let c=m=>(l.actions.forEach(C=>{if(m instanceof DragEvent&&(m.data=No(m)),m instanceof ClipboardEvent)try{m.data=Array.from(m.clipboardData?.items??[]).reduce((S,R)=>{try{S[R.type]=JSON.parse(m.clipboardData?.getData(R.type))}catch{S[R.type]=m.clipboardData?.getData(R.type)}return S},{})}catch(S){console.error("Could not get paste data",S)}P(C,{...t.get(),Event:m},n,m)}),!1);u.addEventListener(l.trigger,c)});let y=e.tag.toLocaleLowerCase();if(y==="script"||y==="style"){let l=[];e.children.map(c=>n.component.nodes[c]).filter(c=>c?.type==="text").forEach(c=>{if(c.value.type==="value")l.push(String(c.value.value));else{let m=t.map(C=>String(v(c.value,{data:C,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})));l.push(m)}}),l.every(c=>typeof c=="string")&&(u.textContent=l.join("")),l.filter(c=>typeof c!="string").forEach(c=>{c.subscribe(()=>{u.textContent=l.map(m=>typeof m=="string"?m:m.get()).join("")})})}else e.children.forEach((l,c)=>{z({parentElement:u,id:l,path:o+"."+c,dataSignal:t,ctx:n,namespace:a,instance:s}).forEach(C=>u.appendChild(C))});return u}function Lo({path:e,node:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let i=t.name??"default",u=[];if(o.children[i]?u=o.children[i].flatMap(f=>{let y=f.dataSignal.map(l=>l);return r.subscribe(l=>l,{destroy:()=>y.destroy()}),z({...f,dataSignal:y,parentElement:n,ctx:{...f.ctx,providers:o.providers},instance:a,namespace:s})}):u=t.children.flatMap((f,y)=>z({id:f,path:e+"."+y,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s})),o.env.runtime==="custom-element"&&o.isRootComponent){let f=document.createElement("slot");return f.setAttribute("name",i),u.forEach(y=>{f.appendChild(y)}),[f]}return u}function Io({node:e,id:t,path:r,dataSignal:o,namespace:n,ctx:a}){if(n&&n!=="http://www.w3.org/1999/xhtml")return Il({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(f=>String(v(s,{data:f,component:a.component,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:a.toddle,env:a.env}))).subscribe(f=>{i.innerText=f}):i.innerText=String(s.value),i}function Il({node:e,dataSignal:t,ctx:r}){let{value:o}=e,n=document.createTextNode("");return o.type!=="value"?t.map(s=>String(v(o,{data:s,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}))).subscribe(s=>{n.nodeValue=s}):n.nodeValue=String(o.value),n}function z({id:e,dataSignal:t,path:r,ctx:o,namespace:n,parentElement:a,instance:s}){let i=o.component.nodes[e];if(!i)return[];let u=({node:l,...c})=>{switch(l.type){case"element":return[Po({node:l,...c})];case"component":let m=o.components.some(C=>C.name===l.name);return xo({node:{...l,id:e},...c,ctx:{...o,package:l.package??(m?void 0:o.package)},parentElement:a});case"text":return[Io({...c,node:l})];case"slot":return Lo({...c,node:l})}};function f({node:l,dataSignal:c,id:m,path:C,ctx:S,namespace:R,parentElement:E,instance:w}){let D=!0,F=null,k=c.map(g=>x(v(l.condition,{data:g,component:S.component,formulaCache:S.formulaCache,root:S.root,package:S.package,toddle:S.toddle,env:S.env}))),d=[],b=g=>{if(g&&d.length===0){if(F?.destroy(),F=c.map(A=>A),d.push(...u({node:l,dataSignal:F,path:C,id:m,ctx:S,namespace:R,parentElement:E,instance:w})),D)return;if(!E||S.root.contains(E)===!1){console.error(`Conditional: Parent element does not exist for "${C}" This is likely due to the DOM being modified outside of Nordcraft.`);return}if(E.querySelector(`[data-id="${C}"]`)){console.warn(`Conditional: Element with data-id="${C}" already exists. This is likely due to the DOM being modified outside of Nordcraft`);return}let h=Br(C,E);for(let A of d)E.insertBefore(A,h)}else g||(F?.destroy(),d.forEach(h=>h.remove()),d.splice(0,d.length))};return k.subscribe(b,{destroy:()=>{F?.destroy()}}),S.env.runtime==="preview"&&S.toddle._preview&&S.toddle._preview.showSignal.subscribe(({displayedNodes:g,testMode:h})=>{g.includes(C)&&!h?b(!0):b(k.get())}),D=!1,d}function y(){let l=!0,c=new Map;return t.map(C=>{let S=v(i.repeat,{data:C,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env});return typeof S!="object"?[]:Object.entries(S??{})}).subscribe(C=>{let S=new Map;for(let R=0;R<C.length;R++){let[E,w]=C[R],D={...t.get(),ListItem:{...t.get().ListItem?{Parent:t.get().ListItem}:{},Item:w,Index:Number(R),Key:E}},F=i.repeatKey?v(i.repeatKey,{data:D,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):E;S.has(F)&&(console.warn(`Duplicate key "${F}" found in repeat. Fallback to index as key. This will cause a re-render of the duplicated children on every change.`),F=E);let k=c.get(F);if(k)S.set(F,k),k.dataSignal.update(d=>({...d,ListItem:{...t.get().ListItem?{Parent:t.get().ListItem}:{},Item:w,Index:Number(R),Key:E}}));else{let d=J(D),b=t.subscribe(A=>{l||d.update(({ListItem:j})=>({...A,ListItem:j}))},{destroy:()=>d.destroy()}),g={node:i,id:e,dataSignal:d,path:E==="0"?r:`${r}(${E})`,ctx:o,namespace:n,parentElement:a,instance:s},h=i.condition?f(g):u(g);S.set(F,{dataSignal:d,cleanup:b,elements:h})}}if(Array.from(c.entries()).forEach(([R,E])=>{S.has(R)||(E.cleanup(),E.dataSignal.destroy(),E.elements.forEach(w=>w.remove()))}),c=S,!(l||c.size===0)){if(!a||o.root.contains(a)===!1){console.error(`Repeat: Parent element does not exist for ${r}. This is likely due to the DOM being modified outside of Nordcraft.`);return}Do(a,Array.from(c.values()).flatMap(R=>R.elements),Br(r,a))}},{destroy:()=>Array.from(c.values()).forEach(C=>{C.cleanup(),C.dataSignal.destroy(),C.elements.forEach(S=>S.remove())})}),l=!1,Array.from(c.values()).flatMap(C=>C.elements)}return i.repeat?y():i.condition?f({node:i,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s}):u({node:i,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s})}var Ml=new Se;function Ee({component:e,dataSignal:t,onEvent:r,isRootComponent:o,path:n,children:a,formulaCache:s,components:i,apis:u,abortSignal:f,root:y,providers:l,package:c,parentElement:m,instance:C,toddle:S,namespace:R,env:E}){let w={triggerEvent:r,component:e,components:i,dataSignal:t,isRootComponent:o,apis:u,formulaCache:s,children:a,abortSignal:f,root:y,providers:l,package:c,toddle:S,env:E},D=z({id:"root",path:n,dataSignal:t,ctx:w,parentElement:m,namespace:R,instance:C});return Ml.add(()=>{let F;e.onAttributeChange?.actions&&e.onAttributeChange.actions.length>0&&t.map(k=>k.Attributes).subscribe(k=>{F&&e.onAttributeChange?.actions.forEach(d=>{P(d,t.get(),w,new CustomEvent("attribute-change",{detail:Object.entries(k).reduce((b,[g,h])=>((0,Mo.default)(h,F[g])===!1&&e.attributes[g]?.name&&(b[e.attributes[g]?.name]={current:F[g],new:h}),b),{})}))}),F=k}),e.onLoad?.actions.forEach(k=>{P(k,t.get(),w)})}),D}var we=class extends HTMLElement{toddle;#r;#e;#o;#t;#n;constructor(t,r,o){super(),this.toddle=o;let n=this.attachInternals();n.shadowRoot?this.#o=n.shadowRoot:this.#o=this.attachShadow({mode:"open"});let a={branchName:o.branch||"main",isServer:!1,request:void 0,runtime:"custom-element",logErrors:!0};this.#r=t,this.#t=ql({component:t,root:this.#o,toddle:o,env:a}),this.#n={themes:r.themes};let s=new AbortController;this.#t.subscribe(()=>{},{destroy:()=>s.abort(`Component ${t.name} unmounted`)}),this.#e={triggerEvent:this.dispatch.bind(this),root:this.#o,isRootComponent:!0,components:r.components,component:this.#r,dataSignal:this.#t,formulaCache:{},apis:{},abortSignal:s.signal,children:{},providers:{},package:void 0,toddle:o,env:a}}connectedCallback(){me(Object.entries(this.#r.apis)).forEach(([r,o])=>{pe(o)?this.#e.apis[r]=be(o,this.#e):this.#e.apis[r]=ve({apiRequest:o,ctx:this.#e,componentData:this.#t.get()})}),Object.values(this.#e.apis).filter(Z).forEach(r=>{r.triggerActions(this.#t.get())});let t=this.#e.providers;if(Ae(this.#r)){let r=Object.fromEntries(Object.entries(this.#r.formulas??{}).filter(([,o])=>o.exposeInContext).map(([o,n])=>[o,this.#t.map(a=>v(n.formula,{data:a,component:this.#r,formulaCache:this.#e.formulaCache,root:this.#e.root,package:this.#e.package,toddle:this.#e.toddle,env:this.#e.env}))]));t={...t,[this.#r.name]:{component:this.#r,formulaDataSignals:r,ctx:this.#e}}}this.#e.providers=t,this.render()}disconnectedCallback(){this.#t.destroy()}dispatch(t,r){this.dispatchEvent(new CustomEvent(t,{detail:r,bubbles:!0,composed:!0}))}render(){let t=Ee({...this.#e,path:"0",onEvent:this.dispatch.bind(this),parentElement:this.#o,instance:{[this.#r.name]:"root"}});this.#o.innerHTML="";let r=Co(this.#e.component,this.#e.components,this.#n.themes?Object.values(this.#n.themes)[0]:So,{includeResetStyle:!0,createFontFaces:!1}),o=document.createElement("style");o.appendChild(document.createTextNode(r)),this.#o.appendChild(o);let n=t[0];n&&this.#o.appendChild(n)}setAttribute(t,r){switch(typeof r){case"number":super.setAttribute(t,String(r));break;case"string":return super.setAttribute(t,r),this;default:super.setAttribute(t,`[Object ${typeof r}]`);break}return this.#t.set({...this.#t.get(),Attributes:{...this.#t.get().Attributes,[t]:r}}),this}getAttribute(t){return this.#t.get().Attributes[t]||super.getAttribute(t)}attributeChangedCallback(t,r,o){let n=this.getAttributeCaseInsensitive(t),a=this.getAttribute(n);o!=="[Object object]"&&parseFloat(o)!==a&&this.#t.set({...this.#t.get(),Attributes:{...this.#t.get().Attributes,[n]:o}})}getAttributeCaseInsensitive(t){let r=Object.keys(this.#t.get().Attributes).find(o=>o.toLowerCase()===t.toLowerCase());if(!r)throw new Error(`Unable to find attribute ${t} on component ${this.#r.name}`);return r}get __component(){return this.#r}get __ctx(){return this.#e}get __signal(){return this.#t}},ql=({component:e,root:t,toddle:r,env:o})=>J({Location:void 0,Variables:I(e.variables,([n,{initialValue:a}])=>{if(!e)throw new Error("Component not found");return[n,v(a,{data:{Attributes:{}},component:e,root:t,package:void 0,toddle:r,env:o})]}),Attributes:I(e.attributes,([n])=>[n,void 0]),Apis:I(e.apis,([n])=>[n,{data:null,isLoading:!1,error:null}])});var Bl=(e,t,r)=>{e.map(o=>t.components.find(n=>n.name===o)).forEach(o=>{let n=oo(o.name);if(customElements.get(n)){console.warn(`Component ${n} already defined`);return}customElements.define(n,class extends we{constructor(){super(o,t,r)}static get observedAttributes(){return Object.keys(o.attributes??{}).map(a=>a.toLowerCase())}})})};var np=(e=window.toddle)=>{e.isEqual=qo.default,Object.entries(Pr).forEach(([t,r])=>e.registerFormula("@toddle/"+t,r.default,"getArgumentInputData"in r?r.getArgumentInputData:void 0)),Object.entries(Ke).forEach(([t,r])=>e.registerAction("@toddle/"+t,r.default))};export{Bl as defineComponents,np as loadCorePlugins};
|
|
272
272
|
//# sourceMappingURL=custom-element.main.esm.js.map
|