@opendaw/lib-box 0.0.46 → 0.0.48

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.
@@ -1 +1 @@
1
- {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../src/array.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,cAAc,EAAC,MAAM,SAAS,CAAA;AAC7C,OAAO,EAAC,mBAAmB,EAAC,MAAM,WAAW,CAAA;AAC7C,OAAO,EAGH,SAAS,EACT,UAAU,EACV,GAAG,EACH,SAAS,EACT,KAAK,EACL,MAAM,EACN,QAAQ,EAGX,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAa,aAAa,EAAC,MAAM,UAAU,CAAA;AAElD,MAAM,MAAM,iBAAiB,CAAC,KAAK,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,mBAAmB,CAAC,KAAK,KAAK,CAAA;AAE9G,qBAAa,UAAU,CAAC,KAAK,SAAS,KAAK,GAAG,KAAK,CAC/C,SAAQ,KAAK,CAAC,mBAAmB,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;;IACtD,MAAM,CAAC,MAAM,CAAC,KAAK,SAAS,KAAK,EAC7B,SAAS,EAAE,cAAc,CAAC,mBAAmB,CAAC,EAC9C,OAAO,EAAE,iBAAiB,CAAC,KAAK,CAAC,EACjC,MAAM,EAAE,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC;IAKnC,OAAO;IAWP,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAI7D,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC;IAC9B,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAIzC,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAIrF,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAI7F,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAC5B,KAAK,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAE/B,IAAI,IAAI,GAAG;IAEX,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;CAOpC"}
1
+ {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../src/array.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,cAAc,EAAC,MAAM,SAAS,CAAA;AAC7C,OAAO,EAAC,mBAAmB,EAAC,MAAM,WAAW,CAAA;AAC7C,OAAO,EAGH,SAAS,EACT,UAAU,EACV,GAAG,EACH,SAAS,EACT,KAAK,EACL,MAAM,EACN,QAAQ,EAGX,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAa,aAAa,EAAC,MAAM,UAAU,CAAA;AAElD,MAAM,MAAM,iBAAiB,CAAC,KAAK,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,mBAAmB,CAAC,KAAK,KAAK,CAAA;AAE9G,qBAAa,UAAU,CAAC,KAAK,SAAS,KAAK,GAAG,KAAK,CAC/C,SAAQ,KAAK,CAAC,mBAAmB,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;;IACtD,MAAM,CAAC,MAAM,CAAC,KAAK,SAAS,KAAK,EAC7B,SAAS,EAAE,cAAc,CAAC,mBAAmB,CAAC,EAC9C,OAAO,EAAE,iBAAiB,CAAC,KAAK,CAAC,EACjC,MAAM,EAAE,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC;IAKnC,OAAO;IAYP,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAI7D,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC;IAC9B,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAIzC,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAIrF,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAI7F,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAE5B,KAAK,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAK/B,IAAI,IAAI,GAAG;IAEX,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC;IAK7B,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;CAQpC"}
package/dist/array.js CHANGED
@@ -12,7 +12,8 @@ export class ArrayField extends Field {
12
12
  parent: this,
13
13
  fieldKey: index,
14
14
  fieldName: String(index),
15
- pointerRules: NoPointers
15
+ pointerRules: NoPointers,
16
+ deprecated: construct.deprecated
16
17
  }), length);
17
18
  }
18
19
  accept(visitor) {
@@ -29,10 +30,21 @@ export class ArrayField extends Field {
29
30
  return Option.wrap(this.#fields[key]);
30
31
  }
31
32
  read(input) { this.#fields.forEach(field => field.read(input)); }
32
- write(output) { this.#fields.forEach(field => field.write(output)); }
33
+ write(output) {
34
+ this.#fields.filter(field => !field.deprecated)
35
+ .forEach(field => field.write(output));
36
+ }
33
37
  size() { return this.#fields.length; }
34
- toJSON() { return Object.values(this.#fields).map((field) => field.toJSON() ?? null); }
38
+ toJSON() {
39
+ if (this.deprecated) {
40
+ return undefined;
41
+ }
42
+ return Object.values(this.#fields).map((field) => field.toJSON() ?? null);
43
+ }
35
44
  fromJSON(values) {
45
+ if (this.deprecated) {
46
+ return;
47
+ }
36
48
  if (Array.isArray(values)) {
37
49
  values.forEach((value, index) => this.#fields[index].fromJSON(value));
38
50
  }
package/dist/box.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../src/box.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../src/box.ts"],"names":[],"mappings":"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"}
package/dist/box.js CHANGED
@@ -32,7 +32,9 @@ export class Box {
32
32
  }
33
33
  fields() { return Object.values(this.#fields); }
34
34
  record() { return this.#fields; }
35
- getField(key) { return asDefined(this.#fields[key]); }
35
+ getField(key) {
36
+ return asDefined(this.#fields[key], `Field ${String(key)} not found in ${this.toString()}`);
37
+ }
36
38
  optField(key) { return Option.wrap(this.#fields[key]); }
37
39
  subscribe(propagation, procedure) {
38
40
  return this.graph.subscribeVertexUpdates(propagation, this.address, procedure);
package/dist/editing.d.ts CHANGED
@@ -12,7 +12,7 @@ export declare class BoxEditing implements Editing {
12
12
  clear(): void;
13
13
  undo(): boolean;
14
14
  redo(): boolean;
15
- canModify(): boolean;
15
+ mustModify(): boolean;
16
16
  modify<R>(modifier: Provider<Maybe<R>>, mark?: boolean): Option<R>;
17
17
  beginModification(): ModificationProcess;
18
18
  mark(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"editing.d.ts","sourceRoot":"","sources":["../src/editing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAA;AAChC,OAAO,EAAiB,OAAO,EAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AAqBtF,MAAM,WAAW,mBAAmB;IAChC,OAAO,IAAI,IAAI,CAAA;IACf,MAAM,IAAI,IAAI,CAAA;CACjB;AAED,qBAAa,UAAW,YAAW,OAAO;;gBAU1B,KAAK,EAAE,QAAQ;IAI3B,IAAI,KAAK,IAAI,QAAQ,CAAqB;IAE1C,OAAO,IAAI,OAAO;IAElB,KAAK,IAAI,IAAI;IAOb,IAAI,IAAI,OAAO;IAUf,IAAI,IAAI,OAAO;IAcf,SAAS,IAAI,OAAO;IAEpB,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,GAAE,OAAc,GAAG,MAAM,CAAC,CAAC,CAAC;IAWxE,iBAAiB,IAAI,mBAAmB;IAuCxC,IAAI,IAAI,IAAI;IAOZ,YAAY,IAAI,IAAI;IAMpB,OAAO,IAAI,IAAI;CAGlB"}
1
+ {"version":3,"file":"editing.d.ts","sourceRoot":"","sources":["../src/editing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAA;AAChC,OAAO,EAAiB,OAAO,EAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AAqBtF,MAAM,WAAW,mBAAmB;IAChC,OAAO,IAAI,IAAI,CAAA;IACf,MAAM,IAAI,IAAI,CAAA;CACjB;AAED,qBAAa,UAAW,YAAW,OAAO;;gBAU1B,KAAK,EAAE,QAAQ;IAI3B,IAAI,KAAK,IAAI,QAAQ,CAAqB;IAE1C,OAAO,IAAI,OAAO;IAElB,KAAK,IAAI,IAAI;IAOb,IAAI,IAAI,OAAO;IAUf,IAAI,IAAI,OAAO;IAcf,UAAU,IAAI,OAAO;IAErB,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,GAAE,OAAc,GAAG,MAAM,CAAC,CAAC,CAAC;IAWxE,iBAAiB,IAAI,mBAAmB;IAuCxC,IAAI,IAAI,IAAI;IAOZ,YAAY,IAAI,IAAI;IAMpB,OAAO,IAAI,IAAI;CAGlB"}
package/dist/editing.js CHANGED
@@ -63,7 +63,7 @@ export class BoxEditing {
63
63
  }
64
64
  // TODO This is an option to clarify, if user actions meant to be run by a modifier or not.
65
65
  // See ParameterWrapper. Not the nicest solution. Probably coming back to this sooner or later.
66
- canModify() { return !this.#graph.inTransaction(); }
66
+ mustModify() { return !this.#graph.inTransaction(); }
67
67
  modify(modifier, mark = true) {
68
68
  if (this.#modifying) {
69
69
  // we just keep adding new pending updates
package/dist/field.d.ts CHANGED
@@ -13,11 +13,12 @@ export type FieldConstruct<T extends PointerTypes> = {
13
13
  fieldKey: FieldKey;
14
14
  fieldName: string;
15
15
  pointerRules: PointerRules<T>;
16
+ deprecated: boolean;
16
17
  };
17
18
  export declare class Field<P extends PointerTypes = PointerTypes, F extends Fields = Fields> implements Vertex<P, F> {
18
19
  #private;
19
20
  static hook<P extends PointerTypes>(construct: FieldConstruct<P>): Field<P, Fields>;
20
- protected constructor({ parent, fieldKey, fieldName, pointerRules }: FieldConstruct<P>);
21
+ protected constructor({ parent, fieldKey, fieldName, pointerRules, deprecated }: FieldConstruct<P>);
21
22
  accept<RETURN>(visitor: VertexVisitor<RETURN>): Maybe<RETURN>;
22
23
  get box(): Box;
23
24
  get graph(): BoxGraph;
@@ -25,6 +26,7 @@ export declare class Field<P extends PointerTypes = PointerTypes, F extends Fiel
25
26
  get fieldKey(): short;
26
27
  get fieldName(): string;
27
28
  get pointerRules(): PointerRules<P>;
29
+ get deprecated(): boolean;
28
30
  get pointerHub(): PointerHub;
29
31
  get address(): Address;
30
32
  get debugPath(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../src/field.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,SAAS,EACT,UAAU,EACV,SAAS,EAET,KAAK,EAEL,MAAM,EACN,QAAQ,EAGR,KAAK,EACR,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAA;AACjC,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAA;AACzB,OAAO,EAAC,YAAY,EAAE,MAAM,EAAE,aAAa,EAAC,MAAM,UAAU,CAAA;AAC5D,OAAO,EAAC,YAAY,EAAC,MAAM,WAAW,CAAA;AACtC,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAA;AACxC,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAA;AAEhC,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAA;AAC7B,MAAM,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;AAC5C,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;AAC5C,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,YAAY,IAAI;IACjD,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,QAAQ,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;CAChC,CAAA;AAED,qBAAa,KAAK,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,CAAE,YAAW,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;;IACxG,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,YAAY,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;IAShE,SAAS,aAAa,EAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAC,EAAE,cAAc,CAAC,CAAC,CAAC;IASpF,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAI7D,IAAI,GAAG,IAAI,GAAG,CAA0B;IACxC,IAAI,KAAK,IAAI,QAAQ,CAA4B;IACjD,IAAI,MAAM,IAAI,MAAM,CAAsB;IAC1C,IAAI,QAAQ,IAAI,KAAK,CAAwB;IAC7C,IAAI,SAAS,IAAI,MAAM,CAAyB;IAChD,IAAI,YAAY,IAAI,YAAY,CAAC,CAAC,CAAC,CAA4B;IAE/D,IACI,UAAU,IAAI,UAAU,CAA8B;IAE1D,IACI,OAAO,IAAI,OAAO,CAAqD;IAE3E,IACI,SAAS,IAAI,MAAM,CAEtB;IAED,KAAK,IAAI,IAAI,IAAI,GAAG;IACpB,OAAO,IAAI,IAAI,IAAI,KAAK;IACxB,UAAU,IAAI,OAAO;IACrB,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC;IAC9B,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IAC7B,KAAK,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;IAChC,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IACjC,UAAU,IAAI,IAAI;IAUlB,QAAQ,IAAI,MAAM;CACrB"}
1
+ {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../src/field.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,SAAS,EACT,UAAU,EACV,SAAS,EAET,KAAK,EAEL,MAAM,EACN,QAAQ,EAGR,KAAK,EACR,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAA;AACjC,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAA;AACzB,OAAO,EAAC,YAAY,EAAE,MAAM,EAAE,aAAa,EAAC,MAAM,UAAU,CAAA;AAC5D,OAAO,EAAC,YAAY,EAAC,MAAM,WAAW,CAAA;AACtC,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAA;AACxC,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAA;AAEhC,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAA;AAC7B,MAAM,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;AAC5C,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;AAC5C,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,YAAY,IAAI;IACjD,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,QAAQ,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;IAC7B,UAAU,EAAE,OAAO,CAAA;CACtB,CAAA;AAED,qBAAa,KAAK,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,CAAE,YAAW,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;;IACxG,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,YAAY,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;IAUhE,SAAS,aAAa,EAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAC,EAAE,cAAc,CAAC,CAAC,CAAC;IAUhG,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAI7D,IAAI,GAAG,IAAI,GAAG,CAA0B;IACxC,IAAI,KAAK,IAAI,QAAQ,CAA4B;IACjD,IAAI,MAAM,IAAI,MAAM,CAAsB;IAC1C,IAAI,QAAQ,IAAI,KAAK,CAAwB;IAC7C,IAAI,SAAS,IAAI,MAAM,CAAyB;IAChD,IAAI,YAAY,IAAI,YAAY,CAAC,CAAC,CAAC,CAA4B;IAC/D,IAAI,UAAU,IAAI,OAAO,CAA0B;IAEnD,IACI,UAAU,IAAI,UAAU,CAA8B;IAE1D,IACI,OAAO,IAAI,OAAO,CAAqD;IAE3E,IACI,SAAS,IAAI,MAAM,CAEtB;IAED,KAAK,IAAI,IAAI,IAAI,GAAG;IACpB,OAAO,IAAI,IAAI,IAAI,KAAK;IACxB,UAAU,IAAI,OAAO;IACrB,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC;IAC9B,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IAC7B,KAAK,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;IAChC,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IACjC,UAAU,IAAI,IAAI;IAUlB,QAAQ,IAAI,MAAM;CACrB"}
package/dist/field.js CHANGED
@@ -18,11 +18,13 @@ export class Field {
18
18
  #fieldKey;
19
19
  #fieldName;
20
20
  #pointerRules;
21
- constructor({ parent, fieldKey, fieldName, pointerRules }) {
21
+ #deprecated;
22
+ constructor({ parent, fieldKey, fieldName, pointerRules, deprecated }) {
22
23
  this.#parent = parent;
23
24
  this.#fieldKey = fieldKey;
24
25
  this.#fieldName = fieldName;
25
26
  this.#pointerRules = pointerRules;
27
+ this.#deprecated = deprecated;
26
28
  if (pointerRules.mandatory) {
27
29
  this.graph.edges().watchVertex(this);
28
30
  }
@@ -36,6 +38,7 @@ export class Field {
36
38
  get fieldKey() { return this.#fieldKey; }
37
39
  get fieldName() { return this.#fieldName; }
38
40
  get pointerRules() { return this.#pointerRules; }
41
+ get deprecated() { return this.#deprecated; }
39
42
  get pointerHub() { return new PointerHub(this); }
40
43
  get address() { return this.#parent.address.append(this.#fieldKey); }
41
44
  get debugPath() {
package/dist/graph.d.ts CHANGED
@@ -52,7 +52,7 @@ export declare class BoxGraph<BoxMap = any> {
52
52
  debugDependencies(): void;
53
53
  addressToDebugPath(address: Option<Address>): Option<string>;
54
54
  toArrayBuffer(): ArrayBufferLike;
55
- fromArrayBuffer(arrayBuffer: ArrayBuffer): void;
55
+ fromArrayBuffer(arrayBuffer: ArrayBufferLike): void;
56
56
  toJSON(): Optional<JSONValue>;
57
57
  }
58
58
  //# sourceMappingURL=graph.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../src/object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,cAAc,EAAY,MAAM,EAAC,MAAM,SAAS,CAAA;AAC/D,OAAO,EAAC,mBAAmB,EAAC,MAAM,WAAW,CAAA;AAC7C,OAAO,EAEH,SAAS,EACT,UAAU,EAGV,SAAS,EACT,KAAK,EACL,QAAQ,EACR,MAAM,EACN,QAAQ,EAGR,YAAY,EACf,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAA;AAGtC,8BAAsB,WAAW,CAAC,MAAM,SAAS,MAAM,CAAE,SAAQ,KAAK,CAAC,mBAAmB,EAAE,MAAM,CAAC;;IAG/F,SAAS,aAAa,SAAS,EAAE,cAAc,CAAC,mBAAmB,CAAC;IAMpE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,IAAI,MAAM;IAE7C,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAI7D,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC;IAC9B,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACzC,QAAQ,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE3D,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY;IAKjD,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAC5B,KAAK,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAE/B,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC;IAO7B,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;CAYpC"}
1
+ {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../src/object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,cAAc,EAAY,MAAM,EAAC,MAAM,SAAS,CAAA;AAC/D,OAAO,EAAC,mBAAmB,EAAC,MAAM,WAAW,CAAA;AAC7C,OAAO,EAEH,SAAS,EACT,UAAU,EAGV,SAAS,EACT,KAAK,EACL,QAAQ,EACR,MAAM,EACN,QAAQ,EAGR,YAAY,EACf,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAA;AAGtC,8BAAsB,WAAW,CAAC,MAAM,SAAS,MAAM,CAAE,SAAQ,KAAK,CAAC,mBAAmB,EAAE,MAAM,CAAC;;IAG/F,SAAS,aAAa,SAAS,EAAE,cAAc,CAAC,mBAAmB,CAAC;IAMpE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,IAAI,MAAM;IAE7C,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAI7D,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC;IAC9B,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACzC,QAAQ,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE3D,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY;IAKjD,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAC5B,KAAK,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAE/B,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC;IAQ7B,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;CAapC"}
package/dist/object.js CHANGED
@@ -21,12 +21,18 @@ export class ObjectField extends Field {
21
21
  read(input) { Serializer.readFields(input, this.#fields); }
22
22
  write(output) { Serializer.writeFields(output, this.#fields); }
23
23
  toJSON() {
24
+ if (this.deprecated) {
25
+ return undefined;
26
+ }
24
27
  return Object.entries(this.#fields).reduce((result, [key, field]) => {
25
28
  result[key] = field.toJSON();
26
29
  return result;
27
30
  }, {});
28
31
  }
29
32
  fromJSON(record) {
33
+ if (this.deprecated) {
34
+ return;
35
+ }
30
36
  if (isRecord(record)) {
31
37
  Object.entries(record).forEach(([key, value]) => {
32
38
  const field = this.#fields[parseInt(key)];
@@ -46,7 +46,7 @@ export class PointerHub {
46
46
  isEmpty() { return this.size() === 0; }
47
47
  nonEmpty() { return this.size() > 0; }
48
48
  contains(pointer) { return this.incoming().some(incoming => pointer.address.equals(incoming.address)); }
49
- incoming() { return this.#vertex.graph.edges().incomingEdgesOf(this.#vertex); }
49
+ incoming() { return this.#vertex.graph.edges().incomingEdgesOf(this.#vertex).slice(); }
50
50
  onAdded(pointerField) {
51
51
  const issue = PointerHub.validate(pointerField, this.#vertex);
52
52
  if (issue.nonEmpty()) {
@@ -1 +1 @@
1
- {"version":3,"file":"pointer.d.ts","sourceRoot":"","sources":["../src/pointer.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,SAAS,EACT,UAAU,EAEV,SAAS,EACT,KAAK,EACL,QAAQ,EACR,MAAM,EACN,QAAQ,EAER,QAAQ,EAER,YAAY,EAEf,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAA;AACjC,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAA;AACxC,OAAO,EAAC,KAAK,EAAE,cAAc,EAAC,MAAM,SAAS,CAAA;AAG7C,QAAA,MAAM,gBAAgB,eAA4B,CAAA;AAElD,MAAM,MAAM,mBAAmB,GAAG,OAAO,gBAAgB,CAAA;AAEzD,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,mBAAmB,CAAA;AAEhE,MAAM,WAAW,cAAc;IAAE,GAAG,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;CAAC;AAE7E,MAAM,WAAW,cAAc;IAAE,GAAG,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;CAAC;AAE1G,qBAAa,YAAY,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,CAAE,SAAQ,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC;;IACtG,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,YAAY,EAAE,SAAS,EAAE,cAAc,CAAC,mBAAmB,CAAC,EAC9C,WAAW,EAAE,CAAC,EACd,SAAS,EAAE,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC;IAI1E,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAWnE,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAoBnE,OAAO;IASP,IAAI,UAAU,IAAI,UAAU,CAA+C;IAE3E,IAAI,WAAW,IAAI,CAAC,CAA2B;IAC/C,IAAI,SAAS,IAAI,OAAO,CAAyB;IAEjD,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAI7D,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY;IAIjD,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY;IAM3D,KAAK,CAAC,MAAM,SAAS,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,SAAS,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC,GAAG,IAAI;IAInG,KAAK,IAAI,IAAI;IAEb,IAAI,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,CAIjC;IACD,IAAI,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAQtC;IAED,IAAI,aAAa,IAAI,MAAM,CAAC,OAAO,CAAC,CAA6B;IACjE,IAAI,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,EAM1C;IAED,OAAO,IAAI,OAAO;IAClB,QAAQ,IAAI,OAAO;IAEnB,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI;IAE3C,IAAI,CAAC,KAAK,EAAE,SAAS;IAUrB,KAAK,CAAC,MAAM,EAAE,UAAU;IAaxB,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC;IAW7B,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAWnC"}
1
+ {"version":3,"file":"pointer.d.ts","sourceRoot":"","sources":["../src/pointer.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,SAAS,EACT,UAAU,EAEV,SAAS,EACT,KAAK,EACL,QAAQ,EACR,MAAM,EACN,QAAQ,EAER,QAAQ,EAER,YAAY,EAEf,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAA;AACjC,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAA;AACxC,OAAO,EAAC,KAAK,EAAE,cAAc,EAAC,MAAM,SAAS,CAAA;AAG7C,QAAA,MAAM,gBAAgB,eAA4B,CAAA;AAElD,MAAM,MAAM,mBAAmB,GAAG,OAAO,gBAAgB,CAAA;AAEzD,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,mBAAmB,CAAA;AAEhE,MAAM,WAAW,cAAc;IAAE,GAAG,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;CAAC;AAE7E,MAAM,WAAW,cAAc;IAAE,GAAG,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;CAAC;AAE1G,qBAAa,YAAY,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,CAAE,SAAQ,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC;;IACtG,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,YAAY,EAAE,SAAS,EAAE,cAAc,CAAC,mBAAmB,CAAC,EAC9C,WAAW,EAAE,CAAC,EACd,SAAS,EAAE,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC;IAI1E,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAWnE,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAoBnE,OAAO;IASP,IAAI,UAAU,IAAI,UAAU,CAA+C;IAE3E,IAAI,WAAW,IAAI,CAAC,CAA2B;IAC/C,IAAI,SAAS,IAAI,OAAO,CAAyB;IAEjD,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAI7D,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY;IAKjD,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY;IAK3D,KAAK,CAAC,MAAM,SAAS,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,SAAS,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC,GAAG,IAAI;IAInG,KAAK,IAAI,IAAI;IAEb,IAAI,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,CAIjC;IACD,IAAI,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAQtC;IAED,IAAI,aAAa,IAAI,MAAM,CAAC,OAAO,CAAC,CAA6B;IACjE,IAAI,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,EAM1C;IAED,OAAO,IAAI,OAAO;IAClB,QAAQ,IAAI,OAAO;IAEnB,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI;IAE3C,IAAI,CAAC,KAAK,EAAE,SAAS;IAUrB,KAAK,CAAC,MAAM,EAAE,UAAU;IAcxB,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC;IAY7B,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAYnC"}
package/dist/pointer.js CHANGED
@@ -49,11 +49,11 @@ export class PointerField extends Field {
49
49
  return safeExecute(visitor.visitPointerField, this);
50
50
  }
51
51
  subscribe(observer) {
52
- return this.graph.subscribeVertexUpdates(Propagation.This, this.address, () => observer(this));
52
+ return this.graph.subscribeVertexUpdates(Propagation.This, this.address, () => this.graph.subscribeEndTransaction(() => observer(this)));
53
53
  }
54
54
  catchupAndSubscribe(observer) {
55
55
  observer(this);
56
- return this.graph.subscribeVertexUpdates(Propagation.This, this.address, () => this.graph.subscribeEndTransaction(() => observer(this)));
56
+ return this.subscribe(observer);
57
57
  }
58
58
  refer(vertex) {
59
59
  this.targetVertex = Option.wrap(vertex);
@@ -96,6 +96,7 @@ export class PointerField extends Field {
96
96
  });
97
97
  }
98
98
  write(output) {
99
+ assert(!this.deprecated, "PointerField.write: deprecated field");
99
100
  PointerField.#encoder.match({
100
101
  none: () => this.#targetAddress,
101
102
  some: encoder => encoder.map(this)
@@ -108,6 +109,9 @@ export class PointerField extends Field {
108
109
  });
109
110
  }
110
111
  toJSON() {
112
+ if (this.deprecated) {
113
+ return undefined;
114
+ }
111
115
  return PointerField.#encoder
112
116
  .match({
113
117
  none: () => this.#targetAddress,
@@ -118,6 +122,9 @@ export class PointerField extends Field {
118
122
  });
119
123
  }
120
124
  fromJSON(value) {
125
+ if (this.deprecated) {
126
+ return;
127
+ }
121
128
  if (isNull(value) || typeof value === "string") {
122
129
  const address = Option.wrap(isNull(value) ? null : Address.decode(value));
123
130
  this.targetAddress = PointerField.#decoder.match({
@@ -1 +1 @@
1
- {"version":3,"file":"primitive.d.ts","sourceRoot":"","sources":["../src/primitive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primitive.d.ts","sourceRoot":"","sources":["../src/primitive.ts"],"names":[],"mappings":"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"}
package/dist/primitive.js CHANGED
@@ -79,9 +79,15 @@ export class PrimitiveField extends Field {
79
79
  this.#value = newValue;
80
80
  this.graph.onPrimitiveValueUpdate(this, oldValue, newValue);
81
81
  }
82
- writeValue(output, value) { this.serialization().encode(output, value); }
82
+ writeValue(output, value) {
83
+ assert(!this.deprecated, "PrimitiveField.write: deprecated field");
84
+ this.serialization().encode(output, value);
85
+ }
83
86
  readValue(input) { return this.serialization().decode(input); }
84
87
  toJSON() {
88
+ if (this.deprecated) {
89
+ return undefined;
90
+ }
85
91
  const value = this.getValue();
86
92
  return ArrayBuffer.isView(value) ? panic("not implemented") : value;
87
93
  }
@@ -98,8 +104,14 @@ export class BooleanField extends PrimitiveField {
98
104
  equals(value) { return this.getValue() === value; }
99
105
  clamp(value) { return value; }
100
106
  read(input) { this.setValue(input.readBoolean()); }
101
- write(output) { output.writeBoolean(this.getValue()); }
107
+ write(output) {
108
+ assert(!this.deprecated, "BooleanField.write: deprecated field");
109
+ output.writeBoolean(this.getValue());
110
+ }
102
111
  fromJSON(value) {
112
+ if (this.deprecated) {
113
+ return;
114
+ }
103
115
  if (typeof value === "boolean") {
104
116
  this.setValue(value);
105
117
  }
@@ -117,8 +129,14 @@ export class Float32Field extends PrimitiveField {
117
129
  equals(value) { return this.getValue() === value; }
118
130
  clamp(value) { return Float.toFloat32(value); }
119
131
  read(input) { this.setValue(input.readFloat()); }
120
- write(output) { output.writeFloat(this.getValue()); }
132
+ write(output) {
133
+ assert(!this.deprecated, "FLoat32Field.write: deprecated field");
134
+ output.writeFloat(this.getValue());
135
+ }
121
136
  fromJSON(value) {
137
+ if (this.deprecated) {
138
+ return;
139
+ }
122
140
  if (typeof value === "number") {
123
141
  this.setValue(value);
124
142
  }
@@ -136,8 +154,14 @@ export class Int32Field extends PrimitiveField {
136
154
  equals(value) { return this.getValue() === value; }
137
155
  clamp(value) { return Integer.toInt(value); }
138
156
  read(input) { this.setValue(input.readInt()); }
139
- write(output) { output.writeInt(this.getValue()); }
157
+ write(output) {
158
+ assert(!this.deprecated, "Int32Field.write: deprecated field");
159
+ output.writeInt(this.getValue());
160
+ }
140
161
  fromJSON(value) {
162
+ if (this.deprecated) {
163
+ return;
164
+ }
141
165
  if (typeof value === "number" && value === Math.floor(value)
142
166
  && value >= Integer.MIN_VALUE && value <= Integer.MAX_VALUE) {
143
167
  this.setValue(value);
@@ -156,8 +180,14 @@ export class StringField extends PrimitiveField {
156
180
  equals(value) { return this.getValue() === value; }
157
181
  clamp(value) { return value; }
158
182
  read(input) { this.setValue(input.readString()); }
159
- write(output) { output.writeString(this.getValue()); }
183
+ write(output) {
184
+ assert(!this.deprecated, "StringField.write: deprecated field");
185
+ output.writeString(this.getValue());
186
+ }
160
187
  fromJSON(value) {
188
+ if (this.deprecated) {
189
+ return;
190
+ }
161
191
  if (typeof value === "string") {
162
192
  this.setValue(value);
163
193
  }
@@ -183,12 +213,21 @@ export class ByteArrayField extends PrimitiveField {
183
213
  this.setValue(bytes);
184
214
  }
185
215
  write(output) {
216
+ assert(!this.deprecated, "ByteArrayField.write: deprecated field");
186
217
  const bytes = this.getValue();
187
218
  output.writeInt(bytes.length);
188
219
  output.writeBytes(bytes);
189
220
  }
190
- toJSON() { return Array.from(this.getValue().values()); }
221
+ toJSON() {
222
+ if (this.deprecated) {
223
+ return undefined;
224
+ }
225
+ return Array.from(this.getValue().values());
226
+ }
191
227
  fromJSON(value) {
228
+ if (this.deprecated) {
229
+ return;
230
+ }
192
231
  if (Array.isArray(value) && value.every(number => typeof number === "number")) {
193
232
  this.setValue(new Int8Array(value));
194
233
  }
@@ -3,7 +3,7 @@ export var Serializer;
3
3
  (function (Serializer) {
4
4
  const MAGIC_HEADER = 0x464c4453;
5
5
  Serializer.writeFields = (output, fields) => {
6
- const entries = Object.entries(fields);
6
+ const entries = Object.entries(fields).filter(([_, field]) => !field.deprecated);
7
7
  output.writeInt(MAGIC_HEADER);
8
8
  output.writeShort(entries.length);
9
9
  entries.forEach(([key, field]) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opendaw/lib-box",
3
- "version": "0.0.46",
3
+ "version": "0.0.48",
4
4
  "main": "./dist/index.js",
5
5
  "types": "./dist/index.d.ts",
6
6
  "license": "LGPL-3.0-or-later",
@@ -22,12 +22,12 @@
22
22
  "test": "vitest run"
23
23
  },
24
24
  "dependencies": {
25
- "@opendaw/lib-runtime": "^0.0.46",
26
- "@opendaw/lib-std": "^0.0.46"
25
+ "@opendaw/lib-runtime": "^0.0.48",
26
+ "@opendaw/lib-std": "^0.0.48"
27
27
  },
28
28
  "devDependencies": {
29
29
  "@opendaw/eslint-config": "^0.0.20",
30
30
  "@opendaw/typescript-config": "^0.0.20"
31
31
  },
32
- "gitHead": "4136230de6c35fe8db4bde5221010c5e86f7b11a"
32
+ "gitHead": "cbdb8e49076f45a6d703e9dd348e1d0e1113e1dc"
33
33
  }