@matter/model 0.12.0-alpha.0-20241227-9e7d81837 → 0.12.0-alpha.0-20241229-9d9c99934

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 (40) hide show
  1. package/dist/cjs/common/FieldValue.d.ts +1 -1
  2. package/dist/cjs/common/FieldValue.d.ts.map +1 -1
  3. package/dist/cjs/common/FieldValue.js.map +1 -1
  4. package/dist/cjs/common/Metatype.d.ts +19 -1
  5. package/dist/cjs/common/Metatype.d.ts.map +1 -1
  6. package/dist/cjs/common/Metatype.js +171 -170
  7. package/dist/cjs/common/Metatype.js.map +1 -1
  8. package/dist/cjs/common/Specification.d.ts +1 -1
  9. package/dist/cjs/common/Specification.d.ts.map +1 -1
  10. package/dist/cjs/logic/ModelDiff.d.ts +40 -0
  11. package/dist/cjs/logic/ModelDiff.d.ts.map +1 -0
  12. package/dist/cjs/logic/ModelDiff.js +119 -0
  13. package/dist/cjs/logic/ModelDiff.js.map +6 -0
  14. package/dist/cjs/logic/index.d.ts +1 -0
  15. package/dist/cjs/logic/index.d.ts.map +1 -1
  16. package/dist/cjs/logic/index.js +1 -0
  17. package/dist/cjs/logic/index.js.map +1 -1
  18. package/dist/esm/common/FieldValue.d.ts +1 -1
  19. package/dist/esm/common/FieldValue.d.ts.map +1 -1
  20. package/dist/esm/common/FieldValue.js.map +1 -1
  21. package/dist/esm/common/Metatype.d.ts +19 -1
  22. package/dist/esm/common/Metatype.d.ts.map +1 -1
  23. package/dist/esm/common/Metatype.js +171 -170
  24. package/dist/esm/common/Metatype.js.map +1 -1
  25. package/dist/esm/common/Specification.d.ts +1 -1
  26. package/dist/esm/common/Specification.d.ts.map +1 -1
  27. package/dist/esm/logic/ModelDiff.d.ts +40 -0
  28. package/dist/esm/logic/ModelDiff.d.ts.map +1 -0
  29. package/dist/esm/logic/ModelDiff.js +99 -0
  30. package/dist/esm/logic/ModelDiff.js.map +6 -0
  31. package/dist/esm/logic/index.d.ts +1 -0
  32. package/dist/esm/logic/index.d.ts.map +1 -1
  33. package/dist/esm/logic/index.js +1 -0
  34. package/dist/esm/logic/index.js.map +1 -1
  35. package/package.json +4 -4
  36. package/src/common/FieldValue.ts +1 -1
  37. package/src/common/Metatype.ts +200 -181
  38. package/src/common/Specification.ts +1 -1
  39. package/src/logic/ModelDiff.ts +150 -0
  40. package/src/logic/index.ts +1 -0
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var ModelDiff_exports = {};
20
+ __export(ModelDiff_exports, {
21
+ ModelDiff: () => ModelDiff
22
+ });
23
+ module.exports = __toCommonJS(ModelDiff_exports);
24
+ var import_index = require("#index.js");
25
+ var import_general = require("@matter/general");
26
+ var import_ModelVariantTraversal = require("./ModelVariantTraversal.js");
27
+ /**
28
+ * @license
29
+ * Copyright 2022-2024 Matter.js Authors
30
+ * SPDX-License-Identifier: Apache-2.0
31
+ */
32
+ function ModelDiff(from, to, depth = 2) {
33
+ const traversal = new DiffTraversal(depth);
34
+ return traversal.traverse({ from, to });
35
+ }
36
+ class DiffTraversal extends import_ModelVariantTraversal.ModelVariantTraversal {
37
+ #detailDepth;
38
+ #currentDepth = 0;
39
+ constructor(depth) {
40
+ super(import_index.Specification.REVISION, ["from", "to"]);
41
+ this.#detailDepth = depth;
42
+ }
43
+ visit(variants, recurse) {
44
+ if (variants.map.to === void 0) {
45
+ if (variants.map.from === void 0) {
46
+ return;
47
+ }
48
+ return {
49
+ kind: "delete",
50
+ tag: variants.tag,
51
+ name: variants.name
52
+ };
53
+ }
54
+ if (variants.map.from === void 0) {
55
+ return {
56
+ kind: "add",
57
+ tag: variants.tag,
58
+ name: variants.name
59
+ };
60
+ }
61
+ if (this.#currentDepth >= this.#detailDepth) {
62
+ return;
63
+ }
64
+ this.#currentDepth++;
65
+ const children = recurse().filter((child) => child !== void 0);
66
+ this.#currentDepth--;
67
+ if (!children.length) {
68
+ return;
69
+ }
70
+ if (this.#currentDepth < this.#detailDepth - 1) {
71
+ return {
72
+ kind: "list",
73
+ tag: variants.tag,
74
+ name: variants.name,
75
+ children
76
+ };
77
+ }
78
+ const changes = {};
79
+ for (const child of children) {
80
+ changes[child.tag] = (changes[child.tag] ?? 0) + 1;
81
+ }
82
+ return {
83
+ kind: "summary",
84
+ tag: variants.tag,
85
+ name: variants.name,
86
+ changes
87
+ };
88
+ }
89
+ }
90
+ ((ModelDiff2) => {
91
+ function diagnosticOf(diff) {
92
+ const id = `${diff?.tag}#${diff?.name}`;
93
+ switch (diff?.kind) {
94
+ case "add":
95
+ return import_general.Diagnostic.added(id);
96
+ case "delete":
97
+ return import_general.Diagnostic.deleted(id);
98
+ case "list":
99
+ if (diff.children.length) {
100
+ return [id, import_general.Diagnostic.list(diff.children.map(diagnosticOf))];
101
+ }
102
+ break;
103
+ case "summary":
104
+ const changes = Object.entries(diff.changes).map(([tag, count]) => {
105
+ if (count < 0) {
106
+ return import_general.Diagnostic.deleted(`${-count} ${tag}`);
107
+ }
108
+ if (count > 0) {
109
+ return import_general.Diagnostic.added(`${count} ${tag}`);
110
+ }
111
+ return import_general.Diagnostic.weak(`${0} ${tag}`);
112
+ });
113
+ return [`${id}`, ...changes];
114
+ }
115
+ return import_general.Diagnostic.weak("(unchanged)");
116
+ }
117
+ ModelDiff2.diagnosticOf = diagnosticOf;
118
+ })(ModelDiff || (ModelDiff = {}));
119
+ //# sourceMappingURL=ModelDiff.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/logic/ModelDiff.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,mBAA8B;AAE9B,qBAA2B;AAC3B,mCAAqD;AAVrD;AAAA;AAAA;AAAA;AAAA;AAoBO,SAAS,UAAU,MAAa,IAAW,QAAQ,GAAG;AACzD,QAAM,YAAY,IAAI,cAAc,KAAK;AACzC,SAAO,UAAU,SAAS,EAAE,MAAM,GAAG,CAAC;AAC1C;AAEA,MAAM,sBAAsB,mDAA6C;AAAA,EACrE;AAAA,EACA,gBAAgB;AAAA,EAEhB,YAAY,OAAe;AACvB,UAAM,2BAAc,UAAU,CAAC,QAAQ,IAAI,CAAC;AAC5C,SAAK,eAAe;AAAA,EACxB;AAAA,EAEmB,MAAM,UAAyB,SAAiE;AAC/G,QAAI,SAAS,IAAI,OAAO,QAAW;AAC/B,UAAI,SAAS,IAAI,SAAS,QAAW;AACjC;AAAA,MACJ;AACA,aAAO;AAAA,QACH,MAAM;AAAA,QACN,KAAK,SAAS;AAAA,QACd,MAAM,SAAS;AAAA,MACnB;AAAA,IACJ;AAEA,QAAI,SAAS,IAAI,SAAS,QAAW;AACjC,aAAO;AAAA,QACH,MAAM;AAAA,QACN,KAAK,SAAS;AAAA,QACd,MAAM,SAAS;AAAA,MACnB;AAAA,IACJ;AAEA,QAAI,KAAK,iBAAiB,KAAK,cAAc;AACzC;AAAA,IACJ;AAEA,SAAK;AACL,UAAM,WAAW,QAAQ,EAAE,OAAO,WAAS,UAAU,MAAS;AAC9D,SAAK;AAEL,QAAI,CAAC,SAAS,QAAQ;AAClB;AAAA,IACJ;AAEA,QAAI,KAAK,gBAAgB,KAAK,eAAe,GAAG;AAC5C,aAAO;AAAA,QACH,MAAM;AAAA,QACN,KAAK,SAAS;AAAA,QACd,MAAM,SAAS;AAAA,QACf;AAAA,MACJ;AAAA,IACJ;AAEA,UAAM,UAAU,CAAC;AACjB,eAAW,SAAS,UAAU;AAC1B,cAAQ,MAAM,GAAG,KAAK,QAAQ,MAAM,GAAG,KAAK,KAAK;AAAA,IACrD;AAEA,WAAO;AAAA,MACH,MAAM;AAAA,MACN,KAAK,SAAS;AAAA,MACd,MAAM,SAAS;AAAA,MACf;AAAA,IACJ;AAAA,EACJ;AACJ;AAAA,CAEO,CAAUA,eAAV;AAII,WAAS,aAAa,MAAsC;AAC/D,UAAM,KAAK,GAAG,MAAM,GAAG,IAAI,MAAM,IAAI;AACrC,YAAQ,MAAM,MAAM;AAAA,MAChB,KAAK;AACD,eAAO,0BAAW,MAAM,EAAE;AAAA,MAE9B,KAAK;AACD,eAAO,0BAAW,QAAQ,EAAE;AAAA,MAEhC,KAAK;AACD,YAAI,KAAK,SAAS,QAAQ;AACtB,iBAAO,CAAC,IAAI,0BAAW,KAAK,KAAK,SAAS,IAAI,YAAY,CAAC,CAAC;AAAA,QAChE;AACA;AAAA,MAEJ,KAAK;AACD,cAAM,UAAU,OAAO,QAAQ,KAAK,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AAC/D,cAAI,QAAQ,GAAG;AACX,mBAAO,0BAAW,QAAQ,GAAG,CAAC,KAAK,IAAI,GAAG,EAAE;AAAA,UAChD;AAEA,cAAI,QAAQ,GAAG;AACX,mBAAO,0BAAW,MAAM,GAAG,KAAK,IAAI,GAAG,EAAE;AAAA,UAC7C;AAEA,iBAAO,0BAAW,KAAK,GAAG,CAAC,IAAI,GAAG,EAAE;AAAA,QACxC,CAAC;AAED,eAAO,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO;AAAA,IACnC;AAEA,WAAO,0BAAW,KAAK,aAAa;AAAA,EACxC;AAhCO,EAAAA,WAAS;AAAA,GAJH;",
5
+ "names": ["ModelDiff"]
6
+ }
@@ -11,6 +11,7 @@ export * from "./cluster-variance/VarianceCondition.js";
11
11
  export * from "./ClusterVariance.js";
12
12
  export * from "./DefaultValue.js";
13
13
  export * from "./MergedModel.js";
14
+ export * from "./ModelDiff.js";
14
15
  export * from "./ModelVariantTraversal.js";
15
16
  export * from "./Scope.js";
16
17
  export * from "./ValidateModel.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/logic/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,qCAAqC,CAAC;AACpD,cAAc,kDAAkD,CAAC;AACjE,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,OAAO,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/logic/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,qCAAqC,CAAC;AACpD,cAAc,kDAAkD,CAAC;AACjE,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,OAAO,kCAAkC,CAAC"}
@@ -23,6 +23,7 @@ __reExport(logic_exports, require("./cluster-variance/VarianceCondition.js"), mo
23
23
  __reExport(logic_exports, require("./ClusterVariance.js"), module.exports);
24
24
  __reExport(logic_exports, require("./DefaultValue.js"), module.exports);
25
25
  __reExport(logic_exports, require("./MergedModel.js"), module.exports);
26
+ __reExport(logic_exports, require("./ModelDiff.js"), module.exports);
26
27
  __reExport(logic_exports, require("./ModelVariantTraversal.js"), module.exports);
27
28
  __reExport(logic_exports, require("./Scope.js"), module.exports);
28
29
  __reExport(logic_exports, require("./ValidateModel.js"), module.exports);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/logic/index.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,0BAAc,gDANd;AAOA,0BAAc,6DAPd;AAQA,0BAAc,qDARd;AASA,0BAAc,kDATd;AAUA,0BAAc,oDAVd;AAWA,0BAAc,iCAXd;AAYA,0BAAc,8BAZd;AAaA,0BAAc,6BAbd;AAcA,0BAAc,uCAdd;AAeA,0BAAc,uBAfd;AAgBA,0BAAc,+BAhBd;AAiBA,mCAAO;AAjBP;AAAA;AAAA;AAAA;AAAA;",
4
+ "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,0BAAc,gDANd;AAOA,0BAAc,6DAPd;AAQA,0BAAc,qDARd;AASA,0BAAc,kDATd;AAUA,0BAAc,oDAVd;AAWA,0BAAc,iCAXd;AAYA,0BAAc,8BAZd;AAaA,0BAAc,6BAbd;AAcA,0BAAc,2BAdd;AAeA,0BAAc,uCAfd;AAgBA,0BAAc,uBAhBd;AAiBA,0BAAc,+BAjBd;AAkBA,mCAAO;AAlBP;AAAA;AAAA;AAAA;AAAA;",
5
5
  "names": []
6
6
  }
@@ -116,6 +116,6 @@ export declare namespace FieldValue {
116
116
  *
117
117
  * @returns the cast value or FieldValue.Invalid if cast is not possible
118
118
  */
119
- function cast(type: Metatype, value: any): FieldValue | FieldValue.Invalid | undefined;
119
+ function cast<const T extends Metatype>(type: T, value: any): FieldValue | FieldValue.Invalid | undefined;
120
120
  }
121
121
  //# sourceMappingURL=FieldValue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldValue.d.ts","sourceRoot":"","sources":["../../../src/common/FieldValue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FieldValue.d.ts","sourceRoot":"","sources":["../../../src/common/FieldValue.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/common/FieldValue.ts"],
4
- "mappings": "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",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,SAAS,WAAW,aAAa,iBAAiB,2BAA2B;AAsB/E,IAAU;AAAA,CAAV,CAAUA,gBAAV;AAGI,EAAMA,YAAA,UAAU;AAGhB,EAAMA,YAAA,UAAU;AAGhB,EAAMA,YAAA,YAAY;AAGlB,EAAMA,YAAA,aAAa;AAGnB,EAAMA,YAAA,QAAQ;AAGd,EAAMA,YAAA,OAAO;AAWb,WAAS,GAAG,OAA+B,MAAY;AAC1D,WAAO,SAAU,MAAc,SAAS;AAAA,EAC5C;AAFO,EAAAA,YAAS;AAQT,EAAMA,YAAA,UAAyB,OAAO,SAAS;AAU/C,EAAMA,YAAA,OAAa;AAAA,IACtB,MAAMA,YAAA;AAAA,EACV;AAUO,WAAS,UAAU,MAAyB;AAC/C,WAAO,EAAE,MAAMA,YAAA,WAAW,KAAK;AAAA,EACnC;AAFO,EAAAA,YAAS;AAYT,WAAS,QAAQ,OAAwB;AAC5C,WAAO,EAAE,MAAMA,YAAA,SAAS,MAAM;AAAA,EAClC;AAFO,EAAAA,YAAS;AAYT,WAAS,QAAQ,OAAwB;AAC5C,WAAO,EAAE,MAAMA,YAAA,SAAS,MAAM;AAAA,EAClC;AAFO,EAAAA,YAAS;AAoBT,WAAS,MAAM,OAAmC;AACrD,WAAO,EAAE,MAAMA,YAAA,OAAO,OAAO,YAAY,OAAO,KAAK,IAAI,UAAU,MAAM,KAAK,IAAI,MAAM;AAAA,EAC5F;AAFO,EAAAA,YAAS;AAOT,WAAS,UAAU,OAA2B;AACjD,QAAI,UAAU,MAAM;AAChB,aAAO;AAAA,IACX;AACA,QAAI,GAAG,OAAOA,YAAA,IAAI,GAAG;AACjB,aAAO;AAAA,IACX;AACA,QAAI,GAAG,OAAOA,YAAA,SAAS,GAAG;AACtB,aAAQ,MAAoB;AAAA,IAChC;AACA,QAAI,GAAG,OAAOA,YAAA,OAAO,GAAG;AACpB,aAAO,GAAI,MAAkB,KAAK;AAAA,IACtC;AACA,QAAI,GAAG,OAAOA,YAAA,OAAO,GAAG;AACpB,aAAO,GAAI,MAAkB,KAAK;AAAA,IACtC;AACA,QAAI,GAAG,OAAOA,YAAA,UAAU,GAAG;AACvB,aAAO,gBAAiB,MAAqB,UAAU,KAAK;AAAA,IAChE;AACA,WAAO,MAAM,SAAS;AAAA,EAC1B;AApBO,EAAAA,YAAS;AAyBT,WAAS,aAAa,OAA+B,UAAmB;AAC3E,QAAI,OAAO,UAAU,WAAW;AAC5B,aAAO,QAAQ,IAAI;AAAA,IACvB;AAEA,QAAI,OAAO,UAAU,UAAU;AAC3B,aAAO;AAAA,IACX;AAEA,QAAI,GAAG,OAAOA,YAAA,OAAO,GAAG;AACpB,cAAQ,UAAU;AAAA,QACd,KAAK;AAAA,QACL,KAAK;AACD,iBAAQ,MAAkB,QAAQ;AAAA,QAEtC,KAAK;AAAA,QACL,KAAK;AACD,iBAAQ,MAAkB,QAAQ;AAAA,MAC1C;AAGA;AAAA,IACJ;AAEA,QAAI,GAAG,OAAOA,YAAA,OAAO,GAAG;AACpB,cAAQ,UAAU;AAAA,QACd,KAAK;AACD,iBAAQ,MAAkB,QAAQ;AAAA,QAEtC;AACI,iBAAQ,MAAkB;AAAA,MAClC;AAAA,IACJ;AAAA,EACJ;AAjCO,EAAAA,YAAS;AAsCT,WAAS,YAAY,OAA+B;AACvD,QAAI,GAAG,OAAOA,YAAA,UAAU,GAAG;AACvB,aAAQ,MAAqB;AAAA,IACjC;AAAA,EACJ;AAJO,EAAAA,YAAS;AAST,WAAS,OAAO,OAA+B,UAAmB;AACrE,QAAI,UAAU,QAAQ,OAAO,UAAU,YAAY,MAAM,QAAQ,KAAK,KAAK,iBAAiB,MAAM;AAC9F,aAAO;AAAA,IACX;AAEA,UAAM,OAAO,MAAM;AACnB,YAAQ,MAAM;AAAA,MACV,KAAK;AACD,eAAO,YAAY,KAAK;AAAA,MAE5B,KAAK;AAED;AAAA,MAEJ,KAAK;AACD;AAAA;AAAA,MAEJ,KAAK;AAAA,MACL,KAAK;AACD,eAAO,aAAa,OAAO,QAAQ;AAAA,MAEvC,KAAK;AACD,cAAM,IAAI,oBAAoB,wDAAwD;AAAA,MAE1F;AACI,cAAM,IAAI,oBAAoB,oCAAoC,IAAI,GAAG;AAAA,IACjF;AAAA,EACJ;AA3BO,EAAAA,YAAS;AAgCT,WAAS,WAAW,OAA+B;AACtD,QAAI,GAAG,OAAOA,YAAA,SAAS,GAAG;AACtB,aAAQ,MAAoB;AAAA,IAChC;AAAA,EACJ;AAJO,EAAAA,YAAS;AAcT,WAAS,KAA+B,MAAS,OAAyD;AAC7G,QAAI,UAAU,UAAa,UAAU,QAAQ,SAAS,OAAO;AACzD,aAAO;AAAA,IACX;AAEA,QAAI,UAAU,QAAQ;AAClB,aAAO;AAAA,IACX;AAEA,QAAI,UAAU,IAAI;AACd,UAAI,SAAS,UAAU;AACnB,eAAO;AAAA,MACX;AACA,aAAO;AAAA,IACX;AAEA,QAAIA,YAAW,GAAG,OAAOA,YAAW,SAAS,GAAG;AAC5C,aAAO;AAAA,IACX;AAEA,YAAQ,MAAM;AAAA,MACV,KAAK;AACD,eAAO,MAAM,SAAS;AAAA,MAE1B,KAAK;AACD,YAAI,OAAO,UAAU,UAAU;AAC3B,kBAAQ,MAAM,KAAK,EAAE,YAAY;AAAA,QACrC;AACA,eAAO,UAAU,WAAW,UAAU,QAAQ,CAAC,CAAC;AAAA,MAEpD,KAAK;AAAA,MACL,KAAK;AACD,YAAIA,YAAW,GAAG,OAAOA,YAAW,UAAU,KAAK,SAAS,UAAU;AAClE,iBAAO;AAAA,QACX;AAEA,cAAM,KAAK,OAAO,KAAK;AACvB,YAAI,OAAO,MAAM,EAAE,GAAG;AAClB,cAAI,OAAO,UAAU,UAAU;AAE3B,mBAAO;AAAA,UACX;AACA;AAAA,QACJ;AAGA,eAAO;AAAA,MAEX,KAAK;AACD,YAAI,OAAO,UAAU,UAAU;AAE3B,cAAIC;AACJ,cAAI,MAAM,SAAS,OAAI,GAAG;AACtB,YAAAA,QAAOD,YAAW;AAAA,UACtB,WAAW,MAAM,SAAS,GAAG,GAAG;AAC5B,YAAAC,QAAOD,YAAW;AAAA,UACtB;AACA,cAAIC,OAAM;AACN,oBAAQ,OAAO,SAAS,KAAK;AAC7B,gBAAI,OAAO,MAAM,KAAK,GAAG;AACrB,qBAAOD,YAAW;AAAA,YACtB;AACA,mBAAO,EAAE,MAAAC,OAAM,MAAM;AAAA,UACzB;AAGA,gBAAM,QAAQ,MAAM,MAAM,6BAA6B;AACvD,cAAI,OAAO;AACP,oBAAQ,MAAM,CAAC;AAAA,UACnB;AAAA,QACJ;AAEA,YAAI;AACA,kBAAQ,OAAO,OAAO;AAAA,YAClB,KAAK;AAAA,YACL,KAAK;AAAA,YACL,KAAK;AAAA,YACL,KAAK;AACD;AAAA,YAEJ;AACI,kBAAID,YAAW,GAAG,OAAOA,YAAW,OAAO,KAAKA,YAAW,GAAG,OAAOA,YAAW,OAAO,GAAG;AACtF,uBAAO;AAAA,cACX;AACA,qBAAOA,YAAW;AAAA,UAC1B;AACA,gBAAM,IAAI,OAAO,KAAK;AACtB,gBAAM,IAAI,OAAO,CAAC;AAClB,cAAI,OAAO,CAAC,MAAM,GAAG;AACjB,mBAAO;AAAA,UACX;AACA,iBAAO;AAAA,QACX,SAAS,GAAG;AACR,cAAI,aAAa,aAAa;AAC1B,mBAAOA,YAAW;AAAA,UACtB;AACA,gBAAM;AAAA,QACV;AAAA,MAEJ,KAAK;AACD,cAAM,QAAQ,OAAO,KAAK;AAC1B,YAAI,OAAO,MAAM,KAAK,GAAG;AACrB,iBAAOA,YAAW;AAAA,QACtB;AACA,eAAO,MAAM,QAAQ;AAAA,MAEzB,KAAK;AACD,YAAI,iBAAiB,MAAM;AACvB,iBAAO;AAAA,QACX;AACA,YAAI,OAAO,UAAU,UAAU;AAC3B,iBAAOA,YAAW;AAAA,QACtB;AACA,gBAAQ,IAAI,KAAK,KAAK;AACtB,YAAI,OAAO,MAAM,MAAM,QAAQ,CAAC,GAAG;AAC/B,iBAAOA,YAAW;AAAA,QACtB;AACA,eAAO;AAAA,MAEX,KAAK;AACD,YAAIA,YAAW,GAAG,OAAOA,YAAW,UAAU,GAAG;AAC7C,iBAAO;AAAA,QACX;AACA;AAAA,MAEJ,KAAK;AACD,YAAI,UAAU,SAAS;AACnB,iBAAO;AAAA,QACX;AACA,YAAIA,YAAW,GAAG,OAAOA,YAAW,KAAK,GAAG;AACxC,iBAAO;AAAA,QACX;AACA,YAAI,OAAO,UAAU,YAAY,iBAAiB,YAAY;AAC1D,iBAAO,MAAM,KAAK;AAAA,QACtB;AACA;AAAA,MAEJ,KAAK;AAED,YAAI,UAAU,OAAO,UAAU,SAAS;AACpC;AAAA,QACJ;AACA,YAAI,UAAU,WAAW,UAAU,QAAQ,UAAU,MAAM;AACvD,iBAAO,CAAC;AAAA,QACZ;AACA,YAAI,MAAM,QAAQ,KAAK,GAAG;AACtB,iBAAO;AAAA,QACX;AAGA,eAAOA,YAAW;AAAA,IAC1B;AAEA,WAAOA,YAAW;AAAA,EACtB;AA1JO,EAAAA,YAAS;AAAA,GApOH;",
5
5
  "names": ["FieldValue", "type"]
6
6
  }
@@ -31,6 +31,10 @@ export declare namespace Metatype {
31
31
  * Determine the JS type for a metatype.
32
32
  */
33
33
  function native(type: Metatype | undefined): ObjectConstructor | ArrayConstructor | NumberConstructor | DateConstructor | Uint8ArrayConstructor | BigIntConstructor | BooleanConstructor | StringConstructor | undefined;
34
+ /**
35
+ * Map metatype value to JS type.
36
+ */
37
+ type Native<T> = T extends "boolean" ? boolean : T extends "integer" | "float" ? number : T extends "string" ? string : T extends "bitmap" | "object" ? Record<string, unknown> : T extends "array" ? unknown[] : T extends "bytes" ? Uint8Array : T extends "date" ? Date : T extends "any" ? unknown : never;
34
38
  /**
35
39
  * Functions that perform conversion of arbitrary values to a metatype.
36
40
  *
@@ -39,7 +43,21 @@ export declare namespace Metatype {
39
43
  *
40
44
  * @throws {@link UnsupportedCastError} if the cast is deemed impossible
41
45
  */
42
- const cast: Record<Metatype, (value: any) => any>;
46
+ function cast<const T extends `${Metatype}`>(type: T, value: unknown): Native<T>;
47
+ namespace cast {
48
+ export var any: (value: unknown) => unknown;
49
+ export var boolean: (value: unknown) => boolean | null | undefined;
50
+ export var bitmap: (value: any) => number | bigint | Record<string, number> | null | undefined;
51
+ var _a: (value: any) => number | string | null | undefined;
52
+ export var integer: (value: any) => number | bigint | null | undefined;
53
+ export var float: (value: any) => number | null | undefined;
54
+ export var bytes: (value: any) => Uint8Array | null | undefined;
55
+ export var array: (value: any) => Array<unknown> | null | undefined;
56
+ export var object: (value: any) => Record<string, unknown> | null | undefined;
57
+ export var string: (value: any) => string | null | undefined;
58
+ export var date: (value: any) => Date | null | undefined;
59
+ export { _a as enum };
60
+ }
43
61
  /**
44
62
  * These are the native types used by this module.
45
63
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Metatype.d.ts","sourceRoot":"","sources":["../../../src/common/Metatype.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAY,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEvE,qBAAa,oBAAqB,SAAQ,mBAAmB;CAAG;AAEhE;;GAEG;AACH,oBAAY,QAAQ;IAChB,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,IAAI,SAAS;CAChB;AAED,yBAAiB,QAAQ,CAAC;IACtB;;OAEG;IACH,SAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,WAUrD;IAED;;OAEG;IACH,SAAgB,MAAM,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,+KA4BhD;IAED;;;;;;;OAOG;IACI,MAAM,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CA6OtD,CAAC;IAEF;;OAEG;IACH,KAAY,UAAU,GAChB,OAAO,OAAO,GACd,OAAO,MAAM,GACb,OAAO,MAAM,GACb,OAAO,KAAK,GACZ,OAAO,KAAK,GACZ,OAAO,MAAM,GACb,OAAO,MAAM,GACb,OAAO,IAAI,CAAC;CACrB"}
1
+ {"version":3,"file":"Metatype.d.ts","sourceRoot":"","sources":["../../../src/common/Metatype.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAY,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEvE,qBAAa,oBAAqB,SAAQ,mBAAmB;CAAG;AAEhE;;GAEG;AACH,oBAAY,QAAQ;IAChB,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,IAAI,SAAS;CAChB;AAED,yBAAiB,QAAQ,CAAC;IACtB;;OAEG;IACH,SAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,WAUrD;IAED;;OAEG;IACH,SAAgB,MAAM,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,+KA4BhD;IAED;;OAEG;IACH,KAAY,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GACrC,OAAO,GACP,CAAC,SAAS,SAAS,GAAG,OAAO,GAC3B,MAAM,GACN,CAAC,SAAS,QAAQ,GAChB,MAAM,GACN,CAAC,SAAS,QAAQ,GAAG,QAAQ,GAC3B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,CAAC,SAAS,OAAO,GACf,OAAO,EAAE,GACT,CAAC,SAAS,OAAO,GACf,UAAU,GACV,CAAC,SAAS,MAAM,GACd,IAAI,GACJ,CAAC,SAAS,KAAK,GACb,OAAO,GACP,KAAK,CAAC;IAE1B;;;;;;;OAOG;IACH,SAAgB,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,GAE/C,MAAM,CAAC,CAAC,CAAC,CACpC;cAHe,IAAI;gCAKD,OAAO;oCAEH,OAAO,KAAG,OAAO,GAAG,IAAI,GAAG,SAAS;mCAuCrC,GAAG,KAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS;wBAyBnE,GAAG,KAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS;oCAgBrC,GAAG,KAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS;kCAsC1C,GAAG,KAAG,MAAM,GAAG,IAAI,GAAG,SAAS;kCAiB/B,GAAG,KAAG,UAAU,GAAG,IAAI,GAAG,SAAS;kCAoBnC,GAAG,KAAG,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS;mCAqBtC,GAAG,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS;mCAmBhD,GAAG,KAAG,MAAM,GAAG,IAAI,GAAG,SAAS;iCAoBjC,GAAG,KAAG,IAAI,GAAG,IAAI,GAAG,SAAS;;;IAejD;;OAEG;IACH,KAAY,UAAU,GAChB,OAAO,OAAO,GACd,OAAO,MAAM,GACb,OAAO,MAAM,GACb,OAAO,KAAK,GACZ,OAAO,KAAK,GACZ,OAAO,MAAM,GACb,OAAO,MAAM,GACb,OAAO,IAAI,CAAC;CACrB"}
@@ -55,194 +55,195 @@ var Metatype = /* @__PURE__ */ ((Metatype2) => {
55
55
  }
56
56
  }
57
57
  Metatype2.native = native;
58
- Metatype2.cast = {
59
- any(value) {
58
+ function cast(type, value) {
59
+ const caster = cast[type];
60
+ return caster(value);
61
+ }
62
+ Metatype2.cast = cast;
63
+ cast.any = (value) => value;
64
+ cast.boolean = (value) => {
65
+ if (typeof value === "boolean" || value === null || value === void 0) {
60
66
  return value;
61
- },
62
- boolean(value) {
63
- if (typeof value === "boolean" || value === null || value === void 0) {
64
- return value;
65
- }
66
- if (typeof value === "string") {
67
- const normalized = value.toLowerCase().trim();
68
- switch (normalized) {
69
- case "":
70
- case "0":
71
- case "off":
72
- case "no":
73
- case "false":
74
- return false;
75
- case "1":
76
- case "on":
77
- case "yes":
78
- case "true":
79
- return true;
80
- }
81
- }
82
- if (typeof value === "number" || typeof value === "bigint") {
83
- return !!value;
67
+ }
68
+ if (typeof value === "string") {
69
+ const normalized = value.toLowerCase().trim();
70
+ switch (normalized) {
71
+ case "":
72
+ case "0":
73
+ case "off":
74
+ case "no":
75
+ case "false":
76
+ return false;
77
+ case "1":
78
+ case "on":
79
+ case "yes":
80
+ case "true":
81
+ return true;
84
82
  }
85
- if (ArrayBuffer.isView(value)) {
86
- for (const byte of new Uint8Array(value.buffer)) {
87
- if (byte) {
88
- return true;
89
- }
83
+ }
84
+ if (typeof value === "number" || typeof value === "bigint") {
85
+ return !!value;
86
+ }
87
+ if (ArrayBuffer.isView(value)) {
88
+ for (const byte of new Uint8Array(value.buffer)) {
89
+ if (byte) {
90
+ return true;
90
91
  }
91
- return false;
92
- }
93
- throw new UnsupportedCastError(`Cannot convert "${value}" to boolean`);
94
- },
95
- bitmap(value) {
96
- if (value === null || value === void 0) {
97
- return value;
98
92
  }
99
- if (typeof value === "string") {
100
- value = Metatype2.cast.integer(value);
101
- }
102
- if (typeof value === "number") {
103
- if (Number.isFinite(value)) {
104
- return value;
105
- }
106
- } else if (typeof value === "bigint") {
93
+ return false;
94
+ }
95
+ throw new UnsupportedCastError(`Cannot convert "${value}" to boolean`);
96
+ };
97
+ cast.bitmap = (value) => {
98
+ if (value === null || value === void 0) {
99
+ return value;
100
+ }
101
+ if (typeof value === "string") {
102
+ value = cast.integer(value);
103
+ }
104
+ if (typeof value === "number") {
105
+ if (Number.isFinite(value)) {
107
106
  return value;
108
- } else if (isObject(value)) {
109
- return Object.fromEntries(Object.entries(value).map(([k, v]) => [k, Metatype2.cast.integer(v)]));
110
- }
111
- throw new UnsupportedCastError(`Cannot convert "${value}" to bitmap`);
112
- },
113
- enum(value) {
114
- if (typeof value === "string") {
115
- if (value.trim().match(/^(?:[0-9]+|0x[0-9a-f]+|0b[01]+)$/)) {
116
- value = Number.parseInt(value);
117
- } else {
118
- return value;
119
- }
120
107
  }
121
- if (typeof value === "number" && !Number.isNaN(value) && Number.isFinite(value)) {
108
+ } else if (typeof value === "bigint") {
109
+ return value;
110
+ } else if (isObject(value)) {
111
+ return Object.fromEntries(Object.entries(value).map(([k, v]) => [k, cast.integer(v)]));
112
+ }
113
+ throw new UnsupportedCastError(`Cannot convert "${value}" to bitmap`);
114
+ };
115
+ cast.enum = (value) => {
116
+ if (typeof value === "string") {
117
+ if (value.trim().match(/^(?:[0-9]+|0x[0-9a-f]+|0b[01]+)$/)) {
118
+ value = Number.parseInt(value);
119
+ } else {
122
120
  return value;
123
121
  }
124
- throw new UnsupportedCastError(`Cannot convert "${value}" to an enum value`);
125
- },
126
- integer(value) {
127
- if (value === null || value === void 0) {
122
+ }
123
+ if (typeof value === "number" && !Number.isNaN(value) && Number.isFinite(value)) {
124
+ return value;
125
+ }
126
+ throw new UnsupportedCastError(`Cannot convert "${value}" to an enum value`);
127
+ };
128
+ cast.integer = (value) => {
129
+ if (value === null || value === void 0) {
130
+ return value;
131
+ }
132
+ switch (typeof value) {
133
+ case "number":
134
+ return Math.floor(value);
135
+ case "bigint":
128
136
  return value;
129
- }
130
- switch (typeof value) {
131
- case "number":
132
- return Math.floor(value);
133
- case "bigint":
134
- return value;
135
- case "boolean":
136
- return value ? 1 : 0;
137
- }
138
- if (value instanceof Date) {
139
- return value.getTime();
140
- }
141
- if (typeof value === "string") {
142
- try {
143
- const big = BigInt(value);
144
- const little = Number.parseInt(value);
145
- if (big === BigInt(little)) {
146
- return little;
147
- }
148
- return big;
149
- } catch (e) {
150
- if (!(e instanceof SyntaxError)) {
151
- throw e;
152
- }
137
+ case "boolean":
138
+ return value ? 1 : 0;
139
+ }
140
+ if (value instanceof Date) {
141
+ return value.getTime();
142
+ }
143
+ if (typeof value === "string") {
144
+ try {
145
+ const big = BigInt(value);
146
+ const little = Number.parseInt(value);
147
+ if (big === BigInt(little)) {
148
+ return little;
153
149
  }
154
- }
155
- throw new UnsupportedCastError(`Cannot convert "${value}" to an integer`);
156
- },
157
- float(value) {
158
- if (typeof value === "number" || value === null || value === void 0) {
159
- return value;
160
- }
161
- if (value instanceof Date) {
162
- return value.getTime();
163
- }
164
- const number = Number(value);
165
- if (!Number.isNaN(number) && Number.isFinite(value)) {
166
- return number;
167
- }
168
- throw new UnsupportedCastError(`Cannot convert "${value}" to a float`);
169
- },
170
- bytes(value) {
171
- if (value === void 0 || value === null || value instanceof Uint8Array) {
172
- return value;
173
- }
174
- if (typeof value === "string") {
175
- return Bytes.fromHex(value);
176
- }
177
- if (typeof value === "boolean") {
178
- return new Uint8Array([value ? 1 : 0]);
179
- }
180
- if (typeof value === "number" || typeof value === "bigint") {
181
- return Bytes.fromHex(value.toString(16));
182
- }
183
- throw new UnsupportedCastError(`Cannot convert "${value}" to bytes`);
184
- },
185
- array(value) {
186
- if (value === void 0 || value === null || Array.isArray(value)) {
187
- return value;
188
- }
189
- if (typeof value === "string") {
190
- try {
191
- const parsed = JSON.parse(value);
192
- if (Array.isArray(parsed)) {
193
- return parsed;
194
- }
195
- } catch (e) {
196
- if (!(e instanceof SyntaxError)) {
197
- throw e;
198
- }
150
+ return big;
151
+ } catch (e) {
152
+ if (!(e instanceof SyntaxError)) {
153
+ throw e;
199
154
  }
200
155
  }
201
- throw new UnsupportedCastError(`Cannot convert "${value}" to array`);
202
- },
203
- object(value) {
204
- if (value === void 0 || typeof value === "object" && !Array.isArray(value) && !(value instanceof Date)) {
205
- return value;
206
- }
207
- if (typeof value === "string") {
208
- try {
209
- const parsed = JSON.parse(value);
156
+ }
157
+ throw new UnsupportedCastError(`Cannot convert "${value}" to an integer`);
158
+ };
159
+ cast.float = (value) => {
160
+ if (typeof value === "number" || value === null || value === void 0) {
161
+ return value;
162
+ }
163
+ if (value instanceof Date) {
164
+ return value.getTime();
165
+ }
166
+ const number = Number(value);
167
+ if (!Number.isNaN(number) && Number.isFinite(value)) {
168
+ return number;
169
+ }
170
+ throw new UnsupportedCastError(`Cannot convert "${value}" to a float`);
171
+ };
172
+ cast.bytes = (value) => {
173
+ if (value === void 0 || value === null || value instanceof Uint8Array) {
174
+ return value;
175
+ }
176
+ if (typeof value === "string") {
177
+ return Bytes.fromHex(value);
178
+ }
179
+ if (typeof value === "boolean") {
180
+ return new Uint8Array([value ? 1 : 0]);
181
+ }
182
+ if (typeof value === "number" || typeof value === "bigint") {
183
+ return Bytes.fromHex(value.toString(16));
184
+ }
185
+ throw new UnsupportedCastError(`Cannot convert "${value}" to bytes`);
186
+ };
187
+ cast.array = (value) => {
188
+ if (value === void 0 || value === null || Array.isArray(value)) {
189
+ return value;
190
+ }
191
+ if (typeof value === "string") {
192
+ try {
193
+ const parsed = JSON.parse(value);
194
+ if (Array.isArray(parsed)) {
210
195
  return parsed;
211
- } catch (e) {
212
- if (!(e instanceof SyntaxError)) {
213
- throw e;
214
- }
196
+ }
197
+ } catch (e) {
198
+ if (!(e instanceof SyntaxError)) {
199
+ throw e;
215
200
  }
216
201
  }
217
- throw new UnsupportedCastError(`Cannot convert "${value}" to object`);
218
- },
219
- string(value) {
220
- if (value === void 0 || value === null) {
221
- return value;
222
- }
223
- if (typeof value === "string") {
224
- return value;
225
- }
226
- if (value instanceof Date) {
227
- return value.toISOString();
228
- }
229
- if (typeof value === "object" || Array.isArray(value)) {
230
- return JSON.stringify(value);
231
- }
232
- return value.toString();
233
- },
234
- date(value) {
235
- if (value === void 0 || value === null || value instanceof Date) {
236
- return value;
237
- }
238
- if (typeof value === "number" || typeof value === "string") {
239
- const date = new Date(value);
240
- if (!Number.isNaN(date.getTime())) {
241
- return date;
202
+ }
203
+ throw new UnsupportedCastError(`Cannot convert "${value}" to array`);
204
+ };
205
+ cast.object = (value) => {
206
+ if (value === void 0 || typeof value === "object" && !Array.isArray(value) && !(value instanceof Date)) {
207
+ return value;
208
+ }
209
+ if (typeof value === "string") {
210
+ try {
211
+ const parsed = JSON.parse(value);
212
+ return parsed;
213
+ } catch (e) {
214
+ if (!(e instanceof SyntaxError)) {
215
+ throw e;
242
216
  }
243
217
  }
244
- throw new UnexpectedDataError();
245
218
  }
219
+ throw new UnsupportedCastError(`Cannot convert "${value}" to object`);
220
+ };
221
+ cast.string = (value) => {
222
+ if (value === void 0 || value === null) {
223
+ return value;
224
+ }
225
+ if (typeof value === "string") {
226
+ return value;
227
+ }
228
+ if (value instanceof Date) {
229
+ return value.toISOString();
230
+ }
231
+ if (typeof value === "object" || Array.isArray(value)) {
232
+ return JSON.stringify(value);
233
+ }
234
+ return value.toString();
235
+ };
236
+ cast.date = (value) => {
237
+ if (value === void 0 || value === null || value instanceof Date) {
238
+ return value;
239
+ }
240
+ if (typeof value === "number" || typeof value === "string") {
241
+ const date = new Date(value);
242
+ if (!Number.isNaN(date.getTime())) {
243
+ return date;
244
+ }
245
+ }
246
+ throw new UnexpectedDataError();
246
247
  };
247
248
  })(Metatype || (Metatype = {}));
248
249
  export {