@symbo.ls/element 3.14.577 → 3.14.595
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/dist/cjs/src/create.js +4 -4
- package/dist/esm/src/create.js +4 -4
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
package/dist/cjs/src/create.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
"use strict";var G=Object.defineProperty;var
|
|
1
|
+
"use strict";var G=Object.defineProperty;var ht=Object.getOwnPropertyDescriptor;var _t=Object.getOwnPropertyNames;var gt=Object.prototype.hasOwnProperty;var bt=(t,c)=>{for(var n in c)G(t,n,{get:c[n],enumerable:!0})},xt=(t,c,n,i)=>{if(c&&typeof c=="object"||typeof c=="function")for(let s of _t(c))!gt.call(t,s)&&s!==n&&G(t,s,{get:()=>c[s],enumerable:!(i=ht(c,s))||i.enumerable});return t};var At=t=>xt(G({},"__esModule",{value:!0}),t);var Dt={};bt(Dt,{create:()=>N,default:()=>$t});module.exports=At(Dt);var k=require("@symbo.ls/signal"),S=require("@symbo.ls/signal"),$=require("./cache.js"),E=require("./registry.js"),pt=require("./delegate.js"),lt=require("./extends.js"),yt=require("./methods.js"),Kt=require("./dispose.js"),H=require("@symbo.ls/utils"),U=require("@symbo.ls/utils/function.js"),K=require("@symbo.ls/state"),x=require("css-in-props"),ot=require("@symbo.ls/css"),A=require("@symbo.ls/scratch"),V=require("attrs-in-props");let vt=1;function F(t){return t.length>2&&t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>=65&&t.charCodeAt(2)<=90}function St(t){return t.charAt(2).toLowerCase()+t.slice(3)}function Ct(t){return t.toLowerCase()}function nt(t){const c=t.charCodeAt(0);return c===58||c===64||c===38}function W(t,c){const n={...t};for(const i in c){const s=n[i],o=c[i];s&&o&&typeof s=="object"&&typeof o=="object"&&!Array.isArray(s)&&!Array.isArray(o)&&typeof s!="function"&&typeof o!="function"?n[i]=W(s,o):n[i]=o}return n}function N(t,c,n,i={},s){if(t==null||t===!1)return null;(typeof t=="string"||typeof t=="number")&&(t={text:t});const o=Object.create(null);o.key=n||t.key||`_${vt++}`,o.parent=c||null,o.context=t.context||c?.context||i.context||{},o.context.__create||(o.context.__create=N);const r=o.__ref={__if:!0,__children:[],__exec:{},__effects:[],__eventCleanup:[],root:c?.__ref?.root||o,path:c?.__ref?.path?[...c.__ref.path,o.key]:[o.key]};if(n&&!t.extends&&!t.extend){const h=n.indexOf("_");if(h>0){const _=n.substring(0,h),g=o.context?.components;g&&(g[_]||g["smbls."+_])&&(t={...t,extends:_})}}(0,lt.applyExtends)(o,t,i);const e=new Set(["childProps","attr","style","scope","data"]),f=o.props&&typeof o.props=="object"?o.props:null;for(const h in t){if(h==="parent"||h==="node"||h==="__ref"||h==="extends"||h==="context"||h==="props")continue;const _=t[h],g=o[h],b=g&&_&&typeof g=="object"&&typeof _=="object"&&!Array.isArray(g)&&!Array.isArray(_)&&typeof g!="function"&&typeof _!="function";b&&h.charCodeAt(0)>=65&&h.charCodeAt(0)<=90?o[h]=W(g,_):b&&e.has(h)?o[h]={...g,..._}:b&&nt(h)?o[h]=W(g,_):o[h]=_}function u(h){for(const _ in h){const g=h[_],b=o[_],C=b&&g&&typeof b=="object"&&typeof g=="object"&&!Array.isArray(b)&&!Array.isArray(g)&&typeof b!="function"&&typeof g!="function";C&&_.charCodeAt(0)>=65&&_.charCodeAt(0)<=90?o[_]=W(b,g):C&&e.has(_)?o[_]={...b,...g}:C&&nt(_)?o[_]=W(b,g):o[_]=g}}f&&u(f),t.props&&typeof t.props=="object"&&u(t.props),t.data!==void 0&&(o.data=t.data),t.classlist!==void 0&&(o.classlist=t.classlist),t.text!==void 0&&(o.text=t.text),t.html!==void 0&&(o.html=t.html);const a=o.scope&&typeof o.scope=="object"?o.scope:null,d=c?.scope,p=o.context&&typeof o.context.globalScope=="object"&&o.context.globalScope||null,l=d||p||null;if(t.scope!==void 0||a){const h={};a&&Object.assign(h,a),t.scope!==void 0&&Object.assign(h,t.scope),o.scope=(0,k.createScopeStore)(h,l)}else l&&(o.scope=l);if(t.if!==void 0&&(o.if=t.if),(0,yt.addMethods)(o),jt(o,c,t),o.if!=null){let h;if(typeof o.if=="function")try{h=o.if(o,o.state,o.context)}catch(_){if(h=!1,r.__ifError=_,typeof console<"u"&&console.warn){const g=o.key||o.tag||"?";console.warn(`[smbls] \`if:\` evaluator threw on ${g} \u2014 treating as false:`,_?.message||_)}}else h=o.if;r.__if=!!h}if(r.__if)typeof t.if=="function"&&(r.__ifInitialized=!0);else return c&&(c[o.key]=o),typeof t.if=="function"&&z(o,{if:t.if}),o;o.tag||(o.tag=(0,$.detectTag)(o)),R("Init",o,i);const y=o.node=(0,$.cacheNode)(o);if(!y)return o;if(o.tag==="fragment"){const _=(o.context?.document||globalThis.document).createComment("");y.appendChild(_),r.__fragmentAnchor=_}R("AttachNode",o,i),y.setAttribute&&o.key&&y.setAttribute("data-key",o.key),y.setAttribute&&o.context?.scopeSelector&&o.context.scopeSelector!==":root"&&o.context.key&&o.key===o.context.key&&y.setAttribute("data-smbls-app",o.context.key),o.id&&y.setAttribute&&(y.id=o.id),ut(o,i),z(o,t),q(o),ft(o),Rt(o);try{dt(o,i)}catch(h){if(typeof console<"u"&&console.error){const _=o.__ref?.path?.join(".")||o.key||"<root>";console.error(`[smbls] createChildren failed at ${_}:`,h?.message||h,h?.stack?`
|
|
2
2
|
`+h.stack.split(`
|
|
3
3
|
`).slice(0,6).join(`
|
|
4
|
-
`):"")}}if(m(o,s,c),s&&(s[o.key]=o,s.__ref?.__children&&(s.__ref.__children.includes(o.key)||s.__ref.__children.push(o.key))),typeof o.html=="function"&&o.node&&!o.node.innerHTML){const h=o.context?.designSystem;h&&(0,A.pushConfig)(h);try{const _=o.html(o,o.state,o.context);_!=null&&typeof _!="function"&&(o.node.innerHTML=_)}catch{}finally{h&&(0,A.popConfig)()}}if(R("Create",o,i),R("Complete",o,i),R("Render",o,i),R("RenderRouter",o,i),typeof o.onFrame=="function"){const h=o.onFrame,_=o.context?.designSystem,g=()=>{if(o.node){if(o.node.isConnected){_&&(0,A.pushConfig)(_);try{h(o,o.state,o.context)}catch(b){console.error("[DOMQL] onFrame error:",b)}finally{_&&(0,A.popConfig)()}}requestAnimationFrame(g)}};requestAnimationFrame(g)}return o}function Ct(t,s,n){const i=!s,c=n.state&&typeof n.state=="object"&&!Array.isArray(n.state)&&Object.keys(n.state).length===0,o=i&&c&&t.context?.state,r=n.state!==void 0&&!o?n.state:t.state&&!(0,k.isStore)(t.state)?t.state:void 0;if(r==null){if(s?.state)t.state=s.state,(0,I.applyStateMethods)(t,t.state);else if(t.context?.state){const e=t.context.state,f={...e},a=t.context?.polyglot;if(a?.translations){const u=e.lang||a.defaultLang||"en",d=a.translations[u];if(d&&typeof d=="object")for(const y in d)f[y]===void 0&&(f[y]=d[y]);const p=new Set(a.languages||[]);for(const y in a.translations)!p.has(y)&&f[y]===void 0&&(f[y]=a.translations[y])}t.state=(0,k.isStore)(f)?f:(0,k.createStore)(f),t.state.__element=t,t.state.root=t.state,(0,I.applyStateMethods)(t,t.state)}else t.state={},Object.defineProperty(t.state,"root",{value:t.state,enumerable:!1,configurable:!0,writable:!0}),(0,I.applyStateMethods)(t,t.state);return}if(typeof r=="string"){if(t.state=nt(r,s),t.state&&typeof t.state=="object"&&!(0,k.isStore)(t.state)){const e=s?.state?.root||s?.state||t.state;Object.defineProperty(t.state,"root",{value:e,enumerable:!1,configurable:!0,writable:!0})}(0,I.applyStateMethods)(t,t.state);return}if(typeof r=="function"){const e=r(t,s?.state);t.state=(0,k.isStore)(e)?e:(0,k.createStore)(e||{})}else(0,k.isStore)(r)?t.state=r:t.state=(0,k.createStore)({...r});t.state.__element=t,s?.state?(t.state.parent=s.state,t.state.root=s.state.root||s.state):t.state.root=t.state,(0,I.applyStateMethods)(t,t.state)}function Z(t,s){if(!s)return t;const n=s.split("/");let i=t;for(const c of n){if(i==null)return{};i=i[c]}return i??{}}function nt(t,s){if(!s)return{};if(t===".")return s.state||{};if(t.startsWith("../")){const c=t.slice(3);return c?Z(s.state,c):s.state??{}}if(t.startsWith("~/")){const c=s.state?.root||s.state,o=t.slice(2);return o?Z(c,o):c??{}}if(s.state?.[t]!==void 0)return s.state[t];const n=Z(s.state,t);if(n!=null&&Object.keys(n).length>0)return n;const i=s.context?.polyglot;if(i?.translations){const c=s.state?.root?.lang||i.defaultLang||"en",o=i.translations[c];if(o?.[t]!==void 0)return o[t];if(i.translations[t]!==void 0)return i.translations[t]}return{}}function jt(t){const s=t.__ref,n=t.tag||"div",i=t.context?.designSystem,c=[],o=Object.keys(t);for(let r=0;r<o.length;r++){const e=o[r];if(typeof t[e]!="function"||E.REGISTRY.has(e))continue;const f=e.charCodeAt(0);f>=65&&f<=90||F(e)||x.CSS_PROPS_REGISTRY[e]||x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(e)||(0,V.checkAttributeByTagName)(n,e)||c.push({prop:e,fn:t[e]})}for(let r=0;r<c.length;r++){const{prop:e,fn:f}=c[r];s.__exec[e]=f,Object.defineProperty(t,e,{get(){i&&(0,A.pushConfig)(i);try{return f(t,t.state,t.context)}catch{return}finally{i&&(0,A.popConfig)()}},set(a){delete s.__exec[e],Object.defineProperty(t,e,{value:a,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}}function z(t,s){const n=t.__ref;if(jt(t),typeof t.text=="function"){const c=t.text,o=(0,S.createEffect)(()=>{if(!n.contentManaged)try{let r=c(t,t.state,t.context);t.node&&r!=null&&typeof r!="function"&&typeof r!="object"&&(typeof r=="string"&&r.includes("{{")&&(r=H.replaceLiteralsWithObjectFields.call(t,r,t.state)),t.tag==="string"?t.node.nodeValue=r:t.node.textContent=r)}catch{}},{depth:n.path.length});n.__effects.push(o),n.__exec.text=c}else if(typeof t.text=="string"&&t.text.includes("{{")){const c=t.text,o=(0,S.createEffect)(()=>{if(n.contentManaged)return;const r=H.replaceLiteralsWithObjectFields.call(t,c,t.state);r!=null&&(t.text=r),t.node&&(t.tag==="string"?t.node.nodeValue=r??"":t.node.textContent=r??"")},{depth:n.path.length});n.__effects.push(o),n.__exec.text=c}for(const c in t)if(Object.prototype.hasOwnProperty.call(t,c)&&typeof t[c]=="function"&&!E.REGISTRY.has(c)&&!F(c)&&!n.__exec[c]){if(x.CSS_PROPS_REGISTRY[c]){const o=t[c],r=c;let e;const f=(0,S.createEffect)(()=>{const a=t.context?.designSystem;a&&(0,A.pushConfig)(a);try{const u=o(t,t.state,t.context),d=x.CSS_PROPS_REGISTRY[r](u,t,t.state,t.context);if(d&&t.node){const p=rt(d);(p===null||p!==e)&&(e=p,K(t.node,d))}else t.node&&(r==="show"||r==="hide")&&(e=void 0,t.node.style.display="")}finally{a&&(0,A.popConfig)()}},{depth:n.path.length});n.__effects.push(f),n.__exec[c]=o}else if(x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(c)){const o=t[c],r=c;let e;const f=(0,S.createEffect)(()=>{const a=t.context?.designSystem;a&&(0,A.pushConfig)(a);try{const u=o(t,t.state,t.context);if(t.node)if(u!=null){const d=r+":"+String(u);d!==e&&(e=d,K(t.node,{[r]:u}))}else e=void 0,t.node.style[r]=""}finally{a&&(0,A.popConfig)()}},{depth:n.path.length});n.__effects.push(f),n.__exec[c]=o}}if(typeof s.html=="function"){const c=s.html,o=(0,S.createEffect)(()=>{const r=t.context?.designSystem;r&&(0,A.pushConfig)(r);try{const e=c(t,t.state,t.context);t.node&&e!=null&&typeof e!="function"&&(t.node.innerHTML=e)}finally{r&&(0,A.popConfig)()}},{depth:n.path.length});n.__effects.push(o),n.__exec.html=c}if(typeof s.value=="function"){const c=s.value,o=(0,S.createEffect)(()=>{try{const r=c(t,t.state,t.context);if(!t.node||!("value"in t.node))return;const e=r==null?"":String(r);if(t.node.value===e)return;const f=typeof document<"u"&&document.activeElement===t.node,a=f&&typeof t.node.selectionStart=="number"?t.node.selectionStart:null,u=f&&typeof t.node.selectionEnd=="number"?t.node.selectionEnd:null;if(t.node.value=e,f&&a!=null&&u!=null)try{t.node.setSelectionRange(a,u)}catch{}}catch{}},{depth:n.path.length});n.__effects.push(o),n.__exec.value=c}if(typeof s.style=="function"){const c=s.style;let o;const r=(0,S.createEffect)(()=>{const e=c(t,t.state,t.context),f=rt(e);(f===null||f!==o)&&(o=f,K(t.node,e))},{depth:n.path.length});n.__effects.push(r),n.__exec.style=c}else if(t.style&&typeof t.style=="object")for(const c in t.style){const o=t.style[c];if(typeof o!="function")continue;let r;const e=(0,S.createEffect)(()=>{try{const f=o(t,t.state,t.context);if(t.node){const a=c+":"+String(f);a!==r&&(r=a,K(t.node,{[c]:f}))}}catch{}},{depth:n.path.length});n.__effects.push(e)}if(t.attr&&typeof t.attr=="object"){for(const c in t.attr)if(typeof t.attr[c]=="function"){const o=t.attr[c],r=c,e=(0,S.createEffect)(()=>{try{const f=o(t,t.state,t.context);t.node?.setAttribute&&(f==null||f===!1?t.node.removeAttribute(r):typeof f!="function"&&typeof f!="object"&&t.node.setAttribute(r,f===!0?"":f))}catch{}},{depth:n.path.length});n.__effects.push(e)}}if(t.aria&&typeof t.aria=="object")for(const c in t.aria){const o=t.aria[c];if(typeof o!="function")continue;const r="aria-"+c.replace(/[A-Z]/g,f=>"-"+f.toLowerCase()),e=(0,S.createEffect)(()=>{try{const f=o(t,t.state,t.context);if(!t.node?.setAttribute)return;f==null||f===!1?t.node.removeAttribute(r):typeof f!="function"&&typeof f!="object"&&t.node.setAttribute(r,f===!0?"":f)}catch{}},{depth:n.path.length});n.__effects.push(e)}if(t.data&&typeof t.data=="object")for(const c in t.data){const o=t.data[c];if(typeof o!="function")continue;const e="data-"+c.replace(/[A-Z]/g,a=>"-"+a.toLowerCase()),f=(0,S.createEffect)(()=>{try{const a=o(t,t.state,t.context);if(!t.node?.setAttribute)return;a==null||a===!1?t.node.removeAttribute(e):typeof a!="function"&&typeof a!="object"&&t.node.setAttribute(e,a===!0?"":a)}catch{}},{depth:n.path.length});n.__effects.push(f)}const i=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(i)for(const c in i){const o=i[c];if(typeof o!="function")continue;const r=(0,S.createEffect)(()=>{try{const e=o(t,t.state,t.context);if(!t.node?.classList)return;typeof e=="string"?t.node.classList.add(e):e?t.node.classList.add(c):t.node.classList.remove(c)}catch{}},{depth:n.path.length});n.__effects.push(r)}if(typeof s.if=="function"){const c=s.if,o=(0,S.createEffect)(()=>{let r;try{r=c(t,t.state,t.context)}catch(f){if(r=!1,n.__ifError=f,typeof console<"u"&&console.warn){const a=t.key||t.tag||"?";console.warn(`[smbls] \`if:\` reactive effect threw on ${a} \u2014 treating as false:`,f?.message||f)}return}const e=n.__if;if(n.__if=!!r,e&&!n.__if&&t.node)t.node.remove();else if(!e&&n.__if)if(n.__ifInitialized){t.node||(t.node=(0,$.cacheNode)(t)),t.node&&(t.node.ref=t);const f=t.parent,a=f?.node;if(a&&t.node){let u=null;const d=Object.keys(f),p=d.indexOf(t.key);for(let y=p+1;y<d.length;y++){const l=f[d[y]];if(l?.node?.parentNode===a){u=l.node;break}}u?a.insertBefore(t.node,u):a.appendChild(t.node)}else m(t,t.parent);q(t)}else{if(n.__ifInitialized=!0,t.tag||(t.tag=(0,$.detectTag)(t)),R("Init",t,{}),t.node||(t.node=(0,$.cacheNode)(t)),!t.node)return;if(t.tag==="fragment"&&!n.__fragmentAnchor){const u=(t.context?.document||globalThis.document).createComment("");t.node.appendChild(u),n.__fragmentAnchor=u}R("AttachNode",t,{}),t.node.setAttribute&&t.key&&t.node.setAttribute("data-key",t.key),t.id&&t.node.setAttribute&&(t.node.id=t.id),at(t,{});const f=s.if;delete s.if;try{z(t,s)}finally{s.if=f}q(t),et(t),ut(t,{}),m(t,t.parent)}},{depth:n.path.length});n.__effects.push(o)}for(const c in t){if(!Object.prototype.hasOwnProperty.call(t,c)||E.REGISTRY.has(c)||typeof t[c]!="function")continue;const o=c.charCodeAt(0);if(o>=65&&o<=90||F(c))continue;const r=t[c];n.__exec[c]=r;const e=t.tag||"div";if((0,V.checkAttributeByTagName)(e,c)&&!x.CSS_PROPS_REGISTRY[c]&&!(x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(c))){const f=c,a=(0,S.createEffect)(()=>{try{const u=r(t,t.state,t.context);t.node?.setAttribute&&(u==null||u===!1?t.node.removeAttribute(f):typeof u!="function"&&typeof u!="object"&&(f==="src"&&"src"in t.node?t.node.src=u:t.node.setAttribute(f,u===!0?"":u)))}catch{}},{depth:n.path.length});n.__effects.push(a)}}Et(t),Pt(t)}function q(t){const{node:s}=t;if(s){if(typeof t.text=="string"&&!t.text.includes("{{")?t.tag==="string"?s.nodeValue=t.text:s.textContent=t.text:typeof t.text=="number"&&(s.textContent=t.text),Lt(t),typeof t.html=="string"&&(s.innerHTML=t.html),t.value!=null&&typeof t.value!="function"&&"value"in s){const n=String(t.value);s.value!==n&&(s.value=n)}if(t.style&&typeof t.style=="object"&&K(s,t.style),t.attr&&typeof t.attr=="object")for(const n in t.attr){const i=t.attr[n];typeof i=="function"||typeof i=="object"||i==null||i===!1||s.setAttribute&&s.setAttribute(n,i===!0?"":i)}if(t.data&&typeof t.data=="object")for(const n in t.data){const i=t.data[n];typeof i=="function"||typeof i=="object"||i==null||i===!1||s.dataset&&(s.dataset[n]=i===!0?"":i)}if(t.classlist||t.class){const n=t.classlist||t.class;if(typeof n=="string")n.split(" ").forEach(i=>i&&s.classList.add(i));else if(typeof n=="object")for(const i in n){const c=typeof n[i]=="function"?n[i](t,t.state,t.context):n[i];c&&s.classList.add(typeof c=="string"?c:i)}}}}function rt(t){if(t==null||typeof t!="object")return"s:"+String(t);try{return"o:"+JSON.stringify(t)}catch{return null}}function K(t,s){if(!t||!s||!t.style)return;let n=null;for(const i in s){const c=s[i];if(c!=null){if(i.charAt(0)==="&"&&typeof c=="object"){n||(n={}),n[i]=c;continue}try{const o=String(c),r=i.replace(/[A-Z]/g,u=>"-"+u.toLowerCase()),e=o.trim(),f=/\s*!important\s*$/.test(e),a=e.replace(/\s*!important\s*$/,"");t.style.setProperty(r,a,f?"important":"")}catch{}}}n&&wt(t,n)}let kt=0;function wt(t,s){const n=`_ds${kt++}`;t.classList.add(n);const i=t.ownerDocument;let c=i.querySelector("style[data-smbls-scoped]");c||(c=i.createElement("style"),c.setAttribute("data-smbls-scoped",""),i.head.appendChild(c));let o="";for(const r in s){const e="."+n,f=r.replace(/&/g,e).split(",").map(u=>{const d=u.trim();return d.includes(e)?d:e+d}).join(", "),a=s[r];if(typeof a=="object"){let u="",d="";for(const p in a){const y=a[p];if(typeof y=="object"){const l=p.includes("&")?f.split(", ").map(_=>p.replace(/&/g,_)).join(", "):f.split(", ").map(_=>`${_} ${p}`).join(", ");let h="";for(const _ in y)h+=`${_.replace(/[A-Z]/g,g=>"-"+g.toLowerCase())}: ${y[_]};`;d+=`${l} { ${h} }
|
|
5
|
-
`}else
|
|
6
|
-
`),d&&(o+=d)}}o&&(c.textContent+=o)}function Et(t){const s=t.subscribeTo;if(!Array.isArray(s)||s.length===0)return;const n=t.__ref;for(let i=0;i<s.length;i++){const c=s[i];if(typeof c!="string"||c.length===0)continue;const o=c.split("."),r=o[0],e=o.slice(1),f={value:!1},a=(0,S.createEffect)(()=>{const u=t.state&&((0,k.isStore)(t.state)?t.state.root:null);if(!u||!(0,k.isStore)(u))return;let d=u;d=d[r];for(let p=0;p<e.length&&!(d==null||typeof d!="object");p++)if((0,k.isStore)(d))d=d[e[p]];else break;if(f.value&&(typeof t.onBeforeUpdate=="function"||typeof t.onUpdate=="function")){const p=t.context?.designSystem;p&&(0,A.pushConfig)(p);let y="onBeforeUpdate";try{let l=!1;typeof t.onBeforeUpdate=="function"&&t.onBeforeUpdate(t,t.state,t.context,{updateBySubscription:!0})===!1&&(l=!0),y="onUpdate",!l&&typeof t.onUpdate=="function"&&t.onUpdate(t,t.state,t.context)}catch(l){t.context?.plugins?.length&&(0,U.runPluginHook)("error",t,{hook:y,error:l})||console.error(`[DOMQL] subscribeTo ${y} error:`,l)}finally{p&&(0,A.popConfig)()}}},{depth:n.path.length});f.value=!0,a._isSubscribeToEffect=!0,n.__effects.push(a)}}function Pt(t){const s=t.__ref;s.__conditionalRunners=[];for(const n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;const i=n.charAt(0);if(i!=="."&&i!=="!")continue;const c=n.slice(1);if(!c)continue;const o=t[n];if(!o||typeof o!="object")continue;const r=i==="!",e={lastMatch:!1,appliedKeys:null},f=()=>{if(!t.node)return;let u;const d=t[c];if(d===void 0)if(t.state&&c in t.state)u=t.state[c];else{const l=t.context?.cases?.[c];if(l===void 0)return;try{u=typeof l=="function"?l.call(t,t):l}catch(h){u=!1,s.__conditionalError=h,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` case fn threw on ${t.key||"?"} \u2014 treating as false:`,h?.message||h)}}else if(typeof d=="function")try{u=d(t,t.state,t.context)}catch(l){u=!1,s.__conditionalError=l,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` predicate threw on ${t.key||"?"} \u2014 treating as false:`,l?.message||l)}else u=d;const p=r?!u:!!u;if(p===e.lastMatch)return;e.lastMatch=p;const y=t.context?.designSystem;y&&(0,A.pushConfig)(y);try{if(p){const l={};for(const _ in o){if(!Object.prototype.hasOwnProperty.call(o,_))continue;const g=typeof o[_]=="function"?o[_](t,t.state,t.context):o[_];if(g!=null)if(x.CSS_PROPS_REGISTRY[_]){const b=x.CSS_PROPS_REGISTRY[_](g,t,t.state,t.context);if(b){const C=Array.isArray(b)?b:[b];for(const D of C)D&&Object.assign(l,D)}}else x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(_)&&(l[_]=g)}const h=Object.keys(l);h.length?(K(t.node,l),e.appliedKeys=h):e.appliedKeys=null}else if(e.appliedKeys){for(const l of e.appliedKeys)t.node.style[l]="";e.appliedKeys=null}}finally{y&&(0,A.popConfig)()}};s.__conditionalRunners.push(f);const a=(0,S.createEffect)(f,{depth:s.path.length});s.__effects.push(a)}}const X=new WeakSet;function Ot(t){const s=t.ownerDocument;!s||X.has(s)||(X.add(s),queueMicrotask(()=>{X.delete(s);const n=s.body||s.documentElement;n&&n.offsetWidth}))}const Q=new WeakSet;let it=!1;function Lt(t){const{node:s}=t;if(!s)return;if(it||(it=!0,(0,tt.css)({display:"none"})),Q.has(t)){console.error("[applyCssInProps] re-entry detected for element",t.key,"prop path:",t.__ref?.path);return}Q.add(t);const n=t.context?.designSystem;n&&(0,A.pushConfig)(n);try{const i={};let c=!1;for(const o in t){if(!Object.prototype.hasOwnProperty.call(t,o)||typeof t[o]=="function"||E.REGISTRY.has(o))continue;const r=o.charCodeAt(0);if(!(r>=65&&r<=90)&&!F(o)){if(x.CSS_PROPS_REGISTRY[o]){const e=t[o],f=x.CSS_PROPS_REGISTRY[o](e,t,t.state,t.context);if(f){if(Array.isArray(f))for(const a of f)a&&Object.assign(i,a);else Object.assign(i,f);c=!0}}else if(x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(o)){const e=t[o];e!=null&&typeof e!="object"&&(i[o]=e,c=!0)}else if(o.charCodeAt(0)===45){const e=t[o];e!=null&&typeof e!="object"&&(i[o]=e,c=!0)}else if(o.charAt(0)==="&"){const e=t[o];e&&typeof e=="object"&&(i[o]=e,c=!0)}else if(o.charAt(0)==="@"||o.charAt(0)===":"){const e=t[o];if(e&&typeof e=="object"){const f={},a=(u,d,p)=>{if(x.CSS_PROPS_REGISTRY[d]){const y=x.CSS_PROPS_REGISTRY[d](p,t,t.state,t.context);if(y)if(Array.isArray(y))for(const l of y)l&&Object.assign(u,l);else Object.assign(u,y)}else u[d]=p};for(const u in e){let d=e[u];if(typeof d=="function"&&(d=d(t,t.state,t.context)),!(d==null||typeof d=="function")){if(u==="style"&&typeof d=="object"&&!Array.isArray(d)){for(const p in d){let y=d[p];typeof y=="function"&&(y=y(t,t.state,t.context)),!(y==null||typeof y=="function")&&a(f,p,y)}continue}a(f,u,d)}}if(Object.keys(f).length){if(o.length>1&&o.charAt(0)==="@"&&!o.startsWith("@media")&&!o.startsWith("@keyframes")&&!o.startsWith("@supports")&&(o==="@dark"||o==="@light"||!t.context?.designSystem?.media?.[o.slice(1)])){const d={};for(const y in f){const l=f[y];d[y]=typeof l=="string"&&!l.includes("!important")?l+" !important":l}const p=o.slice(1);i[`[data-theme="${p}"] &`]=d}else{let d=o;if(o.charAt(0)==="@"&&!o.startsWith("@media")&&!o.startsWith("@keyframes")){const y=o.slice(1),l=t.context?.designSystem?.media?.[y]||t.context?.designSystem?.media?.[y];l&&(d=`@media ${l}`)}const p={};for(const y in f){const l=f[y];if(l&&typeof l=="object"&&!Array.isArray(l)){const h={};for(const _ in l)if(x.CSS_PROPS_REGISTRY[_]){const g=x.CSS_PROPS_REGISTRY[_](l[_],t,t.state,t.context);if(g)if(Array.isArray(g))for(const b of g)b&&Object.assign(h,b);else Object.assign(h,g)}else h[_]=l[_];p[y]=h}else p[y]=l}Object.keys(p).length&&(i[d]=p)}c=!0}c=!0}}}}if(c){i.display&&String(i.display).includes("!important")&&(s.style.setProperty("display",String(i.display).replace(/\s*!important\s*$/,""),"important"),delete i.display);const o=(0,tt.css)(i,null,t.context?.cssPrefix);if(o&&s.classList){const e=o.split(" ").filter(Boolean);let f=!1;for(const a of e)s.classList.add(a),f||(a.charCodeAt(0)===95&&a.charCodeAt(1)===99||a.charCodeAt(0)===95&&a.indexOf("_c",1)!==-1)&&(f=!0);f&&Ot(s)}const r=t.display!=null&&typeof t.display!="function"?t.display:t.hide===!0||t.show===!1?"none":null;if(r!=null){const e=i.display;if(e&&e!==r)if(r==="none"){const f=[];for(const a of s.classList)a.startsWith("_d-")&&a!=="_d-none"&&f.push(a);for(const a of f)s.classList.remove(a);s.classList.add("_d-none")}else s.style.display=t.display}}}finally{n&&(0,A.popConfig)(),Q.delete(t)}}function et(t){const{node:s}=t;if(!s||!s.setAttribute)return;if(t.aria&&typeof t.aria=="object")for(const c in t.aria){const o=t.aria[c];if(typeof o=="function"||typeof o=="object"||o==null||o===!1)continue;const r="aria-"+c.replace(/[A-Z]/g,e=>"-"+e.toLowerCase());s.setAttribute(r,o===!0?"":o)}const n=(0,V.applyAttrTransforms)(t);for(const c in n){const o=n[c];o!=null&&o!==!1&&typeof o!="function"&&typeof o!="object"&&s.setAttribute(c,o===!0?"":o)}const i=t.tag||"div";for(const c in t){if(!Object.prototype.hasOwnProperty.call(t,c)||typeof t[c]=="function"||E.REGISTRY.has(c)||c==="on"||n[c]!==void 0)continue;const o=c.charCodeAt(0);if(!(o>=65&&o<=90)&&!F(c)&&!(x.CSS_PROPS_REGISTRY[c]||x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(c))&&(0,V.checkAttributeByTagName)(i,c)){let r=t[c];if(r==null||r===!1||(typeof r=="string"&&r.includes("{{")&&(r=(0,H.replaceLiteralsWithObjectFields)(r,t,t.state,t.context),t[c]=r),r==null||r===!1||typeof r=="function"||typeof r=="object"))continue;s.setAttribute(c,r===!0?"":r)}}}function Tt(t){if(!t.autoGrow)return;const s=t.node;if(!s||s.tagName!=="TEXTAREA")return;const n=t.autoGrow,i=n&&typeof n=="object"&&n.max?String(n.max):null;i&&(s.style.maxHeight=i);const c=()=>{s.style.height="auto",s.style.height=s.scrollHeight+"px"};c(),s.addEventListener("input",c),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{s.removeEventListener("input",c)}catch{}})}const ft=new Set(["onSwipe","onSwipeLeft","onSwipeRight","onSwipeUp","onSwipeDown"]);function at(t,s){for(const n in t){if(!Object.prototype.hasOwnProperty.call(t,n)||!F(n)||ft.has(n))continue;let i=t[n];if(typeof i=="string"&&/^[A-Za-z_$][\w$]*$/.test(i)){const o=i;i=function(e){return t.call(o,e)}}if(typeof i!="function")continue;const c=vt(n);E.LIFECYCLE_EVENTS.has(c)||(0,dt.registerEvent)(St(c),t,i)}Rt(t)}function Rt(t){const s=t.node;if(!s||!s.addEventListener)return;const n={};let i=!1;for(const p of ft){const y=t[p];typeof y=="function"&&(n[p]=y,i=!0)}if(!i)return;const c=typeof t.swipeThreshold=="number"?t.swipeThreshold:40,o=typeof t.swipeMaxDuration=="number"?t.swipeMaxDuration:600;let r=0,e=0,f=0,a=!1;const u=p=>{const y=p.touches&&p.touches[0]||p.changedTouches&&p.changedTouches[0];y&&(r=y.clientX,e=y.clientY,f=Date.now(),a=!0)},d=p=>{if(!a)return;a=!1;const y=p.changedTouches&&p.changedTouches[0]||p.touches&&p.touches[0];if(!y)return;const l=y.clientX-r,h=y.clientY-e,_=Date.now()-f;if(_>o)return;const g=Math.abs(l),b=Math.abs(h);if(Math.max(g,b)<c)return;let C;if(g>b*1.2)C=l<0?"left":"right";else if(b>g*1.2)C=h<0?"up":"down";else return;const D="onSwipe"+C.charAt(0).toUpperCase()+C.slice(1),T=n[D],j=n.onSwipe;T&&T.call(t,p,t,t.state,t.context),j&&j.call(t,{direction:C,dx:l,dy:h,dt:_,event:p},t,t.state,t.context)};s.addEventListener("touchstart",u,{passive:!0}),s.addEventListener("touchend",d,{passive:!0}),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{s.removeEventListener("touchstart",u)}catch{}try{s.removeEventListener("touchend",d)}catch{}})}function B(t,s){const n={...t};for(const i in s){const c=n[i],o=s[i];c&&o&&typeof c=="object"&&typeof o=="object"&&!Array.isArray(c)&&!Array.isArray(o)&&typeof c!="function"&&typeof o!="function"?n[i]=B(c,o):n[i]=o}return n}function J(t,s,n){if(!s||!t.node)return;const i=t.childExtends;if(Array.isArray(s)){const c=t.tag==="fragment",o=t.context?.document||globalThis.document,r=c?null:o?.createDocumentFragment();if(!c&&!r)return;const e=t.childProps,f=t.childrenAs;for(let a=0;a<s.length;a++){let u=s[a];const d=u;(typeof u=="string"||typeof u=="number")&&(u={text:u});let p=e;if(typeof e=="function")try{p=e(t,u)}catch{p=null}if(f==="state"){let h=d;(typeof d=="string"||typeof d=="number")&&(h={value:d,text:d}),u=p?{...p,state:h}:{state:h}}else p&&(u=B(p,u));if(i&&!u.ignoreChildExtends)if(u.extends){const h=Array.isArray(u.extends)?u.extends:[u.extends],_=Array.isArray(i)?i:[i];u={...u,extends:[..._,...h]}}else u={...u,extends:i};const y=u?.key||d&&typeof d=="object"&&d.key||`${a}`,l=N(u,t,y,n);!c&&l?.node&&r.appendChild(l.node)}c||t.node.appendChild(r);return}if(typeof s=="string"){const c=nt(s,t);if(Array.isArray(c)){J(t,c,n);return}}if(typeof s=="object")for(const c in s){if(E.REGISTRY.has(c))continue;let o=s[c];if(!(o==null||o===!1)){if((typeof o=="string"||typeof o=="number")&&(o={text:o}),t.childProps&&(o=B(t.childProps,o)),i&&!o.ignoreChildExtends)if(o.extends){const r=Array.isArray(o.extends)?o.extends:[o.extends],e=Array.isArray(i)?i:[i];o={...o,extends:[...e,...r]}}else o={...o,extends:i};N(o,t,c,n)}}}function ut(t,s){let{children:n,content:i}=t;const c=t.childExtends;if(typeof n=="function"){const r=n;n=r(t,t.state,t.context),t.children=n;const e=t.__ref;let f=!1;const a=(0,S.createEffect)(()=>{const u=r(t,t.state,t.context);if(!f){f=!0;return}if(u===t.children)return;if(t.children=u,Array.isArray(u)&&t.childrenAs==="state"){const y=t.childProps,l=[],h=new Map;for(let j=0;j<u.length;j++){const P=u[j];let v=y;if(typeof y=="function")try{v=y(t,P)}catch{v=null}const M=v&&v.key||P&&P.key||`${j}`;l.push(M),h.set(M,{rawChild:P,childProps:v})}const _=new Set(l),g=e.__children.slice();for(const j of g)if(!_.has(j)){const P=t[j];P?.remove&&P.remove(),delete t[j]}const b=t.childExtends,C=t.tag==="fragment",D=t.context?.document||globalThis.document,T=C?null:D?.createDocumentFragment();for(const j of l){const P=h.get(j),v=P.rawChild,M=t[j];if(M&&M.state){if(v&&typeof v=="object"){const L=M.state;if(typeof L.replace=="function")L.replace(v);else if(typeof L.update=="function"){for(const w in L)if(!(w==="__element"||w==="root"||w==="parent"||w==="update")&&!Object.prototype.hasOwnProperty.call(v,w))try{L[w]=void 0}catch{}L.update(v)}else for(const w in v)L[w]=v[w]}continue}let Y=v;(typeof v=="string"||typeof v=="number")&&(Y={value:v,text:v});const ot=P.childProps;let O=ot?{...ot,state:Y}:{state:Y};if(b&&!O.ignoreChildExtends)if(O.extends){const L=Array.isArray(O.extends)?O.extends:[O.extends],w=Array.isArray(b)?b:[b];O={...O,extends:[...w,...L]}}else O={...O,extends:b};const st=N(O,t,j,s);!C&&st?.node&&T&&T.appendChild(st.node)}!C&&T&&T.childNodes.length&&t.node&&t.node.appendChild(T),e.__children=l;return}for(const y of[...e.__children]){const l=t[y];l?.remove&&l.remove(),delete t[y]}e.__children=[],J(t,u,s)},{depth:e.path.length});e.__effects.push(a)}if(J(t,n||i,s),n||i)return;const o=t.context?.components||{};{const r=Object.keys(t);for(let e=0;e<r.length;e++){const f=r[e];if(!f.endsWith("Extends")||typeof t[f]!="string")continue;const a=f.slice(0,-7);if(!a||a.charCodeAt(0)<65||a.charCodeAt(0)>90)continue;const u={extends:t[f]};delete t[f];for(let d=e+1;d<r.length;d++){const p=r[d],y=p.charCodeAt(0);if(y>=65&&y<=90||E.REGISTRY.has(p)||typeof t[p]=="function"&&(p.startsWith("on")||p.startsWith(".")))break;const l=t[p];l!==void 0&&(u[p]=l,delete t[p])}t[a]&&typeof t[a]=="object"?t[a]={...u,...t[a]}:t[a]=u}}for(const r in t){if(!Object.prototype.hasOwnProperty.call(t,r)||E.REGISTRY.has(r)||typeof t[r]!="object"||t[r]===null)continue;const e=r.charCodeAt(0);if(e<65||e>90)continue;let f=t[r];if(!f.__ref){if(!f.extends&&!f.extend){const a=o[r]||o[`smbls.${r}`];a&&(f={...f,extends:a})}if(t.childProps&&(f=B(t.childProps,f)),c&&!f.ignoreChildExtends)if(f.extends){const a=Array.isArray(f.extends)?f.extends:[f.extends],u=Array.isArray(c)?c:[c];f={...f,extends:[...u,...a]}}else f={...f,extends:c};N(f,t,r,s)}}}function m(t,s,n){const{node:i}=t;if(!i)return;i.ref=t;const c=s?.tag==="fragment"?s.__ref?.__fragmentAnchor:null;if(c){const r=c.parentNode;if(r){if(n?.position==="before"&&n.node)r.insertBefore(i,n.node);else if(n?.position==="after"&&n.node){const e=n.node.nextSibling;r.insertBefore(i,e||c)}else r.insertBefore(i,c);return}}const o=s?.node||(s?.nodeType?s:null);if(o)if(n?.position==="before"&&n.node)o.insertBefore(i,n.node);else if(n?.position==="after"&&n.node){const r=n.node.nextSibling;r?o.insertBefore(i,r):o.appendChild(i)}else o.appendChild(i)}function R(t,s,n){const i=t.charAt(0).toLowerCase()+t.slice(1);s.context?.plugins?.length&&(0,U.runPluginHook)(i,s,n);const c="on"+t,o=s[c];if(typeof o=="function"){const r=t==="Render"||t==="RenderRouter";if(r){if(s.__ref.__inRender)return!0;s.__ref.__inRender=!0}const e=s.context?.designSystem;e&&(0,A.pushConfig)(e);try{if(o(s,s.state,s.context,n)===!1)return!1}catch(f){if(s.context?.plugins?.length&&(0,U.runPluginHook)("error",s,{hook:c,error:f})||console.error(`[DOMQL] Lifecycle "${c}" error:`,f),s.context?.strictMode)throw f}finally{e&&(0,A.popConfig)(),r&&(s.__ref.__inRender=!1)}}return!0}var Nt=N;
|
|
4
|
+
`):"")}}if(m(o,!0),tt(o,c,s),c&&(c[o.key]=o,c.__ref?.__children&&(c.__ref.__children.includes(o.key)||c.__ref.__children.push(o.key))),typeof o.html=="function"&&o.node&&!o.node.innerHTML){const h=o.context?.designSystem;h&&(0,A.pushConfig)(h);try{const _=o.html(o,o.state,o.context);_!=null&&typeof _!="function"&&(o.node.innerHTML=_)}catch{}finally{h&&(0,A.popConfig)()}}if(R("Create",o,i),R("Complete",o,i),R("Render",o,i),R("RenderRouter",o,i),typeof o.onFrame=="function"){const h=o.onFrame,_=o.context?.designSystem,g=()=>{if(o.node){if(o.node.isConnected){_&&(0,A.pushConfig)(_);try{h(o,o.state,o.context)}catch(b){console.error("[DOMQL] onFrame error:",b)}finally{_&&(0,A.popConfig)()}}requestAnimationFrame(g)}};requestAnimationFrame(g)}return o}function jt(t,c,n){const i=!c,s=n.state&&typeof n.state=="object"&&!Array.isArray(n.state)&&Object.keys(n.state).length===0,o=i&&s&&t.context?.state,r=n.state!==void 0&&!o?n.state:t.state&&!(0,k.isStore)(t.state)?t.state:void 0;if(r==null){if(c?.state)t.state=c.state,(0,K.applyStateMethods)(t,t.state);else if(t.context?.state){const e=t.context.state,f={...e},u=t.context?.polyglot;if(u?.translations){const a=e.lang||u.defaultLang||"en",d=u.translations[a];if(d&&typeof d=="object")for(const l in d)f[l]===void 0&&(f[l]=d[l]);const p=new Set(u.languages||[]);for(const l in u.translations)!p.has(l)&&f[l]===void 0&&(f[l]=u.translations[l])}t.state=(0,k.isStore)(f)?f:(0,k.createStore)(f),t.state.__element=t,t.state.root=t.state,(0,K.applyStateMethods)(t,t.state)}else t.state={},Object.defineProperty(t.state,"root",{value:t.state,enumerable:!1,configurable:!0,writable:!0}),(0,K.applyStateMethods)(t,t.state);return}if(typeof r=="string"){if(t.state=rt(r,c),t.state&&typeof t.state=="object"&&!(0,k.isStore)(t.state)){const e=c?.state?.root||c?.state||t.state;Object.defineProperty(t.state,"root",{value:e,enumerable:!1,configurable:!0,writable:!0})}(0,K.applyStateMethods)(t,t.state);return}if(typeof r=="function"){const e=r(t,c?.state);t.state=(0,k.isStore)(e)?e:(0,k.createStore)(e||{})}else(0,k.isStore)(r)?t.state=r:t.state=(0,k.createStore)({...r});t.state.__element=t,c?.state?(t.state.parent=c.state,t.state.root=c.state.root||c.state):t.state.root=t.state,(0,K.applyStateMethods)(t,t.state)}function Z(t,c){if(!c)return t;const n=c.split("/");let i=t;for(const s of n){if(i==null)return{};i=i[s]}return i??{}}function rt(t,c){if(!c)return{};if(t===".")return c.state||{};if(t.startsWith("../")){const s=t.slice(3);return s?Z(c.state,s):c.state??{}}if(t.startsWith("~/")){const s=c.state?.root||c.state,o=t.slice(2);return o?Z(s,o):s??{}}if(c.state?.[t]!==void 0)return c.state[t];const n=Z(c.state,t);if(n!=null&&Object.keys(n).length>0)return n;const i=c.context?.polyglot;if(i?.translations){const s=c.state?.root?.lang||i.defaultLang||"en",o=i.translations[s];if(o?.[t]!==void 0)return o[t];if(i.translations[t]!==void 0)return i.translations[t]}return{}}function kt(t){const c=t.__ref,n=t.tag||"div",i=t.context?.designSystem,s=[],o=Object.keys(t);for(let r=0;r<o.length;r++){const e=o[r];if(typeof t[e]!="function"||E.REGISTRY.has(e))continue;const f=e.charCodeAt(0);f>=65&&f<=90||F(e)||x.CSS_PROPS_REGISTRY[e]||x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(e)||(0,V.checkAttributeByTagName)(n,e)||s.push({prop:e,fn:t[e]})}for(let r=0;r<s.length;r++){const{prop:e,fn:f}=s[r];c.__exec[e]=f,Object.defineProperty(t,e,{get(){i&&(0,A.pushConfig)(i);try{return f(t,t.state,t.context)}catch{return}finally{i&&(0,A.popConfig)()}},set(u){delete c.__exec[e],Object.defineProperty(t,e,{value:u,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}}function z(t,c){const n=t.__ref;if(kt(t),typeof t.text=="function"){const s=t.text,o=(0,S.createEffect)(()=>{if(!n.contentManaged)try{let r=s(t,t.state,t.context);t.node&&r!=null&&typeof r!="function"&&typeof r!="object"&&(typeof r=="string"&&r.includes("{{")&&(r=H.replaceLiteralsWithObjectFields.call(t,r,t.state)),t.tag==="string"?t.node.nodeValue=r:t.node.textContent=r)}catch{}},{depth:n.path.length});n.__effects.push(o),n.__exec.text=s}else if(typeof t.text=="string"&&t.text.includes("{{")){const s=t.text,o=(0,S.createEffect)(()=>{if(n.contentManaged)return;const r=H.replaceLiteralsWithObjectFields.call(t,s,t.state);r!=null&&(t.text=r),t.node&&(t.tag==="string"?t.node.nodeValue=r??"":t.node.textContent=r??"")},{depth:n.path.length});n.__effects.push(o),n.__exec.text=s}for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)&&typeof t[s]=="function"&&!E.REGISTRY.has(s)&&!F(s)&&!n.__exec[s]){if(x.CSS_PROPS_REGISTRY[s]){const o=t[s],r=s;let e;const f=(0,S.createEffect)(()=>{const u=t.context?.designSystem;u&&(0,A.pushConfig)(u);try{const a=o(t,t.state,t.context),d=x.CSS_PROPS_REGISTRY[r](a,t,t.state,t.context);if(d&&t.node){const p=it(d);(p===null||p!==e)&&(e=p,I(t.node,d))}else t.node&&(r==="show"||r==="hide")&&(e=void 0,t.node.style.display="")}finally{u&&(0,A.popConfig)()}},{depth:n.path.length});n.__effects.push(f),n.__exec[s]=o}else if(x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(s)){const o=t[s],r=s;let e;const f=(0,S.createEffect)(()=>{const u=t.context?.designSystem;u&&(0,A.pushConfig)(u);try{const a=o(t,t.state,t.context);if(t.node)if(a!=null){const d=r+":"+String(a);d!==e&&(e=d,I(t.node,{[r]:a}))}else e=void 0,t.node.style[r]=""}finally{u&&(0,A.popConfig)()}},{depth:n.path.length});n.__effects.push(f),n.__exec[s]=o}}if(typeof c.html=="function"){const s=c.html,o=(0,S.createEffect)(()=>{const r=t.context?.designSystem;r&&(0,A.pushConfig)(r);try{const e=s(t,t.state,t.context);t.node&&e!=null&&typeof e!="function"&&(t.node.innerHTML=e)}finally{r&&(0,A.popConfig)()}},{depth:n.path.length});n.__effects.push(o),n.__exec.html=s}if(typeof c.value=="function"){const s=c.value,o=(0,S.createEffect)(()=>{try{const r=s(t,t.state,t.context);if(!t.node||!("value"in t.node))return;const e=r==null?"":String(r);if(t.node.value===e)return;const f=typeof document<"u"&&document.activeElement===t.node,u=f&&typeof t.node.selectionStart=="number"?t.node.selectionStart:null,a=f&&typeof t.node.selectionEnd=="number"?t.node.selectionEnd:null;if(t.node.value=e,f&&u!=null&&a!=null)try{t.node.setSelectionRange(u,a)}catch{}}catch{}},{depth:n.path.length});n.__effects.push(o),n.__exec.value=s}if(typeof c.style=="function"){const s=c.style;let o;const r=(0,S.createEffect)(()=>{const e=s(t,t.state,t.context),f=it(e);(f===null||f!==o)&&(o=f,I(t.node,e))},{depth:n.path.length});n.__effects.push(r),n.__exec.style=s}else if(t.style&&typeof t.style=="object")for(const s in t.style){const o=t.style[s];if(typeof o!="function")continue;let r;const e=(0,S.createEffect)(()=>{try{const f=o(t,t.state,t.context);if(t.node){const u=s+":"+String(f);u!==r&&(r=u,I(t.node,{[s]:f}))}}catch{}},{depth:n.path.length});n.__effects.push(e)}if(t.attr&&typeof t.attr=="object"){for(const s in t.attr)if(typeof t.attr[s]=="function"){const o=t.attr[s],r=s,e=(0,S.createEffect)(()=>{try{const f=o(t,t.state,t.context);t.node?.setAttribute&&(f==null||f===!1?t.node.removeAttribute(r):typeof f!="function"&&typeof f!="object"&&t.node.setAttribute(r,f===!0?"":f))}catch{}},{depth:n.path.length});n.__effects.push(e)}}if(t.aria&&typeof t.aria=="object")for(const s in t.aria){const o=t.aria[s];if(typeof o!="function")continue;const r="aria-"+s.replace(/[A-Z]/g,f=>"-"+f.toLowerCase()),e=(0,S.createEffect)(()=>{try{const f=o(t,t.state,t.context);if(!t.node?.setAttribute)return;f==null||f===!1?t.node.removeAttribute(r):typeof f!="function"&&typeof f!="object"&&t.node.setAttribute(r,f===!0?"":f)}catch{}},{depth:n.path.length});n.__effects.push(e)}if(t.data&&typeof t.data=="object")for(const s in t.data){const o=t.data[s];if(typeof o!="function")continue;const e="data-"+s.replace(/[A-Z]/g,u=>"-"+u.toLowerCase()),f=(0,S.createEffect)(()=>{try{const u=o(t,t.state,t.context);if(!t.node?.setAttribute)return;u==null||u===!1?t.node.removeAttribute(e):typeof u!="function"&&typeof u!="object"&&t.node.setAttribute(e,u===!0?"":u)}catch{}},{depth:n.path.length});n.__effects.push(f)}const i=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(i)for(const s in i){const o=i[s];if(typeof o!="function")continue;const r=(0,S.createEffect)(()=>{try{const e=o(t,t.state,t.context);if(!t.node?.classList)return;typeof e=="string"?t.node.classList.add(e):e?t.node.classList.add(s):t.node.classList.remove(s)}catch{}},{depth:n.path.length});n.__effects.push(r)}if(typeof c.if=="function"){const s=c.if,o=(0,S.createEffect)(()=>{let r;try{r=s(t,t.state,t.context)}catch(f){if(r=!1,n.__ifError=f,typeof console<"u"&&console.warn){const u=t.key||t.tag||"?";console.warn(`[smbls] \`if:\` reactive effect threw on ${u} \u2014 treating as false:`,f?.message||f)}return}const e=n.__if;if(n.__if=!!r,e&&!n.__if&&t.node)t.node.remove();else if(!e&&n.__if)if(n.__ifInitialized){t.node||(t.node=(0,$.cacheNode)(t)),t.node&&(t.node.ref=t);const f=t.parent,u=f?.node;if(u&&t.node){let a=null;const d=Object.keys(f),p=d.indexOf(t.key);for(let l=p+1;l<d.length;l++){const y=f[d[l]];if(y?.node?.parentNode===u){a=y.node;break}}a?u.insertBefore(t.node,a):u.appendChild(t.node)}else tt(t,t.parent);q(t)}else{if(n.__ifInitialized=!0,t.tag||(t.tag=(0,$.detectTag)(t)),R("Init",t,{}),t.node||(t.node=(0,$.cacheNode)(t)),!t.node)return;if(t.tag==="fragment"&&!n.__fragmentAnchor){const a=(t.context?.document||globalThis.document).createComment("");t.node.appendChild(a),n.__fragmentAnchor=a}R("AttachNode",t,{}),t.node.setAttribute&&t.key&&t.node.setAttribute("data-key",t.key),t.id&&t.node.setAttribute&&(t.node.id=t.id),ut(t,{});const f=c.if;delete c.if;try{z(t,c)}finally{c.if=f}q(t),ft(t),dt(t,{}),tt(t,t.parent)}},{depth:n.path.length});n.__effects.push(o)}for(const s in t){if(!Object.prototype.hasOwnProperty.call(t,s)||E.REGISTRY.has(s)||typeof t[s]!="function")continue;const o=s.charCodeAt(0);if(o>=65&&o<=90||F(s))continue;const r=t[s];n.__exec[s]=r;const e=t.tag||"div";if((0,V.checkAttributeByTagName)(e,s)&&!x.CSS_PROPS_REGISTRY[s]&&!(x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(s))){const f=s,u=(0,S.createEffect)(()=>{try{const a=r(t,t.state,t.context);t.node?.setAttribute&&(a==null||a===!1?t.node.removeAttribute(f):typeof a!="function"&&typeof a!="object"&&(f==="src"&&"src"in t.node?t.node.src=a:t.node.setAttribute(f,a===!0?"":a)))}catch{}},{depth:n.path.length});n.__effects.push(u)}}Pt(t),Lt(t)}function q(t){const{node:c}=t;if(c){if(typeof t.text=="string"&&!t.text.includes("{{")?t.tag==="string"?c.nodeValue=t.text:c.textContent=t.text:typeof t.text=="number"&&(c.textContent=t.text),Tt(t),typeof t.html=="string"&&(c.innerHTML=t.html),t.value!=null&&typeof t.value!="function"&&"value"in c){const n=String(t.value);c.value!==n&&(c.value=n)}if(t.style&&typeof t.style=="object"&&I(c,t.style),t.attr&&typeof t.attr=="object")for(const n in t.attr){const i=t.attr[n];typeof i=="function"||typeof i=="object"||i==null||i===!1||c.setAttribute&&c.setAttribute(n,i===!0?"":i)}if(t.data&&typeof t.data=="object")for(const n in t.data){const i=t.data[n];typeof i=="function"||typeof i=="object"||i==null||i===!1||c.dataset&&(c.dataset[n]=i===!0?"":i)}if(t.classlist||t.class){const n=t.classlist||t.class;if(typeof n=="string")n.split(" ").forEach(i=>i&&c.classList.add(i));else if(typeof n=="object")for(const i in n){const s=typeof n[i]=="function"?n[i](t,t.state,t.context):n[i];s&&c.classList.add(typeof s=="string"?s:i)}}}}function it(t){if(t==null||typeof t!="object")return"s:"+String(t);try{return"o:"+JSON.stringify(t)}catch{return null}}function I(t,c){if(!t||!c||!t.style)return;let n=null;for(const i in c){const s=c[i];if(s!=null){if(i.charAt(0)==="&"&&typeof s=="object"){n||(n={}),n[i]=s;continue}try{const o=String(s),r=i.replace(/[A-Z]/g,a=>"-"+a.toLowerCase()),e=o.trim(),f=/\s*!important\s*$/.test(e),u=e.replace(/\s*!important\s*$/,"");t.style.setProperty(r,u,f?"important":"")}catch{}}}n&&Et(t,n)}let wt=0;function Et(t,c){const n=`_ds${wt++}`;t.classList.add(n);const i=t.ownerDocument;let s=i.querySelector("style[data-smbls-scoped]");s||(s=i.createElement("style"),s.setAttribute("data-smbls-scoped",""),i.head.appendChild(s));let o="";for(const r in c){const e="."+n,f=r.replace(/&/g,e).split(",").map(a=>{const d=a.trim();return d.includes(e)?d:e+d}).join(", "),u=c[r];if(typeof u=="object"){let a="",d="";for(const p in u){const l=u[p];if(typeof l=="object"){const y=p.includes("&")?f.split(", ").map(_=>p.replace(/&/g,_)).join(", "):f.split(", ").map(_=>`${_} ${p}`).join(", ");let h="";for(const _ in l)h+=`${_.replace(/[A-Z]/g,g=>"-"+g.toLowerCase())}: ${l[_]};`;d+=`${y} { ${h} }
|
|
5
|
+
`}else a+=`${p.replace(/[A-Z]/g,y=>"-"+y.toLowerCase())}: ${l};`}a&&(o+=`${f} { ${a} }
|
|
6
|
+
`),d&&(o+=d)}}o&&(s.textContent+=o)}function Pt(t){const c=t.subscribeTo;if(!Array.isArray(c)||c.length===0)return;const n=t.__ref;for(let i=0;i<c.length;i++){const s=c[i];if(typeof s!="string"||s.length===0)continue;const o=s.split("."),r=o[0],e=o.slice(1),f={value:!1},u=(0,S.createEffect)(()=>{const a=t.state&&((0,k.isStore)(t.state)?t.state.root:null);if(!a||!(0,k.isStore)(a))return;let d=a;d=d[r];for(let p=0;p<e.length&&!(d==null||typeof d!="object");p++)if((0,k.isStore)(d))d=d[e[p]];else break;if(f.value&&(typeof t.onBeforeUpdate=="function"||typeof t.onUpdate=="function")){const p=t.context?.designSystem;p&&(0,A.pushConfig)(p);let l="onBeforeUpdate";try{let y=!1;typeof t.onBeforeUpdate=="function"&&t.onBeforeUpdate(t,t.state,t.context,{updateBySubscription:!0})===!1&&(y=!0),l="onUpdate",!y&&typeof t.onUpdate=="function"&&t.onUpdate(t,t.state,t.context)}catch(y){t.context?.plugins?.length&&(0,U.runPluginHook)("error",t,{hook:l,error:y})||console.error(`[DOMQL] subscribeTo ${l} error:`,y)}finally{p&&(0,A.popConfig)()}}},{depth:n.path.length});f.value=!0,u._isSubscribeToEffect=!0,n.__effects.push(u)}}function Lt(t){const c=t.__ref;c.__conditionalRunners=[];for(const n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;const i=n.charAt(0);if(i!=="."&&i!=="!")continue;const s=n.slice(1);if(!s)continue;const o=t[n];if(!o||typeof o!="object")continue;const r=i==="!",e={lastMatch:!1,appliedKeys:null},f=()=>{if(!t.node)return;let a;const d=t[s];if(d===void 0)if(t.state&&s in t.state)a=t.state[s];else{const y=t.context?.cases?.[s];if(y===void 0)return;try{a=typeof y=="function"?y.call(t,t):y}catch(h){a=!1,c.__conditionalError=h,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` case fn threw on ${t.key||"?"} \u2014 treating as false:`,h?.message||h)}}else if(typeof d=="function")try{a=d(t,t.state,t.context)}catch(y){a=!1,c.__conditionalError=y,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` predicate threw on ${t.key||"?"} \u2014 treating as false:`,y?.message||y)}else a=d;const p=r?!a:!!a;if(p===e.lastMatch)return;e.lastMatch=p;const l=t.context?.designSystem;l&&(0,A.pushConfig)(l);try{if(p){const y={};for(const _ in o){if(!Object.prototype.hasOwnProperty.call(o,_))continue;const g=typeof o[_]=="function"?o[_](t,t.state,t.context):o[_];if(g!=null)if(x.CSS_PROPS_REGISTRY[_]){const b=x.CSS_PROPS_REGISTRY[_](g,t,t.state,t.context);if(b){const C=Array.isArray(b)?b:[b];for(const D of C)D&&Object.assign(y,D)}}else x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(_)&&(y[_]=g)}const h=Object.keys(y);h.length?(I(t.node,y),e.appliedKeys=h):e.appliedKeys=null}else if(e.appliedKeys){for(const y of e.appliedKeys)t.node.style[y]="";e.appliedKeys=null}}finally{l&&(0,A.popConfig)()}};c.__conditionalRunners.push(f);const u=(0,S.createEffect)(f,{depth:c.path.length});c.__effects.push(u)}}const X=new WeakSet;function Ot(t){const c=t.ownerDocument;!c||X.has(c)||(X.add(c),queueMicrotask(()=>{X.delete(c);const n=c.body||c.documentElement;n&&n.offsetWidth}))}const Q=new WeakSet;let et=!1;function Tt(t){const{node:c}=t;if(!c)return;if(et||(et=!0,(0,ot.css)({display:"none"})),Q.has(t)){console.error("[applyCssInProps] re-entry detected for element",t.key,"prop path:",t.__ref?.path);return}Q.add(t);const n=t.context?.designSystem;n&&(0,A.pushConfig)(n);try{const i={};let s=!1;for(const o in t){if(!Object.prototype.hasOwnProperty.call(t,o)||typeof t[o]=="function"||E.REGISTRY.has(o))continue;const r=o.charCodeAt(0);if(!(r>=65&&r<=90)&&!F(o)){if(x.CSS_PROPS_REGISTRY[o]){const e=t[o],f=x.CSS_PROPS_REGISTRY[o](e,t,t.state,t.context);if(f){if(Array.isArray(f))for(const u of f)u&&Object.assign(i,u);else Object.assign(i,f);s=!0}}else if(x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(o)){const e=t[o];e!=null&&typeof e!="object"&&(i[o]=e,s=!0)}else if(o.charCodeAt(0)===45){const e=t[o];e!=null&&typeof e!="object"&&(i[o]=e,s=!0)}else if(o.charAt(0)==="&"){const e=t[o];e&&typeof e=="object"&&(i[o]=e,s=!0)}else if(o.charAt(0)==="@"||o.charAt(0)===":"){const e=t[o];if(e&&typeof e=="object"){const f={},u=(a,d,p)=>{if(x.CSS_PROPS_REGISTRY[d]){const l=x.CSS_PROPS_REGISTRY[d](p,t,t.state,t.context);if(l)if(Array.isArray(l))for(const y of l)y&&Object.assign(a,y);else Object.assign(a,l)}else a[d]=p};for(const a in e){let d=e[a];if(typeof d=="function"&&(d=d(t,t.state,t.context)),!(d==null||typeof d=="function")){if(a==="style"&&typeof d=="object"&&!Array.isArray(d)){for(const p in d){let l=d[p];typeof l=="function"&&(l=l(t,t.state,t.context)),!(l==null||typeof l=="function")&&u(f,p,l)}continue}u(f,a,d)}}if(Object.keys(f).length){if(o.length>1&&o.charAt(0)==="@"&&!o.startsWith("@media")&&!o.startsWith("@keyframes")&&!o.startsWith("@supports")&&(o==="@dark"||o==="@light"||!t.context?.designSystem?.media?.[o.slice(1)])){const d={};for(const l in f){const y=f[l];d[l]=typeof y=="string"&&!y.includes("!important")?y+" !important":y}const p=o.slice(1);i[`[data-theme="${p}"] &`]=d}else{let d=o;if(o.charAt(0)==="@"&&!o.startsWith("@media")&&!o.startsWith("@keyframes")){const l=o.slice(1),y=t.context?.designSystem?.media?.[l]||t.context?.designSystem?.media?.[l];y&&(d=`@media ${y}`)}const p={};for(const l in f){const y=f[l];if(y&&typeof y=="object"&&!Array.isArray(y)){const h={};for(const _ in y)if(x.CSS_PROPS_REGISTRY[_]){const g=x.CSS_PROPS_REGISTRY[_](y[_],t,t.state,t.context);if(g)if(Array.isArray(g))for(const b of g)b&&Object.assign(h,b);else Object.assign(h,g)}else h[_]=y[_];p[l]=h}else p[l]=y}Object.keys(p).length&&(i[d]=p)}s=!0}s=!0}}}}if(s){i.display&&String(i.display).includes("!important")&&(c.style.setProperty("display",String(i.display).replace(/\s*!important\s*$/,""),"important"),delete i.display);const o=(0,ot.css)(i,null,t.context?.cssPrefix);if(o&&c.classList){const e=o.split(" ").filter(Boolean);let f=!1;for(const u of e)c.classList.add(u),f||(u.charCodeAt(0)===95&&u.charCodeAt(1)===99||u.charCodeAt(0)===95&&u.indexOf("_c",1)!==-1)&&(f=!0);f&&Ot(c)}const r=t.display!=null&&typeof t.display!="function"?t.display:t.hide===!0||t.show===!1?"none":null;if(r!=null){const e=i.display;if(e&&e!==r)if(r==="none"){const f=[];for(const u of c.classList)u.startsWith("_d-")&&u!=="_d-none"&&f.push(u);for(const u of f)c.classList.remove(u);c.classList.add("_d-none")}else c.style.display=t.display}}}finally{n&&(0,A.popConfig)(),Q.delete(t)}}function ft(t){const{node:c}=t;if(!c||!c.setAttribute)return;if(t.aria&&typeof t.aria=="object")for(const s in t.aria){const o=t.aria[s];if(typeof o=="function"||typeof o=="object"||o==null||o===!1)continue;const r="aria-"+s.replace(/[A-Z]/g,e=>"-"+e.toLowerCase());c.setAttribute(r,o===!0?"":o)}const n=(0,V.applyAttrTransforms)(t);for(const s in n){const o=n[s];o!=null&&o!==!1&&typeof o!="function"&&typeof o!="object"&&c.setAttribute(s,o===!0?"":o)}const i=t.tag||"div";for(const s in t){if(!Object.prototype.hasOwnProperty.call(t,s)||typeof t[s]=="function"||E.REGISTRY.has(s)||s==="on"||n[s]!==void 0)continue;const o=s.charCodeAt(0);if(!(o>=65&&o<=90)&&!F(s)&&!(x.CSS_PROPS_REGISTRY[s]||x.DEFAULT_CSS_PROPERTIES_LIST&&x.DEFAULT_CSS_PROPERTIES_LIST.has(s))&&(0,V.checkAttributeByTagName)(i,s)){let r=t[s];if(r==null||r===!1||(typeof r=="string"&&r.includes("{{")&&(r=(0,H.replaceLiteralsWithObjectFields)(r,t,t.state,t.context),t[s]=r),r==null||r===!1||typeof r=="function"||typeof r=="object"))continue;c.setAttribute(s,r===!0?"":r)}}}function Rt(t){if(!t.autoGrow)return;const c=t.node;if(!c||c.tagName!=="TEXTAREA")return;const n=t.autoGrow,i=n&&typeof n=="object"&&n.max?String(n.max):null;i&&(c.style.maxHeight=i);const s=()=>{c.style.height="auto",c.style.height=c.scrollHeight+"px"};s(),c.addEventListener("input",s),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{c.removeEventListener("input",s)}catch{}})}const at=new Set(["onSwipe","onSwipeLeft","onSwipeRight","onSwipeUp","onSwipeDown"]);function ut(t,c){for(const n in t){if(!Object.prototype.hasOwnProperty.call(t,n)||!F(n)||at.has(n))continue;let i=t[n];if(typeof i=="string"&&/^[A-Za-z_$][\w$]*$/.test(i)){const o=i;i=function(e){return t.call(o,e)}}if(typeof i!="function")continue;const s=St(n);E.LIFECYCLE_EVENTS.has(s)||(0,pt.registerEvent)(Ct(s),t,i)}Nt(t)}function Nt(t){const c=t.node;if(!c||!c.addEventListener)return;const n={};let i=!1;for(const p of at){const l=t[p];typeof l=="function"&&(n[p]=l,i=!0)}if(!i)return;const s=typeof t.swipeThreshold=="number"?t.swipeThreshold:40,o=typeof t.swipeMaxDuration=="number"?t.swipeMaxDuration:600;let r=0,e=0,f=0,u=!1;const a=p=>{const l=p.touches&&p.touches[0]||p.changedTouches&&p.changedTouches[0];l&&(r=l.clientX,e=l.clientY,f=Date.now(),u=!0)},d=p=>{if(!u)return;u=!1;const l=p.changedTouches&&p.changedTouches[0]||p.touches&&p.touches[0];if(!l)return;const y=l.clientX-r,h=l.clientY-e,_=Date.now()-f;if(_>o)return;const g=Math.abs(y),b=Math.abs(h);if(Math.max(g,b)<s)return;let C;if(g>b*1.2)C=y<0?"left":"right";else if(b>g*1.2)C=h<0?"up":"down";else return;const D="onSwipe"+C.charAt(0).toUpperCase()+C.slice(1),T=n[D],j=n.onSwipe;T&&T.call(t,p,t,t.state,t.context),j&&j.call(t,{direction:C,dx:y,dy:h,dt:_,event:p},t,t.state,t.context)};c.addEventListener("touchstart",a,{passive:!0}),c.addEventListener("touchend",d,{passive:!0}),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{c.removeEventListener("touchstart",a)}catch{}try{c.removeEventListener("touchend",d)}catch{}})}function B(t,c){const n={...t};for(const i in c){const s=n[i],o=c[i];s&&o&&typeof s=="object"&&typeof o=="object"&&!Array.isArray(s)&&!Array.isArray(o)&&typeof s!="function"&&typeof o!="function"?n[i]=B(s,o):n[i]=o}return n}function J(t,c,n){if(!c||!t.node)return;const i=t.childExtends;if(Array.isArray(c)){const s=t.tag==="fragment",o=t.context?.document||globalThis.document,r=s?null:o?.createDocumentFragment();if(!s&&!r)return;const e=t.childProps,f=t.childrenAs;for(let u=0;u<c.length;u++){let a=c[u];const d=a;(typeof a=="string"||typeof a=="number")&&(a={text:a});let p=e;if(typeof e=="function")try{p=e(t,a)}catch{p=null}if(f==="state"){let h=d;(typeof d=="string"||typeof d=="number")&&(h={value:d,text:d}),a=p?{...p,state:h}:{state:h}}else p&&(a=B(p,a));if(i&&!a.ignoreChildExtends)if(a.extends){const h=Array.isArray(a.extends)?a.extends:[a.extends],_=Array.isArray(i)?i:[i];a={...a,extends:[..._,...h]}}else a={...a,extends:i};const l=a?.key||d&&typeof d=="object"&&d.key||`${u}`,y=N(a,t,l,n);!s&&y?.node&&r.appendChild(y.node)}s||t.node.appendChild(r);return}if(typeof c=="string"){const s=rt(c,t);if(Array.isArray(s)){J(t,s,n);return}}if(typeof c=="object")for(const s in c){if(E.REGISTRY.has(s))continue;let o=c[s];if(!(o==null||o===!1)){if((typeof o=="string"||typeof o=="number")&&(o={text:o}),t.childProps&&(o=B(t.childProps,o)),i&&!o.ignoreChildExtends)if(o.extends){const r=Array.isArray(o.extends)?o.extends:[o.extends],e=Array.isArray(i)?i:[i];o={...o,extends:[...e,...r]}}else o={...o,extends:i};N(o,t,s,n)}}}function m(t,c){const n=t.node;if(!n||n.tagName!=="SELECT")return;const i=n.options;if(!i||!i.length)return;const s=t.__ref,o=s&&s.__exec&&s.__exec.value,r=typeof o=="function",e=t.value!=null&&typeof t.value!="function";if(r||e){let a;if(r)try{a=o(t,t.state,t.context)}catch{return}else a=t.value;const d=a==null?"":String(a);n.value!==d&&(n.value=d);return}const f=c||!(s&&s.__selectSynced);if(s&&(s.__selectSynced=!0),!f)return;let u=-1;for(let a=0;a<i.length;a++)i[a].defaultSelected&&(u=a);u>=0&&n.selectedIndex!==u&&(n.selectedIndex=u)}function dt(t,c){let{children:n,content:i}=t;const s=t.childExtends;if(typeof n=="function"){const r=n;n=r(t,t.state,t.context),t.children=n;const e=t.__ref;let f=!1;const u=(0,S.createEffect)(()=>{const a=r(t,t.state,t.context);if(!f){f=!0;return}if(a===t.children)return;if(t.children=a,Array.isArray(a)&&t.childrenAs==="state"){const l=t.childProps,y=[],h=new Map;for(let j=0;j<a.length;j++){const P=a[j];let v=l;if(typeof l=="function")try{v=l(t,P)}catch{v=null}const M=v&&v.key||P&&P.key||`${j}`;y.push(M),h.set(M,{rawChild:P,childProps:v})}const _=new Set(y),g=e.__children.slice();for(const j of g)if(!_.has(j)){const P=t[j];P?.remove&&P.remove(),delete t[j]}const b=t.childExtends,C=t.tag==="fragment",D=t.context?.document||globalThis.document,T=C?null:D?.createDocumentFragment();for(const j of y){const P=h.get(j),v=P.rawChild,M=t[j];if(M&&M.state){if(v&&typeof v=="object"){const O=M.state;if(typeof O.replace=="function")O.replace(v);else if(typeof O.update=="function"){for(const w in O)if(!(w==="__element"||w==="root"||w==="parent"||w==="update")&&!Object.prototype.hasOwnProperty.call(v,w))try{O[w]=void 0}catch{}O.update(v)}else for(const w in v)O[w]=v[w]}continue}let Y=v;(typeof v=="string"||typeof v=="number")&&(Y={value:v,text:v});const st=P.childProps;let L=st?{...st,state:Y}:{state:Y};if(b&&!L.ignoreChildExtends)if(L.extends){const O=Array.isArray(L.extends)?L.extends:[L.extends],w=Array.isArray(b)?b:[b];L={...L,extends:[...w,...O]}}else L={...L,extends:b};const ct=N(L,t,j,c);!C&&ct?.node&&T&&T.appendChild(ct.node)}!C&&T&&T.childNodes.length&&t.node&&t.node.appendChild(T),e.__children=y,m(t,!1);return}for(const l of[...e.__children]){const y=t[l];y?.remove&&y.remove(),delete t[l]}e.__children=[],J(t,a,c),m(t,!1)},{depth:e.path.length});e.__effects.push(u)}if(J(t,n||i,c),n||i)return;const o=t.context?.components||{};{const r=Object.keys(t);for(let e=0;e<r.length;e++){const f=r[e];if(!f.endsWith("Extends")||typeof t[f]!="string")continue;const u=f.slice(0,-7);if(!u||u.charCodeAt(0)<65||u.charCodeAt(0)>90)continue;const a={extends:t[f]};delete t[f];for(let d=e+1;d<r.length;d++){const p=r[d],l=p.charCodeAt(0);if(l>=65&&l<=90||E.REGISTRY.has(p)||typeof t[p]=="function"&&(p.startsWith("on")||p.startsWith(".")))break;const y=t[p];y!==void 0&&(a[p]=y,delete t[p])}t[u]&&typeof t[u]=="object"?t[u]={...a,...t[u]}:t[u]=a}}for(const r in t){if(!Object.prototype.hasOwnProperty.call(t,r)||E.REGISTRY.has(r)||typeof t[r]!="object"||t[r]===null)continue;const e=r.charCodeAt(0);if(e<65||e>90)continue;let f=t[r];if(!f.__ref){if(!f.extends&&!f.extend){const u=o[r]||o[`smbls.${r}`];u&&(f={...f,extends:u})}if(t.childProps&&(f=B(t.childProps,f)),s&&!f.ignoreChildExtends)if(f.extends){const u=Array.isArray(f.extends)?f.extends:[f.extends],a=Array.isArray(s)?s:[s];f={...f,extends:[...a,...u]}}else f={...f,extends:s};N(f,t,r,c)}}}function tt(t,c,n){const{node:i}=t;if(!i)return;i.ref=t;const s=c?.tag==="fragment"?c.__ref?.__fragmentAnchor:null;if(s){const r=s.parentNode;if(r){if(n?.position==="before"&&n.node)r.insertBefore(i,n.node);else if(n?.position==="after"&&n.node){const e=n.node.nextSibling;r.insertBefore(i,e||s)}else r.insertBefore(i,s);return}}const o=c?.node||(c?.nodeType?c:null);if(o)if(n?.position==="before"&&n.node)o.insertBefore(i,n.node);else if(n?.position==="after"&&n.node){const r=n.node.nextSibling;r?o.insertBefore(i,r):o.appendChild(i)}else o.appendChild(i)}function R(t,c,n){const i=t.charAt(0).toLowerCase()+t.slice(1);c.context?.plugins?.length&&(0,U.runPluginHook)(i,c,n);const s="on"+t,o=c[s];if(typeof o=="function"){const r=t==="Render"||t==="RenderRouter";if(r){if(c.__ref.__inRender)return!0;c.__ref.__inRender=!0}const e=c.context?.designSystem;e&&(0,A.pushConfig)(e);try{if(o(c,c.state,c.context,n)===!1)return!1}catch(f){if(c.context?.plugins?.length&&(0,U.runPluginHook)("error",c,{hook:s,error:f})||console.error(`[DOMQL] Lifecycle "${s}" error:`,f),c.context?.strictMode)throw f}finally{e&&(0,A.popConfig)(),r&&(c.__ref.__inRender=!1)}}return!0}var $t=N;
|
package/dist/esm/src/create.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import{createStore as U,createScopeStore as
|
|
1
|
+
import{createStore as U,createScopeStore as ht,isStore as R}from"@symbo.ls/signal";import{createEffect as A}from"@symbo.ls/signal";import{cacheNode as Y,detectTag as rt}from"./cache.js";import{REGISTRY as N,LIFECYCLE_EVENTS as _t}from"./registry.js";import{registerEvent as gt}from"./delegate.js";import{applyExtends as bt}from"./extends.js";import{addMethods as xt}from"./methods.js";import"./dispose.js";import{replaceLiteralsWithObjectFields as G}from"@symbo.ls/utils";import{runPluginHook as Z}from"@symbo.ls/utils/function.js";import{applyStateMethods as V}from"@symbo.ls/state";import{CSS_PROPS_REGISTRY as C,DEFAULT_CSS_PROPERTIES_LIST as j}from"css-in-props";import{css as it}from"@symbo.ls/css";import{pushConfig as P,popConfig as L}from"@symbo.ls/scratch";import{checkAttributeByTagName as z,applyAttrTransforms as At}from"attrs-in-props";let vt=1;function F(t){return t.length>2&&t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>=65&&t.charCodeAt(2)<=90}function St(t){return t.charAt(2).toLowerCase()+t.slice(3)}function Ct(t){return t.toLowerCase()}function et(t){const c=t.charCodeAt(0);return c===58||c===64||c===38}function W(t,c){const n={...t};for(const i in c){const s=n[i],o=c[i];s&&o&&typeof s=="object"&&typeof o=="object"&&!Array.isArray(s)&&!Array.isArray(o)&&typeof s!="function"&&typeof o!="function"?n[i]=W(s,o):n[i]=o}return n}function I(t,c,n,i={},s){if(t==null||t===!1)return null;(typeof t=="string"||typeof t=="number")&&(t={text:t});const o=Object.create(null);o.key=n||t.key||`_${vt++}`,o.parent=c||null,o.context=t.context||c?.context||i.context||{},o.context.__create||(o.context.__create=I);const r=o.__ref={__if:!0,__children:[],__exec:{},__effects:[],__eventCleanup:[],root:c?.__ref?.root||o,path:c?.__ref?.path?[...c.__ref.path,o.key]:[o.key]};if(n&&!t.extends&&!t.extend){const h=n.indexOf("_");if(h>0){const _=n.substring(0,h),g=o.context?.components;g&&(g[_]||g["smbls."+_])&&(t={...t,extends:_})}}bt(o,t,i);const e=new Set(["childProps","attr","style","scope","data"]),f=o.props&&typeof o.props=="object"?o.props:null;for(const h in t){if(h==="parent"||h==="node"||h==="__ref"||h==="extends"||h==="context"||h==="props")continue;const _=t[h],g=o[h],b=g&&_&&typeof g=="object"&&typeof _=="object"&&!Array.isArray(g)&&!Array.isArray(_)&&typeof g!="function"&&typeof _!="function";b&&h.charCodeAt(0)>=65&&h.charCodeAt(0)<=90?o[h]=W(g,_):b&&e.has(h)?o[h]={...g,..._}:b&&et(h)?o[h]=W(g,_):o[h]=_}function u(h){for(const _ in h){const g=h[_],b=o[_],v=b&&g&&typeof b=="object"&&typeof g=="object"&&!Array.isArray(b)&&!Array.isArray(g)&&typeof b!="function"&&typeof g!="function";v&&_.charCodeAt(0)>=65&&_.charCodeAt(0)<=90?o[_]=W(b,g):v&&e.has(_)?o[_]={...b,...g}:v&&et(_)?o[_]=W(b,g):o[_]=g}}f&&u(f),t.props&&typeof t.props=="object"&&u(t.props),t.data!==void 0&&(o.data=t.data),t.classlist!==void 0&&(o.classlist=t.classlist),t.text!==void 0&&(o.text=t.text),t.html!==void 0&&(o.html=t.html);const a=o.scope&&typeof o.scope=="object"?o.scope:null,d=c?.scope,p=o.context&&typeof o.context.globalScope=="object"&&o.context.globalScope||null,l=d||p||null;if(t.scope!==void 0||a){const h={};a&&Object.assign(h,a),t.scope!==void 0&&Object.assign(h,t.scope),o.scope=ht(h,l)}else l&&(o.scope=l);if(t.if!==void 0&&(o.if=t.if),xt(o),jt(o,c,t),o.if!=null){let h;if(typeof o.if=="function")try{h=o.if(o,o.state,o.context)}catch(_){if(h=!1,r.__ifError=_,typeof console<"u"&&console.warn){const g=o.key||o.tag||"?";console.warn(`[smbls] \`if:\` evaluator threw on ${g} \u2014 treating as false:`,_?.message||_)}}else h=o.if;r.__if=!!h}if(r.__if)typeof t.if=="function"&&(r.__ifInitialized=!0);else return c&&(c[o.key]=o),typeof t.if=="function"&&X(o,{if:t.if}),o;o.tag||(o.tag=rt(o)),$("Init",o,i);const y=o.node=Y(o);if(!y)return o;if(o.tag==="fragment"){const _=(o.context?.document||globalThis.document).createComment("");y.appendChild(_),r.__fragmentAnchor=_}$("AttachNode",o,i),y.setAttribute&&o.key&&y.setAttribute("data-key",o.key),y.setAttribute&&o.context?.scopeSelector&&o.context.scopeSelector!==":root"&&o.context.key&&o.key===o.context.key&&y.setAttribute("data-smbls-app",o.context.key),o.id&&y.setAttribute&&(y.id=o.id),lt(o,i),X(o,t),Q(o),dt(o),Rt(o);try{yt(o,i)}catch(h){if(typeof console<"u"&&console.error){const _=o.__ref?.path?.join(".")||o.key||"<root>";console.error(`[smbls] createChildren failed at ${_}:`,h?.message||h,h?.stack?`
|
|
2
2
|
`+h.stack.split(`
|
|
3
3
|
`).slice(0,6).join(`
|
|
4
|
-
`):"")}}if(ot(o,s,c),s&&(s[o.key]=o,s.__ref?.__children&&(s.__ref.__children.includes(o.key)||s.__ref.__children.push(o.key))),typeof o.html=="function"&&o.node&&!o.node.innerHTML){const h=o.context?.designSystem;h&&P(h);try{const _=o.html(o,o.state,o.context);_!=null&&typeof _!="function"&&(o.node.innerHTML=_)}catch{}finally{h&&O()}}if($("Create",o,e),$("Complete",o,e),$("Render",o,e),$("RenderRouter",o,e),typeof o.onFrame=="function"){const h=o.onFrame,_=o.context?.designSystem,g=()=>{if(o.node){if(o.node.isConnected){_&&P(_);try{h(o,o.state,o.context)}catch(b){console.error("[DOMQL] onFrame error:",b)}finally{_&&O()}}requestAnimationFrame(g)}};requestAnimationFrame(g)}return o}function Ct(t,s,n){const e=!s,c=n.state&&typeof n.state=="object"&&!Array.isArray(n.state)&&Object.keys(n.state).length===0,o=e&&c&&t.context?.state,r=n.state!==void 0&&!o?n.state:t.state&&!R(t.state)?t.state:void 0;if(r==null){if(s?.state)t.state=s.state,V(t,t.state);else if(t.context?.state){const i=t.context.state,f={...i},a=t.context?.polyglot;if(a?.translations){const u=i.lang||a.defaultLang||"en",d=a.translations[u];if(d&&typeof d=="object")for(const y in d)f[y]===void 0&&(f[y]=d[y]);const p=new Set(a.languages||[]);for(const y in a.translations)!p.has(y)&&f[y]===void 0&&(f[y]=a.translations[y])}t.state=R(f)?f:U(f),t.state.__element=t,t.state.root=t.state,V(t,t.state)}else t.state={},Object.defineProperty(t.state,"root",{value:t.state,enumerable:!1,configurable:!0,writable:!0}),V(t,t.state);return}if(typeof r=="string"){if(t.state=et(r,s),t.state&&typeof t.state=="object"&&!R(t.state)){const i=s?.state?.root||s?.state||t.state;Object.defineProperty(t.state,"root",{value:i,enumerable:!1,configurable:!0,writable:!0})}V(t,t.state);return}if(typeof r=="function"){const i=r(t,s?.state);t.state=R(i)?i:U(i||{})}else R(r)?t.state=r:t.state=U({...r});t.state.__element=t,s?.state?(t.state.parent=s.state,t.state.root=s.state.root||s.state):t.state.root=t.state,V(t,t.state)}function q(t,s){if(!s)return t;const n=s.split("/");let e=t;for(const c of n){if(e==null)return{};e=e[c]}return e??{}}function et(t,s){if(!s)return{};if(t===".")return s.state||{};if(t.startsWith("../")){const c=t.slice(3);return c?q(s.state,c):s.state??{}}if(t.startsWith("~/")){const c=s.state?.root||s.state,o=t.slice(2);return o?q(c,o):c??{}}if(s.state?.[t]!==void 0)return s.state[t];const n=q(s.state,t);if(n!=null&&Object.keys(n).length>0)return n;const e=s.context?.polyglot;if(e?.translations){const c=s.state?.root?.lang||e.defaultLang||"en",o=e.translations[c];if(o?.[t]!==void 0)return o[t];if(e.translations[t]!==void 0)return e.translations[t]}return{}}function jt(t){const s=t.__ref,n=t.tag||"div",e=t.context?.designSystem,c=[],o=Object.keys(t);for(let r=0;r<o.length;r++){const i=o[r];if(typeof t[i]!="function"||N.has(i))continue;const f=i.charCodeAt(0);f>=65&&f<=90||F(i)||C[i]||j&&j.has(i)||z(n,i)||c.push({prop:i,fn:t[i]})}for(let r=0;r<c.length;r++){const{prop:i,fn:f}=c[r];s.__exec[i]=f,Object.defineProperty(t,i,{get(){e&&P(e);try{return f(t,t.state,t.context)}catch{return}finally{e&&O()}},set(a){delete s.__exec[i],Object.defineProperty(t,i,{value:a,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}}function X(t,s){const n=t.__ref;if(jt(t),typeof t.text=="function"){const c=t.text,o=A(()=>{if(!n.contentManaged)try{let r=c(t,t.state,t.context);t.node&&r!=null&&typeof r!="function"&&typeof r!="object"&&(typeof r=="string"&&r.includes("{{")&&(r=G.call(t,r,t.state)),t.tag==="string"?t.node.nodeValue=r:t.node.textContent=r)}catch{}},{depth:n.path.length});n.__effects.push(o),n.__exec.text=c}else if(typeof t.text=="string"&&t.text.includes("{{")){const c=t.text,o=A(()=>{if(n.contentManaged)return;const r=G.call(t,c,t.state);r!=null&&(t.text=r),t.node&&(t.tag==="string"?t.node.nodeValue=r??"":t.node.textContent=r??"")},{depth:n.path.length});n.__effects.push(o),n.__exec.text=c}for(const c in t)if(Object.prototype.hasOwnProperty.call(t,c)&&typeof t[c]=="function"&&!N.has(c)&&!F(c)&&!n.__exec[c]){if(C[c]){const o=t[c],r=c;let i;const f=A(()=>{const a=t.context?.designSystem;a&&P(a);try{const u=o(t,t.state,t.context),d=C[r](u,t,t.state,t.context);if(d&&t.node){const p=ft(d);(p===null||p!==i)&&(i=p,I(t.node,d))}else t.node&&(r==="show"||r==="hide")&&(i=void 0,t.node.style.display="")}finally{a&&O()}},{depth:n.path.length});n.__effects.push(f),n.__exec[c]=o}else if(j&&j.has(c)){const o=t[c],r=c;let i;const f=A(()=>{const a=t.context?.designSystem;a&&P(a);try{const u=o(t,t.state,t.context);if(t.node)if(u!=null){const d=r+":"+String(u);d!==i&&(i=d,I(t.node,{[r]:u}))}else i=void 0,t.node.style[r]=""}finally{a&&O()}},{depth:n.path.length});n.__effects.push(f),n.__exec[c]=o}}if(typeof s.html=="function"){const c=s.html,o=A(()=>{const r=t.context?.designSystem;r&&P(r);try{const i=c(t,t.state,t.context);t.node&&i!=null&&typeof i!="function"&&(t.node.innerHTML=i)}finally{r&&O()}},{depth:n.path.length});n.__effects.push(o),n.__exec.html=c}if(typeof s.value=="function"){const c=s.value,o=A(()=>{try{const r=c(t,t.state,t.context);if(!t.node||!("value"in t.node))return;const i=r==null?"":String(r);if(t.node.value===i)return;const f=typeof document<"u"&&document.activeElement===t.node,a=f&&typeof t.node.selectionStart=="number"?t.node.selectionStart:null,u=f&&typeof t.node.selectionEnd=="number"?t.node.selectionEnd:null;if(t.node.value=i,f&&a!=null&&u!=null)try{t.node.setSelectionRange(a,u)}catch{}}catch{}},{depth:n.path.length});n.__effects.push(o),n.__exec.value=c}if(typeof s.style=="function"){const c=s.style;let o;const r=A(()=>{const i=c(t,t.state,t.context),f=ft(i);(f===null||f!==o)&&(o=f,I(t.node,i))},{depth:n.path.length});n.__effects.push(r),n.__exec.style=c}else if(t.style&&typeof t.style=="object")for(const c in t.style){const o=t.style[c];if(typeof o!="function")continue;let r;const i=A(()=>{try{const f=o(t,t.state,t.context);if(t.node){const a=c+":"+String(f);a!==r&&(r=a,I(t.node,{[c]:f}))}}catch{}},{depth:n.path.length});n.__effects.push(i)}if(t.attr&&typeof t.attr=="object"){for(const c in t.attr)if(typeof t.attr[c]=="function"){const o=t.attr[c],r=c,i=A(()=>{try{const f=o(t,t.state,t.context);t.node?.setAttribute&&(f==null||f===!1?t.node.removeAttribute(r):typeof f!="function"&&typeof f!="object"&&t.node.setAttribute(r,f===!0?"":f))}catch{}},{depth:n.path.length});n.__effects.push(i)}}if(t.aria&&typeof t.aria=="object")for(const c in t.aria){const o=t.aria[c];if(typeof o!="function")continue;const r="aria-"+c.replace(/[A-Z]/g,f=>"-"+f.toLowerCase()),i=A(()=>{try{const f=o(t,t.state,t.context);if(!t.node?.setAttribute)return;f==null||f===!1?t.node.removeAttribute(r):typeof f!="function"&&typeof f!="object"&&t.node.setAttribute(r,f===!0?"":f)}catch{}},{depth:n.path.length});n.__effects.push(i)}if(t.data&&typeof t.data=="object")for(const c in t.data){const o=t.data[c];if(typeof o!="function")continue;const i="data-"+c.replace(/[A-Z]/g,a=>"-"+a.toLowerCase()),f=A(()=>{try{const a=o(t,t.state,t.context);if(!t.node?.setAttribute)return;a==null||a===!1?t.node.removeAttribute(i):typeof a!="function"&&typeof a!="object"&&t.node.setAttribute(i,a===!0?"":a)}catch{}},{depth:n.path.length});n.__effects.push(f)}const e=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(e)for(const c in e){const o=e[c];if(typeof o!="function")continue;const r=A(()=>{try{const i=o(t,t.state,t.context);if(!t.node?.classList)return;typeof i=="string"?t.node.classList.add(i):i?t.node.classList.add(c):t.node.classList.remove(c)}catch{}},{depth:n.path.length});n.__effects.push(r)}if(typeof s.if=="function"){const c=s.if,o=A(()=>{let r;try{r=c(t,t.state,t.context)}catch(f){if(r=!1,n.__ifError=f,typeof console<"u"&&console.warn){const a=t.key||t.tag||"?";console.warn(`[smbls] \`if:\` reactive effect threw on ${a} \u2014 treating as false:`,f?.message||f)}return}const i=n.__if;if(n.__if=!!r,i&&!n.__if&&t.node)t.node.remove();else if(!i&&n.__if)if(n.__ifInitialized){t.node||(t.node=Y(t)),t.node&&(t.node.ref=t);const f=t.parent,a=f?.node;if(a&&t.node){let u=null;const d=Object.keys(f),p=d.indexOf(t.key);for(let y=p+1;y<d.length;y++){const l=f[d[y]];if(l?.node?.parentNode===a){u=l.node;break}}u?a.insertBefore(t.node,u):a.appendChild(t.node)}else ot(t,t.parent);Q(t)}else{if(n.__ifInitialized=!0,t.tag||(t.tag=nt(t)),$("Init",t,{}),t.node||(t.node=Y(t)),!t.node)return;if(t.tag==="fragment"&&!n.__fragmentAnchor){const u=(t.context?.document||globalThis.document).createComment("");t.node.appendChild(u),n.__fragmentAnchor=u}$("AttachNode",t,{}),t.node.setAttribute&&t.key&&t.node.setAttribute("data-key",t.key),t.id&&t.node.setAttribute&&(t.node.id=t.id),pt(t,{});const f=s.if;delete s.if;try{X(t,s)}finally{s.if=f}Q(t),ut(t),yt(t,{}),ot(t,t.parent)}},{depth:n.path.length});n.__effects.push(o)}for(const c in t){if(!Object.prototype.hasOwnProperty.call(t,c)||N.has(c)||typeof t[c]!="function")continue;const o=c.charCodeAt(0);if(o>=65&&o<=90||F(c))continue;const r=t[c];n.__exec[c]=r;const i=t.tag||"div";if(z(i,c)&&!C[c]&&!(j&&j.has(c))){const f=c,a=A(()=>{try{const u=r(t,t.state,t.context);t.node?.setAttribute&&(u==null||u===!1?t.node.removeAttribute(f):typeof u!="function"&&typeof u!="object"&&(f==="src"&&"src"in t.node?t.node.src=u:t.node.setAttribute(f,u===!0?"":u)))}catch{}},{depth:n.path.length});n.__effects.push(a)}}Et(t),Pt(t)}function Q(t){const{node:s}=t;if(s){if(typeof t.text=="string"&&!t.text.includes("{{")?t.tag==="string"?s.nodeValue=t.text:s.textContent=t.text:typeof t.text=="number"&&(s.textContent=t.text),Lt(t),typeof t.html=="string"&&(s.innerHTML=t.html),t.value!=null&&typeof t.value!="function"&&"value"in s){const n=String(t.value);s.value!==n&&(s.value=n)}if(t.style&&typeof t.style=="object"&&I(s,t.style),t.attr&&typeof t.attr=="object")for(const n in t.attr){const e=t.attr[n];typeof e=="function"||typeof e=="object"||e==null||e===!1||s.setAttribute&&s.setAttribute(n,e===!0?"":e)}if(t.data&&typeof t.data=="object")for(const n in t.data){const e=t.data[n];typeof e=="function"||typeof e=="object"||e==null||e===!1||s.dataset&&(s.dataset[n]=e===!0?"":e)}if(t.classlist||t.class){const n=t.classlist||t.class;if(typeof n=="string")n.split(" ").forEach(e=>e&&s.classList.add(e));else if(typeof n=="object")for(const e in n){const c=typeof n[e]=="function"?n[e](t,t.state,t.context):n[e];c&&s.classList.add(typeof c=="string"?c:e)}}}}function ft(t){if(t==null||typeof t!="object")return"s:"+String(t);try{return"o:"+JSON.stringify(t)}catch{return null}}function I(t,s){if(!t||!s||!t.style)return;let n=null;for(const e in s){const c=s[e];if(c!=null){if(e.charAt(0)==="&"&&typeof c=="object"){n||(n={}),n[e]=c;continue}try{const o=String(c),r=e.replace(/[A-Z]/g,u=>"-"+u.toLowerCase()),i=o.trim(),f=/\s*!important\s*$/.test(i),a=i.replace(/\s*!important\s*$/,"");t.style.setProperty(r,a,f?"important":"")}catch{}}}n&&wt(t,n)}let kt=0;function wt(t,s){const n=`_ds${kt++}`;t.classList.add(n);const e=t.ownerDocument;let c=e.querySelector("style[data-smbls-scoped]");c||(c=e.createElement("style"),c.setAttribute("data-smbls-scoped",""),e.head.appendChild(c));let o="";for(const r in s){const i="."+n,f=r.replace(/&/g,i).split(",").map(u=>{const d=u.trim();return d.includes(i)?d:i+d}).join(", "),a=s[r];if(typeof a=="object"){let u="",d="";for(const p in a){const y=a[p];if(typeof y=="object"){const l=p.includes("&")?f.split(", ").map(_=>p.replace(/&/g,_)).join(", "):f.split(", ").map(_=>`${_} ${p}`).join(", ");let h="";for(const _ in y)h+=`${_.replace(/[A-Z]/g,g=>"-"+g.toLowerCase())}: ${y[_]};`;d+=`${l} { ${h} }
|
|
5
|
-
`}else
|
|
6
|
-
`),d&&(o+=d)}}o&&(c.textContent+=o)}function Et(t){const s=t.subscribeTo;if(!Array.isArray(s)||s.length===0)return;const n=t.__ref;for(let e=0;e<s.length;e++){const c=s[e];if(typeof c!="string"||c.length===0)continue;const o=c.split("."),r=o[0],i=o.slice(1),f={value:!1},a=A(()=>{const u=t.state&&(R(t.state)?t.state.root:null);if(!u||!R(u))return;let d=u;d=d[r];for(let p=0;p<i.length&&!(d==null||typeof d!="object");p++)if(R(d))d=d[i[p]];else break;if(f.value&&(typeof t.onBeforeUpdate=="function"||typeof t.onUpdate=="function")){const p=t.context?.designSystem;p&&P(p);let y="onBeforeUpdate";try{let l=!1;typeof t.onBeforeUpdate=="function"&&t.onBeforeUpdate(t,t.state,t.context,{updateBySubscription:!0})===!1&&(l=!0),y="onUpdate",!l&&typeof t.onUpdate=="function"&&t.onUpdate(t,t.state,t.context)}catch(l){t.context?.plugins?.length&&Z("error",t,{hook:y,error:l})||console.error(`[DOMQL] subscribeTo ${y} error:`,l)}finally{p&&O()}}},{depth:n.path.length});f.value=!0,a._isSubscribeToEffect=!0,n.__effects.push(a)}}function Pt(t){const s=t.__ref;s.__conditionalRunners=[];for(const n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;const e=n.charAt(0);if(e!=="."&&e!=="!")continue;const c=n.slice(1);if(!c)continue;const o=t[n];if(!o||typeof o!="object")continue;const r=e==="!",i={lastMatch:!1,appliedKeys:null},f=()=>{if(!t.node)return;let u;const d=t[c];if(d===void 0)if(t.state&&c in t.state)u=t.state[c];else{const l=t.context?.cases?.[c];if(l===void 0)return;try{u=typeof l=="function"?l.call(t,t):l}catch(h){u=!1,s.__conditionalError=h,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` case fn threw on ${t.key||"?"} \u2014 treating as false:`,h?.message||h)}}else if(typeof d=="function")try{u=d(t,t.state,t.context)}catch(l){u=!1,s.__conditionalError=l,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` predicate threw on ${t.key||"?"} \u2014 treating as false:`,l?.message||l)}else u=d;const p=r?!u:!!u;if(p===i.lastMatch)return;i.lastMatch=p;const y=t.context?.designSystem;y&&P(y);try{if(p){const l={};for(const _ in o){if(!Object.prototype.hasOwnProperty.call(o,_))continue;const g=typeof o[_]=="function"?o[_](t,t.state,t.context):o[_];if(g!=null)if(C[_]){const b=C[_](g,t,t.state,t.context);if(b){const v=Array.isArray(b)?b:[b];for(const D of v)D&&Object.assign(l,D)}}else j&&j.has(_)&&(l[_]=g)}const h=Object.keys(l);h.length?(I(t.node,l),i.appliedKeys=h):i.appliedKeys=null}else if(i.appliedKeys){for(const l of i.appliedKeys)t.node.style[l]="";i.appliedKeys=null}}finally{y&&O()}};s.__conditionalRunners.push(f);const a=A(f,{depth:s.path.length});s.__effects.push(a)}}const J=new WeakSet;function Ot(t){const s=t.ownerDocument;!s||J.has(s)||(J.add(s),queueMicrotask(()=>{J.delete(s);const n=s.body||s.documentElement;n&&n.offsetWidth}))}const m=new WeakSet;let at=!1;function Lt(t){const{node:s}=t;if(!s)return;if(at||(at=!0,rt({display:"none"})),m.has(t)){console.error("[applyCssInProps] re-entry detected for element",t.key,"prop path:",t.__ref?.path);return}m.add(t);const n=t.context?.designSystem;n&&P(n);try{const e={};let c=!1;for(const o in t){if(!Object.prototype.hasOwnProperty.call(t,o)||typeof t[o]=="function"||N.has(o))continue;const r=o.charCodeAt(0);if(!(r>=65&&r<=90)&&!F(o)){if(C[o]){const i=t[o],f=C[o](i,t,t.state,t.context);if(f){if(Array.isArray(f))for(const a of f)a&&Object.assign(e,a);else Object.assign(e,f);c=!0}}else if(j&&j.has(o)){const i=t[o];i!=null&&typeof i!="object"&&(e[o]=i,c=!0)}else if(o.charCodeAt(0)===45){const i=t[o];i!=null&&typeof i!="object"&&(e[o]=i,c=!0)}else if(o.charAt(0)==="&"){const i=t[o];i&&typeof i=="object"&&(e[o]=i,c=!0)}else if(o.charAt(0)==="@"||o.charAt(0)===":"){const i=t[o];if(i&&typeof i=="object"){const f={},a=(u,d,p)=>{if(C[d]){const y=C[d](p,t,t.state,t.context);if(y)if(Array.isArray(y))for(const l of y)l&&Object.assign(u,l);else Object.assign(u,y)}else u[d]=p};for(const u in i){let d=i[u];if(typeof d=="function"&&(d=d(t,t.state,t.context)),!(d==null||typeof d=="function")){if(u==="style"&&typeof d=="object"&&!Array.isArray(d)){for(const p in d){let y=d[p];typeof y=="function"&&(y=y(t,t.state,t.context)),!(y==null||typeof y=="function")&&a(f,p,y)}continue}a(f,u,d)}}if(Object.keys(f).length){if(o.length>1&&o.charAt(0)==="@"&&!o.startsWith("@media")&&!o.startsWith("@keyframes")&&!o.startsWith("@supports")&&(o==="@dark"||o==="@light"||!t.context?.designSystem?.media?.[o.slice(1)])){const d={};for(const y in f){const l=f[y];d[y]=typeof l=="string"&&!l.includes("!important")?l+" !important":l}const p=o.slice(1);e[`[data-theme="${p}"] &`]=d}else{let d=o;if(o.charAt(0)==="@"&&!o.startsWith("@media")&&!o.startsWith("@keyframes")){const y=o.slice(1),l=t.context?.designSystem?.media?.[y]||t.context?.designSystem?.media?.[y];l&&(d=`@media ${l}`)}const p={};for(const y in f){const l=f[y];if(l&&typeof l=="object"&&!Array.isArray(l)){const h={};for(const _ in l)if(C[_]){const g=C[_](l[_],t,t.state,t.context);if(g)if(Array.isArray(g))for(const b of g)b&&Object.assign(h,b);else Object.assign(h,g)}else h[_]=l[_];p[y]=h}else p[y]=l}Object.keys(p).length&&(e[d]=p)}c=!0}c=!0}}}}if(c){e.display&&String(e.display).includes("!important")&&(s.style.setProperty("display",String(e.display).replace(/\s*!important\s*$/,""),"important"),delete e.display);const o=rt(e,null,t.context?.cssPrefix);if(o&&s.classList){const i=o.split(" ").filter(Boolean);let f=!1;for(const a of i)s.classList.add(a),f||(a.charCodeAt(0)===95&&a.charCodeAt(1)===99||a.charCodeAt(0)===95&&a.indexOf("_c",1)!==-1)&&(f=!0);f&&Ot(s)}const r=t.display!=null&&typeof t.display!="function"?t.display:t.hide===!0||t.show===!1?"none":null;if(r!=null){const i=e.display;if(i&&i!==r)if(r==="none"){const f=[];for(const a of s.classList)a.startsWith("_d-")&&a!=="_d-none"&&f.push(a);for(const a of f)s.classList.remove(a);s.classList.add("_d-none")}else s.style.display=t.display}}}finally{n&&O(),m.delete(t)}}function ut(t){const{node:s}=t;if(!s||!s.setAttribute)return;if(t.aria&&typeof t.aria=="object")for(const c in t.aria){const o=t.aria[c];if(typeof o=="function"||typeof o=="object"||o==null||o===!1)continue;const r="aria-"+c.replace(/[A-Z]/g,i=>"-"+i.toLowerCase());s.setAttribute(r,o===!0?"":o)}const n=xt(t);for(const c in n){const o=n[c];o!=null&&o!==!1&&typeof o!="function"&&typeof o!="object"&&s.setAttribute(c,o===!0?"":o)}const e=t.tag||"div";for(const c in t){if(!Object.prototype.hasOwnProperty.call(t,c)||typeof t[c]=="function"||N.has(c)||c==="on"||n[c]!==void 0)continue;const o=c.charCodeAt(0);if(!(o>=65&&o<=90)&&!F(c)&&!(C[c]||j&&j.has(c))&&z(e,c)){let r=t[c];if(r==null||r===!1||(typeof r=="string"&&r.includes("{{")&&(r=G(r,t,t.state,t.context),t[c]=r),r==null||r===!1||typeof r=="function"||typeof r=="object"))continue;s.setAttribute(c,r===!0?"":r)}}}function Tt(t){if(!t.autoGrow)return;const s=t.node;if(!s||s.tagName!=="TEXTAREA")return;const n=t.autoGrow,e=n&&typeof n=="object"&&n.max?String(n.max):null;e&&(s.style.maxHeight=e);const c=()=>{s.style.height="auto",s.style.height=s.scrollHeight+"px"};c(),s.addEventListener("input",c),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{s.removeEventListener("input",c)}catch{}})}const dt=new Set(["onSwipe","onSwipeLeft","onSwipeRight","onSwipeUp","onSwipeDown"]);function pt(t,s){for(const n in t){if(!Object.prototype.hasOwnProperty.call(t,n)||!F(n)||dt.has(n))continue;let e=t[n];if(typeof e=="string"&&/^[A-Za-z_$][\w$]*$/.test(e)){const o=e;e=function(i){return t.call(o,i)}}if(typeof e!="function")continue;const c=vt(n);ht.has(c)||_t(St(c),t,e)}Rt(t)}function Rt(t){const s=t.node;if(!s||!s.addEventListener)return;const n={};let e=!1;for(const p of dt){const y=t[p];typeof y=="function"&&(n[p]=y,e=!0)}if(!e)return;const c=typeof t.swipeThreshold=="number"?t.swipeThreshold:40,o=typeof t.swipeMaxDuration=="number"?t.swipeMaxDuration:600;let r=0,i=0,f=0,a=!1;const u=p=>{const y=p.touches&&p.touches[0]||p.changedTouches&&p.changedTouches[0];y&&(r=y.clientX,i=y.clientY,f=Date.now(),a=!0)},d=p=>{if(!a)return;a=!1;const y=p.changedTouches&&p.changedTouches[0]||p.touches&&p.touches[0];if(!y)return;const l=y.clientX-r,h=y.clientY-i,_=Date.now()-f;if(_>o)return;const g=Math.abs(l),b=Math.abs(h);if(Math.max(g,b)<c)return;let v;if(g>b*1.2)v=l<0?"left":"right";else if(b>g*1.2)v=h<0?"up":"down";else return;const D="onSwipe"+v.charAt(0).toUpperCase()+v.slice(1),T=n[D],S=n.onSwipe;T&&T.call(t,p,t,t.state,t.context),S&&S.call(t,{direction:v,dx:l,dy:h,dt:_,event:p},t,t.state,t.context)};s.addEventListener("touchstart",u,{passive:!0}),s.addEventListener("touchend",d,{passive:!0}),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{s.removeEventListener("touchstart",u)}catch{}try{s.removeEventListener("touchend",d)}catch{}})}function B(t,s){const n={...t};for(const e in s){const c=n[e],o=s[e];c&&o&&typeof c=="object"&&typeof o=="object"&&!Array.isArray(c)&&!Array.isArray(o)&&typeof c!="function"&&typeof o!="function"?n[e]=B(c,o):n[e]=o}return n}function tt(t,s,n){if(!s||!t.node)return;const e=t.childExtends;if(Array.isArray(s)){const c=t.tag==="fragment",o=t.context?.document||globalThis.document,r=c?null:o?.createDocumentFragment();if(!c&&!r)return;const i=t.childProps,f=t.childrenAs;for(let a=0;a<s.length;a++){let u=s[a];const d=u;(typeof u=="string"||typeof u=="number")&&(u={text:u});let p=i;if(typeof i=="function")try{p=i(t,u)}catch{p=null}if(f==="state"){let h=d;(typeof d=="string"||typeof d=="number")&&(h={value:d,text:d}),u=p?{...p,state:h}:{state:h}}else p&&(u=B(p,u));if(e&&!u.ignoreChildExtends)if(u.extends){const h=Array.isArray(u.extends)?u.extends:[u.extends],_=Array.isArray(e)?e:[e];u={...u,extends:[..._,...h]}}else u={...u,extends:e};const y=u?.key||d&&typeof d=="object"&&d.key||`${a}`,l=K(u,t,y,n);!c&&l?.node&&r.appendChild(l.node)}c||t.node.appendChild(r);return}if(typeof s=="string"){const c=et(s,t);if(Array.isArray(c)){tt(t,c,n);return}}if(typeof s=="object")for(const c in s){if(N.has(c))continue;let o=s[c];if(!(o==null||o===!1)){if((typeof o=="string"||typeof o=="number")&&(o={text:o}),t.childProps&&(o=B(t.childProps,o)),e&&!o.ignoreChildExtends)if(o.extends){const r=Array.isArray(o.extends)?o.extends:[o.extends],i=Array.isArray(e)?e:[e];o={...o,extends:[...i,...r]}}else o={...o,extends:e};K(o,t,c,n)}}}function yt(t,s){let{children:n,content:e}=t;const c=t.childExtends;if(typeof n=="function"){const r=n;n=r(t,t.state,t.context),t.children=n;const i=t.__ref;let f=!1;const a=A(()=>{const u=r(t,t.state,t.context);if(!f){f=!0;return}if(u===t.children)return;if(t.children=u,Array.isArray(u)&&t.childrenAs==="state"){const y=t.childProps,l=[],h=new Map;for(let S=0;S<u.length;S++){const w=u[S];let x=y;if(typeof y=="function")try{x=y(t,w)}catch{x=null}const M=x&&x.key||w&&w.key||`${S}`;l.push(M),h.set(M,{rawChild:w,childProps:x})}const _=new Set(l),g=i.__children.slice();for(const S of g)if(!_.has(S)){const w=t[S];w?.remove&&w.remove(),delete t[S]}const b=t.childExtends,v=t.tag==="fragment",D=t.context?.document||globalThis.document,T=v?null:D?.createDocumentFragment();for(const S of l){const w=h.get(S),x=w.rawChild,M=t[S];if(M&&M.state){if(x&&typeof x=="object"){const L=M.state;if(typeof L.replace=="function")L.replace(x);else if(typeof L.update=="function"){for(const k in L)if(!(k==="__element"||k==="root"||k==="parent"||k==="update")&&!Object.prototype.hasOwnProperty.call(x,k))try{L[k]=void 0}catch{}L.update(x)}else for(const k in x)L[k]=x[k]}continue}let H=x;(typeof x=="string"||typeof x=="number")&&(H={value:x,text:x});const st=w.childProps;let E=st?{...st,state:H}:{state:H};if(b&&!E.ignoreChildExtends)if(E.extends){const L=Array.isArray(E.extends)?E.extends:[E.extends],k=Array.isArray(b)?b:[b];E={...E,extends:[...k,...L]}}else E={...E,extends:b};const ct=K(E,t,S,s);!v&&ct?.node&&T&&T.appendChild(ct.node)}!v&&T&&T.childNodes.length&&t.node&&t.node.appendChild(T),i.__children=l;return}for(const y of[...i.__children]){const l=t[y];l?.remove&&l.remove(),delete t[y]}i.__children=[],tt(t,u,s)},{depth:i.path.length});i.__effects.push(a)}if(tt(t,n||e,s),n||e)return;const o=t.context?.components||{};{const r=Object.keys(t);for(let i=0;i<r.length;i++){const f=r[i];if(!f.endsWith("Extends")||typeof t[f]!="string")continue;const a=f.slice(0,-7);if(!a||a.charCodeAt(0)<65||a.charCodeAt(0)>90)continue;const u={extends:t[f]};delete t[f];for(let d=i+1;d<r.length;d++){const p=r[d],y=p.charCodeAt(0);if(y>=65&&y<=90||N.has(p)||typeof t[p]=="function"&&(p.startsWith("on")||p.startsWith(".")))break;const l=t[p];l!==void 0&&(u[p]=l,delete t[p])}t[a]&&typeof t[a]=="object"?t[a]={...u,...t[a]}:t[a]=u}}for(const r in t){if(!Object.prototype.hasOwnProperty.call(t,r)||N.has(r)||typeof t[r]!="object"||t[r]===null)continue;const i=r.charCodeAt(0);if(i<65||i>90)continue;let f=t[r];if(!f.__ref){if(!f.extends&&!f.extend){const a=o[r]||o[`smbls.${r}`];a&&(f={...f,extends:a})}if(t.childProps&&(f=B(t.childProps,f)),c&&!f.ignoreChildExtends)if(f.extends){const a=Array.isArray(f.extends)?f.extends:[f.extends],u=Array.isArray(c)?c:[c];f={...f,extends:[...u,...a]}}else f={...f,extends:c};K(f,t,r,s)}}}function ot(t,s,n){const{node:e}=t;if(!e)return;e.ref=t;const c=s?.tag==="fragment"?s.__ref?.__fragmentAnchor:null;if(c){const r=c.parentNode;if(r){if(n?.position==="before"&&n.node)r.insertBefore(e,n.node);else if(n?.position==="after"&&n.node){const i=n.node.nextSibling;r.insertBefore(e,i||c)}else r.insertBefore(e,c);return}}const o=s?.node||(s?.nodeType?s:null);if(o)if(n?.position==="before"&&n.node)o.insertBefore(e,n.node);else if(n?.position==="after"&&n.node){const r=n.node.nextSibling;r?o.insertBefore(e,r):o.appendChild(e)}else o.appendChild(e)}function $(t,s,n){const e=t.charAt(0).toLowerCase()+t.slice(1);s.context?.plugins?.length&&Z(e,s,n);const c="on"+t,o=s[c];if(typeof o=="function"){const r=t==="Render"||t==="RenderRouter";if(r){if(s.__ref.__inRender)return!0;s.__ref.__inRender=!0}const i=s.context?.designSystem;i&&P(i);try{if(o(s,s.state,s.context,n)===!1)return!1}catch(f){if(s.context?.plugins?.length&&Z("error",s,{hook:c,error:f})||console.error(`[DOMQL] Lifecycle "${c}" error:`,f),s.context?.strictMode)throw f}finally{i&&O(),r&&(s.__ref.__inRender=!1)}}return!0}var Jt=K;export{K as create,Jt as default};
|
|
4
|
+
`):"")}}if(ot(o,!0),st(o,c,s),c&&(c[o.key]=o,c.__ref?.__children&&(c.__ref.__children.includes(o.key)||c.__ref.__children.push(o.key))),typeof o.html=="function"&&o.node&&!o.node.innerHTML){const h=o.context?.designSystem;h&&P(h);try{const _=o.html(o,o.state,o.context);_!=null&&typeof _!="function"&&(o.node.innerHTML=_)}catch{}finally{h&&L()}}if($("Create",o,i),$("Complete",o,i),$("Render",o,i),$("RenderRouter",o,i),typeof o.onFrame=="function"){const h=o.onFrame,_=o.context?.designSystem,g=()=>{if(o.node){if(o.node.isConnected){_&&P(_);try{h(o,o.state,o.context)}catch(b){console.error("[DOMQL] onFrame error:",b)}finally{_&&L()}}requestAnimationFrame(g)}};requestAnimationFrame(g)}return o}function jt(t,c,n){const i=!c,s=n.state&&typeof n.state=="object"&&!Array.isArray(n.state)&&Object.keys(n.state).length===0,o=i&&s&&t.context?.state,r=n.state!==void 0&&!o?n.state:t.state&&!R(t.state)?t.state:void 0;if(r==null){if(c?.state)t.state=c.state,V(t,t.state);else if(t.context?.state){const e=t.context.state,f={...e},u=t.context?.polyglot;if(u?.translations){const a=e.lang||u.defaultLang||"en",d=u.translations[a];if(d&&typeof d=="object")for(const l in d)f[l]===void 0&&(f[l]=d[l]);const p=new Set(u.languages||[]);for(const l in u.translations)!p.has(l)&&f[l]===void 0&&(f[l]=u.translations[l])}t.state=R(f)?f:U(f),t.state.__element=t,t.state.root=t.state,V(t,t.state)}else t.state={},Object.defineProperty(t.state,"root",{value:t.state,enumerable:!1,configurable:!0,writable:!0}),V(t,t.state);return}if(typeof r=="string"){if(t.state=ft(r,c),t.state&&typeof t.state=="object"&&!R(t.state)){const e=c?.state?.root||c?.state||t.state;Object.defineProperty(t.state,"root",{value:e,enumerable:!1,configurable:!0,writable:!0})}V(t,t.state);return}if(typeof r=="function"){const e=r(t,c?.state);t.state=R(e)?e:U(e||{})}else R(r)?t.state=r:t.state=U({...r});t.state.__element=t,c?.state?(t.state.parent=c.state,t.state.root=c.state.root||c.state):t.state.root=t.state,V(t,t.state)}function q(t,c){if(!c)return t;const n=c.split("/");let i=t;for(const s of n){if(i==null)return{};i=i[s]}return i??{}}function ft(t,c){if(!c)return{};if(t===".")return c.state||{};if(t.startsWith("../")){const s=t.slice(3);return s?q(c.state,s):c.state??{}}if(t.startsWith("~/")){const s=c.state?.root||c.state,o=t.slice(2);return o?q(s,o):s??{}}if(c.state?.[t]!==void 0)return c.state[t];const n=q(c.state,t);if(n!=null&&Object.keys(n).length>0)return n;const i=c.context?.polyglot;if(i?.translations){const s=c.state?.root?.lang||i.defaultLang||"en",o=i.translations[s];if(o?.[t]!==void 0)return o[t];if(i.translations[t]!==void 0)return i.translations[t]}return{}}function kt(t){const c=t.__ref,n=t.tag||"div",i=t.context?.designSystem,s=[],o=Object.keys(t);for(let r=0;r<o.length;r++){const e=o[r];if(typeof t[e]!="function"||N.has(e))continue;const f=e.charCodeAt(0);f>=65&&f<=90||F(e)||C[e]||j&&j.has(e)||z(n,e)||s.push({prop:e,fn:t[e]})}for(let r=0;r<s.length;r++){const{prop:e,fn:f}=s[r];c.__exec[e]=f,Object.defineProperty(t,e,{get(){i&&P(i);try{return f(t,t.state,t.context)}catch{return}finally{i&&L()}},set(u){delete c.__exec[e],Object.defineProperty(t,e,{value:u,writable:!0,configurable:!0,enumerable:!0})},configurable:!0,enumerable:!0})}}function X(t,c){const n=t.__ref;if(kt(t),typeof t.text=="function"){const s=t.text,o=A(()=>{if(!n.contentManaged)try{let r=s(t,t.state,t.context);t.node&&r!=null&&typeof r!="function"&&typeof r!="object"&&(typeof r=="string"&&r.includes("{{")&&(r=G.call(t,r,t.state)),t.tag==="string"?t.node.nodeValue=r:t.node.textContent=r)}catch{}},{depth:n.path.length});n.__effects.push(o),n.__exec.text=s}else if(typeof t.text=="string"&&t.text.includes("{{")){const s=t.text,o=A(()=>{if(n.contentManaged)return;const r=G.call(t,s,t.state);r!=null&&(t.text=r),t.node&&(t.tag==="string"?t.node.nodeValue=r??"":t.node.textContent=r??"")},{depth:n.path.length});n.__effects.push(o),n.__exec.text=s}for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)&&typeof t[s]=="function"&&!N.has(s)&&!F(s)&&!n.__exec[s]){if(C[s]){const o=t[s],r=s;let e;const f=A(()=>{const u=t.context?.designSystem;u&&P(u);try{const a=o(t,t.state,t.context),d=C[r](a,t,t.state,t.context);if(d&&t.node){const p=at(d);(p===null||p!==e)&&(e=p,K(t.node,d))}else t.node&&(r==="show"||r==="hide")&&(e=void 0,t.node.style.display="")}finally{u&&L()}},{depth:n.path.length});n.__effects.push(f),n.__exec[s]=o}else if(j&&j.has(s)){const o=t[s],r=s;let e;const f=A(()=>{const u=t.context?.designSystem;u&&P(u);try{const a=o(t,t.state,t.context);if(t.node)if(a!=null){const d=r+":"+String(a);d!==e&&(e=d,K(t.node,{[r]:a}))}else e=void 0,t.node.style[r]=""}finally{u&&L()}},{depth:n.path.length});n.__effects.push(f),n.__exec[s]=o}}if(typeof c.html=="function"){const s=c.html,o=A(()=>{const r=t.context?.designSystem;r&&P(r);try{const e=s(t,t.state,t.context);t.node&&e!=null&&typeof e!="function"&&(t.node.innerHTML=e)}finally{r&&L()}},{depth:n.path.length});n.__effects.push(o),n.__exec.html=s}if(typeof c.value=="function"){const s=c.value,o=A(()=>{try{const r=s(t,t.state,t.context);if(!t.node||!("value"in t.node))return;const e=r==null?"":String(r);if(t.node.value===e)return;const f=typeof document<"u"&&document.activeElement===t.node,u=f&&typeof t.node.selectionStart=="number"?t.node.selectionStart:null,a=f&&typeof t.node.selectionEnd=="number"?t.node.selectionEnd:null;if(t.node.value=e,f&&u!=null&&a!=null)try{t.node.setSelectionRange(u,a)}catch{}}catch{}},{depth:n.path.length});n.__effects.push(o),n.__exec.value=s}if(typeof c.style=="function"){const s=c.style;let o;const r=A(()=>{const e=s(t,t.state,t.context),f=at(e);(f===null||f!==o)&&(o=f,K(t.node,e))},{depth:n.path.length});n.__effects.push(r),n.__exec.style=s}else if(t.style&&typeof t.style=="object")for(const s in t.style){const o=t.style[s];if(typeof o!="function")continue;let r;const e=A(()=>{try{const f=o(t,t.state,t.context);if(t.node){const u=s+":"+String(f);u!==r&&(r=u,K(t.node,{[s]:f}))}}catch{}},{depth:n.path.length});n.__effects.push(e)}if(t.attr&&typeof t.attr=="object"){for(const s in t.attr)if(typeof t.attr[s]=="function"){const o=t.attr[s],r=s,e=A(()=>{try{const f=o(t,t.state,t.context);t.node?.setAttribute&&(f==null||f===!1?t.node.removeAttribute(r):typeof f!="function"&&typeof f!="object"&&t.node.setAttribute(r,f===!0?"":f))}catch{}},{depth:n.path.length});n.__effects.push(e)}}if(t.aria&&typeof t.aria=="object")for(const s in t.aria){const o=t.aria[s];if(typeof o!="function")continue;const r="aria-"+s.replace(/[A-Z]/g,f=>"-"+f.toLowerCase()),e=A(()=>{try{const f=o(t,t.state,t.context);if(!t.node?.setAttribute)return;f==null||f===!1?t.node.removeAttribute(r):typeof f!="function"&&typeof f!="object"&&t.node.setAttribute(r,f===!0?"":f)}catch{}},{depth:n.path.length});n.__effects.push(e)}if(t.data&&typeof t.data=="object")for(const s in t.data){const o=t.data[s];if(typeof o!="function")continue;const e="data-"+s.replace(/[A-Z]/g,u=>"-"+u.toLowerCase()),f=A(()=>{try{const u=o(t,t.state,t.context);if(!t.node?.setAttribute)return;u==null||u===!1?t.node.removeAttribute(e):typeof u!="function"&&typeof u!="object"&&t.node.setAttribute(e,u===!0?"":u)}catch{}},{depth:n.path.length});n.__effects.push(f)}const i=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(i)for(const s in i){const o=i[s];if(typeof o!="function")continue;const r=A(()=>{try{const e=o(t,t.state,t.context);if(!t.node?.classList)return;typeof e=="string"?t.node.classList.add(e):e?t.node.classList.add(s):t.node.classList.remove(s)}catch{}},{depth:n.path.length});n.__effects.push(r)}if(typeof c.if=="function"){const s=c.if,o=A(()=>{let r;try{r=s(t,t.state,t.context)}catch(f){if(r=!1,n.__ifError=f,typeof console<"u"&&console.warn){const u=t.key||t.tag||"?";console.warn(`[smbls] \`if:\` reactive effect threw on ${u} \u2014 treating as false:`,f?.message||f)}return}const e=n.__if;if(n.__if=!!r,e&&!n.__if&&t.node)t.node.remove();else if(!e&&n.__if)if(n.__ifInitialized){t.node||(t.node=Y(t)),t.node&&(t.node.ref=t);const f=t.parent,u=f?.node;if(u&&t.node){let a=null;const d=Object.keys(f),p=d.indexOf(t.key);for(let l=p+1;l<d.length;l++){const y=f[d[l]];if(y?.node?.parentNode===u){a=y.node;break}}a?u.insertBefore(t.node,a):u.appendChild(t.node)}else st(t,t.parent);Q(t)}else{if(n.__ifInitialized=!0,t.tag||(t.tag=rt(t)),$("Init",t,{}),t.node||(t.node=Y(t)),!t.node)return;if(t.tag==="fragment"&&!n.__fragmentAnchor){const a=(t.context?.document||globalThis.document).createComment("");t.node.appendChild(a),n.__fragmentAnchor=a}$("AttachNode",t,{}),t.node.setAttribute&&t.key&&t.node.setAttribute("data-key",t.key),t.id&&t.node.setAttribute&&(t.node.id=t.id),lt(t,{});const f=c.if;delete c.if;try{X(t,c)}finally{c.if=f}Q(t),dt(t),yt(t,{}),st(t,t.parent)}},{depth:n.path.length});n.__effects.push(o)}for(const s in t){if(!Object.prototype.hasOwnProperty.call(t,s)||N.has(s)||typeof t[s]!="function")continue;const o=s.charCodeAt(0);if(o>=65&&o<=90||F(s))continue;const r=t[s];n.__exec[s]=r;const e=t.tag||"div";if(z(e,s)&&!C[s]&&!(j&&j.has(s))){const f=s,u=A(()=>{try{const a=r(t,t.state,t.context);t.node?.setAttribute&&(a==null||a===!1?t.node.removeAttribute(f):typeof a!="function"&&typeof a!="object"&&(f==="src"&&"src"in t.node?t.node.src=a:t.node.setAttribute(f,a===!0?"":a)))}catch{}},{depth:n.path.length});n.__effects.push(u)}}Pt(t),Lt(t)}function Q(t){const{node:c}=t;if(c){if(typeof t.text=="string"&&!t.text.includes("{{")?t.tag==="string"?c.nodeValue=t.text:c.textContent=t.text:typeof t.text=="number"&&(c.textContent=t.text),Tt(t),typeof t.html=="string"&&(c.innerHTML=t.html),t.value!=null&&typeof t.value!="function"&&"value"in c){const n=String(t.value);c.value!==n&&(c.value=n)}if(t.style&&typeof t.style=="object"&&K(c,t.style),t.attr&&typeof t.attr=="object")for(const n in t.attr){const i=t.attr[n];typeof i=="function"||typeof i=="object"||i==null||i===!1||c.setAttribute&&c.setAttribute(n,i===!0?"":i)}if(t.data&&typeof t.data=="object")for(const n in t.data){const i=t.data[n];typeof i=="function"||typeof i=="object"||i==null||i===!1||c.dataset&&(c.dataset[n]=i===!0?"":i)}if(t.classlist||t.class){const n=t.classlist||t.class;if(typeof n=="string")n.split(" ").forEach(i=>i&&c.classList.add(i));else if(typeof n=="object")for(const i in n){const s=typeof n[i]=="function"?n[i](t,t.state,t.context):n[i];s&&c.classList.add(typeof s=="string"?s:i)}}}}function at(t){if(t==null||typeof t!="object")return"s:"+String(t);try{return"o:"+JSON.stringify(t)}catch{return null}}function K(t,c){if(!t||!c||!t.style)return;let n=null;for(const i in c){const s=c[i];if(s!=null){if(i.charAt(0)==="&"&&typeof s=="object"){n||(n={}),n[i]=s;continue}try{const o=String(s),r=i.replace(/[A-Z]/g,a=>"-"+a.toLowerCase()),e=o.trim(),f=/\s*!important\s*$/.test(e),u=e.replace(/\s*!important\s*$/,"");t.style.setProperty(r,u,f?"important":"")}catch{}}}n&&Et(t,n)}let wt=0;function Et(t,c){const n=`_ds${wt++}`;t.classList.add(n);const i=t.ownerDocument;let s=i.querySelector("style[data-smbls-scoped]");s||(s=i.createElement("style"),s.setAttribute("data-smbls-scoped",""),i.head.appendChild(s));let o="";for(const r in c){const e="."+n,f=r.replace(/&/g,e).split(",").map(a=>{const d=a.trim();return d.includes(e)?d:e+d}).join(", "),u=c[r];if(typeof u=="object"){let a="",d="";for(const p in u){const l=u[p];if(typeof l=="object"){const y=p.includes("&")?f.split(", ").map(_=>p.replace(/&/g,_)).join(", "):f.split(", ").map(_=>`${_} ${p}`).join(", ");let h="";for(const _ in l)h+=`${_.replace(/[A-Z]/g,g=>"-"+g.toLowerCase())}: ${l[_]};`;d+=`${y} { ${h} }
|
|
5
|
+
`}else a+=`${p.replace(/[A-Z]/g,y=>"-"+y.toLowerCase())}: ${l};`}a&&(o+=`${f} { ${a} }
|
|
6
|
+
`),d&&(o+=d)}}o&&(s.textContent+=o)}function Pt(t){const c=t.subscribeTo;if(!Array.isArray(c)||c.length===0)return;const n=t.__ref;for(let i=0;i<c.length;i++){const s=c[i];if(typeof s!="string"||s.length===0)continue;const o=s.split("."),r=o[0],e=o.slice(1),f={value:!1},u=A(()=>{const a=t.state&&(R(t.state)?t.state.root:null);if(!a||!R(a))return;let d=a;d=d[r];for(let p=0;p<e.length&&!(d==null||typeof d!="object");p++)if(R(d))d=d[e[p]];else break;if(f.value&&(typeof t.onBeforeUpdate=="function"||typeof t.onUpdate=="function")){const p=t.context?.designSystem;p&&P(p);let l="onBeforeUpdate";try{let y=!1;typeof t.onBeforeUpdate=="function"&&t.onBeforeUpdate(t,t.state,t.context,{updateBySubscription:!0})===!1&&(y=!0),l="onUpdate",!y&&typeof t.onUpdate=="function"&&t.onUpdate(t,t.state,t.context)}catch(y){t.context?.plugins?.length&&Z("error",t,{hook:l,error:y})||console.error(`[DOMQL] subscribeTo ${l} error:`,y)}finally{p&&L()}}},{depth:n.path.length});f.value=!0,u._isSubscribeToEffect=!0,n.__effects.push(u)}}function Lt(t){const c=t.__ref;c.__conditionalRunners=[];for(const n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;const i=n.charAt(0);if(i!=="."&&i!=="!")continue;const s=n.slice(1);if(!s)continue;const o=t[n];if(!o||typeof o!="object")continue;const r=i==="!",e={lastMatch:!1,appliedKeys:null},f=()=>{if(!t.node)return;let a;const d=t[s];if(d===void 0)if(t.state&&s in t.state)a=t.state[s];else{const y=t.context?.cases?.[s];if(y===void 0)return;try{a=typeof y=="function"?y.call(t,t):y}catch(h){a=!1,c.__conditionalError=h,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` case fn threw on ${t.key||"?"} \u2014 treating as false:`,h?.message||h)}}else if(typeof d=="function")try{a=d(t,t.state,t.context)}catch(y){a=!1,c.__conditionalError=y,typeof console<"u"&&console.warn&&console.warn(`[smbls] conditional \`${n}\` predicate threw on ${t.key||"?"} \u2014 treating as false:`,y?.message||y)}else a=d;const p=r?!a:!!a;if(p===e.lastMatch)return;e.lastMatch=p;const l=t.context?.designSystem;l&&P(l);try{if(p){const y={};for(const _ in o){if(!Object.prototype.hasOwnProperty.call(o,_))continue;const g=typeof o[_]=="function"?o[_](t,t.state,t.context):o[_];if(g!=null)if(C[_]){const b=C[_](g,t,t.state,t.context);if(b){const v=Array.isArray(b)?b:[b];for(const D of v)D&&Object.assign(y,D)}}else j&&j.has(_)&&(y[_]=g)}const h=Object.keys(y);h.length?(K(t.node,y),e.appliedKeys=h):e.appliedKeys=null}else if(e.appliedKeys){for(const y of e.appliedKeys)t.node.style[y]="";e.appliedKeys=null}}finally{l&&L()}};c.__conditionalRunners.push(f);const u=A(f,{depth:c.path.length});c.__effects.push(u)}}const J=new WeakSet;function Ot(t){const c=t.ownerDocument;!c||J.has(c)||(J.add(c),queueMicrotask(()=>{J.delete(c);const n=c.body||c.documentElement;n&&n.offsetWidth}))}const m=new WeakSet;let ut=!1;function Tt(t){const{node:c}=t;if(!c)return;if(ut||(ut=!0,it({display:"none"})),m.has(t)){console.error("[applyCssInProps] re-entry detected for element",t.key,"prop path:",t.__ref?.path);return}m.add(t);const n=t.context?.designSystem;n&&P(n);try{const i={};let s=!1;for(const o in t){if(!Object.prototype.hasOwnProperty.call(t,o)||typeof t[o]=="function"||N.has(o))continue;const r=o.charCodeAt(0);if(!(r>=65&&r<=90)&&!F(o)){if(C[o]){const e=t[o],f=C[o](e,t,t.state,t.context);if(f){if(Array.isArray(f))for(const u of f)u&&Object.assign(i,u);else Object.assign(i,f);s=!0}}else if(j&&j.has(o)){const e=t[o];e!=null&&typeof e!="object"&&(i[o]=e,s=!0)}else if(o.charCodeAt(0)===45){const e=t[o];e!=null&&typeof e!="object"&&(i[o]=e,s=!0)}else if(o.charAt(0)==="&"){const e=t[o];e&&typeof e=="object"&&(i[o]=e,s=!0)}else if(o.charAt(0)==="@"||o.charAt(0)===":"){const e=t[o];if(e&&typeof e=="object"){const f={},u=(a,d,p)=>{if(C[d]){const l=C[d](p,t,t.state,t.context);if(l)if(Array.isArray(l))for(const y of l)y&&Object.assign(a,y);else Object.assign(a,l)}else a[d]=p};for(const a in e){let d=e[a];if(typeof d=="function"&&(d=d(t,t.state,t.context)),!(d==null||typeof d=="function")){if(a==="style"&&typeof d=="object"&&!Array.isArray(d)){for(const p in d){let l=d[p];typeof l=="function"&&(l=l(t,t.state,t.context)),!(l==null||typeof l=="function")&&u(f,p,l)}continue}u(f,a,d)}}if(Object.keys(f).length){if(o.length>1&&o.charAt(0)==="@"&&!o.startsWith("@media")&&!o.startsWith("@keyframes")&&!o.startsWith("@supports")&&(o==="@dark"||o==="@light"||!t.context?.designSystem?.media?.[o.slice(1)])){const d={};for(const l in f){const y=f[l];d[l]=typeof y=="string"&&!y.includes("!important")?y+" !important":y}const p=o.slice(1);i[`[data-theme="${p}"] &`]=d}else{let d=o;if(o.charAt(0)==="@"&&!o.startsWith("@media")&&!o.startsWith("@keyframes")){const l=o.slice(1),y=t.context?.designSystem?.media?.[l]||t.context?.designSystem?.media?.[l];y&&(d=`@media ${y}`)}const p={};for(const l in f){const y=f[l];if(y&&typeof y=="object"&&!Array.isArray(y)){const h={};for(const _ in y)if(C[_]){const g=C[_](y[_],t,t.state,t.context);if(g)if(Array.isArray(g))for(const b of g)b&&Object.assign(h,b);else Object.assign(h,g)}else h[_]=y[_];p[l]=h}else p[l]=y}Object.keys(p).length&&(i[d]=p)}s=!0}s=!0}}}}if(s){i.display&&String(i.display).includes("!important")&&(c.style.setProperty("display",String(i.display).replace(/\s*!important\s*$/,""),"important"),delete i.display);const o=it(i,null,t.context?.cssPrefix);if(o&&c.classList){const e=o.split(" ").filter(Boolean);let f=!1;for(const u of e)c.classList.add(u),f||(u.charCodeAt(0)===95&&u.charCodeAt(1)===99||u.charCodeAt(0)===95&&u.indexOf("_c",1)!==-1)&&(f=!0);f&&Ot(c)}const r=t.display!=null&&typeof t.display!="function"?t.display:t.hide===!0||t.show===!1?"none":null;if(r!=null){const e=i.display;if(e&&e!==r)if(r==="none"){const f=[];for(const u of c.classList)u.startsWith("_d-")&&u!=="_d-none"&&f.push(u);for(const u of f)c.classList.remove(u);c.classList.add("_d-none")}else c.style.display=t.display}}}finally{n&&L(),m.delete(t)}}function dt(t){const{node:c}=t;if(!c||!c.setAttribute)return;if(t.aria&&typeof t.aria=="object")for(const s in t.aria){const o=t.aria[s];if(typeof o=="function"||typeof o=="object"||o==null||o===!1)continue;const r="aria-"+s.replace(/[A-Z]/g,e=>"-"+e.toLowerCase());c.setAttribute(r,o===!0?"":o)}const n=At(t);for(const s in n){const o=n[s];o!=null&&o!==!1&&typeof o!="function"&&typeof o!="object"&&c.setAttribute(s,o===!0?"":o)}const i=t.tag||"div";for(const s in t){if(!Object.prototype.hasOwnProperty.call(t,s)||typeof t[s]=="function"||N.has(s)||s==="on"||n[s]!==void 0)continue;const o=s.charCodeAt(0);if(!(o>=65&&o<=90)&&!F(s)&&!(C[s]||j&&j.has(s))&&z(i,s)){let r=t[s];if(r==null||r===!1||(typeof r=="string"&&r.includes("{{")&&(r=G(r,t,t.state,t.context),t[s]=r),r==null||r===!1||typeof r=="function"||typeof r=="object"))continue;c.setAttribute(s,r===!0?"":r)}}}function Rt(t){if(!t.autoGrow)return;const c=t.node;if(!c||c.tagName!=="TEXTAREA")return;const n=t.autoGrow,i=n&&typeof n=="object"&&n.max?String(n.max):null;i&&(c.style.maxHeight=i);const s=()=>{c.style.height="auto",c.style.height=c.scrollHeight+"px"};s(),c.addEventListener("input",s),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{c.removeEventListener("input",s)}catch{}})}const pt=new Set(["onSwipe","onSwipeLeft","onSwipeRight","onSwipeUp","onSwipeDown"]);function lt(t,c){for(const n in t){if(!Object.prototype.hasOwnProperty.call(t,n)||!F(n)||pt.has(n))continue;let i=t[n];if(typeof i=="string"&&/^[A-Za-z_$][\w$]*$/.test(i)){const o=i;i=function(e){return t.call(o,e)}}if(typeof i!="function")continue;const s=St(n);_t.has(s)||gt(Ct(s),t,i)}Nt(t)}function Nt(t){const c=t.node;if(!c||!c.addEventListener)return;const n={};let i=!1;for(const p of pt){const l=t[p];typeof l=="function"&&(n[p]=l,i=!0)}if(!i)return;const s=typeof t.swipeThreshold=="number"?t.swipeThreshold:40,o=typeof t.swipeMaxDuration=="number"?t.swipeMaxDuration:600;let r=0,e=0,f=0,u=!1;const a=p=>{const l=p.touches&&p.touches[0]||p.changedTouches&&p.changedTouches[0];l&&(r=l.clientX,e=l.clientY,f=Date.now(),u=!0)},d=p=>{if(!u)return;u=!1;const l=p.changedTouches&&p.changedTouches[0]||p.touches&&p.touches[0];if(!l)return;const y=l.clientX-r,h=l.clientY-e,_=Date.now()-f;if(_>o)return;const g=Math.abs(y),b=Math.abs(h);if(Math.max(g,b)<s)return;let v;if(g>b*1.2)v=y<0?"left":"right";else if(b>g*1.2)v=h<0?"up":"down";else return;const D="onSwipe"+v.charAt(0).toUpperCase()+v.slice(1),T=n[D],S=n.onSwipe;T&&T.call(t,p,t,t.state,t.context),S&&S.call(t,{direction:v,dx:y,dy:h,dt:_,event:p},t,t.state,t.context)};c.addEventListener("touchstart",a,{passive:!0}),c.addEventListener("touchend",d,{passive:!0}),t.__ref.__eventCleanup||(t.__ref.__eventCleanup=[]),t.__ref.__eventCleanup.push(()=>{try{c.removeEventListener("touchstart",a)}catch{}try{c.removeEventListener("touchend",d)}catch{}})}function B(t,c){const n={...t};for(const i in c){const s=n[i],o=c[i];s&&o&&typeof s=="object"&&typeof o=="object"&&!Array.isArray(s)&&!Array.isArray(o)&&typeof s!="function"&&typeof o!="function"?n[i]=B(s,o):n[i]=o}return n}function tt(t,c,n){if(!c||!t.node)return;const i=t.childExtends;if(Array.isArray(c)){const s=t.tag==="fragment",o=t.context?.document||globalThis.document,r=s?null:o?.createDocumentFragment();if(!s&&!r)return;const e=t.childProps,f=t.childrenAs;for(let u=0;u<c.length;u++){let a=c[u];const d=a;(typeof a=="string"||typeof a=="number")&&(a={text:a});let p=e;if(typeof e=="function")try{p=e(t,a)}catch{p=null}if(f==="state"){let h=d;(typeof d=="string"||typeof d=="number")&&(h={value:d,text:d}),a=p?{...p,state:h}:{state:h}}else p&&(a=B(p,a));if(i&&!a.ignoreChildExtends)if(a.extends){const h=Array.isArray(a.extends)?a.extends:[a.extends],_=Array.isArray(i)?i:[i];a={...a,extends:[..._,...h]}}else a={...a,extends:i};const l=a?.key||d&&typeof d=="object"&&d.key||`${u}`,y=I(a,t,l,n);!s&&y?.node&&r.appendChild(y.node)}s||t.node.appendChild(r);return}if(typeof c=="string"){const s=ft(c,t);if(Array.isArray(s)){tt(t,s,n);return}}if(typeof c=="object")for(const s in c){if(N.has(s))continue;let o=c[s];if(!(o==null||o===!1)){if((typeof o=="string"||typeof o=="number")&&(o={text:o}),t.childProps&&(o=B(t.childProps,o)),i&&!o.ignoreChildExtends)if(o.extends){const r=Array.isArray(o.extends)?o.extends:[o.extends],e=Array.isArray(i)?i:[i];o={...o,extends:[...e,...r]}}else o={...o,extends:i};I(o,t,s,n)}}}function ot(t,c){const n=t.node;if(!n||n.tagName!=="SELECT")return;const i=n.options;if(!i||!i.length)return;const s=t.__ref,o=s&&s.__exec&&s.__exec.value,r=typeof o=="function",e=t.value!=null&&typeof t.value!="function";if(r||e){let a;if(r)try{a=o(t,t.state,t.context)}catch{return}else a=t.value;const d=a==null?"":String(a);n.value!==d&&(n.value=d);return}const f=c||!(s&&s.__selectSynced);if(s&&(s.__selectSynced=!0),!f)return;let u=-1;for(let a=0;a<i.length;a++)i[a].defaultSelected&&(u=a);u>=0&&n.selectedIndex!==u&&(n.selectedIndex=u)}function yt(t,c){let{children:n,content:i}=t;const s=t.childExtends;if(typeof n=="function"){const r=n;n=r(t,t.state,t.context),t.children=n;const e=t.__ref;let f=!1;const u=A(()=>{const a=r(t,t.state,t.context);if(!f){f=!0;return}if(a===t.children)return;if(t.children=a,Array.isArray(a)&&t.childrenAs==="state"){const l=t.childProps,y=[],h=new Map;for(let S=0;S<a.length;S++){const w=a[S];let x=l;if(typeof l=="function")try{x=l(t,w)}catch{x=null}const M=x&&x.key||w&&w.key||`${S}`;y.push(M),h.set(M,{rawChild:w,childProps:x})}const _=new Set(y),g=e.__children.slice();for(const S of g)if(!_.has(S)){const w=t[S];w?.remove&&w.remove(),delete t[S]}const b=t.childExtends,v=t.tag==="fragment",D=t.context?.document||globalThis.document,T=v?null:D?.createDocumentFragment();for(const S of y){const w=h.get(S),x=w.rawChild,M=t[S];if(M&&M.state){if(x&&typeof x=="object"){const O=M.state;if(typeof O.replace=="function")O.replace(x);else if(typeof O.update=="function"){for(const k in O)if(!(k==="__element"||k==="root"||k==="parent"||k==="update")&&!Object.prototype.hasOwnProperty.call(x,k))try{O[k]=void 0}catch{}O.update(x)}else for(const k in x)O[k]=x[k]}continue}let H=x;(typeof x=="string"||typeof x=="number")&&(H={value:x,text:x});const ct=w.childProps;let E=ct?{...ct,state:H}:{state:H};if(b&&!E.ignoreChildExtends)if(E.extends){const O=Array.isArray(E.extends)?E.extends:[E.extends],k=Array.isArray(b)?b:[b];E={...E,extends:[...k,...O]}}else E={...E,extends:b};const nt=I(E,t,S,c);!v&&nt?.node&&T&&T.appendChild(nt.node)}!v&&T&&T.childNodes.length&&t.node&&t.node.appendChild(T),e.__children=y,ot(t,!1);return}for(const l of[...e.__children]){const y=t[l];y?.remove&&y.remove(),delete t[l]}e.__children=[],tt(t,a,c),ot(t,!1)},{depth:e.path.length});e.__effects.push(u)}if(tt(t,n||i,c),n||i)return;const o=t.context?.components||{};{const r=Object.keys(t);for(let e=0;e<r.length;e++){const f=r[e];if(!f.endsWith("Extends")||typeof t[f]!="string")continue;const u=f.slice(0,-7);if(!u||u.charCodeAt(0)<65||u.charCodeAt(0)>90)continue;const a={extends:t[f]};delete t[f];for(let d=e+1;d<r.length;d++){const p=r[d],l=p.charCodeAt(0);if(l>=65&&l<=90||N.has(p)||typeof t[p]=="function"&&(p.startsWith("on")||p.startsWith(".")))break;const y=t[p];y!==void 0&&(a[p]=y,delete t[p])}t[u]&&typeof t[u]=="object"?t[u]={...a,...t[u]}:t[u]=a}}for(const r in t){if(!Object.prototype.hasOwnProperty.call(t,r)||N.has(r)||typeof t[r]!="object"||t[r]===null)continue;const e=r.charCodeAt(0);if(e<65||e>90)continue;let f=t[r];if(!f.__ref){if(!f.extends&&!f.extend){const u=o[r]||o[`smbls.${r}`];u&&(f={...f,extends:u})}if(t.childProps&&(f=B(t.childProps,f)),s&&!f.ignoreChildExtends)if(f.extends){const u=Array.isArray(f.extends)?f.extends:[f.extends],a=Array.isArray(s)?s:[s];f={...f,extends:[...a,...u]}}else f={...f,extends:s};I(f,t,r,c)}}}function st(t,c,n){const{node:i}=t;if(!i)return;i.ref=t;const s=c?.tag==="fragment"?c.__ref?.__fragmentAnchor:null;if(s){const r=s.parentNode;if(r){if(n?.position==="before"&&n.node)r.insertBefore(i,n.node);else if(n?.position==="after"&&n.node){const e=n.node.nextSibling;r.insertBefore(i,e||s)}else r.insertBefore(i,s);return}}const o=c?.node||(c?.nodeType?c:null);if(o)if(n?.position==="before"&&n.node)o.insertBefore(i,n.node);else if(n?.position==="after"&&n.node){const r=n.node.nextSibling;r?o.insertBefore(i,r):o.appendChild(i)}else o.appendChild(i)}function $(t,c,n){const i=t.charAt(0).toLowerCase()+t.slice(1);c.context?.plugins?.length&&Z(i,c,n);const s="on"+t,o=c[s];if(typeof o=="function"){const r=t==="Render"||t==="RenderRouter";if(r){if(c.__ref.__inRender)return!0;c.__ref.__inRender=!0}const e=c.context?.designSystem;e&&P(e);try{if(o(c,c.state,c.context,n)===!1)return!1}catch(f){if(c.context?.plugins?.length&&Z("error",c,{hook:s,error:f})||console.error(`[DOMQL] Lifecycle "${s}" error:`,f),c.context?.strictMode)throw f}finally{e&&L(),r&&(c.__ref.__inRender=!1)}}return!0}var mt=I;export{I as create,mt as default};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@symbo.ls/element",
|
|
3
|
-
"version": "3.14.
|
|
3
|
+
"version": "3.14.595",
|
|
4
4
|
"description": "Core element creation, update, and disposal engine for smbls v3.14",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/cjs/index.js",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"@symbo.ls/signal": "^3.14.343",
|
|
25
25
|
"@symbo.ls/state": "^3.14.105",
|
|
26
26
|
"@symbo.ls/utils": "^3.14.446",
|
|
27
|
-
"css-in-props": "^3.14.
|
|
27
|
+
"css-in-props": "^3.14.595",
|
|
28
28
|
"attrs-in-props": "^3.14.105"
|
|
29
29
|
},
|
|
30
30
|
"files": [
|