@symbo.ls/element 3.14.788 → 3.14.789

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.
@@ -1,6 +1,6 @@
1
- "use strict";var St=Object.defineProperty;var Ao=Object.getOwnPropertyDescriptor;var Co=Object.getOwnPropertyNames;var vo=Object.prototype.hasOwnProperty;var So=(t,e)=>{for(var s in e)St(t,s,{get:e[s],enumerable:!0})},wo=(t,e,s,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Co(e))!vo.call(t,r)&&r!==s&&St(t,r,{get:()=>e[r],enumerable:!(n=Ao(e,r))||n.enumerable});return t};var ko=t=>wo(St({},"__esModule",{value:!0}),t);var Jo={};So(Jo,{BEFORE_UPDATE_MAX_CONSECUTIVE_FAILURES:()=>xt,acquireBeforeUpdateGuard:()=>ho,create:()=>Y,default:()=>Xo,flushMounts:()=>bt,reconcileAttrProp:()=>Yo,releaseBeforeUpdateGuard:()=>dt,writeElementText:()=>ut});module.exports=ko(Jo);var R=require("@symbo.ls/signal"),j=require("@symbo.ls/signal"),Q=require("./cache.js"),U=require("./registry.js"),st=require("./delegate.js"),uo=require("./extends.js"),lo=require("./methods.js"),ss=require("./dispose.js"),q=require("./devRuntime.js"),B=require("./mountScheduler.js"),D=require("@symbo.ls/utils"),G=require("@symbo.ls/utils/function.js"),ot=require("@symbo.ls/state"),A=require("css-in-props"),W=require("@symbo.ls/css"),w=require("@symbo.ls/scratch"),S=require("attrs-in-props"),po=require("./engineRegistry.js"),yo=require("./version.js");const Ut=(0,po.resolveElementIdEngine)({uniqId:1,scopedStyleId:0},yo.VERSION),it=[];let wt=!1;function Bt(){return typeof Date<"u"&&typeof Date.now=="function"?Date.now():0}function jo(){return typeof document<"u"&&document.visibilityState==="hidden"}const Eo=250;function Kt(){if(!wt){if(wt=!0,typeof requestAnimationFrame!="function"){setTimeout(bt,0);return}jo()?setTimeout(bt,Eo):requestAnimationFrame(bt)}}const Po=300,To=15e4;function bt(){if(wt=!1,!it.length)return;const t=it.splice(0,it.length);for(let e=0;e<t.length;e++){const s=t[e];if(s.node){if(!s.node.isConnected){const n=s.__ref||(s.__ref={});n.__mountAttempts=(n.__mountAttempts||0)+1,n.__mountFirstAttemptAt==null&&(n.__mountFirstAttemptAt=Bt());const r=Bt()-n.__mountFirstAttemptAt;n.__mountAttempts<=Po&&r<To?(it.push(s),Kt()):console.warn("[DOMQL] onMounted dropped after",n.__mountAttempts,"attempts /",r,"ms \u2014 node never connected:",s.key||s.tag||s);continue}$("Mounted",s,s.__ref?.__mountOptions||{})}}}function kt(t,e){typeof t.onMounted=="function"&&(t.__ref.__mountOptions=e,it.push(t),Kt())}function Vt(t,e){if(typeof t.onContentUpdate!="function")return;t.context?.plugins?.length&&(0,G.runPluginHook)("contentUpdate",t,e);const s=t.context?.designSystem;s&&(0,w.pushConfig)(s);try{t.onContentUpdate(t,t.state,t.context,e)}catch(n){if(t.context?.plugins?.length&&(0,G.runPluginHook)("error",t,{hook:"onContentUpdate",error:n})||console.error('[DOMQL] Lifecycle "onContentUpdate" error:',n),t.context?.strictMode)throw n}finally{s&&(0,w.popConfig)()}}function z(t){return t.length>2&&t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>=65&&t.charCodeAt(2)<=90}function Lo(t){return t.charAt(2).toLowerCase()+t.slice(3)}function Do(t){return t.toLowerCase()}function jt(t){const e=t.charCodeAt(0);return e===58||e===64||e===38||e===91}function ct(t,e){const s={...t};for(const n in e){const r=s[n],f=e[n];r&&f&&typeof r=="object"&&typeof f=="object"&&!Array.isArray(r)&&!Array.isArray(f)&&typeof r!="function"&&typeof f!="function"?s[n]=ct(r,f):s[n]=f}return s}function pt(t){if(typeof t=="string")return t||void 0;if(typeof t=="number"||typeof t=="bigint")return String(t)}function Gt(t,e,s){return pt(t)||(e&&typeof e=="object"?pt(e.key):void 0)||String(s)}function Y(t,e,s,n={},r){if(t==null||t===!1)return null;(typeof t=="string"||typeof t=="number")&&(t={text:t}),s=pt(s);const f=pt(t.key),o=Object.create(null);o.key=s||f||`_${Ut.uniqId++}`,o.parent=e||null,o.context=t.context||e?.context||n.context||{},o.context.__create||(o.context.__create=Y);const c=o.__ref={__if:!0,__children:[],__exec:{},__effects:[],__eventCleanup:[],root:e?.__ref?.root||o,path:e?.__ref?.path?[...e.__ref.path,o.key]:[o.key],origin:t};if(s&&!t.extends&&!t.extend){const h=s.indexOf("_"),p=s.indexOf(".");let x=h>0?h:-1;if(p>0&&(x<0||p<x)&&(x=p),x>0){const b=s.substring(0,x),v=o.context?.components;v&&(v[b]||v["smbls."+b])?t={...t,extends:b}:v&&(0,q.isLoudDevRuntime)()&&(/^[A-Z]\w*_\d+$/.test(s)||/^[A-Z]\w*\.\w+$/.test(s))&&console.warn(`[smbls] auto-extend: key "${s}" looks like an instance of "${b}" but neither "${b}" nor "smbls.${b}" is registered in context.components \u2014 element will render as a plain <div>. Register the base component or rename the key.`)}}(0,uo.applyExtends)(o,t,n);const u=new Set(["childProps","attr","style","scope","data"]),a=o.props&&typeof o.props=="object"?o.props:null;for(const h in t){if(h==="parent"||h==="node"||h==="__ref"||h==="extends"||h==="context"||h==="props")continue;if(h==="key"){f&&(o.key=f);continue}const p=t[h],x=o[h],b=x&&p&&typeof x=="object"&&typeof p=="object"&&!Array.isArray(x)&&!Array.isArray(p)&&typeof x!="function"&&typeof p!="function";b&&h.charCodeAt(0)>=65&&h.charCodeAt(0)<=90?o[h]=ct(x,p):b&&u.has(h)?o[h]={...x,...p}:b&&jt(h)?o[h]=ct(x,p):o[h]=p}function d(h){for(const p in h){const x=h[p],b=o[p],v=b&&x&&typeof b=="object"&&typeof x=="object"&&!Array.isArray(b)&&!Array.isArray(x)&&typeof b!="function"&&typeof x!="function";v&&p.charCodeAt(0)>=65&&p.charCodeAt(0)<=90?o[p]=ct(b,x):v&&u.has(p)?o[p]={...b,...x}:v&&jt(p)?o[p]=ct(b,x):o[p]=x}}a&&d(a),t.props&&typeof t.props=="object"&&d(t.props),t.data!==void 0&&(o.data=t.data),t.classlist!==void 0&&(o.classlist=t.classlist),t.text!==void 0&&(o.text=t.text),t.html!==void 0&&(o.html=t.html);const i=o.scope&&typeof o.scope=="object"?o.scope:null,l=e?.scope,y=o.context&&typeof o.context.globalScope=="object"&&o.context.globalScope||null,_=l||y||null;if(t.scope!==void 0||i){const h={};i&&Object.assign(h,i),t.scope!==void 0&&Object.assign(h,t.scope),o.scope=(0,R.createScopeStore)(h,_)}else _&&(o.scope=_);if(t.if!==void 0&&(o.if=t.if),(0,lo.addMethods)(o),Oo(o,e,t),o.if!=null){let h;if(typeof o.if=="function")try{h=o.if(o,o.state,o.context)}catch(p){if(h=!1,c.__ifError=p,typeof console<"u"&&console.warn){const x=o.key||o.tag||"?";console.warn(`[smbls] \`if:\` evaluator threw on ${x} \u2014 treating as false:`,p?.message||p)}}else h=o.if;c.__if=!!h}if(c.__if)typeof o.if=="function"&&(c.__ifInitialized=!0);else return e&&(e[o.key]=o),typeof o.if=="function"&&Zt(o,c,o.if),o;o.tag||(o.tag=(0,Q.detectTag)(o)),$("Init",o,n);const g=o.node=(0,Q.cacheNode)(o);if(!g)return o;if(o.tag==="fragment"){const p=(o.context?.document||globalThis.document).createComment("");g.appendChild(p),c.__fragmentAnchor=p}$("AttachNode",o,n),g.setAttribute&&o.key&&g.setAttribute("data-key",o.key),e&&(e[o.key]=o,e.__ref?.__children&&(e.__ref.__children.includes(o.key)||e.__ref.__children.push(o.key))),g.setAttribute&&o.context?.scopeSelector&&o.context.scopeSelector!==":root"&&o.context.key&&o.key===o.context.key&&g.setAttribute("data-smbls-app",o.context.key),o.id&&g.setAttribute&&(g.id=o.id),co(o,n),zt(o),Pt(o),ro(o),qo(o);try{fo(o,n)}catch(h){if(typeof console<"u"&&console.error){const p=o.__ref?.path?.join(".")||o.key||"<root>";console.error(`[smbls] createChildren failed at ${p}:`,h?.message||h,h?.stack?`
1
+ "use strict";var vo=Object.create;var pt=Object.defineProperty;var So=Object.getOwnPropertyDescriptor;var wo=Object.getOwnPropertyNames;var ko=Object.getPrototypeOf,jo=Object.prototype.hasOwnProperty;var Eo=(t,e)=>{for(var s in e)pt(t,s,{get:e[s],enumerable:!0})},Ut=(t,e,s,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of wo(e))!jo.call(t,r)&&r!==s&&pt(t,r,{get:()=>e[r],enumerable:!(n=So(e,r))||n.enumerable});return t};var Po=(t,e,s)=>(s=t!=null?vo(ko(t)):{},Ut(e||!t||!t.__esModule?pt(s,"default",{value:t,enumerable:!0}):s,t)),To=t=>Ut(pt({},"__esModule",{value:!0}),t);var ss={};Eo(ss,{BEFORE_UPDATE_MAX_CONSECUTIVE_FAILURES:()=>At,acquireBeforeUpdateGuard:()=>go,create:()=>Y,default:()=>os,flushMounts:()=>xt,reconcileAttrProp:()=>Xo,releaseBeforeUpdateGuard:()=>dt,writeElementText:()=>ut});module.exports=To(ss);var R=require("@symbo.ls/signal"),j=require("@symbo.ls/signal"),Q=require("./cache.js"),U=require("./registry.js"),st=require("./delegate.js"),po=require("./extends.js"),yo=require("./methods.js"),is=require("./dispose.js"),q=require("./devRuntime.js"),B=require("./mountScheduler.js"),D=require("@symbo.ls/utils"),Bt=Po(require("@symbo.ls/utils"),1),G=require("@symbo.ls/utils/function.js"),ot=require("@symbo.ls/state"),A=require("css-in-props"),W=require("@symbo.ls/css"),w=require("@symbo.ls/scratch"),S=require("attrs-in-props"),ho=require("./engineRegistry.js"),_o=require("./version.js");const Kt=(0,ho.resolveElementIdEngine)({uniqId:1,scopedStyleId:0},_o.VERSION),it=[];let wt=!1;function Vt(){return typeof Date<"u"&&typeof Date.now=="function"?Date.now():0}function Lo(){return typeof document<"u"&&document.visibilityState==="hidden"}const Do=250;function Gt(){if(!wt){if(wt=!0,typeof requestAnimationFrame!="function"){setTimeout(xt,0);return}Lo()?setTimeout(xt,Do):requestAnimationFrame(xt)}}const Oo=300,No=15e4;function xt(){if(wt=!1,!it.length)return;const t=it.splice(0,it.length);for(let e=0;e<t.length;e++){const s=t[e];if(s.node){if(!s.node.isConnected){const n=s.__ref||(s.__ref={});n.__mountAttempts=(n.__mountAttempts||0)+1,n.__mountFirstAttemptAt==null&&(n.__mountFirstAttemptAt=Vt());const r=Vt()-n.__mountFirstAttemptAt;n.__mountAttempts<=Oo&&r<No?(it.push(s),Gt()):console.warn("[DOMQL] onMounted dropped after",n.__mountAttempts,"attempts /",r,"ms \u2014 node never connected:",s.key||s.tag||s);continue}$("Mounted",s,s.__ref?.__mountOptions||{})}}}function kt(t,e){typeof t.onMounted=="function"&&(t.__ref.__mountOptions=e,it.push(t),Gt())}function Ht(t,e){if(typeof t.onContentUpdate!="function")return;t.context?.plugins?.length&&(0,G.runPluginHook)("contentUpdate",t,e);const s=t.context?.designSystem;s&&(0,w.pushConfig)(s);try{t.onContentUpdate(t,t.state,t.context,e)}catch(n){if(t.context?.plugins?.length&&(0,G.runPluginHook)("error",t,{hook:"onContentUpdate",error:n})||console.error('[DOMQL] Lifecycle "onContentUpdate" error:',n),t.context?.strictMode)throw n}finally{s&&(0,w.popConfig)()}}function z(t){return t.length>2&&t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>=65&&t.charCodeAt(2)<=90}function Ro(t){return t.charAt(2).toLowerCase()+t.slice(3)}function Mo(t){return t.toLowerCase()}function jt(t){const e=t.charCodeAt(0);return e===58||e===64||e===38||e===91}function ct(t,e){const s={...t};for(const n in e){const r=s[n],f=e[n];r&&f&&typeof r=="object"&&typeof f=="object"&&!Array.isArray(r)&&!Array.isArray(f)&&typeof r!="function"&&typeof f!="function"?s[n]=ct(r,f):s[n]=f}return s}function yt(t){if(typeof t=="string")return t||void 0;if(typeof t=="number"||typeof t=="bigint")return String(t)}function Wt(t,e,s){return yt(t)||(e&&typeof e=="object"?yt(e.key):void 0)||String(s)}function Y(t,e,s,n={},r){if(t==null||t===!1)return null;(typeof t=="string"||typeof t=="number")&&(t={text:t}),s=yt(s);const f=yt(t.key),o=Object.create(null);o.key=s||f||`_${Kt.uniqId++}`,o.parent=e||null,o.context=t.context||e?.context||n.context||{},o.context.__create||(o.context.__create=Y);const c=o.__ref={__if:!0,__children:[],__exec:{},__effects:[],__eventCleanup:[],root:e?.__ref?.root||o,path:e?.__ref?.path?[...e.__ref.path,o.key]:[o.key],origin:t};if(s&&!t.extends&&!t.extend){const h=s.indexOf("_"),p=s.indexOf(".");let x=h>0?h:-1;if(p>0&&(x<0||p<x)&&(x=p),x>0){const b=s.substring(0,x),v=o.context?.components;v&&(v[b]||v["smbls."+b])?t={...t,extends:b}:v&&(0,q.isLoudDevRuntime)()&&(/^[A-Z]\w*_\d+$/.test(s)||/^[A-Z]\w*\.\w+$/.test(s))&&console.warn(`[smbls] auto-extend: key "${s}" looks like an instance of "${b}" but neither "${b}" nor "smbls.${b}" is registered in context.components \u2014 element will render as a plain <div>. Register the base component or rename the key.`)}}(0,po.applyExtends)(o,t,n);const u=new Set(["childProps","attr","style","scope","data"]),a=o.props&&typeof o.props=="object"?o.props:null;for(const h in t){if(h==="parent"||h==="node"||h==="__ref"||h==="extends"||h==="context"||h==="props")continue;if(h==="key"){f&&(o.key=f);continue}const p=t[h],x=o[h],b=x&&p&&typeof x=="object"&&typeof p=="object"&&!Array.isArray(x)&&!Array.isArray(p)&&typeof x!="function"&&typeof p!="function";b&&h.charCodeAt(0)>=65&&h.charCodeAt(0)<=90?o[h]=ct(x,p):b&&u.has(h)?o[h]={...x,...p}:b&&jt(h)?o[h]=ct(x,p):o[h]=p}function d(h){for(const p in h){const x=h[p],b=o[p],v=b&&x&&typeof b=="object"&&typeof x=="object"&&!Array.isArray(b)&&!Array.isArray(x)&&typeof b!="function"&&typeof x!="function";v&&p.charCodeAt(0)>=65&&p.charCodeAt(0)<=90?o[p]=ct(b,x):v&&u.has(p)?o[p]={...b,...x}:v&&jt(p)?o[p]=ct(b,x):o[p]=x}}a&&d(a),t.props&&typeof t.props=="object"&&d(t.props),t.data!==void 0&&(o.data=t.data),t.classlist!==void 0&&(o.classlist=t.classlist),t.text!==void 0&&(o.text=t.text),t.html!==void 0&&(o.html=t.html);const i=o.scope&&typeof o.scope=="object"?o.scope:null,l=e?.scope,y=o.context&&typeof o.context.globalScope=="object"&&o.context.globalScope||null,_=l||y||null;if(t.scope!==void 0||i){const h={};i&&Object.assign(h,i),t.scope!==void 0&&Object.assign(h,t.scope),o.scope=(0,R.createScopeStore)(h,_)}else _&&(o.scope=_);if(t.if!==void 0&&(o.if=t.if),(0,yo.addMethods)(o),$o(o,e,t),o.if!=null){let h;if(typeof o.if=="function")try{h=o.if(o,o.state,o.context)}catch(p){if(h=!1,c.__ifError=p,typeof console<"u"&&console.warn){const x=o.key||o.tag||"?";console.warn(`[smbls] \`if:\` evaluator threw on ${x} \u2014 treating as false:`,p?.message||p)}}else h=o.if;c.__if=!!h}if(c.__if)typeof o.if=="function"&&(c.__ifInitialized=!0);else return e&&(e[o.key]=o),typeof o.if=="function"&&Qt(o,c,o.if),o;o.tag||(o.tag=(0,Q.detectTag)(o)),$("Init",o,n);const g=o.node=(0,Q.cacheNode)(o);if(!g)return o;if(o.tag==="fragment"){const p=(o.context?.document||globalThis.document).createComment("");g.appendChild(p),c.__fragmentAnchor=p}$("AttachNode",o,n),g.setAttribute&&o.key&&g.setAttribute("data-key",o.key),e&&(e[o.key]=o,e.__ref?.__children&&(e.__ref.__children.includes(o.key)||e.__ref.__children.push(o.key))),g.setAttribute&&o.context?.scopeSelector&&o.context.scopeSelector!==":root"&&o.context.key&&o.key===o.context.key&&g.setAttribute("data-smbls-app",o.context.key),o.id&&g.setAttribute&&(g.id=o.id),ao(o,n),Zt(o),Pt(o),co(o),mo(o);try{uo(o,n)}catch(h){if(typeof console<"u"&&console.error){const p=o.__ref?.path?.join(".")||o.key||"<root>";console.error(`[smbls] createChildren failed at ${p}:`,h?.message||h,h?.stack?`
2
2
  `+h.stack.split(`
3
3
  `).slice(0,6).join(`
4
- `):"")}}if(gt(o,!0),ao(o,e,r),typeof o.html=="function"&&o.node&&!o.node.innerHTML){const h=o.context?.designSystem;h&&(0,w.pushConfig)(h);try{const p=o.html(o,o.state,o.context);p!=null&&typeof p!="function"&&(o.node.innerHTML=p)}catch{}finally{h&&(0,w.popConfig)()}}if($("Create",o,n),$("Complete",o,n),$("Render",o,n),$("RenderRouter",o,n),kt(o,n),typeof o.onFrame=="function"){const h=o.onFrame,p=o.context?.designSystem,x=()=>{if(o.node){if(o.node.isConnected){p&&(0,w.pushConfig)(p);try{h(o,o.state,o.context)}catch(b){console.error("[DOMQL] onFrame error:",b)}finally{p&&(0,w.popConfig)()}}requestAnimationFrame(x)}};requestAnimationFrame(x)}return o}function Oo(t,e,s){const n=!e,r=s.state&&typeof s.state=="object"&&!Array.isArray(s.state)&&Object.keys(s.state).length===0,f=n&&r&&t.context?.state,o=s.state!==void 0&&!f?s.state:t.state&&!(0,R.isStore)(t.state)?t.state:void 0;if(o==null){if(e?.state)t.state=e.state,(0,ot.applyStateMethods)(t,t.state);else if(t.context?.state){const c=t.context.state,u={...c},a=t.context?.polyglot;if(a?.translations){const d=t.context,i=c.lang||a.defaultLang||"en",l=new Set,y=(h,p)=>{l.has(h)||(0,D.isPolyglotWritableKey)(d,h,u)&&(u[h]=p,l.add(h),(0,D.markPolyglotSeeded)(d,h))},_=a.translations[i];if(_&&typeof _=="object")for(const h in _)y(h,_[h]);const g=new Set(a.languages||[]);for(const h in a.translations)g.has(h)||y(h,a.translations[h])}t.state=(0,R.isStore)(u)?u:(0,R.createStore)(u),t.state.__element=t,t.state.root=t.state,(0,ot.applyStateMethods)(t,t.state)}else t.state={},Object.defineProperty(t.state,"root",{value:t.state,enumerable:!1,configurable:!0,writable:!0}),(0,ot.applyStateMethods)(t,t.state);return}if(typeof o=="string"){if(t.state=Ht(o,e),t.state&&typeof t.state=="object"&&!(0,R.isStore)(t.state)){const c=e?.state?.root||e?.state||t.state;Object.defineProperty(t.state,"root",{value:c,enumerable:!1,configurable:!0,writable:!0})}(0,ot.applyStateMethods)(t,t.state);return}if(typeof o=="function"){const c=o(t,e?.state);t.state=(0,R.isStore)(c)?c:(0,R.createStore)(c||{})}else(0,R.isStore)(o)?t.state=o:t.state=(0,R.createStore)({...o});t.state.__element=t,e?.state?(t.state.parent=e.state,t.state.root=e.state.root||e.state):t.state.root=t.state,(0,ot.applyStateMethods)(t,t.state)}function Et(t,e){if(!e)return t;const s=e.split("/");let n=t;for(const r of s){if(n==null)return{};n=n[r]}return n??{}}function Ht(t,e){if(!e)return{};if(t===".")return e.state||{};if(t.startsWith("../")){const r=t.slice(3);return r?Et(e.state,r):e.state??{}}if(t.startsWith("~/")){const r=e.state?.root||e.state,f=t.slice(2);return f?Et(r,f):r??{}}if(e.state?.[t]!==void 0)return e.state[t];const s=Et(e.state,t);if(s!=null&&Object.keys(s).length>0)return s;const n=e.context?.polyglot;if(n?.translations){const r=e.state?.root?.lang||n.defaultLang||"en",f=n.translations[r];if(f?.[t]!==void 0)return f[t];if(n.translations[t]!==void 0)return n.translations[t]}return{}}const No=new Set(["s","state","ctx","context"]);function Ro(t){try{const s=Function.prototype.toString.call(t).match(/^[^(]*\(([^)]*)\)/);return s?s[1].split(",").map(n=>n.trim().split("=")[0].trim()).filter(Boolean):[]}catch{return[]}}function Mo(t){if(typeof t!="function"||t.length!==2)return!1;const e=Ro(t);if(e.length<2)return!1;const s=e[1].replace(/[{}[\]]/g,"").trim();return s.length>0&&!No.has(s)}function $o(t){const e=t.__ref,s=t.tag||"div",n=t.context?.designSystem,r=[],f=Object.keys(t);for(let o=0;o<f.length;o++){const c=f[o];if(typeof t[c]!="function"||U.REGISTRY.has(c))continue;const u=c.charCodeAt(0);u>=65&&u<=90||z(c)||A.CSS_PROPS_REGISTRY[c]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(c)||(0,S.checkAttributeByTagName)(s,c)||((0,q.isLoudDevRuntime)()&&Mo(t[c])&&console.warn(`[smbls] custom prop "${c}"${t.key?` on key "${t.key}"`:""} is a function \u2014 it will be auto-invoked on read and its RETURN VALUE stored, not preserved as a callable reference. If you meant to stash a callback, use el.call('${c}', \u2026) instead of reading el.${c}(\u2026) directly (see RULES.md Rule 8).`),r.push({prop:c,fn:t[c]}))}for(let o=0;o<r.length;o++){const{prop:c,fn:u}=r[o];e.__exec[c]=u,Object.defineProperty(t,c,{get(){n&&(0,w.pushConfig)(n);try{return u(t,t.state,t.context)}catch{return}finally{n&&(0,w.popConfig)()}},set(a){delete e.__exec[c],Object.defineProperty(t,c,{value:a,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}}function Fo(t,e){if(!(!Array.isArray(e)||e.length===0))for(let s=0;s<e.length;s++){const n=e[s];try{typeof n=="function"?n(t,t.state,t.context):typeof n=="string"&&t.state?.[n]}catch{}}}function N(t,e,s){return!Array.isArray(e)||e.length===0?s:function(...n){return Fo(t,e),s.apply(this,n)}}function ft(t,e){if(!(!t||Array.isArray(t)||typeof t!="object"))return t[e]}function k(t,e){return()=>t.path.join(".")+"::"+e}const Wt=new Set;function F(t,e,s){if(!(0,q.isLoudDevRuntime)())return;const n=k(t,e)();Wt.has(n)||(Wt.add(n),console.warn(`[smbls] "${e}" effect threw on ${t.path.join(".")} \u2014 keeping previous value:`,s?.message||s))}function zt(t,e){const s=t.__ref,n=!!(e&&e.skipIfEffect);if($o(t),typeof t.text=="function"){const o=t.text,c=N(t,t.textDeps,o),u=(0,j.createEffect)(()=>{if(!s.contentManaged)try{let a=c(t,t.state,t.context);t.node&&a!=null&&typeof a!="function"&&typeof a!="object"&&(typeof a=="string"&&a.includes("{{")&&(a=D.replaceLiteralsWithObjectFields.call(t,a,t.state)),ut(t,a))}catch(a){F(s,"text",a)}},{depth:s.path.length,label:k(s,"text")});s.__effects.push(u),s.__exec.text=o}else if(typeof t.text=="string"&&t.text.includes("{{")){const o=t.text,c=(0,j.createEffect)(()=>{if(s.contentManaged)return;const u=D.replaceLiteralsWithObjectFields.call(t,o,t.state);u!=null&&(t.text=u),t.node&&ut(t,u??"")},{depth:s.path.length,label:k(s,"text")});s.__effects.push(c),s.__exec.text=o}for(const o of Object.keys(t))if(typeof t[o]=="function"&&!U.REGISTRY.has(o)&&!z(o)&&!s.__exec[o]){if(A.CSS_PROPS_REGISTRY[o]){const c=t[o],u=N(t,t[o+"Deps"],c),a=o;let d,i=null,l=null,y;const _=(0,j.createEffect)(()=>{const g=t.context?.designSystem;g&&(0,w.pushConfig)(g);try{const h=u(t,t.state,t.context);(0,A.pushStaticCssPass)();let p;try{p=A.CSS_PROPS_REGISTRY[a](h,t,t.state,t.context)}finally{(0,A.popStaticCssPass)()}if(Array.isArray(p)){const b={};for(const v of p)if(v)for(const C in v)b[C]=v[C];p=b}const x=a==="show"||a==="hide";if(p&&t.node&&Io(p)){const b=yt(p);if(b===null||b!==y){y=b;const v=(0,W.css)(p,null,t.context?.cssPrefix),C=v?v.split(" ").filter(Boolean):null;if(t.node.classList){if(l)for(const E of l)t.node.classList.remove(E);if(C&&C.length)for(const E of C)t.node.classList.add(E);l=C}}d=void 0,i=null}else if(p&&t.node){if(l){for(const v of l)t.node.classList.remove(v);l=null,y=void 0}const b=yt(p);(b===null||b!==d||!_t(t.node,i))&&(d=b,m(t.node,p),i=ht(t.node,p))}else if(t.node&&x){d=void 0,i=null;const b=s.__explicitDisplay;t.node.style.display=typeof b=="string"?b:""}}finally{g&&(0,w.popConfig)()}},{depth:s.path.length,label:k(s,a)});s.__effects.push(_),s.__exec[o]=c}else if(A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(o)){const c=t[o],u=N(t,t[o+"Deps"],c),a=o;let d,i=null;const l=(0,j.createEffect)(()=>{const y=t.context?.designSystem;y&&(0,w.pushConfig)(y);try{const _=u(t,t.state,t.context);if(t.node)if(_!=null){const g=a+":"+String(_);if(g!==d||!_t(t.node,i)){d=g;const h={[a]:_};m(t.node,h),i=ht(t.node,h)}}else d=void 0,i=null,t.node.style[a]=""}finally{y&&(0,w.popConfig)()}},{depth:s.path.length,label:k(s,a)});s.__effects.push(l),s.__exec[o]=c}}if(typeof t.html=="function"){const o=t.html,c=N(t,t.htmlDeps,o),u=(0,j.createEffect)(()=>{const a=t.context?.designSystem;a&&(0,w.pushConfig)(a);try{const d=c(t,t.state,t.context);t.node&&d!=null&&typeof d!="function"&&(t.node.innerHTML=d)}finally{a&&(0,w.popConfig)()}},{depth:s.path.length,label:k(s,"html")});s.__effects.push(u),s.__exec.html=o}if(typeof t.value=="function"){const o=t.value,c=N(t,t.valueDeps,o),u=(0,j.createEffect)(()=>{try{let a=c(t,t.state,t.context);typeof a=="string"&&a.includes("{{")&&(a=D.replaceLiteralsWithObjectFields.call(t,a,t.state)),qt(t,a)}catch(a){F(s,"value",a)}},{depth:s.path.length,label:k(s,"value")});s.__effects.push(u),s.__exec.value=o}else if(typeof t.value=="string"&&t.value.includes("{{")){const o=t.value,c=(0,j.createEffect)(()=>{try{qt(t,D.replaceLiteralsWithObjectFields.call(t,o,t.state))}catch(u){F(s,"value",u)}},{depth:s.path.length,label:k(s,"value")});s.__effects.push(c),s.__exec.value=o}if(typeof t.style=="function"){const o=t.style,c=N(t,t.styleDeps,o);let u,a=null;const d=(0,j.createEffect)(()=>{const i=c(t,t.state,t.context),l=yt(i);(l===null||l!==u||!_t(t.node,a))&&(u=l,m(t.node,i),a=ht(t.node,i))},{depth:s.path.length,label:k(s,"style")});s.__effects.push(d),s.__exec.style=o}else if(t.style&&typeof t.style=="object")for(const o in t.style){const c=t.style[o];if(typeof c!="function")continue;const u=N(t,ft(t.styleDeps,o),c);let a,d=null;const i=(0,j.createEffect)(()=>{try{const l=u(t,t.state,t.context);if(t.node){const y=o+":"+String(l);if(y!==a||!_t(t.node,d)){a=y;const _={[o]:l};m(t.node,_),d=ht(t.node,_)}}}catch(l){F(s,"style."+o,l)}},{depth:s.path.length,label:k(s,"style."+o)});s.__effects.push(i)}if(t.attr&&typeof t.attr=="object"){for(const o in t.attr)if(typeof t.attr[o]=="function"){const c=N(t,ft(t.attrDeps,o),t.attr[o]),u=o,a=(0,j.createEffect)(()=>{try{let d=c(t,t.state,t.context);typeof d=="string"&&d.includes("{{")&&(d=D.replaceLiteralsWithObjectFields.call(t,d,t.state)),t.node?.setAttribute&&(d==null||d===!1&&!(0,S.isEnumeratedTrueFalseAttr)(u)?t.node.removeAttribute(u):typeof d!="function"&&typeof d!="object"&&t.node.setAttribute(u,(0,S.serializeAttrValue)(u,d)))}catch(d){F(s,"attr."+u,d)}},{depth:s.path.length,label:k(s,"attr."+u)});a._attrName=u.toLowerCase(),s.__effects.push(a)}else if(typeof t.attr[o]=="string"&&t.attr[o].includes("{{")){const c=t.attr[o],u=o,a=(0,j.createEffect)(()=>{try{const d=D.replaceLiteralsWithObjectFields.call(t,c,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(u,(0,S.serializeAttrValue)(u,d??""))}catch(d){F(s,"attr."+u,d)}},{depth:s.path.length,label:k(s,"attr."+u)});a._attrName=u.toLowerCase(),s.__effects.push(a)}}if(t.aria&&typeof t.aria=="object")for(const o in t.aria){const c=t.aria[o];if(typeof c=="string"&&c.includes("{{")){const i=c,l="aria-"+o.replace(/[A-Z]/g,_=>"-"+_.toLowerCase()),y=(0,j.createEffect)(()=>{try{const _=D.replaceLiteralsWithObjectFields.call(t,i,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(l,(0,S.serializeAttrValue)(l,_??""))}catch(_){F(s,"aria."+o,_)}},{depth:s.path.length,label:k(s,"aria."+o)});y._attrName=l,s.__effects.push(y);continue}if(typeof c!="function")continue;const u=N(t,ft(t.ariaDeps,o),t.aria[o]),a="aria-"+o.replace(/[A-Z]/g,i=>"-"+i.toLowerCase()),d=(0,j.createEffect)(()=>{try{const i=u(t,t.state,t.context);if(!t.node?.setAttribute)return;i==null?t.node.removeAttribute(a):typeof i!="function"&&typeof i!="object"&&t.node.setAttribute(a,(0,S.serializeAttrValue)(a,i))}catch(i){F(s,"aria."+o,i)}},{depth:s.path.length,label:k(s,"aria."+o)});d._attrName=a,s.__effects.push(d)}if(t.data&&typeof t.data=="object")for(const o in t.data){const c=t.data[o];if(typeof c=="string"&&c.includes("{{")){const l=c,y="data-"+o.replace(/[A-Z]/g,g=>"-"+g.toLowerCase()),_=(0,j.createEffect)(()=>{try{const g=D.replaceLiteralsWithObjectFields.call(t,l,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(y,g??"")}catch(g){F(s,"data."+o,g)}},{depth:s.path.length,label:k(s,"data."+o)});_._attrName=y,s.__effects.push(_);continue}if(typeof c!="function")continue;const u=N(t,ft(t.dataDeps,o),t.data[o]),d="data-"+o.replace(/[A-Z]/g,l=>"-"+l.toLowerCase()),i=(0,j.createEffect)(()=>{try{const l=u(t,t.state,t.context);if(!t.node?.setAttribute)return;l==null||l===!1?t.node.removeAttribute(d):typeof l!="function"&&typeof l!="object"&&t.node.setAttribute(d,l===!0?"":l)}catch(l){F(s,"data."+o,l)}},{depth:s.path.length,label:k(s,"data."+o)});i._attrName=d,s.__effects.push(i)}const r=t.classlist&&typeof t.classlist=="object"&&!Array.isArray(t.classlist)?t.classlist:t.class&&typeof t.class=="object"&&!Array.isArray(t.class)?t.class:null;if(r)for(const o in r){if(typeof r[o]!="function")continue;const c=N(t,ft(t.classDeps,o),r[o]),u=(0,j.createEffect)(()=>{try{const a=c(t,t.state,t.context);if(!t.node?.classList)return;typeof a=="string"?t.node.classList.add(a):a?t.node.classList.add(o):t.node.classList.remove(o)}catch(a){F(s,"class."+o,a)}},{depth:s.path.length,label:k(s,"class."+o)});s.__effects.push(u)}!n&&typeof t.if=="function"&&Zt(t,s,t.if);for(const o of Object.keys(t)){if(U.REGISTRY.has(o)||typeof t[o]!="function")continue;const c=o.charCodeAt(0);if(c>=65&&c<=90||z(o))continue;const u=t[o];s.__exec[o]=u;const a=t.tag||"div";if((0,S.checkAttributeByTagName)(a,o)&&!A.CSS_PROPS_REGISTRY[o]&&!(A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(o))){const d=(0,S.camelToAttr)(o)||o,i=N(t,t[o+"Deps"],u),l=(0,j.createEffect)(()=>{try{let y=i(t,t.state,t.context);typeof y=="string"&&y.includes("{{")&&(y=D.replaceLiteralsWithObjectFields.call(t,y,t.state)),t.node?.setAttribute&&(y==null||y===!1&&!(0,S.isEnumeratedTrueFalseAttr)(d)?t.node.removeAttribute(d):typeof y!="function"&&typeof y!="object"&&(d==="src"&&"src"in t.node?t.node.src=y:t.node.setAttribute(d,(0,S.serializeAttrValue)(d,y))))}catch(y){F(s,o,y)}},{depth:s.path.length,label:k(s,o)});l._attrName=d.toLowerCase(),s.__effects.push(l)}}const f=t.tag||"div";for(const o of Object.keys(t)){if(U.REGISTRY.has(o))continue;const c=t[o];if(typeof c!="string"||!c.includes("{{"))continue;const u=o.charCodeAt(0);if(u>=65&&u<=90||z(o)||A.CSS_PROPS_REGISTRY[o]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(o)||S.ATTR_TRANSFORMS[o]||!(0,S.checkAttributeByTagName)(f,o))continue;const a=(0,S.camelToAttr)(o)||o,d=(0,j.createEffect)(()=>{try{const i=D.replaceLiteralsWithObjectFields.call(t,c,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(a,(0,S.serializeAttrValue)(a,i??""))}catch(i){F(s,o,i)}},{depth:s.path.length,label:k(s,o)});d._attrName=a.toLowerCase(),s.__effects.push(d)}if(Ko(t),Ho(t),typeof t.onStateUpdate=="function"&&Array.isArray(t.stateDeps)){const o=t.onStateUpdate,c=t.stateDeps;let u=!1,a=[];const d=(0,j.createEffect)(()=>{const i=[];for(let g=0;g<c.length;g++){const h=c[g];try{i[g]=typeof h=="function"?h(t,t.state,t.context):t.state?.[h]}catch{i[g]=void 0}}if(!u){u=!0,a=i;return}let l=i.length!==a.length;for(let g=0;!l&&g<i.length;g++)i[g]!==a[g]&&(l=!0);const y=a;if(a=i,!l)return;const _=t.context?.designSystem;_&&(0,w.pushConfig)(_);try{o(t,t.state,t.context,{prev:y,next:i})}catch(g){if(t.context?.plugins?.length&&(0,G.runPluginHook)("error",t,{hook:"onStateUpdate",error:g})||console.error('[DOMQL] Lifecycle "onStateUpdate" error:',g),t.context?.strictMode)throw g}finally{_&&(0,w.popConfig)()}},{depth:s.path.length,label:k(s,"onStateUpdate")});s.__effects.push(d)}Go(t)}function Yt(t){const e=t.parent,s=e?.node;if(!s||!t.node){ao(t,t.parent);return}let n=null;const r=Object.keys(e),f=r.indexOf(t.key);for(let o=f+1;o<r.length;o++){const c=e[r[o]];if(c?.node?.parentNode===s){n=c.node;break}}n?s.insertBefore(t.node,n):s.appendChild(t.node)}function Zt(t,e,s){const n=N(t,t.ifDeps,s),r=(0,j.createEffect)(()=>{let f;try{f=n(t,t.state,t.context)}catch(c){if(f=!1,e.__ifError=c,typeof console<"u"&&console.warn){const u=t.key||t.tag||"?";console.warn(`[smbls] \`if:\` reactive effect threw on ${u} \u2014 treating as false:`,c?.message||c)}return}const o=e.__if;if(e.__if=!!f,o&&!e.__if&&t.node){t.node.remove();try{typeof t.onRemove=="function"&&t.onRemove(t)}catch(c){console.error("[smbls] onRemove error:",c)}}else if(!o&&e.__if)if(e.__ifInitialized)t.node||(t.node=(0,Q.cacheNode)(t)),t.node&&(t.node.ref=t),Yt(t),Pt(t),$("Render",t,{}),kt(t,{});else{if(e.__ifInitialized=!0,t.tag||(t.tag=(0,Q.detectTag)(t)),$("Init",t,{}),t.node||(t.node=(0,Q.cacheNode)(t)),!t.node)return;if(t.parent?.__ref?.__children&&!t.parent.__ref.__children.includes(t.key)&&t.parent.__ref.__children.push(t.key),t.tag==="fragment"&&!e.__fragmentAnchor){const u=(t.context?.document||globalThis.document).createComment("");t.node.appendChild(u),e.__fragmentAnchor=u}$("AttachNode",t,{}),t.node.setAttribute&&t.key&&t.node.setAttribute("data-key",t.key),t.id&&t.node.setAttribute&&(t.node.id=t.id),co(t,{}),zt(t,{skipIfEffect:!0}),Pt(t),ro(t),fo(t,{}),Yt(t),$("Create",t,{}),$("Complete",t,{}),$("Render",t,{}),$("RenderRouter",t,{}),kt(t,{})}},{depth:e.path.length,label:k(e,"if")});e.__effects.push(r)}function ut(t,e){const s=t.node;if(!s)return;const n=e==null||typeof e=="object"?"":String(e);if(t.tag==="string"){s.nodeValue!==n&&(s.nodeValue=n);return}const r=t.__ref;let f=r?r.__textNode:null;if(f&&f.parentNode!==s&&(f=null),!f){const o=s.firstChild;o&&o.nodeType===3&&(f=o)}f?f.nodeValue!==n&&(f.nodeValue=n):s.firstChild?(f=(s.ownerDocument||t.context?.document||globalThis.document).createTextNode(n),s.insertBefore(f,s.firstChild)):(s.textContent=n,f=s.firstChild&&s.firstChild.nodeType===3?s.firstChild:null),r&&(r.__textNode=f||null)}function qt(t,e){const s=t.node;if(!s||!("value"in s))return;const n=e==null?"":String(e);if(s.value===n)return;const r=typeof document<"u"&&document.activeElement===s,f=r&&typeof s.selectionStart=="number"?s.selectionStart:null,o=r&&typeof s.selectionEnd=="number"?s.selectionEnd:null;if(s.value=n,r&&f!=null&&o!=null)try{s.setSelectionRange(f,o)}catch{}}function Pt(t){const{node:e}=t;if(e){if((typeof t.text=="string"&&!t.text.includes("{{")||typeof t.text=="number")&&ut(t,t.text),zo(t),typeof t.html=="string"&&(e.innerHTML=t.html),t.value!=null&&typeof t.value!="function"&&!(typeof t.value=="string"&&t.value.includes("{{"))&&"value"in e){const s=String(t.value);e.value!==s&&(e.value=s)}if(t.style&&typeof t.style=="object"){let s=t.style;for(const n in t.style)if(typeof t.style[n]=="function"){s={};for(const r in t.style)typeof t.style[r]!="function"&&(s[r]=t.style[r]);break}m(e,s)}if(t.attr&&typeof t.attr=="object")for(const s in t.attr){const n=t.attr[s];typeof n=="function"||typeof n=="object"||n!=null&&(typeof n=="string"&&n.includes("{{")||n===!1&&!(0,S.isEnumeratedTrueFalseAttr)(s)||e.setAttribute&&e.setAttribute(s,(0,S.serializeAttrValue)(s,n)))}if(t.data&&typeof t.data=="object")for(const s in t.data){const n=t.data[s];typeof n=="function"||typeof n=="object"||n==null||n===!1||typeof n=="string"&&n.includes("{{")||e.dataset&&(e.dataset[s]=n===!0?"":n)}if(t.classlist||t.class){const s=t.classlist||t.class;if(typeof s=="string")s.split(" ").forEach(n=>n&&e.classList.add(n));else if(typeof s=="object")for(const n in s){const r=typeof s[n]=="function"?s[n](t,t.state,t.context):s[n];r&&e.classList.add(typeof r=="string"?r:n)}}}}function yt(t){if(t==null||typeof t!="object")return"s:"+String(t);try{return"o:"+JSON.stringify(t)}catch{return null}}function Io(t){if(!t||typeof t!="object")return!1;for(const e in t){const s=t[e];if(s&&typeof s=="object"&&!Array.isArray(s))return!0}return!1}function ht(t,e){if(!t||!t.style||!e)return null;const s=t.style,n=[];for(const r in e){if(e[r]==null||r.charAt(0)==="&")continue;const o=r.replace(/[A-Z]/g,c=>"-"+c.toLowerCase());n.push(o,Qt(s,o),Xt(s,o))}return n}function Qt(t,e){return typeof t.getPropertyValue=="function"?t.getPropertyValue(e):""}function Xt(t,e){return typeof t.getPropertyPriority=="function"?t.getPropertyPriority(e):""}function _t(t,e){if(!e||!t||!t.style)return!1;const s=t.style;for(let n=0;n<e.length;n+=3)if(Qt(s,e[n])!==e[n+1]||Xt(s,e[n])!==e[n+2])return!1;return!0}const Tt=t=>t.charCodeAt(0)===45&&t.charCodeAt(1)===45;function m(t,e){if(!t||!e||!t.style)return;let s=null;for(const n in e){const r=e[n];if(r!=null){if(n.charAt(0)==="&"&&typeof r=="object"){s||(s={}),s[n]=r;continue}try{const f=String(r),o=Tt(n)?n:n.replace(/[A-Z]/g,d=>"-"+d.toLowerCase()),c=f.trim(),u=/\s*!important\s*$/.test(c),a=c.replace(/\s*!important\s*$/,"");t.style.setProperty(o,a,u?"important":"")}catch{}}}s&&Uo(t,s)}function Uo(t,e){const s=`_ds${Ut.scopedStyleId++}`;t.classList.add(s);const n=t.ownerDocument;let r=n.querySelector("style[data-smbls-scoped]");r||(r=n.createElement("style"),r.setAttribute("data-smbls-scoped",""),n.head.appendChild(r));let f="";for(const o in e){const c="."+s,u=o.replace(/&/g,c).split(",").map(d=>{const i=d.trim();return i.includes(c)?i:c+i}).join(", "),a=e[o];if(typeof a=="object"){let d="",i="";for(const l in a){const y=a[l];if(typeof y=="object"){const _=l.includes("&")?u.split(", ").map(h=>l.replace(/&/g,h)).join(", "):u.split(", ").map(h=>`${h} ${l}`).join(", ");let g="";for(const h in y)g+=`${h.replace(/[A-Z]/g,p=>"-"+p.toLowerCase())}: ${y[h]};`;i+=(0,W.wrapHoverRule)(`${_} { ${g} }`,_)+`
4
+ `):"")}}if(bt(o,!0),lo(o,e,r),typeof o.html=="function"&&o.node&&!o.node.innerHTML){const h=o.context?.designSystem;h&&(0,w.pushConfig)(h);try{const p=o.html(o,o.state,o.context);p!=null&&typeof p!="function"&&(o.node.innerHTML=p)}catch{}finally{h&&(0,w.popConfig)()}}if($("Create",o,n),$("Complete",o,n),$("Render",o,n),$("RenderRouter",o,n),kt(o,n),typeof o.onFrame=="function"){const h=o.onFrame,p=o.context?.designSystem,x=()=>{if(o.node){if(o.node.isConnected){p&&(0,w.pushConfig)(p);try{h(o,o.state,o.context)}catch(b){console.error("[DOMQL] onFrame error:",b)}finally{p&&(0,w.popConfig)()}}requestAnimationFrame(x)}};requestAnimationFrame(x)}return o}function $o(t,e,s){const n=!e,r=s.state&&typeof s.state=="object"&&!Array.isArray(s.state)&&Object.keys(s.state).length===0,f=n&&r&&t.context?.state,o=s.state!==void 0&&!f?s.state:t.state&&!(0,R.isStore)(t.state)?t.state:void 0;if(o==null){if(e?.state)t.state=e.state,(0,ot.applyStateMethods)(t,t.state);else if(t.context?.state){const c=t.context.state,u={...c},a=t.context?.polyglot;if(a?.translations){const d=t.context,i=c.lang||a.defaultLang||"en",l=new Set,y=(h,p)=>{l.has(h)||(0,D.isPolyglotWritableKey)(d,h,u)&&(u[h]=p,l.add(h),(0,D.markPolyglotSeeded)(d,h))},_=a.translations[i];if(_&&typeof _=="object")for(const h in _)y(h,_[h]);const g=new Set(a.languages||[]);for(const h in a.translations)g.has(h)||y(h,a.translations[h])}t.state=(0,R.isStore)(u)?u:(0,R.createStore)(u),t.state.__element=t,t.state.root=t.state,(0,ot.applyStateMethods)(t,t.state)}else t.state={},Object.defineProperty(t.state,"root",{value:t.state,enumerable:!1,configurable:!0,writable:!0}),(0,ot.applyStateMethods)(t,t.state);return}if(typeof o=="string"){if(t.state=zt(o,e),t.state&&typeof t.state=="object"&&!(0,R.isStore)(t.state)){const c=e?.state?.root||e?.state||t.state;Object.defineProperty(t.state,"root",{value:c,enumerable:!1,configurable:!0,writable:!0})}(0,ot.applyStateMethods)(t,t.state);return}if(typeof o=="function"){const c=o(t,e?.state);t.state=(0,R.isStore)(c)?c:(0,R.createStore)(c||{})}else(0,R.isStore)(o)?t.state=o:t.state=(0,R.createStore)({...o});t.state.__element=t,e?.state?(t.state.parent=e.state,t.state.root=e.state.root||e.state):t.state.root=t.state,(0,ot.applyStateMethods)(t,t.state)}function Et(t,e){if(!e)return t;const s=e.split("/");let n=t;for(const r of s){if(n==null)return{};n=n[r]}return n??{}}function zt(t,e){if(!e)return{};if(t===".")return e.state||{};if(t.startsWith("../")){const r=t.slice(3);return r?Et(e.state,r):e.state??{}}if(t.startsWith("~/")){const r=e.state?.root||e.state,f=t.slice(2);return f?Et(r,f):r??{}}if(e.state?.[t]!==void 0)return e.state[t];const s=Et(e.state,t);if(s!=null&&Object.keys(s).length>0)return s;const n=e.context?.polyglot;if(n?.translations){const r=e.state?.root?.lang||n.defaultLang||"en",f=n.translations[r];if(f?.[t]!==void 0)return f[t];if(n.translations[t]!==void 0)return n.translations[t]}return{}}const Fo=new Set(["s","state","ctx","context"]);function Io(t){try{const s=(typeof Bt.getFunctionSource=="function"?Bt.getFunctionSource(t):Function.prototype.toString.call(t)).match(/^[^(]*\(([^)]*)\)/);return s?s[1].split(",").map(n=>n.trim().split("=")[0].trim()).filter(Boolean):[]}catch{return[]}}function Uo(t){if(typeof t!="function"||t.length!==2)return!1;const e=Io(t);if(e.length<2)return!1;const s=e[1].replace(/[{}[\]]/g,"").trim();return s.length>0&&!Fo.has(s)}function Bo(t){const e=t.__ref,s=t.tag||"div",n=t.context?.designSystem,r=[],f=Object.keys(t);for(let o=0;o<f.length;o++){const c=f[o];if(typeof t[c]!="function"||U.REGISTRY.has(c))continue;const u=c.charCodeAt(0);u>=65&&u<=90||z(c)||A.CSS_PROPS_REGISTRY[c]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(c)||(0,S.checkAttributeByTagName)(s,c)||((0,q.isLoudDevRuntime)()&&Uo(t[c])&&console.warn(`[smbls] custom prop "${c}"${t.key?` on key "${t.key}"`:""} is a function \u2014 it will be auto-invoked on read and its RETURN VALUE stored, not preserved as a callable reference. If you meant to stash a callback, use el.call('${c}', \u2026) instead of reading el.${c}(\u2026) directly (see RULES.md Rule 8).`),r.push({prop:c,fn:t[c]}))}for(let o=0;o<r.length;o++){const{prop:c,fn:u}=r[o];e.__exec[c]=u,Object.defineProperty(t,c,{get(){n&&(0,w.pushConfig)(n);try{return u(t,t.state,t.context)}catch{return}finally{n&&(0,w.popConfig)()}},set(a){delete e.__exec[c],Object.defineProperty(t,c,{value:a,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}}function Ko(t,e){if(!(!Array.isArray(e)||e.length===0))for(let s=0;s<e.length;s++){const n=e[s];try{typeof n=="function"?n(t,t.state,t.context):typeof n=="string"&&t.state?.[n]}catch{}}}function N(t,e,s){return!Array.isArray(e)||e.length===0?s:function(...n){return Ko(t,e),s.apply(this,n)}}function ft(t,e){if(!(!t||Array.isArray(t)||typeof t!="object"))return t[e]}function k(t,e){return()=>t.path.join(".")+"::"+e}const Yt=new Set;function F(t,e,s){if(!(0,q.isLoudDevRuntime)())return;const n=k(t,e)();Yt.has(n)||(Yt.add(n),console.warn(`[smbls] "${e}" effect threw on ${t.path.join(".")} \u2014 keeping previous value:`,s?.message||s))}function Zt(t,e){const s=t.__ref,n=!!(e&&e.skipIfEffect);if(Bo(t),typeof t.text=="function"){const o=t.text,c=N(t,t.textDeps,o),u=(0,j.createEffect)(()=>{if(!s.contentManaged)try{let a=c(t,t.state,t.context);t.node&&a!=null&&typeof a!="function"&&typeof a!="object"&&(typeof a=="string"&&a.includes("{{")&&(a=D.replaceLiteralsWithObjectFields.call(t,a,t.state)),ut(t,a))}catch(a){F(s,"text",a)}},{depth:s.path.length,label:k(s,"text")});s.__effects.push(u),s.__exec.text=o}else if(typeof t.text=="string"&&t.text.includes("{{")){const o=t.text,c=(0,j.createEffect)(()=>{if(s.contentManaged)return;const u=D.replaceLiteralsWithObjectFields.call(t,o,t.state);u!=null&&(t.text=u),t.node&&ut(t,u??"")},{depth:s.path.length,label:k(s,"text")});s.__effects.push(c),s.__exec.text=o}for(const o of Object.keys(t))if(typeof t[o]=="function"&&!U.REGISTRY.has(o)&&!z(o)&&!s.__exec[o]){if(A.CSS_PROPS_REGISTRY[o]){const c=t[o],u=N(t,t[o+"Deps"],c),a=o;let d,i=null,l=null,y;const _=(0,j.createEffect)(()=>{const g=t.context?.designSystem;g&&(0,w.pushConfig)(g);try{const h=u(t,t.state,t.context);(0,A.pushStaticCssPass)();let p;try{p=A.CSS_PROPS_REGISTRY[a](h,t,t.state,t.context)}finally{(0,A.popStaticCssPass)()}if(Array.isArray(p)){const b={};for(const v of p)if(v)for(const C in v)b[C]=v[C];p=b}const x=a==="show"||a==="hide";if(p&&t.node&&Vo(p)){const b=ht(p);if(b===null||b!==y){y=b;const v=(0,W.css)(p,null,t.context?.cssPrefix),C=v?v.split(" ").filter(Boolean):null;if(t.node.classList){if(l)for(const E of l)t.node.classList.remove(E);if(C&&C.length)for(const E of C)t.node.classList.add(E);l=C}}d=void 0,i=null}else if(p&&t.node){if(l){for(const v of l)t.node.classList.remove(v);l=null,y=void 0}const b=ht(p);(b===null||b!==d||!gt(t.node,i))&&(d=b,m(t.node,p),i=_t(t.node,p))}else if(t.node&&x){d=void 0,i=null;const b=s.__explicitDisplay;t.node.style.display=typeof b=="string"?b:""}}finally{g&&(0,w.popConfig)()}},{depth:s.path.length,label:k(s,a)});s.__effects.push(_),s.__exec[o]=c}else if(A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(o)){const c=t[o],u=N(t,t[o+"Deps"],c),a=o;let d,i=null;const l=(0,j.createEffect)(()=>{const y=t.context?.designSystem;y&&(0,w.pushConfig)(y);try{const _=u(t,t.state,t.context);if(t.node)if(_!=null){const g=a+":"+String(_);if(g!==d||!gt(t.node,i)){d=g;const h={[a]:_};m(t.node,h),i=_t(t.node,h)}}else d=void 0,i=null,t.node.style[a]=""}finally{y&&(0,w.popConfig)()}},{depth:s.path.length,label:k(s,a)});s.__effects.push(l),s.__exec[o]=c}}if(typeof t.html=="function"){const o=t.html,c=N(t,t.htmlDeps,o),u=(0,j.createEffect)(()=>{const a=t.context?.designSystem;a&&(0,w.pushConfig)(a);try{const d=c(t,t.state,t.context);t.node&&d!=null&&typeof d!="function"&&(t.node.innerHTML=d)}finally{a&&(0,w.popConfig)()}},{depth:s.path.length,label:k(s,"html")});s.__effects.push(u),s.__exec.html=o}if(typeof t.value=="function"){const o=t.value,c=N(t,t.valueDeps,o),u=(0,j.createEffect)(()=>{try{let a=c(t,t.state,t.context);typeof a=="string"&&a.includes("{{")&&(a=D.replaceLiteralsWithObjectFields.call(t,a,t.state)),Xt(t,a)}catch(a){F(s,"value",a)}},{depth:s.path.length,label:k(s,"value")});s.__effects.push(u),s.__exec.value=o}else if(typeof t.value=="string"&&t.value.includes("{{")){const o=t.value,c=(0,j.createEffect)(()=>{try{Xt(t,D.replaceLiteralsWithObjectFields.call(t,o,t.state))}catch(u){F(s,"value",u)}},{depth:s.path.length,label:k(s,"value")});s.__effects.push(c),s.__exec.value=o}if(typeof t.style=="function"){const o=t.style,c=N(t,t.styleDeps,o);let u,a=null;const d=(0,j.createEffect)(()=>{const i=c(t,t.state,t.context),l=ht(i);(l===null||l!==u||!gt(t.node,a))&&(u=l,m(t.node,i),a=_t(t.node,i))},{depth:s.path.length,label:k(s,"style")});s.__effects.push(d),s.__exec.style=o}else if(t.style&&typeof t.style=="object")for(const o in t.style){const c=t.style[o];if(typeof c!="function")continue;const u=N(t,ft(t.styleDeps,o),c);let a,d=null;const i=(0,j.createEffect)(()=>{try{const l=u(t,t.state,t.context);if(t.node){const y=o+":"+String(l);if(y!==a||!gt(t.node,d)){a=y;const _={[o]:l};m(t.node,_),d=_t(t.node,_)}}}catch(l){F(s,"style."+o,l)}},{depth:s.path.length,label:k(s,"style."+o)});s.__effects.push(i)}if(t.attr&&typeof t.attr=="object"){for(const o in t.attr)if(typeof t.attr[o]=="function"){const c=N(t,ft(t.attrDeps,o),t.attr[o]),u=o,a=(0,j.createEffect)(()=>{try{let d=c(t,t.state,t.context);typeof d=="string"&&d.includes("{{")&&(d=D.replaceLiteralsWithObjectFields.call(t,d,t.state)),t.node?.setAttribute&&(d==null||d===!1&&!(0,S.isEnumeratedTrueFalseAttr)(u)?t.node.removeAttribute(u):typeof d!="function"&&typeof d!="object"&&t.node.setAttribute(u,(0,S.serializeAttrValue)(u,d)))}catch(d){F(s,"attr."+u,d)}},{depth:s.path.length,label:k(s,"attr."+u)});a._attrName=u.toLowerCase(),s.__effects.push(a)}else if(typeof t.attr[o]=="string"&&t.attr[o].includes("{{")){const c=t.attr[o],u=o,a=(0,j.createEffect)(()=>{try{const d=D.replaceLiteralsWithObjectFields.call(t,c,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(u,(0,S.serializeAttrValue)(u,d??""))}catch(d){F(s,"attr."+u,d)}},{depth:s.path.length,label:k(s,"attr."+u)});a._attrName=u.toLowerCase(),s.__effects.push(a)}}if(t.aria&&typeof t.aria=="object")for(const o in t.aria){const c=t.aria[o];if(typeof c=="string"&&c.includes("{{")){const i=c,l="aria-"+o.replace(/[A-Z]/g,_=>"-"+_.toLowerCase()),y=(0,j.createEffect)(()=>{try{const _=D.replaceLiteralsWithObjectFields.call(t,i,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(l,(0,S.serializeAttrValue)(l,_??""))}catch(_){F(s,"aria."+o,_)}},{depth:s.path.length,label:k(s,"aria."+o)});y._attrName=l,s.__effects.push(y);continue}if(typeof c!="function")continue;const u=N(t,ft(t.ariaDeps,o),t.aria[o]),a="aria-"+o.replace(/[A-Z]/g,i=>"-"+i.toLowerCase()),d=(0,j.createEffect)(()=>{try{const i=u(t,t.state,t.context);if(!t.node?.setAttribute)return;i==null?t.node.removeAttribute(a):typeof i!="function"&&typeof i!="object"&&t.node.setAttribute(a,(0,S.serializeAttrValue)(a,i))}catch(i){F(s,"aria."+o,i)}},{depth:s.path.length,label:k(s,"aria."+o)});d._attrName=a,s.__effects.push(d)}if(t.data&&typeof t.data=="object")for(const o in t.data){const c=t.data[o];if(typeof c=="string"&&c.includes("{{")){const l=c,y="data-"+o.replace(/[A-Z]/g,g=>"-"+g.toLowerCase()),_=(0,j.createEffect)(()=>{try{const g=D.replaceLiteralsWithObjectFields.call(t,l,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(y,g??"")}catch(g){F(s,"data."+o,g)}},{depth:s.path.length,label:k(s,"data."+o)});_._attrName=y,s.__effects.push(_);continue}if(typeof c!="function")continue;const u=N(t,ft(t.dataDeps,o),t.data[o]),d="data-"+o.replace(/[A-Z]/g,l=>"-"+l.toLowerCase()),i=(0,j.createEffect)(()=>{try{const l=u(t,t.state,t.context);if(!t.node?.setAttribute)return;l==null||l===!1?t.node.removeAttribute(d):typeof l!="function"&&typeof l!="object"&&t.node.setAttribute(d,l===!0?"":l)}catch(l){F(s,"data."+o,l)}},{depth:s.path.length,label:k(s,"data."+o)});i._attrName=d,s.__effects.push(i)}const r=t.classlist&&typeof t.classlist=="object"&&!Array.isArray(t.classlist)?t.classlist:t.class&&typeof t.class=="object"&&!Array.isArray(t.class)?t.class:null;if(r)for(const o in r){if(typeof r[o]!="function")continue;const c=N(t,ft(t.classDeps,o),r[o]),u=(0,j.createEffect)(()=>{try{const a=c(t,t.state,t.context);if(!t.node?.classList)return;typeof a=="string"?t.node.classList.add(a):a?t.node.classList.add(o):t.node.classList.remove(o)}catch(a){F(s,"class."+o,a)}},{depth:s.path.length,label:k(s,"class."+o)});s.__effects.push(u)}!n&&typeof t.if=="function"&&Qt(t,s,t.if);for(const o of Object.keys(t)){if(U.REGISTRY.has(o)||typeof t[o]!="function")continue;const c=o.charCodeAt(0);if(c>=65&&c<=90||z(o))continue;const u=t[o];s.__exec[o]=u;const a=t.tag||"div";if((0,S.checkAttributeByTagName)(a,o)&&!A.CSS_PROPS_REGISTRY[o]&&!(A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(o))){const d=(0,S.camelToAttr)(o)||o,i=N(t,t[o+"Deps"],u),l=(0,j.createEffect)(()=>{try{let y=i(t,t.state,t.context);typeof y=="string"&&y.includes("{{")&&(y=D.replaceLiteralsWithObjectFields.call(t,y,t.state)),t.node?.setAttribute&&(y==null||y===!1&&!(0,S.isEnumeratedTrueFalseAttr)(d)?t.node.removeAttribute(d):typeof y!="function"&&typeof y!="object"&&(d==="src"&&"src"in t.node?t.node.src=y:t.node.setAttribute(d,(0,S.serializeAttrValue)(d,y))))}catch(y){F(s,o,y)}},{depth:s.path.length,label:k(s,o)});l._attrName=d.toLowerCase(),s.__effects.push(l)}}const f=t.tag||"div";for(const o of Object.keys(t)){if(U.REGISTRY.has(o))continue;const c=t[o];if(typeof c!="string"||!c.includes("{{"))continue;const u=o.charCodeAt(0);if(u>=65&&u<=90||z(o)||A.CSS_PROPS_REGISTRY[o]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(o)||S.ATTR_TRANSFORMS[o]||!(0,S.checkAttributeByTagName)(f,o))continue;const a=(0,S.camelToAttr)(o)||o,d=(0,j.createEffect)(()=>{try{const i=D.replaceLiteralsWithObjectFields.call(t,c,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(a,(0,S.serializeAttrValue)(a,i??""))}catch(i){F(s,o,i)}},{depth:s.path.length,label:k(s,o)});d._attrName=a.toLowerCase(),s.__effects.push(d)}if(Wo(t),Zo(t),typeof t.onStateUpdate=="function"&&Array.isArray(t.stateDeps)){const o=t.onStateUpdate,c=t.stateDeps;let u=!1,a=[];const d=(0,j.createEffect)(()=>{const i=[];for(let g=0;g<c.length;g++){const h=c[g];try{i[g]=typeof h=="function"?h(t,t.state,t.context):t.state?.[h]}catch{i[g]=void 0}}if(!u){u=!0,a=i;return}let l=i.length!==a.length;for(let g=0;!l&&g<i.length;g++)i[g]!==a[g]&&(l=!0);const y=a;if(a=i,!l)return;const _=t.context?.designSystem;_&&(0,w.pushConfig)(_);try{o(t,t.state,t.context,{prev:y,next:i})}catch(g){if(t.context?.plugins?.length&&(0,G.runPluginHook)("error",t,{hook:"onStateUpdate",error:g})||console.error('[DOMQL] Lifecycle "onStateUpdate" error:',g),t.context?.strictMode)throw g}finally{_&&(0,w.popConfig)()}},{depth:s.path.length,label:k(s,"onStateUpdate")});s.__effects.push(d)}Yo(t)}function qt(t){const e=t.parent,s=e?.node;if(!s||!t.node){lo(t,t.parent);return}let n=null;const r=Object.keys(e),f=r.indexOf(t.key);for(let o=f+1;o<r.length;o++){const c=e[r[o]];if(c?.node?.parentNode===s){n=c.node;break}}n?s.insertBefore(t.node,n):s.appendChild(t.node)}function Qt(t,e,s){const n=N(t,t.ifDeps,s),r=(0,j.createEffect)(()=>{let f;try{f=n(t,t.state,t.context)}catch(c){if(f=!1,e.__ifError=c,typeof console<"u"&&console.warn){const u=t.key||t.tag||"?";console.warn(`[smbls] \`if:\` reactive effect threw on ${u} \u2014 treating as false:`,c?.message||c)}return}const o=e.__if;if(e.__if=!!f,o&&!e.__if&&t.node){t.node.remove();try{typeof t.onRemove=="function"&&t.onRemove(t)}catch(c){console.error("[smbls] onRemove error:",c)}}else if(!o&&e.__if)if(e.__ifInitialized)t.node||(t.node=(0,Q.cacheNode)(t)),t.node&&(t.node.ref=t),qt(t),Pt(t),$("Render",t,{}),kt(t,{});else{if(e.__ifInitialized=!0,t.tag||(t.tag=(0,Q.detectTag)(t)),$("Init",t,{}),t.node||(t.node=(0,Q.cacheNode)(t)),!t.node)return;if(t.parent?.__ref?.__children&&!t.parent.__ref.__children.includes(t.key)&&t.parent.__ref.__children.push(t.key),t.tag==="fragment"&&!e.__fragmentAnchor){const u=(t.context?.document||globalThis.document).createComment("");t.node.appendChild(u),e.__fragmentAnchor=u}$("AttachNode",t,{}),t.node.setAttribute&&t.key&&t.node.setAttribute("data-key",t.key),t.id&&t.node.setAttribute&&(t.node.id=t.id),ao(t,{}),Zt(t,{skipIfEffect:!0}),Pt(t),co(t),uo(t,{}),qt(t),$("Create",t,{}),$("Complete",t,{}),$("Render",t,{}),$("RenderRouter",t,{}),kt(t,{})}},{depth:e.path.length,label:k(e,"if")});e.__effects.push(r)}function ut(t,e){const s=t.node;if(!s)return;const n=e==null||typeof e=="object"?"":String(e);if(t.tag==="string"){s.nodeValue!==n&&(s.nodeValue=n);return}const r=t.__ref;let f=r?r.__textNode:null;if(f&&f.parentNode!==s&&(f=null),!f){const o=s.firstChild;o&&o.nodeType===3&&(f=o)}f?f.nodeValue!==n&&(f.nodeValue=n):s.firstChild?(f=(s.ownerDocument||t.context?.document||globalThis.document).createTextNode(n),s.insertBefore(f,s.firstChild)):(s.textContent=n,f=s.firstChild&&s.firstChild.nodeType===3?s.firstChild:null),r&&(r.__textNode=f||null)}function Xt(t,e){const s=t.node;if(!s||!("value"in s))return;const n=e==null?"":String(e);if(s.value===n)return;const r=typeof document<"u"&&document.activeElement===s,f=r&&typeof s.selectionStart=="number"?s.selectionStart:null,o=r&&typeof s.selectionEnd=="number"?s.selectionEnd:null;if(s.value=n,r&&f!=null&&o!=null)try{s.setSelectionRange(f,o)}catch{}}function Pt(t){const{node:e}=t;if(e){if((typeof t.text=="string"&&!t.text.includes("{{")||typeof t.text=="number")&&ut(t,t.text),Qo(t),typeof t.html=="string"&&(e.innerHTML=t.html),t.value!=null&&typeof t.value!="function"&&!(typeof t.value=="string"&&t.value.includes("{{"))&&"value"in e){const s=String(t.value);e.value!==s&&(e.value=s)}if(t.style&&typeof t.style=="object"){let s=t.style;for(const n in t.style)if(typeof t.style[n]=="function"){s={};for(const r in t.style)typeof t.style[r]!="function"&&(s[r]=t.style[r]);break}m(e,s)}if(t.attr&&typeof t.attr=="object")for(const s in t.attr){const n=t.attr[s];typeof n=="function"||typeof n=="object"||n!=null&&(typeof n=="string"&&n.includes("{{")||n===!1&&!(0,S.isEnumeratedTrueFalseAttr)(s)||e.setAttribute&&e.setAttribute(s,(0,S.serializeAttrValue)(s,n)))}if(t.data&&typeof t.data=="object")for(const s in t.data){const n=t.data[s];typeof n=="function"||typeof n=="object"||n==null||n===!1||typeof n=="string"&&n.includes("{{")||e.dataset&&(e.dataset[s]=n===!0?"":n)}if(t.classlist||t.class){const s=t.classlist||t.class;if(typeof s=="string")s.split(" ").forEach(n=>n&&e.classList.add(n));else if(typeof s=="object")for(const n in s){const r=typeof s[n]=="function"?s[n](t,t.state,t.context):s[n];r&&e.classList.add(typeof r=="string"?r:n)}}}}function ht(t){if(t==null||typeof t!="object")return"s:"+String(t);try{return"o:"+JSON.stringify(t)}catch{return null}}function Vo(t){if(!t||typeof t!="object")return!1;for(const e in t){const s=t[e];if(s&&typeof s=="object"&&!Array.isArray(s))return!0}return!1}function _t(t,e){if(!t||!t.style||!e)return null;const s=t.style,n=[];for(const r in e){if(e[r]==null||r.charAt(0)==="&")continue;const o=r.replace(/[A-Z]/g,c=>"-"+c.toLowerCase());n.push(o,Jt(s,o),mt(s,o))}return n}function Jt(t,e){return typeof t.getPropertyValue=="function"?t.getPropertyValue(e):""}function mt(t,e){return typeof t.getPropertyPriority=="function"?t.getPropertyPriority(e):""}function gt(t,e){if(!e||!t||!t.style)return!1;const s=t.style;for(let n=0;n<e.length;n+=3)if(Jt(s,e[n])!==e[n+1]||mt(s,e[n])!==e[n+2])return!1;return!0}const Tt=t=>t.charCodeAt(0)===45&&t.charCodeAt(1)===45;function m(t,e){if(!t||!e||!t.style)return;let s=null;for(const n in e){const r=e[n];if(r!=null){if(n.charAt(0)==="&"&&typeof r=="object"){s||(s={}),s[n]=r;continue}try{const f=String(r),o=Tt(n)?n:n.replace(/[A-Z]/g,d=>"-"+d.toLowerCase()),c=f.trim(),u=/\s*!important\s*$/.test(c),a=c.replace(/\s*!important\s*$/,"");t.style.setProperty(o,a,u?"important":"")}catch{}}}s&&Go(t,s)}function Go(t,e){const s=`_ds${Kt.scopedStyleId++}`;t.classList.add(s);const n=t.ownerDocument;let r=n.querySelector("style[data-smbls-scoped]");r||(r=n.createElement("style"),r.setAttribute("data-smbls-scoped",""),n.head.appendChild(r));let f="";for(const o in e){const c="."+s,u=o.replace(/&/g,c).split(",").map(d=>{const i=d.trim();return i.includes(c)?i:c+i}).join(", "),a=e[o];if(typeof a=="object"){let d="",i="";for(const l in a){const y=a[l];if(typeof y=="object"){const _=l.includes("&")?u.split(", ").map(h=>l.replace(/&/g,h)).join(", "):u.split(", ").map(h=>`${h} ${l}`).join(", ");let g="";for(const h in y)g+=`${h.replace(/[A-Z]/g,p=>"-"+p.toLowerCase())}: ${y[h]};`;i+=(0,W.wrapHoverRule)(`${_} { ${g} }`,_)+`
5
5
  `}else d+=`${l.replace(/[A-Z]/g,_=>"-"+_.toLowerCase())}: ${y};`}d&&(f+=(0,W.wrapHoverRule)(`${u} { ${d} }`,u)+`
6
- `),i&&(f+=i)}}f&&(r.textContent+=f)}const Jt=new Set;function mt(t){if(!Array.isArray(t))return"";const e=[];for(let s=0;s<t.length;s++)typeof t[s]=="string"&&t[s].length&&e.push(t[s]);return e.sort(),e.join("|")}function Bo(t,e,s){const n=mt(s);queueMicrotask(()=>{if(!t.__ref)return;let r;try{r=e(t,t.state,t.context)}catch{return}if(mt(r)===n)return;const f=t.__ref.path?t.__ref.path.join("."):t.key||"?";Jt.has(f)||(Jt.add(f),console.warn(`[smbls] subscribeTo function at "${f}" resolved to a DIFFERENT key list one microtask after create \u2014 wired [${s.join(", ")||"(none)"}], probed [${Array.isArray(r)?r.join(", "):String(r)}]. subscribeTo's function form is resolved ONCE at element-create time (registerSubscribeToEffects, @symbo.ls/element create.js) \u2014 this element stays wired to the ORIGINAL list for its whole lifetime, so this drift is invisible to the reactive effect and any key only present in the new list will never trigger onUpdate. If the watched key genuinely is not known until later (e.g. a module config that loads after shell boot), route the write through an imperative call instead of subscribeTo \u2014 see functions/moduleOpenBridge.js's moduleOpenPage (workspace repo) for the house pattern.`))})}function Ko(t){const e=t.subscribeTo,s=typeof e=="function";let n=e;if(s)try{n=e(t,t.state,t.context)}catch{n=null}if(s&&(0,q.isLoudDevRuntime)()&&Bo(t,e,Array.isArray(n)?n:[]),!Array.isArray(n)||n.length===0)return;const r=t.__ref;for(let f=0;f<n.length;f++){const o=n[f];if(typeof o!="string"||o.length===0)continue;const c=o.split("."),u=c[0],a=c.slice(1),d={value:!1},i=(0,j.createEffect)(()=>{const l=t.state&&((0,R.isStore)(t.state)?t.state.root:null);if(!l||!(0,R.isStore)(l))return;let y=l;y=y[u];for(let g=0;g<a.length&&!(y==null||typeof y!="object");g++)if((0,R.isStore)(y))y=y[a[g]];else break;if(!d.value)return;let _=!1;if(typeof t.onBeforeUpdate=="function"){const g=t.context?.designSystem;g&&(0,w.pushConfig)(g);try{if(ho(r)){const h=t.onBeforeUpdate(t,t.state,t.context,{updateBySubscription:!0});h&&typeof h.then=="function"?h.then(()=>dt(r,!1),p=>{dt(r,!0),t.context?.plugins?.length&&(0,G.runPluginHook)("error",t,{hook:"onBeforeUpdate",error:p})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",p)}):(dt(r,!1),h===!1&&(_=!0))}}catch(h){dt(r,!0),t.context?.plugins?.length&&(0,G.runPluginHook)("error",t,{hook:"onBeforeUpdate",error:h})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",h)}finally{g&&(0,w.popConfig)()}}if(!_&&t.node&&r.__effects)for(let g=0;g<r.__effects.length;g++){const h=r.__effects[g];h&&h!==i&&!h._disposed&&!h._isSubscribeToEffect&&typeof h._execute=="function"&&h._execute()}if(!_&&typeof t.onUpdate=="function"){const g=t.context?.designSystem;g&&(0,w.pushConfig)(g);try{t.onUpdate(t,t.state,t.context)}catch(h){t.context?.plugins?.length&&(0,G.runPluginHook)("error",t,{hook:"onUpdate",error:h})||console.error("[DOMQL] subscribeTo onUpdate error:",h)}finally{g&&(0,w.popConfig)()}}},{depth:r.path.length,label:k(r,"subscribeTo("+o+")")});d.value=!0,i._isSubscribeToEffect=!0,r.__effects.push(i)}}function Lt(t,e){return t.charCodeAt(0)===64&&t.length>1&&!t.startsWith("@media")&&!t.startsWith("@keyframes")&&!t.startsWith("@supports")&&!t.startsWith("@container")&&(t==="@dark"||t==="@light"||!e.context?.designSystem?.media?.[t.slice(1)])}function Dt(t,e){if(t.charCodeAt(0)!==64||/^@(media|supports|container|keyframes)\b/.test(t))return t;const s=e.context?.designSystem?.media?.[t.slice(1)];return s?/^@(media|supports|container)\b/.test(s)?s:`@media ${s}`:t}const to=new Set;function Vo(t,e){const s=e?.__ref?.path?e.__ref.path.join("."):e?.key||"?",n=s+"::"+t;to.has(n)||(to.add(n),console.warn(`[smbls/css] "${t}" at ${s} is a CHILD-COMPONENT key nested inside a pseudo/selector block (":hover", "@dark", etc.) \u2014 that is never a valid CSS selector fragment. The rule is DROPPED (not shipped as a dead/never-matching selector). To reveal a child on a parent state, target the child's OWN class from the parent selector instead, e.g. move the declaration onto the child element itself, or use a sibling-selector combinator in a top-level style block.`))}function tt(t,e,s){const n={},r=new Set,f=(o,c,u)=>{const a=u?new Set(Object.keys(n)):null;if(A.CSS_PROPS_REGISTRY[o]){const d=A.CSS_PROPS_REGISTRY[o](c,e,e.state,e.context);if(d){const i=Array.isArray(d)?d:[d];for(const l of i)l&&Object.assign(n,l)}}else n[o]=c;if(u)for(const d in n)a.has(d)||r.add(d)};for(const o in t){if(!Object.prototype.hasOwnProperty.call(t,o))continue;let c=t[o];if(typeof c=="function"&&(c=c(e,e.state,e.context)),c==null||typeof c=="function")continue;if(typeof c=="object"&&!Array.isArray(c)){if(o==="style"){for(const i in c){let l=c[i];if(typeof l=="function"&&(l=l(e,e.state,e.context)),l==null||typeof l=="function")continue;const y=typeof e[i]=="function"&&(A.CSS_PROPS_REGISTRY[i]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(i));f(i,l,y)}continue}if(Lt(o,e)){const i=tt(c,e,!1);Object.keys(i).length&&(n[`[data-theme="${o.slice(1)}"] &`]=i);continue}if(/^[A-Z][A-Za-z0-9]*$/.test(o)){(0,q.isLoudDevRuntime)()&&Vo(o,e);continue}const a=Dt(o,e),d=tt(c,e,!1);Object.keys(d).length&&(n[a]=d);continue}const u=typeof e[o]=="function"&&(A.CSS_PROPS_REGISTRY[o]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(o));f(o,c,u)}if(s)for(const o in n)r.add(o);for(const o of r){const c=n[o];typeof c=="string"&&!c.includes("!important")&&(n[o]=c+" !important")}return n}function Ot(t,e){if(e===void 0&&(e=0),e>8)return!1;if(typeof t=="function")return!0;if(t&&typeof t=="object"&&!Array.isArray(t)){for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)&&Ot(t[s],e+1))return!0}return!1}function oo(t,e,s){if(!e||typeof e!="object"||Array.isArray(e))return null;if(Lt(t,s)){const f=tt(e,s,!1);return Object.keys(f).length?{cssProp:`[data-theme="${t.slice(1)}"] &`,block:f}:null}const n=Dt(t,s),r=tt(e,s,!1);return Object.keys(r).length?{cssProp:n,block:r}:null}function Go(t){const e=t.__ref;for(const s of Object.keys(t)){if(!jt(s))continue;const n=t[s];if(!n||typeof n!="object"||Array.isArray(n)||!Ot(n))continue;let r=null,f;const o=(0,j.createEffect)(()=>{if(!t.node)return;const c=t.context?.designSystem;c&&(0,w.pushConfig)(c);let u,a=!1;try{const d=oo(s,n,t),i=d?yt(d.block)+"::"+d.cssProp:null;if(i!==null&&i===f)a=!0;else if(f=i,d){const l=(0,W.css)({[d.cssProp]:d.block},null,t.context?.cssPrefix);u=l?l.split(" ").filter(Boolean):null}else u=null}finally{c&&(0,w.popConfig)()}if(!(a||!t.node.classList)){if(r)for(const d of r)t.node.classList.remove(d);if(u&&u.length)for(const d of u)t.node.classList.add(d);r=u}},{depth:e.path.length,label:k(e,"cssBlock("+s+")")});e.__effects.push(o)}}function Ho(t){const e=t.__ref;e.__conditionalRunners=[];const s=new Map;for(const n of Object.keys(t)){const r=n.charAt(0);if(r!=="."&&r!=="!")continue;const f=n.slice(1);if(!f)continue;if(/[:@\s>~+[\]]/.test(f)){if(typeof console<"u"&&console.warn){const y=f.split(/[:@\s>~+[\]]/)[0];console.warn(`[smbls] conditional \`${n}\` on ${t.key||"?"} will never match \u2014 the whole string after \`${r}\` is read as one prop name. Nest the selector inside instead: \`${r}${y}: { '${f.slice(y.length)}': {...} }\`.`)}continue}const o=t[n];if(!o||typeof o!="object")continue;const c=r==="!",u={lastMatch:!1,appliedKeys:null,appliedClasses:null},a=()=>{let y;const _=t[f];if(_===void 0){const p=!!t.state&&f in t.state,x=t.state?t.state[f]:void 0;if(p||x!==void 0)y=x;else{const b=t.context?.cases?.[f];if(b===void 0)return;try{y=typeof b=="function"?b.call(t,t):b}catch(v){y=!1,e.__conditionalError=v,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` case fn threw on ${t.key||"?"} \u2014 treating as false:`,v?.message||v)}}}else if(typeof _=="function")try{y=_(t,t.state,t.context)}catch(p){y=!1,e.__conditionalError=p,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` predicate threw on ${t.key||"?"} \u2014 treating as false:`,p?.message||p)}else y=_;const g=c?!y:!!y;if(!t.node||g===u.lastMatch)return;u.lastMatch=g;const h=t.context?.designSystem;h&&(0,w.pushConfig)(h);try{if(g){const p={},x={};let b=!1;for(const C in o){if(!Object.prototype.hasOwnProperty.call(o,C))continue;const E=o[C],Z=C.charAt(0);if((Z===":"||Z==="@"||Z==="&"||Z==="[")&&E&&typeof E=="object"&&!Array.isArray(E)){if(Lt(C,t)){const L=tt(E,t,!1);Object.keys(L).length&&(x[`[data-theme="${C.slice(1)}"] &`]=L,b=!0)}else{const L=Dt(C,t),O=tt(E,t,!1);Object.keys(O).length&&(x[L]=O,b=!0)}continue}const X=typeof E=="function"?E(t,t.state,t.context):E;if(X!=null)if(A.CSS_PROPS_REGISTRY[C]){const L=A.CSS_PROPS_REGISTRY[C](X,t,t.state,t.context);if(L){const O=Array.isArray(L)?L:[L];for(const et of O)et&&Object.assign(p,et)}}else(A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(C)||Tt(C))&&(p[C]=X)}const v=Object.keys(p);if(v.length){m(t.node,p);for(const C of v)s.set(C,n);u.appliedKeys=v}else u.appliedKeys=null;if(b){const C=(0,W.css)(x,null,t.context?.cssPrefix),E=C?C.split(" ").filter(Boolean):[];if(E.length&&t.node.classList){for(const Z of E)t.node.classList.add(Z);u.appliedClasses=E}else u.appliedClasses=null}else if(u.appliedClasses){for(const C of u.appliedClasses)t.node.classList.remove(C);u.appliedClasses=null}}else{if(u.appliedKeys){for(const p of u.appliedKeys)s.get(p)===n&&(Tt(p)?t.node.style.removeProperty(p):t.node.style[p]="",s.delete(p));u.appliedKeys=null}if(u.appliedClasses){for(const p of u.appliedClasses)t.node.classList.remove(p);u.appliedClasses=null}}}finally{h&&(0,w.popConfig)()}};e.__conditionalRunners.push(a);const d=N(t,t[f+"Deps"],a),i=(0,j.createEffect)(d,{depth:e.path.length,label:k(e,"conditional("+n+")")}),l=e.__exec&&e.__exec[f]||t[f];i._sources.size===0&&typeof l=="function"&&(0,q.isLoudDevRuntime)()&&console.warn(`[smbls] conditional \`${n}\` on ${t.key||"?"} subscribed to nothing \u2014 its predicate tracked no reactive read on its first run, so no state write will ever re-evaluate it (only a direct element.update() on this element re-runs it). If the predicate guards its state reads (\`in\`, short-circuits, \`?.\`), declare \`${f}Deps: [...]\` (state-key strings or \`(el, s) => \u2026\` selectors) so the subscription is armed unconditionally.`),e.__effects.push(i)}}const Nt=new WeakSet;function Wo(t){const e=t.ownerDocument;!e||Nt.has(e)||(Nt.add(e),queueMicrotask(()=>{Nt.delete(e);const s=e.body||e.documentElement;s&&s.offsetWidth}))}const Rt=new WeakSet;let so=!1;function eo(t){return t.startsWith("[data-theme=")||t.startsWith("@media")&&t.includes("prefers-color-scheme")}function Mt(t,e){const s={...t};for(const n in e){const r=e[n],f=s[n];s[n]=r&&typeof r=="object"&&f&&typeof f=="object"?Mt(f,r):r}return s}function no(t,e){const s={};for(const n in t){const r=t[n];if(r&&typeof r=="object"){const f=no(r,e);Object.keys(f).length&&(s[n]=f)}else e.has(n)||(s[n]=r)}return s}function zo(t){const{node:e}=t;if(!e)return;if(so||(so=!0,(0,W.css)({display:"none"})),Rt.has(t)){console.error("[applyCssInProps] re-entry detected for element",t.key,"prop path:",t.__ref?.path);return}Rt.add(t);const s=t.context?.designSystem;s&&(0,w.pushConfig)(s),(0,A.pushStaticCssPass)();try{const n={};let r=!1,f=null,o=null,c=null;const u=(a,d)=>{if(d&&typeof d=="object"&&eo(a)){o||(o={});const i=o[a];i&&(d=Mt(i,d)),o[a]=d}else(d===null||typeof d!="object")&&(c||(c=new Set),c.add(a));n[a]=d};if(Object.prototype.hasOwnProperty.call(t,"theme")&&typeof t.theme!="function"&&A.CSS_PROPS_REGISTRY.theme){const a=A.CSS_PROPS_REGISTRY.theme(t.theme,t,t.state,t.context);if(a){const d=i=>{for(const l in i){const y=i[l];y&&typeof y=="object"&&eo(l)&&(f||(f={}),f[l]=y),n[l]=y}};if(Array.isArray(a))for(const i of a)i&&d(i);else d(a);r=!0}}for(const a of Object.keys(t)){if(typeof t[a]=="function"||U.REGISTRY.has(a)||a==="theme")continue;const d=a.charCodeAt(0);if(!(d>=65&&d<=90)&&!z(a)){if(A.CSS_PROPS_REGISTRY[a]){const i=t[a],l=A.CSS_PROPS_REGISTRY[a](i,t,t.state,t.context);if(l){if(Array.isArray(l)){for(const y of l)if(y)for(const _ in y)u(_,y[_])}else for(const y in l)u(y,l[y]);r=!0}}else if(A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(a)){const i=t[a];i!=null&&typeof i!="object"&&(u(a,i),r=!0)}else if(a.charCodeAt(0)===45){const i=t[a];i!=null&&typeof i!="object"&&(u(a,i),r=!0)}else if(a.charAt(0)==="&"||a.charAt(0)==="@"||a.charAt(0)===":"||a.charAt(0)==="["){const i=t[a];if(i&&typeof i=="object"&&!Array.isArray(i)){if(Ot(i))continue;const l=oo(a,i,t);l&&(u(l.cssProp,l.block),r=!0)}}}}if(f)for(const a in f){let d=c?no(f[a],c):f[a];o&&o[a]&&(d=Mt(d,o[a])),Object.keys(d).length?n[a]=d:delete n[a]}if(r){n.display&&String(n.display).includes("!important")&&(e.style.setProperty("display",String(n.display).replace(/\s*!important\s*$/,""),"important"),delete n.display);const a=(0,W.css)(n,null,t.context?.cssPrefix);if(a&&e.classList){const i=a.split(" ").filter(Boolean);let l=!1;for(const y of i)e.classList.add(y),l||(y.charCodeAt(0)===95&&y.charCodeAt(1)===99||y.charCodeAt(0)===95&&y.indexOf("_c",1)!==-1)&&(l=!0);l&&Wo(e)}const d=t.display!=null&&typeof t.display!="function"?t.display:t.hide===!0||t.show===!1?"none":null;if(d!=null){const i=n.display;if(i&&i!==d)if(d==="none"){const l=[];for(const y of e.classList)y.startsWith("_d-")&&y!=="_d-none"&&l.push(y);for(const y of l)e.classList.remove(y);e.classList.add("_d-none")}else e.style.display==="none"&&(typeof t.hide=="function"||typeof t.show=="function")||(e.style.display=t.display),t.__ref&&(t.__ref.__explicitDisplay=t.display)}}}finally{(0,A.popStaticCssPass)(),s&&(0,w.popConfig)(),Rt.delete(t)}}function ro(t){const{node:e}=t;if(!e||!e.setAttribute)return;if(t.aria&&typeof t.aria=="object")for(const r in t.aria){const f=t.aria[r];if(typeof f=="function"||typeof f=="object"||f==null||typeof f=="string"&&f.includes("{{"))continue;const o="aria-"+r.replace(/[A-Z]/g,c=>"-"+c.toLowerCase());e.setAttribute(o,(0,S.serializeAttrValue)(o,f))}const s=(0,S.applyAttrTransforms)(t);for(const r in s){const f=s[r];f!=null&&f!==!1&&typeof f!="function"&&typeof f!="object"&&e.setAttribute(r,f===!0?"":f)}const n=t.tag||"div";for(const r of Object.keys(t)){if(typeof t[r]=="function"||U.REGISTRY.has(r)||r==="on"||s[r]!==void 0)continue;const f=r.charCodeAt(0);if(!(f>=65&&f<=90)&&!z(r)&&!(A.CSS_PROPS_REGISTRY[r]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(r))&&(0,S.checkAttributeByTagName)(n,r)){let o=t[r];if(o==null)continue;if(typeof o=="string"&&o.includes("{{")){if(!S.ATTR_TRANSFORMS[r])continue;o=D.replaceLiteralsWithObjectFields.call(t,o,t.state)}if(o==null||typeof o=="function"||typeof o=="object"||o===!1&&!(0,S.isEnumeratedTrueFalseAttr)((0,S.camelToAttr)(r)||r))continue;const c=(0,S.camelToAttr)(r)||r;e.setAttribute(c,(0,S.serializeAttrValue)(c,o))}}}function Yo(t,e){const{node:s}=t;if(!s||!s.setAttribute)return;const n=e.charCodeAt(0);if(n>=65&&n<=90||z(e)||A.CSS_PROPS_REGISTRY[e]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(e)||!(0,S.checkAttributeByTagName)(t.tag||"div",e))return;const r=(0,S.camelToAttr)(e)||e,f=r.toLowerCase(),o=t.__ref&&t.__ref.__effects;let c=!1;if(o)for(let d=0;d<o.length;d++){const i=o[d];i&&i._attrName===f&&!i._disposed&&typeof i._execute=="function"&&(c=!0,i._execute())}if(c)return;let u=t[e];const a=S.ATTR_TRANSFORMS[e];if(a&&u!=null){const d=a(t);d!==void 0&&(u=d)}typeof u=="string"&&u.includes("{{")&&(u=D.replaceLiteralsWithObjectFields.call(t,u,t.state)),u==null||u===!1&&!(0,S.isEnumeratedTrueFalseAttr)(r)?s.removeAttribute(r):typeof u!="function"&&typeof u!="object"&&s.setAttribute(r,(0,S.serializeAttrValue)(r,u))}function Zo(t,e){const s=t.node,n=t.__ref;let r=n.__autoGrow;if(!e){if(r&&r.active){try{s.removeEventListener("input",r.resize)}catch{}s.style.height="",r.appliedMax!=null&&s.style.maxHeight===r.appliedMax&&(s.style.maxHeight=""),r.active=!1,r.appliedMax=null,r.lastMeasure=0}return}r||(r=n.__autoGrow={active:!1,appliedMax:null,lastMeasure:0,resize:()=>{if(s.scrollHeight===0&&r.lastMeasure>0)return;s.style.height="auto";const o=s.scrollHeight;s.style.height=o+"px",o>0&&(r.lastMeasure=o)}},n.__eventCleanup||(n.__eventCleanup=[]),n.__eventCleanup.push(()=>{try{s.removeEventListener("input",r.resize)}catch{}})),r.active||(s.addEventListener("input",r.resize),r.active=!0);const f=typeof e=="object"&&e.max!=null?String(e.max):null;f!==r.appliedMax&&(f==null?r.appliedMax!=null&&s.style.maxHeight===r.appliedMax&&(s.style.maxHeight=""):s.style.maxHeight=f,r.appliedMax=f),r.resize()}function qo(t){if(!t.autoGrow)return;const e=t.node;if(!e||e.tagName!=="TEXTAREA")return;const s=t.__ref,n=t.autoGrow,r=typeof n=="function"?N(t,t.autoGrowDeps,n):null,f=(0,j.createEffect)(()=>{const o=t.autoGrow;let c=o;if(typeof o=="function")try{c=(o===n&&r?r:o)(t,t.state,t.context)}catch{c=null}Zo(t,c)},{depth:s.path.length,label:k(s,"autoGrow")});s.__effects||(s.__effects=[]),s.__effects.push(f),r&&(s.__exec.autoGrow=n)}const io=new Set(["onSwipe","onSwipeLeft","onSwipeRight","onSwipeUp","onSwipeDown"]);function co(t,e){for(const s of Object.keys(t)){if(!z(s)||io.has(s))continue;const n=(0,st.globalEventKeyInfo)(s);if(n){(0,st.registerGlobalEvent)(n,t,t[s]);continue}let r=t[s];if(typeof r=="string"&&/^[A-Za-z_$][\w$]*$/.test(r)){const o=r;r=function(u){return t.call(o,u)}}if(typeof r!="function")continue;const f=Lo(s);U.LIFECYCLE_EVENTS.has(f)||(0,st.registerEvent)(Do(f),t,r)}Qo(t)}function Qo(t){const e=t.node;if(!e||!e.addEventListener)return;const s={};let n=!1;for(const l of io){const y=t[l];typeof y=="function"&&(s[l]=y,n=!0)}if(!n)return;const r=typeof t.swipeThreshold=="number"?t.swipeThreshold:40,f=typeof t.swipeMaxDuration=="number"?t.swipeMaxDuration:600;let o=0,c=0,u=0,a=!1;const d=l=>{const y=l.touches&&l.touches[0]||l.changedTouches&&l.changedTouches[0];y&&(o=y.clientX,c=y.clientY,u=Date.now(),a=!0)},i=l=>{if(!a)return;a=!1;const y=l.changedTouches&&l.changedTouches[0]||l.touches&&l.touches[0];if(!y)return;const _=y.clientX-o,g=y.clientY-c,h=Date.now()-u;if(h>f)return;const p=Math.abs(_),x=Math.abs(g);if(Math.max(p,x)<r)return;let b;if(p>x*1.2)b=_<0?"left":"right";else if(x>p*1.2)b=g<0?"up":"down";else return;const v="onSwipe"+b.charAt(0).toUpperCase()+b.slice(1),C=s[v],E=s.onSwipe;C&&C.call(t,l,t,t.state,t.context),E&&E.call(t,{direction:b,dx:_,dy:g,dt:h,event:l},t,t.state,t.context)};e.addEventListener("touchstart",d,{passive:!0}),e.addEventListener("touchend",i,{passive:!0}),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{e.removeEventListener("touchstart",d)}catch{}try{e.removeEventListener("touchend",i)}catch{}})}function at(t,e){const s={...t};for(const n in e){const r=s[n],f=e[n];r&&f&&typeof r=="object"&&typeof f=="object"&&!Array.isArray(r)&&!Array.isArray(f)&&typeof r!="function"&&typeof f!="function"?s[n]=at(r,f):s[n]=f}return s}function $t(t,e,s,n){if(!e||!t.node)return;const r=t.childExtends;if(Array.isArray(e)){const f=t.tag==="fragment",o=t.context?.document||globalThis.document,c=f?null:o?.createDocumentFragment();if(!f&&!c)return;const u=t.childProps,a=t.childrenAs,d=h=>{let p=e[h];const x=p;(typeof p=="string"||typeof p=="number")&&(p={text:p});let b=u;if(typeof u=="function")try{b=u(t,p)}catch{b=null}if(a==="state"){let C=x;(typeof x=="string"||typeof x=="number")&&(C={value:x,text:x}),p=b?{...b,state:C}:{state:C}}else b&&(p=at(b,p));if(r&&!p.ignoreChildExtends)if(p.extends){const C=Array.isArray(p.extends)?p.extends:[p.extends],E=Array.isArray(r)?r:[r];p={...p,extends:[...E,...C]}}else p={...p,extends:r};const v=Gt(p?.key,x,h);try{return Y(p,t,v,s)}catch(C){if(typeof console<"u"&&console.error){const E=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${v}" failed to construct at ${E} (initial render, skipping this row):`,C?.message||C)}return null}},i=t.__ref;if(!(n===!0&&!f&&!!i&&(s?.mountYield===!0||t.yieldChildren===!0))){for(let h=0;h<e.length;h++){const p=d(h);!f&&p?.node&&c.appendChild(p.node)}return f||t.node.appendChild(c),!0}const y=i.__childrenChunkGen=(i.__childrenChunkGen||0)+1;(0,B.openMountBudget)();let _=null;const g=h=>{if(i.__disposed||i.__childrenChunkGen!==y){_&&_.parentNode&&_.remove();return}for(let p=h;p<e.length;p++){const x=d(p);if(x?.node&&(_?t.node.insertBefore(x.node,_):c.appendChild(x.node)),p+1<e.length&&(0,B.mountBudgetExhausted)()){_||(_=o.createComment("smbls-mount"),c.appendChild(_),t.node.appendChild(c));const b=p+1;(0,B.enqueueMountWork)(()=>g(b));return}}_?(_.remove(),t.node.tagName==="SELECT"&&gt(t,!0)):t.node.appendChild(c)};return g(0),(0,B.closeMountBudget)(),!0}if(typeof e=="string"){const f=Ht(e,t);if(Array.isArray(f))return $t(t,f,s,n)}if(typeof e=="object")for(const f in e){if(U.REGISTRY.has(f))continue;let o=e[f];if(!(o==null||o===!1)){if((typeof o=="string"||typeof o=="number")&&(o={text:o}),t.childProps&&(o=at(t.childProps,o)),r&&!o.ignoreChildExtends)if(o.extends){const c=Array.isArray(o.extends)?o.extends:[o.extends],u=Array.isArray(r)?r:[r];o={...o,extends:[...u,...c]}}else o={...o,extends:r};Y(o,t,f,s)}}}function gt(t,e){const s=t.node;if(!s||s.tagName!=="SELECT")return;const n=s.options;if(!n||!n.length)return;const r=t.__ref,f=r&&r.__exec&&r.__exec.value,o=typeof f=="function",c=t.value!=null&&typeof t.value!="function";if(o||c){let d;if(o)try{d=f(t,t.state,t.context)}catch{return}else d=t.value,typeof d=="string"&&d.includes("{{")&&(d=D.replaceLiteralsWithObjectFields.call(t,d,t.state));const i=d==null?"":String(d);s.value!==i&&(s.value=i);return}const u=e||!(r&&r.__selectSynced);if(r&&(r.__selectSynced=!0),!u)return;let a=-1;for(let d=0;d<n.length;d++)n[d].defaultSelected&&(a=d);a>=0&&s.selectedIndex!==a&&(s.selectedIndex=a)}function fo(t,e){let{children:s,content:n}=t;const r=t.childExtends;if(typeof s=="function"){const i=s;try{s=i(t,t.state,t.context)}catch(h){if(s=void 0,typeof console<"u"&&console.error){const p=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${p} (initial run, treating as empty):`,h?.message||h)}}t.children=s;const l=t.__ref;let y=!1;const _=N(t,t.childrenDeps,i),g=(0,j.createEffect)(()=>{const h=y;y=!0;let p;try{p=_(t,t.state,t.context)}catch(L){if(typeof console<"u"&&console.error){const O=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${O}${h?"":" (initial tracking run)"}:`,L?.message||L)}return}if(!h||p===t.children)return;t.children=p,l.__childrenChunkGen!=null&&l.__childrenChunkGen++;const x=typeof t.onContentUpdate=="function",b=x?[]:null,v=x?[]:null,C=x?[]:null;if(Array.isArray(p)&&t.childrenAs==="state"){const L=t.childProps,O=[],et=new Map;for(let P=0;P<p.length;P++){const K=p[P];let T=L;if(typeof L=="function")try{T=L(t,K)}catch{T=null}const H=Gt(T&&T.key,K,P);O.push(H),et.set(H,{rawChild:K,childProps:T})}const _o=new Set(O),go=l.__children.slice();for(const P of go)if(!_o.has(P)){const K=t[P];K?.remove&&K.remove(),delete t[P],v&&v.push(P)}const nt=t.childExtends,lt=t.tag==="fragment",bo=t.context?.document||globalThis.document,rt=lt?null:bo?.createDocumentFragment(),At=new Set;for(const P of O){const K=et.get(P),T=K.rawChild,H=t[P];if(H&&H.state){if(T&&typeof T=="object"){const M=H.state,J=M.$replace||M.replace,It=M.$update||M.update;try{if(typeof J=="function")J.call(M,T);else if(typeof It=="function"){for(const I in M)if(!(I==="__element"||I==="root"||I==="parent"||I==="update")&&!Object.prototype.hasOwnProperty.call(T,I))try{M[I]=void 0}catch{}It.call(M,T)}else for(const I in T)M[I]=T[I]}catch(I){if(typeof console<"u"&&console.error){const xo=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${P}" failed to patch at ${xo} (reconcile, keeping its previous data for this pass):`,I?.message||I)}}}C&&C.push(P);continue}let Ct=T;(typeof T=="string"||typeof T=="number")&&(Ct={value:T,text:T});const Ft=K.childProps;let V=Ft?{...Ft,state:Ct}:{state:Ct};if(nt&&!V.ignoreChildExtends)if(V.extends){const M=Array.isArray(V.extends)?V.extends:[V.extends],J=Array.isArray(nt)?nt:[nt];V={...V,extends:[...J,...M]}}else V={...V,extends:nt};let vt;try{vt=Y(V,t,P,e)}catch(M){if(typeof console<"u"&&console.error){const J=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${P}" failed to construct at ${J} (reconcile, skipping this row):`,M?.message||M)}At.add(P);continue}!lt&&vt?.node&&rt&&rt.appendChild(vt.node),b&&b.push(P)}if(!lt&&rt&&rt.childNodes.length&&t.node&&t.node.appendChild(rt),!lt&&t.node){let P=null;for(const K of O){const T=t[K]?.node;if(!T)continue;const H=P?P.nextSibling:t.node.firstChild;T!==H&&t.node.insertBefore(T,H),P=T}}l.__children=At.size?O.filter(P=>!At.has(P)):O,x&&(b.length||v.length)&&Vt(t,{added:b,removed:v,kept:C}),gt(t,!1);return}const X=x?[...l.__children]:null;for(const L of[...l.__children]){const O=t[L];O?.remove&&O.remove(),delete t[L]}l.__children=[],$t(t,p,e),gt(t,!1),x&&Vt(t,{added:[...l.__children],removed:X,kept:[]})},{depth:l.path.length,label:k(l,"children")});l.__effects.push(g)}const f=$t(t,s,e,!0);if(n!=null&&!(n&&n.__ref)){let i=n;if(typeof i=="string"||typeof i=="number"?i={text:i}:typeof i!="object"&&(i={}),t.childProps&&(i=at(t.childProps,i)),r&&!i.ignoreChildExtends)if(i.extends){const l=Array.isArray(i.extends)?i.extends:[i.extends],y=Array.isArray(r)?r:[r];i={...i,extends:[...y,...l]}}else i={...i,extends:r};Y(i,t,"content",e)}if(s&&!f)return;const o=t.context?.components||{};{const i=Object.keys(t);for(let l=0;l<i.length;l++){const y=i[l];if(!y.endsWith("Extends")||typeof t[y]!="string")continue;const _=y.slice(0,-7);if(!_||_.charCodeAt(0)<65||_.charCodeAt(0)>90)continue;const g={extends:t[y]};delete t[y];for(let h=l+1;h<i.length;h++){const p=i[h],x=p.charCodeAt(0);if(x>=65&&x<=90||U.REGISTRY.has(p)||typeof t[p]=="function"&&(p.startsWith("on")||p.startsWith(".")))break;const b=t[p];b!==void 0&&(g[p]=b,delete t[p])}t[_]&&typeof t[_]=="object"?t[_]={...g,...t[_]}:t[_]=g}}const c=e?.mountYield===!0||t.yieldChildren===!0,u=Object.keys(t),a=i=>{if(U.REGISTRY.has(i)||typeof t[i]!="object"||t[i]===null)return;const l=i.charCodeAt(0);if(l<65||l>90)return;let y=t[i];if(!y.__ref){if(!y.extends&&!y.extend){const _=o[i]||o[`smbls.${i}`];_&&(y={...y,extends:_})}if(t.childProps&&(y=at(t.childProps,y)),r&&!y.ignoreChildExtends)if(y.extends){const _=Array.isArray(y.extends)?y.extends:[y.extends],g=Array.isArray(r)?r:[r];y={...y,extends:[...g,..._]}}else y={...y,extends:r};Y(y,t,i,e)}};if(!c){for(const i of u)a(i);return}(0,B.openMountBudget)();const d=i=>{for(let l=i;l<u.length;l++)if(a(u[l]),l+1<u.length&&(0,B.mountBudgetExhausted)()){const y=l+1;(0,B.enqueueMountWork)(()=>d(y));return}};d(0),(0,B.closeMountBudget)()}function ao(t,e,s){const{node:n}=t;if(!n)return;n.ref=t;const r=e?.tag==="fragment"?e.__ref?.__fragmentAnchor:null;if(r){const o=r.parentNode;if(o){if(s?.position==="before"&&s.node)o.insertBefore(n,s.node);else if(s?.position==="after"&&s.node){const c=s.node.nextSibling;o.insertBefore(n,c||r)}else o.insertBefore(n,r);return}}const f=e?.node||(e?.nodeType?e:null);if(f)if(s?.position==="before"&&s.node)f.insertBefore(n,s.node);else if(s?.position==="after"&&s.node){const o=s.node.nextSibling;o?f.insertBefore(n,o):f.appendChild(n)}else f.appendChild(n)}const xt=3;function ho(t){return!t||t.__inBeforeUpdate||(t.__beforeUpdateFailCount||0)>=xt?!1:(t.__inBeforeUpdate=!0,!0)}function dt(t,e){t&&(t.__inBeforeUpdate=!1,e?(t.__beforeUpdateFailCount=(t.__beforeUpdateFailCount||0)+1,t.__beforeUpdateFailCount===xt&&typeof console<"u"&&console.error&&console.error(`[DOMQL] onBeforeUpdate failed ${xt}x in a row on this element \u2014 pausing automatic retries until a future prop/state change re-arms it.`)):t.__beforeUpdateFailCount=0)}function $(t,e,s){const n=t.charAt(0).toLowerCase()+t.slice(1);e.context?.plugins?.length&&(0,G.runPluginHook)(n,e,s);const r="on"+t,f=e[r];if(typeof f=="function"){const u=t==="Render"?"__inRender":t==="RenderRouter"?"__inRenderRouter":null;if(u){if(e.__ref[u])return!0;e.__ref[u]=!0}const a=e.context?.designSystem;a&&(0,w.pushConfig)(a);let d=!!u;try{const i=f(e,e.state,e.context,s);if(i&&typeof i.then=="function"){const l=e.__ref;return i.catch(y=>{e.context?.plugins?.length&&(0,G.runPluginHook)("error",e,{hook:r,error:y})||console.error(`[DOMQL] Lifecycle "${r}" error:`,y)}).finally(()=>{u&&l&&(l[u]=!1)}),d=!1,!0}if(i===!1)return!1}catch(i){if(e.context?.plugins?.length&&(0,G.runPluginHook)("error",e,{hook:r,error:i})||console.error(`[DOMQL] Lifecycle "${r}" error:`,i),e.context?.strictMode)throw i}finally{a&&(0,w.popConfig)(),d&&e.__ref&&(e.__ref[u]=!1)}}return!0}var Xo=Y;
6
+ `),i&&(f+=i)}}f&&(r.textContent+=f)}const to=new Set;function oo(t){if(!Array.isArray(t))return"";const e=[];for(let s=0;s<t.length;s++)typeof t[s]=="string"&&t[s].length&&e.push(t[s]);return e.sort(),e.join("|")}function Ho(t,e,s){const n=oo(s);queueMicrotask(()=>{if(!t.__ref)return;let r;try{r=e(t,t.state,t.context)}catch{return}if(oo(r)===n)return;const f=t.__ref.path?t.__ref.path.join("."):t.key||"?";to.has(f)||(to.add(f),console.warn(`[smbls] subscribeTo function at "${f}" resolved to a DIFFERENT key list one microtask after create \u2014 wired [${s.join(", ")||"(none)"}], probed [${Array.isArray(r)?r.join(", "):String(r)}]. subscribeTo's function form is resolved ONCE at element-create time (registerSubscribeToEffects, @symbo.ls/element create.js) \u2014 this element stays wired to the ORIGINAL list for its whole lifetime, so this drift is invisible to the reactive effect and any key only present in the new list will never trigger onUpdate. If the watched key genuinely is not known until later (e.g. a module config that loads after shell boot), route the write through an imperative call instead of subscribeTo \u2014 see functions/moduleOpenBridge.js's moduleOpenPage (workspace repo) for the house pattern.`))})}function Wo(t){const e=t.subscribeTo,s=typeof e=="function";let n=e;if(s)try{n=e(t,t.state,t.context)}catch{n=null}if(s&&(0,q.isLoudDevRuntime)()&&Ho(t,e,Array.isArray(n)?n:[]),!Array.isArray(n)||n.length===0)return;const r=t.__ref;for(let f=0;f<n.length;f++){const o=n[f];if(typeof o!="string"||o.length===0)continue;const c=o.split("."),u=c[0],a=c.slice(1),d={value:!1},i=(0,j.createEffect)(()=>{const l=t.state&&((0,R.isStore)(t.state)?t.state.root:null);if(!l||!(0,R.isStore)(l))return;let y=l;y=y[u];for(let g=0;g<a.length&&!(y==null||typeof y!="object");g++)if((0,R.isStore)(y))y=y[a[g]];else break;if(!d.value)return;let _=!1;if(typeof t.onBeforeUpdate=="function"){const g=t.context?.designSystem;g&&(0,w.pushConfig)(g);try{if(go(r)){const h=t.onBeforeUpdate(t,t.state,t.context,{updateBySubscription:!0});h&&typeof h.then=="function"?h.then(()=>dt(r,!1),p=>{dt(r,!0),t.context?.plugins?.length&&(0,G.runPluginHook)("error",t,{hook:"onBeforeUpdate",error:p})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",p)}):(dt(r,!1),h===!1&&(_=!0))}}catch(h){dt(r,!0),t.context?.plugins?.length&&(0,G.runPluginHook)("error",t,{hook:"onBeforeUpdate",error:h})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",h)}finally{g&&(0,w.popConfig)()}}if(!_&&t.node&&r.__effects)for(let g=0;g<r.__effects.length;g++){const h=r.__effects[g];h&&h!==i&&!h._disposed&&!h._isSubscribeToEffect&&typeof h._execute=="function"&&h._execute()}if(!_&&typeof t.onUpdate=="function"){const g=t.context?.designSystem;g&&(0,w.pushConfig)(g);try{t.onUpdate(t,t.state,t.context)}catch(h){t.context?.plugins?.length&&(0,G.runPluginHook)("error",t,{hook:"onUpdate",error:h})||console.error("[DOMQL] subscribeTo onUpdate error:",h)}finally{g&&(0,w.popConfig)()}}},{depth:r.path.length,label:k(r,"subscribeTo("+o+")")});d.value=!0,i._isSubscribeToEffect=!0,r.__effects.push(i)}}function Lt(t,e){return t.charCodeAt(0)===64&&t.length>1&&!t.startsWith("@media")&&!t.startsWith("@keyframes")&&!t.startsWith("@supports")&&!t.startsWith("@container")&&(t==="@dark"||t==="@light"||!e.context?.designSystem?.media?.[t.slice(1)])}function Dt(t,e){if(t.charCodeAt(0)!==64||/^@(media|supports|container|keyframes)\b/.test(t))return t;const s=e.context?.designSystem?.media?.[t.slice(1)];return s?/^@(media|supports|container)\b/.test(s)?s:`@media ${s}`:t}const so=new Set;function zo(t,e){const s=e?.__ref?.path?e.__ref.path.join("."):e?.key||"?",n=s+"::"+t;so.has(n)||(so.add(n),console.warn(`[smbls/css] "${t}" at ${s} is a CHILD-COMPONENT key nested inside a pseudo/selector block (":hover", "@dark", etc.) \u2014 that is never a valid CSS selector fragment. The rule is DROPPED (not shipped as a dead/never-matching selector). To reveal a child on a parent state, target the child's OWN class from the parent selector instead, e.g. move the declaration onto the child element itself, or use a sibling-selector combinator in a top-level style block.`))}function tt(t,e,s){const n={},r=new Set,f=(o,c,u)=>{const a=u?new Set(Object.keys(n)):null;if(A.CSS_PROPS_REGISTRY[o]){const d=A.CSS_PROPS_REGISTRY[o](c,e,e.state,e.context);if(d){const i=Array.isArray(d)?d:[d];for(const l of i)l&&Object.assign(n,l)}}else n[o]=c;if(u)for(const d in n)a.has(d)||r.add(d)};for(const o in t){if(!Object.prototype.hasOwnProperty.call(t,o))continue;let c=t[o];if(typeof c=="function"&&(c=c(e,e.state,e.context)),c==null||typeof c=="function")continue;if(typeof c=="object"&&!Array.isArray(c)){if(o==="style"){for(const i in c){let l=c[i];if(typeof l=="function"&&(l=l(e,e.state,e.context)),l==null||typeof l=="function")continue;const y=typeof e[i]=="function"&&(A.CSS_PROPS_REGISTRY[i]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(i));f(i,l,y)}continue}if(Lt(o,e)){const i=tt(c,e,!1);Object.keys(i).length&&(n[`[data-theme="${o.slice(1)}"] &`]=i);continue}if(/^[A-Z][A-Za-z0-9]*$/.test(o)){(0,q.isLoudDevRuntime)()&&zo(o,e);continue}const a=Dt(o,e),d=tt(c,e,!1);Object.keys(d).length&&(n[a]=d);continue}const u=typeof e[o]=="function"&&(A.CSS_PROPS_REGISTRY[o]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(o));f(o,c,u)}if(s)for(const o in n)r.add(o);for(const o of r){const c=n[o];typeof c=="string"&&!c.includes("!important")&&(n[o]=c+" !important")}return n}function Ot(t,e){if(e===void 0&&(e=0),e>8)return!1;if(typeof t=="function")return!0;if(t&&typeof t=="object"&&!Array.isArray(t)){for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)&&Ot(t[s],e+1))return!0}return!1}function eo(t,e,s){if(!e||typeof e!="object"||Array.isArray(e))return null;if(Lt(t,s)){const f=tt(e,s,!1);return Object.keys(f).length?{cssProp:`[data-theme="${t.slice(1)}"] &`,block:f}:null}const n=Dt(t,s),r=tt(e,s,!1);return Object.keys(r).length?{cssProp:n,block:r}:null}function Yo(t){const e=t.__ref;for(const s of Object.keys(t)){if(!jt(s))continue;const n=t[s];if(!n||typeof n!="object"||Array.isArray(n)||!Ot(n))continue;let r=null,f;const o=(0,j.createEffect)(()=>{if(!t.node)return;const c=t.context?.designSystem;c&&(0,w.pushConfig)(c);let u,a=!1;try{const d=eo(s,n,t),i=d?ht(d.block)+"::"+d.cssProp:null;if(i!==null&&i===f)a=!0;else if(f=i,d){const l=(0,W.css)({[d.cssProp]:d.block},null,t.context?.cssPrefix);u=l?l.split(" ").filter(Boolean):null}else u=null}finally{c&&(0,w.popConfig)()}if(!(a||!t.node.classList)){if(r)for(const d of r)t.node.classList.remove(d);if(u&&u.length)for(const d of u)t.node.classList.add(d);r=u}},{depth:e.path.length,label:k(e,"cssBlock("+s+")")});e.__effects.push(o)}}function Zo(t){const e=t.__ref;e.__conditionalRunners=[];const s=new Map;for(const n of Object.keys(t)){const r=n.charAt(0);if(r!=="."&&r!=="!")continue;const f=n.slice(1);if(!f)continue;if(/[:@\s>~+[\]]/.test(f)){if(typeof console<"u"&&console.warn){const y=f.split(/[:@\s>~+[\]]/)[0];console.warn(`[smbls] conditional \`${n}\` on ${t.key||"?"} will never match \u2014 the whole string after \`${r}\` is read as one prop name. Nest the selector inside instead: \`${r}${y}: { '${f.slice(y.length)}': {...} }\`.`)}continue}const o=t[n];if(!o||typeof o!="object")continue;const c=r==="!",u={lastMatch:!1,appliedKeys:null,appliedClasses:null},a=()=>{let y;const _=t[f];if(_===void 0){const p=!!t.state&&f in t.state,x=t.state?t.state[f]:void 0;if(p||x!==void 0)y=x;else{const b=t.context?.cases?.[f];if(b===void 0)return;try{y=typeof b=="function"?b.call(t,t):b}catch(v){y=!1,e.__conditionalError=v,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` case fn threw on ${t.key||"?"} \u2014 treating as false:`,v?.message||v)}}}else if(typeof _=="function")try{y=_(t,t.state,t.context)}catch(p){y=!1,e.__conditionalError=p,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` predicate threw on ${t.key||"?"} \u2014 treating as false:`,p?.message||p)}else y=_;const g=c?!y:!!y;if(!t.node||g===u.lastMatch)return;u.lastMatch=g;const h=t.context?.designSystem;h&&(0,w.pushConfig)(h);try{if(g){const p={},x={};let b=!1;for(const C in o){if(!Object.prototype.hasOwnProperty.call(o,C))continue;const E=o[C],Z=C.charAt(0);if((Z===":"||Z==="@"||Z==="&"||Z==="[")&&E&&typeof E=="object"&&!Array.isArray(E)){if(Lt(C,t)){const L=tt(E,t,!1);Object.keys(L).length&&(x[`[data-theme="${C.slice(1)}"] &`]=L,b=!0)}else{const L=Dt(C,t),O=tt(E,t,!1);Object.keys(O).length&&(x[L]=O,b=!0)}continue}const X=typeof E=="function"?E(t,t.state,t.context):E;if(X!=null)if(A.CSS_PROPS_REGISTRY[C]){const L=A.CSS_PROPS_REGISTRY[C](X,t,t.state,t.context);if(L){const O=Array.isArray(L)?L:[L];for(const et of O)et&&Object.assign(p,et)}}else(A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(C)||Tt(C))&&(p[C]=X)}const v=Object.keys(p);if(v.length){m(t.node,p);for(const C of v)s.set(C,n);u.appliedKeys=v}else u.appliedKeys=null;if(b){const C=(0,W.css)(x,null,t.context?.cssPrefix),E=C?C.split(" ").filter(Boolean):[];if(E.length&&t.node.classList){for(const Z of E)t.node.classList.add(Z);u.appliedClasses=E}else u.appliedClasses=null}else if(u.appliedClasses){for(const C of u.appliedClasses)t.node.classList.remove(C);u.appliedClasses=null}}else{if(u.appliedKeys){for(const p of u.appliedKeys)s.get(p)===n&&(Tt(p)?t.node.style.removeProperty(p):t.node.style[p]="",s.delete(p));u.appliedKeys=null}if(u.appliedClasses){for(const p of u.appliedClasses)t.node.classList.remove(p);u.appliedClasses=null}}}finally{h&&(0,w.popConfig)()}};e.__conditionalRunners.push(a);const d=N(t,t[f+"Deps"],a),i=(0,j.createEffect)(d,{depth:e.path.length,label:k(e,"conditional("+n+")")}),l=e.__exec&&e.__exec[f]||t[f];i._sources.size===0&&typeof l=="function"&&(0,q.isLoudDevRuntime)()&&console.warn(`[smbls] conditional \`${n}\` on ${t.key||"?"} subscribed to nothing \u2014 its predicate tracked no reactive read on its first run, so no state write will ever re-evaluate it (only a direct element.update() on this element re-runs it). If the predicate guards its state reads (\`in\`, short-circuits, \`?.\`), declare \`${f}Deps: [...]\` (state-key strings or \`(el, s) => \u2026\` selectors) so the subscription is armed unconditionally.`),e.__effects.push(i)}}const Nt=new WeakSet;function qo(t){const e=t.ownerDocument;!e||Nt.has(e)||(Nt.add(e),queueMicrotask(()=>{Nt.delete(e);const s=e.body||e.documentElement;s&&s.offsetWidth}))}const Rt=new WeakSet;let no=!1;function ro(t){return t.startsWith("[data-theme=")||t.startsWith("@media")&&t.includes("prefers-color-scheme")}function Mt(t,e){const s={...t};for(const n in e){const r=e[n],f=s[n];s[n]=r&&typeof r=="object"&&f&&typeof f=="object"?Mt(f,r):r}return s}function io(t,e){const s={};for(const n in t){const r=t[n];if(r&&typeof r=="object"){const f=io(r,e);Object.keys(f).length&&(s[n]=f)}else e.has(n)||(s[n]=r)}return s}function Qo(t){const{node:e}=t;if(!e)return;if(no||(no=!0,(0,W.css)({display:"none"})),Rt.has(t)){console.error("[applyCssInProps] re-entry detected for element",t.key,"prop path:",t.__ref?.path);return}Rt.add(t);const s=t.context?.designSystem;s&&(0,w.pushConfig)(s),(0,A.pushStaticCssPass)();try{const n={};let r=!1,f=null,o=null,c=null;const u=(a,d)=>{if(d&&typeof d=="object"&&ro(a)){o||(o={});const i=o[a];i&&(d=Mt(i,d)),o[a]=d}else(d===null||typeof d!="object")&&(c||(c=new Set),c.add(a));n[a]=d};if(Object.prototype.hasOwnProperty.call(t,"theme")&&typeof t.theme!="function"&&A.CSS_PROPS_REGISTRY.theme){const a=A.CSS_PROPS_REGISTRY.theme(t.theme,t,t.state,t.context);if(a){const d=i=>{for(const l in i){const y=i[l];y&&typeof y=="object"&&ro(l)&&(f||(f={}),f[l]=y),n[l]=y}};if(Array.isArray(a))for(const i of a)i&&d(i);else d(a);r=!0}}for(const a of Object.keys(t)){if(typeof t[a]=="function"||U.REGISTRY.has(a)||a==="theme")continue;const d=a.charCodeAt(0);if(!(d>=65&&d<=90)&&!z(a)){if(A.CSS_PROPS_REGISTRY[a]){const i=t[a],l=A.CSS_PROPS_REGISTRY[a](i,t,t.state,t.context);if(l){if(Array.isArray(l)){for(const y of l)if(y)for(const _ in y)u(_,y[_])}else for(const y in l)u(y,l[y]);r=!0}}else if(A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(a)){const i=t[a];i!=null&&typeof i!="object"&&(u(a,i),r=!0)}else if(a.charCodeAt(0)===45){const i=t[a];i!=null&&typeof i!="object"&&(u(a,i),r=!0)}else if(a.charAt(0)==="&"||a.charAt(0)==="@"||a.charAt(0)===":"||a.charAt(0)==="["){const i=t[a];if(i&&typeof i=="object"&&!Array.isArray(i)){if(Ot(i))continue;const l=eo(a,i,t);l&&(u(l.cssProp,l.block),r=!0)}}}}if(f)for(const a in f){let d=c?io(f[a],c):f[a];o&&o[a]&&(d=Mt(d,o[a])),Object.keys(d).length?n[a]=d:delete n[a]}if(r){n.display&&String(n.display).includes("!important")&&(e.style.setProperty("display",String(n.display).replace(/\s*!important\s*$/,""),"important"),delete n.display);const a=(0,W.css)(n,null,t.context?.cssPrefix);if(a&&e.classList){const i=a.split(" ").filter(Boolean);let l=!1;for(const y of i)e.classList.add(y),l||(y.charCodeAt(0)===95&&y.charCodeAt(1)===99||y.charCodeAt(0)===95&&y.indexOf("_c",1)!==-1)&&(l=!0);l&&qo(e)}const d=t.display!=null&&typeof t.display!="function"?t.display:t.hide===!0||t.show===!1?"none":null;if(d!=null){const i=n.display;if(i&&i!==d)if(d==="none"){const l=[];for(const y of e.classList)y.startsWith("_d-")&&y!=="_d-none"&&l.push(y);for(const y of l)e.classList.remove(y);e.classList.add("_d-none")}else e.style.display==="none"&&(typeof t.hide=="function"||typeof t.show=="function")||(e.style.display=t.display),t.__ref&&(t.__ref.__explicitDisplay=t.display)}}}finally{(0,A.popStaticCssPass)(),s&&(0,w.popConfig)(),Rt.delete(t)}}function co(t){const{node:e}=t;if(!e||!e.setAttribute)return;if(t.aria&&typeof t.aria=="object")for(const r in t.aria){const f=t.aria[r];if(typeof f=="function"||typeof f=="object"||f==null||typeof f=="string"&&f.includes("{{"))continue;const o="aria-"+r.replace(/[A-Z]/g,c=>"-"+c.toLowerCase());e.setAttribute(o,(0,S.serializeAttrValue)(o,f))}const s=(0,S.applyAttrTransforms)(t);for(const r in s){const f=s[r];f!=null&&f!==!1&&typeof f!="function"&&typeof f!="object"&&e.setAttribute(r,f===!0?"":f)}const n=t.tag||"div";for(const r of Object.keys(t)){if(typeof t[r]=="function"||U.REGISTRY.has(r)||r==="on"||s[r]!==void 0)continue;const f=r.charCodeAt(0);if(!(f>=65&&f<=90)&&!z(r)&&!(A.CSS_PROPS_REGISTRY[r]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(r))&&(0,S.checkAttributeByTagName)(n,r)){let o=t[r];if(o==null)continue;if(typeof o=="string"&&o.includes("{{")){if(!S.ATTR_TRANSFORMS[r])continue;o=D.replaceLiteralsWithObjectFields.call(t,o,t.state)}if(o==null||typeof o=="function"||typeof o=="object"||o===!1&&!(0,S.isEnumeratedTrueFalseAttr)((0,S.camelToAttr)(r)||r))continue;const c=(0,S.camelToAttr)(r)||r;e.setAttribute(c,(0,S.serializeAttrValue)(c,o))}}}function Xo(t,e){const{node:s}=t;if(!s||!s.setAttribute)return;const n=e.charCodeAt(0);if(n>=65&&n<=90||z(e)||A.CSS_PROPS_REGISTRY[e]||A.DEFAULT_CSS_PROPERTIES_LIST&&A.DEFAULT_CSS_PROPERTIES_LIST.has(e)||!(0,S.checkAttributeByTagName)(t.tag||"div",e))return;const r=(0,S.camelToAttr)(e)||e,f=r.toLowerCase(),o=t.__ref&&t.__ref.__effects;let c=!1;if(o)for(let d=0;d<o.length;d++){const i=o[d];i&&i._attrName===f&&!i._disposed&&typeof i._execute=="function"&&(c=!0,i._execute())}if(c)return;let u=t[e];const a=S.ATTR_TRANSFORMS[e];if(a&&u!=null){const d=a(t);d!==void 0&&(u=d)}typeof u=="string"&&u.includes("{{")&&(u=D.replaceLiteralsWithObjectFields.call(t,u,t.state)),u==null||u===!1&&!(0,S.isEnumeratedTrueFalseAttr)(r)?s.removeAttribute(r):typeof u!="function"&&typeof u!="object"&&s.setAttribute(r,(0,S.serializeAttrValue)(r,u))}function Jo(t,e){const s=t.node,n=t.__ref;let r=n.__autoGrow;if(!e){if(r&&r.active){try{s.removeEventListener("input",r.resize)}catch{}s.style.height="",r.appliedMax!=null&&s.style.maxHeight===r.appliedMax&&(s.style.maxHeight=""),r.active=!1,r.appliedMax=null,r.lastMeasure=0}return}r||(r=n.__autoGrow={active:!1,appliedMax:null,lastMeasure:0,resize:()=>{if(s.scrollHeight===0&&r.lastMeasure>0)return;s.style.height="auto";const o=s.scrollHeight;s.style.height=o+"px",o>0&&(r.lastMeasure=o)}},n.__eventCleanup||(n.__eventCleanup=[]),n.__eventCleanup.push(()=>{try{s.removeEventListener("input",r.resize)}catch{}})),r.active||(s.addEventListener("input",r.resize),r.active=!0);const f=typeof e=="object"&&e.max!=null?String(e.max):null;f!==r.appliedMax&&(f==null?r.appliedMax!=null&&s.style.maxHeight===r.appliedMax&&(s.style.maxHeight=""):s.style.maxHeight=f,r.appliedMax=f),r.resize()}function mo(t){if(!t.autoGrow)return;const e=t.node;if(!e||e.tagName!=="TEXTAREA")return;const s=t.__ref,n=t.autoGrow,r=typeof n=="function"?N(t,t.autoGrowDeps,n):null,f=(0,j.createEffect)(()=>{const o=t.autoGrow;let c=o;if(typeof o=="function")try{c=(o===n&&r?r:o)(t,t.state,t.context)}catch{c=null}Jo(t,c)},{depth:s.path.length,label:k(s,"autoGrow")});s.__effects||(s.__effects=[]),s.__effects.push(f),r&&(s.__exec.autoGrow=n)}const fo=new Set(["onSwipe","onSwipeLeft","onSwipeRight","onSwipeUp","onSwipeDown"]);function ao(t,e){for(const s of Object.keys(t)){if(!z(s)||fo.has(s))continue;const n=(0,st.globalEventKeyInfo)(s);if(n){(0,st.registerGlobalEvent)(n,t,t[s]);continue}let r=t[s];if(typeof r=="string"&&/^[A-Za-z_$][\w$]*$/.test(r)){const o=r;r=function(u){return t.call(o,u)}}if(typeof r!="function")continue;const f=Ro(s);U.LIFECYCLE_EVENTS.has(f)||(0,st.registerEvent)(Mo(f),t,r)}ts(t)}function ts(t){const e=t.node;if(!e||!e.addEventListener)return;const s={};let n=!1;for(const l of fo){const y=t[l];typeof y=="function"&&(s[l]=y,n=!0)}if(!n)return;const r=typeof t.swipeThreshold=="number"?t.swipeThreshold:40,f=typeof t.swipeMaxDuration=="number"?t.swipeMaxDuration:600;let o=0,c=0,u=0,a=!1;const d=l=>{const y=l.touches&&l.touches[0]||l.changedTouches&&l.changedTouches[0];y&&(o=y.clientX,c=y.clientY,u=Date.now(),a=!0)},i=l=>{if(!a)return;a=!1;const y=l.changedTouches&&l.changedTouches[0]||l.touches&&l.touches[0];if(!y)return;const _=y.clientX-o,g=y.clientY-c,h=Date.now()-u;if(h>f)return;const p=Math.abs(_),x=Math.abs(g);if(Math.max(p,x)<r)return;let b;if(p>x*1.2)b=_<0?"left":"right";else if(x>p*1.2)b=g<0?"up":"down";else return;const v="onSwipe"+b.charAt(0).toUpperCase()+b.slice(1),C=s[v],E=s.onSwipe;C&&C.call(t,l,t,t.state,t.context),E&&E.call(t,{direction:b,dx:_,dy:g,dt:h,event:l},t,t.state,t.context)};e.addEventListener("touchstart",d,{passive:!0}),e.addEventListener("touchend",i,{passive:!0}),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{e.removeEventListener("touchstart",d)}catch{}try{e.removeEventListener("touchend",i)}catch{}})}function at(t,e){const s={...t};for(const n in e){const r=s[n],f=e[n];r&&f&&typeof r=="object"&&typeof f=="object"&&!Array.isArray(r)&&!Array.isArray(f)&&typeof r!="function"&&typeof f!="function"?s[n]=at(r,f):s[n]=f}return s}function $t(t,e,s,n){if(!e||!t.node)return;const r=t.childExtends;if(Array.isArray(e)){const f=t.tag==="fragment",o=t.context?.document||globalThis.document,c=f?null:o?.createDocumentFragment();if(!f&&!c)return;const u=t.childProps,a=t.childrenAs,d=h=>{let p=e[h];const x=p;(typeof p=="string"||typeof p=="number")&&(p={text:p});let b=u;if(typeof u=="function")try{b=u(t,p)}catch{b=null}if(a==="state"){let C=x;(typeof x=="string"||typeof x=="number")&&(C={value:x,text:x}),p=b?{...b,state:C}:{state:C}}else b&&(p=at(b,p));if(r&&!p.ignoreChildExtends)if(p.extends){const C=Array.isArray(p.extends)?p.extends:[p.extends],E=Array.isArray(r)?r:[r];p={...p,extends:[...E,...C]}}else p={...p,extends:r};const v=Wt(p?.key,x,h);try{return Y(p,t,v,s)}catch(C){if(typeof console<"u"&&console.error){const E=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${v}" failed to construct at ${E} (initial render, skipping this row):`,C?.message||C)}return null}},i=t.__ref;if(!(n===!0&&!f&&!!i&&(s?.mountYield===!0||t.yieldChildren===!0))){for(let h=0;h<e.length;h++){const p=d(h);!f&&p?.node&&c.appendChild(p.node)}return f||t.node.appendChild(c),!0}const y=i.__childrenChunkGen=(i.__childrenChunkGen||0)+1;(0,B.openMountBudget)();let _=null;const g=h=>{if(i.__disposed||i.__childrenChunkGen!==y){_&&_.parentNode&&_.remove();return}for(let p=h;p<e.length;p++){const x=d(p);if(x?.node&&(_?t.node.insertBefore(x.node,_):c.appendChild(x.node)),p+1<e.length&&(0,B.mountBudgetExhausted)()){_||(_=o.createComment("smbls-mount"),c.appendChild(_),t.node.appendChild(c));const b=p+1;(0,B.enqueueMountWork)(()=>g(b));return}}_?(_.remove(),t.node.tagName==="SELECT"&&bt(t,!0)):t.node.appendChild(c)};return g(0),(0,B.closeMountBudget)(),!0}if(typeof e=="string"){const f=zt(e,t);if(Array.isArray(f))return $t(t,f,s,n)}if(typeof e=="object")for(const f in e){if(U.REGISTRY.has(f))continue;let o=e[f];if(!(o==null||o===!1)){if((typeof o=="string"||typeof o=="number")&&(o={text:o}),t.childProps&&(o=at(t.childProps,o)),r&&!o.ignoreChildExtends)if(o.extends){const c=Array.isArray(o.extends)?o.extends:[o.extends],u=Array.isArray(r)?r:[r];o={...o,extends:[...u,...c]}}else o={...o,extends:r};Y(o,t,f,s)}}}function bt(t,e){const s=t.node;if(!s||s.tagName!=="SELECT")return;const n=s.options;if(!n||!n.length)return;const r=t.__ref,f=r&&r.__exec&&r.__exec.value,o=typeof f=="function",c=t.value!=null&&typeof t.value!="function";if(o||c){let d;if(o)try{d=f(t,t.state,t.context)}catch{return}else d=t.value,typeof d=="string"&&d.includes("{{")&&(d=D.replaceLiteralsWithObjectFields.call(t,d,t.state));const i=d==null?"":String(d);s.value!==i&&(s.value=i);return}const u=e||!(r&&r.__selectSynced);if(r&&(r.__selectSynced=!0),!u)return;let a=-1;for(let d=0;d<n.length;d++)n[d].defaultSelected&&(a=d);a>=0&&s.selectedIndex!==a&&(s.selectedIndex=a)}function uo(t,e){let{children:s,content:n}=t;const r=t.childExtends;if(typeof s=="function"){const i=s;try{s=i(t,t.state,t.context)}catch(h){if(s=void 0,typeof console<"u"&&console.error){const p=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${p} (initial run, treating as empty):`,h?.message||h)}}t.children=s;const l=t.__ref;let y=!1;const _=N(t,t.childrenDeps,i),g=(0,j.createEffect)(()=>{const h=y;y=!0;let p;try{p=_(t,t.state,t.context)}catch(L){if(typeof console<"u"&&console.error){const O=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${O}${h?"":" (initial tracking run)"}:`,L?.message||L)}return}if(!h||p===t.children)return;t.children=p,l.__childrenChunkGen!=null&&l.__childrenChunkGen++;const x=typeof t.onContentUpdate=="function",b=x?[]:null,v=x?[]:null,C=x?[]:null;if(Array.isArray(p)&&t.childrenAs==="state"){const L=t.childProps,O=[],et=new Map;for(let P=0;P<p.length;P++){const K=p[P];let T=L;if(typeof L=="function")try{T=L(t,K)}catch{T=null}const H=Wt(T&&T.key,K,P);O.push(H),et.set(H,{rawChild:K,childProps:T})}const bo=new Set(O),xo=l.__children.slice();for(const P of xo)if(!bo.has(P)){const K=t[P];K?.remove&&K.remove(),delete t[P],v&&v.push(P)}const nt=t.childExtends,lt=t.tag==="fragment",Ao=t.context?.document||globalThis.document,rt=lt?null:Ao?.createDocumentFragment(),Ct=new Set;for(const P of O){const K=et.get(P),T=K.rawChild,H=t[P];if(H&&H.state){if(T&&typeof T=="object"){const M=H.state,J=M.$replace||M.replace,It=M.$update||M.update;try{if(typeof J=="function")J.call(M,T);else if(typeof It=="function"){for(const I in M)if(!(I==="__element"||I==="root"||I==="parent"||I==="update")&&!Object.prototype.hasOwnProperty.call(T,I))try{M[I]=void 0}catch{}It.call(M,T)}else for(const I in T)M[I]=T[I]}catch(I){if(typeof console<"u"&&console.error){const Co=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${P}" failed to patch at ${Co} (reconcile, keeping its previous data for this pass):`,I?.message||I)}}}C&&C.push(P);continue}let vt=T;(typeof T=="string"||typeof T=="number")&&(vt={value:T,text:T});const Ft=K.childProps;let V=Ft?{...Ft,state:vt}:{state:vt};if(nt&&!V.ignoreChildExtends)if(V.extends){const M=Array.isArray(V.extends)?V.extends:[V.extends],J=Array.isArray(nt)?nt:[nt];V={...V,extends:[...J,...M]}}else V={...V,extends:nt};let St;try{St=Y(V,t,P,e)}catch(M){if(typeof console<"u"&&console.error){const J=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${P}" failed to construct at ${J} (reconcile, skipping this row):`,M?.message||M)}Ct.add(P);continue}!lt&&St?.node&&rt&&rt.appendChild(St.node),b&&b.push(P)}if(!lt&&rt&&rt.childNodes.length&&t.node&&t.node.appendChild(rt),!lt&&t.node){let P=null;for(const K of O){const T=t[K]?.node;if(!T)continue;const H=P?P.nextSibling:t.node.firstChild;T!==H&&t.node.insertBefore(T,H),P=T}}l.__children=Ct.size?O.filter(P=>!Ct.has(P)):O,x&&(b.length||v.length)&&Ht(t,{added:b,removed:v,kept:C}),bt(t,!1);return}const X=x?[...l.__children]:null;for(const L of[...l.__children]){const O=t[L];O?.remove&&O.remove(),delete t[L]}l.__children=[],$t(t,p,e),bt(t,!1),x&&Ht(t,{added:[...l.__children],removed:X,kept:[]})},{depth:l.path.length,label:k(l,"children")});l.__effects.push(g)}const f=$t(t,s,e,!0);if(n!=null&&!(n&&n.__ref)){let i=n;if(typeof i=="string"||typeof i=="number"?i={text:i}:typeof i!="object"&&(i={}),t.childProps&&(i=at(t.childProps,i)),r&&!i.ignoreChildExtends)if(i.extends){const l=Array.isArray(i.extends)?i.extends:[i.extends],y=Array.isArray(r)?r:[r];i={...i,extends:[...y,...l]}}else i={...i,extends:r};Y(i,t,"content",e)}if(s&&!f)return;const o=t.context?.components||{};{const i=Object.keys(t);for(let l=0;l<i.length;l++){const y=i[l];if(!y.endsWith("Extends")||typeof t[y]!="string")continue;const _=y.slice(0,-7);if(!_||_.charCodeAt(0)<65||_.charCodeAt(0)>90)continue;const g={extends:t[y]};delete t[y];for(let h=l+1;h<i.length;h++){const p=i[h],x=p.charCodeAt(0);if(x>=65&&x<=90||U.REGISTRY.has(p)||typeof t[p]=="function"&&(p.startsWith("on")||p.startsWith(".")))break;const b=t[p];b!==void 0&&(g[p]=b,delete t[p])}t[_]&&typeof t[_]=="object"?t[_]={...g,...t[_]}:t[_]=g}}const c=e?.mountYield===!0||t.yieldChildren===!0,u=Object.keys(t),a=i=>{if(U.REGISTRY.has(i)||typeof t[i]!="object"||t[i]===null)return;const l=i.charCodeAt(0);if(l<65||l>90)return;let y=t[i];if(!y.__ref){if(!y.extends&&!y.extend){const _=o[i]||o[`smbls.${i}`];_&&(y={...y,extends:_})}if(t.childProps&&(y=at(t.childProps,y)),r&&!y.ignoreChildExtends)if(y.extends){const _=Array.isArray(y.extends)?y.extends:[y.extends],g=Array.isArray(r)?r:[r];y={...y,extends:[...g,..._]}}else y={...y,extends:r};Y(y,t,i,e)}};if(!c){for(const i of u)a(i);return}(0,B.openMountBudget)();const d=i=>{for(let l=i;l<u.length;l++)if(a(u[l]),l+1<u.length&&(0,B.mountBudgetExhausted)()){const y=l+1;(0,B.enqueueMountWork)(()=>d(y));return}};d(0),(0,B.closeMountBudget)()}function lo(t,e,s){const{node:n}=t;if(!n)return;n.ref=t;const r=e?.tag==="fragment"?e.__ref?.__fragmentAnchor:null;if(r){const o=r.parentNode;if(o){if(s?.position==="before"&&s.node)o.insertBefore(n,s.node);else if(s?.position==="after"&&s.node){const c=s.node.nextSibling;o.insertBefore(n,c||r)}else o.insertBefore(n,r);return}}const f=e?.node||(e?.nodeType?e:null);if(f)if(s?.position==="before"&&s.node)f.insertBefore(n,s.node);else if(s?.position==="after"&&s.node){const o=s.node.nextSibling;o?f.insertBefore(n,o):f.appendChild(n)}else f.appendChild(n)}const At=3;function go(t){return!t||t.__inBeforeUpdate||(t.__beforeUpdateFailCount||0)>=At?!1:(t.__inBeforeUpdate=!0,!0)}function dt(t,e){t&&(t.__inBeforeUpdate=!1,e?(t.__beforeUpdateFailCount=(t.__beforeUpdateFailCount||0)+1,t.__beforeUpdateFailCount===At&&typeof console<"u"&&console.error&&console.error(`[DOMQL] onBeforeUpdate failed ${At}x in a row on this element \u2014 pausing automatic retries until a future prop/state change re-arms it.`)):t.__beforeUpdateFailCount=0)}function $(t,e,s){const n=t.charAt(0).toLowerCase()+t.slice(1);e.context?.plugins?.length&&(0,G.runPluginHook)(n,e,s);const r="on"+t,f=e[r];if(typeof f=="function"){const u=t==="Render"?"__inRender":t==="RenderRouter"?"__inRenderRouter":null;if(u){if(e.__ref[u])return!0;e.__ref[u]=!0}const a=e.context?.designSystem;a&&(0,w.pushConfig)(a);let d=!!u;try{const i=f(e,e.state,e.context,s);if(i&&typeof i.then=="function"){const l=e.__ref;return i.catch(y=>{e.context?.plugins?.length&&(0,G.runPluginHook)("error",e,{hook:r,error:y})||console.error(`[DOMQL] Lifecycle "${r}" error:`,y)}).finally(()=>{u&&l&&(l[u]=!1)}),d=!1,!0}if(i===!1)return!1}catch(i){if(e.context?.plugins?.length&&(0,G.runPluginHook)("error",e,{hook:r,error:i})||console.error(`[DOMQL] Lifecycle "${r}" error:`,i),e.context?.strictMode)throw i}finally{a&&(0,w.popConfig)(),d&&e.__ref&&(e.__ref[u]=!1)}}return!0}var os=Y;
@@ -1 +1 @@
1
- "use strict";var c=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var k=Object.prototype.hasOwnProperty;var w=(t,e)=>{for(var n in e)c(t,n,{get:e[n],enumerable:!0})},x=(t,e,n,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of m(e))!k.call(t,r)&&r!==n&&c(t,r,{get:()=>e[r],enumerable:!(o=y(e,r))||o.enumerable});return t};var C=t=>x(c({},"__esModule",{value:!0}),t);var D={};w(D,{addMethods:()=>P,elementProto:()=>f,refreshContextProto:()=>A});module.exports=C(D);var _=require("./update.js"),d=require("./dispose.js"),p=require("./devRuntime.js"),j=require("css-in-props"),s=require("@symbo.ls/utils");function u(t,e,n){const o=t?.context?.analyze;if(!o||!o.emit||e==="warn"&&!o.shouldCapture("warnings")||e==="error"&&!o.shouldCapture("errors"))return;const r=n.map(i=>i?.message||(typeof i=="string"?i:null)).filter(Boolean).join(" ");o.emit({id:`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,6)}`,ts:Date.now(),type:e==="error"?"error":"warning",level:e,hook:e==="error"?"el.error":"el.warn",element:{key:t.key!=null?String(t.key):null,name:t.__name||null,tag:t.tag||null},message:r||null,args:n})}const h=new Set;function S(t,e,n){const o=String(e);if(h.has(o))return;h.add(o);const r=t?.__ref?.path,i=Array.isArray(r)&&r.length?r.join("."):t?.key!=null?String(t.key):"(unknown element)",g=n!=null?`resolves to a non-function (${typeof n}) \u2014 it cannot be called`:"is not registered in context.methods, context.functions, or context.utils, and is not an element method",a=`[smbls] el.call('${o}') at <${i}>: "${o}" ${g}. Returning undefined (unchanged behavior) \u2014 check the name for typos or register the function on the project. Warned once per name; repeat misses are silent.`;u(t,"error",[a]),console.error(a)}function R(...t){return u(this,"warn",t),s.warn.apply(this,t)}function v(...t){return u(this,"error",t),s.error.apply(this,t)}const f={update:_.update,remove:d.remove,getDB:s.getDB,getQuery:s.getQuery,getRootData:s.getRootData,getPath:s.getPath,nextElement:s.nextElement,previousElement:s.previousElement,verbose:s.verbose,warn:R,error:v,variables:s.variables,spotByPath:s.spotByPath,set(t,e){const n=this.__ref;if(n){if(n.__setLocked){n.__setQueued={content:t,options:e};return}n.__setLocked=!0}try{if(this.removeContent(),t!=null){const o=this.context?.__create;o&&o(t,this,"content",e)}this.__ref&&(this.__ref.contentManaged=!0)}finally{if(n){n.__setLocked=!1;const o=n.__setQueued;o&&(n.__setQueued=null,this.set(o.content,o.options))}}},reset(t){const e=this.context?.__create;if(!e)return this;const n=this.parent,o=this.key,r=this.parse();return this.remove(),e(r,n,o,t)},lookup(t){let e=this.parent;for(;e;){if(typeof t=="function"){if(t(e))return e}else if(typeof t=="string"){if(e.key===t)return e;if(e[t]&&e[t].__ref)return e[t]}e=e.parent}return null},lookdown(t){const e=this.__ref;if(!e?.__children)return null;for(const n of e.__children){const o=this[n];if(!o)continue;if(typeof t=="function"){if(t(o))return o}else if(typeof t=="string"&&o.key===t)return o;const r=o.lookdown?.(t);if(r)return r}return null},lookdownAll(t,e=[]){const n=this.__ref;if(!n?.__children)return e;for(const o of n.__children){const r=this[o];r&&(typeof t=="function"?t(r)&&e.push(r):typeof t=="string"&&r.key===t&&e.push(r),r.lookdownAll?.(t,e))}return e},getRef(t){return t?this.__ref&&this.__ref[t]:this.__ref},getChildren(){const t=this.__ref&&this.__ref.__children;return Array.isArray(t)?t.map(e=>this[e]):[]},getRoot:s.getRoot,getRootState:s.getRootState,getRootContext:s.getRootContext,getContext:s.getContext,parse(t){const e={},n=t?new Set(t):null,o=this.__ref?.__exec;for(const r in this)if(!(r==="parent"||r==="node"||r==="__ref")&&!n?.has(r)){if(o&&o[r]!==void 0){e[r]=o[r];continue}typeof this[r]!="function"&&(e[r]=this[r])}return e},parseDeep(t){const e=this.parse(t),n=this.__ref;if(n?.__children)for(const o of n.__children)this[o]?.parseDeep&&(e[o]=this[o].parseDeep(t));return e},keys(){return Object.keys(this)},log(...t){if(t.length){const e={};for(const n of t)e[n]=this[n];console.log(e)}else console.log(this)},setProps(t,e){return this.update(t,e)},setNodeStyles(t){if(this.node?.style)for(const e in t){const n=t[e];if(n==null)continue;const o=e.replace(/[A-Z]/g,i=>"-"+i.toLowerCase()),r=String(n).replace(/\s*!important\s*$/,"");this.node.style.setProperty(o,r,"important")}},call(t,...e){const n=this.context,o=n?.methods?.[t]||n?.functions?.[t]||n?.utils?.[t]||this[t];if(typeof o=="function")return o.call(this,...e);(0,p.isLoudDevRuntime)()&&S(this,t,o)},removeContent(){const t=this.__ref;if(!t?.__children)return;const e=this.content;if(e?.remove){e.remove(),delete this.content;const n=t.__children.indexOf("content");n!==-1&&t.__children.splice(n,1)}e?.node?.parentNode&&e.node.parentNode.removeChild(e.node)}},l=new WeakMap;function b(t){if(!t)return f;let e=l.get(t);if(e)return e;e=Object.create(f);const n=t.methods;if(n)for(const o in n)e[o]=n[o];return l.set(t,e),e}function P(t){const e=b(t.context);Object.setPrototypeOf(t,e)}function A(t){if(!t)return!1;const e=l.get(t);if(!e)return!1;const n=t.methods;if(!n)return!1;for(const o in n)e[o]=n[o];return!0}
1
+ "use strict";var w=Object.create;var f=Object.defineProperty;var x=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var S=Object.getPrototypeOf,R=Object.prototype.hasOwnProperty;var v=(t,e)=>{for(var n in e)f(t,n,{get:e[n],enumerable:!0})},_=(t,e,n,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of C(e))!R.call(t,r)&&r!==n&&f(t,r,{get:()=>e[r],enumerable:!(o=x(e,r))||o.enumerable});return t};var b=(t,e,n)=>(n=t!=null?w(S(t)):{},_(e||!t||!t.__esModule?f(n,"default",{value:t,enumerable:!0}):n,t)),P=t=>_(f({},"__esModule",{value:!0}),t);var L={};v(L,{addMethods:()=>j,elementProto:()=>c,refreshContextProto:()=>O});module.exports=P(L);var y=require("./update.js"),m=require("./dispose.js"),a=require("./devRuntime.js"),F=require("css-in-props"),s=require("@symbo.ls/utils"),d=b(require("@symbo.ls/utils"),1);function u(t,e,n){const o=t?.context?.analyze;if(!o||!o.emit||e==="warn"&&!o.shouldCapture("warnings")||e==="error"&&!o.shouldCapture("errors"))return;const r=n.map(i=>i?.message||(typeof i=="string"?i:null)).filter(Boolean).join(" ");o.emit({id:`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,6)}`,ts:Date.now(),type:e==="error"?"error":"warning",level:e,hook:e==="error"?"el.error":"el.warn",element:{key:t.key!=null?String(t.key):null,name:t.__name||null,tag:t.tag||null},message:r||null,args:n})}const p=new Set;function g(t,e,n){const o=String(e);if(p.has(o))return;p.add(o);const r=t?.__ref?.path,i=Array.isArray(r)&&r.length?r.join("."):t?.key!=null?String(t.key):"(unknown element)",k=n!=null?`resolves to a non-function (${typeof n}) \u2014 it cannot be called`:"is not registered in context.methods, context.functions, or context.utils, and is not an element method",h=`[smbls] el.call('${o}') at <${i}>: "${o}" ${k}. Returning undefined (unchanged behavior) \u2014 check the name for typos or register the function on the project. Warned once per name; repeat misses are silent.`;u(t,"error",[h]),console.error(h)}function A(...t){return u(this,"warn",t),s.warn.apply(this,t)}function D(...t){return u(this,"error",t),s.error.apply(this,t)}const c={update:y.update,remove:m.remove,getDB:s.getDB,getQuery:s.getQuery,getRootData:s.getRootData,getPath:s.getPath,nextElement:s.nextElement,previousElement:s.previousElement,verbose:s.verbose,warn:A,error:D,variables:s.variables,spotByPath:s.spotByPath,set(t,e){const n=this.__ref;if(n){if(n.__setLocked){n.__setQueued={content:t,options:e};return}n.__setLocked=!0}try{if(this.removeContent(),t!=null){const o=this.context?.__create;o&&o(t,this,"content",e)}this.__ref&&(this.__ref.contentManaged=!0)}finally{if(n){n.__setLocked=!1;const o=n.__setQueued;o&&(n.__setQueued=null,this.set(o.content,o.options))}}},reset(t){const e=this.context?.__create;if(!e)return this;const n=this.parent,o=this.key,r=this.parse();return this.remove(),e(r,n,o,t)},lookup(t){let e=this.parent;for(;e;){if(typeof t=="function"){if(t(e))return e}else if(typeof t=="string"){if(e.key===t)return e;if(e[t]&&e[t].__ref)return e[t]}e=e.parent}return null},lookdown(t){const e=this.__ref;if(!e?.__children)return null;for(const n of e.__children){const o=this[n];if(!o)continue;if(typeof t=="function"){if(t(o))return o}else if(typeof t=="string"&&o.key===t)return o;const r=o.lookdown?.(t);if(r)return r}return null},lookdownAll(t,e=[]){const n=this.__ref;if(!n?.__children)return e;for(const o of n.__children){const r=this[o];r&&(typeof t=="function"?t(r)&&e.push(r):typeof t=="string"&&r.key===t&&e.push(r),r.lookdownAll?.(t,e))}return e},getRef(t){return t?this.__ref&&this.__ref[t]:this.__ref},getChildren(){const t=this.__ref&&this.__ref.__children;return Array.isArray(t)?t.map(e=>this[e]):[]},getRoot:s.getRoot,getRootState:s.getRootState,getRootContext:s.getRootContext,getContext:s.getContext,parse(t){const e={},n=t?new Set(t):null,o=this.__ref?.__exec;for(const r in this)if(!(r==="parent"||r==="node"||r==="__ref")&&!n?.has(r)){if(o&&o[r]!==void 0){e[r]=o[r];continue}typeof this[r]!="function"&&(e[r]=this[r])}return e},parseDeep(t){const e=this.parse(t),n=this.__ref;if(n?.__children)for(const o of n.__children)this[o]?.parseDeep&&(e[o]=this[o].parseDeep(t));return e},keys(){return Object.keys(this)},log(...t){if(t.length){const e={};for(const n of t)e[n]=this[n];console.log(e)}else console.log(this)},setProps(t,e){return this.update(t,e)},setNodeStyles(t){if(this.node?.style)for(const e in t){const n=t[e];if(n==null)continue;const o=e.replace(/[A-Z]/g,i=>"-"+i.toLowerCase()),r=String(n).replace(/\s*!important\s*$/,"");this.node.style.setProperty(o,r,"important")}},call(t,...e){const n=this.context,o=n?.methods?.[t]||n?.functions?.[t]||n?.utils?.[t]||this[t];if(typeof o=="function"){const r=d.isFailedRevival;if(!r||!r(o))return o.call(this,...e);(0,a.isLoudDevRuntime)()&&g(this,t,d.getFunctionSource(o));return}(0,a.isLoudDevRuntime)()&&g(this,t,o)},removeContent(){const t=this.__ref;if(!t?.__children)return;const e=this.content;if(e?.remove){e.remove(),delete this.content;const n=t.__children.indexOf("content");n!==-1&&t.__children.splice(n,1)}e?.node?.parentNode&&e.node.parentNode.removeChild(e.node)}},l=new WeakMap;function $(t){if(!t)return c;let e=l.get(t);if(e)return e;e=Object.create(c);const n=t.methods;if(n)for(const o in n)e[o]=n[o];return l.set(t,e),e}function j(t){const e=$(t.context);Object.setPrototypeOf(t,e)}function O(t){if(!t)return!1;const e=l.get(t);if(!e)return!1;const n=t.methods;if(!n)return!1;for(const o in n)e[o]=n[o];return!0}
@@ -1 +1 @@
1
- var n=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var x=Object.prototype.hasOwnProperty;var E=(t,o)=>{for(var e in o)n(t,e,{get:o[e],enumerable:!0})},I=(t,o,e,p)=>{if(o&&typeof o=="object"||typeof o=="function")for(let c of s(o))!x.call(t,c)&&c!==e&&n(t,c,{get:()=>o[c],enumerable:!(p=r(o,c))||p.enumerable});return t};var N=t=>I(n({},"__esModule",{value:!0}),t);var R={};E(R,{VERSION:()=>O});module.exports=N(R);const O="3.14.788";
1
+ var n=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var x=Object.prototype.hasOwnProperty;var E=(t,o)=>{for(var e in o)n(t,e,{get:o[e],enumerable:!0})},I=(t,o,e,p)=>{if(o&&typeof o=="object"||typeof o=="function")for(let c of s(o))!x.call(t,c)&&c!==e&&n(t,c,{get:()=>o[c],enumerable:!(p=r(o,c))||p.enumerable});return t};var N=t=>I(n({},"__esModule",{value:!0}),t);var R={};E(R,{VERSION:()=>O});module.exports=N(R);const O="3.14.789";
@@ -1,6 +1,6 @@
1
- import{createStore as St,createScopeStore as Eo,isStore as W}from"@symbo.ls/signal";import{createEffect as S}from"@symbo.ls/signal";import{cacheNode as wt,detectTag as Gt}from"./cache.js";import{REGISTRY as G,LIFECYCLE_EVENTS as Po}from"./registry.js";import{registerEvent as To,registerGlobalEvent as Lo,globalEventKeyInfo as Do}from"./delegate.js";import{applyExtends as Oo}from"./extends.js";import{addMethods as No}from"./methods.js";import"./dispose.js";import{isLoudDevRuntime as X}from"./devRuntime.js";import{mountBudgetExhausted as Ht,openMountBudget as Wt,closeMountBudget as zt,enqueueMountWork as Yt}from"./mountScheduler.js";import{replaceLiteralsWithObjectFields as $,isPolyglotWritableKey as Ro,markPolyglotSeeded as Mo}from"@symbo.ls/utils";import{runPluginHook as H}from"@symbo.ls/utils/function.js";import{applyStateMethods as et}from"@symbo.ls/state";import{CSS_PROPS_REGISTRY as T,DEFAULT_CSS_PROPERTIES_LIST as E,pushStaticCssPass as Zt,popStaticCssPass as qt}from"css-in-props";import{css as nt,wrapHoverRule as Qt}from"@symbo.ls/css";import{pushConfig as N,popConfig as R}from"@symbo.ls/scratch";import{checkAttributeByTagName as rt,applyAttrTransforms as $o,ATTR_TRANSFORMS as kt,camelToAttr as it,serializeAttrValue as K,isEnumeratedTrueFalseAttr as ct}from"attrs-in-props";import{resolveElementIdEngine as Fo}from"./engineRegistry.js";import{VERSION as Io}from"./version.js";const Xt=Fo({uniqId:1,scopedStyleId:0},Io),ft=[];let jt=!1;function Jt(){return typeof Date<"u"&&typeof Date.now=="function"?Date.now():0}function Uo(){return typeof document<"u"&&document.visibilityState==="hidden"}const Bo=250;function mt(){if(!jt){if(jt=!0,typeof requestAnimationFrame!="function"){setTimeout(Et,0);return}Uo()?setTimeout(Et,Bo):requestAnimationFrame(Et)}}const Ko=300,Vo=15e4;function Et(){if(jt=!1,!ft.length)return;const t=ft.splice(0,ft.length);for(let e=0;e<t.length;e++){const s=t[e];if(s.node){if(!s.node.isConnected){const n=s.__ref||(s.__ref={});n.__mountAttempts=(n.__mountAttempts||0)+1,n.__mountFirstAttemptAt==null&&(n.__mountFirstAttemptAt=Jt());const r=Jt()-n.__mountFirstAttemptAt;n.__mountAttempts<=Ko&&r<Vo?(ft.push(s),mt()):console.warn("[DOMQL] onMounted dropped after",n.__mountAttempts,"attempts /",r,"ms \u2014 node never connected:",s.key||s.tag||s);continue}M("Mounted",s,s.__ref?.__mountOptions||{})}}}function Pt(t,e){typeof t.onMounted=="function"&&(t.__ref.__mountOptions=e,ft.push(t),mt())}function to(t,e){if(typeof t.onContentUpdate!="function")return;t.context?.plugins?.length&&H("contentUpdate",t,e);const s=t.context?.designSystem;s&&N(s);try{t.onContentUpdate(t,t.state,t.context,e)}catch(n){if(t.context?.plugins?.length&&H("error",t,{hook:"onContentUpdate",error:n})||console.error('[DOMQL] Lifecycle "onContentUpdate" error:',n),t.context?.strictMode)throw n}finally{s&&R()}}function z(t){return t.length>2&&t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>=65&&t.charCodeAt(2)<=90}function Go(t){return t.charAt(2).toLowerCase()+t.slice(3)}function Ho(t){return t.toLowerCase()}function Tt(t){const e=t.charCodeAt(0);return e===58||e===64||e===38||e===91}function at(t,e){const s={...t};for(const n in e){const r=s[n],f=e[n];r&&f&&typeof r=="object"&&typeof f=="object"&&!Array.isArray(r)&&!Array.isArray(f)&&typeof r!="function"&&typeof f!="function"?s[n]=at(r,f):s[n]=f}return s}function pt(t){if(typeof t=="string")return t||void 0;if(typeof t=="number"||typeof t=="bigint")return String(t)}function oo(t,e,s){return pt(t)||(e&&typeof e=="object"?pt(e.key):void 0)||String(s)}function Z(t,e,s,n={},r){if(t==null||t===!1)return null;(typeof t=="string"||typeof t=="number")&&(t={text:t}),s=pt(s);const f=pt(t.key),o=Object.create(null);o.key=s||f||`_${Xt.uniqId++}`,o.parent=e||null,o.context=t.context||e?.context||n.context||{},o.context.__create||(o.context.__create=Z);const c=o.__ref={__if:!0,__children:[],__exec:{},__effects:[],__eventCleanup:[],root:e?.__ref?.root||o,path:e?.__ref?.path?[...e.__ref.path,o.key]:[o.key],origin:t};if(s&&!t.extends&&!t.extend){const h=s.indexOf("_"),p=s.indexOf(".");let x=h>0?h:-1;if(p>0&&(x<0||p<x)&&(x=p),x>0){const b=s.substring(0,x),C=o.context?.components;C&&(C[b]||C["smbls."+b])?t={...t,extends:b}:C&&X()&&(/^[A-Z]\w*_\d+$/.test(s)||/^[A-Z]\w*\.\w+$/.test(s))&&console.warn(`[smbls] auto-extend: key "${s}" looks like an instance of "${b}" but neither "${b}" nor "smbls.${b}" is registered in context.components \u2014 element will render as a plain <div>. Register the base component or rename the key.`)}}Oo(o,t,n);const u=new Set(["childProps","attr","style","scope","data"]),a=o.props&&typeof o.props=="object"?o.props:null;for(const h in t){if(h==="parent"||h==="node"||h==="__ref"||h==="extends"||h==="context"||h==="props")continue;if(h==="key"){f&&(o.key=f);continue}const p=t[h],x=o[h],b=x&&p&&typeof x=="object"&&typeof p=="object"&&!Array.isArray(x)&&!Array.isArray(p)&&typeof x!="function"&&typeof p!="function";b&&h.charCodeAt(0)>=65&&h.charCodeAt(0)<=90?o[h]=at(x,p):b&&u.has(h)?o[h]={...x,...p}:b&&Tt(h)?o[h]=at(x,p):o[h]=p}function d(h){for(const p in h){const x=h[p],b=o[p],C=b&&x&&typeof b=="object"&&typeof x=="object"&&!Array.isArray(b)&&!Array.isArray(x)&&typeof b!="function"&&typeof x!="function";C&&p.charCodeAt(0)>=65&&p.charCodeAt(0)<=90?o[p]=at(b,x):C&&u.has(p)?o[p]={...b,...x}:C&&Tt(p)?o[p]=at(b,x):o[p]=x}}a&&d(a),t.props&&typeof t.props=="object"&&d(t.props),t.data!==void 0&&(o.data=t.data),t.classlist!==void 0&&(o.classlist=t.classlist),t.text!==void 0&&(o.text=t.text),t.html!==void 0&&(o.html=t.html);const i=o.scope&&typeof o.scope=="object"?o.scope:null,l=e?.scope,y=o.context&&typeof o.context.globalScope=="object"&&o.context.globalScope||null,_=l||y||null;if(t.scope!==void 0||i){const h={};i&&Object.assign(h,i),t.scope!==void 0&&Object.assign(h,t.scope),o.scope=Eo(h,_)}else _&&(o.scope=_);if(t.if!==void 0&&(o.if=t.if),No(o),Wo(o,e,t),o.if!=null){let h;if(typeof o.if=="function")try{h=o.if(o,o.state,o.context)}catch(p){if(h=!1,c.__ifError=p,typeof console<"u"&&console.warn){const x=o.key||o.tag||"?";console.warn(`[smbls] \`if:\` evaluator threw on ${x} \u2014 treating as false:`,p?.message||p)}}else h=o.if;c.__if=!!h}if(c.__if)typeof o.if=="function"&&(c.__ifInitialized=!0);else return e&&(e[o.key]=o),typeof o.if=="function"&&io(o,c,o.if),o;o.tag||(o.tag=Gt(o)),M("Init",o,n);const g=o.node=wt(o);if(!g)return o;if(o.tag==="fragment"){const p=(o.context?.document||globalThis.document).createComment("");g.appendChild(p),c.__fragmentAnchor=p}M("AttachNode",o,n),g.setAttribute&&o.key&&g.setAttribute("data-key",o.key),e&&(e[o.key]=o,e.__ref?.__children&&(e.__ref.__children.includes(o.key)||e.__ref.__children.push(o.key))),g.setAttribute&&o.context?.scopeSelector&&o.context.scopeSelector!==":root"&&o.context.key&&o.key===o.context.key&&g.setAttribute("data-smbls-app",o.context.key),o.id&&g.setAttribute&&(g.id=o.id),Ao(o,n),no(o),Dt(o),bo(o),cs(o);try{Co(o,n)}catch(h){if(typeof console<"u"&&console.error){const p=o.__ref?.path?.join(".")||o.key||"<root>";console.error(`[smbls] createChildren failed at ${p}:`,h?.message||h,h?.stack?`
1
+ import{createStore as St,createScopeStore as Po,isStore as W}from"@symbo.ls/signal";import{createEffect as S}from"@symbo.ls/signal";import{cacheNode as wt,detectTag as Gt}from"./cache.js";import{REGISTRY as G,LIFECYCLE_EVENTS as To}from"./registry.js";import{registerEvent as Lo,registerGlobalEvent as Do,globalEventKeyInfo as Oo}from"./delegate.js";import{applyExtends as No}from"./extends.js";import{addMethods as Ro}from"./methods.js";import"./dispose.js";import{isLoudDevRuntime as X}from"./devRuntime.js";import{mountBudgetExhausted as Ht,openMountBudget as Wt,closeMountBudget as zt,enqueueMountWork as Yt}from"./mountScheduler.js";import{replaceLiteralsWithObjectFields as $,isPolyglotWritableKey as Mo,markPolyglotSeeded as $o}from"@symbo.ls/utils";import*as Zt from"@symbo.ls/utils";import{runPluginHook as H}from"@symbo.ls/utils/function.js";import{applyStateMethods as et}from"@symbo.ls/state";import{CSS_PROPS_REGISTRY as T,DEFAULT_CSS_PROPERTIES_LIST as E,pushStaticCssPass as qt,popStaticCssPass as Qt}from"css-in-props";import{css as nt,wrapHoverRule as Xt}from"@symbo.ls/css";import{pushConfig as N,popConfig as R}from"@symbo.ls/scratch";import{checkAttributeByTagName as rt,applyAttrTransforms as Fo,ATTR_TRANSFORMS as kt,camelToAttr as it,serializeAttrValue as K,isEnumeratedTrueFalseAttr as ct}from"attrs-in-props";import{resolveElementIdEngine as Io}from"./engineRegistry.js";import{VERSION as Uo}from"./version.js";const Jt=Io({uniqId:1,scopedStyleId:0},Uo),ft=[];let jt=!1;function mt(){return typeof Date<"u"&&typeof Date.now=="function"?Date.now():0}function Bo(){return typeof document<"u"&&document.visibilityState==="hidden"}const Ko=250;function to(){if(!jt){if(jt=!0,typeof requestAnimationFrame!="function"){setTimeout(Et,0);return}Bo()?setTimeout(Et,Ko):requestAnimationFrame(Et)}}const Vo=300,Go=15e4;function Et(){if(jt=!1,!ft.length)return;const t=ft.splice(0,ft.length);for(let e=0;e<t.length;e++){const s=t[e];if(s.node){if(!s.node.isConnected){const n=s.__ref||(s.__ref={});n.__mountAttempts=(n.__mountAttempts||0)+1,n.__mountFirstAttemptAt==null&&(n.__mountFirstAttemptAt=mt());const r=mt()-n.__mountFirstAttemptAt;n.__mountAttempts<=Vo&&r<Go?(ft.push(s),to()):console.warn("[DOMQL] onMounted dropped after",n.__mountAttempts,"attempts /",r,"ms \u2014 node never connected:",s.key||s.tag||s);continue}M("Mounted",s,s.__ref?.__mountOptions||{})}}}function Pt(t,e){typeof t.onMounted=="function"&&(t.__ref.__mountOptions=e,ft.push(t),to())}function oo(t,e){if(typeof t.onContentUpdate!="function")return;t.context?.plugins?.length&&H("contentUpdate",t,e);const s=t.context?.designSystem;s&&N(s);try{t.onContentUpdate(t,t.state,t.context,e)}catch(n){if(t.context?.plugins?.length&&H("error",t,{hook:"onContentUpdate",error:n})||console.error('[DOMQL] Lifecycle "onContentUpdate" error:',n),t.context?.strictMode)throw n}finally{s&&R()}}function z(t){return t.length>2&&t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>=65&&t.charCodeAt(2)<=90}function Ho(t){return t.charAt(2).toLowerCase()+t.slice(3)}function Wo(t){return t.toLowerCase()}function Tt(t){const e=t.charCodeAt(0);return e===58||e===64||e===38||e===91}function at(t,e){const s={...t};for(const n in e){const r=s[n],f=e[n];r&&f&&typeof r=="object"&&typeof f=="object"&&!Array.isArray(r)&&!Array.isArray(f)&&typeof r!="function"&&typeof f!="function"?s[n]=at(r,f):s[n]=f}return s}function pt(t){if(typeof t=="string")return t||void 0;if(typeof t=="number"||typeof t=="bigint")return String(t)}function so(t,e,s){return pt(t)||(e&&typeof e=="object"?pt(e.key):void 0)||String(s)}function Z(t,e,s,n={},r){if(t==null||t===!1)return null;(typeof t=="string"||typeof t=="number")&&(t={text:t}),s=pt(s);const f=pt(t.key),o=Object.create(null);o.key=s||f||`_${Jt.uniqId++}`,o.parent=e||null,o.context=t.context||e?.context||n.context||{},o.context.__create||(o.context.__create=Z);const c=o.__ref={__if:!0,__children:[],__exec:{},__effects:[],__eventCleanup:[],root:e?.__ref?.root||o,path:e?.__ref?.path?[...e.__ref.path,o.key]:[o.key],origin:t};if(s&&!t.extends&&!t.extend){const h=s.indexOf("_"),p=s.indexOf(".");let x=h>0?h:-1;if(p>0&&(x<0||p<x)&&(x=p),x>0){const b=s.substring(0,x),C=o.context?.components;C&&(C[b]||C["smbls."+b])?t={...t,extends:b}:C&&X()&&(/^[A-Z]\w*_\d+$/.test(s)||/^[A-Z]\w*\.\w+$/.test(s))&&console.warn(`[smbls] auto-extend: key "${s}" looks like an instance of "${b}" but neither "${b}" nor "smbls.${b}" is registered in context.components \u2014 element will render as a plain <div>. Register the base component or rename the key.`)}}No(o,t,n);const u=new Set(["childProps","attr","style","scope","data"]),a=o.props&&typeof o.props=="object"?o.props:null;for(const h in t){if(h==="parent"||h==="node"||h==="__ref"||h==="extends"||h==="context"||h==="props")continue;if(h==="key"){f&&(o.key=f);continue}const p=t[h],x=o[h],b=x&&p&&typeof x=="object"&&typeof p=="object"&&!Array.isArray(x)&&!Array.isArray(p)&&typeof x!="function"&&typeof p!="function";b&&h.charCodeAt(0)>=65&&h.charCodeAt(0)<=90?o[h]=at(x,p):b&&u.has(h)?o[h]={...x,...p}:b&&Tt(h)?o[h]=at(x,p):o[h]=p}function d(h){for(const p in h){const x=h[p],b=o[p],C=b&&x&&typeof b=="object"&&typeof x=="object"&&!Array.isArray(b)&&!Array.isArray(x)&&typeof b!="function"&&typeof x!="function";C&&p.charCodeAt(0)>=65&&p.charCodeAt(0)<=90?o[p]=at(b,x):C&&u.has(p)?o[p]={...b,...x}:C&&Tt(p)?o[p]=at(b,x):o[p]=x}}a&&d(a),t.props&&typeof t.props=="object"&&d(t.props),t.data!==void 0&&(o.data=t.data),t.classlist!==void 0&&(o.classlist=t.classlist),t.text!==void 0&&(o.text=t.text),t.html!==void 0&&(o.html=t.html);const i=o.scope&&typeof o.scope=="object"?o.scope:null,l=e?.scope,y=o.context&&typeof o.context.globalScope=="object"&&o.context.globalScope||null,_=l||y||null;if(t.scope!==void 0||i){const h={};i&&Object.assign(h,i),t.scope!==void 0&&Object.assign(h,t.scope),o.scope=Po(h,_)}else _&&(o.scope=_);if(t.if!==void 0&&(o.if=t.if),Ro(o),zo(o,e,t),o.if!=null){let h;if(typeof o.if=="function")try{h=o.if(o,o.state,o.context)}catch(p){if(h=!1,c.__ifError=p,typeof console<"u"&&console.warn){const x=o.key||o.tag||"?";console.warn(`[smbls] \`if:\` evaluator threw on ${x} \u2014 treating as false:`,p?.message||p)}}else h=o.if;c.__if=!!h}if(c.__if)typeof o.if=="function"&&(c.__ifInitialized=!0);else return e&&(e[o.key]=o),typeof o.if=="function"&&co(o,c,o.if),o;o.tag||(o.tag=Gt(o)),M("Init",o,n);const g=o.node=wt(o);if(!g)return o;if(o.tag==="fragment"){const p=(o.context?.document||globalThis.document).createComment("");g.appendChild(p),c.__fragmentAnchor=p}M("AttachNode",o,n),g.setAttribute&&o.key&&g.setAttribute("data-key",o.key),e&&(e[o.key]=o,e.__ref?.__children&&(e.__ref.__children.includes(o.key)||e.__ref.__children.push(o.key))),g.setAttribute&&o.context?.scopeSelector&&o.context.scopeSelector!==":root"&&o.context.key&&o.key===o.context.key&&g.setAttribute("data-smbls-app",o.context.key),o.id&&g.setAttribute&&(g.id=o.id),Co(o,n),ro(o),Dt(o),xo(o),fs(o);try{vo(o,n)}catch(h){if(typeof console<"u"&&console.error){const p=o.__ref?.path?.join(".")||o.key||"<root>";console.error(`[smbls] createChildren failed at ${p}:`,h?.message||h,h?.stack?`
2
2
  `+h.stack.split(`
3
3
  `).slice(0,6).join(`
4
- `):"")}}if(bt(o,!0),vo(o,e,r),typeof o.html=="function"&&o.node&&!o.node.innerHTML){const h=o.context?.designSystem;h&&N(h);try{const p=o.html(o,o.state,o.context);p!=null&&typeof p!="function"&&(o.node.innerHTML=p)}catch{}finally{h&&R()}}if(M("Create",o,n),M("Complete",o,n),M("Render",o,n),M("RenderRouter",o,n),Pt(o,n),typeof o.onFrame=="function"){const h=o.onFrame,p=o.context?.designSystem,x=()=>{if(o.node){if(o.node.isConnected){p&&N(p);try{h(o,o.state,o.context)}catch(b){console.error("[DOMQL] onFrame error:",b)}finally{p&&R()}}requestAnimationFrame(x)}};requestAnimationFrame(x)}return o}function Wo(t,e,s){const n=!e,r=s.state&&typeof s.state=="object"&&!Array.isArray(s.state)&&Object.keys(s.state).length===0,f=n&&r&&t.context?.state,o=s.state!==void 0&&!f?s.state:t.state&&!W(t.state)?t.state:void 0;if(o==null){if(e?.state)t.state=e.state,et(t,t.state);else if(t.context?.state){const c=t.context.state,u={...c},a=t.context?.polyglot;if(a?.translations){const d=t.context,i=c.lang||a.defaultLang||"en",l=new Set,y=(h,p)=>{l.has(h)||Ro(d,h,u)&&(u[h]=p,l.add(h),Mo(d,h))},_=a.translations[i];if(_&&typeof _=="object")for(const h in _)y(h,_[h]);const g=new Set(a.languages||[]);for(const h in a.translations)g.has(h)||y(h,a.translations[h])}t.state=W(u)?u:St(u),t.state.__element=t,t.state.root=t.state,et(t,t.state)}else t.state={},Object.defineProperty(t.state,"root",{value:t.state,enumerable:!1,configurable:!0,writable:!0}),et(t,t.state);return}if(typeof o=="string"){if(t.state=so(o,e),t.state&&typeof t.state=="object"&&!W(t.state)){const c=e?.state?.root||e?.state||t.state;Object.defineProperty(t.state,"root",{value:c,enumerable:!1,configurable:!0,writable:!0})}et(t,t.state);return}if(typeof o=="function"){const c=o(t,e?.state);t.state=W(c)?c:St(c||{})}else W(o)?t.state=o:t.state=St({...o});t.state.__element=t,e?.state?(t.state.parent=e.state,t.state.root=e.state.root||e.state):t.state.root=t.state,et(t,t.state)}function Lt(t,e){if(!e)return t;const s=e.split("/");let n=t;for(const r of s){if(n==null)return{};n=n[r]}return n??{}}function so(t,e){if(!e)return{};if(t===".")return e.state||{};if(t.startsWith("../")){const r=t.slice(3);return r?Lt(e.state,r):e.state??{}}if(t.startsWith("~/")){const r=e.state?.root||e.state,f=t.slice(2);return f?Lt(r,f):r??{}}if(e.state?.[t]!==void 0)return e.state[t];const s=Lt(e.state,t);if(s!=null&&Object.keys(s).length>0)return s;const n=e.context?.polyglot;if(n?.translations){const r=e.state?.root?.lang||n.defaultLang||"en",f=n.translations[r];if(f?.[t]!==void 0)return f[t];if(n.translations[t]!==void 0)return n.translations[t]}return{}}const zo=new Set(["s","state","ctx","context"]);function Yo(t){try{const s=Function.prototype.toString.call(t).match(/^[^(]*\(([^)]*)\)/);return s?s[1].split(",").map(n=>n.trim().split("=")[0].trim()).filter(Boolean):[]}catch{return[]}}function Zo(t){if(typeof t!="function"||t.length!==2)return!1;const e=Yo(t);if(e.length<2)return!1;const s=e[1].replace(/[{}[\]]/g,"").trim();return s.length>0&&!zo.has(s)}function qo(t){const e=t.__ref,s=t.tag||"div",n=t.context?.designSystem,r=[],f=Object.keys(t);for(let o=0;o<f.length;o++){const c=f[o];if(typeof t[c]!="function"||G.has(c))continue;const u=c.charCodeAt(0);u>=65&&u<=90||z(c)||T[c]||E&&E.has(c)||rt(s,c)||(X()&&Zo(t[c])&&console.warn(`[smbls] custom prop "${c}"${t.key?` on key "${t.key}"`:""} is a function \u2014 it will be auto-invoked on read and its RETURN VALUE stored, not preserved as a callable reference. If you meant to stash a callback, use el.call('${c}', \u2026) instead of reading el.${c}(\u2026) directly (see RULES.md Rule 8).`),r.push({prop:c,fn:t[c]}))}for(let o=0;o<r.length;o++){const{prop:c,fn:u}=r[o];e.__exec[c]=u,Object.defineProperty(t,c,{get(){n&&N(n);try{return u(t,t.state,t.context)}catch{return}finally{n&&R()}},set(a){delete e.__exec[c],Object.defineProperty(t,c,{value:a,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}}function Qo(t,e){if(!(!Array.isArray(e)||e.length===0))for(let s=0;s<e.length;s++){const n=e[s];try{typeof n=="function"?n(t,t.state,t.context):typeof n=="string"&&t.state?.[n]}catch{}}}function D(t,e,s){return!Array.isArray(e)||e.length===0?s:function(...n){return Qo(t,e),s.apply(this,n)}}function ut(t,e){if(!(!t||Array.isArray(t)||typeof t!="object"))return t[e]}function v(t,e){return()=>t.path.join(".")+"::"+e}const eo=new Set;function F(t,e,s){if(!X())return;const n=v(t,e)();eo.has(n)||(eo.add(n),console.warn(`[smbls] "${e}" effect threw on ${t.path.join(".")} \u2014 keeping previous value:`,s?.message||s))}function no(t,e){const s=t.__ref,n=!!(e&&e.skipIfEffect);if(qo(t),typeof t.text=="function"){const o=t.text,c=D(t,t.textDeps,o),u=S(()=>{if(!s.contentManaged)try{let a=c(t,t.state,t.context);t.node&&a!=null&&typeof a!="function"&&typeof a!="object"&&(typeof a=="string"&&a.includes("{{")&&(a=$.call(t,a,t.state)),yt(t,a))}catch(a){F(s,"text",a)}},{depth:s.path.length,label:v(s,"text")});s.__effects.push(u),s.__exec.text=o}else if(typeof t.text=="string"&&t.text.includes("{{")){const o=t.text,c=S(()=>{if(s.contentManaged)return;const u=$.call(t,o,t.state);u!=null&&(t.text=u),t.node&&yt(t,u??"")},{depth:s.path.length,label:v(s,"text")});s.__effects.push(c),s.__exec.text=o}for(const o of Object.keys(t))if(typeof t[o]=="function"&&!G.has(o)&&!z(o)&&!s.__exec[o]){if(T[o]){const c=t[o],u=D(t,t[o+"Deps"],c),a=o;let d,i=null,l=null,y;const _=S(()=>{const g=t.context?.designSystem;g&&N(g);try{const h=u(t,t.state,t.context);Zt();let p;try{p=T[a](h,t,t.state,t.context)}finally{qt()}if(Array.isArray(p)){const b={};for(const C of p)if(C)for(const A in C)b[A]=C[A];p=b}const x=a==="show"||a==="hide";if(p&&t.node&&Xo(p)){const b=ht(p);if(b===null||b!==y){y=b;const C=nt(p,null,t.context?.cssPrefix),A=C?C.split(" ").filter(Boolean):null;if(t.node.classList){if(l)for(const w of l)t.node.classList.remove(w);if(A&&A.length)for(const w of A)t.node.classList.add(w);l=A}}d=void 0,i=null}else if(p&&t.node){if(l){for(const C of l)t.node.classList.remove(C);l=null,y=void 0}const b=ht(p);(b===null||b!==d||!gt(t.node,i))&&(d=b,J(t.node,p),i=_t(t.node,p))}else if(t.node&&x){d=void 0,i=null;const b=s.__explicitDisplay;t.node.style.display=typeof b=="string"?b:""}}finally{g&&R()}},{depth:s.path.length,label:v(s,a)});s.__effects.push(_),s.__exec[o]=c}else if(E&&E.has(o)){const c=t[o],u=D(t,t[o+"Deps"],c),a=o;let d,i=null;const l=S(()=>{const y=t.context?.designSystem;y&&N(y);try{const _=u(t,t.state,t.context);if(t.node)if(_!=null){const g=a+":"+String(_);if(g!==d||!gt(t.node,i)){d=g;const h={[a]:_};J(t.node,h),i=_t(t.node,h)}}else d=void 0,i=null,t.node.style[a]=""}finally{y&&R()}},{depth:s.path.length,label:v(s,a)});s.__effects.push(l),s.__exec[o]=c}}if(typeof t.html=="function"){const o=t.html,c=D(t,t.htmlDeps,o),u=S(()=>{const a=t.context?.designSystem;a&&N(a);try{const d=c(t,t.state,t.context);t.node&&d!=null&&typeof d!="function"&&(t.node.innerHTML=d)}finally{a&&R()}},{depth:s.path.length,label:v(s,"html")});s.__effects.push(u),s.__exec.html=o}if(typeof t.value=="function"){const o=t.value,c=D(t,t.valueDeps,o),u=S(()=>{try{let a=c(t,t.state,t.context);typeof a=="string"&&a.includes("{{")&&(a=$.call(t,a,t.state)),co(t,a)}catch(a){F(s,"value",a)}},{depth:s.path.length,label:v(s,"value")});s.__effects.push(u),s.__exec.value=o}else if(typeof t.value=="string"&&t.value.includes("{{")){const o=t.value,c=S(()=>{try{co(t,$.call(t,o,t.state))}catch(u){F(s,"value",u)}},{depth:s.path.length,label:v(s,"value")});s.__effects.push(c),s.__exec.value=o}if(typeof t.style=="function"){const o=t.style,c=D(t,t.styleDeps,o);let u,a=null;const d=S(()=>{const i=c(t,t.state,t.context),l=ht(i);(l===null||l!==u||!gt(t.node,a))&&(u=l,J(t.node,i),a=_t(t.node,i))},{depth:s.path.length,label:v(s,"style")});s.__effects.push(d),s.__exec.style=o}else if(t.style&&typeof t.style=="object")for(const o in t.style){const c=t.style[o];if(typeof c!="function")continue;const u=D(t,ut(t.styleDeps,o),c);let a,d=null;const i=S(()=>{try{const l=u(t,t.state,t.context);if(t.node){const y=o+":"+String(l);if(y!==a||!gt(t.node,d)){a=y;const _={[o]:l};J(t.node,_),d=_t(t.node,_)}}}catch(l){F(s,"style."+o,l)}},{depth:s.path.length,label:v(s,"style."+o)});s.__effects.push(i)}if(t.attr&&typeof t.attr=="object"){for(const o in t.attr)if(typeof t.attr[o]=="function"){const c=D(t,ut(t.attrDeps,o),t.attr[o]),u=o,a=S(()=>{try{let d=c(t,t.state,t.context);typeof d=="string"&&d.includes("{{")&&(d=$.call(t,d,t.state)),t.node?.setAttribute&&(d==null||d===!1&&!ct(u)?t.node.removeAttribute(u):typeof d!="function"&&typeof d!="object"&&t.node.setAttribute(u,K(u,d)))}catch(d){F(s,"attr."+u,d)}},{depth:s.path.length,label:v(s,"attr."+u)});a._attrName=u.toLowerCase(),s.__effects.push(a)}else if(typeof t.attr[o]=="string"&&t.attr[o].includes("{{")){const c=t.attr[o],u=o,a=S(()=>{try{const d=$.call(t,c,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(u,K(u,d??""))}catch(d){F(s,"attr."+u,d)}},{depth:s.path.length,label:v(s,"attr."+u)});a._attrName=u.toLowerCase(),s.__effects.push(a)}}if(t.aria&&typeof t.aria=="object")for(const o in t.aria){const c=t.aria[o];if(typeof c=="string"&&c.includes("{{")){const i=c,l="aria-"+o.replace(/[A-Z]/g,_=>"-"+_.toLowerCase()),y=S(()=>{try{const _=$.call(t,i,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(l,K(l,_??""))}catch(_){F(s,"aria."+o,_)}},{depth:s.path.length,label:v(s,"aria."+o)});y._attrName=l,s.__effects.push(y);continue}if(typeof c!="function")continue;const u=D(t,ut(t.ariaDeps,o),t.aria[o]),a="aria-"+o.replace(/[A-Z]/g,i=>"-"+i.toLowerCase()),d=S(()=>{try{const i=u(t,t.state,t.context);if(!t.node?.setAttribute)return;i==null?t.node.removeAttribute(a):typeof i!="function"&&typeof i!="object"&&t.node.setAttribute(a,K(a,i))}catch(i){F(s,"aria."+o,i)}},{depth:s.path.length,label:v(s,"aria."+o)});d._attrName=a,s.__effects.push(d)}if(t.data&&typeof t.data=="object")for(const o in t.data){const c=t.data[o];if(typeof c=="string"&&c.includes("{{")){const l=c,y="data-"+o.replace(/[A-Z]/g,g=>"-"+g.toLowerCase()),_=S(()=>{try{const g=$.call(t,l,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(y,g??"")}catch(g){F(s,"data."+o,g)}},{depth:s.path.length,label:v(s,"data."+o)});_._attrName=y,s.__effects.push(_);continue}if(typeof c!="function")continue;const u=D(t,ut(t.dataDeps,o),t.data[o]),d="data-"+o.replace(/[A-Z]/g,l=>"-"+l.toLowerCase()),i=S(()=>{try{const l=u(t,t.state,t.context);if(!t.node?.setAttribute)return;l==null||l===!1?t.node.removeAttribute(d):typeof l!="function"&&typeof l!="object"&&t.node.setAttribute(d,l===!0?"":l)}catch(l){F(s,"data."+o,l)}},{depth:s.path.length,label:v(s,"data."+o)});i._attrName=d,s.__effects.push(i)}const r=t.classlist&&typeof t.classlist=="object"&&!Array.isArray(t.classlist)?t.classlist:t.class&&typeof t.class=="object"&&!Array.isArray(t.class)?t.class:null;if(r)for(const o in r){if(typeof r[o]!="function")continue;const c=D(t,ut(t.classDeps,o),r[o]),u=S(()=>{try{const a=c(t,t.state,t.context);if(!t.node?.classList)return;typeof a=="string"?t.node.classList.add(a):a?t.node.classList.add(o):t.node.classList.remove(o)}catch(a){F(s,"class."+o,a)}},{depth:s.path.length,label:v(s,"class."+o)});s.__effects.push(u)}!n&&typeof t.if=="function"&&io(t,s,t.if);for(const o of Object.keys(t)){if(G.has(o)||typeof t[o]!="function")continue;const c=o.charCodeAt(0);if(c>=65&&c<=90||z(o))continue;const u=t[o];s.__exec[o]=u;const a=t.tag||"div";if(rt(a,o)&&!T[o]&&!(E&&E.has(o))){const d=it(o)||o,i=D(t,t[o+"Deps"],u),l=S(()=>{try{let y=i(t,t.state,t.context);typeof y=="string"&&y.includes("{{")&&(y=$.call(t,y,t.state)),t.node?.setAttribute&&(y==null||y===!1&&!ct(d)?t.node.removeAttribute(d):typeof y!="function"&&typeof y!="object"&&(d==="src"&&"src"in t.node?t.node.src=y:t.node.setAttribute(d,K(d,y))))}catch(y){F(s,o,y)}},{depth:s.path.length,label:v(s,o)});l._attrName=d.toLowerCase(),s.__effects.push(l)}}const f=t.tag||"div";for(const o of Object.keys(t)){if(G.has(o))continue;const c=t[o];if(typeof c!="string"||!c.includes("{{"))continue;const u=o.charCodeAt(0);if(u>=65&&u<=90||z(o)||T[o]||E&&E.has(o)||kt[o]||!rt(f,o))continue;const a=it(o)||o,d=S(()=>{try{const i=$.call(t,c,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(a,K(a,i??""))}catch(i){F(s,o,i)}},{depth:s.path.length,label:v(s,o)});d._attrName=a.toLowerCase(),s.__effects.push(d)}if(ts(t),es(t),typeof t.onStateUpdate=="function"&&Array.isArray(t.stateDeps)){const o=t.onStateUpdate,c=t.stateDeps;let u=!1,a=[];const d=S(()=>{const i=[];for(let g=0;g<c.length;g++){const h=c[g];try{i[g]=typeof h=="function"?h(t,t.state,t.context):t.state?.[h]}catch{i[g]=void 0}}if(!u){u=!0,a=i;return}let l=i.length!==a.length;for(let g=0;!l&&g<i.length;g++)i[g]!==a[g]&&(l=!0);const y=a;if(a=i,!l)return;const _=t.context?.designSystem;_&&N(_);try{o(t,t.state,t.context,{prev:y,next:i})}catch(g){if(t.context?.plugins?.length&&H("error",t,{hook:"onStateUpdate",error:g})||console.error('[DOMQL] Lifecycle "onStateUpdate" error:',g),t.context?.strictMode)throw g}finally{_&&R()}},{depth:s.path.length,label:v(s,"onStateUpdate")});s.__effects.push(d)}ss(t)}function ro(t){const e=t.parent,s=e?.node;if(!s||!t.node){vo(t,t.parent);return}let n=null;const r=Object.keys(e),f=r.indexOf(t.key);for(let o=f+1;o<r.length;o++){const c=e[r[o]];if(c?.node?.parentNode===s){n=c.node;break}}n?s.insertBefore(t.node,n):s.appendChild(t.node)}function io(t,e,s){const n=D(t,t.ifDeps,s),r=S(()=>{let f;try{f=n(t,t.state,t.context)}catch(c){if(f=!1,e.__ifError=c,typeof console<"u"&&console.warn){const u=t.key||t.tag||"?";console.warn(`[smbls] \`if:\` reactive effect threw on ${u} \u2014 treating as false:`,c?.message||c)}return}const o=e.__if;if(e.__if=!!f,o&&!e.__if&&t.node){t.node.remove();try{typeof t.onRemove=="function"&&t.onRemove(t)}catch(c){console.error("[smbls] onRemove error:",c)}}else if(!o&&e.__if)if(e.__ifInitialized)t.node||(t.node=wt(t)),t.node&&(t.node.ref=t),ro(t),Dt(t),M("Render",t,{}),Pt(t,{});else{if(e.__ifInitialized=!0,t.tag||(t.tag=Gt(t)),M("Init",t,{}),t.node||(t.node=wt(t)),!t.node)return;if(t.parent?.__ref?.__children&&!t.parent.__ref.__children.includes(t.key)&&t.parent.__ref.__children.push(t.key),t.tag==="fragment"&&!e.__fragmentAnchor){const u=(t.context?.document||globalThis.document).createComment("");t.node.appendChild(u),e.__fragmentAnchor=u}M("AttachNode",t,{}),t.node.setAttribute&&t.key&&t.node.setAttribute("data-key",t.key),t.id&&t.node.setAttribute&&(t.node.id=t.id),Ao(t,{}),no(t,{skipIfEffect:!0}),Dt(t),bo(t),Co(t,{}),ro(t),M("Create",t,{}),M("Complete",t,{}),M("Render",t,{}),M("RenderRouter",t,{}),Pt(t,{})}},{depth:e.path.length,label:v(e,"if")});e.__effects.push(r)}function yt(t,e){const s=t.node;if(!s)return;const n=e==null||typeof e=="object"?"":String(e);if(t.tag==="string"){s.nodeValue!==n&&(s.nodeValue=n);return}const r=t.__ref;let f=r?r.__textNode:null;if(f&&f.parentNode!==s&&(f=null),!f){const o=s.firstChild;o&&o.nodeType===3&&(f=o)}f?f.nodeValue!==n&&(f.nodeValue=n):s.firstChild?(f=(s.ownerDocument||t.context?.document||globalThis.document).createTextNode(n),s.insertBefore(f,s.firstChild)):(s.textContent=n,f=s.firstChild&&s.firstChild.nodeType===3?s.firstChild:null),r&&(r.__textNode=f||null)}function co(t,e){const s=t.node;if(!s||!("value"in s))return;const n=e==null?"":String(e);if(s.value===n)return;const r=typeof document<"u"&&document.activeElement===s,f=r&&typeof s.selectionStart=="number"?s.selectionStart:null,o=r&&typeof s.selectionEnd=="number"?s.selectionEnd:null;if(s.value=n,r&&f!=null&&o!=null)try{s.setSelectionRange(f,o)}catch{}}function Dt(t){const{node:e}=t;if(e){if((typeof t.text=="string"&&!t.text.includes("{{")||typeof t.text=="number")&&yt(t,t.text),rs(t),typeof t.html=="string"&&(e.innerHTML=t.html),t.value!=null&&typeof t.value!="function"&&!(typeof t.value=="string"&&t.value.includes("{{"))&&"value"in e){const s=String(t.value);e.value!==s&&(e.value=s)}if(t.style&&typeof t.style=="object"){let s=t.style;for(const n in t.style)if(typeof t.style[n]=="function"){s={};for(const r in t.style)typeof t.style[r]!="function"&&(s[r]=t.style[r]);break}J(e,s)}if(t.attr&&typeof t.attr=="object")for(const s in t.attr){const n=t.attr[s];typeof n=="function"||typeof n=="object"||n!=null&&(typeof n=="string"&&n.includes("{{")||n===!1&&!ct(s)||e.setAttribute&&e.setAttribute(s,K(s,n)))}if(t.data&&typeof t.data=="object")for(const s in t.data){const n=t.data[s];typeof n=="function"||typeof n=="object"||n==null||n===!1||typeof n=="string"&&n.includes("{{")||e.dataset&&(e.dataset[s]=n===!0?"":n)}if(t.classlist||t.class){const s=t.classlist||t.class;if(typeof s=="string")s.split(" ").forEach(n=>n&&e.classList.add(n));else if(typeof s=="object")for(const n in s){const r=typeof s[n]=="function"?s[n](t,t.state,t.context):s[n];r&&e.classList.add(typeof r=="string"?r:n)}}}}function ht(t){if(t==null||typeof t!="object")return"s:"+String(t);try{return"o:"+JSON.stringify(t)}catch{return null}}function Xo(t){if(!t||typeof t!="object")return!1;for(const e in t){const s=t[e];if(s&&typeof s=="object"&&!Array.isArray(s))return!0}return!1}function _t(t,e){if(!t||!t.style||!e)return null;const s=t.style,n=[];for(const r in e){if(e[r]==null||r.charAt(0)==="&")continue;const o=r.replace(/[A-Z]/g,c=>"-"+c.toLowerCase());n.push(o,fo(s,o),ao(s,o))}return n}function fo(t,e){return typeof t.getPropertyValue=="function"?t.getPropertyValue(e):""}function ao(t,e){return typeof t.getPropertyPriority=="function"?t.getPropertyPriority(e):""}function gt(t,e){if(!e||!t||!t.style)return!1;const s=t.style;for(let n=0;n<e.length;n+=3)if(fo(s,e[n])!==e[n+1]||ao(s,e[n])!==e[n+2])return!1;return!0}const Ot=t=>t.charCodeAt(0)===45&&t.charCodeAt(1)===45;function J(t,e){if(!t||!e||!t.style)return;let s=null;for(const n in e){const r=e[n];if(r!=null){if(n.charAt(0)==="&"&&typeof r=="object"){s||(s={}),s[n]=r;continue}try{const f=String(r),o=Ot(n)?n:n.replace(/[A-Z]/g,d=>"-"+d.toLowerCase()),c=f.trim(),u=/\s*!important\s*$/.test(c),a=c.replace(/\s*!important\s*$/,"");t.style.setProperty(o,a,u?"important":"")}catch{}}}s&&Jo(t,s)}function Jo(t,e){const s=`_ds${Xt.scopedStyleId++}`;t.classList.add(s);const n=t.ownerDocument;let r=n.querySelector("style[data-smbls-scoped]");r||(r=n.createElement("style"),r.setAttribute("data-smbls-scoped",""),n.head.appendChild(r));let f="";for(const o in e){const c="."+s,u=o.replace(/&/g,c).split(",").map(d=>{const i=d.trim();return i.includes(c)?i:c+i}).join(", "),a=e[o];if(typeof a=="object"){let d="",i="";for(const l in a){const y=a[l];if(typeof y=="object"){const _=l.includes("&")?u.split(", ").map(h=>l.replace(/&/g,h)).join(", "):u.split(", ").map(h=>`${h} ${l}`).join(", ");let g="";for(const h in y)g+=`${h.replace(/[A-Z]/g,p=>"-"+p.toLowerCase())}: ${y[h]};`;i+=Qt(`${_} { ${g} }`,_)+`
5
- `}else d+=`${l.replace(/[A-Z]/g,_=>"-"+_.toLowerCase())}: ${y};`}d&&(f+=Qt(`${u} { ${d} }`,u)+`
6
- `),i&&(f+=i)}}f&&(r.textContent+=f)}const uo=new Set;function lo(t){if(!Array.isArray(t))return"";const e=[];for(let s=0;s<t.length;s++)typeof t[s]=="string"&&t[s].length&&e.push(t[s]);return e.sort(),e.join("|")}function mo(t,e,s){const n=lo(s);queueMicrotask(()=>{if(!t.__ref)return;let r;try{r=e(t,t.state,t.context)}catch{return}if(lo(r)===n)return;const f=t.__ref.path?t.__ref.path.join("."):t.key||"?";uo.has(f)||(uo.add(f),console.warn(`[smbls] subscribeTo function at "${f}" resolved to a DIFFERENT key list one microtask after create \u2014 wired [${s.join(", ")||"(none)"}], probed [${Array.isArray(r)?r.join(", "):String(r)}]. subscribeTo's function form is resolved ONCE at element-create time (registerSubscribeToEffects, @symbo.ls/element create.js) \u2014 this element stays wired to the ORIGINAL list for its whole lifetime, so this drift is invisible to the reactive effect and any key only present in the new list will never trigger onUpdate. If the watched key genuinely is not known until later (e.g. a module config that loads after shell boot), route the write through an imperative call instead of subscribeTo \u2014 see functions/moduleOpenBridge.js's moduleOpenPage (workspace repo) for the house pattern.`))})}function ts(t){const e=t.subscribeTo,s=typeof e=="function";let n=e;if(s)try{n=e(t,t.state,t.context)}catch{n=null}if(s&&X()&&mo(t,e,Array.isArray(n)?n:[]),!Array.isArray(n)||n.length===0)return;const r=t.__ref;for(let f=0;f<n.length;f++){const o=n[f];if(typeof o!="string"||o.length===0)continue;const c=o.split("."),u=c[0],a=c.slice(1),d={value:!1},i=S(()=>{const l=t.state&&(W(t.state)?t.state.root:null);if(!l||!W(l))return;let y=l;y=y[u];for(let g=0;g<a.length&&!(y==null||typeof y!="object");g++)if(W(y))y=y[a[g]];else break;if(!d.value)return;let _=!1;if(typeof t.onBeforeUpdate=="function"){const g=t.context?.designSystem;g&&N(g);try{if(as(r)){const h=t.onBeforeUpdate(t,t.state,t.context,{updateBySubscription:!0});h&&typeof h.then=="function"?h.then(()=>xt(r,!1),p=>{xt(r,!0),t.context?.plugins?.length&&H("error",t,{hook:"onBeforeUpdate",error:p})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",p)}):(xt(r,!1),h===!1&&(_=!0))}}catch(h){xt(r,!0),t.context?.plugins?.length&&H("error",t,{hook:"onBeforeUpdate",error:h})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",h)}finally{g&&R()}}if(!_&&t.node&&r.__effects)for(let g=0;g<r.__effects.length;g++){const h=r.__effects[g];h&&h!==i&&!h._disposed&&!h._isSubscribeToEffect&&typeof h._execute=="function"&&h._execute()}if(!_&&typeof t.onUpdate=="function"){const g=t.context?.designSystem;g&&N(g);try{t.onUpdate(t,t.state,t.context)}catch(h){t.context?.plugins?.length&&H("error",t,{hook:"onUpdate",error:h})||console.error("[DOMQL] subscribeTo onUpdate error:",h)}finally{g&&R()}}},{depth:r.path.length,label:v(r,"subscribeTo("+o+")")});d.value=!0,i._isSubscribeToEffect=!0,r.__effects.push(i)}}function Nt(t,e){return t.charCodeAt(0)===64&&t.length>1&&!t.startsWith("@media")&&!t.startsWith("@keyframes")&&!t.startsWith("@supports")&&!t.startsWith("@container")&&(t==="@dark"||t==="@light"||!e.context?.designSystem?.media?.[t.slice(1)])}function Rt(t,e){if(t.charCodeAt(0)!==64||/^@(media|supports|container|keyframes)\b/.test(t))return t;const s=e.context?.designSystem?.media?.[t.slice(1)];return s?/^@(media|supports|container)\b/.test(s)?s:`@media ${s}`:t}const po=new Set;function os(t,e){const s=e?.__ref?.path?e.__ref.path.join("."):e?.key||"?",n=s+"::"+t;po.has(n)||(po.add(n),console.warn(`[smbls/css] "${t}" at ${s} is a CHILD-COMPONENT key nested inside a pseudo/selector block (":hover", "@dark", etc.) \u2014 that is never a valid CSS selector fragment. The rule is DROPPED (not shipped as a dead/never-matching selector). To reveal a child on a parent state, target the child's OWN class from the parent selector instead, e.g. move the declaration onto the child element itself, or use a sibling-selector combinator in a top-level style block.`))}function m(t,e,s){const n={},r=new Set,f=(o,c,u)=>{const a=u?new Set(Object.keys(n)):null;if(T[o]){const d=T[o](c,e,e.state,e.context);if(d){const i=Array.isArray(d)?d:[d];for(const l of i)l&&Object.assign(n,l)}}else n[o]=c;if(u)for(const d in n)a.has(d)||r.add(d)};for(const o in t){if(!Object.prototype.hasOwnProperty.call(t,o))continue;let c=t[o];if(typeof c=="function"&&(c=c(e,e.state,e.context)),c==null||typeof c=="function")continue;if(typeof c=="object"&&!Array.isArray(c)){if(o==="style"){for(const i in c){let l=c[i];if(typeof l=="function"&&(l=l(e,e.state,e.context)),l==null||typeof l=="function")continue;const y=typeof e[i]=="function"&&(T[i]||E&&E.has(i));f(i,l,y)}continue}if(Nt(o,e)){const i=m(c,e,!1);Object.keys(i).length&&(n[`[data-theme="${o.slice(1)}"] &`]=i);continue}if(/^[A-Z][A-Za-z0-9]*$/.test(o)){X()&&os(o,e);continue}const a=Rt(o,e),d=m(c,e,!1);Object.keys(d).length&&(n[a]=d);continue}const u=typeof e[o]=="function"&&(T[o]||E&&E.has(o));f(o,c,u)}if(s)for(const o in n)r.add(o);for(const o of r){const c=n[o];typeof c=="string"&&!c.includes("!important")&&(n[o]=c+" !important")}return n}function Mt(t,e){if(e===void 0&&(e=0),e>8)return!1;if(typeof t=="function")return!0;if(t&&typeof t=="object"&&!Array.isArray(t)){for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)&&Mt(t[s],e+1))return!0}return!1}function yo(t,e,s){if(!e||typeof e!="object"||Array.isArray(e))return null;if(Nt(t,s)){const f=m(e,s,!1);return Object.keys(f).length?{cssProp:`[data-theme="${t.slice(1)}"] &`,block:f}:null}const n=Rt(t,s),r=m(e,s,!1);return Object.keys(r).length?{cssProp:n,block:r}:null}function ss(t){const e=t.__ref;for(const s of Object.keys(t)){if(!Tt(s))continue;const n=t[s];if(!n||typeof n!="object"||Array.isArray(n)||!Mt(n))continue;let r=null,f;const o=S(()=>{if(!t.node)return;const c=t.context?.designSystem;c&&N(c);let u,a=!1;try{const d=yo(s,n,t),i=d?ht(d.block)+"::"+d.cssProp:null;if(i!==null&&i===f)a=!0;else if(f=i,d){const l=nt({[d.cssProp]:d.block},null,t.context?.cssPrefix);u=l?l.split(" ").filter(Boolean):null}else u=null}finally{c&&R()}if(!(a||!t.node.classList)){if(r)for(const d of r)t.node.classList.remove(d);if(u&&u.length)for(const d of u)t.node.classList.add(d);r=u}},{depth:e.path.length,label:v(e,"cssBlock("+s+")")});e.__effects.push(o)}}function es(t){const e=t.__ref;e.__conditionalRunners=[];const s=new Map;for(const n of Object.keys(t)){const r=n.charAt(0);if(r!=="."&&r!=="!")continue;const f=n.slice(1);if(!f)continue;if(/[:@\s>~+[\]]/.test(f)){if(typeof console<"u"&&console.warn){const y=f.split(/[:@\s>~+[\]]/)[0];console.warn(`[smbls] conditional \`${n}\` on ${t.key||"?"} will never match \u2014 the whole string after \`${r}\` is read as one prop name. Nest the selector inside instead: \`${r}${y}: { '${f.slice(y.length)}': {...} }\`.`)}continue}const o=t[n];if(!o||typeof o!="object")continue;const c=r==="!",u={lastMatch:!1,appliedKeys:null,appliedClasses:null},a=()=>{let y;const _=t[f];if(_===void 0){const p=!!t.state&&f in t.state,x=t.state?t.state[f]:void 0;if(p||x!==void 0)y=x;else{const b=t.context?.cases?.[f];if(b===void 0)return;try{y=typeof b=="function"?b.call(t,t):b}catch(C){y=!1,e.__conditionalError=C,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` case fn threw on ${t.key||"?"} \u2014 treating as false:`,C?.message||C)}}}else if(typeof _=="function")try{y=_(t,t.state,t.context)}catch(p){y=!1,e.__conditionalError=p,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` predicate threw on ${t.key||"?"} \u2014 treating as false:`,p?.message||p)}else y=_;const g=c?!y:!!y;if(!t.node||g===u.lastMatch)return;u.lastMatch=g;const h=t.context?.designSystem;h&&N(h);try{if(g){const p={},x={};let b=!1;for(const A in o){if(!Object.prototype.hasOwnProperty.call(o,A))continue;const w=o[A],Y=A.charAt(0);if((Y===":"||Y==="@"||Y==="&"||Y==="[")&&w&&typeof w=="object"&&!Array.isArray(w)){if(Nt(A,t)){const P=m(w,t,!1);Object.keys(P).length&&(x[`[data-theme="${A.slice(1)}"] &`]=P,b=!0)}else{const P=Rt(A,t),L=m(w,t,!1);Object.keys(L).length&&(x[P]=L,b=!0)}continue}const q=typeof w=="function"?w(t,t.state,t.context):w;if(q!=null)if(T[A]){const P=T[A](q,t,t.state,t.context);if(P){const L=Array.isArray(P)?P:[P];for(const tt of L)tt&&Object.assign(p,tt)}}else(E&&E.has(A)||Ot(A))&&(p[A]=q)}const C=Object.keys(p);if(C.length){J(t.node,p);for(const A of C)s.set(A,n);u.appliedKeys=C}else u.appliedKeys=null;if(b){const A=nt(x,null,t.context?.cssPrefix),w=A?A.split(" ").filter(Boolean):[];if(w.length&&t.node.classList){for(const Y of w)t.node.classList.add(Y);u.appliedClasses=w}else u.appliedClasses=null}else if(u.appliedClasses){for(const A of u.appliedClasses)t.node.classList.remove(A);u.appliedClasses=null}}else{if(u.appliedKeys){for(const p of u.appliedKeys)s.get(p)===n&&(Ot(p)?t.node.style.removeProperty(p):t.node.style[p]="",s.delete(p));u.appliedKeys=null}if(u.appliedClasses){for(const p of u.appliedClasses)t.node.classList.remove(p);u.appliedClasses=null}}}finally{h&&R()}};e.__conditionalRunners.push(a);const d=D(t,t[f+"Deps"],a),i=S(d,{depth:e.path.length,label:v(e,"conditional("+n+")")}),l=e.__exec&&e.__exec[f]||t[f];i._sources.size===0&&typeof l=="function"&&X()&&console.warn(`[smbls] conditional \`${n}\` on ${t.key||"?"} subscribed to nothing \u2014 its predicate tracked no reactive read on its first run, so no state write will ever re-evaluate it (only a direct element.update() on this element re-runs it). If the predicate guards its state reads (\`in\`, short-circuits, \`?.\`), declare \`${f}Deps: [...]\` (state-key strings or \`(el, s) => \u2026\` selectors) so the subscription is armed unconditionally.`),e.__effects.push(i)}}const $t=new WeakSet;function ns(t){const e=t.ownerDocument;!e||$t.has(e)||($t.add(e),queueMicrotask(()=>{$t.delete(e);const s=e.body||e.documentElement;s&&s.offsetWidth}))}const Ft=new WeakSet;let ho=!1;function _o(t){return t.startsWith("[data-theme=")||t.startsWith("@media")&&t.includes("prefers-color-scheme")}function It(t,e){const s={...t};for(const n in e){const r=e[n],f=s[n];s[n]=r&&typeof r=="object"&&f&&typeof f=="object"?It(f,r):r}return s}function go(t,e){const s={};for(const n in t){const r=t[n];if(r&&typeof r=="object"){const f=go(r,e);Object.keys(f).length&&(s[n]=f)}else e.has(n)||(s[n]=r)}return s}function rs(t){const{node:e}=t;if(!e)return;if(ho||(ho=!0,nt({display:"none"})),Ft.has(t)){console.error("[applyCssInProps] re-entry detected for element",t.key,"prop path:",t.__ref?.path);return}Ft.add(t);const s=t.context?.designSystem;s&&N(s),Zt();try{const n={};let r=!1,f=null,o=null,c=null;const u=(a,d)=>{if(d&&typeof d=="object"&&_o(a)){o||(o={});const i=o[a];i&&(d=It(i,d)),o[a]=d}else(d===null||typeof d!="object")&&(c||(c=new Set),c.add(a));n[a]=d};if(Object.prototype.hasOwnProperty.call(t,"theme")&&typeof t.theme!="function"&&T.theme){const a=T.theme(t.theme,t,t.state,t.context);if(a){const d=i=>{for(const l in i){const y=i[l];y&&typeof y=="object"&&_o(l)&&(f||(f={}),f[l]=y),n[l]=y}};if(Array.isArray(a))for(const i of a)i&&d(i);else d(a);r=!0}}for(const a of Object.keys(t)){if(typeof t[a]=="function"||G.has(a)||a==="theme")continue;const d=a.charCodeAt(0);if(!(d>=65&&d<=90)&&!z(a)){if(T[a]){const i=t[a],l=T[a](i,t,t.state,t.context);if(l){if(Array.isArray(l)){for(const y of l)if(y)for(const _ in y)u(_,y[_])}else for(const y in l)u(y,l[y]);r=!0}}else if(E&&E.has(a)){const i=t[a];i!=null&&typeof i!="object"&&(u(a,i),r=!0)}else if(a.charCodeAt(0)===45){const i=t[a];i!=null&&typeof i!="object"&&(u(a,i),r=!0)}else if(a.charAt(0)==="&"||a.charAt(0)==="@"||a.charAt(0)===":"||a.charAt(0)==="["){const i=t[a];if(i&&typeof i=="object"&&!Array.isArray(i)){if(Mt(i))continue;const l=yo(a,i,t);l&&(u(l.cssProp,l.block),r=!0)}}}}if(f)for(const a in f){let d=c?go(f[a],c):f[a];o&&o[a]&&(d=It(d,o[a])),Object.keys(d).length?n[a]=d:delete n[a]}if(r){n.display&&String(n.display).includes("!important")&&(e.style.setProperty("display",String(n.display).replace(/\s*!important\s*$/,""),"important"),delete n.display);const a=nt(n,null,t.context?.cssPrefix);if(a&&e.classList){const i=a.split(" ").filter(Boolean);let l=!1;for(const y of i)e.classList.add(y),l||(y.charCodeAt(0)===95&&y.charCodeAt(1)===99||y.charCodeAt(0)===95&&y.indexOf("_c",1)!==-1)&&(l=!0);l&&ns(e)}const d=t.display!=null&&typeof t.display!="function"?t.display:t.hide===!0||t.show===!1?"none":null;if(d!=null){const i=n.display;if(i&&i!==d)if(d==="none"){const l=[];for(const y of e.classList)y.startsWith("_d-")&&y!=="_d-none"&&l.push(y);for(const y of l)e.classList.remove(y);e.classList.add("_d-none")}else e.style.display==="none"&&(typeof t.hide=="function"||typeof t.show=="function")||(e.style.display=t.display),t.__ref&&(t.__ref.__explicitDisplay=t.display)}}}finally{qt(),s&&R(),Ft.delete(t)}}function bo(t){const{node:e}=t;if(!e||!e.setAttribute)return;if(t.aria&&typeof t.aria=="object")for(const r in t.aria){const f=t.aria[r];if(typeof f=="function"||typeof f=="object"||f==null||typeof f=="string"&&f.includes("{{"))continue;const o="aria-"+r.replace(/[A-Z]/g,c=>"-"+c.toLowerCase());e.setAttribute(o,K(o,f))}const s=$o(t);for(const r in s){const f=s[r];f!=null&&f!==!1&&typeof f!="function"&&typeof f!="object"&&e.setAttribute(r,f===!0?"":f)}const n=t.tag||"div";for(const r of Object.keys(t)){if(typeof t[r]=="function"||G.has(r)||r==="on"||s[r]!==void 0)continue;const f=r.charCodeAt(0);if(!(f>=65&&f<=90)&&!z(r)&&!(T[r]||E&&E.has(r))&&rt(n,r)){let o=t[r];if(o==null)continue;if(typeof o=="string"&&o.includes("{{")){if(!kt[r])continue;o=$.call(t,o,t.state)}if(o==null||typeof o=="function"||typeof o=="object"||o===!1&&!ct(it(r)||r))continue;const c=it(r)||r;e.setAttribute(c,K(c,o))}}}function Ns(t,e){const{node:s}=t;if(!s||!s.setAttribute)return;const n=e.charCodeAt(0);if(n>=65&&n<=90||z(e)||T[e]||E&&E.has(e)||!rt(t.tag||"div",e))return;const r=it(e)||e,f=r.toLowerCase(),o=t.__ref&&t.__ref.__effects;let c=!1;if(o)for(let d=0;d<o.length;d++){const i=o[d];i&&i._attrName===f&&!i._disposed&&typeof i._execute=="function"&&(c=!0,i._execute())}if(c)return;let u=t[e];const a=kt[e];if(a&&u!=null){const d=a(t);d!==void 0&&(u=d)}typeof u=="string"&&u.includes("{{")&&(u=$.call(t,u,t.state)),u==null||u===!1&&!ct(r)?s.removeAttribute(r):typeof u!="function"&&typeof u!="object"&&s.setAttribute(r,K(r,u))}function is(t,e){const s=t.node,n=t.__ref;let r=n.__autoGrow;if(!e){if(r&&r.active){try{s.removeEventListener("input",r.resize)}catch{}s.style.height="",r.appliedMax!=null&&s.style.maxHeight===r.appliedMax&&(s.style.maxHeight=""),r.active=!1,r.appliedMax=null,r.lastMeasure=0}return}r||(r=n.__autoGrow={active:!1,appliedMax:null,lastMeasure:0,resize:()=>{if(s.scrollHeight===0&&r.lastMeasure>0)return;s.style.height="auto";const o=s.scrollHeight;s.style.height=o+"px",o>0&&(r.lastMeasure=o)}},n.__eventCleanup||(n.__eventCleanup=[]),n.__eventCleanup.push(()=>{try{s.removeEventListener("input",r.resize)}catch{}})),r.active||(s.addEventListener("input",r.resize),r.active=!0);const f=typeof e=="object"&&e.max!=null?String(e.max):null;f!==r.appliedMax&&(f==null?r.appliedMax!=null&&s.style.maxHeight===r.appliedMax&&(s.style.maxHeight=""):s.style.maxHeight=f,r.appliedMax=f),r.resize()}function cs(t){if(!t.autoGrow)return;const e=t.node;if(!e||e.tagName!=="TEXTAREA")return;const s=t.__ref,n=t.autoGrow,r=typeof n=="function"?D(t,t.autoGrowDeps,n):null,f=S(()=>{const o=t.autoGrow;let c=o;if(typeof o=="function")try{c=(o===n&&r?r:o)(t,t.state,t.context)}catch{c=null}is(t,c)},{depth:s.path.length,label:v(s,"autoGrow")});s.__effects||(s.__effects=[]),s.__effects.push(f),r&&(s.__exec.autoGrow=n)}const xo=new Set(["onSwipe","onSwipeLeft","onSwipeRight","onSwipeUp","onSwipeDown"]);function Ao(t,e){for(const s of Object.keys(t)){if(!z(s)||xo.has(s))continue;const n=Do(s);if(n){Lo(n,t,t[s]);continue}let r=t[s];if(typeof r=="string"&&/^[A-Za-z_$][\w$]*$/.test(r)){const o=r;r=function(u){return t.call(o,u)}}if(typeof r!="function")continue;const f=Go(s);Po.has(f)||To(Ho(f),t,r)}fs(t)}function fs(t){const e=t.node;if(!e||!e.addEventListener)return;const s={};let n=!1;for(const l of xo){const y=t[l];typeof y=="function"&&(s[l]=y,n=!0)}if(!n)return;const r=typeof t.swipeThreshold=="number"?t.swipeThreshold:40,f=typeof t.swipeMaxDuration=="number"?t.swipeMaxDuration:600;let o=0,c=0,u=0,a=!1;const d=l=>{const y=l.touches&&l.touches[0]||l.changedTouches&&l.changedTouches[0];y&&(o=y.clientX,c=y.clientY,u=Date.now(),a=!0)},i=l=>{if(!a)return;a=!1;const y=l.changedTouches&&l.changedTouches[0]||l.touches&&l.touches[0];if(!y)return;const _=y.clientX-o,g=y.clientY-c,h=Date.now()-u;if(h>f)return;const p=Math.abs(_),x=Math.abs(g);if(Math.max(p,x)<r)return;let b;if(p>x*1.2)b=_<0?"left":"right";else if(x>p*1.2)b=g<0?"up":"down";else return;const C="onSwipe"+b.charAt(0).toUpperCase()+b.slice(1),A=s[C],w=s.onSwipe;A&&A.call(t,l,t,t.state,t.context),w&&w.call(t,{direction:b,dx:_,dy:g,dt:h,event:l},t,t.state,t.context)};e.addEventListener("touchstart",d,{passive:!0}),e.addEventListener("touchend",i,{passive:!0}),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{e.removeEventListener("touchstart",d)}catch{}try{e.removeEventListener("touchend",i)}catch{}})}function dt(t,e){const s={...t};for(const n in e){const r=s[n],f=e[n];r&&f&&typeof r=="object"&&typeof f=="object"&&!Array.isArray(r)&&!Array.isArray(f)&&typeof r!="function"&&typeof f!="function"?s[n]=dt(r,f):s[n]=f}return s}function Ut(t,e,s,n){if(!e||!t.node)return;const r=t.childExtends;if(Array.isArray(e)){const f=t.tag==="fragment",o=t.context?.document||globalThis.document,c=f?null:o?.createDocumentFragment();if(!f&&!c)return;const u=t.childProps,a=t.childrenAs,d=h=>{let p=e[h];const x=p;(typeof p=="string"||typeof p=="number")&&(p={text:p});let b=u;if(typeof u=="function")try{b=u(t,p)}catch{b=null}if(a==="state"){let A=x;(typeof x=="string"||typeof x=="number")&&(A={value:x,text:x}),p=b?{...b,state:A}:{state:A}}else b&&(p=dt(b,p));if(r&&!p.ignoreChildExtends)if(p.extends){const A=Array.isArray(p.extends)?p.extends:[p.extends],w=Array.isArray(r)?r:[r];p={...p,extends:[...w,...A]}}else p={...p,extends:r};const C=oo(p?.key,x,h);try{return Z(p,t,C,s)}catch(A){if(typeof console<"u"&&console.error){const w=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${C}" failed to construct at ${w} (initial render, skipping this row):`,A?.message||A)}return null}},i=t.__ref;if(!(n===!0&&!f&&!!i&&(s?.mountYield===!0||t.yieldChildren===!0))){for(let h=0;h<e.length;h++){const p=d(h);!f&&p?.node&&c.appendChild(p.node)}return f||t.node.appendChild(c),!0}const y=i.__childrenChunkGen=(i.__childrenChunkGen||0)+1;Wt();let _=null;const g=h=>{if(i.__disposed||i.__childrenChunkGen!==y){_&&_.parentNode&&_.remove();return}for(let p=h;p<e.length;p++){const x=d(p);if(x?.node&&(_?t.node.insertBefore(x.node,_):c.appendChild(x.node)),p+1<e.length&&Ht()){_||(_=o.createComment("smbls-mount"),c.appendChild(_),t.node.appendChild(c));const b=p+1;Yt(()=>g(b));return}}_?(_.remove(),t.node.tagName==="SELECT"&&bt(t,!0)):t.node.appendChild(c)};return g(0),zt(),!0}if(typeof e=="string"){const f=so(e,t);if(Array.isArray(f))return Ut(t,f,s,n)}if(typeof e=="object")for(const f in e){if(G.has(f))continue;let o=e[f];if(!(o==null||o===!1)){if((typeof o=="string"||typeof o=="number")&&(o={text:o}),t.childProps&&(o=dt(t.childProps,o)),r&&!o.ignoreChildExtends)if(o.extends){const c=Array.isArray(o.extends)?o.extends:[o.extends],u=Array.isArray(r)?r:[r];o={...o,extends:[...u,...c]}}else o={...o,extends:r};Z(o,t,f,s)}}}function bt(t,e){const s=t.node;if(!s||s.tagName!=="SELECT")return;const n=s.options;if(!n||!n.length)return;const r=t.__ref,f=r&&r.__exec&&r.__exec.value,o=typeof f=="function",c=t.value!=null&&typeof t.value!="function";if(o||c){let d;if(o)try{d=f(t,t.state,t.context)}catch{return}else d=t.value,typeof d=="string"&&d.includes("{{")&&(d=$.call(t,d,t.state));const i=d==null?"":String(d);s.value!==i&&(s.value=i);return}const u=e||!(r&&r.__selectSynced);if(r&&(r.__selectSynced=!0),!u)return;let a=-1;for(let d=0;d<n.length;d++)n[d].defaultSelected&&(a=d);a>=0&&s.selectedIndex!==a&&(s.selectedIndex=a)}function Co(t,e){let{children:s,content:n}=t;const r=t.childExtends;if(typeof s=="function"){const i=s;try{s=i(t,t.state,t.context)}catch(h){if(s=void 0,typeof console<"u"&&console.error){const p=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${p} (initial run, treating as empty):`,h?.message||h)}}t.children=s;const l=t.__ref;let y=!1;const _=D(t,t.childrenDeps,i),g=S(()=>{const h=y;y=!0;let p;try{p=_(t,t.state,t.context)}catch(P){if(typeof console<"u"&&console.error){const L=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${L}${h?"":" (initial tracking run)"}:`,P?.message||P)}return}if(!h||p===t.children)return;t.children=p,l.__childrenChunkGen!=null&&l.__childrenChunkGen++;const x=typeof t.onContentUpdate=="function",b=x?[]:null,C=x?[]:null,A=x?[]:null;if(Array.isArray(p)&&t.childrenAs==="state"){const P=t.childProps,L=[],tt=new Map;for(let k=0;k<p.length;k++){const U=p[k];let j=P;if(typeof P=="function")try{j=P(t,U)}catch{j=null}const V=oo(j&&j.key,U,k);L.push(V),tt.set(V,{rawChild:U,childProps:j})}const So=new Set(L),wo=l.__children.slice();for(const k of wo)if(!So.has(k)){const U=t[k];U?.remove&&U.remove(),delete t[k],C&&C.push(k)}const ot=t.childExtends,lt=t.tag==="fragment",ko=t.context?.document||globalThis.document,st=lt?null:ko?.createDocumentFragment(),At=new Set;for(const k of L){const U=tt.get(k),j=U.rawChild,V=t[k];if(V&&V.state){if(j&&typeof j=="object"){const O=V.state,Q=O.$replace||O.replace,Vt=O.$update||O.update;try{if(typeof Q=="function")Q.call(O,j);else if(typeof Vt=="function"){for(const I in O)if(!(I==="__element"||I==="root"||I==="parent"||I==="update")&&!Object.prototype.hasOwnProperty.call(j,I))try{O[I]=void 0}catch{}Vt.call(O,j)}else for(const I in j)O[I]=j[I]}catch(I){if(typeof console<"u"&&console.error){const jo=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${k}" failed to patch at ${jo} (reconcile, keeping its previous data for this pass):`,I?.message||I)}}}A&&A.push(k);continue}let Ct=j;(typeof j=="string"||typeof j=="number")&&(Ct={value:j,text:j});const Kt=U.childProps;let B=Kt?{...Kt,state:Ct}:{state:Ct};if(ot&&!B.ignoreChildExtends)if(B.extends){const O=Array.isArray(B.extends)?B.extends:[B.extends],Q=Array.isArray(ot)?ot:[ot];B={...B,extends:[...Q,...O]}}else B={...B,extends:ot};let vt;try{vt=Z(B,t,k,e)}catch(O){if(typeof console<"u"&&console.error){const Q=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${k}" failed to construct at ${Q} (reconcile, skipping this row):`,O?.message||O)}At.add(k);continue}!lt&&vt?.node&&st&&st.appendChild(vt.node),b&&b.push(k)}if(!lt&&st&&st.childNodes.length&&t.node&&t.node.appendChild(st),!lt&&t.node){let k=null;for(const U of L){const j=t[U]?.node;if(!j)continue;const V=k?k.nextSibling:t.node.firstChild;j!==V&&t.node.insertBefore(j,V),k=j}}l.__children=At.size?L.filter(k=>!At.has(k)):L,x&&(b.length||C.length)&&to(t,{added:b,removed:C,kept:A}),bt(t,!1);return}const q=x?[...l.__children]:null;for(const P of[...l.__children]){const L=t[P];L?.remove&&L.remove(),delete t[P]}l.__children=[],Ut(t,p,e),bt(t,!1),x&&to(t,{added:[...l.__children],removed:q,kept:[]})},{depth:l.path.length,label:v(l,"children")});l.__effects.push(g)}const f=Ut(t,s,e,!0);if(n!=null&&!(n&&n.__ref)){let i=n;if(typeof i=="string"||typeof i=="number"?i={text:i}:typeof i!="object"&&(i={}),t.childProps&&(i=dt(t.childProps,i)),r&&!i.ignoreChildExtends)if(i.extends){const l=Array.isArray(i.extends)?i.extends:[i.extends],y=Array.isArray(r)?r:[r];i={...i,extends:[...y,...l]}}else i={...i,extends:r};Z(i,t,"content",e)}if(s&&!f)return;const o=t.context?.components||{};{const i=Object.keys(t);for(let l=0;l<i.length;l++){const y=i[l];if(!y.endsWith("Extends")||typeof t[y]!="string")continue;const _=y.slice(0,-7);if(!_||_.charCodeAt(0)<65||_.charCodeAt(0)>90)continue;const g={extends:t[y]};delete t[y];for(let h=l+1;h<i.length;h++){const p=i[h],x=p.charCodeAt(0);if(x>=65&&x<=90||G.has(p)||typeof t[p]=="function"&&(p.startsWith("on")||p.startsWith(".")))break;const b=t[p];b!==void 0&&(g[p]=b,delete t[p])}t[_]&&typeof t[_]=="object"?t[_]={...g,...t[_]}:t[_]=g}}const c=e?.mountYield===!0||t.yieldChildren===!0,u=Object.keys(t),a=i=>{if(G.has(i)||typeof t[i]!="object"||t[i]===null)return;const l=i.charCodeAt(0);if(l<65||l>90)return;let y=t[i];if(!y.__ref){if(!y.extends&&!y.extend){const _=o[i]||o[`smbls.${i}`];_&&(y={...y,extends:_})}if(t.childProps&&(y=dt(t.childProps,y)),r&&!y.ignoreChildExtends)if(y.extends){const _=Array.isArray(y.extends)?y.extends:[y.extends],g=Array.isArray(r)?r:[r];y={...y,extends:[...g,..._]}}else y={...y,extends:r};Z(y,t,i,e)}};if(!c){for(const i of u)a(i);return}Wt();const d=i=>{for(let l=i;l<u.length;l++)if(a(u[l]),l+1<u.length&&Ht()){const y=l+1;Yt(()=>d(y));return}};d(0),zt()}function vo(t,e,s){const{node:n}=t;if(!n)return;n.ref=t;const r=e?.tag==="fragment"?e.__ref?.__fragmentAnchor:null;if(r){const o=r.parentNode;if(o){if(s?.position==="before"&&s.node)o.insertBefore(n,s.node);else if(s?.position==="after"&&s.node){const c=s.node.nextSibling;o.insertBefore(n,c||r)}else o.insertBefore(n,r);return}}const f=e?.node||(e?.nodeType?e:null);if(f)if(s?.position==="before"&&s.node)f.insertBefore(n,s.node);else if(s?.position==="after"&&s.node){const o=s.node.nextSibling;o?f.insertBefore(n,o):f.appendChild(n)}else f.appendChild(n)}const Bt=3;function as(t){return!t||t.__inBeforeUpdate||(t.__beforeUpdateFailCount||0)>=Bt?!1:(t.__inBeforeUpdate=!0,!0)}function xt(t,e){t&&(t.__inBeforeUpdate=!1,e?(t.__beforeUpdateFailCount=(t.__beforeUpdateFailCount||0)+1,t.__beforeUpdateFailCount===Bt&&typeof console<"u"&&console.error&&console.error(`[DOMQL] onBeforeUpdate failed ${Bt}x in a row on this element \u2014 pausing automatic retries until a future prop/state change re-arms it.`)):t.__beforeUpdateFailCount=0)}function M(t,e,s){const n=t.charAt(0).toLowerCase()+t.slice(1);e.context?.plugins?.length&&H(n,e,s);const r="on"+t,f=e[r];if(typeof f=="function"){const u=t==="Render"?"__inRender":t==="RenderRouter"?"__inRenderRouter":null;if(u){if(e.__ref[u])return!0;e.__ref[u]=!0}const a=e.context?.designSystem;a&&N(a);let d=!!u;try{const i=f(e,e.state,e.context,s);if(i&&typeof i.then=="function"){const l=e.__ref;return i.catch(y=>{e.context?.plugins?.length&&H("error",e,{hook:r,error:y})||console.error(`[DOMQL] Lifecycle "${r}" error:`,y)}).finally(()=>{u&&l&&(l[u]=!1)}),d=!1,!0}if(i===!1)return!1}catch(i){if(e.context?.plugins?.length&&H("error",e,{hook:r,error:i})||console.error(`[DOMQL] Lifecycle "${r}" error:`,i),e.context?.strictMode)throw i}finally{a&&R(),d&&e.__ref&&(e.__ref[u]=!1)}}return!0}var Rs=Z;export{Bt as BEFORE_UPDATE_MAX_CONSECUTIVE_FAILURES,as as acquireBeforeUpdateGuard,Z as create,Rs as default,Et as flushMounts,Ns as reconcileAttrProp,xt as releaseBeforeUpdateGuard,yt as writeElementText};
4
+ `):"")}}if(bt(o,!0),So(o,e,r),typeof o.html=="function"&&o.node&&!o.node.innerHTML){const h=o.context?.designSystem;h&&N(h);try{const p=o.html(o,o.state,o.context);p!=null&&typeof p!="function"&&(o.node.innerHTML=p)}catch{}finally{h&&R()}}if(M("Create",o,n),M("Complete",o,n),M("Render",o,n),M("RenderRouter",o,n),Pt(o,n),typeof o.onFrame=="function"){const h=o.onFrame,p=o.context?.designSystem,x=()=>{if(o.node){if(o.node.isConnected){p&&N(p);try{h(o,o.state,o.context)}catch(b){console.error("[DOMQL] onFrame error:",b)}finally{p&&R()}}requestAnimationFrame(x)}};requestAnimationFrame(x)}return o}function zo(t,e,s){const n=!e,r=s.state&&typeof s.state=="object"&&!Array.isArray(s.state)&&Object.keys(s.state).length===0,f=n&&r&&t.context?.state,o=s.state!==void 0&&!f?s.state:t.state&&!W(t.state)?t.state:void 0;if(o==null){if(e?.state)t.state=e.state,et(t,t.state);else if(t.context?.state){const c=t.context.state,u={...c},a=t.context?.polyglot;if(a?.translations){const d=t.context,i=c.lang||a.defaultLang||"en",l=new Set,y=(h,p)=>{l.has(h)||Mo(d,h,u)&&(u[h]=p,l.add(h),$o(d,h))},_=a.translations[i];if(_&&typeof _=="object")for(const h in _)y(h,_[h]);const g=new Set(a.languages||[]);for(const h in a.translations)g.has(h)||y(h,a.translations[h])}t.state=W(u)?u:St(u),t.state.__element=t,t.state.root=t.state,et(t,t.state)}else t.state={},Object.defineProperty(t.state,"root",{value:t.state,enumerable:!1,configurable:!0,writable:!0}),et(t,t.state);return}if(typeof o=="string"){if(t.state=eo(o,e),t.state&&typeof t.state=="object"&&!W(t.state)){const c=e?.state?.root||e?.state||t.state;Object.defineProperty(t.state,"root",{value:c,enumerable:!1,configurable:!0,writable:!0})}et(t,t.state);return}if(typeof o=="function"){const c=o(t,e?.state);t.state=W(c)?c:St(c||{})}else W(o)?t.state=o:t.state=St({...o});t.state.__element=t,e?.state?(t.state.parent=e.state,t.state.root=e.state.root||e.state):t.state.root=t.state,et(t,t.state)}function Lt(t,e){if(!e)return t;const s=e.split("/");let n=t;for(const r of s){if(n==null)return{};n=n[r]}return n??{}}function eo(t,e){if(!e)return{};if(t===".")return e.state||{};if(t.startsWith("../")){const r=t.slice(3);return r?Lt(e.state,r):e.state??{}}if(t.startsWith("~/")){const r=e.state?.root||e.state,f=t.slice(2);return f?Lt(r,f):r??{}}if(e.state?.[t]!==void 0)return e.state[t];const s=Lt(e.state,t);if(s!=null&&Object.keys(s).length>0)return s;const n=e.context?.polyglot;if(n?.translations){const r=e.state?.root?.lang||n.defaultLang||"en",f=n.translations[r];if(f?.[t]!==void 0)return f[t];if(n.translations[t]!==void 0)return n.translations[t]}return{}}const Yo=new Set(["s","state","ctx","context"]);function Zo(t){try{const s=(typeof Zt.getFunctionSource=="function"?Zt.getFunctionSource(t):Function.prototype.toString.call(t)).match(/^[^(]*\(([^)]*)\)/);return s?s[1].split(",").map(n=>n.trim().split("=")[0].trim()).filter(Boolean):[]}catch{return[]}}function qo(t){if(typeof t!="function"||t.length!==2)return!1;const e=Zo(t);if(e.length<2)return!1;const s=e[1].replace(/[{}[\]]/g,"").trim();return s.length>0&&!Yo.has(s)}function Qo(t){const e=t.__ref,s=t.tag||"div",n=t.context?.designSystem,r=[],f=Object.keys(t);for(let o=0;o<f.length;o++){const c=f[o];if(typeof t[c]!="function"||G.has(c))continue;const u=c.charCodeAt(0);u>=65&&u<=90||z(c)||T[c]||E&&E.has(c)||rt(s,c)||(X()&&qo(t[c])&&console.warn(`[smbls] custom prop "${c}"${t.key?` on key "${t.key}"`:""} is a function \u2014 it will be auto-invoked on read and its RETURN VALUE stored, not preserved as a callable reference. If you meant to stash a callback, use el.call('${c}', \u2026) instead of reading el.${c}(\u2026) directly (see RULES.md Rule 8).`),r.push({prop:c,fn:t[c]}))}for(let o=0;o<r.length;o++){const{prop:c,fn:u}=r[o];e.__exec[c]=u,Object.defineProperty(t,c,{get(){n&&N(n);try{return u(t,t.state,t.context)}catch{return}finally{n&&R()}},set(a){delete e.__exec[c],Object.defineProperty(t,c,{value:a,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}}function Xo(t,e){if(!(!Array.isArray(e)||e.length===0))for(let s=0;s<e.length;s++){const n=e[s];try{typeof n=="function"?n(t,t.state,t.context):typeof n=="string"&&t.state?.[n]}catch{}}}function D(t,e,s){return!Array.isArray(e)||e.length===0?s:function(...n){return Xo(t,e),s.apply(this,n)}}function ut(t,e){if(!(!t||Array.isArray(t)||typeof t!="object"))return t[e]}function v(t,e){return()=>t.path.join(".")+"::"+e}const no=new Set;function F(t,e,s){if(!X())return;const n=v(t,e)();no.has(n)||(no.add(n),console.warn(`[smbls] "${e}" effect threw on ${t.path.join(".")} \u2014 keeping previous value:`,s?.message||s))}function ro(t,e){const s=t.__ref,n=!!(e&&e.skipIfEffect);if(Qo(t),typeof t.text=="function"){const o=t.text,c=D(t,t.textDeps,o),u=S(()=>{if(!s.contentManaged)try{let a=c(t,t.state,t.context);t.node&&a!=null&&typeof a!="function"&&typeof a!="object"&&(typeof a=="string"&&a.includes("{{")&&(a=$.call(t,a,t.state)),yt(t,a))}catch(a){F(s,"text",a)}},{depth:s.path.length,label:v(s,"text")});s.__effects.push(u),s.__exec.text=o}else if(typeof t.text=="string"&&t.text.includes("{{")){const o=t.text,c=S(()=>{if(s.contentManaged)return;const u=$.call(t,o,t.state);u!=null&&(t.text=u),t.node&&yt(t,u??"")},{depth:s.path.length,label:v(s,"text")});s.__effects.push(c),s.__exec.text=o}for(const o of Object.keys(t))if(typeof t[o]=="function"&&!G.has(o)&&!z(o)&&!s.__exec[o]){if(T[o]){const c=t[o],u=D(t,t[o+"Deps"],c),a=o;let d,i=null,l=null,y;const _=S(()=>{const g=t.context?.designSystem;g&&N(g);try{const h=u(t,t.state,t.context);qt();let p;try{p=T[a](h,t,t.state,t.context)}finally{Qt()}if(Array.isArray(p)){const b={};for(const C of p)if(C)for(const A in C)b[A]=C[A];p=b}const x=a==="show"||a==="hide";if(p&&t.node&&Jo(p)){const b=ht(p);if(b===null||b!==y){y=b;const C=nt(p,null,t.context?.cssPrefix),A=C?C.split(" ").filter(Boolean):null;if(t.node.classList){if(l)for(const w of l)t.node.classList.remove(w);if(A&&A.length)for(const w of A)t.node.classList.add(w);l=A}}d=void 0,i=null}else if(p&&t.node){if(l){for(const C of l)t.node.classList.remove(C);l=null,y=void 0}const b=ht(p);(b===null||b!==d||!gt(t.node,i))&&(d=b,J(t.node,p),i=_t(t.node,p))}else if(t.node&&x){d=void 0,i=null;const b=s.__explicitDisplay;t.node.style.display=typeof b=="string"?b:""}}finally{g&&R()}},{depth:s.path.length,label:v(s,a)});s.__effects.push(_),s.__exec[o]=c}else if(E&&E.has(o)){const c=t[o],u=D(t,t[o+"Deps"],c),a=o;let d,i=null;const l=S(()=>{const y=t.context?.designSystem;y&&N(y);try{const _=u(t,t.state,t.context);if(t.node)if(_!=null){const g=a+":"+String(_);if(g!==d||!gt(t.node,i)){d=g;const h={[a]:_};J(t.node,h),i=_t(t.node,h)}}else d=void 0,i=null,t.node.style[a]=""}finally{y&&R()}},{depth:s.path.length,label:v(s,a)});s.__effects.push(l),s.__exec[o]=c}}if(typeof t.html=="function"){const o=t.html,c=D(t,t.htmlDeps,o),u=S(()=>{const a=t.context?.designSystem;a&&N(a);try{const d=c(t,t.state,t.context);t.node&&d!=null&&typeof d!="function"&&(t.node.innerHTML=d)}finally{a&&R()}},{depth:s.path.length,label:v(s,"html")});s.__effects.push(u),s.__exec.html=o}if(typeof t.value=="function"){const o=t.value,c=D(t,t.valueDeps,o),u=S(()=>{try{let a=c(t,t.state,t.context);typeof a=="string"&&a.includes("{{")&&(a=$.call(t,a,t.state)),fo(t,a)}catch(a){F(s,"value",a)}},{depth:s.path.length,label:v(s,"value")});s.__effects.push(u),s.__exec.value=o}else if(typeof t.value=="string"&&t.value.includes("{{")){const o=t.value,c=S(()=>{try{fo(t,$.call(t,o,t.state))}catch(u){F(s,"value",u)}},{depth:s.path.length,label:v(s,"value")});s.__effects.push(c),s.__exec.value=o}if(typeof t.style=="function"){const o=t.style,c=D(t,t.styleDeps,o);let u,a=null;const d=S(()=>{const i=c(t,t.state,t.context),l=ht(i);(l===null||l!==u||!gt(t.node,a))&&(u=l,J(t.node,i),a=_t(t.node,i))},{depth:s.path.length,label:v(s,"style")});s.__effects.push(d),s.__exec.style=o}else if(t.style&&typeof t.style=="object")for(const o in t.style){const c=t.style[o];if(typeof c!="function")continue;const u=D(t,ut(t.styleDeps,o),c);let a,d=null;const i=S(()=>{try{const l=u(t,t.state,t.context);if(t.node){const y=o+":"+String(l);if(y!==a||!gt(t.node,d)){a=y;const _={[o]:l};J(t.node,_),d=_t(t.node,_)}}}catch(l){F(s,"style."+o,l)}},{depth:s.path.length,label:v(s,"style."+o)});s.__effects.push(i)}if(t.attr&&typeof t.attr=="object"){for(const o in t.attr)if(typeof t.attr[o]=="function"){const c=D(t,ut(t.attrDeps,o),t.attr[o]),u=o,a=S(()=>{try{let d=c(t,t.state,t.context);typeof d=="string"&&d.includes("{{")&&(d=$.call(t,d,t.state)),t.node?.setAttribute&&(d==null||d===!1&&!ct(u)?t.node.removeAttribute(u):typeof d!="function"&&typeof d!="object"&&t.node.setAttribute(u,K(u,d)))}catch(d){F(s,"attr."+u,d)}},{depth:s.path.length,label:v(s,"attr."+u)});a._attrName=u.toLowerCase(),s.__effects.push(a)}else if(typeof t.attr[o]=="string"&&t.attr[o].includes("{{")){const c=t.attr[o],u=o,a=S(()=>{try{const d=$.call(t,c,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(u,K(u,d??""))}catch(d){F(s,"attr."+u,d)}},{depth:s.path.length,label:v(s,"attr."+u)});a._attrName=u.toLowerCase(),s.__effects.push(a)}}if(t.aria&&typeof t.aria=="object")for(const o in t.aria){const c=t.aria[o];if(typeof c=="string"&&c.includes("{{")){const i=c,l="aria-"+o.replace(/[A-Z]/g,_=>"-"+_.toLowerCase()),y=S(()=>{try{const _=$.call(t,i,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(l,K(l,_??""))}catch(_){F(s,"aria."+o,_)}},{depth:s.path.length,label:v(s,"aria."+o)});y._attrName=l,s.__effects.push(y);continue}if(typeof c!="function")continue;const u=D(t,ut(t.ariaDeps,o),t.aria[o]),a="aria-"+o.replace(/[A-Z]/g,i=>"-"+i.toLowerCase()),d=S(()=>{try{const i=u(t,t.state,t.context);if(!t.node?.setAttribute)return;i==null?t.node.removeAttribute(a):typeof i!="function"&&typeof i!="object"&&t.node.setAttribute(a,K(a,i))}catch(i){F(s,"aria."+o,i)}},{depth:s.path.length,label:v(s,"aria."+o)});d._attrName=a,s.__effects.push(d)}if(t.data&&typeof t.data=="object")for(const o in t.data){const c=t.data[o];if(typeof c=="string"&&c.includes("{{")){const l=c,y="data-"+o.replace(/[A-Z]/g,g=>"-"+g.toLowerCase()),_=S(()=>{try{const g=$.call(t,l,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(y,g??"")}catch(g){F(s,"data."+o,g)}},{depth:s.path.length,label:v(s,"data."+o)});_._attrName=y,s.__effects.push(_);continue}if(typeof c!="function")continue;const u=D(t,ut(t.dataDeps,o),t.data[o]),d="data-"+o.replace(/[A-Z]/g,l=>"-"+l.toLowerCase()),i=S(()=>{try{const l=u(t,t.state,t.context);if(!t.node?.setAttribute)return;l==null||l===!1?t.node.removeAttribute(d):typeof l!="function"&&typeof l!="object"&&t.node.setAttribute(d,l===!0?"":l)}catch(l){F(s,"data."+o,l)}},{depth:s.path.length,label:v(s,"data."+o)});i._attrName=d,s.__effects.push(i)}const r=t.classlist&&typeof t.classlist=="object"&&!Array.isArray(t.classlist)?t.classlist:t.class&&typeof t.class=="object"&&!Array.isArray(t.class)?t.class:null;if(r)for(const o in r){if(typeof r[o]!="function")continue;const c=D(t,ut(t.classDeps,o),r[o]),u=S(()=>{try{const a=c(t,t.state,t.context);if(!t.node?.classList)return;typeof a=="string"?t.node.classList.add(a):a?t.node.classList.add(o):t.node.classList.remove(o)}catch(a){F(s,"class."+o,a)}},{depth:s.path.length,label:v(s,"class."+o)});s.__effects.push(u)}!n&&typeof t.if=="function"&&co(t,s,t.if);for(const o of Object.keys(t)){if(G.has(o)||typeof t[o]!="function")continue;const c=o.charCodeAt(0);if(c>=65&&c<=90||z(o))continue;const u=t[o];s.__exec[o]=u;const a=t.tag||"div";if(rt(a,o)&&!T[o]&&!(E&&E.has(o))){const d=it(o)||o,i=D(t,t[o+"Deps"],u),l=S(()=>{try{let y=i(t,t.state,t.context);typeof y=="string"&&y.includes("{{")&&(y=$.call(t,y,t.state)),t.node?.setAttribute&&(y==null||y===!1&&!ct(d)?t.node.removeAttribute(d):typeof y!="function"&&typeof y!="object"&&(d==="src"&&"src"in t.node?t.node.src=y:t.node.setAttribute(d,K(d,y))))}catch(y){F(s,o,y)}},{depth:s.path.length,label:v(s,o)});l._attrName=d.toLowerCase(),s.__effects.push(l)}}const f=t.tag||"div";for(const o of Object.keys(t)){if(G.has(o))continue;const c=t[o];if(typeof c!="string"||!c.includes("{{"))continue;const u=o.charCodeAt(0);if(u>=65&&u<=90||z(o)||T[o]||E&&E.has(o)||kt[o]||!rt(f,o))continue;const a=it(o)||o,d=S(()=>{try{const i=$.call(t,c,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(a,K(a,i??""))}catch(i){F(s,o,i)}},{depth:s.path.length,label:v(s,o)});d._attrName=a.toLowerCase(),s.__effects.push(d)}if(os(t),ns(t),typeof t.onStateUpdate=="function"&&Array.isArray(t.stateDeps)){const o=t.onStateUpdate,c=t.stateDeps;let u=!1,a=[];const d=S(()=>{const i=[];for(let g=0;g<c.length;g++){const h=c[g];try{i[g]=typeof h=="function"?h(t,t.state,t.context):t.state?.[h]}catch{i[g]=void 0}}if(!u){u=!0,a=i;return}let l=i.length!==a.length;for(let g=0;!l&&g<i.length;g++)i[g]!==a[g]&&(l=!0);const y=a;if(a=i,!l)return;const _=t.context?.designSystem;_&&N(_);try{o(t,t.state,t.context,{prev:y,next:i})}catch(g){if(t.context?.plugins?.length&&H("error",t,{hook:"onStateUpdate",error:g})||console.error('[DOMQL] Lifecycle "onStateUpdate" error:',g),t.context?.strictMode)throw g}finally{_&&R()}},{depth:s.path.length,label:v(s,"onStateUpdate")});s.__effects.push(d)}es(t)}function io(t){const e=t.parent,s=e?.node;if(!s||!t.node){So(t,t.parent);return}let n=null;const r=Object.keys(e),f=r.indexOf(t.key);for(let o=f+1;o<r.length;o++){const c=e[r[o]];if(c?.node?.parentNode===s){n=c.node;break}}n?s.insertBefore(t.node,n):s.appendChild(t.node)}function co(t,e,s){const n=D(t,t.ifDeps,s),r=S(()=>{let f;try{f=n(t,t.state,t.context)}catch(c){if(f=!1,e.__ifError=c,typeof console<"u"&&console.warn){const u=t.key||t.tag||"?";console.warn(`[smbls] \`if:\` reactive effect threw on ${u} \u2014 treating as false:`,c?.message||c)}return}const o=e.__if;if(e.__if=!!f,o&&!e.__if&&t.node){t.node.remove();try{typeof t.onRemove=="function"&&t.onRemove(t)}catch(c){console.error("[smbls] onRemove error:",c)}}else if(!o&&e.__if)if(e.__ifInitialized)t.node||(t.node=wt(t)),t.node&&(t.node.ref=t),io(t),Dt(t),M("Render",t,{}),Pt(t,{});else{if(e.__ifInitialized=!0,t.tag||(t.tag=Gt(t)),M("Init",t,{}),t.node||(t.node=wt(t)),!t.node)return;if(t.parent?.__ref?.__children&&!t.parent.__ref.__children.includes(t.key)&&t.parent.__ref.__children.push(t.key),t.tag==="fragment"&&!e.__fragmentAnchor){const u=(t.context?.document||globalThis.document).createComment("");t.node.appendChild(u),e.__fragmentAnchor=u}M("AttachNode",t,{}),t.node.setAttribute&&t.key&&t.node.setAttribute("data-key",t.key),t.id&&t.node.setAttribute&&(t.node.id=t.id),Co(t,{}),ro(t,{skipIfEffect:!0}),Dt(t),xo(t),vo(t,{}),io(t),M("Create",t,{}),M("Complete",t,{}),M("Render",t,{}),M("RenderRouter",t,{}),Pt(t,{})}},{depth:e.path.length,label:v(e,"if")});e.__effects.push(r)}function yt(t,e){const s=t.node;if(!s)return;const n=e==null||typeof e=="object"?"":String(e);if(t.tag==="string"){s.nodeValue!==n&&(s.nodeValue=n);return}const r=t.__ref;let f=r?r.__textNode:null;if(f&&f.parentNode!==s&&(f=null),!f){const o=s.firstChild;o&&o.nodeType===3&&(f=o)}f?f.nodeValue!==n&&(f.nodeValue=n):s.firstChild?(f=(s.ownerDocument||t.context?.document||globalThis.document).createTextNode(n),s.insertBefore(f,s.firstChild)):(s.textContent=n,f=s.firstChild&&s.firstChild.nodeType===3?s.firstChild:null),r&&(r.__textNode=f||null)}function fo(t,e){const s=t.node;if(!s||!("value"in s))return;const n=e==null?"":String(e);if(s.value===n)return;const r=typeof document<"u"&&document.activeElement===s,f=r&&typeof s.selectionStart=="number"?s.selectionStart:null,o=r&&typeof s.selectionEnd=="number"?s.selectionEnd:null;if(s.value=n,r&&f!=null&&o!=null)try{s.setSelectionRange(f,o)}catch{}}function Dt(t){const{node:e}=t;if(e){if((typeof t.text=="string"&&!t.text.includes("{{")||typeof t.text=="number")&&yt(t,t.text),is(t),typeof t.html=="string"&&(e.innerHTML=t.html),t.value!=null&&typeof t.value!="function"&&!(typeof t.value=="string"&&t.value.includes("{{"))&&"value"in e){const s=String(t.value);e.value!==s&&(e.value=s)}if(t.style&&typeof t.style=="object"){let s=t.style;for(const n in t.style)if(typeof t.style[n]=="function"){s={};for(const r in t.style)typeof t.style[r]!="function"&&(s[r]=t.style[r]);break}J(e,s)}if(t.attr&&typeof t.attr=="object")for(const s in t.attr){const n=t.attr[s];typeof n=="function"||typeof n=="object"||n!=null&&(typeof n=="string"&&n.includes("{{")||n===!1&&!ct(s)||e.setAttribute&&e.setAttribute(s,K(s,n)))}if(t.data&&typeof t.data=="object")for(const s in t.data){const n=t.data[s];typeof n=="function"||typeof n=="object"||n==null||n===!1||typeof n=="string"&&n.includes("{{")||e.dataset&&(e.dataset[s]=n===!0?"":n)}if(t.classlist||t.class){const s=t.classlist||t.class;if(typeof s=="string")s.split(" ").forEach(n=>n&&e.classList.add(n));else if(typeof s=="object")for(const n in s){const r=typeof s[n]=="function"?s[n](t,t.state,t.context):s[n];r&&e.classList.add(typeof r=="string"?r:n)}}}}function ht(t){if(t==null||typeof t!="object")return"s:"+String(t);try{return"o:"+JSON.stringify(t)}catch{return null}}function Jo(t){if(!t||typeof t!="object")return!1;for(const e in t){const s=t[e];if(s&&typeof s=="object"&&!Array.isArray(s))return!0}return!1}function _t(t,e){if(!t||!t.style||!e)return null;const s=t.style,n=[];for(const r in e){if(e[r]==null||r.charAt(0)==="&")continue;const o=r.replace(/[A-Z]/g,c=>"-"+c.toLowerCase());n.push(o,ao(s,o),uo(s,o))}return n}function ao(t,e){return typeof t.getPropertyValue=="function"?t.getPropertyValue(e):""}function uo(t,e){return typeof t.getPropertyPriority=="function"?t.getPropertyPriority(e):""}function gt(t,e){if(!e||!t||!t.style)return!1;const s=t.style;for(let n=0;n<e.length;n+=3)if(ao(s,e[n])!==e[n+1]||uo(s,e[n])!==e[n+2])return!1;return!0}const Ot=t=>t.charCodeAt(0)===45&&t.charCodeAt(1)===45;function J(t,e){if(!t||!e||!t.style)return;let s=null;for(const n in e){const r=e[n];if(r!=null){if(n.charAt(0)==="&"&&typeof r=="object"){s||(s={}),s[n]=r;continue}try{const f=String(r),o=Ot(n)?n:n.replace(/[A-Z]/g,d=>"-"+d.toLowerCase()),c=f.trim(),u=/\s*!important\s*$/.test(c),a=c.replace(/\s*!important\s*$/,"");t.style.setProperty(o,a,u?"important":"")}catch{}}}s&&mo(t,s)}function mo(t,e){const s=`_ds${Jt.scopedStyleId++}`;t.classList.add(s);const n=t.ownerDocument;let r=n.querySelector("style[data-smbls-scoped]");r||(r=n.createElement("style"),r.setAttribute("data-smbls-scoped",""),n.head.appendChild(r));let f="";for(const o in e){const c="."+s,u=o.replace(/&/g,c).split(",").map(d=>{const i=d.trim();return i.includes(c)?i:c+i}).join(", "),a=e[o];if(typeof a=="object"){let d="",i="";for(const l in a){const y=a[l];if(typeof y=="object"){const _=l.includes("&")?u.split(", ").map(h=>l.replace(/&/g,h)).join(", "):u.split(", ").map(h=>`${h} ${l}`).join(", ");let g="";for(const h in y)g+=`${h.replace(/[A-Z]/g,p=>"-"+p.toLowerCase())}: ${y[h]};`;i+=Xt(`${_} { ${g} }`,_)+`
5
+ `}else d+=`${l.replace(/[A-Z]/g,_=>"-"+_.toLowerCase())}: ${y};`}d&&(f+=Xt(`${u} { ${d} }`,u)+`
6
+ `),i&&(f+=i)}}f&&(r.textContent+=f)}const lo=new Set;function po(t){if(!Array.isArray(t))return"";const e=[];for(let s=0;s<t.length;s++)typeof t[s]=="string"&&t[s].length&&e.push(t[s]);return e.sort(),e.join("|")}function ts(t,e,s){const n=po(s);queueMicrotask(()=>{if(!t.__ref)return;let r;try{r=e(t,t.state,t.context)}catch{return}if(po(r)===n)return;const f=t.__ref.path?t.__ref.path.join("."):t.key||"?";lo.has(f)||(lo.add(f),console.warn(`[smbls] subscribeTo function at "${f}" resolved to a DIFFERENT key list one microtask after create \u2014 wired [${s.join(", ")||"(none)"}], probed [${Array.isArray(r)?r.join(", "):String(r)}]. subscribeTo's function form is resolved ONCE at element-create time (registerSubscribeToEffects, @symbo.ls/element create.js) \u2014 this element stays wired to the ORIGINAL list for its whole lifetime, so this drift is invisible to the reactive effect and any key only present in the new list will never trigger onUpdate. If the watched key genuinely is not known until later (e.g. a module config that loads after shell boot), route the write through an imperative call instead of subscribeTo \u2014 see functions/moduleOpenBridge.js's moduleOpenPage (workspace repo) for the house pattern.`))})}function os(t){const e=t.subscribeTo,s=typeof e=="function";let n=e;if(s)try{n=e(t,t.state,t.context)}catch{n=null}if(s&&X()&&ts(t,e,Array.isArray(n)?n:[]),!Array.isArray(n)||n.length===0)return;const r=t.__ref;for(let f=0;f<n.length;f++){const o=n[f];if(typeof o!="string"||o.length===0)continue;const c=o.split("."),u=c[0],a=c.slice(1),d={value:!1},i=S(()=>{const l=t.state&&(W(t.state)?t.state.root:null);if(!l||!W(l))return;let y=l;y=y[u];for(let g=0;g<a.length&&!(y==null||typeof y!="object");g++)if(W(y))y=y[a[g]];else break;if(!d.value)return;let _=!1;if(typeof t.onBeforeUpdate=="function"){const g=t.context?.designSystem;g&&N(g);try{if(us(r)){const h=t.onBeforeUpdate(t,t.state,t.context,{updateBySubscription:!0});h&&typeof h.then=="function"?h.then(()=>xt(r,!1),p=>{xt(r,!0),t.context?.plugins?.length&&H("error",t,{hook:"onBeforeUpdate",error:p})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",p)}):(xt(r,!1),h===!1&&(_=!0))}}catch(h){xt(r,!0),t.context?.plugins?.length&&H("error",t,{hook:"onBeforeUpdate",error:h})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",h)}finally{g&&R()}}if(!_&&t.node&&r.__effects)for(let g=0;g<r.__effects.length;g++){const h=r.__effects[g];h&&h!==i&&!h._disposed&&!h._isSubscribeToEffect&&typeof h._execute=="function"&&h._execute()}if(!_&&typeof t.onUpdate=="function"){const g=t.context?.designSystem;g&&N(g);try{t.onUpdate(t,t.state,t.context)}catch(h){t.context?.plugins?.length&&H("error",t,{hook:"onUpdate",error:h})||console.error("[DOMQL] subscribeTo onUpdate error:",h)}finally{g&&R()}}},{depth:r.path.length,label:v(r,"subscribeTo("+o+")")});d.value=!0,i._isSubscribeToEffect=!0,r.__effects.push(i)}}function Nt(t,e){return t.charCodeAt(0)===64&&t.length>1&&!t.startsWith("@media")&&!t.startsWith("@keyframes")&&!t.startsWith("@supports")&&!t.startsWith("@container")&&(t==="@dark"||t==="@light"||!e.context?.designSystem?.media?.[t.slice(1)])}function Rt(t,e){if(t.charCodeAt(0)!==64||/^@(media|supports|container|keyframes)\b/.test(t))return t;const s=e.context?.designSystem?.media?.[t.slice(1)];return s?/^@(media|supports|container)\b/.test(s)?s:`@media ${s}`:t}const yo=new Set;function ss(t,e){const s=e?.__ref?.path?e.__ref.path.join("."):e?.key||"?",n=s+"::"+t;yo.has(n)||(yo.add(n),console.warn(`[smbls/css] "${t}" at ${s} is a CHILD-COMPONENT key nested inside a pseudo/selector block (":hover", "@dark", etc.) \u2014 that is never a valid CSS selector fragment. The rule is DROPPED (not shipped as a dead/never-matching selector). To reveal a child on a parent state, target the child's OWN class from the parent selector instead, e.g. move the declaration onto the child element itself, or use a sibling-selector combinator in a top-level style block.`))}function m(t,e,s){const n={},r=new Set,f=(o,c,u)=>{const a=u?new Set(Object.keys(n)):null;if(T[o]){const d=T[o](c,e,e.state,e.context);if(d){const i=Array.isArray(d)?d:[d];for(const l of i)l&&Object.assign(n,l)}}else n[o]=c;if(u)for(const d in n)a.has(d)||r.add(d)};for(const o in t){if(!Object.prototype.hasOwnProperty.call(t,o))continue;let c=t[o];if(typeof c=="function"&&(c=c(e,e.state,e.context)),c==null||typeof c=="function")continue;if(typeof c=="object"&&!Array.isArray(c)){if(o==="style"){for(const i in c){let l=c[i];if(typeof l=="function"&&(l=l(e,e.state,e.context)),l==null||typeof l=="function")continue;const y=typeof e[i]=="function"&&(T[i]||E&&E.has(i));f(i,l,y)}continue}if(Nt(o,e)){const i=m(c,e,!1);Object.keys(i).length&&(n[`[data-theme="${o.slice(1)}"] &`]=i);continue}if(/^[A-Z][A-Za-z0-9]*$/.test(o)){X()&&ss(o,e);continue}const a=Rt(o,e),d=m(c,e,!1);Object.keys(d).length&&(n[a]=d);continue}const u=typeof e[o]=="function"&&(T[o]||E&&E.has(o));f(o,c,u)}if(s)for(const o in n)r.add(o);for(const o of r){const c=n[o];typeof c=="string"&&!c.includes("!important")&&(n[o]=c+" !important")}return n}function Mt(t,e){if(e===void 0&&(e=0),e>8)return!1;if(typeof t=="function")return!0;if(t&&typeof t=="object"&&!Array.isArray(t)){for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)&&Mt(t[s],e+1))return!0}return!1}function ho(t,e,s){if(!e||typeof e!="object"||Array.isArray(e))return null;if(Nt(t,s)){const f=m(e,s,!1);return Object.keys(f).length?{cssProp:`[data-theme="${t.slice(1)}"] &`,block:f}:null}const n=Rt(t,s),r=m(e,s,!1);return Object.keys(r).length?{cssProp:n,block:r}:null}function es(t){const e=t.__ref;for(const s of Object.keys(t)){if(!Tt(s))continue;const n=t[s];if(!n||typeof n!="object"||Array.isArray(n)||!Mt(n))continue;let r=null,f;const o=S(()=>{if(!t.node)return;const c=t.context?.designSystem;c&&N(c);let u,a=!1;try{const d=ho(s,n,t),i=d?ht(d.block)+"::"+d.cssProp:null;if(i!==null&&i===f)a=!0;else if(f=i,d){const l=nt({[d.cssProp]:d.block},null,t.context?.cssPrefix);u=l?l.split(" ").filter(Boolean):null}else u=null}finally{c&&R()}if(!(a||!t.node.classList)){if(r)for(const d of r)t.node.classList.remove(d);if(u&&u.length)for(const d of u)t.node.classList.add(d);r=u}},{depth:e.path.length,label:v(e,"cssBlock("+s+")")});e.__effects.push(o)}}function ns(t){const e=t.__ref;e.__conditionalRunners=[];const s=new Map;for(const n of Object.keys(t)){const r=n.charAt(0);if(r!=="."&&r!=="!")continue;const f=n.slice(1);if(!f)continue;if(/[:@\s>~+[\]]/.test(f)){if(typeof console<"u"&&console.warn){const y=f.split(/[:@\s>~+[\]]/)[0];console.warn(`[smbls] conditional \`${n}\` on ${t.key||"?"} will never match \u2014 the whole string after \`${r}\` is read as one prop name. Nest the selector inside instead: \`${r}${y}: { '${f.slice(y.length)}': {...} }\`.`)}continue}const o=t[n];if(!o||typeof o!="object")continue;const c=r==="!",u={lastMatch:!1,appliedKeys:null,appliedClasses:null},a=()=>{let y;const _=t[f];if(_===void 0){const p=!!t.state&&f in t.state,x=t.state?t.state[f]:void 0;if(p||x!==void 0)y=x;else{const b=t.context?.cases?.[f];if(b===void 0)return;try{y=typeof b=="function"?b.call(t,t):b}catch(C){y=!1,e.__conditionalError=C,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` case fn threw on ${t.key||"?"} \u2014 treating as false:`,C?.message||C)}}}else if(typeof _=="function")try{y=_(t,t.state,t.context)}catch(p){y=!1,e.__conditionalError=p,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` predicate threw on ${t.key||"?"} \u2014 treating as false:`,p?.message||p)}else y=_;const g=c?!y:!!y;if(!t.node||g===u.lastMatch)return;u.lastMatch=g;const h=t.context?.designSystem;h&&N(h);try{if(g){const p={},x={};let b=!1;for(const A in o){if(!Object.prototype.hasOwnProperty.call(o,A))continue;const w=o[A],Y=A.charAt(0);if((Y===":"||Y==="@"||Y==="&"||Y==="[")&&w&&typeof w=="object"&&!Array.isArray(w)){if(Nt(A,t)){const P=m(w,t,!1);Object.keys(P).length&&(x[`[data-theme="${A.slice(1)}"] &`]=P,b=!0)}else{const P=Rt(A,t),L=m(w,t,!1);Object.keys(L).length&&(x[P]=L,b=!0)}continue}const q=typeof w=="function"?w(t,t.state,t.context):w;if(q!=null)if(T[A]){const P=T[A](q,t,t.state,t.context);if(P){const L=Array.isArray(P)?P:[P];for(const tt of L)tt&&Object.assign(p,tt)}}else(E&&E.has(A)||Ot(A))&&(p[A]=q)}const C=Object.keys(p);if(C.length){J(t.node,p);for(const A of C)s.set(A,n);u.appliedKeys=C}else u.appliedKeys=null;if(b){const A=nt(x,null,t.context?.cssPrefix),w=A?A.split(" ").filter(Boolean):[];if(w.length&&t.node.classList){for(const Y of w)t.node.classList.add(Y);u.appliedClasses=w}else u.appliedClasses=null}else if(u.appliedClasses){for(const A of u.appliedClasses)t.node.classList.remove(A);u.appliedClasses=null}}else{if(u.appliedKeys){for(const p of u.appliedKeys)s.get(p)===n&&(Ot(p)?t.node.style.removeProperty(p):t.node.style[p]="",s.delete(p));u.appliedKeys=null}if(u.appliedClasses){for(const p of u.appliedClasses)t.node.classList.remove(p);u.appliedClasses=null}}}finally{h&&R()}};e.__conditionalRunners.push(a);const d=D(t,t[f+"Deps"],a),i=S(d,{depth:e.path.length,label:v(e,"conditional("+n+")")}),l=e.__exec&&e.__exec[f]||t[f];i._sources.size===0&&typeof l=="function"&&X()&&console.warn(`[smbls] conditional \`${n}\` on ${t.key||"?"} subscribed to nothing \u2014 its predicate tracked no reactive read on its first run, so no state write will ever re-evaluate it (only a direct element.update() on this element re-runs it). If the predicate guards its state reads (\`in\`, short-circuits, \`?.\`), declare \`${f}Deps: [...]\` (state-key strings or \`(el, s) => \u2026\` selectors) so the subscription is armed unconditionally.`),e.__effects.push(i)}}const $t=new WeakSet;function rs(t){const e=t.ownerDocument;!e||$t.has(e)||($t.add(e),queueMicrotask(()=>{$t.delete(e);const s=e.body||e.documentElement;s&&s.offsetWidth}))}const Ft=new WeakSet;let _o=!1;function go(t){return t.startsWith("[data-theme=")||t.startsWith("@media")&&t.includes("prefers-color-scheme")}function It(t,e){const s={...t};for(const n in e){const r=e[n],f=s[n];s[n]=r&&typeof r=="object"&&f&&typeof f=="object"?It(f,r):r}return s}function bo(t,e){const s={};for(const n in t){const r=t[n];if(r&&typeof r=="object"){const f=bo(r,e);Object.keys(f).length&&(s[n]=f)}else e.has(n)||(s[n]=r)}return s}function is(t){const{node:e}=t;if(!e)return;if(_o||(_o=!0,nt({display:"none"})),Ft.has(t)){console.error("[applyCssInProps] re-entry detected for element",t.key,"prop path:",t.__ref?.path);return}Ft.add(t);const s=t.context?.designSystem;s&&N(s),qt();try{const n={};let r=!1,f=null,o=null,c=null;const u=(a,d)=>{if(d&&typeof d=="object"&&go(a)){o||(o={});const i=o[a];i&&(d=It(i,d)),o[a]=d}else(d===null||typeof d!="object")&&(c||(c=new Set),c.add(a));n[a]=d};if(Object.prototype.hasOwnProperty.call(t,"theme")&&typeof t.theme!="function"&&T.theme){const a=T.theme(t.theme,t,t.state,t.context);if(a){const d=i=>{for(const l in i){const y=i[l];y&&typeof y=="object"&&go(l)&&(f||(f={}),f[l]=y),n[l]=y}};if(Array.isArray(a))for(const i of a)i&&d(i);else d(a);r=!0}}for(const a of Object.keys(t)){if(typeof t[a]=="function"||G.has(a)||a==="theme")continue;const d=a.charCodeAt(0);if(!(d>=65&&d<=90)&&!z(a)){if(T[a]){const i=t[a],l=T[a](i,t,t.state,t.context);if(l){if(Array.isArray(l)){for(const y of l)if(y)for(const _ in y)u(_,y[_])}else for(const y in l)u(y,l[y]);r=!0}}else if(E&&E.has(a)){const i=t[a];i!=null&&typeof i!="object"&&(u(a,i),r=!0)}else if(a.charCodeAt(0)===45){const i=t[a];i!=null&&typeof i!="object"&&(u(a,i),r=!0)}else if(a.charAt(0)==="&"||a.charAt(0)==="@"||a.charAt(0)===":"||a.charAt(0)==="["){const i=t[a];if(i&&typeof i=="object"&&!Array.isArray(i)){if(Mt(i))continue;const l=ho(a,i,t);l&&(u(l.cssProp,l.block),r=!0)}}}}if(f)for(const a in f){let d=c?bo(f[a],c):f[a];o&&o[a]&&(d=It(d,o[a])),Object.keys(d).length?n[a]=d:delete n[a]}if(r){n.display&&String(n.display).includes("!important")&&(e.style.setProperty("display",String(n.display).replace(/\s*!important\s*$/,""),"important"),delete n.display);const a=nt(n,null,t.context?.cssPrefix);if(a&&e.classList){const i=a.split(" ").filter(Boolean);let l=!1;for(const y of i)e.classList.add(y),l||(y.charCodeAt(0)===95&&y.charCodeAt(1)===99||y.charCodeAt(0)===95&&y.indexOf("_c",1)!==-1)&&(l=!0);l&&rs(e)}const d=t.display!=null&&typeof t.display!="function"?t.display:t.hide===!0||t.show===!1?"none":null;if(d!=null){const i=n.display;if(i&&i!==d)if(d==="none"){const l=[];for(const y of e.classList)y.startsWith("_d-")&&y!=="_d-none"&&l.push(y);for(const y of l)e.classList.remove(y);e.classList.add("_d-none")}else e.style.display==="none"&&(typeof t.hide=="function"||typeof t.show=="function")||(e.style.display=t.display),t.__ref&&(t.__ref.__explicitDisplay=t.display)}}}finally{Qt(),s&&R(),Ft.delete(t)}}function xo(t){const{node:e}=t;if(!e||!e.setAttribute)return;if(t.aria&&typeof t.aria=="object")for(const r in t.aria){const f=t.aria[r];if(typeof f=="function"||typeof f=="object"||f==null||typeof f=="string"&&f.includes("{{"))continue;const o="aria-"+r.replace(/[A-Z]/g,c=>"-"+c.toLowerCase());e.setAttribute(o,K(o,f))}const s=Fo(t);for(const r in s){const f=s[r];f!=null&&f!==!1&&typeof f!="function"&&typeof f!="object"&&e.setAttribute(r,f===!0?"":f)}const n=t.tag||"div";for(const r of Object.keys(t)){if(typeof t[r]=="function"||G.has(r)||r==="on"||s[r]!==void 0)continue;const f=r.charCodeAt(0);if(!(f>=65&&f<=90)&&!z(r)&&!(T[r]||E&&E.has(r))&&rt(n,r)){let o=t[r];if(o==null)continue;if(typeof o=="string"&&o.includes("{{")){if(!kt[r])continue;o=$.call(t,o,t.state)}if(o==null||typeof o=="function"||typeof o=="object"||o===!1&&!ct(it(r)||r))continue;const c=it(r)||r;e.setAttribute(c,K(c,o))}}}function Rs(t,e){const{node:s}=t;if(!s||!s.setAttribute)return;const n=e.charCodeAt(0);if(n>=65&&n<=90||z(e)||T[e]||E&&E.has(e)||!rt(t.tag||"div",e))return;const r=it(e)||e,f=r.toLowerCase(),o=t.__ref&&t.__ref.__effects;let c=!1;if(o)for(let d=0;d<o.length;d++){const i=o[d];i&&i._attrName===f&&!i._disposed&&typeof i._execute=="function"&&(c=!0,i._execute())}if(c)return;let u=t[e];const a=kt[e];if(a&&u!=null){const d=a(t);d!==void 0&&(u=d)}typeof u=="string"&&u.includes("{{")&&(u=$.call(t,u,t.state)),u==null||u===!1&&!ct(r)?s.removeAttribute(r):typeof u!="function"&&typeof u!="object"&&s.setAttribute(r,K(r,u))}function cs(t,e){const s=t.node,n=t.__ref;let r=n.__autoGrow;if(!e){if(r&&r.active){try{s.removeEventListener("input",r.resize)}catch{}s.style.height="",r.appliedMax!=null&&s.style.maxHeight===r.appliedMax&&(s.style.maxHeight=""),r.active=!1,r.appliedMax=null,r.lastMeasure=0}return}r||(r=n.__autoGrow={active:!1,appliedMax:null,lastMeasure:0,resize:()=>{if(s.scrollHeight===0&&r.lastMeasure>0)return;s.style.height="auto";const o=s.scrollHeight;s.style.height=o+"px",o>0&&(r.lastMeasure=o)}},n.__eventCleanup||(n.__eventCleanup=[]),n.__eventCleanup.push(()=>{try{s.removeEventListener("input",r.resize)}catch{}})),r.active||(s.addEventListener("input",r.resize),r.active=!0);const f=typeof e=="object"&&e.max!=null?String(e.max):null;f!==r.appliedMax&&(f==null?r.appliedMax!=null&&s.style.maxHeight===r.appliedMax&&(s.style.maxHeight=""):s.style.maxHeight=f,r.appliedMax=f),r.resize()}function fs(t){if(!t.autoGrow)return;const e=t.node;if(!e||e.tagName!=="TEXTAREA")return;const s=t.__ref,n=t.autoGrow,r=typeof n=="function"?D(t,t.autoGrowDeps,n):null,f=S(()=>{const o=t.autoGrow;let c=o;if(typeof o=="function")try{c=(o===n&&r?r:o)(t,t.state,t.context)}catch{c=null}cs(t,c)},{depth:s.path.length,label:v(s,"autoGrow")});s.__effects||(s.__effects=[]),s.__effects.push(f),r&&(s.__exec.autoGrow=n)}const Ao=new Set(["onSwipe","onSwipeLeft","onSwipeRight","onSwipeUp","onSwipeDown"]);function Co(t,e){for(const s of Object.keys(t)){if(!z(s)||Ao.has(s))continue;const n=Oo(s);if(n){Do(n,t,t[s]);continue}let r=t[s];if(typeof r=="string"&&/^[A-Za-z_$][\w$]*$/.test(r)){const o=r;r=function(u){return t.call(o,u)}}if(typeof r!="function")continue;const f=Ho(s);To.has(f)||Lo(Wo(f),t,r)}as(t)}function as(t){const e=t.node;if(!e||!e.addEventListener)return;const s={};let n=!1;for(const l of Ao){const y=t[l];typeof y=="function"&&(s[l]=y,n=!0)}if(!n)return;const r=typeof t.swipeThreshold=="number"?t.swipeThreshold:40,f=typeof t.swipeMaxDuration=="number"?t.swipeMaxDuration:600;let o=0,c=0,u=0,a=!1;const d=l=>{const y=l.touches&&l.touches[0]||l.changedTouches&&l.changedTouches[0];y&&(o=y.clientX,c=y.clientY,u=Date.now(),a=!0)},i=l=>{if(!a)return;a=!1;const y=l.changedTouches&&l.changedTouches[0]||l.touches&&l.touches[0];if(!y)return;const _=y.clientX-o,g=y.clientY-c,h=Date.now()-u;if(h>f)return;const p=Math.abs(_),x=Math.abs(g);if(Math.max(p,x)<r)return;let b;if(p>x*1.2)b=_<0?"left":"right";else if(x>p*1.2)b=g<0?"up":"down";else return;const C="onSwipe"+b.charAt(0).toUpperCase()+b.slice(1),A=s[C],w=s.onSwipe;A&&A.call(t,l,t,t.state,t.context),w&&w.call(t,{direction:b,dx:_,dy:g,dt:h,event:l},t,t.state,t.context)};e.addEventListener("touchstart",d,{passive:!0}),e.addEventListener("touchend",i,{passive:!0}),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{e.removeEventListener("touchstart",d)}catch{}try{e.removeEventListener("touchend",i)}catch{}})}function dt(t,e){const s={...t};for(const n in e){const r=s[n],f=e[n];r&&f&&typeof r=="object"&&typeof f=="object"&&!Array.isArray(r)&&!Array.isArray(f)&&typeof r!="function"&&typeof f!="function"?s[n]=dt(r,f):s[n]=f}return s}function Ut(t,e,s,n){if(!e||!t.node)return;const r=t.childExtends;if(Array.isArray(e)){const f=t.tag==="fragment",o=t.context?.document||globalThis.document,c=f?null:o?.createDocumentFragment();if(!f&&!c)return;const u=t.childProps,a=t.childrenAs,d=h=>{let p=e[h];const x=p;(typeof p=="string"||typeof p=="number")&&(p={text:p});let b=u;if(typeof u=="function")try{b=u(t,p)}catch{b=null}if(a==="state"){let A=x;(typeof x=="string"||typeof x=="number")&&(A={value:x,text:x}),p=b?{...b,state:A}:{state:A}}else b&&(p=dt(b,p));if(r&&!p.ignoreChildExtends)if(p.extends){const A=Array.isArray(p.extends)?p.extends:[p.extends],w=Array.isArray(r)?r:[r];p={...p,extends:[...w,...A]}}else p={...p,extends:r};const C=so(p?.key,x,h);try{return Z(p,t,C,s)}catch(A){if(typeof console<"u"&&console.error){const w=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${C}" failed to construct at ${w} (initial render, skipping this row):`,A?.message||A)}return null}},i=t.__ref;if(!(n===!0&&!f&&!!i&&(s?.mountYield===!0||t.yieldChildren===!0))){for(let h=0;h<e.length;h++){const p=d(h);!f&&p?.node&&c.appendChild(p.node)}return f||t.node.appendChild(c),!0}const y=i.__childrenChunkGen=(i.__childrenChunkGen||0)+1;Wt();let _=null;const g=h=>{if(i.__disposed||i.__childrenChunkGen!==y){_&&_.parentNode&&_.remove();return}for(let p=h;p<e.length;p++){const x=d(p);if(x?.node&&(_?t.node.insertBefore(x.node,_):c.appendChild(x.node)),p+1<e.length&&Ht()){_||(_=o.createComment("smbls-mount"),c.appendChild(_),t.node.appendChild(c));const b=p+1;Yt(()=>g(b));return}}_?(_.remove(),t.node.tagName==="SELECT"&&bt(t,!0)):t.node.appendChild(c)};return g(0),zt(),!0}if(typeof e=="string"){const f=eo(e,t);if(Array.isArray(f))return Ut(t,f,s,n)}if(typeof e=="object")for(const f in e){if(G.has(f))continue;let o=e[f];if(!(o==null||o===!1)){if((typeof o=="string"||typeof o=="number")&&(o={text:o}),t.childProps&&(o=dt(t.childProps,o)),r&&!o.ignoreChildExtends)if(o.extends){const c=Array.isArray(o.extends)?o.extends:[o.extends],u=Array.isArray(r)?r:[r];o={...o,extends:[...u,...c]}}else o={...o,extends:r};Z(o,t,f,s)}}}function bt(t,e){const s=t.node;if(!s||s.tagName!=="SELECT")return;const n=s.options;if(!n||!n.length)return;const r=t.__ref,f=r&&r.__exec&&r.__exec.value,o=typeof f=="function",c=t.value!=null&&typeof t.value!="function";if(o||c){let d;if(o)try{d=f(t,t.state,t.context)}catch{return}else d=t.value,typeof d=="string"&&d.includes("{{")&&(d=$.call(t,d,t.state));const i=d==null?"":String(d);s.value!==i&&(s.value=i);return}const u=e||!(r&&r.__selectSynced);if(r&&(r.__selectSynced=!0),!u)return;let a=-1;for(let d=0;d<n.length;d++)n[d].defaultSelected&&(a=d);a>=0&&s.selectedIndex!==a&&(s.selectedIndex=a)}function vo(t,e){let{children:s,content:n}=t;const r=t.childExtends;if(typeof s=="function"){const i=s;try{s=i(t,t.state,t.context)}catch(h){if(s=void 0,typeof console<"u"&&console.error){const p=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${p} (initial run, treating as empty):`,h?.message||h)}}t.children=s;const l=t.__ref;let y=!1;const _=D(t,t.childrenDeps,i),g=S(()=>{const h=y;y=!0;let p;try{p=_(t,t.state,t.context)}catch(P){if(typeof console<"u"&&console.error){const L=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${L}${h?"":" (initial tracking run)"}:`,P?.message||P)}return}if(!h||p===t.children)return;t.children=p,l.__childrenChunkGen!=null&&l.__childrenChunkGen++;const x=typeof t.onContentUpdate=="function",b=x?[]:null,C=x?[]:null,A=x?[]:null;if(Array.isArray(p)&&t.childrenAs==="state"){const P=t.childProps,L=[],tt=new Map;for(let k=0;k<p.length;k++){const U=p[k];let j=P;if(typeof P=="function")try{j=P(t,U)}catch{j=null}const V=so(j&&j.key,U,k);L.push(V),tt.set(V,{rawChild:U,childProps:j})}const wo=new Set(L),ko=l.__children.slice();for(const k of ko)if(!wo.has(k)){const U=t[k];U?.remove&&U.remove(),delete t[k],C&&C.push(k)}const ot=t.childExtends,lt=t.tag==="fragment",jo=t.context?.document||globalThis.document,st=lt?null:jo?.createDocumentFragment(),At=new Set;for(const k of L){const U=tt.get(k),j=U.rawChild,V=t[k];if(V&&V.state){if(j&&typeof j=="object"){const O=V.state,Q=O.$replace||O.replace,Vt=O.$update||O.update;try{if(typeof Q=="function")Q.call(O,j);else if(typeof Vt=="function"){for(const I in O)if(!(I==="__element"||I==="root"||I==="parent"||I==="update")&&!Object.prototype.hasOwnProperty.call(j,I))try{O[I]=void 0}catch{}Vt.call(O,j)}else for(const I in j)O[I]=j[I]}catch(I){if(typeof console<"u"&&console.error){const Eo=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${k}" failed to patch at ${Eo} (reconcile, keeping its previous data for this pass):`,I?.message||I)}}}A&&A.push(k);continue}let Ct=j;(typeof j=="string"||typeof j=="number")&&(Ct={value:j,text:j});const Kt=U.childProps;let B=Kt?{...Kt,state:Ct}:{state:Ct};if(ot&&!B.ignoreChildExtends)if(B.extends){const O=Array.isArray(B.extends)?B.extends:[B.extends],Q=Array.isArray(ot)?ot:[ot];B={...B,extends:[...Q,...O]}}else B={...B,extends:ot};let vt;try{vt=Z(B,t,k,e)}catch(O){if(typeof console<"u"&&console.error){const Q=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${k}" failed to construct at ${Q} (reconcile, skipping this row):`,O?.message||O)}At.add(k);continue}!lt&&vt?.node&&st&&st.appendChild(vt.node),b&&b.push(k)}if(!lt&&st&&st.childNodes.length&&t.node&&t.node.appendChild(st),!lt&&t.node){let k=null;for(const U of L){const j=t[U]?.node;if(!j)continue;const V=k?k.nextSibling:t.node.firstChild;j!==V&&t.node.insertBefore(j,V),k=j}}l.__children=At.size?L.filter(k=>!At.has(k)):L,x&&(b.length||C.length)&&oo(t,{added:b,removed:C,kept:A}),bt(t,!1);return}const q=x?[...l.__children]:null;for(const P of[...l.__children]){const L=t[P];L?.remove&&L.remove(),delete t[P]}l.__children=[],Ut(t,p,e),bt(t,!1),x&&oo(t,{added:[...l.__children],removed:q,kept:[]})},{depth:l.path.length,label:v(l,"children")});l.__effects.push(g)}const f=Ut(t,s,e,!0);if(n!=null&&!(n&&n.__ref)){let i=n;if(typeof i=="string"||typeof i=="number"?i={text:i}:typeof i!="object"&&(i={}),t.childProps&&(i=dt(t.childProps,i)),r&&!i.ignoreChildExtends)if(i.extends){const l=Array.isArray(i.extends)?i.extends:[i.extends],y=Array.isArray(r)?r:[r];i={...i,extends:[...y,...l]}}else i={...i,extends:r};Z(i,t,"content",e)}if(s&&!f)return;const o=t.context?.components||{};{const i=Object.keys(t);for(let l=0;l<i.length;l++){const y=i[l];if(!y.endsWith("Extends")||typeof t[y]!="string")continue;const _=y.slice(0,-7);if(!_||_.charCodeAt(0)<65||_.charCodeAt(0)>90)continue;const g={extends:t[y]};delete t[y];for(let h=l+1;h<i.length;h++){const p=i[h],x=p.charCodeAt(0);if(x>=65&&x<=90||G.has(p)||typeof t[p]=="function"&&(p.startsWith("on")||p.startsWith(".")))break;const b=t[p];b!==void 0&&(g[p]=b,delete t[p])}t[_]&&typeof t[_]=="object"?t[_]={...g,...t[_]}:t[_]=g}}const c=e?.mountYield===!0||t.yieldChildren===!0,u=Object.keys(t),a=i=>{if(G.has(i)||typeof t[i]!="object"||t[i]===null)return;const l=i.charCodeAt(0);if(l<65||l>90)return;let y=t[i];if(!y.__ref){if(!y.extends&&!y.extend){const _=o[i]||o[`smbls.${i}`];_&&(y={...y,extends:_})}if(t.childProps&&(y=dt(t.childProps,y)),r&&!y.ignoreChildExtends)if(y.extends){const _=Array.isArray(y.extends)?y.extends:[y.extends],g=Array.isArray(r)?r:[r];y={...y,extends:[...g,..._]}}else y={...y,extends:r};Z(y,t,i,e)}};if(!c){for(const i of u)a(i);return}Wt();const d=i=>{for(let l=i;l<u.length;l++)if(a(u[l]),l+1<u.length&&Ht()){const y=l+1;Yt(()=>d(y));return}};d(0),zt()}function So(t,e,s){const{node:n}=t;if(!n)return;n.ref=t;const r=e?.tag==="fragment"?e.__ref?.__fragmentAnchor:null;if(r){const o=r.parentNode;if(o){if(s?.position==="before"&&s.node)o.insertBefore(n,s.node);else if(s?.position==="after"&&s.node){const c=s.node.nextSibling;o.insertBefore(n,c||r)}else o.insertBefore(n,r);return}}const f=e?.node||(e?.nodeType?e:null);if(f)if(s?.position==="before"&&s.node)f.insertBefore(n,s.node);else if(s?.position==="after"&&s.node){const o=s.node.nextSibling;o?f.insertBefore(n,o):f.appendChild(n)}else f.appendChild(n)}const Bt=3;function us(t){return!t||t.__inBeforeUpdate||(t.__beforeUpdateFailCount||0)>=Bt?!1:(t.__inBeforeUpdate=!0,!0)}function xt(t,e){t&&(t.__inBeforeUpdate=!1,e?(t.__beforeUpdateFailCount=(t.__beforeUpdateFailCount||0)+1,t.__beforeUpdateFailCount===Bt&&typeof console<"u"&&console.error&&console.error(`[DOMQL] onBeforeUpdate failed ${Bt}x in a row on this element \u2014 pausing automatic retries until a future prop/state change re-arms it.`)):t.__beforeUpdateFailCount=0)}function M(t,e,s){const n=t.charAt(0).toLowerCase()+t.slice(1);e.context?.plugins?.length&&H(n,e,s);const r="on"+t,f=e[r];if(typeof f=="function"){const u=t==="Render"?"__inRender":t==="RenderRouter"?"__inRenderRouter":null;if(u){if(e.__ref[u])return!0;e.__ref[u]=!0}const a=e.context?.designSystem;a&&N(a);let d=!!u;try{const i=f(e,e.state,e.context,s);if(i&&typeof i.then=="function"){const l=e.__ref;return i.catch(y=>{e.context?.plugins?.length&&H("error",e,{hook:r,error:y})||console.error(`[DOMQL] Lifecycle "${r}" error:`,y)}).finally(()=>{u&&l&&(l[u]=!1)}),d=!1,!0}if(i===!1)return!1}catch(i){if(e.context?.plugins?.length&&H("error",e,{hook:r,error:i})||console.error(`[DOMQL] Lifecycle "${r}" error:`,i),e.context?.strictMode)throw i}finally{a&&R(),d&&e.__ref&&(e.__ref[u]=!1)}}return!0}var Ms=Z;export{Bt as BEFORE_UPDATE_MAX_CONSECUTIVE_FAILURES,us as acquireBeforeUpdateGuard,Z as create,Ms as default,Et as flushMounts,Rs as reconcileAttrProp,xt as releaseBeforeUpdateGuard,yt as writeElementText};
@@ -1 +1 @@
1
- import{update as h}from"./update.js";import{remove as _}from"./dispose.js";import{isLoudDevRuntime as d}from"./devRuntime.js";import"css-in-props";import{getDB as p,getQuery as g,getRootData as y,getRootState as m,getRoot as k,getRootContext as w,getContext as x,getPath as C,nextElement as S,previousElement as R,verbose as v,warn as b,error as P,variables as A,spotByPath as D}from"@symbo.ls/utils";function i(t,e,n){const o=t?.context?.analyze;if(!o||!o.emit||e==="warn"&&!o.shouldCapture("warnings")||e==="error"&&!o.shouldCapture("errors"))return;const r=n.map(s=>s?.message||(typeof s=="string"?s:null)).filter(Boolean).join(" ");o.emit({id:`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,6)}`,ts:Date.now(),type:e==="error"?"error":"warning",level:e,hook:e==="error"?"el.error":"el.warn",element:{key:t.key!=null?String(t.key):null,name:t.__name||null,tag:t.tag||null},message:r||null,args:n})}const l=new Set;function $(t,e,n){const o=String(e);if(l.has(o))return;l.add(o);const r=t?.__ref?.path,s=Array.isArray(r)&&r.length?r.join("."):t?.key!=null?String(t.key):"(unknown element)",a=n!=null?`resolves to a non-function (${typeof n}) \u2014 it cannot be called`:"is not registered in context.methods, context.functions, or context.utils, and is not an element method",u=`[smbls] el.call('${o}') at <${s}>: "${o}" ${a}. Returning undefined (unchanged behavior) \u2014 check the name for typos or register the function on the project. Warned once per name; repeat misses are silent.`;i(t,"error",[u]),console.error(u)}function j(...t){return i(this,"warn",t),b.apply(this,t)}function O(...t){return i(this,"error",t),P.apply(this,t)}const f={update:h,remove:_,getDB:p,getQuery:g,getRootData:y,getPath:C,nextElement:S,previousElement:R,verbose:v,warn:j,error:O,variables:A,spotByPath:D,set(t,e){const n=this.__ref;if(n){if(n.__setLocked){n.__setQueued={content:t,options:e};return}n.__setLocked=!0}try{if(this.removeContent(),t!=null){const o=this.context?.__create;o&&o(t,this,"content",e)}this.__ref&&(this.__ref.contentManaged=!0)}finally{if(n){n.__setLocked=!1;const o=n.__setQueued;o&&(n.__setQueued=null,this.set(o.content,o.options))}}},reset(t){const e=this.context?.__create;if(!e)return this;const n=this.parent,o=this.key,r=this.parse();return this.remove(),e(r,n,o,t)},lookup(t){let e=this.parent;for(;e;){if(typeof t=="function"){if(t(e))return e}else if(typeof t=="string"){if(e.key===t)return e;if(e[t]&&e[t].__ref)return e[t]}e=e.parent}return null},lookdown(t){const e=this.__ref;if(!e?.__children)return null;for(const n of e.__children){const o=this[n];if(!o)continue;if(typeof t=="function"){if(t(o))return o}else if(typeof t=="string"&&o.key===t)return o;const r=o.lookdown?.(t);if(r)return r}return null},lookdownAll(t,e=[]){const n=this.__ref;if(!n?.__children)return e;for(const o of n.__children){const r=this[o];r&&(typeof t=="function"?t(r)&&e.push(r):typeof t=="string"&&r.key===t&&e.push(r),r.lookdownAll?.(t,e))}return e},getRef(t){return t?this.__ref&&this.__ref[t]:this.__ref},getChildren(){const t=this.__ref&&this.__ref.__children;return Array.isArray(t)?t.map(e=>this[e]):[]},getRoot:k,getRootState:m,getRootContext:w,getContext:x,parse(t){const e={},n=t?new Set(t):null,o=this.__ref?.__exec;for(const r in this)if(!(r==="parent"||r==="node"||r==="__ref")&&!n?.has(r)){if(o&&o[r]!==void 0){e[r]=o[r];continue}typeof this[r]!="function"&&(e[r]=this[r])}return e},parseDeep(t){const e=this.parse(t),n=this.__ref;if(n?.__children)for(const o of n.__children)this[o]?.parseDeep&&(e[o]=this[o].parseDeep(t));return e},keys(){return Object.keys(this)},log(...t){if(t.length){const e={};for(const n of t)e[n]=this[n];console.log(e)}else console.log(this)},setProps(t,e){return this.update(t,e)},setNodeStyles(t){if(this.node?.style)for(const e in t){const n=t[e];if(n==null)continue;const o=e.replace(/[A-Z]/g,s=>"-"+s.toLowerCase()),r=String(n).replace(/\s*!important\s*$/,"");this.node.style.setProperty(o,r,"important")}},call(t,...e){const n=this.context,o=n?.methods?.[t]||n?.functions?.[t]||n?.utils?.[t]||this[t];if(typeof o=="function")return o.call(this,...e);d()&&$(this,t,o)},removeContent(){const t=this.__ref;if(!t?.__children)return;const e=this.content;if(e?.remove){e.remove(),delete this.content;const n=t.__children.indexOf("content");n!==-1&&t.__children.splice(n,1)}e?.node?.parentNode&&e.node.parentNode.removeChild(e.node)}},c=new WeakMap;function L(t){if(!t)return f;let e=c.get(t);if(e)return e;e=Object.create(f);const n=t.methods;if(n)for(const o in n)e[o]=n[o];return c.set(t,e),e}function F(t){const e=L(t.context);Object.setPrototypeOf(t,e)}function T(t){if(!t)return!1;const e=c.get(t);if(!e)return!1;const n=t.methods;if(!n)return!1;for(const o in n)e[o]=n[o];return!0}export{F as addMethods,f as elementProto,T as refreshContextProto};
1
+ import{update as p}from"./update.js";import{remove as g}from"./dispose.js";import{isLoudDevRuntime as l}from"./devRuntime.js";import"css-in-props";import{getDB as y,getQuery as m,getRootData as k,getRootState as w,getRoot as x,getRootContext as C,getContext as S,getPath as R,nextElement as v,previousElement as b,verbose as P,warn as A,error as D,variables as $,spotByPath as j}from"@symbo.ls/utils";import*as a from"@symbo.ls/utils";function i(t,e,o){const n=t?.context?.analyze;if(!n||!n.emit||e==="warn"&&!n.shouldCapture("warnings")||e==="error"&&!n.shouldCapture("errors"))return;const r=o.map(s=>s?.message||(typeof s=="string"?s:null)).filter(Boolean).join(" ");n.emit({id:`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,6)}`,ts:Date.now(),type:e==="error"?"error":"warning",level:e,hook:e==="error"?"el.error":"el.warn",element:{key:t.key!=null?String(t.key):null,name:t.__name||null,tag:t.tag||null},message:r||null,args:o})}const h=new Set;function _(t,e,o){const n=String(e);if(h.has(n))return;h.add(n);const r=t?.__ref?.path,s=Array.isArray(r)&&r.length?r.join("."):t?.key!=null?String(t.key):"(unknown element)",d=o!=null?`resolves to a non-function (${typeof o}) \u2014 it cannot be called`:"is not registered in context.methods, context.functions, or context.utils, and is not an element method",u=`[smbls] el.call('${n}') at <${s}>: "${n}" ${d}. Returning undefined (unchanged behavior) \u2014 check the name for typos or register the function on the project. Warned once per name; repeat misses are silent.`;i(t,"error",[u]),console.error(u)}function O(...t){return i(this,"warn",t),A.apply(this,t)}function L(...t){return i(this,"error",t),D.apply(this,t)}const f={update:p,remove:g,getDB:y,getQuery:m,getRootData:k,getPath:R,nextElement:v,previousElement:b,verbose:P,warn:O,error:L,variables:$,spotByPath:j,set(t,e){const o=this.__ref;if(o){if(o.__setLocked){o.__setQueued={content:t,options:e};return}o.__setLocked=!0}try{if(this.removeContent(),t!=null){const n=this.context?.__create;n&&n(t,this,"content",e)}this.__ref&&(this.__ref.contentManaged=!0)}finally{if(o){o.__setLocked=!1;const n=o.__setQueued;n&&(o.__setQueued=null,this.set(n.content,n.options))}}},reset(t){const e=this.context?.__create;if(!e)return this;const o=this.parent,n=this.key,r=this.parse();return this.remove(),e(r,o,n,t)},lookup(t){let e=this.parent;for(;e;){if(typeof t=="function"){if(t(e))return e}else if(typeof t=="string"){if(e.key===t)return e;if(e[t]&&e[t].__ref)return e[t]}e=e.parent}return null},lookdown(t){const e=this.__ref;if(!e?.__children)return null;for(const o of e.__children){const n=this[o];if(!n)continue;if(typeof t=="function"){if(t(n))return n}else if(typeof t=="string"&&n.key===t)return n;const r=n.lookdown?.(t);if(r)return r}return null},lookdownAll(t,e=[]){const o=this.__ref;if(!o?.__children)return e;for(const n of o.__children){const r=this[n];r&&(typeof t=="function"?t(r)&&e.push(r):typeof t=="string"&&r.key===t&&e.push(r),r.lookdownAll?.(t,e))}return e},getRef(t){return t?this.__ref&&this.__ref[t]:this.__ref},getChildren(){const t=this.__ref&&this.__ref.__children;return Array.isArray(t)?t.map(e=>this[e]):[]},getRoot:x,getRootState:w,getRootContext:C,getContext:S,parse(t){const e={},o=t?new Set(t):null,n=this.__ref?.__exec;for(const r in this)if(!(r==="parent"||r==="node"||r==="__ref")&&!o?.has(r)){if(n&&n[r]!==void 0){e[r]=n[r];continue}typeof this[r]!="function"&&(e[r]=this[r])}return e},parseDeep(t){const e=this.parse(t),o=this.__ref;if(o?.__children)for(const n of o.__children)this[n]?.parseDeep&&(e[n]=this[n].parseDeep(t));return e},keys(){return Object.keys(this)},log(...t){if(t.length){const e={};for(const o of t)e[o]=this[o];console.log(e)}else console.log(this)},setProps(t,e){return this.update(t,e)},setNodeStyles(t){if(this.node?.style)for(const e in t){const o=t[e];if(o==null)continue;const n=e.replace(/[A-Z]/g,s=>"-"+s.toLowerCase()),r=String(o).replace(/\s*!important\s*$/,"");this.node.style.setProperty(n,r,"important")}},call(t,...e){const o=this.context,n=o?.methods?.[t]||o?.functions?.[t]||o?.utils?.[t]||this[t];if(typeof n=="function"){const r=a.isFailedRevival;if(!r||!r(n))return n.call(this,...e);l()&&_(this,t,a.getFunctionSource(n));return}l()&&_(this,t,n)},removeContent(){const t=this.__ref;if(!t?.__children)return;const e=this.content;if(e?.remove){e.remove(),delete this.content;const o=t.__children.indexOf("content");o!==-1&&t.__children.splice(o,1)}e?.node?.parentNode&&e.node.parentNode.removeChild(e.node)}},c=new WeakMap;function E(t){if(!t)return f;let e=c.get(t);if(e)return e;e=Object.create(f);const o=t.methods;if(o)for(const n in o)e[n]=o[n];return c.set(t,e),e}function T(t){const e=E(t.context);Object.setPrototypeOf(t,e)}function q(t){if(!t)return!1;const e=c.get(t);if(!e)return!1;const o=t.methods;if(!o)return!1;for(const n in o)e[n]=o[n];return!0}export{T as addMethods,f as elementProto,q as refreshContextProto};
@@ -1 +1 @@
1
- const o="3.14.788";export{o as VERSION};
1
+ const o="3.14.789";export{o as VERSION};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symbo.ls/element",
3
- "version": "3.14.788",
3
+ "version": "3.14.789",
4
4
  "description": "Core element creation, update, and disposal engine for smbls v3.14",
5
5
  "type": "module",
6
6
  "main": "./dist/cjs/index.js",