@symbo.ls/element 3.14.803 → 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 +28 -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 ms,isStore as G}from"@symbo.ls/signal";import{createEffect as j,getObserver as tn}from"@symbo.ls/signal";import{withDesignSystem as Z,untrack as Nt}from"./runContext.js";import{cacheNode as so,detectTag as To,adoptHydrationNode as on}from"./cache.js";import{REGISTRY as B,LIFECYCLE_EVENTS as sn}from"./registry.js";import{registerEvent as nn,registerGlobalEvent as en,globalEventKeyInfo as rn}from"./delegate.js";import{mountBridge as cn}from"./bridge.js";import{applyExtends as fn,openMergeLayer as an,closeMergeLayer as un}from"./extends.js";import{addMethods as dn}from"./methods.js";import"./dispose.js";import{isLoudDevRuntime as st}from"./devRuntime.js";import{mountBudgetExhausted as Do,openMountBudget as Lo,closeMountBudget as Ro,enqueueMountWork as Mo}from"./mountScheduler.js";import{replaceLiteralsWithObjectFields as F,isPolyglotWritableKey as ln,markPolyglotSeeded as pn,polyglotSeededKeys as hn}from"@symbo.ls/utils";import*as Ft from"@symbo.ls/utils";import{dispatchPluginHook as bt,hasPluginHook as yn,reportLifecycleError as $t}from"./pluginHooks.js";import{applyStateMethods as ft}from"@symbo.ls/state";import{CSS_PROPS_REGISTRY as $,DEFAULT_CSS_PROPERTIES_LIST as H,pushStaticCssPass as No,popStaticCssPass as Fo,resolveStyleBlockTokens as _n}from"css-in-props";import{css as At,wrapHoverRule as $o}from"@symbo.ls/css";import{pushConfig as W,popConfig as z}from"@symbo.ls/scratch";import{checkAttributeByTagName as xt,applyAttrTransforms as gn,ATTR_TRANSFORMS as no,camelToAttr as wt,serializeAttrValue as Q,isEnumeratedTrueFalseAttr as It,extractConditionalAttrs as bn}from"attrs-in-props";import{resolveElementIdEngine as An}from"./engineRegistry.js";import{CSS_LONGHAND_SHORTHANDS as Bt,CSS_SHORTHAND_LONGHANDS as xn,cssShorthandStatesLonghand as Io,cssPropName as Bo,cssCamelName as Ho}from"./cssLonghands.js";import{isAttributeFirst as Uo,isCssProp as nt}from"./attributeFirst.js";import{VERSION as wn}from"./version.js";const Vo=An({uniqId:1,scopedStyleId:0},wn),St=[],et=new Set;let eo=!1,Go=0,at=null,Ct=null;function ut(){return typeof Date<"u"&&typeof Date.now=="function"?Date.now():0}function Ko(){return typeof document<"u"&&document.visibilityState==="hidden"}const Sn=250,Cn=1e3;function kn(){return Ct&&(Ct!==(typeof requestAnimationFrame=="function"?requestAnimationFrame:null)||Ko())?!0:ut()-Go>=Cn}function vn(){if(eo=!0,Go=ut(),Ct=null,typeof requestAnimationFrame!="function"){const t=typeof clearTimeout=="function"?clearTimeout:null,o=setTimeout(ro,0);at=t?()=>t(o):null;return}if(Ko()){const t=typeof clearTimeout=="function"?clearTimeout:null,o=setTimeout(ro,Sn);at=t?()=>t(o):null}else{const t=typeof cancelAnimationFrame=="function"?cancelAnimationFrame:null;Ct=requestAnimationFrame;const o=requestAnimationFrame(ro);at=t?()=>t(o):null}}function Ht(){if(eo){if(!kn())return;const t=at;if(at=null,t)try{t()}catch{}}vn()}const Wo=300,zo=15e4;function ro(){if(eo=!1,at=null,Ct=null,et.size&&ke(),!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=ut());const e=ut()-n.__mountFirstAttemptAt;n.__mountAttempts<=Wo&&e<zo?(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"&&cn(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 Yo(t,o){typeof t.onContentUpdate=="function"&&(bt("contentUpdate",t,o),Z(t,()=>{try{t.onContentUpdate(t,t.state,t.context,o)}catch(s){if($t(t,"onContentUpdate",s),t.context?.strictMode)throw s}}))}function Y(t){return t.length>2&&t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>=65&&t.charCodeAt(2)<=90}function jn(t){return t.charAt(2).toLowerCase()+t.slice(3)}function En(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(;Pn(t,s);)s="$"+s;return s!==o&&On(t,o,s),s}function Pn(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 Zo=new Set;function On(t,o,s){if(!st())return;const n=t.__ref&&t.__ref.path&&t.__ref.path.join(".")||t.key||"<root>",e=n+"::"+o;Zo.has(e)||(Zo.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 X(t,o,s,n={},e){if(tn())return Nt(()=>X(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)||`_${Vo.uniqId++}`,r.parent=o||null,r.context=t.context||o?.context||n.context||{},r.context.__create||(r.context.__create=X);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=Xo(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 _=r.key||r.tag||"?";console.warn(`[smbls] \`if:\` evaluator threw on ${_} \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=Ln(t,s,r.context?.components);return u.length&&(i.__ifLateMerge={definition:f,key:s,ownKey:a,names:u,options:n}),typeof r.if=="function"&&hs(r,i,r.if),r}r.tag||(r.tag=To(r)),D("Init",r,n);const d=r.node=on(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),Ws(r,n),ds(r),ps(r);try{zs(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),Ys(r,o,e),typeof r.html=="function"&&r.node&&!r.node.innerHTML&&Z(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,_=()=>{if(r.node){if(r.node.isConnected){l&&W(l);try{u(r,r.state,r.context)}catch(g){console.error("[DOMQL] onFrame error:",g)}finally{l&&z()}}requestAnimationFrame(_)}};requestAnimationFrame(_)}return r}const Qo=new Set(["childProps","attr","style","scope","data","vars"]);function Xo(t,o,s,n,e,c){if(s&&!o.extends&&!o.extend){const y=s.indexOf("_"),p=s.indexOf(".");let A=y>0?y:-1;if(p>0&&(A<0||p<A)&&(A=p),A>0){const w=s.substring(0,A),h=t.context?.components;h&&(h[w]||h["smbls."+w])?o={...o,extends:w}:h&&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),fn(t,o,c);const a=an(t),r=t.props&&typeof t.props=="object"?t.props:null;for(const y in o){if(y==="parent"||y==="node"||y==="__ref"||y==="extends"||y==="context"||y==="props")continue;if(y==="key"){n&&(t.key=e?Vt(e,n):n);continue}const p=o[y];a&&a.mark(y);const A=t[y],w=A&&p&&typeof A=="object"&&typeof p=="object"&&!Array.isArray(A)&&!Array.isArray(p)&&typeof A!="function"&&typeof p!="function";w&&y.charCodeAt(0)>=65&&y.charCodeAt(0)<=90?t[y]=kt(A,p):w&&Qo.has(y)?t[y]={...A,...p}:w&&co(y)?t[y]=kt(A,p):t[y]=p}function i(y){for(const p in y){const A=y[p],w=t[p],h=w&&A&&typeof w=="object"&&typeof A=="object"&&!Array.isArray(w)&&!Array.isArray(A)&&typeof w!="function"&&typeof A!="function";h&&p.charCodeAt(0)>=65&&p.charCodeAt(0)<=90?t[p]=kt(w,A):h&&Qo.has(p)?t[p]={...w,...A}:h&&co(p)?t[p]=kt(w,A):t[p]=A}}if(r&&i(r),o.props&&typeof o.props=="object"&&(i(o.props),a))for(const y in o.props)a.mark(y);un(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 y={};f&&Object.assign(y,f),o.scope!==void 0&&Object.assign(y,o.scope),t.scope=ms(y,l)}else l&&(t.scope=l);o.if!==void 0&&(t.if=o.if);const _=t.__ref,g=Zn(t,_&&_.__runtimeSource);return _&&(_.__declaredArrays=g||void 0),dn(t),Rn(t,e,o,c),o}const Tn=new Set(["key","parent","context","__ref"]);function Dn(t,o){for(const n of Object.keys(t))Tn.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(()=>Xo(t,s,o.key,o.ownKey,t.parent,o.options))}function Ln(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"&&!yn(t,"stateInit"))return;const n=t.state;t.state=o;try{D("StateInit",t,s)}finally{t.state=n}}const ao=t=>({isDataOnlyKey:o=>hn(t).has(o)});function Rn(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&&!G(t.state)?t.state:void 0;if(r==null){if(o?.state)t.state=o.state,ft(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",_=new Set,g=(A,w)=>{_.has(A)||ln(u,A,f)&&(f[A]=w,_.add(A),pn(u,A,w))},y=d.translations[l];if(y&&typeof y=="object")for(const A in y)g(A,y[A]);const p=new Set(d.languages||[]);for(const A in d.translations)p.has(A)||g(A,d.translations[A])}G(f)||fo(t,f,n),t.state=G(f)?f:oo(f,ao(t.context)),t.state.__element=t,t.state.root=t.state,ft(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}),ft(t,t.state);return}if(typeof r=="string"){if(t.state=ts(r,o),t.state&&typeof t.state=="object"&&!G(t.state)){const i=o?.state?.root||o?.state||t.state;Object.defineProperty(t.state,"root",{value:i,enumerable:!1,configurable:!0,writable:!0})}ft(t,t.state),Nn(t,r,o),D("StateCreated",t,n);return}if(typeof r=="function"){const i=r(t,o?.state);if(G(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(G(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,ft(t,t.state),Ft.promoteActiveRootState?.(r,t.state),D("StateCreated",t,n)}function Jo(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 mo(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 ts(t,o){if(!o)return{};if(t===".")return o.state||{};if(t.startsWith("../")||t.startsWith("~/")){const[e,c]=mo(t,o);return c?Jo(e,c):e??{}}if(o.state?.[t]!==void 0)return o.state[t];const s=Jo(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 Mn(t,o){const[s,n]=mo(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 Nn(t,o,s){const n=t.__ref;if(!n||!s||o==="."||!G(s.state))return;n.__stateBinding&&n.__stateBinding.dispose();const e=Nt(()=>j(()=>{const c=Mn(o,s);!c||typeof c!="object"||c===t.state||Nt(()=>os(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 os(t,o,s,n){const e=t.__ref;if(!e)return;if(n||t.state===o){t.state=s,n&&ft(t,s),ss(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&&os(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,ss(e))}function ss(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 Fn=new Set(["s","state","ctx","context"]),uo=new WeakMap;function ns(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 $n(t){const o=ns(t);return o?o.params.map(s=>s.split("=")[0].trim()).filter(Boolean):[]}const es=new WeakMap;function In(t){let o=es.get(t);return o===void 0&&(o=Bn(ns(t)),es.set(t,o)),o}function Bn(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 Hn=3,Un=/^(is|has)[A-Z0-9_$]/,Vn=new Set(["routerOptions"]),rs=new WeakSet;function Gn(t,o){if(typeof t!="function"||t.length!==2||o&&(Un.test(o)||Vn.has(o))||rs.has(t))return!1;const s=$n(t);if(s.length<2)return!1;const n=s[1].replace(/[{}[\]]/g,"").trim();return n.length<Hn||Fn.has(n)?!1:(rs.add(t),!0)}function Kn(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"||B.has(r))continue;const i=r.charCodeAt(0);i>=65&&i<=90||Y(r)||$[r]||H&&H.has(r)||i!==45&&(xt(s,r)||(st()&&Gn(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&&W(n);try{return i(t,t.state,t.context)}catch{return}finally{n&&z()}},set(f){delete o.__exec[r],Object.defineProperty(t,r,{value:f,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}}function Wn(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 Wn(t,o),s.apply(this,n)}}function dt(t,o){if(!(!t||Array.isArray(t)||typeof t!="object"))return t[o]}function v(t,o){return()=>t.path.join(".")+"::"+o}const is=new Set;function R(t,o,s){if(!st())return;const n=v(t,o)();is.has(n)||(is.add(n),console.warn(`[smbls] "${o}" effect threw on ${t.path.join(".")} \u2014 keeping previous value:`,s?.message||s))}const cs=/(['"`])((?:\\.|(?!\1)[^\\])*)\1/g,zn=(t,o)=>{let s;try{s=String(t)}catch{return}if(!s.includes("{{"))return;cs.lastIndex=0;let n;for(;(n=cs.exec(s))!==null;)n[2].includes("{{")&&o.add(n[2])},Yn=(t,o)=>!Y(t)&&!nt(o,t),lo=(t,o,s,n,e)=>{if(typeof o=="string"){!e&&o.includes("{{")&&s.add(o);return}typeof o=="function"&&Yn(t,n)&&zn(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,fs=(t,o)=>{const s=t.__ref&&t.__ref.__runtimeSource;return!!s&&vt(s,o)},lt=(t,o)=>fs(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)}}},Zn=(t,o)=>{let s=null;for(const n of Object.keys(t)){if(B.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},as=(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}},us=["attr","aria","data","metadata"],Qn=t=>{if(us.includes(t))return!0;const o=t.charCodeAt(0);return o===46||o===33||o===64},Xn=(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(!Qn(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)),_=a[u];if(d&&_&&typeof _=="object"&&!Array.isArray(_)&&us.includes(u)){for(const g in _)lo(g,_[g],s,n,l);continue}lo(u,_,s,n,l)}continue}lo(e,a,s,n,r)}return s};function ds(t,o){const s=t.__ref,n=!!(o&&o.skipIfEffect),e=Xn(t,s.__runtimeSource);if(s.__authoredTemplates)for(const i of e)s.__authoredTemplates.add(i);else s.__authoredTemplates=e;if(Kn(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=F.call(t,u,t.state)),Gt(t,u))}catch(u){R(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=F.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"&&!B.has(i)&&!Y(i)&&!s.__exec[i]&&!Uo(c,i)){if($[i]){const f=t[i],d=T(t,t[i+"Deps"],f),u=i;let l,_=null,g=null,y;const p=j(()=>{const A=t.context?.designSystem;A&&W(A);try{const w=d(t,t.state,t.context);No();let h;try{h=$[u](w,t,t.state,t.context)}finally{Fo()}if(Array.isArray(h)){const x={};for(const S of h)if(S)for(const k in S)x[k]=S[k];h=x}const b=u==="show"||u==="hide";if(h&&t.node&&te(h)){const x=pt(h);if(x===null||x!==y){y=x;const S=At(h,null,t.context?.cssPrefix),k=S?S.split(" ").filter(Boolean):null;if(t.node.classList){if(g)for(const C of g)t.node.classList.remove(C);if(k&&k.length)for(const C of k)t.node.classList.add(C);g=k}}l=void 0,_=null}else if(h&&t.node){if(g){for(const S of g)t.node.classList.remove(S);g=null,y=void 0}const x=pt(h);if(x===null||x!==l||!Tt(t.node,_)){l=x;const S=Ss(t,h);_=Ot(t.node,S)}}else t.node&&b&&(l=void 0,_=null,t.node.style.display="")}finally{A&&z()}},{depth:s.path.length,label:v(s,u)});s.__effects.push(p),s.__exec[i]=f}else if(H&&H.has(i)){const f=t[i],d=T(t,t[i+"Deps"],f),u=i;let l,_=null;const g=j(()=>{const y=t.context?.designSystem;y&&W(y);try{const p=d(t,t.state,t.context);if(t.node)if(p!=null){const A=u+":"+String(p);if(A!==l||!Tt(t.node,_)){l=A;const w={[u]:p},h=Ss(t,w);_=Ot(t.node,h)}}else l=void 0,_=null,t.node.style[u]=""}finally{y&&z()}},{depth:s.path.length,label:v(s,u)});s.__effects.push(g),s.__exec[i]=f}else if(i.charCodeAt(0)===45){const f=t[i];As(t,i,f,t[i+"Deps"],i),s.__exec[i]=f}}if(oe(t),typeof t.html=="function"){const i=t.html,f=T(t,t.htmlDeps,i),d=j(()=>{Z(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=F.call(t,u,t.state)),ys(t,u)}catch(u){R(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{ys(t,F.call(t,i,t.state))}catch(d){R(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,y;const p=j(()=>{const A=f(t,t.state,t.context),w=t.context&&t.context.designSystem;let h;if(A&&typeof A=="object"&&A===l&&w===g){const x=pt(A);h=x!==null&&x===_?y:qt(t,A),_=x}else h=qt(t,A),_=void 0;l=A,g=w,y=h;const b=pt(h);(b===null||b!==d||!Tt(t.node,u))&&(d=b,_o(t.node,u,h),J(t.node,h),u=Ot(t.node,h))},{depth:s.path.length,label:v(s,"style")});s.__effects.push(p),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,dt(t.styleDeps,i),f);let u,l=null;const _=j(()=>{try{const g=d(t,t.state,t.context);if(t.node){const y=i+":"+String(g);if(y!==u||!Tt(t.node,l)){u=y;const p=qt(t,{[i]:g});_o(t.node,l,Object.assign({},p,{[i]:""})),J(t.node,p),l=Ot(t.node,p)}}}catch(g){R(s,"style."+i,g)}},{depth:s.path.length,label:v(s,"style."+i)});s.__effects.push(_)}if(t.attr&&typeof t.attr=="object"){for(const i in t.attr)if(typeof t.attr[i]=="function"){const f=T(t,dt(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=F.call(t,l,t.state)),t.node?.setAttribute&&Kt(t.node,d,l)}catch(l){R(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=F.call(t,f,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(d,Q(d,l??""))}catch(l){R(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 _=f,g="aria-"+i.replace(/[A-Z]/g,p=>"-"+p.toLowerCase()),y=j(()=>{try{const p=F.call(t,_,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(g,Q(g,p??""))}catch(p){R(s,"aria."+i,p)}},{depth:s.path.length,label:v(s,"aria."+i)});y._attrName=g,s.__effects.push(y);continue}if(typeof f!="function")continue;const d=T(t,dt(t.ariaDeps,i),t.aria[i]),u="aria-"+i.replace(/[A-Z]/g,_=>"-"+_.toLowerCase()),l=j(()=>{try{const _=d(t,t.state,t.context);if(!t.node?.setAttribute)return;Kt(t.node,u,_)}catch(_){R(s,"aria."+i,_)}},{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 g=f,y="data-"+i.replace(/[A-Z]/g,A=>"-"+A.toLowerCase()),p=j(()=>{try{const A=F.call(t,g,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(y,A??"")}catch(A){R(s,"data."+i,A)}},{depth:s.path.length,label:v(s,"data."+i)});p._attrName=y,s.__effects.push(p);continue}if(typeof f!="function")continue;const d=T(t,dt(t.dataDeps,i),t.data[i]),l="data-"+i.replace(/[A-Z]/g,g=>"-"+g.toLowerCase()),_=j(()=>{try{const g=d(t,t.state,t.context);if(!t.node?.setAttribute)return;g==null||g===!1?t.node.removeAttribute(l):typeof g!="function"&&typeof g!="object"&&t.node.setAttribute(l,g===!0?"":g)}catch(g){R(s,"data."+i,g)}},{depth:s.path.length,label:v(s,"data."+i)});_._attrName=l,s.__effects.push(_)}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,dt(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){R(s,"class."+i,u)}},{depth:s.path.length,label:v(s,"class."+i)});s.__effects.push(d)}!n&&typeof t.if=="function"&&hs(t,s,t.if);for(const i of Object.keys(t)){if(B.has(i)||typeof t[i]!="function")continue;const f=i.charCodeAt(0);if(f>=65&&f<=90||Y(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,_=T(t,t[i+"Deps"],d),g=j(()=>{try{let y=_(t,t.state,t.context);typeof y=="string"&&y.includes("{{")&&(y=F.call(t,y,t.state)),t.node?.setAttribute&&Kt(t.node,l,y,!0)}catch(y){R(s,i,y)}},{depth:s.path.length,label:v(s,i)});g._attrName=l.toLowerCase(),s.__effects.push(g)}}const r=t.tag||"div";for(const i of Object.keys(t)){if(B.has(i))continue;const f=t[i];if(typeof f!="string"||!f.includes("{{"))continue;const d=i.charCodeAt(0);if(d>=65&&d<=90||Y(i)||nt(r,i)||no[i]||!xt(r,i))continue;const u=wt(i)||i,l=j(()=>{try{const _=F.call(t,f,t.state);if(!t.node||!t.node.setAttribute)return;t.node.setAttribute(u,Q(u,_??""))}catch(_){R(s,i,_)}},{depth:s.path.length,label:v(s,i)});l._attrName=u.toLowerCase(),s.__effects.push(l)}if(fe(t),ge(t),typeof t.onStateUpdate=="function"&&Array.isArray(t.stateDeps)){const i=t.onStateUpdate,f=t.stateDeps;let d=!1,u=[];const l=j(()=>{const _=[];for(let p=0;p<f.length;p++){const A=f[p];try{_[p]=typeof A=="function"?A(t,t.state,t.context):t.state?.[A]}catch{_[p]=void 0}}if(!d){d=!0,u=_;return}let g=_.length!==u.length;for(let p=0;!g&&p<_.length;p++)_[p]!==u[p]&&(g=!0);const y=u;u=_,g&&Z(t,()=>{try{i(t,t.state,t.context,{prev:y,next:_})}catch(p){if($t(t,"onStateUpdate",p),t.context?.strictMode)throw p}})},{depth:s.path.length,label:v(s,"onStateUpdate")});s.__effects.push(l)}le(t)}function ls(t){const o=t.parent,s=o?.node;if(!s||!t.node){Ys(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 ps(t){_s(t),Se(t),Ls(t),Me(t),Re(t)}function hs(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,Dn(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),ls(t),_s(t),Ls(t),D("Render",t,{}),io(t,{});else{if(o.__ifInitialized=!0,o.__ifLateMerge=null,t.tag||(t.tag=To(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),Ws(t,{}),ds(t,{skipIfEffect:!0}),ps(t),zs(t,{}),ls(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 Jn(t,o){return o!=="checked"||!t||t.tagName!=="INPUT"?null:t.hasAttribute("checked")}function mn(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,Q(o,s)))}function Wt(t,o,s){const n=Jn(t,o);s==null?t.removeAttribute(o):t.setAttribute(o,s),mn(t,n)}function ys(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 _s(t){const{node:o}=t;if(o){if((typeof t.text=="string"&&!t.text.includes("{{")||typeof t.text=="number")&&Gt(t,t.text),$s(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}J(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,Q(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 pt(t){if(t==null||typeof t!="object")return"s:"+String(t);try{return"o:"+JSON.stringify(t)}catch{return null}}function te(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),gs(s,a))}return n}function yo(t,o){return typeof t.getPropertyValue=="function"?t.getPropertyValue(o):""}function gs(t,o){return typeof t.getPropertyPriority=="function"?t.getPropertyPriority(o):""}function q(t){return Bo(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]||gs(s,o[n])!==o[n+2])return!1;return!0}const Dt=t=>t.charCodeAt(0)===45&&t.charCodeAt(1)===45,bs=t=>typeof t=="number"||t===!0||typeof t=="string"&&t!=="",zt=t=>Dt(t)?t:"--"+t;function Yt(t,o){if(!m(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)}bs(e)&&(s||(s={}),s[zt(n)]=e)}return s}function As(t,o,s,n,e){xs(t,e,T(t,n,s),c=>bs(c)?{[o]:c}:null)}function xs(t,o,s,n,e){const c=t.__ref;let a,r=null;const i=j(()=>{Z(t,()=>{try{const f=n(s(t,t.state,t.context)),d=t.node;if(!d||!d.style)return;const u=pt(f);(u===null||u!==a||!Tt(d,r))&&(a=u,_o(d,r,f),f&&J(d,f),r=f?Ot(d,f):null,e&&e(f))}catch(f){R(c,o,f)}})},{depth:c.path.length,label:v(c,o)});c.__effects.push(i)}function oe(t){const o=t.__ref,s=t.vars;if(typeof s=="function"){se(t,s),o.__exec.vars=s;return}if(m(s))for(const n of Object.keys(s)){const e=s[n];!n||typeof e!="function"||As(t,zt(n),e,dt(t.varsDeps,n),"vars."+n)}}function se(t,o){const s=t.__ref;xs(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(!m(s))return!1;for(const n of Object.keys(s))if(typeof s[n]=="function"&&zt(n)===o)return!0;return!1}function ne(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 ee(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 ws(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 Ss(t,o){const s=t.node;J(s,o);const n=ne(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=ws(t,n);return c?(J(s,c),Object.assign({},o,c)):o}function re(t){const o=t.__ref;if(!o||!o.__inlineCssKeys||!o.__declaredLonghands)return;const s=ws(t,o.__inlineCssKeys);s&&J(t.node,s)}function qt(t,o){return!o||typeof o!="object"?o:Z(t,()=>{try{return _n(o,t)}catch{return o}})}function J(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=Bo(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&&ie(t,s)}function ie(t,o){const s=`_ds${Vo.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 _=f[l];if(typeof _=="object"){const g=l.includes("&")?i.split(", ").map(p=>l.replace(/&/g,p)).join(", "):i.split(", ").map(p=>`${p} ${l}`).join(", ");let y="";for(const p in _)y+=`${q(p)}: ${_[p]};`;u+=$o(`${g} { ${y} }`,g)+`
5
- `}else d+=`${q(l)}: ${_};`}d&&(c+=$o(`${i} { ${d} }`,i)+`
6
- `),u&&(c+=u)}}c&&(e.textContent+=c)}const Cs=new Set;function ks(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 ce(t,o,s){const n=ks(s);queueMicrotask(()=>{if(!t.__ref)return;let e;try{e=o(t,t.state,t.context)}catch{return}if(ks(e)===n)return;const c=t.__ref.path?t.__ref.path.join("."):t.key||"?";Cs.has(c)||(Cs.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 fe(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()&&ce(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&&(G(t.state)?t.state.root:null);if(!l||!G(l))return;let _=l;_=_[i];for(let y=0;y<f.length&&!(_==null||typeof _!="object");y++)if(G(_))_=_[f[y]];else break;if(!d.value)return;let g=!1;if(typeof t.onBeforeUpdate=="function"&&Z(t,()=>{try{if(Fe(e)){const y=t.onBeforeUpdate(t,t.state,t.context,{updateBySubscription:!0});y&&typeof y.then=="function"?y.then(()=>Qt(e,!1),p=>{Qt(e,!0),bt("error",t,{hook:"onBeforeUpdate",error:p})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",p)}):(Qt(e,!1),y===!1&&(g=!0))}}catch(y){Qt(e,!0),bt("error",t,{hook:"onBeforeUpdate",error:y})||console.error("[DOMQL] subscribeTo onBeforeUpdate error:",y)}}),!g&&t.node&&e.__effects)for(let y=0;y<e.__effects.length;y++){const p=e.__effects[y];p&&p!==u&&!p._disposed&&!p._isSubscribeToEffect&&typeof p._execute=="function"&&p._execute()}!g&&typeof t.onUpdate=="function"&&Z(t,()=>{try{t.onUpdate(t,t.state,t.context)}catch(y){bt("error",t,{hook:"onUpdate",error:y})||console.error("[DOMQL] subscribeTo onUpdate error:",y)}})},{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 vs=new Set;function ae(t,o){const s=o?.__ref?.path?o.__ref.path.join("."):o?.key||"?",n=s+"::"+t;vs.has(n)||(vs.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 js=new Map;function ue(t){let o=js.get(t);if(o)return o;o=[];const s=n=>{if(n)for(const e of n)o.push(Ho(e))};return s(Bt[t]),s(xn[t]),js.set(t,o),o}function Es(t,o,s){if(go(t,o)||s&&s.has(o))return!0;const n=ue(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 ht(t,o,s,n){const e={},c=new Set,a=(r,i,f)=>{const d=f?new Set(Object.keys(e)):null;if($[r]){const u=$[r](i,o,o.state,o.context);if(u){const l=Array.isArray(u)?u:[u];for(const _ of l)_&&Object.assign(e,_)}}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,Es(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=ht(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()&&ae(r,o);continue}const f=Ao(r,o),d=ht(i,o,!1,n);Object.keys(d).length&&(e[f]=d);continue}a(r,i,Es(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 m=t=>!!t&&typeof t=="object"&&!Array.isArray(t);function Ps(t,o){for(const s in o){const n=o[s];t[s]=m(n)?Ps(m(t[s])?t[s]:{},n):n}return t}function de(t,o){if(!m(o))return;let s;for(const n of t.split(" ")){const e=n?o[n]:null;m(e)&&(s=Ps(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 Os(t,o,s){if(!o||typeof o!="object"||Array.isArray(o))return null;if(bo(t,s)){const c=ht(o,s,!1);return Object.keys(c).length?{cssProp:`[data-theme="${t.slice(1)}"] &`,block:c}:null}const n=Ao(t,s),e=ht(o,s,!1);return Object.keys(e).length?{cssProp:n,block:e}:null}function le(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&&W(r);let i,f=!1;try{const d=Os(s,n,t),u=d?pt(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&&z()}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 pe=()=>!0,he=(t,o)=>{const s=t.charAt(0);return(s===":"||s==="@"||s==="&"||s==="[")&&o&&typeof o=="object"&&!Array.isArray(o)?!0:!!$[t]||!!(H&&H.has(t))||Dt(t)||t==="vars"};function ye(t,o,s){const n={};let e=!1;for(const r in s)Object.prototype.hasOwnProperty.call(s,r)&&(r!=="data"&&r!=="aria"&&(he(r,s[r])||B.has(r))?n[r]=!0:e=!0);if(!e)return null;const c=bn({[o]:s},t.tag||"div",n,pe);let a=null;for(const r in c)/^on/i.test(r)||(a||(a={}),a[r]=c[r]);return a}function Ts(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(g){R(t.__ref,"conditional("+s+")."+f,g),u&&i(f);continue}if(typeof l=="string"&&l.includes("{{")&&(l=F.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&&Ds(a,o,f);continue}const _=l===!1&&!It(f)?null:String(Q(f,l));i(f),!(u&&_===o.written.get(f))&&(d===void 0&&o.base.set(f,a.getAttribute(f)),Wt(a,f,_),o.owners.set(f,s),o.written.set(f,_))}e.appliedAttrs=r}function Ds(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 _e(t,o,s,n){const e=n.appliedAttrs;if(n.appliedAttrs=null,!!e)for(const c of e)o.owners.get(c)===s&&Ds(t.node,o,c)}function Ls(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 ge(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 p=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}${p}: { '${a.slice(p.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=ye(t,e,r);d&&!s&&(s=o.__conditionalAttrs={owners:new Map,base:new Map,written:new Map});const u=new Set;for(const p in r){if(!Object.prototype.hasOwnProperty.call(r,p))continue;const A=p.charAt(0),w=r[p];if(!((A===":"||A==="@"||A==="&"||A==="[")&&w&&typeof w=="object"&&!Array.isArray(w))){if(p==="vars"&&m(w)){for(const h of Object.keys(w))h&&u.add(zt(h));continue}u.add(p)}}const l=()=>{let p;const A=t[a];if(A===void 0){const b=!!t.state&&a in t.state,x=t.state?t.state[a]:void 0;if(b||x!==void 0)p=x;else{const S=t.context?.cases?.[a];if(S===void 0)return;try{p=typeof S=="function"?S.call(t,t):S}catch(k){p=!1,o.__conditionalError=k,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${e}\` case fn threw on ${t.key||"?"} \u2014 treating as false:`,k?.message||k)}}}else if(typeof A=="function")try{p=A(t,t.state,t.context)}catch(b){p=!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 p=A;const w=i?!p:!!p;if(!t.node)return;const h=t.context?.designSystem;if(w===f.lastMatch){if(w&&d&&t.node.setAttribute){h&&W(h);try{Ts(t,s,e,d,f,!1)}finally{h&&z()}}return}f.lastMatch=w,h&&W(h);try{if(w){const b={},x={};let S=!1;for(const C in r){if(!Object.prototype.hasOwnProperty.call(r,C))continue;const L=r[C],tt=C.charAt(0);if((tt===":"||tt==="@"||tt==="&"||tt==="[")&&L&&typeof L=="object"&&!Array.isArray(L)){if(bo(C,t)){const P=ht(L,t,!1,u);Object.keys(P).length&&(x[`[data-theme="${C.slice(1)}"] &`]=P,S=!0)}else{const P=Ao(C,t),M=ht(L,t,!1,u);Object.keys(M).length&&(x[P]=M,S=!0)}continue}const ot=typeof L=="function"?L(t,t.state,t.context):L;if(ot!=null){if($[C]){const P=$[C](ot,t,t.state,t.context);if(P){const M=Array.isArray(P)?P:[P];for(const yt of M)yt&&Object.assign(b,yt)}}else if(H&&H.has(C))b[C]=ot;else if(Dt(C))b[C]=ot;else if(C==="vars"){const P=Yt(ot,t);P&&Object.assign(b,P)}}}const k=Object.keys(b);if(k.length){J(t.node,b);for(const C of k)n.set(C,e);f.appliedKeys=k}else f.appliedKeys=null;if(S){const C=At(x,null,t.context?.cssPrefix,{state:!0}),L=C?C.split(" ").filter(Boolean):[];if(L.length&&t.node.classList){for(const tt of L)t.node.classList.add(tt);f.appliedClasses=L}else f.appliedClasses=null}else if(f.appliedClasses){for(const C of f.appliedClasses)t.node.classList.remove(C);f.appliedClasses=null}d&&t.node.setAttribute&&Ts(t,s,e,d,f,!0)}else{if(f.appliedAttrs&&_e(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{h&&z()}};o.__conditionalRunners.push(l);const _=T(t,t[a+"Deps"],l),g=j(_,{depth:o.path.length,label:v(o,"conditional("+e+")")}),y=o.__exec&&o.__exec[a]||t[a];g._sources.size===0&&typeof y=="function"&&st()&&In(y)&&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(g)}}const wo=new WeakSet,So=new WeakMap;function be(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 Ae(t){const o=t.ownerDocument;!o||wo.has(o)||be(o)||(wo.add(o),queueMicrotask(()=>{wo.delete(o);const s=o.body||o.documentElement;s&&s.offsetWidth}))}const Co=new WeakSet;let Rs=!1;function Ms(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 Ns(t,o){const s={};for(const n in t){const e=t[n];if(e&&typeof e=="object"){const c=Ns(e,o);Object.keys(c).length&&(s[n]=c)}else o.has(n)||(s[n]=e)}return s}function xe(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=we(a);if(i)for(let f=0;f<i.length;f+=3){const d=i[f],u=i[f+1],l=i[f+2],_=t[u]!=null?o.get(u):void 0,g=s&&s.get(d),y=_!==void 0&&_>r&&Io(d,t[u],l),p=!y&&g!==void 0&&g>r&&Io(d,void 0,l);if(y||p){y&&delete t[a],c||(c=new Set),c.add(a);break}}}return c}const Fs=new Map;function we(t){let o=Fs.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,Ho(e),s)}return Fs.set(t,o),o}function $s(t){const{node:o}=t;if(!o)return;if(Rs||(Rs=!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&&W(s),No();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 _=(h,b)=>{if(b&&typeof b=="object"&&Ms(h)){r||(r={});const x=r[h];x&&(b=ko(x,b)),r[h]=b}else(b===null||typeof b!="object")&&(i||(i=new Set),i.add(h),d!==void 0&&(u||(u=new Map),u.set(h,d)));n[h]=b};if(Object.prototype.hasOwnProperty.call(t,"theme")&&typeof t.theme!="function"&&$.theme){const h=$.theme(t.theme,t,t.state,t.context);if(h){const b=x=>{for(const S in x){const k=x[S];k&&typeof k=="object"&&Ms(S)&&(a||(a={}),a[S]=k),n[S]=k}};if(Array.isArray(h))for(const x of h)x&&b(x);else b(h);e=!0}}const g=(h,b)=>{if(h==="vars"){const x=Yt(b);if(x){for(const S in x)_(S,x[S]);e=!0}return}if($[h]){const x=$[h](b,t,t.state,t.context);if(x){if(Array.isArray(x)){for(const S of x)if(S)for(const k in S)_(k,S[k])}else for(const S in x)_(S,x[S]);e=!0}}else if(H&&H.has(h))b!=null&&typeof b!="object"&&(_(h,b),e=!0);else if(h.charCodeAt(0)===45)b!=null&&typeof b!="object"&&(_(h,b),e=!0);else if((h.charAt(0)==="&"||h.charAt(0)==="@"||h.charAt(0)===":"||h.charAt(0)==="[")&&b&&typeof b=="object"&&!Array.isArray(b)){if(xo(b))return;const x=Os(h,b,t);x&&(_(x.cssProp,x.block),e=!0)}};if(typeof t.class=="string"){const h=de(t.class,t.context?.designSystem?.class);if(h)for(const b in h)g(b,h[b])}const y=i?new Set(i):null,p=t.tag||"div";for(const h of Object.keys(t)){if(typeof t[h]=="function"){const x=f&&f.get(h);x!==void 0&&nt(p,h)&&(l||(l=new Map),l.set(q(h),x));continue}if(d=f?f.get(h):void 0,h==="vars"){g(h,t[h]);continue}if(B.has(h)||h==="theme")continue;const b=h.charCodeAt(0);b>=65&&b<=90||Y(h)||Uo(p,h)||g(h,t[h])}d=void 0;const A=u?xe(n,u,l):null;if(a)for(const h in a){let b=i?Ns(a[h],i):a[h];r&&r[h]&&(b=ko(b,r[h])),Object.keys(b).length?n[h]=b:delete n[h]}if(ee(t,n,i,A?new Set([...y||[],...A]):y),e){n.display&&String(n.display).includes("!important")&&(o.style.setProperty("display",String(n.display).replace(/\s*!important\s*$/,""),"important"),delete n.display);const h=t.display!=null&&typeof t.display!="function"?t.display:t.hide===!0||t.show===!1?"none":null;typeof h=="string"&&h!==""&&n.display&&n.display!==h&&(n.display=h);const b=At(n,null,t.context?.cssPrefix);if(c=b?b.split(" ").filter(Boolean):[],b&&o.classList){const x=c;let S=!1;for(const k of x)o.classList.add(k),S||(k.charCodeAt(0)===95&&k.charCodeAt(1)===99||k.charCodeAt(0)===95&&k.indexOf("_c",1)!==-1)&&(S=!0);S&&Ae(o)}}const w=t.__ref;if(w){const h=w.__staticCssClasses;if(h&&o.classList){const b=new Set(c);for(const x of h)b.has(x)||o.classList.remove(x)}w.__staticCssClasses=c}re(t)}finally{Fo(),s&&z(),Co.delete(t)}}const ur=t=>!!$[t]||!!(H&&H.has(t))||typeof t=="string"&&t.charCodeAt(0)===45;function dr(t){t&&t.node&&$s(t)}function Se(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,Q(a,c))}const s=gn(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"||B.has(e)||e==="on"||s[e]!==void 0)continue;const c=e.charCodeAt(0);if(!(c>=65&&c<=90)&&!Y(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=F.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,Q(r,a))}}}function lr(t,o){const{node:s}=t;if(!s||!s.setAttribute)return;const n=o.charCodeAt(0);if(n>=65&&n<=90||Y(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=F.call(t,f,t.state)),Kt(s,c,f)}function Ce(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{}Bs(e),et.delete(t),s.style.height="",e.appliedMax!=null&&s.style.maxHeight===e.appliedMax&&(s.style.maxHeight=""),Vs(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,Is(t,e);return}e.awaitingLayout=!1;const a=je(s),r=Ee(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=Pe(s,a),u=d!=null&&f<d?d:f,l=De(a),_=l!=null&&u>l;s.style.height=Te(_?l:u,a)+"px",r&&jo(s),Vs(s,e,_),e.lastMeasure=f,e.lastWidth=s.clientWidth,Is(t,e)}},n.__eventCleanup||(n.__eventCleanup=[]),n.__eventCleanup.push(()=>{try{s.removeEventListener("input",e.resize)}catch{}Bs(e),et.delete(t)})),e.active||(s.addEventListener("input",e.resize),e.active=!0,ve(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 ke(){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=ut()),e.attachAttempts+=1,e.attachAttempts<=Wo&&ut()-e.firstAttemptAt<zo&&(et.add(s),Ht());continue}e.attachAttempts=0,e.firstAttemptAt=null,e.resize()}}}function Is(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 Bs(t){const o=t.watch;if(o){t.watch=null;try{o.disconnect()}catch{}}}function ve(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 je(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),Hs=t=>(rt(t.borderTopWidth)||0)+(rt(t.borderBottomWidth)||0);function Ee(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 Pe(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)||Oe(t,o);return n>0?s*n+vo(o):null}const Rt=["fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontFamily","lineHeight","letterSpacing"],Us=new WeakMap;function Oe(t,o){const s=t.ownerDocument,n=s&&(s.body||s.documentElement);if(!n||!s.createElement)return null;let e=Us.get(s);e||(e=new Map,Us.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 Te(t,o){return o?o.boxSizing==="border-box"?t+Hs(o):o.boxSizing==="content-box"?Math.max(0,t-vo(o)):t:t}function De(t){if(!t)return null;const o=rt(t.maxHeight);if(o==null||!(o>0))return null;const s=vo(t),n=Hs(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 Vs(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 Gs=["srcObject","muted"],Le=(t,o)=>t==="muted"?o===!0||o===""||o==="true"||o==="muted":o??null;function Re(t){const o=t.node,s=t.__ref;if(!(!o||!s))for(let n=0;n<Gs.length;n++){const e=Gs[n],c=t[e];if(c===void 0||!(e in o))continue;const a=r=>{const i=Le(e,r);if(o[e]!==i)try{o[e]=i}catch(f){R(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){R(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 Me(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}Ce(t,r)},{depth:s.path.length,label:v(s,"autoGrow")});s.__effects||(s.__effects=[]),s.__effects.push(c),e&&(s.__exec.autoGrow=n)}const Ks=new Set(["onSwipe","onSwipeLeft","onSwipeRight","onSwipeUp","onSwipeDown"]);function Ws(t,o){for(const s of Object.keys(t)){if(!Y(s)||Ks.has(s))continue;const n=rn(s);if(n){en(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=jn(s);sn.has(a)||nn(En(a),t,e,c)}Ne(t)}function Ne(t){const o=t.node;if(!o||!o.addEventListener)return;const s={};let n=!1;for(const l of Ks){const _=t[l];typeof _=="function"&&(s[l]=_,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 _=l.touches&&l.touches[0]||l.changedTouches&&l.changedTouches[0];_&&(a=_.clientX,r=_.clientY,i=Date.now(),f=!0)},u=l=>{if(!f)return;f=!1;const _=l.changedTouches&&l.changedTouches[0]||l.touches&&l.touches[0];if(!_)return;const g=_.clientX-a,y=_.clientY-r,p=Date.now()-i;if(p>c)return;const A=Math.abs(g),w=Math.abs(y);if(Math.max(A,w)<e)return;let h;if(A>w*1.2)h=g<0?"left":"right";else if(w>A*1.2)h=y<0?"up":"down";else return;const b="onSwipe"+h.charAt(0).toUpperCase()+h.slice(1),x=s[b],S=s.onSwipe;x&&x.call(t,l,t,t.state,t.context),S&&S.call(t,{direction:h,dx:g,dy:y,dt:p,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=lt(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=w=>{let h=o[w];const b=h;(typeof h=="string"||typeof h=="number")&&(h={text:h});let x=d;if(typeof d=="function")try{x=d(t,h)}catch{x=null}let S=typeof d=="function"?jt(x):a;if(e&&u!=="state"&&(S=Et(S,jt(b))),u==="state"){let C=b;(typeof b=="string"||typeof b=="number")&&(C={value:b,text:b}),h=x?{...x,state:C}:{state:C}}else x&&(h=it(x,h));if(c&&!h.ignoreChildExtends)if(h.extends){const C=Array.isArray(h.extends)?h.extends:[h.extends],L=Array.isArray(c)?c:[c];h={...h,extends:[...L,...C]}}else h={...h,extends:c};const k=qo(h?.key,b,w,t);try{return X(Pt(h,S),t,k,s)}catch(C){if(typeof console<"u"&&console.error){const L=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${k}" failed to construct at ${L} (initial render, skipping this row):`,C?.message||C)}return null}},_=t.__ref;if(!(n===!0&&!r&&!!_&&(s?.mountYield===!0||t.yieldChildren===!0))){for(let w=0;w<o.length;w++){const h=l(w);!r&&h?.node&&f.appendChild(h.node)}return r||t.node.appendChild(f),!0}const y=_.__childrenChunkGen=(_.__childrenChunkGen||0)+1;Lo();let p=null;const A=w=>{if(_.__disposed||_.__childrenChunkGen!==y){p&&p.parentNode&&p.remove();return}for(let h=w;h<o.length;h++){const b=l(h);if(b?.node&&(p?t.node.insertBefore(b.node,p):f.appendChild(b.node)),h+1<o.length&&Do()){p||(p=i.createComment("smbls-mount"),f.appendChild(p),t.node.appendChild(f));const x=h+1;Mo(()=>A(x));return}}p?(p.remove(),t.node.tagName==="SELECT"&&Zt(t,!0)):t.node.appendChild(f)};return A(0),Ro(),!0}if(typeof o=="string"){const r=ts(o,t);if(Array.isArray(r))return Eo(t,r,s,n,!0)}if(typeof o=="object")for(const r in o){if(B.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};X(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=F.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 zs(t,o){let{children:s,content:n}=t;const e=t.childExtends,c=typeof s=="function"||fs(t,"children");if(typeof s=="function"){const g=s;try{s=g(t,t.state,t.context)}catch(h){if(s=void 0,typeof console<"u"&&console.error){const b=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${b} (initial run, treating as empty):`,h?.message||h)}}as(t,s),t.children=s;const y=t.__ref;let p=!1;const A=T(t,t.childrenDeps,g),w=j(()=>{const h=p;p=!0;let b;try{b=A(t,t.state,t.context)}catch(P){if(typeof console<"u"&&console.error){const M=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] \`children:\` factory threw at ${M}${h?"":" (initial tracking run)"}:`,P?.message||P)}return}if(!h||b===t.children)return;as(t,b),t.children=b,y.__childrenChunkGen!=null&&y.__childrenChunkGen++;const x=typeof t.onContentUpdate=="function",S=x?[]:null,k=x?[]:null,C=x?[]:null;if(Array.isArray(b)&&t.childrenAs==="state"){const P=t.childProps,M=[],yt=new Map;for(let E=0;E<b.length;E++){const U=b[E];let O=P;if(typeof P=="function")try{O=P(t,U)}catch{O=null}const K=qo(O&&O.key,U,E,t);M.push(K),yt.set(K,{rawChild:U,childProps:O})}const qs=new Set(M),Zs=y.__children.slice();for(const E of Zs)if(!qs.has(E)){const U=t[E];U?.remove&&U.remove(),delete t[E],k&&k.push(E)}const _t=t.childExtends,Mt=t.tag==="fragment",Qs=t.context?.document||globalThis.document,gt=Mt?null:Qs?.createDocumentFragment(),Xt=new Set;for(const E of M){const U=yt.get(E),O=U.rawChild,K=t[E];if(K&&K.state){if(O&&typeof O=="object"){const N=K.state,ct=N.$replace||N.replace,Oo=N.$update||N.update;try{if(typeof ct=="function")ct.call(N,O);else if(typeof Oo=="function"){for(const I in N)if(!(I==="__element"||I==="root"||I==="parent"||I==="update")&&!Object.prototype.hasOwnProperty.call(O,I))try{N[I]=void 0}catch{}Oo.call(N,O)}else for(const I in O)N[I]=O[I]}catch(I){if(typeof console<"u"&&console.error){const Js=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${E}" failed to patch at ${Js} (reconcile, keeping its previous data for this pass):`,I?.message||I)}}}C&&C.push(E);continue}let Jt=O;(typeof O=="string"||typeof O=="number")&&(Jt={value:O,text:O});const mt=U.childProps;let V=mt?{...mt,state:Jt}:{state:Jt};const Xs=typeof P=="function"?jt(mt):lt(t,"childProps");if(_t&&!V.ignoreChildExtends)if(V.extends){const N=Array.isArray(V.extends)?V.extends:[V.extends],ct=Array.isArray(_t)?_t:[_t];V={...V,extends:[...ct,...N]}}else V={...V,extends:_t};let to;try{to=X(Pt(V,Xs),t,E,o)}catch(N){if(typeof console<"u"&&console.error){const ct=t.__ref?.path?.join(".")||t.key||"<root>";console.error(`[smbls] child "${E}" failed to construct at ${ct} (reconcile, skipping this row):`,N?.message||N)}Xt.add(E);continue}!Mt&&to?.node&&gt&&gt.appendChild(to.node),S&&S.push(E)}if(!Mt&&gt&&gt.childNodes.length&&t.node&&t.node.appendChild(gt),!Mt&&t.node){let E=null;for(const U of M){const O=t[U]?.node;if(!O)continue;const K=E?E.nextSibling:t.node.firstChild;O!==K&&t.node.insertBefore(O,K),E=O}}y.__children=Xt.size?M.filter(E=>!Xt.has(E)):M,x&&(S.length||k.length)&&Yo(t,{added:S,removed:k,kept:C}),Zt(t,!1);return}const ot=x?[...y.__children]:null;for(const P of[...y.__children]){const M=t[P];M?.remove&&M.remove(),delete t[P]}y.__children=[],Eo(t,b,o,!1,!0),Zt(t,!1),x&&Yo(t,{added:[...y.__children],removed:ot,kept:[]})},{depth:y.path.length,label:v(y,"children")});y.__effects.push(w)}const a=Eo(t,s,o,!0,c);if(n!=null&&!(n&&n.__ref)){let g=n;if(typeof g=="string"||typeof g=="number"?g={text:g}:typeof g!="object"&&(g={}),t.childProps&&(g=it(t.childProps,g)),e&&!g.ignoreChildExtends)if(g.extends){const p=Array.isArray(g.extends)?g.extends:[g.extends],A=Array.isArray(e)?e:[e];g={...g,extends:[...A,...p]}}else g={...g,extends:e};const y=Et(lt(t,"childProps"),lt(t,"content"));X(Pt(g,y),t,"content",o)}if(s&&!a)return;const r=t.context?.components||{},i=t.__ref&&t.__ref.__runtimeSource,f=i?{}:null;{const g=Object.keys(t);for(let y=0;y<g.length;y++){const p=g[y];if(!p.endsWith("Extends")||typeof t[p]!="string")continue;const A=p.slice(0,-7);if(!A||A.charCodeAt(0)<65||A.charCodeAt(0)>90)continue;const w={extends:t[p]};delete t[p];for(let h=y+1;h<g.length;h++){const b=g[h],x=b.charCodeAt(0);if(x>=65&&x<=90||B.has(b)||typeof t[b]=="function"&&(b.startsWith("on")||b.startsWith(".")))break;const S=t[b];S!==void 0&&(w[b]=S,delete t[b],f&&vt(i,b)&&(f[A]||(f[A]={}),f[A][b]=i[b]))}t[A]&&typeof t[A]=="object"?t[A]={...w,...t[A]}:t[A]=w}}const d=o?.mountYield===!0||t.yieldChildren===!0,u=Object.keys(t),l=g=>{if(B.has(g)||typeof t[g]!="object"||t[g]===null)return;const y=g.charCodeAt(0);if(y<65||y>90)return;let p=t[g];if(p.__ref)return;if(!p.extends&&!p.extend){const w=r[g]||r[`smbls.${g}`];w&&(p={...p,extends:w})}if(t.childProps&&(p=it(t.childProps,p)),e&&!p.ignoreChildExtends)if(p.extends){const w=Array.isArray(p.extends)?p.extends:[p.extends],h=Array.isArray(e)?e:[e];p={...p,extends:[...h,...w]}}else p={...p,extends:e};const A=i?Et(lt(t,"childProps"),Et(f[g]||null,lt(t,g))):null;X(Pt(p,A),t,g,o)};if(!d){for(const g of u)l(g);return}Lo();const _=g=>{for(let y=g;y<u.length;y++)if(l(u[y]),y+1<u.length&&Do()){const p=y+1;Mo(()=>_(p));return}};_(0),Ro()}function Ys(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 Fe(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&&W(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(_=>{$t(o,e,_)}).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&&z(),d&&o.__ref&&(o.__ref[i]=!1)}}return!0}var pr=X;export{Po as BEFORE_UPDATE_MAX_CONSECUTIVE_FAILURES,Fe as acquireBeforeUpdateGuard,X as create,pr as default,ro as flushMounts,ur as isStaticCssProp,dr as recompileStaticCss,lr 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};