@matter/model 0.16.0-alpha.0-20251006-3fe1e7c57 → 0.16.0-alpha.0-20251013-89bb7099d

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 (30) hide show
  1. package/dist/cjs/aspects/Constraint.d.ts +9 -2
  2. package/dist/cjs/aspects/Constraint.d.ts.map +1 -1
  3. package/dist/cjs/aspects/Constraint.js +93 -18
  4. package/dist/cjs/aspects/Constraint.js.map +2 -2
  5. package/dist/cjs/common/FieldValue.d.ts +3 -9
  6. package/dist/cjs/common/FieldValue.d.ts.map +1 -1
  7. package/dist/cjs/logic/definition-validation/ValueValidator.d.ts.map +1 -1
  8. package/dist/cjs/logic/definition-validation/ValueValidator.js +2 -0
  9. package/dist/cjs/logic/definition-validation/ValueValidator.js.map +1 -1
  10. package/dist/cjs/parser/Lexer.js +1 -1
  11. package/dist/cjs/parser/TokenStream.js +2 -2
  12. package/dist/cjs/parser/TokenStream.js.map +1 -1
  13. package/dist/esm/aspects/Constraint.d.ts +9 -2
  14. package/dist/esm/aspects/Constraint.d.ts.map +1 -1
  15. package/dist/esm/aspects/Constraint.js +94 -19
  16. package/dist/esm/aspects/Constraint.js.map +2 -2
  17. package/dist/esm/common/FieldValue.d.ts +3 -9
  18. package/dist/esm/common/FieldValue.d.ts.map +1 -1
  19. package/dist/esm/logic/definition-validation/ValueValidator.d.ts.map +1 -1
  20. package/dist/esm/logic/definition-validation/ValueValidator.js +2 -0
  21. package/dist/esm/logic/definition-validation/ValueValidator.js.map +1 -1
  22. package/dist/esm/parser/Lexer.js +1 -1
  23. package/dist/esm/parser/TokenStream.js +2 -2
  24. package/dist/esm/parser/TokenStream.js.map +1 -1
  25. package/package.json +4 -4
  26. package/src/aspects/Constraint.ts +121 -22
  27. package/src/common/FieldValue.ts +1 -1
  28. package/src/logic/definition-validation/ValueValidator.ts +2 -0
  29. package/src/parser/Lexer.ts +1 -1
  30. package/src/parser/TokenStream.ts +2 -2
@@ -76,14 +76,21 @@ export declare namespace Constraint {
76
76
  * Parsed binary operator.
77
77
  */
78
78
  interface BinaryOperator {
79
- type: "+" | "-";
79
+ type: "+" | "-" | ".";
80
80
  lhs: Expression;
81
81
  rhs: Expression;
82
82
  }
83
+ /**
84
+ * Parsed function.
85
+ */
86
+ interface Function {
87
+ type: "maxOf" | "minOf";
88
+ args: Expression[];
89
+ }
83
90
  /**
84
91
  * Parsed expression.
85
92
  */
86
- type Expression = FieldValue | BinaryOperator;
93
+ type Expression = FieldValue | BinaryOperator | Function;
87
94
  /**
88
95
  * These are all ways to describe a constraint.
89
96
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Constraint.d.ts","sourceRoot":"","sources":["../../../src/aspects/Constraint.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,MAAM,CAAC,UAAU,CAAC,UAAU,CAAE,YAAW,UAAU,CAAC,GAAG;IACnF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC9B,GAAG,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC5B,GAAG,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC5B,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IAErB;;OAEG;gBACS,UAAU,EAAE,UAAU,CAAC,UAAU;IA2DpC,MAAM,CAAC,KAAK,EAAE,UAAU;IAqBjC;;OAEG;IACH,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO;IAoFjE,QAAQ;cAOE,MAAM;CAM5B;AAED,yBAAiB,UAAU,CAAC;IACxB,KAAY,kBAAkB,GAAG,MAAM,GAAG,MAAM,CAAC;IAE1C,MAAM,QAAQ,qEAAsE,CAAC;IAErF,MAAM,QAAQ,aAA4B,CAAC;IAElD;;OAEG;IACH,KAAY,GAAG,GAAG;QACd;;WAEG;QACH,IAAI,CAAC,EAAE,OAAO,CAAC;QAEf;;WAEG;QACH,KAAK,CAAC,EAAE,UAAU,CAAC;QAEnB;;WAEG;QACH,GAAG,CAAC,EAAE,UAAU,CAAC;QAEjB;;WAEG;QACH,GAAG,CAAC,EAAE,UAAU,CAAC;QAEjB;;WAEG;QACH,EAAE,CAAC,EAAE,UAAU,CAAC;QAEhB;;WAEG;QACH,KAAK,CAAC,EAAE,GAAG,CAAC;QAEZ;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf;;WAEG;QACH,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;KACjB,CAAC;IAEF;;OAEG;IACH,UAAiB,cAAc;QAC3B,IAAI,EAAE,GAAG,GAAG,GAAG,CAAC;QAEhB,GAAG,EAAE,UAAU,CAAC;QAEhB,GAAG,EAAE,UAAU,CAAC;KACnB;IAED;;OAEG;IACH,KAAY,UAAU,GAAG,UAAU,GAAG,cAAc,CAAC;IAErD;;OAEG;IACH,KAAY,UAAU,GAAG,CAAC,GAAG,GAAG;QAAE,UAAU,CAAC,EAAE,UAAU,CAAA;KAAE,CAAC,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC9F"}
1
+ {"version":3,"file":"Constraint.d.ts","sourceRoot":"","sources":["../../../src/aspects/Constraint.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAgBrC;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,MAAM,CAAC,UAAU,CAAC,UAAU,CAAE,YAAW,UAAU,CAAC,GAAG;IACnF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC9B,GAAG,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC5B,GAAG,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC5B,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IAErB;;OAEG;gBACS,UAAU,EAAE,UAAU,CAAC,UAAU;IA2DpC,MAAM,CAAC,KAAK,EAAE,UAAU;IAqBjC;;OAEG;IACH,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO;IA8GjE,QAAQ;cAOE,MAAM;CAM5B;AAED,yBAAiB,UAAU,CAAC;IACxB,KAAY,kBAAkB,GAAG,MAAM,GAAG,MAAM,CAAC;IAE1C,MAAM,QAAQ,qEAAsE,CAAC;IAErF,MAAM,QAAQ,aAA4B,CAAC;IAElD;;OAEG;IACH,KAAY,GAAG,GAAG;QACd;;WAEG;QACH,IAAI,CAAC,EAAE,OAAO,CAAC;QAEf;;WAEG;QACH,KAAK,CAAC,EAAE,UAAU,CAAC;QAEnB;;WAEG;QACH,GAAG,CAAC,EAAE,UAAU,CAAC;QAEjB;;WAEG;QACH,GAAG,CAAC,EAAE,UAAU,CAAC;QAEjB;;WAEG;QACH,EAAE,CAAC,EAAE,UAAU,CAAC;QAEhB;;WAEG;QACH,KAAK,CAAC,EAAE,GAAG,CAAC;QAEZ;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf;;WAEG;QACH,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;KACjB,CAAC;IAEF;;OAEG;IACH,UAAiB,cAAc;QAC3B,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;QAEtB,GAAG,EAAE,UAAU,CAAC;QAEhB,GAAG,EAAE,UAAU,CAAC;KACnB;IAED;;OAEG;IACH,UAAiB,QAAQ;QACrB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;QAExB,IAAI,EAAE,UAAU,EAAE,CAAC;KACtB;IAED;;OAEG;IACH,KAAY,UAAU,GAAG,UAAU,GAAG,cAAc,GAAG,QAAQ,CAAC;IAEhE;;OAEG;IACH,KAAY,UAAU,GAAG,CAAC,GAAG,GAAG;QAAE,UAAU,CAAC,EAAE,UAAU,CAAA;KAAE,CAAC,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC9F"}
@@ -31,6 +31,20 @@ var import_Aspect = require("./Aspect.js");
31
31
  * Copyright 2022-2025 Matter.js Authors
32
32
  * SPDX-License-Identifier: Apache-2.0
33
33
  */
34
+ var Functions;
35
+ ((Functions2) => {
36
+ function minOf(args) {
37
+ return Math.min(...args.filter((arg) => typeof arg === "number"));
38
+ }
39
+ Functions2.minOf = minOf;
40
+ function maxOf(args) {
41
+ return Math.max(...args.filter((arg) => typeof arg === "number"));
42
+ }
43
+ Functions2.maxOf = maxOf;
44
+ })(Functions || (Functions = {}));
45
+ function isFunction(name) {
46
+ return Object.hasOwn(Functions, name);
47
+ }
34
48
  class Constraint extends import_Aspect.Aspect {
35
49
  desc;
36
50
  value;
@@ -114,28 +128,46 @@ class Constraint extends import_Aspect.Aspect {
114
128
  case import_common.FieldValue.reference:
115
129
  if (typeof value2.name === "string") {
116
130
  value2 = (0, import_common.FieldValue)(nameResolver?.((0, import_general.camelize)(value2.name)));
131
+ if ((0, import_general.isObject)(value2)) {
132
+ value2 = { type: "properties", properties: value2 };
133
+ }
117
134
  }
118
135
  break;
119
- case "+":
120
- {
121
- const lhs = valueOf(value2.lhs);
122
- const rhs = valueOf(value2.rhs);
123
- if (typeof lhs === "number" && typeof rhs === "number") {
124
- return lhs + rhs;
125
- }
136
+ case "+": {
137
+ const lhs = valueOf(value2.lhs);
138
+ const rhs = valueOf(value2.rhs);
139
+ if (typeof lhs === "number" && typeof rhs === "number") {
140
+ return lhs + rhs;
141
+ }
142
+ return void 0;
143
+ }
144
+ case "-": {
145
+ const lhs = valueOf(value2.lhs);
146
+ const rhs = valueOf(value2.rhs);
147
+ if (typeof lhs === "number" && typeof rhs === "number") {
148
+ return lhs - rhs;
149
+ }
150
+ return void 0;
151
+ }
152
+ case ".": {
153
+ const object = valueOf(value2.lhs);
154
+ if (!(0, import_general.isObject)(object)) {
126
155
  return void 0;
127
156
  }
128
- break;
129
- case "-":
130
- {
131
- const lhs = valueOf(value2.lhs);
132
- const rhs = valueOf(value2.rhs);
133
- if (typeof lhs === "number" && typeof rhs === "number") {
134
- return lhs - rhs;
135
- }
157
+ const rhs = import_common.FieldValue.referenced(valueOf(value2.rhs));
158
+ if (rhs === void 0) {
136
159
  return void 0;
137
160
  }
138
- break;
161
+ if (Object.hasOwn(object, rhs)) {
162
+ return object[rhs];
163
+ }
164
+ return void 0;
165
+ }
166
+ case "maxOf":
167
+ case "minOf": {
168
+ Functions[type](value2.args.map((value3) => valueOf(value3)));
169
+ return void 0;
170
+ }
139
171
  }
140
172
  }
141
173
  return value2;
@@ -213,12 +245,17 @@ var Serializer;
213
245
  switch (value.type) {
214
246
  case "+":
215
247
  case "-":
216
- const sum = `${serializeValue(value.lhs, true)} ${value.type} ${serializeValue(value.rhs, true)}`;
248
+ case ".":
249
+ const sep = value.type === "." ? "" : " ";
250
+ const sum = `${serializeValue(value.lhs, true)}${sep}${value.type}${sep}${serializeValue(value.rhs, true)}`;
217
251
  if (inExpr) {
218
252
  return `(${sum})`;
219
253
  }
220
254
  return sum;
221
255
  default:
256
+ if (isFunction(value.type)) {
257
+ return `${value.type}(${value.args.map((value2) => serializeValue(value2)).join(", ")})`;
258
+ }
222
259
  return import_common.FieldValue.serialize(value);
223
260
  }
224
261
  }
@@ -251,9 +288,12 @@ var Parser;
251
288
  const tokens = (0, import_TokenStream.TokenStream)(lexer.lex(definition, (code, message) => constraint.error(code, message)));
252
289
  const result = parseParts();
253
290
  if (tokens.token && tokens.token?.type !== ",") {
254
- constraint.error("UNEXPECTED_CONSTRAINT_TOKEN", `Unexpected ${tokens.description}`);
291
+ unexpected();
255
292
  }
256
293
  return result;
294
+ function unexpected() {
295
+ constraint.error("UNEXPECTED_CONSTRAINT_TOKEN", `Unexpected ${tokens.description}`);
296
+ }
257
297
  function parseParts() {
258
298
  const parts = Array();
259
299
  while (true) {
@@ -379,6 +419,7 @@ var Parser;
379
419
  switch (tokens.token?.type) {
380
420
  case "+":
381
421
  case "-":
422
+ case ".":
382
423
  const type = tokens.token.type;
383
424
  tokens.next();
384
425
  const rhs = parseValueExpression();
@@ -391,6 +432,40 @@ var Parser;
391
432
  lhs: value,
392
433
  rhs
393
434
  };
435
+ case "(":
436
+ const functionName = import_common.FieldValue.referenced(value);
437
+ if (functionName === void 0) {
438
+ unexpected();
439
+ return;
440
+ }
441
+ tokens.next();
442
+ if (!isFunction(functionName)) {
443
+ constraint.error("UNKNOWN_FUNCTION", `Unknown function "${functionName}"`);
444
+ return;
445
+ }
446
+ const args = Array();
447
+ while (tokens.token?.type !== ")") {
448
+ const expr = parseValueExpression();
449
+ if (expr === void 0) {
450
+ return;
451
+ }
452
+ args.push(expr);
453
+ switch (tokens.token?.type) {
454
+ case ",":
455
+ tokens.next();
456
+ break;
457
+ case ")":
458
+ break;
459
+ default:
460
+ unexpected();
461
+ return;
462
+ }
463
+ }
464
+ tokens.next();
465
+ return {
466
+ type: functionName,
467
+ args
468
+ };
394
469
  }
395
470
  return value;
396
471
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/aspects/Constraint.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAyB;AACzB,mBAAsB;AAEtB,yBAA4B;AAC5B,oBAA2B;AAC3B,oBAAuB;AAXvB;AAAA;AAAA;AAAA;AAAA;AAkBO,MAAM,mBAAmB,qBAAwD;AAAA,EACpF;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY,YAAmC;AAC3C,UAAM,UAAU;AAEhB,QAAI;AACJ,YAAQ,OAAO,YAAY;AAAA,MACvB,KAAK;AAID;AAAA;AAAA,UAEI,WAAW,MAAM,YAAY;AAAA,UAE5B,WAAW,WAAW,IAAI,KAAK,WAAW,SAAS,GAAG,KAAK,WAAW,MAAM,UAAU;AAAA,UACzF;AACE;AAAA,QACJ;AACA,cAAM,OAAO,MAAM,MAAM,UAAU;AACnC;AAAA,MAEJ,KAAK;AACD,cAAM,EAAE,OAAO,WAAW;AAC1B;AAAA,MAEJ;AACI,cAAM;AACN,YAAI,KAAK,YAAY;AACjB,eAAK,aAAa,IAAI;AAAA,QAC1B;AACA;AAAA,IACR;AAEA,QAAI,CAAC,KAAK;AACN,WAAK,UAAU;AACf;AAAA,IACJ;AAEA,SAAK,OAAO,IAAI;AAChB,SAAK,QAAQ,IAAI;AACjB,SAAK,MAAM,IAAI;AACf,SAAK,MAAM,IAAI;AACf,SAAK,KAAK,IAAI;AACd,SAAK,QAAQ,IAAI,UAAU,SAAY,SAAY,IAAI,WAAW,IAAI,KAAK;AAC3E,SAAK,QAAQ,IAAI;AACjB,SAAK,QAAQ,IAAI,OAAO,SAAS,IAAI,MAAM,IAAI,OAAK,IAAI,WAAW,CAAC,CAAC,IAAI;AAEzE,SAAK,UACD,KAAK,SAAS,UACd,KAAK,UAAU,UACf,KAAK,QAAQ,UACb,KAAK,QAAQ,UACb,KAAK,OAAO,UACZ,KAAK,UAAU,UACf,KAAK,UAAU,UACf,KAAK,UAAU;AAEnB,SAAK,OAAO;AAAA,EAChB;AAAA,EAES,OAAO,OAAmB;AAC/B,QAAI,MAAM,SAAS;AACf,aAAO;AAAA,IACX;AAEA,QAAI,KAAK,SAAS;AACd,aAAO;AAAA,IACX;AAEA,WAAO,IAAI,WAAW;AAAA,MAClB,MAAM,MAAM,QAAQ,KAAK;AAAA,MACzB,OAAO,MAAM,SAAS,KAAK;AAAA,MAC3B,KAAK,MAAM,OAAO,KAAK;AAAA,MACvB,KAAK,MAAM,OAAO,KAAK;AAAA,MACvB,IAAI,MAAM,MAAM,KAAK;AAAA,MACrB,OAAO,MAAM,SAAS,KAAK;AAAA,MAC3B,OAAO,MAAM,SAAS,KAAK;AAAA,MAC3B,OAAO,MAAM,SAAS,KAAK;AAAA,IAC/B,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAKA,KAAK,OAAmB,cAAmD;AAEvE,aAAS,QAAQA,QAA0C,MAAM,OAA+B;AAC5F,UAAI,CAAC,QAAQ,OAAOA,WAAU,YAAY,MAAM,QAAQA,MAAK,IAAI;AAC7D,eAAOA,OAAM;AAAA,MACjB;AACA,UAAI,OAAOA,WAAU,YAAYA,WAAU,QAAQ,UAAUA,QAAO;AAChE,cAAM,EAAE,KAAK,IAAIA;AACjB,gBAAQ,MAAM;AAAA,UACV,KAAK,yBAAW;AACZ,gBAAI,OAAOA,OAAM,SAAS,UAAU;AAChC,cAAAA,aAAQ,0BAAW,mBAAe,yBAASA,OAAM,IAAI,CAAC,CAAC;AAAA,YAC3D;AACA;AAAA,UAEJ,KAAK;AACD;AACI,oBAAM,MAAM,QAAQA,OAAM,GAAG;AAC7B,oBAAM,MAAM,QAAQA,OAAM,GAAG;AAC7B,kBAAI,OAAO,QAAQ,YAAY,OAAO,QAAQ,UAAU;AACpD,uBAAO,MAAM;AAAA,cACjB;AACA,qBAAO;AAAA,YACX;AACA;AAAA,UAEJ,KAAK;AACD;AACI,oBAAM,MAAM,QAAQA,OAAM,GAAG;AAC7B,oBAAM,MAAM,QAAQA,OAAM,GAAG;AAC7B,kBAAI,OAAO,QAAQ,YAAY,OAAO,QAAQ,UAAU;AACpD,uBAAO,MAAM;AAAA,cACjB;AACA,qBAAO;AAAA,YACX;AACA;AAAA,QACR;AAAA,MACJ;AAEA,aAAOA;AAAA,IACX;AAEA,QAAI,UAAU,QAAW;AACrB,aAAO;AAAA,IACX;AAEA,QAAI,KAAK,IAAI;AACT,UAAI,MAAM,QAAQ,KAAK,IAAI,IAAI;AAC/B,UAAI,CAAC,MAAM,QAAQ,GAAG,GAAG;AACrB,cAAM,QAAQ,SAAY,CAAC,IAAI,CAAC,GAAG;AAAA,MACvC;AACA,aAAQ,IAAkB,QAAQ,KAAK,MAAM;AAAA,IACjD;AAEA,UAAM,IAAI,QAAQ,KAAK,KAAK;AAC5B,QAAI,MAAM,OAAO;AACb,aAAO;AAAA,IACX;AAEA,QAAI,MAAM,UAAa,UAAU,MAAM;AACnC,aAAO;AAAA,IACX;AAEA,QAAI,KAAK,QAAQ,UAAa,KAAK,QAAQ,MAAM;AAC7C,YAAM,MAAM,QAAQ,KAAK,GAAG;AAC5B,UAAI,QAAQ,UAAa,QAAQ,QAAQ,MAAM,OAAO;AAClD,eAAO;AAAA,MACX;AAAA,IACJ;AAEA,QAAI,KAAK,QAAQ,UAAa,KAAK,QAAQ,MAAM;AAC7C,YAAM,MAAM,QAAQ,KAAK,GAAG;AAC5B,UAAI,QAAQ,UAAa,QAAQ,QAAQ,MAAM,OAAO;AAClD,eAAO;AAAA,MACX;AAAA,IACJ;AAEA,QAAI,KAAK,OAAO,MAAM,UAAQ,KAAK,KAAK,OAAO,YAAY,MAAM,KAAK,GAAG;AACrE,aAAO;AAAA,IACX;AAEA,WAAO;AAAA,EACX;AAAA,EAES,WAAW;AAChB,QAAI,CAAC,KAAK,SAAS,KAAK,YAAY;AAChC,aAAO,KAAK,WAAW,SAAS;AAAA,IACpC;AACA,WAAO,WAAW,UAAU,IAAI;AAAA,EACpC;AAAA,EAEmB,SAAS;AACxB,QAAI,KAAK,OAAO;AACZ,aAAO,OAAO,KAAK,KAAK;AAAA,IAC5B;AACA,UAAM,OAAO;AAAA,EACjB;AACJ;AAAA,CAEO,CAAUC,gBAAV;AAGI,EAAMA,YAAA,WAAW,CAAC,MAAM,OAAO,OAAO,MAAM,OAAO,QAAQ,QAAQ,OAAO;AAE1E,EAAMA,YAAA,WAAW,IAAI,IAAYA,YAAA,QAAQ;AAAA,GALnC;AA0EjB,IAAU;AAAA,CAAV,CAAUC,gBAAV;AACW,WAAS,UAAU,KAA6B;AACnD,QAAI,IAAI,OAAO;AACX,aAAO,IAAI,MAAM,IAAI,SAAS,EAAE,KAAK,IAAI;AAAA,IAC7C;AACA,QAAI,IAAI,OAAO;AACX,aAAO,GAAG,cAAc,GAAG,CAAC,IAAI,UAAU,IAAI,KAAK,CAAC;AAAA,IACxD;AACA,QAAI,IAAI,OAAO;AACX,aAAO,GAAG,cAAc,GAAG,CAAC,IAAI,IAAI,KAAK;AAAA,IAC7C;AACA,WAAO,cAAc,GAAG;AAAA,EAC5B;AAXO,EAAAA,YAAS;AAahB,WAAS,eAAe,OAA8B,SAAS,OAAe;AAC1E,QAAI,OAAO,UAAU,YAAY,UAAU,QAAQ,MAAM,QAAQ,KAAK,KAAK,iBAAiB,MAAM;AAC9F,aAAO,yBAAW,UAAU,KAAK;AAAA,IACrC;AAEA,YAAQ,MAAM,MAAM;AAAA,MAChB,KAAK;AAAA,MACL,KAAK;AACD,cAAM,MAAM,GAAG,eAAe,MAAM,KAAK,IAAI,CAAC,IAAI,MAAM,IAAI,IAAI,eAAe,MAAM,KAAK,IAAI,CAAC;AAC/F,YAAI,QAAQ;AAGR,iBAAO,IAAI,GAAG;AAAA,QAClB;AACA,eAAO;AAAA,MAEX;AACI,eAAO,yBAAW,UAAU,KAAK;AAAA,IACzC;AAAA,EACJ;AAEA,WAAS,cAAc,KAAqB;AACxC,QAAI,IAAI,MAAM;AACV,aAAO;AAAA,IACX;AAEA,QAAI,IAAI,UAAU,UAAa,IAAI,UAAU,MAAM;AAC/C,aAAO,GAAG,eAAe,IAAI,KAAK,CAAC;AAAA,IACvC;AAEA,QAAI,IAAI,QAAQ,UAAa,IAAI,QAAQ,MAAM;AAC3C,UAAI,IAAI,QAAQ,UAAa,IAAI,QAAQ,MAAM;AAC3C,eAAO,OAAO,eAAe,IAAI,GAAG,CAAC;AAAA,MACzC;AACA,aAAO,GAAG,eAAe,IAAI,GAAG,CAAC,OAAO,eAAe,IAAI,GAAG,CAAC;AAAA,IACnE;AAEA,QAAI,IAAI,QAAQ,UAAa,IAAI,QAAQ,MAAM;AAC3C,aAAO,OAAO,eAAe,IAAI,GAAG,CAAC;AAAA,IACzC;AAEA,QAAI,IAAI,OAAO,QAAW;AACtB,aAAO,MAAM,eAAe,IAAI,EAAE,CAAC;AAAA,IACvC;AAEA,WAAO;AAAA,EACX;AAAA,GA5DM;AA+DV,IAAU;AAAA,CAAV,CAAUC,YAAV;AACI,QAAM,QAAQ,IAAI,mBAAM,WAAW,QAAQ;AAEpC,WAAS,MAAM,YAAwB,YAAoC;AAC9E,UAAM,aAAS,gCAAY,MAAM,IAAI,YAAY,CAAC,MAAM,YAAY,WAAW,MAAM,MAAM,OAAO,CAAC,CAAC;AAEpG,UAAM,SAAS,WAAW;AAE1B,QAAI,OAAO,SAAS,OAAO,OAAO,SAAS,KAAK;AAC5C,iBAAW,MAAM,+BAA+B,cAAc,OAAO,WAAW,EAAE;AAAA,IACtF;AAEA,WAAO;AAEP,aAAS,aAA6B;AAClC,YAAM,QAAQ,MAAsB;AAEpC,aAAO,MAAM;AACT,cAAM,OAAO,UAAU;AAEvB,YAAI,SAAS,QAAW;AACpB,gBAAM,KAAK,IAAI;AAAA,QACnB;AAEA,YAAI,OAAO,MAAM;AACb;AAAA,QACJ;AAEA,YAAI,OAAO,OAAO,SAAS,KAAK;AAC5B;AAAA,QACJ;AAEA,eAAO,KAAK;AAAA,MAChB;AAEA,UAAI,CAAC,MAAM,QAAQ;AACf,eAAO,CAAC;AAAA,MACZ;AAEA,UAAI,MAAM,WAAW,GAAG;AACpB,eAAO,MAAM,CAAC;AAAA,MAClB;AAEA,aAAO,EAAE,MAAM;AAAA,IACnB;AAEA,aAAS,YAAwC;AAC7C,YAAMC,UAAS,8BAA8B;AAE7C,UAAIA,YAAW,QAAW;AACtB,eAAOA;AAAA,MACX;AAEA,cAAQ,OAAO,OAAO,MAAM;AAAA,QACxB,KAAK;AACD;AACI,mBAAO,KAAK;AAEZ,kBAAM,QAAQ,WAAW;AAEzB,gBAAI,OAAO,OAAO,SAAU,KAAa;AACrC,yBAAW,MAAM,qBAAqB,wCAAwC;AAAA,YAClF;AAEA,mBAAO,KAAK;AAEZ,gBAAI,UAAU,QAAW;AACrB,cAAAA,QAAO,QAAQ;AAAA,YACnB;AAAA,UACJ;AACA;AAAA,QAEJ,KAAK;AACD;AACI,mBAAO,KAAK;AAEZ,gBAAI,OAAO,OAAO,SAAU,SAAiB;AACzC,yBAAW;AAAA,gBACP;AAAA,gBACA;AAAA,cACJ;AACA,kBAAI,OAAO,QAAQ,SAAS,KAAK;AAC7B,uBAAO,KAAK;AAAA,cAChB;AAAA,YACJ,OAAO;AACH,cAAAA,QAAO,QAAQ,yBAAW;AAAA,gBACrB,OAAO,MAAuC;AAAA,cACnD;AACA,qBAAO,KAAK;AAAA,YAChB;AAEA,gBAAI,OAAO,OAAO,SAAU,KAAa;AACrC,yBAAW,MAAM,yBAAyB,4CAA4C;AAAA,YAC1F;AAEA,mBAAO,KAAK;AAAA,UAChB;AACA;AAAA,MACR;AAEA,aAAOA;AAAA,IACX;AAEA,aAAS,gCAA4D;AACjE,YAAM,EAAE,MAAM,IAAI;AAElB,UAAI,CAAC,OAAO;AACR;AAAA,MACJ;AAEA,cAAQ,MAAM,MAAM;AAAA,QAChB,KAAK;AACD,iBAAO,KAAK;AACZ,iBAAO,EAAE,MAAM,KAAK;AAAA,QAExB,KAAK;AACD,iBAAO,KAAK;AACZ,iBAAO,CAAC;AAAA,QAEZ,KAAK;AAAA,QACL,KAAK;AACD,iBAAO,KAAK;AACZ,iBAAO,iBAAiB,MAAM,IAAI;AAAA,QAEtC,KAAK;AACD,iBAAO,KAAK;AACZ,cAAI,OAAO,OAAO,SAAS,QAAQ;AAC/B,kBAAM,OAAO,OAAO,MAAM;AAC1B,mBAAO,KAAK;AACZ,mBAAO,EAAE,IAAI,yBAAW,UAAU,IAAI,EAAE;AAAA,UAC5C;AACA,qBAAW,MAAM,oBAAoB,oCAAoC;AACzE;AAAA,MACR;AAEA,YAAM,QAAQ,gBAAgB;AAE9B,UAAI,UAAU,UAAa,OAAO,OAAO,SAAS,MAAM;AACpD,eAAO,EAAE,MAAM;AAAA,MACnB;AAEA,aAAO,KAAK;AAEZ,YAAM,MAAM,gBAAgB;AAC5B,UAAI,QAAQ,QAAW;AACnB,mBAAW,MAAM,uBAAuB,+CAA+C;AACvF;AAAA,MACJ;AAEA,aAAO;AAAA,QACH,KAAK;AAAA,QACL;AAAA,MACJ;AAAA,IACJ;AAEA,aAAS,iBAAiB,MAAiD;AACvE,YAAM,QAAQ,gBAAgB;AAC9B,UAAI,UAAU,QAAW;AACrB,mBAAW,MAAM,wBAAwB,IAAI,IAAI,sCAAsC;AACvF;AAAA,MACJ;AACA,aAAO,EAAE,CAAC,IAAI,GAAG,MAAM;AAAA,IAC3B;AAEA,aAAS,kBAAqD;AAC1D,YAAM,QAAQ,qBAAqB;AAEnC,UAAI,UAAU,QAAW;AACrB,eAAO;AAAA,MACX;AAEA,cAAQ,OAAO,OAAO,MAAM;AAAA,QACxB,KAAK;AAAA,QACL,KAAK;AACD,gBAAM,OAAO,OAAO,MAAM;AAC1B,iBAAO,KAAK;AACZ,gBAAM,MAAM,qBAAqB;AACjC,cAAI,QAAQ,QAAW;AACnB,uBAAW,MAAM,yBAAyB,0BAA0B,IAAI,GAAG;AAC3E;AAAA,UACJ;AAEA,iBAAO;AAAA,YACH;AAAA,YACA,KAAK;AAAA,YACL;AAAA,UACJ;AAAA,MACR;AAEA,aAAO;AAAA,IACX;AAEA,aAAS,uBAA0D;AAC/D,YAAM,EAAE,MAAM,IAAI;AAElB,UAAI,UAAU,QAAW;AACrB;AAAA,MACJ;AAEA,cAAQ,MAAM,MAAM;AAAA,QAChB,KAAK;AACD,iBAAO,KAAK;AACZ,iBAAO,MAAM;AAAA,QAEjB,KAAK;AACD,iBAAO,KAAK;AACZ,iBAAO;AAAA,QAEX,KAAK;AACD,iBAAO,KAAK;AACZ,iBAAO;AAAA,QAEX,KAAK;AACD,gBAAM,MAAM,yBAAW,cAAU,yBAAS,MAAM,KAAK,CAAC;AACtD,iBAAO,KAAK;AACZ,iBAAO;AAAA,QAEX,KAAK;AAAA,QACL,KAAK,KAAK;AACN,iBAAO,KAAK;AAEZ,cAAI,SAAS,OAAO,OAAO,SAAS,UAAU,OAAO,MAAM,QAAQ;AAEnE,cAAI,WAAW,QAAW;AACtB,mBAAO,KAAK;AAEZ,gBAAI,MAAM,SAAS,KAAK;AACpB,kBAAI,OAAO,WAAW,UAAU;AAC5B,0BAAU;AAAA,cACd,WACI,yBAAW,GAAG,QAAQ,yBAAW,OAAO,KACxC,yBAAW,GAAG,QAAQ,yBAAW,OAAO,GAC1C;AACE,gBAAC,OAAmD,SAAS;AAAA,cACjE,OAAO;AACH,yBAAS;AAAA,cACb;AAAA,YACJ;AAAA,UACJ;AAEA,cAAI,WAAW,QAAW;AACtB,uBAAW,MAAM,kBAAkB,UAAU,MAAM,IAAI,iCAAiC;AACxF;AAAA,UACJ;AAEA,iBAAO;AAAA,QACX;AAAA,QAEA,KAAK,KAAK;AACN,iBAAO,KAAK;AAEZ,gBAAMA,UAAS,gBAAgB;AAC/B,cAAI,OAAO,OAAO,SAAS,KAAK;AAC5B,uBAAW,MAAM,qBAAqB,6BAA6B;AAAA,UACvE;AAEA,iBAAO,KAAK;AAEZ,iBAAOA;AAAA,QACX;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AAnQO,EAAAD,QAAS;AAAA,GAHV;",
5
- "names": ["value", "Constraint", "Serializer", "Parser", "result"]
4
+ "mappings": "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",
5
+ "names": ["Functions", "value", "Constraint", "Serializer", "Parser", "result"]
6
6
  }
@@ -85,9 +85,7 @@ export declare namespace FieldValue {
85
85
  */
86
86
  type Properties = {
87
87
  type: properties;
88
- properties: {
89
- [name: string]: FieldValue;
90
- };
88
+ properties: Record<string, FieldValue>;
91
89
  };
92
90
  /**
93
91
  * Byte value, encoded as hex string.
@@ -108,15 +106,11 @@ export declare namespace FieldValue {
108
106
  /**
109
107
  * Extract object properties from the value.
110
108
  */
111
- function objectValue(value: FieldValue | undefined): {
112
- [name: string]: FieldValue;
113
- } | undefined;
109
+ function objectValue(value: FieldValue | undefined): Record<string, FieldValue> | undefined;
114
110
  /**
115
111
  * Unwrap wrapped values, leave others as-is.
116
112
  */
117
- function unwrap(value: FieldValue | undefined, typeName?: string): string | number | bigint | boolean | Date | FieldValue[] | {
118
- [name: string]: FieldValue;
119
- } | null | undefined;
113
+ function unwrap(value: FieldValue | undefined, typeName?: string): string | number | bigint | boolean | Date | FieldValue[] | Record<string, FieldValue> | null | undefined;
120
114
  /**
121
115
  * Get the referenced name if the FieldValue is a reference.
122
116
  */
@@ -1 +1 @@
1
- {"version":3,"file":"FieldValue.d.ts","sourceRoot":"","sources":["../../../src/common/FieldValue.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAsB,QAAQ,EAAqD,MAAM,UAAU,CAAC;AAC3G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C;;;GAGG;AACH,MAAM,MAAM,UAAU,GAChB,IAAI,GACJ,MAAM,GACN,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,QAAQ,GACR,UAAU,EAAE,GACZ,UAAU,CAAC,UAAU,GACrB,UAAU,CAAC,SAAS,GACpB,UAAU,CAAC,OAAO,GAClB,UAAU,CAAC,OAAO,GAClB,UAAU,CAAC,KAAK,GAChB,UAAU,CAAC,IAAI,CAAC;AAEtB;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,CAkBjE;AAED,yBAAiB,UAAU,CAAC;IAGjB,MAAM,OAAO,YAAY,CAAC;IACjC,KAAY,OAAO,GAAG,OAAO,OAAO,CAAC;IAE9B,MAAM,OAAO,YAAY,CAAC;IACjC,KAAY,OAAO,GAAG,OAAO,OAAO,CAAC;IAE9B,MAAM,SAAS,cAAc,CAAC;IACrC,KAAY,SAAS,GAAG,OAAO,SAAS,CAAC;IAElC,MAAM,UAAU,eAAe,CAAC;IACvC,KAAY,UAAU,GAAG,OAAO,UAAU,CAAC;IAEpC,MAAM,KAAK,UAAU,CAAC;IAC7B,KAAY,KAAK,GAAG,OAAO,KAAK,CAAC;IAE1B,MAAM,IAAI,SAAS,CAAC;IAC3B,KAAY,IAAI,GAAG,OAAO,IAAI,CAAC;IAE/B;;OAEG;IACH,KAAY,IAAI,GAAG,UAAU,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAEjD;;OAEG;IACH,KAAY,IAAI,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,KAAK,GAAG,IAAI,CAAC;IAE7E;;OAEG;IACH,SAAgB,EAAE,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS,EAAE,IAAI,EAAE,IAAI,4CAErD;IAED;;;OAGG;IACI,MAAM,OAAO,EAAE,OAAO,MAA0B,CAAC;IACxD,KAAY,OAAO,GAAG,OAAO,OAAO,CAAC;IAErC;;OAEG;IACH,KAAY,IAAI,GAAG;QACf,IAAI,EAAE,IAAI,CAAC;KACd,CAAC;IAEK,MAAM,IAAI,EAAE,IAElB,CAAC;IAEF;;OAEG;IACH,KAAY,SAAS,GAAG;QACpB,IAAI,EAAE,SAAS,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,SAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAEjD;IAED;;OAEG;IACH,KAAY,OAAO,GAAG;QAClB,IAAI,EAAE,OAAO,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,SAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE9C;IAED;;OAEG;IACH,KAAY,OAAO,GAAG;QAClB,IAAI,EAAE,OAAO,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,SAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE9C;IAED;;OAEG;IACH,KAAY,UAAU,GAAG;QACrB,IAAI,EAAE,UAAU,CAAC;QACjB,UAAU,EAAE;YAAE,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAAA;SAAE,CAAC;KAC9C,CAAC;IAEF;;OAEG;IACH,KAAY,KAAK,GAAG;QAChB,IAAI,EAAE,KAAK,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,SAAgB,KAAK,CAAC,KAAK,EAAE,uBAAuB,GAAG,MAAM,GAAG,KAAK,CAEpE;IAED;;OAEG;IACH,SAAgB,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAoBnD;IAED;;OAEG;IACH,SAAgB,YAAY,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM,sBAiCtE;IAED;;OAEG;IACH,SAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS;;kBAIxD;IAED;;OAEG;IACH,SAAgB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM;;yBA2BtE;IAED;;OAEG;IACH,SAAgB,UAAU,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS,sBAIjD;IAED;;;;;;;OAOG;IACH,SAAgB,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,GAAG,UAAU,GAAG,UAAU,CAAC,OAAO,GAAG,SAAS,CA0J/G;CACJ"}
1
+ {"version":3,"file":"FieldValue.d.ts","sourceRoot":"","sources":["../../../src/common/FieldValue.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ValueValidator.d.ts","sourceRoot":"","sources":["../../../../src/logic/definition-validation/ValueValidator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAyB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD;;GAEG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,UAAU,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;;IAC9D,QAAQ;CAiTpB"}
1
+ {"version":3,"file":"ValueValidator.d.ts","sourceRoot":"","sources":["../../../../src/logic/definition-validation/ValueValidator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAyB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD;;GAEG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,UAAU,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;;IAC9D,QAAQ;CAkTpB"}
@@ -21,6 +21,7 @@ __export(ValueValidator_exports, {
21
21
  ValueValidator: () => ValueValidator
22
22
  });
23
23
  module.exports = __toCommonJS(ValueValidator_exports);
24
+ var import_general = require("#general");
24
25
  var import_ModelTraversal = require("#logic/ModelTraversal.js");
25
26
  var import_aspects = require("../../aspects/index.js");
26
27
  var import_common = require("../../common/index.js");
@@ -47,6 +48,7 @@ class ValueValidator extends import_ModelValidator.ModelValidator {
47
48
  const cluster = this.model.owner(import_models.ClusterModel);
48
49
  return cluster?.features.find((f) => f.name === name);
49
50
  }
51
+ name = (0, import_general.camelize)(name, true);
50
52
  for (let model = this.model.parent; model; model = model.parent) {
51
53
  const member = model.member(name);
52
54
  if (member) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/logic/definition-validation/ValueValidator.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -114,7 +114,7 @@ function* lex(text, error, keywords) {
114
114
  function tokenizeDigits(base, valueOf) {
115
115
  let num = valueOf(current.value);
116
116
  if (num === void 0) {
117
- error("INVALID_NUMBER", `Expected digit following numeric suffix`);
117
+ error("INVALID_NUMBER", `Expected digit following numeric prefix`);
118
118
  return { type: "value", value: 0, startLine, startChar };
119
119
  }
120
120
  while (true) {
@@ -54,8 +54,8 @@ function TokenStream(iterator) {
54
54
  return "end of statement";
55
55
  case "word":
56
56
  return `word "${this.token.value}"`;
57
- case "number":
58
- return `number "${this.token.value}"`;
57
+ case "value":
58
+ return `value "${this.token.value}"`;
59
59
  default:
60
60
  if (this.token?.type.match(/[a-z]/i)) {
61
61
  return `keyword "${this.token?.type}"`;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/parser/TokenStream.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmBO,SAAS,YAA6B,UAAuC;AAChF,MAAI,OAAO;AAEX,WAAS,OAAO;AACZ,QAAI,MAAM;AACN,aAAO;AAAA,IACX;AACA,UAAM,IAAI,SAAS,KAAK;AACxB,QAAI,EAAE,MAAM;AACR,aAAO;AAAA,IACX;AACA,WAAO,EAAE;AAAA,EACb;AAEA,SAAO;AAAA,IACH,OAAO,KAAK;AAAA,IACZ,QAAQ,KAAK;AAAA,IAEb,IAAI,OAAO;AACP,aAAO,KAAK,UAAU;AAAA,IAC1B;AAAA,IAEA,OAAO;AACH,WAAK,QAAQ,KAAK;AAClB,WAAK,SAAS,KAAK;AAAA,IACvB;AAAA,IAEA,IAAI,cAAc;AACd,cAAQ,KAAK,OAAO,MAAM;AAAA,QACtB,KAAK;AACD,iBAAO;AAAA,QAEX,KAAK;AACD,iBAAO,SAAU,KAAK,MAAqC,KAAK;AAAA,QAEpE,KAAK;AACD,iBAAO,WAAY,KAAK,MAAuC,KAAK;AAAA,QAExE;AACI,cAAI,KAAK,OAAO,KAAK,MAAM,QAAQ,GAAG;AAClC,mBAAO,YAAY,KAAK,OAAO,IAAI;AAAA,UACvC;AACA,iBAAO,aAAa,KAAK,OAAO,IAAI;AAAA,MAC5C;AAAA,IACJ;AAAA,EACJ;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmBO,SAAS,YAA6B,UAAuC;AAChF,MAAI,OAAO;AAEX,WAAS,OAAO;AACZ,QAAI,MAAM;AACN,aAAO;AAAA,IACX;AACA,UAAM,IAAI,SAAS,KAAK;AACxB,QAAI,EAAE,MAAM;AACR,aAAO;AAAA,IACX;AACA,WAAO,EAAE;AAAA,EACb;AAEA,SAAO;AAAA,IACH,OAAO,KAAK;AAAA,IACZ,QAAQ,KAAK;AAAA,IAEb,IAAI,OAAO;AACP,aAAO,KAAK,UAAU;AAAA,IAC1B;AAAA,IAEA,OAAO;AACH,WAAK,QAAQ,KAAK;AAClB,WAAK,SAAS,KAAK;AAAA,IACvB;AAAA,IAEA,IAAI,cAAc;AACd,cAAQ,KAAK,OAAO,MAAM;AAAA,QACtB,KAAK;AACD,iBAAO;AAAA,QAEX,KAAK;AACD,iBAAO,SAAU,KAAK,MAAqC,KAAK;AAAA,QAEpE,KAAK;AACD,iBAAO,UAAW,KAAK,MAAuC,KAAK;AAAA,QAEvE;AACI,cAAI,KAAK,OAAO,KAAK,MAAM,QAAQ,GAAG;AAClC,mBAAO,YAAY,KAAK,OAAO,IAAI;AAAA,UACvC;AACA,iBAAO,aAAa,KAAK,OAAO,IAAI;AAAA,MAC5C;AAAA,IACJ;AAAA,EACJ;AACJ;",
5
5
  "names": []
6
6
  }
@@ -76,14 +76,21 @@ export declare namespace Constraint {
76
76
  * Parsed binary operator.
77
77
  */
78
78
  interface BinaryOperator {
79
- type: "+" | "-";
79
+ type: "+" | "-" | ".";
80
80
  lhs: Expression;
81
81
  rhs: Expression;
82
82
  }
83
+ /**
84
+ * Parsed function.
85
+ */
86
+ interface Function {
87
+ type: "maxOf" | "minOf";
88
+ args: Expression[];
89
+ }
83
90
  /**
84
91
  * Parsed expression.
85
92
  */
86
- type Expression = FieldValue | BinaryOperator;
93
+ type Expression = FieldValue | BinaryOperator | Function;
87
94
  /**
88
95
  * These are all ways to describe a constraint.
89
96
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Constraint.d.ts","sourceRoot":"","sources":["../../../src/aspects/Constraint.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,MAAM,CAAC,UAAU,CAAC,UAAU,CAAE,YAAW,UAAU,CAAC,GAAG;IACnF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC9B,GAAG,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC5B,GAAG,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC5B,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IAErB;;OAEG;gBACS,UAAU,EAAE,UAAU,CAAC,UAAU;IA2DpC,MAAM,CAAC,KAAK,EAAE,UAAU;IAqBjC;;OAEG;IACH,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO;IAoFjE,QAAQ;cAOE,MAAM;CAM5B;AAED,yBAAiB,UAAU,CAAC;IACxB,KAAY,kBAAkB,GAAG,MAAM,GAAG,MAAM,CAAC;IAE1C,MAAM,QAAQ,qEAAsE,CAAC;IAErF,MAAM,QAAQ,aAA4B,CAAC;IAElD;;OAEG;IACH,KAAY,GAAG,GAAG;QACd;;WAEG;QACH,IAAI,CAAC,EAAE,OAAO,CAAC;QAEf;;WAEG;QACH,KAAK,CAAC,EAAE,UAAU,CAAC;QAEnB;;WAEG;QACH,GAAG,CAAC,EAAE,UAAU,CAAC;QAEjB;;WAEG;QACH,GAAG,CAAC,EAAE,UAAU,CAAC;QAEjB;;WAEG;QACH,EAAE,CAAC,EAAE,UAAU,CAAC;QAEhB;;WAEG;QACH,KAAK,CAAC,EAAE,GAAG,CAAC;QAEZ;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf;;WAEG;QACH,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;KACjB,CAAC;IAEF;;OAEG;IACH,UAAiB,cAAc;QAC3B,IAAI,EAAE,GAAG,GAAG,GAAG,CAAC;QAEhB,GAAG,EAAE,UAAU,CAAC;QAEhB,GAAG,EAAE,UAAU,CAAC;KACnB;IAED;;OAEG;IACH,KAAY,UAAU,GAAG,UAAU,GAAG,cAAc,CAAC;IAErD;;OAEG;IACH,KAAY,UAAU,GAAG,CAAC,GAAG,GAAG;QAAE,UAAU,CAAC,EAAE,UAAU,CAAA;KAAE,CAAC,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC9F"}
1
+ {"version":3,"file":"Constraint.d.ts","sourceRoot":"","sources":["../../../src/aspects/Constraint.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAgBrC;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,MAAM,CAAC,UAAU,CAAC,UAAU,CAAE,YAAW,UAAU,CAAC,GAAG;IACnF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC9B,GAAG,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC5B,GAAG,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IAC5B,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IAErB;;OAEG;gBACS,UAAU,EAAE,UAAU,CAAC,UAAU;IA2DpC,MAAM,CAAC,KAAK,EAAE,UAAU;IAqBjC;;OAEG;IACH,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO;IA8GjE,QAAQ;cAOE,MAAM;CAM5B;AAED,yBAAiB,UAAU,CAAC;IACxB,KAAY,kBAAkB,GAAG,MAAM,GAAG,MAAM,CAAC;IAE1C,MAAM,QAAQ,qEAAsE,CAAC;IAErF,MAAM,QAAQ,aAA4B,CAAC;IAElD;;OAEG;IACH,KAAY,GAAG,GAAG;QACd;;WAEG;QACH,IAAI,CAAC,EAAE,OAAO,CAAC;QAEf;;WAEG;QACH,KAAK,CAAC,EAAE,UAAU,CAAC;QAEnB;;WAEG;QACH,GAAG,CAAC,EAAE,UAAU,CAAC;QAEjB;;WAEG;QACH,GAAG,CAAC,EAAE,UAAU,CAAC;QAEjB;;WAEG;QACH,EAAE,CAAC,EAAE,UAAU,CAAC;QAEhB;;WAEG;QACH,KAAK,CAAC,EAAE,GAAG,CAAC;QAEZ;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf;;WAEG;QACH,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;KACjB,CAAC;IAEF;;OAEG;IACH,UAAiB,cAAc;QAC3B,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;QAEtB,GAAG,EAAE,UAAU,CAAC;QAEhB,GAAG,EAAE,UAAU,CAAC;KACnB;IAED;;OAEG;IACH,UAAiB,QAAQ;QACrB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;QAExB,IAAI,EAAE,UAAU,EAAE,CAAC;KACtB;IAED;;OAEG;IACH,KAAY,UAAU,GAAG,UAAU,GAAG,cAAc,GAAG,QAAQ,CAAC;IAEhE;;OAEG;IACH,KAAY,UAAU,GAAG,CAAC,GAAG,GAAG;QAAE,UAAU,CAAC,EAAE,UAAU,CAAA;KAAE,CAAC,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC9F"}
@@ -3,11 +3,25 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { camelize } from "#general";
6
+ import { camelize, isObject } from "#general";
7
7
  import { Lexer } from "#parser/Lexer.js";
8
8
  import { TokenStream } from "#parser/TokenStream.js";
9
9
  import { FieldValue } from "../common/index.js";
10
10
  import { Aspect } from "./Aspect.js";
11
+ var Functions;
12
+ ((Functions2) => {
13
+ function minOf(args) {
14
+ return Math.min(...args.filter((arg) => typeof arg === "number"));
15
+ }
16
+ Functions2.minOf = minOf;
17
+ function maxOf(args) {
18
+ return Math.max(...args.filter((arg) => typeof arg === "number"));
19
+ }
20
+ Functions2.maxOf = maxOf;
21
+ })(Functions || (Functions = {}));
22
+ function isFunction(name) {
23
+ return Object.hasOwn(Functions, name);
24
+ }
11
25
  class Constraint extends Aspect {
12
26
  desc;
13
27
  value;
@@ -91,28 +105,46 @@ class Constraint extends Aspect {
91
105
  case FieldValue.reference:
92
106
  if (typeof value2.name === "string") {
93
107
  value2 = FieldValue(nameResolver?.(camelize(value2.name)));
108
+ if (isObject(value2)) {
109
+ value2 = { type: "properties", properties: value2 };
110
+ }
94
111
  }
95
112
  break;
96
- case "+":
97
- {
98
- const lhs = valueOf(value2.lhs);
99
- const rhs = valueOf(value2.rhs);
100
- if (typeof lhs === "number" && typeof rhs === "number") {
101
- return lhs + rhs;
102
- }
113
+ case "+": {
114
+ const lhs = valueOf(value2.lhs);
115
+ const rhs = valueOf(value2.rhs);
116
+ if (typeof lhs === "number" && typeof rhs === "number") {
117
+ return lhs + rhs;
118
+ }
119
+ return void 0;
120
+ }
121
+ case "-": {
122
+ const lhs = valueOf(value2.lhs);
123
+ const rhs = valueOf(value2.rhs);
124
+ if (typeof lhs === "number" && typeof rhs === "number") {
125
+ return lhs - rhs;
126
+ }
127
+ return void 0;
128
+ }
129
+ case ".": {
130
+ const object = valueOf(value2.lhs);
131
+ if (!isObject(object)) {
103
132
  return void 0;
104
133
  }
105
- break;
106
- case "-":
107
- {
108
- const lhs = valueOf(value2.lhs);
109
- const rhs = valueOf(value2.rhs);
110
- if (typeof lhs === "number" && typeof rhs === "number") {
111
- return lhs - rhs;
112
- }
134
+ const rhs = FieldValue.referenced(valueOf(value2.rhs));
135
+ if (rhs === void 0) {
113
136
  return void 0;
114
137
  }
115
- break;
138
+ if (Object.hasOwn(object, rhs)) {
139
+ return object[rhs];
140
+ }
141
+ return void 0;
142
+ }
143
+ case "maxOf":
144
+ case "minOf": {
145
+ Functions[type](value2.args.map((value3) => valueOf(value3)));
146
+ return void 0;
147
+ }
116
148
  }
117
149
  }
118
150
  return value2;
@@ -190,12 +222,17 @@ var Serializer;
190
222
  switch (value.type) {
191
223
  case "+":
192
224
  case "-":
193
- const sum = `${serializeValue(value.lhs, true)} ${value.type} ${serializeValue(value.rhs, true)}`;
225
+ case ".":
226
+ const sep = value.type === "." ? "" : " ";
227
+ const sum = `${serializeValue(value.lhs, true)}${sep}${value.type}${sep}${serializeValue(value.rhs, true)}`;
194
228
  if (inExpr) {
195
229
  return `(${sum})`;
196
230
  }
197
231
  return sum;
198
232
  default:
233
+ if (isFunction(value.type)) {
234
+ return `${value.type}(${value.args.map((value2) => serializeValue(value2)).join(", ")})`;
235
+ }
199
236
  return FieldValue.serialize(value);
200
237
  }
201
238
  }
@@ -228,9 +265,12 @@ var Parser;
228
265
  const tokens = TokenStream(lexer.lex(definition, (code, message) => constraint.error(code, message)));
229
266
  const result = parseParts();
230
267
  if (tokens.token && tokens.token?.type !== ",") {
231
- constraint.error("UNEXPECTED_CONSTRAINT_TOKEN", `Unexpected ${tokens.description}`);
268
+ unexpected();
232
269
  }
233
270
  return result;
271
+ function unexpected() {
272
+ constraint.error("UNEXPECTED_CONSTRAINT_TOKEN", `Unexpected ${tokens.description}`);
273
+ }
234
274
  function parseParts() {
235
275
  const parts = Array();
236
276
  while (true) {
@@ -356,6 +396,7 @@ var Parser;
356
396
  switch (tokens.token?.type) {
357
397
  case "+":
358
398
  case "-":
399
+ case ".":
359
400
  const type = tokens.token.type;
360
401
  tokens.next();
361
402
  const rhs = parseValueExpression();
@@ -368,6 +409,40 @@ var Parser;
368
409
  lhs: value,
369
410
  rhs
370
411
  };
412
+ case "(":
413
+ const functionName = FieldValue.referenced(value);
414
+ if (functionName === void 0) {
415
+ unexpected();
416
+ return;
417
+ }
418
+ tokens.next();
419
+ if (!isFunction(functionName)) {
420
+ constraint.error("UNKNOWN_FUNCTION", `Unknown function "${functionName}"`);
421
+ return;
422
+ }
423
+ const args = Array();
424
+ while (tokens.token?.type !== ")") {
425
+ const expr = parseValueExpression();
426
+ if (expr === void 0) {
427
+ return;
428
+ }
429
+ args.push(expr);
430
+ switch (tokens.token?.type) {
431
+ case ",":
432
+ tokens.next();
433
+ break;
434
+ case ")":
435
+ break;
436
+ default:
437
+ unexpected();
438
+ return;
439
+ }
440
+ }
441
+ tokens.next();
442
+ return {
443
+ type: functionName,
444
+ args
445
+ };
371
446
  }
372
447
  return value;
373
448
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/aspects/Constraint.ts"],
4
- "mappings": "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",
5
- "names": ["value", "Constraint", "Serializer", "Parser", "result"]
4
+ "mappings": "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",
5
+ "names": ["Functions", "value", "Constraint", "Serializer", "Parser", "result"]
6
6
  }
@@ -85,9 +85,7 @@ export declare namespace FieldValue {
85
85
  */
86
86
  type Properties = {
87
87
  type: properties;
88
- properties: {
89
- [name: string]: FieldValue;
90
- };
88
+ properties: Record<string, FieldValue>;
91
89
  };
92
90
  /**
93
91
  * Byte value, encoded as hex string.
@@ -108,15 +106,11 @@ export declare namespace FieldValue {
108
106
  /**
109
107
  * Extract object properties from the value.
110
108
  */
111
- function objectValue(value: FieldValue | undefined): {
112
- [name: string]: FieldValue;
113
- } | undefined;
109
+ function objectValue(value: FieldValue | undefined): Record<string, FieldValue> | undefined;
114
110
  /**
115
111
  * Unwrap wrapped values, leave others as-is.
116
112
  */
117
- function unwrap(value: FieldValue | undefined, typeName?: string): string | number | bigint | boolean | Date | FieldValue[] | {
118
- [name: string]: FieldValue;
119
- } | null | undefined;
113
+ function unwrap(value: FieldValue | undefined, typeName?: string): string | number | bigint | boolean | Date | FieldValue[] | Record<string, FieldValue> | null | undefined;
120
114
  /**
121
115
  * Get the referenced name if the FieldValue is a reference.
122
116
  */
@@ -1 +1 @@
1
- {"version":3,"file":"FieldValue.d.ts","sourceRoot":"","sources":["../../../src/common/FieldValue.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAsB,QAAQ,EAAqD,MAAM,UAAU,CAAC;AAC3G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C;;;GAGG;AACH,MAAM,MAAM,UAAU,GAChB,IAAI,GACJ,MAAM,GACN,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,QAAQ,GACR,UAAU,EAAE,GACZ,UAAU,CAAC,UAAU,GACrB,UAAU,CAAC,SAAS,GACpB,UAAU,CAAC,OAAO,GAClB,UAAU,CAAC,OAAO,GAClB,UAAU,CAAC,KAAK,GAChB,UAAU,CAAC,IAAI,CAAC;AAEtB;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,CAkBjE;AAED,yBAAiB,UAAU,CAAC;IAGjB,MAAM,OAAO,YAAY,CAAC;IACjC,KAAY,OAAO,GAAG,OAAO,OAAO,CAAC;IAE9B,MAAM,OAAO,YAAY,CAAC;IACjC,KAAY,OAAO,GAAG,OAAO,OAAO,CAAC;IAE9B,MAAM,SAAS,cAAc,CAAC;IACrC,KAAY,SAAS,GAAG,OAAO,SAAS,CAAC;IAElC,MAAM,UAAU,eAAe,CAAC;IACvC,KAAY,UAAU,GAAG,OAAO,UAAU,CAAC;IAEpC,MAAM,KAAK,UAAU,CAAC;IAC7B,KAAY,KAAK,GAAG,OAAO,KAAK,CAAC;IAE1B,MAAM,IAAI,SAAS,CAAC;IAC3B,KAAY,IAAI,GAAG,OAAO,IAAI,CAAC;IAE/B;;OAEG;IACH,KAAY,IAAI,GAAG,UAAU,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAEjD;;OAEG;IACH,KAAY,IAAI,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,KAAK,GAAG,IAAI,CAAC;IAE7E;;OAEG;IACH,SAAgB,EAAE,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS,EAAE,IAAI,EAAE,IAAI,4CAErD;IAED;;;OAGG;IACI,MAAM,OAAO,EAAE,OAAO,MAA0B,CAAC;IACxD,KAAY,OAAO,GAAG,OAAO,OAAO,CAAC;IAErC;;OAEG;IACH,KAAY,IAAI,GAAG;QACf,IAAI,EAAE,IAAI,CAAC;KACd,CAAC;IAEK,MAAM,IAAI,EAAE,IAElB,CAAC;IAEF;;OAEG;IACH,KAAY,SAAS,GAAG;QACpB,IAAI,EAAE,SAAS,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,SAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAEjD;IAED;;OAEG;IACH,KAAY,OAAO,GAAG;QAClB,IAAI,EAAE,OAAO,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,SAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE9C;IAED;;OAEG;IACH,KAAY,OAAO,GAAG;QAClB,IAAI,EAAE,OAAO,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,SAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE9C;IAED;;OAEG;IACH,KAAY,UAAU,GAAG;QACrB,IAAI,EAAE,UAAU,CAAC;QACjB,UAAU,EAAE;YAAE,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAAA;SAAE,CAAC;KAC9C,CAAC;IAEF;;OAEG;IACH,KAAY,KAAK,GAAG;QAChB,IAAI,EAAE,KAAK,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,SAAgB,KAAK,CAAC,KAAK,EAAE,uBAAuB,GAAG,MAAM,GAAG,KAAK,CAEpE;IAED;;OAEG;IACH,SAAgB,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAoBnD;IAED;;OAEG;IACH,SAAgB,YAAY,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM,sBAiCtE;IAED;;OAEG;IACH,SAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS;;kBAIxD;IAED;;OAEG;IACH,SAAgB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM;;yBA2BtE;IAED;;OAEG;IACH,SAAgB,UAAU,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS,sBAIjD;IAED;;;;;;;OAOG;IACH,SAAgB,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,GAAG,UAAU,GAAG,UAAU,CAAC,OAAO,GAAG,SAAS,CA0J/G;CACJ"}
1
+ {"version":3,"file":"FieldValue.d.ts","sourceRoot":"","sources":["../../../src/common/FieldValue.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ValueValidator.d.ts","sourceRoot":"","sources":["../../../../src/logic/definition-validation/ValueValidator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAyB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD;;GAEG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,UAAU,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;;IAC9D,QAAQ;CAiTpB"}
1
+ {"version":3,"file":"ValueValidator.d.ts","sourceRoot":"","sources":["../../../../src/logic/definition-validation/ValueValidator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAyB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD;;GAEG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,UAAU,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;;IAC9D,QAAQ;CAkTpB"}
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { camelize } from "#general";
6
7
  import { ModelTraversal } from "#logic/ModelTraversal.js";
7
8
  import { Access, Conformance, Constraint, Quality } from "../../aspects/index.js";
8
9
  import { FieldValue, Metatype } from "../../common/index.js";
@@ -24,6 +25,7 @@ class ValueValidator extends ModelValidator {
24
25
  const cluster = this.model.owner(ClusterModel);
25
26
  return cluster?.features.find((f) => f.name === name);
26
27
  }
28
+ name = camelize(name, true);
27
29
  for (let model = this.model.parent; model; model = model.parent) {
28
30
  const member = model.member(name);
29
31
  if (member) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/logic/definition-validation/ValueValidator.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -91,7 +91,7 @@ function* lex(text, error, keywords) {
91
91
  function tokenizeDigits(base, valueOf) {
92
92
  let num = valueOf(current.value);
93
93
  if (num === void 0) {
94
- error("INVALID_NUMBER", `Expected digit following numeric suffix`);
94
+ error("INVALID_NUMBER", `Expected digit following numeric prefix`);
95
95
  return { type: "value", value: 0, startLine, startChar };
96
96
  }
97
97
  while (true) {
@@ -31,8 +31,8 @@ function TokenStream(iterator) {
31
31
  return "end of statement";
32
32
  case "word":
33
33
  return `word "${this.token.value}"`;
34
- case "number":
35
- return `number "${this.token.value}"`;
34
+ case "value":
35
+ return `value "${this.token.value}"`;
36
36
  default:
37
37
  if (this.token?.type.match(/[a-z]/i)) {
38
38
  return `keyword "${this.token?.type}"`;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/parser/TokenStream.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAmBO,SAAS,YAA6B,UAAuC;AAChF,MAAI,OAAO;AAEX,WAAS,OAAO;AACZ,QAAI,MAAM;AACN,aAAO;AAAA,IACX;AACA,UAAM,IAAI,SAAS,KAAK;AACxB,QAAI,EAAE,MAAM;AACR,aAAO;AAAA,IACX;AACA,WAAO,EAAE;AAAA,EACb;AAEA,SAAO;AAAA,IACH,OAAO,KAAK;AAAA,IACZ,QAAQ,KAAK;AAAA,IAEb,IAAI,OAAO;AACP,aAAO,KAAK,UAAU;AAAA,IAC1B;AAAA,IAEA,OAAO;AACH,WAAK,QAAQ,KAAK;AAClB,WAAK,SAAS,KAAK;AAAA,IACvB;AAAA,IAEA,IAAI,cAAc;AACd,cAAQ,KAAK,OAAO,MAAM;AAAA,QACtB,KAAK;AACD,iBAAO;AAAA,QAEX,KAAK;AACD,iBAAO,SAAU,KAAK,MAAqC,KAAK;AAAA,QAEpE,KAAK;AACD,iBAAO,WAAY,KAAK,MAAuC,KAAK;AAAA,QAExE;AACI,cAAI,KAAK,OAAO,KAAK,MAAM,QAAQ,GAAG;AAClC,mBAAO,YAAY,KAAK,OAAO,IAAI;AAAA,UACvC;AACA,iBAAO,aAAa,KAAK,OAAO,IAAI;AAAA,MAC5C;AAAA,IACJ;AAAA,EACJ;AACJ;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAmBO,SAAS,YAA6B,UAAuC;AAChF,MAAI,OAAO;AAEX,WAAS,OAAO;AACZ,QAAI,MAAM;AACN,aAAO;AAAA,IACX;AACA,UAAM,IAAI,SAAS,KAAK;AACxB,QAAI,EAAE,MAAM;AACR,aAAO;AAAA,IACX;AACA,WAAO,EAAE;AAAA,EACb;AAEA,SAAO;AAAA,IACH,OAAO,KAAK;AAAA,IACZ,QAAQ,KAAK;AAAA,IAEb,IAAI,OAAO;AACP,aAAO,KAAK,UAAU;AAAA,IAC1B;AAAA,IAEA,OAAO;AACH,WAAK,QAAQ,KAAK;AAClB,WAAK,SAAS,KAAK;AAAA,IACvB;AAAA,IAEA,IAAI,cAAc;AACd,cAAQ,KAAK,OAAO,MAAM;AAAA,QACtB,KAAK;AACD,iBAAO;AAAA,QAEX,KAAK;AACD,iBAAO,SAAU,KAAK,MAAqC,KAAK;AAAA,QAEpE,KAAK;AACD,iBAAO,UAAW,KAAK,MAAuC,KAAK;AAAA,QAEvE;AACI,cAAI,KAAK,OAAO,KAAK,MAAM,QAAQ,GAAG;AAClC,mBAAO,YAAY,KAAK,OAAO,IAAI;AAAA,UACvC;AACA,iBAAO,aAAa,KAAK,OAAO,IAAI;AAAA,MAC5C;AAAA,IACJ;AAAA,EACJ;AACJ;",
5
5
  "names": []
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/model",
3
- "version": "0.16.0-alpha.0-20251006-3fe1e7c57",
3
+ "version": "0.16.0-alpha.0-20251013-89bb7099d",
4
4
  "description": "Matter data model",
5
5
  "keywords": [
6
6
  "iot",
@@ -31,11 +31,11 @@
31
31
  "embed-examples": "embedme **/README.md"
32
32
  },
33
33
  "dependencies": {
34
- "@matter/general": "0.16.0-alpha.0-20251006-3fe1e7c57"
34
+ "@matter/general": "0.16.0-alpha.0-20251013-89bb7099d"
35
35
  },
36
36
  "devDependencies": {
37
- "@matter/testing": "0.16.0-alpha.0-20251006-3fe1e7c57",
38
- "@matter/tools": "0.16.0-alpha.0-20251006-3fe1e7c57"
37
+ "@matter/testing": "0.16.0-alpha.0-20251013-89bb7099d",
38
+ "@matter/tools": "0.16.0-alpha.0-20251013-89bb7099d"
39
39
  },
40
40
  "files": [
41
41
  "dist/**/*",
@@ -4,13 +4,27 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- import { camelize } from "#general";
7
+ import { camelize, isObject } from "#general";
8
8
  import { Lexer } from "#parser/Lexer.js";
9
9
  import { BasicToken } from "#parser/Token.js";
10
10
  import { TokenStream } from "#parser/TokenStream.js";
11
11
  import { FieldValue } from "../common/index.js";
12
12
  import { Aspect } from "./Aspect.js";
13
13
 
14
+ namespace Functions {
15
+ export function minOf(args: unknown[]) {
16
+ return Math.min(...args.filter(arg => typeof arg === "number"));
17
+ }
18
+
19
+ export function maxOf(args: unknown[]) {
20
+ return Math.max(...args.filter(arg => typeof arg === "number"));
21
+ }
22
+ }
23
+
24
+ function isFunction(name: string): name is keyof typeof Functions {
25
+ return Object.hasOwn(Functions, name);
26
+ }
27
+
14
28
  /**
15
29
  * An operational view of constraints as defined by the Matter specification.
16
30
  *
@@ -124,30 +138,56 @@ export class Constraint extends Aspect<Constraint.Definition> implements Constra
124
138
  case FieldValue.reference:
125
139
  if (typeof value.name === "string") {
126
140
  value = FieldValue(nameResolver?.(camelize(value.name)));
141
+ if (isObject(value)) {
142
+ value = { type: "properties", properties: value as Record<string, FieldValue> };
143
+ }
127
144
  }
128
145
  break;
129
146
 
130
- case "+":
131
- {
132
- const lhs = valueOf(value.lhs);
133
- const rhs = valueOf(value.rhs);
134
- if (typeof lhs === "number" && typeof rhs === "number") {
135
- return lhs + rhs;
136
- }
147
+ case "+": {
148
+ const lhs = valueOf(value.lhs);
149
+ const rhs = valueOf(value.rhs);
150
+ if (typeof lhs === "number" && typeof rhs === "number") {
151
+ return lhs + rhs;
152
+ }
153
+ return undefined;
154
+ }
155
+
156
+ case "-": {
157
+ const lhs = valueOf(value.lhs);
158
+ const rhs = valueOf(value.rhs);
159
+ if (typeof lhs === "number" && typeof rhs === "number") {
160
+ return lhs - rhs;
161
+ }
162
+ return undefined;
163
+ }
164
+
165
+ case ".": {
166
+ const object = valueOf(value.lhs);
167
+ if (!isObject(object)) {
137
168
  return undefined;
138
169
  }
139
- break;
140
170
 
141
- case "-":
142
- {
143
- const lhs = valueOf(value.lhs);
144
- const rhs = valueOf(value.rhs);
145
- if (typeof lhs === "number" && typeof rhs === "number") {
146
- return lhs - rhs;
147
- }
171
+ // rhs may only legally be a name reference
172
+ const rhs = FieldValue.referenced(valueOf(value.rhs));
173
+ if (rhs === undefined) {
148
174
  return undefined;
149
175
  }
150
- break;
176
+
177
+ // Resolve name in context of object. We aren't using schema here but Object.hasOwn is
178
+ // sufficient
179
+ if (Object.hasOwn(object, rhs)) {
180
+ return (object as Record<string, FieldValue>)[rhs];
181
+ }
182
+
183
+ return undefined;
184
+ }
185
+
186
+ case "maxOf":
187
+ case "minOf": {
188
+ Functions[type](value.args.map(value => valueOf(value)));
189
+ return undefined;
190
+ }
151
191
  }
152
192
  }
153
193
 
@@ -267,17 +307,26 @@ export namespace Constraint {
267
307
  * Parsed binary operator.
268
308
  */
269
309
  export interface BinaryOperator {
270
- type: "+" | "-";
310
+ type: "+" | "-" | ".";
271
311
 
272
312
  lhs: Expression;
273
313
 
274
314
  rhs: Expression;
275
315
  }
276
316
 
317
+ /**
318
+ * Parsed function.
319
+ */
320
+ export interface Function {
321
+ type: "maxOf" | "minOf";
322
+
323
+ args: Expression[];
324
+ }
325
+
277
326
  /**
278
327
  * Parsed expression.
279
328
  */
280
- export type Expression = FieldValue | BinaryOperator;
329
+ export type Expression = FieldValue | BinaryOperator | Function;
281
330
 
282
331
  /**
283
332
  * These are all ways to describe a constraint.
@@ -307,7 +356,9 @@ namespace Serializer {
307
356
  switch (value.type) {
308
357
  case "+":
309
358
  case "-":
310
- const sum = `${serializeValue(value.lhs, true)} ${value.type} ${serializeValue(value.rhs, true)}`;
359
+ case ".":
360
+ const sep = value.type === "." ? "" : " ";
361
+ const sum = `${serializeValue(value.lhs, true)}${sep}${value.type}${sep}${serializeValue(value.rhs, true)}`;
311
362
  if (inExpr) {
312
363
  // Ideally only add parenthesis if precedence requires. But nested expressions are not used
313
364
  // anywhere as yet (and probably won't be) so don't try to be fancy, just correct
@@ -316,7 +367,11 @@ namespace Serializer {
316
367
  return sum;
317
368
 
318
369
  default:
319
- return FieldValue.serialize(value);
370
+ if (isFunction(value.type)) {
371
+ return `${value.type}(${(value as Constraint.Function).args.map(value => serializeValue(value)).join(", ")})`;
372
+ }
373
+
374
+ return FieldValue.serialize(value as FieldValue);
320
375
  }
321
376
  }
322
377
 
@@ -357,11 +412,15 @@ namespace Parser {
357
412
  const result = parseParts();
358
413
 
359
414
  if (tokens.token && tokens.token?.type !== ",") {
360
- constraint.error("UNEXPECTED_CONSTRAINT_TOKEN", `Unexpected ${tokens.description}`);
415
+ unexpected();
361
416
  }
362
417
 
363
418
  return result;
364
419
 
420
+ function unexpected() {
421
+ constraint.error("UNEXPECTED_CONSTRAINT_TOKEN", `Unexpected ${tokens.description}`);
422
+ }
423
+
365
424
  function parseParts(): Constraint.Ast {
366
425
  const parts = Array<Constraint.Ast>();
367
426
 
@@ -522,6 +581,7 @@ namespace Parser {
522
581
  switch (tokens.token?.type) {
523
582
  case "+":
524
583
  case "-":
584
+ case ".":
525
585
  const type = tokens.token.type;
526
586
  tokens.next();
527
587
  const rhs = parseValueExpression();
@@ -535,6 +595,45 @@ namespace Parser {
535
595
  lhs: value,
536
596
  rhs,
537
597
  };
598
+
599
+ case "(":
600
+ const functionName = FieldValue.referenced(value);
601
+ if (functionName === undefined) {
602
+ unexpected();
603
+ return;
604
+ }
605
+
606
+ tokens.next();
607
+ if (!isFunction(functionName)) {
608
+ constraint.error("UNKNOWN_FUNCTION", `Unknown function "${functionName}"`);
609
+ return;
610
+ }
611
+
612
+ const args = Array<Constraint.Expression>();
613
+ while ((tokens.token?.type as BasicToken.Operator) !== ")") {
614
+ const expr = parseValueExpression();
615
+ if (expr === undefined) {
616
+ return;
617
+ }
618
+ args.push(expr);
619
+ switch (tokens.token?.type as BasicToken.Operator) {
620
+ case ",":
621
+ tokens.next();
622
+ break;
623
+
624
+ case ")":
625
+ break;
626
+
627
+ default:
628
+ unexpected();
629
+ return;
630
+ }
631
+ }
632
+ tokens.next();
633
+ return {
634
+ type: functionName,
635
+ args,
636
+ };
538
637
  }
539
638
 
540
639
  return value;
@@ -149,7 +149,7 @@ export namespace FieldValue {
149
149
  */
150
150
  export type Properties = {
151
151
  type: properties;
152
- properties: { [name: string]: FieldValue };
152
+ properties: Record<string, FieldValue>;
153
153
  };
154
154
 
155
155
  /**
@@ -4,6 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
+ import { camelize } from "#general";
7
8
  import { ModelTraversal } from "#logic/ModelTraversal.js";
8
9
  import { Access, Aspect, Conformance, Constraint, Quality } from "../../aspects/index.js";
9
10
  import { DefinitionError, FieldValue, Metatype } from "../../common/index.js";
@@ -34,6 +35,7 @@ export class ValueValidator<T extends ValueModel> extends ModelValidator<T> {
34
35
  }
35
36
 
36
37
  // Field lookup
38
+ name = camelize(name, true);
37
39
  for (let model = this.model.parent; model; model = model.parent) {
38
40
  const member = model.member(name);
39
41
  if (member) {
@@ -121,7 +121,7 @@ function* lex(
121
121
  // The first digit may not actually be a digit if number is hexadecimal or binary
122
122
  let num = valueOf(current.value);
123
123
  if (num === undefined) {
124
- error("INVALID_NUMBER", `Expected digit following numeric suffix`);
124
+ error("INVALID_NUMBER", `Expected digit following numeric prefix`);
125
125
  return { type: "value", value: 0, startLine, startChar };
126
126
  }
127
127
 
@@ -52,8 +52,8 @@ export function TokenStream<T extends Token>(iterator: Iterator<T>): TokenStream
52
52
  case "word":
53
53
  return `word "${(this.token as unknown as BasicToken.Word).value}"`;
54
54
 
55
- case "number":
56
- return `number "${(this.token as unknown as BasicToken.Number).value}"`;
55
+ case "value":
56
+ return `value "${(this.token as unknown as BasicToken.Number).value}"`;
57
57
 
58
58
  default:
59
59
  if (this.token?.type.match(/[a-z]/i)) {