@tempots/dom 22.0.0 → 22.1.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 ot=Object.defineProperty;var _e=t=>{throw TypeError(t)};var it=(t,e,r)=>e in t?ot(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var a=(t,e,r)=>it(t,typeof e!="symbol"?e+"":e,r),ve=(t,e,r)=>e.has(t)||_e("Cannot "+r);var O=(t,e,r)=>(ve(t,e,"read from private field"),r?r.call(t):e.get(t)),ye=(t,e,r)=>e.has(t)?_e("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),X=(t,e,r,s)=>(ve(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const we=(t,e,r)=>t+(e-t)*r,Se=97,Pe=(t,e,r)=>{const s=Math.max(t.length,e.length);let n="";for(let o=0;o<s;o++){let i=t.charCodeAt(o);isNaN(i)&&(i=Se);let l=e.charCodeAt(o);isNaN(l)&&(l=Se),n+=String.fromCharCode(i+(l-i)*r)}return n},Ee=(t,e,r)=>new Date(t.getTime()+(e.getTime()-t.getTime())*r),De=(t,e)=>e,Te=t=>typeof t=="number"?we:typeof t=="string"?Pe:t instanceof Date?Ee:De;var y;class D{constructor(e,r){a(this,"counter");a(this,"isFirst");a(this,"isEven");a(this,"isOdd");ye(this,y);a(this,"dispose",()=>{O(this,y)!=null&&(O(this,y).dispose(),X(this,y,void 0))});this.index=e,this.total=r,this.counter=e+1,this.isFirst=e===0,this.isEven=e%2===1,this.isOdd=e%2===0}get isLast(){return O(this,y)==null&&X(this,y,this.total.map(e=>this.counter===e)),O(this,y)}}y=new WeakMap;const N=class N{constructor(e,r){a(this,"$__signal__",!0);a(this,"_value");a(this,"_derivatives",[]);a(this,"_onValueListeners",[]);a(this,"_onDisposeListeners",[]);a(this,"get",()=>this._value);a(this,"hasListeners",()=>this._onValueListeners.length>0);a(this,"on",e=>(e(this.get()),this._onValueListeners.push(e),()=>{this._onValueListeners.splice(this._onValueListeners.indexOf(e),1)}));a(this,"_setAndNotify",(e,r)=>{const s=this.equals(this._value,e);s||(this._value=e),(r||!s)&&this._onValueListeners.forEach(n=>n(e))});a(this,"_disposed",!1);a(this,"isDisposed",()=>this._disposed);a(this,"onDispose",e=>{this._onDisposeListeners.push(e)});a(this,"dispose",()=>{this._disposed||(this._disposed=!0,this._onDisposeListeners.forEach(e=>e()),this._onDisposeListeners.length=0,this._derivatives.length=0)});a(this,"map",(e,r=(s,n)=>s===n)=>{const s=new A(()=>{try{return e(this.get())}catch(n){throw console.error("Error in Signal.map:",n),n}},r);return this.setDerivative(s),s});a(this,"flatMap",(e,r=(s,n)=>s===n)=>{const s=new A(()=>{try{return e(this.get()).get()}catch(n){throw console.error("Error in Signal.flatMap:",n),n}},r);return this.setDerivative(s),s});a(this,"tap",e=>this.map(r=>(e(r),r)));a(this,"at",e=>this.map(r=>r[e]));a(this,"_$");a(this,"filter",(e,r)=>{let s=r??this.get();const n=new A(()=>{try{const o=this.get();return s=e(o)?o:s}catch(o){throw console.error("Error in Signal.filter:",o),o}},this.equals);return this.setDerivative(n),n});a(this,"filterMap",(e,r,s=(n,o)=>n===o)=>{let n=r;const o=new A(()=>{try{const i=this.get(),l=e(i);return n=l??n}catch(i){throw console.error("Error in Signal.filterMap:",i),i}},s);return this.setDerivative(o),o});a(this,"mapAsync",(e,r,s,n=(o,i)=>o===i)=>{const o=L(r,n);let i=0,l=new AbortController;return o.onDispose(this.on(async u=>{const f=++i;l.abort(),l=new AbortController;try{const _=await e(u,{abortSignal:l.signal});f===i&&o.set(_)}catch(_){if(f===i)if(s!=null)o.set(s(_));else throw _}})),o});a(this,"mapMaybe",(e,r)=>this.map(s=>e(s)??r));a(this,"feedProp",(e,r=!1)=>{const s=this.on(e.set);return e.onDispose(s),r?this.onDispose(e.dispose):this.onDispose(s),e});a(this,"deriveProp",(e=!0)=>this.feedProp(L(this.get()),e));a(this,"count",()=>{let e=0;return this.map(()=>++e)});a(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=r,this._value=e}get value(){return this._value}get $(){return this._$!==void 0?this._$:this._$=new Proxy(this,{get:(e,r)=>this.at(r)})}};a(N,"ofPromise",(e,r,s,n=(o,i)=>o===i)=>{const o=new N(r,n);return e.then(i=>o._setAndNotify(i,!1)).catch(i=>{s!=null?o._setAndNotify(s(i),!1):console.error("Unhandled promise rejection in Signal.ofPromise:",i)}),o}),a(N,"is",e=>e!=null&&e.$__signal__===!0);let d=N;const lt=typeof queueMicrotask=="function"?queueMicrotask:t=>Promise.resolve().then(t);class A extends d{constructor(r,s){super(void 0,s);a(this,"$__computed__",!0);a(this,"_isDirty",!1);a(this,"setDirty",()=>{this._isDirty||this._disposed||(this._isDirty=!0,this._derivatives.forEach(r=>r.setDirty()),this._scheduleNotify())});a(this,"_scheduleCount",0);a(this,"_scheduleNotify",()=>{const r=++this._scheduleCount;lt(()=>{this._scheduleCount!==r||this._disposed!==!1||this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!1))})});a(this,"get",()=>(this._isDirty&&(this._isDirty=!1,this._value=this._fn(),this._setAndNotify(this._value,!0)),this._value));this._fn=r,this.setDirty()}static is(r){return r!=null&&r.$__computed__===!0}get value(){return this.get()}}const j=class j extends d{constructor(){super(...arguments);a(this,"$__prop__",!0);a(this,"set",r=>{this._setAndNotify(r,!1)});a(this,"update",r=>{this._setAndNotify(r(this.get()),!1)});a(this,"reducer",(r,...s)=>{const n=this;return function o(i){const l=n.value;n.update(u=>r(u,i)),!n.equals(l,n.value)&&s.forEach(u=>u({previousState:l,state:n.value,action:i,dispatch:o}))}});a(this,"iso",(r,s,n=(o,i)=>o===i)=>{const o=new j(r(this.get()),n);return o.onDispose(this.on(i=>o.set(r(i)))),o.on(i=>this._setAndNotify(s(i),!1)),o});a(this,"atProp",r=>this.iso(s=>s[r],s=>({...this.value,[r]:s})))}get value(){return this.get()}set value(r){this._setAndNotify(r,!1)}};a(j,"is",r=>r!=null&&r.$__prop__===!0);let C=j;const W=(t,e,r=(s,n)=>s===n)=>{const s=new A(t,r);return e.forEach(n=>n.setDerivative(s)),s},Oe=(t,e)=>W(t,e).dispose,L=(t,e=(r,s)=>r===s)=>new C(t,e),R=(t,e=(r,s)=>r===s)=>new d(t,e),h={map:(t,e)=>d.is(t)?t.map(e):e(t),toSignal:(t,e)=>d.is(t)?t:R(t,e),maybeToSignal:(t,e)=>{if(t!=null)return h.toSignal(t,e)},get:t=>d.is(t)?t.get():t,on:(t,e)=>d.is(t)?t.on(e):(e(t),()=>{}),dispose:t=>{d.is(t)&&t.dispose()}},at=(...t)=>(e,r)=>{const s=t.filter(n=>d.is(n));return W(()=>e(...t.map(n=>h.get(n))),s,r)},ut=(...t)=>e=>{const r=t.filter(s=>d.is(s));Oe(()=>e(...t.map(h.get)),r)};class Q{constructor(){a(this,"_store",new Map);a(this,"getItem",e=>this._store.get(e)??null);a(this,"setItem",(e,r)=>{this._store.set(e,r)})}}const Y=({key:t,defaultValue:e,store:r,serialize:s=JSON.stringify,deserialize:n=JSON.parse,equals:o=(l,u)=>l===u,onLoad:i=l=>l})=>{const l=r.getItem(t),u=new C(l!=null?i(n(l)):typeof e=="function"?e():e,o);return u.on(f=>{r.setItem(t,s(f))}),u},ct=t=>Y({...t,store:(window==null?void 0:window.localStorage)??new Q}),ft=t=>Y({...t,store:(window==null?void 0:window.sessionStorage)??new Q});function Ae(t){return typeof requestAnimationFrame=="function"?requestAnimationFrame(t):setTimeout(t,0)}const be=(t,e,r,s)=>{const n=(s==null?void 0:s.duration)??300,o=(s==null?void 0:s.easing)??(v=>v),i=(s==null?void 0:s.equals)??((v,I)=>v===I);let l=s==null?void 0:s.interpolate,u=t,f=e(),_=performance.now(),P=null,J=!0;const H=new A(e,i),E=L(t,i);E.onDispose(()=>{P!==null&&cancelAnimationFrame(P)}),E.onDispose(H.dispose),r.forEach(v=>{v.setDerivative(H),v.onDispose(E.dispose)});const st=v=>{f=v,_=performance.now(),u=E.value,J&&(J=!1,P=Ae(me))},me=()=>{const I=(performance.now()-_)/h.get(n),nt=o(I);l==null&&(l=Te(u));let ge=l(u,f,nt);I>=1?(J=!0,ge=f):P=Ae(me),E.set(ge)};return H.on(st),E},dt=(t,e)=>{const{initialValue:r,...s}=e??{};return be(r??t.get(),t.get,[t],s)},ht=(t,e)=>{const{signals:r,literals:s}=Object.entries(t).reduce(({signals:o,literals:i},[l,u])=>(d.is(u)?o.push([l,u]):i[l]=u,{signals:o,literals:i}),{signals:[],literals:{}}),n=r.map(([,o])=>o);return W(()=>(r.forEach(([o,i])=>s[o]=i.value),e(s)),n)},ke=new Set(["checked","disabled","hidden","selected"]),Ne=new Set(["rowSpan","colSpan","tabIndex","valueAsNumber"]),Ce=new Set(["valueAsDate"]),Le=new Set(["value","textContent","innerText","innerHTML","outerHTML","className","classList"]),z=new Map,b=(t,e)=>{if(z.has(t))return z.get(t);{const r=e(t);return z.set(t,r),r}},Re=t=>(e,r)=>{r==null?e[t]=null:e[t]=!!r},Me=t=>(e,r)=>{r==null?e[t]=null:e[t]=Number(r)},Ve=t=>(e,r)=>{r==null?e[t]=null:e[t]=r},Fe=t=>(e,r)=>{r==null?e[t]=null:e[t]=String(r)},$e=t=>(e,r)=>{r==null?e.removeAttribute(t):e.setAttribute(t,r)},Z=t=>ke.has(t)?b(t,Re):Ne.has(t)?b(t,Me):Ce.has(t)?b(t,Ve):Le.has(t)?b(t,Fe):b(t,$e),x=t=>e=>ke.has(t)?!!e[t]:Ne.has(t)?Number(e[t]):Ce.has(t)?e[t]:Le.has(t)?String(e[t]):e.getAttribute(t);class g{constructor(e,r,s,n,o){a(this,"createElement",(e,r)=>r!==void 0?this.document.createElementNS(r,e):this.document.createElement(e));a(this,"createText",e=>this.document.createTextNode(e));a(this,"makeRef",()=>{const e=this.createText("");return this.appendOrInsert(e),this.withReference(e)});a(this,"appendOrInsert",e=>{this.reference===void 0?this.element.appendChild(e):this.element.insertBefore(e,this.reference)});a(this,"withDocument",e=>new g(e,this.element,this.reference,this.providers,!0));a(this,"withElement",e=>new g(this.document,e,void 0,this.providers,!1));a(this,"withFirstLevel",()=>new g(this.document,this.element,this.reference,this.providers,!0));a(this,"withReference",e=>new g(this.document,this.element,e,this.providers,this.isFirstLevel));a(this,"withProvider",(e,r)=>new g(this.document,this.element,this.reference,{...this.providers,[e]:r},this.isFirstLevel));a(this,"withProviders",e=>new g(this.document,this.element,this.reference,{...this.providers,...e},this.isFirstLevel));a(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new Ie(e);return this.providers[e]});this.document=e,this.element=r,this.reference=s,this.providers=n,this.isFirstLevel=o}static of(e,r){return new g(e.ownerDocument,e,r,{},!0)}}class Ie extends Error{constructor(e){super(`Provider not found: ${e.description}`)}}const m=t=>{const e=t;e&&e.onblur&&(e.onblur=null),!(!t||t.ownerDocument===void 0)&&t.parentElement&&t.parentElement.removeChild(t)},qe=t=>ee(t)?t:t.parentElement,ee=t=>t.nodeType===1,te=t=>e=>{ae(e);const r=e.createText(t);return e.appendOrInsert(r),s=>{s&&m(r)}},re=t=>e=>{ae(e);const r=e.createText(t.value);e.appendOrInsert(r);const s=t.on(n=>r.data=n);return n=>{s(),n&&m(r)}},pt=t=>d.is(t)?re(t):te(t),p=(...t)=>e=>{const r=t.map(s=>c(s)(e));return s=>{r.forEach(n=>n(s))}},S=()=>()=>{},mt=t=>e=>(ie(e),e.element.classList.add(...t),r=>{r&&e.element.classList.remove(...t)}),gt=t=>e=>{ie(e);const r=e.element;let s=[];const n=t.on(o=>{s.forEach(i=>r.classList.remove(i)),s=(o??"").split(" ").filter(i=>i.length>0),r.classList.add(...s)});return o=>{n(),o&&s.forEach(i=>r.classList.remove(i)),s.length=0}},M=(t,e)=>{const r=Z(t),s=x(t);return n=>{oe(n,t);const o=s(n.element);return r(n.element,e),i=>{i&&r(n.element,o)}}},V=(t,e)=>{const r=Z(t),s=x(t);return n=>{oe(n,t);const o=s(n.element),i=e.on(l=>r(n.element,l));return l=>{i(),l&&r(n.element,o)}}},w=new Proxy({},{get:(t,e)=>e==="class"?r=>d.is(r)?gt(r):mt((r??"").split(" ").filter(s=>s.length>0)):r=>d.is(r)?V(e,r):M(e,r)}),_t=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(`data-${e}`,r):M(`data-${e}`,r)}),vt=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(`aria-${e}`,r):M(`aria-${e}`,r)}),yt=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(e,r):M(e,r)}),St=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(e,r):M(e,r)}),c=t=>t==null?S:Array.isArray(t)?p(...t.map(c)):typeof t=="string"?te(t):d.is(t)?re(t):t,se=(t,...e)=>r=>{const s=r.createElement(t,void 0);r.isFirstLevel&&T()&&le(s),r.appendOrInsert(s),r=r.withElement(s);const n=e.map(o=>c(o)(r));return o=>{n.forEach(i=>i(!1)),o&&m(s)}},ne=(t,e,...r)=>s=>{const n=s.createElement(t,e);s.isFirstLevel&&T()&&le(n),s.appendOrInsert(n),s=s.withElement(n);const o=r.map(i=>c(i)(s));return i=>{o.forEach(l=>l(!1)),i&&m(n)}},At=new Proxy({},{get:(t,e)=>(...r)=>se(e,r.flatMap(c))}),wt=new Proxy({},{get:(t,e)=>(...r)=>se("input",w.type(e),...r)}),Pt="http://www.w3.org/2000/svg",Et=new Proxy({},{get:(t,e)=>(...r)=>ne(e,Pt,r.flatMap(c))}),Dt="http://www.w3.org/1998/Math/MathML",Tt=new Proxy({},{get:(t,e)=>(...r)=>ne(e,Dt,r.flatMap(c))}),k="data-tempo-attr",q="data-tempo-class",Be="data-tempo-node",B="data-tempo-text",Ot=(t,e)=>{const r=t.getAttribute(e);if(r!=null){const s=t.getAttribute(k)??"{}",n={...JSON.parse(s),name:r};t.setAttribute(k,JSON.stringify(n).replace(/"/g,"&quot;"))}},oe=(t,e)=>{T()&&t.isFirstLevel&&Ot(t.element,e)},bt=t=>{t.querySelectorAll(`[${k}]`).forEach(e=>{const r=JSON.parse((e.getAttribute(k)??"{}").replace(/&quot;/g,'"'));for(const[s,n]of Object.entries(r))e.setAttribute(s,n);e.removeAttribute(k)})};function kt(t){t.setAttribute(q,t.className)}const ie=t=>{T()&&t.isFirstLevel&&kt(t.element)},Nt=t=>{t.querySelectorAll(`[${q}]`).forEach(e=>{const r=e.getAttribute(q);r!==null&&(e.className=r,e.removeAttribute(q))})},le=t=>{t.setAttribute(Be,"")},Ct=t=>{t.querySelectorAll(`[${Be}]`).forEach(e=>{m(e)})},Lt=t=>{t.setAttribute(B,t.textContent??"")},ae=t=>{T()&&t.isFirstLevel&&Lt(t.element)},Ue=t=>{t.querySelectorAll(`[${B}]`).forEach(e=>{e.textContent=e.getAttribute(B),e.removeAttribute(B)})},je=t=>{Ct(t),Nt(t),bt(t),Ue(t)},We=()=>{const t=globalThis;return t.__tempoSSR__==null&&(t.__tempoSSR__={isSSR:!1,counter:0}),t.__tempoSSR__},ue=(t,e)=>{const r=We();r[t]=e},Ge=t=>We()[t],K=t=>{ue("isSSR",t)},ce=()=>Ge("counter"),Rt=()=>{ue("counter",(ce()??0)+1)},Mt=()=>{ue("counter",(ce()??0)-1)},Vt=(t=30)=>(K(!0),new Promise((e,r)=>{let s;const n=setInterval(()=>{ce()<=0&&(clearInterval(n),clearTimeout(s),K(!1),e())},30);s=setTimeout(()=>{clearInterval(n),K(!1),r(new Error("SSR Timeout"))},t*1e3)})),Ft=t=>(Rt(),c(t(Mt))),T=()=>Ge("isSSR"),fe=(t,e)=>{if(typeof e=="function")return fe(t,{then:e});const r=e.pending!=null?c(e.pending):S,s=e.then,n=e.error!=null?o=>c(e.error(o)):()=>S;return o=>{let i=!0;const l=t();o=o.makeRef();let u=c(r)(o);return l.then(f=>{i&&(u(!0),u=c(s(f))(o))},f=>{i&&(u(!0),u=c(n(f))(o))}),f=>{i=!1,u(f),f&&o.reference&&m(o.reference)}}},$t=(t,e)=>fe(()=>t,e),Je=(t,e)=>r=>(r.element.addEventListener(t,e),s=>{s&&r.element.removeEventListener(t,e)}),He=t=>Je("click",e=>{e.preventDefault();const r=e.target;setTimeout(()=>{const s=r.ownerDocument!=null?r==null?void 0:r.checked:void 0;s!=null&&t(!s)},0)}),F=new Proxy({},{get:(t,e)=>r=>Je(e,r)}),Xe=t=>e=>{const r=e.target;t(r.value)},ze=t=>e=>{const r=e.target;t(r.valueAsNumber)},Ke=t=>e=>{const r=e.target;if(r.value==="")return;const s=r.value.split("-"),n=new Date(Number(s[0]),Number(s[1])-1,Number(s[2].substring(0,2)));t(n)},Qe=t=>e=>{const r=e.target;if(r.value==="")return;const s=r.value.split("T"),n=s[0].split("-"),o=new Date(Number(n[0]),Number(n[1])-1,Number(n[2])),i=s[1].split(":");o.setHours(Number(i[0])),o.setMinutes(Number(i[1])),o.setSeconds(Number(i[2])),t(o)},It=t=>e=>{const r=e.target;t(r.checked)},qt=t=>e=>{e.preventDefault(),t()},Bt=t=>e=>{e.stopPropagation(),t()},Ut=t=>e=>{e.stopImmediatePropagation(),t()},jt=(t,e="input")=>p(w.valueAsDate(t),F[e](Ke(t.set))),Wt=(t,e="input")=>p(w.valueAsDate(t),F[e](Qe(t.set))),Gt=(t,e="input")=>p(w.valueAsNumber(t),F[e](ze(t.set))),Jt=(t,e="input")=>p(w.value(t),F[e](Xe(t.set))),Ht=t=>p(w.checked(t),He(t.set)),G=(t,e)=>{if(d.is(t))return s=>{s=s.makeRef();let n,o;const i=t.map(f=>Object.keys(f)[0]);let l;const u=i.on(f=>{if(f!==l){o==null||o.dispose(),n==null||n(!0),o=t.map(P=>P[f]);const _=e[f](o);n=c(_)(s),l=f}});return f=>{u(),f&&s.reference!=null&&m(s.reference),n==null||n(!0)}};const r=Object.keys(t)[0];return c(e[r](R(t[r])))},de=(t,e,r)=>G(h.map(t,s=>({[s[e]]:s})),r),Xt=(t,e)=>de(t,"kind",e),zt=(t,e)=>{const r=h.map(t,([s,n])=>({[s]:n}));return G(r,e)},Kt=(t,e)=>de(t,"type",e),Ye=(t,e)=>G(h.map(t,r=>({[r]:!0})),e),Qt=(t,e={})=>r=>{const s=(e==null?void 0:e.firstSeparator)??t,n=(e==null?void 0:e.lastSeparator)??t;return Ye(r.map(o=>o.isFirst?"first":o.isLast?"last":"other"),{first:()=>s,last:()=>n,other:()=>t})},Ze=(t,e)=>r=>{const s=Object.values(t).reduce((n,o)=>{const i=r.getProvider(o);if(i==null)throw new Error(`No provider found for mark: ${o.description}`);return n[o]=i,n},{});return c(e(s))(r)},Yt=(t,e)=>r=>{const s=[],n=Object.entries(t).reduce((o,[i,l])=>(s.push(l(u=>(Reflect.set(o,i,u),null))(r)),o),{});return s.push(e(n)(r)),o=>{s.forEach(i=>i(o))}},Zt=(t,e)=>Ze([t],r=>c(e(r[t]))),xt=(t,e)=>Ze(t,r=>c(e(r))),er=t=>e=>t(e),tr=t=>e=>(e.appendOrInsert(t),r=>{r&&m(t)}),xe=(t,e,r)=>{if(d.is(t)){const s=t;return n=>{n=n.makeRef();let o=null,i=!1;const l=L(null),u=s.on(f=>{f==null?(o==null||o(!0),o=c((r==null?void 0:r())??S)(n),i=!1):(l.value=f,i||(o==null||o(!0),o=c(e(l))(n),i=!0))});return f=>{u(),o==null||o(f),f&&n.reference&&m(n.reference)}}}else{const s=t;if(s==null){const n=r==null?void 0:r();return n!=null?c(n):S}return c(e(R(s)))}},U=t=>e=>r=>t(r,e),$=(t,e,r)=>xe(h.map(t,s=>s?!0:null),()=>e,r!=null?()=>r:void 0),rr=(t,e,r)=>$(h.map(t,s=>!s),e,r),he=(t,e,r)=>r!=null?he(t,s=>{const n=new D(s.index,s.total.map(o=>o-1));return p(U(n.dispose),c(e(s)),$(s.isLast,S,r(n)))}):d.is(t)?s=>{s=s.makeRef();const n=Array.from({length:t.value},(l,u)=>u).map(l=>new D(l,t)),o=n.map(l=>c(e(l))(s)),i=t.on(l=>{for(;l<o.length;)o.pop()(!0),n.pop().dispose();for(let u=0;u<l;u++)if(n[u]==null){n[u]=new D(u,t);const f=c(e(n[u]));o[u]=f(s)}});return l=>{i(),l&&s.reference&&m(s.reference)}}:p(...Array.from({length:t},(s,n)=>n).map(s=>c(e(new D(s,R(t)))))),et=(t,e,r)=>r!=null?et(t,(s,n)=>{const o=new D(n.index,n.total.map(i=>i-1));return p([U(o.dispose),c(e(s,n)),$(n.isLast,S,r(o))])}):s=>{const n=h.map(t,i=>i.length),o=h.toSignal(t);return he(n,i=>{const l=o.map(u=>u[i.index]);return p(U(l.dispose),c(e(l,i)))})(s)},sr=(t,e)=>{if(d.is(t)){const r=t;return s=>{s=s.makeRef();const n=r.map(l=>c(e(l)));let o=()=>{};const i=n.on(l=>{o(!0),o=l(s)});return l=>{i(),o(l)}}}return c(e(t))},nr=(t,e,r=S)=>$(h.map(t,s=>s.length>0),e,r),or=t=>e=>t(e.element)??(()=>{}),pe=(t,e)=>{const r=t(e);return()=>r(!0)},ir=(t,e,{doc:r,clear:s}={})=>{const n=typeof e=="string"?(r??document).querySelector(e):e;if(n===null)throw new tt(`Cannot find element by selector for render: ${e}`);s!==!1&&(r??n.ownerDocument)!=null&&je(r??n.ownerDocument);const o=qe(n),i=ee(n)?void 0:n,l=g.of(o,i);return pe(t,l)};class tt extends Error{constructor(e){super(e)}}const lr=(t,e)=>r=>{const s=r.document.querySelector(t);if(s===null)throw new Error(`Cannot find element by selector for portal: ${t}`);return pe(c(e),r.withElement(s).withFirstLevel())},ar=t=>Symbol(t),rt=(t,e)=>r=>c(e)(r.withProviders(t)),ur=(...t)=>t.length>0?t.reduceRight((e,r)=>s=>e(r(s))):c,cr=(t,e,r)=>rt({[t]:e},c(r)),fr=(t,e)=>rt(t,c(e)),dr=(t,e)=>r=>{const s=r.element,n=s.style.getPropertyValue(t);return s.style.setProperty(t,e),o=>{o&&s.style.setProperty(t,n)}},hr=(t,e)=>r=>{const s=r.element,n=s.style.getPropertyValue(t);return e.on(o=>s.style.setProperty(t,o)),o=>{o&&s.style.setProperty(t,n)}},pr=new Proxy({},{get:(t,e)=>r=>d.is(r)?hr(e,r):dr(e,r)});exports.Async=$t;exports.BindChecked=Ht;exports.BindDate=jt;exports.BindDateTime=Wt;exports.BindNumber=Gt;exports.BindText=Jt;exports.Computed=A;exports.Conjunction=Qt;exports.DOMContext=g;exports.DOMNode=tr;exports.El=se;exports.ElNS=ne;exports.ElementPosition=D;exports.Empty=S;exports.Ensure=xe;exports.ForEach=et;exports.Fragment=p;exports.MapSignal=sr;exports.MemoryStore=Q;exports.NotEmpty=nr;exports.OnChecked=He;exports.OnCtx=er;exports.OnMount=or;exports.OnUnmount=U;exports.OneOf=G;exports.OneOfField=de;exports.OneOfKind=Xt;exports.OneOfTuple=zt;exports.OneOfType=Kt;exports.OneOfValue=Ye;exports.Portal=lr;exports.Prop=C;exports.Provide=ur;exports.ProviderNotFoundError=Ie;exports.RenderingError=tt;exports.Repeat=he;exports.Signal=d;exports.Task=fe;exports.TextNode=pt;exports.Unless=rr;exports.Use=Yt;exports.UseProvider=Zt;exports.UseProviders=xt;exports.UseSSRDone=Ft;exports.Value=h;exports.When=$;exports.WithProvider=cr;exports.WithProviders=fr;exports._addNodeTracker=le;exports._clearSSR=je;exports._getSelfOrParentElement=qe;exports._isElement=ee;exports._makeGetter=x;exports._makeSetter=Z;exports._maybeAddAttributeTracker=oe;exports._maybeAddClassTracker=ie;exports._maybeAddTextTracker=ae;exports._removeDOMNode=m;exports._setAttribute=$e;exports._setBooleanProperty=Re;exports._setDateProperty=Ve;exports._setNumberProperty=Me;exports._setStringProperty=Fe;exports._signalText=re;exports._staticText=te;exports.animateSignal=dt;exports.animateSignals=be;exports.aria=vt;exports.attr=w;exports.dataAttr=_t;exports.emitChecked=It;exports.emitPreventDefault=qt;exports.emitStopImmediatePropagation=Ut;exports.emitStopPropagation=Bt;exports.emitValue=Xe;exports.emitValueAsDate=Ke;exports.emitValueAsDateTime=Qe;exports.emitValueAsNumber=ze;exports.endInterpolate=De;exports.guessInterpolate=Te;exports.html=At;exports.input=wt;exports.interpolateDate=Ee;exports.interpolateNumber=we;exports.interpolateString=Pe;exports.isSSR=T;exports.localStorageProp=ct;exports.makeComputed=W;exports.makeComputedOf=at;exports.makeComputedRecord=ht;exports.makeEffect=Oe;exports.makeEffectOf=ut;exports.makeProp=L;exports.makeProviderMark=ar;exports.makeSignal=R;exports.math=Tt;exports.mathAttr=St;exports.on=F;exports.prepareSSR=Vt;exports.removeTextTrackers=Ue;exports.render=ir;exports.renderWithContext=pe;exports.renderableOfTNode=c;exports.sessionStorageProp=ft;exports.storedProp=Y;exports.style=pr;exports.svg=Et;exports.svgAttr=yt;
1
+ "use strict";var lt=Object.defineProperty;var ye=t=>{throw TypeError(t)};var at=(t,e,r)=>e in t?lt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var a=(t,e,r)=>at(t,typeof e!="symbol"?e+"":e,r),ve=(t,e,r)=>e.has(t)||ye("Cannot "+r);var O=(t,e,r)=>(ve(t,e,"read from private field"),r?r.call(t):e.get(t)),Se=(t,e,r)=>e.has(t)?ye("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),H=(t,e,r,s)=>(ve(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Pe=(t,e,r)=>t+(e-t)*r,Ae=97,Ee=(t,e,r)=>{const s=Math.max(t.length,e.length);let n="";for(let o=0;o<s;o++){let i=t.charCodeAt(o);isNaN(i)&&(i=Ae);let l=e.charCodeAt(o);isNaN(l)&&(l=Ae),n+=String.fromCharCode(i+(l-i)*r)}return n},De=(t,e,r)=>new Date(t.getTime()+(e.getTime()-t.getTime())*r),Te=(t,e)=>e,Oe=t=>typeof t=="number"?Pe:typeof t=="string"?Ee:t instanceof Date?De:Te;var v;class D{constructor(e,r){a(this,"counter");a(this,"isFirst");a(this,"isEven");a(this,"isOdd");Se(this,v);a(this,"dispose",()=>{O(this,v)!=null&&(O(this,v).dispose(),H(this,v,void 0))});this.index=e,this.total=r,this.counter=e+1,this.isFirst=e===0,this.isEven=e%2===1,this.isOdd=e%2===0}get isLast(){return O(this,v)==null&&H(this,v,this.total.map(e=>this.counter===e)),O(this,v)}}v=new WeakMap;const N=class N{constructor(e,r){a(this,"$__signal__",!0);a(this,"_value");a(this,"_derivatives",[]);a(this,"_onValueListeners",[]);a(this,"_onDisposeListeners",[]);a(this,"get",()=>this._value);a(this,"hasListeners",()=>this._onValueListeners.length>0);a(this,"on",e=>(e(this.get()),this._onValueListeners.push(e),()=>{this._onValueListeners.splice(this._onValueListeners.indexOf(e),1)}));a(this,"_setAndNotify",(e,r)=>{const s=this.equals(this._value,e);s||(this._value=e),(r||!s)&&this._onValueListeners.forEach(n=>n(e))});a(this,"_disposed",!1);a(this,"isDisposed",()=>this._disposed);a(this,"onDispose",e=>{this._onDisposeListeners.push(e)});a(this,"dispose",()=>{this._disposed||(this._disposed=!0,this._onDisposeListeners.forEach(e=>e()),this._onDisposeListeners.length=0,this._derivatives.length=0)});a(this,"map",(e,r=(s,n)=>s===n)=>{const s=new A(()=>{try{return e(this.get())}catch(n){throw console.error("Error in Signal.map:",n),n}},r);return this.setDerivative(s),s});a(this,"flatMap",(e,r=(s,n)=>s===n)=>{const s=new A(()=>{try{return e(this.get()).get()}catch(n){throw console.error("Error in Signal.flatMap:",n),n}},r);return this.setDerivative(s),s});a(this,"tap",e=>this.map(r=>(e(r),r)));a(this,"at",e=>this.map(r=>r[e]));a(this,"_$");a(this,"filter",(e,r)=>{let s=r??this.get();const n=new A(()=>{try{const o=this.get();return s=e(o)?o:s}catch(o){throw console.error("Error in Signal.filter:",o),o}},this.equals);return this.setDerivative(n),n});a(this,"filterMap",(e,r,s=(n,o)=>n===o)=>{let n=r;const o=new A(()=>{try{const i=this.get(),l=e(i);return n=l??n}catch(i){throw console.error("Error in Signal.filterMap:",i),i}},s);return this.setDerivative(o),o});a(this,"mapAsync",(e,r,s,n=(o,i)=>o===i)=>{const o=L(r,n);let i=0,l=new AbortController;return o.onDispose(this.on(async u=>{const f=++i;l.abort(),l=new AbortController;try{const _=await e(u,{abortSignal:l.signal});f===i&&o.set(_)}catch(_){if(f===i)if(s!=null)o.set(s(_));else throw _}})),o});a(this,"mapMaybe",(e,r)=>this.map(s=>e(s)??r));a(this,"feedProp",(e,r=!1)=>{const s=this.on(e.set);return e.onDispose(s),r?this.onDispose(e.dispose):this.onDispose(s),e});a(this,"deriveProp",(e=!0)=>this.feedProp(L(this.get()),e));a(this,"count",()=>{let e=0;return this.map(()=>++e)});a(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=r,this._value=e}get value(){return this._value}get $(){return this._$!==void 0?this._$:this._$=new Proxy(this,{get:(e,r)=>this.at(r)})}};a(N,"ofPromise",(e,r,s,n=(o,i)=>o===i)=>{const o=new N(r,n);return e.then(i=>o._setAndNotify(i,!1)).catch(i=>{s!=null?o._setAndNotify(s(i),!1):console.error("Unhandled promise rejection in Signal.ofPromise:",i)}),o}),a(N,"is",e=>e!=null&&e.$__signal__===!0);let d=N;const ut=typeof queueMicrotask=="function"?queueMicrotask:t=>Promise.resolve().then(t);class A extends d{constructor(r,s){super(void 0,s);a(this,"$__computed__",!0);a(this,"_isDirty",!1);a(this,"setDirty",()=>{this._isDirty||this._disposed||(this._isDirty=!0,this._derivatives.forEach(r=>r.setDirty()),this._scheduleNotify())});a(this,"_scheduleCount",0);a(this,"_scheduleNotify",()=>{const r=++this._scheduleCount;ut(()=>{this._scheduleCount!==r||this._disposed!==!1||this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!1))})});a(this,"get",()=>(this._isDirty&&(this._isDirty=!1,this._value=this._fn(),this._setAndNotify(this._value,!0)),this._value));this._fn=r,this.setDirty()}static is(r){return r!=null&&r.$__computed__===!0}get value(){return this.get()}}const U=class U extends d{constructor(){super(...arguments);a(this,"$__prop__",!0);a(this,"set",r=>{this._setAndNotify(r,!1)});a(this,"update",r=>{this._setAndNotify(r(this.get()),!1)});a(this,"reducer",(r,...s)=>{const n=this;return function o(i){const l=n.value;n.update(u=>r(u,i)),!n.equals(l,n.value)&&s.forEach(u=>u({previousState:l,state:n.value,action:i,dispatch:o}))}});a(this,"iso",(r,s,n=(o,i)=>o===i)=>{const o=new U(r(this.get()),n);return o.onDispose(this.on(i=>o.set(r(i)))),o.on(i=>this._setAndNotify(s(i),!1)),o});a(this,"atProp",r=>this.iso(s=>s[r],s=>({...this.value,[r]:s})))}get value(){return this.get()}set value(r){this._setAndNotify(r,!1)}};a(U,"is",r=>r!=null&&r.$__prop__===!0);let C=U;const j=(t,e,r=(s,n)=>s===n)=>{const s=new A(t,r);return e.forEach(n=>n.setDerivative(s)),s},be=(t,e)=>j(t,e).dispose,L=(t,e=(r,s)=>r===s)=>new C(t,e),R=(t,e=(r,s)=>r===s)=>new d(t,e),h={map:(t,e)=>d.is(t)?t.map(e):e(t),toSignal:(t,e)=>d.is(t)?t:R(t,e),maybeToSignal:(t,e)=>{if(t!=null)return h.toSignal(t,e)},get:t=>d.is(t)?t.get():t,on:(t,e)=>d.is(t)?t.on(e):(e(t),()=>{}),dispose:t=>{d.is(t)&&t.dispose()}},ct=(...t)=>(e,r)=>{const s=t.filter(n=>d.is(n));return j(()=>e(...t.map(n=>h.get(n))),s,r)},ft=(...t)=>e=>{const r=t.filter(s=>d.is(s));be(()=>e(...t.map(h.get)),r)};class Q{constructor(){a(this,"_store",new Map);a(this,"getItem",e=>this._store.get(e)??null);a(this,"setItem",(e,r)=>{this._store.set(e,r)})}}const Y=({key:t,defaultValue:e,store:r,serialize:s=JSON.stringify,deserialize:n=JSON.parse,equals:o=(l,u)=>l===u,onLoad:i=l=>l})=>{const l=r.getItem(t),u=new C(l!=null?i(n(l)):typeof e=="function"?e():e,o);return u.on(f=>{r.setItem(t,s(f))}),u},dt=t=>Y({...t,store:(window==null?void 0:window.localStorage)??new Q}),ht=t=>Y({...t,store:(window==null?void 0:window.sessionStorage)??new Q});function we(t){return typeof requestAnimationFrame=="function"?requestAnimationFrame(t):setTimeout(t,0)}const ke=(t,e,r,s)=>{const n=(s==null?void 0:s.duration)??300,o=(s==null?void 0:s.easing)??(y=>y),i=(s==null?void 0:s.equals)??((y,$)=>y===$);let l=s==null?void 0:s.interpolate,u=t,f=e(),_=performance.now(),P=null,J=!0;const z=new A(e,i),E=L(t,i);E.onDispose(()=>{P!==null&&cancelAnimationFrame(P)}),E.onDispose(z.dispose),r.forEach(y=>{y.setDerivative(z),y.onDispose(E.dispose)});const ot=y=>{f=y,_=performance.now(),u=E.value,J&&(J=!1,P=we(ge))},ge=()=>{const $=(performance.now()-_)/h.get(n),it=o($);l==null&&(l=Oe(u));let _e=l(u,f,it);$>=1?(J=!0,_e=f):P=we(ge),E.set(_e)};return z.on(ot),E},pt=(t,e)=>{const{initialValue:r,...s}=e??{};return ke(r??t.get(),t.get,[t],s)},mt=(t,e)=>{const{signals:r,literals:s}=Object.entries(t).reduce(({signals:o,literals:i},[l,u])=>(d.is(u)?o.push([l,u]):i[l]=u,{signals:o,literals:i}),{signals:[],literals:{}}),n=r.map(([,o])=>o);return j(()=>(r.forEach(([o,i])=>s[o]=i.value),e(s)),n)},Ne=new Set(["checked","disabled","hidden","selected"]),Ce=new Set(["rowSpan","colSpan","tabIndex","valueAsNumber"]),Le=new Set(["valueAsDate"]),Re=new Set(["value","textContent","innerText","innerHTML","outerHTML","className","classList"]),X=new Map,b=(t,e)=>{if(X.has(t))return X.get(t);{const r=e(t);return X.set(t,r),r}},Me=t=>(e,r)=>{r==null?e[t]=null:e[t]=!!r},Ve=t=>(e,r)=>{r==null?e[t]=null:e[t]=Number(r)},Fe=t=>(e,r)=>{r==null?e[t]=null:e[t]=r},$e=t=>(e,r)=>{r==null?e[t]=null:e[t]=String(r)},Ie=t=>(e,r)=>{r==null?e.removeAttribute(t):e.setAttribute(t,r)},Z=t=>Ne.has(t)?b(t,Me):Ce.has(t)?b(t,Ve):Le.has(t)?b(t,Fe):Re.has(t)?b(t,$e):b(t,Ie),x=t=>e=>Ne.has(t)?!!e[t]:Ce.has(t)?Number(e[t]):Le.has(t)?e[t]:Re.has(t)?String(e[t]):e.getAttribute(t);class g{constructor(e,r,s,n,o){a(this,"createElement",(e,r)=>r!==void 0?this.document.createElementNS(r,e):this.document.createElement(e));a(this,"createText",e=>this.document.createTextNode(e));a(this,"makeRef",()=>{const e=this.createText("");return this.appendOrInsert(e),this.withReference(e)});a(this,"appendOrInsert",e=>{this.reference===void 0?this.element.appendChild(e):this.element.insertBefore(e,this.reference)});a(this,"withDocument",e=>new g(e,this.element,this.reference,this.providers,!0));a(this,"withElement",e=>new g(this.document,e,void 0,this.providers,!1));a(this,"withFirstLevel",()=>new g(this.document,this.element,this.reference,this.providers,!0));a(this,"withReference",e=>new g(this.document,this.element,e,this.providers,this.isFirstLevel));a(this,"withProvider",(e,r)=>new g(this.document,this.element,this.reference,{...this.providers,[e]:r},this.isFirstLevel));a(this,"withProviders",e=>new g(this.document,this.element,this.reference,{...this.providers,...e},this.isFirstLevel));a(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new qe(e);return this.providers[e]});this.document=e,this.element=r,this.reference=s,this.providers=n,this.isFirstLevel=o}static of(e,r){return new g(e.ownerDocument,e,r,{},!0)}}class qe extends Error{constructor(e){super(`Provider not found: ${e.description}`)}}const m=t=>{const e=t;e&&e.onblur&&(e.onblur=null),!(!t||t.ownerDocument===void 0)&&t.parentElement&&t.parentElement.removeChild(t)},Be=t=>ee(t)?t:t.parentElement,ee=t=>t.nodeType===1,te=t=>e=>{ae(e);const r=e.createText(t);return e.appendOrInsert(r),s=>{s&&m(r)}},re=t=>e=>{ae(e);const r=e.createText(t.value);e.appendOrInsert(r);const s=t.on(n=>r.data=n);return n=>{s(),n&&m(r)}},gt=t=>d.is(t)?re(t):te(t),p=(...t)=>e=>{const r=t.map(s=>c(s)(e));return s=>{r.forEach(n=>n(s))}},S=()=>()=>{},_t=t=>e=>(ie(e),e.element.classList.add(...t),r=>{r&&e.element.classList.remove(...t)}),yt=t=>e=>{ie(e);const r=e.element;let s=[];const n=t.on(o=>{s.forEach(i=>r.classList.remove(i)),s=(o??"").split(" ").filter(i=>i.length>0),r.classList.add(...s)});return o=>{n(),o&&s.forEach(i=>r.classList.remove(i)),s.length=0}},M=(t,e)=>{const r=Z(t),s=x(t);return n=>{oe(n,t);const o=s(n.element);return r(n.element,e),i=>{i&&r(n.element,o)}}},V=(t,e)=>{const r=Z(t),s=x(t);return n=>{oe(n,t);const o=s(n.element),i=e.on(l=>r(n.element,l));return l=>{i(),l&&r(n.element,o)}}},w=new Proxy({},{get:(t,e)=>e==="class"?r=>d.is(r)?yt(r):_t((r??"").split(" ").filter(s=>s.length>0)):r=>d.is(r)?V(e,r):M(e,r)}),vt=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(`data-${e}`,r):M(`data-${e}`,r)}),St=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(`aria-${e}`,r):M(`aria-${e}`,r)}),At=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(e,r):M(e,r)}),wt=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(e,r):M(e,r)}),c=t=>t==null?S:Array.isArray(t)?p(...t.map(c)):typeof t=="string"?te(t):d.is(t)?re(t):t,se=(t,...e)=>r=>{const s=r.createElement(t,void 0);r.isFirstLevel&&T()&&le(s),r.appendOrInsert(s),r=r.withElement(s);const n=e.map(o=>c(o)(r));return o=>{n.forEach(i=>i(!1)),o&&m(s)}},ne=(t,e,...r)=>s=>{const n=s.createElement(t,e);s.isFirstLevel&&T()&&le(n),s.appendOrInsert(n),s=s.withElement(n);const o=r.map(i=>c(i)(s));return i=>{o.forEach(l=>l(!1)),i&&m(n)}},Pt=new Proxy({},{get:(t,e)=>(...r)=>se(e,r.flatMap(c))}),Et=new Proxy({},{get:(t,e)=>(...r)=>se("input",w.type(e),...r)}),Dt="http://www.w3.org/2000/svg",Tt=new Proxy({},{get:(t,e)=>(...r)=>ne(e,Dt,r.flatMap(c))}),Ot="http://www.w3.org/1998/Math/MathML",bt=new Proxy({},{get:(t,e)=>(...r)=>ne(e,Ot,r.flatMap(c))}),k="data-tempo-attr",I="data-tempo-class",Ue="data-tempo-node",q="data-tempo-text",kt=(t,e)=>{const r=t.getAttribute(e);if(r!=null){const s=t.getAttribute(k)??"{}",n={...JSON.parse(s),name:r};t.setAttribute(k,JSON.stringify(n).replace(/"/g,"&quot;"))}},oe=(t,e)=>{T()&&t.isFirstLevel&&kt(t.element,e)},Nt=t=>{t.querySelectorAll(`[${k}]`).forEach(e=>{const r=JSON.parse((e.getAttribute(k)??"{}").replace(/&quot;/g,'"'));for(const[s,n]of Object.entries(r))e.setAttribute(s,n);e.removeAttribute(k)})};function Ct(t){t.setAttribute(I,t.className)}const ie=t=>{T()&&t.isFirstLevel&&Ct(t.element)},Lt=t=>{t.querySelectorAll(`[${I}]`).forEach(e=>{const r=e.getAttribute(I);r!==null&&(e.className=r,e.removeAttribute(I))})},le=t=>{t.setAttribute(Ue,"")},Rt=t=>{t.querySelectorAll(`[${Ue}]`).forEach(e=>{m(e)})},Mt=t=>{t.setAttribute(q,t.textContent??"")},ae=t=>{T()&&t.isFirstLevel&&Mt(t.element)},je=t=>{t.querySelectorAll(`[${q}]`).forEach(e=>{e.textContent=e.getAttribute(q),e.removeAttribute(q)})},We=t=>{Rt(t),Lt(t),Nt(t),je(t)},Ge=()=>{const t=globalThis;return t.__tempoSSR__==null&&(t.__tempoSSR__={isSSR:!1,counter:0}),t.__tempoSSR__},ue=(t,e)=>{const r=Ge();r[t]=e},Je=t=>Ge()[t],K=t=>{ue("isSSR",t)},ce=()=>Je("counter"),Vt=()=>{ue("counter",(ce()??0)+1)},Ft=()=>{ue("counter",(ce()??0)-1)},$t=(t=30)=>(K(!0),new Promise((e,r)=>{let s;const n=setInterval(()=>{ce()<=0&&(clearInterval(n),clearTimeout(s),K(!1),e())},30);s=setTimeout(()=>{clearInterval(n),K(!1),r(new Error("SSR Timeout"))},t*1e3)})),It=t=>(Vt(),c(t(Ft))),T=()=>Je("isSSR"),fe=(t,e)=>{if(typeof e=="function")return fe(t,{then:e});const r=e.pending!=null?c(e.pending):S,s=e.then,n=e.error!=null?o=>c(e.error(o)):()=>S;return o=>{let i=!0;const l=t();o=o.makeRef();let u=c(r)(o);return l.then(f=>{i&&(u(!0),u=c(s(f))(o))},f=>{i&&(u(!0),u=c(n(f))(o))}),f=>{i=!1,u(f),f&&o.reference&&m(o.reference)}}},qt=(t,e)=>fe(()=>t,e),ze=(t,e)=>r=>(r.element.addEventListener(t,e),s=>{s&&r.element.removeEventListener(t,e)}),He=t=>ze("click",e=>{e.preventDefault();const r=e.target;setTimeout(()=>{const s=r.ownerDocument!=null?r==null?void 0:r.checked:void 0;s!=null&&t(!s)},0)}),F=new Proxy({},{get:(t,e)=>r=>ze(e,r)}),Xe=t=>e=>{const r=e.target;t(r.value)},Ke=t=>e=>{const r=e.target;t(r.valueAsNumber)},Qe=t=>e=>{const r=e.target;if(r.value==="")return;const s=r.value.split("-"),n=new Date(Number(s[0]),Number(s[1])-1,Number(s[2].substring(0,2)));t(n)},Ye=t=>e=>{const r=e.target;if(r.value==="")return;const s=r.value.split("T"),n=s[0].split("-"),o=new Date(Number(n[0]),Number(n[1])-1,Number(n[2])),i=s[1].split(":");o.setHours(Number(i[0])),o.setMinutes(Number(i[1])),o.setSeconds(Number(i[2])),t(o)},Bt=t=>e=>{const r=e.target;t(r.checked)},Ut=t=>e=>{e.preventDefault(),t()},jt=t=>e=>{e.stopPropagation(),t()},Wt=t=>e=>{e.stopImmediatePropagation(),t()},Gt=(t,e="input")=>p(w.valueAsDate(t),F[e](Qe(t.set))),Jt=(t,e="input")=>p(w.valueAsDate(t),F[e](Ye(t.set))),zt=(t,e="input")=>p(w.valueAsNumber(t),F[e](Ke(t.set))),Ht=(t,e="input")=>p(w.value(t),F[e](Xe(t.set))),Xt=t=>p(w.checked(t),He(t.set)),W=(t,e)=>{if(d.is(t))return s=>{s=s.makeRef();let n,o;const i=t.map(f=>Object.keys(f)[0]);let l;const u=i.on(f=>{if(f!==l){o==null||o.dispose(),n==null||n(!0),o=t.map(P=>P[f]);const _=e[f](o);n=c(_)(s),l=f}});return f=>{u(),f&&s.reference!=null&&m(s.reference),n==null||n(!0)}};const r=Object.keys(t)[0];return c(e[r](R(t[r])))},de=(t,e,r)=>W(h.map(t,s=>({[s[e]]:s})),r),Kt=(t,e)=>de(t,"kind",e),Qt=(t,e)=>{const r=h.map(t,([s,n])=>({[s]:n}));return W(r,e)},Yt=(t,e)=>de(t,"type",e),Ze=(t,e)=>W(h.map(t,r=>({[r]:!0})),e),Zt=(t,e={})=>r=>{const s=(e==null?void 0:e.firstSeparator)??t,n=(e==null?void 0:e.lastSeparator)??t;return Ze(r.map(o=>o.isFirst?"first":o.isLast?"last":"other"),{first:()=>s,last:()=>n,other:()=>t})},xe=(t,e)=>r=>{const s=Object.values(t).reduce((n,o)=>{const i=r.getProvider(o);if(i==null)throw new Error(`No provider found for mark: ${o.description}`);return n[o]=i,n},{});return c(e(s))(r)},xt=(t,e)=>r=>{const s=[],n=Object.entries(t).reduce((o,[i,l])=>(s.push(l(u=>(Reflect.set(o,i,u),null))(r)),o),{});return s.push(e(n)(r)),o=>{s.forEach(i=>i(o))}},er=(t,e)=>xe([t],r=>c(e(r[t]))),tr=(t,e)=>xe(t,r=>c(e(r))),rr=t=>e=>t(e),sr=t=>e=>(e.appendOrInsert(t),r=>{r&&m(t)}),et=(t,e,r)=>{if(d.is(t)){const s=t;return n=>{n=n.makeRef();let o=null,i=!1;const l=L(null),u=s.on(f=>{f==null?(o==null||o(!0),o=c((r==null?void 0:r())??S)(n),i=!1):(l.value=f,i||(o==null||o(!0),o=c(e(l))(n),i=!0))});return f=>{u(),o==null||o(f),f&&n.reference&&m(n.reference)}}}else{const s=t;if(s==null){const n=r==null?void 0:r();return n!=null?c(n):S}return c(e(R(s)))}},B=t=>e=>r=>t(r,e),G=(t,e,r)=>he(t,()=>e,()=>r),he=(t,e,r)=>et(h.map(t,s=>s?!0:null),e,r??void 0),nr=(t,e,r)=>tt(t,()=>e,()=>r),tt=(t,e,r)=>he(h.map(t,s=>!s),e,r),pe=(t,e,r)=>r!=null?pe(t,s=>{const n=new D(s.index,s.total.map(o=>o-1));return p(B(n.dispose),c(e(s)),G(s.isLast,S,r(n)))}):d.is(t)?s=>{s=s.makeRef();const n=Array.from({length:t.value},(l,u)=>u).map(l=>new D(l,t)),o=n.map(l=>c(e(l))(s)),i=t.on(l=>{for(;l<o.length;)n.pop().dispose(),o.pop()(!0);for(let u=0;u<l;u++)if(n[u]==null){n[u]=new D(u,t);const f=c(e(n[u]));o[u]=f(s)}});return l=>{i(),l&&s.reference&&m(s.reference)}}:p(...Array.from({length:t},(s,n)=>n).map(s=>c(e(new D(s,R(t)))))),rt=(t,e,r)=>{if(r!=null)return rt(t,(s,n)=>{const o=new D(n.index,n.total.map(i=>i-1));return p([B(o.dispose),c(e(s,n)),G(n.isLast,S,r(o))])});{const s=h.map(t,o=>o.length),n=h.toSignal(t);return pe(s,o=>{const i=n.map(l=>l[o.index]);return p(B(i.dispose),c(e(i,o)))})}},or=(t,e)=>{if(d.is(t)){const r=t;return s=>{s=s.makeRef();const n=r.map(l=>c(e(l)));let o=()=>{};const i=n.on(l=>{o(!0),o=l(s)});return l=>{i(),o(l)}}}return c(e(t))},ir=(t,e,r=S)=>G(h.map(t,s=>s.length>0),e,r),lr=t=>e=>t(e.element)??(()=>{}),me=(t,e)=>{const r=t(e);return()=>r(!0)},ar=(t,e,{doc:r,clear:s}={})=>{const n=typeof e=="string"?(r??document).querySelector(e):e;if(n===null)throw new st(`Cannot find element by selector for render: ${e}`);s!==!1&&(r??n.ownerDocument)!=null&&We(r??n.ownerDocument);const o=Be(n),i=ee(n)?void 0:n,l=g.of(o,i);return me(t,l)};class st extends Error{constructor(e){super(e)}}const ur=(t,e)=>r=>{const s=r.document.querySelector(t);if(s===null)throw new Error(`Cannot find element by selector for portal: ${t}`);return me(c(e),r.withElement(s).withFirstLevel())},cr=t=>Symbol(t),nt=(t,e)=>r=>c(e)(r.withProviders(t)),fr=(...t)=>t.length>0?t.reduceRight((e,r)=>s=>e(r(s))):c,dr=(t,e,r)=>nt({[t]:e},c(r)),hr=(t,e)=>nt(t,c(e)),pr=(t,e)=>r=>{const s=r.element,n=s.style.getPropertyValue(t);return s.style.setProperty(t,e),o=>{o&&s.style.setProperty(t,n)}},mr=(t,e)=>r=>{const s=r.element,n=s.style.getPropertyValue(t);return e.on(o=>s.style.setProperty(t,o)),o=>{o&&s.style.setProperty(t,n)}},gr=new Proxy({},{get:(t,e)=>r=>d.is(r)?mr(e,r):pr(e,r)});exports.Async=qt;exports.BindChecked=Xt;exports.BindDate=Gt;exports.BindDateTime=Jt;exports.BindNumber=zt;exports.BindText=Ht;exports.Computed=A;exports.Conjunction=Zt;exports.DOMContext=g;exports.DOMNode=sr;exports.El=se;exports.ElNS=ne;exports.ElementPosition=D;exports.Empty=S;exports.Ensure=et;exports.ForEach=rt;exports.Fragment=p;exports.LazyUnless=tt;exports.LazyWhen=he;exports.MapSignal=or;exports.MemoryStore=Q;exports.NotEmpty=ir;exports.OnChecked=He;exports.OnCtx=rr;exports.OnMount=lr;exports.OnUnmount=B;exports.OneOf=W;exports.OneOfField=de;exports.OneOfKind=Kt;exports.OneOfTuple=Qt;exports.OneOfType=Yt;exports.OneOfValue=Ze;exports.Portal=ur;exports.Prop=C;exports.Provide=fr;exports.ProviderNotFoundError=qe;exports.RenderingError=st;exports.Repeat=pe;exports.Signal=d;exports.Task=fe;exports.TextNode=gt;exports.Unless=nr;exports.Use=xt;exports.UseProvider=er;exports.UseProviders=tr;exports.UseSSRDone=It;exports.Value=h;exports.When=G;exports.WithProvider=dr;exports.WithProviders=hr;exports._addNodeTracker=le;exports._clearSSR=We;exports._getSelfOrParentElement=Be;exports._isElement=ee;exports._makeGetter=x;exports._makeSetter=Z;exports._maybeAddAttributeTracker=oe;exports._maybeAddClassTracker=ie;exports._maybeAddTextTracker=ae;exports._removeDOMNode=m;exports._setAttribute=Ie;exports._setBooleanProperty=Me;exports._setDateProperty=Fe;exports._setNumberProperty=Ve;exports._setStringProperty=$e;exports._signalText=re;exports._staticText=te;exports.animateSignal=pt;exports.animateSignals=ke;exports.aria=St;exports.attr=w;exports.dataAttr=vt;exports.emitChecked=Bt;exports.emitPreventDefault=Ut;exports.emitStopImmediatePropagation=Wt;exports.emitStopPropagation=jt;exports.emitValue=Xe;exports.emitValueAsDate=Qe;exports.emitValueAsDateTime=Ye;exports.emitValueAsNumber=Ke;exports.endInterpolate=Te;exports.guessInterpolate=Oe;exports.html=Pt;exports.input=Et;exports.interpolateDate=De;exports.interpolateNumber=Pe;exports.interpolateString=Ee;exports.isSSR=T;exports.localStorageProp=dt;exports.makeComputed=j;exports.makeComputedOf=ct;exports.makeComputedRecord=mt;exports.makeEffect=be;exports.makeEffectOf=ft;exports.makeProp=L;exports.makeProviderMark=cr;exports.makeSignal=R;exports.math=bt;exports.mathAttr=wt;exports.on=F;exports.prepareSSR=$t;exports.removeTextTrackers=je;exports.render=ar;exports.renderWithContext=me;exports.renderableOfTNode=c;exports.sessionStorageProp=ht;exports.storedProp=Y;exports.style=gr;exports.svg=Tt;exports.svgAttr=At;
package/index.d.ts CHANGED
@@ -29,7 +29,7 @@ export * from './renderable/empty';
29
29
  export * from './renderable/ensure';
30
30
  export * from './renderable/foreach';
31
31
  export * from './renderable/fragment';
32
- export * from './renderable/handler';
32
+ export * from './renderable/on';
33
33
  export * from './renderable/map-signal';
34
34
  export * from './renderable/not-empty';
35
35
  export * from './renderable/onunmount';
package/index.js CHANGED
@@ -1,12 +1,12 @@
1
- var Re = Object.defineProperty;
1
+ var Me = Object.defineProperty;
2
2
  var ee = (t) => {
3
3
  throw TypeError(t);
4
4
  };
5
- var Me = (t, e, r) => e in t ? Re(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r;
6
- var u = (t, e, r) => Me(t, typeof e != "symbol" ? e + "" : e, r), te = (t, e, r) => e.has(t) || ee("Cannot " + r);
7
- var D = (t, e, r) => (te(t, e, "read from private field"), r ? r.call(t) : e.get(t)), re = (t, e, r) => e.has(t) ? ee("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t) : e.set(t, r), J = (t, e, r, s) => (te(t, e, "write to private field"), s ? s.call(t, r) : e.set(t, r), r);
8
- const $e = (t, e, r) => t + (e - t) * r;
9
- const Fe = (t, e, r) => {
5
+ var $e = (t, e, r) => e in t ? Me(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r;
6
+ var u = (t, e, r) => $e(t, typeof e != "symbol" ? e + "" : e, r), te = (t, e, r) => e.has(t) || ee("Cannot " + r);
7
+ var D = (t, e, r) => (te(t, e, "read from private field"), r ? r.call(t) : e.get(t)), re = (t, e, r) => e.has(t) ? ee("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t) : e.set(t, r), G = (t, e, r, s) => (te(t, e, "write to private field"), s ? s.call(t, r) : e.set(t, r), r);
8
+ const Fe = (t, e, r) => t + (e - t) * r;
9
+ const Ve = (t, e, r) => {
10
10
  const s = Math.max(t.length, e.length);
11
11
  let n = "";
12
12
  for (let o = 0; o < s; o++) {
@@ -16,7 +16,7 @@ const Fe = (t, e, r) => {
16
16
  isNaN(l) && (l = 97), n += String.fromCharCode(i + (l - i) * r);
17
17
  }
18
18
  return n;
19
- }, Ve = (t, e, r) => new Date(t.getTime() + (e.getTime() - t.getTime()) * r), qe = (t, e) => e, Ie = (t) => typeof t == "number" ? $e : typeof t == "string" ? Fe : t instanceof Date ? Ve : qe;
19
+ }, qe = (t, e, r) => new Date(t.getTime() + (e.getTime() - t.getTime()) * r), Ie = (t, e) => e, Be = (t) => typeof t == "number" ? Fe : typeof t == "string" ? Ve : t instanceof Date ? qe : Ie;
20
20
  var y;
21
21
  class T {
22
22
  /**
@@ -46,7 +46,7 @@ class T {
46
46
  u(this, "isOdd");
47
47
  re(this, y);
48
48
  u(this, "dispose", () => {
49
- D(this, y) != null && (D(this, y).dispose(), J(this, y, void 0));
49
+ D(this, y) != null && (D(this, y).dispose(), G(this, y, void 0));
50
50
  });
51
51
  this.index = e, this.total = r, this.counter = e + 1, this.isFirst = e === 0, this.isEven = e % 2 === 1, this.isOdd = e % 2 === 0;
52
52
  }
@@ -55,7 +55,7 @@ class T {
55
55
  * @returns `true` if the element is the last element, `false` otherwise.
56
56
  */
57
57
  get isLast() {
58
- return D(this, y) == null && J(this, y, this.total.map((e) => this.counter === e)), D(this, y);
58
+ return D(this, y) == null && G(this, y, this.total.map((e) => this.counter === e)), D(this, y);
59
59
  }
60
60
  }
61
61
  y = new WeakMap();
@@ -359,7 +359,7 @@ u(C, "is", (e) => (
359
359
  e != null && e.$__signal__ === !0
360
360
  ));
361
361
  let h = C;
362
- const Be = typeof queueMicrotask == "function" ? queueMicrotask : (t) => Promise.resolve().then(t);
362
+ const je = typeof queueMicrotask == "function" ? queueMicrotask : (t) => Promise.resolve().then(t);
363
363
  class E extends h {
364
364
  /**
365
365
  * Represents a Signal object.
@@ -395,7 +395,7 @@ class E extends h {
395
395
  */
396
396
  u(this, "_scheduleNotify", () => {
397
397
  const r = ++this._scheduleCount;
398
- Be(() => {
398
+ je(() => {
399
399
  this._scheduleCount !== r || this._disposed !== !1 || this._isDirty && (this._isDirty = !1, this._setAndNotify(this._fn(), !1));
400
400
  });
401
401
  });
@@ -508,7 +508,7 @@ let F = q;
508
508
  const z = (t, e, r = (s, n) => s === n) => {
509
509
  const s = new E(t, r);
510
510
  return e.forEach((n) => n.setDerivative(s)), s;
511
- }, je = (t, e) => z(t, e).dispose, V = (t, e = (r, s) => r === s) => new F(t, e), I = (t, e = (r, s) => r === s) => new h(t, e), d = {
511
+ }, Ue = (t, e) => z(t, e).dispose, V = (t, e = (r, s) => r === s) => new F(t, e), I = (t, e = (r, s) => r === s) => new h(t, e), d = {
512
512
  /**
513
513
  * Maps a value or a Signal to a new value.
514
514
  * If the value is a Signal, it returns a new Signal with the mapped value.
@@ -565,16 +565,16 @@ const z = (t, e, r = (s, n) => s === n) => {
565
565
  dispose: (t) => {
566
566
  h.is(t) && t.dispose();
567
567
  }
568
- }, At = (...t) => (e, r) => {
568
+ }, Pt = (...t) => (e, r) => {
569
569
  const s = t.filter((n) => h.is(n));
570
570
  return z(
571
571
  () => e(...t.map((n) => d.get(n))),
572
572
  s,
573
573
  r
574
574
  );
575
- }, Et = (...t) => (e) => {
575
+ }, Dt = (...t) => (e) => {
576
576
  const r = t.filter((s) => h.is(s));
577
- je(() => e(...t.map(d.get)), r);
577
+ Ue(() => e(...t.map(d.get)), r);
578
578
  };
579
579
  class ne {
580
580
  constructor() {
@@ -611,43 +611,43 @@ const oe = ({
611
611
  return a.on((f) => {
612
612
  r.setItem(t, s(f));
613
613
  }), a;
614
- }, Pt = (t) => oe({
614
+ }, bt = (t) => oe({
615
615
  ...t,
616
616
  store: (window == null ? void 0 : window.localStorage) ?? new ne()
617
- }), Dt = (t) => oe({
617
+ }), Tt = (t) => oe({
618
618
  ...t,
619
619
  store: (window == null ? void 0 : window.sessionStorage) ?? new ne()
620
620
  });
621
621
  function se(t) {
622
622
  return typeof requestAnimationFrame == "function" ? requestAnimationFrame(t) : setTimeout(t, 0);
623
623
  }
624
- const Ue = (t, e, r, s) => {
624
+ const Ge = (t, e, r, s) => {
625
625
  const n = (s == null ? void 0 : s.duration) ?? 300, o = (s == null ? void 0 : s.easing) ?? ((_) => _), i = (s == null ? void 0 : s.equals) ?? ((_, R) => _ === R);
626
- let l = s == null ? void 0 : s.interpolate, a = t, f = e(), g = performance.now(), w = null, U = !0;
627
- const G = new E(e, i), A = V(t, i);
626
+ let l = s == null ? void 0 : s.interpolate, a = t, f = e(), g = performance.now(), w = null, j = !0;
627
+ const U = new E(e, i), A = V(t, i);
628
628
  A.onDispose(() => {
629
629
  w !== null && cancelAnimationFrame(w);
630
- }), A.onDispose(G.dispose), r.forEach((_) => {
631
- _.setDerivative(G), _.onDispose(A.dispose);
630
+ }), A.onDispose(U.dispose), r.forEach((_) => {
631
+ _.setDerivative(U), _.onDispose(A.dispose);
632
632
  });
633
- const Le = (_) => {
634
- f = _, g = performance.now(), a = A.value, U && (U = !1, w = se(K));
633
+ const Ne = (_) => {
634
+ f = _, g = performance.now(), a = A.value, j && (j = !1, w = se(K));
635
635
  }, K = () => {
636
- const R = (performance.now() - g) / d.get(n), Ne = o(R);
637
- l == null && (l = Ie(a));
638
- let x = l(a, f, Ne);
639
- R >= 1 ? (U = !0, x = f) : w = se(K), A.set(x);
636
+ const R = (performance.now() - g) / d.get(n), Re = o(R);
637
+ l == null && (l = Be(a));
638
+ let x = l(a, f, Re);
639
+ R >= 1 ? (j = !0, x = f) : w = se(K), A.set(x);
640
640
  };
641
- return G.on(Le), A;
642
- }, bt = (t, e) => {
641
+ return U.on(Ne), A;
642
+ }, Ot = (t, e) => {
643
643
  const { initialValue: r, ...s } = e ?? {};
644
- return Ue(
644
+ return Ge(
645
645
  r ?? t.get(),
646
646
  t.get,
647
647
  [t],
648
648
  s
649
649
  );
650
- }, Tt = (t, e) => {
650
+ }, Ct = (t, e) => {
651
651
  const { signals: r, literals: s } = Object.entries(t).reduce(
652
652
  ({ signals: o, literals: i }, [l, a]) => (h.is(a) ? o.push([l, a]) : i[l] = a, { signals: o, literals: i }),
653
653
  { signals: [], literals: {} }
@@ -666,24 +666,24 @@ const Ue = (t, e, r, s) => {
666
666
  "outerHTML",
667
667
  "className",
668
668
  "classList"
669
- ]), H = /* @__PURE__ */ new Map(), b = (t, e) => {
670
- if (H.has(t))
671
- return H.get(t);
669
+ ]), J = /* @__PURE__ */ new Map(), b = (t, e) => {
670
+ if (J.has(t))
671
+ return J.get(t);
672
672
  {
673
673
  const r = e(t);
674
- return H.set(t, r), r;
674
+ return J.set(t, r), r;
675
675
  }
676
- }, Ge = (t) => (e, r) => {
677
- r == null ? e[t] = null : e[t] = !!r;
678
676
  }, Je = (t) => (e, r) => {
677
+ r == null ? e[t] = null : e[t] = !!r;
678
+ }, We = (t) => (e, r) => {
679
679
  r == null ? e[t] = null : e[t] = Number(r);
680
680
  }, He = (t) => (e, r) => {
681
681
  r == null ? e[t] = null : e[t] = r;
682
- }, We = (t) => (e, r) => {
682
+ }, ze = (t) => (e, r) => {
683
683
  r == null ? e[t] = null : e[t] = String(r);
684
684
  }, Xe = (t) => (e, r) => {
685
685
  r == null ? e.removeAttribute(t) : e.setAttribute(t, r);
686
- }, ce = (t) => ie.has(t) ? b(t, Ge) : le.has(t) ? b(t, Je) : ue.has(t) ? b(t, He) : ae.has(t) ? b(t, We) : b(t, Xe), fe = (t) => (e) => ie.has(t) ? !!e[t] : le.has(t) ? Number(e[t]) : ue.has(t) ? e[t] : ae.has(t) ? String(e[t]) : e.getAttribute(t);
686
+ }, ce = (t) => ie.has(t) ? b(t, Je) : le.has(t) ? b(t, We) : ue.has(t) ? b(t, He) : ae.has(t) ? b(t, ze) : b(t, Xe), fe = (t) => (e) => ie.has(t) ? !!e[t] : le.has(t) ? Number(e[t]) : ue.has(t) ? e[t] : ae.has(t) ? String(e[t]) : e.getAttribute(t);
687
687
  class v {
688
688
  /**
689
689
  * Constructs a new `DOMContext` instance.
@@ -805,7 +805,7 @@ class v {
805
805
  */
806
806
  u(this, "getProvider", (e) => {
807
807
  if (this.providers[e] === void 0)
808
- throw new ze(e);
808
+ throw new Qe(e);
809
809
  return this.providers[e];
810
810
  });
811
811
  this.document = e, this.element = r, this.reference = s, this.providers = n, this.isFirstLevel = o;
@@ -821,7 +821,7 @@ class v {
821
821
  return new v(e.ownerDocument, e, r, {}, !0);
822
822
  }
823
823
  }
824
- class ze extends Error {
824
+ class Qe extends Error {
825
825
  constructor(e) {
826
826
  super(`Provider not found: ${e.description}`);
827
827
  }
@@ -829,7 +829,7 @@ class ze extends Error {
829
829
  const m = (t) => {
830
830
  const e = t;
831
831
  e && e.onblur && (e.onblur = null), !(!t || t.ownerDocument === void 0) && t.parentElement && t.parentElement.removeChild(t);
832
- }, Qe = (t) => he(t) ? t : t.parentElement, he = (t) => t.nodeType === 1, de = (t) => (e) => {
832
+ }, Ye = (t) => he(t) ? t : t.parentElement, he = (t) => t.nodeType === 1, de = (t) => (e) => {
833
833
  we(e);
834
834
  const r = e.createText(t);
835
835
  return e.appendOrInsert(r), (s) => {
@@ -843,15 +843,15 @@ const m = (t) => {
843
843
  return (n) => {
844
844
  s(), n && m(r);
845
845
  };
846
- }, Ot = (t) => h.is(t) ? pe(t) : de(t), p = (...t) => (e) => {
846
+ }, Lt = (t) => h.is(t) ? pe(t) : de(t), p = (...t) => (e) => {
847
847
  const r = t.map((s) => c(s)(e));
848
848
  return (s) => {
849
849
  r.forEach((n) => n(s));
850
850
  };
851
851
  }, S = () => () => {
852
- }, Ye = (t) => (e) => (ye(e), e.element.classList.add(...t), (r) => {
852
+ }, Ze = (t) => (e) => (ye(e), e.element.classList.add(...t), (r) => {
853
853
  r && e.element.classList.remove(...t);
854
- }), Ze = (t) => (e) => {
854
+ }), Ke = (t) => (e) => {
855
855
  ye(e);
856
856
  const r = e.element;
857
857
  let s = [];
@@ -861,7 +861,7 @@ const m = (t) => {
861
861
  return (o) => {
862
862
  n(), o && s.forEach((i) => r.classList.remove(i)), s.length = 0;
863
863
  };
864
- }, k = (t, e) => {
864
+ }, L = (t, e) => {
865
865
  const r = ce(t), s = fe(t);
866
866
  return (n) => {
867
867
  ve(n, t);
@@ -870,7 +870,7 @@ const m = (t) => {
870
870
  i && r(n.element, o);
871
871
  };
872
872
  };
873
- }, L = (t, e) => {
873
+ }, k = (t, e) => {
874
874
  const r = ce(t), s = fe(t);
875
875
  return (n) => {
876
876
  ve(n, t);
@@ -893,17 +893,17 @@ const m = (t) => {
893
893
  * @returns The renderable component for the specified attribute.
894
894
  *
895
895
  */
896
- get: (t, e) => e === "class" ? (r) => h.is(r) ? Ze(r) : Ye(
896
+ get: (t, e) => e === "class" ? (r) => h.is(r) ? Ke(r) : Ze(
897
897
  (r ?? "").split(" ").filter((s) => s.length > 0)
898
- ) : (r) => h.is(r) ? L(
898
+ ) : (r) => h.is(r) ? k(
899
899
  e,
900
900
  r
901
- ) : k(
901
+ ) : L(
902
902
  e,
903
903
  r
904
904
  )
905
905
  }
906
- ), Ct = new Proxy(
906
+ ), kt = new Proxy(
907
907
  {},
908
908
  {
909
909
  /**
@@ -914,12 +914,12 @@ const m = (t) => {
914
914
  * @returns The renderable component for the specified attribute.
915
915
  *
916
916
  */
917
- get: (t, e) => (r) => h.is(r) ? L(
917
+ get: (t, e) => (r) => h.is(r) ? k(
918
918
  `data-${e}`,
919
919
  r
920
- ) : k(`data-${e}`, r)
920
+ ) : L(`data-${e}`, r)
921
921
  }
922
- ), kt = new Proxy(
922
+ ), Nt = new Proxy(
923
923
  {},
924
924
  {
925
925
  /**
@@ -930,15 +930,15 @@ const m = (t) => {
930
930
  * @returns The renderable component for the specified attribute.
931
931
  *
932
932
  */
933
- get: (t, e) => (r) => h.is(r) ? L(
933
+ get: (t, e) => (r) => h.is(r) ? k(
934
934
  `aria-${e}`,
935
935
  r
936
- ) : k(
936
+ ) : L(
937
937
  `aria-${e}`,
938
938
  r
939
939
  )
940
940
  }
941
- ), Lt = new Proxy(
941
+ ), Rt = new Proxy(
942
942
  {},
943
943
  {
944
944
  /**
@@ -949,15 +949,15 @@ const m = (t) => {
949
949
  * @returns The renderable component for the specified attribute.
950
950
  *
951
951
  */
952
- get: (t, e) => (r) => h.is(r) ? L(
952
+ get: (t, e) => (r) => h.is(r) ? k(
953
953
  e,
954
954
  r
955
- ) : k(
955
+ ) : L(
956
956
  e,
957
957
  r
958
958
  )
959
959
  }
960
- ), Nt = new Proxy(
960
+ ), Mt = new Proxy(
961
961
  {},
962
962
  {
963
963
  /**
@@ -967,10 +967,10 @@ const m = (t) => {
967
967
  * @returns The renderable component for the specified attribute.
968
968
  *
969
969
  */
970
- get: (t, e) => (r) => h.is(r) ? L(
970
+ get: (t, e) => (r) => h.is(r) ? k(
971
971
  e,
972
972
  r
973
- ) : k(
973
+ ) : L(
974
974
  e,
975
975
  r
976
976
  )
@@ -989,7 +989,7 @@ const m = (t) => {
989
989
  return (i) => {
990
990
  o.forEach((l) => l(!1)), i && m(n);
991
991
  };
992
- }, Rt = new Proxy(
992
+ }, $t = new Proxy(
993
993
  {},
994
994
  {
995
995
  /**
@@ -999,7 +999,7 @@ const m = (t) => {
999
999
  */
1000
1000
  get: (t, e) => (...r) => me(e, r.flatMap(c))
1001
1001
  }
1002
- ), Mt = new Proxy(
1002
+ ), Ft = new Proxy(
1003
1003
  {},
1004
1004
  {
1005
1005
  /**
@@ -1009,7 +1009,7 @@ const m = (t) => {
1009
1009
  */
1010
1010
  get: (t, e) => (...r) => me("input", P.type(e), ...r)
1011
1011
  }
1012
- ), Ke = "http://www.w3.org/2000/svg", $t = new Proxy(
1012
+ ), xe = "http://www.w3.org/2000/svg", Vt = new Proxy(
1013
1013
  {},
1014
1014
  {
1015
1015
  /**
@@ -1017,9 +1017,9 @@ const m = (t) => {
1017
1017
  * @param tagName - The SVG tag name.
1018
1018
  * @returns A renderable function that creates and appends the SVG element to the DOM.
1019
1019
  */
1020
- get: (t, e) => (...r) => ge(e, Ke, r.flatMap(c))
1020
+ get: (t, e) => (...r) => ge(e, xe, r.flatMap(c))
1021
1021
  }
1022
- ), xe = "http://www.w3.org/1998/Math/MathML", Ft = new Proxy(
1022
+ ), et = "http://www.w3.org/1998/Math/MathML", qt = new Proxy(
1023
1023
  {},
1024
1024
  {
1025
1025
  /**
@@ -1027,9 +1027,9 @@ const m = (t) => {
1027
1027
  * @param tagName - The Math tag name.
1028
1028
  * @returns A renderable function that creates and appends the Math element to the DOM.
1029
1029
  */
1030
- get: (t, e) => (...r) => ge(e, xe, r.flatMap(c))
1030
+ get: (t, e) => (...r) => ge(e, et, r.flatMap(c))
1031
1031
  }
1032
- ), O = "data-tempo-attr", M = "data-tempo-class", _e = "data-tempo-node", $ = "data-tempo-text", et = (t, e) => {
1032
+ ), O = "data-tempo-attr", M = "data-tempo-class", _e = "data-tempo-node", $ = "data-tempo-text", tt = (t, e) => {
1033
1033
  const r = t.getAttribute(e);
1034
1034
  if (r != null) {
1035
1035
  const s = t.getAttribute(O) ?? "{}", n = { ...JSON.parse(s), name: r };
@@ -1039,8 +1039,8 @@ const m = (t) => {
1039
1039
  );
1040
1040
  }
1041
1041
  }, ve = (t, e) => {
1042
- N() && t.isFirstLevel && et(t.element, e);
1043
- }, tt = (t) => {
1042
+ N() && t.isFirstLevel && tt(t.element, e);
1043
+ }, rt = (t) => {
1044
1044
  t.querySelectorAll(`[${O}]`).forEach((e) => {
1045
1045
  const r = JSON.parse(
1046
1046
  (e.getAttribute(O) ?? "{}").replace(/&quot;/g, '"')
@@ -1050,56 +1050,56 @@ const m = (t) => {
1050
1050
  e.removeAttribute(O);
1051
1051
  });
1052
1052
  };
1053
- function rt(t) {
1053
+ function st(t) {
1054
1054
  t.setAttribute(M, t.className);
1055
1055
  }
1056
1056
  const ye = (t) => {
1057
- N() && t.isFirstLevel && rt(t.element);
1058
- }, st = (t) => {
1057
+ N() && t.isFirstLevel && st(t.element);
1058
+ }, nt = (t) => {
1059
1059
  t.querySelectorAll(`[${M}]`).forEach((e) => {
1060
1060
  const r = e.getAttribute(M);
1061
1061
  r !== null && (e.className = r, e.removeAttribute(M));
1062
1062
  });
1063
1063
  }, Se = (t) => {
1064
1064
  t.setAttribute(_e, "");
1065
- }, nt = (t) => {
1065
+ }, ot = (t) => {
1066
1066
  t.querySelectorAll(`[${_e}]`).forEach((e) => {
1067
1067
  m(e);
1068
1068
  });
1069
- }, ot = (t) => {
1069
+ }, it = (t) => {
1070
1070
  t.setAttribute($, t.textContent ?? "");
1071
1071
  }, we = (t) => {
1072
- N() && t.isFirstLevel && ot(t.element);
1073
- }, it = (t) => {
1072
+ N() && t.isFirstLevel && it(t.element);
1073
+ }, lt = (t) => {
1074
1074
  t.querySelectorAll(`[${$}]`).forEach((e) => {
1075
1075
  e.textContent = e.getAttribute($), e.removeAttribute($);
1076
1076
  });
1077
- }, lt = (t) => {
1078
- nt(t), st(t), tt(t), it(t);
1077
+ }, ut = (t) => {
1078
+ ot(t), nt(t), rt(t), lt(t);
1079
1079
  }, Ae = () => {
1080
1080
  const t = globalThis;
1081
1081
  return t.__tempoSSR__ == null && (t.__tempoSSR__ = {
1082
1082
  isSSR: !1,
1083
1083
  counter: 0
1084
1084
  }), t.__tempoSSR__;
1085
- }, Q = (t, e) => {
1085
+ }, X = (t, e) => {
1086
1086
  const r = Ae();
1087
1087
  r[t] = e;
1088
1088
  }, Ee = (t) => Ae()[t], W = (t) => {
1089
- Q("isSSR", t);
1090
- }, Y = () => Ee("counter"), ut = () => {
1091
- Q("counter", (Y() ?? 0) + 1);
1092
- }, at = () => {
1093
- Q("counter", (Y() ?? 0) - 1);
1094
- }, Vt = (t = 30) => (W(!0), new Promise((e, r) => {
1089
+ X("isSSR", t);
1090
+ }, Q = () => Ee("counter"), at = () => {
1091
+ X("counter", (Q() ?? 0) + 1);
1092
+ }, ct = () => {
1093
+ X("counter", (Q() ?? 0) - 1);
1094
+ }, It = (t = 30) => (W(!0), new Promise((e, r) => {
1095
1095
  let s;
1096
1096
  const n = setInterval(() => {
1097
- Y() <= 0 && (clearInterval(n), clearTimeout(s), W(!1), e());
1097
+ Q() <= 0 && (clearInterval(n), clearTimeout(s), W(!1), e());
1098
1098
  }, 30);
1099
1099
  s = setTimeout(() => {
1100
1100
  clearInterval(n), W(!1), r(new Error("SSR Timeout"));
1101
1101
  }, t * 1e3);
1102
- })), qt = (t) => (ut(), c(t(at))), N = () => Ee("isSSR"), Pe = (t, e) => {
1102
+ })), Bt = (t) => (at(), c(t(ct))), N = () => Ee("isSSR"), Pe = (t, e) => {
1103
1103
  if (typeof e == "function")
1104
1104
  return Pe(t, { then: e });
1105
1105
  const r = e.pending != null ? c(e.pending) : S, s = e.then, n = e.error != null ? (o) => c(e.error(o)) : () => S;
@@ -1119,9 +1119,9 @@ const ye = (t) => {
1119
1119
  i = !1, a(f), f && o.reference && m(o.reference);
1120
1120
  };
1121
1121
  };
1122
- }, It = (t, e) => Pe(() => t, e), De = (t, e) => (r) => (r.element.addEventListener(t, e), (s) => {
1122
+ }, jt = (t, e) => Pe(() => t, e), De = (t, e) => (r) => (r.element.addEventListener(t, e), (s) => {
1123
1123
  s && r.element.removeEventListener(t, e);
1124
- }), ct = (t) => De("click", (e) => {
1124
+ }), ft = (t) => De("click", (e) => {
1125
1125
  e.preventDefault();
1126
1126
  const r = e.target;
1127
1127
  setTimeout(() => {
@@ -1138,13 +1138,13 @@ const ye = (t) => {
1138
1138
  */
1139
1139
  get: (t, e) => (r) => De(e, r)
1140
1140
  }
1141
- ), ft = (t) => (e) => {
1141
+ ), ht = (t) => (e) => {
1142
1142
  const r = e.target;
1143
1143
  t(r.value);
1144
- }, ht = (t) => (e) => {
1144
+ }, dt = (t) => (e) => {
1145
1145
  const r = e.target;
1146
1146
  t(r.valueAsNumber);
1147
- }, dt = (t) => (e) => {
1147
+ }, pt = (t) => (e) => {
1148
1148
  const r = e.target;
1149
1149
  if (r.value === "")
1150
1150
  return;
@@ -1154,7 +1154,7 @@ const ye = (t) => {
1154
1154
  Number(s[2].substring(0, 2))
1155
1155
  );
1156
1156
  t(n);
1157
- }, pt = (t) => (e) => {
1157
+ }, mt = (t) => (e) => {
1158
1158
  const r = e.target;
1159
1159
  if (r.value === "")
1160
1160
  return;
@@ -1164,25 +1164,25 @@ const ye = (t) => {
1164
1164
  Number(n[2])
1165
1165
  ), i = s[1].split(":");
1166
1166
  o.setHours(Number(i[0])), o.setMinutes(Number(i[1])), o.setSeconds(Number(i[2])), t(o);
1167
- }, Bt = (t) => (e) => {
1167
+ }, Ut = (t) => (e) => {
1168
1168
  const r = e.target;
1169
1169
  t(r.checked);
1170
- }, jt = (t) => (e) => {
1170
+ }, Gt = (t) => (e) => {
1171
1171
  e.preventDefault(), t();
1172
- }, Ut = (t) => (e) => {
1172
+ }, Jt = (t) => (e) => {
1173
1173
  e.stopPropagation(), t();
1174
- }, Gt = (t) => (e) => {
1174
+ }, Wt = (t) => (e) => {
1175
1175
  e.stopImmediatePropagation(), t();
1176
- }, Jt = (t, e = "input") => p(
1177
- P.valueAsDate(t),
1178
- B[e](dt(t.set))
1179
- ), Ht = (t, e = "input") => p(
1176
+ }, Ht = (t, e = "input") => p(
1180
1177
  P.valueAsDate(t),
1181
1178
  B[e](pt(t.set))
1182
- ), Wt = (t, e = "input") => p(
1179
+ ), zt = (t, e = "input") => p(
1180
+ P.valueAsDate(t),
1181
+ B[e](mt(t.set))
1182
+ ), Xt = (t, e = "input") => p(
1183
1183
  P.valueAsNumber(t),
1184
- B[e](ht(t.set))
1185
- ), Xt = (t, e = "input") => p(P.value(t), B[e](ft(t.set))), zt = (t) => p(P.checked(t), ct(t.set)), Z = (t, e) => {
1184
+ B[e](dt(t.set))
1185
+ ), Qt = (t, e = "input") => p(P.value(t), B[e](ht(t.set))), Yt = (t) => p(P.checked(t), ft(t.set)), Y = (t, e) => {
1186
1186
  if (h.is(t))
1187
1187
  return (s) => {
1188
1188
  s = s.makeRef();
@@ -1202,19 +1202,19 @@ const ye = (t) => {
1202
1202
  };
1203
1203
  const r = Object.keys(t)[0];
1204
1204
  return c(e[r](I(t[r])));
1205
- }, be = (t, e, r) => Z(
1205
+ }, be = (t, e, r) => Y(
1206
1206
  d.map(t, (s) => ({ [s[e]]: s })),
1207
1207
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
1208
1208
  r
1209
- ), Qt = (t, e) => be(t, "kind", e), Yt = (t, e) => {
1209
+ ), Zt = (t, e) => be(t, "kind", e), Kt = (t, e) => {
1210
1210
  const r = d.map(t, ([s, n]) => ({ [s]: n }));
1211
- return Z(r, e);
1212
- }, Zt = (t, e) => be(t, "type", e), mt = (t, e) => Z(
1211
+ return Y(r, e);
1212
+ }, xt = (t, e) => be(t, "type", e), gt = (t, e) => Y(
1213
1213
  d.map(t, (r) => ({ [r]: !0 })),
1214
1214
  e
1215
- ), Kt = (t, e = {}) => (r) => {
1215
+ ), er = (t, e = {}) => (r) => {
1216
1216
  const s = (e == null ? void 0 : e.firstSeparator) ?? t, n = (e == null ? void 0 : e.lastSeparator) ?? t;
1217
- return mt(
1217
+ return gt(
1218
1218
  r.map((o) => o.isFirst ? "first" : o.isLast ? "last" : "other"),
1219
1219
  {
1220
1220
  first: () => s,
@@ -1230,7 +1230,7 @@ const ye = (t) => {
1230
1230
  return n[o] = i, n;
1231
1231
  }, {});
1232
1232
  return c(e(s))(r);
1233
- }, xt = (t, e) => (r) => {
1233
+ }, tr = (t, e) => (r) => {
1234
1234
  const s = [], n = Object.entries(t).reduce(
1235
1235
  (o, [i, l]) => (s.push(
1236
1236
  l((a) => (Reflect.set(o, i, a), null))(r)
@@ -1240,9 +1240,9 @@ const ye = (t) => {
1240
1240
  return s.push(e(n)(r)), (o) => {
1241
1241
  s.forEach((i) => i(o));
1242
1242
  };
1243
- }, er = (t, e) => Te([t], (r) => c(e(r[t]))), tr = (t, e) => Te(t, (r) => c(e(r))), rr = (t) => (e) => t(e), sr = (t) => (e) => (e.appendOrInsert(t), (r) => {
1243
+ }, rr = (t, e) => Te([t], (r) => c(e(r[t]))), sr = (t, e) => Te(t, (r) => c(e(r))), nr = (t) => (e) => t(e), or = (t) => (e) => (e.appendOrInsert(t), (r) => {
1244
1244
  r && m(t);
1245
- }), gt = (t, e, r) => {
1245
+ }), _t = (t, e, r) => {
1246
1246
  if (h.is(t)) {
1247
1247
  const s = t;
1248
1248
  return (n) => {
@@ -1263,23 +1263,31 @@ const ye = (t) => {
1263
1263
  }
1264
1264
  return c(e(I(s)));
1265
1265
  }
1266
- }, X = (t) => (e) => (r) => t(r, e), j = (t, e, r) => gt(
1266
+ }, H = (t) => (e) => (r) => t(r, e), Z = (t, e, r) => Oe(
1267
+ t,
1268
+ () => e,
1269
+ () => r
1270
+ ), Oe = (t, e, r) => _t(
1267
1271
  d.map(t, (s) => s ? !0 : null),
1272
+ e,
1273
+ r ?? void 0
1274
+ ), ir = (t, e, r) => vt(
1275
+ t,
1268
1276
  () => e,
1269
- r != null ? () => r : void 0
1270
- ), nr = (t, e, r) => j(
1277
+ () => r
1278
+ ), vt = (t, e, r) => Oe(
1271
1279
  d.map(t, (s) => !s),
1272
1280
  e,
1273
1281
  r
1274
- ), Oe = (t, e, r) => r != null ? Oe(t, (s) => {
1282
+ ), Ce = (t, e, r) => r != null ? Ce(t, (s) => {
1275
1283
  const n = new T(
1276
1284
  s.index,
1277
1285
  s.total.map((o) => o - 1)
1278
1286
  );
1279
1287
  return p(
1280
- X(n.dispose),
1288
+ H(n.dispose),
1281
1289
  c(e(s)),
1282
- j(s.isLast, S, r(n))
1290
+ Z(s.isLast, S, r(n))
1283
1291
  );
1284
1292
  }) : h.is(t) ? (s) => {
1285
1293
  s = s.makeRef();
@@ -1290,7 +1298,7 @@ const ye = (t) => {
1290
1298
  (l) => c(e(l))(s)
1291
1299
  ), i = t.on((l) => {
1292
1300
  for (; l < o.length; )
1293
- o.pop()(!0), n.pop().dispose();
1301
+ n.pop().dispose(), o.pop()(!0);
1294
1302
  for (let a = 0; a < l; a++)
1295
1303
  if (n[a] == null) {
1296
1304
  n[a] = new T(a, t);
@@ -1305,26 +1313,30 @@ const ye = (t) => {
1305
1313
  ...Array.from({ length: t }, (s, n) => n).map(
1306
1314
  (s) => c(e(new T(s, I(t))))
1307
1315
  )
1308
- ), _t = (t, e, r) => r != null ? _t(t, (s, n) => {
1309
- const o = new T(
1310
- n.index,
1311
- n.total.map((i) => i - 1)
1312
- );
1313
- return p([
1314
- X(o.dispose),
1315
- c(e(s, n)),
1316
- j(n.isLast, S, r(o))
1317
- ]);
1318
- }) : (s) => {
1319
- const n = d.map(t, (i) => i.length), o = d.toSignal(t);
1320
- return Oe(n, (i) => {
1321
- const l = o.map((a) => a[i.index]);
1322
- return p(
1323
- X(l.dispose),
1324
- c(e(l, i))
1325
- );
1326
- })(s);
1327
- }, or = (t, e) => {
1316
+ ), yt = (t, e, r) => {
1317
+ if (r != null)
1318
+ return yt(t, (s, n) => {
1319
+ const o = new T(
1320
+ n.index,
1321
+ n.total.map((i) => i - 1)
1322
+ );
1323
+ return p([
1324
+ H(o.dispose),
1325
+ c(e(s, n)),
1326
+ Z(n.isLast, S, r(o))
1327
+ ]);
1328
+ });
1329
+ {
1330
+ const s = d.map(t, (o) => o.length), n = d.toSignal(t);
1331
+ return Ce(s, (o) => {
1332
+ const i = n.map((l) => l[o.index]);
1333
+ return p(
1334
+ H(i.dispose),
1335
+ c(e(i, o))
1336
+ );
1337
+ });
1338
+ }
1339
+ }, lr = (t, e) => {
1328
1340
  if (h.is(t)) {
1329
1341
  const r = t;
1330
1342
  return (s) => {
@@ -1341,48 +1353,48 @@ const ye = (t) => {
1341
1353
  };
1342
1354
  }
1343
1355
  return c(e(t));
1344
- }, ir = (t, e, r = S) => j(
1356
+ }, ur = (t, e, r = S) => Z(
1345
1357
  d.map(t, (s) => s.length > 0),
1346
1358
  e,
1347
1359
  r
1348
- ), lr = (t) => (e) => t(e.element) ?? (() => {
1349
- }), Ce = (t, e) => {
1360
+ ), ar = (t) => (e) => t(e.element) ?? (() => {
1361
+ }), Le = (t, e) => {
1350
1362
  const r = t(e);
1351
1363
  return () => r(!0);
1352
- }, ur = (t, e, { doc: r, clear: s } = {}) => {
1364
+ }, cr = (t, e, { doc: r, clear: s } = {}) => {
1353
1365
  const n = typeof e == "string" ? (r ?? document).querySelector(e) : e;
1354
1366
  if (n === null)
1355
- throw new vt(
1367
+ throw new St(
1356
1368
  `Cannot find element by selector for render: ${e}`
1357
1369
  );
1358
- s !== !1 && (r ?? n.ownerDocument) != null && lt(r ?? n.ownerDocument);
1359
- const o = Qe(n), i = he(n) ? void 0 : n, l = v.of(o, i);
1360
- return Ce(t, l);
1370
+ s !== !1 && (r ?? n.ownerDocument) != null && ut(r ?? n.ownerDocument);
1371
+ const o = Ye(n), i = he(n) ? void 0 : n, l = v.of(o, i);
1372
+ return Le(t, l);
1361
1373
  };
1362
- class vt extends Error {
1374
+ class St extends Error {
1363
1375
  constructor(e) {
1364
1376
  super(e);
1365
1377
  }
1366
1378
  }
1367
- const ar = (t, e) => (r) => {
1379
+ const fr = (t, e) => (r) => {
1368
1380
  const s = r.document.querySelector(t);
1369
1381
  if (s === null)
1370
1382
  throw new Error(`Cannot find element by selector for portal: ${t}`);
1371
- return Ce(
1383
+ return Le(
1372
1384
  c(e),
1373
1385
  r.withElement(s).withFirstLevel()
1374
1386
  );
1375
- }, cr = (t) => Symbol(t), ke = (t, e) => (r) => c(e)(r.withProviders(t)), fr = (...t) => t.length > 0 ? t.reduceRight((e, r) => (s) => e(r(s))) : c, hr = (t, e, r) => ke({ [t]: e }, c(r)), dr = (t, e) => ke(t, c(e)), yt = (t, e) => (r) => {
1387
+ }, hr = (t) => Symbol(t), ke = (t, e) => (r) => c(e)(r.withProviders(t)), dr = (...t) => t.length > 0 ? t.reduceRight((e, r) => (s) => e(r(s))) : c, pr = (t, e, r) => ke({ [t]: e }, c(r)), mr = (t, e) => ke(t, c(e)), wt = (t, e) => (r) => {
1376
1388
  const s = r.element, n = s.style.getPropertyValue(t);
1377
1389
  return s.style.setProperty(t, e), (o) => {
1378
1390
  o && s.style.setProperty(t, n);
1379
1391
  };
1380
- }, St = (t, e) => (r) => {
1392
+ }, At = (t, e) => (r) => {
1381
1393
  const s = r.element, n = s.style.getPropertyValue(t);
1382
1394
  return e.on((o) => s.style.setProperty(t, o)), (o) => {
1383
1395
  o && s.style.setProperty(t, n);
1384
1396
  };
1385
- }, pr = new Proxy(
1397
+ }, gr = new Proxy(
1386
1398
  {},
1387
1399
  {
1388
1400
  /**
@@ -1393,61 +1405,63 @@ const ar = (t, e) => (r) => {
1393
1405
  * @returns The renderable component for the specified attribute.
1394
1406
  *
1395
1407
  */
1396
- get: (t, e) => (r) => h.is(r) ? St(e, r) : yt(e, r)
1408
+ get: (t, e) => (r) => h.is(r) ? At(e, r) : wt(e, r)
1397
1409
  }
1398
1410
  );
1399
1411
  export {
1400
- It as Async,
1401
- zt as BindChecked,
1402
- Jt as BindDate,
1403
- Ht as BindDateTime,
1404
- Wt as BindNumber,
1405
- Xt as BindText,
1412
+ jt as Async,
1413
+ Yt as BindChecked,
1414
+ Ht as BindDate,
1415
+ zt as BindDateTime,
1416
+ Xt as BindNumber,
1417
+ Qt as BindText,
1406
1418
  E as Computed,
1407
- Kt as Conjunction,
1419
+ er as Conjunction,
1408
1420
  v as DOMContext,
1409
- sr as DOMNode,
1421
+ or as DOMNode,
1410
1422
  me as El,
1411
1423
  ge as ElNS,
1412
1424
  T as ElementPosition,
1413
1425
  S as Empty,
1414
- gt as Ensure,
1415
- _t as ForEach,
1426
+ _t as Ensure,
1427
+ yt as ForEach,
1416
1428
  p as Fragment,
1417
- or as MapSignal,
1429
+ vt as LazyUnless,
1430
+ Oe as LazyWhen,
1431
+ lr as MapSignal,
1418
1432
  ne as MemoryStore,
1419
- ir as NotEmpty,
1420
- ct as OnChecked,
1421
- rr as OnCtx,
1422
- lr as OnMount,
1423
- X as OnUnmount,
1424
- Z as OneOf,
1433
+ ur as NotEmpty,
1434
+ ft as OnChecked,
1435
+ nr as OnCtx,
1436
+ ar as OnMount,
1437
+ H as OnUnmount,
1438
+ Y as OneOf,
1425
1439
  be as OneOfField,
1426
- Qt as OneOfKind,
1427
- Yt as OneOfTuple,
1428
- Zt as OneOfType,
1429
- mt as OneOfValue,
1430
- ar as Portal,
1440
+ Zt as OneOfKind,
1441
+ Kt as OneOfTuple,
1442
+ xt as OneOfType,
1443
+ gt as OneOfValue,
1444
+ fr as Portal,
1431
1445
  F as Prop,
1432
- fr as Provide,
1433
- ze as ProviderNotFoundError,
1434
- vt as RenderingError,
1435
- Oe as Repeat,
1446
+ dr as Provide,
1447
+ Qe as ProviderNotFoundError,
1448
+ St as RenderingError,
1449
+ Ce as Repeat,
1436
1450
  h as Signal,
1437
1451
  Pe as Task,
1438
- Ot as TextNode,
1439
- nr as Unless,
1440
- xt as Use,
1441
- er as UseProvider,
1442
- tr as UseProviders,
1443
- qt as UseSSRDone,
1452
+ Lt as TextNode,
1453
+ ir as Unless,
1454
+ tr as Use,
1455
+ rr as UseProvider,
1456
+ sr as UseProviders,
1457
+ Bt as UseSSRDone,
1444
1458
  d as Value,
1445
- j as When,
1446
- hr as WithProvider,
1447
- dr as WithProviders,
1459
+ Z as When,
1460
+ pr as WithProvider,
1461
+ mr as WithProviders,
1448
1462
  Se as _addNodeTracker,
1449
- lt as _clearSSR,
1450
- Qe as _getSelfOrParentElement,
1463
+ ut as _clearSSR,
1464
+ Ye as _getSelfOrParentElement,
1451
1465
  he as _isElement,
1452
1466
  fe as _makeGetter,
1453
1467
  ce as _makeSetter,
@@ -1456,53 +1470,53 @@ export {
1456
1470
  we as _maybeAddTextTracker,
1457
1471
  m as _removeDOMNode,
1458
1472
  Xe as _setAttribute,
1459
- Ge as _setBooleanProperty,
1473
+ Je as _setBooleanProperty,
1460
1474
  He as _setDateProperty,
1461
- Je as _setNumberProperty,
1462
- We as _setStringProperty,
1475
+ We as _setNumberProperty,
1476
+ ze as _setStringProperty,
1463
1477
  pe as _signalText,
1464
1478
  de as _staticText,
1465
- bt as animateSignal,
1466
- Ue as animateSignals,
1467
- kt as aria,
1479
+ Ot as animateSignal,
1480
+ Ge as animateSignals,
1481
+ Nt as aria,
1468
1482
  P as attr,
1469
- Ct as dataAttr,
1470
- Bt as emitChecked,
1471
- jt as emitPreventDefault,
1472
- Gt as emitStopImmediatePropagation,
1473
- Ut as emitStopPropagation,
1474
- ft as emitValue,
1475
- dt as emitValueAsDate,
1476
- pt as emitValueAsDateTime,
1477
- ht as emitValueAsNumber,
1478
- qe as endInterpolate,
1479
- Ie as guessInterpolate,
1480
- Rt as html,
1481
- Mt as input,
1482
- Ve as interpolateDate,
1483
- $e as interpolateNumber,
1484
- Fe as interpolateString,
1483
+ kt as dataAttr,
1484
+ Ut as emitChecked,
1485
+ Gt as emitPreventDefault,
1486
+ Wt as emitStopImmediatePropagation,
1487
+ Jt as emitStopPropagation,
1488
+ ht as emitValue,
1489
+ pt as emitValueAsDate,
1490
+ mt as emitValueAsDateTime,
1491
+ dt as emitValueAsNumber,
1492
+ Ie as endInterpolate,
1493
+ Be as guessInterpolate,
1494
+ $t as html,
1495
+ Ft as input,
1496
+ qe as interpolateDate,
1497
+ Fe as interpolateNumber,
1498
+ Ve as interpolateString,
1485
1499
  N as isSSR,
1486
- Pt as localStorageProp,
1500
+ bt as localStorageProp,
1487
1501
  z as makeComputed,
1488
- At as makeComputedOf,
1489
- Tt as makeComputedRecord,
1490
- je as makeEffect,
1491
- Et as makeEffectOf,
1502
+ Pt as makeComputedOf,
1503
+ Ct as makeComputedRecord,
1504
+ Ue as makeEffect,
1505
+ Dt as makeEffectOf,
1492
1506
  V as makeProp,
1493
- cr as makeProviderMark,
1507
+ hr as makeProviderMark,
1494
1508
  I as makeSignal,
1495
- Ft as math,
1496
- Nt as mathAttr,
1509
+ qt as math,
1510
+ Mt as mathAttr,
1497
1511
  B as on,
1498
- Vt as prepareSSR,
1499
- it as removeTextTrackers,
1500
- ur as render,
1501
- Ce as renderWithContext,
1512
+ It as prepareSSR,
1513
+ lt as removeTextTrackers,
1514
+ cr as render,
1515
+ Le as renderWithContext,
1502
1516
  c as renderableOfTNode,
1503
- Dt as sessionStorageProp,
1517
+ Tt as sessionStorageProp,
1504
1518
  oe as storedProp,
1505
- pr as style,
1506
- $t as svg,
1507
- Lt as svgAttr
1519
+ gr as style,
1520
+ Vt as svg,
1521
+ Rt as svgAttr
1508
1522
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tempots/dom",
3
- "version": "22.0.0",
3
+ "version": "22.1.1",
4
4
  "type": "module",
5
5
  "main": "./index.cjs",
6
6
  "module": "./index.js",
@@ -1,6 +1,6 @@
1
1
  import { Prop } from '../std/signal';
2
2
  import { Renderable } from '../types/domain';
3
- import { on } from './handler';
3
+ import { on } from './on';
4
4
  /**
5
5
  * Binds a `Date` property to an input element. The binding is two-way.
6
6
  * Changes to the input element will update the property but will only be
@@ -1,22 +1,38 @@
1
1
  import { Renderable, TNode } from '../types/domain';
2
2
  import { Value } from '../std/value';
3
3
  /**
4
- * Renders the `then` node if the `condition` is true, otherwise renders the `otherwise` node.
5
- *
6
- * @param condition - The condition to evaluate.
7
- * @param then - The node to render if the condition is true.
8
- * @param otherwise - The node to render if the condition is false.
9
- * @returns The rendered node.
4
+ * Renders content conditionally based on a boolean value.
5
+ * @param condition - The condition to evaluate
6
+ * @param then - Content to render if condition is true
7
+ * @param otherwise - Optional content to render if condition is false
8
+ * @returns Renderable content
10
9
  * @public
11
10
  */
12
11
  export declare const When: (condition: Value<boolean>, then: TNode, otherwise?: TNode) => Renderable;
13
12
  /**
14
- * Executes the `then` TNode if the `condition` Signal evaluates to `false`, otherwise executes the `otherwise` TNode.
15
- *
16
- * @param condition - The Signal representing the condition to evaluate.
17
- * @param then - The TNode to execute if the condition is `false`.
18
- * @param otherwise - The optional TNode to execute if the condition is `true`.
19
- * @returns The result of executing the `then` or `otherwise` TNode based on the condition.
13
+ * Lazily renders content based on a boolean condition.
14
+ * @param condition - The condition to evaluate
15
+ * @param then - Function returning content to render if condition is true
16
+ * @param otherwise - Optional function returning content to render if condition is false
17
+ * @returns Renderable content
18
+ * @public
19
+ */
20
+ export declare const LazyWhen: (condition: Value<boolean>, then: () => TNode, otherwise?: () => TNode) => Renderable;
21
+ /**
22
+ * Renders content when a condition is false.
23
+ * @param condition - The condition to evaluate
24
+ * @param then - Content to render if condition is false
25
+ * @param otherwise - Optional content to render if condition is true
26
+ * @returns Renderable content
20
27
  * @public
21
28
  */
22
29
  export declare const Unless: (condition: Value<boolean>, then: TNode, otherwise?: TNode) => Renderable;
30
+ /**
31
+ * Lazily renders content when a condition is false.
32
+ * @param condition - The condition to evaluate
33
+ * @param then - Function returning content to render if condition is false
34
+ * @param otherwise - Optional function returning content to render if condition is true
35
+ * @returns Renderable content
36
+ * @public
37
+ */
38
+ export declare const LazyUnless: (condition: Value<boolean>, then: () => TNode, otherwise?: () => TNode) => Renderable;
package/types/domain.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import { DOMContext } from '../dom/dom-context';
2
- import { Signal } from '../std/signal';
3
2
  import { Value } from '../std/value';
4
3
  /**
5
4
  * Represents a function that can be rendered in the DOM.
@@ -60,7 +59,7 @@ export type NValue<T> = Value<T> | Value<T | null> | Value<T | undefined> | Valu
60
59
  * Otherwise, it returns the type itself.
61
60
  * @public
62
61
  */
63
- export type GetValueType<T> = T extends Signal<infer V> ? V : T;
62
+ export type GetValueType<T> = T extends Value<infer V> ? V : T;
64
63
  /**
65
64
  * Gets the value types of a given array of Value types.
66
65
  * @public
File without changes