proxy-facades 1.7.2 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.run/performanceTests.ts no profiling.run.xml +15 -0
- package/.run/performanceTests_withProfiling.ts.run.xml +18 -0
- package/DEVELOPMENT.md +4 -0
- package/class-trackers/Array.ts +21 -4
- package/common.ts +4 -0
- package/dist/commonjs/class-trackers/Array.d.ts +2 -2
- package/dist/commonjs/class-trackers/Array.d.ts.map +1 -1
- package/dist/commonjs/class-trackers/Array.js +19 -4
- package/dist/commonjs/class-trackers/Array.js.map +1 -1
- package/dist/commonjs/common.d.ts +1 -0
- package/dist/commonjs/common.d.ts.map +1 -1
- package/dist/commonjs/common.js +3 -0
- package/dist/commonjs/common.js.map +1 -1
- package/dist/commonjs/index.d.ts +1 -1
- package/dist/commonjs/index.d.ts.map +1 -1
- package/dist/commonjs/index.js +3 -1
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/origChangeTracking.d.ts +11 -0
- package/dist/commonjs/origChangeTracking.d.ts.map +1 -1
- package/dist/commonjs/origChangeTracking.js +52 -1
- package/dist/commonjs/origChangeTracking.js.map +1 -1
- package/dist/commonjs/performanceTests.d.ts +2 -0
- package/dist/commonjs/performanceTests.d.ts.map +1 -0
- package/dist/commonjs/performanceTests.js +31 -0
- package/dist/commonjs/performanceTests.js.map +1 -0
- package/dist/commonjs/watchedProxyFacade.d.ts.map +1 -1
- package/dist/commonjs/watchedProxyFacade.js +8 -6
- package/dist/commonjs/watchedProxyFacade.js.map +1 -1
- package/dist/esm/class-trackers/Array.d.ts +2 -2
- package/dist/esm/class-trackers/Array.d.ts.map +1 -1
- package/dist/esm/class-trackers/Array.js +19 -4
- package/dist/esm/class-trackers/Array.js.map +1 -1
- package/dist/esm/common.d.ts +1 -0
- package/dist/esm/common.d.ts.map +1 -1
- package/dist/esm/common.js +3 -0
- package/dist/esm/common.js.map +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/origChangeTracking.d.ts +11 -0
- package/dist/esm/origChangeTracking.d.ts.map +1 -1
- package/dist/esm/origChangeTracking.js +49 -1
- package/dist/esm/origChangeTracking.js.map +1 -1
- package/dist/esm/performanceTests.d.ts +2 -0
- package/dist/esm/performanceTests.d.ts.map +1 -0
- package/dist/esm/performanceTests.js +29 -0
- package/dist/esm/performanceTests.js.map +1 -0
- package/dist/esm/watchedProxyFacade.d.ts.map +1 -1
- package/dist/esm/watchedProxyFacade.js +8 -6
- package/dist/esm/watchedProxyFacade.js.map +1 -1
- package/index.ts +1 -1
- package/origChangeTracking.ts +58 -2
- package/package.json +2 -1
- package/performanceTests.ts +37 -0
- package/watchedProxyFacade.ts +9 -5
|
@@ -30,6 +30,7 @@ export declare class ArrayChangeTracker<T> extends Array<T> implements DualUseTr
|
|
|
30
30
|
shift(...args: any[]): T | undefined;
|
|
31
31
|
sort(...args: any[]): this;
|
|
32
32
|
fill(...args: any[]): this;
|
|
33
|
+
forEach(callbackfn: (value: T, index: number, array: this) => void, thisArg?: any): void;
|
|
33
34
|
}
|
|
34
35
|
export declare class RecordedArrayValuesRead extends RecordedReadOnProxiedObjectExt {
|
|
35
36
|
values: unknown[];
|
|
@@ -57,9 +58,8 @@ export declare class ArrayReadTracker<T> extends Array<T> implements ForWatchedP
|
|
|
57
58
|
shift(...args: any[]): T | undefined;
|
|
58
59
|
/**
|
|
59
60
|
* Keep this method so it it treated as handled and not as making-unspecific-reads
|
|
60
|
-
* @param args
|
|
61
61
|
*/
|
|
62
|
-
forEach(
|
|
62
|
+
forEach(callbackfn: (value: T, index: number, array: this) => void, thisArg?: any): void;
|
|
63
63
|
pop(...args: any[]): T | undefined;
|
|
64
64
|
}
|
|
65
65
|
export declare const config: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Array.d.ts","sourceRoot":"","sources":["../../../class-trackers/Array.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,MAAM,EACN,YAAY,EAEf,MAAM,WAAW,CAAC;AAOnB,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAC,8BAA8B,EAAC,MAAM,mCAAmC,CAAC;AACjF,OAAO,EACH,cAAc,EACd,sBAAsB,EACtB,2BAA2B,EAG9B,MAAM,gBAAgB,CAAC;AAGxB;;;;GAIG;AACH,cAAM,gBAAgB;CAErB;AAED,eAAO,MAAM,mBAAmB,sCAA6C,CAAC;AAC9E,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,oBAMtD;
|
|
1
|
+
{"version":3,"file":"Array.d.ts","sourceRoot":"","sources":["../../../class-trackers/Array.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,MAAM,EACN,YAAY,EAEf,MAAM,WAAW,CAAC;AAOnB,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAC,8BAA8B,EAAC,MAAM,mCAAmC,CAAC;AACjF,OAAO,EACH,cAAc,EACd,sBAAsB,EACtB,2BAA2B,EAG9B,MAAM,gBAAgB,CAAC;AAGxB;;;;GAIG;AACH,cAAM,gBAAgB;CAErB;AAED,eAAO,MAAM,mBAAmB,sCAA6C,CAAC;AAC9E,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,oBAMtD;AAgBD;;;GAGG;AACH,qBAAa,kBAAkB,CAAC,CAAC,CAAE,SAAQ,KAAK,CAAC,CAAC,CAAE,YAAW,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAKnF,IAAI,oBAAoB,IAAI,2BAA2B,GAAG,SAAS,CAElE;IAED,SAAS,CAAC,qBAAqB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;IAMxD,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;IAIlB;;OAEG;IACH,IAAI,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,CAEtB;IAED;;OAEG;IACH,IAAI,CAAC,aAAa,CAAC,qBAElB;IAED,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS;IAIpC,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAI1B,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAI1B,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,KAAK,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG;CAIpF;AAED,qBAAa,uBAAwB,SAAQ,8BAA8B;IACvE,MAAM,EAAE,OAAO,EAAE,CAAC;IAEV,OAAO,EAAE,OAAO,EAAE,CAAC;gBAGf,MAAM,EAAE,OAAO,EAAE;IAK7B,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;IAQ/C,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO;IAQpC,IAAI,SAAS,IAAI,OAAO,CAEvB;CAGJ;AAED;;GAEG;AACH,qBAAa,gBAAgB,CAAC,CAAC,CAAE,SAAQ,KAAK,CAAC,CAAC,CAAE,YAAW,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzF,IAAI,oBAAoB,IAAI,mBAAmB,CAE9C;IAED,IAAI,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,CAEtB;IAED,SAAS,CAAC,oBAAoB;IAK9B;;OAEG;IACH,IAAI,CAAC,aAAa,CAAC,qBAElB;IAED,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC;IAM1B,OAAO,IAAI,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAMrC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC;IAMrC,IAAI,MAAM,IAAI,MAAM,CAInB;IAGD,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;IAcpB;;OAEG;IACH,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,KAAK,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG;IAOjF,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS;CAcrC;AAED,eAAO,MAAM,MAAM;;;;IAIf;;;;OAIG;2BAC+T,GAAG,CAAC,MAAM,CAAC;IAE7U;;OAEG;qBAC0J,GAAG,CAAC,MAAM,CAAC;IAExK;;OAEG;oBACqE,GAAG,CAAC,MAAM,CAAC;IAEnF;;OAEG;;;;;;;CAIN,CAAA"}
|
|
@@ -18,6 +18,19 @@ export function getChangeHooksForArray(array) {
|
|
|
18
18
|
}
|
|
19
19
|
return result;
|
|
20
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* Bug workaround for `Array.prototype.forEach.apply(arr, [callbackfn, thisArg])`
|
|
23
|
+
* <p>The mentioned method causes a stackoverflow error when used with arrays with gaps (with holes), somewhere internal in v8, chrome and firefox when the array's prototype is a proxy (like we are using it here)</p>
|
|
24
|
+
* @param arr
|
|
25
|
+
* @param callbackfn
|
|
26
|
+
* @param thisArg
|
|
27
|
+
*/
|
|
28
|
+
function fixed_forEach(arr, callbackfn, thisArg) {
|
|
29
|
+
for (const index in arr) {
|
|
30
|
+
const value = arr[index];
|
|
31
|
+
callbackfn.apply(thisArg, [value, Number(index), arr]);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
21
34
|
/**
|
|
22
35
|
* Can be either used as a supervisor-class in a WatchedProxyHandler, or installed on the non-proxied object via Object.setPrototypeOf
|
|
23
36
|
* The "this" may be different in these cases.
|
|
@@ -55,6 +68,9 @@ export class ArrayChangeTracker extends Array {
|
|
|
55
68
|
fill(...args) {
|
|
56
69
|
return this._withUnspecificChange(() => super.fill(...args));
|
|
57
70
|
}
|
|
71
|
+
forEach(callbackfn, thisArg) {
|
|
72
|
+
return fixed_forEach(this, callbackfn, thisArg);
|
|
73
|
+
}
|
|
58
74
|
}
|
|
59
75
|
export class RecordedArrayValuesRead extends RecordedReadOnProxiedObjectExt {
|
|
60
76
|
constructor(values) {
|
|
@@ -133,11 +149,10 @@ export class ArrayReadTracker extends Array {
|
|
|
133
149
|
}
|
|
134
150
|
/**
|
|
135
151
|
* Keep this method so it it treated as handled and not as making-unspecific-reads
|
|
136
|
-
* @param args
|
|
137
152
|
*/
|
|
138
|
-
forEach(
|
|
139
|
-
|
|
140
|
-
|
|
153
|
+
forEach(callbackfn, thisArg) {
|
|
154
|
+
this._fireAfterValuesRead();
|
|
155
|
+
fixed_forEach(this, callbackfn, thisArg); // TODO: Showing that the bugfixed function is required couldn't be proved by unit tests yet. Here's a real world scenario that does it: https://github.com/bogeeee/pve-manager-electrified/commit/822c30e686521c73ac7d8593a50ef72cc8e6f2c3
|
|
141
156
|
}
|
|
142
157
|
//@ts-ignore
|
|
143
158
|
pop(...args) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Array.js","sourceRoot":"","sources":["../../../class-trackers/Array.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Array.js","sourceRoot":"","sources":["../../../class-trackers/Array.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,0BAA0B,EAC1B,0BAA0B,EAG1B,sBAAsB,EACzB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAC,uBAAuB,EAAC,MAAM,SAAS,CAAC;AAChD,OAAO,EACH,uBAAuB,EAE1B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAC,8BAA8B,EAAC,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAKH,kBAAkB,EACrB,MAAM,gBAAgB,CAAC;AAGxB;;;;GAIG;AACH,MAAM,gBAAgB;CAErB;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAA+B,CAAC;AAC9E,MAAM,UAAU,sBAAsB,CAAC,KAAgB;IACnD,IAAI,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAG,MAAM,KAAK,SAAS,EAAE,CAAC;QACtB,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAI,GAAa,EAAE,UAAgE,EAAE,OAAa;IACpH,KAAI,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;QACzB,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;IAC1D,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,kBAAsB,SAAQ,KAAQ;IAG/C,4GAA4G;IAE5G,IAAI,oBAAoB;QACpB,OAAO,SAAS,CAAC;IACrB,CAAC;IAES,qBAAqB,CAAI,QAAiB;QAChD,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,CAAA;IACjI,CAAC;IAED,mDAAmD;IAEnD,GAAG,CAAC,GAAG,IAAW;QACd,OAAQ,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;IACzD,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACP,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,aAAa,CAAC;QACf,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,GAAG,IAAW;QAChB,OAAQ,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;IAC3D,CAAC;IAED,IAAI,CAAC,GAAG,IAAW;QACf,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,CAAC,GAAG,IAAW;QACf,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAuB,CAAC,CAAC,CAAC;IACpF,CAAC;IAED,OAAO,CAAC,UAA0D,EAAE,OAAa;QAC7E,OAAO,aAAa,CAAC,IAAI,EAAE,UAAiB,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;CAEJ;AAED,MAAM,OAAO,uBAAwB,SAAQ,8BAA8B;IAMvE,YAAY,MAAiB;QACzB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,uBAAuB,CAAC,MAAuB;QAC3C,OAAO;YACH,uBAAuB,CAAC,MAAM,CAAC,CAAC,aAAa;YAC7C,uBAAuB,CAAC,MAAM,CAAC,CAAC,iBAAiB;YACjD,uBAAuB,CAAC,MAAM,CAAC,CAAC,gBAAgB;SACnD,CAAA;IACL,CAAC;IAED,MAAM,CAAC,KAAmB;QACtB,IAAI,CAAC,CAAC,KAAK,YAAY,uBAAuB,CAAC,EAAE,CAAC;YAC9C,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,IAAI,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5I,CAAC;IAED,IAAI,SAAS;QACT,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;CAGJ;AAED;;GAEG;AACH,MAAM,OAAO,gBAAoB,SAAQ,KAAQ;IAC7C,IAAI,oBAAoB;QACpB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC,CAAC,0DAA0D;IAChI,CAAC;IAED,IAAI,OAAO;QACP,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC,CAAC,wDAAwD;IAC9H,CAAC;IAES,oBAAoB;;QAC1B,IAAI,uBAAuB,GAAG,IAAI,uBAAuB,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7E,MAAA,IAAI,CAAC,oBAAoB,0CAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,aAAa,CAAC;QACf,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACrC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,OAAO,0BAA0B,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACnH,CAAC;IAED,OAAO;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACtC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,OAAO,0BAA0B,CAA2F,MAAM,EAAE,CAAC,CAAC,KAAK,EAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9N,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACb,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/C,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,OAAO,0BAA0B,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACnH,CAAC;IAED,IAAI,MAAM;QACN,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACnC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,YAAY;IACZ,KAAK,CAAC,GAAG,IAAW;QAChB,IAAG,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAClB,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,EAAC,GAAG,EAAE;YACjK,YAAY;YACZ,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;YACpC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5B,OAAO,MAAM,CAAC;QAClB,CAAC,CAAC,CAAC;IACP,CAAC;IAGD;;OAEG;IACH,OAAO,CAAC,UAA0D,EAAE,OAAa;QAC7E,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,aAAa,CAAC,IAAI,EAAE,UAAiB,EAAE,OAAO,CAAC,CAAC,CAAC,2OAA2O;IAChS,CAAC;IAGD,YAAY;IACZ,GAAG,CAAC,GAAG,IAAW;QACd,IAAG,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAClB,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,EAAC,GAAG,EAAE;YAChK,YAAY;YACZ,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YAClC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5B,OAAO,MAAM,CAAC;QAClB,CAAC,CAAC,CAAC;IAEP,CAAC;CAEJ;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,KAAM,SAAQ,0BAA0B;IAAxC;;QACtB,UAAK,GAAE,KAAK,CAAC;QACb,gBAAW,GAAE,gBAAgB,CAAC;QAC9B,kBAAa,GAAG,kBAAkB,CAAA;QAClC;;;;WAIG;QACH,0BAAqB,GAAG,IAAI,GAAG,CAAuB,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,CAAC,CAAgB,CAAC;QAE9U;;WAEG;QACH,oBAAe,GAAG,IAAI,GAAG,CAAuB,CAAC,MAAM,CAAC,+FAA+F,CAAC,CAAgB,CAAC;QAEzK;;WAEG;QACH,mBAAc,GAAG,IAAI,GAAG,CAAuB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAgB,CAAC;QAEpF;;WAEG;QACH,6BAAwB,GAAG,KAAK,CAAC;QAEjC,iCAA4B,GAAG,IAAI,CAAC;IACxC,CAAC;CAAA,CAAA"}
|
package/dist/esm/common.d.ts
CHANGED
|
@@ -165,6 +165,7 @@ export declare class PartialGraph {
|
|
|
165
165
|
offAfterChange(listener: ChangeListener): void;
|
|
166
166
|
hasObj(obj: object): boolean | undefined;
|
|
167
167
|
_register(obj: object): void;
|
|
168
|
+
_unregister(obj: object): void;
|
|
168
169
|
}
|
|
169
170
|
export declare const objectMembershipInGraphs: WeakMapSet<object, PartialGraph>;
|
|
170
171
|
/**
|
package/dist/esm/common.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../common.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../common.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/common.js
CHANGED
|
@@ -286,6 +286,9 @@ export class PartialGraph {
|
|
|
286
286
|
_register(obj) {
|
|
287
287
|
objectMembershipInGraphs.add(obj, this);
|
|
288
288
|
}
|
|
289
|
+
_unregister(obj) {
|
|
290
|
+
objectMembershipInGraphs.delete(obj, this);
|
|
291
|
+
}
|
|
289
292
|
}
|
|
290
293
|
export const objectMembershipInGraphs = new WeakMapSet();
|
|
291
294
|
/**
|
package/dist/esm/common.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../common.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../common.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { RecordedRead, ClassTrackingConfiguration, IteratorReturningProxiedValue, GetIteratorValueProxiedFn } from "./common";
|
|
2
2
|
export { deleteProperty, ProxyFacade, FacadeProxyHandler, invalidateObject, getGlobalOrig, changeTrackedOrigObjects, ForWatchedProxyHandler, dualUseTracker_callOrigMethodOnTarget, DualUseTracker, RecordedReadOnProxiedObject } from "./proxyFacade";
|
|
3
|
-
export { installChangeTracker } from "./origChangeTracking";
|
|
3
|
+
export { installChangeTracker, unInstallChangeTracker, performance_withoutChangeEvents } from "./origChangeTracking";
|
|
4
4
|
export { RecordedArrayValuesRead } from "./class-trackers/Array";
|
|
5
5
|
export { RecordedMap_has, RecordedMap_get, RecordedMapEntriesRead, RecordedMapKeysRead, RecordedMapValuesRead } from "./class-trackers/Map";
|
|
6
6
|
export { RecordedSet_has, RecordedSetValuesRead } from "./class-trackers/Set";
|
package/dist/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,yBAAyB,EAAC,MAAM,UAAU,CAAA;AAC3H,OAAO,EAAC,cAAc,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,aAAa,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,qCAAqC,EAAC,cAAc,EAAC,2BAA2B,EAAC,MAAM,eAAe,CAAC;AACnP,OAAO,EAAC,oBAAoB,EAAC,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,yBAAyB,EAAC,MAAM,UAAU,CAAA;AAC3H,OAAO,EAAC,cAAc,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,aAAa,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,qCAAqC,EAAC,cAAc,EAAC,2BAA2B,EAAC,MAAM,eAAe,CAAC;AACnP,OAAO,EAAC,oBAAoB,EAAE,sBAAsB,EAAE,+BAA+B,EAAC,MAAM,sBAAsB,CAAA;AAClH,OAAO,EAAC,uBAAuB,EAAC,MAAM,wBAAwB,CAAA;AAC9D,OAAO,EAAC,eAAe,EAAE,eAAe,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,qBAAqB,EAAC,MAAM,sBAAsB,CAAA;AACzI,OAAO,EAAC,eAAe,EAAE,qBAAqB,EAAC,MAAM,sBAAsB,CAAA;AAC3E,OAAO,EAAC,iBAAiB,EAAE,sBAAsB,EAAE,oBAAoB,EAAC,mBAAmB,EAAE,kBAAkB,EAAG,mBAAmB,EAAC,MAAM,sBAAsB,CAAC"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { RecordedRead, ClassTrackingConfiguration } from "./common";
|
|
2
2
|
export { deleteProperty, ProxyFacade, FacadeProxyHandler, invalidateObject, getGlobalOrig, changeTrackedOrigObjects, dualUseTracker_callOrigMethodOnTarget, RecordedReadOnProxiedObject } from "./proxyFacade";
|
|
3
|
-
export { installChangeTracker } from "./origChangeTracking";
|
|
3
|
+
export { installChangeTracker, unInstallChangeTracker, performance_withoutChangeEvents } from "./origChangeTracking";
|
|
4
4
|
export { RecordedArrayValuesRead } from "./class-trackers/Array";
|
|
5
5
|
export { RecordedMap_has, RecordedMap_get, RecordedMapEntriesRead, RecordedMapKeysRead, RecordedMapValuesRead } from "./class-trackers/Map";
|
|
6
6
|
export { RecordedSet_has, RecordedSetValuesRead } from "./class-trackers/Set";
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,0BAA0B,EAA2D,MAAM,UAAU,CAAA;AAC3H,OAAO,EAAC,cAAc,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,aAAa,EAAE,wBAAwB,EAA0B,qCAAqC,EAAgB,2BAA2B,EAAC,MAAM,eAAe,CAAC;AACnP,OAAO,EAAC,oBAAoB,EAAC,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,0BAA0B,EAA2D,MAAM,UAAU,CAAA;AAC3H,OAAO,EAAC,cAAc,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,aAAa,EAAE,wBAAwB,EAA0B,qCAAqC,EAAgB,2BAA2B,EAAC,MAAM,eAAe,CAAC;AACnP,OAAO,EAAC,oBAAoB,EAAE,sBAAsB,EAAE,+BAA+B,EAAC,MAAM,sBAAsB,CAAA;AAClH,OAAO,EAAC,uBAAuB,EAAC,MAAM,wBAAwB,CAAA;AAC9D,OAAO,EAAC,eAAe,EAAE,eAAe,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,qBAAqB,EAAC,MAAM,sBAAsB,CAAA;AACzI,OAAO,EAAC,eAAe,EAAE,qBAAqB,EAAC,MAAM,sBAAsB,CAAA;AAC3E,OAAO,EAAC,iBAAiB,EAAE,sBAAsB,EAAE,oBAAoB,EAAC,mBAAmB,EAAE,kBAAkB,EAAG,mBAAmB,EAAC,MAAM,sBAAsB,CAAC"}
|
|
@@ -3,4 +3,15 @@
|
|
|
3
3
|
* @param obj
|
|
4
4
|
*/
|
|
5
5
|
export declare function installChangeTracker(obj: object): void;
|
|
6
|
+
export declare function unInstallChangeTracker(obj: object): boolean;
|
|
7
|
+
/**
|
|
8
|
+
* Temporarily uninstalls them, if an (ancestor) caller has allowed it
|
|
9
|
+
* @param obj
|
|
10
|
+
*/
|
|
11
|
+
export declare function performance_temporarilyUninstallChangeTrackersIfAllowed(obj: object): void;
|
|
12
|
+
/**
|
|
13
|
+
* Uninstalls the changes trackers temporarily while running the specified function. This can improve performance if you have many ready on few objects
|
|
14
|
+
* @param execFn
|
|
15
|
+
*/
|
|
16
|
+
export declare function performance_withoutChangeEvents<T>(execFn: () => T): T;
|
|
6
17
|
//# sourceMappingURL=origChangeTracking.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"origChangeTracking.d.ts","sourceRoot":"","sources":["../../origChangeTracking.ts"],"names":[],"mappings":"AAUA;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"origChangeTracking.d.ts","sourceRoot":"","sources":["../../origChangeTracking.ts"],"names":[],"mappings":"AAUA;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,QA6B/C;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,WASjD;AAED;;;GAGG;AACH,wBAAgB,uDAAuD,CAAC,GAAG,EAAE,MAAM,QAOlF;AAQD;;;GAGG;AACH,wBAAgB,+BAA+B,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAiBjE"}
|
|
@@ -22,9 +22,12 @@ export function installChangeTracker(obj) {
|
|
|
22
22
|
Object.setPrototypeOf(obj, proxy);
|
|
23
23
|
return;
|
|
24
24
|
}
|
|
25
|
-
if (trackingConfig.changeTracker !== undefined) {
|
|
25
|
+
else if (trackingConfig.changeTracker !== undefined) {
|
|
26
26
|
Object.setPrototypeOf(obj, trackingConfig.changeTracker.prototype);
|
|
27
27
|
}
|
|
28
|
+
else {
|
|
29
|
+
throwError("Unhandled");
|
|
30
|
+
}
|
|
28
31
|
}
|
|
29
32
|
else { // Non-special object ?
|
|
30
33
|
const proxy = new ObjectProxyHandler(obj, trackingConfig).proxy;
|
|
@@ -34,4 +37,49 @@ export function installChangeTracker(obj) {
|
|
|
34
37
|
inner();
|
|
35
38
|
changeTrackedOrigObjects._register(obj);
|
|
36
39
|
}
|
|
40
|
+
export function unInstallChangeTracker(obj) {
|
|
41
|
+
if (!changeTrackedOrigObjects.hasObj(obj)) { // Already uninstalled?
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
const origPrototype = Object.getPrototypeOf(Object.getPrototypeOf(obj));
|
|
45
|
+
Object.setPrototypeOf(obj, origPrototype); // Remove proto from the chain
|
|
46
|
+
changeTrackedOrigObjects._unregister(obj);
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Temporarily uninstalls them, if an (ancestor) caller has allowed it
|
|
51
|
+
* @param obj
|
|
52
|
+
*/
|
|
53
|
+
export function performance_temporarilyUninstallChangeTrackersIfAllowed(obj) {
|
|
54
|
+
if (performance_temporarilyUninstallObjects !== undefined) {
|
|
55
|
+
const uninstalled = unInstallChangeTracker(obj);
|
|
56
|
+
if (uninstalled) {
|
|
57
|
+
performance_temporarilyUninstallObjects === null || performance_temporarilyUninstallObjects === void 0 ? void 0 : performance_temporarilyUninstallObjects.push(obj);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Performance: When set,
|
|
63
|
+
*/
|
|
64
|
+
let performance_temporarilyUninstallObjects = undefined;
|
|
65
|
+
/**
|
|
66
|
+
* Uninstalls the changes trackers temporarily while running the specified function. This can improve performance if you have many ready on few objects
|
|
67
|
+
* @param execFn
|
|
68
|
+
*/
|
|
69
|
+
export function performance_withoutChangeEvents(execFn) {
|
|
70
|
+
if (performance_temporarilyUninstallObjects !== undefined) { // Already wrapped at parent level?
|
|
71
|
+
return execFn();
|
|
72
|
+
}
|
|
73
|
+
performance_temporarilyUninstallObjects = [];
|
|
74
|
+
try {
|
|
75
|
+
return execFn();
|
|
76
|
+
}
|
|
77
|
+
finally {
|
|
78
|
+
// Re-install change trackers:
|
|
79
|
+
for (const obj of performance_temporarilyUninstallObjects) {
|
|
80
|
+
installChangeTracker(obj);
|
|
81
|
+
}
|
|
82
|
+
performance_temporarilyUninstallObjects = undefined;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
37
85
|
//# sourceMappingURL=origChangeTracking.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"origChangeTracking.js","sourceRoot":"","sources":["../../origChangeTracking.ts"],"names":[],"mappings":"AAAA,uHAAuH;AACvH,+GAA+G;AAG/G,OAAO,EAAC,kBAAkB,EAAC,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAC,wBAAwB,EAAE,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAC,UAAU,EAAC,MAAM,QAAQ,CAAC;AAGlC;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC5C,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,6FAA6F,CAAC,CAAC;IACrI,IAAG,wBAAwB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO;IACX,CAAC;IAED,SAAS,KAAK;QACV,MAAM,cAAc,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACjD,IAAI,cAAc,EAAE,CAAC;YACjB,IAAI,cAAc,CAAC,4BAA4B,EAAE,CAAC;gBAC9C,8GAA8G;gBAC9G,MAAM,KAAK,GAAG,IAAI,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,KAAK,CAAC;gBAChE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAClC,OAAO;YACX,CAAC;
|
|
1
|
+
{"version":3,"file":"origChangeTracking.js","sourceRoot":"","sources":["../../origChangeTracking.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"performanceTests.d.ts","sourceRoot":"","sources":["../../performanceTests.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { WatchedProxyFacade } from "./watchedProxyFacade";
|
|
2
|
+
import { performance_withoutChangeEvents } from "./origChangeTracking";
|
|
3
|
+
console.log("Start");
|
|
4
|
+
const startTime = new Date().getTime();
|
|
5
|
+
// Comment / uncomment the test to run:
|
|
6
|
+
manyReadsOnAProxiedObject();
|
|
7
|
+
function manyReadsOnAProxiedObject() {
|
|
8
|
+
const facade = new WatchedProxyFacade();
|
|
9
|
+
facade.onAfterRead((read) => {
|
|
10
|
+
read.onAfterChange(() => {
|
|
11
|
+
}, true);
|
|
12
|
+
});
|
|
13
|
+
const myObj = new class MyClass {
|
|
14
|
+
constructor() {
|
|
15
|
+
this._myProp = "123";
|
|
16
|
+
}
|
|
17
|
+
get myProperty() {
|
|
18
|
+
return this._myProp;
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
const proxy = facade.getProxyFor(myObj);
|
|
22
|
+
for (let i = 0; i < 100000; i++) {
|
|
23
|
+
performance_withoutChangeEvents(() => {
|
|
24
|
+
proxy.myProperty;
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
console.log(`Finished in ${new Date().getTime() - startTime}ms`);
|
|
29
|
+
//# sourceMappingURL=performanceTests.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"performanceTests.js","sourceRoot":"","sources":["../../performanceTests.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAC,+BAA+B,EAAC,MAAM,sBAAsB,CAAC;AAErE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AACpB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;AACvC,uCAAuC;AACvC,yBAAyB,EAAE,CAAA;AAG3B,SAAS,yBAAyB;IAC9B,MAAM,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;IACxC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE;QACxB,CAAC,EAAE,IAAI,CAAC,CAAA;IACZ,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,IAAI,MAAM,OAAO;QAAb;YACd,YAAO,GAAG,KAAK,CAAA;QAKnB,CAAC;QAHG,IAAI,UAAU;YACV,OAAO,IAAI,CAAC,OAAO,CAAC;QACxB,CAAC;KACJ,CAAA;IAGD,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAExC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9B,+BAA+B,CAAC,GAAG,EAAE;YACjC,KAAK,CAAC,UAAU,CAAC;QACrB,CAAC,CAAC,CAAA;IAEN,CAAC;AACL,CAAC;AAED,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,SAAS,IAAI,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchedProxyFacade.d.ts","sourceRoot":"","sources":["../../watchedProxyFacade.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,kBAAkB,EAClB,2BAA2B,EAC3B,WAAW,EACX,2BAA2B,EAE9B,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAK,iBAAiB,EACzB,cAAc,EACW,SAAS,EAGlC,MAAM,EACN,YAAY,EAEf,MAAM,UAAU,CAAC;AAIlB,OAAO,EAAC,8BAA8B,EAAC,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"watchedProxyFacade.d.ts","sourceRoot":"","sources":["../../watchedProxyFacade.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import { getChangeHooksForObject, changeHooksForObject } from "./objectChangeTra
|
|
|
5
5
|
import _ from "underscore";
|
|
6
6
|
import { getTrackingConfigFor } from "./class-trackers/index";
|
|
7
7
|
import { RecordedReadOnProxiedObjectExt } from "./RecordedReadOnProxiedObjectExt";
|
|
8
|
+
import { performance_temporarilyUninstallChangeTrackersIfAllowed } from "./origChangeTracking";
|
|
8
9
|
/**
|
|
9
10
|
* Access a single value (=variable or return value from a function)
|
|
10
11
|
* This read is can only be constructed manually (not through a WatchedProxyFacade / WatchedProxyHandler
|
|
@@ -158,20 +159,21 @@ export class WatchedProxyHandler extends FacadeProxyHandler {
|
|
|
158
159
|
return this.facade;
|
|
159
160
|
}
|
|
160
161
|
get(fake_target, key, receiver) {
|
|
161
|
-
var _a;
|
|
162
162
|
const target = this.target;
|
|
163
163
|
const proxy = this.proxy;
|
|
164
164
|
const thisHandler = this;
|
|
165
|
-
const
|
|
165
|
+
const trackingConfig = this.trackingConfig;
|
|
166
|
+
const receiverMustBeNonProxied = (trackingConfig === null || trackingConfig === void 0 ? void 0 : trackingConfig.receiverMustBeNonProxied) === true;
|
|
166
167
|
if (key === "_watchedProxyHandler") {
|
|
167
168
|
return this;
|
|
168
169
|
}
|
|
169
170
|
if (key === "_target") {
|
|
170
171
|
return this.target;
|
|
171
172
|
}
|
|
173
|
+
performance_temporarilyUninstallChangeTrackersIfAllowed(this.target);
|
|
172
174
|
// Check for and use supervisor class:
|
|
173
|
-
if (
|
|
174
|
-
for (const TrackerClass of
|
|
175
|
+
if (trackingConfig !== undefined) {
|
|
176
|
+
for (const TrackerClass of trackingConfig.getTrackerClasses()) {
|
|
175
177
|
let propOnSupervisor = Object.getOwnPropertyDescriptor(TrackerClass.prototype, key);
|
|
176
178
|
if (propOnSupervisor !== undefined) { // Supervisor class is responsible for the property (or method) ?
|
|
177
179
|
//@ts-ignore
|
|
@@ -191,11 +193,11 @@ export class WatchedProxyHandler extends FacadeProxyHandler {
|
|
|
191
193
|
// When arriving here, the field is not **directly** in one of the tracker classes
|
|
192
194
|
//@ts-ignore
|
|
193
195
|
origMethod = this.target[key];
|
|
194
|
-
if (
|
|
196
|
+
if (trackingConfig.knownHighLevelMethods.has(key)) {
|
|
195
197
|
return trapHighLevelReaderWriterMethod;
|
|
196
198
|
}
|
|
197
199
|
if (typeof origMethod === "function" && !(key in Object.prototype)) { // Read+write method that was not handled directly by supervisor class?
|
|
198
|
-
if (
|
|
200
|
+
if (trackingConfig.readOnlyMethods.has(key)) {
|
|
199
201
|
return trapForGenericReaderMethod;
|
|
200
202
|
}
|
|
201
203
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchedProxyFacade.js","sourceRoot":"","sources":["../../watchedProxyFacade.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,kBAAkB,EAElB,WAAW,EAEX,kBAAkB,EACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,UAAU,EAAC,MAAM,QAAQ,CAAC;AAClC,OAAO,EAEH,uBAAuB,EACvB,qBAAqB,EAGrB,YAAY,EACZ,sBAAsB,GACzB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAC,uBAAuB,EAAE,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AACrF,OAAO,CAAC,MAAM,YAAY,CAAA;AAC1B,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAC,8BAA8B,EAAC,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"watchedProxyFacade.js","sourceRoot":"","sources":["../../watchedProxyFacade.ts"],"names":[],"mappings":"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"}
|
package/index.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export {RecordedRead, ClassTrackingConfiguration, IteratorReturningProxiedValue, GetIteratorValueProxiedFn} from "./common"
|
|
2
2
|
export {deleteProperty, ProxyFacade, FacadeProxyHandler, invalidateObject, getGlobalOrig, changeTrackedOrigObjects, ForWatchedProxyHandler, dualUseTracker_callOrigMethodOnTarget,DualUseTracker,RecordedReadOnProxiedObject} from "./proxyFacade";
|
|
3
|
-
export {installChangeTracker} from "./origChangeTracking"
|
|
3
|
+
export {installChangeTracker, unInstallChangeTracker, performance_withoutChangeEvents} from "./origChangeTracking"
|
|
4
4
|
export {RecordedArrayValuesRead} from "./class-trackers/Array"
|
|
5
5
|
export {RecordedMap_has, RecordedMap_get, RecordedMapEntriesRead, RecordedMapKeysRead, RecordedMapValuesRead} from "./class-trackers/Map"
|
|
6
6
|
export {RecordedSet_has, RecordedSetValuesRead} from "./class-trackers/Set"
|
package/origChangeTracking.ts
CHANGED
|
@@ -27,10 +27,12 @@ export function installChangeTracker(obj: object) {
|
|
|
27
27
|
Object.setPrototypeOf(obj, proxy);
|
|
28
28
|
return;
|
|
29
29
|
}
|
|
30
|
-
|
|
31
|
-
if (trackingConfig.changeTracker !== undefined) {
|
|
30
|
+
else if (trackingConfig.changeTracker !== undefined) {
|
|
32
31
|
Object.setPrototypeOf(obj, trackingConfig.changeTracker.prototype);
|
|
33
32
|
}
|
|
33
|
+
else {
|
|
34
|
+
throwError("Unhandled");
|
|
35
|
+
}
|
|
34
36
|
} else { // Non-special object ?
|
|
35
37
|
const proxy = new ObjectProxyHandler(obj, trackingConfig).proxy;
|
|
36
38
|
Object.setPrototypeOf(obj, proxy);
|
|
@@ -41,4 +43,58 @@ export function installChangeTracker(obj: object) {
|
|
|
41
43
|
changeTrackedOrigObjects._register(obj);
|
|
42
44
|
}
|
|
43
45
|
|
|
46
|
+
export function unInstallChangeTracker(obj: object) {
|
|
47
|
+
if(!changeTrackedOrigObjects.hasObj(obj)) { // Already uninstalled?
|
|
48
|
+
return false
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
const origPrototype = Object.getPrototypeOf(Object.getPrototypeOf(obj));
|
|
52
|
+
Object.setPrototypeOf(obj, origPrototype); // Remove proto from the chain
|
|
53
|
+
changeTrackedOrigObjects._unregister(obj);
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Temporarily uninstalls them, if an (ancestor) caller has allowed it
|
|
59
|
+
* @param obj
|
|
60
|
+
*/
|
|
61
|
+
export function performance_temporarilyUninstallChangeTrackersIfAllowed(obj: object) {
|
|
62
|
+
if(performance_temporarilyUninstallObjects !== undefined) {
|
|
63
|
+
const uninstalled = unInstallChangeTracker(obj);
|
|
64
|
+
if(uninstalled) {
|
|
65
|
+
performance_temporarilyUninstallObjects?.push(obj);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Performance: When set,
|
|
73
|
+
*/
|
|
74
|
+
let performance_temporarilyUninstallObjects: object[] | undefined = undefined
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Uninstalls the changes trackers temporarily while running the specified function. This can improve performance if you have many ready on few objects
|
|
78
|
+
* @param execFn
|
|
79
|
+
*/
|
|
80
|
+
export function performance_withoutChangeEvents<T>(execFn: () => T) {
|
|
81
|
+
if(performance_temporarilyUninstallObjects !== undefined) { // Already wrapped at parent level?
|
|
82
|
+
return execFn()
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
performance_temporarilyUninstallObjects = [];
|
|
86
|
+
try {
|
|
87
|
+
return execFn();
|
|
88
|
+
}
|
|
89
|
+
finally {
|
|
90
|
+
// Re-install change trackers:
|
|
91
|
+
for(const obj of performance_temporarilyUninstallObjects) {
|
|
92
|
+
installChangeTracker(obj)
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
performance_temporarilyUninstallObjects = undefined;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
|
|
44
100
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "proxy-facades",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.8.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"proxy",
|
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
"dev:generateEsRuntimeBehaviourCheckerCode": "tsx dev_generateEsRuntimeBehaviourCheckerCode.ts",
|
|
31
31
|
"clean": "tsc --build --clean && rimraf dist",
|
|
32
32
|
"build": "tsc --build --force && tsc -module ES6 --outDir dist/esm && npm run verify_d.ts",
|
|
33
|
+
"build:fastbuild_commonjs": "tsc --build",
|
|
33
34
|
"verify_d.ts": "tsc dist/**/*.d.ts -noEmit",
|
|
34
35
|
"test": "npm run clean && vitest --clearScreen --hideSkippedTests --poolOptions.threads.singleThread",
|
|
35
36
|
"test_specific": "npm run clean && vitest --clearScreen --hideSkippedTests --poolOptions.threads.singleThread --testNamePattern \"WriterFn Date should behave normally. With writes through WatchedProxyFacade proxy\"",
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
|
|
2
|
+
import {WatchedProxyFacade} from "./watchedProxyFacade";
|
|
3
|
+
import {performance_withoutChangeEvents} from "./origChangeTracking";
|
|
4
|
+
|
|
5
|
+
console.log("Start")
|
|
6
|
+
const startTime = new Date().getTime();
|
|
7
|
+
// Comment / uncomment the test to run:
|
|
8
|
+
manyReadsOnAProxiedObject()
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
function manyReadsOnAProxiedObject() {
|
|
12
|
+
const facade = new WatchedProxyFacade();
|
|
13
|
+
facade.onAfterRead((read) => {
|
|
14
|
+
read.onAfterChange(() => {
|
|
15
|
+
}, true)
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
const myObj = new class MyClass{
|
|
19
|
+
_myProp = "123"
|
|
20
|
+
|
|
21
|
+
get myProperty() {
|
|
22
|
+
return this._myProp;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
const proxy = facade.getProxyFor(myObj);
|
|
28
|
+
|
|
29
|
+
for (let i = 0; i < 100000; i++) {
|
|
30
|
+
performance_withoutChangeEvents(() => {
|
|
31
|
+
proxy.myProperty;
|
|
32
|
+
})
|
|
33
|
+
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
console.log(`Finished in ${new Date().getTime() - startTime}ms`)
|