@tempots/dom 23.0.2 → 24.0.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dom/attr.d.ts +2 -57
- package/dom/browser-context.d.ts +198 -0
- package/dom/dom-context.d.ts +76 -106
- package/dom/dom-utils.d.ts +2 -2
- package/dom/errors.d.ts +9 -0
- package/dom/headless-context.d.ts +103 -0
- package/dom/window.d.ts +1 -0
- package/index.cjs +1 -1
- package/index.d.ts +11 -5
- package/index.js +976 -785
- package/package.json +1 -1
- package/renderable/domnode.d.ts +2 -1
- package/renderable/element.d.ts +4 -4
- package/renderable/on-browser-ctx.d.ts +10 -0
- package/renderable/{onunmount.d.ts → on-dispose.d.ts} +1 -1
- package/renderable/{onmount.d.ts → on-element.d.ts} +1 -1
- package/renderable/on-headless-ctx.d.ts +10 -0
- package/renderable/probe.d.ts +46 -0
- package/renderable/render.d.ts +10 -0
- package/types/domain.d.ts +1 -1
- package/dom/ssr.d.ts +0 -50
- /package/renderable/{onctx.d.ts → on-ctx.d.ts} +0 -0
package/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var lt=Object.defineProperty;var ye=t=>{throw TypeError(t)};var at=(t,e,r)=>e in t?lt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var a=(t,e,r)=>at(t,typeof e!="symbol"?e+"":e,r),ve=(t,e,r)=>e.has(t)||ye("Cannot "+r);var O=(t,e,r)=>(ve(t,e,"read from private field"),r?r.call(t):e.get(t)),Se=(t,e,r)=>e.has(t)?ye("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),z=(t,e,r,s)=>(ve(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Pe=(t,e,r)=>t+(e-t)*r,we=97,Ee=(t,e,r)=>{const s=Math.max(t.length,e.length);let n="";for(let o=0;o<s;o++){let i=t.charCodeAt(o);isNaN(i)&&(i=we);let l=e.charCodeAt(o);isNaN(l)&&(l=we),n+=String.fromCharCode(i+(l-i)*r)}return n},De=(t,e,r)=>new Date(t.getTime()+(e.getTime()-t.getTime())*r),Te=(t,e)=>e,Oe=t=>typeof t=="number"?Pe:typeof t=="string"?Ee:t instanceof Date?De:Te;var v;class D{constructor(e,r){a(this,"counter");a(this,"isFirst");a(this,"isEven");a(this,"isOdd");Se(this,v);a(this,"dispose",()=>{O(this,v)!=null&&(O(this,v).dispose(),z(this,v,void 0))});this.index=e,this.total=r,this.counter=e+1,this.isFirst=e===0,this.isEven=e%2===1,this.isOdd=e%2===0}get isLast(){return O(this,v)==null&&z(this,v,this.total.map(e=>this.counter===e)),O(this,v)}}v=new WeakMap;const N=class N{constructor(e,r){a(this,"$__signal__",!0);a(this,"_value");a(this,"_derivatives",[]);a(this,"_onValueListeners",[]);a(this,"_onDisposeListeners",[]);a(this,"get",()=>this._value);a(this,"hasListeners",()=>this._onValueListeners.length>0);a(this,"on",e=>(e(this.get()),this._onValueListeners.push(e),()=>{this._onValueListeners.splice(this._onValueListeners.indexOf(e),1)}));a(this,"_setAndNotify",(e,r)=>{const s=this.equals(this._value,e);s||(this._value=e),(r||!s)&&this._onValueListeners.forEach(n=>n(e))});a(this,"_disposed",!1);a(this,"isDisposed",()=>this._disposed);a(this,"onDispose",e=>{this._onDisposeListeners.push(e)});a(this,"dispose",()=>{this._disposed||(this._disposed=!0,this._onDisposeListeners.forEach(e=>e()),this._onDisposeListeners.length=0,this._derivatives.length=0)});a(this,"map",(e,r=(s,n)=>s===n)=>{const s=new w(()=>{try{return e(this.get())}catch(n){throw console.error("Error in Signal.map:",n),n}},r);return this.setDerivative(s),s});a(this,"flatMap",(e,r=(s,n)=>s===n)=>{const s=new w(()=>{try{return e(this.get()).get()}catch(n){throw console.error("Error in Signal.flatMap:",n),n}},r);return this.setDerivative(s),s});a(this,"tap",e=>this.map(r=>(e(r),r)));a(this,"at",e=>this.map(r=>r[e]));a(this,"_$");a(this,"filter",(e,r)=>{let s=r??this.get();const n=new w(()=>{try{const o=this.get();return s=e(o)?o:s}catch(o){throw console.error("Error in Signal.filter:",o),o}},this.equals);return this.setDerivative(n),n});a(this,"filterMap",(e,r,s=(n,o)=>n===o)=>{let n=r;const o=new w(()=>{try{const i=this.get(),l=e(i);return n=l??n}catch(i){throw console.error("Error in Signal.filterMap:",i),i}},s);return this.setDerivative(o),o});a(this,"mapAsync",(e,r,s,n=(o,i)=>o===i)=>{const o=L(r,n);let i=0,l=new AbortController;return o.onDispose(this.on(async u=>{const f=++i;l.abort(),l=new AbortController;try{const _=await e(u,{abortSignal:l.signal});f===i&&o.set(_)}catch(_){if(f===i)if(s!=null)o.set(s(_));else throw _}})),o});a(this,"mapMaybe",(e,r)=>this.map(s=>e(s)??r));a(this,"feedProp",(e,r=!1)=>{const s=this.on(e.set);return e.onDispose(s),r?this.onDispose(e.dispose):this.onDispose(s),e});a(this,"deriveProp",(e=!0)=>this.feedProp(L(this.get()),e));a(this,"count",()=>{let e=0;return this.map(()=>++e)});a(this,"setDerivative",e=>{this._derivatives.push(e),e.onDispose(()=>{this._derivatives.splice(this._derivatives.indexOf(e),1)}),e.onDispose(this.on(e.setDirty)),this.onDispose(e.dispose)});this.equals=r,this._value=e}get value(){return this._value}get $(){return this._$!==void 0?this._$:this._$=new Proxy(this,{get:(e,r)=>this.at(r)})}};a(N,"ofPromise",(e,r,s,n=(o,i)=>o===i)=>{const o=new N(r,n);return e.then(i=>o._setAndNotify(i,!1)).catch(i=>{s!=null?o._setAndNotify(s(i),!1):console.error("Unhandled promise rejection in Signal.ofPromise:",i)}),o}),a(N,"is",e=>e!=null&&e.$__signal__===!0);let d=N;const ut=typeof queueMicrotask=="function"?queueMicrotask:t=>Promise.resolve().then(t);class w extends d{constructor(r,s){super(void 0,s);a(this,"$__computed__",!0);a(this,"_isDirty",!1);a(this,"setDirty",()=>{this._isDirty||this._disposed||(this._isDirty=!0,this._derivatives.forEach(r=>r.setDirty()),this._scheduleNotify())});a(this,"_scheduleCount",0);a(this,"_scheduleNotify",()=>{const r=++this._scheduleCount;ut(()=>{this._scheduleCount!==r||this._disposed!==!1||this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!1))})});a(this,"get",()=>(this._isDirty&&(this._isDirty=!1,this._value=this._fn(),this._setAndNotify(this._value,!0)),this._value));this._fn=r,this.setDirty()}static is(r){return r!=null&&r.$__computed__===!0}get value(){return this.get()}}const j=class j extends d{constructor(){super(...arguments);a(this,"$__prop__",!0);a(this,"set",r=>{this._setAndNotify(r,!1)});a(this,"update",r=>{this._setAndNotify(r(this.get()),!1)});a(this,"reducer",(r,...s)=>{const n=this;return function o(i){const l=n.value;n.update(u=>r(u,i)),!n.equals(l,n.value)&&s.forEach(u=>u({previousState:l,state:n.value,action:i,dispatch:o}))}});a(this,"iso",(r,s,n=(o,i)=>o===i)=>{const o=new j(r(this.get()),n);return o.onDispose(this.on(i=>o.set(r(i)))),o.on(i=>this._setAndNotify(s(i),!1)),o});a(this,"atProp",r=>this.iso(s=>s[r],s=>({...this.value,[r]:s})))}get value(){return this.get()}set value(r){this._setAndNotify(r,!1)}};a(j,"is",r=>r!=null&&r.$__prop__===!0);let C=j;const W=(t,e,r=(s,n)=>s===n)=>{const s=new w(t,r);return e.forEach(n=>n.setDerivative(s)),s},be=(t,e)=>W(t,e).dispose,L=(t,e=(r,s)=>r===s)=>new C(t,e),R=(t,e=(r,s)=>r===s)=>new d(t,e),h={map:(t,e)=>d.is(t)?t.map(e):e(t),toSignal:(t,e)=>d.is(t)?t:R(t,e),maybeToSignal:(t,e)=>{if(t!=null)return h.toSignal(t,e)},get:t=>d.is(t)?t.get():t,on:(t,e)=>d.is(t)?t.on(e):(e(t),()=>{}),dispose:t=>{d.is(t)&&t.dispose()}},ct=(...t)=>(e,r)=>{const s=t.filter(n=>d.is(n));return W(()=>e(...t.map(n=>h.get(n))),s,r)},ft=(...t)=>e=>{const r=t.filter(s=>d.is(s));be(()=>e(...t.map(h.get)),r)};class K{constructor(){a(this,"_store",new Map);a(this,"getItem",e=>this._store.get(e)??null);a(this,"setItem",(e,r)=>{this._store.set(e,r)})}}const Q=({key:t,defaultValue:e,store:r,serialize:s=JSON.stringify,deserialize:n=JSON.parse,equals:o=(l,u)=>l===u,onLoad:i=l=>l})=>{const l=r.getItem(t),u=new C(l!=null?i(n(l)):typeof e=="function"?e():e,o);return u.on(f=>{r.setItem(t,s(f))}),u},dt=t=>Q({...t,store:(window==null?void 0:window.localStorage)??new K}),ht=t=>Q({...t,store:(window==null?void 0:window.sessionStorage)??new K});function Ae(t){return typeof requestAnimationFrame=="function"?requestAnimationFrame(t):setTimeout(t,0)}const ke=(t,e,r,s)=>{const n=(s==null?void 0:s.duration)??300,o=(s==null?void 0:s.easing)??(y=>y),i=(s==null?void 0:s.equals)??((y,I)=>y===I);let l=s==null?void 0:s.interpolate,u=t,f=e(),_=performance.now(),P=null,G=!0;const J=new w(e,i),E=L(t,i);E.onDispose(()=>{P!==null&&cancelAnimationFrame(P)}),E.onDispose(J.dispose),r.forEach(y=>{y.setDerivative(J),y.onDispose(E.dispose)});const ot=y=>{f=y,_=performance.now(),u=E.value,G&&(G=!1,P=Ae(ge))},ge=()=>{const I=(performance.now()-_)/h.get(n),it=o(I);l==null&&(l=Oe(u));let _e=l(u,f,it);I>=1?(G=!0,_e=f):P=Ae(ge),E.set(_e)};return J.on(ot),E},pt=(t,e)=>{const{initialValue:r,...s}=e??{};return ke(r??t.get(),t.get,[t],s)},mt=(t,e)=>{const{signals:r,literals:s}=Object.entries(t).reduce(({signals:o,literals:i},[l,u])=>(d.is(u)?o.push([l,u]):i[l]=u,{signals:o,literals:i}),{signals:[],literals:{}}),n=r.map(([,o])=>o);return W(()=>(r.forEach(([o,i])=>s[o]=i.value),e(s)),n)},Ne=new Set(["checked","disabled","hidden","selected"]),Ce=new Set(["rowSpan","colSpan","tabIndex","valueAsNumber"]),Le=new Set(["valueAsDate"]),Re=new Set(["value","textContent","innerText","innerHTML","outerHTML","className","classList"]),H=new Map,b=(t,e)=>{if(H.has(t))return H.get(t);{const r=e(t);return H.set(t,r),r}},Me=t=>(e,r)=>{r==null?e[t]=null:e[t]=!!r},Ve=t=>(e,r)=>{r==null?e[t]=null:e[t]=Number(r)},Fe=t=>(e,r)=>{r==null?e[t]=null:e[t]=r},$e=t=>(e,r)=>{r==null?e[t]=null:e[t]=String(r)},Ie=t=>(e,r)=>{r==null?e.removeAttribute(t):e.setAttribute(t,r)},Y=t=>Ne.has(t)?b(t,Me):Ce.has(t)?b(t,Ve):Le.has(t)?b(t,Fe):Re.has(t)?b(t,$e):b(t,Ie),Z=t=>e=>Ne.has(t)?!!e[t]:Ce.has(t)?Number(e[t]):Le.has(t)?e[t]:Re.has(t)?String(e[t]):e.getAttribute(t);class g{constructor(e,r,s,n,o){a(this,"createElement",(e,r)=>r!==void 0?this.document.createElementNS(r,e):this.document.createElement(e));a(this,"createText",e=>this.document.createTextNode(e));a(this,"makeRef",()=>{const e=this.createText("");return this.appendOrInsert(e),this.withReference(e)});a(this,"appendOrInsert",e=>{this.reference===void 0?this.element.appendChild(e):this.element.insertBefore(e,this.reference)});a(this,"withDocument",e=>new g(e,this.element,this.reference,this.providers,!0));a(this,"withElement",e=>new g(this.document,e,void 0,this.providers,!1));a(this,"withFirstLevel",()=>new g(this.document,this.element,this.reference,this.providers,!0));a(this,"withReference",e=>new g(this.document,this.element,e,this.providers,this.isFirstLevel));a(this,"withProvider",(e,r)=>new g(this.document,this.element,this.reference,{...this.providers,[e]:r},this.isFirstLevel));a(this,"withProviders",e=>new g(this.document,this.element,this.reference,{...this.providers,...e},this.isFirstLevel));a(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new qe(e);return this.providers[e]});this.document=e,this.element=r,this.reference=s,this.providers=n,this.isFirstLevel=o}static of(e,r){return new g(e.ownerDocument,e,r,{},!0)}}class qe extends Error{constructor(e){super(`Provider not found: ${e.description}`)}}const m=t=>{const e=t;e&&e.onblur&&(e.onblur=null),!(!t||t.ownerDocument===void 0)&&t.parentElement&&t.parentElement.removeChild(t)},Be=t=>x(t)?t:t.parentElement,x=t=>t.nodeType===1,ee=t=>e=>{le(e);const r=e.createText(t);return e.appendOrInsert(r),s=>{s&&m(r)}},te=t=>e=>{le(e);const r=e.createText(t.value);e.appendOrInsert(r);const s=t.on(n=>r.data=n);return n=>{s(),n&&m(r)}},gt=t=>d.is(t)?te(t):ee(t),p=(...t)=>e=>{const r=t.map(s=>c(s)(e));return s=>{r.forEach(n=>n(s))}},S=()=>()=>{},_t=t=>e=>(oe(e),e.element.classList.add(...t),r=>{r&&e.element.classList.remove(...t)}),yt=t=>e=>{oe(e);const r=e.element;let s=[];const n=t.on(o=>{s.forEach(i=>r.classList.remove(i)),s=(o??"").split(" ").filter(i=>i.length>0),r.classList.add(...s)});return o=>{n(),o&&s.forEach(i=>r.classList.remove(i)),s.length=0}},M=(t,e)=>{const r=Y(t),s=Z(t);return n=>{ne(n,t);const o=s(n.element);return r(n.element,e),i=>{i&&r(n.element,o)}}},V=(t,e)=>{const r=Y(t),s=Z(t);return n=>{ne(n,t);const o=s(n.element),i=e.on(l=>r(n.element,l));return l=>{i(),l&&r(n.element,o)}}},A=new Proxy({},{get:(t,e)=>e==="class"?r=>d.is(r)?yt(r):_t((r??"").split(" ").filter(s=>s.length>0)):r=>d.is(r)?V(e,r):M(e,r)}),vt=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(`data-${e}`,r):M(`data-${e}`,r)}),St=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(`aria-${e}`,r):M(`aria-${e}`,r)}),wt=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(e,r):M(e,r)}),At=new Proxy({},{get:(t,e)=>r=>d.is(r)?V(e,r):M(e,r)}),c=t=>t==null?S:Array.isArray(t)?p(...t.map(c)):typeof t=="string"?ee(t):d.is(t)?te(t):t,re=(t,...e)=>r=>{const s=r.createElement(t,void 0);r.isFirstLevel&&T()&&ie(s),r.appendOrInsert(s),r=r.withElement(s);const n=e.map(o=>c(o)(r));return o=>{n.forEach(i=>i(!1)),o&&m(s)}},se=(t,e,...r)=>s=>{const n=s.createElement(t,e);s.isFirstLevel&&T()&&ie(n),s.appendOrInsert(n),s=s.withElement(n);const o=r.map(i=>c(i)(s));return i=>{o.forEach(l=>l(!1)),i&&m(n)}},Pt=new Proxy({},{get:(t,e)=>(...r)=>re(e,r.flatMap(c))}),Et=new Proxy({},{get:(t,e)=>(...r)=>re("input",A.type(e),...r)}),Dt="http://www.w3.org/2000/svg",Tt=new Proxy({},{get:(t,e)=>(...r)=>se(e,Dt,r.flatMap(c))}),Ot="http://www.w3.org/1998/Math/MathML",bt=new Proxy({},{get:(t,e)=>(...r)=>se(e,Ot,r.flatMap(c))}),k="data-tempo-attr",q="data-tempo-class",Ue="data-tempo-node",B="data-tempo-text",kt=(t,e)=>{const r=t.getAttribute(e);if(r!=null){const s=t.getAttribute(k)??"{}",n={...JSON.parse(s),name:r};t.setAttribute(k,JSON.stringify(n).replace(/"/g,"""))}},ne=(t,e)=>{T()&&t.isFirstLevel&&kt(t.element,e)},Nt=t=>{t.querySelectorAll(`[${k}]`).forEach(e=>{const r=JSON.parse((e.getAttribute(k)??"{}").replace(/"/g,'"'));for(const[s,n]of Object.entries(r))e.setAttribute(s,n);e.removeAttribute(k)})};function Ct(t){t.setAttribute(q,t.className)}const oe=t=>{T()&&t.isFirstLevel&&Ct(t.element)},Lt=t=>{t.querySelectorAll(`[${q}]`).forEach(e=>{const r=e.getAttribute(q);r!==null&&(e.className=r,e.removeAttribute(q))})},ie=t=>{t.setAttribute(Ue,"")},Rt=t=>{t.querySelectorAll(`[${Ue}]`).forEach(e=>{m(e)})},Mt=t=>{t.setAttribute(B,t.textContent??"")},le=t=>{T()&&t.isFirstLevel&&Mt(t.element)},je=t=>{t.querySelectorAll(`[${B}]`).forEach(e=>{e.textContent=e.getAttribute(B),e.removeAttribute(B)})},We=t=>{Rt(t),Lt(t),Nt(t),je(t)},Ge=()=>{const t=globalThis;return t.__tempoSSR__==null&&(t.__tempoSSR__={isSSR:!1,counter:0}),t.__tempoSSR__},ae=(t,e)=>{const r=Ge();r[t]=e},Je=t=>Ge()[t],X=t=>{ae("isSSR",t)},ue=()=>Je("counter"),Vt=()=>{ae("counter",(ue()??0)+1)},Ft=()=>{ae("counter",(ue()??0)-1)},$t=(t=30)=>(X(!0),new Promise((e,r)=>{let s;const n=setInterval(()=>{ue()<=0&&(clearInterval(n),clearTimeout(s),X(!1),e())},30);s=setTimeout(()=>{clearInterval(n),X(!1),r(new Error("SSR Timeout"))},t*1e3)})),It=t=>(Vt(),c(t(Ft))),T=()=>Je("isSSR"),ce=(t,e)=>{if(typeof e=="function")return ce(t,{then:e});const r=e.pending!=null?c(e.pending):S,s=e.then,n=e.error!=null?o=>c(e.error(o)):()=>S;return o=>{let i=!0;const l=t();o=o.makeRef();let u=c(r)(o);return l.then(f=>{i&&(u(!0),u=c(s(f))(o))},f=>{i&&(u(!0),u=c(n(f))(o))}),f=>{i=!1,u(f),f&&o.reference&&m(o.reference)}}},qt=(t,e)=>ce(()=>t,e),ze=(t,e)=>r=>(r.element.addEventListener(t,e),s=>{s&&r.element.removeEventListener(t,e)}),He=t=>ze("click",e=>{e.preventDefault();const r=e.target;setTimeout(()=>{const s=r.ownerDocument!=null?r==null?void 0:r.checked:void 0;s!=null&&t(!s)},0)}),F=new Proxy({},{get:(t,e)=>r=>ze(e,r)}),Xe=t=>e=>{const r=e.target;t(r.value)},Ke=t=>e=>{const r=e.target;t(r.valueAsNumber)},Qe=t=>e=>{const r=e.target;if(r.value==="")return;const s=r.value.split("-"),n=new Date(Number(s[0]),Number(s[1])-1,Number(s[2].substring(0,2)));t(n)},Ye=t=>e=>{const r=e.target;if(r.value==="")return;const s=r.value.split("T"),n=s[0].split("-"),o=new Date(Number(n[0]),Number(n[1])-1,Number(n[2])),i=s[1].split(":");o.setHours(Number(i[0])),o.setMinutes(Number(i[1])),o.setSeconds(Number(i[2])),t(o)},Bt=t=>e=>{const r=e.target;t(r.checked)},Ut=t=>e=>{e.preventDefault(),t()},jt=t=>e=>{e.stopPropagation(),t()},Wt=t=>e=>{e.stopImmediatePropagation(),t()},Gt=(t,e="input")=>p(A.valueAsDate(t),F[e](Qe(t.set))),Jt=(t,e="input")=>p(A.valueAsDate(t),F[e](Ye(t.set))),zt=(t,e="input")=>p(A.valueAsNumber(t),F[e](Ke(t.set))),Ht=(t,e="input")=>p(A.value(t),F[e](Xe(t.set))),Xt=t=>p(A.checked(t),He(t.set)),$=(t,e)=>{if(d.is(t))return s=>{s=s.makeRef();let n,o;const i=t.map(f=>Object.keys(f)[0]);let l;const u=i.on(f=>{if(f!==l){o==null||o.dispose(),n==null||n(!0),o=t.map(P=>P[f]);const _=e[f](o);n=c(_)(s),l=f}});return f=>{u(),f&&s.reference!=null&&m(s.reference),n==null||n(!0)}};const r=Object.keys(t)[0];return c(e[r](R(t[r])))},fe=(t,e,r)=>$(h.map(t,s=>({[s[e]]:s})),r),Kt=(t,e)=>fe(t,"kind",e),Qt=(t,e)=>{const r=h.map(t,([s,n])=>({[s]:n}));return $(r,e)},Yt=(t,e)=>fe(t,"type",e),Ze=(t,e)=>$(h.map(t,r=>({[r]:!0})),e),Zt=(t,e={})=>r=>{const s=(e==null?void 0:e.firstSeparator)??t,n=(e==null?void 0:e.lastSeparator)??t;return Ze(r.map(o=>o.isFirst?"first":o.isLast?"last":"other"),{first:()=>s,last:()=>n,other:()=>t})},xe=(t,e)=>r=>{const s=Object.values(t).reduce((n,o)=>{const i=r.getProvider(o);if(i==null)throw new Error(`No provider found for mark: ${o.description}`);return n[o]=i,n},{});return c(e(s))(r)},xt=(t,e)=>r=>{const s=[],n=Object.entries(t).reduce((o,[i,l])=>(s.push(l(u=>(Reflect.set(o,i,u),null))(r)),o),{});return s.push(e(n)(r)),o=>{s.forEach(i=>i(o))}},er=(t,e)=>xe([t],r=>c(e(r[t]))),tr=(t,e)=>xe(t,r=>c(e(r))),rr=t=>e=>t(e),sr=t=>e=>(e.appendOrInsert(t),r=>{r&&m(t)}),et=(t,e,r)=>{if(d.is(t)){const s=t;return n=>{n=n.makeRef();let o=null,i=!1;const l=L(null),u=s.on(f=>{f==null?(o==null||o(!0),o=c((r==null?void 0:r())??S)(n),i=!1):(l.value=f,i||(o==null||o(!0),o=c(e(l))(n),i=!0))});return f=>{u(),o==null||o(f),f&&n.reference&&m(n.reference)}}}else{const s=t;if(s==null){const n=r==null?void 0:r();return n!=null?c(n):S}return c(e(R(s)))}},U=t=>e=>r=>t(r,e),de=(t,e,r)=>he(t,()=>e,()=>r),he=(t,e,r)=>et(h.map(t,s=>s?!0:null),e,r??void 0),nr=(t,e,r)=>tt(t,()=>e,()=>r),tt=(t,e,r)=>he(h.map(t,s=>!s),e,r),pe=(t,e,r)=>r!=null?pe(t,s=>{const n=new D(s.index,s.total.map(o=>o-1));return p(U(n.dispose),c(e(s)),de(s.isLast,S,r(n)))}):d.is(t)?s=>{s=s.makeRef();const n=Array.from({length:t.value},(l,u)=>u).map(l=>new D(l,t)),o=n.map(l=>c(e(l))(s)),i=t.on(l=>{for(;l<o.length;)n.pop().dispose(),o.pop()(!0);for(let u=0;u<l;u++)if(n[u]==null){n[u]=new D(u,t);const f=c(e(n[u]));o[u]=f(s)}});return l=>{i(),l&&s.reference&&m(s.reference)}}:p(...Array.from({length:t},(s,n)=>n).map(s=>c(e(new D(s,R(t)))))),rt=(t,e,r)=>{if(r!=null)return rt(t,(s,n)=>{const o=new D(n.index,n.total.map(i=>i-1));return p([U(o.dispose),c(e(s,n)),de(n.isLast,S,r(o))])});{const s=h.map(t,o=>o.length),n=h.toSignal(t);return pe(s,o=>{const i=n.map(l=>l[o.index]);return p(U(i.dispose),c(e(i,o)))})}},or=(t,e)=>{if(d.is(t)){const r=t;return s=>{s=s.makeRef();const n=r.map(l=>c(e(l)));let o=()=>{};const i=n.on(l=>{o(!0),o=l(s)});return l=>{i(),o(l)}}}return c(e(t))},ir=(t,e,r=()=>S)=>$(h.map(t,s=>s.length>0?{notEmpty:s}:{whenEmpty:null}),{notEmpty:s=>e(s),whenEmpty:()=>r()}),lr=t=>e=>t(e.element)??(()=>{}),me=(t,e)=>{const r=t(e);return()=>r(!0)},ar=(t,e,{doc:r,clear:s}={})=>{const n=typeof e=="string"?(r??document).querySelector(e):e;if(n===null)throw new st(`Cannot find element by selector for render: ${e}`);s!==!1&&(r??n.ownerDocument)!=null&&We(r??n.ownerDocument);const o=Be(n),i=x(n)?void 0:n,l=g.of(o,i);return me(t,l)};class st extends Error{constructor(e){super(e)}}const ur=(t,e)=>r=>{const s=r.document.querySelector(t);if(s===null)throw new Error(`Cannot find element by selector for portal: ${t}`);return me(c(e),r.withElement(s).withFirstLevel())},cr=t=>Symbol(t),nt=(t,e)=>r=>c(e)(r.withProviders(t)),fr=(...t)=>t.length>0?t.reduceRight((e,r)=>s=>e(r(s))):c,dr=(t,e,r)=>nt({[t]:e},c(r)),hr=(t,e)=>nt(t,c(e)),pr=(t,e)=>r=>{const s=r.element,n=s.style.getPropertyValue(t);return s.style.setProperty(t,e),o=>{o&&s.style.setProperty(t,n)}},mr=(t,e)=>r=>{const s=r.element,n=s.style.getPropertyValue(t);return e.on(o=>s.style.setProperty(t,o)),o=>{o&&s.style.setProperty(t,n)}},gr=new Proxy({},{get:(t,e)=>r=>d.is(r)?mr(e,r):pr(e,r)});exports.Async=qt;exports.BindChecked=Xt;exports.BindDate=Gt;exports.BindDateTime=Jt;exports.BindNumber=zt;exports.BindText=Ht;exports.Computed=w;exports.Conjunction=Zt;exports.DOMContext=g;exports.DOMNode=sr;exports.El=re;exports.ElNS=se;exports.ElementPosition=D;exports.Empty=S;exports.Ensure=et;exports.ForEach=rt;exports.Fragment=p;exports.LazyUnless=tt;exports.LazyWhen=he;exports.MapSignal=or;exports.MemoryStore=K;exports.NotEmpty=ir;exports.OnChecked=He;exports.OnCtx=rr;exports.OnMount=lr;exports.OnUnmount=U;exports.OneOf=$;exports.OneOfField=fe;exports.OneOfKind=Kt;exports.OneOfTuple=Qt;exports.OneOfType=Yt;exports.OneOfValue=Ze;exports.Portal=ur;exports.Prop=C;exports.Provide=fr;exports.ProviderNotFoundError=qe;exports.RenderingError=st;exports.Repeat=pe;exports.Signal=d;exports.Task=ce;exports.TextNode=gt;exports.Unless=nr;exports.Use=xt;exports.UseProvider=er;exports.UseProviders=tr;exports.UseSSRDone=It;exports.Value=h;exports.When=de;exports.WithProvider=dr;exports.WithProviders=hr;exports._addNodeTracker=ie;exports._clearSSR=We;exports._getSelfOrParentElement=Be;exports._isElement=x;exports._makeGetter=Z;exports._makeSetter=Y;exports._maybeAddAttributeTracker=ne;exports._maybeAddClassTracker=oe;exports._maybeAddTextTracker=le;exports._removeDOMNode=m;exports._setAttribute=Ie;exports._setBooleanProperty=Me;exports._setDateProperty=Fe;exports._setNumberProperty=Ve;exports._setStringProperty=$e;exports._signalText=te;exports._staticText=ee;exports.animateSignal=pt;exports.animateSignals=ke;exports.aria=St;exports.attr=A;exports.dataAttr=vt;exports.emitChecked=Bt;exports.emitPreventDefault=Ut;exports.emitStopImmediatePropagation=Wt;exports.emitStopPropagation=jt;exports.emitValue=Xe;exports.emitValueAsDate=Qe;exports.emitValueAsDateTime=Ye;exports.emitValueAsNumber=Ke;exports.endInterpolate=Te;exports.guessInterpolate=Oe;exports.html=Pt;exports.input=Et;exports.interpolateDate=De;exports.interpolateNumber=Pe;exports.interpolateString=Ee;exports.isSSR=T;exports.localStorageProp=dt;exports.makeComputed=W;exports.makeComputedOf=ct;exports.makeComputedRecord=mt;exports.makeEffect=be;exports.makeEffectOf=ft;exports.makeProp=L;exports.makeProviderMark=cr;exports.makeSignal=R;exports.math=bt;exports.mathAttr=At;exports.on=F;exports.prepareSSR=$t;exports.removeTextTrackers=je;exports.render=ar;exports.renderWithContext=me;exports.renderableOfTNode=c;exports.sessionStorageProp=ht;exports.storedProp=Q;exports.style=gr;exports.svg=Tt;exports.svgAttr=wt;
|
|
1
|
+
"use strict";var Qe=Object.defineProperty;var ue=s=>{throw TypeError(s)};var Xe=(s,e,t)=>e in s?Qe(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var i=(s,e,t)=>Xe(s,typeof e!="symbol"?e+"":e,t),he=(s,e,t)=>e.has(s)||ue("Cannot "+t);var k=(s,e,t)=>(he(s,e,"read from private field"),t?t.call(s):e.get(s)),de=(s,e,t)=>e.has(s)?ue("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(s):e.set(s,t),z=(s,e,t,r)=>(he(s,e,"write to private field"),r?r.call(s,t):e.set(s,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const me=(s,e,t)=>s+(e-s)*t,fe=97,ge=(s,e,t)=>{const r=Math.max(s.length,e.length);let n="";for(let o=0;o<r;o++){let l=s.charCodeAt(o);isNaN(l)&&(l=fe);let a=e.charCodeAt(o);isNaN(a)&&(a=fe),n+=String.fromCharCode(l+(a-l)*t)}return n},ye=(s,e,t)=>new Date(s.getTime()+(e.getTime()-s.getTime())*t),we=(s,e)=>e,_e=s=>typeof s=="number"?me:typeof s=="string"?ge:s instanceof Date?ye:we;var w;class D{constructor(e,t){i(this,"counter");i(this,"isFirst");i(this,"isEven");i(this,"isOdd");de(this,w);i(this,"dispose",()=>{k(this,w)!=null&&(k(this,w).dispose(),z(this,w,void 0))});this.index=e,this.total=t,this.counter=e+1,this.isFirst=e===0,this.isEven=e%2===1,this.isOdd=e%2===0}get isLast(){return k(this,w)==null&&z(this,w,this.total.map(e=>this.counter===e)),k(this,w)}}w=new WeakMap;const M=class M{constructor(e,t){i(this,"$__signal__",!0);i(this,"_value");i(this,"_derivatives",[]);i(this,"_onValueListeners",[]);i(this,"_onDisposeListeners",[]);i(this,"get",()=>this._value);i(this,"hasListeners",()=>this._onValueListeners.length>0);i(this,"on",e=>(e(this.get()),this._onValueListeners.push(e),()=>{this._onValueListeners.splice(this._onValueListeners.indexOf(e),1)}));i(this,"_setAndNotify",(e,t)=>{const r=this.equals(this._value,e);r||(this._value=e),(t||!r)&&this._onValueListeners.forEach(n=>n(e))});i(this,"_disposed",!1);i(this,"isDisposed",()=>this._disposed);i(this,"onDispose",e=>{this._onDisposeListeners.push(e)});i(this,"dispose",()=>{this._disposed||(this._disposed=!0,this._onDisposeListeners.forEach(e=>e()),this._onDisposeListeners.length=0,this._derivatives.length=0)});i(this,"map",(e,t=(r,n)=>r===n)=>{const r=new S(()=>{try{return e(this.get())}catch(n){throw console.error("Error in Signal.map:",n),n}},t);return this.setDerivative(r),r});i(this,"flatMap",(e,t=(r,n)=>r===n)=>{const r=new S(()=>{try{return e(this.get()).get()}catch(n){throw console.error("Error in Signal.flatMap:",n),n}},t);return this.setDerivative(r),r});i(this,"tap",e=>this.map(t=>(e(t),t)));i(this,"at",e=>this.map(t=>t[e]));i(this,"_$");i(this,"filter",(e,t)=>{let r=t??this.get();const n=new S(()=>{try{const o=this.get();return r=e(o)?o:r}catch(o){throw console.error("Error in Signal.filter:",o),o}},this.equals);return this.setDerivative(n),n});i(this,"filterMap",(e,t,r=(n,o)=>n===o)=>{let n=t;const o=new S(()=>{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(o),o});i(this,"mapAsync",(e,t,r,n=(o,l)=>o===l)=>{const o=L(t,n);let l=0,a=new AbortController;return o.onDispose(this.on(async c=>{const d=++l;a.abort(),a=new AbortController;try{const h=await e(c,{abortSignal:a.signal});d===l&&o.set(h)}catch(h){if(d===l)if(r!=null)o.set(r(h));else throw h}})),o});i(this,"mapMaybe",(e,t)=>this.map(r=>e(r)??t));i(this,"feedProp",(e,t=!1)=>{const r=this.on(e.set);return e.onDispose(r),t?this.onDispose(e.dispose):this.onDispose(r),e});i(this,"deriveProp",(e=!0)=>this.feedProp(L(this.get()),e));i(this,"count",()=>{let e=0;return this.map(()=>++e)});i(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)})}};i(M,"ofPromise",(e,t,r,n=(o,l)=>o===l)=>{const o=new M(t,n);return e.then(l=>o._setAndNotify(l,!1)).catch(l=>{r!=null?o._setAndNotify(r(l),!1):console.error("Unhandled promise rejection in Signal.ofPromise:",l)}),o}),i(M,"is",e=>e!=null&&e.$__signal__===!0);let f=M;const Ye=typeof queueMicrotask=="function"?queueMicrotask:s=>Promise.resolve().then(s);class S extends f{constructor(t,r){super(void 0,r);i(this,"$__computed__",!0);i(this,"_isDirty",!1);i(this,"setDirty",()=>{this._isDirty||this._disposed||(this._isDirty=!0,this._derivatives.forEach(t=>t.setDirty()),this._scheduleNotify())});i(this,"_scheduleCount",0);i(this,"_scheduleNotify",()=>{const t=++this._scheduleCount;Ye(()=>{this._scheduleCount!==t||this._disposed!==!1||this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!1))})});i(this,"get",()=>(this._isDirty&&(this._isDirty=!1,this._value=this._fn(),this._setAndNotify(this._value,!0)),this._value));this._fn=t,this.setDirty()}static is(t){return t!=null&&t.$__computed__===!0}get value(){return this.get()}}const q=class q extends f{constructor(){super(...arguments);i(this,"$__prop__",!0);i(this,"set",t=>{this._setAndNotify(t,!1)});i(this,"update",t=>{this._setAndNotify(t(this.get()),!1)});i(this,"reducer",(t,...r)=>{const n=this;return function o(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:o}))}});i(this,"iso",(t,r,n=(o,l)=>o===l)=>{const o=new q(t(this.get()),n);return o.onDispose(this.on(l=>o.set(t(l)))),o.on(l=>this._setAndNotify(r(l),!1)),o});i(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)}};i(q,"is",t=>t!=null&&t.$__prop__===!0);let b=q;const F=(s,e,t=(r,n)=>r===n)=>{const r=new S(s,t);return e.forEach(n=>n.setDerivative(r)),r},ve=(s,e)=>F(s,e).dispose,L=(s,e=(t,r)=>t===r)=>new b(s,e),N=(s,e=(t,r)=>t===r)=>new f(s,e),G=()=>typeof window<"u"?window:void 0,p={map:(s,e)=>f.is(s)?s.map(e):e(s),toSignal:(s,e)=>f.is(s)?s:N(s,e),maybeToSignal:(s,e)=>{if(s!=null)return p.toSignal(s,e)},get:s=>f.is(s)?s.get():s,on:(s,e)=>f.is(s)?s.on(e):(e(s),()=>{}),dispose:s=>{f.is(s)&&s.dispose()}},Ze=(...s)=>(e,t)=>{const r=s.filter(n=>f.is(n));return F(()=>e(...s.map(n=>p.get(n))),r,t)},Ke=(...s)=>e=>{const t=s.filter(r=>f.is(r));ve(()=>e(...s.map(p.get)),t)};class J{constructor(){i(this,"_store",new Map);i(this,"getItem",e=>this._store.get(e)??null);i(this,"setItem",(e,t)=>{this._store.set(e,t)})}}const Q=({key:s,defaultValue:e,store:t,serialize:r=JSON.stringify,deserialize:n=JSON.parse,equals:o=(a,c)=>a===c,onLoad:l=a=>a})=>{const a=t.getItem(s),c=new b(a!=null?l(n(a)):typeof e=="function"?e():e,o);return c.on(d=>{t.setItem(s,r(d))}),c},et=s=>{var e;return Q({...s,store:((e=G())==null?void 0:e.localStorage)??new J})},tt=s=>{var e;return Q({...s,store:((e=G())==null?void 0:e.sessionStorage)??new J})};function pe(s){return typeof requestAnimationFrame=="function"?requestAnimationFrame(s):setTimeout(s,0)}const Se=(s,e,t,r)=>{const n=(r==null?void 0:r.duration)??300,o=(r==null?void 0:r.easing)??(y=>y),l=(r==null?void 0:r.equals)??((y,R)=>y===R);let a=r==null?void 0:r.interpolate,c=s,d=e(),h=performance.now(),x=null,A=!0;const W=new S(e,l),O=L(s,l);O.onDispose(()=>{x!==null&&cancelAnimationFrame(x)}),O.onDispose(W.dispose),t.forEach(y=>{y.setDerivative(W),y.onDispose(O.dispose)});const Ge=y=>{d=y,h=performance.now(),c=O.value,A&&(A=!1,x=pe(ae))},ae=()=>{const R=(performance.now()-h)/p.get(n),Je=o(R);a==null&&(a=_e(c));let ce=a(c,d,Je);R>=1?(A=!0,ce=d):x=pe(ae),O.set(ce)};return W.on(Ge),O},st=(s,e)=>{const{initialValue:t,...r}=e??{};return Se(t??s.get(),s.get,[s],r)},rt=(s,e)=>{const{signals:t,literals:r}=Object.entries(s).reduce(({signals:o,literals:l},[a,c])=>(f.is(c)?o.push([a,c]):l[a]=c,{signals:o,literals:l}),{signals:[],literals:{}}),n=t.map(([,o])=>o);return F(()=>(t.forEach(([o,l])=>r[o]=l.value),e(r)),n)},Pe=new Set(["checked","disabled","hidden","selected"]),Ce=new Set(["rowSpan","colSpan","tabIndex","valueAsNumber"]),Te=new Set(["valueAsDate"]),xe=new Set(["value","textContent","innerText","innerHTML","outerHTML","className","classList"]),Oe=(s,e)=>Pe.has(s)?t=>{t==null?e[s]=null:e[s]=!!t}:Ce.has(s)?t=>{t==null?e[s]=null:e[s]=Number(t)}:Te.has(s)?t=>{t==null?e[s]=null:e[s]=t}:xe.has(s)?t=>{t==null?e[s]=null:e[s]=String(t)}:t=>{t==null?e.removeAttribute(s):e.setAttribute(s,t)},Ee=(s,e)=>Pe.has(s)?()=>!!e[s]:Ce.has(s)?()=>Number(e[s]):Te.has(s)?()=>e[s]:xe.has(s)?()=>String(e[s]):()=>e.getAttribute(s),j=s=>{const e=s;e&&e.onblur&&(e.onblur=null),!(!s||s.ownerDocument===void 0)&&s.parentElement&&s.parentElement.removeChild(s)},De=s=>X(s)?s:s.parentElement,X=s=>s.nodeType===1;class Y extends Error{constructor(e){super(`Provider not found: ${e.description}`)}}class P{constructor(e,t,r,n){i(this,"createElement",(e,t)=>t!==void 0?this.document.createElementNS(t,e):this.document.createElement(e));i(this,"makeChildElement",(e,t)=>{const r=this.createElement(e,t);return this.appendOrInsert(r),this.withElement(r)});i(this,"createText",e=>this.document.createTextNode(e));i(this,"makeChildText",e=>{const t=this.createText(e);return this.appendOrInsert(t),this.withReference(t)});i(this,"setText",e=>{this.reference.nodeValue=e});i(this,"getText",()=>{var e;return((e=this.reference)==null?void 0:e.nodeValue)??this.element.textContent??""});i(this,"makeRef",()=>{const e=this.createText("");return this.appendOrInsert(e),this.withReference(e)});i(this,"appendOrInsert",e=>{this.reference===void 0?this.element.appendChild(e):this.element.insertBefore(e,this.reference)});i(this,"withElement",e=>new P(this.document,e,void 0,this.providers));i(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)});i(this,"withReference",e=>new P(this.document,this.element,e,this.providers));i(this,"withProviders",e=>new P(this.document,this.element,this.reference,{...this.providers,...e}));i(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new Y(e);return this.providers[e]});i(this,"clear",e=>{e&&(this.reference!==void 0?j(this.reference):j(this.element))});i(this,"addClasses",e=>{this.element.classList.add(...e)});i(this,"removeClasses",e=>{this.element.classList.remove(...e)});i(this,"getClasses",()=>Array.from(this.element.classList));i(this,"on",(e,t)=>(this.element.addEventListener(e,t),r=>{r&&this.element.removeEventListener(e,t)}));i(this,"isBrowserDOM",()=>!0);i(this,"isHeadlessDOM",()=>!1);i(this,"setStyle",(e,t)=>{this.element.style.setProperty(e,t)});i(this,"getStyle",e=>this.element.style.getPropertyValue(e));i(this,"makeAccessors",e=>({get:Ee(e,this.element),set:Oe(e,this.element)}));this.document=e,this.element=t,this.reference=r,this.providers=n}static of(e,t){return new P(e.ownerDocument,e,t,{})}}const g=Symbol("class"),v=Symbol("style"),E=Symbol("handler"),Ae=()=>Math.random().toString(36).substring(2,15),nt=s=>s.replace(/<[^>]*>?/g,"");class ke{constructor(e){i(this,"id",Ae());i(this,"properties",{});i(this,"children",[]);i(this,"isElement",()=>!0);i(this,"isText",()=>!1);i(this,"getText",()=>this.properties.innerText!=null?this.properties.innerText:this.properties.innerHTML!=null?nt(this.properties.innerHTML):this.children.map(e=>e.getText()).join(""));i(this,"removeChild",e=>{const t=this.children.indexOf(e);t!==-1&&this.children.splice(t,1)});i(this,"remove",()=>{if(this.parent!=null)this.parent.removeChild(this);else throw new Error("Parent is undefined")});i(this,"getPortals",()=>{const e=this.elements().flatMap(t=>t.isPortal()?[t,...t.getPortals()]:t.getPortals());return this.isPortal()&&e.unshift(this),e});i(this,"elements",()=>this.children.filter(e=>e.isElement()));i(this,"hasInnerHTML",()=>this.properties.innerHTML!=null);i(this,"getInnerHTML",()=>this.properties.innerHTML??"");i(this,"getInnerText",()=>this.properties.innerText??"");i(this,"hasInnerText",()=>this.properties.innerText!=null);i(this,"hasChildren",()=>this.children.length>0);i(this,"hasClasses",()=>this.properties[g]!=null);i(this,"hasStyles",()=>this.properties[v]!=null);i(this,"hasAttributes",()=>Object.keys(this.properties).length>0);i(this,"hasHandlers",()=>this.properties[E]!=null);i(this,"hasRenderableProperties",()=>this.hasClasses()||this.hasAttributes()||this.hasStyles());i(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}});i(this,"trigger",(e,t)=>{((this.properties[E]??{})[e]??[]).forEach(n=>n(t))});i(this,"click",()=>{this.trigger("click",{})});i(this,"on",(e,t)=>{var o;const r=(o=this.properties)[E]??(o[E]={}),n=t;return r[e]=[...r[e]??[],n],()=>{const l=r[e]??[],a=l.indexOf(n);a!==-1&&(l.splice(a,1),l.length===0?(delete r[e],Object.keys(r).length===0&&delete this.properties[E]):r[e]=l)}});i(this,"addClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[g]??(r[g]=[]);e.forEach(n=>{t.includes(n)||t.push(n)})});i(this,"removeClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[g]??(r[g]=[]);e.forEach(n=>{const o=t.indexOf(n);o!==-1&&t.splice(o,1)}),t.length===0&&delete this.properties[g]});i(this,"getClasses",()=>this.properties[g]??[]);i(this,"getAttributes",()=>Object.entries(this.properties).filter(([e])=>!["innerText","innerHTML"].includes(e)));i(this,"getVisibleAttributes",()=>Reflect.ownKeys(this.properties).flatMap(e=>e===g?[["class",this.getClasses()]]:e===v?[["style",this.getStyles()]]:typeof e=="string"?[[e,String(this.properties[e])]]:[]));i(this,"setStyle",(e,t)=>{var n;const r=(n=this.properties)[v]??(n[v]={});r[e]=t,t===""&&(delete r[e],Object.keys(r).length===0&&delete this.properties[v])});i(this,"getStyle",e=>{var t;return((t=this.properties[v])==null?void 0:t[e])??""});i(this,"getStyles",()=>this.properties[v]??{});i(this,"makeAccessors",e=>{const t=this.properties;return{get:()=>t[e],set:r=>t[e]=r}});this.parent=e}}const it=s=>s.replace(/"/g,"""),ot=s=>s.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");class Me extends ke{constructor(t,r,n){super(n);i(this,"isPortal",()=>!1);i(this,"toHTML",()=>{const t=this.children.map(l=>l.toHTML()).join(""),r=this.namespace?` xmlns="${this.namespace}"`:"";let n=null;const o=this.getVisibleAttributes().map(([l,a])=>l==="class"?` class="${a.join(" ")}"`:l==="style"?typeof a=="string"?` style="${a}"`:` style="${Object.entries(a).map(([c,d])=>`${c}: ${d};`).join(" ")}"`:lt.has(l)?` ${l}`:l==="innerHTML"?(n=a,""):l==="innerText"?(n=ot(a),""):` ${l}="${it(a)}"`).join("");return at.has(this.tagName)&&t===""?`<${this.tagName}${r}${o} />`:`<${this.tagName}${r}${o}>${n??t}</${this.tagName}>`});this.tagName=t,this.namespace=r}}class Z extends ke{constructor(t,r){super(r);i(this,"isPortal",()=>!0);i(this,"toHTML",()=>"");i(this,"contentToHTML",()=>this.children.map(t=>t.toHTML()).join(""));this.selector=t}}class be{constructor(e){i(this,"id",Ae());i(this,"isElement",()=>!1);i(this,"isText",()=>!0);i(this,"getText",()=>this.text);i(this,"toHTML",()=>this.text);this.text=e}}class C{constructor(e,t,r,n){i(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)});i(this,"makeChildElement",(e,t)=>{const r=new Me(e,t,this.element);return this.appendOrInsert(r),new C(r,void 0,this.container,this.providers)});i(this,"makeChildText",e=>{const t=new be(e);return this.appendOrInsert(t),new C(this.element,t,this.container,this.providers)});i(this,"setText",e=>{this.reference&&this.reference.isText()&&(this.reference.text=e)});i(this,"getText",()=>{var e;return((e=this.reference)==null?void 0:e.getText())??this.element.getText()});i(this,"makeRef",()=>this.makeChildText(""));i(this,"makePortal",e=>{const t=new Z(e,this.element);return this.appendOrInsert(t),new C(t,void 0,this.container,this.providers)});i(this,"withProviders",e=>new C(this.element,this.reference,this.container,{...this.providers,...e}));i(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new Y(e);return this.providers[e]});i(this,"clear",e=>{e&&(this.reference!==void 0?this.element.removeChild(this.reference):this.element.remove())});i(this,"on",(e,t)=>this.element.on(e,t));i(this,"addClasses",e=>this.element.addClasses(e));i(this,"removeClasses",e=>this.element.removeClasses(e));i(this,"getClasses",()=>this.element.getClasses());i(this,"isBrowserDOM",()=>!1);i(this,"isHeadlessDOM",()=>!0);i(this,"setStyle",(e,t)=>this.element.setStyle(e,t));i(this,"getStyle",e=>this.element.getStyle(e));i(this,"makeAccessors",e=>this.element.makeAccessors(e));this.element=e,this.reference=t,this.container=r,this.providers=n}}const lt=new Set(["checked","disabled","multiple","readonly","required","selected"]),at=new Set(["img","br","hr","input","link","meta"]),K=s=>e=>{const t=e.makeChildText(s);return r=>t.clear(r)},ee=s=>e=>{const t=e.makeChildText(s.value),r=s.on(n=>t.setText(n));return n=>{r(),t.clear(n)}},ct=s=>f.is(s)?ee(s):K(s),m=(...s)=>e=>{const t=s.map(r=>u(r)(e));return r=>{t.forEach(n=>n(r))}},_=()=>()=>{},ut=s=>e=>(e.addClasses(s),t=>{t&&e.removeClasses(s)}),ht=s=>e=>{let t=[];const r=s.on(n=>{e.removeClasses(t),t=(n??"").split(" ").filter(o=>o.length>0),e.addClasses(t)});return n=>{r(),n&&e.removeClasses(t),t.length=0}},$=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),o=r();return n(e),l=>{l&&n(o)}},H=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),o=r(),l=e.on(n);return a=>{l(),a&&n(o)}},T=new Proxy({},{get:(s,e)=>e==="class"?t=>f.is(t)?ht(t):ut((t??"").split(" ").filter(r=>r.length>0)):t=>f.is(t)?H(e,t):$(e,t)}),dt=new Proxy({},{get:(s,e)=>t=>f.is(t)?H(`data-${e}`,t):$(`data-${e}`,t)}),ft=new Proxy({},{get:(s,e)=>t=>f.is(t)?H(`aria-${e}`,t):$(`aria-${e}`,t)}),pt=new Proxy({},{get:(s,e)=>t=>f.is(t)?H(e,t):$(e,t)}),mt=new Proxy({},{get:(s,e)=>t=>f.is(t)?H(e,t):$(e,t)}),u=s=>{if(s==null)return _;if(Array.isArray(s))return m(...s.map(u));if(typeof s=="string")return K(s);if(f.is(s))return ee(s);if(typeof s=="function")return s;throw new Error(`Unknown type: '${typeof s}' for child: ${s}`)},te=(s,...e)=>t=>{const r=t.makeChildElement(s,void 0),n=e.map(o=>u(o)(r));return o=>{n.forEach(l=>l(!1)),r.clear(o)}},se=(s,e,...t)=>r=>{const n=r.makeChildElement(s,e),o=t.map(l=>u(l)(n));return l=>{o.forEach(a=>a(!1)),n.clear(l)}},gt=new Proxy({},{get:(s,e)=>(...t)=>te(e,t.flatMap(u))}),yt=new Proxy({},{get:(s,e)=>(...t)=>te("input",T.type(e),...t)}),wt="http://www.w3.org/2000/svg",_t=new Proxy({},{get:(s,e)=>(...t)=>se(e,wt,t.flatMap(u))}),vt="http://www.w3.org/1998/Math/MathML",St=new Proxy({},{get:(s,e)=>(...t)=>se(e,vt,t.flatMap(u))}),re=(s,e)=>{if(typeof e=="function")return re(s,{then:e});const t=e.pending!=null?u(e.pending):_,r=e.then,n=e.error!=null?o=>u(e.error(o)):()=>_;return o=>{let l=!0;const a=s(),c=o.makeRef();let d=u(t)(c);return a.then(h=>{l&&(d(!0),d=u(r(h))(c))},h=>{l&&(d(!0),d=u(n(h))(c))}),h=>{l=!1,d(h),c.clear(h)}}},Pt=(s,e)=>re(()=>s,e),Le=(s,e)=>t=>t.on(s,e),Ne=s=>Le("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)}),V=new Proxy({},{get:(s,e)=>t=>Le(e,t)}),$e=s=>e=>{const t=e.target;s(t.value)},He=s=>e=>{const t=e.target;s(t.valueAsNumber)},Ve=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)},Ie=s=>e=>{const t=e.target;if(t.value==="")return;const r=t.value.split("T"),n=r[0].split("-"),o=new Date(Number(n[0]),Number(n[1])-1,Number(n[2])),l=r[1].split(":");o.setHours(Number(l[0])),o.setMinutes(Number(l[1])),o.setSeconds(Number(l[2])),s(o)},Ct=s=>e=>{const t=e.target;s(t.checked)},Tt=s=>e=>{e.preventDefault(),s()},xt=s=>e=>{e.stopPropagation(),s()},Ot=s=>e=>{e.stopImmediatePropagation(),s()},Et=(s,e="input")=>m(T.valueAsDate(s),V[e](Ve(s.set))),Dt=(s,e="input")=>m(T.valueAsDate(s),V[e](Ie(s.set))),At=(s,e="input")=>m(T.valueAsNumber(s),V[e](He(s.set))),kt=(s,e="input")=>m(T.value(s),V[e]($e(s.set))),Mt=s=>m(T.checked(s),Ne(s.set)),I=(s,e)=>{if(f.is(s))return r=>{const n=r.makeRef();let o,l;const a=s.map(h=>Object.keys(h)[0]);let c;const d=a.on(h=>{if(h!==c){l==null||l.dispose(),o==null||o(!0),l=s.map(A=>A[h]);const x=e[h](l);o=u(x)(n),c=h}});return h=>{d(),n.clear(h),o==null||o(h)}};const t=Object.keys(s)[0];return u(e[t](N(s[t])))},ne=(s,e,t)=>I(p.map(s,r=>({[r[e]]:r})),t),bt=(s,e)=>ne(s,"kind",e),Lt=(s,e)=>{const t=p.map(s,([r,n])=>({[r]:n}));return I(t,e)},Nt=(s,e)=>ne(s,"type",e),Re=(s,e)=>I(p.map(s,t=>({[t]:!0})),e),$t=(s,e={})=>t=>{const r=(e==null?void 0:e.firstSeparator)??s,n=(e==null?void 0:e.lastSeparator)??s;return Re(t.map(o=>o.isFirst?"first":o.isLast?"last":"other"),{first:()=>r,last:()=>n,other:()=>s})},je=(s,e)=>t=>{const r=Object.values(s).reduce((n,o)=>{const l=t.getProvider(o);return n[o]=l,n},{});return u(e(r))(t)},Ht=(s,e)=>t=>{const r=[],n=Object.entries(s).reduce((o,[l,a])=>(r.push(a(c=>(Reflect.set(o,l,c),null))(t)),o),{});return r.push(e(n)(t)),o=>{r.forEach(l=>l(o))}},Vt=(s,e)=>je([s],t=>u(e(t[s]))),It=(s,e)=>je(s,t=>u(e(t))),Rt=s=>e=>s(e)??(()=>{}),jt=s=>e=>(e.appendOrInsert(s),t=>{t&&j(s)}),Be=(s,e,t)=>{if(f.is(s)){const r=s;return n=>{const o=n.makeRef();let l=null,a=!1;const c=L(null),d=r.on(h=>{h==null?(l==null||l(!0),l=u((t==null?void 0:t())??_)(o),a=!1):(c.value=h,a||(l==null||l(!0),l=u(e(c))(o),a=!0))});return h=>{d(),l==null||l(h),o.clear(h)}}}else{const r=s;if(r==null){const n=t==null?void 0:t();return n!=null?u(n):_}return u(e(N(r)))}},B=s=>e=>t=>s(t,e),ie=(s,e,t)=>oe(s,()=>e,()=>t),oe=(s,e,t)=>Be(p.map(s,r=>r?!0:null),e,t??void 0),Bt=(s,e,t)=>qe(s,()=>e,()=>t),qe=(s,e,t)=>oe(p.map(s,r=>!r),e,t),le=(s,e,t)=>t!=null?le(s,r=>{const n=new D(r.index,r.total.map(o=>o-1));return m(B(n.dispose),u(e(r)),ie(r.isLast,_,t(n)))}):f.is(s)?r=>{const n=r.makeRef(),o=Array.from({length:s.value},(c,d)=>d).map(c=>new D(c,s)),l=o.map(c=>u(e(c))(n)),a=s.on(c=>{for(;c<l.length;)o.pop().dispose(),l.pop()(!0);for(let d=0;d<c;d++)if(o[d]==null){o[d]=new D(d,s);const h=u(e(o[d]));l[d]=h(n)}});return c=>{a(),n.clear(c)}}:m(...Array.from({length:s},(r,n)=>n).map(r=>u(e(new D(r,N(s)))))),Fe=(s,e,t)=>{if(t!=null)return Fe(s,(r,n)=>{const o=new D(n.index,n.total.map(l=>l-1));return m([B(o.dispose),u(e(r,n)),ie(n.isLast,_,t(o))])});{const r=p.map(s,o=>o.length),n=p.toSignal(s);return le(r,o=>{const l=n.map(a=>a[o.index]);return m(B(l.dispose),u(e(l,o)))})}},Ue=s=>e=>e.isBrowserDOM()?s(e)??(()=>{}):()=>{},qt=s=>e=>e.isHeadlessDOM()?s(e)??(()=>{}):()=>{},Ft=s=>Ue(e=>s(e.element)??(()=>{})),Ut=(s,e)=>{if(f.is(s)){const t=s;return r=>{r=r.makeRef();const n=t.map(a=>u(e(a)));let o=()=>{};const l=n.on(a=>{o(!0),o=a(r)});return a=>{l(),o(a)}}}return u(e(s))},Wt=(s,e,t=()=>_)=>I(p.map(s,r=>r.length>0?{notEmpty:r}:{whenEmpty:null}),{notEmpty:r=>e(r),whenEmpty:()=>t()}),U=(s,e)=>{const t=s(e);return()=>t(!0)},zt=(s,e,{doc:t,clear:r}={})=>{const n=typeof e=="string"?(t??document).querySelector(e):e;if(n===null)throw new We(`Cannot find element by selector for render: ${e}`);r!==!1&&(t??n.ownerDocument)!=null&&n.nodeType===1&&(n.innerHTML="");const o=De(n),l=X(n)?void 0:n,a=P.of(o,l);return U(s,a)},Gt=(s,{startUrl:e="https://example.com",selector:t=":root"}={})=>{const r=p.toSignal(e).deriveProp(),n=new Z(t,void 0),o=new C(n,void 0,{currentURL:r},{});return{clear:U(s(),o),root:n,currentURL:r}};class We extends Error{constructor(e){super(e)}}const Jt=(s,e)=>t=>{const r=t.makePortal(s);return U(u(e),r)},Qt=s=>Symbol(s),ze=(s,e)=>t=>u(e)(t.withProviders(s)),Xt=(...s)=>s.length>0?s.reduceRight((e,t)=>r=>e(t(r))):u,Yt=(s,e,t)=>ze({[s]:e},u(t)),Zt=(s,e)=>ze(s,u(e)),Kt=(s,e)=>t=>{const r=t.getStyle(s);return t.setStyle(s,e),n=>{n&&t.setStyle(s,r)}},es=(s,e)=>t=>{const r=t.getStyle(s);return e.on(n=>t.setStyle(s,n)),n=>{n&&t.setStyle(s,r)}},ts=new Proxy({},{get:(s,e)=>t=>f.is(t)?es(e,t):Kt(e,t)});exports.Async=Pt;exports.BindChecked=Mt;exports.BindDate=Et;exports.BindDateTime=Dt;exports.BindNumber=At;exports.BindText=kt;exports.BrowserContext=P;exports.Computed=S;exports.Conjunction=$t;exports.DOMNode=jt;exports.El=te;exports.ElNS=se;exports.ElementPosition=D;exports.Empty=_;exports.Ensure=Be;exports.ForEach=Fe;exports.Fragment=m;exports.HeadlessContext=C;exports.HeadlessElement=Me;exports.HeadlessPortal=Z;exports.HeadlessText=be;exports.LazyUnless=qe;exports.LazyWhen=oe;exports.MapSignal=Ut;exports.MemoryStore=J;exports.NotEmpty=Wt;exports.OnBrowserCtx=Ue;exports.OnChecked=Ne;exports.OnCtx=Rt;exports.OnDispose=B;exports.OnElement=Ft;exports.OnHeadlessCtx=qt;exports.OneOf=I;exports.OneOfField=ne;exports.OneOfKind=bt;exports.OneOfTuple=Lt;exports.OneOfType=Nt;exports.OneOfValue=Re;exports.Portal=Jt;exports.Prop=b;exports.Provide=Xt;exports.ProviderNotFoundError=Y;exports.RenderingError=We;exports.Repeat=le;exports.Signal=f;exports.Task=re;exports.TextNode=ct;exports.Unless=Bt;exports.Use=Ht;exports.UseProvider=Vt;exports.UseProviders=It;exports.Value=p;exports.When=ie;exports.WithProvider=Yt;exports.WithProviders=Zt;exports._getSelfOrParentElement=De;exports._isElement=X;exports._makeGetter=Ee;exports._makeSetter=Oe;exports._removeDOMNode=j;exports._signalText=ee;exports._staticText=K;exports.animateSignal=st;exports.animateSignals=Se;exports.aria=ft;exports.attr=T;exports.dataAttr=dt;exports.emitChecked=Ct;exports.emitPreventDefault=Tt;exports.emitStopImmediatePropagation=Ot;exports.emitStopPropagation=xt;exports.emitValue=$e;exports.emitValueAsDate=Ve;exports.emitValueAsDateTime=Ie;exports.emitValueAsNumber=He;exports.endInterpolate=we;exports.getWindow=G;exports.guessInterpolate=_e;exports.html=gt;exports.input=yt;exports.interpolateDate=ye;exports.interpolateNumber=me;exports.interpolateString=ge;exports.localStorageProp=et;exports.makeComputed=F;exports.makeComputedOf=Ze;exports.makeComputedRecord=rt;exports.makeEffect=ve;exports.makeEffectOf=Ke;exports.makeProp=L;exports.makeProviderMark=Qt;exports.makeSignal=N;exports.math=St;exports.mathAttr=mt;exports.on=V;exports.render=zt;exports.renderWithContext=U;exports.renderableOfTNode=u;exports.runHeadless=Gt;exports.sessionStorageProp=tt;exports.storedProp=Q;exports.style=ts;exports.svg=_t;exports.svgAttr=pt;
|
package/index.d.ts
CHANGED
|
@@ -14,15 +14,18 @@ export * from './std/signal';
|
|
|
14
14
|
export * from './std/signal-utils';
|
|
15
15
|
export * from './std/value';
|
|
16
16
|
export * from './dom/attr';
|
|
17
|
+
export * from './dom/browser-context';
|
|
17
18
|
export * from './dom/dom-context';
|
|
18
19
|
export * from './dom/dom-utils';
|
|
19
|
-
export * from './dom/
|
|
20
|
+
export * from './dom/errors';
|
|
21
|
+
export * from './dom/headless-context';
|
|
22
|
+
export * from './dom/window';
|
|
20
23
|
export * from './renderable/async';
|
|
21
24
|
export * from './renderable/attribute';
|
|
22
25
|
export * from './renderable/bind';
|
|
23
26
|
export * from './renderable/conjunction';
|
|
24
27
|
export * from './renderable/consumers';
|
|
25
|
-
export * from './renderable/
|
|
28
|
+
export * from './renderable/on-ctx';
|
|
26
29
|
export * from './renderable/domnode';
|
|
27
30
|
export * from './renderable/element';
|
|
28
31
|
export * from './renderable/empty';
|
|
@@ -30,11 +33,14 @@ export * from './renderable/ensure';
|
|
|
30
33
|
export * from './renderable/foreach';
|
|
31
34
|
export * from './renderable/fragment';
|
|
32
35
|
export * from './renderable/on';
|
|
36
|
+
export * from './renderable/on-browser-ctx';
|
|
37
|
+
export * from './renderable/on-headless-ctx';
|
|
38
|
+
export * from './renderable/on-ctx';
|
|
39
|
+
export * from './renderable/on-dispose';
|
|
40
|
+
export * from './renderable/on-element';
|
|
41
|
+
export * from './renderable/oneof';
|
|
33
42
|
export * from './renderable/map-signal';
|
|
34
43
|
export * from './renderable/not-empty';
|
|
35
|
-
export * from './renderable/onunmount';
|
|
36
|
-
export * from './renderable/oneof';
|
|
37
|
-
export * from './renderable/onmount';
|
|
38
44
|
export * from './renderable/portal';
|
|
39
45
|
export * from './renderable/providers';
|
|
40
46
|
export * from './renderable/render';
|