@tempots/dom 28.5.0 → 28.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var rt=Object.defineProperty;var Se=s=>{throw TypeError(s)};var nt=(s,e,t)=>e in s?rt(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var o=(s,e,t)=>nt(s,typeof e!="symbol"?e+"":e,t),be=(s,e,t)=>e.has(s)||Se("Cannot "+t);var F=(s,e,t)=>(be(s,e,"read from private field"),t?t.call(s):e.get(s)),Ae=(s,e,t)=>e.has(s)?Se("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(s):e.set(s,t),ee=(s,e,t,r)=>(be(s,e,"write to private field"),r?r.call(s,t):e.set(s,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ve=(s,e,t)=>s+(e-s)*t,Ee=97,Ce=(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 c=e.charCodeAt(i);isNaN(c)&&(c=Ee),n+=String.fromCharCode(l+(c-l)*t)}return n},Pe=(s,e,t)=>new Date(s.getTime()+(e.getTime()-s.getTime())*t),we=(s,e)=>e,xe=s=>typeof s=="number"?ve:typeof s=="string"?Ce:s instanceof Date?Pe:we;var C;class U{constructor(e,t){o(this,"counter");o(this,"isFirst");o(this,"isEven");o(this,"isOdd");Ae(this,C);o(this,"dispose",()=>{var e;(e=F(this,C))==null||e.dispose(),ee(this,C,void 0)});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 F(this,C)==null&&ee(this,C,this.total.map(e=>this.counter===e)),F(this,C)}}C=new WeakMap;const H=class H{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=>{if(this._disposed)return;const t=this._value;this.equals(t,e)||(this._value=e,this._onValueListeners.forEach(n=>n(e,t)))});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 w(()=>{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 w(()=>{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 w(()=>{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 w(()=>{try{const l=this.get(),c=e(l);return n=c??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=A(t,n);let l=0,c=new AbortController;return i.onDispose(this.on(async a=>{const u=++l;c.abort(),c=new AbortController;try{const h=await e(a,{abortSignal:c.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(A(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(H,"ofPromise",(e,t,r,n=(i,l)=>i===l)=>{const i=new H(t,n);return e.then(l=>i._setAndNotify(l)).catch(l=>{r!=null?i._setAndNotify(r(l)):console.error("Unhandled promise rejection in Signal.ofPromise:",l)}),i}),o(H,"is",e=>e!=null&&e.$__signal__===!0);let f=H;const it=typeof queueMicrotask=="function"?queueMicrotask:s=>Promise.resolve().then(s);class w 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;it(()=>{this._scheduleCount!==t||this._disposed||this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn()))})});o(this,"get",()=>(this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn())),this._value));this._fn=t,this.setDirty()}static is(t){return t!=null&&t.$__computed__===!0}get value(){return this.get()}}const z=class z extends f{constructor(){super(...arguments);o(this,"$__prop__",!0);o(this,"set",t=>{this._setAndNotify(t)});o(this,"update",t=>{this._setAndNotify(t(this.get()))});o(this,"reducer",(t,...r)=>{const n=this;return function i(l){const c=n.value;n.update(a=>t(a,l)),!n.equals(c,n.value)&&r.forEach(a=>a({previousState:c,state:n.value,action:l,dispatch:i}))}});o(this,"iso",(t,r,n=(i,l)=>i===l)=>{const i=new z(t(this.get()),n);return i.onDispose(this.on(l=>i.set(t(l)))),i.on(l=>this._setAndNotify(r(l))),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)}};o(z,"is",t=>t!=null&&t.$__prop__===!0);let N=z;const Q=(s,e,t=(r,n)=>r===n)=>{const r=new w(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 c=r;r=()=>{l?c():l=!0}}const n=Q(r,e),i=()=>{n.dispose(),t.abortSignal!=null&&t.abortSignal.removeEventListener("abort",i)};return t.abortSignal!=null&&t.abortSignal.addEventListener("abort",i),i},A=(s,e=(t,r)=>t===r)=>new N(s,e),$=(s,e=(t,r)=>t===r)=>new f(s,e),te=()=>typeof window<"u"?window:void 0,y={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 y.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}):A(s,t)},se=(...s)=>(e,t)=>{if(s.length===1)return y.toSignal(s[0]).map(e);const r=s.filter(n=>f.is(n));return Q(()=>e(...s.map(n=>y.get(n))),r,t)},ot=s=>{const e=Object.keys(s);return se(...Object.values(s))((...t)=>Object.fromEntries(e.map((r,n)=>[r,t[n]])))},lt=(...s)=>(e,t={})=>{const r=s.filter(n=>f.is(n));return Oe(()=>e(...s.map(y.get)),r,t)};class re{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 ne=({key:s,defaultValue:e,store:t,serialize:r=JSON.stringify,deserialize:n=JSON.parse,equals:i=(c,a)=>c===a,onLoad:l=c=>c})=>{const c=t.getItem(s),a=new N(c!=null?l(n(c)):typeof e=="function"?e():e,i);return a.on(u=>t.setItem(s,r(u))),a},ct=s=>{var e;return ne({...s,store:((e=te())==null?void 0:e.localStorage)??new re})},at=s=>{var e;return ne({...s,store:((e=te())==null?void 0:e.sessionStorage)??new re})};function _e(s){return typeof requestAnimationFrame=="function"?requestAnimationFrame(s):setTimeout(s,0)}const De=(s,e,t,r)=>{const n=(r==null?void 0:r.duration)??300,i=(r==null?void 0:r.easing)??(_=>_),l=(r==null?void 0:r.equals)??((_,B)=>_===B);let c=r==null?void 0:r.interpolate,a=s,u=e(),h=performance.now(),m=null,T=!0;const p=new w(e,l),g=A(s,l);g.onDispose(()=>{m!==null&&cancelAnimationFrame(m)}),g.onDispose(p.dispose),t.forEach(_=>{_.setDerivative(p),_.onDispose(g.dispose)});const P=_=>{u=_,h=performance.now(),a=g.value,T&&(T=!1,m=_e(ye))},ye=()=>{const B=(performance.now()-h)/y.get(n),st=i(B);c==null&&(c=xe(a));let Te=c(a,u,st);B>=1?(T=!0,Te=u):m=_e(ye),g.set(Te)};return p.on(P),g},ut=(s,e)=>{const{initialValue:t,...r}=e??{};return De(t??s.get(),s.get,[s],r)},Le=(s,e)=>{const t=Object.values(s).filter(f.is),r=Object.keys(s);return Q(()=>{const n={};for(const i of r)n[i]=y.get(s[i]);return e(n)},t)},ht=s=>Le(s,e=>e),dt=(s,e)=>{const t=A(s.get());let r=null;const n=s.on(i=>{r!=null&&clearTimeout(r),r=setTimeout(()=>{r=null,t.set(i)},typeof e=="function"?e(i):e)});return t.onDispose(()=>{n(),r!=null&&clearTimeout(r)}),t},ft=s=>(...e)=>se(s,...e)((t,...r)=>t(...r)),Me=new Set(["checked","disabled","hidden"]),He=new Set(["selected"]),Ne=new Set(["rowSpan","colSpan","tabIndex","valueAsNumber"]),ke=new Set(["valueAsDate"]),Ie=new Set(["value","textContent","innerText","innerHTML","outerHTML","className","classList"]),$e=(s,e)=>He.has(s)?t=>{t==null||t!==!0?e.removeAttribute(s):e.setAttribute(s,"")}:Me.has(s)?t=>{t==null?e[s]=null:e[s]=!!t}:Ne.has(s)?t=>{t==null?e[s]=null:e[s]=Number(t)}:ke.has(s)?t=>{t==null?e[s]=null:e[s]=t}:Ie.has(s)?t=>{t==null?e[s]=null:e[s]=String(t)}:t=>{t==null?e.removeAttribute(s):e.setAttribute(s,t)},Re=(s,e)=>He.has(s)?()=>e.hasAttribute(s):Me.has(s)?()=>!!e[s]:Ne.has(s)?()=>Number(e[s]):ke.has(s)?()=>e[s]:Ie.has(s)?()=>String(e[s]):()=>e.getAttribute(s),k=s=>{const e=s;e&&e.onblur&&(e.onblur=null),!(!s||s.ownerDocument===void 0)&&s.parentElement&&s.parentElement.removeChild(s)},Ve=s=>ie(s)?s:s.parentElement,ie=s=>s.nodeType===1;class oe extends Error{constructor(e){super(`Provider not found: ${e.description}`)}}class x{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 x(this.document,e,void 0,this.providers));o(this,"makePortal",e=>{const t=typeof e=="string"?this.document.querySelector(e):e;if(t==null)throw new Error(`Cannot find element by selector for portal: ${e}`);return this.withElement(t)});o(this,"withReference",e=>new x(this.document,this.element,e,this.providers));o(this,"setProvider",(e,t,r)=>new x(this.document,this.element,this.reference,{...this.providers,[e]:[t,r]}));o(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new oe(e);const[t,r]=this.providers[e];return{value:t,onUse:r}});o(this,"clear",e=>{e&&(this.reference!==void 0?k(this.reference):k(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)=>{const n=i=>t(i,this);return this.element.addEventListener(e,n,r),i=>{i&&this.element.removeEventListener(e,n,r)}});o(this,"isBrowserDOM",()=>!0);o(this,"isBrowser",()=>!0);o(this,"isHeadlessDOM",()=>!1);o(this,"isHeadless",()=>!1);o(this,"setStyle",(e,t)=>{this.element.style[e]=t});o(this,"getStyle",e=>this.element.style[e]);o(this,"makeAccessors",e=>({get:Re(e,this.element),set:$e(e,this.element)}));o(this,"getWindow",()=>this.document.defaultView);this.document=e,this.element=t,this.reference=r,this.providers=n}static of(e,t,r){return new x(e.ownerDocument,e,t,r)}}const je=s=>Symbol(s),Z=(s,e)=>{const t=s(e);return(r=!0)=>t(r)},pt=(s,e,{doc:t,clear:r,disposeWithParent:n=!0,providers:i={}}={})=>{const l=typeof e=="string"?(t??document).querySelector(e):e;if(l===null)throw new qe(`Cannot find element by selector for render: ${e}`);r!==!1&&(t??l.ownerDocument)!=null&&l.nodeType===1&&(l.innerHTML="");const c=Ve(l),a=ie(l)?void 0:l,u=x.of(c,a,i),h=Z(s,u);let m;return n&&(m=new MutationObserver(T=>{var p;(p=T[0])==null||p.removedNodes.forEach(g=>{g===l&&(m==null||m.disconnect(),h(l.nodeType!==1))})}),m.observe(l.parentElement,{childList:!0,subtree:!1,attributes:!1})),()=>{m==null||m.disconnect(),h(!0)}},mt=(s,{startUrl:e="https://example.com",selector:t,providers:r={}}={selector:"body"})=>{const n=y.toSignal(e).deriveProp(),i=new ce(t,void 0),l=new O(i,void 0,{currentURL:n},r);return{clear:Z(s(),l),root:i,currentURL:n}};class qe extends Error{constructor(e){super(e)}}const le="data-tts-node",I="data-tts-class",G="data-tts-style",J="data-tts-html",X="data-tts-text",Y="data-tts-attrs";class gt{constructor({select:e,getAttribute:t,setAttribute:r,getClass:n,setClass:i,getStyles:l,setStyles:c,appendHTML:a,getInnerHTML:u,setInnerHTML:h,getInnerText:m,setInnerText:T}){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=>{const i=typeof n.selector=="string"?this.select(n.selector):[n.selector];for(const l of i){if(l==null)throw new Error(`Cannot find element by selector for render: ${n.selector}`);if(n.hasChildren()&&this.appendHTML(l,n.contentToHTML(t)),n.hasInnerHTML()){if(t){const c=this.getInnerHTML(l);c!=null&&this.setAttribute(l,J,c)}this.setInnerHTML(l,n.getInnerHTML())}if(n.hasInnerText()){if(t){const c=this.getInnerText(l);c!=null&&this.setAttribute(l,X,c)}this.setInnerText(l,n.getInnerText())}if(n.hasClasses()){if(t){const c=this.getClass(l);c!=null&&this.setAttribute(l,I,c)}this.setClass(l,n.getClasses().join(" "))}if(n.hasStyles()){if(t){const c=this.getStyles(l);Object.keys(c).length>0&&this.setAttribute(l,G,JSON.stringify(c))}this.setStyles(l,n.getStyles())}if(n.hasAttributes()){const c=n.getAttributes();if(t){const a=[];c.forEach(([u])=>{const h=this.getAttribute(l,u);h!=null&&a.push([u,h])}),a.length>0&&this.setAttribute(l,Y,JSON.stringify(Object.fromEntries(a)))}c.forEach(([a,u])=>{this.setAttribute(l,a,u)})}}})});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=T}}const yt=()=>{document.querySelectorAll(`[${le}]`).forEach(k)},Tt=s=>{const e=s.getAttribute(I);s.removeAttribute(I),e!=null&&s.setAttribute("class",e)},St=()=>{document.querySelectorAll(`[${I}]`).forEach(e=>Tt(e))},bt=s=>{const e=s.getAttribute(J);s.removeAttribute(J),e!=null&&(s.innerHTML=e)},At=()=>{document.querySelectorAll(`[${J}]`).forEach(e=>bt(e))},Et=s=>{const e=s.getAttribute(X);s.removeAttribute(X),e!=null&&(s.innerText=e)},_t=()=>{document.querySelectorAll(`[${X}]`).forEach(e=>Et(e))},Be=s=>JSON.parse(s.replace(/&quot;/g,'"')),vt=s=>{const e=s.getAttribute(G);if(s.removeAttribute(G),e!=null){const t=Be(e);Object.entries(t).forEach(([r,n])=>{s.style.setProperty(r,n)})}},Ct=()=>{document.querySelectorAll(`[${G}]`).forEach(e=>vt(e))},Pt=s=>{const e=s.getAttribute(Y);if(s.removeAttribute(Y),e!=null){const t=Be(e);Object.entries(t).forEach(([r,n])=>{n==null?s.removeAttribute(r):s.setAttribute(r,n)})}},wt=()=>{document.querySelectorAll(`[${Y}]`).forEach(e=>Pt(e))},xt=()=>{yt(),St(),_t(),At(),Ct(),wt()},b=Symbol("class"),v=Symbol("style"),L=Symbol("handler"),Fe=()=>Math.random().toString(36).substring(2,15),Ot=s=>s.replace(/<[^>]*>?/g,"");class We{constructor(e){o(this,"id",Fe());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?Ot(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[b]!=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,n)=>{var a;const i=(a=this.properties)[L]??(a[L]={}),l=n!=null&&n.once?u=>{c(),t(u,r)}:u=>t(u,r);i[e]=[...i[e]??[],l];const c=()=>{const u=i[e]??[],h=u.indexOf(l);h!==-1&&(u.splice(h,1),u.length===0?(delete i[e],Object.keys(i).length===0&&delete this.properties[L]):i[e]=u,(n==null?void 0:n.signal)!=null&&n.signal.removeEventListener("abort",c))};return(n==null?void 0:n.signal)!=null&&n.signal.addEventListener("abort",c),c});o(this,"addClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[b]??(r[b]=[]);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)[b]??(r[b]=[]);e.forEach(n=>{const i=t.indexOf(n);i!==-1&&t.splice(i,1)}),t.length===0&&delete this.properties[b]});o(this,"getClasses",()=>this.properties[b]??[]);o(this,"getAttributes",()=>Object.entries(this.properties).filter(([e])=>!["innerText","innerHTML"].includes(e)));o(this,"getVisibleAttributes",()=>Reflect.ownKeys(this.properties).flatMap(e=>e===b?[["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 Dt=s=>s.replace(/"/g,"&quot;"),Lt=s=>s.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");class Ue extends We{constructor(t,r,n){super(n);o(this,"isPortal",()=>!1);o(this,"toHTML",(t=!1)=>{const r=this.children.map(a=>a.toHTML()).join(""),n=this.namespace?` xmlns="${this.namespace}"`:"";let i=null;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(" ")}"`:Mt.has(a)?` ${a}`:a==="innerHTML"?(i=u,""):a==="innerText"?(i=Lt(u),""):` ${a}="${Dt(u)}"`).join(""),c=t?` ${le}`:"";return Ht.has(this.tagName)&&r===""?`<${this.tagName}${n}${l}${c} />`:`<${this.tagName}${n}${l}${c}>${i??r}</${this.tagName}>`});this.tagName=t,this.namespace=r}}class ce extends We{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 Ge{constructor(e){o(this,"id",Fe());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 Ue(e,t,this.element);return this.appendOrInsert(r),new O(r,void 0,this.container,this.providers)});o(this,"makeChildText",e=>{const t=new Ge(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 ce(e,this.element);return this.appendOrInsert(t),new O(t,void 0,this.container,this.providers)});o(this,"setProvider",(e,t,r)=>new O(this.element,this.reference,this.container,{...this.providers,[e]:[t,r]}));o(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new oe(e);const[t,r]=this.providers[e];return{value:t,onUse:r}});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,this));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,"isBrowser",()=>!1);o(this,"isHeadlessDOM",()=>!0);o(this,"isHeadless",()=>!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 Mt=new Set(["checked","disabled","multiple","readonly","required","selected"]),Ht=new Set(["img","br","hr","input","link","meta"]),ae=s=>e=>e.makeChildText(s).clear,ue=s=>e=>{const t=e.makeChildText(s.value),r=s.on(t.setText);return n=>{r(),t.clear(n)}},Nt=s=>f.is(s)?ue(s):ae(s),S=(...s)=>e=>{const t=s.map(r=>d(r)(e));return r=>{t.forEach(n=>n(r))}},E=()=>()=>{},kt=s=>e=>(e.addClasses(s),t=>{t&&e.removeClasses(s)}),It=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 c=>{l(),c&&n(i)}},D=new Proxy({},{get:(s,e)=>e==="class"?t=>f.is(t)?It(t):kt((t??"").split(" ").filter(r=>r.length>0)):t=>f.is(t)?V(e,t):R(e,t)}),$t=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(`data-${e}`,t):R(`data-${e}`,t)}),Rt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(`aria-${e}`,t):R(`aria-${e}`,t)}),Vt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(e,t):R(e,t)}),jt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(e,t):R(e,t)}),d=s=>{if(s==null)return E;if(Array.isArray(s))return S(...s.map(d));if(typeof s=="string")return ae(s);if(f.is(s))return ue(s);if(typeof s=="function")return s;throw new Error(`Unknown type: '${typeof s}' for child: ${s}`)},he=(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)}},de=(s,e,...t)=>r=>{const n=r.makeChildElement(s,e),i=t.map(l=>d(l)(n));return l=>{i.forEach(c=>c(!1)),n.clear(l)}},qt=new Proxy({},{get:(s,e)=>(...t)=>he(e,t.flatMap(d))}),Bt=new Proxy({},{get:(s,e)=>(...t)=>he("input",D.type(e),...t)}),Ft="http://www.w3.org/2000/svg",Wt=new Proxy({},{get:(s,e)=>(...t)=>de(e,Ft,t.flatMap(d))}),Ut="http://www.w3.org/1998/Math/MathML",Gt=new Proxy({},{get:(s,e)=>(...t)=>de(e,Ut,t.flatMap(d))}),fe=(s,e)=>{if(typeof e=="function")return fe(s,{then:e});const t=e.pending!=null?d(e.pending()):E,r=e.then,n=e.error!=null?i=>d(e.error(i)):()=>E;return i=>{let l=!0;const c=s(),a=i.makeRef();let u=d(t)(a);return c.then(h=>{l&&(u(!0),u=d(r(h))(a))},h=>{l&&(u(!0),u=d(n(h))(a))}),h=>{l=!1,u(h),a.clear(h)}}},Jt=(s,e)=>fe(()=>s,e),Je=(s,e,t)=>r=>r.on(s,e,t),Xe=s=>Je("click",(e,t)=>{e.preventDefault();const r=e.target;setTimeout(()=>{const n=r.ownerDocument!=null?r==null?void 0:r.checked:void 0;n!=null&&s(!n,t)},0)}),j=new Proxy({},{get:(s,e)=>t=>Je(e,t)}),Ye=s=>e=>{const t=e.target;s(t.value)},ze=s=>e=>{const t=e.target;s(t.valueAsNumber)},Qe=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)},Xt=s=>e=>{const t=e.target;if(t.value===""){s(null);return}const r=t.value.split("-"),n=new Date(Number(r[0]),Number(r[1])-1,Number(r[2].substring(0,2)));s(n)},Ze=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)},Yt=s=>e=>{const t=e.target;if(t.value===""){s(null);return}const r=t.value.split("T");if(r.length!==2){s(null);return}const 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]??0)),i.setMinutes(Number(l[1]??0)),i.setSeconds(Number(l[2]??0)),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")=>S(D.valueAsDate(s),j[e](Qe(s.set))),ts=(s,e="input")=>S(D.valueAsDate(s),j[e](Ze(s.set))),ss=(s,e="input")=>S(D.valueAsNumber(s),j[e](ze(s.set))),rs=(s,e="input")=>S(D.value(s),j[e](Ye(s.set))),ns=s=>S(D.checked(s),Xe(s.set)),q=(s,e)=>{if(f.is(s))return r=>{const n=r.makeRef();let i,l;const c=s.map(h=>Object.keys(h)[0]);let a;const u=c.on(h=>{if(h!==a){a=h,l==null||l.dispose(),i==null||i(!0),l=s.map(T=>T[h]);const m=e[h](l);i=d(m)(n)}});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])))},pe=(s,e,t)=>q(y.map(s,r=>({[r[e]]:r})),t),is=(s,e)=>pe(s,"kind",e),os=(s,e)=>{const t=y.map(s,([r,n])=>({[r]:n}));return q(t,e)},ls=(s,e)=>pe(s,"type",e),Ke=(s,e)=>q(y.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 Ke(t.map(i=>i.isFirst?"first":i.isLast?"last":"other"),{first:r,last:n,other:s})},as=s=>e=>(e.appendOrInsert(s),t=>{t&&k(s)}),us=(s,e,t)=>{if(f.is(s)){const r=s;return n=>{const i=n.makeRef();let l=()=>{},c=!1,a=null;const u=r.on(h=>{h==null?(l(!0),l=d(t==null?void 0:t())(i),c=!1,a==null||a.dispose(),a=null):c?a.set(h):(a=A(h),l(!0),l=d(e(a))(i),c=!0)});return h=>{a==null||a.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):E}return d(e($(r)))}},hs=(...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()):E)(n);const l=s.map(()=>null),c=s.map(p=>f.is(p)?p.value!=null:p!=null);let a=null;const u=A(c.every(p=>p)),h=(p,g)=>{if(p.value!=null){if(l[g]==null){const P=A(p.value);l[g]=P}else l[g].value=p.value;c[g]=!0}else c[g]=!1};let m=s.length-1;const T=s.map((p,g)=>{if(!f.is(p)){const P=A(p);return l[g]=P,()=>{}}return p.on(()=>{h(p,g),m===0?u.value=c.every(P=>P):m--})});return u.on(p=>{a==null||a(!0),a=null,p?a=d(e(...l))(n):a=d((t==null?void 0:t())??E)(n)}),p=>{l.forEach(g=>g==null?void 0:g.dispose()),u.dispose(),T.forEach(g=>g()),a==null||a(p),n.clear(p)}},M=(...s)=>e=>t=>s.forEach(r=>r(t,e)),me=(s,e,t)=>{if(f.is(s)){const r=s;return n=>{const i=n.makeRef();let l=()=>{};const c=r.on(a=>{l(!0),a?l=d(e())(i):l=d(t==null?void 0:t())(i)});return a=>{l(a),c(),i.clear(a)}}}else{if(s){const n=e();return n!=null?d(n):E}return d(t==null?void 0:t())}},ds=(s,e,t)=>me(y.map(s,r=>!r),e,t),ge=(s,e,t)=>{if(t!=null)return ge(s,r=>{const n=new U(r.index,r.total.map(i=>i-1));return S(M(n.dispose),d(e(r)),me(r.isLast,()=>E,()=>t(n)))});if(f.is(s))return r=>{const n=s.derive(),i=r.makeRef(),l=[];return n.on(c=>{const a=l.splice(c);for(const u of a)u(!0);for(let u=l.length;u<c;u++){const h=new U(u,n);l.push(S(M(h.dispose),d(e(h)))(i))}}),c=>{n.dispose();for(const a of l)a(c);l.length=0,i.clear(c)}};{const r=$(s);return S(...Array.from({length:s},(n,i)=>i).map(n=>{const i=new U(n,r);return S(M(i.dispose),d(e(i)))}))}},fs=(s,e,t)=>{const r=y.map(s,i=>i.length),n=y.toSignal(s);return ge(r,i=>{const l=n.map(c=>c[i.index]);return S(M(l.dispose),d(e(l,i)))},t)},ps=(s,e)=>{if(f.is(s)){const t=s;return r=>{r=r.makeRef();const n=t.map(c=>d(e(c)));let i=()=>{};const l=n.on(c=>{i(!0),i=c(r)});return c=>{l(),i(c)}}}return d(e(s))},ms=(s,e,t=()=>E)=>q(y.map(s,r=>r.length>0?{notEmpty:r}:{whenEmpty:null}),{notEmpty:r=>e(r),whenEmpty:()=>t()}),gs=(s,e)=>t=>{const r=t.makePortal(s),n=Z(d(e),r);return()=>n(!0)},W=new Map,et=s=>({mark:je(`Probe(${s.description})`),create:({callback:e=()=>{},timeout:t=10}={})=>{const r=c=>{clearTimeout(n),W.delete(s),e(c)};if(W.has(s))throw new Error(`Probe already exists: ${s.description}`);const n=setTimeout(()=>r("timeout"),t),i={counter:0,timeoutId:n};return W.set(s,i),{value:()=>{clearTimeout(n);const c=W.get(s);c!=null&&--c.counter===0&&r("resolved")},dispose:()=>r("disposed"),onUse:()=>i.counter++}}}),ys=et(Symbol("GlobalProbe")),Ts=(s,e)=>t=>{const r=t.getStyle(s);return t.setStyle(s,e),n=>{n&&t.setStyle(s,r)}},Ss=(s,e)=>t=>{const r=t.getStyle(s),n=e.on(i=>t.setStyle(s,i));return i=>{n(),i&&t.setStyle(s,r)}},bs=new Proxy({},{get:(s,e)=>t=>f.is(t)?Ss(e,t):Ts(e,t)}),tt=s=>e=>{if(e.isBrowser()){const t=s(e);if(t!=null)return d(t)(e)}return()=>{}},As=s=>e=>{const t=s(e);return t==null?()=>{}:d(t)(e)},Es=s=>tt(e=>s(e.element)),_s=s=>e=>{if(e.isHeadlessDOM()){const t=s(e);if(t)return d(t)(e)}return()=>{}},K=s=>e=>{let t=e;function r(){return t}function n(c){t=c}const i=[],l=s({use:({mark:c})=>{const{value:a,onUse:u}=r().getProvider(c);return u==null||u(),a},set:({mark:c,create:a},u)=>{const{value:h,dispose:m,onUse:T}=a(u,r());i.push(m),n(r().setProvider(c,h,T))}});return l==null?()=>{}:S(d(l),M(()=>i.forEach(c=>c())))(r())},vs=(s,e,t)=>K(({set:r})=>(r(s,e),t())),Cs=(s,e)=>K(({use:t})=>e(t(s))),Ps=(...s)=>e=>K(({use:t})=>{const r=s.map(t);return e(...r)});exports.Async=Jt;exports.BindChecked=ns;exports.BindDate=es;exports.BindDateTime=ts;exports.BindNumber=ss;exports.BindText=rs;exports.BrowserContext=x;exports.CLASS_PLACEHOLDER_ATTR=I;exports.Computed=w;exports.Conjunction=cs;exports.DOMNode=as;exports.El=he;exports.ElNS=de;exports.ElementPosition=U;exports.Empty=E;exports.Ensure=us;exports.EnsureAll=hs;exports.ForEach=fs;exports.Fragment=S;exports.GlobalProbe=ys;exports.HeadlessAdapter=gt;exports.HeadlessContext=O;exports.HeadlessElement=Ue;exports.HeadlessPortal=ce;exports.HeadlessText=Ge;exports.MapSignal=ps;exports.MemoryStore=re;exports.NotEmpty=ms;exports.OnChecked=Xe;exports.OnDispose=M;exports.OneOf=q;exports.OneOfField=pe;exports.OneOfKind=is;exports.OneOfTuple=os;exports.OneOfType=ls;exports.OneOfValue=Ke;exports.Portal=gs;exports.Prop=N;exports.Provide=vs;exports.ProviderNotFoundError=oe;exports.RenderingError=qe;exports.Repeat=ge;exports.Signal=f;exports.Task=fe;exports.TextNode=Nt;exports.Unless=ds;exports.Use=Cs;exports.UseMany=Ps;exports.Value=y;exports.When=me;exports.WithBrowserCtx=tt;exports.WithCtx=As;exports.WithElement=Es;exports.WithHeadlessCtx=_s;exports.WithProvider=K;exports._NODE_PLACEHOLDER_ATTR=le;exports._getSelfOrParentElement=Ve;exports._isElement=ie;exports._makeGetter=Re;exports._makeSetter=$e;exports._removeDOMNode=k;exports._signalText=ue;exports._staticText=ae;exports.animateSignal=ut;exports.animateSignals=De;exports.aria=Rt;exports.attr=D;exports.bind=ft;exports.computed=Q;exports.computedOf=se;exports.computedRecord=Le;exports.dataAttr=$t;exports.delaySignal=dt;exports.effect=Oe;exports.effectOf=lt;exports.emitChecked=zt;exports.emitPreventDefault=Qt;exports.emitStopImmediatePropagation=Kt;exports.emitStopPropagation=Zt;exports.emitValue=Ye;exports.emitValueAsDate=Qe;exports.emitValueAsDateTime=Ze;exports.emitValueAsNullableDate=Xt;exports.emitValueAsNullableDateTime=Yt;exports.emitValueAsNumber=ze;exports.endInterpolate=we;exports.getWindow=te;exports.guessInterpolate=xe;exports.html=qt;exports.input=Bt;exports.interpolateDate=Pe;exports.interpolateNumber=ve;exports.interpolateString=Ce;exports.joinSignals=ot;exports.localStorageProp=ct;exports.makeProbe=et;exports.makeProviderMark=je;exports.math=Gt;exports.mathAttr=jt;exports.merge=ht;exports.on=j;exports.prop=A;exports.render=pt;exports.renderWithContext=Z;exports.renderableOfTNode=d;exports.restoreTempoPlaceholders=xt;exports.runHeadless=mt;exports.sessionStorageProp=at;exports.signal=$;exports.storedProp=ne;exports.style=bs;exports.svg=Wt;exports.svgAttr=Vt;
1
+ "use strict";var rt=Object.defineProperty;var Se=s=>{throw TypeError(s)};var nt=(s,e,t)=>e in s?rt(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var o=(s,e,t)=>nt(s,typeof e!="symbol"?e+"":e,t),be=(s,e,t)=>e.has(s)||Se("Cannot "+t);var F=(s,e,t)=>(be(s,e,"read from private field"),t?t.call(s):e.get(s)),Ae=(s,e,t)=>e.has(s)?Se("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(s):e.set(s,t),te=(s,e,t,r)=>(be(s,e,"write to private field"),r?r.call(s,t):e.set(s,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ve=(s,e,t)=>s+(e-s)*t,Ee=97,Ce=(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 c=e.charCodeAt(i);isNaN(c)&&(c=Ee),n+=String.fromCharCode(l+(c-l)*t)}return n},Pe=(s,e,t)=>new Date(s.getTime()+(e.getTime()-s.getTime())*t),we=(s,e)=>e,xe=s=>typeof s=="number"?ve:typeof s=="string"?Ce:s instanceof Date?Pe:we;var C;class U{constructor(e,t){o(this,"counter");o(this,"isFirst");o(this,"isEven");o(this,"isOdd");Ae(this,C);o(this,"dispose",()=>{var e;(e=F(this,C))==null||e.dispose(),te(this,C,void 0)});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 F(this,C)==null&&te(this,C,this.total.map(e=>this.counter===e)),F(this,C)}}C=new WeakMap;const H=class H{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=>{if(this._disposed)return;const t=this._value;this.equals(t,e)||(this._value=e,this._onValueListeners.forEach(n=>n(e,t)))});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 w(()=>{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 w(()=>{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 w(()=>{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 w(()=>{try{const l=this.get(),c=e(l);return n=c??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=A(t,n);let l=0,c=new AbortController;return i.onDispose(this.on(async a=>{const u=++l;c.abort(),c=new AbortController;try{const h=await e(a,{abortSignal:c.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(A(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(H,"ofPromise",(e,t,r,n=(i,l)=>i===l)=>{const i=new H(t,n);return e.then(l=>i._setAndNotify(l)).catch(l=>{r!=null?i._setAndNotify(r(l)):console.error("Unhandled promise rejection in Signal.ofPromise:",l)}),i}),o(H,"is",e=>e!=null&&e.$__signal__===!0);let f=H;const it=typeof queueMicrotask=="function"?queueMicrotask:s=>Promise.resolve().then(s);class w 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;it(()=>{this._scheduleCount!==t||this._disposed||this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn()))})});o(this,"get",()=>(this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn())),this._value));this._fn=t,this.setDirty()}static is(t){return t!=null&&t.$__computed__===!0}get value(){return this.get()}}const z=class z extends f{constructor(){super(...arguments);o(this,"$__prop__",!0);o(this,"set",t=>{this._setAndNotify(t)});o(this,"update",t=>{this._setAndNotify(t(this.get()))});o(this,"reducer",(t,...r)=>{const n=this;return function i(l){const c=n.value;n.update(a=>t(a,l)),!n.equals(c,n.value)&&r.forEach(a=>a({previousState:c,state:n.value,action:l,dispatch:i}))}});o(this,"iso",(t,r,n=(i,l)=>i===l)=>{const i=new z(t(this.get()),n);return i.onDispose(this.on(l=>i.set(t(l)))),i.on(l=>this._setAndNotify(r(l))),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)}};o(z,"is",t=>t!=null&&t.$__prop__===!0);let N=z;const Q=(s,e,t=(r,n)=>r===n)=>{const r=new w(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 c=r;r=()=>{l?c():l=!0}}const n=Q(r,e),i=()=>{n.dispose(),t.abortSignal!=null&&t.abortSignal.removeEventListener("abort",i)};return t.abortSignal!=null&&t.abortSignal.addEventListener("abort",i),i},A=(s,e=(t,r)=>t===r)=>new N(s,e),$=(s,e=(t,r)=>t===r)=>new f(s,e),se=()=>typeof window<"u"?window:void 0,y={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 y.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}):A(s,t)},Z=(...s)=>(e,t)=>{if(s.length===1)return y.toSignal(s[0]).map(e);const r=s.filter(n=>f.is(n));return Q(()=>e(...s.map(n=>y.get(n))),r,t)},ot=s=>{const e=Object.keys(s);return Z(...Object.values(s))((...t)=>Object.fromEntries(e.map((r,n)=>[r,t[n]])))},lt=(...s)=>(e,t={})=>{const r=s.filter(n=>f.is(n));return Oe(()=>e(...s.map(y.get)),r,t)};class re{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 ne=({key:s,defaultValue:e,store:t,serialize:r=JSON.stringify,deserialize:n=JSON.parse,equals:i=(c,a)=>c===a,onLoad:l=c=>c})=>{const c=t.getItem(s),a=new N(c!=null?l(n(c)):typeof e=="function"?e():e,i);return a.on(u=>t.setItem(s,r(u))),a},ct=s=>{var e;return ne({...s,store:((e=se())==null?void 0:e.localStorage)??new re})},at=s=>{var e;return ne({...s,store:((e=se())==null?void 0:e.sessionStorage)??new re})};function _e(s){return typeof requestAnimationFrame=="function"?requestAnimationFrame(s):setTimeout(s,0)}const De=(s,e,t,r)=>{const n=(r==null?void 0:r.duration)??300,i=(r==null?void 0:r.easing)??(_=>_),l=(r==null?void 0:r.equals)??((_,B)=>_===B);let c=r==null?void 0:r.interpolate,a=s,u=e(),h=performance.now(),m=null,T=!0;const p=new w(e,l),g=A(s,l);g.onDispose(()=>{m!==null&&cancelAnimationFrame(m)}),g.onDispose(p.dispose),t.forEach(_=>{_.setDerivative(p),_.onDispose(g.dispose)});const P=_=>{u=_,h=performance.now(),a=g.value,T&&(T=!1,m=_e(ye))},ye=()=>{const B=(performance.now()-h)/y.get(n),st=i(B);c==null&&(c=xe(a));let Te=c(a,u,st);B>=1?(T=!0,Te=u):m=_e(ye),g.set(Te)};return p.on(P),g},ut=(s,e)=>{const{initialValue:t,...r}=e??{};return De(t??s.get(),s.get,[s],r)},Le=(s,e)=>{const t=Object.values(s).filter(f.is),r=Object.keys(s);return Q(()=>{const n={};for(const i of r)n[i]=y.get(s[i]);return e(n)},t)},ht=s=>Le(s,e=>e),dt=(s,e)=>{const t=A(s.get());let r=null;const n=s.on(i=>{r!=null&&clearTimeout(r),r=setTimeout(()=>{r=null,t.set(i)},typeof e=="function"?e(i):e)});return t.onDispose(()=>{n(),r!=null&&clearTimeout(r)}),t},ft=s=>(...e)=>Z(s,...e)((t,...r)=>t(...r)),pt=(...s)=>Z(...s)((...e)=>e.find(t=>t!=null)),Me=new Set(["checked","disabled","hidden"]),He=new Set(["selected"]),Ne=new Set(["rowSpan","colSpan","tabIndex","valueAsNumber"]),ke=new Set(["valueAsDate"]),Ie=new Set(["value","textContent","innerText","innerHTML","outerHTML","className","classList"]),$e=(s,e)=>He.has(s)?t=>{t==null||t!==!0?e.removeAttribute(s):e.setAttribute(s,"")}:Me.has(s)?t=>{t==null?e[s]=null:e[s]=!!t}:Ne.has(s)?t=>{t==null?e[s]=null:e[s]=Number(t)}:ke.has(s)?t=>{t==null?e[s]=null:e[s]=t}:Ie.has(s)?t=>{t==null?e[s]=null:e[s]=String(t)}:t=>{t==null?e.removeAttribute(s):e.setAttribute(s,t)},Re=(s,e)=>He.has(s)?()=>e.hasAttribute(s):Me.has(s)?()=>!!e[s]:Ne.has(s)?()=>Number(e[s]):ke.has(s)?()=>e[s]:Ie.has(s)?()=>String(e[s]):()=>e.getAttribute(s),k=s=>{const e=s;e&&e.onblur&&(e.onblur=null),!(!s||s.ownerDocument===void 0)&&s.parentElement&&s.parentElement.removeChild(s)},Ve=s=>ie(s)?s:s.parentElement,ie=s=>s.nodeType===1;class oe extends Error{constructor(e){super(`Provider not found: ${e.description}`)}}class x{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 x(this.document,e,void 0,this.providers));o(this,"makePortal",e=>{const t=typeof e=="string"?this.document.querySelector(e):e;if(t==null)throw new Error(`Cannot find element by selector for portal: ${e}`);return this.withElement(t)});o(this,"withReference",e=>new x(this.document,this.element,e,this.providers));o(this,"setProvider",(e,t,r)=>new x(this.document,this.element,this.reference,{...this.providers,[e]:[t,r]}));o(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new oe(e);const[t,r]=this.providers[e];return{value:t,onUse:r}});o(this,"clear",e=>{e&&(this.reference!==void 0?k(this.reference):k(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)=>{const n=i=>t(i,this);return this.element.addEventListener(e,n,r),i=>{i&&this.element.removeEventListener(e,n,r)}});o(this,"isBrowserDOM",()=>!0);o(this,"isBrowser",()=>!0);o(this,"isHeadlessDOM",()=>!1);o(this,"isHeadless",()=>!1);o(this,"setStyle",(e,t)=>{this.element.style[e]=t});o(this,"getStyle",e=>this.element.style[e]);o(this,"makeAccessors",e=>({get:Re(e,this.element),set:$e(e,this.element)}));o(this,"getWindow",()=>this.document.defaultView);this.document=e,this.element=t,this.reference=r,this.providers=n}static of(e,t,r){return new x(e.ownerDocument,e,t,r)}}const je=s=>Symbol(s),K=(s,e)=>{const t=s(e);return(r=!0)=>t(r)},mt=(s,e,{doc:t,clear:r,disposeWithParent:n=!0,providers:i={}}={})=>{const l=typeof e=="string"?(t??document).querySelector(e):e;if(l===null)throw new qe(`Cannot find element by selector for render: ${e}`);r!==!1&&(t??l.ownerDocument)!=null&&l.nodeType===1&&(l.innerHTML="");const c=Ve(l),a=ie(l)?void 0:l,u=x.of(c,a,i),h=K(s,u);let m;return n&&(m=new MutationObserver(T=>{var p;(p=T[0])==null||p.removedNodes.forEach(g=>{g===l&&(m==null||m.disconnect(),h(l.nodeType!==1))})}),m.observe(l.parentElement,{childList:!0,subtree:!1,attributes:!1})),()=>{m==null||m.disconnect(),h(!0)}},gt=(s,{startUrl:e="https://example.com",selector:t,providers:r={}}={selector:"body"})=>{const n=y.toSignal(e).deriveProp(),i=new ce(t,void 0),l=new O(i,void 0,{currentURL:n},r);return{clear:K(s(),l),root:i,currentURL:n}};class qe extends Error{constructor(e){super(e)}}const le="data-tts-node",I="data-tts-class",G="data-tts-style",J="data-tts-html",X="data-tts-text",Y="data-tts-attrs";class yt{constructor({select:e,getAttribute:t,setAttribute:r,getClass:n,setClass:i,getStyles:l,setStyles:c,appendHTML:a,getInnerHTML:u,setInnerHTML:h,getInnerText:m,setInnerText:T}){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=>{const i=typeof n.selector=="string"?this.select(n.selector):[n.selector];for(const l of i){if(l==null)throw new Error(`Cannot find element by selector for render: ${n.selector}`);if(n.hasChildren()&&this.appendHTML(l,n.contentToHTML(t)),n.hasInnerHTML()){if(t){const c=this.getInnerHTML(l);c!=null&&this.setAttribute(l,J,c)}this.setInnerHTML(l,n.getInnerHTML())}if(n.hasInnerText()){if(t){const c=this.getInnerText(l);c!=null&&this.setAttribute(l,X,c)}this.setInnerText(l,n.getInnerText())}if(n.hasClasses()){if(t){const c=this.getClass(l);c!=null&&this.setAttribute(l,I,c)}this.setClass(l,n.getClasses().join(" "))}if(n.hasStyles()){if(t){const c=this.getStyles(l);Object.keys(c).length>0&&this.setAttribute(l,G,JSON.stringify(c))}this.setStyles(l,n.getStyles())}if(n.hasAttributes()){const c=n.getAttributes();if(t){const a=[];c.forEach(([u])=>{const h=this.getAttribute(l,u);h!=null&&a.push([u,h])}),a.length>0&&this.setAttribute(l,Y,JSON.stringify(Object.fromEntries(a)))}c.forEach(([a,u])=>{this.setAttribute(l,a,u)})}}})});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=T}}const Tt=()=>{document.querySelectorAll(`[${le}]`).forEach(k)},St=s=>{const e=s.getAttribute(I);s.removeAttribute(I),e!=null&&s.setAttribute("class",e)},bt=()=>{document.querySelectorAll(`[${I}]`).forEach(e=>St(e))},At=s=>{const e=s.getAttribute(J);s.removeAttribute(J),e!=null&&(s.innerHTML=e)},Et=()=>{document.querySelectorAll(`[${J}]`).forEach(e=>At(e))},_t=s=>{const e=s.getAttribute(X);s.removeAttribute(X),e!=null&&(s.innerText=e)},vt=()=>{document.querySelectorAll(`[${X}]`).forEach(e=>_t(e))},Be=s=>JSON.parse(s.replace(/&quot;/g,'"')),Ct=s=>{const e=s.getAttribute(G);if(s.removeAttribute(G),e!=null){const t=Be(e);Object.entries(t).forEach(([r,n])=>{s.style.setProperty(r,n)})}},Pt=()=>{document.querySelectorAll(`[${G}]`).forEach(e=>Ct(e))},wt=s=>{const e=s.getAttribute(Y);if(s.removeAttribute(Y),e!=null){const t=Be(e);Object.entries(t).forEach(([r,n])=>{n==null?s.removeAttribute(r):s.setAttribute(r,n)})}},xt=()=>{document.querySelectorAll(`[${Y}]`).forEach(e=>wt(e))},Ot=()=>{Tt(),bt(),vt(),Et(),Pt(),xt()},b=Symbol("class"),v=Symbol("style"),L=Symbol("handler"),Fe=()=>Math.random().toString(36).substring(2,15),Dt=s=>s.replace(/<[^>]*>?/g,"");class We{constructor(e){o(this,"id",Fe());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[b]!=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,n)=>{var a;const i=(a=this.properties)[L]??(a[L]={}),l=n!=null&&n.once?u=>{c(),t(u,r)}:u=>t(u,r);i[e]=[...i[e]??[],l];const c=()=>{const u=i[e]??[],h=u.indexOf(l);h!==-1&&(u.splice(h,1),u.length===0?(delete i[e],Object.keys(i).length===0&&delete this.properties[L]):i[e]=u,(n==null?void 0:n.signal)!=null&&n.signal.removeEventListener("abort",c))};return(n==null?void 0:n.signal)!=null&&n.signal.addEventListener("abort",c),c});o(this,"addClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[b]??(r[b]=[]);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)[b]??(r[b]=[]);e.forEach(n=>{const i=t.indexOf(n);i!==-1&&t.splice(i,1)}),t.length===0&&delete this.properties[b]});o(this,"getClasses",()=>this.properties[b]??[]);o(this,"getAttributes",()=>Object.entries(this.properties).filter(([e])=>!["innerText","innerHTML"].includes(e)));o(this,"getVisibleAttributes",()=>Reflect.ownKeys(this.properties).flatMap(e=>e===b?[["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 Lt=s=>s.replace(/"/g,"&quot;"),Mt=s=>s.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");class Ue extends We{constructor(t,r,n){super(n);o(this,"isPortal",()=>!1);o(this,"toHTML",(t=!1)=>{const r=this.children.map(a=>a.toHTML()).join(""),n=this.namespace?` xmlns="${this.namespace}"`:"";let i=null;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=Mt(u),""):` ${a}="${Lt(u)}"`).join(""),c=t?` ${le}`:"";return Nt.has(this.tagName)&&r===""?`<${this.tagName}${n}${l}${c} />`:`<${this.tagName}${n}${l}${c}>${i??r}</${this.tagName}>`});this.tagName=t,this.namespace=r}}class ce extends We{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 Ge{constructor(e){o(this,"id",Fe());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 Ue(e,t,this.element);return this.appendOrInsert(r),new O(r,void 0,this.container,this.providers)});o(this,"makeChildText",e=>{const t=new Ge(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 ce(e,this.element);return this.appendOrInsert(t),new O(t,void 0,this.container,this.providers)});o(this,"setProvider",(e,t,r)=>new O(this.element,this.reference,this.container,{...this.providers,[e]:[t,r]}));o(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new oe(e);const[t,r]=this.providers[e];return{value:t,onUse:r}});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,this));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,"isBrowser",()=>!1);o(this,"isHeadlessDOM",()=>!0);o(this,"isHeadless",()=>!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"]),ae=s=>e=>e.makeChildText(s).clear,ue=s=>e=>{const t=e.makeChildText(s.value),r=s.on(t.setText);return n=>{r(),t.clear(n)}},kt=s=>f.is(s)?ue(s):ae(s),S=(...s)=>e=>{const t=s.map(r=>d(r)(e));return r=>{t.forEach(n=>n(r))}},E=()=>()=>{},It=s=>e=>(e.addClasses(s),t=>{t&&e.removeClasses(s)}),$t=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 c=>{l(),c&&n(i)}},D=new Proxy({},{get:(s,e)=>e==="class"?t=>f.is(t)?$t(t):It((t??"").split(" ").filter(r=>r.length>0)):t=>f.is(t)?V(e,t):R(e,t)}),Rt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(`data-${e}`,t):R(`data-${e}`,t)}),Vt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(`aria-${e}`,t):R(`aria-${e}`,t)}),jt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(e,t):R(e,t)}),qt=new Proxy({},{get:(s,e)=>t=>f.is(t)?V(e,t):R(e,t)}),d=s=>{if(s==null)return E;if(Array.isArray(s))return S(...s.map(d));if(typeof s=="string")return ae(s);if(f.is(s))return ue(s);if(typeof s=="function")return s;throw new Error(`Unknown type: '${typeof s}' for child: ${s}`)},he=(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)}},de=(s,e,...t)=>r=>{const n=r.makeChildElement(s,e),i=t.map(l=>d(l)(n));return l=>{i.forEach(c=>c(!1)),n.clear(l)}},Bt=new Proxy({},{get:(s,e)=>(...t)=>he(e,t.flatMap(d))}),Ft=new Proxy({},{get:(s,e)=>(...t)=>he("input",D.type(e),...t)}),Wt="http://www.w3.org/2000/svg",Ut=new Proxy({},{get:(s,e)=>(...t)=>de(e,Wt,t.flatMap(d))}),Gt="http://www.w3.org/1998/Math/MathML",Jt=new Proxy({},{get:(s,e)=>(...t)=>de(e,Gt,t.flatMap(d))}),fe=(s,e)=>{if(typeof e=="function")return fe(s,{then:e});const t=e.pending!=null?d(e.pending()):E,r=e.then,n=e.error!=null?i=>d(e.error(i)):()=>E;return i=>{let l=!0;const c=s(),a=i.makeRef();let u=d(t)(a);return c.then(h=>{l&&(u(!0),u=d(r(h))(a))},h=>{l&&(u(!0),u=d(n(h))(a))}),h=>{l=!1,u(h),a.clear(h)}}},Xt=(s,e)=>fe(()=>s,e),Je=(s,e,t)=>r=>r.on(s,e,t),Xe=s=>Je("click",(e,t)=>{e.preventDefault();const r=e.target;setTimeout(()=>{const n=r.ownerDocument!=null?r==null?void 0:r.checked:void 0;n!=null&&s(!n,t)},0)}),j=new Proxy({},{get:(s,e)=>t=>Je(e,t)}),Ye=s=>e=>{const t=e.target;s(t.value)},ze=s=>e=>{const t=e.target;s(t.valueAsNumber)},Qe=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)},Yt=s=>e=>{const t=e.target;if(t.value===""){s(null);return}const r=t.value.split("-"),n=new Date(Number(r[0]),Number(r[1])-1,Number(r[2].substring(0,2)));s(n)},Ze=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;if(t.value===""){s(null);return}const r=t.value.split("T");if(r.length!==2){s(null);return}const 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]??0)),i.setMinutes(Number(l[1]??0)),i.setSeconds(Number(l[2]??0)),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")=>S(D.valueAsDate(s),j[e](Qe(s.set))),ss=(s,e="input")=>S(D.valueAsDate(s),j[e](Ze(s.set))),rs=(s,e="input")=>S(D.valueAsNumber(s),j[e](ze(s.set))),ns=(s,e="input")=>S(D.value(s),j[e](Ye(s.set))),is=s=>S(D.checked(s),Xe(s.set)),q=(s,e)=>{if(f.is(s))return r=>{const n=r.makeRef();let i,l;const c=s.map(h=>Object.keys(h)[0]);let a;const u=c.on(h=>{if(h!==a){a=h,l==null||l.dispose(),i==null||i(!0),l=s.map(T=>T[h]);const m=e[h](l);i=d(m)(n)}});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])))},pe=(s,e,t)=>q(y.map(s,r=>({[r[e]]:r})),t),os=(s,e)=>pe(s,"kind",e),ls=(s,e)=>{const t=y.map(s,([r,n])=>({[r]:n}));return q(t,e)},cs=(s,e)=>pe(s,"type",e),Ke=(s,e)=>q(y.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 Ke(t.map(i=>i.isFirst?"first":i.isLast?"last":"other"),{first:r,last:n,other:s})},us=s=>e=>(e.appendOrInsert(s),t=>{t&&k(s)}),hs=(s,e,t)=>{if(f.is(s)){const r=s;return n=>{const i=n.makeRef();let l=()=>{},c=!1,a=null;const u=r.on(h=>{h==null?(l(!0),l=d(t==null?void 0:t())(i),c=!1,a==null||a.dispose(),a=null):c?a.set(h):(a=A(h),l(!0),l=d(e(a))(i),c=!0)});return h=>{a==null||a.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):E}return d(e($(r)))}},ds=(...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()):E)(n);const l=s.map(()=>null),c=s.map(p=>f.is(p)?p.value!=null:p!=null);let a=null;const u=A(c.every(p=>p)),h=(p,g)=>{if(p.value!=null){if(l[g]==null){const P=A(p.value);l[g]=P}else l[g].value=p.value;c[g]=!0}else c[g]=!1};let m=s.length-1;const T=s.map((p,g)=>{if(!f.is(p)){const P=A(p);return l[g]=P,()=>{}}return p.on(()=>{h(p,g),m===0?u.value=c.every(P=>P):m--})});return u.on(p=>{a==null||a(!0),a=null,p?a=d(e(...l))(n):a=d((t==null?void 0:t())??E)(n)}),p=>{l.forEach(g=>g==null?void 0:g.dispose()),u.dispose(),T.forEach(g=>g()),a==null||a(p),n.clear(p)}},M=(...s)=>e=>t=>s.forEach(r=>r(t,e)),me=(s,e,t)=>{if(f.is(s)){const r=s;return n=>{const i=n.makeRef();let l=()=>{};const c=r.on(a=>{l(!0),a?l=d(e())(i):l=d(t==null?void 0:t())(i)});return a=>{l(a),c(),i.clear(a)}}}else{if(s){const n=e();return n!=null?d(n):E}return d(t==null?void 0:t())}},fs=(s,e,t)=>me(y.map(s,r=>!r),e,t),ge=(s,e,t)=>{if(t!=null)return ge(s,r=>{const n=new U(r.index,r.total.map(i=>i-1));return S(M(n.dispose),d(e(r)),me(r.isLast,()=>E,()=>t(n)))});if(f.is(s))return r=>{const n=s.derive(),i=r.makeRef(),l=[];return n.on(c=>{const a=l.splice(c);for(const u of a)u(!0);for(let u=l.length;u<c;u++){const h=new U(u,n);l.push(S(M(h.dispose),d(e(h)))(i))}}),c=>{n.dispose();for(const a of l)a(c);l.length=0,i.clear(c)}};{const r=$(s);return S(...Array.from({length:s},(n,i)=>i).map(n=>{const i=new U(n,r);return S(M(i.dispose),d(e(i)))}))}},ps=(s,e,t)=>{const r=y.map(s,i=>i.length),n=y.toSignal(s);return ge(r,i=>{const l=n.map(c=>c[i.index]);return S(M(l.dispose),d(e(l,i)))},t)},ms=(s,e)=>{if(f.is(s)){const t=s;return r=>{r=r.makeRef();const n=t.map(c=>d(e(c)));let i=()=>{};const l=n.on(c=>{i(!0),i=c(r)});return c=>{l(),i(c)}}}return d(e(s))},gs=(s,e,t=()=>E)=>q(y.map(s,r=>r.length>0?{notEmpty:r}:{whenEmpty:null}),{notEmpty:r=>e(r),whenEmpty:()=>t()}),ys=(s,e)=>t=>{const r=t.makePortal(s),n=K(d(e),r);return()=>n(!0)},W=new Map,et=s=>({mark:je(`Probe(${s.description})`),create:({callback:e=()=>{},timeout:t=10}={})=>{const r=c=>{clearTimeout(n),W.delete(s),e(c)};if(W.has(s))throw new Error(`Probe already exists: ${s.description}`);const n=setTimeout(()=>r("timeout"),t),i={counter:0,timeoutId:n};return W.set(s,i),{value:()=>{clearTimeout(n);const c=W.get(s);c!=null&&--c.counter===0&&r("resolved")},dispose:()=>r("disposed"),onUse:()=>i.counter++}}}),Ts=et(Symbol("GlobalProbe")),Ss=(s,e)=>t=>{const r=t.getStyle(s);return t.setStyle(s,e),n=>{n&&t.setStyle(s,r)}},bs=(s,e)=>t=>{const r=t.getStyle(s),n=e.on(i=>t.setStyle(s,i));return i=>{n(),i&&t.setStyle(s,r)}},As=new Proxy({},{get:(s,e)=>t=>f.is(t)?bs(e,t):Ss(e,t)}),tt=s=>e=>{if(e.isBrowser()){const t=s(e);if(t!=null)return d(t)(e)}return()=>{}},Es=s=>e=>{const t=s(e);return t==null?()=>{}:d(t)(e)},_s=s=>tt(e=>s(e.element)),vs=s=>e=>{if(e.isHeadlessDOM()){const t=s(e);if(t)return d(t)(e)}return()=>{}},ee=s=>e=>{let t=e;function r(){return t}function n(c){t=c}const i=[],l=s({use:({mark:c})=>{const{value:a,onUse:u}=r().getProvider(c);return u==null||u(),a},set:({mark:c,create:a},u)=>{const{value:h,dispose:m,onUse:T}=a(u,r());i.push(m),n(r().setProvider(c,h,T))}});return l==null?()=>{}:S(d(l),M(()=>i.forEach(c=>c())))(r())},Cs=(s,e,t)=>ee(({set:r})=>(r(s,e),t())),Ps=(s,e)=>ee(({use:t})=>e(t(s))),ws=(...s)=>e=>ee(({use:t})=>{const r=s.map(t);return e(...r)});exports.Async=Xt;exports.BindChecked=is;exports.BindDate=ts;exports.BindDateTime=ss;exports.BindNumber=rs;exports.BindText=ns;exports.BrowserContext=x;exports.CLASS_PLACEHOLDER_ATTR=I;exports.Computed=w;exports.Conjunction=as;exports.DOMNode=us;exports.El=he;exports.ElNS=de;exports.ElementPosition=U;exports.Empty=E;exports.Ensure=hs;exports.EnsureAll=ds;exports.ForEach=ps;exports.Fragment=S;exports.GlobalProbe=Ts;exports.HeadlessAdapter=yt;exports.HeadlessContext=O;exports.HeadlessElement=Ue;exports.HeadlessPortal=ce;exports.HeadlessText=Ge;exports.MapSignal=ms;exports.MemoryStore=re;exports.NotEmpty=gs;exports.OnChecked=Xe;exports.OnDispose=M;exports.OneOf=q;exports.OneOfField=pe;exports.OneOfKind=os;exports.OneOfTuple=ls;exports.OneOfType=cs;exports.OneOfValue=Ke;exports.Portal=ys;exports.Prop=N;exports.Provide=Cs;exports.ProviderNotFoundError=oe;exports.RenderingError=qe;exports.Repeat=ge;exports.Signal=f;exports.Task=fe;exports.TextNode=kt;exports.Unless=fs;exports.Use=Ps;exports.UseMany=ws;exports.Value=y;exports.When=me;exports.WithBrowserCtx=tt;exports.WithCtx=Es;exports.WithElement=_s;exports.WithHeadlessCtx=vs;exports.WithProvider=ee;exports._NODE_PLACEHOLDER_ATTR=le;exports._getSelfOrParentElement=Ve;exports._isElement=ie;exports._makeGetter=Re;exports._makeSetter=$e;exports._removeDOMNode=k;exports._signalText=ue;exports._staticText=ae;exports.animateSignal=ut;exports.animateSignals=De;exports.aria=Vt;exports.attr=D;exports.bind=ft;exports.coalesce=pt;exports.computed=Q;exports.computedOf=Z;exports.computedRecord=Le;exports.dataAttr=Rt;exports.delaySignal=dt;exports.effect=Oe;exports.effectOf=lt;exports.emitChecked=Qt;exports.emitPreventDefault=Zt;exports.emitStopImmediatePropagation=es;exports.emitStopPropagation=Kt;exports.emitValue=Ye;exports.emitValueAsDate=Qe;exports.emitValueAsDateTime=Ze;exports.emitValueAsNullableDate=Yt;exports.emitValueAsNullableDateTime=zt;exports.emitValueAsNumber=ze;exports.endInterpolate=we;exports.getWindow=se;exports.guessInterpolate=xe;exports.html=Bt;exports.input=Ft;exports.interpolateDate=Pe;exports.interpolateNumber=ve;exports.interpolateString=Ce;exports.joinSignals=ot;exports.localStorageProp=ct;exports.makeProbe=et;exports.makeProviderMark=je;exports.math=Jt;exports.mathAttr=qt;exports.merge=ht;exports.on=j;exports.prop=A;exports.render=mt;exports.renderWithContext=K;exports.renderableOfTNode=d;exports.restoreTempoPlaceholders=Ot;exports.runHeadless=gt;exports.sessionStorageProp=at;exports.signal=$;exports.storedProp=ne;exports.style=As;exports.svg=Ut;exports.svgAttr=jt;
package/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  var He = Object.defineProperty;
2
- var re = (s) => {
2
+ var ne = (s) => {
3
3
  throw TypeError(s);
4
4
  };
5
5
  var ke = (s, e, t) => e in s ? He(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), ne = (s, e, t) => e.has(s) || re("Cannot " + t);
7
- var I = (s, e, t) => (ne(s, e, "read from private field"), t ? t.call(s) : e.get(s)), ie = (s, e, t) => e.has(s) ? re("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(s) : e.set(s, t), z = (s, e, t, r) => (ne(s, e, "write to private field"), r ? r.call(s, t) : e.set(s, t), t);
6
+ var o = (s, e, t) => ke(s, typeof e != "symbol" ? e + "" : e, t), ie = (s, e, t) => e.has(s) || ne("Cannot " + t);
7
+ var I = (s, e, t) => (ie(s, e, "read from private field"), t ? t.call(s) : e.get(s)), oe = (s, e, t) => e.has(s) ? ne("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(s) : e.set(s, t), z = (s, e, t, r) => (ie(s, e, "write to private field"), r ? r.call(s, t) : e.set(s, t), t);
8
8
  const Ne = (s, e, t) => s + (e - s) * t;
9
9
  const $e = (s, e, t) => {
10
10
  const r = Math.max(s.length, e.length);
@@ -44,7 +44,7 @@ class Q {
44
44
  * @returns `true` if the counter is odd, `false` otherwise.
45
45
  */
46
46
  o(this, "isOdd");
47
- ie(this, w);
47
+ oe(this, w);
48
48
  o(this, "dispose", () => {
49
49
  var e;
50
50
  (e = I(this, w)) == null || e.dispose(), z(this, w, void 0);
@@ -619,7 +619,7 @@ const Z = (s, e, t = (r, n) => r === n) => {
619
619
  n.dispose(), t.abortSignal != null && t.abortSignal.removeEventListener("abort", i);
620
620
  };
621
621
  return t.abortSignal != null && t.abortSignal.addEventListener("abort", i), i;
622
- }, _ = (s, e = (t, r) => t === r) => new j(s, e), G = (s, e = (t, r) => t === r) => new d(s, e), le = () => (
622
+ }, _ = (s, e = (t, r) => t === r) => new j(s, e), G = (s, e = (t, r) => t === r) => new d(s, e), ce = () => (
623
623
  /* c8 ignore next */
624
624
  typeof window < "u" ? window : void 0
625
625
  ), y = {
@@ -693,7 +693,7 @@ const Z = (s, e, t = (r, n) => r === n) => {
693
693
  autoDisposeProp: e = !0,
694
694
  equals: t
695
695
  } = {}) => d.is(s) ? s.deriveProp({ autoDisposeProp: e, equals: t }) : _(s, t)
696
- }, ce = (...s) => (e, t) => {
696
+ }, K = (...s) => (e, t) => {
697
697
  if (s.length === 1)
698
698
  return y.toSignal(s[0]).map(e);
699
699
  const r = s.filter((n) => d.is(n));
@@ -704,7 +704,7 @@ const Z = (s, e, t = (r, n) => r === n) => {
704
704
  );
705
705
  }, Pt = (s) => {
706
706
  const e = Object.keys(s);
707
- return ce(...Object.values(s))(
707
+ return K(...Object.values(s))(
708
708
  (...t) => Object.fromEntries(e.map((r, n) => [r, t[n]]))
709
709
  );
710
710
  }, Lt = (...s) => (e, t = {}) => {
@@ -753,17 +753,17 @@ const ue = ({
753
753
  return ue({
754
754
  ...s,
755
755
  /* c8 ignore next 3 */
756
- store: ((e = le()) == null ? void 0 : e.localStorage) ?? new ae()
756
+ store: ((e = ce()) == null ? void 0 : e.localStorage) ?? new ae()
757
757
  });
758
758
  }, Ot = (s) => {
759
759
  var e;
760
760
  return ue({
761
761
  ...s,
762
762
  /* c8 ignore next 3 */
763
- store: ((e = le()) == null ? void 0 : e.sessionStorage) ?? new ae()
763
+ store: ((e = ce()) == null ? void 0 : e.sessionStorage) ?? new ae()
764
764
  });
765
765
  };
766
- function oe(s) {
766
+ function le(s) {
767
767
  return typeof requestAnimationFrame == "function" ? requestAnimationFrame(s) : setTimeout(s, 0);
768
768
  }
769
769
  const Fe = (s, e, t, r) => {
@@ -776,12 +776,12 @@ const Fe = (s, e, t, r) => {
776
776
  A.setDerivative(p), A.onDispose(m.dispose);
777
777
  });
778
778
  const C = (A) => {
779
- u = A, h = performance.now(), a = m.value, T && (T = !1, g = oe(te));
780
- }, te = () => {
779
+ u = A, h = performance.now(), a = m.value, T && (T = !1, g = le(se));
780
+ }, se = () => {
781
781
  const $ = (performance.now() - h) / y.get(n), Me = i($);
782
782
  c == null && (c = je(a));
783
- let se = c(a, u, Me);
784
- $ >= 1 ? (T = !0, se = u) : g = oe(te), m.set(se);
783
+ let re = c(a, u, Me);
784
+ $ >= 1 ? (T = !0, re = u) : g = le(se), m.set(re);
785
785
  };
786
786
  return p.on(C), m;
787
787
  }, Mt = (s, e) => {
@@ -815,10 +815,10 @@ const Fe = (s, e, t, r) => {
815
815
  return t.onDispose(() => {
816
816
  n(), r != null && clearTimeout(r);
817
817
  }), t;
818
- }, Nt = (s) => (...e) => ce(
818
+ }, Nt = (s) => (...e) => K(
819
819
  s,
820
820
  ...e
821
- )((t, ...r) => t(...r)), he = /* @__PURE__ */ new Set(["checked", "disabled", "hidden"]), fe = /* @__PURE__ */ new Set(["selected"]), de = /* @__PURE__ */ new Set([
821
+ )((t, ...r) => t(...r)), $t = (...s) => K(...s)((...e) => e.find((t) => t != null)), he = /* @__PURE__ */ new Set(["checked", "disabled", "hidden"]), fe = /* @__PURE__ */ new Set(["selected"]), de = /* @__PURE__ */ new Set([
822
822
  "rowSpan",
823
823
  "colSpan",
824
824
  "tabIndex",
@@ -1120,17 +1120,17 @@ class L {
1120
1120
  return new L(e.ownerDocument, e, t, r);
1121
1121
  }
1122
1122
  }
1123
- const Ge = (s) => Symbol(s), K = (s, e) => {
1123
+ const Ge = (s) => Symbol(s), ee = (s, e) => {
1124
1124
  const t = s(e);
1125
1125
  return (r = !0) => t(r);
1126
- }, $t = (s, e, { doc: t, clear: r, disposeWithParent: n = !0, providers: i = {} } = {}) => {
1126
+ }, It = (s, e, { doc: t, clear: r, disposeWithParent: n = !0, providers: i = {} } = {}) => {
1127
1127
  const l = typeof e == "string" ? (t ?? document).querySelector(e) : e;
1128
1128
  if (l === null)
1129
1129
  throw new Xe(
1130
1130
  `Cannot find element by selector for render: ${e}`
1131
1131
  );
1132
1132
  r !== !1 && (t ?? l.ownerDocument) != null && l.nodeType === 1 && (l.innerHTML = "");
1133
- const c = Je(l), a = me(l) ? void 0 : l, u = L.of(c, a, i), h = K(s, u);
1133
+ const c = Je(l), a = me(l) ? void 0 : l, u = L.of(c, a, i), h = ee(s, u);
1134
1134
  let g;
1135
1135
  return n && (g = new MutationObserver((T) => {
1136
1136
  var p;
@@ -1144,7 +1144,7 @@ const Ge = (s) => Symbol(s), K = (s, e) => {
1144
1144
  })), () => {
1145
1145
  g == null || g.disconnect(), h(!0);
1146
1146
  };
1147
- }, It = (s, {
1147
+ }, Rt = (s, {
1148
1148
  startUrl: e = "https://example.com",
1149
1149
  selector: t,
1150
1150
  providers: r = {}
@@ -1153,7 +1153,7 @@ const Ge = (s) => Symbol(s), K = (s, e) => {
1153
1153
  }) => {
1154
1154
  const n = y.toSignal(e).deriveProp(), i = new _e(t, void 0), l = new D(i, void 0, { currentURL: n }, r);
1155
1155
  return {
1156
- clear: K(s(), l),
1156
+ clear: ee(s(), l),
1157
1157
  root: i,
1158
1158
  currentURL: n
1159
1159
  };
@@ -1164,7 +1164,7 @@ class Xe extends Error {
1164
1164
  }
1165
1165
  }
1166
1166
  const Te = "data-tts-node", q = "data-tts-class", F = "data-tts-style", B = "data-tts-html", W = "data-tts-text", U = "data-tts-attrs";
1167
- class Rt {
1167
+ class jt {
1168
1168
  constructor({
1169
1169
  select: e,
1170
1170
  getAttribute: t,
@@ -1360,7 +1360,7 @@ const Ye = () => {
1360
1360
  }
1361
1361
  }, it = () => {
1362
1362
  document.querySelectorAll(`[${U}]`).forEach((e) => nt(e));
1363
- }, jt = () => {
1363
+ }, Vt = () => {
1364
1364
  Ye(), Qe(), tt(), Ke(), rt(), it();
1365
1365
  }, S = Symbol("class"), E = Symbol("style"), x = Symbol("handler"), Se = () => Math.random().toString(36).substring(2, 15), ot = (s) => s.replace(/<[^>]*>?/g, "");
1366
1366
  class Ae {
@@ -1592,7 +1592,7 @@ const ht = /* @__PURE__ */ new Set([
1592
1592
  return (n) => {
1593
1593
  r(), t.clear(n);
1594
1594
  };
1595
- }, Vt = (s) => d.is(s) ? Ee(s) : ve(s), b = (...s) => (e) => {
1595
+ }, qt = (s) => d.is(s) ? Ee(s) : ve(s), b = (...s) => (e) => {
1596
1596
  const t = s.map((r) => f(r)(e));
1597
1597
  return (r) => {
1598
1598
  t.forEach((n) => n(r));
@@ -1643,7 +1643,7 @@ const ht = /* @__PURE__ */ new Set([
1643
1643
  t
1644
1644
  )
1645
1645
  }
1646
- ), qt = new Proxy(
1646
+ ), Ft = new Proxy(
1647
1647
  {},
1648
1648
  {
1649
1649
  /**
@@ -1659,7 +1659,7 @@ const ht = /* @__PURE__ */ new Set([
1659
1659
  t
1660
1660
  ) : k(`data-${e}`, t)
1661
1661
  }
1662
- ), Ft = new Proxy(
1662
+ ), Bt = new Proxy(
1663
1663
  {},
1664
1664
  {
1665
1665
  /**
@@ -1678,7 +1678,7 @@ const ht = /* @__PURE__ */ new Set([
1678
1678
  t
1679
1679
  )
1680
1680
  }
1681
- ), Bt = new Proxy(
1681
+ ), Wt = new Proxy(
1682
1682
  {},
1683
1683
  {
1684
1684
  /**
@@ -1697,7 +1697,7 @@ const ht = /* @__PURE__ */ new Set([
1697
1697
  t
1698
1698
  )
1699
1699
  }
1700
- ), Wt = new Proxy(
1700
+ ), Ut = new Proxy(
1701
1701
  {},
1702
1702
  {
1703
1703
  /**
@@ -1737,7 +1737,7 @@ const ht = /* @__PURE__ */ new Set([
1737
1737
  return (l) => {
1738
1738
  i.forEach((c) => c(!1)), n.clear(l);
1739
1739
  };
1740
- }, Ut = new Proxy(
1740
+ }, Jt = new Proxy(
1741
1741
  {},
1742
1742
  {
1743
1743
  /**
@@ -1747,7 +1747,7 @@ const ht = /* @__PURE__ */ new Set([
1747
1747
  */
1748
1748
  get: (s, e) => (...t) => we(e, t.flatMap(f))
1749
1749
  }
1750
- ), Jt = new Proxy(
1750
+ ), Gt = new Proxy(
1751
1751
  {},
1752
1752
  {
1753
1753
  /**
@@ -1757,7 +1757,7 @@ const ht = /* @__PURE__ */ new Set([
1757
1757
  */
1758
1758
  get: (s, e) => (...t) => we("input", O.type(e), ...t)
1759
1759
  }
1760
- ), gt = "http://www.w3.org/2000/svg", Gt = new Proxy(
1760
+ ), gt = "http://www.w3.org/2000/svg", Xt = new Proxy(
1761
1761
  {},
1762
1762
  {
1763
1763
  /**
@@ -1767,7 +1767,7 @@ const ht = /* @__PURE__ */ new Set([
1767
1767
  */
1768
1768
  get: (s, e) => (...t) => Ce(e, gt, t.flatMap(f))
1769
1769
  }
1770
- ), mt = "http://www.w3.org/1998/Math/MathML", Xt = new Proxy(
1770
+ ), mt = "http://www.w3.org/1998/Math/MathML", Yt = new Proxy(
1771
1771
  {},
1772
1772
  {
1773
1773
  /**
@@ -1796,7 +1796,7 @@ const ht = /* @__PURE__ */ new Set([
1796
1796
  l = !1, u(h), a.clear(h);
1797
1797
  };
1798
1798
  };
1799
- }, Yt = (s, e) => xe(() => s, e), Pe = (s, e, t) => (r) => r.on(s, e, t), yt = (s) => Pe("click", (e, t) => {
1799
+ }, zt = (s, e) => xe(() => s, e), Pe = (s, e, t) => (r) => r.on(s, e, t), yt = (s) => Pe("click", (e, t) => {
1800
1800
  e.preventDefault();
1801
1801
  const r = e.target;
1802
1802
  setTimeout(() => {
@@ -1829,7 +1829,7 @@ const ht = /* @__PURE__ */ new Set([
1829
1829
  Number(r[2].substring(0, 2))
1830
1830
  );
1831
1831
  s(n);
1832
- }, zt = (s) => (e) => {
1832
+ }, Qt = (s) => (e) => {
1833
1833
  const t = e.target;
1834
1834
  if (t.value === "") {
1835
1835
  s(null);
@@ -1851,7 +1851,7 @@ const ht = /* @__PURE__ */ new Set([
1851
1851
  Number(n[2])
1852
1852
  ), l = r[1].split(":");
1853
1853
  i.setHours(Number(l[0])), i.setMinutes(Number(l[1])), i.setSeconds(Number(l[2])), s(i);
1854
- }, Qt = (s) => (e) => {
1854
+ }, Zt = (s) => (e) => {
1855
1855
  const t = e.target;
1856
1856
  if (t.value === "") {
1857
1857
  s(null);
@@ -1868,16 +1868,16 @@ const ht = /* @__PURE__ */ new Set([
1868
1868
  Number(n[2])
1869
1869
  ), l = r[1].split(":");
1870
1870
  i.setHours(Number(l[0] ?? 0)), i.setMinutes(Number(l[1] ?? 0)), i.setSeconds(Number(l[2] ?? 0)), s(i);
1871
- }, Zt = (s) => (e) => {
1871
+ }, Kt = (s) => (e) => {
1872
1872
  const t = e.target;
1873
1873
  s(t.checked);
1874
- }, Kt = (s) => (e) => {
1875
- e.preventDefault(), s();
1876
1874
  }, es = (s) => (e) => {
1877
- e.stopPropagation(), s();
1875
+ e.preventDefault(), s();
1878
1876
  }, ts = (s) => (e) => {
1877
+ e.stopPropagation(), s();
1878
+ }, ss = (s) => (e) => {
1879
1879
  e.stopImmediatePropagation(), s();
1880
- }, ss = (s, e = "input") => b(O.valueAsDate(s), X[e](St(s.set))), rs = (s, e = "input") => b(O.valueAsDate(s), X[e](At(s.set))), ns = (s, e = "input") => b(O.valueAsNumber(s), X[e](bt(s.set))), is = (s, e = "input") => b(O.value(s), X[e](Tt(s.set))), os = (s) => b(O.checked(s), yt(s.set)), Y = (s, e) => {
1880
+ }, rs = (s, e = "input") => b(O.valueAsDate(s), X[e](St(s.set))), ns = (s, e = "input") => b(O.valueAsDate(s), X[e](At(s.set))), is = (s, e = "input") => b(O.valueAsNumber(s), X[e](bt(s.set))), os = (s, e = "input") => b(O.value(s), X[e](Tt(s.set))), ls = (s) => b(O.checked(s), yt(s.set)), Y = (s, e) => {
1881
1881
  if (d.is(s))
1882
1882
  return (r) => {
1883
1883
  const n = r.makeRef();
@@ -1901,13 +1901,13 @@ const ht = /* @__PURE__ */ new Set([
1901
1901
  y.map(s, (r) => ({ [r[e]]: r })),
1902
1902
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
1903
1903
  t
1904
- ), ls = (s, e) => Le(s, "kind", e), cs = (s, e) => {
1904
+ ), cs = (s, e) => Le(s, "kind", e), as = (s, e) => {
1905
1905
  const t = y.map(s, ([r, n]) => ({ [r]: n }));
1906
1906
  return Y(t, e);
1907
- }, as = (s, e) => Le(s, "type", e), _t = (s, e) => Y(
1907
+ }, us = (s, e) => Le(s, "type", e), _t = (s, e) => Y(
1908
1908
  y.map(s, (t) => ({ [t]: !0 })),
1909
1909
  e
1910
- ), us = (s, e = {}) => (t) => {
1910
+ ), hs = (s, e = {}) => (t) => {
1911
1911
  const r = (e == null ? void 0 : e.firstSeparator) ?? s, n = (e == null ? void 0 : e.lastSeparator) ?? s;
1912
1912
  return _t(
1913
1913
  t.map((i) => i.isFirst ? "first" : i.isLast ? "last" : "other"),
@@ -1917,9 +1917,9 @@ const ht = /* @__PURE__ */ new Set([
1917
1917
  other: s
1918
1918
  }
1919
1919
  );
1920
- }, hs = (s) => (e) => (e.appendOrInsert(s), (t) => {
1920
+ }, fs = (s) => (e) => (e.appendOrInsert(s), (t) => {
1921
1921
  t && V(s);
1922
- }), fs = (s, e, t) => {
1922
+ }), ds = (s, e, t) => {
1923
1923
  if (d.is(s)) {
1924
1924
  const r = s;
1925
1925
  return (n) => {
@@ -1943,7 +1943,7 @@ const ht = /* @__PURE__ */ new Set([
1943
1943
  }
1944
1944
  return f(e(G(r)));
1945
1945
  }
1946
- }, ds = (...s) => (e, t) => (r) => {
1946
+ }, ps = (...s) => (e, t) => (r) => {
1947
1947
  const n = r.makeRef();
1948
1948
  if (s.some(
1949
1949
  (p) => !d.is(p) && p == null
@@ -2003,7 +2003,7 @@ const ht = /* @__PURE__ */ new Set([
2003
2003
  }
2004
2004
  return f(t == null ? void 0 : t());
2005
2005
  }
2006
- }, ps = (s, e, t) => De(
2006
+ }, gs = (s, e, t) => De(
2007
2007
  y.map(s, (r) => !r),
2008
2008
  e,
2009
2009
  t
@@ -2059,7 +2059,7 @@ const ht = /* @__PURE__ */ new Set([
2059
2059
  })
2060
2060
  );
2061
2061
  }
2062
- }, gs = (s, e, t) => {
2062
+ }, ms = (s, e, t) => {
2063
2063
  const r = y.map(s, (i) => i.length), n = y.toSignal(s);
2064
2064
  return Oe(
2065
2065
  r,
@@ -2072,7 +2072,7 @@ const ht = /* @__PURE__ */ new Set([
2072
2072
  },
2073
2073
  t
2074
2074
  );
2075
- }, ms = (s, e) => {
2075
+ }, ys = (s, e) => {
2076
2076
  if (d.is(s)) {
2077
2077
  const t = s;
2078
2078
  return (r) => {
@@ -2089,7 +2089,7 @@ const ht = /* @__PURE__ */ new Set([
2089
2089
  };
2090
2090
  }
2091
2091
  return f(e(s));
2092
- }, ys = (s, e, t = () => v) => Y(
2092
+ }, Ts = (s, e, t = () => v) => Y(
2093
2093
  y.map(
2094
2094
  s,
2095
2095
  (r) => r.length > 0 ? { notEmpty: r } : { whenEmpty: null }
@@ -2098,8 +2098,8 @@ const ht = /* @__PURE__ */ new Set([
2098
2098
  notEmpty: (r) => e(r),
2099
2099
  whenEmpty: () => t()
2100
2100
  }
2101
- ), Ts = (s, e) => (t) => {
2102
- const r = t.makePortal(s), n = K(f(e), r);
2101
+ ), bs = (s, e) => (t) => {
2102
+ const r = t.makePortal(s), n = ee(f(e), r);
2103
2103
  return () => n(!0);
2104
2104
  }, R = /* @__PURE__ */ new Map(), vt = (s) => ({
2105
2105
  mark: Ge(`Probe(${s.description})`),
@@ -2121,7 +2121,7 @@ const ht = /* @__PURE__ */ new Set([
2121
2121
  onUse: () => i.counter++
2122
2122
  };
2123
2123
  }
2124
- }), bs = vt(Symbol("GlobalProbe")), Et = (s, e) => (t) => {
2124
+ }), Ss = vt(Symbol("GlobalProbe")), Et = (s, e) => (t) => {
2125
2125
  const r = t.getStyle(s);
2126
2126
  return t.setStyle(s, e), (n) => {
2127
2127
  n && t.setStyle(s, r);
@@ -2131,7 +2131,7 @@ const ht = /* @__PURE__ */ new Set([
2131
2131
  return (i) => {
2132
2132
  n(), i && t.setStyle(s, r);
2133
2133
  };
2134
- }, Ss = new Proxy(
2134
+ }, As = new Proxy(
2135
2135
  {},
2136
2136
  {
2137
2137
  /**
@@ -2152,11 +2152,11 @@ const ht = /* @__PURE__ */ new Set([
2152
2152
  }
2153
2153
  return () => {
2154
2154
  };
2155
- }, As = (s) => (e) => {
2155
+ }, _s = (s) => (e) => {
2156
2156
  const t = s(e);
2157
2157
  return t == null ? () => {
2158
2158
  } : f(t)(e);
2159
- }, _s = (s) => Ct((e) => s(e.element)), vs = (s) => (e) => {
2159
+ }, vs = (s) => Ct((e) => s(e.element)), Es = (s) => (e) => {
2160
2160
  if (e.isHeadlessDOM()) {
2161
2161
  const t = s(e);
2162
2162
  if (t)
@@ -2164,7 +2164,7 @@ const ht = /* @__PURE__ */ new Set([
2164
2164
  }
2165
2165
  return () => {
2166
2166
  };
2167
- }, ee = (s) => (e) => {
2167
+ }, te = (s) => (e) => {
2168
2168
  let t = e;
2169
2169
  function r() {
2170
2170
  return t;
@@ -2187,66 +2187,66 @@ const ht = /* @__PURE__ */ new Set([
2187
2187
  f(l),
2188
2188
  M(() => i.forEach((c) => c()))
2189
2189
  )(r());
2190
- }, Es = (s, e, t) => ee(({ set: r }) => (r(s, e), t())), ws = (s, e) => ee(({ use: t }) => e(t(s))), Cs = (...s) => (e) => ee(({ use: t }) => {
2190
+ }, ws = (s, e, t) => te(({ set: r }) => (r(s, e), t())), Cs = (s, e) => te(({ use: t }) => e(t(s))), xs = (...s) => (e) => te(({ use: t }) => {
2191
2191
  const r = s.map(t);
2192
2192
  return e(...r);
2193
2193
  });
2194
2194
  export {
2195
- Yt as Async,
2196
- os as BindChecked,
2197
- ss as BindDate,
2198
- rs as BindDateTime,
2199
- ns as BindNumber,
2200
- is as BindText,
2195
+ zt as Async,
2196
+ ls as BindChecked,
2197
+ rs as BindDate,
2198
+ ns as BindDateTime,
2199
+ is as BindNumber,
2200
+ os as BindText,
2201
2201
  L as BrowserContext,
2202
2202
  q as CLASS_PLACEHOLDER_ATTR,
2203
2203
  P as Computed,
2204
- us as Conjunction,
2205
- hs as DOMNode,
2204
+ hs as Conjunction,
2205
+ fs as DOMNode,
2206
2206
  we as El,
2207
2207
  Ce as ElNS,
2208
2208
  Q as ElementPosition,
2209
2209
  v as Empty,
2210
- fs as Ensure,
2211
- ds as EnsureAll,
2212
- gs as ForEach,
2210
+ ds as Ensure,
2211
+ ps as EnsureAll,
2212
+ ms as ForEach,
2213
2213
  b as Fragment,
2214
- bs as GlobalProbe,
2215
- Rt as HeadlessAdapter,
2214
+ Ss as GlobalProbe,
2215
+ jt as HeadlessAdapter,
2216
2216
  D as HeadlessContext,
2217
2217
  at as HeadlessElement,
2218
2218
  _e as HeadlessPortal,
2219
2219
  ut as HeadlessText,
2220
- ms as MapSignal,
2220
+ ys as MapSignal,
2221
2221
  ae as MemoryStore,
2222
- ys as NotEmpty,
2222
+ Ts as NotEmpty,
2223
2223
  yt as OnChecked,
2224
2224
  M as OnDispose,
2225
2225
  Y as OneOf,
2226
2226
  Le as OneOfField,
2227
- ls as OneOfKind,
2228
- cs as OneOfTuple,
2229
- as as OneOfType,
2227
+ cs as OneOfKind,
2228
+ as as OneOfTuple,
2229
+ us as OneOfType,
2230
2230
  _t as OneOfValue,
2231
- Ts as Portal,
2231
+ bs as Portal,
2232
2232
  j as Prop,
2233
- Es as Provide,
2233
+ ws as Provide,
2234
2234
  ye as ProviderNotFoundError,
2235
2235
  Xe as RenderingError,
2236
2236
  Oe as Repeat,
2237
2237
  d as Signal,
2238
2238
  xe as Task,
2239
- Vt as TextNode,
2240
- ps as Unless,
2241
- ws as Use,
2242
- Cs as UseMany,
2239
+ qt as TextNode,
2240
+ gs as Unless,
2241
+ Cs as Use,
2242
+ xs as UseMany,
2243
2243
  y as Value,
2244
2244
  De as When,
2245
2245
  Ct as WithBrowserCtx,
2246
- As as WithCtx,
2247
- _s as WithElement,
2248
- vs as WithHeadlessCtx,
2249
- ee as WithProvider,
2246
+ _s as WithCtx,
2247
+ vs as WithElement,
2248
+ Es as WithHeadlessCtx,
2249
+ te as WithProvider,
2250
2250
  Te as _NODE_PLACEHOLDER_ATTR,
2251
2251
  Je as _getSelfOrParentElement,
2252
2252
  me as _isElement,
@@ -2257,31 +2257,32 @@ export {
2257
2257
  ve as _staticText,
2258
2258
  Mt as animateSignal,
2259
2259
  Fe as animateSignals,
2260
- Ft as aria,
2260
+ Bt as aria,
2261
2261
  O as attr,
2262
2262
  Nt as bind,
2263
+ $t as coalesce,
2263
2264
  Z as computed,
2264
- ce as computedOf,
2265
+ K as computedOf,
2265
2266
  Be as computedRecord,
2266
- qt as dataAttr,
2267
+ Ft as dataAttr,
2267
2268
  kt as delaySignal,
2268
2269
  qe as effect,
2269
2270
  Lt as effectOf,
2270
- Zt as emitChecked,
2271
- Kt as emitPreventDefault,
2272
- ts as emitStopImmediatePropagation,
2273
- es as emitStopPropagation,
2271
+ Kt as emitChecked,
2272
+ es as emitPreventDefault,
2273
+ ss as emitStopImmediatePropagation,
2274
+ ts as emitStopPropagation,
2274
2275
  Tt as emitValue,
2275
2276
  St as emitValueAsDate,
2276
2277
  At as emitValueAsDateTime,
2277
- zt as emitValueAsNullableDate,
2278
- Qt as emitValueAsNullableDateTime,
2278
+ Qt as emitValueAsNullableDate,
2279
+ Zt as emitValueAsNullableDateTime,
2279
2280
  bt as emitValueAsNumber,
2280
2281
  Re as endInterpolate,
2281
- le as getWindow,
2282
+ ce as getWindow,
2282
2283
  je as guessInterpolate,
2283
- Ut as html,
2284
- Jt as input,
2284
+ Jt as html,
2285
+ Gt as input,
2285
2286
  Ie as interpolateDate,
2286
2287
  Ne as interpolateNumber,
2287
2288
  $e as interpolateString,
@@ -2289,20 +2290,20 @@ export {
2289
2290
  Dt as localStorageProp,
2290
2291
  vt as makeProbe,
2291
2292
  Ge as makeProviderMark,
2292
- Xt as math,
2293
- Wt as mathAttr,
2293
+ Yt as math,
2294
+ Ut as mathAttr,
2294
2295
  Ht as merge,
2295
2296
  X as on,
2296
2297
  _ as prop,
2297
- $t as render,
2298
- K as renderWithContext,
2298
+ It as render,
2299
+ ee as renderWithContext,
2299
2300
  f as renderableOfTNode,
2300
- jt as restoreTempoPlaceholders,
2301
- It as runHeadless,
2301
+ Vt as restoreTempoPlaceholders,
2302
+ Rt as runHeadless,
2302
2303
  Ot as sessionStorageProp,
2303
2304
  G as signal,
2304
2305
  ue as storedProp,
2305
- Ss as style,
2306
- Gt as svg,
2307
- Bt as svgAttr
2306
+ As as style,
2307
+ Xt as svg,
2308
+ Wt as svgAttr
2308
2309
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tempots/dom",
3
- "version": "28.5.0",
3
+ "version": "28.6.1",
4
4
  "type": "module",
5
5
  "main": "./index.cjs",
6
6
  "module": "./index.js",
@@ -1,4 +1,4 @@
1
- import { GetValueType, RemoveSignals, Values } from '../types/domain';
1
+ import { GetValueType, NValue, RemoveSignals, Values } from '../types/domain';
2
2
  import { AnySignal, Computed, Prop, Signal } from './signal';
3
3
  import { Value } from './value';
4
4
  /**
@@ -253,3 +253,12 @@ export declare const delaySignal: <T>(signal: Signal<T>, ms: number | ((value: T
253
253
  * @public
254
254
  */
255
255
  export declare const bind: <FN extends (...args: any[]) => R, R = ReturnType<FN>>(fn: Value<FN>) => (...args: Values<Parameters<FN>>) => Computed<R>;
256
+ /**
257
+ * Returns the first non-null and non-undefined value from a set of signals and literals.
258
+ *
259
+ * @typeParam T - The type of the signals and literals.
260
+ * @param args - The set of signals and literals to search.
261
+ * @returns - A computed signal that emits the first non-null and non-undefined value.
262
+ * @public
263
+ */
264
+ export declare const coalesce: <T, L extends Array<NValue<T>>, R extends Value<T>>(...args: [...L, R]) => Computed<R>;