informa 2.0.0 → 2.1.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/dist/high.d.ts CHANGED
@@ -34,10 +34,9 @@ interface MapListeners<K, V> {
34
34
  deleteEntry?(k: K, v: V): void;
35
35
  sizeChanged?(): void;
36
36
  }
37
- export declare function on<T, K extends string | number | symbol, V, U, K1, V1>(...[selector, listeners, options]: [
38
- () => T,
39
- Listeners<T>
40
- ] | [() => T, Listeners<T>, Options | undefined] | [() => Statify<Record<K, V>>, ObjectListeners<K, V>] | [() => Statify<Record<K, V>>, ObjectListeners<K, V>, Options | undefined] | [() => Statify<U[]>, ArrayListeners<U>] | [() => Statify<U[]>, ArrayListeners<U>, Options | undefined] | [() => Statify<Set<U>>, SetListeners<U>] | [() => Statify<Set<U>>, SetListeners<U>, Options | undefined] | [() => Statify<Map<K1, V1>>, MapListeners<K1, V1>] | [() => Statify<Map<K1, V1>>, MapListeners<K1, V1>, Options | undefined]): () => void;
37
+ type OnOffParams<T, K extends string | number | symbol, V, U, K1, V1> = [() => T, Listeners<T>] | [() => T, Listeners<T>, Options | undefined] | [() => Statify<Record<K, V>>, ObjectListeners<K, V>] | [() => Statify<Record<K, V>>, ObjectListeners<K, V>, Options | undefined] | [() => Statify<U[]>, ArrayListeners<U>] | [() => Statify<U[]>, ArrayListeners<U>, Options | undefined] | [() => Statify<Set<U>>, SetListeners<U>] | [() => Statify<Set<U>>, SetListeners<U>, Options | undefined] | [() => Statify<Map<K1, V1>>, MapListeners<K1, V1>] | [() => Statify<Map<K1, V1>>, MapListeners<K1, V1>, Options | undefined];
38
+ export declare function on<T, K extends string | number | symbol, V, U, K1, V1>(...[selector, listeners, options]: OnOffParams<T, K, V, U, K1, V1>): () => void;
39
+ export declare function off<T, K extends string | number | symbol, V, U, K1, V1>(...[selector, listeners, options]: OnOffParams<T, K, V, U, K1, V1>): void;
41
40
  declare function onSet<T>(s: () => T, l: (v: T) => void, o?: Options): () => void;
42
41
  declare function onReplace<T>(s: () => T, l: (v: T) => void, o?: Options): () => void;
43
42
  declare function onReplaceProp<T extends Record<string | number | symbol, StatifiableProp>>(s: () => Statify<T>, l: (k: keyof T, v: T[keyof T]) => void, o?: Options): () => void;
@@ -56,6 +55,7 @@ declare function onDeleteEntry<K, V extends StatifiableObj>(s: () => Statify<Map
56
55
  declare function onSizeChanged(s: () => Statify<Map<any, StatifiableObj>>, l: () => void, o?: Options): () => void;
57
56
  declare const _default: {
58
57
  on: typeof on;
58
+ off: typeof off;
59
59
  onSet: typeof onSet;
60
60
  onReplace: typeof onReplace;
61
61
  onReplaceProp: typeof onReplaceProp;
@@ -1 +1 @@
1
- {"version":3,"file":"high.d.ts","sourceRoot":"","sources":["../src/high.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"high.d.ts","sourceRoot":"","sources":["../src/high.ts"],"names":[],"mappings":"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"}
package/dist/high.js CHANGED
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.stateInner = stateInner;
4
4
  exports.state = state;
5
5
  exports.on = on;
6
+ exports.off = off;
6
7
  const internals_js_1 = require("./internals.js");
7
8
  const low_js_1 = require("./low.js");
8
9
  const array_js_1 = require("./quirks/array.js");
@@ -62,6 +63,14 @@ function on(...[selector, listeners, options]) {
62
63
  }
63
64
  };
64
65
  }
66
+ function off(...[selector, listeners, options]) {
67
+ const { path, stateRoot } = (0, low_js_1.selectorToRootAndPath)(selector);
68
+ const metadata = (0, internals_js_1.getMetadataOf)(stateRoot);
69
+ const eventEmitter = metadata.eventEmitterAtPath(path);
70
+ for (const [key, value] of Object.entries(listeners)) {
71
+ eventEmitter.off(key, value);
72
+ }
73
+ }
65
74
  function onSet(s, l, o) {
66
75
  // TODO Handle `once` option
67
76
  return on(s, { set: l }, o);
@@ -113,6 +122,7 @@ function onSizeChanged(s, l, o) {
113
122
  }
114
123
  exports.default = {
115
124
  on,
125
+ off,
116
126
  onSet,
117
127
  onReplace,
118
128
  onReplaceProp,
package/dist/high.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"high.js","sourceRoot":"","sources":["../src/high.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"high.js","sourceRoot":"","sources":["../src/high.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { exitProxySymbol, Statify, statifySealKey } from "../internals";
2
- import { ExitProxyValue } from "../low";
1
+ import { exitProxySymbol, Statify, statifySealKey } from "../internals.js";
2
+ import { ExitProxyValue } from "../low.js";
3
3
  export declare class StatifiedMap<K, V> extends Map<K, V> implements Statify<Map<K, V>> {
4
4
  #private;
5
5
  [statifySealKey]: true;
@@ -1 +1 @@
1
- {"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../src/quirks/map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAkC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACxG,OAAO,EAAE,cAAc,EAA0C,MAAM,QAAQ,CAAC;AAEhF,qBAAa,YAAY,CAAC,CAAC,EAAE,CAAC,CAAE,SAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAE,YAAW,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;IAC7E,CAAC,cAAc,CAAC,EAAE,IAAI,CAAQ;IAC9B,IAAI,CAAC,eAAe,CAAC,IAAI,cAAc,CAKtC;IAID,YAAY,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,EAIzC;IAED,KAAK,IAAI,IAAI,CASZ;IAED,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO,CAStB;IAED,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAc1B;CACF"}
1
+ {"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../src/quirks/map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAkC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC3G,OAAO,EAAE,cAAc,EAAiC,MAAM,WAAW,CAAC;AAE1E,qBAAa,YAAY,CAAC,CAAC,EAAE,CAAC,CAAE,SAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAE,YAAW,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;IAC7E,CAAC,cAAc,CAAC,EAAE,IAAI,CAAQ;IAC9B,IAAI,CAAC,eAAe,CAAC,IAAI,cAAc,CAKtC;IAID,YAAY,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,EAIzC;IAED,KAAK,IAAI,IAAI,CASZ;IAED,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO,CAStB;IAED,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAc1B;CACF"}
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StatifiedMap = void 0;
4
- const internals_1 = require("../internals");
5
- const low_1 = require("../low");
4
+ const internals_js_1 = require("../internals.js");
5
+ const low_js_1 = require("../low.js");
6
6
  class StatifiedMap extends Map {
7
- [internals_1.statifySealKey] = true;
8
- get [internals_1.exitProxySymbol]() {
9
- if (internals_1.globalStateMode === "extract-proxy-path") {
7
+ [internals_js_1.statifySealKey] = true;
8
+ get [internals_js_1.exitProxySymbol]() {
9
+ if (internals_js_1.globalStateMode === "extract-proxy-path") {
10
10
  return { path: [], stateRoot: this };
11
11
  }
12
12
  throw new Error("exitProxySymbol is not available in normal mode");
@@ -14,7 +14,7 @@ class StatifiedMap extends Map {
14
14
  #metadata;
15
15
  constructor(args) {
16
16
  super(args);
17
- this.#metadata = (0, internals_1.setMetadataOf)(this, new low_1.StateMetadata());
17
+ this.#metadata = (0, internals_js_1.setMetadataOf)(this, new low_js_1.StateMetadata());
18
18
  }
19
19
  clear() {
20
20
  const entries = [...this.entries()];
@@ -1 +1 @@
1
- {"version":3,"file":"map.js","sourceRoot":"","sources":["../../src/quirks/map.ts"],"names":[],"mappings":";;;AAAA,4CAAwG;AACxG,gCAAgF;AAEhF,kBAAgC,SAAQ,GAAS;IAC/C,CAAC,0BAAc,CAAC,GAAS,IAAI,CAAC;IAC9B,IAAI,CAAC,2BAAe,CAAC;QACnB,IAAI,2BAAe,KAAK,oBAAoB,EAAE,CAAC;YAC7C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,IAA+B,EAAE,CAAC;QAClE,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,SAAS,CAAgB;IAEzB,YAAY,IAA8B;QACxC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,IAAI,CAAC,SAAS,GAAG,IAAA,yBAAa,EAAC,IAAI,EAAE,IAAI,mBAAa,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK;QACH,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACpC,KAAK,CAAC,KAAK,EAAE,CAAC;QAEd,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,CAAC,GAAM;QACX,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YAC/C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,GAAG,CAAC,GAAM,EAAE,KAAQ;QAClB,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK;YAAE,OAAO,IAAI,CAAC;QAE1C,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3B,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAEtB,IAAI,GAAG,EAAE,CAAC;YACR,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAEnC,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
1
+ {"version":3,"file":"map.js","sourceRoot":"","sources":["../../src/quirks/map.ts"],"names":[],"mappings":";;;AAAA,kDAA2G;AAC3G,sCAA0E;AAE1E,kBAAgC,SAAQ,GAAS;IAC/C,CAAC,6BAAc,CAAC,GAAS,IAAI,CAAC;IAC9B,IAAI,CAAC,8BAAe,CAAC;QACnB,IAAI,8BAAe,KAAK,oBAAoB,EAAE,CAAC;YAC7C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,IAA+B,EAAE,CAAC;QAClE,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,SAAS,CAAgB;IAEzB,YAAY,IAA8B;QACxC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,IAAI,CAAC,SAAS,GAAG,IAAA,4BAAa,EAAC,IAAI,EAAE,IAAI,sBAAa,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK;QACH,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACpC,KAAK,CAAC,KAAK,EAAE,CAAC;QAEd,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,CAAC,GAAM;QACX,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YAC/C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,GAAG,CAAC,GAAM,EAAE,KAAQ;QAClB,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK;YAAE,OAAO,IAAI,CAAC;QAE1C,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3B,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAEtB,IAAI,GAAG,EAAE,CAAC;YACR,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAEnC,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "informa",
3
- "version": "2.0.0",
3
+ "version": "2.1.0",
4
4
  "description": "Informa's State Management",
5
5
  "keywords": [
6
6
  "state management",
package/src/high.ts CHANGED
@@ -94,18 +94,19 @@ interface MapListeners<K, V> {
94
94
  sizeChanged?(): void;
95
95
  }
96
96
 
97
+ type OnOffParams<T, K extends string | number | symbol, V, U, K1, V1> = [() => T, Listeners<T>]
98
+ | [() => T, Listeners<T>, Options | undefined]
99
+ | [() => Statify<Record<K, V>>, ObjectListeners<K, V>]
100
+ | [() => Statify<Record<K, V>>, ObjectListeners<K, V>, Options | undefined]
101
+ | [() => Statify<U[]>, ArrayListeners<U>]
102
+ | [() => Statify<U[]>, ArrayListeners<U>, Options | undefined]
103
+ | [() => Statify<Set<U>>, SetListeners<U>]
104
+ | [() => Statify<Set<U>>, SetListeners<U>, Options | undefined]
105
+ | [() => Statify<Map<K1, V1>>, MapListeners<K1, V1>]
106
+ | [() => Statify<Map<K1, V1>>, MapListeners<K1, V1>, Options | undefined];
107
+
97
108
  export function on<T, K extends string | number | symbol, V, U, K1, V1>(
98
- ...[selector, listeners, options]:
99
- [() => T, Listeners<T>]
100
- | [() => T, Listeners<T>, Options | undefined]
101
- | [() => Statify<Record<K, V>>, ObjectListeners<K, V>]
102
- | [() => Statify<Record<K, V>>, ObjectListeners<K, V>, Options | undefined]
103
- | [() => Statify<U[]>, ArrayListeners<U>]
104
- | [() => Statify<U[]>, ArrayListeners<U>, Options | undefined]
105
- | [() => Statify<Set<U>>, SetListeners<U>]
106
- | [() => Statify<Set<U>>, SetListeners<U>, Options | undefined]
107
- | [() => Statify<Map<K1, V1>>, MapListeners<K1, V1>]
108
- | [() => Statify<Map<K1, V1>>, MapListeners<K1, V1>, Options | undefined]
109
+ ...[selector, listeners, options]: OnOffParams<T, K, V, U, K1, V1>
109
110
  ): () => void {
110
111
  const { path, stateRoot } = selectorToRootAndPath(selector as () => Statify<StatifiableObj>);
111
112
 
@@ -124,6 +125,20 @@ export function on<T, K extends string | number | symbol, V, U, K1, V1>(
124
125
  }
125
126
  }
126
127
 
128
+ export function off<T, K extends string | number | symbol, V, U, K1, V1>(
129
+ ...[selector, listeners, options]: OnOffParams<T, K, V, U, K1, V1>
130
+ ): void {
131
+ const { path, stateRoot } = selectorToRootAndPath(selector as () => Statify<StatifiableObj>);
132
+
133
+ const metadata = getMetadataOf(stateRoot);
134
+
135
+ const eventEmitter = metadata.eventEmitterAtPath(path);
136
+
137
+ for (const [key, value] of Object.entries(listeners)) {
138
+ eventEmitter.off(key, value);
139
+ }
140
+ }
141
+
127
142
  function onSet<T>(s: () => T, l: (v: T) => void, o?: Options) {
128
143
  // TODO Handle `once` option
129
144
  return on(s, { set: l }, o);
@@ -177,6 +192,7 @@ function onSizeChanged(s: () => Statify<Map<any, StatifiableObj>>, l: () => void
177
192
 
178
193
  export default {
179
194
  on,
195
+ off,
180
196
  onSet,
181
197
  onReplace,
182
198
  onReplaceProp,