@nordcraft/runtime 1.0.45 → 1.0.47
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/custom-element.main.esm.js +21 -21
- package/dist/custom-element.main.esm.js.map +3 -3
- package/dist/events/handleAction.d.ts +1 -1
- package/dist/events/handleAction.js +36 -6
- package/dist/events/handleAction.js.map +1 -1
- package/dist/page.main.esm.js +3 -3
- package/dist/page.main.esm.js.map +3 -3
- package/package.json +3 -3
- package/src/events/handleAction.ts +58 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
var Bo=Object.create;var Re=Object.defineProperty;var Uo=Object.getOwnPropertyDescriptor;var _o=Object.getOwnPropertyNames;var Ho=Object.getPrototypeOf,Vo=Object.prototype.hasOwnProperty;var Ko=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),f=(e,t)=>{for(var r in t)Re(e,r,{get:t[r],enumerable:!0})},Wo=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of _o(t))!Vo.call(e,n)&&n!==r&&Re(e,n,{get:()=>t[n],enumerable:!(o=Uo(t,n))||o.enumerable});return e};var se=(e,t,r)=>(r=e!=null?Bo(Ho(e)):{},Wo(t||!e||!e.__esModule?Re(r,"default",{value:e,enumerable:!0}):r,e));var te=Ko((nu,ro)=>{"use strict";ro.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 Ke={};f(Ke,{clearLocalStorage:()=>Be,clearSessionStorage:()=>Me,copyToClipboard:()=>Te,deleteFromLocalStorage:()=>$e,deleteFromSessionStorage:()=>Ve,focus:()=>He,gotToURL:()=>Pe,interval:()=>Le,logToConsole:()=>qe,preventDefault:()=>ke,saveToLocalStorage:()=>Oe,saveToSessionStorage:()=>Ie,setCookie:()=>je,setHttpOnlyCookie:()=>Ue,setSessionCookies:()=>xe,share:()=>Ne,sleep:()=>_e,stopPropagation:()=>De});var je={};f(je,{default:()=>Go});var Jo=async function([e,t,r,o,n,a],s){let i=d=>s.triggerActionEvent("Error",new Error(d));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 u=o??"Lax";if(typeof u!="string"||!["lax","strict","none"].includes(u.toLocaleLowerCase())){i('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let p=n??"/";if(typeof p!="string"||!p.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 g=a??!0;if(typeof g!="boolean"){i('The "Include Subdomains" argument must be a boolean');return}let l=`${e}=${t}; SameSite=${u}; Path=${p}`;if(typeof r=="number"){let d=new Date(Date.now()+r*1e3);l+=`; Expires=${d.toUTCString()}`}g&&(l+=`; Domain=${window.location.hostname}`),document.cookie=l,s.triggerActionEvent("Success",void 0)},Go=Jo;var De={};f(De,{default:()=>zo});var Qo=(e,t,r)=>{r?.stopPropagation?.()},zo=Qo;var Oe={};f(Oe,{default:()=>Zo});var Yo=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.setItem(e,JSON.stringify(t))},Zo=Yo;var Te={};f(Te,{default:()=>en});var Xo=([e])=>{if(typeof e!="string")throw new Error("Input value must be a string");return navigator.clipboard.writeText(e)},en=Xo;var ke={};f(ke,{default:()=>rn});var tn=(e,t,r)=>{r?.preventDefault?.()},rn=tn;var xe={};f(xe,{default:()=>nn});var on=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()))},nn=on;var Ne={};f(Ne,{default:()=>sn});var O=e=>e!=null,B=e=>typeof e=="object"&&e!==null,x=e=>e!==!1&&e!==void 0&&e!==null;var an=([e,t,r])=>{let o=a=>O(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),O(navigator.share)&&navigator.canShare(n))return navigator.share(n)},sn=an;var $e={};f($e,{default:()=>un});var ln=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.removeItem(e)},un=ln;var Pe={};f(Pe,{default:()=>cn});var dn=([e],t)=>{typeof e=="string"&&(t.env.runtime==="preview"?window.parent?.postMessage({type:"blockedNavigation",url:e},"*"):window.location.href=e)},cn=dn;var Le={};f(Le,{default:()=>fn});var pn=([e],t)=>{let r=Number(e);if(!O(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=pn;var Ie={};f(Ie,{default:()=>hn});var mn=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.setItem(e,JSON.stringify(t))},hn=mn;var Me={};f(Me,{default:()=>yn});var gn=async function(){window.sessionStorage.clear()},yn=gn;var qe={};f(qe,{default:()=>vn});var bn=([e,t])=>{console.log(e,t)},vn=bn;var Be={};f(Be,{default:()=>An});var Sn=async function(){window.localStorage.clear()},An=Sn;var Ue={};f(Ue,{default:()=>En});var Cn=async function([e,t,r,o,n,a],s){let i=d=>s.triggerActionEvent("Error",new Error(d));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 u=o??"Lax";if(typeof u!="string"||!["lax","strict","none"].includes(u.toLocaleLowerCase())){i('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let p=n??"/";if(typeof p!="string"||!p.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 g=a??!0;if(typeof g!="boolean"){i('The "Include Subdomains" argument must be a boolean');return}let l=new URLSearchParams;l.set("name",e),l.set("value",t),l.set("sameSite",u),l.set("path",p),l.set("includeSubdomains",String(g)),typeof r=="number"&&l.set("ttl",String(r));try{let d=await fetch(`/.nordcraft/cookies/set-cookie?${l.toString()}`);d.ok?s.triggerActionEvent("Success",void 0):i(await d.text())}catch(d){i(d instanceof Error?d.message:"An unexpected error occurred")}},En=Cn;var _e={};f(_e,{default:()=>Fn});var wn=([e],t)=>{let r=Number(e);if(!O(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setTimeout(()=>t.triggerActionEvent("tick",null),r);t.abortSignal.addEventListener("abort",()=>{clearTimeout(o)})},Fn=wn;var He={};f(He,{default:()=>jn});var Rn=([e])=>{e instanceof HTMLElement&&e.focus()},jn=Rn;var Ve={};f(Ve,{default:()=>On});var Dn=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.removeItem(e)},On=Dn;var Pr={};f(Pr,{absolute:()=>bt,add:()=>Vt,append:()=>Ye,boolean:()=>yt,branchName:()=>Jt,canShare:()=>Tt,capitalize:()=>Er,clamp:()=>dt,concatenate:()=>rt,currentURL:()=>Ar,dateFromString:()=>We,dateFromTimestamp:()=>it,decodeBase64:()=>wt,decodeURIComponent:()=>wr,defaultTo:()=>rr,deleteKey:()=>Xt,divide:()=>zt,drop:()=>ct,dropLast:()=>Ze,encodeBase64:()=>Ge,encodeJSON:()=>gr,encodeURIComponent:()=>Gt,entries:()=>Bt,equals:()=>Sr,every:()=>Pt,filter:()=>Et,find:()=>Wt,findIndex:()=>Cr,findLast:()=>ht,first:()=>dr,flatten:()=>ir,formatDate:()=>ut,formatNumber:()=>Tr,fromEntries:()=>tr,get:()=>pt,getCookie:()=>hr,getElementById:()=>Mt,getFromLocalStorage:()=>lt,getFromSessionStorage:()=>ft,getHttpOnlyCookie:()=>Qe,greaterOrEqueal:()=>st,greaterThan:()=>vr,groupBy:()=>St,includes:()=>nt,indexOf:()=>jt,isServer:()=>Nr,join:()=>Zt,json:()=>Kt,keyBy:()=>kt,languages:()=>Fr,last:()=>ar,lastIndexOf:()=>kr,lessOrEqual:()=>xt,lessThan:()=>Or,logarithm:()=>Yt,lowercase:()=>Dt,map:()=>jr,matches:()=>fr,max:()=>Ct,min:()=>mt,minus:()=>Nt,modulo:()=>Rr,multiply:()=>Ht,not:()=>er,notEqual:()=>tt,now:()=>or,number:()=>at,parseJSON:()=>ze,parseURL:()=>cr,power:()=>et,prepend:()=>pr,randomNumber:()=>Je,range:()=>At,reduce:()=>qt,replaceAll:()=>Dr,reverse:()=>It,round:()=>Lt,roundDown:()=>$t,roundUp:()=>Qt,set:()=>$r,shuffle:()=>Ut,size:()=>xr,some:()=>_t,sort_by:()=>Xe,split:()=>Ot,squareRoot:()=>Rt,startsWith:()=>Ft,string:()=>br,sum:()=>ur,take:()=>yr,takeLast:()=>sr,timestamp:()=>ot,trim:()=>vt,typeOf:()=>nr,unique:()=>gt,uppercase:()=>lr,userAgent:()=>mr});var We={};f(We,{default:()=>kn});var Tn=([e])=>typeof e=="string"?new Date(e):null,kn=Tn;var Je={};f(Je,{default:()=>Nn});var xn=()=>Math.random(),Nn=xn;var Ge={};f(Ge,{default:()=>Pn});var $n=([e])=>typeof e!="string"?null:btoa(e),Pn=$n;var Qe={};f(Qe,{default:()=>Mn});var Kr=(e,t)=>`{{ ${Ln[e]}.${t} }}`,Ln={cookies:"cookies"};var In=([e])=>!e||typeof e!="string"?null:Kr("cookies",e),Mn=In;var ze={};f(ze,{default:()=>Un});var qn=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:.\d{1,3})?Z$/;function ee(e){return JSON.parse(e,(t,r)=>typeof r=="string"&&r.length===24&&qn.test(r)?new Date(r):r)}var Bn=([e])=>{if(typeof e!="string")return null;try{return ee(e)}catch{return null}},Un=Bn;var Ye={};f(Ye,{default:()=>Hn});var _n=([e,t])=>Array.isArray(e)?[...e,t]:null,Hn=_n;var Ze={};f(Ze,{default:()=>Kn});var Vn=([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,Kn=Vn;var Xe={};f(Xe,{default:()=>Jn,getArgumentInputData:()=>Gn});var Wn=([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 u in s)if(s[u]!==i[u])return(s[u]>i[u]?1:-1)*o;return 0}return s===i?0:(s>i?1:-1)*o})},Jn=Wn,Gn=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0]}}:r;var et={};f(et,{default:()=>zn});var Qn=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)**Number(t),zn=Qn;var tt={};f(tt,{default:()=>Zn});var Yn=([e,t])=>!globalThis.toddle.isEqual(e,t),Zn=Yn;var rt={};f(rt,{default:()=>ea});var Xn=e=>{if(e.every(Array.isArray)){let t=[];for(let r of e)t.push(...r);return t}return e.every(B)?Object.assign({},...e):e.join("")},ea=Xn;var ot={};f(ot,{default:()=>ra});var ta=([e])=>!e||!(e instanceof Date)?null:e.getTime(),ra=ta;var nt={};f(nt,{default:()=>na});var oa=([e,t])=>typeof e=="string"&&typeof t=="string"?e.includes(t):Array.isArray(e)?e.some(r=>globalThis.toddle.isEqual(r,t)):null,na=oa;var at={};f(at,{default:()=>sa});var aa=([e])=>Number(e),sa=aa;var st={};f(st,{default:()=>la});var ia=([e,t])=>e>=t,la=ia;var it={};f(it,{default:()=>da});var ua=([e])=>typeof e=="number"?new Date(e):null,da=ua;var lt={};f(lt,{default:()=>pa});var ca=([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}},pa=ca;var ut={};f(ut,{default:()=>ma});var fa=([e,t,r])=>{if(!e||!(e instanceof Date))return null;let o=typeof t=="string"&&t.length>0||Array.isArray(t)&&t.every(F=>typeof F=="string")?t:void 0;if(!r||typeof r!="object")return Intl.DateTimeFormat(o).format(e);let n=(F,k)=>typeof F=="string"&&(k?.includes(F)??!0)?F:void 0,a=r,s=n(a.dateStyle,["full","long","medium","short"]),i=n(a.timeStyle,["full","long","medium","short"]),u=n(a.calendar),p=n(a.weekday,["long","short","narrow"]),g=n(a.era,["long","short","narrow"]),l=n(a.year,["numeric","2-digit"]),d=n(a.month,["long","short","narrow","numeric","2-digit"]),m=n(a.day,["numeric","2-digit"]),C=n(a.hour,["numeric","2-digit"]),S=n(a.minute,["numeric","2-digit"]),R=n(a.second,["numeric","2-digit"]),y=n(a.timeZoneName,["long","short","shortOffset","longOffset","shortGeneric","longGeneric"]),j=n(a.timeZone),D=a.hour12===!0?!0:a.hour12===!1?!1:void 0;return Intl.DateTimeFormat(o,{dateStyle:s,timeStyle:i,calendar:u,weekday:p,era:g,year:l,month:d,day:m,hour:C,minute:S,second:R,timeZoneName:y,timeZone:j,hour12:D}).format(e)},ma=fa;var dt={};f(dt,{default:()=>ga});var ha=([e,t,r])=>typeof e!="number"||typeof t!="number"||typeof r!="number"?null:Math.min(Math.max(e,t),r),ga=ha;var ct={};f(ct,{default:()=>ba});var ya=([e,t])=>typeof t!="number"||isNaN(t)?null:Array.isArray(e)?e.slice(t):typeof e=="string"?e.substring(t):null,ba=ya;var pt={};f(pt,{default:()=>Sa});var va=([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])},Sa=va;var ft={};f(ft,{default:()=>Ca});var Aa=([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}},Ca=Aa;var mt={};f(mt,{default:()=>wa});var Ea=e=>Math.min(...e.map(Number)),wa=Ea;var ht={};f(ht,{default:()=>Fa,getArgumentInputData:()=>Ra,handler:()=>Wr});var Wr=([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,Fa=Wr,Ra=([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={};f(gt,{default:()=>Da});var ja=([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)})},Da=ja;var yt={};f(yt,{default:()=>Ta});var Oa=([e])=>x(e),Ta=Oa;var bt={};f(bt,{default:()=>xa});var ka=([e])=>typeof e!="number"?null:Math.abs(e),xa=ka;var vt={};f(vt,{default:()=>$a});var Na=([e])=>typeof e!="string"?null:e.trim(),$a=Na;var St={};f(St,{default:()=>Pa,getArgumentInputData:()=>La,handler:()=>Jr});var Jr=([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},Pa=Jr,La=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0],index:0}}:r;var At={};f(At,{default:()=>Ma});var Ia=([e,t])=>typeof e!="number"||typeof t!="number"?null:e>t?[]:Array.from({length:t-e+1},(r,o)=>o+e),Ma=Ia;var Ct={};f(Ct,{default:()=>Ba});var qa=e=>Math.max(...e.map(Number)),Ba=qa;var Et={};f(Et,{default:()=>Ua,getArgumentInputData:()=>_a,handler:()=>Gr});var Gr=([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,Ua=Gr,_a=([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 wt={};f(wt,{default:()=>Va});var Ha=([e])=>typeof e!="string"?null:atob(e),Va=Ha;var Ft={};f(Ft,{default:()=>Wa});var Ka=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.startsWith(t),Wa=Ka;var Rt={};f(Rt,{default:()=>Ga});var Ja=([e])=>typeof e!="number"?null:Math.sqrt(e),Ga=Ja;var jt={};f(jt,{default:()=>za});var Qa=([e,t])=>typeof e=="string"?e.indexOf(t):Array.isArray(e)?e.findIndex(r=>globalThis.toddle.isEqual(r,t)):null,za=Qa;var Dt={};f(Dt,{default:()=>Za});var Ya=([e])=>typeof e!="string"?null:e.toLocaleLowerCase(),Za=Ya;var Ot={};f(Ot,{default:()=>es});var Xa=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.split(t),es=Xa;var Tt={};f(Tt,{default:()=>rs});var ts=([e,t,r])=>{if(!O(navigator.canShare))return!1;let o=a=>O(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)},rs=ts;var kt={};f(kt,{default:()=>os,getArgumentInputData:()=>ns,handler:()=>Qr});var Qr=([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},os=Qr,ns=([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 xt={};f(xt,{default:()=>ss});var as=([e,t])=>e<=t,ss=as;var Nt={};f(Nt,{default:()=>ls});var is=([e,t])=>{let r=Number(e),o=Number(t);return isNaN(r)||isNaN(o)?null:r-o},ls=is;var $t={};f($t,{default:()=>ds});var us=([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},ds=us;var Pt={};f(Pt,{default:()=>cs,getArgumentInputData:()=>ps,handler:()=>zr});var zr=([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,cs=zr,ps=([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={};f(Lt,{default:()=>ms});var fs=([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},ms=fs;var It={};f(It,{default:()=>gs});var hs=([e])=>Array.isArray(e)?[...e].reverse():null,gs=hs;var Mt={};f(Mt,{default:()=>bs});var ys=([e],{root:t})=>typeof e!="string"?null:t.getElementById(e),bs=ys;var qt={};f(qt,{default:()=>Ss,getArgumentInputData:()=>As});var vs=([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,Ss=vs,As=([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 Bt={};f(Bt,{default:()=>Es});var Cs=([e])=>typeof e=="object"&&e!==null?Object.entries(e).map(([t,r])=>({key:t,value:r})):null,Es=Cs;var Ut={};f(Ut,{default:()=>Fs});var ws=([e])=>Array.isArray(e)?Yr(e):typeof e=="string"?Yr(e.split("")).join(""):null;function Yr(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 Fs=ws;var _t={};f(_t,{default:()=>Rs,getArgumentInputData:()=>js,handler:()=>Zr});var Zr=([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,Rs=Zr,js=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var Ht={};f(Ht,{default:()=>Os});var Ds=e=>e.some(t=>isNaN(Number(t)))?null:e.reduce((t,r)=>t*r,1),Os=Ds;var Vt={};f(Vt,{default:()=>ks});var Ts=e=>!Array.isArray(e)||e.some(t=>t===null||typeof t!="number")?null:e.reduce((t,r)=>t+Number(r),0),ks=Ts;var Kt={};f(Kt,{default:()=>Ns});var xs=([e,t])=>{let r=isNaN(Number(t))?0:Number(t);return JSON.stringify(e,null,r)},Ns=xs;var Wt={};f(Wt,{default:()=>$s,getArgumentInputData:()=>Ps,handler:()=>Xr});var Xr=([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,$s=Xr,Ps=([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 Jt={};f(Jt,{default:()=>Is});var Ls=(e,t)=>t.env.branchName,Is=Ls;var Gt={};f(Gt,{default:()=>qs});var Ms=([e])=>typeof e!="string"?null:encodeURIComponent(e),qs=Ms;var Qt={};f(Qt,{default:()=>Us});var Bs=([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},Us=Bs;var zt={};f(zt,{default:()=>Hs});var _s=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)/Number(t),Hs=_s;var Yt={};f(Yt,{default:()=>Ks});var Vs=([e])=>typeof e!="number"||Number.isNaN(e)||e<0?null:Math.log(e),Ks=Vs;var Zt={};f(Zt,{default:()=>Js});var Ws=([e,t])=>Array.isArray(e)?e.join(String(t)):null,Js=Ws;var Xt={};f(Xt,{default:()=>Qs});var Gs=([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((u,p)=>p!==Number(a)):n.map((u,p)=>p===i?r(n[i],s):u)}return B(n)?s.length===0?Object.fromEntries(Object.entries(n).filter(([i])=>i!==a)):{...n,[a]:r(n[a],s)}:null},o=Array.isArray(t)?t:[t];return r(e,o)},Qs=Gs;var er={};f(er,{default:()=>Ys});var zs=([e])=>!x(e),Ys=zs;var tr={};f(tr,{default:()=>Xs});var Zs=([e])=>{if(Array.isArray(e)){let t={};for(let{key:r,value:o}of e)t[r]=o;return t}return null},Xs=Zs;var rr={};f(rr,{default:()=>ti});var ei=e=>{for(let t of e)if(x(t))return t;return null},ti=ei;var or={};f(or,{default:()=>oi});var ri=()=>new Date,oi=ri;var nr={};f(nr,{default:()=>ai});var ni=([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}},ai=ni;var ar={};f(ar,{default:()=>ii});var si=([e])=>typeof e=="string"||Array.isArray(e)?e[e.length-1]:null,ii=si;var sr={};f(sr,{default:()=>ui});var li=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(e.length-t):typeof e=="string"?e.substring(e.length-t):null,ui=li;var ir={};f(ir,{default:()=>ci});var di=([e])=>Array.isArray(e)?e.flat():null,ci=di;var lr={};f(lr,{default:()=>fi});var pi=([e])=>typeof e!="string"?null:e.toLocaleUpperCase(),fi=pi;var ur={};f(ur,{default:()=>hi});var mi=([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},hi=mi;var dr={};f(dr,{default:()=>yi});var gi=([e])=>typeof e=="string"||Array.isArray(e)?e[0]:null,yi=gi;var cr={};f(cr,{default:()=>vi});var bi=([e,t])=>{if(typeof e!="string")return null;try{let{hostname:r,searchParams:o,pathname:n,hash:a,href:s,protocol:i,port:u,origin:p}=new URL(e,typeof t=="string"?t:void 0);return{hostname:r,searchParams:Object.fromEntries(o),path:n.split("/").filter((g,l)=>l!==0||g!==""),hash:a.replace("#",""),href:s,protocol:i,port:u,origin:p}}catch{return null}},vi=bi;var pr={};f(pr,{default:()=>Ai});var Si=([e,t])=>Array.isArray(e)?[t,...e]:null,Ai=Si;var fr={};f(fr,{default:()=>Ei});var Ci=([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)??[]},Ei=Ci;var mr={};f(mr,{default:()=>Fi});var wi=(e,{env:t})=>t.isServer?t.request?.headers["user-agent"]??null:window.navigator.userAgent,Fi=wi;var hr={};f(hr,{default:()=>ji});var Ri=([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,ji=Ri;var gr={};f(gr,{default:()=>Oi});var Di=([e,t])=>typeof t!="number"?null:JSON.stringify(e,null,t),Oi=Di;var yr={};f(yr,{default:()=>ki});var Ti=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(0,t):typeof e=="string"?e.substring(0,t):null,ki=Ti;var br={};f(br,{default:()=>Ni});var xi=([e])=>String(e),Ni=xi;var vr={};f(vr,{default:()=>Pi});var $i=([e,t])=>e>t,Pi=$i;var Sr={};f(Sr,{default:()=>Ii});var Li=([e,t])=>globalThis.toddle.isEqual(e,t),Ii=Li;var Ar={};f(Ar,{default:()=>qi});var Mi=(e,{env:t})=>t.isServer?t.request.url:window?.location.href??null,qi=Mi;var Cr={};f(Cr,{default:()=>Bi,getArgumentInputData:()=>Ui,handler:()=>eo});var eo=([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,Bi=eo,Ui=([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 Er={};f(Er,{default:()=>Hi});var _i=([e])=>typeof e!="string"?null:e.length===0?e:e[0].toLocaleUpperCase()+e.substring(1).toLocaleLowerCase(),Hi=_i;var wr={};f(wr,{default:()=>Ki});var Vi=([e])=>typeof e!="string"?null:decodeURIComponent(e),Ki=Vi;var Fr={};f(Fr,{default:()=>Ji});var Wi=(e,{env:t})=>t.isServer?t.request?.headers["accept-language"]?.split(",").map(r=>r.split(";")[0])??[]:window.navigator.languages,Ji=Wi;var Rr={};f(Rr,{default:()=>Qi});var Gi=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)%Number(t),Qi=Gi;var jr={};f(jr,{default:()=>Zi,getArgumentInputData:()=>Yi});var zi=([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,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},Zi=zi;var Dr={};f(Dr,{default:()=>el});var Xi=([e,t,r])=>typeof e!="string"||typeof t!="string"?null:e.replaceAll(t,String(r)),el=Xi;var Or={};f(Or,{default:()=>rl});var tl=([e,t])=>e<t,rl=tl;var Tr={};f(Tr,{default:()=>nl});var ol=([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(F=>typeof F=="string")?t:void 0;if(!r||typeof r!="object")return Intl.NumberFormat(o).format(e);let n=(F,k)=>typeof F=="string"&&(k?.includes(F)??!0)?F: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 u=n(a.currencyDisplay,["code","symbol","narrowSymbol","name"]),p=typeof a.unit=="string"?a.unit:void 0;if(s==="unit"&&typeof p!="string")return null;let g=n(a.unitDisplay,["short","narrow","long"]),l=typeof a.minimumIntegerDigits=="number"&&a.minimumIntegerDigits>=1&&a.minimumIntegerDigits<=21?a.minimumIntegerDigits:void 0,d=typeof a.minimumFractionDigits=="number"&&a.minimumFractionDigits>=0&&a.minimumFractionDigits<=100?a.minimumFractionDigits:void 0,m=typeof a.maximumFractionDigits=="number"&&a.maximumFractionDigits>=0&&a.maximumFractionDigits<=100?a.maximumFractionDigits:void 0,C=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,R=n(a.notation,["standard","scientific","engineering","compact"]),y=n(a.compactDisplay,["short","long"]),j=["always","auto","min2"],D=typeof a.useGrouping=="boolean"?a.useGrouping:n(a.useGrouping,j);return new Intl.NumberFormat(o,{style:s,currency:i,currencyDisplay:u,unit:p,unitDisplay:g,minimumIntegerDigits:l,minimumFractionDigits:d,maximumFractionDigits:m,minimumSignificantDigits:C,maximumSignificantDigits:S,notation:R,compactDisplay:y,useGrouping:D}).format(e)},nl=ol;var kr={};f(kr,{default:()=>sl});var al=([e,t])=>typeof e=="string"?e.lastIndexOf(t):Array.isArray(e)?e.findLastIndex(r=>globalThis.toddle.isEqual(r,t)):null,sl=al;var xr={};f(xr,{default:()=>ll});var il=([e])=>Array.isArray(e)?e.length:B(e)?Object.keys(e).length:typeof e=="string"?e.length:null,ll=il;var Nr={};f(Nr,{default:()=>dl});var ul=(e,t)=>t.env.isServer,dl=ul;var $r={};f($r,{default:()=>cl});var to=([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(B(e)){let s=Array.isArray(e)?[...e]:{...e};return s[n]=a.length===0?r:to([s[n],a,r],o),s}return null},cl=to;var qo=se(te(),1);var oo=e=>{let t=e.toLocaleLowerCase().replaceAll(" ","");return t.includes("-")?t:`toddle-${t}`};var ie=e=>Object.hasOwn(e,"formula")&&O(e.formula);function V(e){return e&&typeof e=="object"&&typeof e.type=="string"&&["path","function","record","object","array","or","and","apply","value","switch"].includes(e.type)}function A(e,t){if(!V(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(x(A(r.condition,t)))return A(r.formula,t);return A(e.default,t)}case"or":{for(let r of e.arguments)if(x(A(r.formula,t)))return!0;return!1}case"and":{for(let r of e.arguments)if(!x(A(r.formula,t)))return!1;return!0}case"function":{let r=e.package??t.package,o=(t.toddle??globalThis.toddle)?.getCustomFormula(e.name,r),n=(t.toddle??globalThis.toddle).getFormula(e.name);if(O(o)){t.package=r;let a=e.arguments.reduce((s,i,u)=>({...s,[i.name??`${u}`]:i.isFunction?p=>A(i.formula,{...t,data:{...t.data,Args:t.data.Args?{...p,"@toddle.parent":t.data.Args}:p}}):A(i.formula,t)}),{});try{return ie(o)?A(o.formula,{...t,data:{...t.data,Args:a}}):o.handler(a,{root:t.root??document,env:t.env})}catch(s){return t.toddle.errors.push(s),t.env?.logErrors&&console.error(s),null}}else if(typeof n=="function"){let a=(e.arguments??[]).map(s=>s.isFunction?i=>A(s.formula,{...t,data:{...t.data,Args:t.data.Args?{...i,"@toddle.parent":t.data.Args}:i}}):A(s.formula,t));try{return n(a,t)}catch(s){return t.toddle.errors.push(s),t.env?.logErrors&&console.error(s),null}}return t.env?.logErrors&&console.error(`Could not find formula ${e.name} in package ${r??""}`,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=Object.fromEntries(e.arguments.map(s=>s.isFunction?[s.name,i=>A(s.formula,{...t,data:{...t.data,Args:t.data.Args?{...i,"@toddle.parent":t.data.Args}:i}})]:[s.name,A(s.formula,t)])),n={...t.data,Args:t.data.Args?{...o,"@toddle.parent":t.data.Args}:o},a=t.formulaCache?.[e.name]?.get(n);if(a?.hit)return a.data;{let s=A(r.formula,{...t,data:n});return t.formulaCache?.[e.name]?.set(n,s),s}}default:t.env?.logErrors&&console.error("Could not recognize formula",e)}}catch(r){return t.env?.logErrors&&console.error(r),null}}var pl=e=>typeof e=="object"&&e!==null,I=(e,t)=>Object.fromEntries(Object.entries(e).map(t)),re=(e,t)=>I(e,([r,o])=>[r,t(o)]),no=(e,t)=>{let[r,...o]=t,n=Array.isArray(e)?[...e]:pl(e)?{...e}:{};return o.length===0?delete n[r]:n[r]=no(n[r],o),n},K=(e,t)=>Object.fromEntries(Object.entries(e).filter(([r])=>!t.includes(r))),ao=(e,t)=>t.reduce((r,o)=>no(r,o),{...e});function le(e,[t,...r]){return r.length===0?e?.[t]:le(e?.[t],r)}var ue=(e,t,r=!0)=>fl(Object.entries(e),t,r),fl=(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 U;(function(e){e.GET="GET",e.POST="POST",e.DELETE="DELETE",e.PUT="PUT",e.PATCH="PATCH",e.HEAD="HEAD",e.OPTIONS="OPTIONS"})(U||(U={}));var de=e=>typeof e!="string"?!1:/^application\/(json|.*\+json)/.test(e),io=e=>typeof e!="string"?!1:/^(text\/|application\/x-www-form-urlencoded|application\/(xml|.*\+xml))/.test(e),lo=e=>typeof e!="string"?!1:/^text\/event-stream/.test(e),uo=e=>typeof e!="string"?!1:/^(application\/stream\+json|application\/x-ndjson)/.test(e),co=e=>typeof e!="string"?!1:/^image\//.test(e),G=e=>{let t={};for(let[r,o]of e.entries())t[r]?t[r]+=`, ${o}`:t[r]=o;return t};function*T({formula:e,globalFormulas:t,path:r=[],visitedFormulas:o=new Set,packageName:n}){if(O(e))switch(yield{path:r,formula:e,packageName:n},e.type){case"path":case"value":break;case"record":for(let[a,s]of e.entries.entries())yield*T({formula:s.formula,globalFormulas:t,path:[...r,"entries",a,"formula"],visitedFormulas:o,packageName:n});break;case"function":{n=e.package??n;let a=[n,e.name].filter(O).join("/"),s=!o.has(a);o.add(a);let i=n?t.packages?.[n]?.formulas?.[e.name]:t.formulas?.[e.name];for(let[u,p]of(e.arguments??[]).entries())yield*T({formula:p.formula,globalFormulas:t,path:[...r,"arguments",u,"formula"],visitedFormulas:o,packageName:n});i&&ie(i)&&s&&(yield*T({formula:i.formula,globalFormulas:t,path:[...r,"formula"],visitedFormulas:o,packageName:n}));break}case"array":case"or":case"and":case"object":for(let[a,s]of(e.arguments??[]).entries())yield*T({formula:s.formula,globalFormulas:t,path:[...r,"arguments",a,"formula"],visitedFormulas:o,packageName:n});break;case"apply":for(let[a,s]of(e.arguments??[]).entries())yield*T({formula:s.formula,globalFormulas:t,path:[...r,"arguments",a,"formula"],visitedFormulas:o,packageName:n});break;case"switch":for(let[a,s]of e.cases.entries())yield*T({formula:s.condition,globalFormulas:t,path:[...r,"cases",a,"condition"],visitedFormulas:o,packageName:n}),yield*T({formula:s.formula,globalFormulas:t,path:[...r,"cases",a,"formula"],visitedFormulas:o,packageName:n});yield*T({formula:e.default,globalFormulas:t,path:[...r,"default"],visitedFormulas:o,packageName:n});break}}function*q({action:e,globalFormulas:t,path:r=[],visitedFormulas:o=new Set,packageName:n}){if(O(e))switch(e.type){case"Fetch":for(let[a,s]of Object.entries(e.inputs??{}))yield*T({formula:s.formula,globalFormulas:t,path:[...r,"input",a,"formula"],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onSuccess?.actions??{}))yield*q({action:s,globalFormulas:t,path:[...r,"onSuccess","actions",a],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onError?.actions??{}))yield*q({action:s,globalFormulas:t,path:[...r,"onError","actions",a],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onMessage?.actions??{}))yield*q({action:s,globalFormulas:t,path:[...r,"onMessage","actions",a],visitedFormulas:o,packageName:n});break;case"Custom":case void 0:n=e.package??n,V(e.data)&&(yield*T({formula:e.data,globalFormulas:t,path:[...r,"data"],visitedFormulas:o,packageName:n}));for(let[a,s]of Object.entries(e.arguments??{}))yield*T({formula:s.formula,globalFormulas:t,path:[...r,"arguments",a,"formula"],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.events??{}))for(let[i,u]of Object.entries(s.actions??{}))yield*q({action:u,globalFormulas:t,path:[...r,"events",a,"actions",i],visitedFormulas:o,packageName:n});break;case"SetVariable":case"TriggerEvent":yield*T({formula:e.data,globalFormulas:t,path:[...r,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameter":yield*T({formula:e.data,globalFormulas:t,path:[...r,"data"],visitedFormulas:o});break;case"SetURLParameters":for(let[a,s]of Object.entries(e.parameters??{}))yield*T({formula:s,globalFormulas:t,path:[...r,"parameters",a],visitedFormulas:o});break;case"TriggerWorkflow":for(let[a,s]of Object.entries(e.parameters??{}))yield*T({formula:s.formula,globalFormulas:t,path:[...r,"parameters",a,"formula"],visitedFormulas:o,packageName:n});break;case"Switch":O(e.data)&&V(e.data)&&(yield*T({formula:e.data,globalFormulas:t,path:[...r,"data"],visitedFormulas:o,packageName:n}));for(let[a,s]of e.cases.entries()){yield*T({formula:s.condition,globalFormulas:t,path:[...r,"cases",a,"condition"],visitedFormulas:o,packageName:n});for(let[i,u]of Object.entries(s.actions))yield*q({action:u,globalFormulas:t,path:[...r,"cases",a,"actions",i],visitedFormulas:o,packageName:n})}for(let[a,s]of Object.entries(e.default.actions))yield*q({action:s,globalFormulas:t,path:[...r,"default","actions",a],visitedFormulas:o,packageName:n});break}}var oe=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(O(o))switch(o.type){case"path":o.path[0]==="Apis"&&t.add(o.path[1]);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)),V(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*T({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*T({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]});if(V(t.headers))yield*T({formula:t.headers,globalFormulas:this.globalFormulas,path:["apis",r,"headers"]});else for(let[o,n]of Object.entries(t.headers??{}))yield*T({formula:n,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o]});yield*T({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]});for(let[o,n]of Object.entries(t.onCompleted?.actions??{}))yield*q({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onCompleted","actions",o]});for(let[o,n]of Object.entries(t.onFailed?.actions??{}))yield*q({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onFailed","actions",o]})}};function*_(e,t=[]){if(O(e))switch(yield[t,e],e.type){case"SetVariable":case"SetURLParameter":case"TriggerEvent":case"TriggerWorkflow":break;case"Fetch":for(let[r,o]of Object.entries(e.onSuccess?.actions??{}))yield*_(o,[...t,"onSuccess","actions",r]);for(let[r,o]of Object.entries(e.onError?.actions??{}))yield*_(o,[...t,"onError","actions",r]);for(let[r,o]of Object.entries(e.onMessage?.actions??{}))yield*_(o,[...t,"onMessage","actions",r]);break;case"Custom":case void 0:for(let[r,o]of Object.entries(e.events??{}))for(let[n,a]of Object.entries(o?.actions??{}))yield*_(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*_(a,[...t,"cases",r,"actions",n]);for(let[r,o]of Object.entries(e.default.actions))yield*_(o,[...t,"default","actions",r]);break}}var ce=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(O(o))switch(o.type){case"path":o.path[0]==="Apis"&&t.add(o.path[1]);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*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"inputs",o,"formula"]});yield*T({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*T({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]}),yield*T({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"enabled"]});for(let[o,n]of Object.entries(t.headers??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"formula"]}),yield*T({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"enabled"]});yield*T({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]});for(let[o,n]of Object.entries(t.client?.onCompleted?.actions??{}))yield*q({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onCompleted","actions",o]});for(let[o,n]of Object.entries(t.client?.onFailed?.actions??{}))yield*q({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onFailed","actions",o]});yield*T({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*q({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onMessage","actions",o]});for(let[o,n]of Object.entries(t.redirectRules??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"redirectRules",o,"formula"]});yield*T({formula:t.isError?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"isError","formula"]}),yield*T({formula:t.timeout?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"timeout","formula"]}),yield*T({formula:t.server?.proxy?.enabled.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","enabled","formula"]}),yield*T({formula:t.server?.proxy?.useTemplatesInBody?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","useTemplatesInBody","formula"]}),yield*T({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*_(r,["apis",this.key,"client","onCompleted","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onFailed?.actions??{}))yield*_(r,["apis",this.key,"client","onFailed","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onMessage?.actions??{}))yield*_(r,["apis",this.key,"client","onData","actions",t])}};var pe=e=>e instanceof oe?!0:!("version"in e),po=({api:e,formulaContext:t,baseUrl:r,defaultHeaders:o})=>{let n=ml(e,t,r),a=yl({api:e,formulaContext:t,defaultHeaders:o});return{url:n,requestSettings:a}},ml=(e,t,r)=>{let o="",n=new URLSearchParams,a,s=A(e.url,t);if(["string","number"].includes(typeof s)){let m=typeof s=="number"?String(s):s;try{a=new URL(m,r),o=a.pathname,n=a.searchParams}catch{}}let i=bl(e.path,t),u=`${o}${i.length>0&&!o.endsWith("/")?"/":""}${i}`,p=new URLSearchParams([...n,...vl(e.queryParams,t)]),g=[...p.entries()].length>0?`?${p.toString()}`:"",l=A(e.hash?.formula,t),d=typeof l=="string"&&l.length>0?`#${l}`:"";if(a){let m=new URL(a.origin,r);return m.pathname=u,m.search=p.toString(),m.hash=d,m}else return new URL(`${u}${g}${d}`,r)},hl=[U.POST,U.DELETE,U.PUT,U.PATCH,U.OPTIONS],gl=(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))}},yl=({api:e,formulaContext:t,defaultHeaders:r})=>{let o=Object.values(U).includes(e.method)?e.method:U.GET,n=Sl({apiHeaders:e.headers,formulaContext:t,defaultHeaders:r}),a=Al({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 gl(e,s,t),s},bl=(e,t)=>ue(e??{},([r,o])=>o.index).map(([r,o])=>A(o.formula,t)).join("/"),vl=(e,t)=>{let r=new URLSearchParams;return Object.entries(e??{}).forEach(([o,n])=>{if(!(O(n.enabled)?A(n.enabled,t):!0))return;let s=A(n.formula,t);if(O(s))if(Array.isArray(s))s.forEach(i=>r.append(o,String(i)));else if(B(s)){let i=(u,p)=>{Object.entries(u).forEach(([g,l])=>{if(!Array.isArray(l)&&B(l))return i(l,`${p}[${g}]`);r.set(`${p}[${g}]`,String(l))})};i(s,o)}else r.set(o,String(s))}),r},Sl=({apiHeaders:e,formulaContext:t,defaultHeaders:r})=>{let o=new Headers(r);return Object.entries(e??{}).forEach(([n,a])=>{if(O(a.enabled)?A(a.enabled,t):!0){let i=A(a.formula,t);if(O(i))try{o.set(n.trim(),(typeof i=="string"?i:String(i)).trim())}catch{}}}),o};var fo=(e,t)=>so(JSON.stringify({url:e.href,method:t.method,headers:K(Object.fromEntries(Object.entries(t.headers??{})),["host","cookie"]),body:t.body??null})),mo=({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:x(a)},Al=({api:e,formulaContext:t,headers:r,method:o})=>{if(!e.body||!hl.includes(o))return;let n=A(e.body,t);if(!n)return;let a=r.get("content-type");if(!O(a)||de(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(u=>`${encodeURIComponent(s)}=${encodeURIComponent(u)}`).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,u])=>{s.set(i,u)}),s}case"text/plain":return String(n);default:return n}},fe=(e,t)=>new CustomEvent(e,{detail:t}),Cl=(e,t)=>{let r=e.apiReferences.has(t.name),o=t.apiReferences.has(e.name);return r===o?0:r?1:-1},me=e=>{let t=new Map,r=(o,n)=>{let a=t.get(n);return a||(a=o.version===2?new ce(o,n,{formulas:{},packages:{}}):new oe(o,n,{formulas:{},packages:{}}),t.set(n,a)),a};return[...e].sort(([o,n],[a,s])=>{let i=r(n,o),u=r(s,a);return Cl(i,u)})};var El=(e,t)=>{let r=t.length;for(;r;)e=e*33^t.charCodeAt(--r);return e},go=e=>El(5381,e),wl=/(a)(d)/gi;var ho=e=>String.fromCharCode(e+(e>25?39:97));function yo(e){let t="",r;for(r=Math.abs(e);r>52;r=r/52|0)t=ho(r%52)+t;return(ho(r%52)+t).replace(wl,"$1-$2")}var he=e=>yo(go(JSON.stringify(e))),ge=(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 Fl(e){switch(e.type){case"primitive":return`<${e.name}>`;case"keyword":return e.keywords.join(" | ");default:throw new Error(`Unknown syntax node type: ${e.type}`)}}function bo(e,{syntax:t,inherits:r,initialValue:o}){return`@property ${e} {
|
|
2
|
-
syntax: "${
|
|
1
|
+
var Bo=Object.create;var Re=Object.defineProperty;var Uo=Object.getOwnPropertyDescriptor;var _o=Object.getOwnPropertyNames;var Ho=Object.getPrototypeOf,Vo=Object.prototype.hasOwnProperty;var Ko=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),f=(e,t)=>{for(var r in t)Re(e,r,{get:t[r],enumerable:!0})},Wo=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of _o(t))!Vo.call(e,n)&&n!==r&&Re(e,n,{get:()=>t[n],enumerable:!(o=Uo(t,n))||o.enumerable});return e};var se=(e,t,r)=>(r=e!=null?Bo(Ho(e)):{},Wo(t||!e||!e.__esModule?Re(r,"default",{value:e,enumerable:!0}):r,e));var te=Ko((ou,ro)=>{"use strict";ro.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 Ke={};f(Ke,{clearLocalStorage:()=>Be,clearSessionStorage:()=>Me,copyToClipboard:()=>Te,deleteFromLocalStorage:()=>$e,deleteFromSessionStorage:()=>Ve,focus:()=>He,gotToURL:()=>Pe,interval:()=>Le,logToConsole:()=>qe,preventDefault:()=>ke,saveToLocalStorage:()=>Oe,saveToSessionStorage:()=>Ie,setCookie:()=>je,setHttpOnlyCookie:()=>Ue,setSessionCookies:()=>Ne,share:()=>xe,sleep:()=>_e,stopPropagation:()=>De});var je={};f(je,{default:()=>Go});var Jo=async function([e,t,r,o,n,a],s){let u=d=>s.triggerActionEvent("Error",new Error(d));if(typeof e!="string"){u('The "Name" argument must be a string');return}if(typeof t!="string"){u('The "Value" argument must be a string');return}let l=o??"Lax";if(typeof l!="string"||!["lax","strict","none"].includes(l.toLocaleLowerCase())){u('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let c=n??"/";if(typeof c!="string"||!c.startsWith("/")){u('The "Path" argument must be a string and start with /');return}if(r!=null&&(typeof r!="number"||isNaN(r))){u('The "Expires in" argument must be a number');return}let h=a??!0;if(typeof h!="boolean"){u('The "Include Subdomains" argument must be a boolean');return}let i=`${e}=${t}; SameSite=${l}; Path=${c}`;if(typeof r=="number"){let d=new Date(Date.now()+r*1e3);i+=`; Expires=${d.toUTCString()}`}h&&(i+=`; Domain=${window.location.hostname}`),document.cookie=i,s.triggerActionEvent("Success",void 0)},Go=Jo;var De={};f(De,{default:()=>zo});var Qo=(e,t,r)=>{r?.stopPropagation?.()},zo=Qo;var Oe={};f(Oe,{default:()=>Zo});var Yo=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.setItem(e,JSON.stringify(t))},Zo=Yo;var Te={};f(Te,{default:()=>en});var Xo=([e])=>{if(typeof e!="string")throw new Error("Input value must be a string");return navigator.clipboard.writeText(e)},en=Xo;var ke={};f(ke,{default:()=>rn});var tn=(e,t,r)=>{r?.preventDefault?.()},rn=tn;var Ne={};f(Ne,{default:()=>nn});var on=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()))},nn=on;var xe={};f(xe,{default:()=>sn});var O=e=>e!=null,B=e=>typeof e=="object"&&e!==null,N=e=>e!==!1&&e!==void 0&&e!==null;var an=([e,t,r])=>{let o=a=>O(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),O(navigator.share)&&navigator.canShare(n))return navigator.share(n)},sn=an;var $e={};f($e,{default:()=>un});var ln=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.localStorage.removeItem(e)},un=ln;var Pe={};f(Pe,{default:()=>cn});var dn=([e],t)=>{typeof e=="string"&&(t.env.runtime==="preview"?window.parent?.postMessage({type:"blockedNavigation",url:e},"*"):window.location.href=e)},cn=dn;var Le={};f(Le,{default:()=>fn});var pn=([e],t)=>{let r=Number(e);if(!O(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=pn;var Ie={};f(Ie,{default:()=>hn});var mn=async function([e,t]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.setItem(e,JSON.stringify(t))},hn=mn;var Me={};f(Me,{default:()=>yn});var gn=async function(){window.sessionStorage.clear()},yn=gn;var qe={};f(qe,{default:()=>vn});var bn=([e,t])=>{console.log(e,t)},vn=bn;var Be={};f(Be,{default:()=>An});var Sn=async function(){window.localStorage.clear()},An=Sn;var Ue={};f(Ue,{default:()=>En});var Cn=async function([e,t,r,o,n,a],s){let u=d=>s.triggerActionEvent("Error",new Error(d));if(typeof e!="string"){u('The "Name" argument must be a string');return}if(typeof t!="string"){u('The "Value" argument must be a string');return}let l=o??"Lax";if(typeof l!="string"||!["lax","strict","none"].includes(l.toLocaleLowerCase())){u('The "SameSite" argument must be "Lax", "Strict" or "None"');return}let c=n??"/";if(typeof c!="string"||!c.startsWith("/")){u('The "Path" argument must be a string and start with /');return}if(r!=null&&(typeof r!="number"||isNaN(r))){u('The "Expires in" argument must be a number');return}let h=a??!0;if(typeof h!="boolean"){u('The "Include Subdomains" argument must be a boolean');return}let i=new URLSearchParams;i.set("name",e),i.set("value",t),i.set("sameSite",l),i.set("path",c),i.set("includeSubdomains",String(h)),typeof r=="number"&&i.set("ttl",String(r));try{let d=await fetch(`/.nordcraft/cookies/set-cookie?${i.toString()}`);d.ok?s.triggerActionEvent("Success",void 0):u(await d.text())}catch(d){u(d instanceof Error?d.message:"An unexpected error occurred")}},En=Cn;var _e={};f(_e,{default:()=>Fn});var wn=([e],t)=>{let r=Number(e);if(!O(e)||Number.isNaN(e))throw new Error("Invalid delay value");let o=setTimeout(()=>t.triggerActionEvent("tick",null),r);t.abortSignal.addEventListener("abort",()=>{clearTimeout(o)})},Fn=wn;var He={};f(He,{default:()=>jn});var Rn=([e])=>{e instanceof HTMLElement&&e.focus()},jn=Rn;var Ve={};f(Ve,{default:()=>On});var Dn=async function([e]){if(typeof e!="string"||e.length===0)throw new Error(`Invalid key: ${e}`);window.sessionStorage.removeItem(e)},On=Dn;var Pr={};f(Pr,{absolute:()=>bt,add:()=>Vt,append:()=>Ye,boolean:()=>yt,branchName:()=>Jt,canShare:()=>Tt,capitalize:()=>Er,clamp:()=>dt,concatenate:()=>rt,currentURL:()=>Ar,dateFromString:()=>We,dateFromTimestamp:()=>it,decodeBase64:()=>wt,decodeURIComponent:()=>wr,defaultTo:()=>rr,deleteKey:()=>Xt,divide:()=>zt,drop:()=>ct,dropLast:()=>Ze,encodeBase64:()=>Ge,encodeJSON:()=>gr,encodeURIComponent:()=>Gt,entries:()=>Bt,equals:()=>Sr,every:()=>Pt,filter:()=>Et,find:()=>Wt,findIndex:()=>Cr,findLast:()=>ht,first:()=>dr,flatten:()=>ir,formatDate:()=>ut,formatNumber:()=>Tr,fromEntries:()=>tr,get:()=>pt,getCookie:()=>hr,getElementById:()=>Mt,getFromLocalStorage:()=>lt,getFromSessionStorage:()=>ft,getHttpOnlyCookie:()=>Qe,greaterOrEqueal:()=>st,greaterThan:()=>vr,groupBy:()=>St,includes:()=>nt,indexOf:()=>jt,isServer:()=>xr,join:()=>Zt,json:()=>Kt,keyBy:()=>kt,languages:()=>Fr,last:()=>ar,lastIndexOf:()=>kr,lessOrEqual:()=>Nt,lessThan:()=>Or,logarithm:()=>Yt,lowercase:()=>Dt,map:()=>jr,matches:()=>fr,max:()=>Ct,min:()=>mt,minus:()=>xt,modulo:()=>Rr,multiply:()=>Ht,not:()=>er,notEqual:()=>tt,now:()=>or,number:()=>at,parseJSON:()=>ze,parseURL:()=>cr,power:()=>et,prepend:()=>pr,randomNumber:()=>Je,range:()=>At,reduce:()=>qt,replaceAll:()=>Dr,reverse:()=>It,round:()=>Lt,roundDown:()=>$t,roundUp:()=>Qt,set:()=>$r,shuffle:()=>Ut,size:()=>Nr,some:()=>_t,sort_by:()=>Xe,split:()=>Ot,squareRoot:()=>Rt,startsWith:()=>Ft,string:()=>br,sum:()=>ur,take:()=>yr,takeLast:()=>sr,timestamp:()=>ot,trim:()=>vt,typeOf:()=>nr,unique:()=>gt,uppercase:()=>lr,userAgent:()=>mr});var We={};f(We,{default:()=>kn});var Tn=([e])=>typeof e=="string"?new Date(e):null,kn=Tn;var Je={};f(Je,{default:()=>xn});var Nn=()=>Math.random(),xn=Nn;var Ge={};f(Ge,{default:()=>Pn});var $n=([e])=>typeof e!="string"?null:btoa(e),Pn=$n;var Qe={};f(Qe,{default:()=>Mn});var Kr=(e,t)=>`{{ ${Ln[e]}.${t} }}`,Ln={cookies:"cookies"};var In=([e])=>!e||typeof e!="string"?null:Kr("cookies",e),Mn=In;var ze={};f(ze,{default:()=>Un});var qn=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:.\d{1,3})?Z$/;function ee(e){return JSON.parse(e,(t,r)=>typeof r=="string"&&r.length===24&&qn.test(r)?new Date(r):r)}var Bn=([e])=>{if(typeof e!="string")return null;try{return ee(e)}catch{return null}},Un=Bn;var Ye={};f(Ye,{default:()=>Hn});var _n=([e,t])=>Array.isArray(e)?[...e,t]:null,Hn=_n;var Ze={};f(Ze,{default:()=>Kn});var Vn=([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,Kn=Vn;var Xe={};f(Xe,{default:()=>Jn,getArgumentInputData:()=>Gn});var Wn=([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}),u=t({item:a});if(Array.isArray(s)&&Array.isArray(u)){for(let l in s)if(s[l]!==u[l])return(s[l]>u[l]?1:-1)*o;return 0}return s===u?0:(s>u?1:-1)*o})},Jn=Wn,Gn=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0]}}:r;var et={};f(et,{default:()=>zn});var Qn=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)**Number(t),zn=Qn;var tt={};f(tt,{default:()=>Zn});var Yn=([e,t])=>!globalThis.toddle.isEqual(e,t),Zn=Yn;var rt={};f(rt,{default:()=>ea});var Xn=e=>{if(e.every(Array.isArray)){let t=[];for(let r of e)t.push(...r);return t}return e.every(B)?Object.assign({},...e):e.join("")},ea=Xn;var ot={};f(ot,{default:()=>ra});var ta=([e])=>!e||!(e instanceof Date)?null:e.getTime(),ra=ta;var nt={};f(nt,{default:()=>na});var oa=([e,t])=>typeof e=="string"&&typeof t=="string"?e.includes(t):Array.isArray(e)?e.some(r=>globalThis.toddle.isEqual(r,t)):null,na=oa;var at={};f(at,{default:()=>sa});var aa=([e])=>Number(e),sa=aa;var st={};f(st,{default:()=>la});var ia=([e,t])=>e>=t,la=ia;var it={};f(it,{default:()=>da});var ua=([e])=>typeof e=="number"?new Date(e):null,da=ua;var lt={};f(lt,{default:()=>pa});var ca=([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}},pa=ca;var ut={};f(ut,{default:()=>ma});var fa=([e,t,r])=>{if(!e||!(e instanceof Date))return null;let o=typeof t=="string"&&t.length>0||Array.isArray(t)&&t.every(j=>typeof j=="string")?t:void 0;if(!r||typeof r!="object")return Intl.DateTimeFormat(o).format(e);let n=(j,k)=>typeof j=="string"&&(k?.includes(j)??!0)?j:void 0,a=r,s=n(a.dateStyle,["full","long","medium","short"]),u=n(a.timeStyle,["full","long","medium","short"]),l=n(a.calendar),c=n(a.weekday,["long","short","narrow"]),h=n(a.era,["long","short","narrow"]),i=n(a.year,["numeric","2-digit"]),d=n(a.month,["long","short","narrow","numeric","2-digit"]),m=n(a.day,["numeric","2-digit"]),A=n(a.hour,["numeric","2-digit"]),C=n(a.minute,["numeric","2-digit"]),w=n(a.second,["numeric","2-digit"]),y=n(a.timeZoneName,["long","short","shortOffset","longOffset","shortGeneric","longGeneric"]),R=n(a.timeZone),D=a.hour12===!0?!0:a.hour12===!1?!1:void 0;return Intl.DateTimeFormat(o,{dateStyle:s,timeStyle:u,calendar:l,weekday:c,era:h,year:i,month:d,day:m,hour:A,minute:C,second:w,timeZoneName:y,timeZone:R,hour12:D}).format(e)},ma=fa;var dt={};f(dt,{default:()=>ga});var ha=([e,t,r])=>typeof e!="number"||typeof t!="number"||typeof r!="number"?null:Math.min(Math.max(e,t),r),ga=ha;var ct={};f(ct,{default:()=>ba});var ya=([e,t])=>typeof t!="number"||isNaN(t)?null:Array.isArray(e)?e.slice(t):typeof e=="string"?e.substring(t):null,ba=ya;var pt={};f(pt,{default:()=>Sa});var va=([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])},Sa=va;var ft={};f(ft,{default:()=>Ca});var Aa=([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}},Ca=Aa;var mt={};f(mt,{default:()=>wa});var Ea=e=>Math.min(...e.map(Number)),wa=Ea;var ht={};f(ht,{default:()=>Fa,getArgumentInputData:()=>Ra,handler:()=>Wr});var Wr=([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,Fa=Wr,Ra=([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={};f(gt,{default:()=>Da});var ja=([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)})},Da=ja;var yt={};f(yt,{default:()=>Ta});var Oa=([e])=>N(e),Ta=Oa;var bt={};f(bt,{default:()=>Na});var ka=([e])=>typeof e!="number"?null:Math.abs(e),Na=ka;var vt={};f(vt,{default:()=>$a});var xa=([e])=>typeof e!="string"?null:e.trim(),$a=xa;var St={};f(St,{default:()=>Pa,getArgumentInputData:()=>La,handler:()=>Jr});var Jr=([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},Pa=Jr,La=([e],t,r)=>t===1&&Array.isArray(e)?{...r,Args:{item:e[0],index:0}}:r;var At={};f(At,{default:()=>Ma});var Ia=([e,t])=>typeof e!="number"||typeof t!="number"?null:e>t?[]:Array.from({length:t-e+1},(r,o)=>o+e),Ma=Ia;var Ct={};f(Ct,{default:()=>Ba});var qa=e=>Math.max(...e.map(Number)),Ba=qa;var Et={};f(Et,{default:()=>Ua,getArgumentInputData:()=>_a,handler:()=>Gr});var Gr=([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,Ua=Gr,_a=([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 wt={};f(wt,{default:()=>Va});var Ha=([e])=>typeof e!="string"?null:atob(e),Va=Ha;var Ft={};f(Ft,{default:()=>Wa});var Ka=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.startsWith(t),Wa=Ka;var Rt={};f(Rt,{default:()=>Ga});var Ja=([e])=>typeof e!="number"?null:Math.sqrt(e),Ga=Ja;var jt={};f(jt,{default:()=>za});var Qa=([e,t])=>typeof e=="string"?e.indexOf(t):Array.isArray(e)?e.findIndex(r=>globalThis.toddle.isEqual(r,t)):null,za=Qa;var Dt={};f(Dt,{default:()=>Za});var Ya=([e])=>typeof e!="string"?null:e.toLocaleLowerCase(),Za=Ya;var Ot={};f(Ot,{default:()=>es});var Xa=([e,t])=>typeof e!="string"||typeof t!="string"?null:e.split(t),es=Xa;var Tt={};f(Tt,{default:()=>rs});var ts=([e,t,r])=>{if(!O(navigator.canShare))return!1;let o=a=>O(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)},rs=ts;var kt={};f(kt,{default:()=>os,getArgumentInputData:()=>ns,handler:()=>Qr});var Qr=([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},os=Qr,ns=([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 Nt={};f(Nt,{default:()=>ss});var as=([e,t])=>e<=t,ss=as;var xt={};f(xt,{default:()=>ls});var is=([e,t])=>{let r=Number(e),o=Number(t);return isNaN(r)||isNaN(o)?null:r-o},ls=is;var $t={};f($t,{default:()=>ds});var us=([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},ds=us;var Pt={};f(Pt,{default:()=>cs,getArgumentInputData:()=>ps,handler:()=>zr});var zr=([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,cs=zr,ps=([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={};f(Lt,{default:()=>ms});var fs=([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},ms=fs;var It={};f(It,{default:()=>gs});var hs=([e])=>Array.isArray(e)?[...e].reverse():null,gs=hs;var Mt={};f(Mt,{default:()=>bs});var ys=([e],{root:t})=>typeof e!="string"?null:t.getElementById(e),bs=ys;var qt={};f(qt,{default:()=>Ss,getArgumentInputData:()=>As});var vs=([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,Ss=vs,As=([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 Bt={};f(Bt,{default:()=>Es});var Cs=([e])=>typeof e=="object"&&e!==null?Object.entries(e).map(([t,r])=>({key:t,value:r})):null,Es=Cs;var Ut={};f(Ut,{default:()=>Fs});var ws=([e])=>Array.isArray(e)?Yr(e):typeof e=="string"?Yr(e.split("")).join(""):null;function Yr(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 Fs=ws;var _t={};f(_t,{default:()=>Rs,getArgumentInputData:()=>js,handler:()=>Zr});var Zr=([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,Rs=Zr,js=([e],t,r)=>{if(t===0)return r;if(Array.isArray(e))return{...r,Args:{item:e[0],index:0}};if(e&&typeof e=="object"){let[o]=Object.entries(e);if(o)return{...r,Args:{key:o[0],value:o[1]}}}return r};var Ht={};f(Ht,{default:()=>Os});var Ds=e=>e.some(t=>isNaN(Number(t)))?null:e.reduce((t,r)=>t*r,1),Os=Ds;var Vt={};f(Vt,{default:()=>ks});var Ts=e=>!Array.isArray(e)||e.some(t=>t===null||typeof t!="number")?null:e.reduce((t,r)=>t+Number(r),0),ks=Ts;var Kt={};f(Kt,{default:()=>xs});var Ns=([e,t])=>{let r=isNaN(Number(t))?0:Number(t);return JSON.stringify(e,null,r)},xs=Ns;var Wt={};f(Wt,{default:()=>$s,getArgumentInputData:()=>Ps,handler:()=>Xr});var Xr=([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,$s=Xr,Ps=([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 Jt={};f(Jt,{default:()=>Is});var Ls=(e,t)=>t.env.branchName,Is=Ls;var Gt={};f(Gt,{default:()=>qs});var Ms=([e])=>typeof e!="string"?null:encodeURIComponent(e),qs=Ms;var Qt={};f(Qt,{default:()=>Us});var Bs=([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},Us=Bs;var zt={};f(zt,{default:()=>Hs});var _s=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)/Number(t),Hs=_s;var Yt={};f(Yt,{default:()=>Ks});var Vs=([e])=>typeof e!="number"||Number.isNaN(e)||e<0?null:Math.log(e),Ks=Vs;var Zt={};f(Zt,{default:()=>Js});var Ws=([e,t])=>Array.isArray(e)?e.join(String(t)):null,Js=Ws;var Xt={};f(Xt,{default:()=>Qs});var Gs=([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 u=Number(a);return Number.isNaN(u)?n:s.length===0?n.filter((l,c)=>c!==Number(a)):n.map((l,c)=>c===u?r(n[u],s):l)}return B(n)?s.length===0?Object.fromEntries(Object.entries(n).filter(([u])=>u!==a)):{...n,[a]:r(n[a],s)}:null},o=Array.isArray(t)?t:[t];return r(e,o)},Qs=Gs;var er={};f(er,{default:()=>Ys});var zs=([e])=>!N(e),Ys=zs;var tr={};f(tr,{default:()=>Xs});var Zs=([e])=>{if(Array.isArray(e)){let t={};for(let{key:r,value:o}of e)t[r]=o;return t}return null},Xs=Zs;var rr={};f(rr,{default:()=>ti});var ei=e=>{for(let t of e)if(N(t))return t;return null},ti=ei;var or={};f(or,{default:()=>oi});var ri=()=>new Date,oi=ri;var nr={};f(nr,{default:()=>ai});var ni=([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}},ai=ni;var ar={};f(ar,{default:()=>ii});var si=([e])=>typeof e=="string"||Array.isArray(e)?e[e.length-1]:null,ii=si;var sr={};f(sr,{default:()=>ui});var li=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(e.length-t):typeof e=="string"?e.substring(e.length-t):null,ui=li;var ir={};f(ir,{default:()=>ci});var di=([e])=>Array.isArray(e)?e.flat():null,ci=di;var lr={};f(lr,{default:()=>fi});var pi=([e])=>typeof e!="string"?null:e.toLocaleUpperCase(),fi=pi;var ur={};f(ur,{default:()=>hi});var mi=([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},hi=mi;var dr={};f(dr,{default:()=>yi});var gi=([e])=>typeof e=="string"||Array.isArray(e)?e[0]:null,yi=gi;var cr={};f(cr,{default:()=>vi});var bi=([e,t])=>{if(typeof e!="string")return null;try{let{hostname:r,searchParams:o,pathname:n,hash:a,href:s,protocol:u,port:l,origin:c}=new URL(e,typeof t=="string"?t:void 0);return{hostname:r,searchParams:Object.fromEntries(o),path:n.split("/").filter((h,i)=>i!==0||h!==""),hash:a.replace("#",""),href:s,protocol:u,port:l,origin:c}}catch{return null}},vi=bi;var pr={};f(pr,{default:()=>Ai});var Si=([e,t])=>Array.isArray(e)?[t,...e]:null,Ai=Si;var fr={};f(fr,{default:()=>Ei});var Ci=([e,t,r,o,n])=>{if(typeof e!="string"||typeof t!="string")return[];let a=[N(r)?"g":"",N(o)?"i":"",N(n)?"m":""].join(""),s=new RegExp(t,a);return e.match(s)??[]},Ei=Ci;var mr={};f(mr,{default:()=>Fi});var wi=(e,{env:t})=>t.isServer?t.request?.headers["user-agent"]??null:window.navigator.userAgent,Fi=wi;var hr={};f(hr,{default:()=>ji});var Ri=([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,ji=Ri;var gr={};f(gr,{default:()=>Oi});var Di=([e,t])=>typeof t!="number"?null:JSON.stringify(e,null,t),Oi=Di;var yr={};f(yr,{default:()=>ki});var Ti=([e,t])=>typeof t!="number"?null:Array.isArray(e)?e.slice(0,t):typeof e=="string"?e.substring(0,t):null,ki=Ti;var br={};f(br,{default:()=>xi});var Ni=([e])=>String(e),xi=Ni;var vr={};f(vr,{default:()=>Pi});var $i=([e,t])=>e>t,Pi=$i;var Sr={};f(Sr,{default:()=>Ii});var Li=([e,t])=>globalThis.toddle.isEqual(e,t),Ii=Li;var Ar={};f(Ar,{default:()=>qi});var Mi=(e,{env:t})=>t.isServer?t.request.url:window?.location.href??null,qi=Mi;var Cr={};f(Cr,{default:()=>Bi,getArgumentInputData:()=>Ui,handler:()=>eo});var eo=([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,Bi=eo,Ui=([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 Er={};f(Er,{default:()=>Hi});var _i=([e])=>typeof e!="string"?null:e.length===0?e:e[0].toLocaleUpperCase()+e.substring(1).toLocaleLowerCase(),Hi=_i;var wr={};f(wr,{default:()=>Ki});var Vi=([e])=>typeof e!="string"?null:decodeURIComponent(e),Ki=Vi;var Fr={};f(Fr,{default:()=>Ji});var Wi=(e,{env:t})=>t.isServer?t.request?.headers["accept-language"]?.split(",").map(r=>r.split(";")[0])??[]:window.navigator.languages,Ji=Wi;var Rr={};f(Rr,{default:()=>Qi});var Gi=([e,t])=>isNaN(Number(e))||isNaN(Number(t))?null:Number(e)%Number(t),Qi=Gi;var jr={};f(jr,{default:()=>Zi,getArgumentInputData:()=>Yi});var zi=([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,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},Zi=zi;var Dr={};f(Dr,{default:()=>el});var Xi=([e,t,r])=>typeof e!="string"||typeof t!="string"?null:e.replaceAll(t,String(r)),el=Xi;var Or={};f(Or,{default:()=>rl});var tl=([e,t])=>e<t,rl=tl;var Tr={};f(Tr,{default:()=>nl});var ol=([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(j=>typeof j=="string")?t:void 0;if(!r||typeof r!="object")return Intl.NumberFormat(o).format(e);let n=(j,k)=>typeof j=="string"&&(k?.includes(j)??!0)?j:void 0,a=r,s=n(a.style,["decimal","currency","percent","unit"]),u=typeof a.currency=="string"&&a.currency.length===3?a.currency:void 0;if(s==="currency"&&typeof u!="string")return null;let l=n(a.currencyDisplay,["code","symbol","narrowSymbol","name"]),c=typeof a.unit=="string"?a.unit:void 0;if(s==="unit"&&typeof c!="string")return null;let h=n(a.unitDisplay,["short","narrow","long"]),i=typeof a.minimumIntegerDigits=="number"&&a.minimumIntegerDigits>=1&&a.minimumIntegerDigits<=21?a.minimumIntegerDigits:void 0,d=typeof a.minimumFractionDigits=="number"&&a.minimumFractionDigits>=0&&a.minimumFractionDigits<=100?a.minimumFractionDigits:void 0,m=typeof a.maximumFractionDigits=="number"&&a.maximumFractionDigits>=0&&a.maximumFractionDigits<=100?a.maximumFractionDigits:void 0,A=typeof a.minimumSignificantDigits=="number"&&a.minimumSignificantDigits>=1&&a.minimumSignificantDigits<=21?a.minimumSignificantDigits:void 0,C=typeof a.maximumSignificantDigits=="number"&&a.maximumSignificantDigits>=1&&a.maximumSignificantDigits<=21?a.maximumSignificantDigits:void 0,w=n(a.notation,["standard","scientific","engineering","compact"]),y=n(a.compactDisplay,["short","long"]),R=["always","auto","min2"],D=typeof a.useGrouping=="boolean"?a.useGrouping:n(a.useGrouping,R);return new Intl.NumberFormat(o,{style:s,currency:u,currencyDisplay:l,unit:c,unitDisplay:h,minimumIntegerDigits:i,minimumFractionDigits:d,maximumFractionDigits:m,minimumSignificantDigits:A,maximumSignificantDigits:C,notation:w,compactDisplay:y,useGrouping:D}).format(e)},nl=ol;var kr={};f(kr,{default:()=>sl});var al=([e,t])=>typeof e=="string"?e.lastIndexOf(t):Array.isArray(e)?e.findLastIndex(r=>globalThis.toddle.isEqual(r,t)):null,sl=al;var Nr={};f(Nr,{default:()=>ll});var il=([e])=>Array.isArray(e)?e.length:B(e)?Object.keys(e).length:typeof e=="string"?e.length:null,ll=il;var xr={};f(xr,{default:()=>dl});var ul=(e,t)=>t.env.isServer,dl=ul;var $r={};f($r,{default:()=>cl});var to=([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(B(e)){let s=Array.isArray(e)?[...e]:{...e};return s[n]=a.length===0?r:to([s[n],a,r],o),s}return null},cl=to;var qo=se(te(),1);var oo=e=>{let t=e.toLocaleLowerCase().replaceAll(" ","");return t.includes("-")?t:`toddle-${t}`};var ie=e=>Object.hasOwn(e,"formula")&&O(e.formula);function V(e){return e&&typeof e=="object"&&typeof e.type=="string"&&["path","function","record","object","array","or","and","apply","value","switch"].includes(e.type)}function S(e,t){if(!V(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(N(S(r.condition,t)))return S(r.formula,t);return S(e.default,t)}case"or":{for(let r of e.arguments)if(N(S(r.formula,t)))return!0;return!1}case"and":{for(let r of e.arguments)if(!N(S(r.formula,t)))return!1;return!0}case"function":{let r=e.package??t.package,o=(t.toddle??globalThis.toddle)?.getCustomFormula(e.name,r),n=(t.toddle??globalThis.toddle).getFormula(e.name);if(O(o)){t.package=r;let a=e.arguments.reduce((s,u,l)=>({...s,[u.name??`${l}`]:u.isFunction?c=>S(u.formula,{...t,data:{...t.data,Args:t.data.Args?{...c,"@toddle.parent":t.data.Args}:c}}):S(u.formula,t)}),{});try{return ie(o)?S(o.formula,{...t,data:{...t.data,Args:a}}):o.handler(a,{root:t.root??document,env:t.env})}catch(s){return t.toddle.errors.push(s),t.env?.logErrors&&console.error(s),null}}else if(typeof n=="function"){let a=(e.arguments??[]).map(s=>s.isFunction?u=>S(s.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}}):S(s.formula,t));try{return n(a,t)}catch(s){return t.toddle.errors.push(s),t.env?.logErrors&&console.error(s),null}}return t.env?.logErrors&&console.error(`Could not find formula ${e.name} in package ${r??""}`,e),null}case"object":return Object.fromEntries(e.arguments?.map(r=>[r.name,S(r.formula,t)])??[]);case"record":return Object.fromEntries(e.entries.map(r=>[r.name,S(r.formula,t)]));case"array":return e.arguments.map(r=>S(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=Object.fromEntries(e.arguments.map(s=>s.isFunction?[s.name,u=>S(s.formula,{...t,data:{...t.data,Args:t.data.Args?{...u,"@toddle.parent":t.data.Args}:u}})]:[s.name,S(s.formula,t)])),n={...t.data,Args:t.data.Args?{...o,"@toddle.parent":t.data.Args}:o},a=t.formulaCache?.[e.name]?.get(n);if(a?.hit)return a.data;{let s=S(r.formula,{...t,data:n});return t.formulaCache?.[e.name]?.set(n,s),s}}default:t.env?.logErrors&&console.error("Could not recognize formula",e)}}catch(r){return t.env?.logErrors&&console.error(r),null}}var I=(e,t)=>Object.fromEntries(Object.entries(e).map(t)),re=(e,t)=>I(e,([r,o])=>[r,t(o)]),no=(e,[t,...r])=>{if(r.length>0){let n=Array.isArray(e)?[...e]:{...e};return n[t]=no(n[t],r),n}if(Array.isArray(e))return e.toSpliced(Number(t),1);let o={...e};return delete o[t],o},K=(e,t)=>Object.fromEntries(Object.entries(e).filter(([r])=>!t.includes(r))),ao=(e,t)=>t.reduce((r,o)=>no(r,o),{...e});function le(e,[t,...r]){return r.length===0?e?.[t]:le(e?.[t],r)}var ue=(e,t,r=!0)=>pl(Object.entries(e),t,r),pl=(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 U;(function(e){e.GET="GET",e.POST="POST",e.DELETE="DELETE",e.PUT="PUT",e.PATCH="PATCH",e.HEAD="HEAD",e.OPTIONS="OPTIONS"})(U||(U={}));var de=e=>typeof e!="string"?!1:/^application\/(json|.*\+json)/.test(e),io=e=>typeof e!="string"?!1:/^(text\/|application\/x-www-form-urlencoded|application\/(xml|.*\+xml))/.test(e),lo=e=>typeof e!="string"?!1:/^text\/event-stream/.test(e),uo=e=>typeof e!="string"?!1:/^(application\/stream\+json|application\/x-ndjson)/.test(e),co=e=>typeof e!="string"?!1:/^image\//.test(e),G=e=>{let t={};for(let[r,o]of e.entries())t[r]?t[r]+=`, ${o}`:t[r]=o;return t};function*T({formula:e,globalFormulas:t,path:r=[],visitedFormulas:o=new Set,packageName:n}){if(O(e))switch(yield{path:r,formula:e,packageName:n},e.type){case"path":case"value":break;case"record":for(let[a,s]of e.entries.entries())yield*T({formula:s.formula,globalFormulas:t,path:[...r,"entries",a,"formula"],visitedFormulas:o,packageName:n});break;case"function":{n=e.package??n;let a=[n,e.name].filter(O).join("/"),s=!o.has(a);o.add(a);let u=n?t.packages?.[n]?.formulas?.[e.name]:t.formulas?.[e.name];for(let[l,c]of(e.arguments??[]).entries())yield*T({formula:c.formula,globalFormulas:t,path:[...r,"arguments",l,"formula"],visitedFormulas:o,packageName:n});u&&ie(u)&&s&&(yield*T({formula:u.formula,globalFormulas:t,path:[...r,"formula"],visitedFormulas:o,packageName:n}));break}case"array":case"or":case"and":case"object":for(let[a,s]of(e.arguments??[]).entries())yield*T({formula:s.formula,globalFormulas:t,path:[...r,"arguments",a,"formula"],visitedFormulas:o,packageName:n});break;case"apply":for(let[a,s]of(e.arguments??[]).entries())yield*T({formula:s.formula,globalFormulas:t,path:[...r,"arguments",a,"formula"],visitedFormulas:o,packageName:n});break;case"switch":for(let[a,s]of e.cases.entries())yield*T({formula:s.condition,globalFormulas:t,path:[...r,"cases",a,"condition"],visitedFormulas:o,packageName:n}),yield*T({formula:s.formula,globalFormulas:t,path:[...r,"cases",a,"formula"],visitedFormulas:o,packageName:n});yield*T({formula:e.default,globalFormulas:t,path:[...r,"default"],visitedFormulas:o,packageName:n});break}}function*q({action:e,globalFormulas:t,path:r=[],visitedFormulas:o=new Set,packageName:n}){if(O(e))switch(e.type){case"Fetch":for(let[a,s]of Object.entries(e.inputs??{}))yield*T({formula:s.formula,globalFormulas:t,path:[...r,"input",a,"formula"],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onSuccess?.actions??{}))yield*q({action:s,globalFormulas:t,path:[...r,"onSuccess","actions",a],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onError?.actions??{}))yield*q({action:s,globalFormulas:t,path:[...r,"onError","actions",a],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.onMessage?.actions??{}))yield*q({action:s,globalFormulas:t,path:[...r,"onMessage","actions",a],visitedFormulas:o,packageName:n});break;case"Custom":case void 0:n=e.package??n,V(e.data)&&(yield*T({formula:e.data,globalFormulas:t,path:[...r,"data"],visitedFormulas:o,packageName:n}));for(let[a,s]of Object.entries(e.arguments??{}))yield*T({formula:s.formula,globalFormulas:t,path:[...r,"arguments",a,"formula"],visitedFormulas:o,packageName:n});for(let[a,s]of Object.entries(e.events??{}))for(let[u,l]of Object.entries(s.actions??{}))yield*q({action:l,globalFormulas:t,path:[...r,"events",a,"actions",u],visitedFormulas:o,packageName:n});break;case"SetVariable":case"TriggerEvent":yield*T({formula:e.data,globalFormulas:t,path:[...r,"data"],visitedFormulas:o,packageName:n});break;case"SetURLParameter":yield*T({formula:e.data,globalFormulas:t,path:[...r,"data"],visitedFormulas:o});break;case"SetURLParameters":for(let[a,s]of Object.entries(e.parameters??{}))yield*T({formula:s,globalFormulas:t,path:[...r,"parameters",a],visitedFormulas:o});break;case"TriggerWorkflow":for(let[a,s]of Object.entries(e.parameters??{}))yield*T({formula:s.formula,globalFormulas:t,path:[...r,"parameters",a,"formula"],visitedFormulas:o,packageName:n});break;case"Switch":O(e.data)&&V(e.data)&&(yield*T({formula:e.data,globalFormulas:t,path:[...r,"data"],visitedFormulas:o,packageName:n}));for(let[a,s]of e.cases.entries()){yield*T({formula:s.condition,globalFormulas:t,path:[...r,"cases",a,"condition"],visitedFormulas:o,packageName:n});for(let[u,l]of Object.entries(s.actions))yield*q({action:l,globalFormulas:t,path:[...r,"cases",a,"actions",u],visitedFormulas:o,packageName:n})}for(let[a,s]of Object.entries(e.default.actions))yield*q({action:s,globalFormulas:t,path:[...r,"default","actions",a],visitedFormulas:o,packageName:n});break}}var oe=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(O(o))switch(o.type){case"path":o.path[0]==="Apis"&&t.add(o.path[1]);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)),V(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*T({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*T({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]});if(V(t.headers))yield*T({formula:t.headers,globalFormulas:this.globalFormulas,path:["apis",r,"headers"]});else for(let[o,n]of Object.entries(t.headers??{}))yield*T({formula:n,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o]});yield*T({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]});for(let[o,n]of Object.entries(t.onCompleted?.actions??{}))yield*q({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onCompleted","actions",o]});for(let[o,n]of Object.entries(t.onFailed?.actions??{}))yield*q({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"onFailed","actions",o]})}};function*_(e,t=[]){if(O(e))switch(yield[t,e],e.type){case"SetVariable":case"SetURLParameter":case"TriggerEvent":case"TriggerWorkflow":break;case"Fetch":for(let[r,o]of Object.entries(e.onSuccess?.actions??{}))yield*_(o,[...t,"onSuccess","actions",r]);for(let[r,o]of Object.entries(e.onError?.actions??{}))yield*_(o,[...t,"onError","actions",r]);for(let[r,o]of Object.entries(e.onMessage?.actions??{}))yield*_(o,[...t,"onMessage","actions",r]);break;case"Custom":case void 0:for(let[r,o]of Object.entries(e.events??{}))for(let[n,a]of Object.entries(o?.actions??{}))yield*_(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*_(a,[...t,"cases",r,"actions",n]);for(let[r,o]of Object.entries(e.default.actions))yield*_(o,[...t,"default","actions",r]);break}}var ce=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(O(o))switch(o.type){case"path":o.path[0]==="Apis"&&t.add(o.path[1]);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*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"inputs",o,"formula"]});yield*T({formula:t.autoFetch,globalFormulas:this.globalFormulas,path:["apis",r,"autoFetch"]}),yield*T({formula:t.url,globalFormulas:this.globalFormulas,path:["apis",r,"url"]});for(let[o,n]of Object.entries(t.path??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"path",o,"formula"]});for(let[o,n]of Object.entries(t.queryParams??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"formula"]}),yield*T({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"queryParams",o,"enabled"]});for(let[o,n]of Object.entries(t.headers??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"formula"]}),yield*T({formula:n.enabled,globalFormulas:this.globalFormulas,path:["apis",r,"headers",o,"enabled"]});yield*T({formula:t.body,globalFormulas:this.globalFormulas,path:["apis",r,"body"]});for(let[o,n]of Object.entries(t.client?.onCompleted?.actions??{}))yield*q({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onCompleted","actions",o]});for(let[o,n]of Object.entries(t.client?.onFailed?.actions??{}))yield*q({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onFailed","actions",o]});yield*T({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*q({action:n,globalFormulas:this.globalFormulas,path:["apis",r,"client","onMessage","actions",o]});for(let[o,n]of Object.entries(t.redirectRules??{}))yield*T({formula:n.formula,globalFormulas:this.globalFormulas,path:["apis",r,"redirectRules",o,"formula"]});yield*T({formula:t.isError?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"isError","formula"]}),yield*T({formula:t.timeout?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"timeout","formula"]}),yield*T({formula:t.server?.proxy?.enabled.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","enabled","formula"]}),yield*T({formula:t.server?.proxy?.useTemplatesInBody?.formula,globalFormulas:this.globalFormulas,path:["apis",r,"server","proxy","useTemplatesInBody","formula"]}),yield*T({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*_(r,["apis",this.key,"client","onCompleted","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onFailed?.actions??{}))yield*_(r,["apis",this.key,"client","onFailed","actions",t]);for(let[t,r]of Object.entries(this.api.client?.onMessage?.actions??{}))yield*_(r,["apis",this.key,"client","onData","actions",t])}};var pe=e=>e instanceof oe?!0:!("version"in e),po=({api:e,formulaContext:t,baseUrl:r,defaultHeaders:o})=>{let n=fl(e,t,r),a=gl({api:e,formulaContext:t,defaultHeaders:o});return{url:n,requestSettings:a}},fl=(e,t,r)=>{let o="",n=new URLSearchParams,a,s=S(e.url,t);if(["string","number"].includes(typeof s)){let m=typeof s=="number"?String(s):s;try{a=new URL(m,r),o=a.pathname,n=a.searchParams}catch{}}let u=yl(e.path,t),l=`${o}${u.length>0&&!o.endsWith("/")?"/":""}${u}`,c=new URLSearchParams([...n,...bl(e.queryParams,t)]),h=[...c.entries()].length>0?`?${c.toString()}`:"",i=S(e.hash?.formula,t),d=typeof i=="string"&&i.length>0?`#${i}`:"";if(a){let m=new URL(a.origin,r);return m.pathname=l,m.search=c.toString(),m.hash=d,m}else return new URL(`${l}${h}${d}`,r)},ml=[U.POST,U.DELETE,U.PUT,U.PATCH,U.OPTIONS],hl=(e,t,r)=>{if(e.timeout){let o=S(e.timeout.formula,r);typeof o=="number"&&!Number.isNaN(o)&&o>0&&(t.signal=AbortSignal.timeout(o))}},gl=({api:e,formulaContext:t,defaultHeaders:r})=>{let o=Object.values(U).includes(e.method)?e.method:U.GET,n=vl({apiHeaders:e.headers,formulaContext:t,defaultHeaders:r}),a=Sl({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 hl(e,s,t),s},yl=(e,t)=>ue(e??{},([r,o])=>o.index).map(([r,o])=>S(o.formula,t)).join("/"),bl=(e,t)=>{let r=new URLSearchParams;return Object.entries(e??{}).forEach(([o,n])=>{if(!(O(n.enabled)?S(n.enabled,t):!0))return;let s=S(n.formula,t);if(O(s))if(Array.isArray(s))s.forEach(u=>r.append(o,String(u)));else if(B(s)){let u=(l,c)=>{Object.entries(l).forEach(([h,i])=>{if(!Array.isArray(i)&&B(i))return u(i,`${c}[${h}]`);r.set(`${c}[${h}]`,String(i))})};u(s,o)}else r.set(o,String(s))}),r},vl=({apiHeaders:e,formulaContext:t,defaultHeaders:r})=>{let o=new Headers(r);return Object.entries(e??{}).forEach(([n,a])=>{if(O(a.enabled)?S(a.enabled,t):!0){let u=S(a.formula,t);if(O(u))try{o.set(n.trim(),(typeof u=="string"?u:String(u)).trim())}catch{}}}),o};var fo=(e,t)=>so(JSON.stringify({url:e.href,method:t.method,headers:K(Object.fromEntries(Object.entries(t.headers??{})),["host","cookie"]),body:t.body??null})),mo=({apiName:e,response:t,formulaContext:r,errorFormula:o,performance:n})=>{let a=o?S(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:N(a)},Sl=({api:e,formulaContext:t,headers:r,method:o})=>{if(!e.body||!ml.includes(o))return;let n=S(e.body,t);if(!n)return;let a=r.get("content-type");if(!O(a)||de(a))return JSON.stringify(n);switch(a){case"application/x-www-form-urlencoded":return typeof n=="object"&&n!==null?Object.entries(n).map(([s,u])=>Array.isArray(u)?u.map(l=>`${encodeURIComponent(s)}=${encodeURIComponent(l)}`).join("&"):`${encodeURIComponent(s)}=${encodeURIComponent(String(u))}`).join("&"):"";case"multipart/form-data":{let s=new FormData;return typeof n=="object"&&n!==null&&Object.entries(n).forEach(([u,l])=>{s.set(u,l)}),s}case"text/plain":return String(n);default:return n}},fe=(e,t)=>new CustomEvent(e,{detail:t}),Al=(e,t)=>{let r=e.apiReferences.has(t.name),o=t.apiReferences.has(e.name);return r===o?0:r?1:-1},me=e=>{let t=new Map,r=(o,n)=>{let a=t.get(n);return a||(a=o.version===2?new ce(o,n,{formulas:{},packages:{}}):new oe(o,n,{formulas:{},packages:{}}),t.set(n,a)),a};return[...e].sort(([o,n],[a,s])=>{let u=r(n,o),l=r(s,a);return Al(u,l)})};var Cl=(e,t)=>{let r=t.length;for(;r;)e=e*33^t.charCodeAt(--r);return e},go=e=>Cl(5381,e),El=/(a)(d)/gi;var ho=e=>String.fromCharCode(e+(e>25?39:97));function yo(e){let t="",r;for(r=Math.abs(e);r>52;r=r/52|0)t=ho(r%52)+t;return(ho(r%52)+t).replace(El,"$1-$2")}var he=e=>yo(go(JSON.stringify(e))),ge=(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 wl(e){switch(e.type){case"primitive":return`<${e.name}>`;case"keyword":return e.keywords.join(" | ");default:throw new Error(`Unknown syntax node type: ${e.type}`)}}function bo(e,{syntax:t,inherits:r,initialValue:o}){return`@property ${e} {
|
|
2
|
+
syntax: "${wl(t)}";
|
|
3
3
|
inherits: ${String(r)};
|
|
4
4
|
initial-value: ${o};
|
|
5
5
|
}`}var vo="nc-custom-properties",Lr=`
|
|
@@ -73,7 +73,7 @@ var Bo=Object.create;var Re=Object.defineProperty;var Uo=Object.getOwnPropertyDe
|
|
|
73
73
|
[popover]:not(:popover-open):not(dialog[open]) {
|
|
74
74
|
display: revert;
|
|
75
75
|
}
|
|
76
|
-
}`,So={colors:{grey:{order:0,variants:{50:{order:0,value:"#FAFAFA"},100:{order:1,value:"#F5F5F5"},200:{order:2,value:"#E5E5E5"},300:{order:3,value:"#D4D4D4"},400:{order:4,value:"#A3A3A3"},500:{order:5,value:"#737373"},600:{order:6,value:"#525252"},700:{order:7,value:"#404040"},800:{order:8,value:"#262626"},900:{order:9,value:"#171717"}}},red:{order:1,variants:{50:{order:0,value:"#FEF2F2"},100:{order:1,value:"#FEE2E2"},200:{order:2,value:"#FECACA"},300:{order:3,value:"#FCA5A5"},400:{order:4,value:"#F87171"},500:{order:5,value:"#EF4444"},600:{order:6,value:"#DC2626"},700:{order:7,value:"#B91C1C"},800:{order:8,value:"#991B1B"},900:{order:9,value:"#7F1D1D"}}},rose:{order:3,variants:{50:{order:0,value:"#FFF1F2"},100:{order:1,value:"#FFE4E6"},200:{order:2,value:"#FECDD3"},300:{order:3,value:"#FDA4AF"},400:{order:4,value:"#FB7185"},500:{order:5,value:"#F43F5E"},600:{order:6,value:"#E11D48"},700:{order:7,value:"#BE123C"},800:{order:8,value:"#9F1239"},900:{order:9,value:"#881337"}}},pink:{order:4,variants:{50:{order:0,value:"#FDF2F8"},100:{order:1,value:"#FCE7F3"},200:{order:2,value:"#FBCFE8"},300:{order:3,value:"#F9A8D4"},400:{order:4,value:"#F472B6"},500:{order:5,value:"#EC4899"},600:{order:6,value:"#DB2777"},700:{order:7,value:"#BE185D"},800:{order:8,value:"#9D174D"},900:{order:9,value:"#831843"}}},amber:{order:5,variants:{50:{order:0,value:"#FFFBEB"},100:{order:1,value:"#FEF3C7"},200:{order:2,value:"#FDE68A"},300:{order:3,value:"#FCD34D"},400:{order:4,value:"#FBBF24"},500:{order:5,value:"#F59E0B"},600:{order:6,value:"#D97706"},700:{order:7,value:"#B45309"},800:{order:8,value:"#92400E"},900:{order:9,value:"#78350F"}}},orange:{order:6,variants:{50:{order:0,value:"#FFF7ED"},100:{order:1,value:"#FFEDD5"},200:{order:2,value:"#FED7AA"},300:{order:3,value:"#FDBA74"},400:{order:4,value:"#FB923C"},500:{order:5,value:"#F97316"},600:{order:6,value:"#EA580C"},700:{order:7,value:"#C2410C"},800:{order:8,value:"#9A3412"},900:{order:9,value:"#7C2D12"}}},yellow:{order:7,variants:{50:{order:0,value:"#FFFBEB"},100:{order:1,value:"#FEF3C7"},200:{order:2,value:"#FDE68A"},300:{order:3,value:"#FCD34D"},400:{order:4,value:"#FBBF24"},500:{order:5,value:"#F59E0B"},600:{order:6,value:"#D97706"},700:{order:7,value:"#B45309"},800:{order:8,value:"#92400E"},900:{order:9,value:"#78350F"}}},lime:{order:8,variants:{50:{order:0,value:"#F7FEE7"},100:{order:1,value:"#ECFCCB"},200:{order:2,value:"#D9F99D"},300:{order:3,value:"#BEF264"},400:{order:4,value:"#A3E635"},500:{order:5,value:"#84CC16"},600:{order:6,value:"#65A30D"},700:{order:7,value:"#4D7C0F"},800:{order:8,value:"#3F6212"},900:{order:9,value:"#365314"}}},green:{order:9,variants:{50:{order:0,value:"#ECFDF5"},100:{order:1,value:"#D1FAE5"},200:{order:2,value:"#A7F3D0"},300:{order:3,value:"#6EE7B7"},400:{order:4,value:"#34D399"},500:{order:5,value:"#10B981"},600:{order:6,value:"#059669"},700:{order:7,value:"#047857"},800:{order:8,value:"#065F46"},900:{order:9,value:"#064E3B"}}},emerald:{order:10,variants:{50:{order:0,value:"#ECFDF5"},100:{order:1,value:"#D1FAE5"},200:{order:2,value:"#A7F3D0"},300:{order:3,value:"#6EE7B7"},400:{order:4,value:"#34D399"},500:{order:5,value:"#10B981"},600:{order:6,value:"#059669"},700:{order:7,value:"#047857"},800:{order:8,value:"#065F46"},900:{order:9,value:"#064E3B"}}},teal:{order:11,variants:{50:{order:0,value:"#F0FDFA"},100:{order:1,value:"#CCFBF1"},200:{order:2,value:"#99F6E4"},300:{order:3,value:"#5EEAD4"},400:{order:4,value:"#2DD4BF"},500:{order:5,value:"#14B8A6"},600:{order:6,value:"#0D9488"},700:{order:7,value:"#0F766E"},800:{order:8,value:"#115E59"},900:{order:9,value:"#134E4A"}}},cyan:{order:12,variants:{50:{order:0,value:"#ECFEFF"},100:{order:1,value:"#CFFAFE"},200:{order:2,value:"#A5F3FC"},300:{order:3,value:"#67E8F9"},400:{order:4,value:"#22D3EE"},500:{order:5,value:"#06B6D4"},600:{order:6,value:"#0891B2"},700:{order:7,value:"#0E7490"},800:{order:8,value:"#155E75"},900:{order:9,value:"#164E63"}}},sky:{order:13,variants:{50:{order:0,value:"#F0F9FF"},100:{order:1,value:"#E0F2FE"},200:{order:2,value:"#BAE6FD"},300:{order:3,value:"#7DD3FC"},400:{order:4,value:"#38BDF8"},500:{order:5,value:"#0EA5E9"},600:{order:6,value:"#0284C7"},700:{order:7,value:"#0369A1"},800:{order:8,value:"#075985"},900:{order:9,value:"#0C4A6E"}}},blue:{order:14,variants:{50:{order:0,value:"#EFF6FF"},100:{order:1,value:"#DBEAFE"},200:{order:2,value:"#BFDBFE"},300:{order:3,value:"#93C5FD"},400:{order:4,value:"#60A5FA"},500:{order:5,value:"#3B82F6"},600:{order:6,value:"#2563EB"},700:{order:7,value:"#1D4ED8"},800:{order:8,value:"#1E40AF"},900:{order:9,value:"#1E3A8A"}}},indigo:{order:15,variants:{50:{order:0,value:"#EEF2FF"},100:{order:1,value:"#E0E7FF"},200:{order:2,value:"#C7D2FE"},300:{order:3,value:"#A5B4FC"},400:{order:4,value:"#818CF8"},500:{order:5,value:"#6366F1"},600:{order:6,value:"#4F46E5"},700:{order:7,value:"#4338CA"},800:{order:8,value:"#3730A3"},900:{order:9,value:"#312E81"}}},purple:{order:16,variants:{50:{order:0,value:"#F5F3FF"},100:{order:1,value:"#EDE9FE"},200:{order:2,value:"#DDD6FE"},300:{order:3,value:"#C4B5FD"},400:{order:4,value:"#A78BFA"},500:{order:5,value:"#8B5CF6"},600:{order:6,value:"#7C3AED"},700:{order:7,value:"#6D28D9"},800:{order:8,value:"#5B21B6"},900:{order:9,value:"#4C1D95"}}},fuchsia:{order:17,variants:{50:{order:0,value:"#FDF4FF"},100:{order:1,value:"#FAE8FF"},200:{order:2,value:"#F5D0FE"},300:{order:3,value:"#F0ABFC"},400:{order:4,value:"#E879F9"},500:{order:5,value:"#D946EF"},600:{order:6,value:"#C026D3"},700:{order:7,value:"#A21CAF"},800:{order:8,value:"#86198F"},900:{order:9,value:"#701A75"}}}},shadow:{sm:{order:0,value:"0 1px 2px 0 rgba(0, 0, 0, 0.25)"},base:{order:1,value:"0 1px 3px 0 rgba(0, 0, 0, 0.25), 0 1px 2px 0 rgba(0, 0, 0, 0.25)"},md:{order:2,value:"0 4px 6px -1px rgba(0, 0, 0, 0.25), 0 2px 4px -1px rgba(0, 0, 0, 0.25)"},lg:{order:3,value:"0 10px 15px -3px rgba(0, 0, 0, 0.25), 0 4px 6px -2px rgba(0, 0, 0, 0.25)"},xl:{order:4,value:"0 20px 25px -5px rgba(0, 0, 0, 0.25), 0 10px 10px -5px rgba(0, 0, 0, 0.25)"},"2xl":{order:5,value:"0 25px 50px -12px rgba(0, 0, 0, 0.25)"}},spacing:.25,fontSize:{lg:{order:0,value:"1.125rem"},sm:{order:1,value:"0.875rem"},xl:{order:2,value:"1.25rem"},xs:{order:3,value:"0.75rem"},"2xl":{order:4,value:"1.5rem"},"3xl":{order:5,value:"1.875rem"},"4xl":{order:6,value:"2.25rem"},"5xl":{order:7,value:"3rem"},xxs:{order:8,value:"0.625rem"},base:{order:9,value:"1rem",default:!0}},fontFamily:{mono:{order:0,value:["Fira Code","monospace"]},sans:{order:1,value:["Inter","sans-serif"],default:!0}},fontWeight:{bold:{order:0,value:"700"},bolder:{order:1,value:"800"},normal:{order:2,value:"500",default:!0},regular:{order:3,value:"400"},"semi-bold":{order:4,value:"600"}},breakpoints:{large:{order:2,value:1440},small:{order:0,value:576},medium:{order:1,value:960}}};var Ao=(e,t)=>"breakpoints"in e?
|
|
76
|
+
}`,So={colors:{grey:{order:0,variants:{50:{order:0,value:"#FAFAFA"},100:{order:1,value:"#F5F5F5"},200:{order:2,value:"#E5E5E5"},300:{order:3,value:"#D4D4D4"},400:{order:4,value:"#A3A3A3"},500:{order:5,value:"#737373"},600:{order:6,value:"#525252"},700:{order:7,value:"#404040"},800:{order:8,value:"#262626"},900:{order:9,value:"#171717"}}},red:{order:1,variants:{50:{order:0,value:"#FEF2F2"},100:{order:1,value:"#FEE2E2"},200:{order:2,value:"#FECACA"},300:{order:3,value:"#FCA5A5"},400:{order:4,value:"#F87171"},500:{order:5,value:"#EF4444"},600:{order:6,value:"#DC2626"},700:{order:7,value:"#B91C1C"},800:{order:8,value:"#991B1B"},900:{order:9,value:"#7F1D1D"}}},rose:{order:3,variants:{50:{order:0,value:"#FFF1F2"},100:{order:1,value:"#FFE4E6"},200:{order:2,value:"#FECDD3"},300:{order:3,value:"#FDA4AF"},400:{order:4,value:"#FB7185"},500:{order:5,value:"#F43F5E"},600:{order:6,value:"#E11D48"},700:{order:7,value:"#BE123C"},800:{order:8,value:"#9F1239"},900:{order:9,value:"#881337"}}},pink:{order:4,variants:{50:{order:0,value:"#FDF2F8"},100:{order:1,value:"#FCE7F3"},200:{order:2,value:"#FBCFE8"},300:{order:3,value:"#F9A8D4"},400:{order:4,value:"#F472B6"},500:{order:5,value:"#EC4899"},600:{order:6,value:"#DB2777"},700:{order:7,value:"#BE185D"},800:{order:8,value:"#9D174D"},900:{order:9,value:"#831843"}}},amber:{order:5,variants:{50:{order:0,value:"#FFFBEB"},100:{order:1,value:"#FEF3C7"},200:{order:2,value:"#FDE68A"},300:{order:3,value:"#FCD34D"},400:{order:4,value:"#FBBF24"},500:{order:5,value:"#F59E0B"},600:{order:6,value:"#D97706"},700:{order:7,value:"#B45309"},800:{order:8,value:"#92400E"},900:{order:9,value:"#78350F"}}},orange:{order:6,variants:{50:{order:0,value:"#FFF7ED"},100:{order:1,value:"#FFEDD5"},200:{order:2,value:"#FED7AA"},300:{order:3,value:"#FDBA74"},400:{order:4,value:"#FB923C"},500:{order:5,value:"#F97316"},600:{order:6,value:"#EA580C"},700:{order:7,value:"#C2410C"},800:{order:8,value:"#9A3412"},900:{order:9,value:"#7C2D12"}}},yellow:{order:7,variants:{50:{order:0,value:"#FFFBEB"},100:{order:1,value:"#FEF3C7"},200:{order:2,value:"#FDE68A"},300:{order:3,value:"#FCD34D"},400:{order:4,value:"#FBBF24"},500:{order:5,value:"#F59E0B"},600:{order:6,value:"#D97706"},700:{order:7,value:"#B45309"},800:{order:8,value:"#92400E"},900:{order:9,value:"#78350F"}}},lime:{order:8,variants:{50:{order:0,value:"#F7FEE7"},100:{order:1,value:"#ECFCCB"},200:{order:2,value:"#D9F99D"},300:{order:3,value:"#BEF264"},400:{order:4,value:"#A3E635"},500:{order:5,value:"#84CC16"},600:{order:6,value:"#65A30D"},700:{order:7,value:"#4D7C0F"},800:{order:8,value:"#3F6212"},900:{order:9,value:"#365314"}}},green:{order:9,variants:{50:{order:0,value:"#ECFDF5"},100:{order:1,value:"#D1FAE5"},200:{order:2,value:"#A7F3D0"},300:{order:3,value:"#6EE7B7"},400:{order:4,value:"#34D399"},500:{order:5,value:"#10B981"},600:{order:6,value:"#059669"},700:{order:7,value:"#047857"},800:{order:8,value:"#065F46"},900:{order:9,value:"#064E3B"}}},emerald:{order:10,variants:{50:{order:0,value:"#ECFDF5"},100:{order:1,value:"#D1FAE5"},200:{order:2,value:"#A7F3D0"},300:{order:3,value:"#6EE7B7"},400:{order:4,value:"#34D399"},500:{order:5,value:"#10B981"},600:{order:6,value:"#059669"},700:{order:7,value:"#047857"},800:{order:8,value:"#065F46"},900:{order:9,value:"#064E3B"}}},teal:{order:11,variants:{50:{order:0,value:"#F0FDFA"},100:{order:1,value:"#CCFBF1"},200:{order:2,value:"#99F6E4"},300:{order:3,value:"#5EEAD4"},400:{order:4,value:"#2DD4BF"},500:{order:5,value:"#14B8A6"},600:{order:6,value:"#0D9488"},700:{order:7,value:"#0F766E"},800:{order:8,value:"#115E59"},900:{order:9,value:"#134E4A"}}},cyan:{order:12,variants:{50:{order:0,value:"#ECFEFF"},100:{order:1,value:"#CFFAFE"},200:{order:2,value:"#A5F3FC"},300:{order:3,value:"#67E8F9"},400:{order:4,value:"#22D3EE"},500:{order:5,value:"#06B6D4"},600:{order:6,value:"#0891B2"},700:{order:7,value:"#0E7490"},800:{order:8,value:"#155E75"},900:{order:9,value:"#164E63"}}},sky:{order:13,variants:{50:{order:0,value:"#F0F9FF"},100:{order:1,value:"#E0F2FE"},200:{order:2,value:"#BAE6FD"},300:{order:3,value:"#7DD3FC"},400:{order:4,value:"#38BDF8"},500:{order:5,value:"#0EA5E9"},600:{order:6,value:"#0284C7"},700:{order:7,value:"#0369A1"},800:{order:8,value:"#075985"},900:{order:9,value:"#0C4A6E"}}},blue:{order:14,variants:{50:{order:0,value:"#EFF6FF"},100:{order:1,value:"#DBEAFE"},200:{order:2,value:"#BFDBFE"},300:{order:3,value:"#93C5FD"},400:{order:4,value:"#60A5FA"},500:{order:5,value:"#3B82F6"},600:{order:6,value:"#2563EB"},700:{order:7,value:"#1D4ED8"},800:{order:8,value:"#1E40AF"},900:{order:9,value:"#1E3A8A"}}},indigo:{order:15,variants:{50:{order:0,value:"#EEF2FF"},100:{order:1,value:"#E0E7FF"},200:{order:2,value:"#C7D2FE"},300:{order:3,value:"#A5B4FC"},400:{order:4,value:"#818CF8"},500:{order:5,value:"#6366F1"},600:{order:6,value:"#4F46E5"},700:{order:7,value:"#4338CA"},800:{order:8,value:"#3730A3"},900:{order:9,value:"#312E81"}}},purple:{order:16,variants:{50:{order:0,value:"#F5F3FF"},100:{order:1,value:"#EDE9FE"},200:{order:2,value:"#DDD6FE"},300:{order:3,value:"#C4B5FD"},400:{order:4,value:"#A78BFA"},500:{order:5,value:"#8B5CF6"},600:{order:6,value:"#7C3AED"},700:{order:7,value:"#6D28D9"},800:{order:8,value:"#5B21B6"},900:{order:9,value:"#4C1D95"}}},fuchsia:{order:17,variants:{50:{order:0,value:"#FDF4FF"},100:{order:1,value:"#FAE8FF"},200:{order:2,value:"#F5D0FE"},300:{order:3,value:"#F0ABFC"},400:{order:4,value:"#E879F9"},500:{order:5,value:"#D946EF"},600:{order:6,value:"#C026D3"},700:{order:7,value:"#A21CAF"},800:{order:8,value:"#86198F"},900:{order:9,value:"#701A75"}}}},shadow:{sm:{order:0,value:"0 1px 2px 0 rgba(0, 0, 0, 0.25)"},base:{order:1,value:"0 1px 3px 0 rgba(0, 0, 0, 0.25), 0 1px 2px 0 rgba(0, 0, 0, 0.25)"},md:{order:2,value:"0 4px 6px -1px rgba(0, 0, 0, 0.25), 0 2px 4px -1px rgba(0, 0, 0, 0.25)"},lg:{order:3,value:"0 10px 15px -3px rgba(0, 0, 0, 0.25), 0 4px 6px -2px rgba(0, 0, 0, 0.25)"},xl:{order:4,value:"0 20px 25px -5px rgba(0, 0, 0, 0.25), 0 10px 10px -5px rgba(0, 0, 0, 0.25)"},"2xl":{order:5,value:"0 25px 50px -12px rgba(0, 0, 0, 0.25)"}},spacing:.25,fontSize:{lg:{order:0,value:"1.125rem"},sm:{order:1,value:"0.875rem"},xl:{order:2,value:"1.25rem"},xs:{order:3,value:"0.75rem"},"2xl":{order:4,value:"1.5rem"},"3xl":{order:5,value:"1.875rem"},"4xl":{order:6,value:"2.25rem"},"5xl":{order:7,value:"3rem"},xxs:{order:8,value:"0.625rem"},base:{order:9,value:"1rem",default:!0}},fontFamily:{mono:{order:0,value:["Fira Code","monospace"]},sans:{order:1,value:["Inter","sans-serif"],default:!0}},fontWeight:{bold:{order:0,value:"700"},bolder:{order:1,value:"800"},normal:{order:2,value:"500",default:!0},regular:{order:3,value:"400"},"semi-bold":{order:4,value:"600"}},breakpoints:{large:{order:2,value:1440},small:{order:0,value:576},medium:{order:1,value:960}}};var Ao=(e,t)=>"breakpoints"in e?Fl(e):`${Object.values(e.categories??{}).map(r=>Object.entries(r.propertyDefinitions).map(([o,n])=>bo(o,n)).join(`
|
|
77
77
|
`)).join(`
|
|
78
78
|
`)}
|
|
79
79
|
${t.includeResetStyle?Lr:""}
|
|
@@ -145,7 +145,7 @@ ${t.includeResetStyle?Lr:""}
|
|
|
145
145
|
}
|
|
146
146
|
}
|
|
147
147
|
}
|
|
148
|
-
`,
|
|
148
|
+
`,Fl=e=>{let t=Object.entries(e.colors).flatMap(([r,{variants:o}])=>Object.entries(o).map(([n,{value:a}])=>`--${r}-${n}:${a}`));return`
|
|
149
149
|
body, :host {
|
|
150
150
|
${Object.entries(e.fontFamily).map(([r,{value:[o,...n]}])=>`--font-${r}: '${o}',${n.join(",")};`).join(`
|
|
151
151
|
`)}
|
|
@@ -219,35 +219,35 @@ ${Lr}
|
|
|
219
219
|
to {
|
|
220
220
|
opacity:0;
|
|
221
221
|
}
|
|
222
|
-
}`};var ye=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("");var
|
|
223
|
-
`),
|
|
222
|
+
}`};var ye=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("");var Rl={large:1440,small:576,medium:960};function jl(e){return e.split("").map(t=>"ABCDEFGHIJKLMNOPQRSTYVWXYZ".includes(t)?"-"+t.toLocaleLowerCase():t).join("")}var Dl=new Set(["width","min-width","max-width","height","min-height","max-height","margin","margin-top","margin-left","margin-bottom","margin-right","padding","padding-top","padding-left","padding-bottom","padding-right","gap","gap-x","gap-y","border-radius","border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius","border-width","border-top-width","border-left-width","border-bottom-width","border-right-width","font-size","top","right","bottom","left","outline-width"]),Co=(e,t,r,o)=>{let n=new Set,a=new Set,s=Ol(t),u=Ao("breakpoints"in r?{...r,fontFamily:Object.fromEntries(Object.entries(r.fontFamily).filter(([d,m])=>m.default??s.has("--font-"+d)))}:{...r,fonts:r.fonts},o),l=d=>Object.entries(d).map(([m,A])=>{if(!O(A))return;let C=jl(m),w=String(Number(A))===String(A)&&Dl.has(C)?`${Number(A)*4}px`:A;return`${C}:${w};`}).filter(Boolean).join(`
|
|
223
|
+
`),c=(d,m)=>{try{let A=K(d.style??{},["variants","breakpoints","shadows"]),C=d.variants??d.style?.variants,w=(y,R,D)=>{let j=Object.entries(R).filter(([p])=>p=="scrollbar-width"),k=l(R);return D?.startingStyle&&(k=`@starting-style {
|
|
224
224
|
${k}
|
|
225
225
|
}`),`
|
|
226
226
|
${k.length>0?`${y} {
|
|
227
227
|
${k}
|
|
228
228
|
}`:""}
|
|
229
|
-
${
|
|
229
|
+
${j.length>0?`
|
|
230
230
|
${y}::-webkit-scrollbar {
|
|
231
|
-
${
|
|
231
|
+
${j.map(([p,v])=>{switch(v){case"none":return"width: 0;";case"thinn":case"thin":return"width: 4px;";default:return""}}).join(`
|
|
232
232
|
`)}
|
|
233
233
|
}
|
|
234
234
|
`:""}
|
|
235
235
|
`};return`
|
|
236
|
-
${
|
|
237
|
-
${(
|
|
238
|
-
@media (${Object.entries(y.mediaQuery).map(([D,
|
|
239
|
-
${
|
|
236
|
+
${w("."+m,A)}
|
|
237
|
+
${(C??[]).map(y=>{let R=w(`.${m}${ye(y)}`,y.style,{startingStyle:y.startingStyle});return y.mediaQuery?`
|
|
238
|
+
@media (${Object.entries(y.mediaQuery).map(([D,j])=>`${D}: ${j}`).filter(Boolean).join(") and (")}) {
|
|
239
|
+
${R}
|
|
240
240
|
}
|
|
241
241
|
`:y.breakpoint?`
|
|
242
|
-
@media (min-width: ${
|
|
243
|
-
${
|
|
242
|
+
@media (min-width: ${Rl[y.breakpoint]}px) {
|
|
243
|
+
${R}
|
|
244
244
|
}
|
|
245
|
-
`:
|
|
245
|
+
`:R}).join(`
|
|
246
246
|
`)}
|
|
247
|
-
${d.animations?Object.entries(d.animations).map(([y,
|
|
247
|
+
${d.animations?Object.entries(d.animations).map(([y,R])=>a.has(y)?"":(a.add(y),`
|
|
248
248
|
@keyframes ${y} {
|
|
249
|
-
${Object.values(
|
|
250
|
-
${
|
|
249
|
+
${Object.values(R).sort((D,j)=>D.position-j.position).map(({key:D,position:j,value:k})=>`
|
|
250
|
+
${j*100}% {
|
|
251
251
|
${D}: ${k};
|
|
252
252
|
}
|
|
253
253
|
`).join(`
|
|
@@ -255,11 +255,11 @@ ${y}::-webkit-scrollbar {
|
|
|
255
255
|
}
|
|
256
256
|
`)).join(`
|
|
257
257
|
`):""}
|
|
258
|
-
`}catch(C){return console.error(C),""}},g=new Set;function l(d,m){if(!g.has(d.name)){if(g.add(d.name),!d.nodes){console.warn("Unable to find nodes for component",d.name);return}Object.entries(d.nodes).forEach(([C,S])=>{if(S.type==="component"){let y=t.find(j=>j.name===[S.package??m,S.name].filter(D=>D).join("/"));if(y){l(y,S.package??m),i+=p(S,ge(`${d.name}:${C}`,!0));return}}if(S.type!=="element")return;let R=he([S.style,S.variants]);if(n.has(R))return"";n.add(R),i+=p(S,R)})}}return l(e),i},Tl=e=>new Set(e.flatMap(t=>Object.values(t.nodes).flatMap(r=>r.type==="element"?[r.style.fontFamily,r.style["font-family"],...r.variants?.map(o=>o.style.fontFamily??o.style["font-family"])??[]].filter(O):[])).map(t=>t.replace("var(","").replace(")","").replace(/'/g,"")));var Z=e=>"triggerActions"in e;var wo=se(te(),1);function kl(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,u="",a=r+1;if(e[a]==="?")throw new TypeError('Pattern cannot start with "?" at '.concat(a));for(;a<e.length;){if(e[a]==="\\"){u+=e[a++]+e[a++];continue}if(e[a]===")"){if(i--,i===0){a++;break}}else if(e[a]==="("&&(i++,e[a+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(a));u+=e[a++]}if(i)throw new TypeError("Unbalanced pattern at ".concat(r));if(!u)throw new TypeError("Missing pattern at ".concat(r));t.push({type:"PATTERN",index:r,value:u}),r=a;continue}t.push({type:"CHAR",index:r,value:e[r++]})}return t.push({type:"END",index:r,value:""}),t}function xl(e,t){t===void 0&&(t={});for(var r=kl(e),o=t.prefixes,n=o===void 0?"./":o,a=t.delimiter,s=a===void 0?"/#?":a,i=[],u=0,p=0,g="",l=function(h){if(p<r.length&&r[p].type===h)return r[p++].value},d=function(h){var E=l(h);if(E!==void 0)return E;var w=r[p],N=w.type,L=w.index;throw new TypeError("Unexpected ".concat(N," at ").concat(L,", expected ").concat(h))},m=function(){for(var h="",E;E=l("CHAR")||l("ESCAPED_CHAR");)h+=E;return h},C=function(h){for(var E=0,w=s;E<w.length;E++){var N=w[E];if(h.indexOf(N)>-1)return!0}return!1},S=function(h){var E=i[i.length-1],w=h||(E&&typeof E=="string"?E:"");if(E&&!w)throw new TypeError('Must have text between two parameters, missing text after "'.concat(E.name,'"'));return!w||C(w)?"[^".concat(Ir(s),"]+?"):"(?:(?!".concat(Ir(w),")[^").concat(Ir(s),"])+?")};p<r.length;){var R=l("CHAR"),y=l("NAME"),j=l("PATTERN");if(y||j){var D=R||"";n.indexOf(D)===-1&&(g+=D,D=""),g&&(i.push(g),g=""),i.push({name:y||u++,prefix:D,suffix:"",pattern:j||S(D),modifier:l("MODIFIER")||""});continue}var F=R||l("ESCAPED_CHAR");if(F){g+=F;continue}g&&(i.push(g),g="");var k=l("OPEN");if(k){var D=m(),c=l("NAME")||"",v=l("PATTERN")||"",b=m();d("CLOSE"),i.push({name:c||(v?u++:""),pattern:c&&!v?S(D):v,prefix:D,suffix:b,modifier:l("MODIFIER")||""});continue}d("END")}return i}function Eo(e,t){return Nl(xl(e,t),t)}function Nl(e,t){t===void 0&&(t={});var r=$l(t),o=t.encode,n=o===void 0?function(u){return u}:o,a=t.validate,s=a===void 0?!0:a,i=e.map(function(u){if(typeof u=="object")return new RegExp("^(?:".concat(u.pattern,")$"),r)});return function(u){for(var p="",g=0;g<e.length;g++){var l=e[g];if(typeof l=="string"){p+=l;continue}var d=u?u[l.name]:void 0,m=l.modifier==="?"||l.modifier==="*",C=l.modifier==="*"||l.modifier==="+";if(Array.isArray(d)){if(!C)throw new TypeError('Expected "'.concat(l.name,'" to not repeat, but got an array'));if(d.length===0){if(m)continue;throw new TypeError('Expected "'.concat(l.name,'" to not be empty'))}for(var S=0;S<d.length;S++){var R=n(d[S],l);if(s&&!i[g].test(R))throw new TypeError('Expected all "'.concat(l.name,'" to match "').concat(l.pattern,'", but got "').concat(R,'"'));p+=l.prefix+R+l.suffix}continue}if(typeof d=="string"||typeof d=="number"){var R=n(String(d),l);if(s&&!i[g].test(R))throw new TypeError('Expected "'.concat(l.name,'" to match "').concat(l.pattern,'", but got "').concat(R,'"'));p+=l.prefix+R+l.suffix;continue}if(!m){var y=C?"an array":"a string";throw new TypeError('Expected "'.concat(l.name,'" to be ').concat(y))}}return p}}function Ir(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function $l(e){return e&&e.sensitive?"":"i"}var ne=({query:e,page:t,route:r,params:o,hash:n})=>{let a;if(r){let u=[];for(let p of r.path)if(p.type==="static")u.push(p.name);else{let g=o[p.name];if(O(g))u.push(g);else break}a="/"+u.join("/")}else a=Eo(t,{encode:encodeURIComponent})(o);let s=n===void 0||n===""?"":"#"+n,i=Object.entries(e).filter(([u,p])=>p!==null).map(([u,p])=>`${encodeURIComponent(r?.query[u]?.name??u)}=${encodeURIComponent(String(p))}`).join("&");return`${a}${s}${i.length>0?"?"+i:""}`};function P(e,t,r,o){try{if(!e)throw new Error("Action does not exist");switch(e.type){case"Switch":{let n=e.cases.find(({condition:a})=>x(A(a,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})))??e.default;if(!n)return;for(let a of n.actions)P(a,{...t,...r.dataSignal.get()},r,o);break}case"SetVariable":{let n=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(a=>({...a,Variables:{...a.Variables,[e.variable]:n}}));break}case"TriggerEvent":{let n=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,n);break}case"SetURLParameter":{r.toddle.locationSignal.update(n=>{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}),s,i;if(n.route?.path.some(g=>g.name===e.parameter)?(s="push",i={...n,params:{...K(n.params,[e.parameter]),[e.parameter]:a}}):(s="replace",i={...n,query:{...K(n.query,[e.parameter]),...O(a)?{[e.parameter]:a}:null}}),!s)return n;let u=ne(n),p=ne(i);return p!==u&&(s=e.historyMode??s,s==="push"?window.history.pushState({},"",p):window.history.replaceState({},"",p)),i});break}case"SetURLParameters":{let n=Object.entries(e.parameters??{});if(n.length===0)return;r.toddle.locationSignal.update(a=>{if(!a.route)return a;let s="replace",i={},u={},p={data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env},g=S=>a.route?.path.some(R=>R.name===S&&R.type==="param"),l=S=>Object.values(a.route?.query??{}).some(R=>R.name===S);for(let[S,R]of n){let y=A(R,p)??null;g(S)?(s="push",u[S]=y):l(S)&&(i[S]=y)}if(Object.keys(u).length===0&&Object.keys(i).length===0)return a;let d={...a,params:{...K(a.params,Object.keys(u)),...u},query:{...K(a.query,Object.keys(i)),...i}};if((0,wo.default)(d,a))return a;let m=ne(a),C=ne(d);return C!==m&&(s=e.historyMode??s,s==="push"?window.history.pushState({},"",C):window.history.replaceState({},"",C)),d});break}case"Fetch":{let n=r.apis[e.api];if(!n){console.error("The api ",e.api,"does not exist");return}if(Z(n)){let a=re(e.inputs??{},i=>A(i.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})),s={onCompleted:e.onSuccess?.actions??[],onFailed:e.onError?.actions??[],onMessage:e.onMessage?.actions??[]};n.fetch({actionInputs:a,actionModels:s,componentData:t})}else{let a=s=>{for(let i of s)P(i,{...t,...r.dataSignal.get()},r,o)};n.fetch().then(()=>{a(e.onSuccess.actions)},()=>{a(e.onError.actions)})}break}case"TriggerWorkflow":{let n=re(e.parameters??{},s=>A(s.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}));if(e.contextProvider){let s=r.providers[[r.package,e.contextProvider].filter(O).join("/")]??r.providers[e.contextProvider],i=s?.component.workflows?.[e.workflow];if(!i){s&&console.warn(`Cannot find workflow "${e.workflow}" on component "${e.contextProvider}". It has likely been removed or modified.`);return}i.actions.forEach(u=>P(u,{...t,...s.ctx.dataSignal.get(),Parameters:n},s.ctx,o));return}let a=r.component.workflows?.[e.workflow];if(!a){console.warn(`Workflow ${e.workflow} does not exist on component ${r.component.name}`);return}a.actions.forEach(s=>P(s,{...t,...r.dataSignal.get(),Parameters:n},r,o));break}default:try{let n=(s,i)=>{let u=e.events?.[s];u&&u.actions.forEach(p=>P(p,i?{...t,...r.dataSignal.get(),Event:i}:{...t,...r.dataSignal.get()},r,i??o))},a=e.version===2?(r.toddle.getCustomAction??r.toddle.getCustomAction)(e.name,e.package??r.package):void 0;if(a){let s=(e.arguments??[]).reduce((u,p)=>({...u,[p.name]:A(p.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})}),{}),i=a.handler?.(s,{root:r.root,triggerActionEvent:n},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 s=r.toddle.getAction(e.name);if(!s){console.error("Missing custom action",e.name);return}let i=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 s(i,{...r,triggerActionEvent:n},o)}}catch(n){console.error("Error in Custom Action",n)}}}catch(n){return console.error(n),null}}function be(e,t){let r=null;function o(l,d){let m={data:d,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env},C=A(l.url,m)??"",S=l.path&&l.path.length>0?"/"+l.path.map(c=>A(c.formula,m)).join("/"):"",R=Object.values(l.queryParams??{}),y=R.length>0?"?"+R.map(c=>`${c.name}=${encodeURIComponent(A(c.formula,m))}`).join("&"):"",j=V(l.headers)?A(l.headers,{data:d,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}):re(l.headers??{},c=>A(c,{data:d,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})),D=String(Object.entries(j).find(([c])=>c.toLocaleLowerCase()==="content-type")?.[1]),F=l.method??"GET",k=l.body&&["POST","PUT","PATCH","DELETE"].includes(F)?a(A(l.body,{data:d,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}),D):void 0;return{url:C+S+y,method:F,auth:l.auth,headers:j,body:k}}async function n(l){let d=await l.text();try{return ee(d)}catch{return d}}function a(l,d){switch(d){case"application/x-www-form-urlencoded":return typeof l=="object"&&l!==null?Object.entries(l).map(([m,C])=>Array.isArray(C)?C.map(S=>`${encodeURIComponent(m)}=${encodeURIComponent(S)}`).join("&"):`${encodeURIComponent(m)}=${encodeURIComponent(String(C))}`).join("&"):"";case"multipart/form-data":{let m=new FormData;return typeof l=="object"&&l!==null&&Object.entries(l).forEach(([C,S])=>{m.set(C,S)}),m}case"text/plain":return String(l);default:return JSON.stringify(l)}}function s(l){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:l,error:null,isLoading:!1}}}),e.onCompleted?.actions?.forEach(d=>{P(d,t.dataSignal.get(),t)})}function i(l){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:null,isLoading:!1,error:l}}}),e.onFailed?.actions?.forEach(d=>{P(d,t.dataSignal.get(),t)})}async function u(l){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 d;try{e.proxy===!1?d=await fetch(l.url,{method:l.method,headers:l.headers,body:l.body}):d=await fetch(`/_query/${encodeURIComponent(t.component.name)}.${encodeURIComponent(e.name)}`,{method:"POST",body:JSON.stringify(l),signal:t.abortSignal,headers:{"Content-Type":"application/json"}});let m=await n(d);if(d.ok)s(m);else throw m}catch(m){return i(m),Promise.reject(m)}}function p(l){return typeof e.debounce=="number"?new Promise((d,m)=>{typeof r=="number"&&clearTimeout(r),r=setTimeout(()=>{u(l).then(d,m)},e.debounce)}):typeof e.throttle=="number"?typeof r=="number"?new Promise(()=>{}):(r=setTimeout(()=>{typeof r=="number"&&clearTimeout(r)},e.throttle),u(l)):u(l)}let g;if(t.dataSignal.update(l=>({...l,Apis:{...l.Apis??{},[e.name]:l.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){g=t.dataSignal.map(d=>o(e,d));let l=!0;g.subscribe(d=>{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(l&&t.isRootComponent){l=!1;let m=t.toddle?.pageState?.Apis?.[e.name];m&&m.data?typeof m.data=="string"?s(ee(m.data)):s(m.data):p(d)}else p(d)})}return{fetch:l=>{let d=o(e,t.dataSignal.get()),m=d.body,C=new Headers({...d.headers,...l?.headers??{}});l?.body&&(m=a(l.body,C.get("Content-Type")??void 0)),m instanceof FormData&&C.delete("Content-Type");let S={url:l?.url??d.url,method:l?.method??d.method,auth:l?.auth??d.auth,headers:G(C),body:m};return p(S)},destroy:()=>g?.destroy()}}var Fo=({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}},Ro="x-nordcraft-url",jo="x-nordcraft-templates-in-body";function ve({apiRequest:e,componentData:t,ctx:r}){let o=null,n={...e};function a(c,v){let b=window.origin;try{new URL(b)}catch{b=void 0}let h=po({api:c,formulaContext:s(c,v),baseUrl:b,defaultHeaders:void 0});return{...h,requestSettings:{...h.requestSettings,credentials:c.client?.credentials&&["include","same-origin","omit"].includes(c.client.credentials)?c.client.credentials:void 0}}}function s(c,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(c.inputs).reduce((w,[N,L])=>(w[N]=A(L.formula,b),w),{}),E={...v,...b.data,ApiInputs:{...h}};return{component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,data:E,toddle:r.toddle,env:r.env}}function i(c,v){for(let[b,h]of ue(c.redirectRules??{},([E,w])=>w.index)){let E=s(c,v),w=A(h.formula,{...E,data:{...E.data,Apis:{[c.name]:r.dataSignal.get().Apis?.[c.name]}}});if(typeof w=="string"){let N=Fo({path:w,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 u({eventName:c,api:v,data:b,componentData:h}){switch(c){case"message":{let E=fe("message",b.body);v.client?.onMessage?.actions?.forEach(w=>{P(w,{...s(v,h).data,Event:E},r,E)});break}case"success":{let E=fe("success",b.body);v.client?.onCompleted?.actions?.forEach(w=>{P(w,{...s(v,h).data,Event:E},r,E)});break}case"failed":{let E=fe("failed",{error:b.body,status:b.status});v.client?.onFailed?.actions?.forEach(w=>{P(w,{...s(v,h).data,Event:E},r,E)});break}}}function p({api:c,componentData:v,data:b,performance:h}){let E=r.dataSignal.get().Apis?.[c.name]?.response?.performance?.requestStart;if(typeof E=="number"&&E>(h.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:b.body,error:null,response:{status:b.status,headers:b.headers,performance:h}}}});let w=i(c,v);w&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:b.body,error:null,response:{status:b.status,headers:b.headers,performance:h,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:w}}:{}}}}})}function g({api:c,componentData:v,data:b,performance:h}){let E=r.dataSignal.get().Apis?.[c.name]?.response?.performance?.requestStart;if(typeof E=="number"&&E>(h.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:null,error:b.body,response:{status:b.status,headers:b.headers,performance:h}}}});let w=i(c,v);w&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!1,data:null,error:b.body,response:{status:b.status,headers:b.headers,performance:h,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:w}}:{}}}}})}async function l({api:c,url:v,requestSettings:b,componentData:h}){let E=async()=>{let w={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}}});let N;try{if((c.server?.proxy?A(c.server.proxy.enabled.formula,s(c,h))??!1:!1)===!1)N=await fetch(v,b);else{let M=`/.toddle/omvej/components/${encodeURIComponent(r.component.name)}/apis/${encodeURIComponent(r.component.name)}:${encodeURIComponent(c.name)}`,$=new Headers(b.headers);$.set(Ro,decodeURIComponent(v.href.replace(/\+/g," "))),x(A(c.server?.proxy?.useTemplatesInBody?.formula,s(c,h)))&&$.set(jo,"true"),b.headers=$,N=await fetch(M,b)}w.responseStart=Date.now(),await d({api:c,componentData:h,res:N,performance:w});return}catch(L){let M=L.cause?{message:L.message,data:L.cause}:L.message;return g({api:c,componentData:h,data:{body:M},performance:{...w,responseEnd:Date.now()}}),u({eventName:"failed",api:c,data:{body:M},componentData:h}),Promise.reject(L)}};return c.client?.debounce?.formula?new Promise((w,N)=>{typeof o=="number"&&clearTimeout(o),o=setTimeout(()=>{E().then(w,N)},A(c.client?.debounce?.formula,s(c,h)))}):E()}function d({api:c,componentData:v,res:b,performance:h}){let E=c.client?.parserMode??"auto";if(E==="auto"){let w=b.headers.get("content-type");lo(w)?E="event-stream":de(w)?E="json":io(w)?E="text":uo(w)?E="json-stream":co(w)?E="blob":E="text"}switch(E){case"text":return m({api:c,componentData:v,res:b,performance:h});case"json":return S({api:c,componentData:v,res:b,performance:h});case"event-stream":return y({api:c,componentData:v,res:b,performance:h});case"json-stream":return C({api:c,componentData:v,res:b,performance:h});case"blob":return R({api:c,componentData:v,res:b,performance:h});default:return m({api:c,componentData:v,res:b,performance:h})}}function m({api:c,res:v,performance:b,componentData:h}){return j({api:c,res:v,performance:b,streamType:"text",useTextDecoder:!0,parseChunk:E=>E,parseChunksForData:E=>E.join(""),componentData:h})}function C({api:c,res:v,performance:b,componentData:h}){return j({api:c,res:v,performance:b,streamType:"json",useTextDecoder:!0,parseChunk:w=>{let N=w;try{N=JSON.parse(w)}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:N})}return N},parseChunksForData:w=>[...w],delimiters:[`\r
|
|
258
|
+
`}catch(A){return console.error(A),""}},h=new Set;function i(d,m){if(!h.has(d.name)){if(h.add(d.name),!d.nodes){console.warn("Unable to find nodes for component",d.name);return}Object.entries(d.nodes).forEach(([A,C])=>{if(C.type==="component"){let y=t.find(R=>R.name===[C.package??m,C.name].filter(D=>D).join("/"));if(y){i(y,C.package??m),u+=c(C,ge(`${d.name}:${A}`,!0));return}}if(C.type!=="element")return;let w=he([C.style,C.variants]);if(n.has(w))return"";n.add(w),u+=c(C,w)})}}return i(e),u},Ol=e=>new Set(e.flatMap(t=>Object.values(t.nodes).flatMap(r=>r.type==="element"?[r.style.fontFamily,r.style["font-family"],...r.variants?.map(o=>o.style.fontFamily??o.style["font-family"])??[]].filter(O):[])).map(t=>t.replace("var(","").replace(")","").replace(/'/g,"")));var Z=e=>"triggerActions"in e;var wo=se(te(),1);function Tl(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 u=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(u--,u===0){a++;break}}else if(e[a]==="("&&(u++,e[a+1]!=="?"))throw new TypeError("Capturing groups are not allowed at ".concat(a));l+=e[a++]}if(u)throw new TypeError("Unbalanced pattern at ".concat(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 kl(e,t){t===void 0&&(t={});for(var r=Tl(e),o=t.prefixes,n=o===void 0?"./":o,a=t.delimiter,s=a===void 0?"/#?":a,u=[],l=0,c=0,h="",i=function(g){if(c<r.length&&r[c].type===g)return r[c++].value},d=function(g){var E=i(g);if(E!==void 0)return E;var F=r[c],x=F.type,L=F.index;throw new TypeError("Unexpected ".concat(x," at ").concat(L,", expected ").concat(g))},m=function(){for(var g="",E;E=i("CHAR")||i("ESCAPED_CHAR");)g+=E;return g},A=function(g){for(var E=0,F=s;E<F.length;E++){var x=F[E];if(g.indexOf(x)>-1)return!0}return!1},C=function(g){var E=u[u.length-1],F=g||(E&&typeof E=="string"?E:"");if(E&&!F)throw new TypeError('Must have text between two parameters, missing text after "'.concat(E.name,'"'));return!F||A(F)?"[^".concat(Ir(s),"]+?"):"(?:(?!".concat(Ir(F),")[^").concat(Ir(s),"])+?")};c<r.length;){var w=i("CHAR"),y=i("NAME"),R=i("PATTERN");if(y||R){var D=w||"";n.indexOf(D)===-1&&(h+=D,D=""),h&&(u.push(h),h=""),u.push({name:y||l++,prefix:D,suffix:"",pattern:R||C(D),modifier:i("MODIFIER")||""});continue}var j=w||i("ESCAPED_CHAR");if(j){h+=j;continue}h&&(u.push(h),h="");var k=i("OPEN");if(k){var D=m(),p=i("NAME")||"",v=i("PATTERN")||"",b=m();d("CLOSE"),u.push({name:p||(v?l++:""),pattern:p&&!v?C(D):v,prefix:D,suffix:b,modifier:i("MODIFIER")||""});continue}d("END")}return u}function Eo(e,t){return Nl(kl(e,t),t)}function Nl(e,t){t===void 0&&(t={});var r=xl(t),o=t.encode,n=o===void 0?function(l){return l}:o,a=t.validate,s=a===void 0?!0:a,u=e.map(function(l){if(typeof l=="object")return new RegExp("^(?:".concat(l.pattern,")$"),r)});return function(l){for(var c="",h=0;h<e.length;h++){var i=e[h];if(typeof i=="string"){c+=i;continue}var d=l?l[i.name]:void 0,m=i.modifier==="?"||i.modifier==="*",A=i.modifier==="*"||i.modifier==="+";if(Array.isArray(d)){if(!A)throw new TypeError('Expected "'.concat(i.name,'" to not repeat, but got an array'));if(d.length===0){if(m)continue;throw new TypeError('Expected "'.concat(i.name,'" to not be empty'))}for(var C=0;C<d.length;C++){var w=n(d[C],i);if(s&&!u[h].test(w))throw new TypeError('Expected all "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(w,'"'));c+=i.prefix+w+i.suffix}continue}if(typeof d=="string"||typeof d=="number"){var w=n(String(d),i);if(s&&!u[h].test(w))throw new TypeError('Expected "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(w,'"'));c+=i.prefix+w+i.suffix;continue}if(!m){var y=A?"an array":"a string";throw new TypeError('Expected "'.concat(i.name,'" to be ').concat(y))}}return c}}function Ir(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function xl(e){return e&&e.sensitive?"":"i"}var ne=({query:e,page:t,route:r,params:o,hash:n})=>{let a;if(r){let l=[];for(let c of r.path)if(c.type==="static")l.push(c.name);else{let h=o[c.name];if(O(h))l.push(h);else break}a="/"+l.join("/")}else a=Eo(t,{encode:encodeURIComponent})(o);let s=n===void 0||n===""?"":"#"+n,u=Object.entries(e).filter(([l,c])=>c!==null).map(([l,c])=>`${encodeURIComponent(r?.query[l]?.name??l)}=${encodeURIComponent(String(c))}`).join("&");return`${a}${s}${u.length>0?"?"+u:""}`};function $(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})=>N(S(s,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})))??e.default;if(!a)return;for(let s of a.actions)$(s,{...t,...r.dataSignal.get()},r,o,n);break}case"SetVariable":{let a=S(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=S(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=S(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=S(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}),u,l;if(a.route?.path.some(i=>i.name===e.parameter)?(u="push",l={...a,params:{...K(a.params,[e.parameter]),[e.parameter]:s}}):(u="replace",l={...a,query:{...K(a.query,[e.parameter]),...O(s)?{[e.parameter]:s}:null}}),!u)return a;let c=ne(a),h=ne(l);return h!==c&&(u=e.historyMode??u,u==="push"?window.history.pushState({},"",h):window.history.replaceState({},"",h)),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 u="replace",l={},c={},h={data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env},i=w=>s.route?.path.some(y=>y.name===w&&y.type==="param"),d=w=>Object.values(s.route?.query??{}).some(y=>y.name===w);for(let[w,y]of a){let R=S(y,h)??null;i(w)?(u="push",c[w]=R):d(w)&&(l[w]=R)}if(Object.keys(c).length===0&&Object.keys(l).length===0)return s;let m={...s,params:{...K(s.params,Object.keys(c)),...c},query:{...K(s.query,Object.keys(l)),...l}};if((0,wo.default)(m,s))return s;let A=ne(s),C=ne(m);return C!==A&&(u=e.historyMode??u,u==="push"?window.history.pushState({},"",C):window.history.replaceState({},"",C)),m});break}case"Fetch":{let a=r.apis[e.api];if(!a){console.error("The api ",e.api,"does not exist");return}if(Z(a)){let s=re(e.inputs??{},l=>S(l.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})),u={onCompleted:e.onSuccess?.actions??[],onFailed:e.onError?.actions??[],onMessage:e.onMessage?.actions??[]};a.fetch({actionInputs:s,actionModels:u,componentData:t})}else{let s=u=>{for(let l of u)$(l,{...t,...r.dataSignal.get()},r,o,n)};a.fetch().then(()=>{s(e.onSuccess.actions)},()=>{s(e.onError.actions)})}break}case"TriggerWorkflow":{let a=re(e.parameters??{},l=>S(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(O).join("/")]??r.providers[e.contextProvider],c=l?.component.workflows?.[e.workflow];if(!c){l&&console.warn(`Cannot find workflow "${e.workflow}" on component "${e.contextProvider}". It has likely been removed or modified.`);return}c.actions.forEach(h=>$(h,{...t,...l.ctx.dataSignal.get(),Parameters:a},l.ctx,o,(i,d)=>{s?.[i]?.actions.forEach(A=>$(A,{...t,...r.dataSignal.get(),Parameters:a,Event:d},r,o,n))}));return}let u=r.component.workflows?.[e.workflow];if(!u){console.warn(`Workflow ${e.workflow} does not exist on component ${r.component.name}`);return}u.actions.forEach(l=>$(l,{...t,...r.dataSignal.get(),Parameters:a},r,o,(c,h)=>{s?.[c]?.actions.forEach(d=>$(d,{...t,...r.dataSignal.get(),Parameters:a,Event:h},r,o,n))}));break}default:try{let a=(u,l)=>{let c=e.events?.[u];c&&c.actions.forEach(h=>$(h,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 u=(e.arguments??[]).reduce((c,h)=>({...c,[h.name]:S(h.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})}),{}),l=s.handler?.(u,{root:r.root,triggerActionEvent:a},o);return l&&(typeof l=="function"||l instanceof Promise)&&r.dataSignal.subscribe(c=>c,{destroy:()=>{l instanceof Promise?l.then(c=>{typeof c=="function"&&c()}).catch(c=>console.error(c)):l()}}),l}else{let u=r.toddle.getAction(e.name);if(!u){console.error("Missing custom action",e.name);return}let l=e.arguments?.map(c=>S(c.formula,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env}))??[S(e.data,{data:t,component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,toddle:r.toddle,env:r.env})];return u(l,{...r,triggerActionEvent:a},o)}}catch(a){console.error("Error in Custom Action",a)}}}catch(a){return console.error(a),null}}function be(e,t){let r=null;function o(i,d){let m={data:d,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env},A=S(i.url,m)??"",C=i.path&&i.path.length>0?"/"+i.path.map(p=>S(p.formula,m)).join("/"):"",w=Object.values(i.queryParams??{}),y=w.length>0?"?"+w.map(p=>`${p.name}=${encodeURIComponent(S(p.formula,m))}`).join("&"):"",R=V(i.headers)?S(i.headers,{data:d,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}):re(i.headers??{},p=>S(p,{data:d,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env})),D=String(Object.entries(R).find(([p])=>p.toLocaleLowerCase()==="content-type")?.[1]),j=i.method??"GET",k=i.body&&["POST","PUT","PATCH","DELETE"].includes(j)?a(S(i.body,{data:d,component:t.component,formulaCache:t.formulaCache,root:t.root,package:t.package,toddle:t.toddle,env:t.env}),D):void 0;return{url:A+C+y,method:j,auth:i.auth,headers:R,body:k}}async function n(i){let d=await i.text();try{return ee(d)}catch{return d}}function a(i,d){switch(d){case"application/x-www-form-urlencoded":return typeof i=="object"&&i!==null?Object.entries(i).map(([m,A])=>Array.isArray(A)?A.map(C=>`${encodeURIComponent(m)}=${encodeURIComponent(C)}`).join("&"):`${encodeURIComponent(m)}=${encodeURIComponent(String(A))}`).join("&"):"";case"multipart/form-data":{let m=new FormData;return typeof i=="object"&&i!==null&&Object.entries(i).forEach(([A,C])=>{m.set(A,C)}),m}case"text/plain":return String(i);default:return JSON.stringify(i)}}function s(i){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:i,error:null,isLoading:!1}}}),e.onCompleted?.actions?.forEach(d=>{$(d,t.dataSignal.get(),t)})}function u(i){t.dataSignal.set({...t.dataSignal.get(),Apis:{...t.dataSignal.get().Apis,[e.name]:{data:null,isLoading:!1,error:i}}}),e.onFailed?.actions?.forEach(d=>{$(d,t.dataSignal.get(),t)})}async function l(i){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 d;try{e.proxy===!1?d=await fetch(i.url,{method:i.method,headers:i.headers,body:i.body}):d=await fetch(`/_query/${encodeURIComponent(t.component.name)}.${encodeURIComponent(e.name)}`,{method:"POST",body:JSON.stringify(i),signal:t.abortSignal,headers:{"Content-Type":"application/json"}});let m=await n(d);if(d.ok)s(m);else throw m}catch(m){return u(m),Promise.reject(m)}}function c(i){return typeof e.debounce=="number"?new Promise((d,m)=>{typeof r=="number"&&clearTimeout(r),r=setTimeout(()=>{l(i).then(d,m)},e.debounce)}):typeof e.throttle=="number"?typeof r=="number"?new Promise(()=>{}):(r=setTimeout(()=>{typeof r=="number"&&clearTimeout(r)},e.throttle),l(i)):l(i)}let h;if(t.dataSignal.update(i=>({...i,Apis:{...i.Apis??{},[e.name]:i.Apis?.[e.name]??{data:null,isLoading:!!(e.autoFetch&&S(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){h=t.dataSignal.map(d=>o(e,d));let i=!0;h.subscribe(d=>{if(e.autoFetch&&S(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(i&&t.isRootComponent){i=!1;let m=t.toddle?.pageState?.Apis?.[e.name];m&&m.data?typeof m.data=="string"?s(ee(m.data)):s(m.data):c(d)}else c(d)})}return{fetch:i=>{let d=o(e,t.dataSignal.get()),m=d.body,A=new Headers({...d.headers,...i?.headers??{}});i?.body&&(m=a(i.body,A.get("Content-Type")??void 0)),m instanceof FormData&&A.delete("Content-Type");let C={url:i?.url??d.url,method:i?.method??d.method,auth:i?.auth??d.auth,headers:G(A),body:m};return c(C)},destroy:()=>h?.destroy()}}var Fo=({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}},Ro="x-nordcraft-url",jo="x-nordcraft-templates-in-body";function ve({apiRequest:e,componentData:t,ctx:r}){let o=null,n={...e};function a(p,v){let b=window.origin;try{new URL(b)}catch{b=void 0}let g=po({api:p,formulaContext:s(p,v),baseUrl:b,defaultHeaders:void 0});return{...g,requestSettings:{...g.requestSettings,credentials:p.client?.credentials&&["include","same-origin","omit"].includes(p.client.credentials)?p.client.credentials:void 0}}}function s(p,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},g=Object.entries(p.inputs).reduce((F,[x,L])=>(F[x]=S(L.formula,b),F),{}),E={...v,...b.data,ApiInputs:{...g}};return{component:r.component,formulaCache:r.formulaCache,root:r.root,package:r.package,data:E,toddle:r.toddle,env:r.env}}function u(p,v){for(let[b,g]of ue(p.redirectRules??{},([E,F])=>F.index)){let E=s(p,v),F=S(g.formula,{...E,data:{...E.data,Apis:{[p.name]:r.dataSignal.get().Apis?.[p.name]}}});if(typeof F=="string"){let x=Fo({path:F,origin:window.location.origin});if(x){if(r.env.runtime==="preview")return window.parent?.postMessage({type:"blockedNavigation",url:x.href},"*"),{name:b,index:g.index,url:x};window.location.replace(x.href)}}}}function l({eventName:p,api:v,data:b,componentData:g}){switch(p){case"message":{let E=fe("message",b.body);v.client?.onMessage?.actions?.forEach(F=>{$(F,{...s(v,g).data,Event:E},r,E)});break}case"success":{let E=fe("success",b.body);v.client?.onCompleted?.actions?.forEach(F=>{$(F,{...s(v,g).data,Event:E},r,E)});break}case"failed":{let E=fe("failed",{error:b.body,status:b.status});v.client?.onFailed?.actions?.forEach(F=>{$(F,{...s(v,g).data,Event:E},r,E)});break}}}function c({api:p,componentData:v,data:b,performance:g}){let E=r.dataSignal.get().Apis?.[p.name]?.response?.performance?.requestStart;if(typeof E=="number"&&E>(g.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[p.name]:{isLoading:!1,data:b.body,error:null,response:{status:b.status,headers:b.headers,performance:g}}}});let F=u(p,v);F&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[p.name]:{isLoading:!1,data:b.body,error:null,response:{status:b.status,headers:b.headers,performance:g,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:F}}:{}}}}})}function h({api:p,componentData:v,data:b,performance:g}){let E=r.dataSignal.get().Apis?.[p.name]?.response?.performance?.requestStart;if(typeof E=="number"&&E>(g.requestStart??0))return;r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[p.name]:{isLoading:!1,data:null,error:b.body,response:{status:b.status,headers:b.headers,performance:g}}}});let F=u(p,v);F&&r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[p.name]:{isLoading:!1,data:null,error:b.body,response:{status:b.status,headers:b.headers,performance:g,...r.env.runtime==="preview"?{debug:{appliedRedirectRule:F}}:{}}}}})}async function i({api:p,url:v,requestSettings:b,componentData:g}){let E=async()=>{let F={requestStart:Date.now(),responseStart:null,responseEnd:null};r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[p.name]:{isLoading:!0,data:r.dataSignal.get().Apis?.[p.name]?.data??null,error:null}}});let x;try{if((p.server?.proxy?S(p.server.proxy.enabled.formula,s(p,g))??!1:!1)===!1)x=await fetch(v,b);else{let M=`/.toddle/omvej/components/${encodeURIComponent(r.component.name)}/apis/${encodeURIComponent(r.component.name)}:${encodeURIComponent(p.name)}`,P=new Headers(b.headers);P.set(Ro,decodeURIComponent(v.href.replace(/\+/g," "))),N(S(p.server?.proxy?.useTemplatesInBody?.formula,s(p,g)))&&P.set(jo,"true"),b.headers=P,x=await fetch(M,b)}F.responseStart=Date.now(),await d({api:p,componentData:g,res:x,performance:F});return}catch(L){let M=L.cause?{message:L.message,data:L.cause}:L.message;return h({api:p,componentData:g,data:{body:M},performance:{...F,responseEnd:Date.now()}}),l({eventName:"failed",api:p,data:{body:M},componentData:g}),Promise.reject(L)}};return p.client?.debounce?.formula?new Promise((F,x)=>{typeof o=="number"&&clearTimeout(o),o=setTimeout(()=>{E().then(F,x)},S(p.client?.debounce?.formula,s(p,g)))}):E()}function d({api:p,componentData:v,res:b,performance:g}){let E=p.client?.parserMode??"auto";if(E==="auto"){let F=b.headers.get("content-type");lo(F)?E="event-stream":de(F)?E="json":io(F)?E="text":uo(F)?E="json-stream":co(F)?E="blob":E="text"}switch(E){case"text":return m({api:p,componentData:v,res:b,performance:g});case"json":return C({api:p,componentData:v,res:b,performance:g});case"event-stream":return y({api:p,componentData:v,res:b,performance:g});case"json-stream":return A({api:p,componentData:v,res:b,performance:g});case"blob":return w({api:p,componentData:v,res:b,performance:g});default:return m({api:p,componentData:v,res:b,performance:g})}}function m({api:p,res:v,performance:b,componentData:g}){return R({api:p,res:v,performance:b,streamType:"text",useTextDecoder:!0,parseChunk:E=>E,parseChunksForData:E=>E.join(""),componentData:g})}function A({api:p,res:v,performance:b,componentData:g}){return R({api:p,res:v,performance:b,streamType:"json",useTextDecoder:!0,parseChunk:F=>{let x=F;try{x=JSON.parse(F)}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:x})}return x},parseChunksForData:F=>[...F],delimiters:[`\r
|
|
259
259
|
`,`
|
|
260
|
-
`],componentData:
|
|
260
|
+
`],componentData:g})}async function C({api:p,componentData:v,res:b,performance:g}){let F={data:await b.json(),isLoading:!1,error:null,response:{status:b.status,headers:G(b.headers)}};return D({api:p,apiStatus:F,componentData:v,performance:g})}async function w({api:p,componentData:v,res:b,performance:g}){let E=await b.blob(),F={isLoading:!1,data:URL.createObjectURL(E),error:null,response:{status:b.status,headers:G(b.headers)}};return D({api:p,apiStatus:F,componentData:v,performance:g})}function y({api:p,res:v,performance:b,componentData:g}){return R({api:p,res:v,performance:b,streamType:"event",useTextDecoder:!0,parseChunk:F=>{let x=F.match(/event: (.*)/)?.[1]??"message",L=F.match(/data: (.*)/)?.[1]??"",M=F.match(/id: (.*)/)?.[1],P=F.match(/retry: (.*)/)?.[1],Y=L;try{Y=JSON.parse(L??"")}catch{}return{event:x,data:Y,...M?{id:M}:{},...P?{retry:P}:{}}},parseChunksForData:F=>[...F],delimiters:[`
|
|
261
261
|
|
|
262
262
|
`,`\r
|
|
263
263
|
\r
|
|
264
|
-
`],componentData:h})}async function j({api:c,res:v,performance:b,streamType:h,useTextDecoder:E,parseChunk:w,parseChunksForData:N,delimiters:L,componentData:M}){let $={chunks:[],currentChunk:"",add(W){let H=w(W);this.chunks.push(H),H&&(r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[c.name]:{isLoading:!0,data:N(this.chunks),error:null,response:{headers:G(v.headers)}}}}),(c.client?.onMessage?.actions??[]).length>0&&u({eventName:"message",api:c,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=E?v.body?.pipeThrough(new TextDecoderStream).getReader():v.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:v.status,headers:G(v.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:c,apiStatus:ae,componentData:M,performance:b})}function D({api:c,apiStatus:v,componentData:b,performance:h}){h.responseEnd=Date.now();let E={body:v.data,status:v.response?.status,headers:v.response?.headers??void 0};mo({apiName:c.name,response:{body:E.body,ok:!!(!v.error&&v.response?.status&&v.response.status<400),status:E.status,headers:E.headers},formulaContext:s(c,b),errorFormula:c.isError,performance:h})?(!E.body&&v.error&&(E.body=v.error),g({api:c,componentData:b,data:E,performance:h}),u({eventName:"failed",api:c,componentData:b,data:E})):(p({api:c,componentData:b,data:E,performance:h}),u({eventName:"success",api:c,componentData:b,data:E}))}function F(c){return ao(c,[["client","onCompleted"],["client","onFailed"],["client","onMessage"],["service"],["server","ssr"]])}let k;return k=r.dataSignal.map(c=>{let v=s(n,t);return{request:a(n,t),api:F(n),autoFetch:n.autoFetch?A(n.autoFetch,v):!1,proxy:A(n.server?.proxy?.enabled.formula,v)}}),k.subscribe(async c=>{let{url:v,requestSettings:b}=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(v,b)]:void 0;h?h.error?g({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}):p({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 l({api:n,url:v,requestSettings:b,componentData:t}):r.dataSignal.get().Apis?.[n.name]||r.dataSignal.update(E=>({...E,Apis:{...E.Apis??{},[n.name]:{isLoading:!1,data:null,error:null}}}))}),{fetch:({actionInputs:c,actionModels:v,componentData:b})=>{let h=Object.entries(c??{}).reduce((L,[M,$])=>($!==null&&typeof $=="object"&&"formula"in $?L[M]=$:L[M]={formula:{type:"value",value:$}},L),{}),E={...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??[],...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:w,requestSettings:N}=a(E,b);return l({api:E,url:w,requestSettings:N,componentData:b})},update:(c,v)=>{n=c;let b=s(n,v),h=n.autoFetch&&A(n.autoFetch,b);h&&k?.set({request:a(c,v),api:F(c),autoFetch:h,proxy:A(c.server?.proxy?.enabled.formula,b)})},triggerActions:c=>{let v=r.dataSignal.get().Apis?.[n.name];v===void 0||v.data===null&&v.error===null||(v.error?u({eventName:"failed",api:n,data:{body:v.error,status:v.response?.status},componentData:c}):u({eventName:"success",api:n,data:{body:v.data},componentData:c}))},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],p=parseInt(String(u));if(p===n&&parseInt(String(u?.split("(")[1]))>a||p>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(p=>({...p,Contexts:{...p.Contexts,[o]:{...p.Contexts?.[o],[s]:u}}}))})});else if(!a&&r.env.runtime==="preview"&&r.toddle._preview){let s=r.components?.find(p=>p.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,([p,g])=>[p,g.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(p=>p.type==="param").map(p=>[p.name,p.testValue])),...I(s.route.query,([p,{testValue:g}])=>[p,g])}),u.data.Variables=I(s.variables,([p,g])=>[p,A(g.initialValue,u)]),e.update(p=>({...p,Contexts:{...p.Contexts,[o]:Object.fromEntries(n.formulas.map(g=>{let l=s.formulas?.[g];return l?[g,A(l.formula,u)]:(console.warn(`Could not find formula "${g}" in component "${o}"`),[g,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?Pl(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 Pl(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(y=>y.name===i);if(!u)return console.warn(`Could not find component "${i}" for component "${o.component.name}". Available components are: ["${o.components.map(y=>y.name).join('", "')}"]`),[];let p=r.map(y=>I(e.attrs,([j,D])=>[j,D?.type!=="value"?A(D,{data:y,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(([y,j])=>X({selector:Q(t,{componentName:o.component.name,nodeId:e.id}),signal:r.map(D=>A(j.formula,{data:D,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),customPropertyName:y,root:o.root,runtime:o.env.runtime})),e.variants?.forEach(y=>{Object.entries(y.customProperties??{}).forEach(([j,D])=>X({selector:Q(t,{componentName:o.component.name,nodeId:e.id,variant:y}),signal:r.map(F=>A(D.formula,{data:F,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),customPropertyName:j,variant:y,root:o.root,runtime:o.env.runtime}))});let g=J({Location:r.get().Location,Attributes:p.get(),Apis:I(u.apis,([y,j])=>[y,{data:null,isLoading:!!(j.autoFetch&&A(j.autoFetch,{data:r.get(),component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),error:null}])});Oo(g,u,o),g.update(y=>({...y,Variables:I(u.variables,([j,D])=>[j,A(D.initialValue,{data:g.get(),component:u,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})])})),To(u,g);let l=new AbortController;g.subscribe(()=>{},{destroy:()=>l.abort(`Component ${u.name} unmounted`)});let d=ko(u),m={};me(Object.entries(u.apis)).forEach(([y,j])=>{pe(j)?m[y]=be(j,{...o,apis:m,component:u,dataSignal:g,abortSignal:l.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(D,F)=>{let k=Object.values(e.events).find(c=>c.trigger===D);k&&k.actions.forEach(c=>P(c,{...r.get(),Event:F},o))}}):m[y]=ve({apiRequest:j,ctx:{...o,apis:m,component:u,dataSignal:g,abortSignal:l.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(D,F)=>{let k=Object.values(e.events).find(c=>c.trigger===D);k&&k.actions.forEach(c=>P(c,{...r.get(),Event:F},o))}},componentData:g.get()})}),Object.values(m).filter(Z).forEach(y=>{y.triggerActions(g.get())});let C=(y,j)=>{let D=Object.values(e.events).find(F=>F.trigger===y);D&&D.actions.forEach(F=>P(F,{...r.get(),Event:j},o))},S=o.providers;if(Ae(u)){let y=Object.fromEntries(Object.entries(u.formulas??{}).filter(([,j])=>j.exposeInContext).map(([j,D])=>[j,g.map(F=>A(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:y,ctx:{...o,apis:m,component:u,dataSignal:g,abortSignal:l.signal,triggerEvent:C}}}}let R={};for(let y=0;y<e.children.length;y++){let j=e.children[y],F=o.component.nodes[j].slot??"default";R[F]=R[F]??[],R[F].push({id:j,path:`${t}.${y}[${F}]`,dataSignal:r,ctx:{...o,package:e.package??o.package}})}return p.subscribe(y=>g.update(j=>({...j,Attributes:y})),{destroy:()=>g.destroy()}),Ee({dataSignal:g,component:u,components:o.components,path:t,root:o.root,isRootComponent:!1,children:R,formulaCache:d,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 p=he([e.style,e.variants]);u.classList.add(p),s&&r==="root"&&Object.entries(s).forEach(([l,d])=>{u.classList.add(ge(`${l}:${d}`))}),e.classes&&Object.entries(e.classes)?.forEach(([l,{formula:d}])=>{d?t.map(C=>x(A(d,{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,d])=>{if(!O(d))return;let m,C=()=>{d.type==="value"?_r(u,l,d?.value):(m=t.map(S=>A(d,{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:d,formula:m,unit:C}=l;t.map(R=>{let y=A(m,{data:R,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env});return C?y+C:y}).subscribe(R=>u.style.setProperty(`--${d}`,R))}),Object.entries(e.customProperties??{}).forEach(([l,{formula:d}])=>X({customPropertyName:l,selector:n.env.runtime==="custom-element"&&n.isRootComponent&&o==="0"?`${Q(o)}, :host`:Q(o),signal:t.map(m=>A(d,{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(([d,{formula:m}])=>{X({customPropertyName:d,selector:Q(o,{variant:l}),variant:l,signal:t.map(C=>A(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 d=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);l&&u.addEventListener(l.trigger,d)});let g=e.tag.toLocaleLowerCase();if(g==="script"||g==="style"){let l=[];e.children.map(d=>n.component.nodes[d]).filter(d=>d?.type==="text").forEach(d=>{if(d.value.type==="value")l.push(String(d.value.value));else{let m=t.map(C=>String(A(d.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(d=>typeof d=="string")&&(u.textContent=l.join("")),l.filter(d=>typeof d!="string").forEach(d=>{d.subscribe(()=>{u.textContent=l.map(m=>typeof m=="string"?m:m.get()).join("")})})}else e.children.forEach((l,d)=>{z({parentElement:u,id:l,path:o+"."+d,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(p=>{let g=p.dataSignal.map(l=>l);return r.subscribe(l=>l,{destroy:()=>g.destroy()}),z({...p,dataSignal:g,parentElement:n,ctx:{...p.ctx,providers:o.providers},instance:a,namespace:s})}):u=t.children.flatMap((p,g)=>z({id:p,path:e+"."+g,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s})),o.env.runtime==="custom-element"&&o.isRootComponent){let p=document.createElement("slot");return p.setAttribute("name",i),u.forEach(g=>{p.appendChild(g)}),[p]}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 Ll({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(p=>String(A(s,{data:p,component:a.component,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:a.toddle,env:a.env}))).subscribe(p=>{i.innerText=p}):i.innerText=String(s.value),i}function Ll({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 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,...d})=>{switch(l.type){case"element":return[Po({node:l,...d})];case"component":let m=o.components.some(C=>C.name===l.name);return xo({node:{...l,id:e},...d,ctx:{...o,package:l.package??(m?void 0:o.package)},parentElement:a});case"text":return[Io({...d,node:l})];case"slot":return Lo({...d,node:l})}};function p({node:l,dataSignal:d,id:m,path:C,ctx:S,namespace:R,parentElement:y,instance:j}){let D=!0,F=null,k=d.map(b=>x(A(l.condition,{data:b,component:S.component,formulaCache:S.formulaCache,root:S.root,package:S.package,toddle:S.toddle,env:S.env}))),c=[],v=b=>{if(b&&c.length===0){if(F?.destroy(),F=d.map(E=>E),c.push(...u({node:l,dataSignal:F,path:C,id:m,ctx:S,namespace:R,parentElement:y,instance:j})),D)return;if(!y||S.root.contains(y)===!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(y.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,y);for(let E of c)y.insertBefore(E,h)}else b||(F?.destroy(),c.forEach(h=>h.remove()),c.splice(0,c.length))};return k.subscribe(v,{destroy:()=>{F?.destroy()}}),S.env.runtime==="preview"&&S.toddle._preview&&S.toddle._preview.showSignal.subscribe(({displayedNodes:b,testMode:h})=>{b.includes(C)&&!h?v(!0):v(k.get())}),D=!1,c}function g(){let l=!0,d=new Map;return t.map(C=>{let S=A(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[y,j]=C[R],D={...t.get(),ListItem:{...t.get().ListItem?{Parent:t.get().ListItem}:{},Item:j,Index:Number(R),Key:y}},F=i.repeatKey?A(i.repeatKey,{data:D,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):y;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=y);let k=d.get(F);if(k)S.set(F,k),k.dataSignal.update(c=>({...c,ListItem:{...t.get().ListItem?{Parent:t.get().ListItem}:{},Item:j,Index:Number(R),Key:y}}));else{let c=J(D),v=t.subscribe(E=>{l||c.update(({ListItem:w})=>({...E,ListItem:w}))},{destroy:()=>c.destroy()}),b={node:i,id:e,dataSignal:c,path:y==="0"?r:`${r}(${y})`,ctx:o,namespace:n,parentElement:a,instance:s},h=i.condition?p(b):u(b);S.set(F,{dataSignal:c,cleanup:v,elements:h})}}if(Array.from(d.entries()).forEach(([R,y])=>{S.has(R)||(y.cleanup(),y.dataSignal.destroy(),y.elements.forEach(j=>j.remove()))}),d=S,!(l||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}Do(a,Array.from(d.values()).flatMap(R=>R.elements),Br(r,a))}},{destroy:()=>Array.from(d.values()).forEach(C=>{C.cleanup(),C.dataSignal.destroy(),C.elements.forEach(S=>S.remove())})}),l=!1,Array.from(d.values()).flatMap(C=>C.elements)}return i.repeat?g():i.condition?p({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 Il=new Se;function Ee({component:e,dataSignal:t,onEvent:r,isRootComponent:o,path:n,children:a,formulaCache:s,components:i,apis:u,abortSignal:p,root:g,providers:l,package:d,parentElement:m,instance:C,toddle:S,namespace:R,env:y}){let j={triggerEvent:r,component:e,components:i,dataSignal:t,isRootComponent:o,apis:u,formulaCache:s,children:a,abortSignal:p,root:g,providers:l,package:d,toddle:S,env:y},D=z({id:"root",path:n,dataSignal:t,ctx:j,parentElement:m,namespace:R,instance:C});return Il.add(()=>{let F;e.onAttributeChange?.actions&&e.onAttributeChange.actions.length>0&&t.map(k=>k.Attributes).subscribe(k=>{F&&e.onAttributeChange?.actions.forEach(c=>{P(c,t.get(),j,new CustomEvent("attribute-change",{detail:Object.entries(k).reduce((v,[b,h])=>((0,Mo.default)(h,F[b])===!1&&e.attributes[b]?.name&&(v[e.attributes[b]?.name]={current:F[b],new:h}),v),{})}))}),F=k}),e.onLoad?.actions.forEach(k=>{P(k,t.get(),j)})}),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=Ml({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=>A(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}},Ml=({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,A(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 ql=(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{ql as defineComponents,np as loadCorePlugins};
|
|
264
|
+
`],componentData:g})}async function R({api:p,res:v,performance:b,streamType:g,useTextDecoder:E,parseChunk:F,parseChunksForData:x,delimiters:L,componentData:M}){let P={chunks:[],currentChunk:"",add(W){let H=F(W);this.chunks.push(H),H&&(r.dataSignal.set({...r.dataSignal.get(),Apis:{...r.dataSignal.get().Apis,[p.name]:{isLoading:!0,data:x(this.chunks),error:null,response:{headers:G(v.headers)}}}}),(p.client?.onMessage?.actions??[]).length>0&&l({eventName:"message",api:p,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=E?v.body?.pipeThrough(new TextDecoderStream).getReader():v.body?.getReader();for(;Y;){let{done:W,value:H}=await Y.read();if(W)break;L?P.processChunk(H):P.add(H)}P.currentChunk&&P.add(P.currentChunk);let ae={isLoading:!1,data:P.chunks,error:null,response:{status:v.status,headers:G(v.headers)}};try{if(g==="json"){let W=JSON.parse(P.chunks.join(""));ae.data=W}else g==="text"&&(ae.data=P.chunks.join(""))}catch{throw new Error("Error occurred while parsing the json chunk.",{cause:P.chunks.join("")})}return D({api:p,apiStatus:ae,componentData:M,performance:b})}function D({api:p,apiStatus:v,componentData:b,performance:g}){g.responseEnd=Date.now();let E={body:v.data,status:v.response?.status,headers:v.response?.headers??void 0};mo({apiName:p.name,response:{body:E.body,ok:!!(!v.error&&v.response?.status&&v.response.status<400),status:E.status,headers:E.headers},formulaContext:s(p,b),errorFormula:p.isError,performance:g})?(!E.body&&v.error&&(E.body=v.error),h({api:p,componentData:b,data:E,performance:g}),l({eventName:"failed",api:p,componentData:b,data:E})):(c({api:p,componentData:b,data:E,performance:g}),l({eventName:"success",api:p,componentData:b,data:E}))}function j(p){return ao(p,[["client","onCompleted"],["client","onFailed"],["client","onMessage"],["service"],["server","ssr"]])}let k;return k=r.dataSignal.map(p=>{let v=s(n,t);return{request:a(n,t),api:j(n),autoFetch:n.autoFetch?S(n.autoFetch,v):!1,proxy:S(n.server?.proxy?.enabled.formula,v)}}),k.subscribe(async p=>{let{url:v,requestSettings:b}=a(n,t),g=O(n.autoFetch)&&(n.autoFetch.type!=="value"||n.autoFetch.value===!0)&&(window?.__toddle?.isPageLoaded??!1)===!1?r.toddle.pageState.Apis?.[fo(v,b)]:void 0;g?g.error?h({api:n,data:{body:g.error,status:g.response?.status,headers:g.response?.headers??void 0},performance:{requestStart:g.response?.performance?.requestStart??null,responseStart:g.response?.performance?.responseStart??null,responseEnd:g.response?.performance?.responseEnd??null},componentData:t}):c({api:n,data:{body:g.data,status:g.response?.status,headers:g.response?.headers??void 0},performance:{requestStart:g.response?.performance?.requestStart??null,responseStart:g.response?.performance?.responseStart??null,responseEnd:g.response?.performance?.responseEnd??null},componentData:t}):S(n.autoFetch,s(n,t))?await i({api:n,url:v,requestSettings:b,componentData:t}):r.dataSignal.get().Apis?.[n.name]||r.dataSignal.update(E=>({...E,Apis:{...E.Apis??{},[n.name]:{isLoading:!1,data:null,error:null}}}))}),{fetch:({actionInputs:p,actionModels:v,componentData:b})=>{let g=Object.entries(p??{}).reduce((L,[M,P])=>(P!==null&&typeof P=="object"&&"formula"in P?L[M]=P:L[M]={formula:{type:"value",value:P}},L),{}),E={...n,inputs:{...n.inputs,...g},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:F,requestSettings:x}=a(E,b);return i({api:E,url:F,requestSettings:x,componentData:b})},update:(p,v)=>{n=p;let b=s(n,v),g=n.autoFetch&&S(n.autoFetch,b);g&&k?.set({request:a(p,v),api:j(p),autoFetch:g,proxy:S(p.server?.proxy?.enabled.formula,b)})},triggerActions:p=>{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:p}):l({eventName:"success",api:n,data:{body:v.data},componentData:p}))},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 l=s.getAttribute("data-id")?.split(".").slice(-1)[0],c=parseInt(String(l));if(c===n&&parseInt(String(l?.split("(")[1]))>a||c>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 u=a.formulaDataSignals[s];if(!u){console.warn(`Provider ${o} does not expose a formula named "${s}". Available formulas are: ["${Object.keys(a.formulaDataSignals).join('", "')}"]`);return}u.subscribe(l=>{e.update(c=>({...c,Contexts:{...c.Contexts,[o]:{...c.Contexts?.[o],[s]:l}}}))})});else if(!a&&r.env.runtime==="preview"&&r.toddle._preview){let s=r.components?.find(c=>c.name===[r.package,o].filter(O).join("/"));if(!s){console.error(`Could not find provider "${o}". No such component exist.`);return}let[,u]=o.split("/").reverse(),l={data:{Attributes:I(s.attributes,([c,h])=>[c,h.testValue])},component:s,root:r?.root,formulaCache:{},package:u??r?.package,toddle:r.toddle,env:r.env};s.route&&(l.data["URL parameters"]={...Object.fromEntries(s.route.path.filter(c=>c.type==="param").map(c=>[c.name,c.testValue])),...I(s.route.query,([c,{testValue:h}])=>[c,h])}),l.data.Variables=I(s.variables,([c,h])=>[c,S(h.initialValue,l)]),e.update(c=>({...c,Contexts:{...c.Contexts,[o]:Object.fromEntries(n.formulas.map(h=>{let i=s.formulas?.[h];return i?[h,S(i.formula,l)]:(console.warn(`Could not find formula "${h}" in component "${o}"`),[h,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?$l(r.formula,e):{canCache:!1,keys:[]},a,s;return[t,{get:u=>o&&a&&n.every(l=>le(u,l)===le(a,l))?{hit:!0,data:s}:{hit:!1},set:(u,l)=>{o&&(a=u,s=l)}}]}):{}}function $l(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((u,l)=>u===a[l]))||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),u=this.styleSheet.cssRules[s];for(;u.cssRules&&u.cssRules.length>0;)u=u.cssRules[0];a=u,this.ruleMap.set(n,a)}return s=>{a.style.setProperty(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 No({node:e,path:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let u=[o.package,e.name].filter(O).join("/"),l=o.components?.find(y=>y.name===u);if(!l)return console.warn(`Could not find component "${u}" for component "${o.component.name}". Available components are: ["${o.components.map(y=>y.name).join('", "')}"]`),[];let c=r.map(y=>I(e.attrs,([R,D])=>[R,D?.type!=="value"?S(D,{data:y,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(([y,R])=>X({selector:Q(t,{componentName:o.component.name,nodeId:e.id}),signal:r.map(D=>S(R.formula,{data:D,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),customPropertyName:y,root:o.root,runtime:o.env.runtime})),e.variants?.forEach(y=>{Object.entries(y.customProperties??{}).forEach(([R,D])=>X({selector:Q(t,{componentName:o.component.name,nodeId:e.id,variant:y}),signal:r.map(j=>S(D.formula,{data:j,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),customPropertyName:R,variant:y,root:o.root,runtime:o.env.runtime}))});let h=J({Location:r.get().Location,Attributes:c.get(),Apis:I(l.apis,([y,R])=>[y,{data:null,isLoading:!!(R.autoFetch&&S(R.autoFetch,{data:r.get(),component:l,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})),error:null}])});Oo(h,l,o),h.update(y=>({...y,Variables:I(l.variables,([R,D])=>[R,S(D.initialValue,{data:h.get(),component:l,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env})])})),To(l,h);let i=new AbortController;h.subscribe(()=>{},{destroy:()=>i.abort(`Component ${l.name} unmounted`)});let d=ko(l),m={};me(Object.entries(l.apis)).forEach(([y,R])=>{pe(R)?m[y]=be(R,{...o,apis:m,component:l,dataSignal:h,abortSignal:i.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(D,j)=>{let k=Object.values(e.events).find(p=>p.trigger===D);k&&k.actions.forEach(p=>$(p,{...r.get(),Event:j},o))}}):m[y]=ve({apiRequest:R,ctx:{...o,apis:m,component:l,dataSignal:h,abortSignal:i.signal,isRootComponent:!1,formulaCache:d,package:e.package??o.package,triggerEvent:(D,j)=>{let k=Object.values(e.events).find(p=>p.trigger===D);k&&k.actions.forEach(p=>$(p,{...r.get(),Event:j},o))}},componentData:h.get()})}),Object.values(m).filter(Z).forEach(y=>{y.triggerActions(h.get())});let A=(y,R)=>{let D=Object.values(e.events).find(j=>j.trigger===y);D&&D.actions.forEach(j=>$(j,{...r.get(),Event:R},o))},C=o.providers;if(Ae(l)){let y=Object.fromEntries(Object.entries(l.formulas??{}).filter(([,R])=>R.exposeInContext).map(([R,D])=>[R,h.map(j=>S(D.formula,{data:j,component:l,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}))]));C={...C,[l.name]:{component:l,formulaDataSignals:y,ctx:{...o,apis:m,component:l,dataSignal:h,abortSignal:i.signal,triggerEvent:A}}}}let w={};for(let y=0;y<e.children.length;y++){let R=e.children[y],j=o.component.nodes[R].slot??"default";w[j]=w[j]??[],w[j].push({id:R,path:`${t}.${y}[${j}]`,dataSignal:r,ctx:{...o,package:e.package??o.package}})}return c.subscribe(y=>h.update(R=>({...R,Attributes:y})),{destroy:()=>h.destroy()}),Ee({dataSignal:h,component:l,components:o.components,path:t,root:o.root,isRootComponent:!1,children:w,formulaCache:d,providers:C,apis:m,abortSignal:i.signal,package:e.package??o.package,parentElement:n,onEvent:A,toddle:o.toddle,env:o.env,namespace:s,instance:e.id==="root"?{...a,[o.component.name]:"root"}:{[o.component.name]:e.id??""}})}function xo(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)N(r)&&e.setAttribute(t,String(r));else{let o=r;e instanceof HTMLProgressElement&&(!O(r)||!Number.isFinite(Number(r)))&&(o=0),e[t]=N(o)?String(o):void 0}break}case"muted":case"autoplay":e instanceof HTMLMediaElement?e[t]=N(r):e.setAttribute(t,String(r));break;default:N(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 u=$o(e,n,r);switch(u){case"svg":{a="http://www.w3.org/2000/svg";break}case"math":{a="http://www.w3.org/1998/Math/MathML";break}}e.attrs.xmlns&&e.attrs.xmlns.type==="value"&&(a=String(e.attrs.xmlns.value));let l=a?document.createElementNS(a,u):document.createElement(u);l.setAttribute("data-node-id",r),o&&l.setAttribute("data-id",o),n.isRootComponent===!1&&r!=="root"&&l.setAttribute("data-component",n.component.name);let c=he([e.style,e.variants]);l.classList.add(c),s&&r==="root"&&Object.entries(s).forEach(([i,d])=>{l.classList.add(ge(`${i}:${d}`))}),e.classes&&Object.entries(e.classes)?.forEach(([i,{formula:d}])=>{d?t.map(A=>N(S(d,{data:A,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env}))).subscribe(A=>A?l.classList.add(i):l.classList.remove(i)):l.classList.add(i)}),Object.entries(e.attrs).forEach(([i,d])=>{if(!O(d))return;let m,A=()=>{d.type==="value"?_r(l,i,d?.value):(m=t.map(C=>S(d,{data:C,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})),m.subscribe(C=>{_r(l,i,C)}))};i==="autofocus"&&n.env.runtime==="preview"&&n.toddle._preview?n.toddle._preview.showSignal.subscribe(({testMode:C})=>{C?A():(m?.destroy(),l.removeAttribute(i))}):A()}),e["style-variables"]?.forEach(i=>{let{name:d,formula:m,unit:A}=i;t.map(w=>{let y=S(m,{data:w,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env});return A?y+A:y}).subscribe(w=>l.style.setProperty(`--${d}`,w))}),Object.entries(e.customProperties??{}).forEach(([i,{formula:d}])=>X({customPropertyName:i,selector:n.env.runtime==="custom-element"&&n.isRootComponent&&o==="0"?`${Q(o)}, :host`:Q(o),signal:t.map(m=>S(d,{data:m,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})),root:n.root,runtime:n.env.runtime})),e.variants?.forEach(i=>{Object.entries(i.customProperties??{}).forEach(([d,{formula:m}])=>{X({customPropertyName:d,selector:Q(o,{variant:i}),variant:i,signal:t.map(A=>S(m,{data:A,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})),root:n.root,runtime:n.env.runtime})})}),Object.values(e.events).forEach(i=>{let d=m=>(i?.actions.forEach(A=>{if(m instanceof DragEvent&&(m.data=xo(m)),m instanceof ClipboardEvent)try{m.data=Array.from(m.clipboardData?.items??[]).reduce((C,w)=>{try{C[w.type]=JSON.parse(m.clipboardData?.getData(w.type))}catch{C[w.type]=m.clipboardData?.getData(w.type)}return C},{})}catch(C){console.error("Could not get paste data",C)}$(A,{...t.get(),Event:m},n,m)}),!1);i&&l.addEventListener(i.trigger,d)});let h=e.tag.toLocaleLowerCase();if(h==="script"||h==="style"){let i=[];e.children.map(d=>n.component.nodes[d]).filter(d=>d?.type==="text").forEach(d=>{if(d.value.type==="value")i.push(String(d.value.value));else{let m=t.map(A=>String(S(d.value,{data:A,component:n.component,formulaCache:n.formulaCache,root:n.root,package:n.package,toddle:n.toddle,env:n.env})));i.push(m)}}),i.every(d=>typeof d=="string")&&(l.textContent=i.join("")),i.filter(d=>typeof d!="string").forEach(d=>{d.subscribe(()=>{l.textContent=i.map(m=>typeof m=="string"?m:m.get()).join("")})})}else e.children.forEach((i,d)=>{z({parentElement:l,id:i,path:o+"."+d,dataSignal:t,ctx:n,namespace:a,instance:s}).forEach(A=>l.appendChild(A))});return l}function Lo({path:e,node:t,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s}){let u=t.name??"default",l=[];if(o.children[u]?l=o.children[u].flatMap(c=>{let h=c.dataSignal.map(i=>i);return r.subscribe(i=>i,{destroy:()=>h.destroy()}),z({...c,dataSignal:h,parentElement:n,ctx:{...c.ctx,providers:o.providers},instance:a,namespace:s})}):l=t.children.flatMap((c,h)=>z({id:c,path:e+"."+h,dataSignal:r,ctx:o,parentElement:n,instance:a,namespace:s})),o.env.runtime==="custom-element"&&o.isRootComponent){let c=document.createElement("slot");return c.setAttribute("name",u),l.forEach(h=>{c.appendChild(h)}),[c]}return l}function Io({node:e,id:t,path:r,dataSignal:o,namespace:n,ctx:a}){if(n&&n!=="http://www.w3.org/1999/xhtml")return Pl({node:e,dataSignal:o,ctx:a});let{value:s}=e,u=document.createElement("span");return u.setAttribute("data-node-id",t),typeof t=="string"&&u.setAttribute("data-id",r),a.isRootComponent===!1&&u.setAttribute("data-component",a.component.name),u.setAttribute("data-node-type","text"),s.type!=="value"?o.map(c=>String(S(s,{data:c,component:a.component,formulaCache:a.formulaCache,root:a.root,package:a.package,toddle:a.toddle,env:a.env}))).subscribe(c=>{u.innerText=c}):u.innerText=String(s.value),u}function Pl({node:e,dataSignal:t,ctx:r}){let{value:o}=e,n=document.createTextNode("");return o.type!=="value"?t.map(s=>String(S(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 u=o.component.nodes[e];if(!u)return[];let l=({node:i,...d})=>{switch(i.type){case"element":return[Po({node:i,...d})];case"component":let m=o.components.some(A=>A.name===i.name);return No({node:{...i,id:e},...d,ctx:{...o,package:i.package??(m?void 0:o.package)},parentElement:a});case"text":return[Io({...d,node:i})];case"slot":return Lo({...d,node:i})}};function c({node:i,dataSignal:d,id:m,path:A,ctx:C,namespace:w,parentElement:y,instance:R}){let D=!0,j=null,k=d.map(b=>N(S(i.condition,{data:b,component:C.component,formulaCache:C.formulaCache,root:C.root,package:C.package,toddle:C.toddle,env:C.env}))),p=[],v=b=>{if(b&&p.length===0){if(j?.destroy(),j=d.map(E=>E),p.push(...l({node:i,dataSignal:j,path:A,id:m,ctx:C,namespace:w,parentElement:y,instance:R})),D)return;if(!y||C.root.contains(y)===!1){console.error(`Conditional: Parent element does not exist for "${A}" This is likely due to the DOM being modified outside of Nordcraft.`);return}if(y.querySelector(`[data-id="${A}"]`)){console.warn(`Conditional: Element with data-id="${A}" already exists. This is likely due to the DOM being modified outside of Nordcraft`);return}let g=Br(A,y);for(let E of p)y.insertBefore(E,g)}else b||(j?.destroy(),p.forEach(g=>g.remove()),p.splice(0,p.length))};return k.subscribe(v,{destroy:()=>{j?.destroy()}}),C.env.runtime==="preview"&&C.toddle._preview&&C.toddle._preview.showSignal.subscribe(({displayedNodes:b,testMode:g})=>{b.includes(A)&&!g?v(!0):v(k.get())}),D=!1,p}function h(){let i=!0,d=new Map;return t.map(A=>{let C=S(u.repeat,{data:A,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(A=>{let C=new Map;for(let w=0;w<A.length;w++){let[y,R]=A[w],D={...t.get(),ListItem:{...t.get().ListItem?{Parent:t.get().ListItem}:{},Item:R,Index:Number(w),Key:y}},j=u.repeatKey?S(u.repeatKey,{data:D,component:o.component,formulaCache:o.formulaCache,root:o.root,package:o.package,toddle:o.toddle,env:o.env}):y;C.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=y);let k=d.get(j);if(k)C.set(j,k),k.dataSignal.update(p=>({...p,ListItem:{...t.get().ListItem?{Parent:t.get().ListItem}:{},Item:R,Index:Number(w),Key:y}}));else{let p=J(D),v=t.subscribe(E=>{i||p.update(({ListItem:F})=>({...E,ListItem:F}))},{destroy:()=>p.destroy()}),b={node:u,id:e,dataSignal:p,path:y==="0"?r:`${r}(${y})`,ctx:o,namespace:n,parentElement:a,instance:s},g=u.condition?c(b):l(b);C.set(j,{dataSignal:p,cleanup:v,elements:g})}}if(Array.from(d.entries()).forEach(([w,y])=>{C.has(w)||(y.cleanup(),y.dataSignal.destroy(),y.elements.forEach(R=>R.remove()))}),d=C,!(i||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}Do(a,Array.from(d.values()).flatMap(w=>w.elements),Br(r,a))}},{destroy:()=>Array.from(d.values()).forEach(A=>{A.cleanup(),A.dataSignal.destroy(),A.elements.forEach(C=>C.remove())})}),i=!1,Array.from(d.values()).flatMap(A=>A.elements)}return u.repeat?h():u.condition?c({node:u,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s}):l({node:u,dataSignal:t,ctx:o,id:e,path:r,namespace:n,parentElement:a,instance:s})}var Ll=new Se;function Ee({component:e,dataSignal:t,onEvent:r,isRootComponent:o,path:n,children:a,formulaCache:s,components:u,apis:l,abortSignal:c,root:h,providers:i,package:d,parentElement:m,instance:A,toddle:C,namespace:w,env:y}){let R={triggerEvent:r,component:e,components:u,dataSignal:t,isRootComponent:o,apis:l,formulaCache:s,children:a,abortSignal:c,root:h,providers:i,package:d,toddle:C,env:y},D=z({id:"root",path:n,dataSignal:t,ctx:R,parentElement:m,namespace:w,instance:A});return Ll.add(()=>{let j;e.onAttributeChange?.actions&&e.onAttributeChange.actions.length>0&&t.map(k=>k.Attributes).subscribe(k=>{j&&e.onAttributeChange?.actions.forEach(p=>{$(p,t.get(),R,new CustomEvent("attribute-change",{detail:Object.entries(k).reduce((v,[b,g])=>((0,Mo.default)(g,j[b])===!1&&e.attributes[b]?.name&&(v[e.attributes[b]?.name]={current:j[b],new:g}),v),{})}))}),j=k}),e.onLoad?.actions.forEach(k=>{$(k,t.get(),R)})}),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=Il({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=>S(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}},Il=({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,S(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 Ml=(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 op=(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{Ml as defineComponents,op as loadCorePlugins};
|
|
265
265
|
//# sourceMappingURL=custom-element.main.esm.js.map
|