subay 0.0.10 → 0.0.12

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.
@@ -121,7 +121,7 @@
121
121
  <script type="importmap">
122
122
  {
123
123
  "imports": {
124
- "subay": "../lib/index.js"
124
+ "subay": "../lib/index.dev.js"
125
125
  }
126
126
  }
127
127
  </script>
package/lib/dev.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ import { cleanup, isComputed, isListening, isObservable, isReactive, root, sample, subscribe, transaction, unsubscribe } from './s.js';
2
+ export declare const S: (...args: any[]) => any;
3
+ export declare const o: (...args: any[]) => any;
4
+ export declare const observable: (...args: any[]) => any;
5
+ export declare const computed: (...args: any[]) => any;
6
+ export { cleanup, isComputed, isListening, isObservable, isReactive, root, sample, subscribe, transaction, unsubscribe };
7
+ export * from './h.js';
8
+ //# sourceMappingURL=dev.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"AAmEA,OAAO,EAGH,OAAO,EACP,UAAU,EACV,WAAW,EACX,YAAY,EACZ,UAAU,EACV,IAAI,EACJ,MAAM,EACN,SAAS,EACT,WAAW,EACX,WAAW,EACd,MAAM,QAAQ,CAAC;AAEhB,eAAO,MAAM,CAAC,YApBO,GAAG,EAAE,QAoBY,CAAC;AACvC,eAAO,MAAM,CAAC,YArBO,GAAG,EAAE,QAqBY,CAAC;AACvC,eAAO,MAAM,UAAU,YAtBF,GAAG,EAAE,QAsBC,CAAC;AAC5B,eAAO,MAAM,QAAQ,YAvBA,GAAG,EAAE,QAuBD,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;AACzH,cAAc,QAAQ,CAAC"}
@@ -1,60 +1,69 @@
1
- const url2src = new Map<string, string>();
2
- const getLeftName = function getLeftName() {
3
- const stack = new Error().stack;
4
- if (!stack) {
5
- return null;
6
- }
7
- const urlRegex = /((?:\w+:\/\/)[-a-zA-Z0-9:@;?&=\/%\+\.\*!'\(\),\$_\{\}\^~\[\]`#|]+):(\d+):(\d+)/;
8
- const lines = stack.split('\n');
9
-
10
- const currentLineIndex = lines.findIndex((line) => {
11
- return line.includes(import.meta.url) && line.includes(getLeftName.name);
12
- });
13
-
14
- if (currentLineIndex > -1) {
15
- const offset = 3;
16
- const line = lines[currentLineIndex + offset];
17
- if (!line) {
18
- return null;
19
- }
20
- const location = line.match(urlRegex);
21
- if (!location) {
22
- return null;
23
- }
24
- const url = location[1];
25
- const lineNo = location[2];
26
- const colNo = location[3];
27
- if (!url || !lineNo || !colNo) {
28
- return null;
29
- }
30
- let src: string;
31
- if (url2src.has(url)) {
32
- src = url2src.get(url)!;
33
- } else {
34
- const xhr = new XMLHttpRequest();
35
- xhr.open('GET', url, false);
36
- xhr.send();
37
- src = xhr.responseText;
38
- url2src.set(url, src);
39
- }
40
-
41
- const reg = new RegExp(`(?:.*\r?\n){${Number(lineNo) - 1}}.{${Number(colNo) - 1}}`);
42
- const segment = src.match(reg);
43
- if (!segment) {
44
- return null;
45
- }
46
- return segment[0].match(/(\w+)\s*=\s*$/)?.[1];
47
- }
48
- return null;
49
- };
50
-
51
- export const namedFunc = <F extends (...args: any[]) => any>(f: F, fallback?: string): F => {
52
- const leftName = getLeftName() ?? fallback;
53
- if (!leftName) {
54
- return f;
55
- }
56
- const g = new Function(`return function ${leftName} (...args) {return ${leftName}._(...args)}`)();
57
- g._ = f;
58
- Object.setPrototypeOf(g, f);
59
- return g;
60
- };
1
+ const url2src = new Map();
2
+ const getLeftName = function getLeftName() {
3
+ const stack = new Error().stack;
4
+ if (!stack) {
5
+ return null;
6
+ }
7
+ const urlRegex = /((?:\w+:\/\/)[-a-zA-Z0-9:@;?&=\/%\+\.\*!'\(\),\$_\{\}\^~\[\]`#|]+):(\d+):(\d+)/;
8
+ const lines = stack.split('\n');
9
+ const currentLineIndex = lines.findIndex((line) => {
10
+ return line.includes(import.meta.url) && line.includes(getLeftName.name);
11
+ });
12
+ if (currentLineIndex > -1) {
13
+ const offset = 3;
14
+ const line = lines[currentLineIndex + offset];
15
+ if (!line) {
16
+ return null;
17
+ }
18
+ const location = line.match(urlRegex);
19
+ if (!location) {
20
+ return null;
21
+ }
22
+ const url = location[1];
23
+ const lineNo = location[2];
24
+ const colNo = location[3];
25
+ if (!url || !lineNo || !colNo) {
26
+ return null;
27
+ }
28
+ let src;
29
+ if (url2src.has(url)) {
30
+ src = url2src.get(url);
31
+ }
32
+ else {
33
+ const xhr = new XMLHttpRequest();
34
+ xhr.open('GET', url, false);
35
+ xhr.send();
36
+ src = xhr.responseText;
37
+ url2src.set(url, src);
38
+ }
39
+ const reg = new RegExp(`(?:.*\r?\n){${Number(lineNo) - 1}}.{${Number(colNo) - 1}}`);
40
+ const segment = src.match(reg);
41
+ if (!segment) {
42
+ return null;
43
+ }
44
+ return segment[0].match(/(\w+)\s*=\s*$/)?.[1];
45
+ }
46
+ return null;
47
+ };
48
+ const namedFunc = (f, fallback) => {
49
+ const leftName = getLeftName() ?? fallback;
50
+ if (!leftName) {
51
+ return f;
52
+ }
53
+ const g = new Function(`return function ${leftName} (...args) {return this(...args)}`)().bind(f);
54
+ Object.setPrototypeOf(g, f);
55
+ return g;
56
+ };
57
+ const namedReturnedFunc = (func) => {
58
+ return (...args) => {
59
+ return namedFunc(func(...args));
60
+ };
61
+ };
62
+ import { S as _S, o as _o, cleanup, isComputed, isListening, isObservable, isReactive, root, sample, subscribe, transaction, unsubscribe, } from './s.js';
63
+ export const S = namedReturnedFunc(_S);
64
+ export const o = namedReturnedFunc(_o);
65
+ export const observable = o;
66
+ export const computed = S;
67
+ export { cleanup, isComputed, isListening, isObservable, isReactive, root, sample, subscribe, transaction, unsubscribe };
68
+ export * from './h.js';
69
+ //# sourceMappingURL=dev.js.map
package/lib/dev.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"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"}
package/lib/h.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"h.d.ts","sourceRoot":"","sources":["../src/h.ts"],"names":[],"mappings":"AAqYA,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,OAAO,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,KAAG,IAAI,EAoDrE,CAAC;AAkIF,eAAO,MAAM,GAAG,aAdD,oBAAoB,aAAa,GAAG,EAAE,KAAG,IAAI,EAmB3D,CAAC;AACF,eAAO,MAAM,IAAI,aApBF,oBAAoB,aAAa,GAAG,EAAE,KAAG,IAAI,EAyB3D,CAAC"}
1
+ {"version":3,"file":"h.d.ts","sourceRoot":"","sources":["../src/h.ts"],"names":[],"mappings":"AAsYA,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,OAAO,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,KAAG,IAAI,EAoDrE,CAAC;AAkIF,eAAO,MAAM,GAAG,aAdD,oBAAoB,aAAa,GAAG,EAAE,KAAG,IAAI,EAmB3D,CAAC;AACF,eAAO,MAAM,IAAI,aApBF,oBAAoB,aAAa,GAAG,EAAE,KAAG,IAAI,EAyB3D,CAAC"}
package/lib/h.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"h.js","sourceRoot":"","sources":["../src/h.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"h.js","sourceRoot":"","sources":["../src/h.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC"}
package/lib/index.dev.js CHANGED
@@ -1,3 +1,96 @@
1
- var ne=Object.defineProperty;var re=(e,n)=>()=>(e&&(n=e(e=0)),n);var oe=(e,n)=>{for(var t in n)ne(e,t,{get:n[t],enumerable:!0})};var k={};oe(k,{namedFunc:()=>ie});var F,se,ie,U=re(()=>{"use strict";F=new Map,se=function e(){let n=new Error().stack;if(!n)return null;let t=/((?:\w+:\/\/)[-a-zA-Z0-9:@;?&=\/%\+\.\*!'\(\),\$_\{\}\^~\[\]`#|]+):(\d+):(\d+)/,r=n.split(`
2
- `),s=r.findIndex(c=>c.includes(import.meta.url)&&c.includes(e.name));if(s>-1){let l=r[s+3];if(!l)return null;let i=l.match(t);if(!i)return null;let o=i[1],u=i[2],d=i[3];if(!o||!u||!d)return null;let p;if(F.has(o))p=F.get(o);else{let g=new XMLHttpRequest;g.open("GET",o,!1),g.send(),p=g.responseText,F.set(o,p)}let h=new RegExp(`(?:.*\r?
3
- ){${Number(u)-1}}.{${Number(d)-1}}`),m=p.match(h);return m?m[0].match(/(\w+)\s*=\s*$/)?.[1]:null}return null},ie=(e,n)=>{let t=se()??n;if(!t)return e;let r=new Function(`return function ${t} (...args) {return ${t}._(...args)}`)();return r.I=e,Object.setPrototypeOf(r,e),r}});var q=(await Promise.resolve().then(()=>(U(),k))).namedFunc,f,$=Symbol(),H=Symbol(),A,G=new WeakMap,L=0,Q=e=>{let n=f,t=(()=>{});R(t),t.r=!1,f=t;let r=e(()=>{C(t),f=void 0});return f=n,r},N=(e,n)=>{let t=q(R(r=>{if(r===H||t.r){t.c=L;let s=f;C(t),t.r=!1,f=t,n=e(n),f=s}else f&&!f.o.has(t)&&(f.o.add(t),t.e.push(f));return n}));return t.$o=3075,t.c=L++,f&&f.u.push(t),t(H),G.set(e,t),t},ge=e=>{function n(r){if(arguments.length===0)return f&&!f.o.has(t)&&(f.o.add(t),t.e.push(f)),e;if(L++,A)return t.s===$&&A.push(t),t.s=r,r;e=r;let s=f;f=void 0;let c=new Set,l=(o,u)=>{!o.o.has(u)||c.has(o)||(c.add(o),o.e.forEach(d=>l(d,o)))};t.e.forEach(o=>l(o,t));let i=Array.from(c);return i.forEach(o=>{o.r=!0}),t.e=[],i.sort(ce).forEach(o=>{o.r&&o()}),f=s,e}let t=q(n);return t.e=[],t.s=$,t.$o=181,L++,t},ce=(e,n)=>e.c-n.c,C=e=>{e.u.forEach(C),e.r=!1,e.f.forEach(n=>n()),R(e)},R=e=>(e.o=new Set,e.e=[],e.u=[],e.f=[],e),x=e=>(f?.f.push(e),e),he=e=>{let n=A;A=[];let t=e(),r=A;return A=n,r.forEach(s=>{if(s.s!==$){let c=s.s;s.s=$,s(c)}}),t};var z=e=>{let n=f;f=void 0;let t=e();return f=n,t},be=()=>!!f,Ie=e=>(N(e),()=>ae(e)),ae=e=>{let n=G.get(e);n&&C(n)},xe=e=>e?.$o===181,Se=e=>e?.$o===3075,v=e=>e?.$o;var Y=new Map;function X(){return Math.floor(Math.random()*1572120576+604661760).toString(36)}var P=X(),D=X(),le=new RegExp(`([\\s\\S]*?)${P}(\\d+)${D}([\\s\\S]*?)(?=${P}\\d+${D}|$)`,"g"),ue=/\s*\n\s*/g,fe=new DOMParser,V=e=>{let n=[];if(e=e.replace(ue,""),e.includes(P)&&e.includes(D))for(let t of e.matchAll(le)){let[,r,s,c]=t;r&&n.push(r),s&&n.push(Number(s)),c&&n.push(c)}else e&&n.push(e);return n},_=(e,n)=>e.length===1?typeof e[0]=="number"?n[e[0]]:e[0]:N(()=>e.map(t=>{if(typeof t=="number"){let r=n[t];return typeof r=="function"?r():r}return t}).join("")),de=(e,n,t,r,s)=>{if(Y.has(r))return Y.get(r);let c=r.flatMap((p,h,{length:m})=>h===m-1?[p]:[p,P,s[h],D]).join(""),l=n(c),i=fe.parseFromString(l,e),o=p=>{let h=[];for(let m=p.item(0),g=m?.nextSibling,w=0;m!=null;m=g,g=g?.nextSibling,w++)do e:{if(m.nodeType===1){let y=m,I=V(y.tagName.toLowerCase()),S=I.length>1||typeof I[0]=="number";if(h.push({y:y.namespaceURI,a:2,T:I,g:Array.from(y.attributes).flatMap(a=>{let T=V(a.nodeName),b=V(a.value),M=T.length>1||typeof T[0]=="number"||b.length>1||typeof b[0]=="number";return!S&&!M?[]:(y.removeAttribute(a.nodeName),[{d:T,m:b.length===0?[!0]:b}])}),l:y.childNodes.length>0?o(y.childNodes):[],i:S?null:y,h:w}),!S)break e}else if(m.nodeType===3){let y=m.data,I=V(y);I.length>0&&h.push({a:1,b:I})}m.remove(),w--}while(!1);return h},u=t(i),d=o(u);return Y.set(r,d),d},Z=(e,n,t,r,s,c)=>{if(typeof t=="function")return v(t)?E(()=>{let i=t();return Z(e,null,i,r,s,c)}):E(()=>t(...r.flatMap(({d:i,m:o})=>i[0]==="..."&&typeof i[1]=="number"?_(i.slice(1),s):_(o,s)),c));if(typeof t!="string")return[];let l=n||(e?document.createElementNS(e,t):document.createElement(t));return N(()=>{for(let{d:o,m:u}of r)o[0]==="..."&&typeof o[1]=="number"?ye(l,_(o.slice(1),s)):j(l,_(o,s),_(u,s));let i=c();if(i.length!==0)if(!l.firstChild)l.append(...i);else for(let o=l.firstElementChild,u=0;u<i.length;u++){let d=i[u];o===d?o=o.nextElementSibling:l.insertBefore(d,o)}}),x(()=>l.remove()),[l]},J=null,E=e=>{let n=new Comment("");x(()=>n.remove());let t=[n];return N(()=>{J=n;let r=e(),c=(Array.isArray(r)?r:[r]).map(l=>{if(l instanceof Node)return l;let i=new Text(l);return x(()=>i.remove()),i});n.isConnected?n.after(...c):t.push(...c)}),t};function me(e,n,t,r,s){let c=e.length,l=n.length;if(e===n||c===0&&l===0)return;let i=0,o=Math.min(c,l);for(;i<o&&e[i]===n[i];)i++;let u=0;for(;u<o-i&&e[c-1-u]===n[l-1-u];)u++;let d=c-i-u,p=l-i-u;if(d===0&&p===0){for(let a=0;a<i;a++)s(e[a]);for(let a=0;a<u;a++)s(e[c-u+a]);return}let h=new Map;for(let a=0;a<p;a++)h.set(n[i+a],a);let m=[];for(let a=0;a<d;a++){let T=e[i+a],b=h.get(T);b!==void 0&&m.push(b)}let g=[],w=new Array(m.length).fill(-1),y=[];for(let a=0;a<m.length;a++){let T=m[a],b=0,M=g.length;for(;b<M;){let B=b+M>>1;g[B]<T?b=B+1:M=B}let O=b;O===g.length?(g.push(T),y.push(a)):(g[O]=T,y[O]=a),O>0&&(w[a]=y[O-1])}let I=new Set,S=y.length>0?y[y.length-1]:-1;for(;S!==-1;){let a=m[S];I.add(n[i+a]),S=w[S]}for(let a=0;a<i;a++)s(e[a]);for(let a=0;a<d;a++){let T=e[i+a];I.has(T)||r(T)}for(let a=0;a<p;a++){let T=n[i+a];I.has(T)?s(T):t(T)}for(let a=0;a<u;a++)s(e[c-u+a])}var Ae=(e,n)=>E(()=>{let t=J;x(()=>{s().t.forEach(c=>c())});let r=c=>Q(l=>{let i=n(c);return[l,i]}),s=N((c={p:[],n:[],t:[]})=>{let l=e(),i=c.p,o={p:l,n:[],t:[]};return me(i,l,u=>{let[d,p]=r(u);(o.n.at(-1)?.at(-1)??t).after(...p),o.n.push(p),o.t.push(d)},u=>{let d=i.indexOf(u);c.t[d]()},u=>{let d=i.indexOf(u);o.n.push(c.n[d]),o.t.push(c.t[d])}),o});return z(()=>s().n.flat())}),pe=(e,n)=>{let t;do t=Object.getOwnPropertyDescriptor(e,n),e=Object.getPrototypeOf(e);while(e&&!t);return!(!t||t.writable===!1||t.get&&!t.set)},j=(e,n,t)=>{if(typeof n!="function"&&!v(t)){if(!e||!(e instanceof Element))return;if(pe(e,n)){let s=e[n];e[n]=t,x(()=>{e[n]=s})}else e.setAttribute(n,String(t)),x(()=>{e.removeAttribute(n)})}else N(()=>{j(e,typeof n=="function"?n():n,v(t)?t():t)})},ye=(e,n)=>{N(()=>{let t=n();for(let r in t)j(e,r,t[r])})},K=(e,n,t)=>{if(n.a===1)return n.b.flatMap(r=>{if(typeof r=="string"){let s=new Text(r);return x(()=>s.remove()),s}else if(typeof r=="number"){let s=t[r];if(typeof s=="function")return v(s)?E(()=>s()):E(s);if(typeof s!="object"){let c=new Text(String(s));return x(()=>c.remove()),c}return s}});{let{g:r,l:s,T:c,i:l}=n,i=_(c,t),o=n.y??e;return Z(o,l,i,r,t,()=>s.flatMap(u=>K(o,u,t)))}},ee=(e,n)=>{if(e.a===1)return e;{if(!e.i)return e;let t=n?n.childNodes.item(e.h):e.i.cloneNode(!0);return{...e,i:t,l:e.l.map(r=>ee(r,t))}}},te=(e,n,t,r)=>(s,...c)=>{let i=de(n,t,r,s,c.map(o=>c.indexOf(o))).map(o=>ee(o,null));return E(()=>i.flatMap(o=>K(e,o,c)))},W="http://www.w3.org/2000/svg",_e=te(W,"text/xml",e=>`<svg xmlns="${W}">${e}</svg>`,e=>e.firstChild.childNodes),Ee=te(null,"text/html",e=>e,e=>e.body.childNodes);export{N as S,x as cleanup,Ee as html,Se as isComputed,be as isListening,xe as isObservable,v as isReactive,Ae as map,ge as o,ge as observable,Q as root,z as sample,Ie as subscribe,_e as svg,he as transaction,ae as unsubscribe};
1
+ const url2src = /* @__PURE__ */ new Map();
2
+ const getLeftName = function getLeftName2() {
3
+ const stack = new Error().stack;
4
+ if (!stack) {
5
+ return null;
6
+ }
7
+ const urlRegex = /((?:\w+:\/\/)[-a-zA-Z0-9:@;?&=\/%\+\.\*!'\(\),\$_\{\}\^~\[\]`#|]+):(\d+):(\d+)/;
8
+ const lines = stack.split("\n");
9
+ const currentLineIndex = lines.findIndex((line) => {
10
+ return line.includes(import.meta.url) && line.includes(getLeftName2.name);
11
+ });
12
+ if (currentLineIndex > -1) {
13
+ const offset = 3;
14
+ const line = lines[currentLineIndex + offset];
15
+ if (!line) {
16
+ return null;
17
+ }
18
+ const location = line.match(urlRegex);
19
+ if (!location) {
20
+ return null;
21
+ }
22
+ const url = location[1];
23
+ const lineNo = location[2];
24
+ const colNo = location[3];
25
+ if (!url || !lineNo || !colNo) {
26
+ return null;
27
+ }
28
+ let src;
29
+ if (url2src.has(url)) {
30
+ src = url2src.get(url);
31
+ } else {
32
+ const xhr = new XMLHttpRequest();
33
+ xhr.open("GET", url, false);
34
+ xhr.send();
35
+ src = xhr.responseText;
36
+ url2src.set(url, src);
37
+ }
38
+ const reg = new RegExp(`(?:.*\r?
39
+ ){${Number(lineNo) - 1}}.{${Number(colNo) - 1}}`);
40
+ const segment = src.match(reg);
41
+ if (!segment) {
42
+ return null;
43
+ }
44
+ return segment[0].match(/(\w+)\s*=\s*$/)?.[1];
45
+ }
46
+ return null;
47
+ };
48
+ const namedFunc = (f, fallback) => {
49
+ const leftName = getLeftName() ?? fallback;
50
+ if (!leftName) {
51
+ return f;
52
+ }
53
+ const g = new Function(`return function ${leftName} (...args) {return this(...args)}`)().bind(f);
54
+ Object.setPrototypeOf(g, f);
55
+ return g;
56
+ };
57
+ const namedReturnedFunc = (func) => {
58
+ return (...args) => {
59
+ return namedFunc(func(...args));
60
+ };
61
+ };
62
+ import {
63
+ S as _S,
64
+ o as _o,
65
+ cleanup,
66
+ isComputed,
67
+ isListening,
68
+ isObservable,
69
+ isReactive,
70
+ root,
71
+ sample,
72
+ subscribe,
73
+ transaction,
74
+ unsubscribe
75
+ } from "./s.js";
76
+ const S = namedReturnedFunc(_S);
77
+ const o = namedReturnedFunc(_o);
78
+ const observable = o;
79
+ const computed = S;
80
+ export * from "./h.js";
81
+ export {
82
+ S,
83
+ cleanup,
84
+ computed,
85
+ isComputed,
86
+ isListening,
87
+ isObservable,
88
+ isReactive,
89
+ o,
90
+ observable,
91
+ root,
92
+ sample,
93
+ subscribe,
94
+ transaction,
95
+ unsubscribe
96
+ };
package/lib/index.js CHANGED
@@ -1 +1 @@
1
- var k=e=>e,f,L=Symbol(),R=Symbol(),w,F=new WeakMap,$=0,H=e=>{let n=f,t=(()=>{});Y(t),t.r=!1,f=t;let r=e(()=>{C(t),f=void 0});return f=n,r},N=(e,n)=>{let t=k(Y(r=>{if(r===R||t.r){t.a=$;let o=f;C(t),t.r=!1,f=t,n=e(n),f=o}else f&&!f.o.has(t)&&(f.o.add(t),t.e.push(f));return n}));return t.$o=3075,t.a=$++,f&&f.u.push(t),t(R),F.set(e,t),t},ce=e=>{function n(r){if(arguments.length===0)return f&&!f.o.has(t)&&(f.o.add(t),t.e.push(f)),e;if($++,w)return t.s===L&&w.push(t),t.s=r,r;e=r;let o=f;f=void 0;let c=new Set,l=(s,u)=>{!s.o.has(u)||c.has(s)||(c.add(s),s.e.forEach(d=>l(d,s)))};t.e.forEach(s=>l(s,t));let a=Array.from(c);return a.forEach(s=>{s.r=!0}),t.e=[],a.sort(Z).forEach(s=>{s.r&&s()}),f=o,e}let t=k(n);return t.e=[],t.s=L,t.$o=181,$++,t},Z=(e,n)=>e.a-n.a,C=e=>{e.u.forEach(C),e.r=!1,e.f.forEach(n=>n()),Y(e)},Y=e=>(e.o=new Set,e.e=[],e.u=[],e.f=[],e),S=e=>(f?.f.push(e),e),le=e=>{let n=w;w=[];let t=e(),r=w;return w=n,r.forEach(o=>{if(o.s!==L){let c=o.s;o.s=L,o(c)}}),t};var q=e=>{let n=f;f=void 0;let t=e();return f=n,t},ue=()=>!!f,fe=e=>(N(e),()=>ee(e)),ee=e=>{let n=F.get(e);n&&C(n)},de=e=>e?.$o===181,pe=e=>e?.$o===3075,v=e=>e?.$o;var j=new Map;function G(){return Math.floor(Math.random()*1572120576+604661760).toString(36)}var P=G(),D=G(),te=new RegExp(`([\\s\\S]*?)${P}(\\d+)${D}([\\s\\S]*?)(?=${P}\\d+${D}|$)`,"g"),ne=/\s*\n\s*/g,re=new DOMParser,V=e=>{let n=[];if(e=e.replace(ne,""),e.includes(P)&&e.includes(D))for(let t of e.matchAll(te)){let[,r,o,c]=t;r&&n.push(r),o&&n.push(Number(o)),c&&n.push(c)}else e&&n.push(e);return n},_=(e,n)=>e.length===1?typeof e[0]=="number"?n[e[0]]:e[0]:N(()=>e.map(t=>{if(typeof t=="number"){let r=n[t];return typeof r=="function"?r():r}return t}).join("")),oe=(e,n,t,r,o)=>{if(j.has(r))return j.get(r);let c=r.flatMap((h,g,{length:p})=>g===p-1?[h]:[h,P,o[g],D]).join(""),l=n(c),a=re.parseFromString(l,e),s=h=>{let g=[];for(let p=h.item(0),I=p?.nextSibling,A=0;p!=null;p=I,I=I?.nextSibling,A++)do e:{if(p.nodeType===1){let m=p,b=V(m.tagName.toLowerCase()),x=b.length>1||typeof b[0]=="number";if(g.push({y:m.namespaceURI,c:2,T:b,h:Array.from(m.attributes).flatMap(i=>{let y=V(i.nodeName),T=V(i.value),M=y.length>1||typeof y[0]=="number"||T.length>1||typeof T[0]=="number";return!x&&!M?[]:(m.removeAttribute(i.nodeName),[{d:y,p:T.length===0?[!0]:T}])}),l:m.childNodes.length>0?s(m.childNodes):[],i:x?null:m,g:A}),!x)break e}else if(p.nodeType===3){let m=p.data,b=V(m);b.length>0&&g.push({c:1,b})}p.remove(),A--}while(!1);return g},u=t(a),d=s(u);return j.set(r,d),d},W=(e,n,t,r,o,c)=>{if(typeof t=="function")return v(t)?E(()=>{let a=t();return W(e,null,a,r,o,c)}):E(()=>t(...r.flatMap(({d:a,p:s})=>a[0]==="..."&&typeof a[1]=="number"?_(a.slice(1),o):_(s,o)),c));if(typeof t!="string")return[];let l=n||(e?document.createElementNS(e,t):document.createElement(t));return N(()=>{for(let{d:s,p:u}of r)s[0]==="..."&&typeof s[1]=="number"?ae(l,_(s.slice(1),o)):U(l,_(s,o),_(u,o));let a=c();if(a.length!==0)if(!l.firstChild)l.append(...a);else for(let s=l.firstElementChild,u=0;u<a.length;u++){let d=a[u];s===d?s=s.nextElementSibling:l.insertBefore(d,s)}}),S(()=>l.remove()),[l]},z=null,E=e=>{let n=new Comment("");S(()=>n.remove());let t=[n];return N(()=>{z=n;let r=e(),c=(Array.isArray(r)?r:[r]).map(l=>{if(l instanceof Node)return l;let a=new Text(l);return S(()=>a.remove()),a});n.isConnected?n.after(...c):t.push(...c)}),t};function se(e,n,t,r,o){let c=e.length,l=n.length;if(e===n||c===0&&l===0)return;let a=0,s=Math.min(c,l);for(;a<s&&e[a]===n[a];)a++;let u=0;for(;u<s-a&&e[c-1-u]===n[l-1-u];)u++;let d=c-a-u,h=l-a-u;if(d===0&&h===0){for(let i=0;i<a;i++)o(e[i]);for(let i=0;i<u;i++)o(e[c-u+i]);return}let g=new Map;for(let i=0;i<h;i++)g.set(n[a+i],i);let p=[];for(let i=0;i<d;i++){let y=e[a+i],T=g.get(y);T!==void 0&&p.push(T)}let I=[],A=new Array(p.length).fill(-1),m=[];for(let i=0;i<p.length;i++){let y=p[i],T=0,M=I.length;for(;T<M;){let B=T+M>>1;I[B]<y?T=B+1:M=B}let O=T;O===I.length?(I.push(y),m.push(i)):(I[O]=y,m[O]=i),O>0&&(A[i]=m[O-1])}let b=new Set,x=m.length>0?m[m.length-1]:-1;for(;x!==-1;){let i=p[x];b.add(n[a+i]),x=A[x]}for(let i=0;i<a;i++)o(e[i]);for(let i=0;i<d;i++){let y=e[a+i];b.has(y)||r(y)}for(let i=0;i<h;i++){let y=n[a+i];b.has(y)?o(y):t(y)}for(let i=0;i<u;i++)o(e[c-u+i])}var Te=(e,n)=>E(()=>{let t=z;S(()=>{o().t.forEach(c=>c())});let r=c=>H(l=>{let a=n(c);return[l,a]}),o=N((c={m:[],n:[],t:[]})=>{let l=e(),a=c.m,s={m:l,n:[],t:[]};return se(a,l,u=>{let[d,h]=r(u);(s.n.at(-1)?.at(-1)??t).after(...h),s.n.push(h),s.t.push(d)},u=>{let d=a.indexOf(u);c.t[d]()},u=>{let d=a.indexOf(u);s.n.push(c.n[d]),s.t.push(c.t[d])}),s});return q(()=>o().n.flat())}),ie=(e,n)=>{let t;do t=Object.getOwnPropertyDescriptor(e,n),e=Object.getPrototypeOf(e);while(e&&!t);return!(!t||t.writable===!1||t.get&&!t.set)},U=(e,n,t)=>{if(typeof n!="function"&&!v(t)){if(!e||!(e instanceof Element))return;if(ie(e,n)){let o=e[n];e[n]=t,S(()=>{e[n]=o})}else e.setAttribute(n,String(t)),S(()=>{e.removeAttribute(n)})}else N(()=>{U(e,typeof n=="function"?n():n,v(t)?t():t)})},ae=(e,n)=>{N(()=>{let t=n();for(let r in t)U(e,r,t[r])})},J=(e,n,t)=>{if(n.c===1)return n.b.flatMap(r=>{if(typeof r=="string"){let o=new Text(r);return S(()=>o.remove()),o}else if(typeof r=="number"){let o=t[r];if(typeof o=="function")return v(o)?E(()=>o()):E(o);if(typeof o!="object"){let c=new Text(String(o));return S(()=>c.remove()),c}return o}});{let{h:r,l:o,T:c,i:l}=n,a=_(c,t),s=n.y??e;return W(s,l,a,r,t,()=>o.flatMap(u=>J(s,u,t)))}},K=(e,n)=>{if(e.c===1)return e;{if(!e.i)return e;let t=n?n.childNodes.item(e.g):e.i.cloneNode(!0);return{...e,i:t,l:e.l.map(r=>K(r,t))}}},X=(e,n,t,r)=>(o,...c)=>{let a=oe(n,t,r,o,c.map(s=>c.indexOf(s))).map(s=>K(s,null));return E(()=>a.flatMap(s=>J(e,s,c)))},Q="http://www.w3.org/2000/svg",he=X(Q,"text/xml",e=>`<svg xmlns="${Q}">${e}</svg>`,e=>e.firstChild.childNodes),ge=X(null,"text/html",e=>e,e=>e.body.childNodes);export{N as S,S as cleanup,ge as html,pe as isComputed,ue as isListening,de as isObservable,v as isReactive,Te as map,ce as o,ce as observable,H as root,q as sample,fe as subscribe,he as svg,le as transaction,ee as unsubscribe};
1
+ var f,L=Symbol(),R=Symbol(),A,k=new WeakMap,K=0,Y=e=>{let n=f,t=(()=>{});U(t),t.r=!1,f=t;let r=e(()=>{$(t),f=void 0});return f=n,r},N=(e,n)=>{let t=U(r=>{if(r===R||t.r){t.a=K++;let o=f;$(t),t.r=!1,f=t,n=e(n),f=o}else f&&!f.o.has(t)&&(f.o.add(t),t.e.push(f));return n});return t.$o=3075,f&&f.u.push(t),t(R),k.set(e,t),t},ce=e=>{function n(r){if(arguments.length===0)return f&&!f.o.has(t)&&(f.o.add(t),t.e.push(f)),e;if(A)return t.s===L&&A.push(t),t.s=r,r;e=r;let o=f;f=void 0;let l=new Set,a=(s,u)=>{!s.o.has(u)||l.has(s)||(l.add(s),s.e.forEach(d=>a(d,s)))};t.e.forEach(s=>a(s,t));let c=Array.from(l);return c.forEach(s=>{s.r=!0}),t.e=[],c.sort(X).forEach(s=>{s.r&&s()}),f=o,e}let t=n;return t.e=[],t.s=L,t.$o=181,t},X=(e,n)=>e.a-n.a,$=e=>{e.u.forEach($),e.r=!1,e.f.forEach(n=>n()),U(e)},U=e=>(e.o=new Set,e.e=[],e.u=[],e.f=[],e),x=e=>(f?.f.push(e),e),le=e=>{let n=A;A=[];let t=e(),r=A;return A=n,r.forEach(o=>{if(o.s!==L){let l=o.s;o.s=L,o(l)}}),t};var H=e=>{let n=f;f=void 0;let t=e();return f=n,t},ae=()=>!!f,ue=e=>(N(e),()=>Z(e)),Z=e=>{let n=k.get(e);n&&$(n)},fe=e=>e?.$o===181,de=e=>e?.$o===3075,v=e=>e?.$o;var j=new Map;function Q(){return Math.floor(Math.random()*1572120576+604661760).toString(36)}var P=Q(),V=Q(),ee=new RegExp(`([\\s\\S]*?)${P}(\\d+)${V}([\\s\\S]*?)(?=${P}\\d+${V}|$)`,"g"),te=/\s*\n\s*/g,ne=new DOMParser,C=e=>{let n=[];if(e=e.replace(te,""),e.includes(P)&&e.includes(V))for(let t of e.matchAll(ee)){let[,r,o,l]=t;r&&n.push(r),o&&n.push(Number(o)),l&&n.push(l)}else e&&n.push(e);return n},E=(e,n)=>e.length===1?typeof e[0]=="number"?n[e[0]]:e[0]:N(()=>e.map(t=>{if(typeof t=="number"){let r=n[t];return typeof r=="function"?r():r}return t}).join("")),re=(e,n,t,r,o)=>{if(j.has(r))return j.get(r);let l=r.flatMap((h,g,{length:p})=>g===p-1?[h]:[h,P,o[g],V]).join(""),a=n(l),c=ne.parseFromString(a,e),s=h=>{let g=[];for(let p=h.item(0),I=p?.nextSibling,w=0;p!=null;p=I,I=I?.nextSibling,w++)do e:{if(p.nodeType===1){let m=p,b=C(m.tagName.toLowerCase()),S=b.length>1||typeof b[0]=="number";if(g.push({T:m.namespaceURI,c:2,y:b,h:Array.from(m.attributes).flatMap(i=>{let T=C(i.nodeName),y=C(i.value),_=T.length>1||typeof T[0]=="number"||y.length>1||typeof y[0]=="number";return!S&&!_?[]:(m.removeAttribute(i.nodeName),[{d:T,p:y.length===0?[!0]:y}])}),l:m.childNodes.length>0?s(m.childNodes):[],i:S?null:m,g:w}),!S)break e}else if(p.nodeType===3){let m=p.data,b=C(m);b.length>0&&g.push({c:1,b})}p.remove(),w--}while(!1);return g},u=t(c),d=s(u);return j.set(r,d),d},F=(e,n,t,r,o,l)=>{if(typeof t=="function")return v(t)?M(()=>{let c=t();return F(e,null,c,r,o,l)}):M(()=>t(...r.flatMap(({d:c,p:s})=>c[0]==="..."&&typeof c[1]=="number"?E(c.slice(1),o):E(s,o)),l));if(typeof t!="string")return[];let a=n||(e?document.createElementNS(e,t):document.createElement(t));return N(()=>{for(let{d:s,p:u}of r)s[0]==="..."&&typeof s[1]=="number"?ie(a,E(s.slice(1),o)):B(a,E(s,o),E(u,o));let c=l();if(c.length!==0)if(!a.firstChild)a.append(...c);else for(let s=a.firstElementChild,u=0;u<c.length;u++){let d=c[u];s===d?s=s.nextElementSibling:a.insertBefore(d,s)}}),x(()=>a.remove()),[a]},G=null,M=e=>{let n=new Comment("");x(()=>n.remove());let t=[n];return N(()=>{G=n;let r=e(),l=(Array.isArray(r)?r:[r]).map(a=>{if(a instanceof Node)return a;let c=new Text(a);return x(()=>c.remove()),c});n.isConnected?n.after(...l):t.push(...l)}),t};function oe(e,n,t,r,o){let l=e.length,a=n.length;if(e===n||l===0&&a===0)return;let c=0,s=Math.min(l,a);for(;c<s&&e[c]===n[c];)c++;let u=0;for(;u<s-c&&e[l-1-u]===n[a-1-u];)u++;let d=l-c-u,h=a-c-u;if(d===0&&h===0){for(let i=0;i<c;i++)o(e[i]);for(let i=0;i<u;i++)o(e[l-u+i]);return}let g=new Map;for(let i=0;i<h;i++)g.set(n[c+i],i);let p=[];for(let i=0;i<d;i++){let T=e[c+i],y=g.get(T);y!==void 0&&p.push(y)}let I=[],w=new Array(p.length).fill(-1),m=[];for(let i=0;i<p.length;i++){let T=p[i],y=0,_=I.length;for(;y<_;){let D=y+_>>1;I[D]<T?y=D+1:_=D}let O=y;O===I.length?(I.push(T),m.push(i)):(I[O]=T,m[O]=i),O>0&&(w[i]=m[O-1])}let b=new Set,S=m.length>0?m[m.length-1]:-1;for(;S!==-1;){let i=p[S];b.add(n[c+i]),S=w[S]}for(let i=0;i<c;i++)o(e[i]);for(let i=0;i<d;i++){let T=e[c+i];b.has(T)||r(T)}for(let i=0;i<h;i++){let T=n[c+i];b.has(T)?o(T):t(T)}for(let i=0;i<u;i++)o(e[l-u+i])}var Te=(e,n)=>M(()=>{let t=G;x(()=>{o().t.forEach(l=>l())});let r=l=>Y(a=>{let c=n(l);return[a,c]}),o=N((l={m:[],n:[],t:[]})=>{let a=e(),c=l.m,s={m:a,n:[],t:[]};return oe(c,a,u=>{let[d,h]=r(u);(s.n.at(-1)?.at(-1)??t).after(...h),s.n.push(h),s.t.push(d)},u=>{let d=c.indexOf(u);l.t[d]()},u=>{let d=c.indexOf(u);s.n.push(l.n[d]),s.t.push(l.t[d])}),s});return H(()=>o().n.flat())}),se=(e,n)=>{let t;do t=Object.getOwnPropertyDescriptor(e,n),e=Object.getPrototypeOf(e);while(e&&!t);return!(!t||t.writable===!1||t.get&&!t.set)},B=(e,n,t)=>{if(typeof n!="function"&&!v(t)){if(!e||!(e instanceof Element))return;if(se(e,n)){let o=e[n];e[n]=t,x(()=>{e[n]=o})}else e.setAttribute(n,String(t)),x(()=>{e.removeAttribute(n)})}else N(()=>{B(e,typeof n=="function"?n():n,v(t)?t():t)})},ie=(e,n)=>{N(()=>{let t=n();for(let r in t)B(e,r,t[r])})},W=(e,n,t)=>{if(n.c===1)return n.b.flatMap(r=>{if(typeof r=="string"){let o=new Text(r);return x(()=>o.remove()),o}else if(typeof r=="number"){let o=t[r];if(typeof o=="function")return v(o)?M(()=>o()):M(o);if(typeof o!="object"){let l=new Text(String(o));return x(()=>l.remove()),l}return o}});{let{h:r,l:o,y:l,i:a}=n,c=E(l,t),s=n.T??e;return F(s,a,c,r,t,()=>o.flatMap(u=>W(s,u,t)))}},z=(e,n)=>{if(e.c===1)return e;{if(!e.i)return e;let t=n?n.childNodes.item(e.g):e.i.cloneNode(!0);return{...e,i:t,l:e.l.map(r=>z(r,t))}}},J=(e,n,t,r)=>(o,...l)=>{let c=re(n,t,r,o,l.map(s=>l.indexOf(s))).map(s=>z(s,null));return M(()=>c.flatMap(s=>W(e,s,l)))},q="http://www.w3.org/2000/svg",ye=J(q,"text/xml",e=>`<svg xmlns="${q}">${e}</svg>`,e=>e.firstChild.childNodes),he=J(null,"text/html",e=>e,e=>e.body.childNodes);export{N as S,x as cleanup,he as html,de as isComputed,ae as isListening,fe as isObservable,v as isReactive,Te as map,ce as o,ce as observable,Y as root,H as sample,ue as subscribe,ye as svg,le as transaction,Z as unsubscribe};
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC"}
package/lib/name.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"name.d.ts","sourceRoot":"","sources":["../src/name.ts"],"names":[],"mappings":"AAkDA,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,GAAG,CAAC,EAAE,WAAW,MAAM,KAAG,CAStF,CAAC"}
1
+ {"version":3,"file":"name.d.ts","sourceRoot":"","sources":["../src/name.ts"],"names":[],"mappings":"AAmDA,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,GAAG,CAAC,EAAE,WAAW,MAAM,KAAG,CAStF,CAAC"}
package/lib/name.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"name.js","sourceRoot":"","sources":["../src/name.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;AAC1C,MAAM,WAAW,GAAG,SAAS,WAAW;IACpC,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC,KAAK,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,QAAQ,GAAG,gFAAgF,CAAC;IAClG,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEhC,MAAM,gBAAgB,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;QAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,IAAI,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,CAAC,CAAC;QACjB,MAAM,IAAI,GAAG,KAAK,CAAC,gBAAgB,GAAG,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,GAAW,CAAC;QAChB,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACnB,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;QAC5B,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,GAAG,IAAI,cAAc,EAAE,CAAC;YACjC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YAC5B,GAAG,CAAC,IAAI,EAAE,CAAC;YACX,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1B,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,eAAe,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpF,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAoC,CAAI,EAAE,QAAiB,EAAK,EAAE;IACvF,MAAM,QAAQ,GAAG,WAAW,EAAE,IAAI,QAAQ,CAAC;IAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,CAAC,CAAC;IACb,CAAC;IACD,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,mBAAmB,QAAQ,sBAAsB,QAAQ,cAAc,CAAC,EAAE,CAAC;IAClG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACR,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,OAAO,CAAC,CAAC;AACb,CAAC,CAAC"}
1
+ {"version":3,"file":"name.js","sourceRoot":"","sources":["../src/name.ts"],"names":[],"mappings":"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"}
package/lib/s.d.ts CHANGED
@@ -1,20 +1,31 @@
1
- interface IS<T> {
1
+ export interface IS<T = any> {
2
2
  (force?: typeof Yes): T;
3
- _whoIOwn: Array<IS<any>>;
4
- _whoINeed: Set<IO<any> | IS<any>>;
5
- _whoNeedMe: Array<IS<any>>;
3
+ _whoIOwn: Array<IS>;
4
+ _whoINeed: Set<IO | IS>;
5
+ _whoNeedMe: Array<IS>;
6
6
  _dirty: boolean;
7
7
  _onCleanupCallback: Array<() => void>;
8
8
  $o: number;
9
- _lastAccess: number;
9
+ _lastUpdateTime: number;
10
10
  }
11
- interface IO<T> {
11
+ export type IPartialS<T = any> = {
12
+ (force?: typeof Yes): T;
13
+ _whoIOwn?: Array<IS>;
14
+ _whoINeed?: Set<IO | IS>;
15
+ _whoNeedMe?: Array<IS>;
16
+ _dirty?: boolean;
17
+ _onCleanupCallback?: Array<() => void>;
18
+ $o?: number;
19
+ _lastUpdateTime?: number;
20
+ };
21
+ export interface IO<T = any> {
12
22
  (): T;
13
23
  (nextValue: T): T;
14
- _whoNeedMe: Array<IS<any>>;
15
- _pendingValue: any;
24
+ _whoNeedMe: Array<IS>;
25
+ _pendingValue: T | typeof NoValue;
16
26
  $o: number;
17
27
  }
28
+ declare const NoValue: unique symbol;
18
29
  declare const Yes: unique symbol;
19
30
  export declare const root: <T>(fn: (destroy: () => void) => T) => T;
20
31
  export declare const S: <T>(fn: (pv: T | undefined) => T, value?: T) => IS<T>;
@@ -26,7 +37,7 @@ export declare const sample: <T>(f: () => T) => T;
26
37
  export declare const isListening: () => boolean;
27
38
  export declare const subscribe: (f: () => void) => () => void;
28
39
  export declare const unsubscribe: (f: () => void) => void;
29
- export declare const isObservable: (o: any) => o is IO<any>;
30
- export declare const isComputed: (o: any) => o is IS<any>;
31
- export declare const isReactive: (o: any) => o is IO<any> | IS<any>;
40
+ export declare const isObservable: (o: any) => o is IO;
41
+ export declare const isComputed: (o: any) => o is IS;
42
+ export declare const isReactive: (o: any) => o is IO | IS;
32
43
  //# sourceMappingURL=s.d.ts.map
package/lib/s.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"s.d.ts","sourceRoot":"","sources":["../src/s.ts"],"names":[],"mappings":"AAIA,UAAU,EAAE,CAAC,CAAC;IACV,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,GAAG,CAAC,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAClC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,kBAAkB,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;CACvB;AAaD,UAAU,EAAE,CAAC,CAAC;IACV,IAAI,CAAC,CAAC;IACN,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC;IAClB,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,aAAa,EAAE,GAAG,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;CACd;AAID,QAAA,MAAM,GAAG,EAAE,OAAO,MAAiB,CAAC;AAKpC,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC,KAAG,CAYxD,CAAC;AACF,eAAO,MAAM,CAAC,GAAI,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,SAAS,KAAK,CAAC,EAAE,QAAQ,CAAC,KAAG,EAAE,CAAC,CAAC,CA0BlE,CAAC;AACF,eAAO,MAAM,CAAC,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,EAAE,CAAC,CAAC,CAkDnC,CAAC;AAiBF,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,MAAM,IAAI,EAAE,GAAG,CAAC,KAAG,CAGpD,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,CAAC,EAAE,GAAG,MAAM,CAAC,KAAG,CAc3C,CAAC;AAEF,OAAO,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC;AAE3B,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,MAAM,CAAC,KAAG,CAMtC,CAAC;AAEF,eAAO,MAAM,WAAW,eAAwB,CAAC;AAEjD,eAAO,MAAM,SAAS,GAAI,GAAG,MAAM,IAAI,eAGtC,CAAC;AACF,eAAO,MAAM,WAAW,GAAI,GAAG,MAAM,IAAI,SAKxC,CAAC;AACF,eAAO,MAAM,YAAY,GAAI,GAAG,GAAG,KAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAoB,CAAC;AACtE,eAAO,MAAM,UAAU,GAAI,GAAG,GAAG,KAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAoB,CAAC;AACpE,eAAO,MAAM,UAAU,GAAI,GAAG,GAAG,KAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAU,CAAC"}
1
+ {"version":3,"file":"s.d.ts","sourceRoot":"","sources":["../src/s.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,EAAE,CAAC,CAAC,GAAG,GAAG;IACvB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,GAAG,CAAC,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACpB,SAAS,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACxB,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,kBAAkB,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,MAAM,SAAS,CAAC,CAAC,GAAG,GAAG,IAAI;IAC7B,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,GAAG,CAAC,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACrB,SAAS,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACzB,UAAU,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kBAAkB,CAAC,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;IACvC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,WAAW,EAAE,CAAC,CAAC,GAAG,GAAG;IACvB,IAAI,CAAC,CAAC;IACN,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC;IAClB,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACtB,aAAa,EAAE,CAAC,GAAG,OAAO,OAAO,CAAC;IAClC,EAAE,EAAE,MAAM,CAAC;CACd;AAGD,QAAA,MAAM,OAAO,EAAE,OAAO,MAAiB,CAAC;AACxC,QAAA,MAAM,GAAG,EAAE,OAAO,MAAiB,CAAC;AAKpC,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC,KAAG,CAYxD,CAAC;AACF,eAAO,MAAM,CAAC,GAAI,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,SAAS,KAAK,CAAC,EAAE,QAAQ,CAAC,KAAG,EAAE,CAAC,CAAC,CAuBlE,CAAC;AACF,eAAO,MAAM,CAAC,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,EAAE,CAAC,CAAC,CAgDnC,CAAC;AAiBF,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,MAAM,IAAI,EAAE,GAAG,CAAC,KAAG,CAGpD,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,CAAC,EAAE,GAAG,MAAM,CAAC,KAAG,CAc3C,CAAC;AAEF,OAAO,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC;AAE3B,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,MAAM,CAAC,KAAG,CAMtC,CAAC;AAEF,eAAO,MAAM,WAAW,eAAwB,CAAC;AAEjD,eAAO,MAAM,SAAS,GAAI,GAAG,MAAM,IAAI,eAGtC,CAAC;AACF,eAAO,MAAM,WAAW,GAAI,GAAG,MAAM,IAAI,SAKxC,CAAC;AACF,eAAO,MAAM,YAAY,GAAI,GAAG,GAAG,KAAG,CAAC,IAAI,EAAqB,CAAC;AACjE,eAAO,MAAM,UAAU,GAAI,GAAG,GAAG,KAAG,CAAC,IAAI,EAAqB,CAAC;AAC/D,eAAO,MAAM,UAAU,GAAI,GAAG,GAAG,KAAG,CAAC,IAAI,EAAE,GAAG,EAAW,CAAC"}
package/lib/s.js CHANGED
@@ -1,4 +1,3 @@
1
- const namedFunc = typeof __SUBAY_DEV__ === 'boolean' && __SUBAY_DEV__ ? (await import('./name.js')).namedFunc : (f) => f;
2
1
  let currentUpdate = undefined;
3
2
  const NoValue = Symbol();
4
3
  const Yes = Symbol();
@@ -19,9 +18,9 @@ export const root = (fn) => {
19
18
  return result;
20
19
  };
21
20
  export const S = (fn, value) => {
22
- const data = namedFunc(resetS((force) => {
21
+ const data = resetS((force) => {
23
22
  if (force === Yes || data._dirty) {
24
- data._lastAccess = clock;
23
+ data._lastUpdateTime = clock++;
25
24
  const backup = currentUpdate;
26
25
  recycleS(data);
27
26
  data._dirty = false;
@@ -34,9 +33,8 @@ export const S = (fn, value) => {
34
33
  data._whoNeedMe.push(currentUpdate);
35
34
  }
36
35
  return value;
37
- }));
36
+ });
38
37
  data.$o = 0xc03;
39
- data._lastAccess = clock++;
40
38
  if (currentUpdate) {
41
39
  currentUpdate._whoIOwn.push(data);
42
40
  }
@@ -53,7 +51,6 @@ export const o = (value) => {
53
51
  }
54
52
  return value;
55
53
  }
56
- clock++;
57
54
  if (triggerQueue) {
58
55
  if (data._pendingValue === NoValue) {
59
56
  triggerQueue.push(data);
@@ -78,7 +75,7 @@ export const o = (value) => {
78
75
  u._dirty = true;
79
76
  });
80
77
  data._whoNeedMe = [];
81
- whoNeedMeLasttime.sort(byLastAccess).forEach((u) => {
78
+ whoNeedMeLasttime.sort(byLastUpdateTime).forEach((u) => {
82
79
  if (u._dirty) {
83
80
  u();
84
81
  }
@@ -86,14 +83,13 @@ export const o = (value) => {
86
83
  currentUpdate = backup;
87
84
  return value;
88
85
  }
89
- const data = namedFunc(d);
86
+ const data = d;
90
87
  data._whoNeedMe = [];
91
88
  data._pendingValue = NoValue;
92
89
  data.$o = 0x0b5;
93
- clock++;
94
90
  return data;
95
91
  };
96
- const byLastAccess = (a, b) => a._lastAccess - b._lastAccess;
92
+ const byLastUpdateTime = (a, b) => a._lastUpdateTime - b._lastUpdateTime;
97
93
  const recycleS = (update) => {
98
94
  update._whoIOwn.forEach(recycleS);
99
95
  update._dirty = false;
package/lib/s.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"s.js","sourceRoot":"","sources":["../src/s.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"s.js","sourceRoot":"","sources":["../src/s.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "subay",
3
- "version": "0.0.10",
3
+ "version": "0.0.12",
4
4
  "description": "A lightweight reactive UI library with state management and template rendering",
5
5
  "keywords": [
6
6
  "reactive",
@@ -37,7 +37,7 @@
37
37
  "test": "npx http-server -c-1 -o /test/test.html",
38
38
  "dev": "tsc --build --watch ./tsconfig.json",
39
39
  "types": "tsc -d --outDir lib",
40
- "bundle-dev": "npx esbuild --bundle src/index.ts --outfile=lib/index.dev.js --minify \"--mangle-props=^_\" --format=esm --define:__SUBAY_DEV__=true",
40
+ "bundle-dev": "npx esbuild src/dev.ts --outfile=lib/index.dev.js --format=esm --define:__SUBAY_DEV__=true",
41
41
  "bundle-prod": "npx esbuild --bundle src/index.ts --outfile=lib/index.js --minify \"--mangle-props=^_\" --format=esm --define:__SUBAY_DEV__=false",
42
42
  "bundle": "npm run bundle-dev & npm run bundle-prod",
43
43
  "build": "npm run types && npm run bundle"
package/src/dev.ts ADDED
@@ -0,0 +1,88 @@
1
+ // deno-lint-ignore-file no-explicit-any no-sloppy-imports
2
+ const url2src = new Map<string, string>();
3
+ const getLeftName = function getLeftName() {
4
+ const stack = new Error().stack;
5
+ if (!stack) {
6
+ return null;
7
+ }
8
+ const urlRegex = /((?:\w+:\/\/)[-a-zA-Z0-9:@;?&=\/%\+\.\*!'\(\),\$_\{\}\^~\[\]`#|]+):(\d+):(\d+)/;
9
+ const lines = stack.split('\n');
10
+
11
+ const currentLineIndex = lines.findIndex((line) => {
12
+ return line.includes(import.meta.url) && line.includes(getLeftName.name);
13
+ });
14
+
15
+ if (currentLineIndex > -1) {
16
+ const offset = 3;
17
+ const line = lines[currentLineIndex + offset];
18
+ if (!line) {
19
+ return null;
20
+ }
21
+ const location = line.match(urlRegex);
22
+ if (!location) {
23
+ return null;
24
+ }
25
+ const url = location[1];
26
+ const lineNo = location[2];
27
+ const colNo = location[3];
28
+ if (!url || !lineNo || !colNo) {
29
+ return null;
30
+ }
31
+ let src: string;
32
+ if (url2src.has(url)) {
33
+ src = url2src.get(url)!;
34
+ } else {
35
+ const xhr = new XMLHttpRequest();
36
+ xhr.open('GET', url, false);
37
+ xhr.send();
38
+ src = xhr.responseText;
39
+ url2src.set(url, src);
40
+ }
41
+
42
+ const reg = new RegExp(`(?:.*\r?\n){${Number(lineNo) - 1}}.{${Number(colNo) - 1}}`);
43
+ const segment = src.match(reg);
44
+ if (!segment) {
45
+ return null;
46
+ }
47
+ return segment[0].match(/(\w+)\s*=\s*$/)?.[1];
48
+ }
49
+ return null;
50
+ };
51
+
52
+ const namedFunc = <F extends (...args: any[]) => any>(f: F, fallback?: string): F => {
53
+ const leftName = getLeftName() ?? fallback;
54
+ if (!leftName) {
55
+ return f;
56
+ }
57
+ const g = new Function(`return function ${leftName} (...args) {return this(...args)}`)().bind(f);
58
+ Object.setPrototypeOf(g, f);
59
+ return g;
60
+ };
61
+
62
+ const namedReturnedFunc = <T extends (...args: any[]) => any>(func: T) => {
63
+ return (...args: any[]) => {
64
+ return namedFunc(func(...args));
65
+ };
66
+ };
67
+
68
+ import {
69
+ S as _S,
70
+ o as _o,
71
+ cleanup,
72
+ isComputed,
73
+ isListening,
74
+ isObservable,
75
+ isReactive,
76
+ root,
77
+ sample,
78
+ subscribe,
79
+ transaction,
80
+ unsubscribe,
81
+ } from './s.js';
82
+
83
+ export const S = namedReturnedFunc(_S);
84
+ export const o = namedReturnedFunc(_o);
85
+ export const observable = o;
86
+ export const computed = S;
87
+ export { cleanup, isComputed, isListening, isObservable, isReactive, root, sample, subscribe, transaction, unsubscribe };
88
+ export * from './h.js';
package/src/h.ts CHANGED
@@ -1,3 +1,4 @@
1
+ // deno-lint-ignore-file no-explicit-any no-sloppy-imports
1
2
  import { cleanup, isReactive, root, S, sample } from './s.js';
2
3
 
3
4
  const enum InterNodeType {
package/src/index.ts CHANGED
@@ -1,2 +1,3 @@
1
+ // deno-lint-ignore-file no-sloppy-imports
1
2
  export * from './s.js';
2
3
  export * from './h.js';
package/src/s.ts CHANGED
@@ -1,47 +1,44 @@
1
- declare const __SUBAY_DEV__: boolean | undefined;
2
-
3
- const namedFunc = typeof __SUBAY_DEV__ === 'boolean' && __SUBAY_DEV__ ? (await import('./name.js')).namedFunc : <T>(f: T) => f;
4
-
5
- interface IS<T> {
1
+ // deno-lint-ignore-file no-explicit-any
2
+ export interface IS<T = any> {
6
3
  (force?: typeof Yes): T;
7
- _whoIOwn: Array<IS<any>>;
8
- _whoINeed: Set<IO<any> | IS<any>>;
9
- _whoNeedMe: Array<IS<any>>;
4
+ _whoIOwn: Array<IS>;
5
+ _whoINeed: Set<IO | IS>;
6
+ _whoNeedMe: Array<IS>;
10
7
  _dirty: boolean;
11
8
  _onCleanupCallback: Array<() => void>;
12
9
  $o: number;
13
- _lastAccess: number;
10
+ _lastUpdateTime: number;
14
11
  }
15
12
 
16
- type IPartialS<T> = {
13
+ export type IPartialS<T = any> = {
17
14
  (force?: typeof Yes): T;
18
- _whoIOwn?: Array<IS<any>>;
19
- _whoINeed?: Set<IO<any> | IS<any>>;
20
- _whoNeedMe?: Array<IS<any>>;
15
+ _whoIOwn?: Array<IS>;
16
+ _whoINeed?: Set<IO | IS>;
17
+ _whoNeedMe?: Array<IS>;
21
18
  _dirty?: boolean;
22
19
  _onCleanupCallback?: Array<() => void>;
23
20
  $o?: number;
24
- _lastAccess?: number;
21
+ _lastUpdateTime?: number;
25
22
  };
26
23
 
27
- interface IO<T> {
24
+ export interface IO<T = any> {
28
25
  (): T;
29
26
  (nextValue: T): T;
30
- _whoNeedMe: Array<IS<any>>;
31
- _pendingValue: any;
27
+ _whoNeedMe: Array<IS>;
28
+ _pendingValue: T | typeof NoValue;
32
29
  $o: number;
33
30
  }
34
31
 
35
- let currentUpdate: IS<any> | undefined = undefined;
32
+ let currentUpdate: IS | undefined = undefined;
36
33
  const NoValue: unique symbol = Symbol();
37
34
  const Yes: unique symbol = Symbol();
38
- let triggerQueue: Array<IO<any>> | undefined = undefined;
39
- const fun2s = new WeakMap<(...args: any[]) => any, IS<any>>();
35
+ let triggerQueue: Array<IO> | undefined = undefined;
36
+ const fun2s = new WeakMap<(...args: any[]) => any, IS>();
40
37
  let clock = 0;
41
38
 
42
39
  export const root = <T>(fn: (destroy: () => void) => T): T => {
43
40
  const backup = currentUpdate;
44
- const rootUpdate: IS<any> = (() => {}) as any;
41
+ const rootUpdate: IS = (() => {}) as any;
45
42
  resetS(rootUpdate);
46
43
  rootUpdate._dirty = false;
47
44
  currentUpdate = rootUpdate;
@@ -53,25 +50,22 @@ export const root = <T>(fn: (destroy: () => void) => T): T => {
53
50
  return result;
54
51
  };
55
52
  export const S = <T>(fn: (pv: T | undefined) => T, value?: T): IS<T> => {
56
- const data: IS<T> = namedFunc(
57
- resetS((force?: typeof Yes) => {
58
- if (force === Yes || data._dirty) {
59
- data._lastAccess = clock;
60
- const backup = currentUpdate;
61
- recycleS(data);
62
- data._dirty = false;
63
- currentUpdate = data;
64
- value = fn(value);
65
- currentUpdate = backup;
66
- } else if (currentUpdate && !currentUpdate._whoINeed.has(data)) {
67
- currentUpdate._whoINeed.add(data);
68
- data._whoNeedMe.push(currentUpdate);
69
- }
70
- return value as T;
71
- }),
72
- );
53
+ const data: IS<T> = resetS((force?: typeof Yes) => {
54
+ if (force === Yes || data._dirty) {
55
+ data._lastUpdateTime = clock++;
56
+ const backup = currentUpdate;
57
+ recycleS(data);
58
+ data._dirty = false;
59
+ currentUpdate = data;
60
+ value = fn(value);
61
+ currentUpdate = backup;
62
+ } else if (currentUpdate && !currentUpdate._whoINeed.has(data)) {
63
+ currentUpdate._whoINeed.add(data);
64
+ data._whoNeedMe.push(currentUpdate);
65
+ }
66
+ return value as T;
67
+ });
73
68
  data.$o = 0xc03;
74
- data._lastAccess = clock++;
75
69
  if (currentUpdate) {
76
70
  currentUpdate._whoIOwn.push(data);
77
71
  }
@@ -90,7 +84,6 @@ export const o = <T>(value: T): IO<T> => {
90
84
  }
91
85
  return value;
92
86
  }
93
- clock++;
94
87
  if (triggerQueue) {
95
88
  if (data._pendingValue === NoValue) {
96
89
  triggerQueue.push(data);
@@ -101,8 +94,8 @@ export const o = <T>(value: T): IO<T> => {
101
94
  value = nextValue!;
102
95
  const backup = currentUpdate;
103
96
  currentUpdate = undefined;
104
- const collection = new Set<IS<any>>();
105
- const collect = (it: IS<any>, by: IS<any> | IO<any>): void => {
97
+ const collection = new Set<IS>();
98
+ const collect = (it: IS, by: IS | IO): void => {
106
99
  if (!it._whoINeed.has(by) || collection.has(it)) {
107
100
  return;
108
101
  }
@@ -115,7 +108,7 @@ export const o = <T>(value: T): IO<T> => {
115
108
  u._dirty = true;
116
109
  });
117
110
  data._whoNeedMe = [];
118
- whoNeedMeLasttime.sort(byLastAccess).forEach((u) => {
111
+ whoNeedMeLasttime.sort(byLastUpdateTime).forEach((u) => {
119
112
  if (u._dirty) {
120
113
  u();
121
114
  }
@@ -123,27 +116,26 @@ export const o = <T>(value: T): IO<T> => {
123
116
  currentUpdate = backup;
124
117
  return value;
125
118
  }
126
- const data = namedFunc(d as IO<T>);
127
- data._whoNeedMe = [] as Array<IS<any>>;
119
+ const data = d as IO<T>;
120
+ data._whoNeedMe = [] as Array<IS>;
128
121
  data._pendingValue = NoValue;
129
122
  data.$o = 0x0b5;
130
- clock++;
131
123
  return data;
132
124
  };
133
- const byLastAccess = (a: IS<any>, b: IS<any>) => a._lastAccess - b._lastAccess;
134
- const recycleS = (update: IS<any>) => {
125
+ const byLastUpdateTime = (a: IS, b: IS) => a._lastUpdateTime - b._lastUpdateTime;
126
+ const recycleS = (update: IS) => {
135
127
  update._whoIOwn.forEach(recycleS);
136
128
  update._dirty = false;
137
129
  update._onCleanupCallback.forEach((f) => f());
138
130
  resetS(update);
139
131
  };
140
132
 
141
- const resetS = (update: IPartialS<any>) => {
133
+ const resetS = (update: IPartialS) => {
142
134
  update._whoINeed = new Set();
143
135
  update._whoNeedMe = [];
144
136
  update._whoIOwn = [];
145
137
  update._onCleanupCallback = [];
146
- return update as IS<any>;
138
+ return update as IS;
147
139
  };
148
140
 
149
141
  export const cleanup = <T extends () => void>(f: T): T => {
@@ -153,7 +145,7 @@ export const cleanup = <T extends () => void>(f: T): T => {
153
145
 
154
146
  export const transaction = <T>(f: () => T): T => {
155
147
  const fallback = triggerQueue;
156
- triggerQueue = [] as IO<any>[];
148
+ triggerQueue = [] as IO[];
157
149
  const result = f();
158
150
  const workedQueue = triggerQueue;
159
151
  triggerQueue = fallback;
@@ -189,6 +181,6 @@ export const unsubscribe = (f: () => void) => {
189
181
  recycleS(update);
190
182
  }
191
183
  };
192
- export const isObservable = (o: any): o is IO<any> => o?.$o === 0x0b5;
193
- export const isComputed = (o: any): o is IS<any> => o?.$o === 0xc03;
194
- export const isReactive = (o: any): o is IO<any> | IS<any> => o?.$o;
184
+ export const isObservable = (o: any): o is IO => o?.$o === 0x0b5;
185
+ export const isComputed = (o: any): o is IS => o?.$o === 0xc03;
186
+ export const isReactive = (o: any): o is IO | IS => o?.$o;