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.
Files changed (56) hide show
  1. package/.run/performanceTests.ts no profiling.run.xml +15 -0
  2. package/.run/performanceTests_withProfiling.ts.run.xml +18 -0
  3. package/DEVELOPMENT.md +4 -0
  4. package/class-trackers/Array.ts +21 -4
  5. package/common.ts +4 -0
  6. package/dist/commonjs/class-trackers/Array.d.ts +2 -2
  7. package/dist/commonjs/class-trackers/Array.d.ts.map +1 -1
  8. package/dist/commonjs/class-trackers/Array.js +19 -4
  9. package/dist/commonjs/class-trackers/Array.js.map +1 -1
  10. package/dist/commonjs/common.d.ts +1 -0
  11. package/dist/commonjs/common.d.ts.map +1 -1
  12. package/dist/commonjs/common.js +3 -0
  13. package/dist/commonjs/common.js.map +1 -1
  14. package/dist/commonjs/index.d.ts +1 -1
  15. package/dist/commonjs/index.d.ts.map +1 -1
  16. package/dist/commonjs/index.js +3 -1
  17. package/dist/commonjs/index.js.map +1 -1
  18. package/dist/commonjs/origChangeTracking.d.ts +11 -0
  19. package/dist/commonjs/origChangeTracking.d.ts.map +1 -1
  20. package/dist/commonjs/origChangeTracking.js +52 -1
  21. package/dist/commonjs/origChangeTracking.js.map +1 -1
  22. package/dist/commonjs/performanceTests.d.ts +2 -0
  23. package/dist/commonjs/performanceTests.d.ts.map +1 -0
  24. package/dist/commonjs/performanceTests.js +31 -0
  25. package/dist/commonjs/performanceTests.js.map +1 -0
  26. package/dist/commonjs/watchedProxyFacade.d.ts.map +1 -1
  27. package/dist/commonjs/watchedProxyFacade.js +8 -6
  28. package/dist/commonjs/watchedProxyFacade.js.map +1 -1
  29. package/dist/esm/class-trackers/Array.d.ts +2 -2
  30. package/dist/esm/class-trackers/Array.d.ts.map +1 -1
  31. package/dist/esm/class-trackers/Array.js +19 -4
  32. package/dist/esm/class-trackers/Array.js.map +1 -1
  33. package/dist/esm/common.d.ts +1 -0
  34. package/dist/esm/common.d.ts.map +1 -1
  35. package/dist/esm/common.js +3 -0
  36. package/dist/esm/common.js.map +1 -1
  37. package/dist/esm/index.d.ts +1 -1
  38. package/dist/esm/index.d.ts.map +1 -1
  39. package/dist/esm/index.js +1 -1
  40. package/dist/esm/index.js.map +1 -1
  41. package/dist/esm/origChangeTracking.d.ts +11 -0
  42. package/dist/esm/origChangeTracking.d.ts.map +1 -1
  43. package/dist/esm/origChangeTracking.js +49 -1
  44. package/dist/esm/origChangeTracking.js.map +1 -1
  45. package/dist/esm/performanceTests.d.ts +2 -0
  46. package/dist/esm/performanceTests.d.ts.map +1 -0
  47. package/dist/esm/performanceTests.js +29 -0
  48. package/dist/esm/performanceTests.js.map +1 -0
  49. package/dist/esm/watchedProxyFacade.d.ts.map +1 -1
  50. package/dist/esm/watchedProxyFacade.js +8 -6
  51. package/dist/esm/watchedProxyFacade.js.map +1 -1
  52. package/index.ts +1 -1
  53. package/origChangeTracking.ts +58 -2
  54. package/package.json +2 -1
  55. package/performanceTests.ts +37 -0
  56. 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(...args: any[]): void;
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;AAED;;;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;CAI7B;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;;;OAGG;IACH,OAAO,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;IAOtB,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"}
1
+ {"version":3,"file":"Array.d.ts","sourceRoot":"","sources":["../../../class-trackers/Array.ts"],"names":[],"mappings":"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"}
@@ -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(...args) {
139
- //@ts-ignore
140
- return super.forEach(...args); //reads "length" an thererfore triggers the read
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":"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"}
@@ -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
  /**
@@ -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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"}
@@ -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
  /**
@@ -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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"}
@@ -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";
@@ -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;AACzD,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"}
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";
@@ -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;AACzD,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"}
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,QA2B/C"}
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;YAED,IAAI,cAAc,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;gBAC7C,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;YACvE,CAAC;QACL,CAAC;aAAM,CAAC,CAAC,uBAAuB;YAC5B,MAAM,KAAK,GAAG,IAAI,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,KAAK,CAAC;YAChE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;IACL,CAAC;IACD,KAAK,EAAE,CAAC;IAER,wBAAwB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;AAC5C,CAAC"}
1
+ {"version":3,"file":"origChangeTracking.js","sourceRoot":"","sources":["../../origChangeTracking.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=performanceTests.d.ts.map
@@ -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":"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"}
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 receiverMustBeNonProxied = ((_a = this.trackingConfig) === null || _a === void 0 ? void 0 : _a.receiverMustBeNonProxied) === true;
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 (this.trackingConfig !== undefined) {
174
- for (const TrackerClass of this.trackingConfig.getTrackerClasses()) {
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 (this.trackingConfig.knownHighLevelMethods.has(key)) {
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 (this.trackingConfig.readOnlyMethods.has(key)) {
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":"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"}
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"
@@ -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.7.2",
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`)