@nanolink/mirrors 1.0.3 → 1.0.4

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.
@@ -21,3 +21,14 @@ export declare class DelegatingMap<K, V> implements ReadonlyMapView<K, V> {
21
21
  forEach(callbackfn: (value: V, key: K, map: ReadonlyMapView<K, V>) => void, thisArg?: any): void;
22
22
  [Symbol.iterator](): IterableIterator<[K, V]>;
23
23
  }
24
+ /**
25
+ * Presents a ReadonlyMapView<K,V> as an immutable plain object via Proxy.
26
+ * Optionally maps values through a mapper function on access.
27
+ */
28
+ export declare class DelegatingObject<K extends string, V, R = V> {
29
+ private readonly source;
30
+ private readonly mapFn?;
31
+ private readonly proxy;
32
+ constructor(source: ReadonlyMapView<K, V>, mapFn?: ((value: V, key: K) => R) | undefined);
33
+ asObject(): Record<K, R>;
34
+ }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DelegatingMap = void 0;
3
+ exports.DelegatingObject = exports.DelegatingMap = void 0;
4
4
  class DelegatingMap {
5
5
  constructor(resolver) {
6
6
  this.resolver = resolver;
@@ -18,4 +18,42 @@ class DelegatingMap {
18
18
  [Symbol.iterator]() { return this.t()[Symbol.iterator](); }
19
19
  }
20
20
  exports.DelegatingMap = DelegatingMap;
21
+ /**
22
+ * Presents a ReadonlyMapView<K,V> as an immutable plain object via Proxy.
23
+ * Optionally maps values through a mapper function on access.
24
+ */
25
+ class DelegatingObject {
26
+ constructor(source, mapFn) {
27
+ this.source = source;
28
+ this.mapFn = mapFn;
29
+ const mapper = (v, k) => (this.mapFn ? this.mapFn(v, k) : v);
30
+ const handler = {
31
+ get: (_target, prop, receiver) => {
32
+ if (prop === Symbol.toStringTag)
33
+ return 'Object';
34
+ if (typeof prop !== 'string')
35
+ return Reflect.get(Object.prototype, prop, receiver);
36
+ const key = prop;
37
+ const v = this.source.get(key);
38
+ return v === undefined ? undefined : mapper(v, key);
39
+ },
40
+ set: () => false, // immutable
41
+ has: (_target, prop) => typeof prop === 'string' && this.source.has(prop),
42
+ deleteProperty: () => false, // immutable
43
+ ownKeys: () => Array.from(this.source.keys()),
44
+ getOwnPropertyDescriptor: (_target, prop) => {
45
+ if (typeof prop === 'string' && this.source.has(prop)) {
46
+ const key = prop;
47
+ const v = this.source.get(key);
48
+ return { configurable: true, enumerable: true, value: mapper(v, key) };
49
+ }
50
+ return undefined;
51
+ },
52
+ defineProperty: () => false, // immutable
53
+ };
54
+ this.proxy = new Proxy(Object.create(null), handler);
55
+ }
56
+ asObject() { return this.proxy; }
57
+ }
58
+ exports.DelegatingObject = DelegatingObject;
21
59
  //# sourceMappingURL=DelegateMap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DelegateMap.js","sourceRoot":"","sources":["../src/DelegateMap.ts"],"names":[],"mappings":";;;AAYA,MAAa,aAAa;IACxB,YAA6B,QAAyB;QAAzB,aAAQ,GAAR,QAAQ,CAAiB;IAAI,CAAC;IACnD,CAAC,KAAgB,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAClD,IAAI,IAAI,KAAa,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,GAAG,CAAC,GAAM,IAAmB,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxD,GAAG,CAAC,GAAM,IAAa,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAClD,OAAO,KAA+B,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAClE,IAAI,KAA0B,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACvD,MAAM,KAA0B,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,UAAkE,EAAE,OAAa;QACvF,IAAI,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAI,EAAE,CAAI,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAQ,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;IACD,CAAC,MAAM,CAAC,QAAQ,CAAC,KAA+B,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;CACtF;AAbD,sCAaC"}
1
+ {"version":3,"file":"DelegateMap.js","sourceRoot":"","sources":["../src/DelegateMap.ts"],"names":[],"mappings":";;;AAYA,MAAa,aAAa;IACxB,YAA6B,QAAyB;QAAzB,aAAQ,GAAR,QAAQ,CAAiB;IAAI,CAAC;IACnD,CAAC,KAAgB,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAClD,IAAI,IAAI,KAAa,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,GAAG,CAAC,GAAM,IAAmB,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxD,GAAG,CAAC,GAAM,IAAa,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAClD,OAAO,KAA+B,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAClE,IAAI,KAA0B,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACvD,MAAM,KAA0B,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,UAAkE,EAAE,OAAa;QACvF,IAAI,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAI,EAAE,CAAI,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAQ,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;IACD,CAAC,MAAM,CAAC,QAAQ,CAAC,KAA+B,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;CACtF;AAbD,sCAaC;AAED;;;GAGG;AACH,MAAa,gBAAgB;IAE3B,YAA6B,MAA6B,EAAmB,KAA+B;QAA/E,WAAM,GAAN,MAAM,CAAuB;QAAmB,UAAK,GAAL,KAAK,CAA0B;QAC1G,MAAM,MAAM,GAAG,CAAC,CAAI,EAAE,CAAI,EAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAE,CAAkB,CAAC,CAAC;QACxF,MAAM,OAAO,GAAsB;YACjC,GAAG,EAAE,CAAC,OAAO,EAAE,IAAiB,EAAE,QAAQ,EAAE,EAAE;gBAC5C,IAAI,IAAI,KAAK,MAAM,CAAC,WAAW;oBAAE,OAAO,QAAQ,CAAC;gBACjD,IAAI,OAAO,IAAI,KAAK,QAAQ;oBAAE,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACnF,MAAM,GAAG,GAAG,IAAS,CAAC;gBACtB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC/B,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACtD,CAAC;YACD,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,YAAY;YAC9B,GAAG,EAAE,CAAC,OAAO,EAAE,IAAiB,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAS,CAAC;YAC3F,cAAc,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,YAAY;YACzC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAyC,CAAC;YACpF,wBAAwB,EAAE,CAAC,OAAO,EAAE,IAAiB,EAAE,EAAE;gBACvD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAS,CAAC,EAAE,CAAC;oBAC3D,MAAM,GAAG,GAAG,IAAS,CAAC;oBACtB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;oBAChC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;gBACzE,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,cAAc,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,YAAY;SAC1C,CAAC;QACF,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IACD,QAAQ,KAAmB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;CAChD;AA7BD,4CA6BC"}
@@ -77,6 +77,7 @@ export declare class MirrorSync extends EventEmitter {
77
77
  private resolveLoaded?;
78
78
  private onReconnected?;
79
79
  private onConnected?;
80
+ get Storage(): ReadonlyMapView<string, any>;
80
81
  constructor(client: SubscriptionClient, options: MirrorSyncOptions & {
81
82
  log?: (msg: string, meta?: any) => void;
82
83
  });
@@ -20,6 +20,7 @@ var SyncType;
20
20
  * Generic TBase is the item shape (must include id & version).
21
21
  */
22
22
  class MirrorSync extends eventemitter3_1.default {
23
+ get Storage() { return this.mirror; }
23
24
  constructor(client, options) {
24
25
  super();
25
26
  this.mirror = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"MirrorSync.js","sourceRoot":"","sources":["../src/MirrorSync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MirrorSync.js","sourceRoot":"","sources":["../src/MirrorSync.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,10 +1,12 @@
1
1
  import { MirrorSync } from "./MirrorSync";
2
- import { ReadonlyMapView } from "./DelegateMap";
2
+ import { ReadonlyMapView, DelegatingObject } from "./DelegateMap";
3
3
  import SubscriptionClient from "./SubscriptionClient";
4
- export { SubscriptionClient, MirrorSync };
4
+ export { SubscriptionClient, MirrorSync, DelegatingObject };
5
5
  export type { ReadonlyMapView };
6
6
  export declare class Connection extends SubscriptionClient {
7
+ private mirrorMap;
7
8
  private mirrors;
9
+ get Mirrors(): any;
8
10
  constructor(url: string, connectionParams: () => Promise<Record<string, unknown> | Record<string, unknown>>);
9
11
  getMirror(name: string, subscription: string, baseVariables: Record<string, unknown>): Promise<ReadonlyMapView<string, any>>;
10
12
  removeMirror(name: string): void;
package/dist/index.js CHANGED
@@ -3,21 +3,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Connection = exports.MirrorSync = exports.SubscriptionClient = void 0;
6
+ exports.Connection = exports.DelegatingObject = exports.MirrorSync = exports.SubscriptionClient = void 0;
7
7
  const MirrorSync_1 = require("./MirrorSync");
8
8
  Object.defineProperty(exports, "MirrorSync", { enumerable: true, get: function () { return MirrorSync_1.MirrorSync; } });
9
+ const DelegateMap_1 = require("./DelegateMap");
10
+ Object.defineProperty(exports, "DelegatingObject", { enumerable: true, get: function () { return DelegateMap_1.DelegatingObject; } });
9
11
  const SubscriptionClient_1 = __importDefault(require("./SubscriptionClient"));
10
12
  exports.SubscriptionClient = SubscriptionClient_1.default;
11
13
  class Connection extends SubscriptionClient_1.default {
14
+ get Mirrors() { return this.mirrors.asObject(); }
12
15
  constructor(url, connectionParams) {
13
16
  super({
14
17
  url: url,
15
18
  connectionParams: connectionParams
16
19
  });
17
- this.mirrors = new Map();
20
+ this.mirrorMap = new Map();
21
+ this.mirrors = new DelegateMap_1.DelegatingObject(new DelegateMap_1.DelegatingMap(() => this.mirrorMap), (v) => v.sync.Storage);
18
22
  }
19
23
  getMirror(name, subscription, baseVariables) {
20
- let entry = this.mirrors.get(name);
24
+ let entry = this.mirrorMap.get(name);
21
25
  if (!entry) {
22
26
  const sync = new MirrorSync_1.MirrorSync(this, { subscription, baseVariables });
23
27
  const forward = (event, payload) => {
@@ -34,22 +38,22 @@ class Connection extends SubscriptionClient_1.default {
34
38
  ];
35
39
  handlers.forEach(([e, h]) => sync.on(e, h));
36
40
  const detach = () => handlers.forEach(([e, h]) => sync.off(e, h));
37
- this.mirrors.set(name, { sync, detach });
41
+ this.mirrorMap.set(name, { sync, detach });
38
42
  entry = { sync, detach };
39
43
  }
40
44
  return entry.sync.load();
41
45
  }
42
46
  removeMirror(name) {
43
- const entry = this.mirrors.get(name);
47
+ const entry = this.mirrorMap.get(name);
44
48
  if (!entry)
45
49
  return;
46
50
  entry.detach();
47
51
  entry.sync.stop();
48
- this.mirrors.delete(name);
52
+ this.mirrorMap.delete(name);
49
53
  this.emit('mirror:removed', { mirrorName: name });
50
54
  }
51
55
  clearMirrors() {
52
- for (const name of Array.from(this.mirrors.keys())) {
56
+ for (const name of Array.from(this.mirrorMap.keys())) {
53
57
  this.removeMirror(name);
54
58
  }
55
59
  this.emit('mirror:cleared');
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nanolink/mirrors",
3
- "version": "1.0.3",
3
+ "version": "1.0.4",
4
4
  "description": "GraphQL subscription client + mirror synchronization utilities.",
5
5
  "license": "MIT",
6
6
  "author": "Nanolink ApS, Mogens Bak Nielsen",