@symbo.ls/element 3.14.804 → 3.14.805

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +189 -0
  3. package/dist/cjs/src/cache.js +1 -1
  4. package/dist/cjs/src/connected.js +1 -0
  5. package/dist/cjs/src/core.js +6 -0
  6. package/dist/cjs/src/create.js +1 -6
  7. package/dist/cjs/src/cssLonghands.js +1 -1
  8. package/dist/cjs/src/delegate.js +1 -1
  9. package/dist/cjs/src/dispose.js +1 -1
  10. package/dist/cjs/src/extends.js +1 -1
  11. package/dist/cjs/src/features.js +1 -0
  12. package/dist/cjs/src/handlerChain.js +1 -0
  13. package/dist/cjs/src/hydration.js +1 -0
  14. package/dist/cjs/src/index.js +1 -1
  15. package/dist/cjs/src/install.js +1 -0
  16. package/dist/cjs/src/lean.js +1 -0
  17. package/dist/cjs/src/methods.js +1 -1
  18. package/dist/cjs/src/mountRecord.js +1 -0
  19. package/dist/cjs/src/mountScheduler.js +1 -1
  20. package/dist/cjs/src/mountYield.js +1 -0
  21. package/dist/cjs/src/plainRows.js +1 -0
  22. package/dist/cjs/src/update.js +1 -1
  23. package/dist/cjs/src/version.js +1 -1
  24. package/dist/cjs/src/viewEvents.js +1 -0
  25. package/dist/esm/src/cache.js +1 -1
  26. package/dist/esm/src/connected.js +1 -0
  27. package/dist/esm/src/core.js +6 -0
  28. package/dist/esm/src/create.js +1 -6
  29. package/dist/esm/src/cssLonghands.js +1 -1
  30. package/dist/esm/src/delegate.js +1 -1
  31. package/dist/esm/src/dispose.js +1 -1
  32. package/dist/esm/src/extends.js +1 -1
  33. package/dist/esm/src/features.js +1 -0
  34. package/dist/esm/src/handlerChain.js +1 -0
  35. package/dist/esm/src/hydration.js +1 -0
  36. package/dist/esm/src/index.js +1 -1
  37. package/dist/esm/src/install.js +1 -0
  38. package/dist/esm/src/lean.js +1 -0
  39. package/dist/esm/src/methods.js +1 -1
  40. package/dist/esm/src/mountRecord.js +1 -0
  41. package/dist/esm/src/mountScheduler.js +1 -1
  42. package/dist/esm/src/mountYield.js +1 -0
  43. package/dist/esm/src/plainRows.js +1 -0
  44. package/dist/esm/src/update.js +1 -1
  45. package/dist/esm/src/version.js +1 -1
  46. package/dist/esm/src/viewEvents.js +1 -0
  47. package/package.json +6 -6
@@ -0,0 +1,6 @@
1
+ import{createStore as no,createScopeStore as fn,isStore as K}from"@symbo.ls/signal";import{createEffect as v,getObserver as an}from"@symbo.ls/signal";import*as un from"@symbo.ls/signal";import{withDesignSystem as Q,untrack as It}from"./runContext.js";import{cacheNode as ro,detectTag as $o,firstSlotAfterText as dn}from"./cache.js";import{REGISTRY as B,LIFECYCLE_EVENTS as ln}from"./registry.js";import{registerEvent as pn,registerGlobalEvent as hn,globalEventKeyInfo as yn,isHandlerKey as W,eventNameFrom as _n,stringHandler as gn}from"./delegate.js";import{FEATURES as M}from"./features.js";import{mountBridge as bn}from"./bridge.js";import{applyExtends as An,openMergeLayer as xn,closeMergeLayer as wn,deepMergeChild as X}from"./extends.js";import{flushConnected as eo}from"./connected.js";import{mountRecord as Sn,mountPendingOf as $t}from"./mountRecord.js";import{addMethods as kn}from"./methods.js";import"./dispose.js";import{isLoudDevRuntime as rt}from"./devRuntime.js";import{replaceLiteralsWithObjectFields as $,isPolyglotWritableKey as Cn,markPolyglotSeeded as vn,polyglotSeededKeys as jn}from"@symbo.ls/utils";import*as Ut from"@symbo.ls/utils";import{dispatchPluginHook as gt,hasPluginHook as Pn,reportLifecycleError as Ht}from"./pluginHooks.js";import{applyStateMethods as ft}from"@symbo.ls/state";import{CSS_PROPS_REGISTRY as U,DEFAULT_CSS_PROPERTIES_LIST as V,pushStaticCssPass as Uo,popStaticCssPass as Ho,resolveStyleBlockTokens as En}from"css-in-props";import{css as bt,wrapHoverRule as Bo}from"@symbo.ls/css";import{pushConfig as z,popConfig as q}from"@symbo.ls/scratch";import{checkAttributeByTagName as At,applyAttrTransforms as Tn,ATTR_TRANSFORMS as io,camelToAttr as xt,serializeAttrValue as J,isEnumeratedTrueFalseAttr as Bt,extractConditionalAttrs as On}from"attrs-in-props";import{resolveElementIdEngine as Rn}from"./engineRegistry.js";import{CSS_LONGHAND_SHORTHANDS as Vt,CSS_SHORTHAND_LONGHANDS as Dn,cssShorthandStatesLonghand as Vo,cssShorthandStatesThemeLonghand as Ln,cssPropName as Ko,cssCamelName as Go}from"./cssLonghands.js";import{isAttributeFirst as Wo,isCssProp as et}from"./attributeFirst.js";import{VERSION as Nn}from"./version.js";const zo=Rn({uniqId:1,scopedStyleId:0},Nn),at=[],m=new Set;let co=!1,qo=0,ut=null,wt=null;function dt(){return typeof Date<"u"&&typeof Date.now=="function"?Date.now():0}function Yo(){return typeof document<"u"&&document.visibilityState==="hidden"}const Mn=250,Fn=1e3;function In(){return wt&&(wt!==(typeof requestAnimationFrame=="function"?requestAnimationFrame:null)||Yo())?!0:dt()-qo>=Fn}function $n(){if(co=!0,qo=dt(),wt=null,typeof requestAnimationFrame!="function"){const t=typeof clearTimeout=="function"?clearTimeout:null,o=setTimeout(ao,0);ut=t?()=>t(o):null;return}if(Yo()){const t=typeof clearTimeout=="function"?clearTimeout:null,o=setTimeout(ao,Mn);ut=t?()=>t(o):null}else{const t=typeof cancelAnimationFrame=="function"?cancelAnimationFrame:null;wt=requestAnimationFrame;const o=requestAnimationFrame(ao);ut=t?()=>t(o):null}}function St(){if(co){if(!In())return;const t=ut;if(ut=null,t)try{t()}catch{}}$n()}const Zo=300,Qo=15e4;let fo=0;function Re(){fo++;let t=!1;return()=>{t||(t=!0,!(--fo>0)&&(at.length||m.size)&&St())}}function ao(){if(co=!1,ut=null,wt=null,fo>0||(m.size&&Ur(),!at.length))return;const t=at.splice(0,at.length);for(let o=0;o<t.length;o++){const s=t[o];if(s.node){if(!s.node.isConnected){const n=s.__ref||(s.__ref={});n.__mountAttempts=(n.__mountAttempts||0)+1,n.__mountFirstAttemptAt==null&&(n.__mountFirstAttemptAt=dt());const r=dt()-n.__mountFirstAttemptAt;n.__mountAttempts<=Zo&&r<Qo?(at.push(s),St()):console.warn("[DOMQL] onMounted dropped after",n.__mountAttempts,"attempts /",r,"ms \u2014 node never connected:",s.key||s.tag||s);continue}typeof s.onBridgeMount=="function"&&bn(s),typeof s.onMounted=="function"&&N("Mounted",s,s.__ref?.__mountOptions||{})}}}function uo(t,o){const s=t.__ref?.__autoGrow;s&&s.active&&Ot(t,!0),!(typeof t.onMounted!="function"&&typeof t.onBridgeMount!="function")&&(t.__ref.__mountOptions=o,at.push(t),St())}function Xo(t,o){typeof t.onContentUpdate=="function"&&(gt("contentUpdate",t,o),Q(t,()=>{try{t.onContentUpdate(t,t.state,t.context,o)}catch(s){if(Ht(t,"onContentUpdate",s),t.context?.strictMode)throw s}}))}function Un(t){return t.toLowerCase()}function Jo(t){const o=t.charCodeAt(0);return o===58||o===64||o===38||o===91}function Kt(t){if(typeof t=="string")return t||void 0;if(typeof t=="number"||typeof t=="bigint")return String(t)}function mo(t,o,s,n){return Gt(n,Kt(t)||(o&&typeof o=="object"?Kt(o.key):void 0)||String(s))}function Gt(t,o){if(!t||typeof o!="string")return o;let s=o;for(;Hn(t,s);)s="$"+s;return s!==o&&Bn(t,o,s),s}function Hn(t,o){if(B.has(o)&&o!=="content")return!0;if(!(o in t))return!1;const s=t[o];return!(s&&typeof s=="object"&&s.__ref&&s.parent===t)}const ts=new Set;function Bn(t,o,s){if(!rt())return;const n=t.__ref&&t.__ref.path&&t.__ref.path.join(".")||t.key||"<root>",r=n+"::"+o;ts.has(r)||(ts.add(r),console.warn(`[smbls] a child keyed "${o}" at ${n} names a property of its parent; it lives at el["${s}"] (data-key="${s}") so the parent keeps its own "${o}". Prefix the data keys to keep plain el.<key> access.`))}function tt(t,o,s,n={},r){if(an())return It(()=>tt(t,o,s,n,r));if(t==null||t===!1)return null;const c=ar(t);(typeof t=="string"||typeof t=="number")&&(t={text:t}),s=Kt(s);const a=Kt(t.key),i=Object.create(null);i.key=s||(a&&o?Gt(o,a):a)||`_${zo.uniqId++}`,i.parent=o||null,i.context=t.context||o?.context||n.context||{},i.context.__create||(i.context.__create=tt);const e=i.__ref={__if:!0,__children:[],__exec:{},__effects:[],__eventCleanup:[],root:o?.__ref?.root||i,path:o?.__ref?.path?[...o.__ref.path,i.key]:[i.key],origin:t,__mount:null,__plainRows:null,__ifParked:null};c&&(e.__runtimeSource=c);let f=r;r&&(r.holdTail||r.deferAttach)&&(r.holdTail&&M.mount!==null&&M.mount.hold(i),r.deferAttach&&(Sn(e).attachLater=!0),f=void 0);const l=t;if(t=os(i,t,s,a,o,n),i.if!=null){let _;if(typeof i.if=="function")try{_=i.if(i,i.state,i.context)}catch(p){if(_=!1,e.__ifError=p,typeof console<"u"&&console.warn){const y=i.key||i.tag||"?";console.warn(`[smbls] \`if:\` evaluator threw on ${y} \u2014 treating as false:`,p?.message||p)}}else _=i.if;e.__if=!!_}if(e.__if)typeof i.if=="function"&&(e.__ifInitialized=!0);else{if(o){o[i.key]=i;const p=o.__ref;p&&(p.__ifParked||(p.__ifParked=new Set)).add(i.key)}const _=qn(t,s,i.context?.components);return _.length&&(e.__ifLateMerge={definition:l,key:s,ownKey:a,names:_,options:n}),typeof i.if=="function"&&bs(i,e,i.if),i}i.tag||(i.tag=$o(i)),N("Init",i,n);const u=M.hydration,d=i.node=u!==null&&u.adopt(i)||ro(i);if(!d)return i;if(i.tag==="fragment"){const p=(i.context?.document||globalThis.document).createComment("");d.appendChild(p),e.__fragmentAnchor=p}if(N("AttachNode",i,n),d.setAttribute&&i.key&&d.setAttribute("data-key",i.key),o){const _=o[i.key];o[i.key]=i;const p=o.__ref?.__children;p&&(_===void 0||!p.includes(i.key))&&p.push(i.key)}d.setAttribute&&i.context?.scopeSelector&&i.context.scopeSelector!==":root"&&i.context.key&&i.key===i.context.key&&d.setAttribute("data-smbls-app",i.context.key),i.id&&d.setAttribute&&(d.id=i.id),Xs(i,n),ys(i),gs(i);try{on(i,n)}catch(_){Vn(i,_)}const h=e.__mount;return h!==null&&h.pending>0?(h.attachLater||mt(i,o,f),h.tail=()=>M.mount.finish(i,n),i):(Jt(i,!0),(h===null||!h.attachLater)&&mt(i,o,f),Kn(i,n),i)}function De(t){const o=t&&t.__ref&&t.__ref.__mount;return!o||!o.attachLater||(o.attachLater=!1,!t.node)?!1:(mt(t,t.parent),!0)}function Vn(t,o){if(typeof console<"u"&&console.error){const s=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] createChildren failed at ${s}:`,o?.message||o,o?.stack?`
2
+ `+o.stack.split(`
3
+ `).slice(0,6).join(`
4
+ `):"")}}function Kn(t,o){if(typeof t.html=="function"&&t.node&&!t.node.innerHTML&&Q(t,()=>{try{const s=t.html(t,t.state,t.context);s!=null&&typeof s!="function"&&(t.node.innerHTML=s)}catch{}}),N("Create",t,o),N("Complete",t,o),N("Render",t,o),N("RenderRouter",t,o),uo(t,o),typeof t.onFrame=="function"){const s=t.onFrame,n=t.context?.designSystem,r=()=>{if(t.node){if(t.node.isConnected){n&&z(n);try{s(t,t.state,t.context)}catch(c){console.error("[DOMQL] onFrame error:",c)}finally{n&&q()}}requestAnimationFrame(r)}};requestAnimationFrame(r)}}function Wt(t,o){const s=o&&o.__ref&&o.__ref.__mount;!s||!s.tail||s.holder||(s.holder=t,M.mount.hold(t))}const Gn=new Set(["childProps","attr","style","scope","data","vars"]);function os(t,o,s,n,r,c){if(s&&!o.extends&&!o.extend){const p=s.indexOf("_"),y=s.indexOf(".");let A=p>0?p:-1;if(y>0&&(A<0||y<A)&&(A=y),A>0){const S=s.substring(0,A),w=t.context?.components;w&&(w[S]||w["smbls."+S])?o={...o,extends:S}:w&&rt()&&(/^[A-Z]\w*_\d+$/.test(s)||/^[A-Z]\w*\.\w+$/.test(s))&&console.warn(`[smbls] auto-extend: key "${s}" looks like an instance of "${S}" but neither "${S}" nor "smbls.${S}" is registered in context.components \u2014 element will render as a plain <div>. Register the base component or rename the key.`)}}t.__ref&&(t.__ref.__mergeLayer=null),An(t,o,c);const a=xn(t),i=t.props&&typeof t.props=="object"?t.props:null;for(const p in o)if(!(p==="parent"||p==="node"||p==="__ref"||p==="extends"||p==="context"||p==="props")){if(p==="key"){n&&(t.key=r?Gt(r,n):n);continue}a&&a.mark(p),lo(t,p,o[p])}if(i)for(const p in i)lo(t,p,i[p]);const e=o.props;if(e&&typeof e=="object"){for(const p in e)lo(t,p,e[p]);if(a)for(const p in e)a.mark(p)}wn(t),o.classlist!==void 0&&(t.classlist=o.classlist),o.text!==void 0&&(t.text=o.text),o.html!==void 0&&(t.html=o.html);const f=t.scope&&typeof t.scope=="object"?t.scope:null,l=r?.scope,u=t.context&&typeof t.context.globalScope=="object"&&t.context.globalScope||null,d=l||u||null;if(o.scope!==void 0||f){const p={};f&&Object.assign(p,f),o.scope!==void 0&&Object.assign(p,o.scope),t.scope=fn(p,d)}else d&&(t.scope=d);o.if!==void 0&&(t.if=o.if);const h=t.__ref,_=ur(t,h&&h.__runtimeSource);return h&&(h.__declaredArrays=_||void 0),kn(t),Yn(t,r,o,c),o}function lo(t,o,s){const n=t[o],r=M.chains;if(r!==null&&r(t,o,n,s))return;const c=n&&s&&typeof n=="object"&&typeof s=="object"&&!Array.isArray(n)&&!Array.isArray(s);c&&o.charCodeAt(0)>=65&&o.charCodeAt(0)<=90?t[o]=X(n,s):c&&Gn.has(o)?t[o]={...n,...s}:c&&Jo(o)?t[o]=X(n,s):t[o]=s}const Wn=new Set(["key","parent","context","__ref"]);function zn(t,o){for(const n of Object.keys(t))Wn.has(n)||delete t[n];let s=o.definition;if(!s.extends&&!s.extend&&typeof o.key=="string"){const n=t.context?.components||{},r=n[o.key]||n["smbls."+o.key];r&&(s={...s,extends:r})}It(()=>os(t,s,o.key,o.ownKey,t.parent,o.options))}function qn(t,o,s){const n=s||{},r=i=>!!(n[i]||n["smbls."+i]),c=[],a=[];if(t.extends&&a.push(...Array.isArray(t.extends)?t.extends:[t.extends]),t.extend&&a.push(...Array.isArray(t.extend)?t.extend:[t.extend]),a.length){for(const i of a){if(typeof i!="string")continue;const e=i.includes(">")?i.split(">")[0].trim():i;r(e)||c.push(e)}return c}if(typeof o=="string"&&/^[A-Z]/.test(o)){let i=-1;const e=o.indexOf("_"),f=o.indexOf(".");e>0&&(i=e),f>0&&(i<0||f<i)&&(i=f);const l=i>0?o.substring(0,i):o;r(l)||c.push(l)}return c}function po(t,o,s){if(typeof t.onStateInit!="function"&&!Pn(t,"stateInit"))return;const n=t.state;t.state=o;try{N("StateInit",t,s)}finally{t.state=n}}const ho=t=>({isDataOnlyKey:o=>jn(t).has(o)});function Yn(t,o,s,n){const r=!o,c=s.state&&typeof s.state=="object"&&!Array.isArray(s.state)&&Object.keys(s.state).length===0,a=r&&c&&t.context?.state,i=s.state!==void 0&&!a?s.state:t.state&&!K(t.state)?t.state:void 0;if(i==null){if(o?.state)t.state=o.state,ft(t,t.state);else if(t.context?.state){const e=t.context.state,f={...e},l=t.context?.polyglot;if(l?.translations){const u=t.context,d=e.lang||l.defaultLang||"en",h=new Set,_=(A,S)=>{h.has(A)||Cn(u,A,f)&&(f[A]=S,h.add(A),vn(u,A,S))},p=l.translations[d];if(p&&typeof p=="object")for(const A in p)_(A,p[A]);const y=new Set(l.languages||[]);for(const A in l.translations)y.has(A)||_(A,l.translations[A])}K(f)||po(t,f,n),t.state=K(f)?f:no(f,ho(t.context)),t.state.__element=t,t.state.root=t.state,ft(t,t.state),Ut.promoteActiveRootState?.(e,t.state),N("StateCreated",t,n)}else t.state={},Object.defineProperty(t.state,"root",{value:t.state,enumerable:!1,configurable:!0,writable:!0}),ft(t,t.state);return}if(typeof i=="string"){if(t.state=rs(i,o),t.state&&typeof t.state=="object"&&!K(t.state)){const e=o?.state?.root||o?.state||t.state;Object.defineProperty(t.state,"root",{value:e,enumerable:!1,configurable:!0,writable:!0})}ft(t,t.state),Qn(t,i,o),N("StateCreated",t,n);return}if(typeof i=="function"){const e=i(t,o?.state);if(K(e))t.state=e;else{const f=e||{};po(t,f,n),t.state=no(f,o?.state?void 0:ho(t.context))}}else if(K(i))t.state=i;else{const e={...i};po(t,e,n),t.state=no(e,o?.state?void 0:ho(t.context))}t.state.__element=t,o?.state?(t.state.parent=o.state,t.state.root=o.state.root||o.state):t.state.root=t.state,ft(t,t.state),Ut.promoteActiveRootState?.(i,t.state),N("StateCreated",t,n)}function ss(t,o){if(!o)return t;const s=o.split("/");let n=t;for(const r of s){if(n==null)return{};n=n[r]}return n??{}}function ns(t,o){const s=o.state;return t.startsWith("~/")?[s&&(s.root||s),t.slice(2)]:t.startsWith("../")?[s,t.slice(3)]:[s,t]}function rs(t,o){if(!o)return{};if(t===".")return o.state||{};if(t.startsWith("../")||t.startsWith("~/")){const[r,c]=ns(t,o);return c?ss(r,c):r??{}}if(o.state?.[t]!==void 0)return o.state[t];const s=ss(o.state,t);if(s!=null&&Object.keys(s).length>0)return s;const n=o.context?.polyglot;if(n?.translations){const r=o.state?.root?.lang||n.defaultLang||"en",c=n.translations[r];if(c?.[t]!==void 0)return c[t];if(n.translations[t]!==void 0)return n.translations[t]}return{}}function Zn(t,o){const[s,n]=ns(t,o);if(!n||!s||typeof s!="object")return;const r=s[n];if(r!==void 0||n.indexOf("/")===-1)return r;let c=s;for(const a of n.split("/")){if(c==null||typeof c!="object")return;c=c[a]}return c}function Qn(t,o,s){const n=t.__ref;if(!n||!s||o==="."||!K(s.state))return;n.__stateBinding&&n.__stateBinding.dispose();const r=It(()=>v(()=>{const c=Zn(o,s);!c||typeof c!="object"||c===t.state||It(()=>es(t,t.state,c,!0))},{depth:n.path?n.path.length:0,label:C(n,"state")}));r._isStateBinding=!0,n.__stateBinding=r,n.__effects&&n.__effects.push(r)}function es(t,o,s,n){const r=t.__ref;if(!r)return;if(n||t.state===o){t.state=s,n&&ft(t,s),cs(r);const a=r.__children;if(a)for(let i=0;i<a.length;i++){const e=t[a[i]];e&&e.__ref&&e.parent===t&&es(e,o,s,!1)}return}if(r.__stateBinding){r.__stateBinding._notify();return}const c=t.state;c&&typeof c=="object"&&c.parent===o&&(c.parent=s,cs(r))}function is(t,o){const s=t.__ifParked;if(!s||!s.size)return o;for(const n of s)o.includes(n)||o.push(n);return o}function cs(t){const o=t.__effects;if(o)for(let s=0;s<o.length;s++){const n=o[s];n&&!n._disposed&&!n._isStateBinding&&!n._isSubscribeToEffect&&typeof n._notify=="function"&&n._notify()}}const Xn=new Set(["s","state","ctx","context"]),yo=new WeakMap;function Jn(t){if(yo.has(t))return yo.get(t);let o=null;try{const s=typeof Ut.getFunctionSource=="function"?Ut.getFunctionSource(t):Function.prototype.toString.call(t);if(typeof s=="string"){const n=s.match(/^\s*(?:async\s+)?([A-Za-z_$][\w$]*)\s*=>/)||s.match(/^[^(]*\(([^)]*)\)/);n&&(o={params:n[1].split(",").map(r=>r.trim())})}}catch{}return yo.set(t,o),o}function mn(t){const o=Jn(t);return o?o.params.map(s=>s.split("=")[0].trim()).filter(Boolean):[]}const tr=3,or=/^(is|has)[A-Z0-9_$]/,sr=new Set(["routerOptions"]),fs=new WeakSet;function nr(t,o){if(typeof t!="function"||t.length!==2||o&&(or.test(o)||sr.has(o))||fs.has(t))return!1;const s=mn(t);if(s.length<2)return!1;const n=s[1].replace(/[{}[\]]/g,"").trim();return n.length<tr||Xn.has(n)?!1:(fs.add(t),!0)}function rr(t){const o=t.__ref,s=t.tag||"div",n=t.context?.designSystem,r=[],c=Object.keys(t);for(let a=0;a<c.length;a++){const i=c[a];if(typeof t[i]!="function"||B.has(i))continue;const e=i.charCodeAt(0);e>=65&&e<=90||W(i)||U[i]||V&&V.has(i)||e!==45&&(At(s,i)||(rt()&&nr(t[i],i)&&console.warn(`[smbls] custom prop "${i}"${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('${i}', \u2026) instead of reading el.${i}(\u2026) directly (see RULES.md Rule 8).`),r.push({prop:i,fn:t[i]})))}for(let a=0;a<r.length;a++){const{prop:i,fn:e}=r[a];o.__exec[i]=e,Object.defineProperty(t,i,{get(){n&&z(n);try{return e(t,t.state,t.context)}catch{return}finally{n&&q()}},set(f){delete o.__exec[i],Object.defineProperty(t,i,{value:f,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}}function er(t,o){if(!(!Array.isArray(o)||o.length===0))for(let s=0;s<o.length;s++){const n=o[s];try{typeof n=="function"?n(t,t.state,t.context):typeof n=="string"&&t.state?.[n]}catch{}}}function O(t,o,s){return!Array.isArray(o)||o.length===0?s:function(...n){return er(t,o),s.apply(this,n)}}function lt(t,o){if(!(!t||Array.isArray(t)||typeof t!="object"))return t[o]}function C(t,o){return()=>t.path.join(".")+"::"+o}const as=new Set;function F(t,o,s){if(!rt())return;const n=C(t,o)();as.has(n)||(as.add(n),console.warn(`[smbls] "${o}" effect threw on ${t.path.join(".")} \u2014 keeping previous value:`,s?.message||s))}const us=/(['"`])((?:\\.|(?!\1)[^\\])*)\1/g,ds=new WeakMap,ir=t=>{let o=ds.get(t);if(o!==void 0)return o;o=null;let s;try{s=String(t)}catch{s=""}if(s.includes("{{")){us.lastIndex=0;let n;for(;(n=us.exec(s))!==null;)n[2].includes("{{")&&(o||(o=[])).push(n[2])}return ds.set(t,o),o},cr=(t,o)=>{const s=ir(t);if(s)for(let n=0;n<s.length;n++)o.add(s[n])},fr=(t,o)=>!W(t)&&!et(o,t),_o=(t,o,s,n,r)=>{if(typeof o=="string"){!r&&o.includes("{{")&&s.add(o);return}typeof o=="function"&&fr(t,n)&&cr(o,s)},go=new WeakMap,kt=(t,o)=>Object.prototype.hasOwnProperty.call(t,o),Ct=t=>{if(typeof t=="string"||typeof t=="number")return{text:t};if(!t||typeof t!="object"||Array.isArray(t))return null;const o=t.props;return o&&typeof o=="object"&&!Array.isArray(o)?X(t,o):t},vt=(t,o)=>t&&o?X(t,o):t||o||null,ls=(t,o)=>{const s=t.__ref&&t.__ref.__runtimeSource;return!!s&&kt(s,o)},pt=(t,o)=>ls(t,o)?Ct(t.__ref.__runtimeSource[o]):null,jt=(t,o)=>(o&&t&&typeof t=="object"&&go.set(t,o),t),ar=t=>{if(!t||typeof t!="object")return;const o=go.get(t);return o&&go.delete(t),o},bo=(t,o,s)=>{if(typeof t=="string"){t.includes("{{")&&o.add(t);return}if(!(!t||typeof t!="object"||s.has(t))){if(s.add(t),Array.isArray(t)){for(let n=0;n<t.length;n++)bo(t[n],o,s);return}if(!t.__ref)for(const n of Object.keys(t)){if(n==="state")continue;const r=Object.getOwnPropertyDescriptor(t,n);r&&"value"in r&&bo(r.value,o,s)}}},ur=(t,o)=>{let s=null;for(const n of Object.keys(t)){if(B.has(n)||o&&kt(o,n))continue;const r=Object.getOwnPropertyDescriptor(t,n),c=r&&r.value;if(!Array.isArray(c))continue;const a=new Set;bo(c,a,new Set),a.size&&(s||(s=new Map),s.set(c,a))}return s},ps=(t,o)=>{if(Array.isArray(o))for(let s=t;s;s=s.parent){const n=s.__ref&&s.__ref.__declaredArrays,r=n&&n.get(o);if(!r)continue;const c=t.__ref;c.__authoredTemplates||(c.__authoredTemplates=new Set);for(const a of r)c.__authoredTemplates.add(a);return}},hs=["attr","aria","data","metadata"],dr=t=>{if(hs.includes(t))return!0;const o=t.charCodeAt(0);return o===46||o===33||o===64},lr=(t,o)=>{const s=new Set,n=t.tag||"div";for(const r of Object.keys(t)){const c=Object.getOwnPropertyDescriptor(t,r),a=c&&c.value,i=!!o&&kt(o,r);if(a&&typeof a=="object"&&!Array.isArray(a)){if(!dr(r))continue;const e=i?o[r]:null,f=e&&typeof e=="object"?e:null,l=r.charCodeAt(0)===46||r.charCodeAt(0)===33;for(const u in a){const d=i&&(!f||kt(f,u)),h=a[u];if(l&&h&&typeof h=="object"&&!Array.isArray(h)&&hs.includes(u)){for(const _ in h)_o(_,h[_],s,n,d);continue}_o(u,h,s,n,d)}continue}_o(r,a,s,n,i)}return s};function ys(t,o){const s=t.__ref,n=!!(o&&o.skipIfEffect),r=lr(t,s.__runtimeSource);if(s.__authoredTemplates)for(const e of r)s.__authoredTemplates.add(e);else s.__authoredTemplates=r;if(rr(t),typeof t.text=="function"){const e=t.text,f=O(t,t.textDeps,e),l=v(()=>{if(!s.contentManaged)try{let u=f(t,t.state,t.context);t.node&&u!=null&&typeof u!="function"&&typeof u!="object"&&(typeof u=="string"&&u.includes("{{")&&(u=$.call(t,u,t.state)),zt(t,u))}catch(u){F(s,"text",u)}},{depth:s.path.length,label:C(s,"text")});s.__effects.push(l),s.__exec.text=e}else if(typeof t.text=="string"&&t.text.includes("{{")){const e=t.text,f=v(()=>{if(s.contentManaged)return;const l=$.call(t,e,t.state);l!=null&&(t.text=l),t.node&&zt(t,l??"")},{depth:s.path.length,label:C(s,"text")});s.__effects.push(f),s.__exec.text=e}const c=t.tag||"div";for(const e of Object.keys(t))if(typeof t[e]=="function"&&!B.has(e)&&!W(e)&&!s.__exec[e]&&!Wo(c,e)){if(U[e]){const f=t[e],l=O(t,t[e+"Deps"],f),u=e;let d,h=null,_=null,p;const y=v(()=>{const A=t.context?.designSystem;A&&z(A);try{const S=l(t,t.state,t.context);Uo();let w;try{w=U[u](S,t,t.state,t.context)}finally{Ho()}if(Array.isArray(w)){const g={};for(const x of w)if(x)for(const k in x)g[k]=x[k];w=g}const b=u==="show"||u==="hide";if(w&&t.node&&yr(w)){const g=ht(w);if(g===null||g!==p){p=g;const x=bt(w,null,t.context?.cssPrefix),k=x?x.split(" ").filter(Boolean):null;if(t.node.classList){if(_)for(const j of _)t.node.classList.remove(j);if(k&&k.length)for(const j of k)t.node.classList.add(j);_=k}}d=void 0,h=null}else if(w&&t.node){if(_){for(const x of _)t.node.classList.remove(x);_=null,p=void 0}const g=ht(w);if(g===null||g!==d||!Et(t.node,h)){d=g;const x=js(t,w);h=Pt(t.node,x)}}else t.node&&b&&(d=void 0,h=null,t.node.style.display="")}finally{A&&q()}},{depth:s.path.length,label:C(s,u)});s.__effects.push(y),s.__exec[e]=f}else if(V&&V.has(e)){const f=t[e],l=O(t,t[e+"Deps"],f),u=e;let d,h=null;const _=v(()=>{const p=t.context?.designSystem;p&&z(p);try{const y=l(t,t.state,t.context);if(t.node)if(y!=null){const A=u+":"+String(y);if(A!==d||!Et(t.node,h)){d=A;const S={[u]:y},w=js(t,S);h=Pt(t.node,w)}}else d=void 0,h=null,t.node.style[u]=""}finally{p&&q()}},{depth:s.path.length,label:C(s,u)});s.__effects.push(_),s.__exec[e]=f}else if(e.charCodeAt(0)===45){const f=t[e];ks(t,e,f,t[e+"Deps"],e),s.__exec[e]=f}}if(_r(t),typeof t.html=="function"){const e=t.html,f=O(t,t.htmlDeps,e),l=v(()=>{Q(t,()=>{const u=f(t,t.state,t.context);t.node&&u!=null&&typeof u!="function"&&(t.node.innerHTML=u)})},{depth:s.path.length,label:C(s,"html")});s.__effects.push(l),s.__exec.html=e}if(typeof t.value=="function"){const e=t.value,f=O(t,t.valueDeps,e),l=v(()=>{try{let u=f(t,t.state,t.context);typeof u=="string"&&u.includes("{{")&&(u=$.call(t,u,t.state)),As(t,u)}catch(u){F(s,"value",u)}},{depth:s.path.length,label:C(s,"value")});s.__effects.push(l),s.__exec.value=e}else if(typeof t.value=="string"&&t.value.includes("{{")){const e=t.value,f=v(()=>{try{As(t,$.call(t,e,t.state))}catch(l){F(s,"value",l)}},{depth:s.path.length,label:C(s,"value")});s.__effects.push(f),s.__exec.value=e}if(typeof t.style=="function"){const e=t.style,f=O(t,t.styleDeps,e);let l,u=null,d,h,_,p;const y=v(()=>{const A=f(t,t.state,t.context),S=t.context&&t.context.designSystem;let w;if(A&&typeof A=="object"&&A===d&&S===_){const g=ht(A);w=g!==null&&g===h?p:Xt(t,A),h=g}else w=Xt(t,A),h=void 0;d=A,_=S,p=w;const b=ht(w);(b===null||b!==l||!Et(t.node,u))&&(l=b,xo(t.node,u,w),ot(t.node,w),u=Pt(t.node,w))},{depth:s.path.length,label:C(s,"style")});s.__effects.push(y),s.__exec.style=e}else if(t.style&&typeof t.style=="object")for(const e in t.style){const f=t.style[e];if(typeof f!="function")continue;const l=O(t,lt(t.styleDeps,e),f);let u,d=null;const h=v(()=>{try{const _=l(t,t.state,t.context);if(t.node){const p=e+":"+String(_);if(p!==u||!Et(t.node,d)){u=p;const y=Xt(t,{[e]:_});xo(t.node,d,Object.assign({},y,{[e]:""})),ot(t.node,y),d=Pt(t.node,y)}}}catch(_){F(s,"style."+e,_)}},{depth:s.path.length,label:C(s,"style."+e)});s.__effects.push(h)}if(t.attr&&typeof t.attr=="object"){for(const e in t.attr)if(typeof t.attr[e]=="function"){const f=O(t,lt(t.attrDeps,e),t.attr[e]),l=e,u=v(()=>{try{let d=f(t,t.state,t.context);typeof d=="string"&&d.includes("{{")&&(d=$.call(t,d,t.state)),t.node?.setAttribute&&qt(t.node,l,d)}catch(d){F(s,"attr."+l,d)}},{depth:s.path.length,label:C(s,"attr."+l)});u._attrName=l.toLowerCase(),s.__effects.push(u)}else if(typeof t.attr[e]=="string"&&t.attr[e].includes("{{")){const f=t.attr[e],l=e,u=v(()=>{try{const d=$.call(t,f,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(l,J(l,d??""))}catch(d){F(s,"attr."+l,d)}},{depth:s.path.length,label:C(s,"attr."+l)});u._attrName=l.toLowerCase(),s.__effects.push(u)}}if(t.aria&&typeof t.aria=="object")for(const e in t.aria){const f=t.aria[e];if(typeof f=="string"&&f.includes("{{")){const h=f,_="aria-"+e.replace(/[A-Z]/g,y=>"-"+y.toLowerCase()),p=v(()=>{try{const y=$.call(t,h,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(_,J(_,y??""))}catch(y){F(s,"aria."+e,y)}},{depth:s.path.length,label:C(s,"aria."+e)});p._attrName=_,s.__effects.push(p);continue}if(typeof f!="function")continue;const l=O(t,lt(t.ariaDeps,e),t.aria[e]),u="aria-"+e.replace(/[A-Z]/g,h=>"-"+h.toLowerCase()),d=v(()=>{try{const h=l(t,t.state,t.context);if(!t.node?.setAttribute)return;qt(t.node,u,h)}catch(h){F(s,"aria."+e,h)}},{depth:s.path.length,label:C(s,"aria."+e)});d._attrName=u,s.__effects.push(d)}if(t.data&&typeof t.data=="object")for(const e in t.data){const f=t.data[e];if(typeof f=="string"&&f.includes("{{")){const _=f,p="data-"+e.replace(/[A-Z]/g,A=>"-"+A.toLowerCase()),y=v(()=>{try{const A=$.call(t,_,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(p,A??"")}catch(A){F(s,"data."+e,A)}},{depth:s.path.length,label:C(s,"data."+e)});y._attrName=p,s.__effects.push(y);continue}if(typeof f!="function")continue;const l=O(t,lt(t.dataDeps,e),t.data[e]),d="data-"+e.replace(/[A-Z]/g,_=>"-"+_.toLowerCase()),h=v(()=>{try{const _=l(t,t.state,t.context);if(!t.node?.setAttribute)return;_==null||_===!1?t.node.removeAttribute(d):typeof _!="function"&&typeof _!="object"&&t.node.setAttribute(d,_===!0?"":_)}catch(_){F(s,"data."+e,_)}},{depth:s.path.length,label:C(s,"data."+e)});h._attrName=d,s.__effects.push(h)}const a=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(a)for(const e in a){if(typeof a[e]!="function")continue;const f=O(t,lt(t.classDeps,e),a[e]),l=v(()=>{try{const u=f(t,t.state,t.context);if(!t.node?.classList)return;typeof u=="string"?t.node.classList.add(u):u?t.node.classList.add(e):t.node.classList.remove(e)}catch(u){F(s,"class."+e,u)}},{depth:s.path.length,label:C(s,"class."+e)});s.__effects.push(l)}!n&&typeof t.if=="function"&&bs(t,s,t.if);for(const e of Object.keys(t)){if(B.has(e)||typeof t[e]!="function")continue;const f=e.charCodeAt(0);if(f>=65&&f<=90||W(e))continue;const l=t[e];s.__exec[e]=l;const u=t.tag||"div";if(At(u,e)&&!et(u,e)){const d=xt(e)||e,h=O(t,t[e+"Deps"],l),_=v(()=>{try{let p=h(t,t.state,t.context);typeof p=="string"&&p.includes("{{")&&(p=$.call(t,p,t.state)),t.node?.setAttribute&&qt(t.node,d,p,!0)}catch(p){F(s,e,p)}},{depth:s.path.length,label:C(s,e)});_._attrName=d.toLowerCase(),s.__effects.push(_)}}const i=t.tag||"div";for(const e of Object.keys(t)){if(B.has(e))continue;const f=t[e];if(typeof f!="string"||!f.includes("{{"))continue;const l=e.charCodeAt(0);if(l>=65&&l<=90||W(e)||et(i,e)||io[e]||!At(i,e))continue;const u=xt(e)||e,d=v(()=>{try{const h=$.call(t,f,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(u,J(u,h??""))}catch(h){F(s,e,h)}},{depth:s.path.length,label:C(s,e)});d._attrName=u.toLowerCase(),s.__effects.push(d)}if(kr(t),Lr(t),typeof t.onStateUpdate=="function"&&Array.isArray(t.stateDeps)){const e=t.onStateUpdate,f=t.stateDeps;let l=!1,u=[];const d=v(()=>{const h=[];for(let y=0;y<f.length;y++){const A=f[y];try{h[y]=typeof A=="function"?A(t,t.state,t.context):t.state?.[A]}catch{h[y]=void 0}}if(!l){l=!0,u=h;return}let _=h.length!==u.length;for(let y=0;!_&&y<h.length;y++)h[y]!==u[y]&&(_=!0);const p=u;u=h,_&&Q(t,()=>{try{e(t,t.state,t.context,{prev:p,next:h})}catch(y){if(Ht(t,"onStateUpdate",y),t.context?.strictMode)throw y}})},{depth:s.path.length,label:C(s,"onStateUpdate")});s.__effects.push(d)}Pr(t)}function _s(t){const o=t.parent,s=o?.node;if(!s||!t.node){mt(t,t.parent);return}let n=null;const r=Object.keys(o),c=r.indexOf(t.key);for(let a=c+1;a<r.length;a++){const i=o[r[a]];if(i?.node?.parentNode===s){n=i.node;break}}n?s.insertBefore(t.node,n):s.appendChild(t.node),eo()}function gs(t){xs(t),Ir(t),Fs(t),Zr(t),Yr(t)}function bs(t,o,s){let n=O(t,t.ifDeps,s);const r=v(()=>{const c=!o.__ifInitialized&&o.__ifLateMerge;if(c){const e=t.context?.components||{};c.names.some(f=>e[f]||e["smbls."+f])&&(o.__ifLateMerge=null,zn(t,c),n=O(t,t.ifDeps,typeof t.if=="function"?t.if:s))}let a;try{a=n(t,t.state,t.context)}catch(e){if(a=!1,o.__ifError=e,typeof console<"u"&&console.warn){const f=t.key||t.tag||"?";console.warn(`[smbls] \`if:\` reactive effect threw on ${f} \u2014 treating as false:`,e?.message||e)}return}const i=o.__if;if(o.__if=!!a,i&&!o.__if&&t.node){t.node.remove();try{typeof t.onRemove=="function"&&t.onRemove(t)}catch(e){console.error("[smbls] onRemove error:",e)}}else if(!i&&o.__if)if(o.__ifInitialized)t.node||(t.node=ro(t)),t.node&&(t.node.ref=t),_s(t),xs(t),Fs(t),N("Render",t,{}),uo(t,{});else{o.__ifInitialized=!0,o.__ifLateMerge=null,t.tag||(t.tag=$o(t)),N("Init",t,{});const e=M.hydration;if(t.node||(t.node=e!==null&&e.adopt(t)||ro(t)),!t.node)return;if(t.parent?.__ref?.__children&&!t.parent.__ref.__children.includes(t.key)&&t.parent.__ref.__children.push(t.key),t.parent?.__ref?.__ifParked&&t.parent.__ref.__ifParked.delete(t.key),t.tag==="fragment"&&!o.__fragmentAnchor){const l=(t.context?.document||globalThis.document).createComment("");t.node.appendChild(l),o.__fragmentAnchor=l}N("AttachNode",t,{}),t.node.setAttribute&&t.key&&t.node.setAttribute("data-key",t.key),t.id&&t.node.setAttribute&&(t.node.id=t.id),Xs(t,{}),ys(t,{skipIfEffect:!0}),gs(t),on(t,{}),_s(t),N("Create",t,{}),N("Complete",t,{}),N("Render",t,{}),N("RenderRouter",t,{}),uo(t,{})}},{depth:o.path.length,label:C(o,"if")});o.__effects.push(r)}function zt(t,o){const s=t.node;if(!s)return;const n=o==null||typeof o=="object"?"":String(o);if(t.tag==="string"){s.nodeValue!==n&&(s.nodeValue=n);return}const r=t.__ref;let c=r?r.__textNode:null;if(c&&c.parentNode!==s&&(c=null),!c){const a=s.firstChild;a&&a.nodeType===3&&(c=a)}c?c.nodeValue!==n&&(c.nodeValue=n):s.firstChild?(c=(s.ownerDocument||t.context?.document||globalThis.document).createTextNode(n),s.insertBefore(c,s.firstChild)):(s.textContent=n,c=s.firstChild&&s.firstChild.nodeType===3?s.firstChild:null),r&&(r.__textNode=c||null)}function pr(t,o){return o!=="checked"||!t||t.tagName!=="INPUT"?null:t.hasAttribute("checked")}function hr(t,o){if(o===null)return;const s=t.hasAttribute("checked");s!==o&&t.checked!==s&&(t.checked=s)}function qt(t,o,s,n){s==null||s===!1&&!Bt(o)?Yt(t,o,null):typeof s=="function"||typeof s=="object"||(n&&o==="src"&&"src"in t?t.src=s:Yt(t,o,J(o,s)))}function Yt(t,o,s){const n=pr(t,o);s==null?t.removeAttribute(o):t.setAttribute(o,s),hr(t,n)}function As(t,o){const s=t.node;if(!s||!("value"in s))return;const n=o==null?"":String(o);if(s.value===n)return;const r=typeof document<"u"&&document.activeElement===s,c=r&&typeof s.selectionStart=="number"?s.selectionStart:null,a=r&&typeof s.selectionEnd=="number"?s.selectionEnd:null;if(s.value=n,r&&c!=null&&a!=null)try{s.setSelectionRange(c,a)}catch{}const i=t.__ref&&t.__ref.__autoGrow;i&&i.active&&i.resize()}function xs(t){const{node:o}=t;if(o){if((typeof t.text=="string"&&!t.text.includes("{{")||typeof t.text=="number")&&zt(t,t.text),Ks(t),typeof t.html=="string"&&(o.innerHTML=t.html),t.value!=null&&typeof t.value!="function"&&!(typeof t.value=="string"&&t.value.includes("{{"))&&"value"in o){const s=String(t.value);o.value!==s&&(o.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}ot(o,Xt(t,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&&!Bt(s)||o.setAttribute&&o.setAttribute(s,J(s,n)))}if(typeof t.themeModifier=="string"&&t.themeModifier&&o.setAttribute&&o.setAttribute("data-theme",t.themeModifier),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("{{")||o.dataset&&(o.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&&o.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&&o.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 yr(t){if(!t||typeof t!="object")return!1;for(const o in t){const s=t[o];if(s&&typeof s=="object"&&!Array.isArray(s))return!0}return!1}function Pt(t,o){if(!t||!t.style||!o)return null;const s=t.style,n=[];for(const r in o){if(o[r]==null||r.charAt(0)==="&")continue;const a=Y(r);n.push(a,Ao(s,a),ws(s,a))}return n}function Ao(t,o){return typeof t.getPropertyValue=="function"?t.getPropertyValue(o):""}function ws(t,o){return typeof t.getPropertyPriority=="function"?t.getPropertyPriority(o):""}function Y(t){return Ko(t)}function xo(t,o,s){if(!t||!t.style||!o||!o.length)return;const n=t.style,r=new Set;if(s&&typeof s=="object")for(const c in s)s[c]==null||c.charAt(0)==="&"||r.add(Y(c));for(let c=0;c<o.length;c+=3){const a=o[c];r.has(a)||Ao(n,a)===o[c+1]&&typeof n.removeProperty=="function"&&n.removeProperty(a)}}function Et(t,o){if(!o||!t||!t.style)return!1;const s=t.style;for(let n=0;n<o.length;n+=3)if(Ao(s,o[n])!==o[n+1]||ws(s,o[n])!==o[n+2])return!1;return!0}const Tt=t=>t.charCodeAt(0)===45&&t.charCodeAt(1)===45,Ss=t=>typeof t=="number"||t===!0||typeof t=="string"&&t!=="",Zt=t=>Tt(t)?t:"--"+t;function Qt(t,o){if(!st(t))return null;let s=null;for(const n of Object.keys(t)){if(!n)continue;let r=t[n];if(typeof r=="function"){if(!o)continue;r=r(o,o.state,o.context)}Ss(r)&&(s||(s={}),s[Zt(n)]=r)}return s}function ks(t,o,s,n,r){Cs(t,r,O(t,n,s),c=>Ss(c)?{[o]:c}:null)}function Cs(t,o,s,n,r){const c=t.__ref;let a,i=null;const e=v(()=>{Q(t,()=>{try{const f=n(s(t,t.state,t.context)),l=t.node;if(!l||!l.style)return;const u=ht(f);(u===null||u!==a||!Et(l,i))&&(a=u,xo(l,i,f),f&&ot(l,f),i=f?Pt(l,f):null,r&&r(f))}catch(f){F(c,o,f)}})},{depth:c.path.length,label:C(c,o)});c.__effects.push(e)}function _r(t){const o=t.__ref,s=t.vars;if(typeof s=="function"){gr(t,s),o.__exec.vars=s;return}if(st(s))for(const n of Object.keys(s)){const r=s[n];!n||typeof r!="function"||ks(t,Zt(n),r,lt(t.varsDeps,n),"vars."+n)}}function gr(t,o){const s=t.__ref;Cs(t,"vars",O(t,t.varsDeps,o),n=>Qt(n),n=>{s.__varsInline=n?new Set(Object.keys(n)):null})}function wo(t,o){if(typeof t[o]=="function"&&(et(t.tag||"div",o)||o.charCodeAt(0)===45))return!0;if(!Tt(o))return!1;const s=t.vars;if(typeof s=="function"){const n=t.__ref&&t.__ref.__varsInline;return!!(n&&n.has(o))}if(!st(s))return!1;for(const n of Object.keys(s))if(typeof s[n]=="function"&&Zt(n)===o)return!0;return!1}function br(t){let o=null;for(const s in t)t[s]!=null&&s.charAt(0)!=="&"&&(o||(o=new Set),o.add(Y(s)));return o}function Ar(t,o,s,n){const r=t.__ref;if(!r)return;let c=null;if(s)for(const a of s){if(n&&n.has(a))continue;const i=o[a];if(i==null||typeof i=="object")continue;const e=Y(a);Vt[e]&&(c||(c={}),c[e]=i)}r.__declaredLonghands=c}function vs(t,o){const s=t.__ref,n=s&&s.__declaredLonghands;if(!n||!o)return null;let r=null;for(const c in n){if(o.has(c))continue;const a=Vt[c];let i=!1;for(let e=0;e<a.length;e++)if(o.has(a[e])){i=!0;break}i&&(r||(r={}),r[c]=n[c])}return r}function js(t,o){const s=t.node;ot(s,o);const n=br(o);if(!n)return o;const r=t.__ref;if(r)if(r.__inlineCssKeys)for(const a of n)r.__inlineCssKeys.add(a);else r.__inlineCssKeys=new Set(n);const c=vs(t,n);return c?(ot(s,c),Object.assign({},o,c)):o}function xr(t){const o=t.__ref;if(!o||!o.__inlineCssKeys||!o.__declaredLonghands)return;const s=vs(t,o.__inlineCssKeys);s&&ot(t.node,s)}function Xt(t,o){return!o||typeof o!="object"?o:Q(t,()=>{try{return En(o,t)}catch{return o}})}function ot(t,o){if(!t||!o||!t.style)return;let s=null;for(const n in o){const r=o[n];if(r!=null){if(n.charAt(0)==="&"&&typeof r=="object"){s||(s={}),s[n]=r;continue}try{const c=String(r);if(typeof r=="object"&&c==="[object Object]")continue;const a=Ko(n),i=c.trim(),e=/\s*!important\s*$/.test(i),f=i.replace(/\s*!important\s*$/,"");t.style.setProperty(a,f,e?"important":"")}catch{}}}s&&wr(t,s)}function wr(t,o){const s=`_ds${zo.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 c="";for(const a in o){const i="."+s,e=a.replace(/&/g,i).split(",").map(l=>{const u=l.trim();return u.includes(i)?u:i+u}).join(", "),f=o[a];if(typeof f=="object"){let l="",u="";for(const d in f){const h=f[d];if(typeof h=="object"){const _=d.includes("&")?e.split(", ").map(y=>d.replace(/&/g,y)).join(", "):e.split(", ").map(y=>`${y} ${d}`).join(", ");let p="";for(const y in h)p+=`${Y(y)}: ${h[y]};`;u+=Bo(`${_} { ${p} }`,_)+`
5
+ `}else l+=`${Y(d)}: ${h};`}l&&(c+=Bo(`${e} { ${l} }`,e)+`
6
+ `),u&&(c+=u)}}c&&(r.textContent+=c)}const Ps=new Set;function Es(t){if(!Array.isArray(t))return"";const o=[];for(let s=0;s<t.length;s++)typeof t[s]=="string"&&t[s].length&&o.push(t[s]);return o.sort(),o.join("|")}function Sr(t,o,s){const n=Es(s);queueMicrotask(()=>{if(!t.__ref)return;let r;try{r=o(t,t.state,t.context)}catch{return}if(Es(r)===n)return;const c=t.__ref.path?t.__ref.path.join("."):t.key||"?";Ps.has(c)||(Ps.add(c),console.warn(`[smbls] subscribeTo function at "${c}" 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 core.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 kr(t){const o=t.subscribeTo,s=typeof o=="function";let n=o;if(s)try{n=o(t,t.state,t.context)}catch{n=null}if(s&&rt()&&Sr(t,o,Array.isArray(n)?n:[]),!Array.isArray(n)||n.length===0)return;const r=t.__ref;for(let c=0;c<n.length;c++){const a=n[c];if(typeof a!="string"||a.length===0)continue;const i=a.split("."),e=i[0],f=i.slice(1),l={value:!1},u=v(()=>{const d=t.state&&(K(t.state)?t.state.root:null);if(!d||!K(d))return;let h=d;h=h[e];for(let p=0;p<f.length&&!(h==null||typeof h!="object");p++)if(K(h))h=h[f[p]];else break;if(!l.value)return;let _=!1;if(typeof t.onBeforeUpdate=="function"&&Q(t,()=>{try{if(te(r)){const p=t.onBeforeUpdate(t,t.state,t.context,{updateBySubscription:!0});p&&typeof p.then=="function"?p.then(()=>to(r,!1),y=>{to(r,!0),gt("error",t,{hook:"onBeforeUpdate",error:y})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",y)}):(to(r,!1),p===!1&&(_=!0))}}catch(p){to(r,!0),gt("error",t,{hook:"onBeforeUpdate",error:p})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",p)}}),!_&&t.node&&r.__effects)for(let p=0;p<r.__effects.length;p++){const y=r.__effects[p];y&&y!==u&&!y._disposed&&!y._isSubscribeToEffect&&typeof y._execute=="function"&&y._execute()}!_&&typeof t.onUpdate=="function"&&Q(t,()=>{try{t.onUpdate(t,t.state,t.context)}catch(p){gt("error",t,{hook:"onUpdate",error:p})||console.error("[DOMQL] subscribeTo onUpdate error:",p)}})},{depth:r.path.length,label:C(r,"subscribeTo("+a+")")});l.value=!0,u._isSubscribeToEffect=!0,r.__effects.push(u)}}function So(t,o){return t.charCodeAt(0)===64&&t.length>1&&!t.startsWith("@media")&&!t.startsWith("@keyframes")&&!t.startsWith("@supports")&&!t.startsWith("@container")&&(t==="@dark"||t==="@light"||!o.context?.designSystem?.media?.[t.slice(1)])}function ko(t,o){if(t.charCodeAt(0)!==64||/^@(media|supports|container|keyframes)\b/.test(t))return t;const s=o.context?.designSystem?.media?.[t.slice(1)];return s?/^@(media|supports|container)\b/.test(s)?s:`@media ${s}`:t}const Ts=new Set;function Cr(t,o){const s=o?.__ref?.path?o.__ref.path.join("."):o?.key||"?",n=s+"::"+t;Ts.has(n)||(Ts.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.`))}const Os=new Map;function vr(t){let o=Os.get(t);if(o)return o;o=[];const s=n=>{if(n)for(const r of n)o.push(Go(r))};return s(Vt[t]),s(Dn[t]),Os.set(t,o),o}function Rs(t,o,s){if(wo(t,o)||s&&s.has(o))return!0;const n=vr(Y(o));for(let r=0;r<n.length;r++){const c=n[r];if(wo(t,c)||s&&s.has(c))return!0}return!1}function yt(t,o,s,n){const r={},c=new Set,a=(i,e,f)=>{const l=f?new Set(Object.keys(r)):null;if(U[i]){const u=U[i](e,o,o.state,o.context);if(u){const d=Array.isArray(u)?u:[u];for(const h of d)h&&Object.assign(r,h)}}else r[i]=e;if(f)for(const u in r)l.has(u)||c.add(u)};for(const i in t){if(!Object.prototype.hasOwnProperty.call(t,i))continue;let e=t[i];if(typeof e=="function"&&(e=e(o,o.state,o.context)),!(e==null||typeof e=="function")){if(typeof e=="object"&&!Array.isArray(e)){if(i==="style"){for(const u in e){let d=e[u];typeof d=="function"&&(d=d(o,o.state,o.context)),!(d==null||typeof d=="function")&&a(u,d,Rs(o,u,n))}continue}if(i==="vars"){const u=Qt(e,o);if(u)for(const d in u)a(d,u[d],wo(o,d)||!!(n&&n.has(d)));continue}if(So(i,o)){const u=yt(e,o,!1,n);Object.keys(u).length&&(r[`[data-theme="${i.slice(1)}"] &`]=u);continue}if(/^[A-Z][A-Za-z0-9]*$/.test(i)){rt()&&Cr(i,o);continue}const f=ko(i,o),l=yt(e,o,!1,n);Object.keys(l).length&&(r[f]=l);continue}a(i,e,Rs(o,i,n))}}if(s)for(const i in r)c.add(i);for(const i of c){const e=r[i];typeof e=="string"&&!e.includes("!important")&&(r[i]=e+" !important")}return r}const st=t=>!!t&&typeof t=="object"&&!Array.isArray(t);function Ds(t,o){for(const s in o){const n=o[s];t[s]=st(n)?Ds(st(t[s])?t[s]:{},n):n}return t}function jr(t,o){if(!st(o))return;let s;for(const n of t.split(" ")){const r=n?o[n]:null;st(r)&&(s=Ds(s||{},r))}return s}function Co(t,o){if(o===void 0&&(o=0),o>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)&&Co(t[s],o+1))return!0}return!1}function Ls(t,o,s){if(!o||typeof o!="object"||Array.isArray(o))return null;if(So(t,s)){const c=yt(o,s,!1);return Object.keys(c).length?{cssProp:`[data-theme="${t.slice(1)}"] &`,block:c}:null}const n=ko(t,s),r=yt(o,s,!1);return Object.keys(r).length?{cssProp:n,block:r}:null}function Pr(t){const o=t.__ref;for(const s of Object.keys(t)){if(!Jo(s))continue;const n=t[s];if(!n||typeof n!="object"||Array.isArray(n)||!Co(n))continue;let r=null,c;const a=v(()=>{if(!t.node)return;const i=t.context?.designSystem;i&&z(i);let e,f=!1;try{const l=Ls(s,n,t),u=l?ht(l.block)+"::"+l.cssProp:null;if(u!==null&&u===c)f=!0;else if(c=u,l){const d=bt({[l.cssProp]:l.block},null,t.context?.cssPrefix);e=d?d.split(" ").filter(Boolean):null}else e=null}finally{i&&q()}if(!(f||!t.node.classList)){if(r)for(const l of r)t.node.classList.remove(l);if(e&&e.length)for(const l of e)t.node.classList.add(l);r=e}},{depth:o.path.length,label:C(o,"cssBlock("+s+")")});o.__effects.push(a)}}const Er=()=>!0,Tr=(t,o)=>{const s=t.charAt(0);return(s===":"||s==="@"||s==="&"||s==="[")&&o&&typeof o=="object"&&!Array.isArray(o)?!0:!!U[t]||!!(V&&V.has(t))||Tt(t)||t==="vars"};function Or(t,o,s){const n={};let r=!1;for(const i in s)Object.prototype.hasOwnProperty.call(s,i)&&(i!=="data"&&i!=="aria"&&(Tr(i,s[i])||B.has(i))?n[i]=!0:r=!0);if(!r)return null;const c=On({[o]:s},t.tag||"div",n,Er);let a=null;for(const i in c)/^on/i.test(i)||(a||(a={}),a[i]=c[i]);return a}function Ns(t,o,s,n,r,c){const a=t.node;let i=null;const e=f=>{(i||(i=[])).push(f)};for(const f in n){const l=o.owners.get(f),u=l===s;if(!c&&l!==void 0&&!u)continue;let d;try{d=n[f](t)}catch(_){F(t.__ref,"conditional("+s+")."+f,_),u&&e(f);continue}if(typeof d=="string"&&d.includes("{{")&&(d=$.call(t,d,t.state)),u&&a.getAttribute(f)!==o.written.get(f)){e(f);continue}if(d==null||typeof d=="object"||typeof d=="function"){u&&Ms(a,o,f);continue}const h=d===!1&&!Bt(f)?null:String(J(f,d));e(f),!(u&&h===o.written.get(f))&&(l===void 0&&o.base.set(f,a.getAttribute(f)),Yt(a,f,h),o.owners.set(f,s),o.written.set(f,h))}r.appliedAttrs=i}function Ms(t,o,s){t.getAttribute(s)===o.written.get(s)&&Yt(t,s,o.base.get(s)),o.owners.delete(s),o.base.delete(s),o.written.delete(s)}function Rr(t,o,s,n){const r=n.appliedAttrs;if(n.appliedAttrs=null,!!r)for(const c of r)o.owners.get(c)===s&&Ms(t.node,o,c)}function Fs(t){const o=t.__ref&&t.__ref.__conditionalAttrs,s=t.node;if(!(!o||!o.owners.size||!s||!s.getAttribute))for(const n of o.owners.keys()){const r=o.written.get(n),c=s.getAttribute(n);c!==r&&(o.base.set(n,c),r==null?s.removeAttribute(n):s.setAttribute(n,r))}}let vo;const Dr=()=>vo===void 0?vo=rt():vo;function Is(t,o){const s=un.countUntrackedReads;typeof s=="function"?t.untrackedReads+=s(o):o()}function Lr(t){const o=t.__ref;o.__conditionalRunners=[];let s=null;const n=new Map;for(const r of Object.keys(t)){const c=r.charAt(0);if(c!=="."&&c!=="!")continue;const a=r.slice(1);if(!a)continue;if(/[:@\s>~+[\]]/.test(a)){if(typeof console<"u"&&console.warn){const y=a.split(/[:@\s>~+[\]]/)[0];console.warn(`[smbls] conditional \`${r}\` on ${t.key||"?"} will never match \u2014 the whole string after \`${c}\` is read as one prop name. Nest the selector inside instead: \`${c}${y}: { '${a.slice(y.length)}': {...} }\`.`)}continue}const i=t[r];if(!i||typeof i!="object")continue;const e=c==="!",f={lastMatch:!1,appliedKeys:null,appliedClasses:null,appliedAttrs:null,probe:!1,untrackedReads:0},l=Or(t,r,i);l&&!s&&(s=o.__conditionalAttrs={owners:new Map,base:new Map,written:new Map});const u=new Set;for(const y in i){if(!Object.prototype.hasOwnProperty.call(i,y))continue;const A=y.charAt(0),S=i[y];if(!((A===":"||A==="@"||A==="&"||A==="[")&&S&&typeof S=="object"&&!Array.isArray(S))){if(y==="vars"&&st(S)){for(const w of Object.keys(S))w&&u.add(Zt(w));continue}u.add(y)}}const d=()=>{let y;const A=f.probe;let S;if(A?Is(f,()=>{S=t[a]}):S=t[a],S===void 0){const g=!!t.state&&a in t.state,x=t.state?t.state[a]:void 0;if(g||x!==void 0)y=x;else{const k=t.context?.cases?.[a];if(k===void 0)return;try{y=typeof k=="function"?k.call(t,t):k}catch(j){y=!1,o.__conditionalError=j,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${r}\` case fn threw on ${t.key||"?"} \u2014 treating as false:`,j?.message||j)}}}else if(typeof S=="function")try{A?Is(f,()=>{y=S(t,t.state,t.context)}):y=S(t,t.state,t.context)}catch(g){y=!1,o.__conditionalError=g,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${r}\` predicate threw on ${t.key||"?"} \u2014 treating as false:`,g?.message||g)}else y=S;A&&(f.probe=!1);const w=e?!y:!!y;if(!t.node)return;const b=t.context?.designSystem;if(w===f.lastMatch){if(w&&l&&t.node.setAttribute){b&&z(b);try{Ns(t,s,r,l,f,!1)}finally{b&&q()}}return}f.lastMatch=w,b&&z(b);try{if(w){const g={},x={};let k=!1;for(const E in i){if(!Object.prototype.hasOwnProperty.call(i,E))continue;const P=i[E],R=E.charAt(0);if((R===":"||R==="@"||R==="&"||R==="[")&&P&&typeof P=="object"&&!Array.isArray(P)){if(So(E,t)){const I=yt(P,t,!1,u);Object.keys(I).length&&(x[`[data-theme="${E.slice(1)}"] &`]=I,k=!0)}else{const I=ko(E,t),ct=yt(P,t,!1,u);Object.keys(ct).length&&(x[I]=ct,k=!0)}continue}const Z=typeof P=="function"?P(t,t.state,t.context):P;if(Z!=null){if(U[E]){const I=U[E](Z,t,t.state,t.context);if(I){const ct=Array.isArray(I)?I:[I];for(const Lt of ct)Lt&&Object.assign(g,Lt)}}else if(V&&V.has(E))g[E]=Z;else if(Tt(E))g[E]=Z;else if(E==="vars"){const I=Qt(Z,t);I&&Object.assign(g,I)}}}const j=Object.keys(g);if(j.length){ot(t.node,g);for(const E of j)n.set(E,r);f.appliedKeys=j}else f.appliedKeys=null;if(k){const E=bt(x,null,t.context?.cssPrefix,{state:!0}),P=E?E.split(" ").filter(Boolean):[];if(P.length&&t.node.classList){for(const R of P)t.node.classList.add(R);f.appliedClasses=P}else f.appliedClasses=null}else if(f.appliedClasses){for(const E of f.appliedClasses)t.node.classList.remove(E);f.appliedClasses=null}l&&t.node.setAttribute&&Ns(t,s,r,l,f,!0)}else{if(f.appliedAttrs&&Rr(t,s,r,f),f.appliedKeys){for(const g of f.appliedKeys)n.get(g)===r&&(Tt(g)?t.node.style.removeProperty(g):t.node.style[g]="",n.delete(g));f.appliedKeys=null}if(f.appliedClasses){for(const g of f.appliedClasses)t.node.classList.remove(g);f.appliedClasses=null}}}finally{b&&q()}};o.__conditionalRunners.push(d);const h=t[a+"Deps"],_=O(t,h,d);Dr()&&typeof(o.__exec&&o.__exec[a]||t[a])=="function"&&!(Array.isArray(h)&&h.length===0)&&(f.probe=!0);const p=v(_,{depth:o.path.length,label:C(o,"conditional("+r+")")});f.probe&&(f.probe=!1),f.untrackedReads>0&&p._sources.size===0&&console.warn(`[smbls] conditional \`${r}\` on ${t.key||"?"} subscribed to nothing \u2014 its predicate read state on its first run without subscribing to it (\`in\`, Object.keys, a \`__\` key, parse()), so no state write will ever re-evaluate it (only a direct element.update() on this element re-runs it). Declare \`${a}Deps: [...]\` (state-key strings or \`(el, s) => \u2026\` selectors) so the subscription is armed unconditionally, or \`${a}Deps: []\` when it is static on purpose.`),o.__effects.push(p)}}const jo=new WeakSet,Po=new WeakMap;function Nr(t){const o=Po.get(t);if(o==="painted")return!1;if(o===void 0){Po.set(t,"open");const s=t.defaultView,n=()=>{Po.set(t,"painted")};s&&typeof s.requestAnimationFrame=="function"?s.requestAnimationFrame(n):setTimeout(n,0)}return!0}function Mr(t){const o=t.ownerDocument;!o||jo.has(o)||Nr(o)||(jo.add(o),queueMicrotask(()=>{jo.delete(o);const s=o.body||o.documentElement;s&&s.offsetWidth}))}const Eo=new WeakSet;let $s=!1;function Us(t){return t.startsWith("[data-theme=")||t.startsWith("@media")&&t.includes("prefers-color-scheme")}function To(t,o){const s={...t};for(const n in o){const r=o[n],c=s[n];s[n]=r&&typeof r=="object"&&c&&typeof c=="object"?To(c,r):r}return s}function Hs(t,o){const s={};for(const n in t){const r=t[n];if(r&&typeof r=="object"){const c=Hs(r,o);Object.keys(c).length&&(s[n]=c)}else o(n)||(s[n]=r)}return s}function Bs(t,o,s){const n=Oo(t);if(!n)return!1;for(let r=0;r<n.length;r+=3){const c=n[r+1];if(!s.has(c))continue;const a=o[c];if(!(a==null||typeof a=="object")&&Ln(n[r],a,n[r+2]))return!0}return!1}function Fr(t,o,s){let n=1/0,r=-1/0;for(const a of o.values())a<n&&(n=a),a>r&&(r=a);if(s)for(const a of s.values())a>r&&(r=a);if(r<=n)return null;let c=null;for(const[a,i]of o){if(i===r)continue;const e=Oo(a);if(e)for(let f=0;f<e.length;f+=3){const l=e[f],u=e[f+1],d=e[f+2],h=t[u]!=null?o.get(u):void 0,_=s&&s.get(l),p=h!==void 0&&h>i&&Vo(l,t[u],d),y=!p&&_!==void 0&&_>i&&Vo(l,void 0,d);if(p||y){p&&delete t[a],c||(c=new Set),c.add(a);break}}}return c}const Vs=new Map;function Oo(t){let o=Vs.get(t);if(o!==void 0)return o;const s=Y(t),n=Vt[s];if(o=null,Array.isArray(n)){o=[];for(const r of n)o.push(r,Go(r),s)}return Vs.set(t,o),o}function Ks(t){const{node:o}=t;if(!o)return;if($s||($s=!0,bt({display:"none"})),Eo.has(t)){console.error("[applyCssInProps] re-entry detected for element",t.key,"prop path:",t.__ref?.path);return}Eo.add(t);const s=t.context?.designSystem;s&&z(s),Uo();try{const n={};let r=!1,c=[],a=null,i=null,e=null,f=null;const l=t.__ref&&t.__ref.__mergeLayer;let u,d=null,h=null;const _=(b,g)=>{if(g&&typeof g=="object"&&Us(b)){e||(e={});const x=e[b];x&&(g=To(x,g)),e[b]=g}else(g===null||typeof g!="object")&&(f||(f=new Set),f.add(b),u!==void 0&&(d||(d=new Map),d.set(b,u)));n[b]=g};if(Object.prototype.hasOwnProperty.call(t,"theme")&&typeof t.theme!="function"&&U.theme){const b=U.theme(t.theme,t,t.state,t.context);if(b){const g=x=>{for(const k in x){const j=x[k];j&&typeof j=="object"?Us(k)&&(a||(a={}),a[k]=j):Oo(k)&&(i||(i=[])).push(k),n[k]=j}};if(Array.isArray(b))for(const x of b)x&&g(x);else g(b);r=!0}}const p=(b,g)=>{if(b==="vars"){const x=Qt(g);if(x){for(const k in x)_(k,x[k]);r=!0}return}if(U[b]){const x=U[b](g,t,t.state,t.context);if(x){if(Array.isArray(x)){for(const k of x)if(k)for(const j in k)_(j,k[j])}else for(const k in x)_(k,x[k]);r=!0}}else if(V&&V.has(b))g!=null&&typeof g!="object"&&(_(b,g),r=!0);else if(b.charCodeAt(0)===45)g!=null&&typeof g!="object"&&(_(b,g),r=!0);else if((b.charAt(0)==="&"||b.charAt(0)==="@"||b.charAt(0)===":"||b.charAt(0)==="[")&&g&&typeof g=="object"&&!Array.isArray(g)){if(Co(g))return;const x=Ls(b,g,t);x&&(_(x.cssProp,x.block),r=!0)}};if(typeof t.class=="string"){const b=jr(t.class,t.context?.designSystem?.class);if(b)for(const g in b)p(g,b[g])}const y=f?new Set(f):null,A=t.tag||"div";for(const b of Object.keys(t)){if(typeof t[b]=="function"){const x=l&&l.get(b);x!==void 0&&et(A,b)&&(h||(h=new Map),h.set(Y(b),x));continue}if(u=l?l.get(b):void 0,b==="vars"){p(b,t[b]);continue}if(B.has(b)||b==="theme")continue;const g=b.charCodeAt(0);g>=65&&g<=90||W(b)||Wo(A,b)||p(b,t[b])}u=void 0;const S=d?Fr(n,d,h):null;if(i&&f)for(const b of i)f.has(b)||!(b in n)||Bs(b,n,f)&&delete n[b];if(a){const b=f?g=>f.has(g)||Bs(g,n,f):null;for(const g in a){let x=b?Hs(a[g],b):a[g];e&&e[g]&&(x=To(x,e[g])),Object.keys(x).length?n[g]=x:delete n[g]}}if(Ar(t,n,f,S?new Set([...y||[],...S]):y),r){n.display&&String(n.display).includes("!important")&&(o.style.setProperty("display",String(n.display).replace(/\s*!important\s*$/,""),"important"),delete n.display);const b=t.display!=null&&typeof t.display!="function"?t.display:t.hide===!0||t.show===!1?"none":null;typeof b=="string"&&b!==""&&n.display&&n.display!==b&&(n.display=b);const g=bt(n,null,t.context?.cssPrefix);if(c=g?g.split(" ").filter(Boolean):[],g&&o.classList){const x=c;let k=!1;for(const j of x)o.classList.add(j),k||(j.charCodeAt(0)===95&&j.charCodeAt(1)===99||j.charCodeAt(0)===95&&j.indexOf("_c",1)!==-1)&&(k=!0);k&&Mr(o)}}const w=t.__ref;if(w){const b=w.__staticCssClasses;if(b&&o.classList){const g=new Set(c);for(const x of b)g.has(x)||o.classList.remove(x)}w.__staticCssClasses=c}xr(t)}finally{Ho(),s&&q(),Eo.delete(t)}}const Le=t=>!!U[t]||!!(V&&V.has(t))||typeof t=="string"&&t.charCodeAt(0)===45;function Ne(t){t&&t.node&&Ks(t)}function Ir(t){const{node:o}=t;if(!o||!o.setAttribute)return;if(t.aria&&typeof t.aria=="object")for(const r in t.aria){const c=t.aria[r];if(typeof c=="function"||typeof c=="object"||c==null||typeof c=="string"&&c.includes("{{"))continue;const a="aria-"+r.replace(/[A-Z]/g,i=>"-"+i.toLowerCase());o.setAttribute(a,J(a,c))}const s=Tn(t);for(const r in s){const c=s[r];c!=null&&c!==!1&&typeof c!="function"&&typeof c!="object"&&o.setAttribute(r,c===!0?"":c)}const n=t.tag||"div";for(const r of Object.keys(t)){if(typeof t[r]=="function"||B.has(r)||r==="on"||s[r]!==void 0)continue;const c=r.charCodeAt(0);if(!(c>=65&&c<=90)&&!W(r)&&!et(n,r)&&At(n,r)){let a=t[r];if(a==null)continue;if(typeof a=="string"&&a.includes("{{")){if(!io[r])continue;a=$.call(t,a,t.state)}if(a==null||typeof a=="function"||typeof a=="object"||a===!1&&!Bt(xt(r)||r))continue;const i=xt(r)||r;o.setAttribute(i,J(i,a))}}}function Me(t,o){const{node:s}=t;if(!s||!s.setAttribute)return;const n=o.charCodeAt(0);if(n>=65&&n<=90||W(o))return;const r=t.tag||"div";if(et(r,o)||!At(r,o))return;const c=xt(o)||o,a=c.toLowerCase(),i=t.__ref&&t.__ref.__effects;let e=!1;if(i)for(let u=0;u<i.length;u++){const d=i[u];d&&d._attrName===a&&!d._disposed&&typeof d._execute=="function"&&(e=!0,d._execute())}if(e)return;let f=t[o];const l=io[o];if(l&&f!=null){const u=l(t);u!==void 0&&(f=u)}typeof f=="string"&&f.includes("{{")&&(f=$.call(t,f,t.state)),qt(s,c,f)}function $r(t,o){const s=t.node,n=t.__ref;let r=n.__autoGrow;if(!o){if(r&&r.active){try{s.removeEventListener("input",r.resize)}catch{}Ws(r),m.delete(t),s.style.height="",r.appliedMax!=null&&s.style.maxHeight===r.appliedMax&&(s.style.maxHeight=""),Ys(s,r,!1),r.active=!1,r.appliedMax=null,r.lastMeasure=0}return}r||(r=n.__autoGrow={active:!1,appliedMax:null,lastMeasure:0,lastWidth:null,watch:null,awaitingLayout:!1,appliedScroll:!1,fontsHooked:!1,attachAttempts:0,firstAttemptAt:null,resize:()=>{if(!s.isConnected){Ot(t,!0);return}if(!(s.scrollHeight>0)){r.awaitingLayout=!0,Gs(t,r);return}r.awaitingLayout=!1;const a=Br(s),i=Vr(a),e=s.style.height;s.style.height="0px",i&&Do(s);const f=s.scrollHeight;if(!(f>0)){s.style.height=e,i&&Do(s);return}const l=Kr(s,a),u=l!=null&&f<l?l:f,d=zr(a),h=d!=null&&u>d;s.style.height=Wr(h?d:u,a)+"px",i&&Do(s),Ys(s,r,h),r.lastMeasure=f,r.lastWidth=s.clientWidth,Gs(t,r)}},n.__eventCleanup||(n.__eventCleanup=[]),n.__eventCleanup.push(()=>{try{s.removeEventListener("input",r.resize)}catch{}Ws(r),m.delete(t)})),r.active||(s.addEventListener("input",r.resize),r.active=!0,Hr(t,r));const c=typeof o=="object"&&o.max!=null?String(o.max):null;c!==r.appliedMax&&(c==null?r.appliedMax!=null&&s.style.maxHeight===r.appliedMax&&(s.style.maxHeight=""):s.style.maxHeight=c,r.appliedMax=c),r.resize()}function Ot(t,o){const s=t.__ref?.__autoGrow;s&&(o&&(s.attachAttempts=0,s.firstAttemptAt=null),m.add(t),St())}function Ur(){const t=Array.from(m);m.clear();for(let o=0;o<t.length;o++){const s=t[o],n=s.node,r=s.__ref?.__autoGrow;if(!(!n||!r||!r.active)){if(!n.isConnected){r.firstAttemptAt==null&&(r.firstAttemptAt=dt()),r.attachAttempts+=1,r.attachAttempts<=Zo&&dt()-r.firstAttemptAt<Qo&&(m.add(s),St());continue}r.attachAttempts=0,r.firstAttemptAt=null,r.resize()}}}function Gs(t,o){if(o.watch)return;const s=t.node;if(!s)return;const n=s.ownerDocument&&s.ownerDocument.defaultView,r=n&&n.ResizeObserver||(typeof ResizeObserver=="function"?ResizeObserver:null);if(typeof r!="function")return;const c=()=>{if(!o.active||!s.isConnected||!(s.scrollHeight>0))return;if(o.awaitingLayout){o.awaitingLayout=!1,Ot(t,!0);return}const i=s.clientWidth;o.lastWidth!=null&&Math.abs(i-o.lastWidth)<.5||(o.lastWidth=i,Ot(t,!0))};let a;try{a=new r(c),a.observe(s)}catch{return}o.watch=a}function Ws(t){const o=t.watch;if(o){t.watch=null;try{o.disconnect()}catch{}}}function Hr(t,o){if(o.fontsHooked)return;o.fontsHooked=!0;const s=t.node&&t.node.ownerDocument,n=s&&s.fonts&&s.fonts.ready;!n||typeof n.then!="function"||n.then(()=>{o.active&&t.node&&Ot(t,!0)},()=>{})}function Br(t){const o=t.ownerDocument&&t.ownerDocument.defaultView;try{return o&&o.getComputedStyle?o.getComputedStyle(t):null}catch{return null}}const it=t=>typeof t=="string"&&/^\s*-?\d*\.?\d+px\s*$/.test(t)?parseFloat(t):null,Ro=t=>(it(t.paddingTop)||0)+(it(t.paddingBottom)||0),zs=t=>(it(t.borderTopWidth)||0)+(it(t.borderBottomWidth)||0);function Vr(t){if(!t)return!1;const o=String(t.transitionProperty||"").split(","),s=String(t.transitionDuration||"0s").split(",");for(let n=0;n<o.length;n++){const r=o[n].trim();if(!(r!=="all"&&r!=="height")&&parseFloat(s[n%s.length])>0)return!0}return!1}function Do(t){if(typeof t.getAnimations!="function")return;let o;try{o=t.getAnimations()}catch{return}for(let s=0;s<o.length;s++){const n=o[s];if(n&&n.transitionProperty==="height")try{n.cancel()}catch{}}}function Kr(t,o){if(!o||!t.hasAttribute||!t.hasAttribute("rows"))return null;const s=parseInt(t.getAttribute("rows"),10);if(!(s>0))return null;const n=it(o.lineHeight)||Gr(t,o);return n>0?s*n+Ro(o):null}const Rt=["fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontFamily","lineHeight","letterSpacing"],qs=new WeakMap;function Gr(t,o){const s=t.ownerDocument,n=s&&(s.body||s.documentElement);if(!n||!s.createElement)return null;let r=qs.get(s);r||(r=new Map,qs.set(s,r));const c=Rt.map(f=>o[f]||"").join("|");if(r.has(c))return r.get(c);const a=s.createElement("textarea");a.rows=1,a.setAttribute("aria-hidden","true"),a.tabIndex=-1;const i=a.style;i.position="absolute",i.visibility="hidden",i.top="0",i.left="-9999px",i.height="auto",i.minHeight="0",i.maxHeight="none",i.padding="0",i.border="0",i.boxSizing="content-box",i.overflow="hidden";for(let f=0;f<Rt.length;f++)o[Rt[f]]&&(i[Rt[f]]=o[Rt[f]]);let e=0;try{n.appendChild(a),e=a.clientHeight}catch{e=0}finally{a.parentNode&&a.parentNode.removeChild(a)}return e>0?(r.set(c,e),e):null}function Wr(t,o){return o?o.boxSizing==="border-box"?t+zs(o):o.boxSizing==="content-box"?Math.max(0,t-Ro(o)):t:t}function zr(t){if(!t)return null;const o=it(t.maxHeight);if(o==null||!(o>0))return null;const s=Ro(t),n=zs(t),r=t.boxSizing==="border-box"?o-n:o+s,c=it(t.lineHeight);if(!(c>0))return r;const a=Math.floor((r-s)/c+1e-6);return a>=1?a*c+s:r}function Ys(t,o,s){s?o.appliedScroll||(t.style.overflowY="auto",o.appliedScroll=!0):o.appliedScroll&&(t.style.overflowY==="auto"&&(t.style.overflowY=""),o.appliedScroll=!1)}const Zs=["srcObject","muted"],qr=(t,o)=>t==="muted"?o===!0||o===""||o==="true"||o==="muted":o??null;function Yr(t){const o=t.node,s=t.__ref;if(!(!o||!s))for(let n=0;n<Zs.length;n++){const r=Zs[n],c=t[r];if(c===void 0||!(r in o))continue;const a=i=>{const e=qr(r,i);if(o[r]!==e)try{o[r]=e}catch(f){F(s,r,f)}};if(typeof c=="function"){const i=O(t,t[r+"Deps"],c),e=v(()=>{try{a(i(t,t.state,t.context))}catch(f){F(s,r,f)}},{depth:s.path.length,label:C(s,r)});s.__effects.push(e),s.__exec[r]=c}else a(c);r==="srcObject"&&(s.__releaseMedia=()=>{try{o.srcObject!=null&&(o.srcObject=null)}catch{}})}}function Zr(t){if(!t.autoGrow)return;const o=t.node;if(!o||o.tagName!=="TEXTAREA")return;const s=t.__ref,n=t.autoGrow,r=typeof n=="function"?O(t,t.autoGrowDeps,n):null,c=v(()=>{const a=t.autoGrow;let i=a;if(typeof a=="function")try{i=(a===n&&r?r:a)(t,t.state,t.context)}catch{i=null}$r(t,i)},{depth:s.path.length,label:C(s,"autoGrow")});s.__effects||(s.__effects=[]),s.__effects.push(c),r&&(s.__exec.autoGrow=n)}const Qs=new Set(["onSwipe","onSwipeLeft","onSwipeRight","onSwipeUp","onSwipeDown"]);function Xs(t,o){let s=!1;for(const n of Object.keys(t)){if(!W(n)||Qs.has(n))continue;if(n==="onInView"||n==="onLeaveView"){s=!0;continue}const r=yn(n);if(r){hn(r,t,t[n]);continue}let c=t[n],a=null;if(c&&typeof c=="object"&&!Array.isArray(c)&&(a=c,c=a.handler),c=gn(t,c),typeof c!="function")continue;const i=_n(n);ln.has(i)||pn(Un(i),t,c,a)}Qr(t),s&&M.viewEvents&&M.viewEvents(t)}function Qr(t){const o=t.node;if(!o||!o.addEventListener)return;const s={};let n=!1;for(const d of Qs){const h=t[d];typeof h=="function"&&(s[d]=h,n=!0)}if(!n)return;const r=typeof t.swipeThreshold=="number"?t.swipeThreshold:40,c=typeof t.swipeMaxDuration=="number"?t.swipeMaxDuration:600;let a=0,i=0,e=0,f=!1;const l=d=>{const h=d.touches&&d.touches[0]||d.changedTouches&&d.changedTouches[0];h&&(a=h.clientX,i=h.clientY,e=Date.now(),f=!0)},u=d=>{if(!f)return;f=!1;const h=d.changedTouches&&d.changedTouches[0]||d.touches&&d.touches[0];if(!h)return;const _=h.clientX-a,p=h.clientY-i,y=Date.now()-e;if(y>c)return;const A=Math.abs(_),S=Math.abs(p);if(Math.max(A,S)<r)return;let w;if(A>S*1.2)w=_<0?"left":"right";else if(S>A*1.2)w=p<0?"up":"down";else return;const b="onSwipe"+w.charAt(0).toUpperCase()+w.slice(1),g=s[b],x=s.onSwipe;g&&g.call(t,d,t,t.state,t.context),x&&x.call(t,{direction:w,dx:_,dy:p,dt:y,event:d},t,t.state,t.context)};o.addEventListener("touchstart",l,{passive:!0}),o.addEventListener("touchend",u,{passive:!0}),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{o.removeEventListener("touchstart",l)}catch{}try{o.removeEventListener("touchend",u)}catch{}})}function Xr(t,o,s,n,r,c,a,i){let e=o;(typeof e=="string"||typeof e=="number")&&(e={text:e});let f=n;if(typeof n=="function")try{f=n(t,e)}catch{f=null}let l=typeof n=="function"?Ct(f):r;if(i&&!a&&(l=vt(l,Ct(o))),a){let u=o;(typeof o=="string"||typeof o=="number")&&(u={value:o,text:o}),e=f?{...f,state:u}:{state:u}}else f&&(e=X(f,e));return e=Dt(e,c),{def:e,key:mo(e?.key,o,s,t),supplied:l,props:f}}function Dt(t,o){if(!o||!t||t.ignoreChildExtends)return t;if(!t.extends)return{...t,extends:o};const s=Array.isArray(t.extends)?t.extends:[t.extends],n=Array.isArray(o)?o:[o];return{...t,extends:[...n,...s]}}const Lo=t=>{const o=t&&t.__ref;if(!o||o.__if===!1)return null;const s=t.node;return s&&s.nodeType!==11?s:null},Js=(t,o)=>o?o.nextSibling:dn(t.node,t.__ref.__textNode),ms=(t,o,s)=>{const n=Js(t,s);return o!==n&&t.node.insertBefore(o,n),o},Jr=(t,o)=>{const s=Js(t,o);return s?{position:"before",node:s}:void 0};function mr(t,o,s){let n=null;for(let r=0;r<o.length;r++){if(s&&s.has(o[r]))continue;const c=Lo(t[o[r]]);c&&(n=ms(t,c,n))}}function tn(t,o,s,n){const r=M.rows,c=r!==null&&t.childrenAs!=="state"&&t.tag!=="fragment"?r.track(t):null,a=No(t,o,s,n,!0,c);return t.__ref.__plainRows=c&&(a||o==null||o===!1)?c:null,a}function No(t,o,s,n,r,c){if(!o||!t.node)return;const a=t.childExtends,i=pt(t,"childProps"),e=t.__ref,f=M.mount,l=n>0&&t.tag!=="fragment"&&e?n:0;if(Array.isArray(o)){const u=t.childProps,d=t.childrenAs==="state",h=(_,p)=>{const y=Xr(t,o[_],_,u,i,a,d,r);c&&c.add(y.key,o[_],y,u,a);try{const A=tt(jt(y.def,y.supplied),t,y.key,s,p);return!A&&c&&c.none(y.key),Wt(t,A),A}catch(A){if(c&&c.failed(y.key),typeof console<"u"&&console.error){const S=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${y.key}" failed to construct at ${S} (initial render, skipping this row):`,A?.message||A)}return null}};if(!l){for(let _=0;_<o.length&&!(e&&e.__disposed);_++)h(_);return!0}return f.rows(t,o.length,h,l),!0}if(typeof o=="string"){const u=rs(o,t);if(Array.isArray(u))return No(t,u,s,n,!0,c)}if(typeof o=="object"){const u=(h,_)=>{if(B.has(h))return!1;let p=o[h];if(p==null||p===!1)return!1;const y=r?vt(i,Ct(p)):i;(typeof p=="string"||typeof p=="number")&&(p={text:p}),t.childProps&&(p=X(t.childProps,p)),p=Dt(p,a);const A=tt(jt(p,y),t,Gt(t,h),s,_);return Wt(t,A),A};if(!l){for(const h in o)u(h);return}const d=[];for(const h in o)d.push(h);f.rows(t,d.length,(h,_)=>u(d[h],_),l)}}function Jt(t,o){const s=t.node;if(!s||s.tagName!=="SELECT")return;const n=s.options;if(!n||!n.length)return;const r=t.__ref,c=r&&r.__exec&&r.__exec.value,a=typeof c=="function",i=t.value!=null&&typeof t.value!="function";if(a||i){let l;if(a)try{l=c(t,t.state,t.context)}catch{return}else l=t.value,typeof l=="string"&&l.includes("{{")&&(l=$.call(t,l,t.state));const u=l==null?"":String(l);s.value!==u&&(s.value=u);return}const e=o||!(r&&r.__selectSynced);if(r&&(r.__selectSynced=!0),!e)return;let f=-1;for(let l=0;l<n.length;l++)n[l].defaultSelected&&(f=l);f>=0&&s.selectedIndex!==f&&(s.selectedIndex=f)}function on(t,o){let{children:s,content:n}=t;const r=t.childExtends,c=typeof s=="function",a=c||ls(t,"children");if(typeof s=="function"){const u=s,d=t.__ref;let h=!1,_;const p=O(t,t.childrenDeps,u),y=v(()=>{const A=h;h=!0;let S;try{S=p(t,t.state,t.context)}catch(P){if(typeof console<"u"&&console.error){const R=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${R}${A?"":" (initial run, treating as empty)"}:`,P?.message||P)}return}if(!A){_=S;return}if(S===t.children)return;ps(t,S),t.children=S,d.__mount&&d.__mount.chunkGen++;const w=typeof t.onContentUpdate=="function",b=w?[]:null,g=w?[]:null,x=w?[]:null;if(Array.isArray(S)&&t.childrenAs==="state"){const P=t.childProps,R=[],Z=new Map;for(let T=0;T<S.length;T++){const G=S[T];let D=P;if(typeof P=="function")try{D=P(t,G)}catch{D=null}const nt=mo(D&&D.key,G,T,t);R.push(nt),Z.set(nt,{rawChild:G,childProps:D})}const I=new Set(R),ct=is(d,d.__children.slice());for(const T of ct)if(!I.has(T)){const G=t[T];G?.remove&&G.remove(),delete t[T],g&&g.push(T)}const Lt=t.childExtends,Nt=!(t.tag==="fragment")&&!!t.node;let Mt=null;const _t=new Set;for(const T of R){const G=Z.get(T),D=G.rawChild,nt=t[T];if(nt&&nt.state){if(D&&typeof D=="object"){const L=nt.state,Ft=L.$replace||L.replace,Io=L.$update||L.update;try{if(typeof Ft=="function")Ft.call(L,D);else if(typeof Io=="function"){for(const H in L)if(!(H==="__element"||H==="root"||H==="parent"||H==="update")&&!Object.prototype.hasOwnProperty.call(D,H))try{L[H]=void 0}catch{}Io.call(L,D)}else for(const H in D)L[H]=D[H]}catch(H){if(typeof console<"u"&&console.error){const cn=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${T}" failed to patch at ${cn} (reconcile, keeping its previous data for this pass):`,H?.message||H)}}}if(x&&x.push(T),Nt){const L=Lo(nt);L&&(Mt=ms(t,L,Mt))}continue}let oo=D;(typeof D=="string"||typeof D=="number")&&(oo={value:D,text:D});const so=G.childProps,rn=Dt(so?{...so,state:oo}:{state:oo},Lt),en=typeof P=="function"?Ct(so):pt(t,"childProps");let Fo;try{Fo=tt(jt(rn,en),t,T,o,Nt?Jr(t,Mt):void 0)}catch(L){if(typeof console<"u"&&console.error){const Ft=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${T}" failed to construct at ${Ft} (reconcile, skipping this row):`,L?.message||L)}_t.add(T);continue}if(d.__disposed)return;if(Nt){const L=Lo(Fo);L&&(Mt=L)}b&&b.push(T)}Nt&&mr(t,R,_t.size?_t:null),d.__children=_t.size?R.filter(T=>!_t.has(T)):R,w&&(b.length||g.length)&&Xo(t,{added:b,removed:g,kept:x}),Jt(t,!1);return}if(t.childrenAs!=="state"&&d.__plainRows&&M.rows.reconcile(t,d,S,o,w)){Jt(t,!1);return}const E=w?[...d.__children]:null;for(const P of is(d,[...d.__children])){const R=t[P];R?.remove&&R.remove(),delete t[P]}d.__children=[],tn(t,S,o,0),Jt(t,!1),w&&Xo(t,{added:[...d.__children],removed:E,kept:[]})},{depth:d.path.length,label:C(d,"children")});d.__effects.push(y),s=_,ps(t,s),t.children=s}const i=M.mount,e=i!==null?i.budgetOf(t,o):0,f=$t(t.__ref),l=c?tn(t,s,o,e):No(t,s,o,e,a);if(e&&$t(t.__ref)>f){i.defer(t,e,()=>sn(t,o,s,n,r,l,e));return}sn(t,o,s,n,r,l,e)}function sn(t,o,s,n,r,c,a){const i=$t(t.__ref);if(n!=null&&!(n&&n.__ref)){let e=n;typeof e=="string"||typeof e=="number"?e={text:e}:typeof e!="object"&&(e={}),t.childProps&&(e=X(t.childProps,e)),e=Dt(e,r);const f=vt(pt(t,"childProps"),pt(t,"content"));Wt(t,tt(jt(e,f),t,"content",o))}if(!(s&&!c)){if(a&&$t(t.__ref)>i){M.mount.defer(t,a,()=>nn(t,o,r,a));return}nn(t,o,r,a)}}function nn(t,o,s,n){const r=t.context?.components||{},c=t.__ref&&t.__ref.__runtimeSource,a=c?{}:null;{const f=Object.keys(t);for(let l=0;l<f.length;l++){const u=f[l];if(!u.endsWith("Extends")||typeof t[u]!="string")continue;const d=u.slice(0,-7);if(!d||d.charCodeAt(0)<65||d.charCodeAt(0)>90)continue;const h={extends:t[u]};delete t[u];for(let _=l+1;_<f.length;_++){const p=f[_],y=p.charCodeAt(0);if(y>=65&&y<=90||B.has(p)||typeof t[p]=="function"&&(p.startsWith("on")||p.startsWith(".")))break;const A=t[p];A!==void 0&&(h[p]=A,delete t[p],a&&kt(c,p)&&(a[d]||(a[d]={}),a[d][p]=c[p]))}t[d]&&typeof t[d]=="object"?t[d]={...h,...t[d]}:t[d]=h}}const i=Object.keys(t),e=f=>{if(B.has(f)||typeof t[f]!="object"||t[f]===null)return!1;const l=f.charCodeAt(0);if(l<65||l>90)return!1;let u=t[f];if(u.__ref)return!1;if(!u.extends&&!u.extend){const h=r[f]||r[`smbls.${f}`];h&&(u={...u,extends:h})}t.childProps&&(u=X(t.childProps,u)),u=Dt(u,s);const d=c?vt(pt(t,"childProps"),vt(a[f]||null,pt(t,f))):null;Wt(t,tt(jt(u,d),t,f,o))};if(!n){for(const f of i)e(f);return}M.mount.run(t,i.length,f=>e(i[f]),n)}function mt(t,o,s){const{node:n}=t;if(!n)return;n.ref=t;const r=o?.tag==="fragment"?o.__ref?.__fragmentAnchor:null;if(r){const i=r.parentNode;if(i){if(s?.position==="before"&&s.node)i.insertBefore(n,s.node);else if(s?.position==="after"&&s.node){const e=s.node.nextSibling;i.insertBefore(n,e||r)}else i.insertBefore(n,r);eo();return}}const c=o?.node||(o?.nodeType?o:null);if(!c)return;if(!s&&M.hydration!==null){const i=t.context&&t.context.__hydration;if(i&&M.hydration.place(i,t,o,c,n))return}const a=s?.node;if(a&&a.parentNode!==c)c.appendChild(n);else if(s?.position==="before"&&a)c.insertBefore(n,a);else if(s?.position==="after"&&s.node){const i=s.node.nextSibling;i?c.insertBefore(n,i):c.appendChild(n)}else c.appendChild(n);eo()}const Mo=3;function te(t){return!t||t.__inBeforeUpdate||(t.__beforeUpdateFailCount||0)>=Mo?!1:(t.__inBeforeUpdate=!0,!0)}function to(t,o){t&&(t.__inBeforeUpdate=!1,o?(t.__beforeUpdateFailCount=(t.__beforeUpdateFailCount||0)+1,t.__beforeUpdateFailCount===Mo&&typeof console<"u"&&console.error&&console.error(`[DOMQL] onBeforeUpdate failed ${Mo}x in a row on this element \u2014 pausing automatic retries until a future prop/state change re-arms it.`)):t.__beforeUpdateFailCount=0)}function N(t,o,s){const n=t.charAt(0).toLowerCase()+t.slice(1);gt(n,o,s);const r="on"+t,c=o[r];if(typeof c=="function"){const e=t==="Render"?"__inRender":t==="RenderRouter"?"__inRenderRouter":null;if(e){if(o.__ref[e])return!0;o.__ref[e]=!0}const f=o.context?.designSystem;f&&z(f);let l=!!e;try{const u=c(o,o.state,o.context,s);if(u&&typeof u.then=="function"){const d=o.__ref;return u.catch(h=>{Ht(o,r,h)}).finally(()=>{e&&d&&(d[e]=!1)}),l=!1,!0}if(u===!1)return!1}catch(u){if(Ht(o,r,u),o.context?.strictMode)throw u}finally{f&&q(),l&&o.__ref&&(o.__ref[e]=!1)}}return!0}var Fe=tt;export{Mo as BEFORE_UPDATE_MAX_CONSECUTIVE_FAILURES,te as acquireBeforeUpdateGuard,Xr as arrayRowDefinition,De as attachElement,Kn as completeCreate,tt as create,Fe as default,ao as flushMounts,Re as holdMountFlush,Le as isStaticCssProp,jt as markRuntimeSupplied,ms as placeAfter,mr as placeRows,Lo as placedRowNode,Ne as recompileStaticCss,Me as reconcileAttrProp,to as releaseBeforeUpdateGuard,Vn as reportCreateChildrenError,Xt as resolveStyleBlock,Jr as rowAttach,pt as runtimeViewOf,Jt as syncSelectValue,Xo as triggerContentUpdate,qt as writeAttr,zt as writeElementText};
@@ -1,6 +1 @@
1
- import{createStore as oo,createScopeStore as on,isStore as W}from"@symbo.ls/signal";import{createEffect as j,getObserver as sn}from"@symbo.ls/signal";import{withDesignSystem as X,untrack as Nt}from"./runContext.js";import{cacheNode as so,detectTag as Do,adoptHydrationNode as nn}from"./cache.js";import{REGISTRY as H,LIFECYCLE_EVENTS as en}from"./registry.js";import{registerEvent as rn,registerGlobalEvent as cn,globalEventKeyInfo as fn}from"./delegate.js";import{mountBridge as an}from"./bridge.js";import{applyExtends as un,openMergeLayer as dn,closeMergeLayer as ln}from"./extends.js";import{addMethods as pn}from"./methods.js";import"./dispose.js";import{isLoudDevRuntime as st}from"./devRuntime.js";import{mountBudgetExhausted as Lo,openMountBudget as Ro,closeMountBudget as Mo,enqueueMountWork as No,childCostMeter as Fo}from"./mountScheduler.js";import{replaceLiteralsWithObjectFields as $,isPolyglotWritableKey as hn,markPolyglotSeeded as yn,polyglotSeededKeys as _n}from"@symbo.ls/utils";import*as Ft from"@symbo.ls/utils";import{dispatchPluginHook as bt,hasPluginHook as gn,reportLifecycleError as $t}from"./pluginHooks.js";import{applyStateMethods as at}from"@symbo.ls/state";import{CSS_PROPS_REGISTRY as I,DEFAULT_CSS_PROPERTIES_LIST as U,pushStaticCssPass as $o,popStaticCssPass as Io,resolveStyleBlockTokens as bn}from"css-in-props";import{css as At,wrapHoverRule as Bo}from"@symbo.ls/css";import{pushConfig as Y,popConfig as q}from"@symbo.ls/scratch";import{checkAttributeByTagName as xt,applyAttrTransforms as An,ATTR_TRANSFORMS as no,camelToAttr as wt,serializeAttrValue as J,isEnumeratedTrueFalseAttr as It,extractConditionalAttrs as xn}from"attrs-in-props";import{resolveElementIdEngine as wn}from"./engineRegistry.js";import{CSS_LONGHAND_SHORTHANDS as Bt,CSS_SHORTHAND_LONGHANDS as Sn,cssShorthandStatesLonghand as Ho,cssPropName as Uo,cssCamelName as Vo}from"./cssLonghands.js";import{isAttributeFirst as Go,isCssProp as nt}from"./attributeFirst.js";import{VERSION as Cn}from"./version.js";const Ko=wn({uniqId:1,scopedStyleId:0},Cn),St=[],et=new Set;let eo=!1,Wo=0,ut=null,Ct=null;function dt(){return typeof Date<"u"&&typeof Date.now=="function"?Date.now():0}function zo(){return typeof document<"u"&&document.visibilityState==="hidden"}const kn=250,vn=1e3;function jn(){return Ct&&(Ct!==(typeof requestAnimationFrame=="function"?requestAnimationFrame:null)||zo())?!0:dt()-Wo>=vn}function En(){if(eo=!0,Wo=dt(),Ct=null,typeof requestAnimationFrame!="function"){const t=typeof clearTimeout=="function"?clearTimeout:null,o=setTimeout(ro,0);ut=t?()=>t(o):null;return}if(zo()){const t=typeof clearTimeout=="function"?clearTimeout:null,o=setTimeout(ro,kn);ut=t?()=>t(o):null}else{const t=typeof cancelAnimationFrame=="function"?cancelAnimationFrame:null;Ct=requestAnimationFrame;const o=requestAnimationFrame(ro);ut=t?()=>t(o):null}}function Ht(){if(eo){if(!jn())return;const t=ut;if(ut=null,t)try{t()}catch{}}En()}const Yo=300,qo=15e4;function ro(){if(eo=!1,ut=null,Ct=null,et.size&&je(),!St.length)return;const t=St.splice(0,St.length);for(let o=0;o<t.length;o++){const s=t[o];if(s.node){if(!s.node.isConnected){const n=s.__ref||(s.__ref={});n.__mountAttempts=(n.__mountAttempts||0)+1,n.__mountFirstAttemptAt==null&&(n.__mountFirstAttemptAt=dt());const e=dt()-n.__mountFirstAttemptAt;n.__mountAttempts<=Yo&&e<qo?(St.push(s),Ht()):console.warn("[DOMQL] onMounted dropped after",n.__mountAttempts,"attempts /",e,"ms \u2014 node never connected:",s.key||s.tag||s);continue}typeof s.onBridgeMount=="function"&&an(s),typeof s.onMounted=="function"&&D("Mounted",s,s.__ref?.__mountOptions||{})}}}function io(t,o){const s=t.__ref?.__autoGrow;s&&s.active&&Lt(t,!0),!(typeof t.onMounted!="function"&&typeof t.onBridgeMount!="function")&&(t.__ref.__mountOptions=o,St.push(t),Ht())}function Zo(t,o){typeof t.onContentUpdate=="function"&&(bt("contentUpdate",t,o),X(t,()=>{try{t.onContentUpdate(t,t.state,t.context,o)}catch(s){if($t(t,"onContentUpdate",s),t.context?.strictMode)throw s}}))}function Z(t){return t.length>2&&t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>=65&&t.charCodeAt(2)<=90}function Pn(t){return t.charAt(2).toLowerCase()+t.slice(3)}function On(t){return t.toLowerCase()}function co(t){const o=t.charCodeAt(0);return o===58||o===64||o===38||o===91}function kt(t,o){const s={...t};for(const n in o){const e=s[n],c=o[n];e&&c&&typeof e=="object"&&typeof c=="object"&&!Array.isArray(e)&&!Array.isArray(c)&&typeof e!="function"&&typeof c!="function"?s[n]=kt(e,c):s[n]=c}return s}function Ut(t){if(typeof t=="string")return t||void 0;if(typeof t=="number"||typeof t=="bigint")return String(t)}function Qo(t,o,s,n){return Vt(n,Ut(t)||(o&&typeof o=="object"?Ut(o.key):void 0)||String(s))}function Vt(t,o){if(!t||typeof o!="string")return o;let s=o;for(;Tn(t,s);)s="$"+s;return s!==o&&Dn(t,o,s),s}function Tn(t,o){if(H.has(o)&&o!=="content")return!0;if(!(o in t))return!1;const s=t[o];return!(s&&typeof s=="object"&&s.__ref&&s.parent===t)}const Xo=new Set;function Dn(t,o,s){if(!st())return;const n=t.__ref&&t.__ref.path&&t.__ref.path.join(".")||t.key||"<root>",e=n+"::"+o;Xo.has(e)||(Xo.add(e),console.warn(`[smbls] a child keyed "${o}" at ${n} names a property of its parent; it lives at el["${s}"] (data-key="${s}") so the parent keeps its own "${o}". Prefix the data keys to keep plain el.<key> access.`))}function m(t,o,s,n={},e){if(sn())return Nt(()=>m(t,o,s,n,e));if(t==null||t===!1)return null;const c=Qn(t);(typeof t=="string"||typeof t=="number")&&(t={text:t}),s=Ut(s);const a=Ut(t.key),r=Object.create(null);r.key=s||(a&&o?Vt(o,a):a)||`_${Ko.uniqId++}`,r.parent=o||null,r.context=t.context||o?.context||n.context||{},r.context.__create||(r.context.__create=m);const i=r.__ref={__if:!0,__children:[],__exec:{},__effects:[],__eventCleanup:[],root:o?.__ref?.root||r,path:o?.__ref?.path?[...o.__ref.path,r.key]:[r.key],origin:t};c&&(i.__runtimeSource=c);const f=t;if(t=mo(r,t,s,a,o,n),r.if!=null){let u;if(typeof r.if=="function")try{u=r.if(r,r.state,r.context)}catch(l){if(u=!1,i.__ifError=l,typeof console<"u"&&console.warn){const g=r.key||r.tag||"?";console.warn(`[smbls] \`if:\` evaluator threw on ${g} \u2014 treating as false:`,l?.message||l)}}else u=r.if;i.__if=!!u}if(i.__if)typeof r.if=="function"&&(i.__ifInitialized=!0);else{o&&(o[r.key]=r);const u=Mn(t,s,r.context?.components);return u.length&&(i.__ifLateMerge={definition:f,key:s,ownKey:a,names:u,options:n}),typeof r.if=="function"&&_s(r,i,r.if),r}r.tag||(r.tag=Do(r)),D("Init",r,n);const d=r.node=nn(r)||so(r);if(!d)return r;if(r.tag==="fragment"){const l=(r.context?.document||globalThis.document).createComment("");d.appendChild(l),i.__fragmentAnchor=l}D("AttachNode",r,n),d.setAttribute&&r.key&&d.setAttribute("data-key",r.key),o&&(o[r.key]=r,o.__ref?.__children&&(o.__ref.__children.includes(r.key)||o.__ref.__children.push(r.key))),d.setAttribute&&r.context?.scopeSelector&&r.context.scopeSelector!==":root"&&r.context.key&&r.key===r.context.key&&d.setAttribute("data-smbls-app",r.context.key),r.id&&d.setAttribute&&(d.id=r.id),Ys(r,n),ps(r),ys(r);try{qs(r,n)}catch(u){if(typeof console<"u"&&console.error){const l=r.__ref?.path?.join(".")||r.key||"<root>";console.error(`[smbls] createChildren failed at ${l}:`,u?.message||u,u?.stack?`
2
- `+u.stack.split(`
3
- `).slice(0,6).join(`
4
- `):"")}}if(Zt(r,!0),Zs(r,o,e),typeof r.html=="function"&&r.node&&!r.node.innerHTML&&X(r,()=>{try{const u=r.html(r,r.state,r.context);u!=null&&typeof u!="function"&&(r.node.innerHTML=u)}catch{}}),D("Create",r,n),D("Complete",r,n),D("Render",r,n),D("RenderRouter",r,n),io(r,n),typeof r.onFrame=="function"){const u=r.onFrame,l=r.context?.designSystem,g=()=>{if(r.node){if(r.node.isConnected){l&&Y(l);try{u(r,r.state,r.context)}catch(x){console.error("[DOMQL] onFrame error:",x)}finally{l&&q()}}requestAnimationFrame(g)}};requestAnimationFrame(g)}return r}const Jo=new Set(["childProps","attr","style","scope","data","vars"]);function mo(t,o,s,n,e,c){if(s&&!o.extends&&!o.extend){const p=s.indexOf("_"),h=s.indexOf(".");let _=p>0?p:-1;if(h>0&&(_<0||h<_)&&(_=h),_>0){const w=s.substring(0,_),y=t.context?.components;y&&(y[w]||y["smbls."+w])?o={...o,extends:w}:y&&st()&&(/^[A-Z]\w*_\d+$/.test(s)||/^[A-Z]\w*\.\w+$/.test(s))&&console.warn(`[smbls] auto-extend: key "${s}" looks like an instance of "${w}" but neither "${w}" nor "smbls.${w}" is registered in context.components \u2014 element will render as a plain <div>. Register the base component or rename the key.`)}}t.__ref&&(t.__ref.__mergeLayer=null),un(t,o,c);const a=dn(t),r=t.props&&typeof t.props=="object"?t.props:null;for(const p in o){if(p==="parent"||p==="node"||p==="__ref"||p==="extends"||p==="context"||p==="props")continue;if(p==="key"){n&&(t.key=e?Vt(e,n):n);continue}const h=o[p];a&&a.mark(p);const _=t[p],w=_&&h&&typeof _=="object"&&typeof h=="object"&&!Array.isArray(_)&&!Array.isArray(h)&&typeof _!="function"&&typeof h!="function";w&&p.charCodeAt(0)>=65&&p.charCodeAt(0)<=90?t[p]=kt(_,h):w&&Jo.has(p)?t[p]={..._,...h}:w&&co(p)?t[p]=kt(_,h):t[p]=h}function i(p){for(const h in p){const _=p[h],w=t[h],y=w&&_&&typeof w=="object"&&typeof _=="object"&&!Array.isArray(w)&&!Array.isArray(_)&&typeof w!="function"&&typeof _!="function";y&&h.charCodeAt(0)>=65&&h.charCodeAt(0)<=90?t[h]=kt(w,_):y&&Jo.has(h)?t[h]={...w,..._}:y&&co(h)?t[h]=kt(w,_):t[h]=_}}if(r&&i(r),o.props&&typeof o.props=="object"&&(i(o.props),a))for(const p in o.props)a.mark(p);ln(t),o.classlist!==void 0&&(t.classlist=o.classlist),o.text!==void 0&&(t.text=o.text),o.html!==void 0&&(t.html=o.html);const f=t.scope&&typeof t.scope=="object"?t.scope:null,d=e?.scope,u=t.context&&typeof t.context.globalScope=="object"&&t.context.globalScope||null,l=d||u||null;if(o.scope!==void 0||f){const p={};f&&Object.assign(p,f),o.scope!==void 0&&Object.assign(p,o.scope),t.scope=on(p,l)}else l&&(t.scope=l);o.if!==void 0&&(t.if=o.if);const g=t.__ref,x=Xn(t,g&&g.__runtimeSource);return g&&(g.__declaredArrays=x||void 0),pn(t),Nn(t,e,o,c),o}const Ln=new Set(["key","parent","context","__ref"]);function Rn(t,o){for(const n of Object.keys(t))Ln.has(n)||delete t[n];let s=o.definition;if(!s.extends&&!s.extend&&typeof o.key=="string"){const n=t.context?.components||{},e=n[o.key]||n["smbls."+o.key];e&&(s={...s,extends:e})}Nt(()=>mo(t,s,o.key,o.ownKey,t.parent,o.options))}function Mn(t,o,s){const n=s||{},e=r=>!!(n[r]||n["smbls."+r]),c=[],a=[];if(t.extends&&a.push(...Array.isArray(t.extends)?t.extends:[t.extends]),t.extend&&a.push(...Array.isArray(t.extend)?t.extend:[t.extend]),a.length){for(const r of a){if(typeof r!="string")continue;const i=r.includes(">")?r.split(">")[0].trim():r;e(i)||c.push(i)}return c}if(typeof o=="string"&&/^[A-Z]/.test(o)){let r=-1;const i=o.indexOf("_"),f=o.indexOf(".");i>0&&(r=i),f>0&&(r<0||f<r)&&(r=f);const d=r>0?o.substring(0,r):o;e(d)||c.push(d)}return c}function fo(t,o,s){if(typeof t.onStateInit!="function"&&!gn(t,"stateInit"))return;const n=t.state;t.state=o;try{D("StateInit",t,s)}finally{t.state=n}}const ao=t=>({isDataOnlyKey:o=>_n(t).has(o)});function Nn(t,o,s,n){const e=!o,c=s.state&&typeof s.state=="object"&&!Array.isArray(s.state)&&Object.keys(s.state).length===0,a=e&&c&&t.context?.state,r=s.state!==void 0&&!a?s.state:t.state&&!W(t.state)?t.state:void 0;if(r==null){if(o?.state)t.state=o.state,at(t,t.state);else if(t.context?.state){const i=t.context.state,f={...i},d=t.context?.polyglot;if(d?.translations){const u=t.context,l=i.lang||d.defaultLang||"en",g=new Set,x=(_,w)=>{g.has(_)||hn(u,_,f)&&(f[_]=w,g.add(_),yn(u,_,w))},p=d.translations[l];if(p&&typeof p=="object")for(const _ in p)x(_,p[_]);const h=new Set(d.languages||[]);for(const _ in d.translations)h.has(_)||x(_,d.translations[_])}W(f)||fo(t,f,n),t.state=W(f)?f:oo(f,ao(t.context)),t.state.__element=t,t.state.root=t.state,at(t,t.state),Ft.promoteActiveRootState?.(i,t.state),D("StateCreated",t,n)}else t.state={},Object.defineProperty(t.state,"root",{value:t.state,enumerable:!1,configurable:!0,writable:!0}),at(t,t.state);return}if(typeof r=="string"){if(t.state=ss(r,o),t.state&&typeof t.state=="object"&&!W(t.state)){const i=o?.state?.root||o?.state||t.state;Object.defineProperty(t.state,"root",{value:i,enumerable:!1,configurable:!0,writable:!0})}at(t,t.state),$n(t,r,o),D("StateCreated",t,n);return}if(typeof r=="function"){const i=r(t,o?.state);if(W(i))t.state=i;else{const f=i||{};fo(t,f,n),t.state=oo(f,o?.state?void 0:ao(t.context))}}else if(W(r))t.state=r;else{const i={...r};fo(t,i,n),t.state=oo(i,o?.state?void 0:ao(t.context))}t.state.__element=t,o?.state?(t.state.parent=o.state,t.state.root=o.state.root||o.state):t.state.root=t.state,at(t,t.state),Ft.promoteActiveRootState?.(r,t.state),D("StateCreated",t,n)}function ts(t,o){if(!o)return t;const s=o.split("/");let n=t;for(const e of s){if(n==null)return{};n=n[e]}return n??{}}function os(t,o){const s=o.state;return t.startsWith("~/")?[s&&(s.root||s),t.slice(2)]:t.startsWith("../")?[s,t.slice(3)]:[s,t]}function ss(t,o){if(!o)return{};if(t===".")return o.state||{};if(t.startsWith("../")||t.startsWith("~/")){const[e,c]=os(t,o);return c?ts(e,c):e??{}}if(o.state?.[t]!==void 0)return o.state[t];const s=ts(o.state,t);if(s!=null&&Object.keys(s).length>0)return s;const n=o.context?.polyglot;if(n?.translations){const e=o.state?.root?.lang||n.defaultLang||"en",c=n.translations[e];if(c?.[t]!==void 0)return c[t];if(n.translations[t]!==void 0)return n.translations[t]}return{}}function Fn(t,o){const[s,n]=os(t,o);if(!n||!s||typeof s!="object")return;const e=s[n];if(e!==void 0||n.indexOf("/")===-1)return e;let c=s;for(const a of n.split("/")){if(c==null||typeof c!="object")return;c=c[a]}return c}function $n(t,o,s){const n=t.__ref;if(!n||!s||o==="."||!W(s.state))return;n.__stateBinding&&n.__stateBinding.dispose();const e=Nt(()=>j(()=>{const c=Fn(o,s);!c||typeof c!="object"||c===t.state||Nt(()=>ns(t,t.state,c,!0))},{depth:n.path?n.path.length:0,label:v(n,"state")}));e._isStateBinding=!0,n.__stateBinding=e,n.__effects&&n.__effects.push(e)}function ns(t,o,s,n){const e=t.__ref;if(!e)return;if(n||t.state===o){t.state=s,n&&at(t,s),es(e);const a=e.__children;if(a)for(let r=0;r<a.length;r++){const i=t[a[r]];i&&i.__ref&&i.parent===t&&ns(i,o,s,!1)}return}if(e.__stateBinding){e.__stateBinding._notify();return}const c=t.state;c&&typeof c=="object"&&c.parent===o&&(c.parent=s,es(e))}function es(t){const o=t.__effects;if(o)for(let s=0;s<o.length;s++){const n=o[s];n&&!n._disposed&&!n._isStateBinding&&!n._isSubscribeToEffect&&typeof n._notify=="function"&&n._notify()}}const In=new Set(["s","state","ctx","context"]),uo=new WeakMap;function rs(t){if(uo.has(t))return uo.get(t);let o=null;try{const s=typeof Ft.getFunctionSource=="function"?Ft.getFunctionSource(t):Function.prototype.toString.call(t);if(typeof s=="string"){const n=s.match(/^\s*(?:async\s+)?([A-Za-z_$][\w$]*)\s*=>/)||s.match(/^[^(]*\(([^)]*)\)/);n&&(o={params:n[1].split(",").map(e=>e.trim()),body:s.slice(n.index+n[0].length)})}}catch{}return uo.set(t,o),o}function Bn(t){const o=rs(t);return o?o.params.map(s=>s.split("=")[0].trim()).filter(Boolean):[]}const is=new WeakMap;function Hn(t){let o=is.get(t);return o===void 0&&(o=Un(rs(t)),is.set(t,o)),o}function Un(t){if(!t)return!0;const o=t.body;if(/\bstate\b|\barguments\b|\bcall\s*\(/.test(o))return!0;const s=t.params[1];if(!s)return!1;if(!/^[A-Za-z_$][\w$]*$/.test(s.split("=")[0].trim()))return!0;const n=s.split("=")[0].trim();return new RegExp("(^|[^\\w$.])"+n.replace(/\$/g,"\\$")+"(?![\\w$])").test(o)}const Vn=3,Gn=/^(is|has)[A-Z0-9_$]/,Kn=new Set(["routerOptions"]),cs=new WeakSet;function Wn(t,o){if(typeof t!="function"||t.length!==2||o&&(Gn.test(o)||Kn.has(o))||cs.has(t))return!1;const s=Bn(t);if(s.length<2)return!1;const n=s[1].replace(/[{}[\]]/g,"").trim();return n.length<Vn||In.has(n)?!1:(cs.add(t),!0)}function zn(t){const o=t.__ref,s=t.tag||"div",n=t.context?.designSystem,e=[],c=Object.keys(t);for(let a=0;a<c.length;a++){const r=c[a];if(typeof t[r]!="function"||H.has(r))continue;const i=r.charCodeAt(0);i>=65&&i<=90||Z(r)||I[r]||U&&U.has(r)||i!==45&&(xt(s,r)||(st()&&Wn(t[r],r)&&console.warn(`[smbls] custom prop "${r}"${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('${r}', \u2026) instead of reading el.${r}(\u2026) directly (see RULES.md Rule 8).`),e.push({prop:r,fn:t[r]})))}for(let a=0;a<e.length;a++){const{prop:r,fn:i}=e[a];o.__exec[r]=i,Object.defineProperty(t,r,{get(){n&&Y(n);try{return i(t,t.state,t.context)}catch{return}finally{n&&q()}},set(f){delete o.__exec[r],Object.defineProperty(t,r,{value:f,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}}function Yn(t,o){if(!(!Array.isArray(o)||o.length===0))for(let s=0;s<o.length;s++){const n=o[s];try{typeof n=="function"?n(t,t.state,t.context):typeof n=="string"&&t.state?.[n]}catch{}}}function T(t,o,s){return!Array.isArray(o)||o.length===0?s:function(...n){return Yn(t,o),s.apply(this,n)}}function lt(t,o){if(!(!t||Array.isArray(t)||typeof t!="object"))return t[o]}function v(t,o){return()=>t.path.join(".")+"::"+o}const fs=new Set;function L(t,o,s){if(!st())return;const n=v(t,o)();fs.has(n)||(fs.add(n),console.warn(`[smbls] "${o}" effect threw on ${t.path.join(".")} \u2014 keeping previous value:`,s?.message||s))}const as=/(['"`])((?:\\.|(?!\1)[^\\])*)\1/g,qn=(t,o)=>{let s;try{s=String(t)}catch{return}if(!s.includes("{{"))return;as.lastIndex=0;let n;for(;(n=as.exec(s))!==null;)n[2].includes("{{")&&o.add(n[2])},Zn=(t,o)=>!Z(t)&&!nt(o,t),lo=(t,o,s,n,e)=>{if(typeof o=="string"){!e&&o.includes("{{")&&s.add(o);return}typeof o=="function"&&Zn(t,n)&&qn(o,s)},po=new WeakMap,vt=(t,o)=>Object.prototype.hasOwnProperty.call(t,o),jt=t=>{if(typeof t=="string"||typeof t=="number")return{text:t};if(!t||typeof t!="object"||Array.isArray(t))return null;const o=t.props;return o&&typeof o=="object"&&!Array.isArray(o)?it(t,o):t},Et=(t,o)=>t&&o?it(t,o):t||o||null,us=(t,o)=>{const s=t.__ref&&t.__ref.__runtimeSource;return!!s&&vt(s,o)},pt=(t,o)=>us(t,o)?jt(t.__ref.__runtimeSource[o]):null,Pt=(t,o)=>(o&&t&&typeof t=="object"&&po.set(t,o),t),Qn=t=>{if(!t||typeof t!="object")return;const o=po.get(t);return o&&po.delete(t),o},ho=(t,o,s)=>{if(typeof t=="string"){t.includes("{{")&&o.add(t);return}if(!(!t||typeof t!="object"||s.has(t))){if(s.add(t),Array.isArray(t)){for(let n=0;n<t.length;n++)ho(t[n],o,s);return}if(!t.__ref)for(const n of Object.keys(t)){if(n==="state")continue;const e=Object.getOwnPropertyDescriptor(t,n);e&&"value"in e&&ho(e.value,o,s)}}},Xn=(t,o)=>{let s=null;for(const n of Object.keys(t)){if(H.has(n)||o&&vt(o,n))continue;const e=Object.getOwnPropertyDescriptor(t,n),c=e&&e.value;if(!Array.isArray(c))continue;const a=new Set;ho(c,a,new Set),a.size&&(s||(s=new Map),s.set(c,a))}return s},ds=(t,o)=>{if(Array.isArray(o))for(let s=t;s;s=s.parent){const n=s.__ref&&s.__ref.__declaredArrays,e=n&&n.get(o);if(!e)continue;const c=t.__ref;c.__authoredTemplates||(c.__authoredTemplates=new Set);for(const a of e)c.__authoredTemplates.add(a);return}},ls=["attr","aria","data","metadata"],Jn=t=>{if(ls.includes(t))return!0;const o=t.charCodeAt(0);return o===46||o===33||o===64},mn=(t,o)=>{const s=new Set,n=t.tag||"div";for(const e of Object.keys(t)){const c=Object.getOwnPropertyDescriptor(t,e),a=c&&c.value,r=!!o&&vt(o,e);if(a&&typeof a=="object"&&!Array.isArray(a)){if(!Jn(e))continue;const i=r?o[e]:null,f=i&&typeof i=="object"?i:null,d=e.charCodeAt(0)===46||e.charCodeAt(0)===33;for(const u in a){const l=r&&(!f||vt(f,u)),g=a[u];if(d&&g&&typeof g=="object"&&!Array.isArray(g)&&ls.includes(u)){for(const x in g)lo(x,g[x],s,n,l);continue}lo(u,g,s,n,l)}continue}lo(e,a,s,n,r)}return s};function ps(t,o){const s=t.__ref,n=!!(o&&o.skipIfEffect),e=mn(t,s.__runtimeSource);if(s.__authoredTemplates)for(const i of e)s.__authoredTemplates.add(i);else s.__authoredTemplates=e;if(zn(t),typeof t.text=="function"){const i=t.text,f=T(t,t.textDeps,i),d=j(()=>{if(!s.contentManaged)try{let u=f(t,t.state,t.context);t.node&&u!=null&&typeof u!="function"&&typeof u!="object"&&(typeof u=="string"&&u.includes("{{")&&(u=$.call(t,u,t.state)),Gt(t,u))}catch(u){L(s,"text",u)}},{depth:s.path.length,label:v(s,"text")});s.__effects.push(d),s.__exec.text=i}else if(typeof t.text=="string"&&t.text.includes("{{")){const i=t.text,f=j(()=>{if(s.contentManaged)return;const d=$.call(t,i,t.state);d!=null&&(t.text=d),t.node&&Gt(t,d??"")},{depth:s.path.length,label:v(s,"text")});s.__effects.push(f),s.__exec.text=i}const c=t.tag||"div";for(const i of Object.keys(t))if(typeof t[i]=="function"&&!H.has(i)&&!Z(i)&&!s.__exec[i]&&!Go(c,i)){if(I[i]){const f=t[i],d=T(t,t[i+"Deps"],f),u=i;let l,g=null,x=null,p;const h=j(()=>{const _=t.context?.designSystem;_&&Y(_);try{const w=d(t,t.state,t.context);$o();let y;try{y=I[u](w,t,t.state,t.context)}finally{Io()}if(Array.isArray(y)){const A={};for(const S of y)if(S)for(const C in S)A[C]=S[C];y=A}const b=u==="show"||u==="hide";if(y&&t.node&&se(y)){const A=ht(y);if(A===null||A!==p){p=A;const S=At(y,null,t.context?.cssPrefix),C=S?S.split(" ").filter(Boolean):null;if(t.node.classList){if(x)for(const k of x)t.node.classList.remove(k);if(C&&C.length)for(const k of C)t.node.classList.add(k);x=C}}l=void 0,g=null}else if(y&&t.node){if(x){for(const S of x)t.node.classList.remove(S);x=null,p=void 0}const A=ht(y);if(A===null||A!==l||!Tt(t.node,g)){l=A;const S=ks(t,y);g=Ot(t.node,S)}}else t.node&&b&&(l=void 0,g=null,t.node.style.display="")}finally{_&&q()}},{depth:s.path.length,label:v(s,u)});s.__effects.push(h),s.__exec[i]=f}else if(U&&U.has(i)){const f=t[i],d=T(t,t[i+"Deps"],f),u=i;let l,g=null;const x=j(()=>{const p=t.context?.designSystem;p&&Y(p);try{const h=d(t,t.state,t.context);if(t.node)if(h!=null){const _=u+":"+String(h);if(_!==l||!Tt(t.node,g)){l=_;const w={[u]:h},y=ks(t,w);g=Ot(t.node,y)}}else l=void 0,g=null,t.node.style[u]=""}finally{p&&q()}},{depth:s.path.length,label:v(s,u)});s.__effects.push(x),s.__exec[i]=f}else if(i.charCodeAt(0)===45){const f=t[i];ws(t,i,f,t[i+"Deps"],i),s.__exec[i]=f}}if(ne(t),typeof t.html=="function"){const i=t.html,f=T(t,t.htmlDeps,i),d=j(()=>{X(t,()=>{const u=f(t,t.state,t.context);t.node&&u!=null&&typeof u!="function"&&(t.node.innerHTML=u)})},{depth:s.path.length,label:v(s,"html")});s.__effects.push(d),s.__exec.html=i}if(typeof t.value=="function"){const i=t.value,f=T(t,t.valueDeps,i),d=j(()=>{try{let u=f(t,t.state,t.context);typeof u=="string"&&u.includes("{{")&&(u=$.call(t,u,t.state)),gs(t,u)}catch(u){L(s,"value",u)}},{depth:s.path.length,label:v(s,"value")});s.__effects.push(d),s.__exec.value=i}else if(typeof t.value=="string"&&t.value.includes("{{")){const i=t.value,f=j(()=>{try{gs(t,$.call(t,i,t.state))}catch(d){L(s,"value",d)}},{depth:s.path.length,label:v(s,"value")});s.__effects.push(f),s.__exec.value=i}if(typeof t.style=="function"){const i=t.style,f=T(t,t.styleDeps,i);let d,u=null,l,g,x,p;const h=j(()=>{const _=f(t,t.state,t.context),w=t.context&&t.context.designSystem;let y;if(_&&typeof _=="object"&&_===l&&w===x){const A=ht(_);y=A!==null&&A===g?p:qt(t,_),g=A}else y=qt(t,_),g=void 0;l=_,x=w,p=y;const b=ht(y);(b===null||b!==d||!Tt(t.node,u))&&(d=b,_o(t.node,u,y),tt(t.node,y),u=Ot(t.node,y))},{depth:s.path.length,label:v(s,"style")});s.__effects.push(h),s.__exec.style=i}else if(t.style&&typeof t.style=="object")for(const i in t.style){const f=t.style[i];if(typeof f!="function")continue;const d=T(t,lt(t.styleDeps,i),f);let u,l=null;const g=j(()=>{try{const x=d(t,t.state,t.context);if(t.node){const p=i+":"+String(x);if(p!==u||!Tt(t.node,l)){u=p;const h=qt(t,{[i]:x});_o(t.node,l,Object.assign({},h,{[i]:""})),tt(t.node,h),l=Ot(t.node,h)}}}catch(x){L(s,"style."+i,x)}},{depth:s.path.length,label:v(s,"style."+i)});s.__effects.push(g)}if(t.attr&&typeof t.attr=="object"){for(const i in t.attr)if(typeof t.attr[i]=="function"){const f=T(t,lt(t.attrDeps,i),t.attr[i]),d=i,u=j(()=>{try{let l=f(t,t.state,t.context);typeof l=="string"&&l.includes("{{")&&(l=$.call(t,l,t.state)),t.node?.setAttribute&&Kt(t.node,d,l)}catch(l){L(s,"attr."+d,l)}},{depth:s.path.length,label:v(s,"attr."+d)});u._attrName=d.toLowerCase(),s.__effects.push(u)}else if(typeof t.attr[i]=="string"&&t.attr[i].includes("{{")){const f=t.attr[i],d=i,u=j(()=>{try{const l=$.call(t,f,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(d,J(d,l??""))}catch(l){L(s,"attr."+d,l)}},{depth:s.path.length,label:v(s,"attr."+d)});u._attrName=d.toLowerCase(),s.__effects.push(u)}}if(t.aria&&typeof t.aria=="object")for(const i in t.aria){const f=t.aria[i];if(typeof f=="string"&&f.includes("{{")){const g=f,x="aria-"+i.replace(/[A-Z]/g,h=>"-"+h.toLowerCase()),p=j(()=>{try{const h=$.call(t,g,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(x,J(x,h??""))}catch(h){L(s,"aria."+i,h)}},{depth:s.path.length,label:v(s,"aria."+i)});p._attrName=x,s.__effects.push(p);continue}if(typeof f!="function")continue;const d=T(t,lt(t.ariaDeps,i),t.aria[i]),u="aria-"+i.replace(/[A-Z]/g,g=>"-"+g.toLowerCase()),l=j(()=>{try{const g=d(t,t.state,t.context);if(!t.node?.setAttribute)return;Kt(t.node,u,g)}catch(g){L(s,"aria."+i,g)}},{depth:s.path.length,label:v(s,"aria."+i)});l._attrName=u,s.__effects.push(l)}if(t.data&&typeof t.data=="object")for(const i in t.data){const f=t.data[i];if(typeof f=="string"&&f.includes("{{")){const x=f,p="data-"+i.replace(/[A-Z]/g,_=>"-"+_.toLowerCase()),h=j(()=>{try{const _=$.call(t,x,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(p,_??"")}catch(_){L(s,"data."+i,_)}},{depth:s.path.length,label:v(s,"data."+i)});h._attrName=p,s.__effects.push(h);continue}if(typeof f!="function")continue;const d=T(t,lt(t.dataDeps,i),t.data[i]),l="data-"+i.replace(/[A-Z]/g,x=>"-"+x.toLowerCase()),g=j(()=>{try{const x=d(t,t.state,t.context);if(!t.node?.setAttribute)return;x==null||x===!1?t.node.removeAttribute(l):typeof x!="function"&&typeof x!="object"&&t.node.setAttribute(l,x===!0?"":x)}catch(x){L(s,"data."+i,x)}},{depth:s.path.length,label:v(s,"data."+i)});g._attrName=l,s.__effects.push(g)}const a=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(a)for(const i in a){if(typeof a[i]!="function")continue;const f=T(t,lt(t.classDeps,i),a[i]),d=j(()=>{try{const u=f(t,t.state,t.context);if(!t.node?.classList)return;typeof u=="string"?t.node.classList.add(u):u?t.node.classList.add(i):t.node.classList.remove(i)}catch(u){L(s,"class."+i,u)}},{depth:s.path.length,label:v(s,"class."+i)});s.__effects.push(d)}!n&&typeof t.if=="function"&&_s(t,s,t.if);for(const i of Object.keys(t)){if(H.has(i)||typeof t[i]!="function")continue;const f=i.charCodeAt(0);if(f>=65&&f<=90||Z(i))continue;const d=t[i];s.__exec[i]=d;const u=t.tag||"div";if(xt(u,i)&&!nt(u,i)){const l=wt(i)||i,g=T(t,t[i+"Deps"],d),x=j(()=>{try{let p=g(t,t.state,t.context);typeof p=="string"&&p.includes("{{")&&(p=$.call(t,p,t.state)),t.node?.setAttribute&&Kt(t.node,l,p,!0)}catch(p){L(s,i,p)}},{depth:s.path.length,label:v(s,i)});x._attrName=l.toLowerCase(),s.__effects.push(x)}}const r=t.tag||"div";for(const i of Object.keys(t)){if(H.has(i))continue;const f=t[i];if(typeof f!="string"||!f.includes("{{"))continue;const d=i.charCodeAt(0);if(d>=65&&d<=90||Z(i)||nt(r,i)||no[i]||!xt(r,i))continue;const u=wt(i)||i,l=j(()=>{try{const g=$.call(t,f,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(u,J(u,g??""))}catch(g){L(s,i,g)}},{depth:s.path.length,label:v(s,i)});l._attrName=u.toLowerCase(),s.__effects.push(l)}if(ue(t),Ae(t),typeof t.onStateUpdate=="function"&&Array.isArray(t.stateDeps)){const i=t.onStateUpdate,f=t.stateDeps;let d=!1,u=[];const l=j(()=>{const g=[];for(let h=0;h<f.length;h++){const _=f[h];try{g[h]=typeof _=="function"?_(t,t.state,t.context):t.state?.[_]}catch{g[h]=void 0}}if(!d){d=!0,u=g;return}let x=g.length!==u.length;for(let h=0;!x&&h<g.length;h++)g[h]!==u[h]&&(x=!0);const p=u;u=g,x&&X(t,()=>{try{i(t,t.state,t.context,{prev:p,next:g})}catch(h){if($t(t,"onStateUpdate",h),t.context?.strictMode)throw h}})},{depth:s.path.length,label:v(s,"onStateUpdate")});s.__effects.push(l)}he(t)}function hs(t){const o=t.parent,s=o?.node;if(!s||!t.node){Zs(t,t.parent);return}let n=null;const e=Object.keys(o),c=e.indexOf(t.key);for(let a=c+1;a<e.length;a++){const r=o[e[a]];if(r?.node?.parentNode===s){n=r.node;break}}n?s.insertBefore(t.node,n):s.appendChild(t.node)}function ys(t){bs(t),ke(t),Ms(t),Fe(t),Ne(t)}function _s(t,o,s){let n=T(t,t.ifDeps,s);const e=j(()=>{const c=!o.__ifInitialized&&o.__ifLateMerge;if(c){const i=t.context?.components||{};c.names.some(f=>i[f]||i["smbls."+f])&&(o.__ifLateMerge=null,Rn(t,c),n=T(t,t.ifDeps,typeof t.if=="function"?t.if:s))}let a;try{a=n(t,t.state,t.context)}catch(i){if(a=!1,o.__ifError=i,typeof console<"u"&&console.warn){const f=t.key||t.tag||"?";console.warn(`[smbls] \`if:\` reactive effect threw on ${f} \u2014 treating as false:`,i?.message||i)}return}const r=o.__if;if(o.__if=!!a,r&&!o.__if&&t.node){t.node.remove();try{typeof t.onRemove=="function"&&t.onRemove(t)}catch(i){console.error("[smbls] onRemove error:",i)}}else if(!r&&o.__if)if(o.__ifInitialized)t.node||(t.node=so(t)),t.node&&(t.node.ref=t),hs(t),bs(t),Ms(t),D("Render",t,{}),io(t,{});else{if(o.__ifInitialized=!0,o.__ifLateMerge=null,t.tag||(t.tag=Do(t)),D("Init",t,{}),t.node||(t.node=so(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"&&!o.__fragmentAnchor){const f=(t.context?.document||globalThis.document).createComment("");t.node.appendChild(f),o.__fragmentAnchor=f}D("AttachNode",t,{}),t.node.setAttribute&&t.key&&t.node.setAttribute("data-key",t.key),t.id&&t.node.setAttribute&&(t.node.id=t.id),Ys(t,{}),ps(t,{skipIfEffect:!0}),ys(t),qs(t,{}),hs(t),D("Create",t,{}),D("Complete",t,{}),D("Render",t,{}),D("RenderRouter",t,{}),io(t,{})}},{depth:o.path.length,label:v(o,"if")});o.__effects.push(e)}function Gt(t,o){const s=t.node;if(!s)return;const n=o==null||typeof o=="object"?"":String(o);if(t.tag==="string"){s.nodeValue!==n&&(s.nodeValue=n);return}const e=t.__ref;let c=e?e.__textNode:null;if(c&&c.parentNode!==s&&(c=null),!c){const a=s.firstChild;a&&a.nodeType===3&&(c=a)}c?c.nodeValue!==n&&(c.nodeValue=n):s.firstChild?(c=(s.ownerDocument||t.context?.document||globalThis.document).createTextNode(n),s.insertBefore(c,s.firstChild)):(s.textContent=n,c=s.firstChild&&s.firstChild.nodeType===3?s.firstChild:null),e&&(e.__textNode=c||null)}function te(t,o){return o!=="checked"||!t||t.tagName!=="INPUT"?null:t.hasAttribute("checked")}function oe(t,o){if(o===null)return;const s=t.hasAttribute("checked");s!==o&&t.checked!==s&&(t.checked=s)}function Kt(t,o,s,n){s==null||s===!1&&!It(o)?Wt(t,o,null):typeof s=="function"||typeof s=="object"||(n&&o==="src"&&"src"in t?t.src=s:Wt(t,o,J(o,s)))}function Wt(t,o,s){const n=te(t,o);s==null?t.removeAttribute(o):t.setAttribute(o,s),oe(t,n)}function gs(t,o){const s=t.node;if(!s||!("value"in s))return;const n=o==null?"":String(o);if(s.value===n)return;const e=typeof document<"u"&&document.activeElement===s,c=e&&typeof s.selectionStart=="number"?s.selectionStart:null,a=e&&typeof s.selectionEnd=="number"?s.selectionEnd:null;if(s.value=n,e&&c!=null&&a!=null)try{s.setSelectionRange(c,a)}catch{}const r=t.__ref&&t.__ref.__autoGrow;r&&r.active&&r.resize()}function bs(t){const{node:o}=t;if(o){if((typeof t.text=="string"&&!t.text.includes("{{")||typeof t.text=="number")&&Gt(t,t.text),Bs(t),typeof t.html=="string"&&(o.innerHTML=t.html),t.value!=null&&typeof t.value!="function"&&!(typeof t.value=="string"&&t.value.includes("{{"))&&"value"in o){const s=String(t.value);o.value!==s&&(o.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 e in t.style)typeof t.style[e]!="function"&&(s[e]=t.style[e]);break}tt(o,qt(t,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&&!It(s)||o.setAttribute&&o.setAttribute(s,J(s,n)))}if(typeof t.themeModifier=="string"&&t.themeModifier&&o.setAttribute&&o.setAttribute("data-theme",t.themeModifier),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("{{")||o.dataset&&(o.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&&o.classList.add(n));else if(typeof s=="object")for(const n in s){const e=typeof s[n]=="function"?s[n](t,t.state,t.context):s[n];e&&o.classList.add(typeof e=="string"?e:n)}}}}function ht(t){if(t==null||typeof t!="object")return"s:"+String(t);try{return"o:"+JSON.stringify(t)}catch{return null}}function se(t){if(!t||typeof t!="object")return!1;for(const o in t){const s=t[o];if(s&&typeof s=="object"&&!Array.isArray(s))return!0}return!1}function Ot(t,o){if(!t||!t.style||!o)return null;const s=t.style,n=[];for(const e in o){if(o[e]==null||e.charAt(0)==="&")continue;const a=Q(e);n.push(a,yo(s,a),As(s,a))}return n}function yo(t,o){return typeof t.getPropertyValue=="function"?t.getPropertyValue(o):""}function As(t,o){return typeof t.getPropertyPriority=="function"?t.getPropertyPriority(o):""}function Q(t){return Uo(t)}function _o(t,o,s){if(!t||!t.style||!o||!o.length)return;const n=t.style,e=new Set;if(s&&typeof s=="object")for(const c in s)s[c]==null||c.charAt(0)==="&"||e.add(Q(c));for(let c=0;c<o.length;c+=3){const a=o[c];e.has(a)||yo(n,a)===o[c+1]&&typeof n.removeProperty=="function"&&n.removeProperty(a)}}function Tt(t,o){if(!o||!t||!t.style)return!1;const s=t.style;for(let n=0;n<o.length;n+=3)if(yo(s,o[n])!==o[n+1]||As(s,o[n])!==o[n+2])return!1;return!0}const Dt=t=>t.charCodeAt(0)===45&&t.charCodeAt(1)===45,xs=t=>typeof t=="number"||t===!0||typeof t=="string"&&t!=="",zt=t=>Dt(t)?t:"--"+t;function Yt(t,o){if(!ot(t))return null;let s=null;for(const n of Object.keys(t)){if(!n)continue;let e=t[n];if(typeof e=="function"){if(!o)continue;e=e(o,o.state,o.context)}xs(e)&&(s||(s={}),s[zt(n)]=e)}return s}function ws(t,o,s,n,e){Ss(t,e,T(t,n,s),c=>xs(c)?{[o]:c}:null)}function Ss(t,o,s,n,e){const c=t.__ref;let a,r=null;const i=j(()=>{X(t,()=>{try{const f=n(s(t,t.state,t.context)),d=t.node;if(!d||!d.style)return;const u=ht(f);(u===null||u!==a||!Tt(d,r))&&(a=u,_o(d,r,f),f&&tt(d,f),r=f?Ot(d,f):null,e&&e(f))}catch(f){L(c,o,f)}})},{depth:c.path.length,label:v(c,o)});c.__effects.push(i)}function ne(t){const o=t.__ref,s=t.vars;if(typeof s=="function"){ee(t,s),o.__exec.vars=s;return}if(ot(s))for(const n of Object.keys(s)){const e=s[n];!n||typeof e!="function"||ws(t,zt(n),e,lt(t.varsDeps,n),"vars."+n)}}function ee(t,o){const s=t.__ref;Ss(t,"vars",T(t,t.varsDeps,o),n=>Yt(n),n=>{s.__varsInline=n?new Set(Object.keys(n)):null})}function go(t,o){if(typeof t[o]=="function"&&(nt(t.tag||"div",o)||o.charCodeAt(0)===45))return!0;if(!Dt(o))return!1;const s=t.vars;if(typeof s=="function"){const n=t.__ref&&t.__ref.__varsInline;return!!(n&&n.has(o))}if(!ot(s))return!1;for(const n of Object.keys(s))if(typeof s[n]=="function"&&zt(n)===o)return!0;return!1}function re(t){let o=null;for(const s in t)t[s]!=null&&s.charAt(0)!=="&"&&(o||(o=new Set),o.add(Q(s)));return o}function ie(t,o,s,n){const e=t.__ref;if(!e)return;let c=null;if(s)for(const a of s){if(n&&n.has(a))continue;const r=o[a];if(r==null||typeof r=="object")continue;const i=Q(a);Bt[i]&&(c||(c={}),c[i]=r)}e.__declaredLonghands=c}function Cs(t,o){const s=t.__ref,n=s&&s.__declaredLonghands;if(!n||!o)return null;let e=null;for(const c in n){if(o.has(c))continue;const a=Bt[c];let r=!1;for(let i=0;i<a.length;i++)if(o.has(a[i])){r=!0;break}r&&(e||(e={}),e[c]=n[c])}return e}function ks(t,o){const s=t.node;tt(s,o);const n=re(o);if(!n)return o;const e=t.__ref;if(e)if(e.__inlineCssKeys)for(const a of n)e.__inlineCssKeys.add(a);else e.__inlineCssKeys=new Set(n);const c=Cs(t,n);return c?(tt(s,c),Object.assign({},o,c)):o}function ce(t){const o=t.__ref;if(!o||!o.__inlineCssKeys||!o.__declaredLonghands)return;const s=Cs(t,o.__inlineCssKeys);s&&tt(t.node,s)}function qt(t,o){return!o||typeof o!="object"?o:X(t,()=>{try{return bn(o,t)}catch{return o}})}function tt(t,o){if(!t||!o||!t.style)return;let s=null;for(const n in o){const e=o[n];if(e!=null){if(n.charAt(0)==="&"&&typeof e=="object"){s||(s={}),s[n]=e;continue}try{const c=String(e),a=Uo(n),r=c.trim(),i=/\s*!important\s*$/.test(r),f=r.replace(/\s*!important\s*$/,"");t.style.setProperty(a,f,i?"important":"")}catch{}}}s&&fe(t,s)}function fe(t,o){const s=`_ds${Ko.scopedStyleId++}`;t.classList.add(s);const n=t.ownerDocument;let e=n.querySelector("style[data-smbls-scoped]");e||(e=n.createElement("style"),e.setAttribute("data-smbls-scoped",""),n.head.appendChild(e));let c="";for(const a in o){const r="."+s,i=a.replace(/&/g,r).split(",").map(d=>{const u=d.trim();return u.includes(r)?u:r+u}).join(", "),f=o[a];if(typeof f=="object"){let d="",u="";for(const l in f){const g=f[l];if(typeof g=="object"){const x=l.includes("&")?i.split(", ").map(h=>l.replace(/&/g,h)).join(", "):i.split(", ").map(h=>`${h} ${l}`).join(", ");let p="";for(const h in g)p+=`${Q(h)}: ${g[h]};`;u+=Bo(`${x} { ${p} }`,x)+`
5
- `}else d+=`${Q(l)}: ${g};`}d&&(c+=Bo(`${i} { ${d} }`,i)+`
6
- `),u&&(c+=u)}}c&&(e.textContent+=c)}const vs=new Set;function js(t){if(!Array.isArray(t))return"";const o=[];for(let s=0;s<t.length;s++)typeof t[s]=="string"&&t[s].length&&o.push(t[s]);return o.sort(),o.join("|")}function ae(t,o,s){const n=js(s);queueMicrotask(()=>{if(!t.__ref)return;let e;try{e=o(t,t.state,t.context)}catch{return}if(js(e)===n)return;const c=t.__ref.path?t.__ref.path.join("."):t.key||"?";vs.has(c)||(vs.add(c),console.warn(`[smbls] subscribeTo function at "${c}" resolved to a DIFFERENT key list one microtask after create \u2014 wired [${s.join(", ")||"(none)"}], probed [${Array.isArray(e)?e.join(", "):String(e)}]. 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 ue(t){const o=t.subscribeTo,s=typeof o=="function";let n=o;if(s)try{n=o(t,t.state,t.context)}catch{n=null}if(s&&st()&&ae(t,o,Array.isArray(n)?n:[]),!Array.isArray(n)||n.length===0)return;const e=t.__ref;for(let c=0;c<n.length;c++){const a=n[c];if(typeof a!="string"||a.length===0)continue;const r=a.split("."),i=r[0],f=r.slice(1),d={value:!1},u=j(()=>{const l=t.state&&(W(t.state)?t.state.root:null);if(!l||!W(l))return;let g=l;g=g[i];for(let p=0;p<f.length&&!(g==null||typeof g!="object");p++)if(W(g))g=g[f[p]];else break;if(!d.value)return;let x=!1;if(typeof t.onBeforeUpdate=="function"&&X(t,()=>{try{if(Ie(e)){const p=t.onBeforeUpdate(t,t.state,t.context,{updateBySubscription:!0});p&&typeof p.then=="function"?p.then(()=>Qt(e,!1),h=>{Qt(e,!0),bt("error",t,{hook:"onBeforeUpdate",error:h})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",h)}):(Qt(e,!1),p===!1&&(x=!0))}}catch(p){Qt(e,!0),bt("error",t,{hook:"onBeforeUpdate",error:p})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",p)}}),!x&&t.node&&e.__effects)for(let p=0;p<e.__effects.length;p++){const h=e.__effects[p];h&&h!==u&&!h._disposed&&!h._isSubscribeToEffect&&typeof h._execute=="function"&&h._execute()}!x&&typeof t.onUpdate=="function"&&X(t,()=>{try{t.onUpdate(t,t.state,t.context)}catch(p){bt("error",t,{hook:"onUpdate",error:p})||console.error("[DOMQL] subscribeTo onUpdate error:",p)}})},{depth:e.path.length,label:v(e,"subscribeTo("+a+")")});d.value=!0,u._isSubscribeToEffect=!0,e.__effects.push(u)}}function bo(t,o){return t.charCodeAt(0)===64&&t.length>1&&!t.startsWith("@media")&&!t.startsWith("@keyframes")&&!t.startsWith("@supports")&&!t.startsWith("@container")&&(t==="@dark"||t==="@light"||!o.context?.designSystem?.media?.[t.slice(1)])}function Ao(t,o){if(t.charCodeAt(0)!==64||/^@(media|supports|container|keyframes)\b/.test(t))return t;const s=o.context?.designSystem?.media?.[t.slice(1)];return s?/^@(media|supports|container)\b/.test(s)?s:`@media ${s}`:t}const Es=new Set;function de(t,o){const s=o?.__ref?.path?o.__ref.path.join("."):o?.key||"?",n=s+"::"+t;Es.has(n)||(Es.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.`))}const Ps=new Map;function le(t){let o=Ps.get(t);if(o)return o;o=[];const s=n=>{if(n)for(const e of n)o.push(Vo(e))};return s(Bt[t]),s(Sn[t]),Ps.set(t,o),o}function Os(t,o,s){if(go(t,o)||s&&s.has(o))return!0;const n=le(Q(o));for(let e=0;e<n.length;e++){const c=n[e];if(go(t,c)||s&&s.has(c))return!0}return!1}function yt(t,o,s,n){const e={},c=new Set,a=(r,i,f)=>{const d=f?new Set(Object.keys(e)):null;if(I[r]){const u=I[r](i,o,o.state,o.context);if(u){const l=Array.isArray(u)?u:[u];for(const g of l)g&&Object.assign(e,g)}}else e[r]=i;if(f)for(const u in e)d.has(u)||c.add(u)};for(const r in t){if(!Object.prototype.hasOwnProperty.call(t,r))continue;let i=t[r];if(typeof i=="function"&&(i=i(o,o.state,o.context)),!(i==null||typeof i=="function")){if(typeof i=="object"&&!Array.isArray(i)){if(r==="style"){for(const u in i){let l=i[u];typeof l=="function"&&(l=l(o,o.state,o.context)),!(l==null||typeof l=="function")&&a(u,l,Os(o,u,n))}continue}if(r==="vars"){const u=Yt(i,o);if(u)for(const l in u)a(l,u[l],go(o,l)||!!(n&&n.has(l)));continue}if(bo(r,o)){const u=yt(i,o,!1,n);Object.keys(u).length&&(e[`[data-theme="${r.slice(1)}"] &`]=u);continue}if(/^[A-Z][A-Za-z0-9]*$/.test(r)){st()&&de(r,o);continue}const f=Ao(r,o),d=yt(i,o,!1,n);Object.keys(d).length&&(e[f]=d);continue}a(r,i,Os(o,r,n))}}if(s)for(const r in e)c.add(r);for(const r of c){const i=e[r];typeof i=="string"&&!i.includes("!important")&&(e[r]=i+" !important")}return e}const ot=t=>!!t&&typeof t=="object"&&!Array.isArray(t);function Ts(t,o){for(const s in o){const n=o[s];t[s]=ot(n)?Ts(ot(t[s])?t[s]:{},n):n}return t}function pe(t,o){if(!ot(o))return;let s;for(const n of t.split(" ")){const e=n?o[n]:null;ot(e)&&(s=Ts(s||{},e))}return s}function xo(t,o){if(o===void 0&&(o=0),o>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)&&xo(t[s],o+1))return!0}return!1}function Ds(t,o,s){if(!o||typeof o!="object"||Array.isArray(o))return null;if(bo(t,s)){const c=yt(o,s,!1);return Object.keys(c).length?{cssProp:`[data-theme="${t.slice(1)}"] &`,block:c}:null}const n=Ao(t,s),e=yt(o,s,!1);return Object.keys(e).length?{cssProp:n,block:e}:null}function he(t){const o=t.__ref;for(const s of Object.keys(t)){if(!co(s))continue;const n=t[s];if(!n||typeof n!="object"||Array.isArray(n)||!xo(n))continue;let e=null,c;const a=j(()=>{if(!t.node)return;const r=t.context?.designSystem;r&&Y(r);let i,f=!1;try{const d=Ds(s,n,t),u=d?ht(d.block)+"::"+d.cssProp:null;if(u!==null&&u===c)f=!0;else if(c=u,d){const l=At({[d.cssProp]:d.block},null,t.context?.cssPrefix);i=l?l.split(" ").filter(Boolean):null}else i=null}finally{r&&q()}if(!(f||!t.node.classList)){if(e)for(const d of e)t.node.classList.remove(d);if(i&&i.length)for(const d of i)t.node.classList.add(d);e=i}},{depth:o.path.length,label:v(o,"cssBlock("+s+")")});o.__effects.push(a)}}const ye=()=>!0,_e=(t,o)=>{const s=t.charAt(0);return(s===":"||s==="@"||s==="&"||s==="[")&&o&&typeof o=="object"&&!Array.isArray(o)?!0:!!I[t]||!!(U&&U.has(t))||Dt(t)||t==="vars"};function ge(t,o,s){const n={};let e=!1;for(const r in s)Object.prototype.hasOwnProperty.call(s,r)&&(r!=="data"&&r!=="aria"&&(_e(r,s[r])||H.has(r))?n[r]=!0:e=!0);if(!e)return null;const c=xn({[o]:s},t.tag||"div",n,ye);let a=null;for(const r in c)/^on/i.test(r)||(a||(a={}),a[r]=c[r]);return a}function Ls(t,o,s,n,e,c){const a=t.node;let r=null;const i=f=>{(r||(r=[])).push(f)};for(const f in n){const d=o.owners.get(f),u=d===s;if(!c&&d!==void 0&&!u)continue;let l;try{l=n[f](t)}catch(x){L(t.__ref,"conditional("+s+")."+f,x),u&&i(f);continue}if(typeof l=="string"&&l.includes("{{")&&(l=$.call(t,l,t.state)),u&&a.getAttribute(f)!==o.written.get(f)){i(f);continue}if(l==null||typeof l=="object"||typeof l=="function"){u&&Rs(a,o,f);continue}const g=l===!1&&!It(f)?null:String(J(f,l));i(f),!(u&&g===o.written.get(f))&&(d===void 0&&o.base.set(f,a.getAttribute(f)),Wt(a,f,g),o.owners.set(f,s),o.written.set(f,g))}e.appliedAttrs=r}function Rs(t,o,s){t.getAttribute(s)===o.written.get(s)&&Wt(t,s,o.base.get(s)),o.owners.delete(s),o.base.delete(s),o.written.delete(s)}function be(t,o,s,n){const e=n.appliedAttrs;if(n.appliedAttrs=null,!!e)for(const c of e)o.owners.get(c)===s&&Rs(t.node,o,c)}function Ms(t){const o=t.__ref&&t.__ref.__conditionalAttrs,s=t.node;if(!(!o||!o.owners.size||!s||!s.getAttribute))for(const n of o.owners.keys()){const e=o.written.get(n),c=s.getAttribute(n);c!==e&&(o.base.set(n,c),e==null?s.removeAttribute(n):s.setAttribute(n,e))}}function Ae(t){const o=t.__ref;o.__conditionalRunners=[];let s=null;const n=new Map;for(const e of Object.keys(t)){const c=e.charAt(0);if(c!=="."&&c!=="!")continue;const a=e.slice(1);if(!a)continue;if(/[:@\s>~+[\]]/.test(a)){if(typeof console<"u"&&console.warn){const h=a.split(/[:@\s>~+[\]]/)[0];console.warn(`[smbls] conditional \`${e}\` on ${t.key||"?"} will never match \u2014 the whole string after \`${c}\` is read as one prop name. Nest the selector inside instead: \`${c}${h}: { '${a.slice(h.length)}': {...} }\`.`)}continue}const r=t[e];if(!r||typeof r!="object")continue;const i=c==="!",f={lastMatch:!1,appliedKeys:null,appliedClasses:null,appliedAttrs:null},d=ge(t,e,r);d&&!s&&(s=o.__conditionalAttrs={owners:new Map,base:new Map,written:new Map});const u=new Set;for(const h in r){if(!Object.prototype.hasOwnProperty.call(r,h))continue;const _=h.charAt(0),w=r[h];if(!((_===":"||_==="@"||_==="&"||_==="[")&&w&&typeof w=="object"&&!Array.isArray(w))){if(h==="vars"&&ot(w)){for(const y of Object.keys(w))y&&u.add(zt(y));continue}u.add(h)}}const l=()=>{let h;const _=t[a];if(_===void 0){const b=!!t.state&&a in t.state,A=t.state?t.state[a]:void 0;if(b||A!==void 0)h=A;else{const S=t.context?.cases?.[a];if(S===void 0)return;try{h=typeof S=="function"?S.call(t,t):S}catch(C){h=!1,o.__conditionalError=C,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${e}\` case fn threw on ${t.key||"?"} \u2014 treating as false:`,C?.message||C)}}}else if(typeof _=="function")try{h=_(t,t.state,t.context)}catch(b){h=!1,o.__conditionalError=b,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${e}\` predicate threw on ${t.key||"?"} \u2014 treating as false:`,b?.message||b)}else h=_;const w=i?!h:!!h;if(!t.node)return;const y=t.context?.designSystem;if(w===f.lastMatch){if(w&&d&&t.node.setAttribute){y&&Y(y);try{Ls(t,s,e,d,f,!1)}finally{y&&q()}}return}f.lastMatch=w,y&&Y(y);try{if(w){const b={},A={};let S=!1;for(const k in r){if(!Object.prototype.hasOwnProperty.call(r,k))continue;const E=r[k],V=k.charAt(0);if((V===":"||V==="@"||V==="&"||V==="[")&&E&&typeof E=="object"&&!Array.isArray(E)){if(bo(k,t)){const M=yt(E,t,!1,u);Object.keys(M).length&&(A[`[data-theme="${k.slice(1)}"] &`]=M,S=!0)}else{const M=Ao(k,t),R=yt(E,t,!1,u);Object.keys(R).length&&(A[M]=R,S=!0)}continue}const ct=typeof E=="function"?E(t,t.state,t.context):E;if(ct!=null){if(I[k]){const M=I[k](ct,t,t.state,t.context);if(M){const R=Array.isArray(M)?M:[M];for(const N of R)N&&Object.assign(b,N)}}else if(U&&U.has(k))b[k]=ct;else if(Dt(k))b[k]=ct;else if(k==="vars"){const M=Yt(ct,t);M&&Object.assign(b,M)}}}const C=Object.keys(b);if(C.length){tt(t.node,b);for(const k of C)n.set(k,e);f.appliedKeys=C}else f.appliedKeys=null;if(S){const k=At(A,null,t.context?.cssPrefix,{state:!0}),E=k?k.split(" ").filter(Boolean):[];if(E.length&&t.node.classList){for(const V of E)t.node.classList.add(V);f.appliedClasses=E}else f.appliedClasses=null}else if(f.appliedClasses){for(const k of f.appliedClasses)t.node.classList.remove(k);f.appliedClasses=null}d&&t.node.setAttribute&&Ls(t,s,e,d,f,!0)}else{if(f.appliedAttrs&&be(t,s,e,f),f.appliedKeys){for(const b of f.appliedKeys)n.get(b)===e&&(Dt(b)?t.node.style.removeProperty(b):t.node.style[b]="",n.delete(b));f.appliedKeys=null}if(f.appliedClasses){for(const b of f.appliedClasses)t.node.classList.remove(b);f.appliedClasses=null}}}finally{y&&q()}};o.__conditionalRunners.push(l);const g=T(t,t[a+"Deps"],l),x=j(g,{depth:o.path.length,label:v(o,"conditional("+e+")")}),p=o.__exec&&o.__exec[a]||t[a];x._sources.size===0&&typeof p=="function"&&st()&&Hn(p)&&console.warn(`[smbls] conditional \`${e}\` 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 \`${a}Deps: [...]\` (state-key strings or \`(el, s) => \u2026\` selectors) so the subscription is armed unconditionally.`),o.__effects.push(x)}}const wo=new WeakSet,So=new WeakMap;function xe(t){const o=So.get(t);if(o==="painted")return!1;if(o===void 0){So.set(t,"open");const s=t.defaultView,n=()=>{So.set(t,"painted")};s&&typeof s.requestAnimationFrame=="function"?s.requestAnimationFrame(n):setTimeout(n,0)}return!0}function we(t){const o=t.ownerDocument;!o||wo.has(o)||xe(o)||(wo.add(o),queueMicrotask(()=>{wo.delete(o);const s=o.body||o.documentElement;s&&s.offsetWidth}))}const Co=new WeakSet;let Ns=!1;function Fs(t){return t.startsWith("[data-theme=")||t.startsWith("@media")&&t.includes("prefers-color-scheme")}function ko(t,o){const s={...t};for(const n in o){const e=o[n],c=s[n];s[n]=e&&typeof e=="object"&&c&&typeof c=="object"?ko(c,e):e}return s}function $s(t,o){const s={};for(const n in t){const e=t[n];if(e&&typeof e=="object"){const c=$s(e,o);Object.keys(c).length&&(s[n]=c)}else o.has(n)||(s[n]=e)}return s}function Se(t,o,s){let n=1/0,e=-1/0;for(const a of o.values())a<n&&(n=a),a>e&&(e=a);if(s)for(const a of s.values())a>e&&(e=a);if(e<=n)return null;let c=null;for(const[a,r]of o){if(r===e)continue;const i=Ce(a);if(i)for(let f=0;f<i.length;f+=3){const d=i[f],u=i[f+1],l=i[f+2],g=t[u]!=null?o.get(u):void 0,x=s&&s.get(d),p=g!==void 0&&g>r&&Ho(d,t[u],l),h=!p&&x!==void 0&&x>r&&Ho(d,void 0,l);if(p||h){p&&delete t[a],c||(c=new Set),c.add(a);break}}}return c}const Is=new Map;function Ce(t){let o=Is.get(t);if(o!==void 0)return o;const s=Q(t),n=Bt[s];if(o=null,Array.isArray(n)){o=[];for(const e of n)o.push(e,Vo(e),s)}return Is.set(t,o),o}function Bs(t){const{node:o}=t;if(!o)return;if(Ns||(Ns=!0,At({display:"none"})),Co.has(t)){console.error("[applyCssInProps] re-entry detected for element",t.key,"prop path:",t.__ref?.path);return}Co.add(t);const s=t.context?.designSystem;s&&Y(s),$o();try{const n={};let e=!1,c=[],a=null,r=null,i=null;const f=t.__ref&&t.__ref.__mergeLayer;let d,u=null,l=null;const g=(y,b)=>{if(b&&typeof b=="object"&&Fs(y)){r||(r={});const A=r[y];A&&(b=ko(A,b)),r[y]=b}else(b===null||typeof b!="object")&&(i||(i=new Set),i.add(y),d!==void 0&&(u||(u=new Map),u.set(y,d)));n[y]=b};if(Object.prototype.hasOwnProperty.call(t,"theme")&&typeof t.theme!="function"&&I.theme){const y=I.theme(t.theme,t,t.state,t.context);if(y){const b=A=>{for(const S in A){const C=A[S];C&&typeof C=="object"&&Fs(S)&&(a||(a={}),a[S]=C),n[S]=C}};if(Array.isArray(y))for(const A of y)A&&b(A);else b(y);e=!0}}const x=(y,b)=>{if(y==="vars"){const A=Yt(b);if(A){for(const S in A)g(S,A[S]);e=!0}return}if(I[y]){const A=I[y](b,t,t.state,t.context);if(A){if(Array.isArray(A)){for(const S of A)if(S)for(const C in S)g(C,S[C])}else for(const S in A)g(S,A[S]);e=!0}}else if(U&&U.has(y))b!=null&&typeof b!="object"&&(g(y,b),e=!0);else if(y.charCodeAt(0)===45)b!=null&&typeof b!="object"&&(g(y,b),e=!0);else if((y.charAt(0)==="&"||y.charAt(0)==="@"||y.charAt(0)===":"||y.charAt(0)==="[")&&b&&typeof b=="object"&&!Array.isArray(b)){if(xo(b))return;const A=Ds(y,b,t);A&&(g(A.cssProp,A.block),e=!0)}};if(typeof t.class=="string"){const y=pe(t.class,t.context?.designSystem?.class);if(y)for(const b in y)x(b,y[b])}const p=i?new Set(i):null,h=t.tag||"div";for(const y of Object.keys(t)){if(typeof t[y]=="function"){const A=f&&f.get(y);A!==void 0&&nt(h,y)&&(l||(l=new Map),l.set(Q(y),A));continue}if(d=f?f.get(y):void 0,y==="vars"){x(y,t[y]);continue}if(H.has(y)||y==="theme")continue;const b=y.charCodeAt(0);b>=65&&b<=90||Z(y)||Go(h,y)||x(y,t[y])}d=void 0;const _=u?Se(n,u,l):null;if(a)for(const y in a){let b=i?$s(a[y],i):a[y];r&&r[y]&&(b=ko(b,r[y])),Object.keys(b).length?n[y]=b:delete n[y]}if(ie(t,n,i,_?new Set([...p||[],..._]):p),e){n.display&&String(n.display).includes("!important")&&(o.style.setProperty("display",String(n.display).replace(/\s*!important\s*$/,""),"important"),delete n.display);const y=t.display!=null&&typeof t.display!="function"?t.display:t.hide===!0||t.show===!1?"none":null;typeof y=="string"&&y!==""&&n.display&&n.display!==y&&(n.display=y);const b=At(n,null,t.context?.cssPrefix);if(c=b?b.split(" ").filter(Boolean):[],b&&o.classList){const A=c;let S=!1;for(const C of A)o.classList.add(C),S||(C.charCodeAt(0)===95&&C.charCodeAt(1)===99||C.charCodeAt(0)===95&&C.indexOf("_c",1)!==-1)&&(S=!0);S&&we(o)}}const w=t.__ref;if(w){const y=w.__staticCssClasses;if(y&&o.classList){const b=new Set(c);for(const A of y)b.has(A)||o.classList.remove(A)}w.__staticCssClasses=c}ce(t)}finally{Io(),s&&q(),Co.delete(t)}}const lr=t=>!!I[t]||!!(U&&U.has(t))||typeof t=="string"&&t.charCodeAt(0)===45;function pr(t){t&&t.node&&Bs(t)}function ke(t){const{node:o}=t;if(!o||!o.setAttribute)return;if(t.aria&&typeof t.aria=="object")for(const e in t.aria){const c=t.aria[e];if(typeof c=="function"||typeof c=="object"||c==null||typeof c=="string"&&c.includes("{{"))continue;const a="aria-"+e.replace(/[A-Z]/g,r=>"-"+r.toLowerCase());o.setAttribute(a,J(a,c))}const s=An(t);for(const e in s){const c=s[e];c!=null&&c!==!1&&typeof c!="function"&&typeof c!="object"&&o.setAttribute(e,c===!0?"":c)}const n=t.tag||"div";for(const e of Object.keys(t)){if(typeof t[e]=="function"||H.has(e)||e==="on"||s[e]!==void 0)continue;const c=e.charCodeAt(0);if(!(c>=65&&c<=90)&&!Z(e)&&!nt(n,e)&&xt(n,e)){let a=t[e];if(a==null)continue;if(typeof a=="string"&&a.includes("{{")){if(!no[e])continue;a=$.call(t,a,t.state)}if(a==null||typeof a=="function"||typeof a=="object"||a===!1&&!It(wt(e)||e))continue;const r=wt(e)||e;o.setAttribute(r,J(r,a))}}}function hr(t,o){const{node:s}=t;if(!s||!s.setAttribute)return;const n=o.charCodeAt(0);if(n>=65&&n<=90||Z(o))return;const e=t.tag||"div";if(nt(e,o)||!xt(e,o))return;const c=wt(o)||o,a=c.toLowerCase(),r=t.__ref&&t.__ref.__effects;let i=!1;if(r)for(let u=0;u<r.length;u++){const l=r[u];l&&l._attrName===a&&!l._disposed&&typeof l._execute=="function"&&(i=!0,l._execute())}if(i)return;let f=t[o];const d=no[o];if(d&&f!=null){const u=d(t);u!==void 0&&(f=u)}typeof f=="string"&&f.includes("{{")&&(f=$.call(t,f,t.state)),Kt(s,c,f)}function ve(t,o){const s=t.node,n=t.__ref;let e=n.__autoGrow;if(!o){if(e&&e.active){try{s.removeEventListener("input",e.resize)}catch{}Us(e),et.delete(t),s.style.height="",e.appliedMax!=null&&s.style.maxHeight===e.appliedMax&&(s.style.maxHeight=""),Ks(s,e,!1),e.active=!1,e.appliedMax=null,e.lastMeasure=0}return}e||(e=n.__autoGrow={active:!1,appliedMax:null,lastMeasure:0,lastWidth:null,watch:null,awaitingLayout:!1,appliedScroll:!1,fontsHooked:!1,attachAttempts:0,firstAttemptAt:null,resize:()=>{if(!s.isConnected){Lt(t,!0);return}if(!(s.scrollHeight>0)){e.awaitingLayout=!0,Hs(t,e);return}e.awaitingLayout=!1;const a=Pe(s),r=Oe(a),i=s.style.height;s.style.height="0px",r&&jo(s);const f=s.scrollHeight;if(!(f>0)){s.style.height=i,r&&jo(s);return}const d=Te(s,a),u=d!=null&&f<d?d:f,l=Re(a),g=l!=null&&u>l;s.style.height=Le(g?l:u,a)+"px",r&&jo(s),Ks(s,e,g),e.lastMeasure=f,e.lastWidth=s.clientWidth,Hs(t,e)}},n.__eventCleanup||(n.__eventCleanup=[]),n.__eventCleanup.push(()=>{try{s.removeEventListener("input",e.resize)}catch{}Us(e),et.delete(t)})),e.active||(s.addEventListener("input",e.resize),e.active=!0,Ee(t,e));const c=typeof o=="object"&&o.max!=null?String(o.max):null;c!==e.appliedMax&&(c==null?e.appliedMax!=null&&s.style.maxHeight===e.appliedMax&&(s.style.maxHeight=""):s.style.maxHeight=c,e.appliedMax=c),e.resize()}function Lt(t,o){const s=t.__ref?.__autoGrow;s&&(o&&(s.attachAttempts=0,s.firstAttemptAt=null),et.add(t),Ht())}function je(){const t=Array.from(et);et.clear();for(let o=0;o<t.length;o++){const s=t[o],n=s.node,e=s.__ref?.__autoGrow;if(!(!n||!e||!e.active)){if(!n.isConnected){e.firstAttemptAt==null&&(e.firstAttemptAt=dt()),e.attachAttempts+=1,e.attachAttempts<=Yo&&dt()-e.firstAttemptAt<qo&&(et.add(s),Ht());continue}e.attachAttempts=0,e.firstAttemptAt=null,e.resize()}}}function Hs(t,o){if(o.watch)return;const s=t.node;if(!s)return;const n=s.ownerDocument&&s.ownerDocument.defaultView,e=n&&n.ResizeObserver||(typeof ResizeObserver=="function"?ResizeObserver:null);if(typeof e!="function")return;const c=()=>{if(!o.active||!s.isConnected||!(s.scrollHeight>0))return;if(o.awaitingLayout){o.awaitingLayout=!1,Lt(t,!0);return}const r=s.clientWidth;o.lastWidth!=null&&Math.abs(r-o.lastWidth)<.5||(o.lastWidth=r,Lt(t,!0))};let a;try{a=new e(c),a.observe(s)}catch{return}o.watch=a}function Us(t){const o=t.watch;if(o){t.watch=null;try{o.disconnect()}catch{}}}function Ee(t,o){if(o.fontsHooked)return;o.fontsHooked=!0;const s=t.node&&t.node.ownerDocument,n=s&&s.fonts&&s.fonts.ready;!n||typeof n.then!="function"||n.then(()=>{o.active&&t.node&&Lt(t,!0)},()=>{})}function Pe(t){const o=t.ownerDocument&&t.ownerDocument.defaultView;try{return o&&o.getComputedStyle?o.getComputedStyle(t):null}catch{return null}}const rt=t=>typeof t=="string"&&/^\s*-?\d*\.?\d+px\s*$/.test(t)?parseFloat(t):null,vo=t=>(rt(t.paddingTop)||0)+(rt(t.paddingBottom)||0),Vs=t=>(rt(t.borderTopWidth)||0)+(rt(t.borderBottomWidth)||0);function Oe(t){if(!t)return!1;const o=String(t.transitionProperty||"").split(","),s=String(t.transitionDuration||"0s").split(",");for(let n=0;n<o.length;n++){const e=o[n].trim();if(!(e!=="all"&&e!=="height")&&parseFloat(s[n%s.length])>0)return!0}return!1}function jo(t){if(typeof t.getAnimations!="function")return;let o;try{o=t.getAnimations()}catch{return}for(let s=0;s<o.length;s++){const n=o[s];if(n&&n.transitionProperty==="height")try{n.cancel()}catch{}}}function Te(t,o){if(!o||!t.hasAttribute||!t.hasAttribute("rows"))return null;const s=parseInt(t.getAttribute("rows"),10);if(!(s>0))return null;const n=rt(o.lineHeight)||De(t,o);return n>0?s*n+vo(o):null}const Rt=["fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontFamily","lineHeight","letterSpacing"],Gs=new WeakMap;function De(t,o){const s=t.ownerDocument,n=s&&(s.body||s.documentElement);if(!n||!s.createElement)return null;let e=Gs.get(s);e||(e=new Map,Gs.set(s,e));const c=Rt.map(f=>o[f]||"").join("|");if(e.has(c))return e.get(c);const a=s.createElement("textarea");a.rows=1,a.setAttribute("aria-hidden","true"),a.tabIndex=-1;const r=a.style;r.position="absolute",r.visibility="hidden",r.top="0",r.left="-9999px",r.height="auto",r.minHeight="0",r.maxHeight="none",r.padding="0",r.border="0",r.boxSizing="content-box",r.overflow="hidden";for(let f=0;f<Rt.length;f++)o[Rt[f]]&&(r[Rt[f]]=o[Rt[f]]);let i=0;try{n.appendChild(a),i=a.clientHeight}catch{i=0}finally{a.parentNode&&a.parentNode.removeChild(a)}return i>0?(e.set(c,i),i):null}function Le(t,o){return o?o.boxSizing==="border-box"?t+Vs(o):o.boxSizing==="content-box"?Math.max(0,t-vo(o)):t:t}function Re(t){if(!t)return null;const o=rt(t.maxHeight);if(o==null||!(o>0))return null;const s=vo(t),n=Vs(t),e=t.boxSizing==="border-box"?o-n:o+s,c=rt(t.lineHeight);if(!(c>0))return e;const a=Math.floor((e-s)/c+1e-6);return a>=1?a*c+s:e}function Ks(t,o,s){s?o.appliedScroll||(t.style.overflowY="auto",o.appliedScroll=!0):o.appliedScroll&&(t.style.overflowY==="auto"&&(t.style.overflowY=""),o.appliedScroll=!1)}const Ws=["srcObject","muted"],Me=(t,o)=>t==="muted"?o===!0||o===""||o==="true"||o==="muted":o??null;function Ne(t){const o=t.node,s=t.__ref;if(!(!o||!s))for(let n=0;n<Ws.length;n++){const e=Ws[n],c=t[e];if(c===void 0||!(e in o))continue;const a=r=>{const i=Me(e,r);if(o[e]!==i)try{o[e]=i}catch(f){L(s,e,f)}};if(typeof c=="function"){const r=T(t,t[e+"Deps"],c),i=j(()=>{try{a(r(t,t.state,t.context))}catch(f){L(s,e,f)}},{depth:s.path.length,label:v(s,e)});s.__effects.push(i),s.__exec[e]=c}else a(c);e==="srcObject"&&(s.__releaseMedia=()=>{try{o.srcObject!=null&&(o.srcObject=null)}catch{}})}}function Fe(t){if(!t.autoGrow)return;const o=t.node;if(!o||o.tagName!=="TEXTAREA")return;const s=t.__ref,n=t.autoGrow,e=typeof n=="function"?T(t,t.autoGrowDeps,n):null,c=j(()=>{const a=t.autoGrow;let r=a;if(typeof a=="function")try{r=(a===n&&e?e:a)(t,t.state,t.context)}catch{r=null}ve(t,r)},{depth:s.path.length,label:v(s,"autoGrow")});s.__effects||(s.__effects=[]),s.__effects.push(c),e&&(s.__exec.autoGrow=n)}const zs=new Set(["onSwipe","onSwipeLeft","onSwipeRight","onSwipeUp","onSwipeDown"]);function Ys(t,o){for(const s of Object.keys(t)){if(!Z(s)||zs.has(s))continue;const n=fn(s);if(n){cn(n,t,t[s]);continue}let e=t[s],c=null;if(e&&typeof e=="object"&&!Array.isArray(e)&&(c=e,e=c.handler),typeof e=="string"&&/^[A-Za-z_$][\w$]*$/.test(e)){const r=e;e=function(f){return t.call(r,f)}}if(typeof e!="function")continue;const a=Pn(s);en.has(a)||rn(On(a),t,e,c)}$e(t)}function $e(t){const o=t.node;if(!o||!o.addEventListener)return;const s={};let n=!1;for(const l of zs){const g=t[l];typeof g=="function"&&(s[l]=g,n=!0)}if(!n)return;const e=typeof t.swipeThreshold=="number"?t.swipeThreshold:40,c=typeof t.swipeMaxDuration=="number"?t.swipeMaxDuration:600;let a=0,r=0,i=0,f=!1;const d=l=>{const g=l.touches&&l.touches[0]||l.changedTouches&&l.changedTouches[0];g&&(a=g.clientX,r=g.clientY,i=Date.now(),f=!0)},u=l=>{if(!f)return;f=!1;const g=l.changedTouches&&l.changedTouches[0]||l.touches&&l.touches[0];if(!g)return;const x=g.clientX-a,p=g.clientY-r,h=Date.now()-i;if(h>c)return;const _=Math.abs(x),w=Math.abs(p);if(Math.max(_,w)<e)return;let y;if(_>w*1.2)y=x<0?"left":"right";else if(w>_*1.2)y=p<0?"up":"down";else return;const b="onSwipe"+y.charAt(0).toUpperCase()+y.slice(1),A=s[b],S=s.onSwipe;A&&A.call(t,l,t,t.state,t.context),S&&S.call(t,{direction:y,dx:x,dy:p,dt:h,event:l},t,t.state,t.context)};o.addEventListener("touchstart",d,{passive:!0}),o.addEventListener("touchend",u,{passive:!0}),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{o.removeEventListener("touchstart",d)}catch{}try{o.removeEventListener("touchend",u)}catch{}})}function it(t,o){const s={...t};for(const n in o){const e=s[n],c=o[n];e&&c&&typeof e=="object"&&typeof c=="object"&&!Array.isArray(e)&&!Array.isArray(c)&&typeof e!="function"&&typeof c!="function"?s[n]=it(e,c):s[n]=c}return s}function Eo(t,o,s,n,e){if(!o||!t.node)return;const c=t.childExtends,a=pt(t,"childProps");if(Array.isArray(o)){const r=t.tag==="fragment",i=t.context?.document||globalThis.document,f=r?null:i?.createDocumentFragment();if(!r&&!f)return;const d=t.childProps,u=t.childrenAs,l=y=>{let b=o[y];const A=b;(typeof b=="string"||typeof b=="number")&&(b={text:b});let S=d;if(typeof d=="function")try{S=d(t,b)}catch{S=null}let C=typeof d=="function"?jt(S):a;if(e&&u!=="state"&&(C=Et(C,jt(A))),u==="state"){let E=A;(typeof A=="string"||typeof A=="number")&&(E={value:A,text:A}),b=S?{...S,state:E}:{state:E}}else S&&(b=it(S,b));if(c&&!b.ignoreChildExtends)if(b.extends){const E=Array.isArray(b.extends)?b.extends:[b.extends],V=Array.isArray(c)?c:[c];b={...b,extends:[...V,...E]}}else b={...b,extends:c};const k=Qo(b?.key,A,y,t);try{return m(Pt(b,C),t,k,s)}catch(E){if(typeof console<"u"&&console.error){const V=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${k}" failed to construct at ${V} (initial render, skipping this row):`,E?.message||E)}return null}},g=t.__ref;if(!(n===!0&&!r&&!!g&&(s?.mountYield===!0||t.yieldChildren===!0))){for(let y=0;y<o.length;y++){const b=l(y);!r&&b?.node&&f.appendChild(b.node)}return r||t.node.appendChild(f),!0}const p=g.__childrenChunkGen=(g.__childrenChunkGen||0)+1;Ro();const h=Fo();let _=null;const w=y=>{if(g.__disposed||g.__childrenChunkGen!==p){_&&_.parentNode&&_.remove();return}for(let b=y;b<o.length;b++){h.begin();const A=l(b);A?.node&&(_?t.node.insertBefore(A.node,_):f.appendChild(A.node));const S=h.end();if(b+1<o.length&&Lo(S)){_||(_=i.createComment("smbls-mount"),f.appendChild(_),t.node.appendChild(f));const C=b+1;No(()=>w(C));return}}_?(_.remove(),t.node.tagName==="SELECT"&&Zt(t,!0)):t.node.appendChild(f)};return w(0),Mo(),!0}if(typeof o=="string"){const r=ss(o,t);if(Array.isArray(r))return Eo(t,r,s,n,!0)}if(typeof o=="object")for(const r in o){if(H.has(r))continue;let i=o[r];if(i==null||i===!1)continue;const f=e?Et(a,jt(i)):a;if((typeof i=="string"||typeof i=="number")&&(i={text:i}),t.childProps&&(i=it(t.childProps,i)),c&&!i.ignoreChildExtends)if(i.extends){const d=Array.isArray(i.extends)?i.extends:[i.extends],u=Array.isArray(c)?c:[c];i={...i,extends:[...u,...d]}}else i={...i,extends:c};m(Pt(i,f),t,Vt(t,r),s)}}function Zt(t,o){const s=t.node;if(!s||s.tagName!=="SELECT")return;const n=s.options;if(!n||!n.length)return;const e=t.__ref,c=e&&e.__exec&&e.__exec.value,a=typeof c=="function",r=t.value!=null&&typeof t.value!="function";if(a||r){let d;if(a)try{d=c(t,t.state,t.context)}catch{return}else d=t.value,typeof d=="string"&&d.includes("{{")&&(d=$.call(t,d,t.state));const u=d==null?"":String(d);s.value!==u&&(s.value=u);return}const i=o||!(e&&e.__selectSynced);if(e&&(e.__selectSynced=!0),!i)return;let f=-1;for(let d=0;d<n.length;d++)n[d].defaultSelected&&(f=d);f>=0&&s.selectedIndex!==f&&(s.selectedIndex=f)}function qs(t,o){let{children:s,content:n}=t;const e=t.childExtends,c=typeof s=="function"||us(t,"children");if(typeof s=="function"){const p=s;try{s=p(t,t.state,t.context)}catch(b){if(s=void 0,typeof console<"u"&&console.error){const A=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${A} (initial run, treating as empty):`,b?.message||b)}}ds(t,s),t.children=s;const h=t.__ref;let _=!1;const w=T(t,t.childrenDeps,p),y=j(()=>{const b=_;_=!0;let A;try{A=w(t,t.state,t.context)}catch(R){if(typeof console<"u"&&console.error){const N=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${N}${b?"":" (initial tracking run)"}:`,R?.message||R)}return}if(!b||A===t.children)return;ds(t,A),t.children=A,h.__childrenChunkGen!=null&&h.__childrenChunkGen++;const S=typeof t.onContentUpdate=="function",C=S?[]:null,k=S?[]:null,E=S?[]:null;if(Array.isArray(A)&&t.childrenAs==="state"){const R=t.childProps,N=[],Oo=new Map;for(let P=0;P<A.length;P++){const G=A[P];let O=R;if(typeof R=="function")try{O=R(t,G)}catch{O=null}const z=Qo(O&&O.key,G,P,t);N.push(z),Oo.set(z,{rawChild:G,childProps:O})}const Qs=new Set(N),Xs=h.__children.slice();for(const P of Xs)if(!Qs.has(P)){const G=t[P];G?.remove&&G.remove(),delete t[P],k&&k.push(P)}const _t=t.childExtends,Mt=t.tag==="fragment",Js=t.context?.document||globalThis.document,gt=Mt?null:Js?.createDocumentFragment(),Xt=new Set;for(const P of N){const G=Oo.get(P),O=G.rawChild,z=t[P];if(z&&z.state){if(O&&typeof O=="object"){const F=z.state,ft=F.$replace||F.replace,To=F.$update||F.update;try{if(typeof ft=="function")ft.call(F,O);else if(typeof To=="function"){for(const B in F)if(!(B==="__element"||B==="root"||B==="parent"||B==="update")&&!Object.prototype.hasOwnProperty.call(O,B))try{F[B]=void 0}catch{}To.call(F,O)}else for(const B in O)F[B]=O[B]}catch(B){if(typeof console<"u"&&console.error){const tn=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${P}" failed to patch at ${tn} (reconcile, keeping its previous data for this pass):`,B?.message||B)}}}E&&E.push(P);continue}let Jt=O;(typeof O=="string"||typeof O=="number")&&(Jt={value:O,text:O});const mt=G.childProps;let K=mt?{...mt,state:Jt}:{state:Jt};const ms=typeof R=="function"?jt(mt):pt(t,"childProps");if(_t&&!K.ignoreChildExtends)if(K.extends){const F=Array.isArray(K.extends)?K.extends:[K.extends],ft=Array.isArray(_t)?_t:[_t];K={...K,extends:[...ft,...F]}}else K={...K,extends:_t};let to;try{to=m(Pt(K,ms),t,P,o)}catch(F){if(typeof console<"u"&&console.error){const ft=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${P}" failed to construct at ${ft} (reconcile, skipping this row):`,F?.message||F)}Xt.add(P);continue}!Mt&&to?.node&&gt&&gt.appendChild(to.node),C&&C.push(P)}if(!Mt&&gt&&gt.childNodes.length&&t.node&&t.node.appendChild(gt),!Mt&&t.node){let P=null;for(const G of N){const O=t[G]?.node;if(!O)continue;const z=P?P.nextSibling:t.node.firstChild;O!==z&&t.node.insertBefore(O,z),P=O}}h.__children=Xt.size?N.filter(P=>!Xt.has(P)):N,S&&(C.length||k.length)&&Zo(t,{added:C,removed:k,kept:E}),Zt(t,!1);return}const M=S?[...h.__children]:null;for(const R of[...h.__children]){const N=t[R];N?.remove&&N.remove(),delete t[R]}h.__children=[],Eo(t,A,o,!1,!0),Zt(t,!1),S&&Zo(t,{added:[...h.__children],removed:M,kept:[]})},{depth:h.path.length,label:v(h,"children")});h.__effects.push(y)}const a=Eo(t,s,o,!0,c);if(n!=null&&!(n&&n.__ref)){let p=n;if(typeof p=="string"||typeof p=="number"?p={text:p}:typeof p!="object"&&(p={}),t.childProps&&(p=it(t.childProps,p)),e&&!p.ignoreChildExtends)if(p.extends){const _=Array.isArray(p.extends)?p.extends:[p.extends],w=Array.isArray(e)?e:[e];p={...p,extends:[...w,..._]}}else p={...p,extends:e};const h=Et(pt(t,"childProps"),pt(t,"content"));m(Pt(p,h),t,"content",o)}if(s&&!a)return;const r=t.context?.components||{},i=t.__ref&&t.__ref.__runtimeSource,f=i?{}:null;{const p=Object.keys(t);for(let h=0;h<p.length;h++){const _=p[h];if(!_.endsWith("Extends")||typeof t[_]!="string")continue;const w=_.slice(0,-7);if(!w||w.charCodeAt(0)<65||w.charCodeAt(0)>90)continue;const y={extends:t[_]};delete t[_];for(let b=h+1;b<p.length;b++){const A=p[b],S=A.charCodeAt(0);if(S>=65&&S<=90||H.has(A)||typeof t[A]=="function"&&(A.startsWith("on")||A.startsWith(".")))break;const C=t[A];C!==void 0&&(y[A]=C,delete t[A],f&&vt(i,A)&&(f[w]||(f[w]={}),f[w][A]=i[A]))}t[w]&&typeof t[w]=="object"?t[w]={...y,...t[w]}:t[w]=y}}const d=o?.mountYield===!0||t.yieldChildren===!0,u=Object.keys(t),l=p=>{if(H.has(p)||typeof t[p]!="object"||t[p]===null)return;const h=p.charCodeAt(0);if(h<65||h>90)return;let _=t[p];if(_.__ref)return;if(!_.extends&&!_.extend){const y=r[p]||r[`smbls.${p}`];y&&(_={..._,extends:y})}if(t.childProps&&(_=it(t.childProps,_)),e&&!_.ignoreChildExtends)if(_.extends){const y=Array.isArray(_.extends)?_.extends:[_.extends],b=Array.isArray(e)?e:[e];_={..._,extends:[...b,...y]}}else _={..._,extends:e};const w=i?Et(pt(t,"childProps"),Et(f[p]||null,pt(t,p))):null;m(Pt(_,w),t,p,o)};if(!d){for(const p of u)l(p);return}Ro();const g=Fo(),x=p=>{for(let h=p;h<u.length;h++){g.begin(),l(u[h]);const _=g.end();if(h+1<u.length&&Lo(_)){const w=h+1;No(()=>x(w));return}}};x(0),Mo()}function Zs(t,o,s){const{node:n}=t;if(!n)return;n.ref=t;const e=o?.tag==="fragment"?o.__ref?.__fragmentAnchor:null;if(e){const a=e.parentNode;if(a){if(s?.position==="before"&&s.node)a.insertBefore(n,s.node);else if(s?.position==="after"&&s.node){const r=s.node.nextSibling;a.insertBefore(n,r||e)}else a.insertBefore(n,e);return}}const c=o?.node||(o?.nodeType?o:null);if(c)if(s?.position==="before"&&s.node)c.insertBefore(n,s.node);else if(s?.position==="after"&&s.node){const a=s.node.nextSibling;a?c.insertBefore(n,a):c.appendChild(n)}else c.appendChild(n)}const Po=3;function Ie(t){return!t||t.__inBeforeUpdate||(t.__beforeUpdateFailCount||0)>=Po?!1:(t.__inBeforeUpdate=!0,!0)}function Qt(t,o){t&&(t.__inBeforeUpdate=!1,o?(t.__beforeUpdateFailCount=(t.__beforeUpdateFailCount||0)+1,t.__beforeUpdateFailCount===Po&&typeof console<"u"&&console.error&&console.error(`[DOMQL] onBeforeUpdate failed ${Po}x in a row on this element \u2014 pausing automatic retries until a future prop/state change re-arms it.`)):t.__beforeUpdateFailCount=0)}function D(t,o,s){const n=t.charAt(0).toLowerCase()+t.slice(1);bt(n,o,s);const e="on"+t,c=o[e];if(typeof c=="function"){const i=t==="Render"?"__inRender":t==="RenderRouter"?"__inRenderRouter":null;if(i){if(o.__ref[i])return!0;o.__ref[i]=!0}const f=o.context?.designSystem;f&&Y(f);let d=!!i;try{const u=c(o,o.state,o.context,s);if(u&&typeof u.then=="function"){const l=o.__ref;return u.catch(g=>{$t(o,e,g)}).finally(()=>{i&&l&&(l[i]=!1)}),d=!1,!0}if(u===!1)return!1}catch(u){if($t(o,e,u),o.context?.strictMode)throw u}finally{f&&q(),d&&o.__ref&&(o.__ref[i]=!1)}}return!0}var yr=m;export{Po as BEFORE_UPDATE_MAX_CONSECUTIVE_FAILURES,Ie as acquireBeforeUpdateGuard,m as create,yr as default,ro as flushMounts,lr as isStaticCssProp,pr as recompileStaticCss,hr as reconcileAttrProp,Qt as releaseBeforeUpdateGuard,qt as resolveStyleBlock,Kt as writeAttr,Gt as writeElementText};
1
+ import{installElementFeatures as e}from"./install.js";import{create as o,default as a,flushMounts as s,holdMountFlush as i,attachElement as c,writeElementText as u,writeAttr as E,resolveStyleBlock as m,isStaticCssProp as n,recompileStaticCss as p,reconcileAttrProp as d,BEFORE_UPDATE_MAX_CONSECUTIVE_FAILURES as f,acquireBeforeUpdateGuard as A,releaseBeforeUpdateGuard as S}from"./core.js";e();export{f as BEFORE_UPDATE_MAX_CONSECUTIVE_FAILURES,A as acquireBeforeUpdateGuard,c as attachElement,o as create,a as default,s as flushMounts,i as holdMountFlush,n as isStaticCssProp,p as recompileStaticCss,d as reconcileAttrProp,S as releaseBeforeUpdateGuard,m as resolveStyleBlock,E as writeAttr,u as writeElementText};
@@ -1 +1 @@
1
- import*as e from"@symbo.ls/css";if(!e.CSS_SHORTHAND_LONGHANDS||!e.CSS_LONGHAND_SHORTHANDS)throw new Error("@symbo.ls/element: the installed @symbo.ls/css does not export CSS_SHORTHAND_LONGHANDS / CSS_LONGHAND_SHORTHANDS (the CSS shorthand family table, packages/css/src/cssLonghands.js). This element needs the @symbo.ls/css published in the same release \u2014 update @symbo.ls/css.");const a=e.CSS_SHORTHAND_LONGHANDS,N=e.CSS_LONGHAND_SHORTHANDS,r=e.cssShorthandStatesLonghand||(()=>!1),S=s=>s.charCodeAt(0)===45&&s.charCodeAt(1)===45,c=e.cssPropName||(s=>S(s)?s:s.replace(/[A-Z]/g,t=>"-"+t.toLowerCase())),H=e.cssCamelName||(s=>S(s)?s:s.replace(/-([a-z])/g,(t,o)=>o.toUpperCase()));export{N as CSS_LONGHAND_SHORTHANDS,a as CSS_SHORTHAND_LONGHANDS,H as cssCamelName,c as cssPropName,r as cssShorthandStatesLonghand};
1
+ import*as e from"@symbo.ls/css";if(!e.CSS_SHORTHAND_LONGHANDS||!e.CSS_LONGHAND_SHORTHANDS)throw new Error("@symbo.ls/element: the installed @symbo.ls/css does not export CSS_SHORTHAND_LONGHANDS / CSS_LONGHAND_SHORTHANDS (the CSS shorthand family table, packages/css/src/cssLonghands.js). This element needs the @symbo.ls/css published in the same release \u2014 update @symbo.ls/css.");const r=e.CSS_SHORTHAND_LONGHANDS,N=e.CSS_LONGHAND_SHORTHANDS,a=e.cssShorthandStatesLonghand||(()=>!1),c=e.cssShorthandStatesThemeLonghand||a,o=s=>s.charCodeAt(0)===45&&s.charCodeAt(1)===45,n=e.cssPropName||(s=>o(s)?s:s.replace(/[A-Z]/g,t=>"-"+t.toLowerCase())),h=e.cssCamelName||(s=>o(s)?s:s.replace(/-([a-z])/g,(t,S)=>S.toUpperCase()));export{N as CSS_LONGHAND_SHORTHANDS,r as CSS_SHORTHAND_LONGHANDS,h as cssCamelName,n as cssPropName,a as cssShorthandStatesLonghand,c as cssShorthandStatesThemeLonghand};
@@ -1 +1 @@
1
- import{DELEGATED_EVENTS as C,LIFECYCLE_EVENTS as A,PASSIVE_EVENTS as d,NON_BUBBLING_EVENTS as T}from"./registry.js";import{isLoudDevRuntime as V}from"./devRuntime.js";import{pushConfig as I,popConfig as h}from"@symbo.ls/scratch";const p=new WeakMap,Q={passive:!0},R={passive:!0,capture:!0},y=(e,t)=>d.has(e)?t?R:Q:t||!1;function w(e){let t=p.get(e);return t||(t={handlers:new Map,installed:new Set},p.set(e,t)),t}function x(e,t){const n=w(t);if(n.installed.has(e))return;n.installed.add(e);const r=e==="focus"||e==="blur"||e==="focusin"||e==="focusout"||e==="mouseenter"||e==="mouseleave"||e==="pointerenter"||e==="pointerleave",o=e==="mouseenter"||e==="mouseleave"||e==="pointerenter"||e==="pointerleave";t.addEventListener(e,i=>{if(o){const u=i.target,c=n.handlers.get(e),l=c&&u?c.get(u):null;if(!l||i.relatedTarget&&typeof u.contains=="function"&&u.contains(i.relatedTarget))return;l(i);return}let s=i.target;for(;s&&s!==t;){const u=n.handlers.get(e);if(u){const c=u.get(s);if(c&&(c(i),i.cancelBubble))return}s=s.parentNode}},y(e,r))}function B(e,t,n,r){r||(r=t.ownerDocument?.documentElement||t.getRootNode());const o=w(r);x(e,r),o.handlers.has(e)||o.handlers.set(e,new WeakMap),o.handlers.get(e).set(t,n)}function O(e,t,n){n||(n=t.ownerDocument?.documentElement||t.getRootNode());const r=p.get(n);if(!r)return;const o=r.handlers.get(e);o&&o.delete(t)}function q(e){return C.has(e)&&!A.has(e)}function v(e,t){const{context:n}=e,r=n?.designSystem;return o=>{r&&I(r);try{const i=t.call(e,o,e,e.state,n);if(i&&typeof i.then=="function"){i.catch(s=>{e.error=s,console.error("[DOMQL] Async event error:",s)}).finally(()=>{r&&h()});return}}catch(i){if(e.error=i,console.error("[DOMQL] Event error:",i),n?.strictMode)throw i}r&&h()}}const L=e=>!!e&&(e.capture===!0||typeof e.passive=="boolean"||e.once===!0);function G(e,t){return L(t)?{capture:t.capture===!0,passive:typeof t.passive=="boolean"?t.passive:d.has(e),once:t.once===!0}:y(e,!1)}function P(e,t,n){return r=>{let o=r.target;if(o&&o.nodeType!==1&&(o=o.parentElement),!o||typeof o.closest!="function")return;let i;try{i=o.closest(t)}catch{return}i&&e.contains(i)&&n(r)}}function Z(e,t,n,r){const{node:o,context:i}=t;if(!o)return;let s=v(t,n);const u=r&&typeof r.selector=="string"&&r.selector;u&&(s=P(o,u,s));const l=!T.has(e)&&q(e)&&!L(r),a=l?null:G(e,r);if(l){const f=i?.rootNode||o.ownerDocument?.documentElement;B(e,o,s,f)}else o.addEventListener(e,s,a);t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{if(l){const f=i?.rootNode||o.ownerDocument?.documentElement;O(e,o,f)}else o.removeEventListener(e,s,a)})}const g=[["onDocument","document"],["onWindow","window"],["onVisualViewport","visualViewport"],["onMediaQuery","mediaQuery"]];function J(e){if(typeof e!="string")return null;for(let t=0;t<g.length;t++){const n=g[t][0];if(e.length<=n.length||!e.startsWith(n))continue;const r=e.charCodeAt(n.length);if(!(r<65||r>90))return{target:g[t][1],eventName:e.slice(n.length).toLowerCase()}}return null}const W=/^[A-Za-z_$][\w$]*$/;function $(e,t,n){let r=t,o=!1,i,s=!1,u=null;if(t&&typeof t=="object"&&typeof t!="function"&&(r=t.handler,o=!!t.capture,s=!!t.once,typeof t.passive=="boolean"&&(i=t.passive),typeof t.query=="string"&&(u=t.query)),typeof r=="string"&&W.test(r)){const c=r;r=function(a){return e.call(c,a)}}return typeof r!="function"?null:(i===void 0&&(i=d.has(n)),{handler:r,capture:o,passive:i,once:s,query:u})}function U(e,t,n){const r=e.node?.ownerDocument||e.context?.document||(typeof document<"u"?document:null);if(!r||typeof r.addEventListener!="function")return null;if(t==="document")return r;const o=r.defaultView||(typeof window<"u"?window:null);if(!o)return null;if(t==="window")return typeof o.addEventListener=="function"?o:null;if(t==="visualViewport"){const i=o.visualViewport;return i&&typeof i.addEventListener=="function"?i:null}if(t==="mediaQuery"){const i=n&&n.query;if(typeof i!="string"||!i.trim()||typeof o.matchMedia!="function")return null;try{return o.matchMedia(i)||null}catch{return null}}return null}const E=/^@media\s+/i,F=/^[@[.#&:>*~+]/,b=new Set;function m(e,t){!V()||b.has(e)||(b.add(e),console.warn(`[smbls] onMediaQueryChange: "${e}" ${t} \u2014 no listener is registered.`))}function H(e,t){if(typeof t!="string")return null;const n=t.trim();if(!n)return null;const r=e.context?.designSystem?.media,o=s=>{const u=r&&typeof r=="object"?r[s]:void 0;return typeof u=="string"&&u.trim()?u.trim():null};let i=n;if(n.charCodeAt(0)===64&&!E.test(n)){if(i=o(n.slice(1)),!i)return m(n,"is not a key of designSystem.media"),null}else i=o(n)||n;return E.test(i)?i.replace(E,"").trim()||null:F.test(i)?(m(n,`names "${i}", which is not a media query`),null):i}function K(e,t,n,r){try{return e.addEventListener(t,n,r),!0}catch{return typeof e.addListener=="function"?(e.addListener(n),!0):!1}}function D(e,t,n,r){try{e.removeEventListener(t,n,r)}catch{typeof e.removeListener=="function"&&e.removeListener(n)}}function j(e){const t=e.node;if(!t)return!1;const n=t.nodeType===11?e.__ref?.__fragmentAnchor:t;return n?n.isConnected!==!1:!1}function N(e,t,n){if(t.__ref){if(Array.isArray(n)){if(e.target!=="mediaQuery")return;for(let o=0;o<n.length;o++)M(e,t,n[o]);return}M(e,t,n)}}function M(e,t,n){const r=t.__ref,o=$(t,n,e.eventName);if(!o||e.target==="mediaQuery"&&e.eventName!=="change"||e.target==="mediaQuery"&&(o.query=H(t,o.query),!o.query))return;const i=U(t,e.target,o);if(!i)return;const s=e.target+":"+(o.query?o.query+":":"")+e.eventName+":"+(o.capture?1:0);if(r.__globalEvents&&r.__globalEvents.has(s))return;const u=v(t,o.handler),c=e.target==="window"&&e.eventName==="load";let l=!1;const a=S=>{if(j(t)){if(c){if(l)return;l=!0}u(S)}},f={capture:o.capture,passive:o.passive,once:o.once};if(!K(i,e.eventName,a,f))return;r.__globalEvents||(r.__globalEvents=new Map);const _={target:i,eventName:e.eventName,listener:a,options:f};r.__globalEvents.set(s,_),r.__eventCleanup||(r.__eventCleanup=[]),r.__eventCleanup.push(()=>{D(i,e.eventName,a,f),r.__globalEvents&&r.__globalEvents.delete(s)}),c&&Y(t,s,_,()=>l)}function Y(e,t,n,r){const o=n.target.document;!o||o.readyState!=="complete"||queueMicrotask(()=>{const i=e.__ref;if(r()||!i||!i.__globalEvents||i.__globalEvents.get(t)!==n)return;const s=n.target,u=typeof s.Event=="function"?s.Event:typeof Event=="function"?Event:null;u&&(n.listener(new u("load")),n.options.once&&r()&&D(s,"load",n.listener,n.options))})}export{B as addDelegatedEvent,J as globalEventKeyInfo,q as isDelegatable,Z as registerEvent,N as registerGlobalEvent,O as removeDelegatedEvent};
1
+ import{DELEGATED_EVENTS as S,LIFECYCLE_EVENTS as A,PASSIVE_EVENTS as d,NON_BUBBLING_EVENTS as x}from"./registry.js";import{isLoudDevRuntime as T}from"./devRuntime.js";import{isElementConnected as V,whenConnected as Q}from"./connected.js";import{pushConfig as R,popConfig as h}from"@symbo.ls/scratch";const p=new WeakMap,I={passive:!0},B={passive:!0,capture:!0},y=(e,t)=>d.has(e)?t?B:I:t||!1;function w(e){let t=p.get(e);return t||(t={handlers:new Map,installed:new Set},p.set(e,t)),t}function O(e,t){const o=w(t);if(o.installed.has(e))return;o.installed.add(e);const n=e==="focus"||e==="blur"||e==="focusin"||e==="focusout"||e==="mouseenter"||e==="mouseleave"||e==="pointerenter"||e==="pointerleave",r=e==="mouseenter"||e==="mouseleave"||e==="pointerenter"||e==="pointerleave";t.addEventListener(e,i=>{if(r){const u=i.target,a=o.handlers.get(e),c=a&&u?a.get(u):null;if(!c||i.relatedTarget&&typeof u.contains=="function"&&u.contains(i.relatedTarget))return;c(i);return}let s=i.target;for(;s&&s!==t;){const u=o.handlers.get(e);if(u){const a=u.get(s);if(a&&(a(i),i.cancelBubble))return}s=s.parentNode}},y(e,n))}function q(e,t,o,n){n||(n=t.ownerDocument?.documentElement||t.getRootNode());const r=w(n);O(e,n),r.handlers.has(e)||r.handlers.set(e,new WeakMap),r.handlers.get(e).set(t,o)}function G(e,t,o){o||(o=t.ownerDocument?.documentElement||t.getRootNode());const n=p.get(o);if(!n)return;const r=n.handlers.get(e);r&&r.delete(t)}function ee(e){if(e.charCodeAt(0)!==111||e.charCodeAt(1)!==110)return!1;const t=e.charCodeAt(2);return t>=65&&t<=90}function te(e){return e.charAt(2).toLowerCase()+e.slice(3)}const P=/^[A-Za-z_$][\w$]*$/;function W(e,t){return typeof t!="string"||!P.test(t)?t:function(n){return e.call(t,n)}}function $(e){return S.has(e)&&!A.has(e)}function v(e,t){const{context:o}=e,n=o?.designSystem;return r=>{n&&R(n);try{const i=t.call(e,r,e,e.state,o);if(i&&typeof i.then=="function"){i.catch(s=>{e.error=s,console.error("[DOMQL] Async event error:",s)}).finally(()=>{n&&h()});return}}catch(i){if(e.error=i,console.error("[DOMQL] Event error:",i),o?.strictMode)throw i}n&&h()}}const L=e=>!!e&&(e.capture===!0||typeof e.passive=="boolean"||e.once===!0);function H(e,t){return L(t)?{capture:t.capture===!0,passive:typeof t.passive=="boolean"?t.passive:d.has(e),once:t.once===!0}:y(e,!1)}function U(e,t,o){return n=>{let r=n.target;if(r&&r.nodeType!==1&&(r=r.parentElement),!r||typeof r.closest!="function")return;let i;try{i=r.closest(t)}catch{return}i&&e.contains(i)&&o(n)}}function ne(e,t,o,n){const{node:r,context:i}=t;if(!r)return;let s=v(t,o);const u=n&&typeof n.selector=="string"&&n.selector;u&&(s=U(r,u,s));const c=!x.has(e)&&$(e)&&!L(n),f=c?null:H(e,n);if(c){const l=i?.rootNode||r.ownerDocument?.documentElement;q(e,r,s,l)}else r.addEventListener(e,s,f);t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{if(c){const l=i?.rootNode||r.ownerDocument?.documentElement;G(e,r,l)}else r.removeEventListener(e,s,f)})}const E=[["onDocument","document"],["onWindow","window"],["onVisualViewport","visualViewport"],["onMediaQuery","mediaQuery"]];function re(e){if(typeof e!="string")return null;for(let t=0;t<E.length;t++){const o=E[t][0];if(e.length<=o.length||!e.startsWith(o))continue;const n=e.charCodeAt(o.length);if(!(n<65||n>90))return{target:E[t][1],eventName:e.slice(o.length).toLowerCase()}}return null}function F(e,t,o){let n=t,r=!1,i,s=!1,u=null;return t&&typeof t=="object"&&typeof t!="function"&&(n=t.handler,r=!!t.capture,s=!!t.once,typeof t.passive=="boolean"&&(i=t.passive),typeof t.query=="string"&&(u=t.query)),n=W(e,n),typeof n!="function"?null:(i===void 0&&(i=d.has(o)),{handler:n,capture:r,passive:i,once:s,query:u})}function K(e,t,o){const n=e.node?.ownerDocument||e.context?.document||(typeof document<"u"?document:null);if(!n||typeof n.addEventListener!="function")return null;if(t==="document")return n;const r=n.defaultView||(typeof window<"u"?window:null);if(!r)return null;if(t==="window")return typeof r.addEventListener=="function"?r:null;if(t==="visualViewport"){const i=r.visualViewport;return i&&typeof i.addEventListener=="function"?i:null}if(t==="mediaQuery"){const i=o&&o.query;if(typeof i!="string"||!i.trim()||typeof r.matchMedia!="function")return null;try{return r.matchMedia(i)||null}catch{return null}}return null}const g=/^@media\s+/i,j=/^[@[.#&:>*~+]/,m=new Set;function b(e,t){!T()||m.has(e)||(m.add(e),console.warn(`[smbls] onMediaQueryChange: "${e}" ${t} \u2014 no listener is registered.`))}function Y(e,t){if(typeof t!="string")return null;const o=t.trim();if(!o)return null;const n=e.context?.designSystem?.media,r=s=>{const u=n&&typeof n=="object"?n[s]:void 0;return typeof u=="string"&&u.trim()?u.trim():null};let i=o;if(o.charCodeAt(0)===64&&!g.test(o)){if(i=r(o.slice(1)),!i)return b(o,"is not a key of designSystem.media"),null}else i=r(o)||o;return g.test(i)?i.replace(g,"").trim()||null:j.test(i)?(b(o,`names "${i}", which is not a media query`),null):i}function z(e,t,o,n){try{return e.addEventListener(t,o,n),!0}catch{return typeof e.addListener=="function"?(e.addListener(o),!0):!1}}function C(e,t,o,n){try{e.removeEventListener(t,o,n)}catch{typeof e.removeListener=="function"&&e.removeListener(o)}}function oe(e,t,o){if(t.__ref){if(Array.isArray(o)){if(e.target!=="mediaQuery")return;for(let r=0;r<o.length;r++)D(e,t,o[r]);return}D(e,t,o)}}function D(e,t,o){const n=t.__ref,r=F(t,o,e.eventName);if(!r||e.target==="mediaQuery"&&e.eventName!=="change"||e.target==="mediaQuery"&&(r.query=Y(t,r.query),!r.query))return;const i=K(t,e.target,r);if(!i)return;const s=e.target+":"+(r.query?r.query+":":"")+e.eventName+":"+(r.capture?1:0);if(n.__globalEvents&&n.__globalEvents.has(s))return;const u=v(t,r.handler),a=e.target==="window"&&e.eventName==="load";let c=!1;const f=M=>{if(V(t)){if(a){if(c)return;c=!0}u(M)}},l={capture:r.capture,passive:r.passive,once:r.once};if(!z(i,e.eventName,f,l))return;n.__globalEvents||(n.__globalEvents=new Map);const _={target:i,eventName:e.eventName,listener:f,options:l};n.__globalEvents.set(s,_),n.__eventCleanup||(n.__eventCleanup=[]),n.__eventCleanup.push(()=>{C(i,e.eventName,f,l),n.__globalEvents&&n.__globalEvents.delete(s)}),a&&X(t,s,_,()=>c)}function X(e,t,o,n){const r=o.target.document;!r||r.readyState!=="complete"||Q(e,()=>queueMicrotask(()=>{const i=e.__ref;if(n()||!i||!i.__globalEvents||i.__globalEvents.get(t)!==o)return;const s=o.target,u=typeof s.Event=="function"?s.Event:typeof Event=="function"?Event:null;u&&(o.listener(new u("load")),o.options.once&&n()&&C(s,"load",o.listener,o.options))}))}export{q as addDelegatedEvent,te as eventNameFrom,re as globalEventKeyInfo,$ as isDelegatable,ee as isHandlerKey,ne as registerEvent,oe as registerGlobalEvent,G as removeDelegatedEvent,W as stringHandler,v as wrapEventHandler};
@@ -1 +1 @@
1
- import{getObserver as n}from"@symbo.ls/signal";import{untrack as s}from"./runContext.js";import{destroyBridge as c}from"./bridge.js";function t(r){if(!r)return;const o=r.__ref;if(!o)return;if(n())return s(()=>t(r));o.__disposed=!0;try{typeof r.onBeforeRemove=="function"&&r.onBeforeRemove(r,r.state,r.context)}catch(e){console.error("[smbls] onBeforeRemove error:",e)}if(o.__bridge&&c(r),o.__effects){for(let e=0;e<o.__effects.length;e++)o.__effects[e].dispose();o.__effects.length=0}if(typeof o.__releaseMedia=="function"&&(o.__releaseMedia(),o.__releaseMedia=null),o.__eventCleanup){for(let e=0;e<o.__eventCleanup.length;e++)o.__eventCleanup[e]();o.__eventCleanup.length=0}if(o.__children){const e=o.__children.slice();o.__children.length=0;for(let _=0;_<e.length;_++){const f=r[e[_]];f&&f.__ref&&t(f)}}r.node?.parentNode?r.node.remove():r.tag==="fragment"&&o.__fragmentAnchor?.parentNode&&o.__fragmentAnchor.remove();const i=r.state?.$destroy||r.state?.destroy;if(typeof i=="function"&&r.state.__element===r&&i.call(r.state),r.parent?.__ref?.__children){const e=r.parent.__ref.__children.indexOf(r.key);e!==-1&&r.parent.__ref.__children.splice(e,1),delete r.parent[r.key]}try{typeof r.onRemove=="function"&&r.onRemove(r)}catch(e){console.error("[smbls] onRemove error:",e)}r.node=null,r.parent=null,r.__ref=null}function u(){t(this)}export{t as dispose,u as remove};
1
+ import{getObserver as a}from"@symbo.ls/signal";import{untrack as s}from"./runContext.js";import{destroyBridge as c}from"./bridge.js";import{FEATURES as d}from"./features.js";import{forgetConnected as p}from"./connected.js";function e(r){if(!r)return;const o=r.__ref;if(!o)return;if(o.__onConnected&&p(r),a())return s(()=>e(r));o.__disposed=!0;const t=o.__if===!1&&!o.__ifInitialized;if(!t)try{typeof r.onBeforeRemove=="function"&&r.onBeforeRemove(r,r.state,r.context)}catch(_){console.error("[smbls] onBeforeRemove error:",_)}if(o.__bridge&&c(r),o.__effects){for(let _=0;_<o.__effects.length;_++)o.__effects[_].dispose();o.__effects.length=0}if(typeof o.__releaseMedia=="function"&&(o.__releaseMedia(),o.__releaseMedia=null),o.__eventCleanup){for(let _=0;_<o.__eventCleanup.length;_++)o.__eventCleanup[_]();o.__eventCleanup.length=0}if(o.__children){const _=o.__children.slice();o.__children.length=0;for(let i=0;i<_.length;i++){const f=r[_[i]];f&&f.__ref&&e(f)}}if(o.__ifParked&&o.__ifParked.size){const _=[...o.__ifParked];o.__ifParked.clear();for(let i=0;i<_.length;i++){const f=r[_[i]];f&&f.__ref&&f.parent===r&&e(f)}}r.node?.parentNode?r.node.remove():r.tag==="fragment"&&o.__fragmentAnchor?.parentNode&&o.__fragmentAnchor.remove();const n=r.state?.$destroy||r.state?.destroy;if(typeof n=="function"&&r.state.__element===r&&n.call(r.state),r.parent?.__ref?.__children){const _=r.parent.__ref.__children.indexOf(r.key);_!==-1&&r.parent.__ref.__children.splice(_,1),r.parent.__ref.__ifParked&&r.parent.__ref.__ifParked.delete(r.key),delete r.parent[r.key]}if(!t)try{typeof r.onRemove=="function"&&r.onRemove(r)}catch(_){console.error("[smbls] onRemove error:",_)}o.__mount&&o.__mount.tail&&d.mount.abandon(r,o),r.node=null,r.parent=null,r.__ref=null}function y(){e(this)}export{e as dispose,y as remove};
@@ -1 +1 @@
1
- import{CSS_PROPS_REGISTRY as A}from"css-in-props";import{CSS_LONGHAND_SHORTHANDS as x,CSS_SHORTHAND_LONGHANDS as _,cssPropName as g,cssCamelName as S}from"./cssLonghands.js";const N=new WeakMap;function l(r){const t=[];return r.extends&&(Array.isArray(r.extends)?t.push(...r.extends):t.push(r.extends)),r.extend&&(Array.isArray(r.extend)?t.push(...r.extend):t.push(r.extend)),t}function w(r,t,e){const n=l(t);if(!n.length)return;const c=(r.context||e?.context||{}).components||{};for(let s=0;s<n.length;s++){const o=p(n[s],c);o&&o!==t&&y(r,o,e,new Set([t]))}}function p(r,t){if(typeof r=="string"){if(r.includes(">")){const e=r.split(">").map(a=>a.trim());let n=t[e[0]]||t[`smbls.${e[0]}`];for(let a=1;a<e.length&&n;a++)n=n[e[a]];return n||null}return t[r]||t[`smbls.${r}`]||null}return typeof r=="object"&&r!==null?r:null}function y(r,t,e,n=new Set){if(n.has(t))return;n.add(t);const a=l(t);if(a.length){const o=(r.context||e?.context||{}).components||{};for(let u=0;u<a.length;u++){const i=p(a[u],o);i&&y(r,i,e,n)}}const c=L(r);for(const s in t){if(s==="extends"||s==="extend")continue;const o=t[s];c&&c.mark(s),r[s]===void 0?o&&typeof o=="object"&&!Array.isArray(o)&&typeof o!="function"?r[s]={...o}:r[s]=o:typeof r[s]=="object"&&typeof o=="object"&&!Array.isArray(r[s])&&!Array.isArray(o)&&r[s]!==null&&o!==null?r[s]=h(r[s],o):r[s]=o}}class k{constructor(){this.rank=0,this.ranks=null}mark(t){b(t)&&(this.ranks||(this.ranks=new Map),this.ranks.set(t,this.rank))}get(t){return this.ranks?this.ranks.get(t):void 0}get size(){return this.ranks?this.ranks.size:0}}const f=new Set;for(const r of[x,_])for(const t in r)f.add(t),f.add(S(t));const d=new Map;function b(r){const t=r.charCodeAt(0);if(t>=65&&t<=90||t>=48&&t<=57)return!1;let e=d.get(r);return e===void 0&&(e=!!A[r]||f.has(r)||r.indexOf("-")>=0&&!(r.charCodeAt(0)===45&&r.charCodeAt(1)===45)&&f.has(g(r)),d.set(r,e)),e}function L(r){const t=r&&r.__ref;if(!t)return null;let e=t.__mergeLayer;return e||(e=t.__mergeLayer=new k),e.rank++,e}function j(r){const t=r&&r.__ref&&r.__ref.__mergeLayer;if(!t||!t.ranks)return;let e;for(const n of t.ranks.values())if(e===void 0)e=n;else if(n!==e)return;t.ranks=null}function h(r,t){const e={...r};for(const n in t){const a=e[n],c=t[n];a&&c&&typeof a=="object"&&typeof c=="object"&&!Array.isArray(a)&&!Array.isArray(c)&&typeof a!="function"&&typeof c!="function"?e[n]=h(a,c):e[n]=c}return e}export{w as applyExtends,j as closeMergeLayer,L as openMergeLayer};
1
+ import{CSS_PROPS_REGISTRY as x}from"css-in-props";import{CSS_LONGHAND_SHORTHANDS as _,CSS_SHORTHAND_LONGHANDS as g,cssPropName as S,cssCamelName as k}from"./cssLonghands.js";import{FEATURES as l}from"./features.js";const w=new WeakMap;function h(r){const t=[];return r.extends&&(Array.isArray(r.extends)?t.push(...r.extends):t.push(r.extends)),r.extend&&(Array.isArray(r.extend)?t.push(...r.extend):t.push(r.extend)),t}function R(r,t,n){const e=h(t);if(!e.length)return;const a=(r.context||n?.context||{}).components||{};for(let s=0;s<e.length;s++){const o=p(e[s],a);o&&o!==t&&y(r,o,n,new Set([t]))}}function p(r,t){if(typeof r=="string"){if(r.includes(">")){const n=r.split(">").map(c=>c.trim());let e=t[n[0]]||t[`smbls.${n[0]}`];for(let c=1;c<n.length&&e;c++)e=e[n[c]];return e||null}return t[r]||t[`smbls.${r}`]||null}return typeof r=="object"&&r!==null?r:null}function y(r,t,n,e=new Set){if(e.has(t))return;e.add(t);const c=h(t);if(c.length){const o=(r.context||n?.context||{}).components||{};for(let f=0;f<c.length;f++){const u=p(c[f],o);u&&y(r,u,n,e)}}const a=M(r);for(const s in t){if(s==="extends"||s==="extend")continue;const o=t[s];a&&a.mark(s);const f=l.chains;f!==null&&f(r,s,r[s],o)||(r[s]===void 0?o&&typeof o=="object"&&!Array.isArray(o)&&typeof o!="function"?r[s]={...o}:r[s]=o:typeof r[s]=="object"&&typeof o=="object"&&!Array.isArray(r[s])&&!Array.isArray(o)&&r[s]!==null&&o!==null?r[s]=A(r[s],o):r[s]=o)}}class b{constructor(){this.rank=0,this.ranks=null}mark(t){L(t)&&(this.ranks||(this.ranks=new Map),this.ranks.set(t,this.rank))}get(t){return this.ranks?this.ranks.get(t):void 0}get size(){return this.ranks?this.ranks.size:0}}const i=new Set;for(const r of[_,g])for(const t in r)i.add(t),i.add(k(t));const d=new Map;function L(r){const t=r.charCodeAt(0);if(t>=65&&t<=90||t>=48&&t<=57)return!1;let n=d.get(r);return n===void 0&&(n=!!x[r]||i.has(r)||r.indexOf("-")>=0&&!(r.charCodeAt(0)===45&&r.charCodeAt(1)===45)&&i.has(S(r)),d.set(r,n)),n}function M(r){const t=r&&r.__ref;if(!t)return null;let n=t.__mergeLayer;return n||(n=t.__mergeLayer=new b),n.rank++,n}function j(r){const t=r&&r.__ref&&r.__ref.__mergeLayer;if(!t||!t.ranks)return;let n;for(const e of t.ranks.values())if(n===void 0)n=e;else if(e!==n)return;t.ranks=null}function A(r,t){const n={...r},e=l.chains;for(const c in t){const a=n[c],s=t[c];e!==null&&e(n,c,a,s)||(a&&s&&typeof a=="object"&&typeof s=="object"&&!Array.isArray(a)&&!Array.isArray(s)&&typeof a!="function"&&typeof s!="function"?n[c]=A(a,s):n[c]=s)}return n}export{R as applyExtends,j as closeMergeLayer,A as deepMergeChild,M as openMergeLayer};
@@ -0,0 +1 @@
1
+ const l={viewEvents:null,chains:null,rows:null,hydration:null,mount:null};export{l as FEATURES};
@@ -0,0 +1 @@
1
+ import{LIFECYCLE_EVENTS as N}from"./registry.js";import{isLoudDevRuntime as S}from"./devRuntime.js";import{isHandlerKey as I,eventNameFrom as M}from"./delegate.js";const h=Symbol("handlerChain.none"),x=new Set(["inView","leaveView"]),L=new Set(["bridgeMount","bridgeUpdate","bridgeDestroy"]),c=new WeakMap,C=new WeakMap;let p=!1;const m=e=>e!==null&&typeof e=="object"&&e.always===!0;function V(e){const n=M(e);return x.has(n)?!0:N.has(n)&&!L.has(n)}const E=new Set;function _(e){E.has(e)||!S()||(E.add(e),console.warn(`[smbls] \`${e}: { always: true, \u2026 }\` \u2014 \`always\` composes the lifecycle hooks (onInit, onRender, onCreate, onMounted, onUpdate, onRemove, \u2026; not the bridge hooks) and onInView / onLeaveView only. \`${e}\` keeps the default merge: an extender's own \`${e}\` replaces this one. Run the shared step from a lifecycle hook, or call it from the extender's handler.`))}function y(e){return e&&typeof e=="object"?{handler:e.handler,options:e}:{handler:e,options:null}}function a(e,n){const t={always:e,own:n,list:n?e.concat(n):e,next:null,prims:null,cleared:null},r=function(...i){return A(t,this,i)};return c.set(r,t),p=!0,r}function w(e){let n=C.get(e);return n||(n=a([y(e)],null),C.set(e,n)),n}function F(e,n){const t=c.get(e);if(n==null||n===!1)return t.own?t.cleared||(t.cleared=a(t.always,null)):e;if(typeof n!="object"&&typeof n!="function"){const s=t.prims||(t.prims=new Map);let l=s.get(n);return l||s.set(n,l=a(t.always,y(n))),l}const r=t.next||(t.next=new WeakMap);let o=r.get(n);if(o)return o;const i=m(n)?c.get(w(n)):typeof n=="function"?c.get(n):void 0;return o=i?a(t.always.concat(i.always),i.own):a(t.always,y(n)),r.set(n,o),o}function H(e,n,t){const r=m(n),o=!r&&p&&typeof n=="function"&&c.has(n);if(!r&&!o&&!m(t))return h;if(!V(e))return _(e),h;const i=r?w(n):o?n:null;return i?F(i,t):w(t)}function D(e,n,t,r){if(!I(n))return!1;const o=H(n,t,r);return o===h?!1:(e[n]=o,!0)}function K(e){if(typeof e=="function"){const n=p?c.get(e):void 0;return n?n.list:[{handler:e,options:null}]}return typeof e=="string"?[{handler:e,options:null}]:e&&typeof e=="object"?[{handler:e.handler,options:e}]:[]}function A(e,n,t){const r=e.list;let o,i=!1,s=null,l=!1,b;for(let u=0;u<r.length;u++){const d=r[u].handler;if(typeof d!="function")continue;let f;try{f=d.apply(n,t)}catch(g){l?console.error("[smbls] lifecycle handler error:",g):(l=!0,b=g);continue}f===!1?i=!0:f&&typeof f.then=="function"&&(s||(s=[])).push(f),o=f}if(l){if(s)for(const u of s)u.then(null,d=>console.error("[smbls] lifecycle handler error:",d));throw b}return i?!1:s?s.length===1?s[0]:R(s):o}function R(e){return Promise.allSettled(e).then(n=>{let t=null;for(const r of n)r.status==="rejected"&&(t?console.error("[smbls] lifecycle handler error:",r.reason):t=r);if(t)throw t.reason})}export{D as chainHandler,K as handlerEntries,m as isAlwaysForm};
@@ -0,0 +1 @@
1
+ import{detectTag as _,isSvgTag as g,firstSlotAfterText as m,SVG_NS as p}from"./cache.js";const h=n=>{const t=n.__ref;if(t&&t.__hydrationPath!==void 0)return t.__hydrationPath;const r=n.parent,s=r&&r.__ref?h(r):null,o=s===null?"":s?s+"."+n.key:String(n.key);return t&&(t.__hydrationPath=o),o},y=new Set(["src","srcset"]);function v(n){const t=n?.context?.__hydration;if(!t)return null;const r=n.tag=_(n);if(r==="string"||r==="fragment")return null;const s=h(n),o=t.registry[s===""?"__root":s],e=o!==void 0?t.nodes[o]:null;if(!e||e.nodeType!==1||t.claimed.has(e))return o!==void 0&&t.misses++,null;const a=g(r)&&(r==="svg"||n.parent?.node?.namespaceURI===p),l=g(r)&&!a&&r!=="svg"?"div":r,c=a?e.namespaceURI===p:e.namespaceURI!==p;if(e.localName!==l||!c)return t.misses++,null;t.claimed.add(e),t.adopted++;const f=t.pending;if(f&&f.delete(e)){const i=e.parentNode,d=i?(t.pendingIn.get(i)||1)-1:0;d>0?t.pendingIn.set(i,d):i&&t.pendingIn.delete(i)}for(const i of Array.from(e.getAttributeNames?e.getAttributeNames():[]))y.has(i)||e.removeAttribute(i);if(f)for(let i=e.firstChild;i;){const d=i.nextSibling;f.has(i)||e.removeChild(i),i=d}else for(;e.firstChild;)e.removeChild(e.firstChild);return e.localName==="img"&&e.complete&&e.naturalWidth>0&&I(e),e}const x=500;function I(n){let t=!1,r=!1;const s=o=>{o.isTrusted&&(r?o.stopImmediatePropagation():t=!0,n.removeEventListener("load",s,!0))};n.addEventListener("load",s,!0),setTimeout(()=>{if(!t){if(!(n.complete&&n.naturalWidth>0)){n.removeEventListener("load",s,!0);return}r=!0,n.dispatchEvent(new Event("load")),setTimeout(()=>n.removeEventListener("load",s,!0),x)}},0)}function b(n,t,r,s,o){const e=n.pendingIn;if(!e||!e.has(s))return!1;if(o.parentNode===s&&n.claimed.has(o))return!0;let a;const l=r&&r.__ref,c=l&&l.__children,f=c?c.lastIndexOf(t.key):-1;for(let i=f-1;i>=0;i--){const d=r[c[i]],u=d&&d.node;if(u&&u!==o&&u.parentNode===s){a=u.nextSibling;break}}return a===void 0&&(a=m(s,l&&l.__textNode)),a===o||s.insertBefore(o,a),!0}const N={adopt:v,place:b};export{v as adoptHydrationNode,h as elementPath,N as hydrationFeature,b as placeDuringHydration};
@@ -1 +1 @@
1
- import{create as o,default as r,flushMounts as a}from"./create.js";import{update as E}from"./update.js";import{dispose as f,remove as n}from"./dispose.js";import{REGISTRY as m,LIFECYCLE_EVENTS as s,DELEGATED_EVENTS as x,NON_BUBBLING_EVENTS as g,MIXINS as i}from"./registry.js";import{addDelegatedEvent as T,removeDelegatedEvent as v,registerEvent as S,registerGlobalEvent as u,globalEventKeyInfo as G}from"./delegate.js";import{cacheNode as c,detectTag as h,createHTMLNode as L,isValidTag as V,isSvgTag as _,SVG_TAGS as D,adoptHydrationNode as M,elementPath as y}from"./cache.js";import{applyExtends as C}from"./extends.js";import{addMethods as b,refreshContextProto as A}from"./methods.js";import{inertOutsidePlugin as O}from"./inertOutside.js";export{x as DELEGATED_EVENTS,s as LIFECYCLE_EVENTS,i as MIXINS,g as NON_BUBBLING_EVENTS,m as REGISTRY,D as SVG_TAGS,T as addDelegatedEvent,b as addMethods,M as adoptHydrationNode,C as applyExtends,c as cacheNode,o as create,L as createHTMLNode,r as default,h as detectTag,f as dispose,y as elementPath,a as flushMounts,G as globalEventKeyInfo,O as inertOutsidePlugin,_ as isSvgTag,V as isValidTag,A as refreshContextProto,S as registerEvent,u as registerGlobalEvent,n as remove,v as removeDelegatedEvent,E as update};
1
+ import{create as o,default as r,flushMounts as n,holdMountFlush as d,attachElement as a}from"./create.js";import{MOUNT_YIELD_BUDGET_MS as l,mountYieldBudget as m,mountPending as p,releaseMount as f,whenMounted as i,whenMountIdle as s,yieldToMain as u}from"./mountScheduler.js";import{update as T}from"./update.js";import{dispose as h,remove as M}from"./dispose.js";import{whenConnected as S}from"./connected.js";import{REGISTRY as I,LIFECYCLE_EVENTS as _,DELEGATED_EVENTS as c,NON_BUBBLING_EVENTS as G,MIXINS as D}from"./registry.js";import{addDelegatedEvent as B,removeDelegatedEvent as V,registerEvent as y,registerGlobalEvent as C,globalEventKeyInfo as P}from"./delegate.js";import{cacheNode as w,detectTag as O,createHTMLNode as U,isValidTag as b,isSvgTag as A,SVG_TAGS as F}from"./cache.js";import{adoptHydrationNode as R,elementPath as K}from"./hydration.js";import{applyExtends as j}from"./extends.js";import{addMethods as q,refreshContextProto as z}from"./methods.js";import{inertOutsidePlugin as Q}from"./inertOutside.js";export{c as DELEGATED_EVENTS,_ as LIFECYCLE_EVENTS,D as MIXINS,l as MOUNT_YIELD_BUDGET_MS,G as NON_BUBBLING_EVENTS,I as REGISTRY,F as SVG_TAGS,B as addDelegatedEvent,q as addMethods,R as adoptHydrationNode,j as applyExtends,a as attachElement,w as cacheNode,o as create,U as createHTMLNode,r as default,O as detectTag,h as dispose,K as elementPath,n as flushMounts,P as globalEventKeyInfo,d as holdMountFlush,Q as inertOutsidePlugin,A as isSvgTag,b as isValidTag,p as mountPending,m as mountYieldBudget,z as refreshContextProto,y as registerEvent,C as registerGlobalEvent,f as releaseMount,M as remove,V as removeDelegatedEvent,T as update,S as whenConnected,s as whenMountIdle,i as whenMounted,u as yieldToMain};
@@ -0,0 +1 @@
1
+ import{FEATURES as r}from"./features.js";import{registerViewEvents as t}from"./viewEvents.js";import{chainHandler as o}from"./handlerChain.js";import{plainRows as e}from"./plainRows.js";import{hydrationFeature as i}from"./hydration.js";import{mountYieldFeature as m}from"./mountYield.js";function l(){r.viewEvents=t,r.chains=o,r.rows=e,r.hydration=i,r.mount=m}export{l as installElementFeatures};
@@ -0,0 +1 @@
1
+ import{create as t,default as o}from"./core.js";import{applyExtends as f}from"./extends.js";import{registerEvent as m}from"./delegate.js";import{REGISTRY as a}from"./registry.js";export{a as REGISTRY,f as applyExtends,t as create,o as default,m as registerEvent};