@tempots/dom 24.0.0-next.25 → 24.0.0-next.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.cjs +1 -1
  2. package/index.js +247 -245
  3. package/package.json +1 -1
package/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var lt=Object.defineProperty;var ye=s=>{throw TypeError(s)};var at=(s,e,t)=>e in s?lt(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var o=(s,e,t)=>at(s,typeof e!="symbol"?e+"":e,t),Te=(s,e,t)=>e.has(s)||ye("Cannot "+t);var Z=(s,e,t)=>(Te(s,e,"read from private field"),t?t.call(s):e.get(s)),Se=(s,e,t)=>e.has(s)?ye("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(s):e.set(s,t),be=(s,e,t,r)=>(Te(s,e,"write to private field"),r?r.call(s,t):e.set(s,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Pe=(s,e,t)=>s+(e-s)*t,Ee=97,ve=(s,e,t)=>{const r=Math.max(s.length,e.length);let n="";for(let i=0;i<r;i++){let l=s.charCodeAt(i);isNaN(l)&&(l=Ee);let a=e.charCodeAt(i);isNaN(a)&&(a=Ee),n+=String.fromCharCode(l+(a-l)*t)}return n},_e=(s,e,t)=>new Date(s.getTime()+(e.getTime()-s.getTime())*t),Ce=(s,e)=>e,Oe=s=>typeof s=="number"?Pe:typeof s=="string"?ve:s instanceof Date?_e:Ce;var M;class F{constructor(e,t){o(this,"counter");o(this,"isFirst");o(this,"isEven");o(this,"isOdd");Se(this,M);o(this,"dispose",()=>{this.total.dispose()});this.index=e,this.total=t,this.counter=e+1,this.isFirst=e===0,this.isEven=e%2===1,this.isOdd=e%2===0}get isLast(){return Z(this,M)==null&&be(this,M,this.total.map(e=>this.counter===e)),Z(this,M)}}M=new WeakMap;const k=class k{constructor(e,t){o(this,"$__signal__",!0);o(this,"_value");o(this,"_derivatives",[]);o(this,"_onValueListeners",[]);o(this,"_onDisposeListeners",[]);o(this,"get",()=>this._value);o(this,"hasListeners",()=>this._onValueListeners.length>0);o(this,"on",(e,t={})=>{t.skipInitial||e(this.get(),void 0);const r=t.once?(i,l)=>{n(),e(i,l)}:e;this._onValueListeners.push(r);const n=()=>{this._onValueListeners.splice(this._onValueListeners.indexOf(r),1),t.abortSignal!=null&&t.abortSignal.removeEventListener("abort",n)};return t.abortSignal!=null&&t.abortSignal.addEventListener("abort",n),n});o(this,"_setAndNotify",(e,t)=>{const r=this._value,n=this.equals(r,e);n||(this._value=e),(t||!n)&&this._onValueListeners.forEach(i=>i(e,r))});o(this,"_disposed",!1);o(this,"isDisposed",()=>this._disposed);o(this,"onDispose",e=>{this._onDisposeListeners.push(e)});o(this,"dispose",()=>{this._disposed||(this._disposed=!0,this._onDisposeListeners.forEach(e=>e()),this._onDisposeListeners.length=0,this._derivatives.length=0)});o(this,"map",(e,t=(r,n)=>r===n)=>{const r=new C(()=>{try{return e(this.get())}catch(n){throw console.error("Error in Signal.map:",n),n}},t);return this.setDerivative(r),r});o(this,"flatMap",(e,t=(r,n)=>r===n)=>{const r=new C(()=>{try{return e(this.get()).get()}catch(n){throw console.error("Error in Signal.flatMap:",n),n}},t);return this.setDerivative(r),r});o(this,"tap",e=>this.map(t=>(e(t),t)));o(this,"at",e=>this.map(t=>t[e]));o(this,"_$");o(this,"filter",(e,t)=>{let r=t??this.get();const n=new C(()=>{try{const i=this.get();return r=e(i)?i:r}catch(i){throw console.error("Error in Signal.filter:",i),i}},this.equals);return this.setDerivative(n),n});o(this,"filterMap",(e,t,r=(n,i)=>n===i)=>{let n=t;const i=new C(()=>{try{const l=this.get(),a=e(l);return n=a??n}catch(l){throw console.error("Error in Signal.filterMap:",l),l}},r);return this.setDerivative(i),i});o(this,"mapAsync",(e,t,r,n=(i,l)=>i===l)=>{const i=P(t,n);let l=0,a=new AbortController;return i.onDispose(this.on(async c=>{const u=++l;a.abort(),a=new AbortController;try{const h=await e(c,{abortSignal:a.signal});u===l&&i.set(h)}catch(h){if(u===l)if(r!=null)i.set(r(h));else throw h}})),i});o(this,"mapMaybe",(e,t)=>this.map(r=>e(r)??t));o(this,"feedProp",(e,t=!1)=>{const r=this.on(e.set);return e.onDispose(r),t?this.onDispose(e.dispose):this.onDispose(r),e});o(this,"deriveProp",({autoDisposeProp:e=!0,equals:t}={})=>this.feedProp(P(this.get(),t),e));o(this,"derive",()=>this.map(e=>e));o(this,"count",()=>{let e=0;return this.map(()=>++e)});o(this,"setDerivative",e=>{this._derivatives.push(e),e.onDispose(()=>{this._derivatives.splice(this._derivatives.indexOf(e),1)}),e.onDispose(this.on(e.setDirty)),this.onDispose(e.dispose)});this.equals=t,this._value=e}get value(){return this._value}get $(){return this._$!==void 0?this._$:this._$=new Proxy(this,{get:(e,t)=>this.at(t)})}};o(k,"ofPromise",(e,t,r,n=(i,l)=>i===l)=>{const i=new k(t,n);return e.then(l=>i._setAndNotify(l,!1)).catch(l=>{r!=null?i._setAndNotify(r(l),!1):console.error("Unhandled promise rejection in Signal.ofPromise:",l)}),i}),o(k,"is",e=>e!=null&&e.$__signal__===!0);let f=k;const ct=typeof queueMicrotask=="function"?queueMicrotask:s=>Promise.resolve().then(s);class C extends f{constructor(t,r){super(void 0,r);o(this,"$__computed__",!0);o(this,"_isDirty",!1);o(this,"setDirty",()=>{this._isDirty||this._disposed||(this._isDirty=!0,this._derivatives.forEach(t=>t.setDirty()),this._scheduleNotify())});o(this,"_scheduleCount",0);o(this,"_scheduleNotify",()=>{const t=++this._scheduleCount;ct(()=>{this._scheduleCount!==t||this._disposed!==!1||this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!1))})});o(this,"get",()=>(this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!0)),this._value));this._fn=t,this.setDirty()}static is(t){return t!=null&&t.$__computed__===!0}get value(){return this.get()}}const X=class X extends f{constructor(){super(...arguments);o(this,"$__prop__",!0);o(this,"set",t=>{this._setAndNotify(t,!1)});o(this,"update",t=>{this._setAndNotify(t(this.get()),!1)});o(this,"reducer",(t,...r)=>{const n=this;return function i(l){const a=n.value;n.update(c=>t(c,l)),!n.equals(a,n.value)&&r.forEach(c=>c({previousState:a,state:n.value,action:l,dispatch:i}))}});o(this,"iso",(t,r,n=(i,l)=>i===l)=>{const i=new X(t(this.get()),n);return i.onDispose(this.on(l=>i.set(t(l)))),i.on(l=>this._setAndNotify(r(l),!1)),i});o(this,"atProp",t=>this.iso(r=>r[t],r=>({...this.value,[t]:r})))}get value(){return this.get()}set value(t){this._setAndNotify(t,!1)}};o(X,"is",t=>t!=null&&t.$__prop__===!0);let H=X;const Y=(s,e,t=(r,n)=>r===n)=>{const r=new C(s,t);return e.forEach(n=>n.setDerivative(r)),r},we=(s,e,t={})=>{let r=t.once?()=>{i(),s()}:s;if(t.skipInitial){let l=!1;const a=r;r=()=>{l?a():l=!0}}const n=Y(r,e),i=()=>{n.dispose(),t.abortSignal!=null&&t.abortSignal.removeEventListener("abort",i)};return t.abortSignal!=null&&t.abortSignal.addEventListener("abort",i),i},P=(s,e=(t,r)=>t===r)=>new H(s,e),$=(s,e=(t,r)=>t===r)=>new f(s,e),K=()=>typeof window<"u"?window:void 0,g={map:(s,e)=>f.is(s)?s.map(e):e(s),toSignal:(s,e)=>f.is(s)?s:$(s,e),maybeToSignal:(s,e)=>{if(s!=null)return g.toSignal(s,e)},get:s=>f.is(s)?s.get():s,on:(s,e)=>f.is(s)?s.on(e):(e(s),()=>{}),dispose:s=>{f.is(s)&&s.dispose()},deriveProp:(s,{autoDisposeProp:e=!0,equals:t}={})=>f.is(s)?s.deriveProp({autoDisposeProp:e,equals:t}):P(s,t)},ut=(...s)=>(e,t)=>{const r=s.filter(n=>f.is(n));return Y(()=>e(...s.map(n=>g.get(n))),r,t)},ht=(...s)=>(e,t={})=>{const r=s.filter(n=>f.is(n));return we(()=>e(...s.map(g.get)),r,t)};class ee{constructor(){o(this,"_store",new Map);o(this,"getItem",e=>this._store.get(e)??null);o(this,"setItem",(e,t)=>{this._store.set(e,t)})}}const te=({key:s,defaultValue:e,store:t,serialize:r=JSON.stringify,deserialize:n=JSON.parse,equals:i=(a,c)=>a===c,onLoad:l=a=>a})=>{const a=t.getItem(s),c=new H(a!=null?l(n(a)):typeof e=="function"?e():e,i);return c.on(u=>{t.setItem(s,r(u))}),c},dt=s=>{var e;return te({...s,store:((e=K())==null?void 0:e.localStorage)??new ee})},ft=s=>{var e;return te({...s,store:((e=K())==null?void 0:e.sessionStorage)??new ee})};function Ae(s){return typeof requestAnimationFrame=="function"?requestAnimationFrame(s):setTimeout(s,0)}const xe=(s,e,t,r)=>{const n=(r==null?void 0:r.duration)??300,i=(r==null?void 0:r.easing)??(A=>A),l=(r==null?void 0:r.equals)??((A,B)=>A===B);let a=r==null?void 0:r.interpolate,c=s,u=e(),h=performance.now(),y=null,E=!0;const p=new C(e,l),m=P(s,l);m.onDispose(()=>{y!==null&&cancelAnimationFrame(y)}),m.onDispose(p.dispose),t.forEach(A=>{A.setDerivative(p),A.onDispose(m.dispose)});const _=A=>{u=A,h=performance.now(),c=m.value,E&&(E=!1,y=Ae(me))},me=()=>{const B=(performance.now()-h)/g.get(n),ot=i(B);a==null&&(a=Oe(c));let ge=a(c,u,ot);B>=1?(E=!0,ge=u):y=Ae(me),m.set(ge)};return p.on(_),m},pt=(s,e)=>{const{initialValue:t,...r}=e??{};return xe(t??s.get(),s.get,[s],r)},mt=(s,e)=>{const{signals:t,literals:r}=Object.entries(s).reduce(({signals:i,literals:l},[a,c])=>(f.is(c)?i.push([a,c]):l[a]=c,{signals:i,literals:l}),{signals:[],literals:{}}),n=t.map(([,i])=>i);return Y(()=>(t.forEach(([i,l])=>r[i]=l.value),e(r)),n)},Le=new Set(["checked","disabled","hidden","selected"]),De=new Set(["rowSpan","colSpan","tabIndex","valueAsNumber"]),Me=new Set(["valueAsDate"]),ke=new Set(["value","textContent","innerText","innerHTML","outerHTML","className","classList"]),He=(s,e)=>Le.has(s)?t=>{t==null?e[s]=null:e[s]=!!t}:De.has(s)?t=>{t==null?e[s]=null:e[s]=Number(t)}:Me.has(s)?t=>{t==null?e[s]=null:e[s]=t}:ke.has(s)?t=>{t==null?e[s]=null:e[s]=String(t)}:t=>{t==null?e.removeAttribute(s):e.setAttribute(s,t)},Ne=(s,e)=>Le.has(s)?()=>!!e[s]:De.has(s)?()=>Number(e[s]):Me.has(s)?()=>e[s]:ke.has(s)?()=>String(e[s]):()=>e.getAttribute(s),N=s=>{const e=s;e&&e.onblur&&(e.onblur=null),!(!s||s.ownerDocument===void 0)&&s.parentElement&&s.parentElement.removeChild(s)},Ie=s=>se(s)?s:s.parentElement,se=s=>s.nodeType===1;class re extends Error{constructor(e){super(`Provider not found: ${e.description}`)}}class O{constructor(e,t,r,n){o(this,"createElement",(e,t)=>t!==void 0?this.document.createElementNS(t,e):this.document.createElement(e));o(this,"makeChildElement",(e,t)=>{const r=this.createElement(e,t);return this.appendOrInsert(r),this.withElement(r)});o(this,"createText",e=>this.document.createTextNode(e));o(this,"makeChildText",e=>{const t=this.createText(e);return this.appendOrInsert(t),this.withReference(t)});o(this,"setText",e=>{this.reference.nodeValue=e});o(this,"getText",()=>{var e;return((e=this.reference)==null?void 0:e.nodeValue)??this.element.textContent??""});o(this,"makeRef",()=>{const e=this.createText("");return this.appendOrInsert(e),this.withReference(e)});o(this,"appendOrInsert",e=>{this.reference===void 0?this.element.appendChild(e):this.element.insertBefore(e,this.reference)});o(this,"withElement",e=>new O(this.document,e,void 0,this.providers));o(this,"makePortal",e=>{const t=this.document.querySelector(e);if(t==null)throw new Error(`Cannot find element by selector for portal: ${e}`);return this.withElement(t)});o(this,"withReference",e=>new O(this.document,this.element,e,this.providers));o(this,"withProviders",e=>new O(this.document,this.element,this.reference,{...this.providers,...e}));o(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new re(e);return this.providers[e]});o(this,"clear",e=>{e&&(this.reference!==void 0?N(this.reference):N(this.element))});o(this,"addClasses",e=>{this.element.classList.add(...e)});o(this,"removeClasses",e=>{this.element.classList.remove(...e)});o(this,"getClasses",()=>Array.from(this.element.classList));o(this,"on",(e,t,r)=>(this.element.addEventListener(e,t,r),n=>{n&&this.element.removeEventListener(e,t,r)}));o(this,"isBrowserDOM",()=>!0);o(this,"isHeadlessDOM",()=>!1);o(this,"setStyle",(e,t)=>{this.element.style[e]=t});o(this,"getStyle",e=>this.element.style[e]);o(this,"makeAccessors",e=>({get:Ne(e,this.element),set:He(e,this.element)}));this.document=e,this.element=t,this.reference=r,this.providers=n}static of(e,t){return new O(e.ownerDocument,e,t,{})}}const z=(s,e)=>{const t=s(e);return()=>t(!0)},gt=(s,e,{doc:t,clear:r}={})=>{const n=typeof e=="string"?(t??document).querySelector(e):e;if(n===null)throw new $e(`Cannot find element by selector for render: ${e}`);r!==!1&&(t??n.ownerDocument)!=null&&n.nodeType===1&&(n.innerHTML="");const i=Ie(n),l=se(n)?void 0:n,a=O.of(i,l);return z(s,a)},yt=(s,{startUrl:e="https://example.com",selector:t=":root"}={})=>{const r=g.toSignal(e).deriveProp(),n=new ie(t,void 0),i=new w(n,void 0,{currentURL:r},{});return{clear:z(s(),i),root:n,currentURL:r}};class $e extends Error{constructor(e){super(e)}}const ne="data-tts-node",I="data-tts-class",U="data-tts-style",W="data-tts-html",G="data-tts-text",J="data-tts-attrs";class Tt{constructor({select:e,getAttribute:t,setAttribute:r,getClass:n,setClass:i,getStyles:l,setStyles:a,appendHTML:c,getInnerHTML:u,setInnerHTML:h,getInnerText:y,setInnerText:E}){o(this,"select");o(this,"getAttribute");o(this,"setAttribute");o(this,"getClass");o(this,"setClass");o(this,"getStyles");o(this,"setStyles");o(this,"appendHTML");o(this,"getInnerHTML");o(this,"setInnerHTML");o(this,"getInnerText");o(this,"setInnerText");o(this,"setFromRoot",(e,t)=>{e.getPortals().forEach(n=>{for(const i of this.select(n.selector)){if(i==null)throw new Error(`Cannot find element by selector for render: ${n.selector}`);if(n.hasChildren()&&this.appendHTML(i,n.contentToHTML(t)),n.hasInnerHTML()){if(t){const l=this.getInnerHTML(i);l!=null&&this.setAttribute(i,W,l)}this.setInnerHTML(i,n.getInnerHTML())}if(n.hasInnerText()){if(t){const l=this.getInnerText(i);l!=null&&this.setAttribute(i,G,l)}this.setInnerText(i,n.getInnerText())}if(n.hasClasses()){if(t){const l=this.getClass(i);l!=null&&this.setAttribute(i,I,l)}this.setClass(i,n.getClasses().join(" "))}if(n.hasStyles()){if(t){const l=this.getStyles(i);Object.keys(l).length>0&&this.setAttribute(i,U,JSON.stringify(l))}this.setStyles(i,n.getStyles())}if(n.hasAttributes()){const l=n.getAttributes();if(t){const a=[];l.forEach(([c])=>{const u=this.getAttribute(i,c);u!=null&&a.push([c,u])}),a.length>0&&this.setAttribute(i,J,JSON.stringify(Object.fromEntries(a)))}l.forEach(([a,c])=>{this.setAttribute(i,a,c)})}}})});this.select=e,this.getAttribute=t,this.setAttribute=r,this.getClass=n,this.setClass=i,this.getStyles=l,this.setStyles=a,this.appendHTML=c,this.getInnerHTML=u,this.setInnerHTML=h,this.getInnerText=y,this.setInnerText=E}}const St=()=>{document.querySelectorAll(`[${ne}]`).forEach(N)},bt=s=>{const e=s.getAttribute(I);s.removeAttribute(I),e!=null&&s.setAttribute("class",e)},Et=()=>{document.querySelectorAll(`[${I}]`).forEach(e=>bt(e))},At=s=>{const e=s.getAttribute(W);s.removeAttribute(W),e!=null&&(s.innerHTML=e)},Pt=()=>{document.querySelectorAll(`[${W}]`).forEach(e=>At(e))},vt=s=>{const e=s.getAttribute(G);s.removeAttribute(G),e!=null&&(s.innerText=e)},_t=()=>{document.querySelectorAll(`[${G}]`).forEach(e=>vt(e))},Re=s=>JSON.parse(s.replace(/&quot;/g,'"')),Ct=s=>{const e=s.getAttribute(U);if(s.removeAttribute(U),e!=null){const t=Re(e);Object.entries(t).forEach(([r,n])=>{s.style.setProperty(r,n)})}},Ot=()=>{document.querySelectorAll(`[${U}]`).forEach(e=>Ct(e))},wt=s=>{const e=s.getAttribute(J);if(s.removeAttribute(J),e!=null){const t=Re(e);Object.entries(t).forEach(([r,n])=>{n==null?s.removeAttribute(r):s.setAttribute(r,n)})}},xt=()=>{document.querySelectorAll(`[${J}]`).forEach(e=>wt(e))},Lt=()=>{St(),Et(),_t(),Pt(),Ot(),xt()},S=Symbol("class"),v=Symbol("style"),L=Symbol("handler"),Ve=()=>Math.random().toString(36).substring(2,15),Dt=s=>s.replace(/<[^>]*>?/g,"");class je{constructor(e){o(this,"id",Ve());o(this,"properties",{});o(this,"children",[]);o(this,"isElement",()=>!0);o(this,"isText",()=>!1);o(this,"getText",()=>this.properties.innerText!=null?this.properties.innerText:this.properties.innerHTML!=null?Dt(this.properties.innerHTML):this.children.map(e=>e.getText()).join(""));o(this,"removeChild",e=>{const t=this.children.indexOf(e);t!==-1&&this.children.splice(t,1)});o(this,"remove",()=>{if(this.parent!=null)this.parent.removeChild(this);else throw new Error("Parent is undefined")});o(this,"getPortals",()=>{const e=this.elements().flatMap(t=>t.isPortal()?[t,...t.getPortals()]:t.getPortals());return this.isPortal()&&e.unshift(this),e});o(this,"elements",()=>this.children.filter(e=>e.isElement()));o(this,"hasInnerHTML",()=>this.properties.innerHTML!=null);o(this,"getInnerHTML",()=>this.properties.innerHTML??"");o(this,"getInnerText",()=>this.properties.innerText??"");o(this,"hasInnerText",()=>this.properties.innerText!=null);o(this,"hasChildren",()=>this.children.length>0);o(this,"hasClasses",()=>this.properties[S]!=null);o(this,"hasStyles",()=>this.properties[v]!=null);o(this,"hasAttributes",()=>Object.keys(this.properties).length>0);o(this,"hasHandlers",()=>this.properties[L]!=null);o(this,"hasRenderableProperties",()=>this.hasClasses()||this.hasAttributes()||this.hasStyles());o(this,"getById",e=>{if(this.properties.id===e)return this;for(const t of this.elements()){const r=t.getById(e);if(r!=null)return r}});o(this,"trigger",(e,t)=>{((this.properties[L]??{})[e]??[]).forEach(n=>n(t))});o(this,"click",()=>{this.trigger("click",{})});o(this,"on",(e,t,r)=>{var a;const n=(a=this.properties)[L]??(a[L]={}),i=r!=null&&r.once?c=>{l(),t(c)}:c=>t(c);n[e]=[...n[e]??[],i];const l=()=>{const c=n[e]??[],u=c.indexOf(i);u!==-1&&(c.splice(u,1),c.length===0?(delete n[e],Object.keys(n).length===0&&delete this.properties[L]):n[e]=c,(r==null?void 0:r.signal)!=null&&r.signal.removeEventListener("abort",l))};return(r==null?void 0:r.signal)!=null&&r.signal.addEventListener("abort",l),l});o(this,"addClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[S]??(r[S]=[]);e.forEach(n=>{t.includes(n)||t.push(n)})});o(this,"removeClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[S]??(r[S]=[]);e.forEach(n=>{const i=t.indexOf(n);i!==-1&&t.splice(i,1)}),t.length===0&&delete this.properties[S]});o(this,"getClasses",()=>this.properties[S]??[]);o(this,"getAttributes",()=>Object.entries(this.properties).filter(([e])=>!["innerText","innerHTML"].includes(e)));o(this,"getVisibleAttributes",()=>Reflect.ownKeys(this.properties).flatMap(e=>e===S?[["class",this.getClasses()]]:e===v?[["style",this.getStyles()]]:typeof e=="string"?[[e,String(this.properties[e])]]:[]));o(this,"setStyle",(e,t)=>{var n;const r=(n=this.properties)[v]??(n[v]={});r[e]=t,t===""&&(delete r[e],Object.keys(r).length===0&&delete this.properties[v])});o(this,"getStyle",e=>{var t;return((t=this.properties[v])==null?void 0:t[e])??""});o(this,"getStyles",()=>this.properties[v]??{});o(this,"makeAccessors",e=>{const t=this.properties;return{get:()=>t[e],set:r=>t[e]=r}});this.parent=e}}const Mt=s=>s.replace(/"/g,"&quot;"),kt=s=>s.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");class qe extends je{constructor(t,r,n){super(n);o(this,"isPortal",()=>!1);o(this,"toHTML",(t=!1)=>{const r=this.children.map(c=>c.toHTML()).join(""),n=this.namespace?` xmlns="${this.namespace}"`:"";let i=null;const l=this.getVisibleAttributes().map(([c,u])=>c==="class"?` class="${u.join(" ")}"`:c==="style"?typeof u=="string"?` style="${u}"`:` style="${Object.entries(u).map(([h,y])=>`${h}: ${y};`).join(" ")}"`:Ht.has(c)?` ${c}`:c==="innerHTML"?(i=u,""):c==="innerText"?(i=kt(u),""):` ${c}="${Mt(u)}"`).join(""),a=t?` ${ne}`:"";return Nt.has(this.tagName)&&r===""?`<${this.tagName}${n}${l}${a} />`:`<${this.tagName}${n}${l}${a}>${i??r}</${this.tagName}>`});this.tagName=t,this.namespace=r}}class ie extends je{constructor(t,r){super(r);o(this,"isPortal",()=>!0);o(this,"toHTML",()=>"");o(this,"contentToHTML",(t=!1)=>this.children.map(r=>r.toHTML(t)).join(""));this.selector=t}}class Be{constructor(e){o(this,"id",Ve());o(this,"isElement",()=>!1);o(this,"isText",()=>!0);o(this,"getText",()=>this.text);o(this,"toHTML",()=>this.text);this.text=e}}class w{constructor(e,t,r,n){o(this,"appendOrInsert",e=>{if(this.reference!=null){const t=this.element.children.indexOf(this.reference);this.element.children.splice(t,0,e)}else this.element.children.push(e)});o(this,"makeChildElement",(e,t)=>{const r=new qe(e,t,this.element);return this.appendOrInsert(r),new w(r,void 0,this.container,this.providers)});o(this,"makeChildText",e=>{const t=new Be(e);return this.appendOrInsert(t),new w(this.element,t,this.container,this.providers)});o(this,"setText",e=>{this.reference&&this.reference.isText()&&(this.reference.text=e)});o(this,"getText",()=>{var e;return((e=this.reference)==null?void 0:e.getText())??this.element.getText()});o(this,"makeRef",()=>this.makeChildText(""));o(this,"makePortal",e=>{const t=new ie(e,this.element);return this.appendOrInsert(t),new w(t,void 0,this.container,this.providers)});o(this,"withProviders",e=>new w(this.element,this.reference,this.container,{...this.providers,...e}));o(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new re(e);return this.providers[e]});o(this,"clear",e=>{e&&(this.reference!==void 0?this.element.removeChild(this.reference):this.element.remove())});o(this,"on",(e,t)=>this.element.on(e,t));o(this,"addClasses",e=>this.element.addClasses(e));o(this,"removeClasses",e=>this.element.removeClasses(e));o(this,"getClasses",()=>this.element.getClasses());o(this,"isBrowserDOM",()=>!1);o(this,"isHeadlessDOM",()=>!0);o(this,"setStyle",(e,t)=>this.element.setStyle(e,t));o(this,"getStyle",e=>this.element.getStyle(e));o(this,"makeAccessors",e=>this.element.makeAccessors(e));this.element=e,this.reference=t,this.container=r,this.providers=n}}const Ht=new Set(["checked","disabled","multiple","readonly","required","selected"]),Nt=new Set(["img","br","hr","input","link","meta"]),oe=s=>e=>{const t=e.makeChildText(s);return r=>t.clear(r)},le=s=>e=>{const t=e.makeChildText(s.value),r=s.on(n=>t.setText(n));return n=>{r(),t.clear(n)}},It=s=>f.is(s)?le(s):oe(s),T=(...s)=>e=>{const t=s.map(r=>d(r)(e));return r=>{t.forEach(n=>n(r))}},b=()=>()=>{},$t=s=>e=>(e.addClasses(s),t=>{t&&e.removeClasses(s)}),Rt=s=>e=>{let t=[];const r=s.on(n=>{e.removeClasses(t),t=(n??"").split(" ").filter(i=>i.length>0),e.addClasses(t)});return n=>{r(),n&&e.removeClasses(t),t.length=0}},R=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),i=r();return n(e),l=>{l&&n(i)}},V=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),i=r(),l=e.on(n);return a=>{l(),a&&n(i)}},x=new Proxy({},{get:(s,e)=>e==="class"?t=>f.is(t)?Rt(t):$t((t??"").split(" ").filter(r=>r.length>0)):t=>f.is(t)?V(e,t):R(e,t)}),Vt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(`data-${e}`,t):R(`data-${e}`,t)}),jt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(`aria-${e}`,t):R(`aria-${e}`,t)}),qt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(e,t):R(e,t)}),Bt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(e,t):R(e,t)}),d=s=>{if(s==null)return b;if(Array.isArray(s))return T(...s.map(d));if(typeof s=="string")return oe(s);if(f.is(s))return le(s);if(typeof s=="function")return s;throw new Error(`Unknown type: '${typeof s}' for child: ${s}`)},ae=(s,...e)=>t=>{const r=t.makeChildElement(s,void 0),n=e.map(i=>d(i)(r));return i=>{n.forEach(l=>l(!1)),r.clear(i)}},ce=(s,e,...t)=>r=>{const n=r.makeChildElement(s,e),i=t.map(l=>d(l)(n));return l=>{i.forEach(a=>a(!1)),n.clear(l)}},Ft=new Proxy({},{get:(s,e)=>(...t)=>ae(e,t.flatMap(d))}),Ut=new Proxy({},{get:(s,e)=>(...t)=>ae("input",x.type(e),...t)}),Wt="http://www.w3.org/2000/svg",Gt=new Proxy({},{get:(s,e)=>(...t)=>ce(e,Wt,t.flatMap(d))}),Jt="http://www.w3.org/1998/Math/MathML",Xt=new Proxy({},{get:(s,e)=>(...t)=>ce(e,Jt,t.flatMap(d))}),ue=(s,e)=>{if(typeof e=="function")return ue(s,{then:e});const t=e.pending!=null?d(e.pending()):b,r=e.then,n=e.error!=null?i=>d(e.error(i)):()=>b;return i=>{let l=!0;const a=s(),c=i.makeRef();let u=d(t)(c);return a.then(h=>{l&&(u(!0),u=d(r(h))(c))},h=>{l&&(u(!0),u=d(n(h))(c))}),h=>{l=!1,u(h),c.clear(h)}}},Yt=(s,e)=>ue(()=>s,e),Fe=(s,e,t)=>r=>r.on(s,e,t),Ue=s=>Fe("click",e=>{e.preventDefault();const t=e.target;setTimeout(()=>{const r=t.ownerDocument!=null?t==null?void 0:t.checked:void 0;r!=null&&s(!r)},0)}),j=new Proxy({},{get:(s,e)=>t=>Fe(e,t)}),We=s=>e=>{const t=e.target;s(t.value)},Ge=s=>e=>{const t=e.target;s(t.valueAsNumber)},Je=s=>e=>{const t=e.target;if(t.value==="")return;const r=t.value.split("-"),n=new Date(Number(r[0]),Number(r[1])-1,Number(r[2].substring(0,2)));s(n)},Xe=s=>e=>{const t=e.target;if(t.value==="")return;const r=t.value.split("T"),n=r[0].split("-"),i=new Date(Number(n[0]),Number(n[1])-1,Number(n[2])),l=r[1].split(":");i.setHours(Number(l[0])),i.setMinutes(Number(l[1])),i.setSeconds(Number(l[2])),s(i)},zt=s=>e=>{const t=e.target;s(t.checked)},Qt=s=>e=>{e.preventDefault(),s()},Zt=s=>e=>{e.stopPropagation(),s()},Kt=s=>e=>{e.stopImmediatePropagation(),s()},es=(s,e="input")=>T(x.valueAsDate(s),j[e](Je(s.set))),ts=(s,e="input")=>T(x.valueAsDate(s),j[e](Xe(s.set))),ss=(s,e="input")=>T(x.valueAsNumber(s),j[e](Ge(s.set))),rs=(s,e="input")=>T(x.value(s),j[e](We(s.set))),ns=s=>T(x.checked(s),Ue(s.set)),q=(s,e)=>{if(f.is(s))return r=>{const n=r.makeRef();let i,l;const a=s.map(h=>Object.keys(h)[0]);let c;const u=a.on(h=>{if(h!==c){l==null||l.dispose(),i==null||i(!0),l=s.map(E=>E[h]);const y=e[h](l);i=d(y)(n),c=h}});return h=>{l==null||l.dispose(),u(),n.clear(h),i==null||i(h)}};const t=Object.keys(s)[0];return d(e[t]($(s[t])))},he=(s,e,t)=>q(g.map(s,r=>({[r[e]]:r})),t),is=(s,e)=>he(s,"kind",e),os=(s,e)=>{const t=g.map(s,([r,n])=>({[r]:n}));return q(t,e)},ls=(s,e)=>he(s,"type",e),Ye=(s,e)=>q(g.map(s,t=>({[t]:!0})),e),as=(s,e={})=>t=>{const r=(e==null?void 0:e.firstSeparator)??s,n=(e==null?void 0:e.lastSeparator)??s;return Ye(t.map(i=>i.isFirst?"first":i.isLast?"last":"other"),{first:r,last:n,other:s})},ze=(s,e)=>t=>{const r=Object.values(s).reduce((n,i)=>{const l=t.getProvider(i);return Reflect.set(n,i,l),n},{});return d(e(r))(t)},cs=(s,e)=>t=>{const r=[],n=Object.entries(s).reduce((i,[l,a])=>(r.push(a(c=>(Reflect.set(i,l,c),null))(t)),i),{});return r.push(e(n)(t)),i=>{r.forEach(l=>l(i))}},Qe=(s,e)=>ze([s],t=>d(e(t[s]))),us=(s,e)=>ze(s,t=>d(e(t))),hs=s=>e=>s(e)??(()=>{}),ds=s=>e=>(e.appendOrInsert(s),t=>{t&&N(s)}),Ze=(s,e,t)=>{if(f.is(s)){const r=s;return n=>{const i=n.makeRef();let l=()=>{},a=!1,c=null;const u=r.on(h=>{h==null?(l(!0),l=d((t==null?void 0:t())??b)(i),a=!1,c==null||c.dispose(),c=null):(c==null?c=P(h):c.value=h,a||(l(!0),l=d(e(c))(i),a=!0))});return h=>{c==null||c.dispose(),u(),l==null||l(h),i.clear(h)}}}else{const r=s;if(r==null){const n=t==null?void 0:t();return n!=null?d(n):b}return d(e($(r)))}},fs=(...s)=>(e,t)=>r=>{const n=r.makeRef();if(s.some(p=>!f.is(p)&&p==null))return(t!=null?d(t==null?void 0:t()):b)(n);const l=s.map(()=>null),a=s.map(p=>f.is(p)?p.value!=null:p!=null);let c=null;const u=P(a.every(p=>p)),h=(p,m)=>{if(p.value!=null){if(l[m]==null){const _=P(p.value);l[m]=_}else l[m].value=p.value;a[m]=!0}else a[m]=!1};let y=s.length-1;const E=s.map((p,m)=>{if(!f.is(p)){const _=P(p);return l[m]=_,()=>{}}return p.on(()=>{h(p,m),y===0?u.value=a.every(_=>_):y--})});return u.on(p=>{c==null||c(!0),c=null,p?c=d(e(...l))(n):c=d((t==null?void 0:t())??b)(n)}),p=>{l.forEach(m=>m==null?void 0:m.dispose()),u.dispose(),E.forEach(m=>m()),c==null||c(p),n.clear(p)}},Q=(...s)=>e=>t=>s.forEach(r=>r(t,e)),de=(s,e,t)=>Ze(g.map(s,r=>r?!0:null),e,t??void 0),ps=(s,e,t)=>de(g.map(s,r=>!r),e,t),fe=(s,e,t)=>t!=null?fe(s,r=>{const n=new F(r.index,r.total.map(i=>i-1));return T(Q(n.dispose),d(e(r)),de(r.isLast,()=>b,()=>t(n)))}):f.is(s)?r=>{const n=r.makeRef(),i=[],l=s.on(a=>{const c=i.splice(a);for(const u of c)u(!0);for(let u=i.length;u<a;u++){const h=new F(u,s);i.push(d(e(h))(n))}});return a=>{l();for(const c of i)c(a);i.length=0,n.clear(a)}}:T(...Array.from({length:s},(r,n)=>n).map(r=>d(e(new F(r,$(s)))))),ms=(s,e,t)=>{const r=g.map(s,i=>i.length),n=g.toSignal(s);return fe(r,i=>{const l=n.map(a=>a[i.index]);return T(Q(l.dispose),d(e(l,i)))},t)},Ke=s=>e=>e.isBrowserDOM()?s(e)??(()=>{}):()=>{},gs=s=>e=>e.isHeadlessDOM()?s(e)??(()=>{}):()=>{},ys=s=>Ke(e=>s(e.element)??(()=>{})),Ts=(s,e)=>{if(f.is(s)){const t=s;return r=>{r=r.makeRef();const n=t.map(a=>d(e(a)));let i=()=>{};const l=n.on(a=>{i(!0),i=a(r)});return a=>{l(),i(a)}}}return d(e(s))},Ss=(s,e,t=()=>b)=>q(g.map(s,r=>r.length>0?{notEmpty:r}:{whenEmpty:null}),{notEmpty:r=>e(r),whenEmpty:()=>t()}),bs=(s,e)=>t=>{const r=t.makePortal(s);return z(d(e),r)},et=s=>Symbol(s),tt=(s,e)=>t=>d(e)(t.withProviders(s)),Es=(...s)=>s.length>0?s.reduceRight((e,t)=>r=>e(t(r))):d,st=(s,e,t)=>tt({[s]:e},d(t)),As=(s,e)=>tt(s,d(e)),pe=et("Probe"),D=new Map,rt=({identifier:s,callback:e=()=>{},child:t,timeout:r=10})=>{if(D.has(s))throw new Error(`Probe already exists: ${s.description}`);const n=setTimeout(()=>e("timeout"),r);D.set(s,{counter:0,timeoutId:n});const i=l=>{clearTimeout(n);const a=D.get(l);if(a==null)throw new Error(`Probe not found: ${l.description}`);--a.counter===0?(e("resolved"),D.delete(l)):D.set(l,a)};return T(Q(()=>clearTimeout(n)),st(pe,i,t))},nt=(s,e)=>Qe(pe,t=>{const r=D.get(s);return r==null?e(()=>{}):(clearTimeout(r.timeoutId),r.counter++,e(()=>t(s)))}),it=Symbol("globalProbe"),Ps=({callback:s,timeout:e},t)=>rt({identifier:it,callback:s,child:t,timeout:e}),vs=s=>nt(it,s),_s=(s,e)=>t=>{const r=t.getStyle(s);return t.setStyle(s,e),n=>{n&&t.setStyle(s,r)}},Cs=(s,e)=>t=>{const r=t.getStyle(s);return e.on(n=>t.setStyle(s,n)),n=>{n&&t.setStyle(s,r)}},Os=new Proxy({},{get:(s,e)=>t=>f.is(t)?Cs(e,t):_s(e,t)});exports.Async=Yt;exports.BindChecked=ns;exports.BindDate=es;exports.BindDateTime=ts;exports.BindNumber=ss;exports.BindText=rs;exports.BrowserContext=O;exports.CLASS_PLACEHOLDER_ATTR=I;exports.Computed=C;exports.Conjunction=as;exports.DOMNode=ds;exports.El=ae;exports.ElNS=ce;exports.ElementPosition=F;exports.Empty=b;exports.Ensure=Ze;exports.EnsureAll=fs;exports.ForEach=ms;exports.Fragment=T;exports.HeadlessAdapter=Tt;exports.HeadlessContext=w;exports.HeadlessElement=qe;exports.HeadlessPortal=ie;exports.HeadlessText=Be;exports.MapSignal=Ts;exports.MemoryStore=ee;exports.NotEmpty=Ss;exports.OnBrowserCtx=Ke;exports.OnChecked=Ue;exports.OnCtx=hs;exports.OnDispose=Q;exports.OnElement=ys;exports.OnHeadlessCtx=gs;exports.OneOf=q;exports.OneOfField=he;exports.OneOfKind=is;exports.OneOfTuple=os;exports.OneOfType=ls;exports.OneOfValue=Ye;exports.Portal=bs;exports.Prop=H;exports.Provide=Es;exports.ProvideGlobalProbe=Ps;exports.ProvideProbe=rt;exports.ProviderNotFoundError=re;exports.RenderingError=$e;exports.Repeat=fe;exports.Signal=f;exports.Task=ue;exports.TextNode=It;exports.Unless=ps;exports.Use=cs;exports.UseGlobalProbe=vs;exports.UseProbe=nt;exports.UseProvider=Qe;exports.UseProviders=us;exports.Value=g;exports.When=de;exports.WithProvider=st;exports.WithProviders=As;exports._NODE_PLACEHOLDER_ATTR=ne;exports._getSelfOrParentElement=Ie;exports._isElement=se;exports._makeGetter=Ne;exports._makeSetter=He;exports._removeDOMNode=N;exports._signalText=le;exports._staticText=oe;exports.animateSignal=pt;exports.animateSignals=xe;exports.aria=jt;exports.attr=x;exports.dataAttr=Vt;exports.emitChecked=zt;exports.emitPreventDefault=Qt;exports.emitStopImmediatePropagation=Kt;exports.emitStopPropagation=Zt;exports.emitValue=We;exports.emitValueAsDate=Je;exports.emitValueAsDateTime=Xe;exports.emitValueAsNumber=Ge;exports.endInterpolate=Ce;exports.getWindow=K;exports.guessInterpolate=Oe;exports.html=Ft;exports.input=Ut;exports.interpolateDate=_e;exports.interpolateNumber=Pe;exports.interpolateString=ve;exports.localStorageProp=dt;exports.makeComputed=Y;exports.makeComputedOf=ut;exports.makeComputedRecord=mt;exports.makeEffect=we;exports.makeEffectOf=ht;exports.makeProp=P;exports.makeProviderMark=et;exports.makeSignal=$;exports.math=Xt;exports.mathAttr=Bt;exports.on=j;exports.probeMarker=pe;exports.render=gt;exports.renderWithContext=z;exports.renderableOfTNode=d;exports.restoreTempoPlaceholders=Lt;exports.runHeadless=yt;exports.sessionStorageProp=ft;exports.storedProp=te;exports.style=Os;exports.svg=Gt;exports.svgAttr=qt;
1
+ "use strict";var at=Object.defineProperty;var ye=s=>{throw TypeError(s)};var ct=(s,e,t)=>e in s?at(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var o=(s,e,t)=>ct(s,typeof e!="symbol"?e+"":e,t),Te=(s,e,t)=>e.has(s)||ye("Cannot "+t);var Z=(s,e,t)=>(Te(s,e,"read from private field"),t?t.call(s):e.get(s)),Se=(s,e,t)=>e.has(s)?ye("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(s):e.set(s,t),be=(s,e,t,r)=>(Te(s,e,"write to private field"),r?r.call(s,t):e.set(s,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Pe=(s,e,t)=>s+(e-s)*t,Ae=97,ve=(s,e,t)=>{const r=Math.max(s.length,e.length);let n="";for(let i=0;i<r;i++){let l=s.charCodeAt(i);isNaN(l)&&(l=Ae);let a=e.charCodeAt(i);isNaN(a)&&(a=Ae),n+=String.fromCharCode(l+(a-l)*t)}return n},_e=(s,e,t)=>new Date(s.getTime()+(e.getTime()-s.getTime())*t),Ce=(s,e)=>e,we=s=>typeof s=="number"?Pe:typeof s=="string"?ve:s instanceof Date?_e:Ce;var M;class F{constructor(e,t){o(this,"counter");o(this,"isFirst");o(this,"isEven");o(this,"isOdd");Se(this,M);o(this,"dispose",()=>{this.total.dispose()});this.index=e,this.total=t,this.counter=e+1,this.isFirst=e===0,this.isEven=e%2===1,this.isOdd=e%2===0}get isLast(){return Z(this,M)==null&&be(this,M,this.total.map(e=>this.counter===e)),Z(this,M)}}M=new WeakMap;const k=class k{constructor(e,t){o(this,"$__signal__",!0);o(this,"_value");o(this,"_derivatives",[]);o(this,"_onValueListeners",[]);o(this,"_onDisposeListeners",[]);o(this,"get",()=>this._value);o(this,"hasListeners",()=>this._onValueListeners.length>0);o(this,"on",(e,t={})=>{t.skipInitial||e(this.get(),void 0);const r=t.once?(i,l)=>{n(),e(i,l)}:e;this._onValueListeners.push(r);const n=()=>{this._onValueListeners.splice(this._onValueListeners.indexOf(r),1),t.abortSignal!=null&&t.abortSignal.removeEventListener("abort",n)};return t.abortSignal!=null&&t.abortSignal.addEventListener("abort",n),n});o(this,"_setAndNotify",(e,t)=>{const r=this._value,n=this.equals(r,e);n||(this._value=e),(t||!n)&&this._onValueListeners.forEach(i=>i(e,r))});o(this,"_disposed",!1);o(this,"isDisposed",()=>this._disposed);o(this,"onDispose",e=>{this._onDisposeListeners.push(e)});o(this,"dispose",()=>{this._disposed||(this._disposed=!0,this._onDisposeListeners.forEach(e=>e()),this._onDisposeListeners.length=0,this._derivatives.length=0)});o(this,"map",(e,t=(r,n)=>r===n)=>{const r=new C(()=>{try{return e(this.get())}catch(n){throw console.error("Error in Signal.map:",n),n}},t);return this.setDerivative(r),r});o(this,"flatMap",(e,t=(r,n)=>r===n)=>{const r=new C(()=>{try{return e(this.get()).get()}catch(n){throw console.error("Error in Signal.flatMap:",n),n}},t);return this.setDerivative(r),r});o(this,"tap",e=>this.map(t=>(e(t),t)));o(this,"at",e=>this.map(t=>t[e]));o(this,"_$");o(this,"filter",(e,t)=>{let r=t??this.get();const n=new C(()=>{try{const i=this.get();return r=e(i)?i:r}catch(i){throw console.error("Error in Signal.filter:",i),i}},this.equals);return this.setDerivative(n),n});o(this,"filterMap",(e,t,r=(n,i)=>n===i)=>{let n=t;const i=new C(()=>{try{const l=this.get(),a=e(l);return n=a??n}catch(l){throw console.error("Error in Signal.filterMap:",l),l}},r);return this.setDerivative(i),i});o(this,"mapAsync",(e,t,r,n=(i,l)=>i===l)=>{const i=P(t,n);let l=0,a=new AbortController;return i.onDispose(this.on(async c=>{const u=++l;a.abort(),a=new AbortController;try{const h=await e(c,{abortSignal:a.signal});u===l&&i.set(h)}catch(h){if(u===l)if(r!=null)i.set(r(h));else throw h}})),i});o(this,"mapMaybe",(e,t)=>this.map(r=>e(r)??t));o(this,"feedProp",(e,t=!1)=>{const r=this.on(e.set);return e.onDispose(r),t?this.onDispose(e.dispose):this.onDispose(r),e});o(this,"deriveProp",({autoDisposeProp:e=!0,equals:t}={})=>this.feedProp(P(this.get(),t),e));o(this,"derive",()=>this.map(e=>e));o(this,"count",()=>{let e=0;return this.map(()=>++e)});o(this,"setDerivative",e=>{this._derivatives.push(e),e.onDispose(()=>{this._derivatives.splice(this._derivatives.indexOf(e),1)}),e.onDispose(this.on(e.setDirty)),this.onDispose(e.dispose)});this.equals=t,this._value=e}get value(){return this._value}get $(){return this._$!==void 0?this._$:this._$=new Proxy(this,{get:(e,t)=>this.at(t)})}};o(k,"ofPromise",(e,t,r,n=(i,l)=>i===l)=>{const i=new k(t,n);return e.then(l=>i._setAndNotify(l,!1)).catch(l=>{r!=null?i._setAndNotify(r(l),!1):console.error("Unhandled promise rejection in Signal.ofPromise:",l)}),i}),o(k,"is",e=>e!=null&&e.$__signal__===!0);let f=k;const ut=typeof queueMicrotask=="function"?queueMicrotask:s=>Promise.resolve().then(s);class C extends f{constructor(t,r){super(void 0,r);o(this,"$__computed__",!0);o(this,"_isDirty",!1);o(this,"setDirty",()=>{this._isDirty||this._disposed||(this._isDirty=!0,this._derivatives.forEach(t=>t.setDirty()),this._scheduleNotify())});o(this,"_scheduleCount",0);o(this,"_scheduleNotify",()=>{const t=++this._scheduleCount;ut(()=>{this._scheduleCount!==t||this._disposed!==!1||this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!1))})});o(this,"get",()=>(this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!0)),this._value));this._fn=t,this.setDirty()}static is(t){return t!=null&&t.$__computed__===!0}get value(){return this.get()}}const X=class X extends f{constructor(){super(...arguments);o(this,"$__prop__",!0);o(this,"set",t=>{this._setAndNotify(t,!1)});o(this,"update",t=>{this._setAndNotify(t(this.get()),!1)});o(this,"reducer",(t,...r)=>{const n=this;return function i(l){const a=n.value;n.update(c=>t(c,l)),!n.equals(a,n.value)&&r.forEach(c=>c({previousState:a,state:n.value,action:l,dispatch:i}))}});o(this,"iso",(t,r,n=(i,l)=>i===l)=>{const i=new X(t(this.get()),n);return i.onDispose(this.on(l=>i.set(t(l)))),i.on(l=>this._setAndNotify(r(l),!1)),i});o(this,"atProp",t=>this.iso(r=>r[t],r=>({...this.value,[t]:r})))}get value(){return this.get()}set value(t){this._setAndNotify(t,!1)}};o(X,"is",t=>t!=null&&t.$__prop__===!0);let H=X;const Y=(s,e,t=(r,n)=>r===n)=>{const r=new C(s,t);return e.forEach(n=>n.setDerivative(r)),r},Oe=(s,e,t={})=>{let r=t.once?()=>{i(),s()}:s;if(t.skipInitial){let l=!1;const a=r;r=()=>{l?a():l=!0}}const n=Y(r,e),i=()=>{n.dispose(),t.abortSignal!=null&&t.abortSignal.removeEventListener("abort",i)};return t.abortSignal!=null&&t.abortSignal.addEventListener("abort",i),i},P=(s,e=(t,r)=>t===r)=>new H(s,e),N=(s,e=(t,r)=>t===r)=>new f(s,e),K=()=>typeof window<"u"?window:void 0,g={map:(s,e)=>f.is(s)?s.map(e):e(s),toSignal:(s,e)=>f.is(s)?s:N(s,e),maybeToSignal:(s,e)=>{if(s!=null)return g.toSignal(s,e)},get:s=>f.is(s)?s.get():s,on:(s,e)=>f.is(s)?s.on(e):(e(s),()=>{}),dispose:s=>{f.is(s)&&s.dispose()},deriveProp:(s,{autoDisposeProp:e=!0,equals:t}={})=>f.is(s)?s.deriveProp({autoDisposeProp:e,equals:t}):P(s,t)},ht=(...s)=>(e,t)=>{const r=s.filter(n=>f.is(n));return Y(()=>e(...s.map(n=>g.get(n))),r,t)},dt=(...s)=>(e,t={})=>{const r=s.filter(n=>f.is(n));return Oe(()=>e(...s.map(g.get)),r,t)};class ee{constructor(){o(this,"_store",new Map);o(this,"getItem",e=>this._store.get(e)??null);o(this,"setItem",(e,t)=>{this._store.set(e,t)})}}const te=({key:s,defaultValue:e,store:t,serialize:r=JSON.stringify,deserialize:n=JSON.parse,equals:i=(a,c)=>a===c,onLoad:l=a=>a})=>{const a=t.getItem(s),c=new H(a!=null?l(n(a)):typeof e=="function"?e():e,i);return c.on(u=>{t.setItem(s,r(u))}),c},ft=s=>{var e;return te({...s,store:((e=K())==null?void 0:e.localStorage)??new ee})},pt=s=>{var e;return te({...s,store:((e=K())==null?void 0:e.sessionStorage)??new ee})};function Ee(s){return typeof requestAnimationFrame=="function"?requestAnimationFrame(s):setTimeout(s,0)}const xe=(s,e,t,r)=>{const n=(r==null?void 0:r.duration)??300,i=(r==null?void 0:r.easing)??(E=>E),l=(r==null?void 0:r.equals)??((E,B)=>E===B);let a=r==null?void 0:r.interpolate,c=s,u=e(),h=performance.now(),y=null,A=!0;const p=new C(e,l),m=P(s,l);m.onDispose(()=>{y!==null&&cancelAnimationFrame(y)}),m.onDispose(p.dispose),t.forEach(E=>{E.setDerivative(p),E.onDispose(m.dispose)});const _=E=>{u=E,h=performance.now(),c=m.value,A&&(A=!1,y=Ee(me))},me=()=>{const B=(performance.now()-h)/g.get(n),lt=i(B);a==null&&(a=we(c));let ge=a(c,u,lt);B>=1?(A=!0,ge=u):y=Ee(me),m.set(ge)};return p.on(_),m},mt=(s,e)=>{const{initialValue:t,...r}=e??{};return xe(t??s.get(),s.get,[s],r)},gt=(s,e)=>{const{signals:t,literals:r}=Object.entries(s).reduce(({signals:i,literals:l},[a,c])=>(f.is(c)?i.push([a,c]):l[a]=c,{signals:i,literals:l}),{signals:[],literals:{}}),n=t.map(([,i])=>i);return Y(()=>(t.forEach(([i,l])=>r[i]=l.value),e(r)),n)},Le=new Set(["checked","disabled","hidden","selected"]),De=new Set(["contenteditable","spellcheck"]),Me=new Set(["rowSpan","colSpan","tabIndex","valueAsNumber"]),ke=new Set(["valueAsDate"]),He=new Set(["value","textContent","innerText","innerHTML","outerHTML","className","classList"]),Ie=(s,e)=>De.has(s)?t=>{t==null||t!==!0?e.removeAttribute(s):e.setAttribute(s,"")}:Le.has(s)?t=>{t==null?e[s]=null:e[s]=!!t}:Me.has(s)?t=>{t==null?e[s]=null:e[s]=Number(t)}:ke.has(s)?t=>{t==null?e[s]=null:e[s]=t}:He.has(s)?t=>{t==null?e[s]=null:e[s]=String(t)}:t=>{t==null?e.removeAttribute(s):e.setAttribute(s,t)},$e=(s,e)=>De.has(s)?()=>e.hasAttribute(s):Le.has(s)?()=>!!e[s]:Me.has(s)?()=>Number(e[s]):ke.has(s)?()=>e[s]:He.has(s)?()=>String(e[s]):()=>e.getAttribute(s),I=s=>{const e=s;e&&e.onblur&&(e.onblur=null),!(!s||s.ownerDocument===void 0)&&s.parentElement&&s.parentElement.removeChild(s)},Ne=s=>se(s)?s:s.parentElement,se=s=>s.nodeType===1;class re extends Error{constructor(e){super(`Provider not found: ${e.description}`)}}class w{constructor(e,t,r,n){o(this,"createElement",(e,t)=>t!==void 0?this.document.createElementNS(t,e):this.document.createElement(e));o(this,"makeChildElement",(e,t)=>{const r=this.createElement(e,t);return this.appendOrInsert(r),this.withElement(r)});o(this,"createText",e=>this.document.createTextNode(e));o(this,"makeChildText",e=>{const t=this.createText(e);return this.appendOrInsert(t),this.withReference(t)});o(this,"setText",e=>{this.reference.nodeValue=e});o(this,"getText",()=>{var e;return((e=this.reference)==null?void 0:e.nodeValue)??this.element.textContent??""});o(this,"makeRef",()=>{const e=this.createText("");return this.appendOrInsert(e),this.withReference(e)});o(this,"appendOrInsert",e=>{this.reference===void 0?this.element.appendChild(e):this.element.insertBefore(e,this.reference)});o(this,"withElement",e=>new w(this.document,e,void 0,this.providers));o(this,"makePortal",e=>{const t=this.document.querySelector(e);if(t==null)throw new Error(`Cannot find element by selector for portal: ${e}`);return this.withElement(t)});o(this,"withReference",e=>new w(this.document,this.element,e,this.providers));o(this,"withProviders",e=>new w(this.document,this.element,this.reference,{...this.providers,...e}));o(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new re(e);return this.providers[e]});o(this,"clear",e=>{e&&(this.reference!==void 0?I(this.reference):I(this.element))});o(this,"addClasses",e=>{this.element.classList.add(...e)});o(this,"removeClasses",e=>{this.element.classList.remove(...e)});o(this,"getClasses",()=>Array.from(this.element.classList));o(this,"on",(e,t,r)=>(this.element.addEventListener(e,t,r),n=>{n&&this.element.removeEventListener(e,t,r)}));o(this,"isBrowserDOM",()=>!0);o(this,"isHeadlessDOM",()=>!1);o(this,"setStyle",(e,t)=>{this.element.style[e]=t});o(this,"getStyle",e=>this.element.style[e]);o(this,"makeAccessors",e=>({get:$e(e,this.element),set:Ie(e,this.element)}));this.document=e,this.element=t,this.reference=r,this.providers=n}static of(e,t){return new w(e.ownerDocument,e,t,{})}}const z=(s,e)=>{const t=s(e);return()=>t(!0)},yt=(s,e,{doc:t,clear:r}={})=>{const n=typeof e=="string"?(t??document).querySelector(e):e;if(n===null)throw new Re(`Cannot find element by selector for render: ${e}`);r!==!1&&(t??n.ownerDocument)!=null&&n.nodeType===1&&(n.innerHTML="");const i=Ne(n),l=se(n)?void 0:n,a=w.of(i,l);return z(s,a)},Tt=(s,{startUrl:e="https://example.com",selector:t=":root"}={})=>{const r=g.toSignal(e).deriveProp(),n=new ie(t,void 0),i=new O(n,void 0,{currentURL:r},{});return{clear:z(s(),i),root:n,currentURL:r}};class Re extends Error{constructor(e){super(e)}}const ne="data-tts-node",$="data-tts-class",U="data-tts-style",W="data-tts-html",G="data-tts-text",J="data-tts-attrs";class St{constructor({select:e,getAttribute:t,setAttribute:r,getClass:n,setClass:i,getStyles:l,setStyles:a,appendHTML:c,getInnerHTML:u,setInnerHTML:h,getInnerText:y,setInnerText:A}){o(this,"select");o(this,"getAttribute");o(this,"setAttribute");o(this,"getClass");o(this,"setClass");o(this,"getStyles");o(this,"setStyles");o(this,"appendHTML");o(this,"getInnerHTML");o(this,"setInnerHTML");o(this,"getInnerText");o(this,"setInnerText");o(this,"setFromRoot",(e,t)=>{e.getPortals().forEach(n=>{for(const i of this.select(n.selector)){if(i==null)throw new Error(`Cannot find element by selector for render: ${n.selector}`);if(n.hasChildren()&&this.appendHTML(i,n.contentToHTML(t)),n.hasInnerHTML()){if(t){const l=this.getInnerHTML(i);l!=null&&this.setAttribute(i,W,l)}this.setInnerHTML(i,n.getInnerHTML())}if(n.hasInnerText()){if(t){const l=this.getInnerText(i);l!=null&&this.setAttribute(i,G,l)}this.setInnerText(i,n.getInnerText())}if(n.hasClasses()){if(t){const l=this.getClass(i);l!=null&&this.setAttribute(i,$,l)}this.setClass(i,n.getClasses().join(" "))}if(n.hasStyles()){if(t){const l=this.getStyles(i);Object.keys(l).length>0&&this.setAttribute(i,U,JSON.stringify(l))}this.setStyles(i,n.getStyles())}if(n.hasAttributes()){const l=n.getAttributes();if(t){const a=[];l.forEach(([c])=>{const u=this.getAttribute(i,c);u!=null&&a.push([c,u])}),a.length>0&&this.setAttribute(i,J,JSON.stringify(Object.fromEntries(a)))}l.forEach(([a,c])=>{this.setAttribute(i,a,c)})}}})});this.select=e,this.getAttribute=t,this.setAttribute=r,this.getClass=n,this.setClass=i,this.getStyles=l,this.setStyles=a,this.appendHTML=c,this.getInnerHTML=u,this.setInnerHTML=h,this.getInnerText=y,this.setInnerText=A}}const bt=()=>{document.querySelectorAll(`[${ne}]`).forEach(I)},At=s=>{const e=s.getAttribute($);s.removeAttribute($),e!=null&&s.setAttribute("class",e)},Et=()=>{document.querySelectorAll(`[${$}]`).forEach(e=>At(e))},Pt=s=>{const e=s.getAttribute(W);s.removeAttribute(W),e!=null&&(s.innerHTML=e)},vt=()=>{document.querySelectorAll(`[${W}]`).forEach(e=>Pt(e))},_t=s=>{const e=s.getAttribute(G);s.removeAttribute(G),e!=null&&(s.innerText=e)},Ct=()=>{document.querySelectorAll(`[${G}]`).forEach(e=>_t(e))},Ve=s=>JSON.parse(s.replace(/&quot;/g,'"')),wt=s=>{const e=s.getAttribute(U);if(s.removeAttribute(U),e!=null){const t=Ve(e);Object.entries(t).forEach(([r,n])=>{s.style.setProperty(r,n)})}},Ot=()=>{document.querySelectorAll(`[${U}]`).forEach(e=>wt(e))},xt=s=>{const e=s.getAttribute(J);if(s.removeAttribute(J),e!=null){const t=Ve(e);Object.entries(t).forEach(([r,n])=>{n==null?s.removeAttribute(r):s.setAttribute(r,n)})}},Lt=()=>{document.querySelectorAll(`[${J}]`).forEach(e=>xt(e))},Dt=()=>{bt(),Et(),Ct(),vt(),Ot(),Lt()},S=Symbol("class"),v=Symbol("style"),L=Symbol("handler"),je=()=>Math.random().toString(36).substring(2,15),Mt=s=>s.replace(/<[^>]*>?/g,"");class qe{constructor(e){o(this,"id",je());o(this,"properties",{});o(this,"children",[]);o(this,"isElement",()=>!0);o(this,"isText",()=>!1);o(this,"getText",()=>this.properties.innerText!=null?this.properties.innerText:this.properties.innerHTML!=null?Mt(this.properties.innerHTML):this.children.map(e=>e.getText()).join(""));o(this,"removeChild",e=>{const t=this.children.indexOf(e);t!==-1&&this.children.splice(t,1)});o(this,"remove",()=>{if(this.parent!=null)this.parent.removeChild(this);else throw new Error("Parent is undefined")});o(this,"getPortals",()=>{const e=this.elements().flatMap(t=>t.isPortal()?[t,...t.getPortals()]:t.getPortals());return this.isPortal()&&e.unshift(this),e});o(this,"elements",()=>this.children.filter(e=>e.isElement()));o(this,"hasInnerHTML",()=>this.properties.innerHTML!=null);o(this,"getInnerHTML",()=>this.properties.innerHTML??"");o(this,"getInnerText",()=>this.properties.innerText??"");o(this,"hasInnerText",()=>this.properties.innerText!=null);o(this,"hasChildren",()=>this.children.length>0);o(this,"hasClasses",()=>this.properties[S]!=null);o(this,"hasStyles",()=>this.properties[v]!=null);o(this,"hasAttributes",()=>Object.keys(this.properties).length>0);o(this,"hasHandlers",()=>this.properties[L]!=null);o(this,"hasRenderableProperties",()=>this.hasClasses()||this.hasAttributes()||this.hasStyles());o(this,"getById",e=>{if(this.properties.id===e)return this;for(const t of this.elements()){const r=t.getById(e);if(r!=null)return r}});o(this,"trigger",(e,t)=>{((this.properties[L]??{})[e]??[]).forEach(n=>n(t))});o(this,"click",()=>{this.trigger("click",{})});o(this,"on",(e,t,r)=>{var a;const n=(a=this.properties)[L]??(a[L]={}),i=r!=null&&r.once?c=>{l(),t(c)}:c=>t(c);n[e]=[...n[e]??[],i];const l=()=>{const c=n[e]??[],u=c.indexOf(i);u!==-1&&(c.splice(u,1),c.length===0?(delete n[e],Object.keys(n).length===0&&delete this.properties[L]):n[e]=c,(r==null?void 0:r.signal)!=null&&r.signal.removeEventListener("abort",l))};return(r==null?void 0:r.signal)!=null&&r.signal.addEventListener("abort",l),l});o(this,"addClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[S]??(r[S]=[]);e.forEach(n=>{t.includes(n)||t.push(n)})});o(this,"removeClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[S]??(r[S]=[]);e.forEach(n=>{const i=t.indexOf(n);i!==-1&&t.splice(i,1)}),t.length===0&&delete this.properties[S]});o(this,"getClasses",()=>this.properties[S]??[]);o(this,"getAttributes",()=>Object.entries(this.properties).filter(([e])=>!["innerText","innerHTML"].includes(e)));o(this,"getVisibleAttributes",()=>Reflect.ownKeys(this.properties).flatMap(e=>e===S?[["class",this.getClasses()]]:e===v?[["style",this.getStyles()]]:typeof e=="string"?[[e,String(this.properties[e])]]:[]));o(this,"setStyle",(e,t)=>{var n;const r=(n=this.properties)[v]??(n[v]={});r[e]=t,t===""&&(delete r[e],Object.keys(r).length===0&&delete this.properties[v])});o(this,"getStyle",e=>{var t;return((t=this.properties[v])==null?void 0:t[e])??""});o(this,"getStyles",()=>this.properties[v]??{});o(this,"makeAccessors",e=>{const t=this.properties;return{get:()=>t[e],set:r=>t[e]=r}});this.parent=e}}const kt=s=>s.replace(/"/g,"&quot;"),Ht=s=>s.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");class Be extends qe{constructor(t,r,n){super(n);o(this,"isPortal",()=>!1);o(this,"toHTML",(t=!1)=>{const r=this.children.map(c=>c.toHTML()).join(""),n=this.namespace?` xmlns="${this.namespace}"`:"";let i=null;const l=this.getVisibleAttributes().map(([c,u])=>c==="class"?` class="${u.join(" ")}"`:c==="style"?typeof u=="string"?` style="${u}"`:` style="${Object.entries(u).map(([h,y])=>`${h}: ${y};`).join(" ")}"`:It.has(c)?` ${c}`:c==="innerHTML"?(i=u,""):c==="innerText"?(i=Ht(u),""):` ${c}="${kt(u)}"`).join(""),a=t?` ${ne}`:"";return $t.has(this.tagName)&&r===""?`<${this.tagName}${n}${l}${a} />`:`<${this.tagName}${n}${l}${a}>${i??r}</${this.tagName}>`});this.tagName=t,this.namespace=r}}class ie extends qe{constructor(t,r){super(r);o(this,"isPortal",()=>!0);o(this,"toHTML",()=>"");o(this,"contentToHTML",(t=!1)=>this.children.map(r=>r.toHTML(t)).join(""));this.selector=t}}class Fe{constructor(e){o(this,"id",je());o(this,"isElement",()=>!1);o(this,"isText",()=>!0);o(this,"getText",()=>this.text);o(this,"toHTML",()=>this.text);this.text=e}}class O{constructor(e,t,r,n){o(this,"appendOrInsert",e=>{if(this.reference!=null){const t=this.element.children.indexOf(this.reference);this.element.children.splice(t,0,e)}else this.element.children.push(e)});o(this,"makeChildElement",(e,t)=>{const r=new Be(e,t,this.element);return this.appendOrInsert(r),new O(r,void 0,this.container,this.providers)});o(this,"makeChildText",e=>{const t=new Fe(e);return this.appendOrInsert(t),new O(this.element,t,this.container,this.providers)});o(this,"setText",e=>{this.reference&&this.reference.isText()&&(this.reference.text=e)});o(this,"getText",()=>{var e;return((e=this.reference)==null?void 0:e.getText())??this.element.getText()});o(this,"makeRef",()=>this.makeChildText(""));o(this,"makePortal",e=>{const t=new ie(e,this.element);return this.appendOrInsert(t),new O(t,void 0,this.container,this.providers)});o(this,"withProviders",e=>new O(this.element,this.reference,this.container,{...this.providers,...e}));o(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new re(e);return this.providers[e]});o(this,"clear",e=>{e&&(this.reference!==void 0?this.element.removeChild(this.reference):this.element.remove())});o(this,"on",(e,t)=>this.element.on(e,t));o(this,"addClasses",e=>this.element.addClasses(e));o(this,"removeClasses",e=>this.element.removeClasses(e));o(this,"getClasses",()=>this.element.getClasses());o(this,"isBrowserDOM",()=>!1);o(this,"isHeadlessDOM",()=>!0);o(this,"setStyle",(e,t)=>this.element.setStyle(e,t));o(this,"getStyle",e=>this.element.getStyle(e));o(this,"makeAccessors",e=>this.element.makeAccessors(e));this.element=e,this.reference=t,this.container=r,this.providers=n}}const It=new Set(["checked","disabled","multiple","readonly","required","selected"]),$t=new Set(["img","br","hr","input","link","meta"]),oe=s=>e=>{const t=e.makeChildText(s);return r=>t.clear(r)},le=s=>e=>{const t=e.makeChildText(s.value),r=s.on(n=>t.setText(n));return n=>{r(),t.clear(n)}},Nt=s=>f.is(s)?le(s):oe(s),T=(...s)=>e=>{const t=s.map(r=>d(r)(e));return r=>{t.forEach(n=>n(r))}},b=()=>()=>{},Rt=s=>e=>(e.addClasses(s),t=>{t&&e.removeClasses(s)}),Vt=s=>e=>{let t=[];const r=s.on(n=>{e.removeClasses(t),t=(n??"").split(" ").filter(i=>i.length>0),e.addClasses(t)});return n=>{r(),n&&e.removeClasses(t),t.length=0}},R=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),i=r();return n(e),l=>{l&&n(i)}},V=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),i=r(),l=e.on(n);return a=>{l(),a&&n(i)}},x=new Proxy({},{get:(s,e)=>e==="class"?t=>f.is(t)?Vt(t):Rt((t??"").split(" ").filter(r=>r.length>0)):t=>f.is(t)?V(e,t):R(e,t)}),jt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(`data-${e}`,t):R(`data-${e}`,t)}),qt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(`aria-${e}`,t):R(`aria-${e}`,t)}),Bt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(e,t):R(e,t)}),Ft=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(e,t):R(e,t)}),d=s=>{if(s==null)return b;if(Array.isArray(s))return T(...s.map(d));if(typeof s=="string")return oe(s);if(f.is(s))return le(s);if(typeof s=="function")return s;throw new Error(`Unknown type: '${typeof s}' for child: ${s}`)},ae=(s,...e)=>t=>{const r=t.makeChildElement(s,void 0),n=e.map(i=>d(i)(r));return i=>{n.forEach(l=>l(!1)),r.clear(i)}},ce=(s,e,...t)=>r=>{const n=r.makeChildElement(s,e),i=t.map(l=>d(l)(n));return l=>{i.forEach(a=>a(!1)),n.clear(l)}},Ut=new Proxy({},{get:(s,e)=>(...t)=>ae(e,t.flatMap(d))}),Wt=new Proxy({},{get:(s,e)=>(...t)=>ae("input",x.type(e),...t)}),Gt="http://www.w3.org/2000/svg",Jt=new Proxy({},{get:(s,e)=>(...t)=>ce(e,Gt,t.flatMap(d))}),Xt="http://www.w3.org/1998/Math/MathML",Yt=new Proxy({},{get:(s,e)=>(...t)=>ce(e,Xt,t.flatMap(d))}),ue=(s,e)=>{if(typeof e=="function")return ue(s,{then:e});const t=e.pending!=null?d(e.pending()):b,r=e.then,n=e.error!=null?i=>d(e.error(i)):()=>b;return i=>{let l=!0;const a=s(),c=i.makeRef();let u=d(t)(c);return a.then(h=>{l&&(u(!0),u=d(r(h))(c))},h=>{l&&(u(!0),u=d(n(h))(c))}),h=>{l=!1,u(h),c.clear(h)}}},zt=(s,e)=>ue(()=>s,e),Ue=(s,e,t)=>r=>r.on(s,e,t),We=s=>Ue("click",e=>{e.preventDefault();const t=e.target;setTimeout(()=>{const r=t.ownerDocument!=null?t==null?void 0:t.checked:void 0;r!=null&&s(!r)},0)}),j=new Proxy({},{get:(s,e)=>t=>Ue(e,t)}),Ge=s=>e=>{const t=e.target;s(t.value)},Je=s=>e=>{const t=e.target;s(t.valueAsNumber)},Xe=s=>e=>{const t=e.target;if(t.value==="")return;const r=t.value.split("-"),n=new Date(Number(r[0]),Number(r[1])-1,Number(r[2].substring(0,2)));s(n)},Ye=s=>e=>{const t=e.target;if(t.value==="")return;const r=t.value.split("T"),n=r[0].split("-"),i=new Date(Number(n[0]),Number(n[1])-1,Number(n[2])),l=r[1].split(":");i.setHours(Number(l[0])),i.setMinutes(Number(l[1])),i.setSeconds(Number(l[2])),s(i)},Qt=s=>e=>{const t=e.target;s(t.checked)},Zt=s=>e=>{e.preventDefault(),s()},Kt=s=>e=>{e.stopPropagation(),s()},es=s=>e=>{e.stopImmediatePropagation(),s()},ts=(s,e="input")=>T(x.valueAsDate(s),j[e](Xe(s.set))),ss=(s,e="input")=>T(x.valueAsDate(s),j[e](Ye(s.set))),rs=(s,e="input")=>T(x.valueAsNumber(s),j[e](Je(s.set))),ns=(s,e="input")=>T(x.value(s),j[e](Ge(s.set))),is=s=>T(x.checked(s),We(s.set)),q=(s,e)=>{if(f.is(s))return r=>{const n=r.makeRef();let i,l;const a=s.map(h=>Object.keys(h)[0]);let c;const u=a.on(h=>{if(h!==c){l==null||l.dispose(),i==null||i(!0),l=s.map(A=>A[h]);const y=e[h](l);i=d(y)(n),c=h}});return h=>{l==null||l.dispose(),u(),n.clear(h),i==null||i(h)}};const t=Object.keys(s)[0];return d(e[t](N(s[t])))},he=(s,e,t)=>q(g.map(s,r=>({[r[e]]:r})),t),os=(s,e)=>he(s,"kind",e),ls=(s,e)=>{const t=g.map(s,([r,n])=>({[r]:n}));return q(t,e)},as=(s,e)=>he(s,"type",e),ze=(s,e)=>q(g.map(s,t=>({[t]:!0})),e),cs=(s,e={})=>t=>{const r=(e==null?void 0:e.firstSeparator)??s,n=(e==null?void 0:e.lastSeparator)??s;return ze(t.map(i=>i.isFirst?"first":i.isLast?"last":"other"),{first:r,last:n,other:s})},Qe=(s,e)=>t=>{const r=Object.values(s).reduce((n,i)=>{const l=t.getProvider(i);return Reflect.set(n,i,l),n},{});return d(e(r))(t)},us=(s,e)=>t=>{const r=[],n=Object.entries(s).reduce((i,[l,a])=>(r.push(a(c=>(Reflect.set(i,l,c),null))(t)),i),{});return r.push(e(n)(t)),i=>{r.forEach(l=>l(i))}},Ze=(s,e)=>Qe([s],t=>d(e(t[s]))),hs=(s,e)=>Qe(s,t=>d(e(t))),ds=s=>e=>s(e)??(()=>{}),fs=s=>e=>(e.appendOrInsert(s),t=>{t&&I(s)}),Ke=(s,e,t)=>{if(f.is(s)){const r=s;return n=>{const i=n.makeRef();let l=()=>{},a=!1,c=null;const u=r.on(h=>{h==null?(l(!0),l=d((t==null?void 0:t())??b)(i),a=!1,c==null||c.dispose(),c=null):(c==null?c=P(h):c.value=h,a||(l(!0),l=d(e(c))(i),a=!0))});return h=>{c==null||c.dispose(),u(),l==null||l(h),i.clear(h)}}}else{const r=s;if(r==null){const n=t==null?void 0:t();return n!=null?d(n):b}return d(e(N(r)))}},ps=(...s)=>(e,t)=>r=>{const n=r.makeRef();if(s.some(p=>!f.is(p)&&p==null))return(t!=null?d(t==null?void 0:t()):b)(n);const l=s.map(()=>null),a=s.map(p=>f.is(p)?p.value!=null:p!=null);let c=null;const u=P(a.every(p=>p)),h=(p,m)=>{if(p.value!=null){if(l[m]==null){const _=P(p.value);l[m]=_}else l[m].value=p.value;a[m]=!0}else a[m]=!1};let y=s.length-1;const A=s.map((p,m)=>{if(!f.is(p)){const _=P(p);return l[m]=_,()=>{}}return p.on(()=>{h(p,m),y===0?u.value=a.every(_=>_):y--})});return u.on(p=>{c==null||c(!0),c=null,p?c=d(e(...l))(n):c=d((t==null?void 0:t())??b)(n)}),p=>{l.forEach(m=>m==null?void 0:m.dispose()),u.dispose(),A.forEach(m=>m()),c==null||c(p),n.clear(p)}},Q=(...s)=>e=>t=>s.forEach(r=>r(t,e)),de=(s,e,t)=>Ke(g.map(s,r=>r?!0:null),e,t??void 0),ms=(s,e,t)=>de(g.map(s,r=>!r),e,t),fe=(s,e,t)=>t!=null?fe(s,r=>{const n=new F(r.index,r.total.map(i=>i-1));return T(Q(n.dispose),d(e(r)),de(r.isLast,()=>b,()=>t(n)))}):f.is(s)?r=>{const n=r.makeRef(),i=[],l=s.on(a=>{const c=i.splice(a);for(const u of c)u(!0);for(let u=i.length;u<a;u++){const h=new F(u,s);i.push(d(e(h))(n))}});return a=>{l();for(const c of i)c(a);i.length=0,n.clear(a)}}:T(...Array.from({length:s},(r,n)=>n).map(r=>d(e(new F(r,N(s)))))),gs=(s,e,t)=>{const r=g.map(s,i=>i.length),n=g.toSignal(s);return fe(r,i=>{const l=n.map(a=>a[i.index]);return T(Q(l.dispose),d(e(l,i)))},t)},et=s=>e=>e.isBrowserDOM()?s(e)??(()=>{}):()=>{},ys=s=>e=>e.isHeadlessDOM()?s(e)??(()=>{}):()=>{},Ts=s=>et(e=>s(e.element)??(()=>{})),Ss=(s,e)=>{if(f.is(s)){const t=s;return r=>{r=r.makeRef();const n=t.map(a=>d(e(a)));let i=()=>{};const l=n.on(a=>{i(!0),i=a(r)});return a=>{l(),i(a)}}}return d(e(s))},bs=(s,e,t=()=>b)=>q(g.map(s,r=>r.length>0?{notEmpty:r}:{whenEmpty:null}),{notEmpty:r=>e(r),whenEmpty:()=>t()}),As=(s,e)=>t=>{const r=t.makePortal(s);return z(d(e),r)},tt=s=>Symbol(s),st=(s,e)=>t=>d(e)(t.withProviders(s)),Es=(...s)=>s.length>0?s.reduceRight((e,t)=>r=>e(t(r))):d,rt=(s,e,t)=>st({[s]:e},d(t)),Ps=(s,e)=>st(s,d(e)),pe=tt("Probe"),D=new Map,nt=({identifier:s,callback:e=()=>{},child:t,timeout:r=10})=>{if(D.has(s))throw new Error(`Probe already exists: ${s.description}`);const n=setTimeout(()=>e("timeout"),r);D.set(s,{counter:0,timeoutId:n});const i=l=>{clearTimeout(n);const a=D.get(l);if(a==null)throw new Error(`Probe not found: ${l.description}`);--a.counter===0?(e("resolved"),D.delete(l)):D.set(l,a)};return T(Q(()=>clearTimeout(n)),rt(pe,i,t))},it=(s,e)=>Ze(pe,t=>{const r=D.get(s);return r==null?e(()=>{}):(clearTimeout(r.timeoutId),r.counter++,e(()=>t(s)))}),ot=Symbol("globalProbe"),vs=({callback:s,timeout:e},t)=>nt({identifier:ot,callback:s,child:t,timeout:e}),_s=s=>it(ot,s),Cs=(s,e)=>t=>{const r=t.getStyle(s);return t.setStyle(s,e),n=>{n&&t.setStyle(s,r)}},ws=(s,e)=>t=>{const r=t.getStyle(s);return e.on(n=>t.setStyle(s,n)),n=>{n&&t.setStyle(s,r)}},Os=new Proxy({},{get:(s,e)=>t=>f.is(t)?ws(e,t):Cs(e,t)});exports.Async=zt;exports.BindChecked=is;exports.BindDate=ts;exports.BindDateTime=ss;exports.BindNumber=rs;exports.BindText=ns;exports.BrowserContext=w;exports.CLASS_PLACEHOLDER_ATTR=$;exports.Computed=C;exports.Conjunction=cs;exports.DOMNode=fs;exports.El=ae;exports.ElNS=ce;exports.ElementPosition=F;exports.Empty=b;exports.Ensure=Ke;exports.EnsureAll=ps;exports.ForEach=gs;exports.Fragment=T;exports.HeadlessAdapter=St;exports.HeadlessContext=O;exports.HeadlessElement=Be;exports.HeadlessPortal=ie;exports.HeadlessText=Fe;exports.MapSignal=Ss;exports.MemoryStore=ee;exports.NotEmpty=bs;exports.OnBrowserCtx=et;exports.OnChecked=We;exports.OnCtx=ds;exports.OnDispose=Q;exports.OnElement=Ts;exports.OnHeadlessCtx=ys;exports.OneOf=q;exports.OneOfField=he;exports.OneOfKind=os;exports.OneOfTuple=ls;exports.OneOfType=as;exports.OneOfValue=ze;exports.Portal=As;exports.Prop=H;exports.Provide=Es;exports.ProvideGlobalProbe=vs;exports.ProvideProbe=nt;exports.ProviderNotFoundError=re;exports.RenderingError=Re;exports.Repeat=fe;exports.Signal=f;exports.Task=ue;exports.TextNode=Nt;exports.Unless=ms;exports.Use=us;exports.UseGlobalProbe=_s;exports.UseProbe=it;exports.UseProvider=Ze;exports.UseProviders=hs;exports.Value=g;exports.When=de;exports.WithProvider=rt;exports.WithProviders=Ps;exports._NODE_PLACEHOLDER_ATTR=ne;exports._getSelfOrParentElement=Ne;exports._isElement=se;exports._makeGetter=$e;exports._makeSetter=Ie;exports._removeDOMNode=I;exports._signalText=le;exports._staticText=oe;exports.animateSignal=mt;exports.animateSignals=xe;exports.aria=qt;exports.attr=x;exports.dataAttr=jt;exports.emitChecked=Qt;exports.emitPreventDefault=Zt;exports.emitStopImmediatePropagation=es;exports.emitStopPropagation=Kt;exports.emitValue=Ge;exports.emitValueAsDate=Xe;exports.emitValueAsDateTime=Ye;exports.emitValueAsNumber=Je;exports.endInterpolate=Ce;exports.getWindow=K;exports.guessInterpolate=we;exports.html=Ut;exports.input=Wt;exports.interpolateDate=_e;exports.interpolateNumber=Pe;exports.interpolateString=ve;exports.localStorageProp=ft;exports.makeComputed=Y;exports.makeComputedOf=ht;exports.makeComputedRecord=gt;exports.makeEffect=Oe;exports.makeEffectOf=dt;exports.makeProp=P;exports.makeProviderMark=tt;exports.makeSignal=N;exports.math=Yt;exports.mathAttr=Ft;exports.on=j;exports.probeMarker=pe;exports.render=yt;exports.renderWithContext=z;exports.renderableOfTNode=d;exports.restoreTempoPlaceholders=Dt;exports.runHeadless=Tt;exports.sessionStorageProp=pt;exports.storedProp=te;exports.style=Os;exports.svg=Jt;exports.svgAttr=Bt;
package/index.js CHANGED
@@ -2,10 +2,10 @@ var $e = Object.defineProperty;
2
2
  var te = (s) => {
3
3
  throw TypeError(s);
4
4
  };
5
- var ke = (s, e, t) => e in s ? $e(s, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : s[e] = t;
6
- var o = (s, e, t) => ke(s, typeof e != "symbol" ? e + "" : e, t), se = (s, e, t) => e.has(s) || te("Cannot " + t);
5
+ var Ie = (s, e, t) => e in s ? $e(s, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : s[e] = t;
6
+ var o = (s, e, t) => Ie(s, typeof e != "symbol" ? e + "" : e, t), se = (s, e, t) => e.has(s) || te("Cannot " + t);
7
7
  var X = (s, e, t) => (se(s, e, "read from private field"), t ? t.call(s) : e.get(s)), re = (s, e, t) => e.has(s) ? te("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(s) : e.set(s, t), ne = (s, e, t, r) => (se(s, e, "write to private field"), r ? r.call(s, t) : e.set(s, t), t);
8
- const Ie = (s, e, t) => s + (e - s) * t;
8
+ const Re = (s, e, t) => s + (e - s) * t;
9
9
  const Ne = (s, e, t) => {
10
10
  const r = Math.max(s.length, e.length);
11
11
  let n = "";
@@ -16,7 +16,7 @@ const Ne = (s, e, t) => {
16
16
  isNaN(c) && (c = 97), n += String.fromCharCode(l + (c - l) * t);
17
17
  }
18
18
  return n;
19
- }, Re = (s, e, t) => new Date(s.getTime() + (e.getTime() - s.getTime()) * t), Ve = (s, e) => e, je = (s) => typeof s == "number" ? Ie : typeof s == "string" ? Ne : s instanceof Date ? Re : Ve;
19
+ }, Ve = (s, e, t) => new Date(s.getTime() + (e.getTime() - s.getTime()) * t), je = (s, e) => e, qe = (s) => typeof s == "number" ? Re : typeof s == "string" ? Ne : s instanceof Date ? Ve : je;
20
20
  var D;
21
21
  class Y {
22
22
  /**
@@ -381,7 +381,7 @@ o(H, "is", (e) => (
381
381
  e != null && e.$__signal__ === !0
382
382
  ));
383
383
  let d = H;
384
- const qe = typeof queueMicrotask == "function" ? queueMicrotask : (s) => Promise.resolve().then(s);
384
+ const Fe = typeof queueMicrotask == "function" ? queueMicrotask : (s) => Promise.resolve().then(s);
385
385
  class x extends d {
386
386
  /**
387
387
  * Represents a Signal object.
@@ -417,7 +417,7 @@ class x extends d {
417
417
  */
418
418
  o(this, "_scheduleNotify", () => {
419
419
  const t = ++this._scheduleCount;
420
- qe(() => {
420
+ Fe(() => {
421
421
  this._scheduleCount !== t || this._disposed !== !1 || this._isDirty && (this._isDirty = !1, this._setAndNotify(this._fn(), !1));
422
422
  });
423
423
  });
@@ -526,11 +526,11 @@ o(U, "is", (t) => (
526
526
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
527
527
  t != null && t.$__prop__ === !0
528
528
  ));
529
- let N = U;
529
+ let R = U;
530
530
  const z = (s, e, t = (r, n) => r === n) => {
531
531
  const r = new x(s, t);
532
532
  return e.forEach((n) => n.setDerivative(r)), r;
533
- }, Fe = (s, e, t = {}) => {
533
+ }, Be = (s, e, t = {}) => {
534
534
  let r = t.once ? () => {
535
535
  i(), s();
536
536
  } : s;
@@ -545,7 +545,7 @@ const z = (s, e, t = (r, n) => r === n) => {
545
545
  n.dispose(), t.abortSignal != null && t.abortSignal.removeEventListener("abort", i);
546
546
  };
547
547
  return t.abortSignal != null && t.abortSignal.addEventListener("abort", i), i;
548
- }, E = (s, e = (t, r) => t === r) => new N(s, e), W = (s, e = (t, r) => t === r) => new d(s, e), oe = () => typeof window < "u" ? window : void 0, y = {
548
+ }, E = (s, e = (t, r) => t === r) => new R(s, e), W = (s, e = (t, r) => t === r) => new d(s, e), oe = () => typeof window < "u" ? window : void 0, y = {
549
549
  /**
550
550
  * Maps a value or a Signal to a new value.
551
551
  * If the value is a Signal, it returns a new Signal with the mapped value.
@@ -616,16 +616,16 @@ const z = (s, e, t = (r, n) => r === n) => {
616
616
  autoDisposeProp: e = !0,
617
617
  equals: t
618
618
  } = {}) => d.is(s) ? s.deriveProp({ autoDisposeProp: e, equals: t }) : E(s, t)
619
- }, Mt = (...s) => (e, t) => {
619
+ }, Ht = (...s) => (e, t) => {
620
620
  const r = s.filter((n) => d.is(n));
621
621
  return z(
622
622
  () => e(...s.map((n) => y.get(n))),
623
623
  r,
624
624
  t
625
625
  );
626
- }, Ht = (...s) => (e, t = {}) => {
626
+ }, kt = (...s) => (e, t = {}) => {
627
627
  const r = s.filter((n) => d.is(n));
628
- return Fe(
628
+ return Be(
629
629
  () => e(...s.map(y.get)),
630
630
  r,
631
631
  t
@@ -659,7 +659,7 @@ const ce = ({
659
659
  equals: i = (c, a) => c === a,
660
660
  onLoad: l = (c) => c
661
661
  }) => {
662
- const c = t.getItem(s), a = new N(
662
+ const c = t.getItem(s), a = new R(
663
663
  c != null ? l(n(c)) : typeof e == "function" ? e() : e,
664
664
  i
665
665
  );
@@ -672,7 +672,7 @@ const ce = ({
672
672
  ...s,
673
673
  store: ((e = oe()) == null ? void 0 : e.localStorage) ?? new le()
674
674
  });
675
- }, kt = (s) => {
675
+ }, It = (s) => {
676
676
  var e;
677
677
  return ce({
678
678
  ...s,
@@ -682,7 +682,7 @@ const ce = ({
682
682
  function ie(s) {
683
683
  return typeof requestAnimationFrame == "function" ? requestAnimationFrame(s) : setTimeout(s, 0);
684
684
  }
685
- const Be = (s, e, t, r) => {
685
+ const Ue = (s, e, t, r) => {
686
686
  const n = (r == null ? void 0 : r.duration) ?? 300, i = (r == null ? void 0 : r.easing) ?? ((A) => A), l = (r == null ? void 0 : r.equals) ?? ((A, I) => A === I);
687
687
  let c = r == null ? void 0 : r.interpolate, a = s, u = e(), h = performance.now(), m = null, S = !0;
688
688
  const p = new x(e, l), g = E(s, l);
@@ -694,15 +694,15 @@ const Be = (s, e, t, r) => {
694
694
  const w = (A) => {
695
695
  u = A, h = performance.now(), a = g.value, S && (S = !1, m = ie(K));
696
696
  }, K = () => {
697
- const I = (performance.now() - h) / y.get(n), He = i(I);
698
- c == null && (c = je(a));
699
- let ee = c(a, u, He);
697
+ const I = (performance.now() - h) / y.get(n), ke = i(I);
698
+ c == null && (c = qe(a));
699
+ let ee = c(a, u, ke);
700
700
  I >= 1 ? (S = !0, ee = u) : m = ie(K), g.set(ee);
701
701
  };
702
702
  return p.on(w), g;
703
- }, It = (s, e) => {
703
+ }, Rt = (s, e) => {
704
704
  const { initialValue: t, ...r } = e ?? {};
705
- return Be(
705
+ return Ue(
706
706
  t ?? s.get(),
707
707
  s.get,
708
708
  [s],
@@ -714,12 +714,12 @@ const Be = (s, e, t, r) => {
714
714
  { signals: [], literals: {} }
715
715
  ), n = t.map(([, i]) => i);
716
716
  return z(() => (t.forEach(([i, l]) => r[i] = l.value), e(r)), n);
717
- }, ae = /* @__PURE__ */ new Set(["checked", "disabled", "hidden", "selected"]), ue = /* @__PURE__ */ new Set([
717
+ }, ae = /* @__PURE__ */ new Set(["checked", "disabled", "hidden", "selected"]), ue = /* @__PURE__ */ new Set(["contenteditable", "spellcheck"]), he = /* @__PURE__ */ new Set([
718
718
  "rowSpan",
719
719
  "colSpan",
720
720
  "tabIndex",
721
721
  "valueAsNumber"
722
- ]), he = /* @__PURE__ */ new Set(["valueAsDate"]), fe = /* @__PURE__ */ new Set([
722
+ ]), fe = /* @__PURE__ */ new Set(["valueAsDate"]), de = /* @__PURE__ */ new Set([
723
723
  "value",
724
724
  "textContent",
725
725
  "innerText",
@@ -727,21 +727,23 @@ const Be = (s, e, t, r) => {
727
727
  "outerHTML",
728
728
  "className",
729
729
  "classList"
730
- ]), Ue = (s, e) => ae.has(s) ? (t) => {
730
+ ]), We = (s, e) => ue.has(s) ? (t) => {
731
+ t == null || t !== !0 ? e.removeAttribute(s) : e.setAttribute(s, "");
732
+ } : ae.has(s) ? (t) => {
731
733
  t == null ? e[s] = null : e[s] = !!t;
732
- } : ue.has(s) ? (t) => {
733
- t == null ? e[s] = null : e[s] = Number(t);
734
734
  } : he.has(s) ? (t) => {
735
- t == null ? e[s] = null : e[s] = t;
735
+ t == null ? e[s] = null : e[s] = Number(t);
736
736
  } : fe.has(s) ? (t) => {
737
+ t == null ? e[s] = null : e[s] = t;
738
+ } : de.has(s) ? (t) => {
737
739
  t == null ? e[s] = null : e[s] = String(t);
738
740
  } : (t) => {
739
741
  t == null ? e.removeAttribute(s) : e.setAttribute(s, t);
740
- }, We = (s, e) => ae.has(s) ? () => !!e[s] : ue.has(s) ? () => Number(e[s]) : he.has(s) ? () => e[s] : fe.has(s) ? () => String(e[s]) : () => e.getAttribute(s), R = (s) => {
742
+ }, Je = (s, e) => ue.has(s) ? () => e.hasAttribute(s) : ae.has(s) ? () => !!e[s] : he.has(s) ? () => Number(e[s]) : fe.has(s) ? () => e[s] : de.has(s) ? () => String(e[s]) : () => e.getAttribute(s), N = (s) => {
741
743
  const e = s;
742
744
  e && e.onblur && (e.onblur = null), !(!s || s.ownerDocument === void 0) && s.parentElement && s.parentElement.removeChild(s);
743
- }, Je = (s) => de(s) ? s : s.parentElement, de = (s) => s.nodeType === 1;
744
- class pe extends Error {
745
+ }, Ge = (s) => pe(s) ? s : s.parentElement, pe = (s) => s.nodeType === 1;
746
+ class ge extends Error {
745
747
  constructor(e) {
746
748
  super(`Provider not found: ${e.description}`);
747
749
  }
@@ -867,11 +869,11 @@ class L {
867
869
  */
868
870
  o(this, "getProvider", (e) => {
869
871
  if (this.providers[e] === void 0)
870
- throw new pe(e);
872
+ throw new ge(e);
871
873
  return this.providers[e];
872
874
  });
873
875
  o(this, "clear", (e) => {
874
- e && (this.reference !== void 0 ? R(this.reference) : R(this.element));
876
+ e && (this.reference !== void 0 ? N(this.reference) : N(this.element));
875
877
  });
876
878
  /**
877
879
  * Adds classes to the element.
@@ -931,8 +933,8 @@ class L {
931
933
  */
932
934
  o(this, "getStyle", (e) => this.element.style[e]);
933
935
  o(this, "makeAccessors", (e) => ({
934
- get: We(e, this.element),
935
- set: Ue(e, this.element)
936
+ get: Je(e, this.element),
937
+ set: We(e, this.element)
936
938
  }));
937
939
  this.document = e, this.element = t, this.reference = r, this.providers = n;
938
940
  }
@@ -950,33 +952,33 @@ class L {
950
952
  const Q = (s, e) => {
951
953
  const t = s(e);
952
954
  return () => t(!0);
953
- }, Rt = (s, e, { doc: t, clear: r } = {}) => {
955
+ }, Vt = (s, e, { doc: t, clear: r } = {}) => {
954
956
  const n = typeof e == "string" ? (t ?? document).querySelector(e) : e;
955
957
  if (n === null)
956
- throw new Ge(
958
+ throw new Xe(
957
959
  `Cannot find element by selector for render: ${e}`
958
960
  );
959
961
  r !== !1 && (t ?? n.ownerDocument) != null && n.nodeType === 1 && (n.innerHTML = "");
960
- const i = Je(n), l = de(n) ? void 0 : n, c = L.of(i, l);
962
+ const i = Ge(n), l = pe(n) ? void 0 : n, c = L.of(i, l);
961
963
  return Q(s, c);
962
- }, Vt = (s, {
964
+ }, jt = (s, {
963
965
  startUrl: e = "https://example.com",
964
966
  selector: t = ":root"
965
967
  } = {}) => {
966
- const r = y.toSignal(e).deriveProp(), n = new be(t, void 0), i = new O(n, void 0, { currentURL: r }, {});
968
+ const r = y.toSignal(e).deriveProp(), n = new Se(t, void 0), i = new O(n, void 0, { currentURL: r }, {});
967
969
  return {
968
970
  clear: Q(s(), i),
969
971
  root: n,
970
972
  currentURL: r
971
973
  };
972
974
  };
973
- class Ge extends Error {
975
+ class Xe extends Error {
974
976
  constructor(e) {
975
977
  super(e);
976
978
  }
977
979
  }
978
- const ge = "data-tts-node", V = "data-tts-class", j = "data-tts-style", q = "data-tts-html", F = "data-tts-text", B = "data-tts-attrs";
979
- class jt {
980
+ const me = "data-tts-node", V = "data-tts-class", j = "data-tts-style", q = "data-tts-html", F = "data-tts-text", B = "data-tts-attrs";
981
+ class qt {
980
982
  constructor({
981
983
  select: e,
982
984
  getAttribute: t,
@@ -1134,54 +1136,54 @@ class jt {
1134
1136
  this.select = e, this.getAttribute = t, this.setAttribute = r, this.getClass = n, this.setClass = i, this.getStyles = l, this.setStyles = c, this.appendHTML = a, this.getInnerHTML = u, this.setInnerHTML = h, this.getInnerText = m, this.setInnerText = S;
1135
1137
  }
1136
1138
  }
1137
- const Xe = () => {
1138
- document.querySelectorAll(`[${ge}]`).forEach(R);
1139
- }, Ye = (s) => {
1139
+ const Ye = () => {
1140
+ document.querySelectorAll(`[${me}]`).forEach(N);
1141
+ }, ze = (s) => {
1140
1142
  const e = s.getAttribute(V);
1141
1143
  s.removeAttribute(V), e != null && s.setAttribute("class", e);
1142
- }, ze = () => {
1143
- document.querySelectorAll(`[${V}]`).forEach((e) => Ye(e));
1144
- }, Qe = (s) => {
1144
+ }, Qe = () => {
1145
+ document.querySelectorAll(`[${V}]`).forEach((e) => ze(e));
1146
+ }, Ze = (s) => {
1145
1147
  const e = s.getAttribute(q);
1146
1148
  s.removeAttribute(q), e != null && (s.innerHTML = e);
1147
- }, Ze = () => {
1148
- document.querySelectorAll(`[${q}]`).forEach((e) => Qe(e));
1149
- }, Ke = (s) => {
1149
+ }, Ke = () => {
1150
+ document.querySelectorAll(`[${q}]`).forEach((e) => Ze(e));
1151
+ }, et = (s) => {
1150
1152
  const e = s.getAttribute(F);
1151
1153
  s.removeAttribute(F), e != null && (s.innerText = e);
1152
- }, et = () => {
1153
- document.querySelectorAll(`[${F}]`).forEach((e) => Ke(e));
1154
- }, me = (s) => JSON.parse(s.replace(/&quot;/g, '"')), tt = (s) => {
1154
+ }, tt = () => {
1155
+ document.querySelectorAll(`[${F}]`).forEach((e) => et(e));
1156
+ }, ye = (s) => JSON.parse(s.replace(/&quot;/g, '"')), st = (s) => {
1155
1157
  const e = s.getAttribute(j);
1156
1158
  if (s.removeAttribute(j), e != null) {
1157
- const t = me(e);
1159
+ const t = ye(e);
1158
1160
  Object.entries(t).forEach(([r, n]) => {
1159
1161
  s.style.setProperty(r, n);
1160
1162
  });
1161
1163
  }
1162
- }, st = () => {
1163
- document.querySelectorAll(`[${j}]`).forEach((e) => tt(e));
1164
- }, rt = (s) => {
1164
+ }, rt = () => {
1165
+ document.querySelectorAll(`[${j}]`).forEach((e) => st(e));
1166
+ }, nt = (s) => {
1165
1167
  const e = s.getAttribute(B);
1166
1168
  if (s.removeAttribute(B), e != null) {
1167
- const t = me(e);
1169
+ const t = ye(e);
1168
1170
  Object.entries(t).forEach(([r, n]) => {
1169
1171
  n == null ? s.removeAttribute(r) : s.setAttribute(r, n);
1170
1172
  });
1171
1173
  }
1172
- }, nt = () => {
1173
- document.querySelectorAll(`[${B}]`).forEach((e) => rt(e));
1174
- }, qt = () => {
1175
- Xe(), ze(), et(), Ze(), st(), nt();
1176
- }, T = Symbol("class"), v = Symbol("style"), C = Symbol("handler"), ye = () => Math.random().toString(36).substring(2, 15), it = (s) => s.replace(/<[^>]*>?/g, "");
1177
- class Te {
1174
+ }, it = () => {
1175
+ document.querySelectorAll(`[${B}]`).forEach((e) => nt(e));
1176
+ }, Ft = () => {
1177
+ Ye(), Qe(), tt(), Ke(), rt(), it();
1178
+ }, T = Symbol("class"), v = Symbol("style"), C = Symbol("handler"), Te = () => Math.random().toString(36).substring(2, 15), ot = (s) => s.replace(/<[^>]*>?/g, "");
1179
+ class be {
1178
1180
  constructor(e) {
1179
- o(this, "id", ye());
1181
+ o(this, "id", Te());
1180
1182
  o(this, "properties", {});
1181
1183
  o(this, "children", []);
1182
1184
  o(this, "isElement", () => !0);
1183
1185
  o(this, "isText", () => !1);
1184
- o(this, "getText", () => this.properties.innerText != null ? this.properties.innerText : this.properties.innerHTML != null ? it(this.properties.innerHTML) : this.children.map((e) => e.getText()).join(""));
1186
+ o(this, "getText", () => this.properties.innerText != null ? this.properties.innerText : this.properties.innerHTML != null ? ot(this.properties.innerHTML) : this.children.map((e) => e.getText()).join(""));
1185
1187
  o(this, "removeChild", (e) => {
1186
1188
  const t = this.children.indexOf(e);
1187
1189
  t !== -1 && this.children.splice(t, 1);
@@ -1280,21 +1282,21 @@ class Te {
1280
1282
  this.parent = e;
1281
1283
  }
1282
1284
  }
1283
- const ot = (s) => s.replace(/"/g, "&quot;"), lt = (s) => s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
1284
- class ct extends Te {
1285
+ const lt = (s) => s.replace(/"/g, "&quot;"), ct = (s) => s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
1286
+ class at extends be {
1285
1287
  constructor(t, r, n) {
1286
1288
  super(n);
1287
1289
  o(this, "isPortal", () => !1);
1288
1290
  o(this, "toHTML", (t = !1) => {
1289
1291
  const r = this.children.map((a) => a.toHTML()).join(""), n = this.namespace ? ` xmlns="${this.namespace}"` : "";
1290
1292
  let i = null;
1291
- const l = this.getVisibleAttributes().map(([a, u]) => a === "class" ? ` class="${u.join(" ")}"` : a === "style" ? typeof u == "string" ? ` style="${u}"` : ` style="${Object.entries(u).map(([h, m]) => `${h}: ${m};`).join(" ")}"` : ut.has(a) ? ` ${a}` : a === "innerHTML" ? (i = u, "") : a === "innerText" ? (i = lt(u), "") : ` ${a}="${ot(u)}"`).join(""), c = t ? ` ${ge}` : "";
1292
- return ht.has(this.tagName) && r === "" ? `<${this.tagName}${n}${l}${c} />` : `<${this.tagName}${n}${l}${c}>${i ?? r}</${this.tagName}>`;
1293
+ const l = this.getVisibleAttributes().map(([a, u]) => a === "class" ? ` class="${u.join(" ")}"` : a === "style" ? typeof u == "string" ? ` style="${u}"` : ` style="${Object.entries(u).map(([h, m]) => `${h}: ${m};`).join(" ")}"` : ht.has(a) ? ` ${a}` : a === "innerHTML" ? (i = u, "") : a === "innerText" ? (i = ct(u), "") : ` ${a}="${lt(u)}"`).join(""), c = t ? ` ${me}` : "";
1294
+ return ft.has(this.tagName) && r === "" ? `<${this.tagName}${n}${l}${c} />` : `<${this.tagName}${n}${l}${c}>${i ?? r}</${this.tagName}>`;
1293
1295
  });
1294
1296
  this.tagName = t, this.namespace = r;
1295
1297
  }
1296
1298
  }
1297
- class be extends Te {
1299
+ class Se extends be {
1298
1300
  constructor(t, r) {
1299
1301
  super(r);
1300
1302
  o(this, "isPortal", () => !0);
@@ -1303,9 +1305,9 @@ class be extends Te {
1303
1305
  this.selector = t;
1304
1306
  }
1305
1307
  }
1306
- class at {
1308
+ class ut {
1307
1309
  constructor(e) {
1308
- o(this, "id", ye());
1310
+ o(this, "id", Te());
1309
1311
  o(this, "isElement", () => !1);
1310
1312
  o(this, "isText", () => !0);
1311
1313
  o(this, "getText", () => this.text);
@@ -1323,7 +1325,7 @@ class O {
1323
1325
  this.element.children.push(e);
1324
1326
  });
1325
1327
  o(this, "makeChildElement", (e, t) => {
1326
- const r = new ct(e, t, this.element);
1328
+ const r = new at(e, t, this.element);
1327
1329
  return this.appendOrInsert(r), new O(
1328
1330
  r,
1329
1331
  void 0,
@@ -1332,7 +1334,7 @@ class O {
1332
1334
  );
1333
1335
  });
1334
1336
  o(this, "makeChildText", (e) => {
1335
- const t = new at(e);
1337
+ const t = new ut(e);
1336
1338
  return this.appendOrInsert(t), new O(
1337
1339
  this.element,
1338
1340
  t,
@@ -1349,7 +1351,7 @@ class O {
1349
1351
  });
1350
1352
  o(this, "makeRef", () => this.makeChildText(""));
1351
1353
  o(this, "makePortal", (e) => {
1352
- const t = new be(e, this.element);
1354
+ const t = new Se(e, this.element);
1353
1355
  return this.appendOrInsert(t), new O(
1354
1356
  t,
1355
1357
  void 0,
@@ -1363,7 +1365,7 @@ class O {
1363
1365
  }));
1364
1366
  o(this, "getProvider", (e) => {
1365
1367
  if (this.providers[e] === void 0)
1366
- throw new pe(e);
1368
+ throw new ge(e);
1367
1369
  return this.providers[e];
1368
1370
  });
1369
1371
  o(this, "clear", (e) => {
@@ -1381,30 +1383,30 @@ class O {
1381
1383
  this.element = e, this.reference = t, this.container = r, this.providers = n;
1382
1384
  }
1383
1385
  }
1384
- const ut = /* @__PURE__ */ new Set([
1386
+ const ht = /* @__PURE__ */ new Set([
1385
1387
  "checked",
1386
1388
  "disabled",
1387
1389
  "multiple",
1388
1390
  "readonly",
1389
1391
  "required",
1390
1392
  "selected"
1391
- ]), ht = /* @__PURE__ */ new Set(["img", "br", "hr", "input", "link", "meta"]), Se = (s) => (e) => {
1393
+ ]), ft = /* @__PURE__ */ new Set(["img", "br", "hr", "input", "link", "meta"]), Ae = (s) => (e) => {
1392
1394
  const t = e.makeChildText(s);
1393
1395
  return (r) => t.clear(r);
1394
- }, Ae = (s) => (e) => {
1396
+ }, _e = (s) => (e) => {
1395
1397
  const t = e.makeChildText(s.value), r = s.on((n) => t.setText(n));
1396
1398
  return (n) => {
1397
1399
  r(), t.clear(n);
1398
1400
  };
1399
- }, Ft = (s) => d.is(s) ? Ae(s) : Se(s), b = (...s) => (e) => {
1401
+ }, Bt = (s) => d.is(s) ? _e(s) : Ae(s), b = (...s) => (e) => {
1400
1402
  const t = s.map((r) => f(r)(e));
1401
1403
  return (r) => {
1402
1404
  t.forEach((n) => n(r));
1403
1405
  };
1404
1406
  }, _ = () => () => {
1405
- }, ft = (s) => (e) => (e.addClasses(s), (t) => {
1407
+ }, dt = (s) => (e) => (e.addClasses(s), (t) => {
1406
1408
  t && e.removeClasses(s);
1407
- }), dt = (s) => (e) => {
1409
+ }), pt = (s) => (e) => {
1408
1410
  let t = [];
1409
1411
  const r = s.on((n) => {
1410
1412
  e.removeClasses(t), t = (n ?? "").split(" ").filter((i) => i.length > 0), e.addClasses(t);
@@ -1412,12 +1414,12 @@ const ut = /* @__PURE__ */ new Set([
1412
1414
  return (n) => {
1413
1415
  r(), n && e.removeClasses(t), t.length = 0;
1414
1416
  };
1415
- }, $ = (s, e) => (t) => {
1417
+ }, k = (s, e) => (t) => {
1416
1418
  const { get: r, set: n } = t.makeAccessors(s), i = r();
1417
1419
  return n(e), (l) => {
1418
1420
  l && n(i);
1419
1421
  };
1420
- }, k = (s, e) => (t) => {
1422
+ }, $ = (s, e) => (t) => {
1421
1423
  const { get: r, set: n } = t.makeAccessors(s), i = r(), l = e.on(n);
1422
1424
  return (c) => {
1423
1425
  l(), c && n(i);
@@ -1436,17 +1438,17 @@ const ut = /* @__PURE__ */ new Set([
1436
1438
  * @returns The renderable component for the specified attribute.
1437
1439
  *
1438
1440
  */
1439
- get: (s, e) => e === "class" ? (t) => d.is(t) ? dt(t) : ft(
1441
+ get: (s, e) => e === "class" ? (t) => d.is(t) ? pt(t) : dt(
1440
1442
  (t ?? "").split(" ").filter((r) => r.length > 0)
1441
- ) : (t) => d.is(t) ? k(
1443
+ ) : (t) => d.is(t) ? $(
1442
1444
  e,
1443
1445
  t
1444
- ) : $(
1446
+ ) : k(
1445
1447
  e,
1446
1448
  t
1447
1449
  )
1448
1450
  }
1449
- ), Bt = new Proxy(
1451
+ ), Ut = new Proxy(
1450
1452
  {},
1451
1453
  {
1452
1454
  /**
@@ -1457,12 +1459,12 @@ const ut = /* @__PURE__ */ new Set([
1457
1459
  * @returns The renderable component for the specified attribute.
1458
1460
  *
1459
1461
  */
1460
- get: (s, e) => (t) => d.is(t) ? k(
1462
+ get: (s, e) => (t) => d.is(t) ? $(
1461
1463
  `data-${e}`,
1462
1464
  t
1463
- ) : $(`data-${e}`, t)
1465
+ ) : k(`data-${e}`, t)
1464
1466
  }
1465
- ), Ut = new Proxy(
1467
+ ), Wt = new Proxy(
1466
1468
  {},
1467
1469
  {
1468
1470
  /**
@@ -1473,15 +1475,15 @@ const ut = /* @__PURE__ */ new Set([
1473
1475
  * @returns The renderable component for the specified attribute.
1474
1476
  *
1475
1477
  */
1476
- get: (s, e) => (t) => d.is(t) ? k(
1478
+ get: (s, e) => (t) => d.is(t) ? $(
1477
1479
  `aria-${e}`,
1478
1480
  t
1479
- ) : $(
1481
+ ) : k(
1480
1482
  `aria-${e}`,
1481
1483
  t
1482
1484
  )
1483
1485
  }
1484
- ), Wt = new Proxy(
1486
+ ), Jt = new Proxy(
1485
1487
  {},
1486
1488
  {
1487
1489
  /**
@@ -1492,15 +1494,15 @@ const ut = /* @__PURE__ */ new Set([
1492
1494
  * @returns The renderable component for the specified attribute.
1493
1495
  *
1494
1496
  */
1495
- get: (s, e) => (t) => d.is(t) ? k(
1497
+ get: (s, e) => (t) => d.is(t) ? $(
1496
1498
  e,
1497
1499
  t
1498
- ) : $(
1500
+ ) : k(
1499
1501
  e,
1500
1502
  t
1501
1503
  )
1502
1504
  }
1503
- ), Jt = new Proxy(
1505
+ ), Gt = new Proxy(
1504
1506
  {},
1505
1507
  {
1506
1508
  /**
@@ -1510,10 +1512,10 @@ const ut = /* @__PURE__ */ new Set([
1510
1512
  * @returns The renderable component for the specified attribute.
1511
1513
  *
1512
1514
  */
1513
- get: (s, e) => (t) => d.is(t) ? k(
1515
+ get: (s, e) => (t) => d.is(t) ? $(
1514
1516
  e,
1515
1517
  t
1516
- ) : $(
1518
+ ) : k(
1517
1519
  e,
1518
1520
  t
1519
1521
  )
@@ -1524,23 +1526,23 @@ const ut = /* @__PURE__ */ new Set([
1524
1526
  if (Array.isArray(s))
1525
1527
  return b(...s.map(f));
1526
1528
  if (typeof s == "string")
1527
- return Se(s);
1528
- if (d.is(s))
1529
1529
  return Ae(s);
1530
+ if (d.is(s))
1531
+ return _e(s);
1530
1532
  if (typeof s == "function")
1531
1533
  return s;
1532
1534
  throw new Error(`Unknown type: '${typeof s}' for child: ${s}`);
1533
- }, _e = (s, ...e) => (t) => {
1535
+ }, ve = (s, ...e) => (t) => {
1534
1536
  const r = t.makeChildElement(s, void 0), n = e.map((i) => f(i)(r));
1535
1537
  return (i) => {
1536
1538
  n.forEach((l) => l(!1)), r.clear(i);
1537
1539
  };
1538
- }, ve = (s, e, ...t) => (r) => {
1540
+ }, Ee = (s, e, ...t) => (r) => {
1539
1541
  const n = r.makeChildElement(s, e), i = t.map((l) => f(l)(n));
1540
1542
  return (l) => {
1541
1543
  i.forEach((c) => c(!1)), n.clear(l);
1542
1544
  };
1543
- }, Gt = new Proxy(
1545
+ }, Xt = new Proxy(
1544
1546
  {},
1545
1547
  {
1546
1548
  /**
@@ -1548,9 +1550,9 @@ const ut = /* @__PURE__ */ new Set([
1548
1550
  * @param tagName - The HTML tag name.
1549
1551
  * @returns A renderable function that creates and appends the HTML element to the DOM.
1550
1552
  */
1551
- get: (s, e) => (...t) => _e(e, t.flatMap(f))
1553
+ get: (s, e) => (...t) => ve(e, t.flatMap(f))
1552
1554
  }
1553
- ), Xt = new Proxy(
1555
+ ), Yt = new Proxy(
1554
1556
  {},
1555
1557
  {
1556
1558
  /**
@@ -1558,9 +1560,9 @@ const ut = /* @__PURE__ */ new Set([
1558
1560
  * @param type - The input type name.
1559
1561
  * @returns A renderable function that creates and appends the HTMLInput element to the DOM.
1560
1562
  */
1561
- get: (s, e) => (...t) => _e("input", M.type(e), ...t)
1563
+ get: (s, e) => (...t) => ve("input", M.type(e), ...t)
1562
1564
  }
1563
- ), pt = "http://www.w3.org/2000/svg", Yt = new Proxy(
1565
+ ), gt = "http://www.w3.org/2000/svg", zt = new Proxy(
1564
1566
  {},
1565
1567
  {
1566
1568
  /**
@@ -1568,9 +1570,9 @@ const ut = /* @__PURE__ */ new Set([
1568
1570
  * @param tagName - The SVG tag name.
1569
1571
  * @returns A renderable function that creates and appends the SVG element to the DOM.
1570
1572
  */
1571
- get: (s, e) => (...t) => ve(e, pt, t.flatMap(f))
1573
+ get: (s, e) => (...t) => Ee(e, gt, t.flatMap(f))
1572
1574
  }
1573
- ), gt = "http://www.w3.org/1998/Math/MathML", zt = new Proxy(
1575
+ ), mt = "http://www.w3.org/1998/Math/MathML", Qt = new Proxy(
1574
1576
  {},
1575
1577
  {
1576
1578
  /**
@@ -1578,11 +1580,11 @@ const ut = /* @__PURE__ */ new Set([
1578
1580
  * @param tagName - The Math tag name.
1579
1581
  * @returns A renderable function that creates and appends the Math element to the DOM.
1580
1582
  */
1581
- get: (s, e) => (...t) => ve(e, gt, t.flatMap(f))
1583
+ get: (s, e) => (...t) => Ee(e, mt, t.flatMap(f))
1582
1584
  }
1583
- ), Ee = (s, e) => {
1585
+ ), we = (s, e) => {
1584
1586
  if (typeof e == "function")
1585
- return Ee(s, { then: e });
1587
+ return we(s, { then: e });
1586
1588
  const t = e.pending != null ? f(e.pending()) : _, r = e.then, n = e.error != null ? (i) => f(e.error(i)) : () => _;
1587
1589
  return (i) => {
1588
1590
  let l = !0;
@@ -1599,7 +1601,7 @@ const ut = /* @__PURE__ */ new Set([
1599
1601
  l = !1, u(h), a.clear(h);
1600
1602
  };
1601
1603
  };
1602
- }, Qt = (s, e) => Ee(() => s, e), we = (s, e, t) => (r) => r.on(s, e, t), mt = (s) => we("click", (e) => {
1604
+ }, Zt = (s, e) => we(() => s, e), Ce = (s, e, t) => (r) => r.on(s, e, t), yt = (s) => Ce("click", (e) => {
1603
1605
  e.preventDefault();
1604
1606
  const t = e.target;
1605
1607
  setTimeout(() => {
@@ -1614,15 +1616,15 @@ const ut = /* @__PURE__ */ new Set([
1614
1616
  * @param fn - The function to call when the event is triggered.
1615
1617
  * @returns A `Renderable` function that adds the event listener to the element.
1616
1618
  */
1617
- get: (s, e) => (t) => we(e, t)
1619
+ get: (s, e) => (t) => Ce(e, t)
1618
1620
  }
1619
- ), yt = (s) => (e) => {
1621
+ ), Tt = (s) => (e) => {
1620
1622
  const t = e.target;
1621
1623
  s(t.value);
1622
- }, Tt = (s) => (e) => {
1624
+ }, bt = (s) => (e) => {
1623
1625
  const t = e.target;
1624
1626
  s(t.valueAsNumber);
1625
- }, bt = (s) => (e) => {
1627
+ }, St = (s) => (e) => {
1626
1628
  const t = e.target;
1627
1629
  if (t.value === "")
1628
1630
  return;
@@ -1632,7 +1634,7 @@ const ut = /* @__PURE__ */ new Set([
1632
1634
  Number(r[2].substring(0, 2))
1633
1635
  );
1634
1636
  s(n);
1635
- }, St = (s) => (e) => {
1637
+ }, At = (s) => (e) => {
1636
1638
  const t = e.target;
1637
1639
  if (t.value === "")
1638
1640
  return;
@@ -1642,16 +1644,16 @@ const ut = /* @__PURE__ */ new Set([
1642
1644
  Number(n[2])
1643
1645
  ), l = r[1].split(":");
1644
1646
  i.setHours(Number(l[0])), i.setMinutes(Number(l[1])), i.setSeconds(Number(l[2])), s(i);
1645
- }, Zt = (s) => (e) => {
1647
+ }, Kt = (s) => (e) => {
1646
1648
  const t = e.target;
1647
1649
  s(t.checked);
1648
- }, Kt = (s) => (e) => {
1649
- e.preventDefault(), s();
1650
1650
  }, es = (s) => (e) => {
1651
- e.stopPropagation(), s();
1651
+ e.preventDefault(), s();
1652
1652
  }, ts = (s) => (e) => {
1653
+ e.stopPropagation(), s();
1654
+ }, ss = (s) => (e) => {
1653
1655
  e.stopImmediatePropagation(), s();
1654
- }, ss = (s, e = "input") => b(M.valueAsDate(s), J[e](bt(s.set))), rs = (s, e = "input") => b(M.valueAsDate(s), J[e](St(s.set))), ns = (s, e = "input") => b(M.valueAsNumber(s), J[e](Tt(s.set))), is = (s, e = "input") => b(M.value(s), J[e](yt(s.set))), os = (s) => b(M.checked(s), mt(s.set)), G = (s, e) => {
1656
+ }, rs = (s, e = "input") => b(M.valueAsDate(s), J[e](St(s.set))), ns = (s, e = "input") => b(M.valueAsDate(s), J[e](At(s.set))), is = (s, e = "input") => b(M.valueAsNumber(s), J[e](bt(s.set))), os = (s, e = "input") => b(M.value(s), J[e](Tt(s.set))), ls = (s) => b(M.checked(s), yt(s.set)), G = (s, e) => {
1655
1657
  if (d.is(s))
1656
1658
  return (r) => {
1657
1659
  const n = r.makeRef();
@@ -1671,19 +1673,19 @@ const ut = /* @__PURE__ */ new Set([
1671
1673
  };
1672
1674
  const t = Object.keys(s)[0];
1673
1675
  return f(e[t](W(s[t])));
1674
- }, Ce = (s, e, t) => G(
1676
+ }, Pe = (s, e, t) => G(
1675
1677
  y.map(s, (r) => ({ [r[e]]: r })),
1676
1678
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
1677
1679
  t
1678
- ), ls = (s, e) => Ce(s, "kind", e), cs = (s, e) => {
1680
+ ), cs = (s, e) => Pe(s, "kind", e), as = (s, e) => {
1679
1681
  const t = y.map(s, ([r, n]) => ({ [r]: n }));
1680
1682
  return G(t, e);
1681
- }, as = (s, e) => Ce(s, "type", e), At = (s, e) => G(
1683
+ }, us = (s, e) => Pe(s, "type", e), _t = (s, e) => G(
1682
1684
  y.map(s, (t) => ({ [t]: !0 })),
1683
1685
  e
1684
- ), us = (s, e = {}) => (t) => {
1686
+ ), hs = (s, e = {}) => (t) => {
1685
1687
  const r = (e == null ? void 0 : e.firstSeparator) ?? s, n = (e == null ? void 0 : e.lastSeparator) ?? s;
1686
- return At(
1688
+ return _t(
1687
1689
  t.map((i) => i.isFirst ? "first" : i.isLast ? "last" : "other"),
1688
1690
  {
1689
1691
  first: r,
@@ -1691,7 +1693,7 @@ const ut = /* @__PURE__ */ new Set([
1691
1693
  other: s
1692
1694
  }
1693
1695
  );
1694
- }, Pe = (s, e) => (t) => {
1696
+ }, xe = (s, e) => (t) => {
1695
1697
  const r = Object.values(s).reduce(
1696
1698
  (n, i) => {
1697
1699
  const l = t.getProvider(i);
@@ -1700,7 +1702,7 @@ const ut = /* @__PURE__ */ new Set([
1700
1702
  {}
1701
1703
  );
1702
1704
  return f(e(r))(t);
1703
- }, hs = (s, e) => (t) => {
1705
+ }, fs = (s, e) => (t) => {
1704
1706
  const r = [], n = Object.entries(s).reduce(
1705
1707
  (i, [l, c]) => (r.push(
1706
1708
  c((a) => (Reflect.set(i, l, a), null))(t)
@@ -1710,10 +1712,10 @@ const ut = /* @__PURE__ */ new Set([
1710
1712
  return r.push(e(n)(t)), (i) => {
1711
1713
  r.forEach((l) => l(i));
1712
1714
  };
1713
- }, _t = (s, e) => Pe([s], (t) => f(e(t[s]))), fs = (s, e) => Pe(s, (t) => f(e(t))), ds = (s) => (e) => s(e) ?? (() => {
1714
- }), ps = (s) => (e) => (e.appendOrInsert(s), (t) => {
1715
- t && R(s);
1716
- }), vt = (s, e, t) => {
1715
+ }, vt = (s, e) => xe([s], (t) => f(e(t[s]))), ds = (s, e) => xe(s, (t) => f(e(t))), ps = (s) => (e) => s(e) ?? (() => {
1716
+ }), gs = (s) => (e) => (e.appendOrInsert(s), (t) => {
1717
+ t && N(s);
1718
+ }), Et = (s, e, t) => {
1717
1719
  if (d.is(s)) {
1718
1720
  const r = s;
1719
1721
  return (n) => {
@@ -1737,7 +1739,7 @@ const ut = /* @__PURE__ */ new Set([
1737
1739
  }
1738
1740
  return f(e(W(r)));
1739
1741
  }
1740
- }, gs = (...s) => (e, t) => (r) => {
1742
+ }, ms = (...s) => (e, t) => (r) => {
1741
1743
  const n = r.makeRef();
1742
1744
  if (s.some(
1743
1745
  (p) => !d.is(p) && p == null
@@ -1776,15 +1778,15 @@ const ut = /* @__PURE__ */ new Set([
1776
1778
  }), (p) => {
1777
1779
  l.forEach((g) => g == null ? void 0 : g.dispose()), u.dispose(), S.forEach((g) => g()), a == null || a(p), n.clear(p);
1778
1780
  };
1779
- }, Z = (...s) => (e) => (t) => s.forEach((r) => r(t, e)), xe = (s, e, t) => vt(
1781
+ }, Z = (...s) => (e) => (t) => s.forEach((r) => r(t, e)), Le = (s, e, t) => Et(
1780
1782
  y.map(s, (r) => r ? !0 : null),
1781
1783
  e,
1782
1784
  t ?? void 0
1783
- ), ms = (s, e, t) => xe(
1785
+ ), ys = (s, e, t) => Le(
1784
1786
  y.map(s, (r) => !r),
1785
1787
  e,
1786
1788
  t
1787
- ), Le = (s, e, t) => t != null ? Le(s, (r) => {
1789
+ ), Oe = (s, e, t) => t != null ? Oe(s, (r) => {
1788
1790
  const n = new Y(
1789
1791
  r.index,
1790
1792
  r.total.map((i) => i - 1)
@@ -1792,7 +1794,7 @@ const ut = /* @__PURE__ */ new Set([
1792
1794
  return b(
1793
1795
  Z(n.dispose),
1794
1796
  f(e(r)),
1795
- xe(
1797
+ Le(
1796
1798
  r.isLast,
1797
1799
  () => _,
1798
1800
  () => t(n)
@@ -1818,9 +1820,9 @@ const ut = /* @__PURE__ */ new Set([
1818
1820
  ...Array.from({ length: s }, (r, n) => n).map(
1819
1821
  (r) => f(e(new Y(r, W(s))))
1820
1822
  )
1821
- ), ys = (s, e, t) => {
1823
+ ), Ts = (s, e, t) => {
1822
1824
  const r = y.map(s, (i) => i.length), n = y.toSignal(s);
1823
- return Le(
1825
+ return Oe(
1824
1826
  r,
1825
1827
  (i) => {
1826
1828
  const l = n.map((c) => c[i.index]);
@@ -1831,12 +1833,12 @@ const ut = /* @__PURE__ */ new Set([
1831
1833
  },
1832
1834
  t
1833
1835
  );
1834
- }, Et = (s) => (e) => e.isBrowserDOM() ? s(e) ?? (() => {
1836
+ }, wt = (s) => (e) => e.isBrowserDOM() ? s(e) ?? (() => {
1835
1837
  }) : () => {
1836
- }, Ts = (s) => (e) => e.isHeadlessDOM() ? s(e) ?? (() => {
1838
+ }, bs = (s) => (e) => e.isHeadlessDOM() ? s(e) ?? (() => {
1837
1839
  }) : () => {
1838
- }, bs = (s) => Et((e) => s(e.element) ?? (() => {
1839
- })), Ss = (s, e) => {
1840
+ }, Ss = (s) => wt((e) => s(e.element) ?? (() => {
1841
+ })), As = (s, e) => {
1840
1842
  if (d.is(s)) {
1841
1843
  const t = s;
1842
1844
  return (r) => {
@@ -1853,7 +1855,7 @@ const ut = /* @__PURE__ */ new Set([
1853
1855
  };
1854
1856
  }
1855
1857
  return f(e(s));
1856
- }, As = (s, e, t = () => _) => G(
1858
+ }, _s = (s, e, t = () => _) => G(
1857
1859
  y.map(
1858
1860
  s,
1859
1861
  (r) => r.length > 0 ? { notEmpty: r } : { whenEmpty: null }
@@ -1862,10 +1864,10 @@ const ut = /* @__PURE__ */ new Set([
1862
1864
  notEmpty: (r) => e(r),
1863
1865
  whenEmpty: () => t()
1864
1866
  }
1865
- ), _s = (s, e) => (t) => {
1867
+ ), vs = (s, e) => (t) => {
1866
1868
  const r = t.makePortal(s);
1867
1869
  return Q(f(e), r);
1868
- }, wt = (s) => Symbol(s), Oe = (s, e) => (t) => f(e)(t.withProviders(s)), vs = (...s) => s.length > 0 ? s.reduceRight((e, t) => (r) => e(t(r))) : f, Ct = (s, e, t) => Oe({ [s]: e }, f(t)), Es = (s, e) => Oe(s, f(e)), De = wt("Probe"), P = /* @__PURE__ */ new Map(), Pt = ({
1870
+ }, Ct = (s) => Symbol(s), De = (s, e) => (t) => f(e)(t.withProviders(s)), Es = (...s) => s.length > 0 ? s.reduceRight((e, t) => (r) => e(t(r))) : f, Pt = (s, e, t) => De({ [s]: e }, f(t)), ws = (s, e) => De(s, f(e)), Me = Ct("Probe"), P = /* @__PURE__ */ new Map(), xt = ({
1869
1871
  identifier: s,
1870
1872
  callback: e = () => {
1871
1873
  },
@@ -1888,26 +1890,26 @@ const ut = /* @__PURE__ */ new Set([
1888
1890
  };
1889
1891
  return b(
1890
1892
  Z(() => clearTimeout(n)),
1891
- Ct(De, i, t)
1893
+ Pt(Me, i, t)
1892
1894
  );
1893
- }, xt = (s, e) => _t(De, (t) => {
1895
+ }, Lt = (s, e) => vt(Me, (t) => {
1894
1896
  const r = P.get(s);
1895
1897
  return r == null ? e(() => {
1896
1898
  }) : (clearTimeout(r.timeoutId), r.counter++, e(() => t(s)));
1897
- }), Me = Symbol("globalProbe"), ws = ({
1899
+ }), He = Symbol("globalProbe"), Cs = ({
1898
1900
  callback: s,
1899
1901
  timeout: e
1900
- }, t) => Pt({ identifier: Me, callback: s, child: t, timeout: e }), Cs = (s) => xt(Me, s), Lt = (s, e) => (t) => {
1902
+ }, t) => xt({ identifier: He, callback: s, child: t, timeout: e }), Ps = (s) => Lt(He, s), Ot = (s, e) => (t) => {
1901
1903
  const r = t.getStyle(s);
1902
1904
  return t.setStyle(s, e), (n) => {
1903
1905
  n && t.setStyle(s, r);
1904
1906
  };
1905
- }, Ot = (s, e) => (t) => {
1907
+ }, Dt = (s, e) => (t) => {
1906
1908
  const r = t.getStyle(s);
1907
1909
  return e.on((n) => t.setStyle(s, n)), (n) => {
1908
1910
  n && t.setStyle(s, r);
1909
1911
  };
1910
- }, Ps = new Proxy(
1912
+ }, xs = new Proxy(
1911
1913
  {},
1912
1914
  {
1913
1915
  /**
@@ -1918,120 +1920,120 @@ const ut = /* @__PURE__ */ new Set([
1918
1920
  * @returns The renderable component for the specified attribute.
1919
1921
  *
1920
1922
  */
1921
- get: (s, e) => (t) => d.is(t) ? Ot(e, t) : Lt(e, t)
1923
+ get: (s, e) => (t) => d.is(t) ? Dt(e, t) : Ot(e, t)
1922
1924
  }
1923
1925
  );
1924
1926
  export {
1925
- Qt as Async,
1926
- os as BindChecked,
1927
- ss as BindDate,
1928
- rs as BindDateTime,
1929
- ns as BindNumber,
1930
- is as BindText,
1927
+ Zt as Async,
1928
+ ls as BindChecked,
1929
+ rs as BindDate,
1930
+ ns as BindDateTime,
1931
+ is as BindNumber,
1932
+ os as BindText,
1931
1933
  L as BrowserContext,
1932
1934
  V as CLASS_PLACEHOLDER_ATTR,
1933
1935
  x as Computed,
1934
- us as Conjunction,
1935
- ps as DOMNode,
1936
- _e as El,
1937
- ve as ElNS,
1936
+ hs as Conjunction,
1937
+ gs as DOMNode,
1938
+ ve as El,
1939
+ Ee as ElNS,
1938
1940
  Y as ElementPosition,
1939
1941
  _ as Empty,
1940
- vt as Ensure,
1941
- gs as EnsureAll,
1942
- ys as ForEach,
1942
+ Et as Ensure,
1943
+ ms as EnsureAll,
1944
+ Ts as ForEach,
1943
1945
  b as Fragment,
1944
- jt as HeadlessAdapter,
1946
+ qt as HeadlessAdapter,
1945
1947
  O as HeadlessContext,
1946
- ct as HeadlessElement,
1947
- be as HeadlessPortal,
1948
- at as HeadlessText,
1949
- Ss as MapSignal,
1948
+ at as HeadlessElement,
1949
+ Se as HeadlessPortal,
1950
+ ut as HeadlessText,
1951
+ As as MapSignal,
1950
1952
  le as MemoryStore,
1951
- As as NotEmpty,
1952
- Et as OnBrowserCtx,
1953
- mt as OnChecked,
1954
- ds as OnCtx,
1953
+ _s as NotEmpty,
1954
+ wt as OnBrowserCtx,
1955
+ yt as OnChecked,
1956
+ ps as OnCtx,
1955
1957
  Z as OnDispose,
1956
- bs as OnElement,
1957
- Ts as OnHeadlessCtx,
1958
+ Ss as OnElement,
1959
+ bs as OnHeadlessCtx,
1958
1960
  G as OneOf,
1959
- Ce as OneOfField,
1960
- ls as OneOfKind,
1961
- cs as OneOfTuple,
1962
- as as OneOfType,
1963
- At as OneOfValue,
1964
- _s as Portal,
1965
- N as Prop,
1966
- vs as Provide,
1967
- ws as ProvideGlobalProbe,
1968
- Pt as ProvideProbe,
1969
- pe as ProviderNotFoundError,
1970
- Ge as RenderingError,
1971
- Le as Repeat,
1961
+ Pe as OneOfField,
1962
+ cs as OneOfKind,
1963
+ as as OneOfTuple,
1964
+ us as OneOfType,
1965
+ _t as OneOfValue,
1966
+ vs as Portal,
1967
+ R as Prop,
1968
+ Es as Provide,
1969
+ Cs as ProvideGlobalProbe,
1970
+ xt as ProvideProbe,
1971
+ ge as ProviderNotFoundError,
1972
+ Xe as RenderingError,
1973
+ Oe as Repeat,
1972
1974
  d as Signal,
1973
- Ee as Task,
1974
- Ft as TextNode,
1975
- ms as Unless,
1976
- hs as Use,
1977
- Cs as UseGlobalProbe,
1978
- xt as UseProbe,
1979
- _t as UseProvider,
1980
- fs as UseProviders,
1975
+ we as Task,
1976
+ Bt as TextNode,
1977
+ ys as Unless,
1978
+ fs as Use,
1979
+ Ps as UseGlobalProbe,
1980
+ Lt as UseProbe,
1981
+ vt as UseProvider,
1982
+ ds as UseProviders,
1981
1983
  y as Value,
1982
- xe as When,
1983
- Ct as WithProvider,
1984
- Es as WithProviders,
1985
- ge as _NODE_PLACEHOLDER_ATTR,
1986
- Je as _getSelfOrParentElement,
1987
- de as _isElement,
1988
- We as _makeGetter,
1989
- Ue as _makeSetter,
1990
- R as _removeDOMNode,
1991
- Ae as _signalText,
1992
- Se as _staticText,
1993
- It as animateSignal,
1994
- Be as animateSignals,
1995
- Ut as aria,
1984
+ Le as When,
1985
+ Pt as WithProvider,
1986
+ ws as WithProviders,
1987
+ me as _NODE_PLACEHOLDER_ATTR,
1988
+ Ge as _getSelfOrParentElement,
1989
+ pe as _isElement,
1990
+ Je as _makeGetter,
1991
+ We as _makeSetter,
1992
+ N as _removeDOMNode,
1993
+ _e as _signalText,
1994
+ Ae as _staticText,
1995
+ Rt as animateSignal,
1996
+ Ue as animateSignals,
1997
+ Wt as aria,
1996
1998
  M as attr,
1997
- Bt as dataAttr,
1998
- Zt as emitChecked,
1999
- Kt as emitPreventDefault,
2000
- ts as emitStopImmediatePropagation,
2001
- es as emitStopPropagation,
2002
- yt as emitValue,
2003
- bt as emitValueAsDate,
2004
- St as emitValueAsDateTime,
2005
- Tt as emitValueAsNumber,
2006
- Ve as endInterpolate,
1999
+ Ut as dataAttr,
2000
+ Kt as emitChecked,
2001
+ es as emitPreventDefault,
2002
+ ss as emitStopImmediatePropagation,
2003
+ ts as emitStopPropagation,
2004
+ Tt as emitValue,
2005
+ St as emitValueAsDate,
2006
+ At as emitValueAsDateTime,
2007
+ bt as emitValueAsNumber,
2008
+ je as endInterpolate,
2007
2009
  oe as getWindow,
2008
- je as guessInterpolate,
2009
- Gt as html,
2010
- Xt as input,
2011
- Re as interpolateDate,
2012
- Ie as interpolateNumber,
2010
+ qe as guessInterpolate,
2011
+ Xt as html,
2012
+ Yt as input,
2013
+ Ve as interpolateDate,
2014
+ Re as interpolateNumber,
2013
2015
  Ne as interpolateString,
2014
2016
  $t as localStorageProp,
2015
2017
  z as makeComputed,
2016
- Mt as makeComputedOf,
2018
+ Ht as makeComputedOf,
2017
2019
  Nt as makeComputedRecord,
2018
- Fe as makeEffect,
2019
- Ht as makeEffectOf,
2020
+ Be as makeEffect,
2021
+ kt as makeEffectOf,
2020
2022
  E as makeProp,
2021
- wt as makeProviderMark,
2023
+ Ct as makeProviderMark,
2022
2024
  W as makeSignal,
2023
- zt as math,
2024
- Jt as mathAttr,
2025
+ Qt as math,
2026
+ Gt as mathAttr,
2025
2027
  J as on,
2026
- De as probeMarker,
2027
- Rt as render,
2028
+ Me as probeMarker,
2029
+ Vt as render,
2028
2030
  Q as renderWithContext,
2029
2031
  f as renderableOfTNode,
2030
- qt as restoreTempoPlaceholders,
2031
- Vt as runHeadless,
2032
- kt as sessionStorageProp,
2032
+ Ft as restoreTempoPlaceholders,
2033
+ jt as runHeadless,
2034
+ It as sessionStorageProp,
2033
2035
  ce as storedProp,
2034
- Ps as style,
2035
- Yt as svg,
2036
- Wt as svgAttr
2036
+ xs as style,
2037
+ zt as svg,
2038
+ Jt as svgAttr
2037
2039
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tempots/dom",
3
- "version": "24.0.0-next.25",
3
+ "version": "24.0.0-next.26",
4
4
  "type": "module",
5
5
  "main": "./index.cjs",
6
6
  "module": "./index.js",