@thyn/core 0.0.185 → 0.0.188

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/dist/element.d.ts CHANGED
@@ -1,5 +1,6 @@
1
+ import { Effect } from "./signals.js";
1
2
  export declare function mount(app: any, parent: any): void;
2
- export declare function collectEffect(effectFn: any): void;
3
+ export declare function collectEffect(ef: Effect): void;
3
4
  export declare function createReactiveTextNode(v: any): any;
4
5
  export declare function component(name: any, props?: any): any;
5
6
  export declare function setAttribute(el: any, key: any, val: any): any;
package/dist/element.js CHANGED
@@ -1,17 +1,17 @@
1
- import { $effect, arrays, effectsToTeardowns, staticEffect } from "./signals.js";
1
+ import { $effect, arrays, StaticEffect } from "./signals.js";
2
2
  export function mount(app, parent) {
3
3
  parent.appendChild(app());
4
4
  }
5
5
  let collectingHead;
6
- export function collectEffect(effectFn) {
6
+ export function collectEffect(ef) {
7
7
  if (collectingHead) {
8
- effectFn.next = collectingHead;
8
+ ef.next = collectingHead;
9
9
  }
10
- collectingHead = effectFn;
10
+ collectingHead = ef;
11
11
  }
12
12
  export function createReactiveTextNode(v) {
13
13
  let n;
14
- staticEffect(() => {
14
+ new StaticEffect(() => {
15
15
  if (n) {
16
16
  n.nodeValue = v();
17
17
  }
@@ -65,7 +65,7 @@ export function setProperty(el, key, val) {
65
65
  }
66
66
  export function setReactiveAttribute(el, key, val) {
67
67
  let ran;
68
- return addEffect(el, staticEffect(() => {
68
+ return addEffect(el, new StaticEffect(() => {
69
69
  const v = val();
70
70
  if (ran) {
71
71
  if (v === undefined)
@@ -81,7 +81,7 @@ export function setReactiveAttribute(el, key, val) {
81
81
  }
82
82
  export function setReactiveProperty(el, key, val) {
83
83
  let ran = true;
84
- return addEffect(el, staticEffect(() => {
84
+ return addEffect(el, new StaticEffect(() => {
85
85
  const v = val();
86
86
  if (ran) {
87
87
  if (v === undefined)
@@ -120,12 +120,9 @@ function shallowTeardown(elem) {
120
120
  let current = elem.$fx;
121
121
  let prev;
122
122
  while (current) {
123
- const td = effectsToTeardowns.get(current);
124
- for (const f of td)
125
- typeof f === "function" ? f() : f.delete(current);
126
- td.length = 0;
127
- arrays.push(td);
128
- effectsToTeardowns.delete(current);
123
+ current.cleanup();
124
+ current.td.length = 0;
125
+ arrays.push(current.td);
129
126
  prev = current;
130
127
  current = current.next;
131
128
  prev.next = undefined;
@@ -256,7 +253,7 @@ export function list(props, terminal = false) {
256
253
  startBookend.$frag = outlet;
257
254
  startBookend.$end = endBookend;
258
255
  const render = props.render;
259
- staticEffect(() => {
256
+ new StaticEffect(() => {
260
257
  parent = startBookend.parentNode;
261
258
  if (!parent) {
262
259
  prevItems = props.items();
@@ -413,7 +410,7 @@ export function isolatedTerminalList(props) {
413
410
  startBookend.$frag = outlet;
414
411
  startBookend.$end = endBookend;
415
412
  const render = props.render;
416
- staticEffect(() => {
413
+ new StaticEffect(() => {
417
414
  parent = startBookend.parentNode;
418
415
  if (!parent) {
419
416
  prevItems = props.items();
package/dist/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  export { addChildren, addEffect, component, createReactiveTextNode, list, markAsReactive, mount, setAttribute, setProperty, setReactiveAttribute, setReactiveProperty, show, terminalList, isolatedTerminalList, } from "./element.js";
2
- export { $compare, staticEffect, $effect, $signal, type Signal } from "./signals.js";
2
+ export { $compare, StaticEffect, $effect, $signal, type Signal } from "./signals.js";
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
1
  export { addChildren, addEffect, component, createReactiveTextNode, list, markAsReactive, mount, setAttribute, setProperty, setReactiveAttribute, setReactiveProperty, show, terminalList, isolatedTerminalList, } from "./element.js";
2
- export { $compare, staticEffect, $effect, $signal } from "./signals.js";
2
+ export { $compare, StaticEffect, $effect, $signal } from "./signals.js";
package/dist/router.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { component, show } from "./element.js";
2
- import { $signal, staticEffect } from "./signals.js";
2
+ import { $signal, StaticEffect } from "./signals.js";
3
3
  const params = $signal({});
4
4
  export const router = {
5
5
  path: $signal(location.pathname),
@@ -20,7 +20,7 @@ export function Router({ routes }) {
20
20
  })}$`);
21
21
  return compiledRoute;
22
22
  });
23
- staticEffect(() => {
23
+ new StaticEffect(() => {
24
24
  const pn = router.path();
25
25
  if (pn !== location.pathname) {
26
26
  history.pushState({}, "", pn);
package/dist/signals.d.ts CHANGED
@@ -5,7 +5,26 @@ export type Signal<T> = {
5
5
  };
6
6
  export declare function $signal<T>(value: T): Signal<T>;
7
7
  export declare function $compare<T>(fn: () => T): (value: T) => boolean;
8
- export declare const effectsToTeardowns: Map<Function, any[]>;
8
+ type EffectFunction = (() => (() => void) | void);
9
+ export interface Effect {
10
+ fn: EffectFunction;
11
+ cleanup: () => void;
12
+ next?: Effect;
13
+ }
14
+ export declare class StaticEffect implements Effect {
15
+ fn: EffectFunction;
16
+ constructor(fn: EffectFunction);
17
+ run(): void;
18
+ td: any;
19
+ next?: Effect;
20
+ cleanup(): void;
21
+ }
22
+ declare class DynamicEffect extends StaticEffect {
23
+ fn: EffectFunction;
24
+ constructor(fn: EffectFunction);
25
+ dyn: boolean;
26
+ mv: boolean;
27
+ }
9
28
  export declare const arrays: any[];
10
- export declare function $effect(fn: (() => (() => void) | void) & any): any;
11
- export declare function staticEffect(fn: (() => (() => void) | void) & any): any;
29
+ export declare function $effect(fn: (() => (() => void) | void) & any): DynamicEffect;
30
+ export {};
package/dist/signals.js CHANGED
@@ -9,16 +9,15 @@ function scheduleEffect(effectFn) {
9
9
  queueMicrotask(() => {
10
10
  for (const ef of pendingEffects) {
11
11
  if (ef.dyn) {
12
- const td = effectsToTeardowns.get(ef);
13
- for (const f of td)
12
+ for (const f of ef.td)
14
13
  typeof f === "function" ? f() : f.delete(ef);
15
14
  const prev = currentEffect;
16
15
  currentEffect = ef;
17
- runEffectFn(ef);
16
+ ef.run();
18
17
  currentEffect = prev;
19
18
  }
20
19
  else {
21
- ef();
20
+ ef.run();
22
21
  }
23
22
  }
24
23
  pendingEffects.length = 0;
@@ -32,7 +31,7 @@ export function $signal(value) {
32
31
  if (!args.length) {
33
32
  if (currentEffect) {
34
33
  subs.add(currentEffect);
35
- effectsToTeardowns.get(currentEffect).push(subs);
34
+ currentEffect.td.push(subs);
36
35
  }
37
36
  return value;
38
37
  }
@@ -71,7 +70,7 @@ class CompareSet {
71
70
  export function $compare(fn) {
72
71
  const map = new Map();
73
72
  let current = fn();
74
- staticEffect(() => {
73
+ new StaticEffect(() => {
75
74
  const newValue = fn();
76
75
  if (newValue === current)
77
76
  return;
@@ -90,30 +89,46 @@ export function $compare(fn) {
90
89
  return current === value;
91
90
  };
92
91
  }
93
- export const effectsToTeardowns = new Map();
94
92
  function runEffectFn(ef) {
95
93
  const td = ef();
96
94
  if (td) {
97
- effectsToTeardowns.get(ef).push(td);
95
+ ef.td.push(td);
96
+ }
97
+ }
98
+ export class StaticEffect {
99
+ constructor(fn) {
100
+ this.fn = fn;
101
+ this.td = arrays.pop() ?? [];
102
+ const prev = currentEffect;
103
+ currentEffect = this;
104
+ this.run();
105
+ currentEffect = prev;
106
+ collectEffect(this);
107
+ }
108
+ run() {
109
+ const td = this.fn();
110
+ if (td) {
111
+ this.td.push(td);
112
+ }
113
+ }
114
+ cleanup() {
115
+ for (const f of this.td) {
116
+ if (typeof f === "function")
117
+ f();
118
+ else
119
+ f.delete(this);
120
+ }
121
+ }
122
+ }
123
+ class DynamicEffect extends StaticEffect {
124
+ constructor(fn) {
125
+ super(fn);
126
+ this.fn = fn;
127
+ this.dyn = true;
128
+ this.mv = false;
98
129
  }
99
130
  }
100
131
  export const arrays = [];
101
132
  export function $effect(fn) {
102
- effectsToTeardowns.set(fn, arrays.pop() ?? []);
103
- const prev = currentEffect;
104
- currentEffect = fn;
105
- fn.dyn = true;
106
- runEffectFn(fn);
107
- currentEffect = prev;
108
- collectEffect(fn);
109
- return fn;
110
- }
111
- export function staticEffect(fn) {
112
- effectsToTeardowns.set(fn, arrays.pop() ?? []);
113
- const prev = currentEffect;
114
- currentEffect = fn;
115
- fn();
116
- currentEffect = prev;
117
- collectEffect(fn);
118
- return fn;
133
+ return new DynamicEffect(fn);
119
134
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thyn/core",
3
- "version": "0.0.185",
3
+ "version": "0.0.188",
4
4
  "scripts": {
5
5
  "build": "tsc",
6
6
  "pub": "tsc && npm version patch -f && npm -f publish --access=public",
package/src/element.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { $effect, arrays, effectsToTeardowns, staticEffect } from "./signals.js";
1
+ import { $effect, arrays, Effect, StaticEffect } from "./signals.js";
2
2
 
3
3
  export function mount(app, parent) {
4
4
  parent.appendChild(app());
@@ -6,16 +6,16 @@ export function mount(app, parent) {
6
6
 
7
7
  let collectingHead;
8
8
 
9
- export function collectEffect(effectFn) {
9
+ export function collectEffect(ef: Effect) {
10
10
  if (collectingHead) {
11
- effectFn.next = collectingHead;
11
+ ef.next = collectingHead;
12
12
  }
13
- collectingHead = effectFn;
13
+ collectingHead = ef;
14
14
  }
15
15
 
16
16
  export function createReactiveTextNode(v) {
17
17
  let n;
18
- staticEffect(() => {
18
+ new StaticEffect(() => {
19
19
  if (n) {
20
20
  n.nodeValue = v();
21
21
  } else {
@@ -71,7 +71,7 @@ export function setReactiveAttribute(el, key, val) {
71
71
  let ran;
72
72
  return addEffect(
73
73
  el,
74
- staticEffect(() => {
74
+ new StaticEffect(() => {
75
75
  const v = val();
76
76
  if (ran) {
77
77
  if (v === undefined) el.removeAttribute(key);
@@ -87,7 +87,7 @@ export function setReactiveProperty(el, key, val) {
87
87
  let ran = true;
88
88
  return addEffect(
89
89
  el,
90
- staticEffect(() => {
90
+ new StaticEffect(() => {
91
91
  const v = val();
92
92
  if (ran) {
93
93
  if (v === undefined) delete el[key];
@@ -126,11 +126,9 @@ function shallowTeardown(elem) {
126
126
  let current = elem.$fx;
127
127
  let prev;
128
128
  while (current) {
129
- const td = effectsToTeardowns.get(current);
130
- for (const f of td) typeof f === "function" ? f() : f.delete(current);
131
- td.length = 0;
132
- arrays.push(td);
133
- effectsToTeardowns.delete(current);
129
+ current.cleanup();
130
+ current.td.length = 0;
131
+ arrays.push(current.td);
134
132
  prev = current;
135
133
  current = current.next;
136
134
  prev.next = undefined;
@@ -272,7 +270,7 @@ export function list(props, terminal = false) {
272
270
  startBookend.$end = endBookend;
273
271
  const render = props.render;
274
272
 
275
- staticEffect(() => {
273
+ new StaticEffect(() => {
276
274
  parent = startBookend.parentNode;
277
275
  if (!parent) {
278
276
  prevItems = props.items();
@@ -440,7 +438,7 @@ export function isolatedTerminalList(props) {
440
438
  startBookend.$end = endBookend;
441
439
  const render = props.render;
442
440
 
443
- staticEffect(() => {
441
+ new StaticEffect(() => {
444
442
  parent = startBookend.parentNode;
445
443
  if (!parent) {
446
444
  prevItems = props.items();
package/src/index.ts CHANGED
@@ -14,4 +14,4 @@ export {
14
14
  terminalList,
15
15
  isolatedTerminalList,
16
16
  } from "./element.js";
17
- export { $compare, staticEffect, $effect, $signal, type Signal } from "./signals.js";
17
+ export { $compare, StaticEffect, $effect, $signal, type Signal } from "./signals.js";
package/src/router.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { component, show } from "./element.js";
2
- import { $signal, staticEffect } from "./signals.js";
2
+ import { $signal, StaticEffect } from "./signals.js";
3
3
 
4
4
  const params = $signal({} as any);
5
5
 
@@ -30,7 +30,7 @@ export function Router({ routes }: { routes: Route[] }) {
30
30
  return compiledRoute;
31
31
  });
32
32
 
33
- staticEffect(() => {
33
+ new StaticEffect(() => {
34
34
  const pn = router.path();
35
35
  if (pn !== location.pathname) {
36
36
  history.pushState({}, "", pn);
package/src/signals.ts CHANGED
@@ -12,14 +12,13 @@ function scheduleEffect(effectFn: EffectFn) {
12
12
  queueMicrotask(() => {
13
13
  for (const ef of pendingEffects) {
14
14
  if (ef.dyn) {
15
- const td = effectsToTeardowns.get(ef);
16
- for (const f of td) typeof f === "function" ? f() : f.delete(ef);
15
+ for (const f of ef.td) typeof f === "function" ? f() : f.delete(ef);
17
16
  const prev = currentEffect;
18
17
  currentEffect = ef;
19
- runEffectFn(ef);
18
+ ef.run();
20
19
  currentEffect = prev;
21
20
  } else {
22
- ef();
21
+ ef.run();
23
22
  }
24
23
  }
25
24
  pendingEffects.length = 0;
@@ -41,7 +40,7 @@ export function $signal<T>(value: T): Signal<T> {
41
40
  if (!args.length) {
42
41
  if (currentEffect) {
43
42
  subs.add(currentEffect);
44
- effectsToTeardowns.get(currentEffect).push(subs);
43
+ currentEffect.td.push(subs);
45
44
  }
46
45
  return value;
47
46
  }
@@ -83,7 +82,7 @@ export function $compare<T>(fn: () => T): (value: T) => boolean {
83
82
  const map = new Map<T, CompareSet>();
84
83
  let current: T = fn();
85
84
 
86
- staticEffect(() => {
85
+ new StaticEffect(() => {
87
86
  const newValue = fn();
88
87
  if (newValue === current) return;
89
88
  map.get(current)?.run();
@@ -102,39 +101,68 @@ export function $compare<T>(fn: () => T): (value: T) => boolean {
102
101
  };
103
102
  }
104
103
 
105
- export const effectsToTeardowns = new Map<Function, any[]>();
106
104
  function runEffectFn(ef: EffectFn) {
107
105
  const td = ef();
108
106
  if (td) {
109
- effectsToTeardowns.get(ef).push(td);
107
+ ef.td.push(td);
110
108
  }
111
109
  }
112
110
 
111
+ type EffectFunction = (() => (() => void) | void);
112
+
113
113
  type EffectFn = (() => (() => void) | void) & {
114
114
  mv?: boolean;
115
115
  dyn?: boolean;
116
116
  td: ((() => void) | { delete: (v: any) => void })[];
117
117
  }
118
118
 
119
+ // type EffectTeardown = ((() => void) | { delete: (v: any) => void })[];
120
+
121
+ export interface Effect {
122
+ fn: EffectFunction;
123
+ cleanup: () => void;
124
+ next?: Effect;
125
+ }
126
+
127
+ export class StaticEffect implements Effect {
128
+ constructor(public fn: EffectFunction) {
129
+ const prev = currentEffect;
130
+ currentEffect = this;
131
+ this.run();
132
+ currentEffect = prev;
133
+ collectEffect(this);
134
+ }
135
+
136
+ run() {
137
+ const td = this.fn();
138
+ if (td) {
139
+ this.td.push(td);
140
+ }
141
+ }
142
+
143
+ td = arrays.pop() ?? [];
144
+
145
+ next?: Effect;
146
+
147
+ cleanup() {
148
+ for (const f of this.td) {
149
+ if (typeof f === "function") f();
150
+ else f.delete(this);
151
+ }
152
+ }
153
+ }
154
+
155
+ class DynamicEffect extends StaticEffect {
156
+ constructor(public fn: EffectFunction) {
157
+ super(fn);
158
+ }
159
+ dyn = true;
160
+ mv = false;
161
+ }
162
+
119
163
  export const arrays = [];
120
164
 
121
165
  export function $effect(fn: (() => (() => void) | void) & any) {
122
- effectsToTeardowns.set(fn, arrays.pop() ?? []);
123
- const prev = currentEffect;
124
- currentEffect = fn;
125
- fn.dyn = true;
126
- runEffectFn(fn);
127
- currentEffect = prev;
128
- collectEffect(fn);
129
- return fn;
166
+ return new DynamicEffect(fn);
130
167
  }
131
168
 
132
- export function staticEffect(fn: (() => (() => void) | void) & any) {
133
- effectsToTeardowns.set(fn, arrays.pop() ?? []);
134
- const prev = currentEffect;
135
- currentEffect = fn;
136
- fn();
137
- currentEffect = prev;
138
- collectEffect(fn);
139
- return fn;
140
- }
@@ -1 +1 @@
1
- {"fileNames":["./node_modules/typescript/lib/lib.es5.d.ts","./node_modules/typescript/lib/lib.es2015.d.ts","./node_modules/typescript/lib/lib.es2016.d.ts","./node_modules/typescript/lib/lib.es2017.d.ts","./node_modules/typescript/lib/lib.es2018.d.ts","./node_modules/typescript/lib/lib.es2019.d.ts","./node_modules/typescript/lib/lib.es2020.d.ts","./node_modules/typescript/lib/lib.dom.d.ts","./node_modules/typescript/lib/lib.dom.iterable.d.ts","./node_modules/typescript/lib/lib.dom.asynciterable.d.ts","./node_modules/typescript/lib/lib.webworker.importscripts.d.ts","./node_modules/typescript/lib/lib.scripthost.d.ts","./node_modules/typescript/lib/lib.es2015.core.d.ts","./node_modules/typescript/lib/lib.es2015.collection.d.ts","./node_modules/typescript/lib/lib.es2015.generator.d.ts","./node_modules/typescript/lib/lib.es2015.iterable.d.ts","./node_modules/typescript/lib/lib.es2015.promise.d.ts","./node_modules/typescript/lib/lib.es2015.proxy.d.ts","./node_modules/typescript/lib/lib.es2015.reflect.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2016.array.include.d.ts","./node_modules/typescript/lib/lib.es2016.intl.d.ts","./node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","./node_modules/typescript/lib/lib.es2017.date.d.ts","./node_modules/typescript/lib/lib.es2017.object.d.ts","./node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2017.string.d.ts","./node_modules/typescript/lib/lib.es2017.intl.d.ts","./node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","./node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","./node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","./node_modules/typescript/lib/lib.es2018.intl.d.ts","./node_modules/typescript/lib/lib.es2018.promise.d.ts","./node_modules/typescript/lib/lib.es2018.regexp.d.ts","./node_modules/typescript/lib/lib.es2019.array.d.ts","./node_modules/typescript/lib/lib.es2019.object.d.ts","./node_modules/typescript/lib/lib.es2019.string.d.ts","./node_modules/typescript/lib/lib.es2019.symbol.d.ts","./node_modules/typescript/lib/lib.es2019.intl.d.ts","./node_modules/typescript/lib/lib.es2020.bigint.d.ts","./node_modules/typescript/lib/lib.es2020.date.d.ts","./node_modules/typescript/lib/lib.es2020.promise.d.ts","./node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2020.string.d.ts","./node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2020.intl.d.ts","./node_modules/typescript/lib/lib.es2020.number.d.ts","./node_modules/typescript/lib/lib.decorators.d.ts","./node_modules/typescript/lib/lib.decorators.legacy.d.ts","./node_modules/typescript/lib/lib.es2020.full.d.ts","./src/signals.ts","./src/element.ts","./src/index.ts","./src/router.ts","./node_modules/@types/deep-eql/index.d.ts","./node_modules/@types/chai/index.d.ts","./node_modules/@types/estree/index.d.ts"],"fileIdsList":[[56],[52],[52,53],[53]],"fileInfos":[{"version":"69684132aeb9b5642cbcd9e22dff7818ff0ee1aa831728af0ecf97d3364d5546","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"092c2bfe125ce69dbb1223c85d68d4d2397d7d8411867b5cc03cec902c233763","affectsGlobalScope":true,"impliedFormat":1},{"version":"07f073f19d67f74d732b1adea08e1dc66b1b58d77cb5b43931dee3d798a2fd53","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"936e80ad36a2ee83fc3caf008e7c4c5afe45b3cf3d5c24408f039c1d47bdc1df","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"fef8cfad2e2dc5f5b3d97a6f4f2e92848eb1b88e897bb7318cef0e2820bceaab","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"1305d1e76ca44e30fb8b2b8075fa522b83f60c0bcf5d4326a9d2cf79b53724f8","impliedFormat":1},{"version":"9269234be4aec952a628805029242ad3cf986c4388f4e248feb5f3c0f266c6f8","signature":"42065bcef43aa997082ae48adf58d05a508a59b904af65de3f5c771c4cff5ab6"},{"version":"beea539fbbf0bc234a73c1a2c975365789ac1ce7b3eb5d1e12fc3bf3cac1a343","signature":"1e9fd227702d856993cc7d708cc104bcbea5c070fbf976204a77c36457b1342e"},{"version":"25ffe7c7a256b3e2b6238eec671c905d906a78e09add2d36de8e13ea4786818e","signature":"6b7d6f21cf40139e4c2c800b252da7b9fa09606a4da0f5efbebd80de474740c2"},{"version":"23e3a2d8ef7695586b582f6366a28b1404801ada9a0c82d895f19344f8100ea5","signature":"a32c52a25b47067dac589266e7667623ea1ef2b0c1f9c4fd41adbc7b67a59eee"},{"version":"427fe2004642504828c1476d0af4270e6ad4db6de78c0b5da3e4c5ca95052a99","impliedFormat":1},{"version":"c8905dbea83f3220676a669366cd8c1acef56af4d9d72a8b2241b1d044bb4302","affectsGlobalScope":true,"impliedFormat":99},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1}],"root":[[52,55]],"options":{"allowJs":true,"checkJs":false,"composite":true,"esModuleInterop":true,"module":99,"outDir":"./dist","rootDir":"./src","skipLibCheck":true,"target":7},"referencedMap":[[57,1],[53,2],[54,3],[55,3],[52,4]],"latestChangedDtsFile":"./dist/signals.d.ts","version":"5.8.3"}
1
+ {"fileNames":["./node_modules/typescript/lib/lib.es5.d.ts","./node_modules/typescript/lib/lib.es2015.d.ts","./node_modules/typescript/lib/lib.es2016.d.ts","./node_modules/typescript/lib/lib.es2017.d.ts","./node_modules/typescript/lib/lib.es2018.d.ts","./node_modules/typescript/lib/lib.es2019.d.ts","./node_modules/typescript/lib/lib.es2020.d.ts","./node_modules/typescript/lib/lib.dom.d.ts","./node_modules/typescript/lib/lib.dom.iterable.d.ts","./node_modules/typescript/lib/lib.dom.asynciterable.d.ts","./node_modules/typescript/lib/lib.webworker.importscripts.d.ts","./node_modules/typescript/lib/lib.scripthost.d.ts","./node_modules/typescript/lib/lib.es2015.core.d.ts","./node_modules/typescript/lib/lib.es2015.collection.d.ts","./node_modules/typescript/lib/lib.es2015.generator.d.ts","./node_modules/typescript/lib/lib.es2015.iterable.d.ts","./node_modules/typescript/lib/lib.es2015.promise.d.ts","./node_modules/typescript/lib/lib.es2015.proxy.d.ts","./node_modules/typescript/lib/lib.es2015.reflect.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2016.array.include.d.ts","./node_modules/typescript/lib/lib.es2016.intl.d.ts","./node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","./node_modules/typescript/lib/lib.es2017.date.d.ts","./node_modules/typescript/lib/lib.es2017.object.d.ts","./node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2017.string.d.ts","./node_modules/typescript/lib/lib.es2017.intl.d.ts","./node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","./node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","./node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","./node_modules/typescript/lib/lib.es2018.intl.d.ts","./node_modules/typescript/lib/lib.es2018.promise.d.ts","./node_modules/typescript/lib/lib.es2018.regexp.d.ts","./node_modules/typescript/lib/lib.es2019.array.d.ts","./node_modules/typescript/lib/lib.es2019.object.d.ts","./node_modules/typescript/lib/lib.es2019.string.d.ts","./node_modules/typescript/lib/lib.es2019.symbol.d.ts","./node_modules/typescript/lib/lib.es2019.intl.d.ts","./node_modules/typescript/lib/lib.es2020.bigint.d.ts","./node_modules/typescript/lib/lib.es2020.date.d.ts","./node_modules/typescript/lib/lib.es2020.promise.d.ts","./node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2020.string.d.ts","./node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2020.intl.d.ts","./node_modules/typescript/lib/lib.es2020.number.d.ts","./node_modules/typescript/lib/lib.decorators.d.ts","./node_modules/typescript/lib/lib.decorators.legacy.d.ts","./node_modules/typescript/lib/lib.es2020.full.d.ts","./src/signals.ts","./src/element.ts","./src/index.ts","./src/router.ts","./node_modules/@types/deep-eql/index.d.ts","./node_modules/@types/chai/index.d.ts","./node_modules/@types/estree/index.d.ts"],"fileIdsList":[[56],[52],[52,53],[53]],"fileInfos":[{"version":"69684132aeb9b5642cbcd9e22dff7818ff0ee1aa831728af0ecf97d3364d5546","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"092c2bfe125ce69dbb1223c85d68d4d2397d7d8411867b5cc03cec902c233763","affectsGlobalScope":true,"impliedFormat":1},{"version":"07f073f19d67f74d732b1adea08e1dc66b1b58d77cb5b43931dee3d798a2fd53","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"936e80ad36a2ee83fc3caf008e7c4c5afe45b3cf3d5c24408f039c1d47bdc1df","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"fef8cfad2e2dc5f5b3d97a6f4f2e92848eb1b88e897bb7318cef0e2820bceaab","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"1305d1e76ca44e30fb8b2b8075fa522b83f60c0bcf5d4326a9d2cf79b53724f8","impliedFormat":1},{"version":"3e5fe77f4b3616cb8c5a98ee58c84a49257dfd6e89cd9c251b7ad1f8c3b4ee18","signature":"09317d334074e15bd7b694e1047e267512a576543a700562bf0049a675a4ad64"},{"version":"774660691bc46bcf8dbcb1b82cd82bd6115d5b8d008e61fe60db9c307023d0fa","signature":"d333a2429f57ec4b22b9af18c8446fff3bd8ef4212c9cbabf4f655f9e2cbe6c0"},{"version":"c1fdf55aa5ff3ad0e36bcb939d004b81b6cee216b08df116fc9cfa7f6407a7ab","signature":"cd15d8431d63eac7e04138d626256dae3e3a09a09649780245459733e753dc26"},{"version":"af03eb50b5b977be7f61d5417d4c53c6255ba8fb8d574e76ce964b2b1e62f2a3","signature":"a32c52a25b47067dac589266e7667623ea1ef2b0c1f9c4fd41adbc7b67a59eee"},{"version":"427fe2004642504828c1476d0af4270e6ad4db6de78c0b5da3e4c5ca95052a99","impliedFormat":1},{"version":"c8905dbea83f3220676a669366cd8c1acef56af4d9d72a8b2241b1d044bb4302","affectsGlobalScope":true,"impliedFormat":99},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1}],"root":[[52,55]],"options":{"allowJs":true,"checkJs":false,"composite":true,"esModuleInterop":true,"module":99,"outDir":"./dist","rootDir":"./src","skipLibCheck":true,"target":7},"referencedMap":[[57,1],[53,2],[54,3],[55,3],[52,4]],"latestChangedDtsFile":"./dist/index.d.ts","version":"5.8.3"}