@tempots/dom 26.9.0 → 26.11.0
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/browser-context.d.ts +5 -2
- package/dom/dom-context.d.ts +5 -2
- package/dom/headless-context.d.ts +6 -3
- package/index.cjs +1 -1
- package/index.js +187 -186
- package/package.json +1 -1
- package/renderable/on.d.ts +89 -88
package/dom/browser-context.d.ts
CHANGED
|
@@ -146,7 +146,10 @@ export declare class BrowserContext implements DOMContext {
|
|
|
146
146
|
* @returns The provider for the given mark.
|
|
147
147
|
* @throws Throws `ProviderNotFoundError` if the provider for the given mark is not found.
|
|
148
148
|
*/
|
|
149
|
-
readonly getProvider: <T>(mark: ProviderMark<T>) =>
|
|
149
|
+
readonly getProvider: <T>(mark: ProviderMark<T>) => {
|
|
150
|
+
value: T;
|
|
151
|
+
onUse: (() => void) | undefined;
|
|
152
|
+
};
|
|
150
153
|
readonly clear: (removeTree: boolean) => void;
|
|
151
154
|
/**
|
|
152
155
|
* Adds classes to the element.
|
|
@@ -170,7 +173,7 @@ export declare class BrowserContext implements DOMContext {
|
|
|
170
173
|
* @param options - The options for the event listener.
|
|
171
174
|
* @returns A function to remove the event listener.
|
|
172
175
|
*/
|
|
173
|
-
readonly on: <E>(event: string, listener: (event: E) => void, options?: HandlerOptions) => Clear;
|
|
176
|
+
readonly on: <E>(event: string, listener: (event: E, ctx: BrowserContext) => void, options?: HandlerOptions) => Clear;
|
|
174
177
|
/**
|
|
175
178
|
* Returns `true` if the context is a browser DOM context.
|
|
176
179
|
* @returns `true` if the context is a browser DOM context.
|
package/dom/dom-context.d.ts
CHANGED
|
@@ -74,7 +74,10 @@ export interface DOMContext {
|
|
|
74
74
|
* @returns The provider for the given mark.
|
|
75
75
|
* @throws Throws `ProviderNotFoundError` if the provider for the given mark is not found.
|
|
76
76
|
*/
|
|
77
|
-
getProvider<T>(mark: ProviderMark<T>):
|
|
77
|
+
getProvider<T>(mark: ProviderMark<T>): {
|
|
78
|
+
value: T;
|
|
79
|
+
onUse?: () => void;
|
|
80
|
+
};
|
|
78
81
|
/**
|
|
79
82
|
* Sets a provider for the given provider mark.
|
|
80
83
|
*
|
|
@@ -90,7 +93,7 @@ export interface DOMContext {
|
|
|
90
93
|
* @param options - The options for the event listener.
|
|
91
94
|
* @returns A function to remove the event listener.
|
|
92
95
|
*/
|
|
93
|
-
on<E>(event: string, listener: (event: E) => void, options?: HandlerOptions): Clear;
|
|
96
|
+
on<E>(event: string, listener: (event: E, ctx: DOMContext) => void, options?: HandlerOptions): Clear;
|
|
94
97
|
/**
|
|
95
98
|
* Adds classes to the element.
|
|
96
99
|
* @param tokens - The class names to add.
|
|
@@ -30,7 +30,7 @@ declare abstract class HeadlessBase {
|
|
|
30
30
|
readonly getById: (id: string) => HeadlessBase | undefined;
|
|
31
31
|
readonly trigger: <E>(event: string, detail: E) => void;
|
|
32
32
|
readonly click: () => void;
|
|
33
|
-
readonly on: <E>(event: string, listener: (event: E) => void, options?: HandlerOptions) => Clear;
|
|
33
|
+
readonly on: <E>(event: string, listener: (event: E, ctx: HeadlessContext) => void, ctx: HeadlessContext, options?: HandlerOptions) => Clear;
|
|
34
34
|
readonly addClasses: (tokens: string[]) => void;
|
|
35
35
|
readonly removeClasses: (tokens: string[]) => void;
|
|
36
36
|
readonly getClasses: () => string[];
|
|
@@ -92,9 +92,12 @@ export declare class HeadlessContext implements DOMContext {
|
|
|
92
92
|
* @returns A new `DOMContext` instance with the specified provider.
|
|
93
93
|
*/
|
|
94
94
|
readonly setProvider: <T>(mark: ProviderMark<T>, value: T, onUse: undefined | (() => void)) => DOMContext;
|
|
95
|
-
readonly getProvider: <T>(mark: ProviderMark<T>) =>
|
|
95
|
+
readonly getProvider: <T>(mark: ProviderMark<T>) => {
|
|
96
|
+
value: T;
|
|
97
|
+
onUse: (() => void) | undefined;
|
|
98
|
+
};
|
|
96
99
|
readonly clear: (removeTree: boolean) => void;
|
|
97
|
-
readonly on: <E>(event: string, listener: (event: E) => void) => Clear;
|
|
100
|
+
readonly on: <E>(event: string, listener: (event: E, ctx: HeadlessContext) => void) => Clear;
|
|
98
101
|
readonly addClasses: (tokens: string[]) => void;
|
|
99
102
|
readonly removeClasses: (tokens: string[]) => void;
|
|
100
103
|
readonly getClasses: () => string[];
|
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 i=(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)),be=(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),Se=(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,Ae=97,we=(s,e,t)=>{const r=Math.max(s.length,e.length);let n="";for(let l=0;l<r;l++){let o=s.charCodeAt(l);isNaN(o)&&(o=Ae);let a=e.charCodeAt(l);isNaN(a)&&(a=Ae),n+=String.fromCharCode(o+(a-o)*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 L;class F{constructor(e,t){i(this,"counter");i(this,"isFirst");i(this,"isEven");i(this,"isOdd");be(this,L);i(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,L)==null&&Se(this,L,this.total.map(e=>this.counter===e)),K(this,L)}}L=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,t={})=>{t.skipInitial||e(this.get(),void 0);const r=t.once?(l,o)=>{n(),e(l,o)}: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});i(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(l=>l(e,r))});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 P(()=>{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 P(()=>{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 P(()=>{try{const l=this.get();return r=e(l)?l:r}catch(l){throw console.error("Error in Signal.filter:",l),l}},this.equals);return this.setDerivative(n),n});i(this,"filterMap",(e,t,r=(n,l)=>n===l)=>{let n=t;const l=new P(()=>{try{const o=this.get(),a=e(o);return n=a??n}catch(o){throw console.error("Error in Signal.filterMap:",o),o}},r);return this.setDerivative(l),l});i(this,"mapAsync",(e,t,r,n=(l,o)=>l===o)=>{const l=_(t,n);let o=0,a=new AbortController;return l.onDispose(this.on(async c=>{const u=++o;a.abort(),a=new AbortController;try{const h=await e(c,{abortSignal:a.signal});u===o&&l.set(h)}catch(h){if(u===o)if(r!=null)l.set(r(h));else throw h}})),l});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",({autoDisposeProp:e=!0,equals:t}={})=>this.feedProp(_(this.get(),t),e));i(this,"derive",()=>this.map(e=>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=(l,o)=>l===o)=>{const l=new M(t,n);return e.then(o=>l._setAndNotify(o,!1)).catch(o=>{r!=null?l._setAndNotify(r(o),!1):console.error("Unhandled promise rejection in Signal.ofPromise:",o)}),l}),i(M,"is",e=>e!=null&&e.$__signal__===!0);let d=M;const it=typeof queueMicrotask=="function"?queueMicrotask:s=>Promise.resolve().then(s);class P extends d{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;it(()=>{this._scheduleCount!==t||this._disposed||this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!1))})});i(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);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 l(o){const a=n.value;n.update(c=>t(c,o)),!n.equals(a,n.value)&&r.forEach(c=>c({previousState:a,state:n.value,action:o,dispatch:l}))}});i(this,"iso",(t,r,n=(l,o)=>l===o)=>{const l=new X(t(this.get()),n);return l.onDispose(this.on(o=>l.set(t(o)))),l.on(o=>this._setAndNotify(r(o),!1)),l});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(X,"is",t=>t!=null&&t.$__prop__===!0);let H=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?()=>{l(),s()}:s;if(t.skipInitial){let o=!1;const a=r;r=()=>{o?a():o=!0}}const n=Y(r,e),l=()=>{n.dispose(),t.abortSignal!=null&&t.abortSignal.removeEventListener("abort",l)};return t.abortSignal!=null&&t.abortSignal.addEventListener("abort",l),l},_=(s,e=(t,r)=>t===r)=>new H(s,e),I=(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:I(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)},ve=(...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 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(y.get)),r,t)};class te{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 se=({key:s,defaultValue:e,store:t,serialize:r=JSON.stringify,deserialize:n=JSON.parse,equals:l=(a,c)=>a===c,onLoad:o=a=>a})=>{const a=t.getItem(s),c=new H(a!=null?o(n(a)):typeof e=="function"?e():e,l);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,l=(r==null?void 0:r.easing)??(E=>E),o=(r==null?void 0:r.equals)??((E,q)=>E===q);let a=r==null?void 0:r.interpolate,c=s,u=e(),h=performance.now(),m=null,T=!0;const p=new P(e,o),g=_(s,o);g.onDispose(()=>{m!==null&&cancelAnimationFrame(m)}),g.onDispose(p.dispose),t.forEach(E=>{E.setDerivative(p),E.onDispose(g.dispose)});const C=E=>{u=E,h=performance.now(),c=g.value,T&&(T=!1,m=Ee(me))},me=()=>{const q=(performance.now()-h)/y.get(n),st=l(q);a==null&&(a=xe(c));let ge=a(c,u,st);q>=1?(T=!0,ge=u):m=Ee(me),g.set(ge)};return p.on(C),g},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:l,literals:o},[a,c])=>(d.is(c)?l.push([a,c]):o[a]=c,{signals:l,literals:o}),{signals:[],literals:{}}),n=t.map(([,l])=>l);return Y(()=>(t.forEach(([l,o])=>r[l]=o.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),N=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){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 x(this.document,e,void 0,this.providers));i(this,"makePortal",e=>{const t=typeof e=="string"?this.document.querySelector(e):e;if(t==null)throw new Error(`Cannot find element by selector for portal: ${e}`);return this.withElement(t)});i(this,"withReference",e=>new x(this.document,this.element,e,this.providers));i(this,"setProvider",(e,t,r)=>new x(this.document,this.element,this.reference,{...this.providers,[e]:[t,r]}));i(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new ne(e);return this.providers[e]});i(this,"clear",e=>{e&&(this.reference!==void 0?N(this.reference):N(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,r)=>(this.element.addEventListener(e,t,r),n=>{n&&this.element.removeEventListener(e,t,r)}));i(this,"isBrowserDOM",()=>!0);i(this,"isBrowser",()=>!0);i(this,"isHeadlessDOM",()=>!1);i(this,"isHeadless",()=>!1);i(this,"setStyle",(e,t)=>{this.element.style[e]=t});i(this,"getStyle",e=>this.element.style[e]);i(this,"makeAccessors",e=>({get:$e(e,this.element),set:Ie(e,this.element)}));i(this,"getWindow",()=>this.document.defaultView);this.document=e,this.element=t,this.reference=r,this.providers=n}static of(e,t,r){return new x(e.ownerDocument,e,t,r)}}const 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,providers:l={}}={})=>{const o=typeof e=="string"?(t??document).querySelector(e):e;if(o===null)throw new je(`Cannot find element by selector for render: ${e}`);r!==!1&&(t??o.ownerDocument)!=null&&o.nodeType===1&&(o.innerHTML="");const a=Re(o),c=re(o)?void 0:o,u=x.of(a,c,l),h=z(s,u);let m;return n&&(m=new MutationObserver(T=>{var p;(p=T[0])==null||p.removedNodes.forEach(g=>{g===o&&(m==null||m.disconnect(),h(o.nodeType!==Node.ELEMENT_NODE))})}),m.observe(o.parentElement,{childList:!0,subtree:!1,attributes:!1})),()=>{m==null||m.disconnect(),h(!0)}},dt=(s,{startUrl:e="https://example.com",selector:t,providers:r={}}={selector:"body"})=>{const n=y.toSignal(e).deriveProp(),l=new oe(t,void 0),o=new O(l,void 0,{currentURL:n},r);return{clear:z(s(),o),root:l,currentURL:n}};class je extends Error{constructor(e){super(e)}}const ie="data-tts-node",k="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:l,getStyles:o,setStyles:a,appendHTML:c,getInnerHTML:u,setInnerHTML:h,getInnerText:m,setInnerText:T}){i(this,"select");i(this,"getAttribute");i(this,"setAttribute");i(this,"getClass");i(this,"setClass");i(this,"getStyles");i(this,"setStyles");i(this,"appendHTML");i(this,"getInnerHTML");i(this,"setInnerHTML");i(this,"getInnerText");i(this,"setInnerText");i(this,"setFromRoot",(e,t)=>{e.getPortals().forEach(n=>{const l=typeof n.selector=="string"?this.select(n.selector):[n.selector];for(const o of l){if(o==null)throw new Error(`Cannot find element by selector for render: ${n.selector}`);if(n.hasChildren()&&this.appendHTML(o,n.contentToHTML(t)),n.hasInnerHTML()){if(t){const a=this.getInnerHTML(o);a!=null&&this.setAttribute(o,U,a)}this.setInnerHTML(o,n.getInnerHTML())}if(n.hasInnerText()){if(t){const a=this.getInnerText(o);a!=null&&this.setAttribute(o,G,a)}this.setInnerText(o,n.getInnerText())}if(n.hasClasses()){if(t){const a=this.getClass(o);a!=null&&this.setAttribute(o,k,a)}this.setClass(o,n.getClasses().join(" "))}if(n.hasStyles()){if(t){const a=this.getStyles(o);Object.keys(a).length>0&&this.setAttribute(o,W,JSON.stringify(a))}this.setStyles(o,n.getStyles())}if(n.hasAttributes()){const a=n.getAttributes();if(t){const c=[];a.forEach(([u])=>{const h=this.getAttribute(o,u);h!=null&&c.push([u,h])}),c.length>0&&this.setAttribute(o,J,JSON.stringify(Object.fromEntries(c)))}a.forEach(([c,u])=>{this.setAttribute(o,c,u)})}}})});this.select=e,this.getAttribute=t,this.setAttribute=r,this.getClass=n,this.setClass=l,this.getStyles=o,this.setStyles=a,this.appendHTML=c,this.getInnerHTML=u,this.setInnerHTML=h,this.getInnerText=m,this.setInnerText=T}}const mt=()=>{document.querySelectorAll(`[${ie}]`).forEach(N)},gt=s=>{const e=s.getAttribute(k);s.removeAttribute(k),e!=null&&s.setAttribute("class",e)},yt=()=>{document.querySelectorAll(`[${k}]`).forEach(e=>gt(e))},Tt=s=>{const e=s.getAttribute(U);s.removeAttribute(U),e!=null&&(s.innerHTML=e)},bt=()=>{document.querySelectorAll(`[${U}]`).forEach(e=>Tt(e))},St=s=>{const e=s.getAttribute(G);s.removeAttribute(G),e!=null&&(s.innerText=e)},At=()=>{document.querySelectorAll(`[${G}]`).forEach(e=>St(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(),At(),bt(),_t(),Ct()},S=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){i(this,"id",Be());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?xt(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[S]!=null);i(this,"hasStyles",()=>this.properties[w]!=null);i(this,"hasAttributes",()=>Object.keys(this.properties).length>0);i(this,"hasHandlers",()=>this.properties[D]!=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[D]??{})[e]??[]).forEach(n=>n(t))});i(this,"click",()=>{this.trigger("click",{})});i(this,"on",(e,t,r)=>{var a;const n=(a=this.properties)[D]??(a[D]={}),l=r!=null&&r.once?c=>{o(),t(c)}:c=>t(c);n[e]=[...n[e]??[],l];const o=()=>{const c=n[e]??[],u=c.indexOf(l);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",o))};return(r==null?void 0:r.signal)!=null&&r.signal.addEventListener("abort",o),o});i(this,"addClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[S]??(r[S]=[]);e.forEach(n=>{t.includes(n)||t.push(n)})});i(this,"removeClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[S]??(r[S]=[]);e.forEach(n=>{const l=t.indexOf(n);l!==-1&&t.splice(l,1)}),t.length===0&&delete this.properties[S]});i(this,"getClasses",()=>this.properties[S]??[]);i(this,"getAttributes",()=>Object.entries(this.properties).filter(([e])=>!["innerText","innerHTML"].includes(e)));i(this,"getVisibleAttributes",()=>Reflect.ownKeys(this.properties).flatMap(e=>e===S?[["class",this.getClasses()]]:e===w?[["style",this.getStyles()]]:typeof e=="string"?[[e,String(this.properties[e])]]:[]));i(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])});i(this,"getStyle",e=>{var t;return((t=this.properties[w])==null?void 0:t[e])??""});i(this,"getStyles",()=>this.properties[w]??{});i(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);i(this,"isPortal",()=>!1);i(this,"toHTML",(t=!1)=>{const r=this.children.map(c=>c.toHTML()).join(""),n=this.namespace?` xmlns="${this.namespace}"`:"";let l=null;const o=this.getVisibleAttributes().map(([c,u])=>c==="class"?` class="${u.join(" ")}"`:c==="style"?typeof u=="string"?` style="${u}"`:` style="${Object.entries(u).map(([h,m])=>`${h}: ${m};`).join(" ")}"`:Dt.has(c)?` ${c}`:c==="innerHTML"?(l=u,""):c==="innerText"?(l=vt(u),""):` ${c}="${Ot(u)}"`).join(""),a=t?` ${ie}`:"";return Lt.has(this.tagName)&&r===""?`<${this.tagName}${n}${o}${a} />`:`<${this.tagName}${n}${o}${a}>${l??r}</${this.tagName}>`});this.tagName=t,this.namespace=r}}class oe extends Fe{constructor(t,r){super(r);i(this,"isPortal",()=>!0);i(this,"toHTML",()=>"");i(this,"contentToHTML",(t=!1)=>this.children.map(r=>r.toHTML(t)).join(""));this.selector=t}}class Ue{constructor(e){i(this,"id",Be());i(this,"isElement",()=>!1);i(this,"isText",()=>!0);i(this,"getText",()=>this.text);i(this,"toHTML",()=>this.text);this.text=e}}class O{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 We(e,t,this.element);return this.appendOrInsert(r),new O(r,void 0,this.container,this.providers)});i(this,"makeChildText",e=>{const t=new Ue(e);return this.appendOrInsert(t),new O(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 oe(e,this.element);return this.appendOrInsert(t),new O(t,void 0,this.container,this.providers)});i(this,"setProvider",(e,t,r)=>new O(this.element,this.reference,this.container,{...this.providers,[e]:[t,r]}));i(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new ne(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,"isBrowser",()=>!1);i(this,"isHeadlessDOM",()=>!0);i(this,"isHeadless",()=>!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 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),b=(...s)=>e=>{const t=s.map(r=>f(r)(e));return r=>{t.forEach(n=>n(r))}},A=()=>()=>{},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(l=>l.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),l=r();return n(e),o=>{o&&n(l)}},R=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),l=r(),o=e.on(n);return a=>{o(),a&&n(l)}},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)?R(e,t):$(e,t)}),kt=new Proxy({},{get:(s,e)=>t=>d.is(t)?R(`data-${e}`,t):$(`data-${e}`,t)}),It=new Proxy({},{get:(s,e)=>t=>d.is(t)?R(`aria-${e}`,t):$(`aria-${e}`,t)}),$t=new Proxy({},{get:(s,e)=>t=>d.is(t)?R(e,t):$(e,t)}),Rt=new Proxy({},{get:(s,e)=>t=>d.is(t)?R(e,t):$(e,t)}),f=s=>{if(s==null)return A;if(Array.isArray(s))return b(...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(l=>f(l)(r));return l=>{n.forEach(o=>o(!1)),r.clear(l)}},ue=(s,e,...t)=>r=>{const n=r.makeChildElement(s,e),l=t.map(o=>f(o)(n));return o=>{l.forEach(a=>a(!1)),n.clear(o)}},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()):A,r=e.then,n=e.error!=null?l=>f(e.error(l)):()=>A;return l=>{let o=!0;const a=s(),c=l.makeRef();let u=f(t)(c);return a.then(h=>{o&&(u(!0),u=f(r(h))(c))},h=>{o&&(u(!0),u=f(n(h))(c))}),h=>{o=!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)}),V=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("-"),l=new Date(Number(n[0]),Number(n[1])-1,Number(n[2])),o=r[1].split(":");l.setHours(Number(o[0])),l.setMinutes(Number(o[1])),l.setSeconds(Number(o[2])),s(l)},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("-"),l=new Date(Number(n[0]),Number(n[1])-1,Number(n[2])),o=r[1].split(":");l.setHours(Number(o[0]??0)),l.setMinutes(Number(o[1]??0)),l.setSeconds(Number(o[2]??0)),s(l)},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")=>b(v.valueAsDate(s),V[e](ze(s.set))),Kt=(s,e="input")=>b(v.valueAsDate(s),V[e](Qe(s.set))),es=(s,e="input")=>b(v.valueAsNumber(s),V[e](Ye(s.set))),ts=(s,e="input")=>b(v.value(s),V[e](Xe(s.set))),ss=s=>b(v.checked(s),Je(s.set)),j=(s,e)=>{if(d.is(s))return r=>{const n=r.makeRef();let l,o;const a=s.map(h=>Object.keys(h)[0]);let c;const u=a.on(h=>{if(h!==c){c=h,o==null||o.dispose(),l==null||l(!0),o=s.map(T=>T[h]);const m=e[h](o);l=f(m)(n)}});return h=>{o==null||o.dispose(),u(),n.clear(h),l==null||l(h)}};const t=Object.keys(s)[0];return f(e[t](I(s[t])))},fe=(s,e,t)=>j(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 j(t,e)},is=(s,e)=>fe(s,"type",e),Ze=(s,e)=>j(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(l=>l.isFirst?"first":l.isLast?"last":"other"),{first:r,last:n,other:s})},ls=s=>e=>(e.appendOrInsert(s),t=>{t&&N(s)}),Ke=(s,e,t)=>{if(d.is(s)){const r=s;return n=>{const l=n.makeRef();let o=()=>{},a=!1,c=null;const u=r.on(h=>{h==null?(o(!0),o=f((t==null?void 0:t())??A)(l),a=!1,c==null||c.dispose(),c=null):(c==null?c=_(h):c.value=h,a||(o(!0),o=f(e(c))(l),a=!0))});return h=>{c==null||c.dispose(),u(),o==null||o(h),l.clear(h)}}}else{const r=s;if(r==null){const n=t==null?void 0:t();return n!=null?f(n):A}return f(e(I(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()):A)(n);const o=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,g)=>{if(p.value!=null){if(o[g]==null){const C=_(p.value);o[g]=C}else o[g].value=p.value;a[g]=!0}else a[g]=!1};let m=s.length-1;const T=s.map((p,g)=>{if(!d.is(p)){const C=_(p);return o[g]=C,()=>{}}return p.on(()=>{h(p,g),m===0?u.value=a.every(C=>C):m--})});return u.on(p=>{c==null||c(!0),c=null,p?c=f(e(...o))(n):c=f((t==null?void 0:t())??A)(n)}),p=>{o.forEach(g=>g==null?void 0:g.dispose()),u.dispose(),T.forEach(g=>g()),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(l=>l-1));return b(Q(n.dispose),f(e(r)),de(r.isLast,()=>A,()=>t(n)))}):d.is(s)?r=>{const n=r.makeRef(),l=[],o=s.on(a=>{const c=l.splice(a);for(const u of c)u(!0);for(let u=l.length;u<a;u++){const h=new F(u,s);l.push(f(e(h))(n))}});return a=>{o();for(const c of l)c(a);l.length=0,n.clear(a)}}:b(...Array.from({length:s},(r,n)=>n).map(r=>f(e(new F(r,I(s)))))),us=(s,e,t)=>{const r=y.map(s,l=>l.length),n=y.toSignal(s);return pe(r,l=>{const o=n.map(a=>a[l.index]);return b(Q(o.dispose),f(e(o,l)))},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 l=()=>{};const o=n.on(a=>{l(!0),l=a(r)});return a=>{o(),l(a)}}}return f(e(s))},fs=(s,e,t=()=>A)=>j(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)},B=new Map,et=s=>({mark:Ve(`Probe(${s.description})`),create:({callback:e=()=>{},timeout:t=10}={})=>{const r=a=>{clearTimeout(n),B.delete(s),e(a)};if(B.has(s))throw new Error(`Probe already exists: ${s.description}`);const n=setTimeout(()=>r("timeout"),t),l={counter:0,timeoutId:n};return B.set(s,l),{value:()=>{clearTimeout(n);const a=B.get(s);a!=null&&--a.counter===0&&r("resolved")},dispose:()=>r("disposed"),onUse:()=>l.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)},bs=s=>tt(e=>s(e.element)),Ss=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 l=[],o=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:m,onUse:T}=c(u,r());l.push(m),n(r().setProvider(a,h,T))}});return o==null?()=>{}:b(f(o),Q(()=>l.forEach(a=>a())))(r())},As=(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=k;exports.Computed=P;exports.Conjunction=os;exports.DOMNode=ls;exports.El=ce;exports.ElNS=ue;exports.ElementPosition=F;exports.Empty=A;exports.Ensure=Ke;exports.EnsureAll=as;exports.ForEach=us;exports.Fragment=b;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=j;exports.OneOfField=fe;exports.OneOfKind=rs;exports.OneOfTuple=ns;exports.OneOfType=is;exports.OneOfValue=Ze;exports.Portal=ds;exports.Prop=H;exports.Provide=As;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=bs;exports.WithHeadlessCtx=Ss;exports.WithProvider=Z;exports._NODE_PLACEHOLDER_ATTR=ie;exports._getSelfOrParentElement=Re;exports._isElement=re;exports._makeGetter=$e;exports._makeSetter=Ie;exports._removeDOMNode=N;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=V;exports.prop=_;exports.render=ft;exports.renderWithContext=z;exports.renderableOfTNode=f;exports.restoreTempoPlaceholders=Pt;exports.runHeadless=dt;exports.sessionStorageProp=ct;exports.signal=I;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 i=(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)),be=(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),Se=(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,Ae=97,we=(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=Ae);let a=e.charCodeAt(o);isNaN(a)&&(a=Ae),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,ve=s=>typeof s=="number"?_e:typeof s=="string"?we:s instanceof Date?Ce:Pe;var L;class F{constructor(e,t){i(this,"counter");i(this,"isFirst");i(this,"isEven");i(this,"isOdd");be(this,L);i(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,L)==null&&Se(this,L,this.total.map(e=>this.counter===e)),K(this,L)}}L=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,t={})=>{t.skipInitial||e(this.get(),void 0);const r=t.once?(o,l)=>{n(),e(o,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});i(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(o=>o(e,r))});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 P(()=>{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 P(()=>{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 P(()=>{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 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(o),o});i(this,"mapAsync",(e,t,r,n=(o,l)=>o===l)=>{const o=_(t,n);let l=0,a=new AbortController;return o.onDispose(this.on(async c=>{const u=++l;a.abort(),a=new AbortController;try{const h=await e(c,{abortSignal:a.signal});u===l&&o.set(h)}catch(h){if(u===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",({autoDisposeProp:e=!0,equals:t}={})=>this.feedProp(_(this.get(),t),e));i(this,"derive",()=>this.map(e=>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 d=M;const it=typeof queueMicrotask=="function"?queueMicrotask:s=>Promise.resolve().then(s);class P extends d{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;it(()=>{this._scheduleCount!==t||this._disposed||this._isDirty&&(this._isDirty=!1,this._setAndNotify(this._fn(),!1))})});i(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);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 X(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(X,"is",t=>t!=null&&t.$__prop__===!0);let H=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?()=>{o(),s()}:s;if(t.skipInitial){let l=!1;const a=r;r=()=>{l?a():l=!0}}const n=Y(r,e),o=()=>{n.dispose(),t.abortSignal!=null&&t.abortSignal.removeEventListener("abort",o)};return t.abortSignal!=null&&t.abortSignal.addEventListener("abort",o),o},_=(s,e=(t,r)=>t===r)=>new H(s,e),I=(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:I(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 Oe(()=>e(...s.map(y.get)),r,t)};class te{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 se=({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 H(a!=null?l(n(a)):typeof e=="function"?e():e,o);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,o=(r==null?void 0:r.easing)??(E=>E),l=(r==null?void 0:r.equals)??((E,q)=>E===q);let a=r==null?void 0:r.interpolate,c=s,u=e(),h=performance.now(),m=null,T=!0;const p=new P(e,l),g=_(s,l);g.onDispose(()=>{m!==null&&cancelAnimationFrame(m)}),g.onDispose(p.dispose),t.forEach(E=>{E.setDerivative(p),E.onDispose(g.dispose)});const C=E=>{u=E,h=performance.now(),c=g.value,T&&(T=!1,m=Ee(me))},me=()=>{const q=(performance.now()-h)/y.get(n),st=o(q);a==null&&(a=ve(c));let ge=a(c,u,st);q>=1?(T=!0,ge=u):m=Ee(me),g.set(ge)};return p.on(C),g},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:o,literals:l},[a,c])=>(d.is(c)?o.push([a,c]):l[a]=c,{signals:o,literals:l}),{signals:[],literals:{}}),n=t.map(([,o])=>o);return Y(()=>(t.forEach(([o,l])=>r[o]=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),N=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 v{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 v(this.document,e,void 0,this.providers));i(this,"makePortal",e=>{const t=typeof e=="string"?this.document.querySelector(e):e;if(t==null)throw new Error(`Cannot find element by selector for portal: ${e}`);return this.withElement(t)});i(this,"withReference",e=>new v(this.document,this.element,e,this.providers));i(this,"setProvider",(e,t,r)=>new v(this.document,this.element,this.reference,{...this.providers,[e]:[t,r]}));i(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new ne(e);const[t,r]=this.providers[e];return{value:t,onUse:r}});i(this,"clear",e=>{e&&(this.reference!==void 0?N(this.reference):N(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,r)=>{const n=o=>t(o,this);return this.element.addEventListener(e,n,r),o=>{o&&this.element.removeEventListener(e,n,r)}});i(this,"isBrowserDOM",()=>!0);i(this,"isBrowser",()=>!0);i(this,"isHeadlessDOM",()=>!1);i(this,"isHeadless",()=>!1);i(this,"setStyle",(e,t)=>{this.element.style[e]=t});i(this,"getStyle",e=>this.element.style[e]);i(this,"makeAccessors",e=>({get:$e(e,this.element),set:Ie(e,this.element)}));i(this,"getWindow",()=>this.document.defaultView);this.document=e,this.element=t,this.reference=r,this.providers=n}static of(e,t,r){return new v(e.ownerDocument,e,t,r)}}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,providers:o={}}={})=>{const l=typeof e=="string"?(t??document).querySelector(e):e;if(l===null)throw new je(`Cannot find element by selector for render: ${e}`);r!==!1&&(t??l.ownerDocument)!=null&&l.nodeType===1&&(l.innerHTML="");const a=Re(l),c=re(l)?void 0:l,u=v.of(a,c,o),h=z(s,u);let m;return n&&(m=new MutationObserver(T=>{var p;(p=T[0])==null||p.removedNodes.forEach(g=>{g===l&&(m==null||m.disconnect(),h(l.nodeType!==Node.ELEMENT_NODE))})}),m.observe(l.parentElement,{childList:!0,subtree:!1,attributes:!1})),()=>{m==null||m.disconnect(),h(!0)}},dt=(s,{startUrl:e="https://example.com",selector:t,providers:r={}}={selector:"body"})=>{const n=y.toSignal(e).deriveProp(),o=new oe(t,void 0),l=new O(o,void 0,{currentURL:n},r);return{clear:z(s(),l),root:o,currentURL:n}};class je extends Error{constructor(e){super(e)}}const ie="data-tts-node",k="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:o,getStyles:l,setStyles:a,appendHTML:c,getInnerHTML:u,setInnerHTML:h,getInnerText:m,setInnerText:T}){i(this,"select");i(this,"getAttribute");i(this,"setAttribute");i(this,"getClass");i(this,"setClass");i(this,"getStyles");i(this,"setStyles");i(this,"appendHTML");i(this,"getInnerHTML");i(this,"setInnerHTML");i(this,"getInnerText");i(this,"setInnerText");i(this,"setFromRoot",(e,t)=>{e.getPortals().forEach(n=>{const o=typeof n.selector=="string"?this.select(n.selector):[n.selector];for(const l of o){if(l==null)throw new Error(`Cannot find element by selector for render: ${n.selector}`);if(n.hasChildren()&&this.appendHTML(l,n.contentToHTML(t)),n.hasInnerHTML()){if(t){const a=this.getInnerHTML(l);a!=null&&this.setAttribute(l,U,a)}this.setInnerHTML(l,n.getInnerHTML())}if(n.hasInnerText()){if(t){const a=this.getInnerText(l);a!=null&&this.setAttribute(l,G,a)}this.setInnerText(l,n.getInnerText())}if(n.hasClasses()){if(t){const a=this.getClass(l);a!=null&&this.setAttribute(l,k,a)}this.setClass(l,n.getClasses().join(" "))}if(n.hasStyles()){if(t){const a=this.getStyles(l);Object.keys(a).length>0&&this.setAttribute(l,W,JSON.stringify(a))}this.setStyles(l,n.getStyles())}if(n.hasAttributes()){const a=n.getAttributes();if(t){const c=[];a.forEach(([u])=>{const h=this.getAttribute(l,u);h!=null&&c.push([u,h])}),c.length>0&&this.setAttribute(l,J,JSON.stringify(Object.fromEntries(c)))}a.forEach(([c,u])=>{this.setAttribute(l,c,u)})}}})});this.select=e,this.getAttribute=t,this.setAttribute=r,this.getClass=n,this.setClass=o,this.getStyles=l,this.setStyles=a,this.appendHTML=c,this.getInnerHTML=u,this.setInnerHTML=h,this.getInnerText=m,this.setInnerText=T}}const mt=()=>{document.querySelectorAll(`[${ie}]`).forEach(N)},gt=s=>{const e=s.getAttribute(k);s.removeAttribute(k),e!=null&&s.setAttribute("class",e)},yt=()=>{document.querySelectorAll(`[${k}]`).forEach(e=>gt(e))},Tt=s=>{const e=s.getAttribute(U);s.removeAttribute(U),e!=null&&(s.innerHTML=e)},bt=()=>{document.querySelectorAll(`[${U}]`).forEach(e=>Tt(e))},St=s=>{const e=s.getAttribute(G);s.removeAttribute(G),e!=null&&(s.innerText=e)},At=()=>{document.querySelectorAll(`[${G}]`).forEach(e=>St(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(),At(),bt(),_t(),Ct()},S=Symbol("class"),w=Symbol("style"),D=Symbol("handler"),Be=()=>Math.random().toString(36).substring(2,15),vt=s=>s.replace(/<[^>]*>?/g,"");class Fe{constructor(e){i(this,"id",Be());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?vt(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[S]!=null);i(this,"hasStyles",()=>this.properties[w]!=null);i(this,"hasAttributes",()=>Object.keys(this.properties).length>0);i(this,"hasHandlers",()=>this.properties[D]!=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[D]??{})[e]??[]).forEach(n=>n(t))});i(this,"click",()=>{this.trigger("click",{})});i(this,"on",(e,t,r,n)=>{var c;const o=(c=this.properties)[D]??(c[D]={}),l=n!=null&&n.once?u=>{a(),t(u,r)}:u=>t(u,r);o[e]=[...o[e]??[],l];const a=()=>{const u=o[e]??[],h=u.indexOf(l);h!==-1&&(u.splice(h,1),u.length===0?(delete o[e],Object.keys(o).length===0&&delete this.properties[D]):o[e]=u,(n==null?void 0:n.signal)!=null&&n.signal.removeEventListener("abort",a))};return(n==null?void 0:n.signal)!=null&&n.signal.addEventListener("abort",a),a});i(this,"addClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[S]??(r[S]=[]);e.forEach(n=>{t.includes(n)||t.push(n)})});i(this,"removeClasses",e=>{var r;if(e.length===0)return;const t=(r=this.properties)[S]??(r[S]=[]);e.forEach(n=>{const o=t.indexOf(n);o!==-1&&t.splice(o,1)}),t.length===0&&delete this.properties[S]});i(this,"getClasses",()=>this.properties[S]??[]);i(this,"getAttributes",()=>Object.entries(this.properties).filter(([e])=>!["innerText","innerHTML"].includes(e)));i(this,"getVisibleAttributes",()=>Reflect.ownKeys(this.properties).flatMap(e=>e===S?[["class",this.getClasses()]]:e===w?[["style",this.getStyles()]]:typeof e=="string"?[[e,String(this.properties[e])]]:[]));i(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])});i(this,"getStyle",e=>{var t;return((t=this.properties[w])==null?void 0:t[e])??""});i(this,"getStyles",()=>this.properties[w]??{});i(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,"""),xt=s=>s.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");class We extends Fe{constructor(t,r,n){super(n);i(this,"isPortal",()=>!1);i(this,"toHTML",(t=!1)=>{const r=this.children.map(c=>c.toHTML()).join(""),n=this.namespace?` xmlns="${this.namespace}"`:"";let o=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,m])=>`${h}: ${m};`).join(" ")}"`:Dt.has(c)?` ${c}`:c==="innerHTML"?(o=u,""):c==="innerText"?(o=xt(u),""):` ${c}="${Ot(u)}"`).join(""),a=t?` ${ie}`:"";return Lt.has(this.tagName)&&r===""?`<${this.tagName}${n}${l}${a} />`:`<${this.tagName}${n}${l}${a}>${o??r}</${this.tagName}>`});this.tagName=t,this.namespace=r}}class oe extends Fe{constructor(t,r){super(r);i(this,"isPortal",()=>!0);i(this,"toHTML",()=>"");i(this,"contentToHTML",(t=!1)=>this.children.map(r=>r.toHTML(t)).join(""));this.selector=t}}class Ue{constructor(e){i(this,"id",Be());i(this,"isElement",()=>!1);i(this,"isText",()=>!0);i(this,"getText",()=>this.text);i(this,"toHTML",()=>this.text);this.text=e}}class O{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 We(e,t,this.element);return this.appendOrInsert(r),new O(r,void 0,this.container,this.providers)});i(this,"makeChildText",e=>{const t=new Ue(e);return this.appendOrInsert(t),new O(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 oe(e,this.element);return this.appendOrInsert(t),new O(t,void 0,this.container,this.providers)});i(this,"setProvider",(e,t,r)=>new O(this.element,this.reference,this.container,{...this.providers,[e]:[t,r]}));i(this,"getProvider",e=>{if(this.providers[e]===void 0)throw new ne(e);const[t,r]=this.providers[e];return{value:t,onUse:r}});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,this));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,"isBrowser",()=>!1);i(this,"isHeadlessDOM",()=>!0);i(this,"isHeadless",()=>!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 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),b=(...s)=>e=>{const t=s.map(r=>f(r)(e));return r=>{t.forEach(n=>n(r))}},A=()=>()=>{},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(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)}},R=(s,e)=>t=>{const{get:r,set:n}=t.makeAccessors(s),o=r(),l=e.on(n);return a=>{l(),a&&n(o)}},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)?R(e,t):$(e,t)}),kt=new Proxy({},{get:(s,e)=>t=>d.is(t)?R(`data-${e}`,t):$(`data-${e}`,t)}),It=new Proxy({},{get:(s,e)=>t=>d.is(t)?R(`aria-${e}`,t):$(`aria-${e}`,t)}),$t=new Proxy({},{get:(s,e)=>t=>d.is(t)?R(e,t):$(e,t)}),Rt=new Proxy({},{get:(s,e)=>t=>d.is(t)?R(e,t):$(e,t)}),f=s=>{if(s==null)return A;if(Array.isArray(s))return b(...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(o=>f(o)(r));return o=>{n.forEach(l=>l(!1)),r.clear(o)}},ue=(s,e,...t)=>r=>{const n=r.makeChildElement(s,e),o=t.map(l=>f(l)(n));return l=>{o.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()):A,r=e.then,n=e.error!=null?o=>f(e.error(o)):()=>A;return o=>{let l=!0;const a=s(),c=o.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,t)=>{e.preventDefault();const r=e.target;setTimeout(()=>{const n=r.ownerDocument!=null?r==null?void 0:r.checked:void 0;n!=null&&s(!n,t)},0)}),V=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("-"),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)},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("-"),o=new Date(Number(n[0]),Number(n[1])-1,Number(n[2])),l=r[1].split(":");o.setHours(Number(l[0]??0)),o.setMinutes(Number(l[1]??0)),o.setSeconds(Number(l[2]??0)),s(o)},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")=>b(x.valueAsDate(s),V[e](ze(s.set))),Kt=(s,e="input")=>b(x.valueAsDate(s),V[e](Qe(s.set))),es=(s,e="input")=>b(x.valueAsNumber(s),V[e](Ye(s.set))),ts=(s,e="input")=>b(x.value(s),V[e](Xe(s.set))),ss=s=>b(x.checked(s),Je(s.set)),j=(s,e)=>{if(d.is(s))return r=>{const n=r.makeRef();let o,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(),o==null||o(!0),l=s.map(T=>T[h]);const m=e[h](l);o=f(m)(n)}});return h=>{l==null||l.dispose(),u(),n.clear(h),o==null||o(h)}};const t=Object.keys(s)[0];return f(e[t](I(s[t])))},fe=(s,e,t)=>j(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 j(t,e)},is=(s,e)=>fe(s,"type",e),Ze=(s,e)=>j(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(o=>o.isFirst?"first":o.isLast?"last":"other"),{first:r,last:n,other:s})},ls=s=>e=>(e.appendOrInsert(s),t=>{t&&N(s)}),Ke=(s,e,t)=>{if(d.is(s)){const r=s;return n=>{const o=n.makeRef();let l=()=>{},a=!1,c=null;const u=r.on(h=>{h==null?(l(!0),l=f((t==null?void 0:t())??A)(o),a=!1,c==null||c.dispose(),c=null):(c==null?c=_(h):c.value=h,a||(l(!0),l=f(e(c))(o),a=!0))});return h=>{c==null||c.dispose(),u(),l==null||l(h),o.clear(h)}}}else{const r=s;if(r==null){const n=t==null?void 0:t();return n!=null?f(n):A}return f(e(I(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()):A)(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,g)=>{if(p.value!=null){if(l[g]==null){const C=_(p.value);l[g]=C}else l[g].value=p.value;a[g]=!0}else a[g]=!1};let m=s.length-1;const T=s.map((p,g)=>{if(!d.is(p)){const C=_(p);return l[g]=C,()=>{}}return p.on(()=>{h(p,g),m===0?u.value=a.every(C=>C):m--})});return u.on(p=>{c==null||c(!0),c=null,p?c=f(e(...l))(n):c=f((t==null?void 0:t())??A)(n)}),p=>{l.forEach(g=>g==null?void 0:g.dispose()),u.dispose(),T.forEach(g=>g()),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(o=>o-1));return b(Q(n.dispose),f(e(r)),de(r.isLast,()=>A,()=>t(n)))}):d.is(s)?r=>{const n=r.makeRef(),o=[],l=s.on(a=>{const c=o.splice(a);for(const u of c)u(!0);for(let u=o.length;u<a;u++){const h=new F(u,s);o.push(f(e(h))(n))}});return a=>{l();for(const c of o)c(a);o.length=0,n.clear(a)}}:b(...Array.from({length:s},(r,n)=>n).map(r=>f(e(new F(r,I(s)))))),us=(s,e,t)=>{const r=y.map(s,o=>o.length),n=y.toSignal(s);return pe(r,o=>{const l=n.map(a=>a[o.index]);return b(Q(l.dispose),f(e(l,o)))},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 o=()=>{};const l=n.on(a=>{o(!0),o=a(r)});return a=>{l(),o(a)}}}return f(e(s))},fs=(s,e,t=()=>A)=>j(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)},B=new Map,et=s=>({mark:Ve(`Probe(${s.description})`),create:({callback:e=()=>{},timeout:t=10}={})=>{const r=a=>{clearTimeout(n),B.delete(s),e(a)};if(B.has(s))throw new Error(`Probe already exists: ${s.description}`);const n=setTimeout(()=>r("timeout"),t),o={counter:0,timeoutId:n};return B.set(s,o),{value:()=>{clearTimeout(n);const a=B.get(s);a!=null&&--a.counter===0&&r("resolved")},dispose:()=>r("disposed"),onUse:()=>o.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)},bs=s=>tt(e=>s(e.element)),Ss=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 o=[],l=s({use:({mark:a})=>{const{value:c,onUse:u}=r().getProvider(a);return u==null||u(),c},set:({mark:a,create:c},u)=>{const{value:h,dispose:m,onUse:T}=c(u,r());o.push(m),n(r().setProvider(a,h,T))}});return l==null?()=>{}:b(f(l),Q(()=>o.forEach(a=>a())))(r())},As=(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=v;exports.CLASS_PLACEHOLDER_ATTR=k;exports.Computed=P;exports.Conjunction=os;exports.DOMNode=ls;exports.El=ce;exports.ElNS=ue;exports.ElementPosition=F;exports.Empty=A;exports.Ensure=Ke;exports.EnsureAll=as;exports.ForEach=us;exports.Fragment=b;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=j;exports.OneOfField=fe;exports.OneOfKind=rs;exports.OneOfTuple=ns;exports.OneOfType=is;exports.OneOfValue=Ze;exports.Portal=ds;exports.Prop=H;exports.Provide=As;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=bs;exports.WithHeadlessCtx=Ss;exports.WithProvider=Z;exports._NODE_PLACEHOLDER_ATTR=ie;exports._getSelfOrParentElement=Re;exports._isElement=re;exports._makeGetter=$e;exports._makeSetter=Ie;exports._removeDOMNode=N;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=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=ve;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=V;exports.prop=_;exports.render=ft;exports.renderWithContext=z;exports.renderableOfTNode=f;exports.restoreTempoPlaceholders=Pt;exports.runHeadless=dt;exports.sessionStorageProp=ct;exports.signal=I;exports.storedProp=se;exports.style=ys;exports.svg=Bt;exports.svgAttr=$t;
|
package/index.js
CHANGED
|
@@ -9,11 +9,11 @@ const Ne = (s, e, t) => s + (e - s) * t;
|
|
|
9
9
|
const $e = (s, e, t) => {
|
|
10
10
|
const r = Math.max(s.length, e.length);
|
|
11
11
|
let n = "";
|
|
12
|
-
for (let
|
|
13
|
-
let
|
|
14
|
-
isNaN(
|
|
15
|
-
let c = e.charCodeAt(
|
|
16
|
-
isNaN(c) && (c = 97), n += String.fromCharCode(
|
|
12
|
+
for (let o = 0; o < r; o++) {
|
|
13
|
+
let l = s.charCodeAt(o);
|
|
14
|
+
isNaN(l) && (l = 97);
|
|
15
|
+
let c = e.charCodeAt(o);
|
|
16
|
+
isNaN(c) && (c = 97), n += String.fromCharCode(l + (c - l) * t);
|
|
17
17
|
}
|
|
18
18
|
return n;
|
|
19
19
|
}, ke = (s, e, t) => new Date(s.getTime() + (e.getTime() - s.getTime()) * t), Ie = (s, e) => e, Re = (s) => typeof s == "number" ? Ne : typeof s == "string" ? $e : s instanceof Date ? ke : Ie;
|
|
@@ -108,8 +108,8 @@ const O = class O {
|
|
|
108
108
|
*/
|
|
109
109
|
i(this, "on", (e, t = {}) => {
|
|
110
110
|
t.skipInitial || e(this.get(), void 0);
|
|
111
|
-
const r = t.once ? (
|
|
112
|
-
n(), e(
|
|
111
|
+
const r = t.once ? (o, l) => {
|
|
112
|
+
n(), e(o, l);
|
|
113
113
|
} : e;
|
|
114
114
|
this._onValueListeners.push(r);
|
|
115
115
|
const n = () => {
|
|
@@ -126,7 +126,7 @@ const O = class O {
|
|
|
126
126
|
i(this, "_setAndNotify", (e, t) => {
|
|
127
127
|
if (this._disposed) return;
|
|
128
128
|
const r = this._value, n = this.equals(r, e);
|
|
129
|
-
n || (this._value = e), (t || !n) && this._onValueListeners.forEach((
|
|
129
|
+
n || (this._value = e), (t || !n) && this._onValueListeners.forEach((o) => o(e, r));
|
|
130
130
|
});
|
|
131
131
|
/**
|
|
132
132
|
* @internal
|
|
@@ -212,10 +212,10 @@ const O = class O {
|
|
|
212
212
|
let r = t ?? this.get();
|
|
213
213
|
const n = new x(() => {
|
|
214
214
|
try {
|
|
215
|
-
const
|
|
216
|
-
return r = e(
|
|
217
|
-
} catch (
|
|
218
|
-
throw console.error("Error in Signal.filter:",
|
|
215
|
+
const o = this.get();
|
|
216
|
+
return r = e(o) ? o : r;
|
|
217
|
+
} catch (o) {
|
|
218
|
+
throw console.error("Error in Signal.filter:", o), o;
|
|
219
219
|
}
|
|
220
220
|
}, this.equals);
|
|
221
221
|
return this.setDerivative(n), n;
|
|
@@ -230,17 +230,17 @@ const O = class O {
|
|
|
230
230
|
* @param equals - Optional equality function to determine if two values are equal.
|
|
231
231
|
* @returns - A new Computed object with the mapped and filtered values.
|
|
232
232
|
*/
|
|
233
|
-
i(this, "filterMap", (e, t, r = (n,
|
|
233
|
+
i(this, "filterMap", (e, t, r = (n, o) => n === o) => {
|
|
234
234
|
let n = t;
|
|
235
|
-
const
|
|
235
|
+
const o = new x(() => {
|
|
236
236
|
try {
|
|
237
|
-
const
|
|
237
|
+
const l = this.get(), c = e(l);
|
|
238
238
|
return n = c ?? n;
|
|
239
|
-
} catch (
|
|
240
|
-
throw console.error("Error in Signal.filterMap:",
|
|
239
|
+
} catch (l) {
|
|
240
|
+
throw console.error("Error in Signal.filterMap:", l), l;
|
|
241
241
|
}
|
|
242
242
|
}, r);
|
|
243
|
-
return this.setDerivative(
|
|
243
|
+
return this.setDerivative(o), o;
|
|
244
244
|
});
|
|
245
245
|
/**
|
|
246
246
|
* Maps the values emitted by the signal to a new value asynchronously using the provided function.
|
|
@@ -255,25 +255,25 @@ const O = class O {
|
|
|
255
255
|
* @param equals - The equality function to compare the mapped values for equality.
|
|
256
256
|
* @returns A property that holds the mapped value and can be observed for changes.
|
|
257
257
|
*/
|
|
258
|
-
i(this, "mapAsync", (e, t, r, n = (
|
|
259
|
-
const
|
|
260
|
-
let
|
|
261
|
-
return
|
|
258
|
+
i(this, "mapAsync", (e, t, r, n = (o, l) => o === l) => {
|
|
259
|
+
const o = w(t, n);
|
|
260
|
+
let l = 0, c = new AbortController();
|
|
261
|
+
return o.onDispose(
|
|
262
262
|
this.on(async (a) => {
|
|
263
|
-
const u = ++
|
|
263
|
+
const u = ++l;
|
|
264
264
|
c.abort(), c = new AbortController();
|
|
265
265
|
try {
|
|
266
266
|
const h = await e(a, { abortSignal: c.signal });
|
|
267
|
-
u ===
|
|
267
|
+
u === l && o.set(h);
|
|
268
268
|
} catch (h) {
|
|
269
|
-
if (u ===
|
|
269
|
+
if (u === l)
|
|
270
270
|
if (r != null)
|
|
271
|
-
|
|
271
|
+
o.set(r(h));
|
|
272
272
|
else
|
|
273
273
|
throw h;
|
|
274
274
|
}
|
|
275
275
|
})
|
|
276
|
-
),
|
|
276
|
+
), o;
|
|
277
277
|
});
|
|
278
278
|
/**
|
|
279
279
|
* Maps the values of the signal using the provided function `fn`, and returns a new signal
|
|
@@ -363,14 +363,14 @@ const O = class O {
|
|
|
363
363
|
* @param equals - A function to compare two values of type O for equality. Defaults to strict equality (===).
|
|
364
364
|
* @returns - A Signal that represents the result of the Promise.
|
|
365
365
|
*/
|
|
366
|
-
i(O, "ofPromise", (e, t, r, n = (
|
|
367
|
-
const
|
|
368
|
-
return e.then((
|
|
369
|
-
r != null ?
|
|
366
|
+
i(O, "ofPromise", (e, t, r, n = (o, l) => o === l) => {
|
|
367
|
+
const o = new O(t, n);
|
|
368
|
+
return e.then((l) => o._setAndNotify(l, !1)).catch((l) => {
|
|
369
|
+
r != null ? o._setAndNotify(r(l), !1) : console.error(
|
|
370
370
|
"Unhandled promise rejection in Signal.ofPromise:",
|
|
371
|
-
|
|
371
|
+
l
|
|
372
372
|
);
|
|
373
|
-
}),
|
|
373
|
+
}), o;
|
|
374
374
|
}), /**
|
|
375
375
|
* Checks if a value is a Signal.
|
|
376
376
|
*
|
|
@@ -470,14 +470,14 @@ const W = class W extends d {
|
|
|
470
470
|
*/
|
|
471
471
|
i(this, "reducer", (t, ...r) => {
|
|
472
472
|
const n = this;
|
|
473
|
-
return function l
|
|
473
|
+
return function o(l) {
|
|
474
474
|
const c = n.value;
|
|
475
|
-
n.update((a) => t(a,
|
|
475
|
+
n.update((a) => t(a, l)), !n.equals(c, n.value) && r.forEach(
|
|
476
476
|
(a) => a({
|
|
477
477
|
previousState: c,
|
|
478
478
|
state: n.value,
|
|
479
|
-
action:
|
|
480
|
-
dispatch:
|
|
479
|
+
action: l,
|
|
480
|
+
dispatch: o
|
|
481
481
|
})
|
|
482
482
|
);
|
|
483
483
|
};
|
|
@@ -493,9 +493,9 @@ const W = class W extends d {
|
|
|
493
493
|
* Defaults to a strict equality check (===).
|
|
494
494
|
* @returns A Prop object representing the isomorphism.
|
|
495
495
|
*/
|
|
496
|
-
i(this, "iso", (t, r, n = (
|
|
497
|
-
const
|
|
498
|
-
return
|
|
496
|
+
i(this, "iso", (t, r, n = (o, l) => o === l) => {
|
|
497
|
+
const o = new W(t(this.get()), n);
|
|
498
|
+
return o.onDispose(this.on((l) => o.set(t(l)))), o.on((l) => this._setAndNotify(r(l), !1)), o;
|
|
499
499
|
});
|
|
500
500
|
/**
|
|
501
501
|
* Returns a `Prop` that represents the value at the specified key of the current value.
|
|
@@ -533,19 +533,19 @@ const z = (s, e, t = (r, n) => r === n) => {
|
|
|
533
533
|
return e.forEach((n) => n.setDerivative(r)), r;
|
|
534
534
|
}, je = (s, e, t = {}) => {
|
|
535
535
|
let r = t.once ? () => {
|
|
536
|
-
|
|
536
|
+
o(), s();
|
|
537
537
|
} : s;
|
|
538
538
|
if (t.skipInitial) {
|
|
539
|
-
let
|
|
539
|
+
let l = !1;
|
|
540
540
|
const c = r;
|
|
541
541
|
r = () => {
|
|
542
|
-
|
|
542
|
+
l ? c() : l = !0;
|
|
543
543
|
};
|
|
544
544
|
}
|
|
545
|
-
const n = z(r, e),
|
|
546
|
-
n.dispose(), t.abortSignal != null && t.abortSignal.removeEventListener("abort",
|
|
545
|
+
const n = z(r, e), o = () => {
|
|
546
|
+
n.dispose(), t.abortSignal != null && t.abortSignal.removeEventListener("abort", o);
|
|
547
547
|
};
|
|
548
|
-
return t.abortSignal != null && t.abortSignal.addEventListener("abort",
|
|
548
|
+
return t.abortSignal != null && t.abortSignal.addEventListener("abort", o), o;
|
|
549
549
|
}, w = (s, e = (t, r) => t === r) => new I(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.
|
|
@@ -662,12 +662,12 @@ const ae = ({
|
|
|
662
662
|
store: t,
|
|
663
663
|
serialize: r = JSON.stringify,
|
|
664
664
|
deserialize: n = JSON.parse,
|
|
665
|
-
equals:
|
|
666
|
-
onLoad:
|
|
665
|
+
equals: o = (c, a) => c === a,
|
|
666
|
+
onLoad: l = (c) => c
|
|
667
667
|
}) => {
|
|
668
668
|
const c = t.getItem(s), a = new I(
|
|
669
|
-
c != null ?
|
|
670
|
-
|
|
669
|
+
c != null ? l(n(c)) : typeof e == "function" ? e() : e,
|
|
670
|
+
o
|
|
671
671
|
);
|
|
672
672
|
return a.on((u) => {
|
|
673
673
|
t.setItem(s, r(u));
|
|
@@ -689,9 +689,9 @@ function oe(s) {
|
|
|
689
689
|
return typeof requestAnimationFrame == "function" ? requestAnimationFrame(s) : setTimeout(s, 0);
|
|
690
690
|
}
|
|
691
691
|
const Fe = (s, e, t, r) => {
|
|
692
|
-
const n = (r == null ? void 0 : r.duration) ?? 300,
|
|
692
|
+
const n = (r == null ? void 0 : r.duration) ?? 300, o = (r == null ? void 0 : r.easing) ?? ((S) => S), l = (r == null ? void 0 : r.equals) ?? ((S, $) => S === $);
|
|
693
693
|
let c = r == null ? void 0 : r.interpolate, a = s, u = e(), h = performance.now(), g = null, y = !0;
|
|
694
|
-
const p = new x(e,
|
|
694
|
+
const p = new x(e, l), m = w(s, l);
|
|
695
695
|
m.onDispose(() => {
|
|
696
696
|
g !== null && cancelAnimationFrame(g);
|
|
697
697
|
}), m.onDispose(p.dispose), t.forEach((S) => {
|
|
@@ -700,7 +700,7 @@ const Fe = (s, e, t, r) => {
|
|
|
700
700
|
const C = (S) => {
|
|
701
701
|
u = S, h = performance.now(), a = m.value, y && (y = !1, g = oe(ee));
|
|
702
702
|
}, ee = () => {
|
|
703
|
-
const $ = (performance.now() - h) / T.get(n), Me =
|
|
703
|
+
const $ = (performance.now() - h) / T.get(n), Me = o($);
|
|
704
704
|
c == null && (c = Re(a));
|
|
705
705
|
let te = c(a, u, Me);
|
|
706
706
|
$ >= 1 ? (y = !0, te = u) : g = oe(ee), m.set(te);
|
|
@@ -716,10 +716,10 @@ 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:
|
|
719
|
+
({ signals: o, literals: l }, [c, a]) => (d.is(a) ? o.push([c, a]) : l[c] = a, { signals: o, literals: l }),
|
|
720
720
|
{ signals: [], literals: {} }
|
|
721
|
-
), n = t.map(([,
|
|
722
|
-
return z(() => (t.forEach(([
|
|
721
|
+
), n = t.map(([, o]) => o);
|
|
722
|
+
return z(() => (t.forEach(([o, l]) => r[o] = l.value), e(r)), n);
|
|
723
723
|
}, ue = /* @__PURE__ */ new Set(["checked", "disabled", "hidden"]), he = /* @__PURE__ */ new Set(["selected"]), fe = /* @__PURE__ */ new Set([
|
|
724
724
|
"rowSpan",
|
|
725
725
|
"colSpan",
|
|
@@ -876,7 +876,8 @@ class L {
|
|
|
876
876
|
i(this, "getProvider", (e) => {
|
|
877
877
|
if (this.providers[e] === void 0)
|
|
878
878
|
throw new me(e);
|
|
879
|
-
|
|
879
|
+
const [t, r] = this.providers[e];
|
|
880
|
+
return { value: t, onUse: r };
|
|
880
881
|
});
|
|
881
882
|
i(this, "clear", (e) => {
|
|
882
883
|
e && (this.reference !== void 0 ? R(this.reference) : R(this.element));
|
|
@@ -907,13 +908,12 @@ class L {
|
|
|
907
908
|
* @param options - The options for the event listener.
|
|
908
909
|
* @returns A function to remove the event listener.
|
|
909
910
|
*/
|
|
910
|
-
i(this, "on", (e, t, r) =>
|
|
911
|
-
n
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
}));
|
|
911
|
+
i(this, "on", (e, t, r) => {
|
|
912
|
+
const n = (o) => t(o, this);
|
|
913
|
+
return this.element.addEventListener(e, n, r), (o) => {
|
|
914
|
+
o && this.element.removeEventListener(e, n, r);
|
|
915
|
+
};
|
|
916
|
+
});
|
|
917
917
|
/**
|
|
918
918
|
* Returns `true` if the context is a browser DOM context.
|
|
919
919
|
* @returns `true` if the context is a browser DOM context.
|
|
@@ -971,21 +971,21 @@ class L {
|
|
|
971
971
|
const Je = (s) => Symbol(s), Q = (s, e) => {
|
|
972
972
|
const t = s(e);
|
|
973
973
|
return (r = !0) => t(r);
|
|
974
|
-
}, Nt = (s, e, { doc: t, clear: r, disposeWithParent: n = !0, providers:
|
|
975
|
-
const
|
|
976
|
-
if (
|
|
974
|
+
}, Nt = (s, e, { doc: t, clear: r, disposeWithParent: n = !0, providers: o = {} } = {}) => {
|
|
975
|
+
const l = typeof e == "string" ? (t ?? document).querySelector(e) : e;
|
|
976
|
+
if (l === null)
|
|
977
977
|
throw new Ge(
|
|
978
978
|
`Cannot find element by selector for render: ${e}`
|
|
979
979
|
);
|
|
980
|
-
r !== !1 && (t ??
|
|
981
|
-
const c = Ue(
|
|
980
|
+
r !== !1 && (t ?? l.ownerDocument) != null && l.nodeType === 1 && (l.innerHTML = "");
|
|
981
|
+
const c = Ue(l), a = ge(l) ? void 0 : l, u = L.of(c, a, o), h = Q(s, u);
|
|
982
982
|
let g;
|
|
983
983
|
return n && (g = new MutationObserver((y) => {
|
|
984
984
|
var p;
|
|
985
985
|
(p = y[0]) == null || p.removedNodes.forEach((m) => {
|
|
986
|
-
m ===
|
|
986
|
+
m === l && (g == null || g.disconnect(), h(l.nodeType !== Node.ELEMENT_NODE));
|
|
987
987
|
});
|
|
988
|
-
}), g.observe(
|
|
988
|
+
}), g.observe(l.parentElement, {
|
|
989
989
|
childList: !0,
|
|
990
990
|
subtree: !1,
|
|
991
991
|
attributes: !1
|
|
@@ -999,10 +999,10 @@ const Je = (s) => Symbol(s), Q = (s, e) => {
|
|
|
999
999
|
} = {
|
|
1000
1000
|
selector: "body"
|
|
1001
1001
|
}) => {
|
|
1002
|
-
const n = T.toSignal(e).deriveProp(),
|
|
1002
|
+
const n = T.toSignal(e).deriveProp(), o = new Se(t, void 0), l = new P(o, void 0, { currentURL: n }, r);
|
|
1003
1003
|
return {
|
|
1004
|
-
clear: Q(s(),
|
|
1005
|
-
root:
|
|
1004
|
+
clear: Q(s(), l),
|
|
1005
|
+
root: o,
|
|
1006
1006
|
currentURL: n
|
|
1007
1007
|
};
|
|
1008
1008
|
};
|
|
@@ -1018,8 +1018,8 @@ class kt {
|
|
|
1018
1018
|
getAttribute: t,
|
|
1019
1019
|
setAttribute: r,
|
|
1020
1020
|
getClass: n,
|
|
1021
|
-
setClass:
|
|
1022
|
-
getStyles:
|
|
1021
|
+
setClass: o,
|
|
1022
|
+
getStyles: l,
|
|
1023
1023
|
setStyles: c,
|
|
1024
1024
|
appendHTML: a,
|
|
1025
1025
|
getInnerHTML: u,
|
|
@@ -1110,65 +1110,65 @@ class kt {
|
|
|
1110
1110
|
*/
|
|
1111
1111
|
i(this, "setFromRoot", (e, t) => {
|
|
1112
1112
|
e.getPortals().forEach((n) => {
|
|
1113
|
-
const
|
|
1114
|
-
for (const
|
|
1115
|
-
if (
|
|
1113
|
+
const o = typeof n.selector == "string" ? this.select(n.selector) : [n.selector];
|
|
1114
|
+
for (const l of o) {
|
|
1115
|
+
if (l == null)
|
|
1116
1116
|
throw new Error(
|
|
1117
1117
|
`Cannot find element by selector for render: ${n.selector}`
|
|
1118
1118
|
);
|
|
1119
|
-
if (n.hasChildren() && this.appendHTML(
|
|
1119
|
+
if (n.hasChildren() && this.appendHTML(l, n.contentToHTML(t)), n.hasInnerHTML()) {
|
|
1120
1120
|
if (t) {
|
|
1121
|
-
const c = this.getInnerHTML(
|
|
1122
|
-
c != null && this.setAttribute(
|
|
1121
|
+
const c = this.getInnerHTML(l);
|
|
1122
|
+
c != null && this.setAttribute(l, q, c);
|
|
1123
1123
|
}
|
|
1124
|
-
this.setInnerHTML(
|
|
1124
|
+
this.setInnerHTML(l, n.getInnerHTML());
|
|
1125
1125
|
}
|
|
1126
1126
|
if (n.hasInnerText()) {
|
|
1127
1127
|
if (t) {
|
|
1128
|
-
const c = this.getInnerText(
|
|
1129
|
-
c != null && this.setAttribute(
|
|
1128
|
+
const c = this.getInnerText(l);
|
|
1129
|
+
c != null && this.setAttribute(l, F, c);
|
|
1130
1130
|
}
|
|
1131
|
-
this.setInnerText(
|
|
1131
|
+
this.setInnerText(l, n.getInnerText());
|
|
1132
1132
|
}
|
|
1133
1133
|
if (n.hasClasses()) {
|
|
1134
1134
|
if (t) {
|
|
1135
|
-
const c = this.getClass(
|
|
1136
|
-
c != null && this.setAttribute(
|
|
1135
|
+
const c = this.getClass(l);
|
|
1136
|
+
c != null && this.setAttribute(l, V, c);
|
|
1137
1137
|
}
|
|
1138
|
-
this.setClass(
|
|
1138
|
+
this.setClass(l, n.getClasses().join(" "));
|
|
1139
1139
|
}
|
|
1140
1140
|
if (n.hasStyles()) {
|
|
1141
1141
|
if (t) {
|
|
1142
|
-
const c = this.getStyles(
|
|
1142
|
+
const c = this.getStyles(l);
|
|
1143
1143
|
Object.keys(c).length > 0 && this.setAttribute(
|
|
1144
|
-
|
|
1144
|
+
l,
|
|
1145
1145
|
j,
|
|
1146
1146
|
JSON.stringify(c)
|
|
1147
1147
|
);
|
|
1148
1148
|
}
|
|
1149
|
-
this.setStyles(
|
|
1149
|
+
this.setStyles(l, n.getStyles());
|
|
1150
1150
|
}
|
|
1151
1151
|
if (n.hasAttributes()) {
|
|
1152
1152
|
const c = n.getAttributes();
|
|
1153
1153
|
if (t) {
|
|
1154
1154
|
const a = [];
|
|
1155
1155
|
c.forEach(([u]) => {
|
|
1156
|
-
const h = this.getAttribute(
|
|
1156
|
+
const h = this.getAttribute(l, u);
|
|
1157
1157
|
h != null && a.push([u, h]);
|
|
1158
1158
|
}), a.length > 0 && this.setAttribute(
|
|
1159
|
-
|
|
1159
|
+
l,
|
|
1160
1160
|
B,
|
|
1161
1161
|
JSON.stringify(Object.fromEntries(a))
|
|
1162
1162
|
);
|
|
1163
1163
|
}
|
|
1164
1164
|
c.forEach(([a, u]) => {
|
|
1165
|
-
this.setAttribute(
|
|
1165
|
+
this.setAttribute(l, a, u);
|
|
1166
1166
|
});
|
|
1167
1167
|
}
|
|
1168
1168
|
}
|
|
1169
1169
|
});
|
|
1170
1170
|
});
|
|
1171
|
-
this.select = e, this.getAttribute = t, this.setAttribute = r, this.getClass = n, this.setClass =
|
|
1171
|
+
this.select = e, this.getAttribute = t, this.setAttribute = r, this.getClass = n, this.setClass = o, this.getStyles = l, this.setStyles = c, this.appendHTML = a, this.getInnerHTML = u, this.setInnerHTML = h, this.getInnerText = g, this.setInnerText = y;
|
|
1172
1172
|
}
|
|
1173
1173
|
}
|
|
1174
1174
|
const Xe = () => {
|
|
@@ -1259,17 +1259,17 @@ class Ae {
|
|
|
1259
1259
|
i(this, "click", () => {
|
|
1260
1260
|
this.trigger("click", {});
|
|
1261
1261
|
});
|
|
1262
|
-
i(this, "on", (e, t, r) => {
|
|
1263
|
-
var
|
|
1264
|
-
const
|
|
1265
|
-
|
|
1266
|
-
} : (
|
|
1267
|
-
|
|
1268
|
-
const
|
|
1269
|
-
const
|
|
1270
|
-
|
|
1262
|
+
i(this, "on", (e, t, r, n) => {
|
|
1263
|
+
var a;
|
|
1264
|
+
const o = (a = this.properties)[v] ?? (a[v] = {}), l = n != null && n.once ? (u) => {
|
|
1265
|
+
c(), t(u, r);
|
|
1266
|
+
} : (u) => t(u, r);
|
|
1267
|
+
o[e] = [...o[e] ?? [], l];
|
|
1268
|
+
const c = () => {
|
|
1269
|
+
const u = o[e] ?? [], h = u.indexOf(l);
|
|
1270
|
+
h !== -1 && (u.splice(h, 1), u.length === 0 ? (delete o[e], Object.keys(o).length === 0 && delete this.properties[v]) : o[e] = u, (n == null ? void 0 : n.signal) != null && n.signal.removeEventListener("abort", c));
|
|
1271
1271
|
};
|
|
1272
|
-
return (
|
|
1272
|
+
return (n == null ? void 0 : n.signal) != null && n.signal.addEventListener("abort", c), c;
|
|
1273
1273
|
});
|
|
1274
1274
|
i(this, "addClasses", (e) => {
|
|
1275
1275
|
var r;
|
|
@@ -1286,8 +1286,8 @@ class Ae {
|
|
|
1286
1286
|
return;
|
|
1287
1287
|
const t = (r = this.properties)[b] ?? (r[b] = []);
|
|
1288
1288
|
e.forEach((n) => {
|
|
1289
|
-
const
|
|
1290
|
-
|
|
1289
|
+
const o = t.indexOf(n);
|
|
1290
|
+
o !== -1 && t.splice(o, 1);
|
|
1291
1291
|
}), t.length === 0 && delete this.properties[b];
|
|
1292
1292
|
});
|
|
1293
1293
|
i(this, "getClasses", () => this.properties[b] ?? []);
|
|
@@ -1324,9 +1324,9 @@ class ct extends Ae {
|
|
|
1324
1324
|
i(this, "isPortal", () => !1);
|
|
1325
1325
|
i(this, "toHTML", (t = !1) => {
|
|
1326
1326
|
const r = this.children.map((a) => a.toHTML()).join(""), n = this.namespace ? ` xmlns="${this.namespace}"` : "";
|
|
1327
|
-
let
|
|
1328
|
-
const
|
|
1329
|
-
return ht.has(this.tagName) && r === "" ? `<${this.tagName}${n}${
|
|
1327
|
+
let o = null;
|
|
1328
|
+
const l = this.getVisibleAttributes().map(([a, u]) => a === "class" ? ` class="${u.join(" ")}"` : a === "style" ? typeof u == "string" ? ` style="${u}"` : ` style="${Object.entries(u).map(([h, g]) => `${h}: ${g};`).join(" ")}"` : ut.has(a) ? ` ${a}` : a === "innerHTML" ? (o = u, "") : a === "innerText" ? (o = lt(u), "") : ` ${a}="${ot(u)}"`).join(""), c = t ? ` ${ye}` : "";
|
|
1329
|
+
return ht.has(this.tagName) && r === "" ? `<${this.tagName}${n}${l}${c} />` : `<${this.tagName}${n}${l}${c}>${o ?? r}</${this.tagName}>`;
|
|
1330
1330
|
});
|
|
1331
1331
|
this.tagName = t, this.namespace = r;
|
|
1332
1332
|
}
|
|
@@ -1408,12 +1408,13 @@ class P {
|
|
|
1408
1408
|
i(this, "getProvider", (e) => {
|
|
1409
1409
|
if (this.providers[e] === void 0)
|
|
1410
1410
|
throw new me(e);
|
|
1411
|
-
|
|
1411
|
+
const [t, r] = this.providers[e];
|
|
1412
|
+
return { value: t, onUse: r };
|
|
1412
1413
|
});
|
|
1413
1414
|
i(this, "clear", (e) => {
|
|
1414
1415
|
e && (this.reference !== void 0 ? this.element.removeChild(this.reference) : this.element.remove());
|
|
1415
1416
|
});
|
|
1416
|
-
i(this, "on", (e, t) => this.element.on(e, t));
|
|
1417
|
+
i(this, "on", (e, t) => this.element.on(e, t, this));
|
|
1417
1418
|
i(this, "addClasses", (e) => this.element.addClasses(e));
|
|
1418
1419
|
i(this, "removeClasses", (e) => this.element.removeClasses(e));
|
|
1419
1420
|
i(this, "getClasses", () => this.element.getClasses());
|
|
@@ -1450,20 +1451,20 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1450
1451
|
}), dt = (s) => (e) => {
|
|
1451
1452
|
let t = [];
|
|
1452
1453
|
const r = s.on((n) => {
|
|
1453
|
-
e.removeClasses(t), t = (n ?? "").split(" ").filter((
|
|
1454
|
+
e.removeClasses(t), t = (n ?? "").split(" ").filter((o) => o.length > 0), e.addClasses(t);
|
|
1454
1455
|
});
|
|
1455
1456
|
return (n) => {
|
|
1456
1457
|
r(), n && e.removeClasses(t), t.length = 0;
|
|
1457
1458
|
};
|
|
1458
1459
|
}, H = (s, e) => (t) => {
|
|
1459
|
-
const { get: r, set: n } = t.makeAccessors(s),
|
|
1460
|
-
return n(e), (
|
|
1461
|
-
|
|
1460
|
+
const { get: r, set: n } = t.makeAccessors(s), o = r();
|
|
1461
|
+
return n(e), (l) => {
|
|
1462
|
+
l && n(o);
|
|
1462
1463
|
};
|
|
1463
1464
|
}, N = (s, e) => (t) => {
|
|
1464
|
-
const { get: r, set: n } = t.makeAccessors(s),
|
|
1465
|
+
const { get: r, set: n } = t.makeAccessors(s), o = r(), l = e.on(n);
|
|
1465
1466
|
return (c) => {
|
|
1466
|
-
|
|
1467
|
+
l(), c && n(o);
|
|
1467
1468
|
};
|
|
1468
1469
|
}, M = new Proxy(
|
|
1469
1470
|
{},
|
|
@@ -1574,14 +1575,14 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1574
1575
|
return s;
|
|
1575
1576
|
throw new Error(`Unknown type: '${typeof s}' for child: ${s}`);
|
|
1576
1577
|
}, we = (s, ...e) => (t) => {
|
|
1577
|
-
const r = t.makeChildElement(s, void 0), n = e.map((
|
|
1578
|
-
return (
|
|
1579
|
-
n.forEach((
|
|
1578
|
+
const r = t.makeChildElement(s, void 0), n = e.map((o) => f(o)(r));
|
|
1579
|
+
return (o) => {
|
|
1580
|
+
n.forEach((l) => l(!1)), r.clear(o);
|
|
1580
1581
|
};
|
|
1581
1582
|
}, Ce = (s, e, ...t) => (r) => {
|
|
1582
|
-
const n = r.makeChildElement(s, e),
|
|
1583
|
-
return (
|
|
1584
|
-
|
|
1583
|
+
const n = r.makeChildElement(s, e), o = t.map((l) => f(l)(n));
|
|
1584
|
+
return (l) => {
|
|
1585
|
+
o.forEach((c) => c(!1)), n.clear(l);
|
|
1585
1586
|
};
|
|
1586
1587
|
}, Bt = new Proxy(
|
|
1587
1588
|
{},
|
|
@@ -1626,28 +1627,28 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1626
1627
|
), ve = (s, e) => {
|
|
1627
1628
|
if (typeof e == "function")
|
|
1628
1629
|
return ve(s, { then: e });
|
|
1629
|
-
const t = e.pending != null ? f(e.pending()) : _, r = e.then, n = e.error != null ? (
|
|
1630
|
-
return (
|
|
1631
|
-
let
|
|
1632
|
-
const c = s(), a =
|
|
1630
|
+
const t = e.pending != null ? f(e.pending()) : _, r = e.then, n = e.error != null ? (o) => f(e.error(o)) : () => _;
|
|
1631
|
+
return (o) => {
|
|
1632
|
+
let l = !0;
|
|
1633
|
+
const c = s(), a = o.makeRef();
|
|
1633
1634
|
let u = f(t)(a);
|
|
1634
1635
|
return c.then(
|
|
1635
1636
|
(h) => {
|
|
1636
|
-
|
|
1637
|
+
l && (u(!0), u = f(r(h))(a));
|
|
1637
1638
|
},
|
|
1638
1639
|
(h) => {
|
|
1639
|
-
|
|
1640
|
+
l && (u(!0), u = f(n(h))(a));
|
|
1640
1641
|
}
|
|
1641
1642
|
), (h) => {
|
|
1642
|
-
|
|
1643
|
+
l = !1, u(h), a.clear(h);
|
|
1643
1644
|
};
|
|
1644
1645
|
};
|
|
1645
|
-
}, Gt = (s, e) => ve(() => s, e), xe = (s, e, t) => (r) => r.on(s, e, t), mt = (s) => xe("click", (e) => {
|
|
1646
|
+
}, Gt = (s, e) => ve(() => s, e), xe = (s, e, t) => (r) => r.on(s, e, t), mt = (s) => xe("click", (e, t) => {
|
|
1646
1647
|
e.preventDefault();
|
|
1647
|
-
const
|
|
1648
|
+
const r = e.target;
|
|
1648
1649
|
setTimeout(() => {
|
|
1649
|
-
const
|
|
1650
|
-
|
|
1650
|
+
const n = r.ownerDocument != null ? r == null ? void 0 : r.checked : void 0;
|
|
1651
|
+
n != null && s(!n, t);
|
|
1651
1652
|
}, 0);
|
|
1652
1653
|
}), J = new Proxy(
|
|
1653
1654
|
{},
|
|
@@ -1691,12 +1692,12 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1691
1692
|
const t = e.target;
|
|
1692
1693
|
if (t.value === "")
|
|
1693
1694
|
return;
|
|
1694
|
-
const r = t.value.split("T"), n = r[0].split("-"),
|
|
1695
|
+
const r = t.value.split("T"), n = r[0].split("-"), o = new Date(
|
|
1695
1696
|
Number(n[0]),
|
|
1696
1697
|
Number(n[1]) - 1,
|
|
1697
1698
|
Number(n[2])
|
|
1698
|
-
),
|
|
1699
|
-
|
|
1699
|
+
), l = r[1].split(":");
|
|
1700
|
+
o.setHours(Number(l[0])), o.setMinutes(Number(l[1])), o.setSeconds(Number(l[2])), s(o);
|
|
1700
1701
|
}, Yt = (s) => (e) => {
|
|
1701
1702
|
const t = e.target;
|
|
1702
1703
|
if (t.value === "") {
|
|
@@ -1708,12 +1709,12 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1708
1709
|
s(null);
|
|
1709
1710
|
return;
|
|
1710
1711
|
}
|
|
1711
|
-
const n = r[0].split("-"),
|
|
1712
|
+
const n = r[0].split("-"), o = new Date(
|
|
1712
1713
|
Number(n[0]),
|
|
1713
1714
|
Number(n[1]) - 1,
|
|
1714
1715
|
Number(n[2])
|
|
1715
|
-
),
|
|
1716
|
-
|
|
1716
|
+
), l = r[1].split(":");
|
|
1717
|
+
o.setHours(Number(l[0] ?? 0)), o.setMinutes(Number(l[1] ?? 0)), o.setSeconds(Number(l[2] ?? 0)), s(o);
|
|
1717
1718
|
}, zt = (s) => (e) => {
|
|
1718
1719
|
const t = e.target;
|
|
1719
1720
|
s(t.checked);
|
|
@@ -1727,18 +1728,18 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1727
1728
|
if (d.is(s))
|
|
1728
1729
|
return (r) => {
|
|
1729
1730
|
const n = r.makeRef();
|
|
1730
|
-
let
|
|
1731
|
+
let o, l;
|
|
1731
1732
|
const c = s.map((h) => Object.keys(h)[0]);
|
|
1732
1733
|
let a;
|
|
1733
1734
|
const u = c.on((h) => {
|
|
1734
1735
|
if (h !== a) {
|
|
1735
|
-
a = h,
|
|
1736
|
-
const g = e[h](
|
|
1737
|
-
|
|
1736
|
+
a = h, l == null || l.dispose(), o == null || o(!0), l = s.map((y) => y[h]);
|
|
1737
|
+
const g = e[h](l);
|
|
1738
|
+
o = f(g)(n);
|
|
1738
1739
|
}
|
|
1739
1740
|
});
|
|
1740
1741
|
return (h) => {
|
|
1741
|
-
|
|
1742
|
+
l == null || l.dispose(), u(), n.clear(h), o == null || o(h);
|
|
1742
1743
|
};
|
|
1743
1744
|
};
|
|
1744
1745
|
const t = Object.keys(s)[0];
|
|
@@ -1756,7 +1757,7 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1756
1757
|
), cs = (s, e = {}) => (t) => {
|
|
1757
1758
|
const r = (e == null ? void 0 : e.firstSeparator) ?? s, n = (e == null ? void 0 : e.lastSeparator) ?? s;
|
|
1758
1759
|
return St(
|
|
1759
|
-
t.map((
|
|
1760
|
+
t.map((o) => o.isFirst ? "first" : o.isLast ? "last" : "other"),
|
|
1760
1761
|
{
|
|
1761
1762
|
first: r,
|
|
1762
1763
|
last: n,
|
|
@@ -1769,16 +1770,16 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1769
1770
|
if (d.is(s)) {
|
|
1770
1771
|
const r = s;
|
|
1771
1772
|
return (n) => {
|
|
1772
|
-
const
|
|
1773
|
-
let
|
|
1773
|
+
const o = n.makeRef();
|
|
1774
|
+
let l = () => {
|
|
1774
1775
|
}, c = !1, a = null;
|
|
1775
1776
|
const u = r.on((h) => {
|
|
1776
|
-
h == null ? (
|
|
1777
|
-
|
|
1777
|
+
h == null ? (l(!0), l = f((t == null ? void 0 : t()) ?? _)(o), c = !1, a == null || a.dispose(), a = null) : (a == null ? a = w(h) : a.value = h, c || (l(!0), l = f(e(a))(
|
|
1778
|
+
o
|
|
1778
1779
|
), c = !0));
|
|
1779
1780
|
});
|
|
1780
1781
|
return (h) => {
|
|
1781
|
-
a == null || a.dispose(), u(),
|
|
1782
|
+
a == null || a.dispose(), u(), l == null || l(h), o.clear(h);
|
|
1782
1783
|
};
|
|
1783
1784
|
};
|
|
1784
1785
|
} else {
|
|
@@ -1797,17 +1798,17 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1797
1798
|
return (t != null ? f(t == null ? void 0 : t()) : _)(
|
|
1798
1799
|
n
|
|
1799
1800
|
);
|
|
1800
|
-
const
|
|
1801
|
+
const l = s.map(() => null), c = s.map(
|
|
1801
1802
|
(p) => d.is(p) ? p.value != null : p != null
|
|
1802
1803
|
);
|
|
1803
1804
|
let a = null;
|
|
1804
1805
|
const u = w(c.every((p) => p)), h = (p, m) => {
|
|
1805
1806
|
if (p.value != null) {
|
|
1806
|
-
if (
|
|
1807
|
+
if (l[m] == null) {
|
|
1807
1808
|
const C = w(p.value);
|
|
1808
|
-
|
|
1809
|
+
l[m] = C;
|
|
1809
1810
|
} else
|
|
1810
|
-
|
|
1811
|
+
l[m].value = p.value;
|
|
1811
1812
|
c[m] = !0;
|
|
1812
1813
|
} else
|
|
1813
1814
|
c[m] = !1;
|
|
@@ -1816,7 +1817,7 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1816
1817
|
const y = s.map((p, m) => {
|
|
1817
1818
|
if (!d.is(p)) {
|
|
1818
1819
|
const C = w(p);
|
|
1819
|
-
return
|
|
1820
|
+
return l[m] = C, () => {
|
|
1820
1821
|
};
|
|
1821
1822
|
}
|
|
1822
1823
|
return p.on(() => {
|
|
@@ -1824,9 +1825,9 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1824
1825
|
});
|
|
1825
1826
|
});
|
|
1826
1827
|
return u.on((p) => {
|
|
1827
|
-
a == null || a(!0), a = null, p ? a = f(e(...
|
|
1828
|
+
a == null || a(!0), a = null, p ? a = f(e(...l))(n) : a = f((t == null ? void 0 : t()) ?? _)(n);
|
|
1828
1829
|
}), (p) => {
|
|
1829
|
-
|
|
1830
|
+
l.forEach((m) => m == null ? void 0 : m.dispose()), u.dispose(), y.forEach((m) => m()), a == null || a(p), n.clear(p);
|
|
1830
1831
|
};
|
|
1831
1832
|
}, Z = (...s) => (e) => (t) => s.forEach((r) => r(t, e)), Pe = (s, e, t) => _t(
|
|
1832
1833
|
T.map(s, (r) => r ? !0 : null),
|
|
@@ -1839,7 +1840,7 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1839
1840
|
), De = (s, e, t) => t != null ? De(s, (r) => {
|
|
1840
1841
|
const n = new Y(
|
|
1841
1842
|
r.index,
|
|
1842
|
-
r.total.map((
|
|
1843
|
+
r.total.map((o) => o - 1)
|
|
1843
1844
|
);
|
|
1844
1845
|
return A(
|
|
1845
1846
|
Z(n.dispose),
|
|
@@ -1851,34 +1852,34 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1851
1852
|
)
|
|
1852
1853
|
);
|
|
1853
1854
|
}) : d.is(s) ? (r) => {
|
|
1854
|
-
const n = r.makeRef(),
|
|
1855
|
-
const a =
|
|
1855
|
+
const n = r.makeRef(), o = [], l = s.on((c) => {
|
|
1856
|
+
const a = o.splice(c);
|
|
1856
1857
|
for (const u of a)
|
|
1857
1858
|
u(!0);
|
|
1858
|
-
for (let u =
|
|
1859
|
+
for (let u = o.length; u < c; u++) {
|
|
1859
1860
|
const h = new Y(u, s);
|
|
1860
|
-
|
|
1861
|
+
o.push(f(e(h))(n));
|
|
1861
1862
|
}
|
|
1862
1863
|
});
|
|
1863
1864
|
return (c) => {
|
|
1864
|
-
|
|
1865
|
-
for (const a of
|
|
1865
|
+
l();
|
|
1866
|
+
for (const a of o)
|
|
1866
1867
|
a(c);
|
|
1867
|
-
|
|
1868
|
+
o.length = 0, n.clear(c);
|
|
1868
1869
|
};
|
|
1869
1870
|
} : A(
|
|
1870
1871
|
...Array.from({ length: s }, (r, n) => n).map(
|
|
1871
1872
|
(r) => f(e(new Y(r, U(s))))
|
|
1872
1873
|
)
|
|
1873
1874
|
), fs = (s, e, t) => {
|
|
1874
|
-
const r = T.map(s, (
|
|
1875
|
+
const r = T.map(s, (o) => o.length), n = T.toSignal(s);
|
|
1875
1876
|
return De(
|
|
1876
1877
|
r,
|
|
1877
|
-
(
|
|
1878
|
-
const
|
|
1878
|
+
(o) => {
|
|
1879
|
+
const l = n.map((c) => c[o.index]);
|
|
1879
1880
|
return A(
|
|
1880
|
-
Z(
|
|
1881
|
-
f(e(
|
|
1881
|
+
Z(l.dispose),
|
|
1882
|
+
f(e(l, o))
|
|
1882
1883
|
);
|
|
1883
1884
|
},
|
|
1884
1885
|
t
|
|
@@ -1889,13 +1890,13 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1889
1890
|
return (r) => {
|
|
1890
1891
|
r = r.makeRef();
|
|
1891
1892
|
const n = t.map((c) => f(e(c)));
|
|
1892
|
-
let
|
|
1893
|
+
let o = () => {
|
|
1893
1894
|
};
|
|
1894
|
-
const
|
|
1895
|
-
|
|
1895
|
+
const l = n.on((c) => {
|
|
1896
|
+
o(!0), o = c(r);
|
|
1896
1897
|
});
|
|
1897
1898
|
return (c) => {
|
|
1898
|
-
|
|
1899
|
+
l(), o(c);
|
|
1899
1900
|
};
|
|
1900
1901
|
};
|
|
1901
1902
|
}
|
|
@@ -1921,15 +1922,15 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1921
1922
|
};
|
|
1922
1923
|
if (k.has(s))
|
|
1923
1924
|
throw new Error(`Probe already exists: ${s.description}`);
|
|
1924
|
-
const n = setTimeout(() => r("timeout"), t),
|
|
1925
|
-
return k.set(s,
|
|
1925
|
+
const n = setTimeout(() => r("timeout"), t), o = { counter: 0, timeoutId: n };
|
|
1926
|
+
return k.set(s, o), {
|
|
1926
1927
|
value: () => {
|
|
1927
1928
|
clearTimeout(n);
|
|
1928
1929
|
const c = k.get(s);
|
|
1929
1930
|
c != null && --c.counter === 0 && r("resolved");
|
|
1930
1931
|
},
|
|
1931
1932
|
dispose: () => r("disposed"),
|
|
1932
|
-
onUse: () =>
|
|
1933
|
+
onUse: () => o.counter++
|
|
1933
1934
|
};
|
|
1934
1935
|
}
|
|
1935
1936
|
}), ms = Et(Symbol("GlobalProbe")), wt = (s, e) => (t) => {
|
|
@@ -1983,20 +1984,20 @@ const ut = /* @__PURE__ */ new Set([
|
|
|
1983
1984
|
function n(c) {
|
|
1984
1985
|
t = c;
|
|
1985
1986
|
}
|
|
1986
|
-
const
|
|
1987
|
+
const o = [], l = s({
|
|
1987
1988
|
use: ({ mark: c }) => {
|
|
1988
|
-
const
|
|
1989
|
+
const { value: a, onUse: u } = r().getProvider(c);
|
|
1989
1990
|
return u == null || u(), a;
|
|
1990
1991
|
},
|
|
1991
1992
|
set: ({ mark: c, create: a }, u) => {
|
|
1992
1993
|
const { value: h, dispose: g, onUse: y } = a(u, r());
|
|
1993
|
-
|
|
1994
|
+
o.push(g), n(r().setProvider(c, h, y));
|
|
1994
1995
|
}
|
|
1995
1996
|
});
|
|
1996
|
-
return
|
|
1997
|
+
return l == null ? () => {
|
|
1997
1998
|
} : A(
|
|
1998
|
-
f(
|
|
1999
|
-
Z(() =>
|
|
1999
|
+
f(l),
|
|
2000
|
+
Z(() => o.forEach((c) => c()))
|
|
2000
2001
|
)(r());
|
|
2001
2002
|
}, 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 }) => {
|
|
2002
2003
|
const r = s.map(t);
|
package/package.json
CHANGED
package/renderable/on.d.ts
CHANGED
|
@@ -1,102 +1,103 @@
|
|
|
1
1
|
import { Renderable } from '../types/domain';
|
|
2
|
+
import { DOMContext } from '../dom/dom-context';
|
|
2
3
|
/**
|
|
3
4
|
* Attaches an event handler to the 'click' event that triggers when a checkbox is checked or unchecked.
|
|
4
5
|
* @param fn - The callback function to be executed when the checkbox is clicked.
|
|
5
6
|
* @alpha
|
|
6
7
|
*/
|
|
7
|
-
export declare const OnChecked: (fn: (event: boolean) => void) => Renderable;
|
|
8
|
+
export declare const OnChecked: (fn: (event: boolean, ctx: DOMContext) => void) => Renderable;
|
|
8
9
|
/**
|
|
9
10
|
* Represents a collection of HTML event handlers that can be attached to an element.
|
|
10
11
|
* @public
|
|
11
12
|
*/
|
|
12
13
|
export declare const on: {
|
|
13
|
-
abort: (handler: (event: Event) => void) => Renderable;
|
|
14
|
-
animationcancel: (handler: (event: AnimationEvent) => void) => Renderable;
|
|
15
|
-
animationend: (handler: (event: AnimationEvent) => void) => Renderable;
|
|
16
|
-
animationiteration: (handler: (event: AnimationEvent) => void) => Renderable;
|
|
17
|
-
animationstart: (handler: (event: AnimationEvent) => void) => Renderable;
|
|
18
|
-
auxclick: (handler: (event: MouseEvent) => void) => Renderable;
|
|
19
|
-
blur: (handler: (event: FocusEvent) => void) => Renderable;
|
|
20
|
-
cancel: (handler: (event: Event) => void) => Renderable;
|
|
21
|
-
canplay: (handler: (event: Event) => void) => Renderable;
|
|
22
|
-
canplaythrough: (handler: (event: Event) => void) => Renderable;
|
|
23
|
-
change: (handler: (event: Event) => void) => Renderable;
|
|
24
|
-
click: (handler: (event: MouseEvent) => void) => Renderable;
|
|
25
|
-
close: (handler: (event: Event) => void) => Renderable;
|
|
26
|
-
contextmenu: (handler: (event: MouseEvent) => void) => Renderable;
|
|
27
|
-
cuechange: (handler: (event: Event) => void) => Renderable;
|
|
28
|
-
dblclick: (handler: (event: MouseEvent) => void) => Renderable;
|
|
29
|
-
drag: (handler: (event: DragEvent) => void) => Renderable;
|
|
30
|
-
dragend: (handler: (event: DragEvent) => void) => Renderable;
|
|
31
|
-
dragenter: (handler: (event: DragEvent) => void) => Renderable;
|
|
32
|
-
dragexit: (handler: (event: Event) => void) => Renderable;
|
|
33
|
-
dragleave: (handler: (event: DragEvent) => void) => Renderable;
|
|
34
|
-
dragover: (handler: (event: DragEvent) => void) => Renderable;
|
|
35
|
-
dragstart: (handler: (event: DragEvent) => void) => Renderable;
|
|
36
|
-
drop: (handler: (event: DragEvent) => void) => Renderable;
|
|
37
|
-
durationchange: (handler: (event: Event) => void) => Renderable;
|
|
38
|
-
emptied: (handler: (event: Event) => void) => Renderable;
|
|
39
|
-
ended: (handler: (event: Event) => void) => Renderable;
|
|
40
|
-
error: (handler: (event: ErrorEvent) => void) => Renderable;
|
|
41
|
-
focus: (handler: (event: FocusEvent) => void) => Renderable;
|
|
42
|
-
focusin: (handler: (event: FocusEvent) => void) => Renderable;
|
|
43
|
-
focusout: (handler: (event: FocusEvent) => void) => Renderable;
|
|
44
|
-
gotpointercapture: (handler: (event: PointerEvent) => void) => Renderable;
|
|
45
|
-
input: (handler: (event: Event) => void) => Renderable;
|
|
46
|
-
invalid: (handler: (event: Event) => void) => Renderable;
|
|
47
|
-
keydown: (handler: (event: KeyboardEvent) => void) => Renderable;
|
|
48
|
-
keypress: (handler: (event: KeyboardEvent) => void) => Renderable;
|
|
49
|
-
keyup: (handler: (event: KeyboardEvent) => void) => Renderable;
|
|
50
|
-
load: (handler: (event: Event) => void) => Renderable;
|
|
51
|
-
loadeddata: (handler: (event: Event) => void) => Renderable;
|
|
52
|
-
loadedmetadata: (handler: (event: Event) => void) => Renderable;
|
|
53
|
-
loadend: (handler: (event: ProgressEvent<EventTarget
|
|
54
|
-
loadstart: (handler: (event: ProgressEvent<EventTarget
|
|
55
|
-
lostpointercapture: (handler: (event: PointerEvent) => void) => Renderable;
|
|
56
|
-
mousedown: (handler: (event: MouseEvent) => void) => Renderable;
|
|
57
|
-
mouseenter: (handler: (event: MouseEvent) => void) => Renderable;
|
|
58
|
-
mouseleave: (handler: (event: MouseEvent) => void) => Renderable;
|
|
59
|
-
mousemove: (handler: (event: MouseEvent) => void) => Renderable;
|
|
60
|
-
mouseout: (handler: (event: MouseEvent) => void) => Renderable;
|
|
61
|
-
mouseover: (handler: (event: MouseEvent) => void) => Renderable;
|
|
62
|
-
mouseup: (handler: (event: MouseEvent) => void) => Renderable;
|
|
63
|
-
pause: (handler: (event: Event) => void) => Renderable;
|
|
64
|
-
play: (handler: (event: Event) => void) => Renderable;
|
|
65
|
-
playing: (handler: (event: Event) => void) => Renderable;
|
|
66
|
-
pointercancel: (handler: (event: PointerEvent) => void) => Renderable;
|
|
67
|
-
pointerdown: (handler: (event: PointerEvent) => void) => Renderable;
|
|
68
|
-
pointerenter: (handler: (event: PointerEvent) => void) => Renderable;
|
|
69
|
-
pointerleave: (handler: (event: PointerEvent) => void) => Renderable;
|
|
70
|
-
pointermove: (handler: (event: PointerEvent) => void) => Renderable;
|
|
71
|
-
pointerout: (handler: (event: PointerEvent) => void) => Renderable;
|
|
72
|
-
pointerover: (handler: (event: PointerEvent) => void) => Renderable;
|
|
73
|
-
pointerup: (handler: (event: PointerEvent) => void) => Renderable;
|
|
74
|
-
progress: (handler: (event: ProgressEvent<EventTarget
|
|
75
|
-
ratechange: (handler: (event: Event) => void) => Renderable;
|
|
76
|
-
reset: (handler: (event: Event) => void) => Renderable;
|
|
77
|
-
resize: (handler: (event: UIEvent) => void) => Renderable;
|
|
78
|
-
scroll: (handler: (event: Event) => void) => Renderable;
|
|
79
|
-
securitypolicyviolation: (handler: (event: SecurityPolicyViolationEvent) => void) => Renderable;
|
|
80
|
-
seeked: (handler: (event: Event) => void) => Renderable;
|
|
81
|
-
seeking: (handler: (event: Event) => void) => Renderable;
|
|
82
|
-
select: (handler: (event: Event) => void) => Renderable;
|
|
83
|
-
selectionchange: (handler: (event: Event) => void) => Renderable;
|
|
84
|
-
selectstart: (handler: (event: Event) => void) => Renderable;
|
|
85
|
-
stalled: (handler: (event: Event) => void) => Renderable;
|
|
86
|
-
submit: (handler: (event: Event) => void) => Renderable;
|
|
87
|
-
suspend: (handler: (event: Event) => void) => Renderable;
|
|
88
|
-
timeupdate: (handler: (event: Event) => void) => Renderable;
|
|
89
|
-
toggle: (handler: (event: Event) => void) => Renderable;
|
|
90
|
-
touchcancel: (handler: (event: TouchEvent) => void) => Renderable;
|
|
91
|
-
touchend: (handler: (event: TouchEvent) => void) => Renderable;
|
|
92
|
-
touchmove: (handler: (event: TouchEvent) => void) => Renderable;
|
|
93
|
-
touchstart: (handler: (event: TouchEvent) => void) => Renderable;
|
|
94
|
-
transitioncancel: (handler: (event: TransitionEvent) => void) => Renderable;
|
|
95
|
-
transitionend: (handler: (event: TransitionEvent) => void) => Renderable;
|
|
96
|
-
transitionrun: (handler: (event: TransitionEvent) => void) => Renderable;
|
|
97
|
-
transitionstart: (handler: (event: TransitionEvent) => void) => Renderable;
|
|
98
|
-
volumechange: (handler: (event: Event) => void) => Renderable;
|
|
99
|
-
waiting: (handler: (event: Event) => void) => Renderable;
|
|
14
|
+
abort: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
15
|
+
animationcancel: (handler: (event: AnimationEvent, ctx: DOMContext) => void) => Renderable;
|
|
16
|
+
animationend: (handler: (event: AnimationEvent, ctx: DOMContext) => void) => Renderable;
|
|
17
|
+
animationiteration: (handler: (event: AnimationEvent, ctx: DOMContext) => void) => Renderable;
|
|
18
|
+
animationstart: (handler: (event: AnimationEvent, ctx: DOMContext) => void) => Renderable;
|
|
19
|
+
auxclick: (handler: (event: MouseEvent, ctx: DOMContext) => void) => Renderable;
|
|
20
|
+
blur: (handler: (event: FocusEvent, ctx: DOMContext) => void) => Renderable;
|
|
21
|
+
cancel: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
22
|
+
canplay: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
23
|
+
canplaythrough: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
24
|
+
change: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
25
|
+
click: (handler: (event: MouseEvent, ctx: DOMContext) => void) => Renderable;
|
|
26
|
+
close: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
27
|
+
contextmenu: (handler: (event: MouseEvent, ctx: DOMContext) => void) => Renderable;
|
|
28
|
+
cuechange: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
29
|
+
dblclick: (handler: (event: MouseEvent, ctx: DOMContext) => void) => Renderable;
|
|
30
|
+
drag: (handler: (event: DragEvent, ctx: DOMContext) => void) => Renderable;
|
|
31
|
+
dragend: (handler: (event: DragEvent, ctx: DOMContext) => void) => Renderable;
|
|
32
|
+
dragenter: (handler: (event: DragEvent, ctx: DOMContext) => void) => Renderable;
|
|
33
|
+
dragexit: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
34
|
+
dragleave: (handler: (event: DragEvent, ctx: DOMContext) => void) => Renderable;
|
|
35
|
+
dragover: (handler: (event: DragEvent, ctx: DOMContext) => void) => Renderable;
|
|
36
|
+
dragstart: (handler: (event: DragEvent, ctx: DOMContext) => void) => Renderable;
|
|
37
|
+
drop: (handler: (event: DragEvent, ctx: DOMContext) => void) => Renderable;
|
|
38
|
+
durationchange: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
39
|
+
emptied: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
40
|
+
ended: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
41
|
+
error: (handler: (event: ErrorEvent, ctx: DOMContext) => void) => Renderable;
|
|
42
|
+
focus: (handler: (event: FocusEvent, ctx: DOMContext) => void) => Renderable;
|
|
43
|
+
focusin: (handler: (event: FocusEvent, ctx: DOMContext) => void) => Renderable;
|
|
44
|
+
focusout: (handler: (event: FocusEvent, ctx: DOMContext) => void) => Renderable;
|
|
45
|
+
gotpointercapture: (handler: (event: PointerEvent, ctx: DOMContext) => void) => Renderable;
|
|
46
|
+
input: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
47
|
+
invalid: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
48
|
+
keydown: (handler: (event: KeyboardEvent, ctx: DOMContext) => void) => Renderable;
|
|
49
|
+
keypress: (handler: (event: KeyboardEvent, ctx: DOMContext) => void) => Renderable;
|
|
50
|
+
keyup: (handler: (event: KeyboardEvent, ctx: DOMContext) => void) => Renderable;
|
|
51
|
+
load: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
52
|
+
loadeddata: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
53
|
+
loadedmetadata: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
54
|
+
loadend: (handler: (event: ProgressEvent<EventTarget>, ctx: DOMContext) => void) => Renderable;
|
|
55
|
+
loadstart: (handler: (event: ProgressEvent<EventTarget>, ctx: DOMContext) => void) => Renderable;
|
|
56
|
+
lostpointercapture: (handler: (event: PointerEvent, ctx: DOMContext) => void) => Renderable;
|
|
57
|
+
mousedown: (handler: (event: MouseEvent, ctx: DOMContext) => void) => Renderable;
|
|
58
|
+
mouseenter: (handler: (event: MouseEvent, ctx: DOMContext) => void) => Renderable;
|
|
59
|
+
mouseleave: (handler: (event: MouseEvent, ctx: DOMContext) => void) => Renderable;
|
|
60
|
+
mousemove: (handler: (event: MouseEvent, ctx: DOMContext) => void) => Renderable;
|
|
61
|
+
mouseout: (handler: (event: MouseEvent, ctx: DOMContext) => void) => Renderable;
|
|
62
|
+
mouseover: (handler: (event: MouseEvent, ctx: DOMContext) => void) => Renderable;
|
|
63
|
+
mouseup: (handler: (event: MouseEvent, ctx: DOMContext) => void) => Renderable;
|
|
64
|
+
pause: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
65
|
+
play: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
66
|
+
playing: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
67
|
+
pointercancel: (handler: (event: PointerEvent, ctx: DOMContext) => void) => Renderable;
|
|
68
|
+
pointerdown: (handler: (event: PointerEvent, ctx: DOMContext) => void) => Renderable;
|
|
69
|
+
pointerenter: (handler: (event: PointerEvent, ctx: DOMContext) => void) => Renderable;
|
|
70
|
+
pointerleave: (handler: (event: PointerEvent, ctx: DOMContext) => void) => Renderable;
|
|
71
|
+
pointermove: (handler: (event: PointerEvent, ctx: DOMContext) => void) => Renderable;
|
|
72
|
+
pointerout: (handler: (event: PointerEvent, ctx: DOMContext) => void) => Renderable;
|
|
73
|
+
pointerover: (handler: (event: PointerEvent, ctx: DOMContext) => void) => Renderable;
|
|
74
|
+
pointerup: (handler: (event: PointerEvent, ctx: DOMContext) => void) => Renderable;
|
|
75
|
+
progress: (handler: (event: ProgressEvent<EventTarget>, ctx: DOMContext) => void) => Renderable;
|
|
76
|
+
ratechange: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
77
|
+
reset: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
78
|
+
resize: (handler: (event: UIEvent, ctx: DOMContext) => void) => Renderable;
|
|
79
|
+
scroll: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
80
|
+
securitypolicyviolation: (handler: (event: SecurityPolicyViolationEvent, ctx: DOMContext) => void) => Renderable;
|
|
81
|
+
seeked: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
82
|
+
seeking: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
83
|
+
select: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
84
|
+
selectionchange: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
85
|
+
selectstart: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
86
|
+
stalled: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
87
|
+
submit: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
88
|
+
suspend: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
89
|
+
timeupdate: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
90
|
+
toggle: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
91
|
+
touchcancel: (handler: (event: TouchEvent, ctx: DOMContext) => void) => Renderable;
|
|
92
|
+
touchend: (handler: (event: TouchEvent, ctx: DOMContext) => void) => Renderable;
|
|
93
|
+
touchmove: (handler: (event: TouchEvent, ctx: DOMContext) => void) => Renderable;
|
|
94
|
+
touchstart: (handler: (event: TouchEvent, ctx: DOMContext) => void) => Renderable;
|
|
95
|
+
transitioncancel: (handler: (event: TransitionEvent, ctx: DOMContext) => void) => Renderable;
|
|
96
|
+
transitionend: (handler: (event: TransitionEvent, ctx: DOMContext) => void) => Renderable;
|
|
97
|
+
transitionrun: (handler: (event: TransitionEvent, ctx: DOMContext) => void) => Renderable;
|
|
98
|
+
transitionstart: (handler: (event: TransitionEvent, ctx: DOMContext) => void) => Renderable;
|
|
99
|
+
volumechange: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
100
|
+
waiting: (handler: (event: Event, ctx: DOMContext) => void) => Renderable;
|
|
100
101
|
};
|
|
101
102
|
/**
|
|
102
103
|
* Creates an event handler that emits the value of an HTMLInputElement.
|