async-reactivity 2.1.0 → 2.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/computed.js +26 -6
- package/lib/computed.test.js +51 -0
- package/lib/effect.js +41 -13
- package/package.json +1 -1
- package/src/computed.test.ts +60 -0
- package/src/computed.ts +24 -6
- package/src/effect.ts +45 -14
- package/types/computed.d.ts +1 -0
- package/types/computed.d.ts.map +1 -1
- package/types/effect.d.ts.map +1 -1
package/lib/computed.js
CHANGED
|
@@ -5,6 +5,7 @@ import Effect, { EffectState, InSyncSymbol } from "./effect.js";
|
|
|
5
5
|
class CircularDependencyError extends Error {
|
|
6
6
|
}
|
|
7
7
|
export default class Computed extends Effect {
|
|
8
|
+
oldValue;
|
|
8
9
|
_value;
|
|
9
10
|
getter;
|
|
10
11
|
isEqual;
|
|
@@ -12,7 +13,7 @@ export default class Computed extends Effect {
|
|
|
12
13
|
deferrer;
|
|
13
14
|
constructor(getter, isEqual = (defaultIsEqual), timeToLive) {
|
|
14
15
|
super(((value, _firstRun, abortSignal) => {
|
|
15
|
-
return getter(value, this.
|
|
16
|
+
return getter(value, this.oldValue, abortSignal);
|
|
16
17
|
}), true);
|
|
17
18
|
this.getter = getter;
|
|
18
19
|
this.isEqual = isEqual;
|
|
@@ -26,12 +27,31 @@ export default class Computed extends Effect {
|
|
|
26
27
|
}
|
|
27
28
|
get value() {
|
|
28
29
|
if (this.state === EffectState.Initial || this.state === EffectState.Scheduled) {
|
|
29
|
-
|
|
30
|
+
this.oldValue = this._value;
|
|
30
31
|
const newValue = this.run();
|
|
31
|
-
if (newValue
|
|
32
|
-
this.
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
if (newValue === InSyncSymbol) {
|
|
33
|
+
this.validateDependents();
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
if (newValue instanceof Promise) {
|
|
37
|
+
// @ts-expect-error
|
|
38
|
+
this._value = Promise.all([newValue, this.oldValue])
|
|
39
|
+
.then(([newValue, oldValue]) => {
|
|
40
|
+
if (newValue === InSyncSymbol) {
|
|
41
|
+
this.validateDependents();
|
|
42
|
+
return oldValue;
|
|
43
|
+
}
|
|
44
|
+
if (this.dependents.size > 0 && this.isEqual(newValue, oldValue)) {
|
|
45
|
+
this.validateDependents();
|
|
46
|
+
}
|
|
47
|
+
return newValue;
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
this._value = newValue;
|
|
52
|
+
if (this.dependents.size > 0 && this.isEqual(newValue, this.oldValue)) {
|
|
53
|
+
this.validateDependents();
|
|
54
|
+
}
|
|
35
55
|
}
|
|
36
56
|
}
|
|
37
57
|
}
|
package/lib/computed.test.js
CHANGED
|
@@ -115,6 +115,23 @@ describe('computed', function () {
|
|
|
115
115
|
assert.strictEqual(c.value, 6);
|
|
116
116
|
assert.strictEqual(gate, 1);
|
|
117
117
|
});
|
|
118
|
+
it('ignore in sync dependencies', function () {
|
|
119
|
+
let gate = 0;
|
|
120
|
+
const a = new Ref(5);
|
|
121
|
+
const b = new Computed((value) => {
|
|
122
|
+
return value(a) % 2 + 5;
|
|
123
|
+
});
|
|
124
|
+
const c = new Computed((value) => value(b));
|
|
125
|
+
const d = new Computed((value) => {
|
|
126
|
+
gate++;
|
|
127
|
+
return value(c);
|
|
128
|
+
});
|
|
129
|
+
assert.strictEqual(d.value, 6);
|
|
130
|
+
assert.strictEqual(gate, 1);
|
|
131
|
+
a.value = 7;
|
|
132
|
+
assert.strictEqual(d.value, 6);
|
|
133
|
+
assert.strictEqual(gate, 1);
|
|
134
|
+
});
|
|
118
135
|
it('compute when forced', function () {
|
|
119
136
|
let gate = 0;
|
|
120
137
|
const a = new Ref(5);
|
|
@@ -304,6 +321,40 @@ describe('computed', function () {
|
|
|
304
321
|
assert.strictEqual(await v, 5);
|
|
305
322
|
assert.strictEqual(gate, 1);
|
|
306
323
|
});
|
|
324
|
+
it('ignore same computed values', async function () {
|
|
325
|
+
let gate = 0;
|
|
326
|
+
const a = new Ref(5);
|
|
327
|
+
const b1 = new Computed(async (value) => {
|
|
328
|
+
return value(a) % 2;
|
|
329
|
+
});
|
|
330
|
+
const b2 = new Computed(async () => 5);
|
|
331
|
+
const c = new Computed(async (value) => {
|
|
332
|
+
gate++;
|
|
333
|
+
return await value(b1) + await value(b2);
|
|
334
|
+
});
|
|
335
|
+
assert.strictEqual(await c.value, 6);
|
|
336
|
+
assert.strictEqual(gate, 1);
|
|
337
|
+
a.value = 7;
|
|
338
|
+
assert.strictEqual(await c.value, 6);
|
|
339
|
+
assert.strictEqual(gate, 1);
|
|
340
|
+
});
|
|
341
|
+
it('ignore in sync dependencies', async function () {
|
|
342
|
+
let gate = 0;
|
|
343
|
+
const a = new Ref(5);
|
|
344
|
+
const b = new Computed(async (value) => {
|
|
345
|
+
return value(a) % 2 + 5;
|
|
346
|
+
});
|
|
347
|
+
const c = new Computed(async (value) => await value(b));
|
|
348
|
+
const d = new Computed(async (value) => {
|
|
349
|
+
gate++;
|
|
350
|
+
return await value(c);
|
|
351
|
+
});
|
|
352
|
+
assert.strictEqual(await d.value, 6);
|
|
353
|
+
assert.strictEqual(gate, 1);
|
|
354
|
+
a.value = 7;
|
|
355
|
+
assert.strictEqual(await d.value, 6);
|
|
356
|
+
assert.strictEqual(gate, 1);
|
|
357
|
+
});
|
|
307
358
|
it('reset computed', async function () {
|
|
308
359
|
const a = new Ref(5);
|
|
309
360
|
let gate = 0;
|
package/lib/effect.js
CHANGED
|
@@ -31,21 +31,48 @@ export default class Effect {
|
|
|
31
31
|
trackDependency = this.innerTrackDependency.bind(this);
|
|
32
32
|
run() {
|
|
33
33
|
let firstRun = this.state === EffectState.Initial;
|
|
34
|
-
|
|
35
|
-
const inSync = [...this.dependencies.entries()].every(([d, inSync]) => {
|
|
36
|
-
if (!inSync) {
|
|
37
|
-
d.value;
|
|
38
|
-
return this.dependencies.get(d);
|
|
39
|
-
}
|
|
40
|
-
return inSync;
|
|
41
|
-
});
|
|
42
|
-
if (inSync) {
|
|
43
|
-
this.state = EffectState.Waiting;
|
|
44
|
-
return InSyncSymbol;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
34
|
+
let checkInSync = this.state === EffectState.Scheduled;
|
|
47
35
|
this.state = EffectState.Running;
|
|
48
36
|
const getResult = () => {
|
|
37
|
+
if (checkInSync) {
|
|
38
|
+
const dependenciesInSync = (iterator = this.dependencies.entries()) => {
|
|
39
|
+
const next = iterator.next();
|
|
40
|
+
if (next.done) {
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
const [d, inSync] = next.value;
|
|
44
|
+
const completeCheck = () => {
|
|
45
|
+
if (!this.dependencies.get(d)) {
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
return dependenciesInSync(iterator);
|
|
49
|
+
};
|
|
50
|
+
if (!inSync) {
|
|
51
|
+
const result = d.value;
|
|
52
|
+
if (result instanceof Promise) {
|
|
53
|
+
return result.then(completeCheck);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return completeCheck();
|
|
57
|
+
};
|
|
58
|
+
const resultMaybePromise = dependenciesInSync();
|
|
59
|
+
if (resultMaybePromise instanceof Promise) {
|
|
60
|
+
return resultMaybePromise.then(result => {
|
|
61
|
+
if (result) {
|
|
62
|
+
this.state = EffectState.Waiting;
|
|
63
|
+
return InSyncSymbol;
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
checkInSync = false;
|
|
67
|
+
return getResult();
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
else if (resultMaybePromise) {
|
|
72
|
+
this.state = EffectState.Waiting;
|
|
73
|
+
return InSyncSymbol;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
49
76
|
this.clearDependencies(runPromise);
|
|
50
77
|
this.abortHandler = (() => {
|
|
51
78
|
const handler = {
|
|
@@ -66,6 +93,7 @@ export default class Effect {
|
|
|
66
93
|
const completeRun = (resolve, result, err, async) => {
|
|
67
94
|
if (this.abortHandler.aborted) {
|
|
68
95
|
firstRun = false;
|
|
96
|
+
checkInSync = false;
|
|
69
97
|
if (this.computed || async) {
|
|
70
98
|
return getResult();
|
|
71
99
|
}
|
package/package.json
CHANGED
package/src/computed.test.ts
CHANGED
|
@@ -137,6 +137,26 @@ describe('computed', function () {
|
|
|
137
137
|
assert.strictEqual(gate, 1);
|
|
138
138
|
});
|
|
139
139
|
|
|
140
|
+
it('ignore in sync dependencies', function() {
|
|
141
|
+
let gate = 0;
|
|
142
|
+
const a = new Ref(5);
|
|
143
|
+
const b = new Computed((value) => {
|
|
144
|
+
return value(a) % 2 + 5;
|
|
145
|
+
});
|
|
146
|
+
const c = new Computed((value) => value(b));
|
|
147
|
+
const d = new Computed((value) => {
|
|
148
|
+
gate++;
|
|
149
|
+
return value(c);
|
|
150
|
+
});
|
|
151
|
+
|
|
152
|
+
assert.strictEqual(d.value, 6);
|
|
153
|
+
assert.strictEqual(gate, 1);
|
|
154
|
+
|
|
155
|
+
a.value = 7;
|
|
156
|
+
assert.strictEqual(d.value, 6);
|
|
157
|
+
assert.strictEqual(gate, 1);
|
|
158
|
+
});
|
|
159
|
+
|
|
140
160
|
it('compute when forced', function () {
|
|
141
161
|
let gate = 0;
|
|
142
162
|
const a = new Ref(5);
|
|
@@ -351,6 +371,46 @@ describe('computed', function () {
|
|
|
351
371
|
assert.strictEqual(gate, 1);
|
|
352
372
|
});
|
|
353
373
|
|
|
374
|
+
it('ignore same computed values', async function () {
|
|
375
|
+
let gate = 0;
|
|
376
|
+
const a = new Ref(5);
|
|
377
|
+
const b1 = new Computed(async (value) => {
|
|
378
|
+
return value(a) % 2;
|
|
379
|
+
});
|
|
380
|
+
const b2 = new Computed(async () => 5);
|
|
381
|
+
const c = new Computed(async (value) => {
|
|
382
|
+
gate++;
|
|
383
|
+
return await value(b1) + await value(b2);
|
|
384
|
+
});
|
|
385
|
+
|
|
386
|
+
assert.strictEqual(await c.value, 6);
|
|
387
|
+
assert.strictEqual(gate, 1);
|
|
388
|
+
|
|
389
|
+
a.value = 7;
|
|
390
|
+
assert.strictEqual(await c.value, 6);
|
|
391
|
+
assert.strictEqual(gate, 1);
|
|
392
|
+
});
|
|
393
|
+
|
|
394
|
+
it('ignore in sync dependencies', async function() {
|
|
395
|
+
let gate = 0;
|
|
396
|
+
const a = new Ref(5);
|
|
397
|
+
const b = new Computed(async (value) => {
|
|
398
|
+
return value(a) % 2 + 5;
|
|
399
|
+
});
|
|
400
|
+
const c = new Computed(async (value) => await value(b));
|
|
401
|
+
const d = new Computed(async (value) => {
|
|
402
|
+
gate++;
|
|
403
|
+
return await value(c);
|
|
404
|
+
});
|
|
405
|
+
|
|
406
|
+
assert.strictEqual(await d.value, 6);
|
|
407
|
+
assert.strictEqual(gate, 1);
|
|
408
|
+
|
|
409
|
+
a.value = 7;
|
|
410
|
+
assert.strictEqual(await d.value, 6);
|
|
411
|
+
assert.strictEqual(gate, 1);
|
|
412
|
+
});
|
|
413
|
+
|
|
354
414
|
it('reset computed', async function () {
|
|
355
415
|
const a = new Ref(5);
|
|
356
416
|
let gate = 0;
|
package/src/computed.ts
CHANGED
|
@@ -12,6 +12,7 @@ export declare type ComputeFuncScoped<T1, T2> = (value: TrackValue, scope: T1, p
|
|
|
12
12
|
class CircularDependencyError extends Error { }
|
|
13
13
|
|
|
14
14
|
export default class Computed<T> extends Effect implements Dependent, Dependency<T> {
|
|
15
|
+
private oldValue?: T;
|
|
15
16
|
private _value?: T;
|
|
16
17
|
getter: ComputeFunc<T>;
|
|
17
18
|
isEqual: typeof defaultIsEqual<T>;
|
|
@@ -21,7 +22,7 @@ export default class Computed<T> extends Effect implements Dependent, Dependency
|
|
|
21
22
|
constructor(getter: ComputeFunc<T>, isEqual = defaultIsEqual<T>, timeToLive?: number) {
|
|
22
23
|
|
|
23
24
|
super(((value, _firstRun, abortSignal) => {
|
|
24
|
-
return getter(value, this.
|
|
25
|
+
return getter(value, this.oldValue, abortSignal);
|
|
25
26
|
}), true);
|
|
26
27
|
|
|
27
28
|
this.getter = getter;
|
|
@@ -38,12 +39,29 @@ export default class Computed<T> extends Effect implements Dependent, Dependency
|
|
|
38
39
|
|
|
39
40
|
public get value(): T {
|
|
40
41
|
if (this.state === EffectState.Initial || this.state === EffectState.Scheduled) {
|
|
41
|
-
|
|
42
|
+
this.oldValue = this._value!;
|
|
42
43
|
const newValue = this.run() as T;
|
|
43
|
-
if (newValue
|
|
44
|
-
this.
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
if (newValue === InSyncSymbol) {
|
|
45
|
+
this.validateDependents();
|
|
46
|
+
} else {
|
|
47
|
+
if (newValue instanceof Promise) {
|
|
48
|
+
// @ts-expect-error
|
|
49
|
+
this._value = Promise.all([newValue, this.oldValue])
|
|
50
|
+
.then(([newValue, oldValue]) => {
|
|
51
|
+
if (newValue === InSyncSymbol) {
|
|
52
|
+
this.validateDependents();
|
|
53
|
+
return oldValue;
|
|
54
|
+
}
|
|
55
|
+
if (this.dependents.size > 0 && this.isEqual(newValue, oldValue)) {
|
|
56
|
+
this.validateDependents();
|
|
57
|
+
}
|
|
58
|
+
return newValue;
|
|
59
|
+
});
|
|
60
|
+
} else {
|
|
61
|
+
this._value = newValue;
|
|
62
|
+
if (this.dependents.size > 0 && this.isEqual(newValue, this.oldValue)) {
|
|
63
|
+
this.validateDependents();
|
|
64
|
+
}
|
|
47
65
|
}
|
|
48
66
|
}
|
|
49
67
|
}
|
package/src/effect.ts
CHANGED
|
@@ -37,24 +37,54 @@ export default class Effect implements Dependent {
|
|
|
37
37
|
|
|
38
38
|
run() {
|
|
39
39
|
let firstRun = this.state === EffectState.Initial;
|
|
40
|
-
|
|
41
|
-
if (this.state === EffectState.Scheduled) {
|
|
42
|
-
const inSync = [...this.dependencies.entries()].every(([d, inSync]) => {
|
|
43
|
-
if (!inSync) {
|
|
44
|
-
d.value;
|
|
45
|
-
return this.dependencies.get(d);
|
|
46
|
-
}
|
|
47
|
-
return inSync;
|
|
48
|
-
});
|
|
49
|
-
if (inSync) {
|
|
50
|
-
this.state = EffectState.Waiting;
|
|
51
|
-
return InSyncSymbol;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
40
|
+
let checkInSync = this.state === EffectState.Scheduled;
|
|
54
41
|
|
|
55
42
|
this.state = EffectState.Running;
|
|
56
43
|
|
|
57
44
|
const getResult = (): unknown | Promise<unknown> => {
|
|
45
|
+
if (checkInSync) {
|
|
46
|
+
const dependenciesInSync = (iterator = this.dependencies.entries()): boolean | Promise<boolean> => {
|
|
47
|
+
const next = iterator.next();
|
|
48
|
+
if (next.done) {
|
|
49
|
+
return true;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
const [d, inSync] = next.value;
|
|
53
|
+
|
|
54
|
+
const completeCheck = () => {
|
|
55
|
+
if (!this.dependencies.get(d)) {
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
return dependenciesInSync(iterator);
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
if (!inSync) {
|
|
62
|
+
const result = d.value;
|
|
63
|
+
if (result instanceof Promise) {
|
|
64
|
+
return result.then(completeCheck);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
return completeCheck();
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
const resultMaybePromise = dependenciesInSync();
|
|
72
|
+
if (resultMaybePromise instanceof Promise) {
|
|
73
|
+
return resultMaybePromise.then(result => {
|
|
74
|
+
if (result) {
|
|
75
|
+
this.state = EffectState.Waiting;
|
|
76
|
+
return InSyncSymbol;
|
|
77
|
+
} else {
|
|
78
|
+
checkInSync = false;
|
|
79
|
+
return getResult();
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
} else if (resultMaybePromise) {
|
|
83
|
+
this.state = EffectState.Waiting;
|
|
84
|
+
return InSyncSymbol;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
58
88
|
this.clearDependencies(runPromise);
|
|
59
89
|
this.abortHandler = (() => {
|
|
60
90
|
const handler = {
|
|
@@ -76,6 +106,7 @@ export default class Effect implements Dependent {
|
|
|
76
106
|
const completeRun = (resolve: boolean, result: unknown, err: unknown, async: boolean) => {
|
|
77
107
|
if (this.abortHandler!.aborted) {
|
|
78
108
|
firstRun = false;
|
|
109
|
+
checkInSync = false;
|
|
79
110
|
if (this.computed || async) {
|
|
80
111
|
return getResult();
|
|
81
112
|
}
|
package/types/computed.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export declare type TrackValue = (<T>(dependency: Dependency<T>) => T) & (<T>(de
|
|
|
6
6
|
export declare type ComputeFunc<T> = (value: TrackValue, previousValue: T | undefined, abortSignal: AbortSignal) => T;
|
|
7
7
|
export declare type ComputeFuncScoped<T1, T2> = (value: TrackValue, scope: T1, previousValue: T2 | undefined, abortSignal: AbortSignal) => T2;
|
|
8
8
|
export default class Computed<T> extends Effect implements Dependent, Dependency<T> {
|
|
9
|
+
private oldValue?;
|
|
9
10
|
private _value?;
|
|
10
11
|
getter: ComputeFunc<T>;
|
|
11
12
|
isEqual: typeof defaultIsEqual<T>;
|
package/types/computed.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computed.d.ts","sourceRoot":"","sources":["../src/computed.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAGjD,OAAO,MAAqC,MAAM,aAAa,CAAC;AAEhE,MAAM,CAAC,OAAO,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC;AACvI,MAAM,CAAC,OAAO,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,GAAG,SAAS,EAAE,WAAW,EAAE,WAAW,KAAK,CAAC,CAAC;AACtH,MAAM,CAAC,OAAO,MAAM,iBAAiB,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,GAAG,SAAS,EAAE,WAAW,EAAE,WAAW,KAAK,EAAE,CAAC;AAI9I,MAAM,CAAC,OAAO,OAAO,QAAQ,CAAC,CAAC,CAAE,SAAQ,MAAO,YAAW,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IAC/E,OAAO,CAAC,MAAM,CAAC,CAAI;IACnB,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACvB,OAAO,EAAE,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,QAAQ,CAAC,CAAW;gBAEhB,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,4BAAoB,EAAE,UAAU,CAAC,EAAE,MAAM;IAkBpF,IAAW,KAAK,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"computed.d.ts","sourceRoot":"","sources":["../src/computed.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAGjD,OAAO,MAAqC,MAAM,aAAa,CAAC;AAEhE,MAAM,CAAC,OAAO,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC;AACvI,MAAM,CAAC,OAAO,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,GAAG,SAAS,EAAE,WAAW,EAAE,WAAW,KAAK,CAAC,CAAC;AACtH,MAAM,CAAC,OAAO,MAAM,iBAAiB,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,GAAG,SAAS,EAAE,WAAW,EAAE,WAAW,KAAK,EAAE,CAAC;AAI9I,MAAM,CAAC,OAAO,OAAO,QAAQ,CAAC,CAAC,CAAE,SAAQ,MAAO,YAAW,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IAC/E,OAAO,CAAC,QAAQ,CAAC,CAAI;IACrB,OAAO,CAAC,MAAM,CAAC,CAAI;IACnB,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACvB,OAAO,EAAE,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,QAAQ,CAAC,CAAW;gBAEhB,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,4BAAoB,EAAE,UAAU,CAAC,EAAE,MAAM;IAkBpF,IAAW,KAAK,IAAI,CAAC,CA8BpB;IAED,OAAO,CAAC,kBAAkB;IAMnB,YAAY,CAAC,SAAS,EAAE,SAAS;IAOjC,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,gBAAoB,GAAG,IAAI;IAKxE,UAAU,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC;IAW3C,eAAe;IAaf,KAAK;IAKL,OAAO;CAGjB"}
|
package/types/effect.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effect.d.ts","sourceRoot":"","sources":["../src/effect.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,MAAM,CAAC,OAAO,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC;AACvI,MAAM,CAAC,OAAO,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEhI,oBAAY,WAAW;IACnB,OAAO,IAAA;IACP,OAAO,IAAA;IACP,OAAO,IAAA;IACP,SAAS,IAAA;CACZ;AAED,eAAO,MAAM,YAAY,eAAmB,CAAC;AAE7C,MAAM,CAAC,OAAO,OAAO,MAAO,YAAW,SAAS;IAKhC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAc,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAJ1E,SAAS,CAAC,KAAK,cAAuB;IACtC,SAAS,CAAC,YAAY,oCAA2C;IACjE,OAAO,CAAC,YAAY,CAAC,CAA6F;gBAErF,MAAM,EAAE,UAAU,EAAmB,QAAQ,UAAQ;IAMlF,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,eAAe,CAAsD;IAE7E,GAAG;
|
|
1
|
+
{"version":3,"file":"effect.d.ts","sourceRoot":"","sources":["../src/effect.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,MAAM,CAAC,OAAO,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC;AACvI,MAAM,CAAC,OAAO,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEhI,oBAAY,WAAW;IACnB,OAAO,IAAA;IACP,OAAO,IAAA;IACP,OAAO,IAAA;IACP,SAAS,IAAA;CACZ;AAED,eAAO,MAAM,YAAY,eAAmB,CAAC;AAE7C,MAAM,CAAC,OAAO,OAAO,MAAO,YAAW,SAAS;IAKhC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAc,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAJ1E,SAAS,CAAC,KAAK,cAAuB;IACtC,SAAS,CAAC,YAAY,oCAA2C;IACjE,OAAO,CAAC,YAAY,CAAC,CAA6F;gBAErF,MAAM,EAAE,UAAU,EAAmB,QAAQ,UAAQ;IAMlF,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,eAAe,CAAsD;IAE7E,GAAG;IA6GH,OAAO,CAAC,iBAAiB;IAOzB,UAAU,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC;IAa3C,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC;IAIxC,OAAO;CASV"}
|