@matter/model 0.16.0-alpha.0-20251004-92135c7df → 0.16.0-alpha.0-20251011-d8942d7d5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/aspects/Constraint.d.ts +9 -2
- package/dist/cjs/aspects/Constraint.d.ts.map +1 -1
- package/dist/cjs/aspects/Constraint.js +93 -18
- package/dist/cjs/aspects/Constraint.js.map +2 -2
- package/dist/cjs/common/FieldValue.d.ts +3 -9
- package/dist/cjs/common/FieldValue.d.ts.map +1 -1
- package/dist/cjs/elements/DatatypeElement.d.ts +6 -9
- package/dist/cjs/elements/DatatypeElement.d.ts.map +1 -1
- package/dist/cjs/elements/DatatypeElement.js.map +1 -1
- package/dist/cjs/logic/ModelIndex.d.ts +39 -0
- package/dist/cjs/logic/ModelIndex.d.ts.map +1 -0
- package/dist/cjs/logic/ModelIndex.js +100 -0
- package/dist/cjs/logic/ModelIndex.js.map +6 -0
- package/dist/cjs/logic/Scope.d.ts +2 -1
- package/dist/cjs/logic/Scope.d.ts.map +1 -1
- package/dist/cjs/logic/Scope.js +7 -3
- package/dist/cjs/logic/Scope.js.map +1 -1
- package/dist/cjs/logic/definition-validation/ValueValidator.d.ts.map +1 -1
- package/dist/cjs/logic/definition-validation/ValueValidator.js +2 -0
- package/dist/cjs/logic/definition-validation/ValueValidator.js.map +1 -1
- package/dist/cjs/logic/index.d.ts +1 -0
- package/dist/cjs/logic/index.d.ts.map +1 -1
- package/dist/cjs/logic/index.js +1 -0
- package/dist/cjs/logic/index.js.map +1 -1
- package/dist/cjs/models/ClusterModel.d.ts +43 -5
- package/dist/cjs/models/ClusterModel.d.ts.map +1 -1
- package/dist/cjs/models/ClusterModel.js +69 -1
- package/dist/cjs/models/ClusterModel.js.map +2 -2
- package/dist/cjs/models/ValueModel.d.ts +18 -2
- package/dist/cjs/models/ValueModel.d.ts.map +1 -1
- package/dist/cjs/models/ValueModel.js +27 -0
- package/dist/cjs/models/ValueModel.js.map +2 -2
- package/dist/cjs/parser/Lexer.js +1 -1
- package/dist/cjs/parser/TokenStream.js +2 -2
- package/dist/cjs/parser/TokenStream.js.map +1 -1
- package/dist/esm/aspects/Constraint.d.ts +9 -2
- package/dist/esm/aspects/Constraint.d.ts.map +1 -1
- package/dist/esm/aspects/Constraint.js +94 -19
- package/dist/esm/aspects/Constraint.js.map +2 -2
- package/dist/esm/common/FieldValue.d.ts +3 -9
- package/dist/esm/common/FieldValue.d.ts.map +1 -1
- package/dist/esm/elements/DatatypeElement.d.ts +6 -9
- package/dist/esm/elements/DatatypeElement.d.ts.map +1 -1
- package/dist/esm/elements/DatatypeElement.js.map +1 -1
- package/dist/esm/logic/ModelIndex.d.ts +39 -0
- package/dist/esm/logic/ModelIndex.d.ts.map +1 -0
- package/dist/esm/logic/ModelIndex.js +80 -0
- package/dist/esm/logic/ModelIndex.js.map +6 -0
- package/dist/esm/logic/Scope.d.ts +2 -1
- package/dist/esm/logic/Scope.d.ts.map +1 -1
- package/dist/esm/logic/Scope.js +7 -3
- package/dist/esm/logic/Scope.js.map +1 -1
- package/dist/esm/logic/definition-validation/ValueValidator.d.ts.map +1 -1
- package/dist/esm/logic/definition-validation/ValueValidator.js +2 -0
- package/dist/esm/logic/definition-validation/ValueValidator.js.map +1 -1
- package/dist/esm/logic/index.d.ts +1 -0
- package/dist/esm/logic/index.d.ts.map +1 -1
- package/dist/esm/logic/index.js +1 -0
- package/dist/esm/logic/index.js.map +1 -1
- package/dist/esm/models/ClusterModel.d.ts +43 -5
- package/dist/esm/models/ClusterModel.d.ts.map +1 -1
- package/dist/esm/models/ClusterModel.js +69 -1
- package/dist/esm/models/ClusterModel.js.map +2 -2
- package/dist/esm/models/ValueModel.d.ts +18 -2
- package/dist/esm/models/ValueModel.d.ts.map +1 -1
- package/dist/esm/models/ValueModel.js +27 -0
- package/dist/esm/models/ValueModel.js.map +2 -2
- package/dist/esm/parser/Lexer.js +1 -1
- package/dist/esm/parser/TokenStream.js +2 -2
- package/dist/esm/parser/TokenStream.js.map +1 -1
- package/package.json +4 -4
- package/src/aspects/Constraint.ts +121 -22
- package/src/common/FieldValue.ts +1 -1
- package/src/elements/DatatypeElement.ts +6 -9
- package/src/logic/ModelIndex.ts +125 -0
- package/src/logic/Scope.ts +16 -12
- package/src/logic/definition-validation/ValueValidator.ts +2 -0
- package/src/logic/index.ts +1 -0
- package/src/models/ClusterModel.ts +82 -9
- package/src/models/ValueModel.ts +35 -3
- package/src/parser/Lexer.ts +1 -1
- 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;
|
|
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
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
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
|
-
|
|
129
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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,
|
|
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
|
|
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,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;KAC1C,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,0CAIxD;IAED;;OAEG;IACH,SAAgB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM,4GA2BtE;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"}
|
|
@@ -33,21 +33,18 @@ export declare namespace DatatypeElement {
|
|
|
33
33
|
/**
|
|
34
34
|
* Convert a TypeScript enum to Matter enum values.
|
|
35
35
|
*
|
|
36
|
-
* Matter enums include conformance and other metadata. They may also have
|
|
37
|
-
*
|
|
38
|
-
* we can't use a TypeScript enum directly.
|
|
36
|
+
* Matter enums include conformance and other metadata. They may also have multiple definitions of the same value
|
|
37
|
+
* selectable by conformance. So we can't use a TypeScript enum directly.
|
|
39
38
|
*/
|
|
40
39
|
function ListValues(values: ValueMap): ListValues;
|
|
41
40
|
/**
|
|
42
|
-
* We express enum values as IntElements as this gives us conformance
|
|
43
|
-
* and other metadata.
|
|
41
|
+
* We express enum values as IntElements as this gives us conformance and other metadata.
|
|
44
42
|
*/
|
|
45
43
|
type ListValues = FieldElement[];
|
|
46
44
|
/**
|
|
47
|
-
* Per the Matter specification, enums are named integers. The following
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
* generating the Matter enum we ignore the string keys.
|
|
45
|
+
* Per the Matter specification, enums are named integers. The following allows TypeScript enums to be supplied for
|
|
46
|
+
* translation into Matter enums. To do so, we must accept both numeric and string values. For generating the
|
|
47
|
+
* Matter enum we ignore the string keys.
|
|
51
48
|
*/
|
|
52
49
|
type ValueMap = {
|
|
53
50
|
[name: string]: number | string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatatypeElement.d.ts","sourceRoot":"","sources":["../../../src/elements/DatatypeElement.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACjD,GAAG,EAAE,GAAG,eAAe,CAAC,GAAG,EAAE,CAAC;IAE9B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC;IAEzB;;OAEG;IACH,EAAE,CAAC,EAAE,SAAS,CAAC;IAEf,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;CAC7B;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,eAAe,CAAC,UAAU,EAAE,GAAG,QAAQ,EAAE,YAAY,EAAE,GAC7B,eAAe,CACpF;AAED,yBAAiB,eAAe,CAAC;IACtB,MAAM,GAAG,sBAAsB,CAAC;IACvC,KAAY,GAAG,GAAG,OAAO,UAAU,CAAC,QAAQ,CAAC;IAC7C,KAAY,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAEjE
|
|
1
|
+
{"version":3,"file":"DatatypeElement.d.ts","sourceRoot":"","sources":["../../../src/elements/DatatypeElement.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACjD,GAAG,EAAE,GAAG,eAAe,CAAC,GAAG,EAAE,CAAC;IAE9B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC;IAEzB;;OAEG;IACH,EAAE,CAAC,EAAE,SAAS,CAAC;IAEf,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;CAC7B;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,eAAe,CAAC,UAAU,EAAE,GAAG,QAAQ,EAAE,YAAY,EAAE,GAC7B,eAAe,CACpF;AAED,yBAAiB,eAAe,CAAC;IACtB,MAAM,GAAG,sBAAsB,CAAC;IACvC,KAAY,GAAG,GAAG,OAAO,UAAU,CAAC,QAAQ,CAAC;IAC7C,KAAY,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAEjE;;;;;OAKG;IACH,SAAgB,UAAU,CAAC,MAAM,EAAE,QAAQ,GAAG,UAAU,CAiBvD;IAED;;OAEG;IACH,KAAY,UAAU,GAAG,YAAY,EAAE,CAAC;IAExC;;;;OAIG;IACH,KAAY,QAAQ,GAAG;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAC9D"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/elements/DatatypeElement.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,oBAAqC;AAErC,0BAA6B;AAC7B,0BAA6B;AAT7B;AAAA;AAAA;AAAA;AAAA;AAiCO,SAAS,gBAAgB,eAA2C,UAA0B;AACjG,aAAO,kCAAa,gBAAgB,KAAK,YAAY,QAAQ;AACjE;AAAA,CAEO,CAAUA,qBAAV;AACI,EAAMA,iBAAA,MAAM,yBAAW;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,oBAAqC;AAErC,0BAA6B;AAC7B,0BAA6B;AAT7B;AAAA;AAAA;AAAA;AAAA;AAiCO,SAAS,gBAAgB,eAA2C,UAA0B;AACjG,aAAO,kCAAa,gBAAgB,KAAK,YAAY,QAAQ;AACjE;AAAA,CAEO,CAAUA,qBAAV;AACI,EAAMA,iBAAA,MAAM,yBAAW;AAUvB,WAAS,WAAW,QAA8B;AACrD,UAAM,SAAS,MAAoB;AAEnC,eAAW,CAAC,GAAG,CAAC,KAAK,OAAO,QAAQ,MAAM,GAAG;AACzC,UAAI,OAAO,MAAM,UAAU;AACvB,eAAO;AAAA,cACH,kCAAa;AAAA,YACT,IAAI;AAAA,YACJ,MAAM;AAAA,YACN,MAAM;AAAA,YACN,SAAS;AAAA,UACb,CAAC;AAAA,QACL;AAAA,MACJ;AAAA,IACJ;AAEA,WAAO;AAAA,EACX;AAjBO,EAAAA,iBAAS;AAAA,GAXH;",
|
|
5
5
|
"names": ["DatatypeElement"]
|
|
6
6
|
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Model } from "../models/Model.js";
|
|
7
|
+
/**
|
|
8
|
+
* An read-only array of models with support for efficient lookup by name and ID.
|
|
9
|
+
*
|
|
10
|
+
* Name search uses canonical camel case, so "FooBar", "fooBar" and "foo-bar" are considered equivalent.
|
|
11
|
+
*/
|
|
12
|
+
export interface ModelIndex<T extends Model = Model> extends ReadonlyArray<T> {
|
|
13
|
+
/**
|
|
14
|
+
* Retrieve a model for the given ID or name.
|
|
15
|
+
*
|
|
16
|
+
* Use the two-parameter version for indices that contain multiple model types.
|
|
17
|
+
*/
|
|
18
|
+
for(key: number | string): T | undefined;
|
|
19
|
+
/**
|
|
20
|
+
* Retrieve a model of the specific type for the given ID or name.
|
|
21
|
+
*
|
|
22
|
+
* Name search uses canonical camel case.
|
|
23
|
+
*/
|
|
24
|
+
for<M extends T>(key: number | string, type: Model.Type<M>): M | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* Filter to a specific model subtype.
|
|
27
|
+
*/
|
|
28
|
+
ofType<M extends T>(type: Model.Type<M>): M[];
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Implementation of {@link ModelIndex} used for initial creation.
|
|
32
|
+
*/
|
|
33
|
+
export declare class MutableModelIndex<T extends Model = Model> extends Array<T> implements ModelIndex {
|
|
34
|
+
#private;
|
|
35
|
+
for(key: number | string): T;
|
|
36
|
+
for<M extends T>(key: number | string, type: Model.Type<M>): M;
|
|
37
|
+
ofType<T extends Model.Type>(type: T): InstanceType<T>[];
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=ModelIndex.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelIndex.d.ts","sourceRoot":"","sources":["../../../src/logic/ModelIndex.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C;;;;GAIG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;IACzE;;;;OAIG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC;IAEzC;;;;OAIG;IACH,GAAG,CAAC,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAE3E;;OAEG;IACH,MAAM,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;CACjD;AAED;;GAEG;AACH,qBAAa,iBAAiB,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,CAAE,SAAQ,KAAK,CAAC,CAAC,CAAE,YAAW,UAAU;;IAI1F,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC;IAC5B,GAAG,CAAC,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IA6B9D,MAAM,CAAC,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE;CAoD3D"}
|
|
@@ -0,0 +1,100 @@
|
|
|
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 ModelIndex_exports = {};
|
|
20
|
+
__export(ModelIndex_exports, {
|
|
21
|
+
MutableModelIndex: () => MutableModelIndex
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(ModelIndex_exports);
|
|
24
|
+
var import_general = require("#general");
|
|
25
|
+
/**
|
|
26
|
+
* @license
|
|
27
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
28
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
29
|
+
*/
|
|
30
|
+
class MutableModelIndex extends Array {
|
|
31
|
+
#nameIndex;
|
|
32
|
+
#idIndex;
|
|
33
|
+
for(key, type) {
|
|
34
|
+
let untyped;
|
|
35
|
+
if (typeof key === "number") {
|
|
36
|
+
untyped = this.#ids.get(key);
|
|
37
|
+
} else {
|
|
38
|
+
untyped = this.#names.get((0, import_general.camelize)(key));
|
|
39
|
+
}
|
|
40
|
+
if (untyped === void 0) {
|
|
41
|
+
return void 0;
|
|
42
|
+
}
|
|
43
|
+
if (Array.isArray(untyped)) {
|
|
44
|
+
if (type) {
|
|
45
|
+
return untyped.find((m) => m instanceof type);
|
|
46
|
+
}
|
|
47
|
+
return untyped[0];
|
|
48
|
+
}
|
|
49
|
+
if (type && !(untyped instanceof type)) {
|
|
50
|
+
return void 0;
|
|
51
|
+
}
|
|
52
|
+
return untyped;
|
|
53
|
+
}
|
|
54
|
+
ofType(type) {
|
|
55
|
+
return this.filter((m) => m instanceof type);
|
|
56
|
+
}
|
|
57
|
+
get #ids() {
|
|
58
|
+
if (this.#idIndex) {
|
|
59
|
+
return this.#idIndex;
|
|
60
|
+
}
|
|
61
|
+
const index = this.#idIndex = /* @__PURE__ */ new Map();
|
|
62
|
+
for (const model of this) {
|
|
63
|
+
if (model.id === void 0) {
|
|
64
|
+
continue;
|
|
65
|
+
}
|
|
66
|
+
const already = index.get(model.id);
|
|
67
|
+
if (already) {
|
|
68
|
+
if (Array.isArray(already)) {
|
|
69
|
+
already.push(model);
|
|
70
|
+
} else {
|
|
71
|
+
index.set(model.id, [already, model]);
|
|
72
|
+
}
|
|
73
|
+
} else {
|
|
74
|
+
index.set(model.id, model);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return this.#idIndex;
|
|
78
|
+
}
|
|
79
|
+
get #names() {
|
|
80
|
+
if (this.#nameIndex) {
|
|
81
|
+
return this.#nameIndex;
|
|
82
|
+
}
|
|
83
|
+
const index = this.#nameIndex = /* @__PURE__ */ new Map();
|
|
84
|
+
for (const model of this) {
|
|
85
|
+
const name = (0, import_general.camelize)(model.name);
|
|
86
|
+
const already = index.get(name);
|
|
87
|
+
if (already) {
|
|
88
|
+
if (Array.isArray(already)) {
|
|
89
|
+
already.push(model);
|
|
90
|
+
} else {
|
|
91
|
+
index.set(name, [already, model]);
|
|
92
|
+
}
|
|
93
|
+
} else {
|
|
94
|
+
index.set(name, model);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return this.#nameIndex;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=ModelIndex.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/logic/ModelIndex.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAyB;AANzB;AAAA;AAAA;AAAA;AAAA;AAsCO,MAAM,0BAAmD,MAA+B;AAAA,EAC3F;AAAA,EACA;AAAA,EAKA,IAAI,KAAsB,MAAsC;AAC5D,QAAI;AAEJ,QAAI,OAAO,QAAQ,UAAU;AACzB,gBAAU,KAAK,KAAK,IAAI,GAAG;AAAA,IAC/B,OAAO;AACH,gBAAU,KAAK,OAAO,QAAI,yBAAS,GAAG,CAAC;AAAA,IAC3C;AAEA,QAAI,YAAY,QAAW;AACvB,aAAO;AAAA,IACX;AAEA,QAAI,MAAM,QAAQ,OAAO,GAAG;AACxB,UAAI,MAAM;AACN,eAAO,QAAQ,KAAK,OAAK,aAAa,IAAI;AAAA,MAC9C;AACA,aAAO,QAAQ,CAAC;AAAA,IACpB;AAEA,QAAI,QAAQ,EAAE,mBAAmB,OAAO;AACpC,aAAO;AAAA,IACX;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,OAA6B,MAA4B;AACrD,WAAO,KAAK,OAAO,OAAK,aAAa,IAAI;AAAA,EAC7C;AAAA,EAEA,IAAI,OAAO;AACP,QAAI,KAAK,UAAU;AACf,aAAO,KAAK;AAAA,IAChB;AAEA,UAAM,QAAS,KAAK,WAAW,oBAAI,IAAqB;AACxD,eAAW,SAAS,MAAM;AACtB,UAAI,MAAM,OAAO,QAAW;AACxB;AAAA,MACJ;AAEA,YAAM,UAAU,MAAM,IAAI,MAAM,EAAE;AAClC,UAAI,SAAS;AACT,YAAI,MAAM,QAAQ,OAAO,GAAG;AACxB,kBAAQ,KAAK,KAAK;AAAA,QACtB,OAAO;AACH,gBAAM,IAAI,MAAM,IAAI,CAAC,SAAS,KAAK,CAAC;AAAA,QACxC;AAAA,MACJ,OAAO;AACH,cAAM,IAAI,MAAM,IAAI,KAAK;AAAA,MAC7B;AAAA,IACJ;AAEA,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,SAAS;AACT,QAAI,KAAK,YAAY;AACjB,aAAO,KAAK;AAAA,IAChB;AAEA,UAAM,QAAS,KAAK,aAAa,oBAAI,IAAqB;AAC1D,eAAW,SAAS,MAAM;AACtB,YAAM,WAAO,yBAAS,MAAM,IAAI;AAChC,YAAM,UAAU,MAAM,IAAI,IAAI;AAC9B,UAAI,SAAS;AACT,YAAI,MAAM,QAAQ,OAAO,GAAG;AACxB,kBAAQ,KAAK,KAAK;AAAA,QACtB,OAAO;AACH,gBAAM,IAAI,MAAM,CAAC,SAAS,KAAK,CAAC;AAAA,QACpC;AAAA,MACJ,OAAO;AACH,cAAM,IAAI,MAAM,KAAK;AAAA,MACzB;AAAA,IACJ;AAEA,WAAO,KAAK;AAAA,EAChB;AACJ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { ElementTag } from "#common/ElementTag.js";
|
|
7
7
|
import type { Model } from "#models/index.js";
|
|
8
|
+
import { ModelIndex } from "./ModelIndex.js";
|
|
8
9
|
/**
|
|
9
10
|
* Tracks extensions for a scope to models in parent scopes.
|
|
10
11
|
*
|
|
@@ -44,7 +45,7 @@ export interface Scope {
|
|
|
44
45
|
/**
|
|
45
46
|
* Identify members (child properties) of the designated model in this scope.
|
|
46
47
|
*/
|
|
47
|
-
membersOf<T extends Model>(parent: T, options?: Scope.MemberOptions): Model.ChildOf<T
|
|
48
|
+
membersOf<T extends Model>(parent: T, options?: Scope.MemberOptions): ModelIndex<Model.ChildOf<T>>;
|
|
48
49
|
}
|
|
49
50
|
/**
|
|
50
51
|
* Obtain the scope for a model.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Scope.d.ts","sourceRoot":"","sources":["../../../src/logic/Scope.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAOnD,OAAO,KAAK,EAAgB,KAAK,EAA0B,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"Scope.d.ts","sourceRoot":"","sources":["../../../src/logic/Scope.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAOnD,OAAO,KAAK,EAAgB,KAAK,EAA0B,MAAM,kBAAkB,CAAC;AACpF,OAAO,EAAE,UAAU,EAAqB,MAAM,iBAAiB,CAAC;AAOhE;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,KAAK;IAClB;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC;IAEb;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAEjC;;OAEG;IACH,WAAW,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;IAEvD;;;OAGG;IACH,QAAQ,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;IAEvC;;OAEG;IACH,SAAS,CAAC,CAAC,SAAS,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;CACtG;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,GAAE,KAAK,CAAC,YAAiB,SAsHrE;AAED,yBAAiB,KAAK,CAAC;IACnB;;OAEG;IACH,UAAiB,YAAY;QACzB;;WAEG;QACH,UAAU,CAAC,EAAE,OAAO,CAAC;QAErB;;WAEG;QACH,YAAY,CAAC,EAAE,OAAO,CAAC;QAEvB;;WAEG;QACH,UAAU,CAAC,EAAE,OAAO,CAAC;KACxB;IAED;;OAEG;IACI,MAAM,iBAAiB,WAAW,CAAC;IAE1C;;;OAGG;IACI,MAAM,uBAAuB,iBAAiB,CAAC;IAEtD;;OAEG;IACI,MAAM,qBAAqB,eAAe,CAAC;IAElD;;OAEG;IACH,KAAY,eAAe,GACrB,OAAO,iBAAiB,GACxB,OAAO,uBAAuB,GAC9B,OAAO,qBAAqB,CAAC;IAEnC,UAAiB,aAAa;QAC1B;;WAEG;QACH,WAAW,CAAC,EAAE,eAAe,CAAC;QAE9B;;WAEG;QACH,IAAI,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,GAAG,UAAU,EAAE,CAAC;KACzC;CACJ"}
|
package/dist/cjs/logic/Scope.js
CHANGED
|
@@ -26,6 +26,7 @@ var import_errors = require("#common/errors.js");
|
|
|
26
26
|
var import_FeatureSet = require("#common/FeatureSet.js");
|
|
27
27
|
var import_general = require("#general");
|
|
28
28
|
var import_ModelTraversal = require("./ModelTraversal.js");
|
|
29
|
+
var import_ModelIndex = require("./ModelIndex.js");
|
|
29
30
|
/**
|
|
30
31
|
* @license
|
|
31
32
|
* Copyright 2022-2025 Matter.js Authors
|
|
@@ -102,7 +103,10 @@ function Scope(subject, options = {}) {
|
|
|
102
103
|
}
|
|
103
104
|
const allMembers = findAllMembers(parent, tags, result);
|
|
104
105
|
if (parent.tag === import_ElementTag.ElementTag.Cluster && tags.has(import_ElementTag.ElementTag.Attribute)) {
|
|
105
|
-
injectGlobalAttributes(
|
|
106
|
+
injectGlobalAttributes(
|
|
107
|
+
owner,
|
|
108
|
+
allMembers
|
|
109
|
+
);
|
|
106
110
|
}
|
|
107
111
|
if (!conformanceMode || conformanceMode === "ignore") {
|
|
108
112
|
return allMembers;
|
|
@@ -132,7 +136,7 @@ function Scope(subject, options = {}) {
|
|
|
132
136
|
Scope2.ConformantConformance = "conformant";
|
|
133
137
|
})(Scope || (Scope = {}));
|
|
134
138
|
function findAllMembers(parent, tags, scope) {
|
|
135
|
-
const members =
|
|
139
|
+
const members = new import_ModelIndex.MutableModelIndex();
|
|
136
140
|
const defined = {};
|
|
137
141
|
const visited = /* @__PURE__ */ new Set();
|
|
138
142
|
const traversal = new import_ModelTraversal.ModelTraversal();
|
|
@@ -182,7 +186,7 @@ function injectGlobalAttributes(scope, members) {
|
|
|
182
186
|
}
|
|
183
187
|
function filterWithConformance(parent, tags, members, features, supportedFeatures, conformantOnly, cache2) {
|
|
184
188
|
const tagsToCollect = new Set(tags);
|
|
185
|
-
const result =
|
|
189
|
+
const result = new import_ModelIndex.MutableModelIndex();
|
|
186
190
|
const cached = cache2 ? cache2.get(parent) ?? /* @__PURE__ */ new Map() : void 0;
|
|
187
191
|
if (cache2 && cached) {
|
|
188
192
|
for (const tag of tagsToCollect) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/logic/Scope.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,wBAA2B;AAC3B,oBAA0C;AAC1C,wBAA2B;AAC3B,qBAAoC;AACpC,4BAA+B;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["options", "Scope", "cache"]
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValueValidator.d.ts","sourceRoot":"","sources":["../../../../src/logic/definition-validation/ValueValidator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
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) {
|