@tempots/dom 26.7.2 → 26.7.4
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 +1 -1
- package/index.js +184 -180
- package/package.json +1 -1
- package/renderable/element.d.ts +2 -1
- package/renderable/fragment.d.ts +2 -1
package/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var rt=Object.defineProperty;var ye=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),Te=(s,e,t)=>e.has(s)||ye("Cannot "+t);var K=(s,e,t)=>(Te(s,e,"read from private field"),t?t.call(s):e.get(s)),Se=(s,e,t)=>e.has(s)?ye("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(s):e.set(s,t),Ae=(s,e,t,r)=>(Te(s,e,"write to private field"),r?r.call(s,t):e.set(s,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const _e=(s,e,t)=>s+(e-s)*t,be=97,we=(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=be);let a=e.charCodeAt(i);isNaN(a)&&(a=be),n+=String.fromCharCode(l+(a-l)*t)}return n},Ce=(s,e,t)=>new Date(s.getTime()+(e.getTime()-s.getTime())*t),Pe=(s,e)=>e,Oe=s=>typeof s=="number"?_e:typeof s=="string"?we:s instanceof Date?Ce:Pe;var M;class F{constructor(e,t){o(this,"counter");o(this,"isFirst");o(this,"isEven");o(this,"isOdd");Se(this,M);o(this,"dispose",()=>{this.total.dispose()});this.index=e,this.total=t,this.counter=e+1,this.isFirst=e===0,this.isEven=e%2===1,this.isOdd=e%2===0}get isLast(){return K(this,M)==null&&Ae(this,M,this.total.map(e=>this.counter===e)),K(this,M)}}M=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,t)=>{if(this._disposed)return;const r=this._value,n=this.equals(r,e);n||(this._value=e),(t||!n)&&this._onValueListeners.forEach(i=>i(e,r))});o(this,"_disposed",!1);o(this,"isDisposed",()=>this._disposed);o(this,"onDispose",e=>{this._onDisposeListeners.push(e)});o(this,"dispose",()=>{this._disposed||(this._disposed=!0,this._onDisposeListeners.forEach(e=>e()),this._onDisposeListeners.length=0,this._derivatives.length=0)});o(this,"map",(e,t=(r,n)=>r===n)=>{const r=new P(()=>{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 P(()=>{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 P(()=>{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 P(()=>{try{const l=this.get(),a=e(l);return n=a??n}catch(l){throw console.error("Error in Signal.filterMap:",l),l}},r);return this.setDerivative(i),i});o(this,"mapAsync",(e,t,r,n=(i,l)=>i===l)=>{const i=_(t,n);let l=0,a=new AbortController;return i.onDispose(this.on(async c=>{const h=++l;a.abort(),a=new AbortController;try{const u=await e(c,{abortSignal:a.signal});h===l&&i.set(u)}catch(u){if(h===l)if(r!=null)i.set(r(u));else throw u}})),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(_(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,!1)).catch(l=>{r!=null?i._setAndNotify(r(l),!1):console.error("Unhandled promise rejection in Signal.ofPromise:",l)}),i}),o(H,"is",e=>e!=null&&e.$__signal__===!0);let d=H;const it=typeof queueMicrotask=="function"?queueMicrotask:s=>Promise.resolve().then(s);class P extends d{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(),!1))})});o(this,"get",()=>(this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!0)),this._value));this._fn=t,this.setDirty()}static is(t){return t!=null&&t.$__computed__===!0}get value(){return this.get()}}const X=class X extends d{constructor(){super(...arguments);o(this,"$__prop__",!0);o(this,"set",t=>{this._setAndNotify(t,!1)});o(this,"update",t=>{this._setAndNotify(t(this.get()),!1)});o(this,"reducer",(t,...r)=>{const n=this;return function i(l){const a=n.value;n.update(c=>t(c,l)),!n.equals(a,n.value)&&r.forEach(c=>c({previousState:a,state:n.value,action:l,dispatch:i}))}});o(this,"iso",(t,r,n=(i,l)=>i===l)=>{const i=new X(t(this.get()),n);return i.onDispose(this.on(l=>i.set(t(l)))),i.on(l=>this._setAndNotify(r(l),!1)),i});o(this,"atProp",t=>this.iso(r=>r[t],r=>({...this.value,[t]:r})))}get value(){return this.get()}set value(t){this._setAndNotify(t,!1)}};o(X,"is",t=>t!=null&&t.$__prop__===!0);let N=X;const Y=(s,e,t=(r,n)=>r===n)=>{const r=new P(s,t);return e.forEach(n=>n.setDerivative(r)),r},ve=(s,e,t={})=>{let r=t.once?()=>{i(),s()}:s;if(t.skipInitial){let l=!1;const a=r;r=()=>{l?a():l=!0}}const n=Y(r,e),i=()=>{n.dispose(),t.abortSignal!=null&&t.abortSignal.removeEventListener("abort",i)};return t.abortSignal!=null&&t.abortSignal.addEventListener("abort",i),i},_=(s,e=(t,r)=>t===r)=>new N(s,e),$=(s,e=(t,r)=>t===r)=>new d(s,e),ee=()=>typeof window<"u"?window:void 0,y={map:(s,e)=>d.is(s)?s.map(e):e(s),toSignal:(s,e)=>d.is(s)?s:$(s,e),maybeToSignal:(s,e)=>{if(s!=null)return y.toSignal(s,e)},get:s=>d.is(s)?s.get():s,on:(s,e)=>d.is(s)?s.on(e):(e(s),()=>{}),dispose:s=>{d.is(s)&&s.dispose()},deriveProp:(s,{autoDisposeProp:e=!0,equals:t}={})=>d.is(s)?s.deriveProp({autoDisposeProp:e,equals:t}):_(s,t)},xe=(...s)=>(e,t)=>{const r=s.filter(n=>d.is(n));return Y(()=>e(...s.map(n=>y.get(n))),r,t)},ot=s=>{const e=Object.keys(s);return xe(...Object.values(s))((...t)=>Object.fromEntries(e.map((r,n)=>[r,t[n]])))},lt=(...s)=>(e,t={})=>{const r=s.filter(n=>d.is(n));return ve(()=>e(...s.map(y.get)),r,t)};class te{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 se=({key:s,defaultValue:e,store:t,serialize:r=JSON.stringify,deserialize:n=JSON.parse,equals:i=(a,c)=>a===c,onLoad:l=a=>a})=>{const a=t.getItem(s),c=new N(a!=null?l(n(a)):typeof e=="function"?e():e,i);return c.on(h=>{t.setItem(s,r(h))}),c},at=s=>{var e;return se({...s,store:((e=ee())==null?void 0:e.localStorage)??new te})},ct=s=>{var e;return se({...s,store:((e=ee())==null?void 0:e.sessionStorage)??new te})};function Ee(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)??(E=>E),l=(r==null?void 0:r.equals)??((E,B)=>E===B);let a=r==null?void 0:r.interpolate,c=s,h=e(),u=performance.now(),g=null,T=!0;const p=new P(e,l),m=_(s,l);m.onDispose(()=>{g!==null&&cancelAnimationFrame(g)}),m.onDispose(p.dispose),t.forEach(E=>{E.setDerivative(p),E.onDispose(m.dispose)});const C=E=>{h=E,u=performance.now(),c=m.value,T&&(T=!1,g=Ee(me))},me=()=>{const B=(performance.now()-u)/y.get(n),st=i(B);a==null&&(a=Oe(c));let ge=a(c,h,st);B>=1?(T=!0,ge=h):g=Ee(me),m.set(ge)};return p.on(C),m},ut=(s,e)=>{const{initialValue:t,...r}=e??{};return De(t??s.get(),s.get,[s],r)},ht=(s,e)=>{const{signals:t,literals:r}=Object.entries(s).reduce(({signals:i,literals:l},[a,c])=>(d.is(c)?i.push([a,c]):l[a]=c,{signals:i,literals:l}),{signals:[],literals:{}}),n=t.map(([,i])=>i);return Y(()=>(t.forEach(([i,l])=>r[i]=l.value),e(r)),n)},Le=new Set(["checked","disabled","hidden"]),Me=new Set(["selected"]),He=new Set(["rowSpan","colSpan","tabIndex","valueAsNumber"]),Ne=new Set(["valueAsDate"]),ke=new Set(["value","textContent","innerText","innerHTML","outerHTML","className","classList"]),Ie=(s,e)=>Me.has(s)?t=>{t==null||t!==!0?e.removeAttribute(s):e.setAttribute(s,"")}:Le.has(s)?t=>{t==null?e[s]=null:e[s]=!!t}:He.has(s)?t=>{t==null?e[s]=null:e[s]=Number(t)}:Ne.has(s)?t=>{t==null?e[s]=null:e[s]=t}:ke.has(s)?t=>{t==null?e[s]=null:e[s]=String(t)}:t=>{t==null?e.removeAttribute(s):e.setAttribute(s,t)},$e=(s,e)=>Me.has(s)?()=>e.hasAttribute(s):Le.has(s)?()=>!!e[s]:He.has(s)?()=>Number(e[s]):Ne.has(s)?()=>e[s]:ke.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)},Re=s=>re(s)?s:s.parentElement,re=s=>s.nodeType===1;class ne extends Error{constructor(e){super(`Provider not found: ${e.description}`)}}class O{constructor(e,t,r,n){o(this,"createElement",(e,t)=>t!==void 0?this.document.createElementNS(t,e):this.document.createElement(e));o(this,"makeChildElement",(e,t)=>{const r=this.createElement(e,t);return this.appendOrInsert(r),this.withElement(r)});o(this,"createText",e=>this.document.createTextNode(e));o(this,"makeChildText",e=>{const t=this.createText(e);return this.appendOrInsert(t),this.withReference(t)});o(this,"setText",e=>{this.reference.nodeValue=e});o(this,"getText",()=>{var e;return((e=this.reference)==null?void 0:e.nodeValue)??this.element.textContent??""});o(this,"makeRef",()=>{const e=this.createText("");return this.appendOrInsert(e),this.withReference(e)});o(this,"appendOrInsert",e=>{this.reference===void 0?this.element.appendChild(e):this.element.insertBefore(e,this.reference)});o(this,"withElement",e=>new O(this.document,e,void 0,this.providers));o(this,"makePortal",e=>{const t=this.document.querySelector(e);if(t==null)throw new Error(`Cannot find element by selector for portal: ${e}`);return this.withElement(t)});o(this,"withReference",e=>new O(this.document,this.element,e,this.providers));o(this,"setProvider",(e,t,r)=>new O(this.document,this.element,this.reference,{...this.providers,[e]:[t,r]}));o(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new ne(e);return this.providers[e]});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)=>(this.element.addEventListener(e,t,r),n=>{n&&this.element.removeEventListener(e,t,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:$e(e,this.element),set:Ie(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){return new O(e.ownerDocument,e,t,{})}}const Ve=s=>Symbol(s),z=(s,e)=>{const t=s(e);return(r=!0)=>t(r)},ft=(s,e,{doc:t,clear:r,disposeWithParent:n=!0}={})=>{const i=typeof e=="string"?(t??document).querySelector(e):e;if(i===null)throw new je(`Cannot find element by selector for render: ${e}`);r!==!1&&(t??i.ownerDocument)!=null&&i.nodeType===1&&(i.innerHTML="");const l=Re(i),a=re(i)?void 0:i,c=O.of(l,a),h=z(s,c);let u;return n&&(u=new MutationObserver(g=>{var T;(T=g[0])==null||T.removedNodes.forEach(p=>{p===i&&(h(i.nodeType!==Node.ELEMENT_NODE),u==null||u.disconnect())})}),u.observe(i.parentElement,{childList:!0,subtree:!1,attributes:!1})),()=>{u==null||u.disconnect(),h(!0)}},dt=(s,{startUrl:e="https://example.com",selector:t=":root"}={})=>{const r=y.toSignal(e).deriveProp(),n=new oe(t,void 0),i=new v(n,void 0,{currentURL:r},{});return{clear:z(s(),i),root:n,currentURL:r}};class je extends Error{constructor(e){super(e)}}const ie="data-tts-node",I="data-tts-class",W="data-tts-style",U="data-tts-html",G="data-tts-text",J="data-tts-attrs";class pt{constructor({select:e,getAttribute:t,setAttribute:r,getClass:n,setClass:i,getStyles:l,setStyles:a,appendHTML:c,getInnerHTML:h,setInnerHTML:u,getInnerText:g,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=>{for(const i of this.select(n.selector)){if(i==null)throw new Error(`Cannot find element by selector for render: ${n.selector}`);if(n.hasChildren()&&this.appendHTML(i,n.contentToHTML(t)),n.hasInnerHTML()){if(t){const l=this.getInnerHTML(i);l!=null&&this.setAttribute(i,U,l)}this.setInnerHTML(i,n.getInnerHTML())}if(n.hasInnerText()){if(t){const l=this.getInnerText(i);l!=null&&this.setAttribute(i,G,l)}this.setInnerText(i,n.getInnerText())}if(n.hasClasses()){if(t){const l=this.getClass(i);l!=null&&this.setAttribute(i,I,l)}this.setClass(i,n.getClasses().join(" "))}if(n.hasStyles()){if(t){const l=this.getStyles(i);Object.keys(l).length>0&&this.setAttribute(i,W,JSON.stringify(l))}this.setStyles(i,n.getStyles())}if(n.hasAttributes()){const l=n.getAttributes();if(t){const a=[];l.forEach(([c])=>{const h=this.getAttribute(i,c);h!=null&&a.push([c,h])}),a.length>0&&this.setAttribute(i,J,JSON.stringify(Object.fromEntries(a)))}l.forEach(([a,c])=>{this.setAttribute(i,a,c)})}}})});this.select=e,this.getAttribute=t,this.setAttribute=r,this.getClass=n,this.setClass=i,this.getStyles=l,this.setStyles=a,this.appendHTML=c,this.getInnerHTML=h,this.setInnerHTML=u,this.getInnerText=g,this.setInnerText=T}}const mt=()=>{document.querySelectorAll(`[${ie}]`).forEach(k)},gt=s=>{const e=s.getAttribute(I);s.removeAttribute(I),e!=null&&s.setAttribute("class",e)},yt=()=>{document.querySelectorAll(`[${I}]`).forEach(e=>gt(e))},Tt=s=>{const e=s.getAttribute(U);s.removeAttribute(U),e!=null&&(s.innerHTML=e)},St=()=>{document.querySelectorAll(`[${U}]`).forEach(e=>Tt(e))},At=s=>{const e=s.getAttribute(G);s.removeAttribute(G),e!=null&&(s.innerText=e)},bt=()=>{document.querySelectorAll(`[${G}]`).forEach(e=>At(e))},qe=s=>JSON.parse(s.replace(/"/g,'"')),Et=s=>{const e=s.getAttribute(W);if(s.removeAttribute(W),e!=null){const t=qe(e);Object.entries(t).forEach(([r,n])=>{s.style.setProperty(r,n)})}},_t=()=>{document.querySelectorAll(`[${W}]`).forEach(e=>Et(e))},wt=s=>{const e=s.getAttribute(J);if(s.removeAttribute(J),e!=null){const t=qe(e);Object.entries(t).forEach(([r,n])=>{n==null?s.removeAttribute(r):s.setAttribute(r,n)})}},Ct=()=>{document.querySelectorAll(`[${J}]`).forEach(e=>wt(e))},Pt=()=>{mt(),yt(),bt(),St(),_t(),Ct()},A=Symbol("class"),w=Symbol("style"),D=Symbol("handler"),Be=()=>Math.random().toString(36).substring(2,15),Ot=s=>s.replace(/<[^>]*>?/g,"");class Fe{constructor(e){o(this,"id",Be());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[A]!=null);o(this,"hasStyles",()=>this.properties[w]!=null);o(this,"hasAttributes",()=>Object.keys(this.properties).length>0);o(this,"hasHandlers",()=>this.properties[D]!=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[D]??{})[e]??[]).forEach(n=>n(t))});o(this,"click",()=>{this.trigger("click",{})});o(this,"on",(e,t,r)=>{var a;const n=(a=this.properties)[D]??(a[D]={}),i=r!=null&&r.once?c=>{l(),t(c)}:c=>t(c);n[e]=[...n[e]??[],i];const l=()=>{const c=n[e]??[],h=c.indexOf(i);h!==-1&&(c.splice(h,1),c.length===0?(delete n[e],Object.keys(n).length===0&&delete this.properties[D]):n[e]=c,(r==null?void 0:r.signal)!=null&&r.signal.removeEventListener("abort",l))};return(r==null?void 0:r.signal)!=null&&r.signal.addEventListener("abort",l),l});o(this,"addClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[A]??(r[A]=[]);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)[A]??(r[A]=[]);e.forEach(n=>{const i=t.indexOf(n);i!==-1&&t.splice(i,1)}),t.length===0&&delete this.properties[A]});o(this,"getClasses",()=>this.properties[A]??[]);o(this,"getAttributes",()=>Object.entries(this.properties).filter(([e])=>!["innerText","innerHTML"].includes(e)));o(this,"getVisibleAttributes",()=>Reflect.ownKeys(this.properties).flatMap(e=>e===A?[["class",this.getClasses()]]:e===w?[["style",this.getStyles()]]:typeof e=="string"?[[e,String(this.properties[e])]]:[]));o(this,"setStyle",(e,t)=>{var n;const r=(n=this.properties)[w]??(n[w]={});r[e]=t,t===""&&(delete r[e],Object.keys(r).length===0&&delete this.properties[w])});o(this,"getStyle",e=>{var t;return((t=this.properties[w])==null?void 0:t[e])??""});o(this,"getStyles",()=>this.properties[w]??{});o(this,"makeAccessors",e=>{const t=this.properties;return{get:()=>t[e],set:r=>t[e]=r}});this.parent=e}}const vt=s=>s.replace(/"/g,"""),xt=s=>s.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");class We extends Fe{constructor(t,r,n){super(n);o(this,"isPortal",()=>!1);o(this,"toHTML",(t=!1)=>{const r=this.children.map(c=>c.toHTML()).join(""),n=this.namespace?` xmlns="${this.namespace}"`:"";let i=null;const l=this.getVisibleAttributes().map(([c,h])=>c==="class"?` class="${h.join(" ")}"`:c==="style"?typeof h=="string"?` style="${h}"`:` style="${Object.entries(h).map(([u,g])=>`${u}: ${g};`).join(" ")}"`:Dt.has(c)?` ${c}`:c==="innerHTML"?(i=h,""):c==="innerText"?(i=xt(h),""):` ${c}="${vt(h)}"`).join(""),a=t?` ${ie}`:"";return Lt.has(this.tagName)&&r===""?`<${this.tagName}${n}${l}${a} />`:`<${this.tagName}${n}${l}${a}>${i??r}</${this.tagName}>`});this.tagName=t,this.namespace=r}}class oe extends Fe{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 Ue{constructor(e){o(this,"id",Be());o(this,"isElement",()=>!1);o(this,"isText",()=>!0);o(this,"getText",()=>this.text);o(this,"toHTML",()=>this.text);this.text=e}}class v{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 We(e,t,this.element);return this.appendOrInsert(r),new v(r,void 0,this.container,this.providers)});o(this,"makeChildText",e=>{const t=new Ue(e);return this.appendOrInsert(t),new v(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 oe(e,this.element);return this.appendOrInsert(t),new v(t,void 0,this.container,this.providers)});o(this,"setProvider",(e,t,r)=>new v(this.element,this.reference,this.container,{...this.providers,[e]:[t,r]}));o(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new ne(e);return this.providers[e]});o(this,"clear",e=>{e&&(this.reference!==void 0?this.element.removeChild(this.reference):this.element.remove())});o(this,"on",(e,t)=>this.element.on(e,t));o(this,"addClasses",e=>this.element.addClasses(e));o(this,"removeClasses",e=>this.element.removeClasses(e));o(this,"getClasses",()=>this.element.getClasses());o(this,"isBrowserDOM",()=>!1);o(this,"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 Dt=new Set(["checked","disabled","multiple","readonly","required","selected"]),Lt=new Set(["img","br","hr","input","link","meta"]),le=s=>e=>e.makeChildText(s).clear,ae=s=>e=>{const t=e.makeChildText(s.value),r=s.on(t.setText);return n=>{r(),t.clear(n)}},Mt=s=>d.is(s)?ae(s):le(s),S=(...s)=>e=>{const t=s.map(r=>f(r)(e));return r=>{t.forEach(n=>n(r))}},b=()=>()=>{},Ht=s=>e=>(e.addClasses(s),t=>{t&&e.removeClasses(s)}),Nt=s=>e=>{let t=[];const r=s.on(n=>{e.removeClasses(t),t=(n??"").split(" ").filter(i=>i.length>0),e.addClasses(t)});return n=>{r(),n&&e.removeClasses(t),t.length=0}},R=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),i=r();return n(e),l=>{l&&n(i)}},V=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),i=r(),l=e.on(n);return a=>{l(),a&&n(i)}},x=new Proxy({},{get:(s,e)=>e==="class"?t=>d.is(t)?Nt(t):Ht((t??"").split(" ").filter(r=>r.length>0)):t=>d.is(t)?V(e,t):R(e,t)}),kt=new Proxy({},{get:(s,e)=>t=>d.is(t)?V(`data-${e}`,t):R(`data-${e}`,t)}),It=new Proxy({},{get:(s,e)=>t=>d.is(t)?V(`aria-${e}`,t):R(`aria-${e}`,t)}),$t=new Proxy({},{get:(s,e)=>t=>d.is(t)?V(e,t):R(e,t)}),Rt=new Proxy({},{get:(s,e)=>t=>d.is(t)?V(e,t):R(e,t)}),f=s=>{if(s==null)return b;if(Array.isArray(s))return S(...s.map(f));if(typeof s=="string")return le(s);if(d.is(s))return ae(s);if(typeof s=="function")return s;throw new Error(`Unknown type: '${typeof s}' for child: ${s}`)},ce=(s,...e)=>t=>{const r=t.makeChildElement(s,void 0),n=e.map(i=>f(i)(r));return i=>{n.forEach(l=>l(!1)),r.clear(i)}},ue=(s,e,...t)=>r=>{const n=r.makeChildElement(s,e),i=t.map(l=>f(l)(n));return l=>{i.forEach(a=>a(!1)),n.clear(l)}},Vt=new Proxy({},{get:(s,e)=>(...t)=>ce(e,t.flatMap(f))}),jt=new Proxy({},{get:(s,e)=>(...t)=>ce("input",x.type(e),...t)}),qt="http://www.w3.org/2000/svg",Bt=new Proxy({},{get:(s,e)=>(...t)=>ue(e,qt,t.flatMap(f))}),Ft="http://www.w3.org/1998/Math/MathML",Wt=new Proxy({},{get:(s,e)=>(...t)=>ue(e,Ft,t.flatMap(f))}),he=(s,e)=>{if(typeof e=="function")return he(s,{then:e});const t=e.pending!=null?f(e.pending()):b,r=e.then,n=e.error!=null?i=>f(e.error(i)):()=>b;return i=>{let l=!0;const a=s(),c=i.makeRef();let h=f(t)(c);return a.then(u=>{l&&(h(!0),h=f(r(u))(c))},u=>{l&&(h(!0),h=f(n(u))(c))}),u=>{l=!1,h(u),c.clear(u)}}},Ut=(s,e)=>he(()=>s,e),Ge=(s,e,t)=>r=>r.on(s,e,t),Je=s=>Ge("click",e=>{e.preventDefault();const t=e.target;setTimeout(()=>{const r=t.ownerDocument!=null?t==null?void 0:t.checked:void 0;r!=null&&s(!r)},0)}),j=new Proxy({},{get:(s,e)=>t=>Ge(e,t)}),Xe=s=>e=>{const t=e.target;s(t.value)},Ye=s=>e=>{const t=e.target;s(t.valueAsNumber)},ze=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)},Gt=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)},Qe=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)},Jt=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)},Xt=s=>e=>{const t=e.target;s(t.checked)},Yt=s=>e=>{e.preventDefault(),s()},zt=s=>e=>{e.stopPropagation(),s()},Qt=s=>e=>{e.stopImmediatePropagation(),s()},Zt=(s,e="input")=>S(x.valueAsDate(s),j[e](ze(s.set))),Kt=(s,e="input")=>S(x.valueAsDate(s),j[e](Qe(s.set))),es=(s,e="input")=>S(x.valueAsNumber(s),j[e](Ye(s.set))),ts=(s,e="input")=>S(x.value(s),j[e](Xe(s.set))),ss=s=>S(x.checked(s),Je(s.set)),q=(s,e)=>{if(d.is(s))return r=>{const n=r.makeRef();let i,l;const a=s.map(u=>Object.keys(u)[0]);let c;const h=a.on(u=>{if(u!==c){c=u,l==null||l.dispose(),i==null||i(!0),l=s.map(T=>T[u]);const g=e[u](l);i=f(g)(n)}});return u=>{l==null||l.dispose(),h(),n.clear(u),i==null||i(u)}};const t=Object.keys(s)[0];return f(e[t]($(s[t])))},fe=(s,e,t)=>q(y.map(s,r=>({[r[e]]:r})),t),rs=(s,e)=>fe(s,"kind",e),ns=(s,e)=>{const t=y.map(s,([r,n])=>({[r]:n}));return q(t,e)},is=(s,e)=>fe(s,"type",e),Ze=(s,e)=>q(y.map(s,t=>({[t]:!0})),e),os=(s,e={})=>t=>{const r=(e==null?void 0:e.firstSeparator)??s,n=(e==null?void 0:e.lastSeparator)??s;return Ze(t.map(i=>i.isFirst?"first":i.isLast?"last":"other"),{first:r,last:n,other:s})},ls=s=>e=>(e.appendOrInsert(s),t=>{t&&k(s)}),Ke=(s,e,t)=>{if(d.is(s)){const r=s;return n=>{const i=n.makeRef();let l=()=>{},a=!1,c=null;const h=r.on(u=>{u==null?(l(!0),l=f((t==null?void 0:t())??b)(i),a=!1,c==null||c.dispose(),c=null):(c==null?c=_(u):c.value=u,a||(l(!0),l=f(e(c))(i),a=!0))});return u=>{c==null||c.dispose(),h(),l==null||l(u),i.clear(u)}}}else{const r=s;if(r==null){const n=t==null?void 0:t();return n!=null?f(n):b}return f(e($(r)))}},as=(...s)=>(e,t)=>r=>{const n=r.makeRef();if(s.some(p=>!d.is(p)&&p==null))return(t!=null?f(t==null?void 0:t()):b)(n);const l=s.map(()=>null),a=s.map(p=>d.is(p)?p.value!=null:p!=null);let c=null;const h=_(a.every(p=>p)),u=(p,m)=>{if(p.value!=null){if(l[m]==null){const C=_(p.value);l[m]=C}else l[m].value=p.value;a[m]=!0}else a[m]=!1};let g=s.length-1;const T=s.map((p,m)=>{if(!d.is(p)){const C=_(p);return l[m]=C,()=>{}}return p.on(()=>{u(p,m),g===0?h.value=a.every(C=>C):g--})});return h.on(p=>{c==null||c(!0),c=null,p?c=f(e(...l))(n):c=f((t==null?void 0:t())??b)(n)}),p=>{l.forEach(m=>m==null?void 0:m.dispose()),h.dispose(),T.forEach(m=>m()),c==null||c(p),n.clear(p)}},Q=(...s)=>e=>t=>s.forEach(r=>r(t,e)),de=(s,e,t)=>Ke(y.map(s,r=>r?!0:null),e,t??void 0),cs=(s,e,t)=>de(y.map(s,r=>!r),e,t),pe=(s,e,t)=>t!=null?pe(s,r=>{const n=new F(r.index,r.total.map(i=>i-1));return S(Q(n.dispose),f(e(r)),de(r.isLast,()=>b,()=>t(n)))}):d.is(s)?r=>{const n=r.makeRef(),i=[],l=s.on(a=>{const c=i.splice(a);for(const h of c)h(!0);for(let h=i.length;h<a;h++){const u=new F(h,s);i.push(f(e(u))(n))}});return a=>{l();for(const c of i)c(a);i.length=0,n.clear(a)}}:S(...Array.from({length:s},(r,n)=>n).map(r=>f(e(new F(r,$(s)))))),us=(s,e,t)=>{const r=y.map(s,i=>i.length),n=y.toSignal(s);return pe(r,i=>{const l=n.map(a=>a[i.index]);return S(Q(l.dispose),f(e(l,i)))},t)},hs=(s,e)=>{if(d.is(s)){const t=s;return r=>{r=r.makeRef();const n=t.map(a=>f(e(a)));let i=()=>{};const l=n.on(a=>{i(!0),i=a(r)});return a=>{l(),i(a)}}}return f(e(s))},fs=(s,e,t=()=>b)=>q(y.map(s,r=>r.length>0?{notEmpty:r}:{whenEmpty:null}),{notEmpty:r=>e(r),whenEmpty:()=>t()}),ds=(s,e)=>t=>{const r=t.makePortal(s);return z(f(e),r)},L=new Map,et=s=>({mark:Ve(`Probe(${s.description})`),create:({callback:e=()=>{},timeout:t=10}={})=>{if(L.has(s))throw new Error(`Probe already exists: ${s.description}`);const r=setTimeout(()=>e("timeout"),t),n={counter:0,timeoutId:r};return L.set(s,n),{value:()=>{clearTimeout(r);const l=L.get(s);if(l==null)throw new Error(`Probe not found: ${s.description}`);--l.counter===0?(e("resolved"),L.delete(s)):L.set(s,l)},dispose:()=>{clearTimeout(r),L.delete(s)},onUse:()=>n.counter++}}}),ps=et(Symbol("GlobalProbe")),ms=(s,e)=>t=>{const r=t.getStyle(s);return t.setStyle(s,e),n=>{n&&t.setStyle(s,r)}},gs=(s,e)=>t=>{const r=t.getStyle(s);return e.on(n=>t.setStyle(s,n)),n=>{n&&t.setStyle(s,r)}},ys=new Proxy({},{get:(s,e)=>t=>d.is(t)?gs(e,t):ms(e,t)}),tt=s=>e=>{if(e.isBrowser()){const t=s(e);if(t!=null)return f(t)(e)}return()=>{}},Ts=s=>e=>{const t=s(e);return t==null?()=>{}:f(t)(e)},Ss=s=>tt(e=>s(e.element)),As=s=>e=>{if(e.isHeadlessDOM()){const t=s(e);if(t)return f(t)(e)}return()=>{}},Z=s=>e=>{let t=e;const r=[],n=s({use:({mark:i})=>{const[l,a]=t.getProvider(i);return a==null||a(),l},set:({mark:i,create:l},a)=>{const{value:c,dispose:h,onUse:u}=l(a,t);r.push(h),t=t.setProvider(i,c,u)}});return n==null?()=>{}:S(f(n),Q(()=>r.forEach(i=>i())))(t)},bs=(s,e,t)=>Z(({set:r})=>(r(s,e),t())),Es=(s,e)=>Z(({use:t})=>e(t(s))),_s=(...s)=>e=>Z(({use:t})=>{const r=s.map(t);return e(...r)});exports.Async=Ut;exports.BindChecked=ss;exports.BindDate=Zt;exports.BindDateTime=Kt;exports.BindNumber=es;exports.BindText=ts;exports.BrowserContext=O;exports.CLASS_PLACEHOLDER_ATTR=I;exports.Computed=P;exports.Conjunction=os;exports.DOMNode=ls;exports.El=ce;exports.ElNS=ue;exports.ElementPosition=F;exports.Empty=b;exports.Ensure=Ke;exports.EnsureAll=as;exports.ForEach=us;exports.Fragment=S;exports.GlobalProbe=ps;exports.HeadlessAdapter=pt;exports.HeadlessContext=v;exports.HeadlessElement=We;exports.HeadlessPortal=oe;exports.HeadlessText=Ue;exports.MapSignal=hs;exports.MemoryStore=te;exports.NotEmpty=fs;exports.OnChecked=Je;exports.OnDispose=Q;exports.OneOf=q;exports.OneOfField=fe;exports.OneOfKind=rs;exports.OneOfTuple=ns;exports.OneOfType=is;exports.OneOfValue=Ze;exports.Portal=ds;exports.Prop=N;exports.Provide=bs;exports.ProviderNotFoundError=ne;exports.RenderingError=je;exports.Repeat=pe;exports.Signal=d;exports.Task=he;exports.TextNode=Mt;exports.Unless=cs;exports.Use=Es;exports.UseMany=_s;exports.Value=y;exports.When=de;exports.WithBrowserCtx=tt;exports.WithCtx=Ts;exports.WithElement=Ss;exports.WithHeadlessCtx=As;exports.WithProvider=Z;exports._NODE_PLACEHOLDER_ATTR=ie;exports._getSelfOrParentElement=Re;exports._isElement=re;exports._makeGetter=$e;exports._makeSetter=Ie;exports._removeDOMNode=k;exports._signalText=ae;exports._staticText=le;exports.animateSignal=ut;exports.animateSignals=De;exports.aria=It;exports.attr=x;exports.computed=Y;exports.computedOf=xe;exports.computedRecord=ht;exports.dataAttr=kt;exports.effect=ve;exports.effectOf=lt;exports.emitChecked=Xt;exports.emitPreventDefault=Yt;exports.emitStopImmediatePropagation=Qt;exports.emitStopPropagation=zt;exports.emitValue=Xe;exports.emitValueAsDate=ze;exports.emitValueAsDateTime=Qe;exports.emitValueAsNullableDate=Gt;exports.emitValueAsNullableDateTime=Jt;exports.emitValueAsNumber=Ye;exports.endInterpolate=Pe;exports.getWindow=ee;exports.guessInterpolate=Oe;exports.html=Vt;exports.input=jt;exports.interpolateDate=Ce;exports.interpolateNumber=_e;exports.interpolateString=we;exports.joinSignals=ot;exports.localStorageProp=at;exports.makeProbe=et;exports.makeProviderMark=Ve;exports.math=Wt;exports.mathAttr=Rt;exports.on=j;exports.prop=_;exports.render=ft;exports.renderWithContext=z;exports.renderableOfTNode=f;exports.restoreTempoPlaceholders=Pt;exports.runHeadless=dt;exports.sessionStorageProp=ct;exports.signal=$;exports.storedProp=se;exports.style=ys;exports.svg=Bt;exports.svgAttr=$t;
|
|
1
|
+
"use strict";var rt=Object.defineProperty;var ye=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),Te=(s,e,t)=>e.has(s)||ye("Cannot "+t);var K=(s,e,t)=>(Te(s,e,"read from private field"),t?t.call(s):e.get(s)),Se=(s,e,t)=>e.has(s)?ye("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(s):e.set(s,t),Ae=(s,e,t,r)=>(Te(s,e,"write to private field"),r?r.call(s,t):e.set(s,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const _e=(s,e,t)=>s+(e-s)*t,be=97,we=(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=be);let a=e.charCodeAt(i);isNaN(a)&&(a=be),n+=String.fromCharCode(l+(a-l)*t)}return n},Ce=(s,e,t)=>new Date(s.getTime()+(e.getTime()-s.getTime())*t),Pe=(s,e)=>e,xe=s=>typeof s=="number"?_e:typeof s=="string"?we:s instanceof Date?Ce:Pe;var M;class F{constructor(e,t){o(this,"counter");o(this,"isFirst");o(this,"isEven");o(this,"isOdd");Se(this,M);o(this,"dispose",()=>{this.total.dispose()});this.index=e,this.total=t,this.counter=e+1,this.isFirst=e===0,this.isEven=e%2===1,this.isOdd=e%2===0}get isLast(){return K(this,M)==null&&Ae(this,M,this.total.map(e=>this.counter===e)),K(this,M)}}M=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,t)=>{if(this._disposed)return;const r=this._value,n=this.equals(r,e);n||(this._value=e),(t||!n)&&this._onValueListeners.forEach(i=>i(e,r))});o(this,"_disposed",!1);o(this,"isDisposed",()=>this._disposed);o(this,"onDispose",e=>{this._onDisposeListeners.push(e)});o(this,"dispose",()=>{this._disposed||(this._disposed=!0,this._onDisposeListeners.forEach(e=>e()),this._onDisposeListeners.length=0,this._derivatives.length=0)});o(this,"map",(e,t=(r,n)=>r===n)=>{const r=new P(()=>{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 P(()=>{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 P(()=>{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 P(()=>{try{const l=this.get(),a=e(l);return n=a??n}catch(l){throw console.error("Error in Signal.filterMap:",l),l}},r);return this.setDerivative(i),i});o(this,"mapAsync",(e,t,r,n=(i,l)=>i===l)=>{const i=_(t,n);let l=0,a=new AbortController;return i.onDispose(this.on(async c=>{const u=++l;a.abort(),a=new AbortController;try{const h=await e(c,{abortSignal:a.signal});u===l&&i.set(h)}catch(h){if(u===l)if(r!=null)i.set(r(h));else throw h}})),i});o(this,"mapMaybe",(e,t)=>this.map(r=>e(r)??t));o(this,"feedProp",(e,t=!1)=>{const r=this.on(e.set);return e.onDispose(r),t?this.onDispose(e.dispose):this.onDispose(r),e});o(this,"deriveProp",({autoDisposeProp:e=!0,equals:t}={})=>this.feedProp(_(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,!1)).catch(l=>{r!=null?i._setAndNotify(r(l),!1):console.error("Unhandled promise rejection in Signal.ofPromise:",l)}),i}),o(H,"is",e=>e!=null&&e.$__signal__===!0);let d=H;const it=typeof queueMicrotask=="function"?queueMicrotask:s=>Promise.resolve().then(s);class P extends d{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(),!1))})});o(this,"get",()=>(this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!0)),this._value));this._fn=t,this.setDirty()}static is(t){return t!=null&&t.$__computed__===!0}get value(){return this.get()}}const X=class X extends d{constructor(){super(...arguments);o(this,"$__prop__",!0);o(this,"set",t=>{this._setAndNotify(t,!1)});o(this,"update",t=>{this._setAndNotify(t(this.get()),!1)});o(this,"reducer",(t,...r)=>{const n=this;return function i(l){const a=n.value;n.update(c=>t(c,l)),!n.equals(a,n.value)&&r.forEach(c=>c({previousState:a,state:n.value,action:l,dispatch:i}))}});o(this,"iso",(t,r,n=(i,l)=>i===l)=>{const i=new X(t(this.get()),n);return i.onDispose(this.on(l=>i.set(t(l)))),i.on(l=>this._setAndNotify(r(l),!1)),i});o(this,"atProp",t=>this.iso(r=>r[t],r=>({...this.value,[t]:r})))}get value(){return this.get()}set value(t){this._setAndNotify(t,!1)}};o(X,"is",t=>t!=null&&t.$__prop__===!0);let N=X;const Y=(s,e,t=(r,n)=>r===n)=>{const r=new P(s,t);return e.forEach(n=>n.setDerivative(r)),r},Oe=(s,e,t={})=>{let r=t.once?()=>{i(),s()}:s;if(t.skipInitial){let l=!1;const a=r;r=()=>{l?a():l=!0}}const n=Y(r,e),i=()=>{n.dispose(),t.abortSignal!=null&&t.abortSignal.removeEventListener("abort",i)};return t.abortSignal!=null&&t.abortSignal.addEventListener("abort",i),i},_=(s,e=(t,r)=>t===r)=>new N(s,e),$=(s,e=(t,r)=>t===r)=>new d(s,e),ee=()=>typeof window<"u"?window:void 0,T={map:(s,e)=>d.is(s)?s.map(e):e(s),toSignal:(s,e)=>d.is(s)?s:$(s,e),maybeToSignal:(s,e)=>{if(s!=null)return T.toSignal(s,e)},get:s=>d.is(s)?s.get():s,on:(s,e)=>d.is(s)?s.on(e):(e(s),()=>{}),dispose:s=>{d.is(s)&&s.dispose()},deriveProp:(s,{autoDisposeProp:e=!0,equals:t}={})=>d.is(s)?s.deriveProp({autoDisposeProp:e,equals:t}):_(s,t)},ve=(...s)=>(e,t)=>{const r=s.filter(n=>d.is(n));return Y(()=>e(...s.map(n=>T.get(n))),r,t)},ot=s=>{const e=Object.keys(s);return ve(...Object.values(s))((...t)=>Object.fromEntries(e.map((r,n)=>[r,t[n]])))},lt=(...s)=>(e,t={})=>{const r=s.filter(n=>d.is(n));return Oe(()=>e(...s.map(T.get)),r,t)};class te{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 se=({key:s,defaultValue:e,store:t,serialize:r=JSON.stringify,deserialize:n=JSON.parse,equals:i=(a,c)=>a===c,onLoad:l=a=>a})=>{const a=t.getItem(s),c=new N(a!=null?l(n(a)):typeof e=="function"?e():e,i);return c.on(u=>{t.setItem(s,r(u))}),c},at=s=>{var e;return se({...s,store:((e=ee())==null?void 0:e.localStorage)??new te})},ct=s=>{var e;return se({...s,store:((e=ee())==null?void 0:e.sessionStorage)??new te})};function Ee(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)??(E=>E),l=(r==null?void 0:r.equals)??((E,B)=>E===B);let a=r==null?void 0:r.interpolate,c=s,u=e(),h=performance.now(),g=null,y=!0;const p=new P(e,l),m=_(s,l);m.onDispose(()=>{g!==null&&cancelAnimationFrame(g)}),m.onDispose(p.dispose),t.forEach(E=>{E.setDerivative(p),E.onDispose(m.dispose)});const C=E=>{u=E,h=performance.now(),c=m.value,y&&(y=!1,g=Ee(me))},me=()=>{const B=(performance.now()-h)/T.get(n),st=i(B);a==null&&(a=xe(c));let ge=a(c,u,st);B>=1?(y=!0,ge=u):g=Ee(me),m.set(ge)};return p.on(C),m},ut=(s,e)=>{const{initialValue:t,...r}=e??{};return De(t??s.get(),s.get,[s],r)},ht=(s,e)=>{const{signals:t,literals:r}=Object.entries(s).reduce(({signals:i,literals:l},[a,c])=>(d.is(c)?i.push([a,c]):l[a]=c,{signals:i,literals:l}),{signals:[],literals:{}}),n=t.map(([,i])=>i);return Y(()=>(t.forEach(([i,l])=>r[i]=l.value),e(r)),n)},Le=new Set(["checked","disabled","hidden"]),Me=new Set(["selected"]),He=new Set(["rowSpan","colSpan","tabIndex","valueAsNumber"]),Ne=new Set(["valueAsDate"]),ke=new Set(["value","textContent","innerText","innerHTML","outerHTML","className","classList"]),Ie=(s,e)=>Me.has(s)?t=>{t==null||t!==!0?e.removeAttribute(s):e.setAttribute(s,"")}:Le.has(s)?t=>{t==null?e[s]=null:e[s]=!!t}:He.has(s)?t=>{t==null?e[s]=null:e[s]=Number(t)}:Ne.has(s)?t=>{t==null?e[s]=null:e[s]=t}:ke.has(s)?t=>{t==null?e[s]=null:e[s]=String(t)}:t=>{t==null?e.removeAttribute(s):e.setAttribute(s,t)},$e=(s,e)=>Me.has(s)?()=>e.hasAttribute(s):Le.has(s)?()=>!!e[s]:He.has(s)?()=>Number(e[s]):Ne.has(s)?()=>e[s]:ke.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)},Re=s=>re(s)?s:s.parentElement,re=s=>s.nodeType===1;class ne 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=this.document.querySelector(e);if(t==null)throw new Error(`Cannot find element by selector for portal: ${e}`);return this.withElement(t)});o(this,"withReference",e=>new 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 ne(e);return this.providers[e]});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)=>(this.element.addEventListener(e,t,r),n=>{n&&this.element.removeEventListener(e,t,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:$e(e,this.element),set:Ie(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){return new x(e.ownerDocument,e,t,{})}}const Ve=s=>Symbol(s),z=(s,e)=>{const t=s(e);return(r=!0)=>t(r)},ft=(s,e,{doc:t,clear:r,disposeWithParent:n=!0}={})=>{const i=typeof e=="string"?(t??document).querySelector(e):e;if(i===null)throw new je(`Cannot find element by selector for render: ${e}`);r!==!1&&(t??i.ownerDocument)!=null&&i.nodeType===1&&(i.innerHTML="");const l=Re(i),a=re(i)?void 0:i,c=x.of(l,a),u=z(s,c);let h;return n&&(h=new MutationObserver(g=>{var y;(y=g[0])==null||y.removedNodes.forEach(p=>{p===i&&(u(i.nodeType!==Node.ELEMENT_NODE),h==null||h.disconnect())})}),h.observe(i.parentElement,{childList:!0,subtree:!1,attributes:!1})),()=>{h==null||h.disconnect(),u(!0)}},dt=(s,{startUrl:e="https://example.com",selector:t=":root"}={})=>{const r=T.toSignal(e).deriveProp(),n=new oe(t,void 0),i=new O(n,void 0,{currentURL:r},{});return{clear:z(s(),i),root:n,currentURL:r}};class je extends Error{constructor(e){super(e)}}const ie="data-tts-node",I="data-tts-class",W="data-tts-style",U="data-tts-html",G="data-tts-text",J="data-tts-attrs";class pt{constructor({select:e,getAttribute:t,setAttribute:r,getClass:n,setClass:i,getStyles:l,setStyles:a,appendHTML:c,getInnerHTML:u,setInnerHTML:h,getInnerText:g,setInnerText:y}){o(this,"select");o(this,"getAttribute");o(this,"setAttribute");o(this,"getClass");o(this,"setClass");o(this,"getStyles");o(this,"setStyles");o(this,"appendHTML");o(this,"getInnerHTML");o(this,"setInnerHTML");o(this,"getInnerText");o(this,"setInnerText");o(this,"setFromRoot",(e,t)=>{e.getPortals().forEach(n=>{for(const i of this.select(n.selector)){if(i==null)throw new Error(`Cannot find element by selector for render: ${n.selector}`);if(n.hasChildren()&&this.appendHTML(i,n.contentToHTML(t)),n.hasInnerHTML()){if(t){const l=this.getInnerHTML(i);l!=null&&this.setAttribute(i,U,l)}this.setInnerHTML(i,n.getInnerHTML())}if(n.hasInnerText()){if(t){const l=this.getInnerText(i);l!=null&&this.setAttribute(i,G,l)}this.setInnerText(i,n.getInnerText())}if(n.hasClasses()){if(t){const l=this.getClass(i);l!=null&&this.setAttribute(i,I,l)}this.setClass(i,n.getClasses().join(" "))}if(n.hasStyles()){if(t){const l=this.getStyles(i);Object.keys(l).length>0&&this.setAttribute(i,W,JSON.stringify(l))}this.setStyles(i,n.getStyles())}if(n.hasAttributes()){const l=n.getAttributes();if(t){const a=[];l.forEach(([c])=>{const u=this.getAttribute(i,c);u!=null&&a.push([c,u])}),a.length>0&&this.setAttribute(i,J,JSON.stringify(Object.fromEntries(a)))}l.forEach(([a,c])=>{this.setAttribute(i,a,c)})}}})});this.select=e,this.getAttribute=t,this.setAttribute=r,this.getClass=n,this.setClass=i,this.getStyles=l,this.setStyles=a,this.appendHTML=c,this.getInnerHTML=u,this.setInnerHTML=h,this.getInnerText=g,this.setInnerText=y}}const mt=()=>{document.querySelectorAll(`[${ie}]`).forEach(k)},gt=s=>{const e=s.getAttribute(I);s.removeAttribute(I),e!=null&&s.setAttribute("class",e)},yt=()=>{document.querySelectorAll(`[${I}]`).forEach(e=>gt(e))},Tt=s=>{const e=s.getAttribute(U);s.removeAttribute(U),e!=null&&(s.innerHTML=e)},St=()=>{document.querySelectorAll(`[${U}]`).forEach(e=>Tt(e))},At=s=>{const e=s.getAttribute(G);s.removeAttribute(G),e!=null&&(s.innerText=e)},bt=()=>{document.querySelectorAll(`[${G}]`).forEach(e=>At(e))},qe=s=>JSON.parse(s.replace(/"/g,'"')),Et=s=>{const e=s.getAttribute(W);if(s.removeAttribute(W),e!=null){const t=qe(e);Object.entries(t).forEach(([r,n])=>{s.style.setProperty(r,n)})}},_t=()=>{document.querySelectorAll(`[${W}]`).forEach(e=>Et(e))},wt=s=>{const e=s.getAttribute(J);if(s.removeAttribute(J),e!=null){const t=qe(e);Object.entries(t).forEach(([r,n])=>{n==null?s.removeAttribute(r):s.setAttribute(r,n)})}},Ct=()=>{document.querySelectorAll(`[${J}]`).forEach(e=>wt(e))},Pt=()=>{mt(),yt(),bt(),St(),_t(),Ct()},A=Symbol("class"),w=Symbol("style"),D=Symbol("handler"),Be=()=>Math.random().toString(36).substring(2,15),xt=s=>s.replace(/<[^>]*>?/g,"");class Fe{constructor(e){o(this,"id",Be());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?xt(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[A]!=null);o(this,"hasStyles",()=>this.properties[w]!=null);o(this,"hasAttributes",()=>Object.keys(this.properties).length>0);o(this,"hasHandlers",()=>this.properties[D]!=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[D]??{})[e]??[]).forEach(n=>n(t))});o(this,"click",()=>{this.trigger("click",{})});o(this,"on",(e,t,r)=>{var a;const n=(a=this.properties)[D]??(a[D]={}),i=r!=null&&r.once?c=>{l(),t(c)}:c=>t(c);n[e]=[...n[e]??[],i];const l=()=>{const c=n[e]??[],u=c.indexOf(i);u!==-1&&(c.splice(u,1),c.length===0?(delete n[e],Object.keys(n).length===0&&delete this.properties[D]):n[e]=c,(r==null?void 0:r.signal)!=null&&r.signal.removeEventListener("abort",l))};return(r==null?void 0:r.signal)!=null&&r.signal.addEventListener("abort",l),l});o(this,"addClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[A]??(r[A]=[]);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)[A]??(r[A]=[]);e.forEach(n=>{const i=t.indexOf(n);i!==-1&&t.splice(i,1)}),t.length===0&&delete this.properties[A]});o(this,"getClasses",()=>this.properties[A]??[]);o(this,"getAttributes",()=>Object.entries(this.properties).filter(([e])=>!["innerText","innerHTML"].includes(e)));o(this,"getVisibleAttributes",()=>Reflect.ownKeys(this.properties).flatMap(e=>e===A?[["class",this.getClasses()]]:e===w?[["style",this.getStyles()]]:typeof e=="string"?[[e,String(this.properties[e])]]:[]));o(this,"setStyle",(e,t)=>{var n;const r=(n=this.properties)[w]??(n[w]={});r[e]=t,t===""&&(delete r[e],Object.keys(r).length===0&&delete this.properties[w])});o(this,"getStyle",e=>{var t;return((t=this.properties[w])==null?void 0:t[e])??""});o(this,"getStyles",()=>this.properties[w]??{});o(this,"makeAccessors",e=>{const t=this.properties;return{get:()=>t[e],set:r=>t[e]=r}});this.parent=e}}const Ot=s=>s.replace(/"/g,"""),vt=s=>s.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");class We extends Fe{constructor(t,r,n){super(n);o(this,"isPortal",()=>!1);o(this,"toHTML",(t=!1)=>{const r=this.children.map(c=>c.toHTML()).join(""),n=this.namespace?` xmlns="${this.namespace}"`:"";let i=null;const l=this.getVisibleAttributes().map(([c,u])=>c==="class"?` class="${u.join(" ")}"`:c==="style"?typeof u=="string"?` style="${u}"`:` style="${Object.entries(u).map(([h,g])=>`${h}: ${g};`).join(" ")}"`:Dt.has(c)?` ${c}`:c==="innerHTML"?(i=u,""):c==="innerText"?(i=vt(u),""):` ${c}="${Ot(u)}"`).join(""),a=t?` ${ie}`:"";return Lt.has(this.tagName)&&r===""?`<${this.tagName}${n}${l}${a} />`:`<${this.tagName}${n}${l}${a}>${i??r}</${this.tagName}>`});this.tagName=t,this.namespace=r}}class oe extends Fe{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 Ue{constructor(e){o(this,"id",Be());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 We(e,t,this.element);return this.appendOrInsert(r),new O(r,void 0,this.container,this.providers)});o(this,"makeChildText",e=>{const t=new Ue(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 oe(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 ne(e);return this.providers[e]});o(this,"clear",e=>{e&&(this.reference!==void 0?this.element.removeChild(this.reference):this.element.remove())});o(this,"on",(e,t)=>this.element.on(e,t));o(this,"addClasses",e=>this.element.addClasses(e));o(this,"removeClasses",e=>this.element.removeClasses(e));o(this,"getClasses",()=>this.element.getClasses());o(this,"isBrowserDOM",()=>!1);o(this,"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 Dt=new Set(["checked","disabled","multiple","readonly","required","selected"]),Lt=new Set(["img","br","hr","input","link","meta"]),le=s=>e=>e.makeChildText(s).clear,ae=s=>e=>{const t=e.makeChildText(s.value),r=s.on(t.setText);return n=>{r(),t.clear(n)}},Mt=s=>d.is(s)?ae(s):le(s),S=(...s)=>e=>{const t=s.map(r=>f(r)(e));return r=>{t.forEach(n=>n(r))}},b=()=>()=>{},Ht=s=>e=>(e.addClasses(s),t=>{t&&e.removeClasses(s)}),Nt=s=>e=>{let t=[];const r=s.on(n=>{e.removeClasses(t),t=(n??"").split(" ").filter(i=>i.length>0),e.addClasses(t)});return n=>{r(),n&&e.removeClasses(t),t.length=0}},R=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),i=r();return n(e),l=>{l&&n(i)}},V=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),i=r(),l=e.on(n);return a=>{l(),a&&n(i)}},v=new Proxy({},{get:(s,e)=>e==="class"?t=>d.is(t)?Nt(t):Ht((t??"").split(" ").filter(r=>r.length>0)):t=>d.is(t)?V(e,t):R(e,t)}),kt=new Proxy({},{get:(s,e)=>t=>d.is(t)?V(`data-${e}`,t):R(`data-${e}`,t)}),It=new Proxy({},{get:(s,e)=>t=>d.is(t)?V(`aria-${e}`,t):R(`aria-${e}`,t)}),$t=new Proxy({},{get:(s,e)=>t=>d.is(t)?V(e,t):R(e,t)}),Rt=new Proxy({},{get:(s,e)=>t=>d.is(t)?V(e,t):R(e,t)}),f=s=>{if(s==null)return b;if(Array.isArray(s))return S(...s.map(f));if(typeof s=="string")return le(s);if(d.is(s))return ae(s);if(typeof s=="function")return s;throw new Error(`Unknown type: '${typeof s}' for child: ${s}`)},ce=(s,...e)=>t=>{const r=t.makeChildElement(s,void 0),n=e.map(i=>f(i)(r));return i=>{n.forEach(l=>l(!1)),r.clear(i)}},ue=(s,e,...t)=>r=>{const n=r.makeChildElement(s,e),i=t.map(l=>f(l)(n));return l=>{i.forEach(a=>a(!1)),n.clear(l)}},Vt=new Proxy({},{get:(s,e)=>(...t)=>ce(e,t.flatMap(f))}),jt=new Proxy({},{get:(s,e)=>(...t)=>ce("input",v.type(e),...t)}),qt="http://www.w3.org/2000/svg",Bt=new Proxy({},{get:(s,e)=>(...t)=>ue(e,qt,t.flatMap(f))}),Ft="http://www.w3.org/1998/Math/MathML",Wt=new Proxy({},{get:(s,e)=>(...t)=>ue(e,Ft,t.flatMap(f))}),he=(s,e)=>{if(typeof e=="function")return he(s,{then:e});const t=e.pending!=null?f(e.pending()):b,r=e.then,n=e.error!=null?i=>f(e.error(i)):()=>b;return i=>{let l=!0;const a=s(),c=i.makeRef();let u=f(t)(c);return a.then(h=>{l&&(u(!0),u=f(r(h))(c))},h=>{l&&(u(!0),u=f(n(h))(c))}),h=>{l=!1,u(h),c.clear(h)}}},Ut=(s,e)=>he(()=>s,e),Ge=(s,e,t)=>r=>r.on(s,e,t),Je=s=>Ge("click",e=>{e.preventDefault();const t=e.target;setTimeout(()=>{const r=t.ownerDocument!=null?t==null?void 0:t.checked:void 0;r!=null&&s(!r)},0)}),j=new Proxy({},{get:(s,e)=>t=>Ge(e,t)}),Xe=s=>e=>{const t=e.target;s(t.value)},Ye=s=>e=>{const t=e.target;s(t.valueAsNumber)},ze=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)},Gt=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)},Qe=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)},Jt=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)},Xt=s=>e=>{const t=e.target;s(t.checked)},Yt=s=>e=>{e.preventDefault(),s()},zt=s=>e=>{e.stopPropagation(),s()},Qt=s=>e=>{e.stopImmediatePropagation(),s()},Zt=(s,e="input")=>S(v.valueAsDate(s),j[e](ze(s.set))),Kt=(s,e="input")=>S(v.valueAsDate(s),j[e](Qe(s.set))),es=(s,e="input")=>S(v.valueAsNumber(s),j[e](Ye(s.set))),ts=(s,e="input")=>S(v.value(s),j[e](Xe(s.set))),ss=s=>S(v.checked(s),Je(s.set)),q=(s,e)=>{if(d.is(s))return r=>{const n=r.makeRef();let i,l;const a=s.map(h=>Object.keys(h)[0]);let c;const u=a.on(h=>{if(h!==c){c=h,l==null||l.dispose(),i==null||i(!0),l=s.map(y=>y[h]);const g=e[h](l);i=f(g)(n)}});return h=>{l==null||l.dispose(),u(),n.clear(h),i==null||i(h)}};const t=Object.keys(s)[0];return f(e[t]($(s[t])))},fe=(s,e,t)=>q(T.map(s,r=>({[r[e]]:r})),t),rs=(s,e)=>fe(s,"kind",e),ns=(s,e)=>{const t=T.map(s,([r,n])=>({[r]:n}));return q(t,e)},is=(s,e)=>fe(s,"type",e),Ze=(s,e)=>q(T.map(s,t=>({[t]:!0})),e),os=(s,e={})=>t=>{const r=(e==null?void 0:e.firstSeparator)??s,n=(e==null?void 0:e.lastSeparator)??s;return Ze(t.map(i=>i.isFirst?"first":i.isLast?"last":"other"),{first:r,last:n,other:s})},ls=s=>e=>(e.appendOrInsert(s),t=>{t&&k(s)}),Ke=(s,e,t)=>{if(d.is(s)){const r=s;return n=>{const i=n.makeRef();let l=()=>{},a=!1,c=null;const u=r.on(h=>{h==null?(l(!0),l=f((t==null?void 0:t())??b)(i),a=!1,c==null||c.dispose(),c=null):(c==null?c=_(h):c.value=h,a||(l(!0),l=f(e(c))(i),a=!0))});return h=>{c==null||c.dispose(),u(),l==null||l(h),i.clear(h)}}}else{const r=s;if(r==null){const n=t==null?void 0:t();return n!=null?f(n):b}return f(e($(r)))}},as=(...s)=>(e,t)=>r=>{const n=r.makeRef();if(s.some(p=>!d.is(p)&&p==null))return(t!=null?f(t==null?void 0:t()):b)(n);const l=s.map(()=>null),a=s.map(p=>d.is(p)?p.value!=null:p!=null);let c=null;const u=_(a.every(p=>p)),h=(p,m)=>{if(p.value!=null){if(l[m]==null){const C=_(p.value);l[m]=C}else l[m].value=p.value;a[m]=!0}else a[m]=!1};let g=s.length-1;const y=s.map((p,m)=>{if(!d.is(p)){const C=_(p);return l[m]=C,()=>{}}return p.on(()=>{h(p,m),g===0?u.value=a.every(C=>C):g--})});return u.on(p=>{c==null||c(!0),c=null,p?c=f(e(...l))(n):c=f((t==null?void 0:t())??b)(n)}),p=>{l.forEach(m=>m==null?void 0:m.dispose()),u.dispose(),y.forEach(m=>m()),c==null||c(p),n.clear(p)}},Q=(...s)=>e=>t=>s.forEach(r=>r(t,e)),de=(s,e,t)=>Ke(T.map(s,r=>r?!0:null),e,t??void 0),cs=(s,e,t)=>de(T.map(s,r=>!r),e,t),pe=(s,e,t)=>t!=null?pe(s,r=>{const n=new F(r.index,r.total.map(i=>i-1));return S(Q(n.dispose),f(e(r)),de(r.isLast,()=>b,()=>t(n)))}):d.is(s)?r=>{const n=r.makeRef(),i=[],l=s.on(a=>{const c=i.splice(a);for(const u of c)u(!0);for(let u=i.length;u<a;u++){const h=new F(u,s);i.push(f(e(h))(n))}});return a=>{l();for(const c of i)c(a);i.length=0,n.clear(a)}}:S(...Array.from({length:s},(r,n)=>n).map(r=>f(e(new F(r,$(s)))))),us=(s,e,t)=>{const r=T.map(s,i=>i.length),n=T.toSignal(s);return pe(r,i=>{const l=n.map(a=>a[i.index]);return S(Q(l.dispose),f(e(l,i)))},t)},hs=(s,e)=>{if(d.is(s)){const t=s;return r=>{r=r.makeRef();const n=t.map(a=>f(e(a)));let i=()=>{};const l=n.on(a=>{i(!0),i=a(r)});return a=>{l(),i(a)}}}return f(e(s))},fs=(s,e,t=()=>b)=>q(T.map(s,r=>r.length>0?{notEmpty:r}:{whenEmpty:null}),{notEmpty:r=>e(r),whenEmpty:()=>t()}),ds=(s,e)=>t=>{const r=t.makePortal(s);return z(f(e),r)},L=new Map,et=s=>({mark:Ve(`Probe(${s.description})`),create:({callback:e=()=>{},timeout:t=10}={})=>{if(L.has(s))throw new Error(`Probe already exists: ${s.description}`);const r=setTimeout(()=>e("timeout"),t),n={counter:0,timeoutId:r};return L.set(s,n),{value:()=>{clearTimeout(r);const l=L.get(s);l!=null&&(--l.counter===0?(e("resolved"),L.delete(s)):L.set(s,l))},dispose:()=>{clearTimeout(r),L.delete(s)},onUse:()=>n.counter++}}}),ps=et(Symbol("GlobalProbe")),ms=(s,e)=>t=>{const r=t.getStyle(s);return t.setStyle(s,e),n=>{n&&t.setStyle(s,r)}},gs=(s,e)=>t=>{const r=t.getStyle(s);return e.on(n=>t.setStyle(s,n)),n=>{n&&t.setStyle(s,r)}},ys=new Proxy({},{get:(s,e)=>t=>d.is(t)?gs(e,t):ms(e,t)}),tt=s=>e=>{if(e.isBrowser()){const t=s(e);if(t!=null)return f(t)(e)}return()=>{}},Ts=s=>e=>{const t=s(e);return t==null?()=>{}:f(t)(e)},Ss=s=>tt(e=>s(e.element)),As=s=>e=>{if(e.isHeadlessDOM()){const t=s(e);if(t)return f(t)(e)}return()=>{}},Z=s=>e=>{let t=e;function r(){return t}function n(a){t=a}const i=[],l=s({use:({mark:a})=>{const[c,u]=r().getProvider(a);return u==null||u(),c},set:({mark:a,create:c},u)=>{const{value:h,dispose:g,onUse:y}=c(u,r());i.push(g),n(r().setProvider(a,h,y))}});return l==null?()=>{}:S(f(l),Q(()=>i.forEach(a=>a())))(r())},bs=(s,e,t)=>Z(({set:r})=>(r(s,e),t())),Es=(s,e)=>Z(({use:t})=>e(t(s))),_s=(...s)=>e=>Z(({use:t})=>{const r=s.map(t);return e(...r)});exports.Async=Ut;exports.BindChecked=ss;exports.BindDate=Zt;exports.BindDateTime=Kt;exports.BindNumber=es;exports.BindText=ts;exports.BrowserContext=x;exports.CLASS_PLACEHOLDER_ATTR=I;exports.Computed=P;exports.Conjunction=os;exports.DOMNode=ls;exports.El=ce;exports.ElNS=ue;exports.ElementPosition=F;exports.Empty=b;exports.Ensure=Ke;exports.EnsureAll=as;exports.ForEach=us;exports.Fragment=S;exports.GlobalProbe=ps;exports.HeadlessAdapter=pt;exports.HeadlessContext=O;exports.HeadlessElement=We;exports.HeadlessPortal=oe;exports.HeadlessText=Ue;exports.MapSignal=hs;exports.MemoryStore=te;exports.NotEmpty=fs;exports.OnChecked=Je;exports.OnDispose=Q;exports.OneOf=q;exports.OneOfField=fe;exports.OneOfKind=rs;exports.OneOfTuple=ns;exports.OneOfType=is;exports.OneOfValue=Ze;exports.Portal=ds;exports.Prop=N;exports.Provide=bs;exports.ProviderNotFoundError=ne;exports.RenderingError=je;exports.Repeat=pe;exports.Signal=d;exports.Task=he;exports.TextNode=Mt;exports.Unless=cs;exports.Use=Es;exports.UseMany=_s;exports.Value=T;exports.When=de;exports.WithBrowserCtx=tt;exports.WithCtx=Ts;exports.WithElement=Ss;exports.WithHeadlessCtx=As;exports.WithProvider=Z;exports._NODE_PLACEHOLDER_ATTR=ie;exports._getSelfOrParentElement=Re;exports._isElement=re;exports._makeGetter=$e;exports._makeSetter=Ie;exports._removeDOMNode=k;exports._signalText=ae;exports._staticText=le;exports.animateSignal=ut;exports.animateSignals=De;exports.aria=It;exports.attr=v;exports.computed=Y;exports.computedOf=ve;exports.computedRecord=ht;exports.dataAttr=kt;exports.effect=Oe;exports.effectOf=lt;exports.emitChecked=Xt;exports.emitPreventDefault=Yt;exports.emitStopImmediatePropagation=Qt;exports.emitStopPropagation=zt;exports.emitValue=Xe;exports.emitValueAsDate=ze;exports.emitValueAsDateTime=Qe;exports.emitValueAsNullableDate=Gt;exports.emitValueAsNullableDateTime=Jt;exports.emitValueAsNumber=Ye;exports.endInterpolate=Pe;exports.getWindow=ee;exports.guessInterpolate=xe;exports.html=Vt;exports.input=jt;exports.interpolateDate=Ce;exports.interpolateNumber=_e;exports.interpolateString=we;exports.joinSignals=ot;exports.localStorageProp=at;exports.makeProbe=et;exports.makeProviderMark=Ve;exports.math=Wt;exports.mathAttr=Rt;exports.on=j;exports.prop=_;exports.render=ft;exports.renderWithContext=z;exports.renderableOfTNode=f;exports.restoreTempoPlaceholders=Pt;exports.runHeadless=dt;exports.sessionStorageProp=ct;exports.signal=$;exports.storedProp=se;exports.style=ys;exports.svg=Bt;exports.svgAttr=$t;
|
package/index.js
CHANGED
|
@@ -161,7 +161,7 @@ const H = class H {
|
|
|
161
161
|
* @returns - A new Computed instance with the mapped value.
|
|
162
162
|
*/
|
|
163
163
|
o(this, "map", (e, t = (r, n) => r === n) => {
|
|
164
|
-
const r = new
|
|
164
|
+
const r = new L(() => {
|
|
165
165
|
try {
|
|
166
166
|
return e(this.get());
|
|
167
167
|
} catch (n) {
|
|
@@ -181,7 +181,7 @@ const H = class H {
|
|
|
181
181
|
* @returns A new Signal that emits the values of the resulting Signal.
|
|
182
182
|
*/
|
|
183
183
|
o(this, "flatMap", (e, t = (r, n) => r === n) => {
|
|
184
|
-
const r = new
|
|
184
|
+
const r = new L(() => {
|
|
185
185
|
try {
|
|
186
186
|
return e(this.get()).get();
|
|
187
187
|
} catch (n) {
|
|
@@ -210,7 +210,7 @@ const H = class H {
|
|
|
210
210
|
o(this, "_$");
|
|
211
211
|
o(this, "filter", (e, t) => {
|
|
212
212
|
let r = t ?? this.get();
|
|
213
|
-
const n = new
|
|
213
|
+
const n = new L(() => {
|
|
214
214
|
try {
|
|
215
215
|
const i = this.get();
|
|
216
216
|
return r = e(i) ? i : r;
|
|
@@ -232,7 +232,7 @@ const H = class H {
|
|
|
232
232
|
*/
|
|
233
233
|
o(this, "filterMap", (e, t, r = (n, i) => n === i) => {
|
|
234
234
|
let n = t;
|
|
235
|
-
const i = new
|
|
235
|
+
const i = new L(() => {
|
|
236
236
|
try {
|
|
237
237
|
const l = this.get(), c = e(l);
|
|
238
238
|
return n = c ?? n;
|
|
@@ -259,18 +259,18 @@ const H = class H {
|
|
|
259
259
|
const i = w(t, n);
|
|
260
260
|
let l = 0, c = new AbortController();
|
|
261
261
|
return i.onDispose(
|
|
262
|
-
this.on(async (
|
|
263
|
-
const
|
|
262
|
+
this.on(async (u) => {
|
|
263
|
+
const a = ++l;
|
|
264
264
|
c.abort(), c = new AbortController();
|
|
265
265
|
try {
|
|
266
|
-
const
|
|
267
|
-
|
|
268
|
-
} catch (
|
|
269
|
-
if (
|
|
266
|
+
const h = await e(u, { abortSignal: c.signal });
|
|
267
|
+
a === l && i.set(h);
|
|
268
|
+
} catch (h) {
|
|
269
|
+
if (a === l)
|
|
270
270
|
if (r != null)
|
|
271
|
-
i.set(r(
|
|
271
|
+
i.set(r(h));
|
|
272
272
|
else
|
|
273
|
-
throw
|
|
273
|
+
throw h;
|
|
274
274
|
}
|
|
275
275
|
})
|
|
276
276
|
), i;
|
|
@@ -383,7 +383,7 @@ o(H, "is", (e) => (
|
|
|
383
383
|
));
|
|
384
384
|
let d = H;
|
|
385
385
|
const Ve = typeof queueMicrotask == "function" ? queueMicrotask : (s) => Promise.resolve().then(s);
|
|
386
|
-
class
|
|
386
|
+
class L extends d {
|
|
387
387
|
/**
|
|
388
388
|
* Represents a Signal object.
|
|
389
389
|
* @param _fn - The function that returns the value of the signal.
|
|
@@ -472,8 +472,8 @@ const W = class W extends d {
|
|
|
472
472
|
const n = this;
|
|
473
473
|
return function i(l) {
|
|
474
474
|
const c = n.value;
|
|
475
|
-
n.update((
|
|
476
|
-
(
|
|
475
|
+
n.update((u) => t(u, l)), !n.equals(c, n.value) && r.forEach(
|
|
476
|
+
(u) => u({
|
|
477
477
|
previousState: c,
|
|
478
478
|
state: n.value,
|
|
479
479
|
action: l,
|
|
@@ -529,7 +529,7 @@ o(W, "is", (t) => (
|
|
|
529
529
|
));
|
|
530
530
|
let k = W;
|
|
531
531
|
const z = (s, e, t = (r, n) => r === n) => {
|
|
532
|
-
const r = new
|
|
532
|
+
const r = new L(s, t);
|
|
533
533
|
return e.forEach((n) => n.setDerivative(r)), r;
|
|
534
534
|
}, je = (s, e, t = {}) => {
|
|
535
535
|
let r = t.once ? () => {
|
|
@@ -546,7 +546,7 @@ const z = (s, e, t = (r, n) => r === n) => {
|
|
|
546
546
|
n.dispose(), t.abortSignal != null && t.abortSignal.removeEventListener("abort", i);
|
|
547
547
|
};
|
|
548
548
|
return t.abortSignal != null && t.abortSignal.addEventListener("abort", i), i;
|
|
549
|
-
}, w = (s, e = (t, r) => t === r) => new k(s, e), U = (s, e = (t, r) => t === r) => new d(s, e), le = () => typeof window < "u" ? window : void 0,
|
|
549
|
+
}, w = (s, e = (t, r) => t === r) => new k(s, e), U = (s, e = (t, r) => t === r) => new d(s, e), le = () => typeof window < "u" ? window : void 0, T = {
|
|
550
550
|
/**
|
|
551
551
|
* Maps a value or a Signal to a new value.
|
|
552
552
|
* If the value is a Signal, it returns a new Signal with the mapped value.
|
|
@@ -578,7 +578,7 @@ const z = (s, e, t = (r, n) => r === n) => {
|
|
|
578
578
|
*/
|
|
579
579
|
maybeToSignal: (s, e) => {
|
|
580
580
|
if (s != null)
|
|
581
|
-
return
|
|
581
|
+
return T.toSignal(s, e);
|
|
582
582
|
},
|
|
583
583
|
/**
|
|
584
584
|
* Gets the value from a `Signal` or the value itself if it is not a `Signal`.
|
|
@@ -620,19 +620,19 @@ const z = (s, e, t = (r, n) => r === n) => {
|
|
|
620
620
|
}, qe = (...s) => (e, t) => {
|
|
621
621
|
const r = s.filter((n) => d.is(n));
|
|
622
622
|
return z(
|
|
623
|
-
() => e(...s.map((n) =>
|
|
623
|
+
() => e(...s.map((n) => T.get(n))),
|
|
624
624
|
r,
|
|
625
625
|
t
|
|
626
626
|
);
|
|
627
|
-
},
|
|
627
|
+
}, Lt = (s) => {
|
|
628
628
|
const e = Object.keys(s);
|
|
629
629
|
return qe(...Object.values(s))(
|
|
630
630
|
(...t) => Object.fromEntries(e.map((r, n) => [r, t[n]]))
|
|
631
631
|
);
|
|
632
|
-
},
|
|
632
|
+
}, Pt = (...s) => (e, t = {}) => {
|
|
633
633
|
const r = s.filter((n) => d.is(n));
|
|
634
634
|
return je(
|
|
635
|
-
() => e(...s.map(
|
|
635
|
+
() => e(...s.map(T.get)),
|
|
636
636
|
r,
|
|
637
637
|
t
|
|
638
638
|
);
|
|
@@ -656,31 +656,31 @@ class ce {
|
|
|
656
656
|
});
|
|
657
657
|
}
|
|
658
658
|
}
|
|
659
|
-
const
|
|
659
|
+
const ue = ({
|
|
660
660
|
key: s,
|
|
661
661
|
defaultValue: e,
|
|
662
662
|
store: t,
|
|
663
663
|
serialize: r = JSON.stringify,
|
|
664
664
|
deserialize: n = JSON.parse,
|
|
665
|
-
equals: i = (c,
|
|
665
|
+
equals: i = (c, u) => c === u,
|
|
666
666
|
onLoad: l = (c) => c
|
|
667
667
|
}) => {
|
|
668
|
-
const c = t.getItem(s),
|
|
668
|
+
const c = t.getItem(s), u = new k(
|
|
669
669
|
c != null ? l(n(c)) : typeof e == "function" ? e() : e,
|
|
670
670
|
i
|
|
671
671
|
);
|
|
672
|
-
return
|
|
673
|
-
t.setItem(s, r(
|
|
674
|
-
}),
|
|
672
|
+
return u.on((a) => {
|
|
673
|
+
t.setItem(s, r(a));
|
|
674
|
+
}), u;
|
|
675
675
|
}, Dt = (s) => {
|
|
676
676
|
var e;
|
|
677
|
-
return
|
|
677
|
+
return ue({
|
|
678
678
|
...s,
|
|
679
679
|
store: ((e = le()) == null ? void 0 : e.localStorage) ?? new ce()
|
|
680
680
|
});
|
|
681
681
|
}, Mt = (s) => {
|
|
682
682
|
var e;
|
|
683
|
-
return
|
|
683
|
+
return ue({
|
|
684
684
|
...s,
|
|
685
685
|
store: ((e = le()) == null ? void 0 : e.sessionStorage) ?? new ce()
|
|
686
686
|
});
|
|
@@ -690,20 +690,20 @@ function oe(s) {
|
|
|
690
690
|
}
|
|
691
691
|
const Fe = (s, e, t, r) => {
|
|
692
692
|
const n = (r == null ? void 0 : r.duration) ?? 300, i = (r == null ? void 0 : r.easing) ?? ((S) => S), l = (r == null ? void 0 : r.equals) ?? ((S, I) => S === I);
|
|
693
|
-
let c = r == null ? void 0 : r.interpolate,
|
|
694
|
-
const p = new
|
|
693
|
+
let c = r == null ? void 0 : r.interpolate, u = s, a = e(), h = performance.now(), m = null, y = !0;
|
|
694
|
+
const p = new L(e, l), g = w(s, l);
|
|
695
695
|
g.onDispose(() => {
|
|
696
696
|
m !== null && cancelAnimationFrame(m);
|
|
697
697
|
}), g.onDispose(p.dispose), t.forEach((S) => {
|
|
698
698
|
S.setDerivative(p), S.onDispose(g.dispose);
|
|
699
699
|
});
|
|
700
700
|
const C = (S) => {
|
|
701
|
-
|
|
701
|
+
a = S, h = performance.now(), u = g.value, y && (y = !1, m = oe(ee));
|
|
702
702
|
}, ee = () => {
|
|
703
|
-
const I = (performance.now() -
|
|
704
|
-
c == null && (c = Re(
|
|
705
|
-
let te = c(
|
|
706
|
-
I >= 1 ? (
|
|
703
|
+
const I = (performance.now() - h) / T.get(n), Me = i(I);
|
|
704
|
+
c == null && (c = Re(u));
|
|
705
|
+
let te = c(u, a, Me);
|
|
706
|
+
I >= 1 ? (y = !0, te = a) : m = oe(ee), g.set(te);
|
|
707
707
|
};
|
|
708
708
|
return p.on(C), g;
|
|
709
709
|
}, Ot = (s, e) => {
|
|
@@ -716,11 +716,11 @@ const Fe = (s, e, t, r) => {
|
|
|
716
716
|
);
|
|
717
717
|
}, Ht = (s, e) => {
|
|
718
718
|
const { signals: t, literals: r } = Object.entries(s).reduce(
|
|
719
|
-
({ signals: i, literals: l }, [c,
|
|
719
|
+
({ signals: i, literals: l }, [c, u]) => (d.is(u) ? i.push([c, u]) : l[c] = u, { signals: i, literals: l }),
|
|
720
720
|
{ signals: [], literals: {} }
|
|
721
721
|
), n = t.map(([, i]) => i);
|
|
722
722
|
return z(() => (t.forEach(([i, l]) => r[i] = l.value), e(r)), n);
|
|
723
|
-
},
|
|
723
|
+
}, ae = /* @__PURE__ */ new Set(["checked", "disabled", "hidden"]), he = /* @__PURE__ */ new Set(["selected"]), fe = /* @__PURE__ */ new Set([
|
|
724
724
|
"rowSpan",
|
|
725
725
|
"colSpan",
|
|
726
726
|
"tabIndex",
|
|
@@ -735,7 +735,7 @@ const Fe = (s, e, t, r) => {
|
|
|
735
735
|
"classList"
|
|
736
736
|
]), Be = (s, e) => he.has(s) ? (t) => {
|
|
737
737
|
t == null || t !== !0 ? e.removeAttribute(s) : e.setAttribute(s, "");
|
|
738
|
-
} :
|
|
738
|
+
} : ae.has(s) ? (t) => {
|
|
739
739
|
t == null ? e[s] = null : e[s] = !!t;
|
|
740
740
|
} : fe.has(s) ? (t) => {
|
|
741
741
|
t == null ? e[s] = null : e[s] = Number(t);
|
|
@@ -745,7 +745,7 @@ const Fe = (s, e, t, r) => {
|
|
|
745
745
|
t == null ? e[s] = null : e[s] = String(t);
|
|
746
746
|
} : (t) => {
|
|
747
747
|
t == null ? e.removeAttribute(s) : e.setAttribute(s, t);
|
|
748
|
-
}, We = (s, e) => he.has(s) ? () => e.hasAttribute(s) :
|
|
748
|
+
}, We = (s, e) => he.has(s) ? () => e.hasAttribute(s) : ae.has(s) ? () => !!e[s] : fe.has(s) ? () => Number(e[s]) : de.has(s) ? () => e[s] : pe.has(s) ? () => String(e[s]) : () => e.getAttribute(s), R = (s) => {
|
|
749
749
|
const e = s;
|
|
750
750
|
e && e.onblur && (e.onblur = null), !(!s || s.ownerDocument === void 0) && s.parentElement && s.parentElement.removeChild(s);
|
|
751
751
|
}, Ue = (s) => ge(s) ? s : s.parentElement, ge = (s) => s.nodeType === 1;
|
|
@@ -754,7 +754,7 @@ class me extends Error {
|
|
|
754
754
|
super(`Provider not found: ${e.description}`);
|
|
755
755
|
}
|
|
756
756
|
}
|
|
757
|
-
class
|
|
757
|
+
class P {
|
|
758
758
|
/**
|
|
759
759
|
* Constructs a new `DOMContext` instance.
|
|
760
760
|
*
|
|
@@ -836,7 +836,7 @@ class L {
|
|
|
836
836
|
* @param element - The DOM element to use in the new `DOMContext` instance.
|
|
837
837
|
* @returns A new `DOMContext` instance with the provided `element`.
|
|
838
838
|
*/
|
|
839
|
-
o(this, "withElement", (e) => new
|
|
839
|
+
o(this, "withElement", (e) => new P(this.document, e, void 0, this.providers));
|
|
840
840
|
/**
|
|
841
841
|
* Creates a new `DOMContext` instance with a reference to a DOM element selected by the provided `selector`.
|
|
842
842
|
* @param selector - The CSS selector for the target DOM element.
|
|
@@ -854,7 +854,7 @@ class L {
|
|
|
854
854
|
* @param reference - The optional `Text` node to use as the reference for the new `DOMContext`.
|
|
855
855
|
* @returns A new `DOMContext` instance with the specified reference.
|
|
856
856
|
*/
|
|
857
|
-
o(this, "withReference", (e) => new
|
|
857
|
+
o(this, "withReference", (e) => new P(this.document, this.element, e, this.providers));
|
|
858
858
|
/**
|
|
859
859
|
* Sets a provider for the given provider mark.
|
|
860
860
|
*
|
|
@@ -862,7 +862,7 @@ class L {
|
|
|
862
862
|
* @param value - The provider to set for the given mark.
|
|
863
863
|
* @returns A new `DOMContext` instance with the specified provider.
|
|
864
864
|
*/
|
|
865
|
-
o(this, "setProvider", (e, t, r) => new
|
|
865
|
+
o(this, "setProvider", (e, t, r) => new P(this.document, this.element, this.reference, {
|
|
866
866
|
...this.providers,
|
|
867
867
|
[e]: [t, r]
|
|
868
868
|
}));
|
|
@@ -964,7 +964,7 @@ class L {
|
|
|
964
964
|
* @returns A new `DOMContext` instance.
|
|
965
965
|
*/
|
|
966
966
|
static of(e, t) {
|
|
967
|
-
return new
|
|
967
|
+
return new P(e.ownerDocument, e, t, {});
|
|
968
968
|
}
|
|
969
969
|
}
|
|
970
970
|
const Je = (s) => Symbol(s), Q = (s, e) => {
|
|
@@ -977,25 +977,25 @@ const Je = (s) => Symbol(s), Q = (s, e) => {
|
|
|
977
977
|
`Cannot find element by selector for render: ${e}`
|
|
978
978
|
);
|
|
979
979
|
r !== !1 && (t ?? i.ownerDocument) != null && i.nodeType === 1 && (i.innerHTML = "");
|
|
980
|
-
const l = Ue(i), c = ge(i) ? void 0 : i,
|
|
981
|
-
let
|
|
982
|
-
return n && (
|
|
983
|
-
var
|
|
984
|
-
(
|
|
985
|
-
p === i && (
|
|
980
|
+
const l = Ue(i), c = ge(i) ? void 0 : i, u = P.of(l, c), a = Q(s, u);
|
|
981
|
+
let h;
|
|
982
|
+
return n && (h = new MutationObserver((m) => {
|
|
983
|
+
var y;
|
|
984
|
+
(y = m[0]) == null || y.removedNodes.forEach((p) => {
|
|
985
|
+
p === i && (a(i.nodeType !== Node.ELEMENT_NODE), h == null || h.disconnect());
|
|
986
986
|
});
|
|
987
|
-
}),
|
|
987
|
+
}), h.observe(i.parentElement, {
|
|
988
988
|
childList: !0,
|
|
989
989
|
subtree: !1,
|
|
990
990
|
attributes: !1
|
|
991
991
|
})), () => {
|
|
992
|
-
|
|
992
|
+
h == null || h.disconnect(), a(!0);
|
|
993
993
|
};
|
|
994
994
|
}, $t = (s, {
|
|
995
995
|
startUrl: e = "https://example.com",
|
|
996
996
|
selector: t = ":root"
|
|
997
997
|
} = {}) => {
|
|
998
|
-
const r =
|
|
998
|
+
const r = T.toSignal(e).deriveProp(), n = new Se(t, void 0), i = new D(n, void 0, { currentURL: r }, {});
|
|
999
999
|
return {
|
|
1000
1000
|
clear: Q(s(), i),
|
|
1001
1001
|
root: n,
|
|
@@ -1017,11 +1017,11 @@ class It {
|
|
|
1017
1017
|
setClass: i,
|
|
1018
1018
|
getStyles: l,
|
|
1019
1019
|
setStyles: c,
|
|
1020
|
-
appendHTML:
|
|
1021
|
-
getInnerHTML:
|
|
1022
|
-
setInnerHTML:
|
|
1020
|
+
appendHTML: u,
|
|
1021
|
+
getInnerHTML: a,
|
|
1022
|
+
setInnerHTML: h,
|
|
1023
1023
|
getInnerText: m,
|
|
1024
|
-
setInnerText:
|
|
1024
|
+
setInnerText: y
|
|
1025
1025
|
}) {
|
|
1026
1026
|
/**
|
|
1027
1027
|
* Selects elements from the headless environment.
|
|
@@ -1147,23 +1147,23 @@ class It {
|
|
|
1147
1147
|
const l = n.getAttributes();
|
|
1148
1148
|
if (t) {
|
|
1149
1149
|
const c = [];
|
|
1150
|
-
l.forEach(([
|
|
1151
|
-
const
|
|
1152
|
-
|
|
1150
|
+
l.forEach(([u]) => {
|
|
1151
|
+
const a = this.getAttribute(i, u);
|
|
1152
|
+
a != null && c.push([u, a]);
|
|
1153
1153
|
}), c.length > 0 && this.setAttribute(
|
|
1154
1154
|
i,
|
|
1155
1155
|
B,
|
|
1156
1156
|
JSON.stringify(Object.fromEntries(c))
|
|
1157
1157
|
);
|
|
1158
1158
|
}
|
|
1159
|
-
l.forEach(([c,
|
|
1160
|
-
this.setAttribute(i, c,
|
|
1159
|
+
l.forEach(([c, u]) => {
|
|
1160
|
+
this.setAttribute(i, c, u);
|
|
1161
1161
|
});
|
|
1162
1162
|
}
|
|
1163
1163
|
}
|
|
1164
1164
|
});
|
|
1165
1165
|
});
|
|
1166
|
-
this.select = e, this.getAttribute = t, this.setAttribute = r, this.getClass = n, this.setClass = i, this.getStyles = l, this.setStyles = c, this.appendHTML =
|
|
1166
|
+
this.select = e, this.getAttribute = t, this.setAttribute = r, this.getClass = n, this.setClass = i, this.getStyles = l, this.setStyles = c, this.appendHTML = u, this.getInnerHTML = a, this.setInnerHTML = h, this.getInnerText = m, this.setInnerText = y;
|
|
1167
1167
|
}
|
|
1168
1168
|
}
|
|
1169
1169
|
const Xe = () => {
|
|
@@ -1205,7 +1205,7 @@ const Xe = () => {
|
|
|
1205
1205
|
document.querySelectorAll(`[${B}]`).forEach((e) => rt(e));
|
|
1206
1206
|
}, kt = () => {
|
|
1207
1207
|
Xe(), ze(), et(), Ze(), st(), nt();
|
|
1208
|
-
}, b = Symbol("class"),
|
|
1208
|
+
}, b = Symbol("class"), E = Symbol("style"), v = Symbol("handler"), be = () => Math.random().toString(36).substring(2, 15), it = (s) => s.replace(/<[^>]*>?/g, "");
|
|
1209
1209
|
class Ae {
|
|
1210
1210
|
constructor(e) {
|
|
1211
1211
|
o(this, "id", be());
|
|
@@ -1235,7 +1235,7 @@ class Ae {
|
|
|
1235
1235
|
o(this, "hasInnerText", () => this.properties.innerText != null);
|
|
1236
1236
|
o(this, "hasChildren", () => this.children.length > 0);
|
|
1237
1237
|
o(this, "hasClasses", () => this.properties[b] != null);
|
|
1238
|
-
o(this, "hasStyles", () => this.properties[
|
|
1238
|
+
o(this, "hasStyles", () => this.properties[E] != null);
|
|
1239
1239
|
o(this, "hasAttributes", () => Object.keys(this.properties).length > 0);
|
|
1240
1240
|
o(this, "hasHandlers", () => this.properties[v] != null);
|
|
1241
1241
|
o(this, "hasRenderableProperties", () => this.hasClasses() || this.hasAttributes() || this.hasStyles());
|
|
@@ -1256,13 +1256,13 @@ class Ae {
|
|
|
1256
1256
|
});
|
|
1257
1257
|
o(this, "on", (e, t, r) => {
|
|
1258
1258
|
var c;
|
|
1259
|
-
const n = (c = this.properties)[v] ?? (c[v] = {}), i = r != null && r.once ? (
|
|
1260
|
-
l(), t(
|
|
1261
|
-
} : (
|
|
1259
|
+
const n = (c = this.properties)[v] ?? (c[v] = {}), i = r != null && r.once ? (u) => {
|
|
1260
|
+
l(), t(u);
|
|
1261
|
+
} : (u) => t(u);
|
|
1262
1262
|
n[e] = [...n[e] ?? [], i];
|
|
1263
1263
|
const l = () => {
|
|
1264
|
-
const
|
|
1265
|
-
|
|
1264
|
+
const u = n[e] ?? [], a = u.indexOf(i);
|
|
1265
|
+
a !== -1 && (u.splice(a, 1), u.length === 0 ? (delete n[e], Object.keys(n).length === 0 && delete this.properties[v]) : n[e] = u, (r == null ? void 0 : r.signal) != null && r.signal.removeEventListener("abort", l));
|
|
1266
1266
|
};
|
|
1267
1267
|
return (r == null ? void 0 : r.signal) != null && r.signal.addEventListener("abort", l), l;
|
|
1268
1268
|
});
|
|
@@ -1290,18 +1290,18 @@ class Ae {
|
|
|
1290
1290
|
([e]) => !["innerText", "innerHTML"].includes(e)
|
|
1291
1291
|
));
|
|
1292
1292
|
o(this, "getVisibleAttributes", () => Reflect.ownKeys(this.properties).flatMap(
|
|
1293
|
-
(e) => e === b ? [["class", this.getClasses()]] : e ===
|
|
1293
|
+
(e) => e === b ? [["class", this.getClasses()]] : e === E ? [["style", this.getStyles()]] : typeof e == "string" ? [[e, String(this.properties[e])]] : []
|
|
1294
1294
|
));
|
|
1295
1295
|
o(this, "setStyle", (e, t) => {
|
|
1296
1296
|
var n;
|
|
1297
|
-
const r = (n = this.properties)[
|
|
1298
|
-
r[e] = t, t === "" && (delete r[e], Object.keys(r).length === 0 && delete this.properties[
|
|
1297
|
+
const r = (n = this.properties)[E] ?? (n[E] = {});
|
|
1298
|
+
r[e] = t, t === "" && (delete r[e], Object.keys(r).length === 0 && delete this.properties[E]);
|
|
1299
1299
|
});
|
|
1300
1300
|
o(this, "getStyle", (e) => {
|
|
1301
1301
|
var t;
|
|
1302
|
-
return ((t = this.properties[
|
|
1302
|
+
return ((t = this.properties[E]) == null ? void 0 : t[e]) ?? "";
|
|
1303
1303
|
});
|
|
1304
|
-
o(this, "getStyles", () => this.properties[
|
|
1304
|
+
o(this, "getStyles", () => this.properties[E] ?? {});
|
|
1305
1305
|
o(this, "makeAccessors", (e) => {
|
|
1306
1306
|
const t = this.properties;
|
|
1307
1307
|
return {
|
|
@@ -1318,9 +1318,9 @@ class ct extends Ae {
|
|
|
1318
1318
|
super(n);
|
|
1319
1319
|
o(this, "isPortal", () => !1);
|
|
1320
1320
|
o(this, "toHTML", (t = !1) => {
|
|
1321
|
-
const r = this.children.map((
|
|
1321
|
+
const r = this.children.map((u) => u.toHTML()).join(""), n = this.namespace ? ` xmlns="${this.namespace}"` : "";
|
|
1322
1322
|
let i = null;
|
|
1323
|
-
const l = this.getVisibleAttributes().map(([
|
|
1323
|
+
const l = this.getVisibleAttributes().map(([u, a]) => u === "class" ? ` class="${a.join(" ")}"` : u === "style" ? typeof a == "string" ? ` style="${a}"` : ` style="${Object.entries(a).map(([h, m]) => `${h}: ${m};`).join(" ")}"` : at.has(u) ? ` ${u}` : u === "innerHTML" ? (i = a, "") : u === "innerText" ? (i = lt(a), "") : ` ${u}="${ot(a)}"`).join(""), c = t ? ` ${ye}` : "";
|
|
1324
1324
|
return ht.has(this.tagName) && r === "" ? `<${this.tagName}${n}${l}${c} />` : `<${this.tagName}${n}${l}${c}>${i ?? r}</${this.tagName}>`;
|
|
1325
1325
|
});
|
|
1326
1326
|
this.tagName = t, this.namespace = r;
|
|
@@ -1335,7 +1335,7 @@ class Se extends Ae {
|
|
|
1335
1335
|
this.selector = t;
|
|
1336
1336
|
}
|
|
1337
1337
|
}
|
|
1338
|
-
class
|
|
1338
|
+
class ut {
|
|
1339
1339
|
constructor(e) {
|
|
1340
1340
|
o(this, "id", be());
|
|
1341
1341
|
o(this, "isElement", () => !1);
|
|
@@ -1364,7 +1364,7 @@ class D {
|
|
|
1364
1364
|
);
|
|
1365
1365
|
});
|
|
1366
1366
|
o(this, "makeChildText", (e) => {
|
|
1367
|
-
const t = new
|
|
1367
|
+
const t = new ut(e);
|
|
1368
1368
|
return this.appendOrInsert(t), new D(
|
|
1369
1369
|
this.element,
|
|
1370
1370
|
t,
|
|
@@ -1422,24 +1422,24 @@ class D {
|
|
|
1422
1422
|
this.element = e, this.reference = t, this.container = r, this.providers = n;
|
|
1423
1423
|
}
|
|
1424
1424
|
}
|
|
1425
|
-
const
|
|
1425
|
+
const at = /* @__PURE__ */ new Set([
|
|
1426
1426
|
"checked",
|
|
1427
1427
|
"disabled",
|
|
1428
1428
|
"multiple",
|
|
1429
1429
|
"readonly",
|
|
1430
1430
|
"required",
|
|
1431
1431
|
"selected"
|
|
1432
|
-
]), ht = /* @__PURE__ */ new Set(["img", "br", "hr", "input", "link", "meta"]),
|
|
1432
|
+
]), ht = /* @__PURE__ */ new Set(["img", "br", "hr", "input", "link", "meta"]), _e = (s) => (e) => e.makeChildText(s).clear, Ee = (s) => (e) => {
|
|
1433
1433
|
const t = e.makeChildText(s.value), r = s.on(t.setText);
|
|
1434
1434
|
return (n) => {
|
|
1435
1435
|
r(), t.clear(n);
|
|
1436
1436
|
};
|
|
1437
|
-
}, Rt = (s) => d.is(s) ?
|
|
1437
|
+
}, Rt = (s) => d.is(s) ? Ee(s) : _e(s), A = (...s) => (e) => {
|
|
1438
1438
|
const t = s.map((r) => f(r)(e));
|
|
1439
1439
|
return (r) => {
|
|
1440
1440
|
t.forEach((n) => n(r));
|
|
1441
1441
|
};
|
|
1442
|
-
},
|
|
1442
|
+
}, _ = () => () => {
|
|
1443
1443
|
}, ft = (s) => (e) => (e.addClasses(s), (t) => {
|
|
1444
1444
|
t && e.removeClasses(s);
|
|
1445
1445
|
}), dt = (s) => (e) => {
|
|
@@ -1558,13 +1558,13 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1558
1558
|
}
|
|
1559
1559
|
), f = (s) => {
|
|
1560
1560
|
if (s == null)
|
|
1561
|
-
return
|
|
1561
|
+
return _;
|
|
1562
1562
|
if (Array.isArray(s))
|
|
1563
1563
|
return A(...s.map(f));
|
|
1564
1564
|
if (typeof s == "string")
|
|
1565
|
-
return Ee(s);
|
|
1566
|
-
if (d.is(s))
|
|
1567
1565
|
return _e(s);
|
|
1566
|
+
if (d.is(s))
|
|
1567
|
+
return Ee(s);
|
|
1568
1568
|
if (typeof s == "function")
|
|
1569
1569
|
return s;
|
|
1570
1570
|
throw new Error(`Unknown type: '${typeof s}' for child: ${s}`);
|
|
@@ -1621,20 +1621,20 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1621
1621
|
), ve = (s, e) => {
|
|
1622
1622
|
if (typeof e == "function")
|
|
1623
1623
|
return ve(s, { then: e });
|
|
1624
|
-
const t = e.pending != null ? f(e.pending()) :
|
|
1624
|
+
const t = e.pending != null ? f(e.pending()) : _, r = e.then, n = e.error != null ? (i) => f(e.error(i)) : () => _;
|
|
1625
1625
|
return (i) => {
|
|
1626
1626
|
let l = !0;
|
|
1627
|
-
const c = s(),
|
|
1628
|
-
let
|
|
1627
|
+
const c = s(), u = i.makeRef();
|
|
1628
|
+
let a = f(t)(u);
|
|
1629
1629
|
return c.then(
|
|
1630
|
-
(
|
|
1631
|
-
l && (
|
|
1630
|
+
(h) => {
|
|
1631
|
+
l && (a(!0), a = f(r(h))(u));
|
|
1632
1632
|
},
|
|
1633
|
-
(
|
|
1634
|
-
l && (
|
|
1633
|
+
(h) => {
|
|
1634
|
+
l && (a(!0), a = f(n(h))(u));
|
|
1635
1635
|
}
|
|
1636
|
-
), (
|
|
1637
|
-
l = !1, h
|
|
1636
|
+
), (h) => {
|
|
1637
|
+
l = !1, a(h), u.clear(h);
|
|
1638
1638
|
};
|
|
1639
1639
|
};
|
|
1640
1640
|
}, Gt = (s, e) => ve(() => s, e), xe = (s, e, t) => (r) => r.on(s, e, t), mt = (s) => xe("click", (e) => {
|
|
@@ -1723,30 +1723,30 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1723
1723
|
return (r) => {
|
|
1724
1724
|
const n = r.makeRef();
|
|
1725
1725
|
let i, l;
|
|
1726
|
-
const c = s.map((
|
|
1727
|
-
let
|
|
1728
|
-
const
|
|
1729
|
-
if (
|
|
1730
|
-
|
|
1731
|
-
const m = e[
|
|
1726
|
+
const c = s.map((h) => Object.keys(h)[0]);
|
|
1727
|
+
let u;
|
|
1728
|
+
const a = c.on((h) => {
|
|
1729
|
+
if (h !== u) {
|
|
1730
|
+
u = h, l == null || l.dispose(), i == null || i(!0), l = s.map((y) => y[h]);
|
|
1731
|
+
const m = e[h](l);
|
|
1732
1732
|
i = f(m)(n);
|
|
1733
1733
|
}
|
|
1734
1734
|
});
|
|
1735
|
-
return (
|
|
1736
|
-
l == null || l.dispose(),
|
|
1735
|
+
return (h) => {
|
|
1736
|
+
l == null || l.dispose(), a(), n.clear(h), i == null || i(h);
|
|
1737
1737
|
};
|
|
1738
1738
|
};
|
|
1739
1739
|
const t = Object.keys(s)[0];
|
|
1740
1740
|
return f(e[t](U(s[t])));
|
|
1741
|
-
},
|
|
1742
|
-
|
|
1741
|
+
}, Le = (s, e, t) => G(
|
|
1742
|
+
T.map(s, (r) => ({ [r[e]]: r })),
|
|
1743
1743
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1744
1744
|
t
|
|
1745
|
-
), is = (s, e) =>
|
|
1746
|
-
const t =
|
|
1745
|
+
), is = (s, e) => Le(s, "kind", e), os = (s, e) => {
|
|
1746
|
+
const t = T.map(s, ([r, n]) => ({ [r]: n }));
|
|
1747
1747
|
return G(t, e);
|
|
1748
|
-
}, ls = (s, e) =>
|
|
1749
|
-
|
|
1748
|
+
}, ls = (s, e) => Le(s, "type", e), St = (s, e) => G(
|
|
1749
|
+
T.map(s, (t) => ({ [t]: !0 })),
|
|
1750
1750
|
e
|
|
1751
1751
|
), cs = (s, e = {}) => (t) => {
|
|
1752
1752
|
const r = (e == null ? void 0 : e.firstSeparator) ?? s, n = (e == null ? void 0 : e.lastSeparator) ?? s;
|
|
@@ -1758,45 +1758,45 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1758
1758
|
other: s
|
|
1759
1759
|
}
|
|
1760
1760
|
);
|
|
1761
|
-
},
|
|
1761
|
+
}, us = (s) => (e) => (e.appendOrInsert(s), (t) => {
|
|
1762
1762
|
t && R(s);
|
|
1763
|
-
}),
|
|
1763
|
+
}), _t = (s, e, t) => {
|
|
1764
1764
|
if (d.is(s)) {
|
|
1765
1765
|
const r = s;
|
|
1766
1766
|
return (n) => {
|
|
1767
1767
|
const i = n.makeRef();
|
|
1768
1768
|
let l = () => {
|
|
1769
|
-
}, c = !1,
|
|
1770
|
-
const
|
|
1771
|
-
|
|
1769
|
+
}, c = !1, u = null;
|
|
1770
|
+
const a = r.on((h) => {
|
|
1771
|
+
h == null ? (l(!0), l = f((t == null ? void 0 : t()) ?? _)(i), c = !1, u == null || u.dispose(), u = null) : (u == null ? u = w(h) : u.value = h, c || (l(!0), l = f(e(u))(
|
|
1772
1772
|
i
|
|
1773
1773
|
), c = !0));
|
|
1774
1774
|
});
|
|
1775
|
-
return (
|
|
1776
|
-
|
|
1775
|
+
return (h) => {
|
|
1776
|
+
u == null || u.dispose(), a(), l == null || l(h), i.clear(h);
|
|
1777
1777
|
};
|
|
1778
1778
|
};
|
|
1779
1779
|
} else {
|
|
1780
1780
|
const r = s;
|
|
1781
1781
|
if (r == null) {
|
|
1782
1782
|
const n = t == null ? void 0 : t();
|
|
1783
|
-
return n != null ? f(n) :
|
|
1783
|
+
return n != null ? f(n) : _;
|
|
1784
1784
|
}
|
|
1785
1785
|
return f(e(U(r)));
|
|
1786
1786
|
}
|
|
1787
|
-
},
|
|
1787
|
+
}, as = (...s) => (e, t) => (r) => {
|
|
1788
1788
|
const n = r.makeRef();
|
|
1789
1789
|
if (s.some(
|
|
1790
1790
|
(p) => !d.is(p) && p == null
|
|
1791
1791
|
))
|
|
1792
|
-
return (t != null ? f(t == null ? void 0 : t()) :
|
|
1792
|
+
return (t != null ? f(t == null ? void 0 : t()) : _)(
|
|
1793
1793
|
n
|
|
1794
1794
|
);
|
|
1795
1795
|
const l = s.map(() => null), c = s.map(
|
|
1796
1796
|
(p) => d.is(p) ? p.value != null : p != null
|
|
1797
1797
|
);
|
|
1798
|
-
let
|
|
1799
|
-
const
|
|
1798
|
+
let u = null;
|
|
1799
|
+
const a = w(c.every((p) => p)), h = (p, g) => {
|
|
1800
1800
|
if (p.value != null) {
|
|
1801
1801
|
if (l[g] == null) {
|
|
1802
1802
|
const C = w(p.value);
|
|
@@ -1808,27 +1808,27 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1808
1808
|
c[g] = !1;
|
|
1809
1809
|
};
|
|
1810
1810
|
let m = s.length - 1;
|
|
1811
|
-
const
|
|
1811
|
+
const y = s.map((p, g) => {
|
|
1812
1812
|
if (!d.is(p)) {
|
|
1813
1813
|
const C = w(p);
|
|
1814
1814
|
return l[g] = C, () => {
|
|
1815
1815
|
};
|
|
1816
1816
|
}
|
|
1817
1817
|
return p.on(() => {
|
|
1818
|
-
|
|
1818
|
+
h(p, g), m === 0 ? a.value = c.every((C) => C) : m--;
|
|
1819
1819
|
});
|
|
1820
1820
|
});
|
|
1821
|
-
return
|
|
1822
|
-
|
|
1821
|
+
return a.on((p) => {
|
|
1822
|
+
u == null || u(!0), u = null, p ? u = f(e(...l))(n) : u = f((t == null ? void 0 : t()) ?? _)(n);
|
|
1823
1823
|
}), (p) => {
|
|
1824
|
-
l.forEach((g) => g == null ? void 0 : g.dispose()),
|
|
1824
|
+
l.forEach((g) => g == null ? void 0 : g.dispose()), a.dispose(), y.forEach((g) => g()), u == null || u(p), n.clear(p);
|
|
1825
1825
|
};
|
|
1826
|
-
}, Z = (...s) => (e) => (t) => s.forEach((r) => r(t, e)),
|
|
1827
|
-
|
|
1826
|
+
}, Z = (...s) => (e) => (t) => s.forEach((r) => r(t, e)), Pe = (s, e, t) => _t(
|
|
1827
|
+
T.map(s, (r) => r ? !0 : null),
|
|
1828
1828
|
e,
|
|
1829
1829
|
t ?? void 0
|
|
1830
|
-
), hs = (s, e, t) =>
|
|
1831
|
-
|
|
1830
|
+
), hs = (s, e, t) => Pe(
|
|
1831
|
+
T.map(s, (r) => !r),
|
|
1832
1832
|
e,
|
|
1833
1833
|
t
|
|
1834
1834
|
), De = (s, e, t) => t != null ? De(s, (r) => {
|
|
@@ -1839,26 +1839,26 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1839
1839
|
return A(
|
|
1840
1840
|
Z(n.dispose),
|
|
1841
1841
|
f(e(r)),
|
|
1842
|
-
|
|
1842
|
+
Pe(
|
|
1843
1843
|
r.isLast,
|
|
1844
|
-
() =>
|
|
1844
|
+
() => _,
|
|
1845
1845
|
() => t(n)
|
|
1846
1846
|
)
|
|
1847
1847
|
);
|
|
1848
1848
|
}) : d.is(s) ? (r) => {
|
|
1849
1849
|
const n = r.makeRef(), i = [], l = s.on((c) => {
|
|
1850
|
-
const
|
|
1851
|
-
for (const
|
|
1852
|
-
|
|
1853
|
-
for (let
|
|
1854
|
-
const
|
|
1855
|
-
i.push(f(e(
|
|
1850
|
+
const u = i.splice(c);
|
|
1851
|
+
for (const a of u)
|
|
1852
|
+
a(!0);
|
|
1853
|
+
for (let a = i.length; a < c; a++) {
|
|
1854
|
+
const h = new Y(a, s);
|
|
1855
|
+
i.push(f(e(h))(n));
|
|
1856
1856
|
}
|
|
1857
1857
|
});
|
|
1858
1858
|
return (c) => {
|
|
1859
1859
|
l();
|
|
1860
|
-
for (const
|
|
1861
|
-
|
|
1860
|
+
for (const u of i)
|
|
1861
|
+
u(c);
|
|
1862
1862
|
i.length = 0, n.clear(c);
|
|
1863
1863
|
};
|
|
1864
1864
|
} : A(
|
|
@@ -1866,7 +1866,7 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1866
1866
|
(r) => f(e(new Y(r, U(s))))
|
|
1867
1867
|
)
|
|
1868
1868
|
), fs = (s, e, t) => {
|
|
1869
|
-
const r =
|
|
1869
|
+
const r = T.map(s, (i) => i.length), n = T.toSignal(s);
|
|
1870
1870
|
return De(
|
|
1871
1871
|
r,
|
|
1872
1872
|
(i) => {
|
|
@@ -1895,8 +1895,8 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1895
1895
|
};
|
|
1896
1896
|
}
|
|
1897
1897
|
return f(e(s));
|
|
1898
|
-
}, ps = (s, e, t = () =>
|
|
1899
|
-
|
|
1898
|
+
}, ps = (s, e, t = () => _) => G(
|
|
1899
|
+
T.map(
|
|
1900
1900
|
s,
|
|
1901
1901
|
(r) => r.length > 0 ? { notEmpty: r } : { whenEmpty: null }
|
|
1902
1902
|
),
|
|
@@ -1907,7 +1907,7 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1907
1907
|
), gs = (s, e) => (t) => {
|
|
1908
1908
|
const r = t.makePortal(s);
|
|
1909
1909
|
return Q(f(e), r);
|
|
1910
|
-
}, x = /* @__PURE__ */ new Map(),
|
|
1910
|
+
}, x = /* @__PURE__ */ new Map(), Et = (s) => ({
|
|
1911
1911
|
mark: Je(`Probe(${s.description})`),
|
|
1912
1912
|
create: ({ callback: e = () => {
|
|
1913
1913
|
}, timeout: t = 10 } = {}) => {
|
|
@@ -1918,9 +1918,7 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1918
1918
|
value: () => {
|
|
1919
1919
|
clearTimeout(r);
|
|
1920
1920
|
const l = x.get(s);
|
|
1921
|
-
|
|
1922
|
-
throw new Error(`Probe not found: ${s.description}`);
|
|
1923
|
-
--l.counter === 0 ? (e("resolved"), x.delete(s)) : x.set(s, l);
|
|
1921
|
+
l != null && (--l.counter === 0 ? (e("resolved"), x.delete(s)) : x.set(s, l));
|
|
1924
1922
|
},
|
|
1925
1923
|
dispose: () => {
|
|
1926
1924
|
clearTimeout(r), x.delete(s);
|
|
@@ -1928,7 +1926,7 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1928
1926
|
onUse: () => n.counter++
|
|
1929
1927
|
};
|
|
1930
1928
|
}
|
|
1931
|
-
}), ms =
|
|
1929
|
+
}), ms = Et(Symbol("GlobalProbe")), wt = (s, e) => (t) => {
|
|
1932
1930
|
const r = t.getStyle(s);
|
|
1933
1931
|
return t.setStyle(s, e), (n) => {
|
|
1934
1932
|
n && t.setStyle(s, r);
|
|
@@ -1973,22 +1971,28 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1973
1971
|
};
|
|
1974
1972
|
}, K = (s) => (e) => {
|
|
1975
1973
|
let t = e;
|
|
1976
|
-
|
|
1977
|
-
|
|
1978
|
-
|
|
1979
|
-
|
|
1974
|
+
function r() {
|
|
1975
|
+
return t;
|
|
1976
|
+
}
|
|
1977
|
+
function n(c) {
|
|
1978
|
+
t = c;
|
|
1979
|
+
}
|
|
1980
|
+
const i = [], l = s({
|
|
1981
|
+
use: ({ mark: c }) => {
|
|
1982
|
+
const [u, a] = r().getProvider(c);
|
|
1983
|
+
return a == null || a(), u;
|
|
1980
1984
|
},
|
|
1981
|
-
set: ({ mark:
|
|
1982
|
-
const { value:
|
|
1983
|
-
|
|
1985
|
+
set: ({ mark: c, create: u }, a) => {
|
|
1986
|
+
const { value: h, dispose: m, onUse: y } = u(a, r());
|
|
1987
|
+
i.push(m), n(r().setProvider(c, h, y));
|
|
1984
1988
|
}
|
|
1985
1989
|
});
|
|
1986
|
-
return
|
|
1990
|
+
return l == null ? () => {
|
|
1987
1991
|
} : A(
|
|
1988
|
-
f(
|
|
1989
|
-
Z(() =>
|
|
1990
|
-
)(
|
|
1991
|
-
}, Ss = (s, e, t) => K(({ set: r }) => (r(s, e), t())),
|
|
1992
|
+
f(l),
|
|
1993
|
+
Z(() => i.forEach((c) => c()))
|
|
1994
|
+
)(r());
|
|
1995
|
+
}, Ss = (s, e, t) => K(({ set: r }) => (r(s, e), t())), _s = (s, e) => K(({ use: t }) => e(t(s))), Es = (...s) => (e) => K(({ use: t }) => {
|
|
1992
1996
|
const r = s.map(t);
|
|
1993
1997
|
return e(...r);
|
|
1994
1998
|
});
|
|
@@ -1999,17 +2003,17 @@ export {
|
|
|
1999
2003
|
ts as BindDateTime,
|
|
2000
2004
|
ss as BindNumber,
|
|
2001
2005
|
rs as BindText,
|
|
2002
|
-
|
|
2006
|
+
P as BrowserContext,
|
|
2003
2007
|
V as CLASS_PLACEHOLDER_ATTR,
|
|
2004
|
-
|
|
2008
|
+
L as Computed,
|
|
2005
2009
|
cs as Conjunction,
|
|
2006
|
-
|
|
2010
|
+
us as DOMNode,
|
|
2007
2011
|
we as El,
|
|
2008
2012
|
Ce as ElNS,
|
|
2009
2013
|
Y as ElementPosition,
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
|
|
2014
|
+
_ as Empty,
|
|
2015
|
+
_t as Ensure,
|
|
2016
|
+
as as EnsureAll,
|
|
2013
2017
|
fs as ForEach,
|
|
2014
2018
|
A as Fragment,
|
|
2015
2019
|
ms as GlobalProbe,
|
|
@@ -2017,14 +2021,14 @@ export {
|
|
|
2017
2021
|
D as HeadlessContext,
|
|
2018
2022
|
ct as HeadlessElement,
|
|
2019
2023
|
Se as HeadlessPortal,
|
|
2020
|
-
|
|
2024
|
+
ut as HeadlessText,
|
|
2021
2025
|
ds as MapSignal,
|
|
2022
2026
|
ce as MemoryStore,
|
|
2023
2027
|
ps as NotEmpty,
|
|
2024
2028
|
mt as OnChecked,
|
|
2025
2029
|
Z as OnDispose,
|
|
2026
2030
|
G as OneOf,
|
|
2027
|
-
|
|
2031
|
+
Le as OneOfField,
|
|
2028
2032
|
is as OneOfKind,
|
|
2029
2033
|
os as OneOfTuple,
|
|
2030
2034
|
ls as OneOfType,
|
|
@@ -2039,10 +2043,10 @@ export {
|
|
|
2039
2043
|
ve as Task,
|
|
2040
2044
|
Rt as TextNode,
|
|
2041
2045
|
hs as Unless,
|
|
2042
|
-
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
|
|
2046
|
+
_s as Use,
|
|
2047
|
+
Es as UseMany,
|
|
2048
|
+
T as Value,
|
|
2049
|
+
Pe as When,
|
|
2046
2050
|
vt as WithBrowserCtx,
|
|
2047
2051
|
Ts as WithCtx,
|
|
2048
2052
|
bs as WithElement,
|
|
@@ -2054,8 +2058,8 @@ export {
|
|
|
2054
2058
|
We as _makeGetter,
|
|
2055
2059
|
Be as _makeSetter,
|
|
2056
2060
|
R as _removeDOMNode,
|
|
2057
|
-
|
|
2058
|
-
|
|
2061
|
+
Ee as _signalText,
|
|
2062
|
+
_e as _staticText,
|
|
2059
2063
|
Ot as animateSignal,
|
|
2060
2064
|
Fe as animateSignals,
|
|
2061
2065
|
jt as aria,
|
|
@@ -2065,7 +2069,7 @@ export {
|
|
|
2065
2069
|
Ht as computedRecord,
|
|
2066
2070
|
Vt as dataAttr,
|
|
2067
2071
|
je as effect,
|
|
2068
|
-
|
|
2072
|
+
Pt as effectOf,
|
|
2069
2073
|
zt as emitChecked,
|
|
2070
2074
|
Qt as emitPreventDefault,
|
|
2071
2075
|
Kt as emitStopImmediatePropagation,
|
|
@@ -2084,9 +2088,9 @@ export {
|
|
|
2084
2088
|
Ie as interpolateDate,
|
|
2085
2089
|
Ne as interpolateNumber,
|
|
2086
2090
|
$e as interpolateString,
|
|
2087
|
-
|
|
2091
|
+
Lt as joinSignals,
|
|
2088
2092
|
Dt as localStorageProp,
|
|
2089
|
-
|
|
2093
|
+
Et as makeProbe,
|
|
2090
2094
|
Je as makeProviderMark,
|
|
2091
2095
|
Jt as math,
|
|
2092
2096
|
Ft as mathAttr,
|
|
@@ -2099,7 +2103,7 @@ export {
|
|
|
2099
2103
|
$t as runHeadless,
|
|
2100
2104
|
Mt as sessionStorageProp,
|
|
2101
2105
|
U as signal,
|
|
2102
|
-
|
|
2106
|
+
ue as storedProp,
|
|
2103
2107
|
ys as style,
|
|
2104
2108
|
Ut as svg,
|
|
2105
2109
|
qt as svgAttr
|
package/package.json
CHANGED
package/renderable/element.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { TNode, Renderable } from '../types/domain';
|
|
2
|
+
import { DOMContext } from '../dom/dom-context';
|
|
2
3
|
/**
|
|
3
4
|
* Converts a TNode into a Renderable.
|
|
4
5
|
* @param child - The TNode to convert.
|
|
5
6
|
* @returns The corresponding Renderable.
|
|
6
7
|
* @public
|
|
7
8
|
*/
|
|
8
|
-
export declare const renderableOfTNode: (child: TNode) => Renderable
|
|
9
|
+
export declare const renderableOfTNode: <T extends DOMContext>(child: TNode<T>) => Renderable<T>;
|
|
9
10
|
/**
|
|
10
11
|
* Creates a Renderable that represents an HTML element.
|
|
11
12
|
*
|
package/renderable/fragment.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { TNode, Renderable } from '../types/domain';
|
|
2
|
+
import { DOMContext } from '../dom/dom-context';
|
|
2
3
|
/**
|
|
3
4
|
* Creates a fragment renderable that represents a collection of child renderables.
|
|
4
5
|
*
|
|
@@ -10,4 +11,4 @@ import { TNode, Renderable } from '../types/domain';
|
|
|
10
11
|
* @returns A renderable function that renders the child renderables in the given DOM context.
|
|
11
12
|
* @public
|
|
12
13
|
*/
|
|
13
|
-
export declare const Fragment: (...children: TNode[]) => Renderable
|
|
14
|
+
export declare const Fragment: <T extends DOMContext>(...children: TNode<T>[]) => Renderable<T>;
|