async-reactivity 2.0.9 → 2.0.10
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/package.json +1 -1
- package/src/computed.ts +4 -4
- package/src/ref.ts +3 -3
- package/types/computed.d.ts +3 -3
- package/types/computed.d.ts.map +1 -1
- package/types/ref.d.ts +2 -2
- package/types/ref.d.ts.map +1 -1
package/package.json
CHANGED
package/src/computed.ts
CHANGED
|
@@ -16,16 +16,16 @@ enum ComputedState {
|
|
|
16
16
|
|
|
17
17
|
class CircularDependencyError extends Error { }
|
|
18
18
|
|
|
19
|
-
export default class Computed<T> extends Tracker<T> implements Dependent, Dependency<T> {
|
|
19
|
+
export default class Computed<T extends TBase, TBase> extends Tracker<T> implements Dependent, Dependency<T> {
|
|
20
20
|
getter: ComputeFunc<T>;
|
|
21
|
-
isEqual: typeof defaultIsEqual<
|
|
21
|
+
isEqual: typeof defaultIsEqual<TBase>;
|
|
22
22
|
private state = ComputedState.Invalid;
|
|
23
23
|
private dependencies = new Map<Dependency<any>, boolean>();
|
|
24
24
|
private computePromise?: T;
|
|
25
25
|
private computePromiseActions?: { resolve: Function, reject: Function };
|
|
26
26
|
private lastComputeAttemptPromise?: Promise<void>;
|
|
27
27
|
|
|
28
|
-
constructor(getter: ComputeFunc<T>, isEqual = defaultIsEqual<
|
|
28
|
+
constructor(getter: ComputeFunc<T>, isEqual = defaultIsEqual<TBase>) {
|
|
29
29
|
super();
|
|
30
30
|
this.getter = getter;
|
|
31
31
|
this.isEqual = isEqual;
|
|
@@ -112,7 +112,7 @@ export default class Computed<T> extends Tracker<T> implements Dependent, Depend
|
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
114
|
|
|
115
|
-
private innerTrackDependency(this: Computed<T>, dependency: Dependency<any>) {
|
|
115
|
+
private innerTrackDependency(this: Computed<T, TBase>, dependency: Dependency<any>) {
|
|
116
116
|
if (this.dependents.has(dependency as any)) {
|
|
117
117
|
throw new CircularDependencyError();
|
|
118
118
|
}
|
package/src/ref.ts
CHANGED
|
@@ -2,10 +2,10 @@ import Dependency from "./dependency.js";
|
|
|
2
2
|
import Tracker from "./tracker.js";
|
|
3
3
|
import defaultIsEqual from "./defaultIsEqual.js";
|
|
4
4
|
|
|
5
|
-
export default class Ref<T> extends Tracker<T> implements Dependency<T> {
|
|
6
|
-
private isEqual: typeof defaultIsEqual<
|
|
5
|
+
export default class Ref<T extends TBase, TBase> extends Tracker<T> implements Dependency<T> {
|
|
6
|
+
private isEqual: typeof defaultIsEqual<TBase>;
|
|
7
7
|
|
|
8
|
-
constructor(_value: T, isEqual = defaultIsEqual<
|
|
8
|
+
constructor(_value: T, isEqual = defaultIsEqual<TBase>) {
|
|
9
9
|
super();
|
|
10
10
|
this._value = _value;
|
|
11
11
|
this.isEqual = isEqual;
|
package/types/computed.d.ts
CHANGED
|
@@ -5,15 +5,15 @@ import defaultIsEqual from "./defaultIsEqual.js";
|
|
|
5
5
|
declare type TrackValue = <T>(dependency: Dependency<T>) => T;
|
|
6
6
|
export declare type ComputeFunc<T> = (value: TrackValue) => T;
|
|
7
7
|
export declare type ComputeFuncScoped<T1, T2> = (value: TrackValue, scope: T1) => T2;
|
|
8
|
-
export default class Computed<T> extends Tracker<T> implements Dependent, Dependency<T> {
|
|
8
|
+
export default class Computed<T extends TBase, TBase> extends Tracker<T> implements Dependent, Dependency<T> {
|
|
9
9
|
getter: ComputeFunc<T>;
|
|
10
|
-
isEqual: typeof defaultIsEqual<
|
|
10
|
+
isEqual: typeof defaultIsEqual<TBase>;
|
|
11
11
|
private state;
|
|
12
12
|
private dependencies;
|
|
13
13
|
private computePromise?;
|
|
14
14
|
private computePromiseActions?;
|
|
15
15
|
private lastComputeAttemptPromise?;
|
|
16
|
-
constructor(getter: ComputeFunc<T>, isEqual?: (v1:
|
|
16
|
+
constructor(getter: ComputeFunc<T>, isEqual?: (v1: TBase, v2: TBase) => boolean);
|
|
17
17
|
private prepareComputePromise;
|
|
18
18
|
get value(): T;
|
|
19
19
|
private compute;
|
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,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD,OAAO,MAAM,UAAU,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAC9D,MAAM,CAAC,OAAO,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,KAAK,CAAC,CAAC;AAC9D,MAAM,CAAC,OAAO,MAAM,iBAAiB,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC;AAWrF,MAAM,CAAC,OAAO,OAAO,QAAQ,CAAC,CAAC,CAAE,SAAQ,OAAO,CAAC,CAAC,CAAE,YAAW,SAAS,EAAE,UAAU,CAAC,CAAC,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,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD,OAAO,MAAM,UAAU,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAC9D,MAAM,CAAC,OAAO,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,KAAK,CAAC,CAAC;AAC9D,MAAM,CAAC,OAAO,MAAM,iBAAiB,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC;AAWrF,MAAM,CAAC,OAAO,OAAO,QAAQ,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,CAAE,SAAQ,OAAO,CAAC,CAAC,CAAE,YAAW,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IACxG,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACvB,OAAO,EAAE,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;IACtC,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,cAAc,CAAC,CAAI;IAC3B,OAAO,CAAC,qBAAqB,CAAC,CAA0C;IACxE,OAAO,CAAC,yBAAyB,CAAC,CAAgB;gBAEtC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,oCAAwB;IAOnE,OAAO,CAAC,qBAAqB;IAS7B,IAAW,KAAK,IAAI,CAAC,CAMpB;IAED,OAAO,CAAC,OAAO;IA0Cf,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,eAAe,CAAwC;IAE/D,OAAO,CAAC,iBAAiB;IAMlB,UAAU;IAUV,eAAe;IAKf,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC;IAI3C,OAAO,CAAC,kBAAkB;IAMnB,OAAO;CAOjB"}
|
package/types/ref.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import Dependency from "./dependency.js";
|
|
2
2
|
import Tracker from "./tracker.js";
|
|
3
|
-
export default class Ref<T> extends Tracker<T> implements Dependency<T> {
|
|
3
|
+
export default class Ref<T extends TBase, TBase> extends Tracker<T> implements Dependency<T> {
|
|
4
4
|
private isEqual;
|
|
5
|
-
constructor(_value: T, isEqual?: (v1:
|
|
5
|
+
constructor(_value: T, isEqual?: (v1: TBase, v2: TBase) => boolean);
|
|
6
6
|
set value(_value: T);
|
|
7
7
|
get value(): T;
|
|
8
8
|
}
|
package/types/ref.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ref.d.ts","sourceRoot":"","sources":["../src/ref.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,OAAO,MAAM,cAAc,CAAC;AAGnC,MAAM,CAAC,OAAO,OAAO,GAAG,CAAC,CAAC,CAAE,SAAQ,OAAO,CAAC,CAAC,CAAE,YAAW,UAAU,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ref.d.ts","sourceRoot":"","sources":["../src/ref.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,OAAO,MAAM,cAAc,CAAC;AAGnC,MAAM,CAAC,OAAO,OAAO,GAAG,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,CAAE,SAAQ,OAAO,CAAC,CAAC,CAAE,YAAW,UAAU,CAAC,CAAC,CAAC;IACxF,OAAO,CAAC,OAAO,CAA+B;gBAElC,MAAM,EAAE,CAAC,EAAE,OAAO,oCAAwB;IAMtD,IAAW,KAAK,CAAC,MAAM,EAAE,CAAC,EAMzB;IAED,IAAW,KAAK,IAAI,CAAC,CAEpB;CACJ"}
|