@matter/model 0.13.1-alpha.0-20250509-28e1567e1 → 0.13.1-alpha.0-20250515-a4c61c546

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.
@@ -17,11 +17,9 @@ export declare enum AccessLevel {
17
17
  Administer = 5
18
18
  }
19
19
  /**
20
- * An operational representation of "access" as defined by the Matter
21
- * specification.
20
+ * An operational representation of "access" as defined by the Matter specification.
22
21
  *
23
- * "Access" controls the operations a remote party may perform on a data field
24
- * or cluster element.
22
+ * "Access" controls the operations a remote party may perform on a data field or cluster element.
25
23
  */
26
24
  export declare class Access extends Aspect<Access.Definition> implements Access.Ast {
27
25
  rw?: Access.Rw;
@@ -35,19 +33,16 @@ export declare class Access extends Aspect<Access.Definition> implements Access.
35
33
  get fabricSensitive(): boolean;
36
34
  get empty(): boolean;
37
35
  /**
38
- * Determine whether this access is fully specified. This means we know
39
- * whether reads and/or writes are allowed and if so the required access
40
- * levels.
36
+ * Determine whether this access is fully specified. This means we know whether reads and/or writes are allowed and
37
+ * if so the required access levels.
41
38
  */
42
39
  get complete(): boolean;
43
40
  /**
44
- * Initialize from an Access.Definition or the access control DSL defined
45
- * by the Matter Specification.
41
+ * Initialize from an Access.Definition or the access control DSL defined by the Matter Specification.
46
42
  */
47
43
  constructor(definition: string | Access.Definition);
48
44
  /**
49
- * Parses standard Matter access syntax into an AccessFlag set. Extremely
50
- * lenient.
45
+ * Parses standard Matter access syntax into an AccessFlag set. Extremely lenient.
51
46
  */
52
47
  static parse(access: Access, definition: string): Access.Flags;
53
48
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Access.d.ts","sourceRoot":"","sources":["../../../src/aspects/Access.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Access.d.ts","sourceRoot":"","sources":["../../../src/aspects/Access.ts"],"names":[],"mappings":"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"}
@@ -54,16 +54,14 @@ class Access extends import_Aspect.Aspect {
54
54
  return (!this.rw || this.rw === Access.Rw.Read) && !this.fabric && !this.readPriv && !this.writePriv && !this.timed;
55
55
  }
56
56
  /**
57
- * Determine whether this access is fully specified. This means we know
58
- * whether reads and/or writes are allowed and if so the required access
59
- * levels.
57
+ * Determine whether this access is fully specified. This means we know whether reads and/or writes are allowed and
58
+ * if so the required access levels.
60
59
  */
61
60
  get complete() {
62
- return this.rw !== void 0 && (!this.readable || this.rw !== void 0) && (!this.writable || this.rw !== void 0);
61
+ return this.rw !== void 0 && (!this.readable || this.readPriv !== void 0) && (!this.writable || this.writePriv !== void 0);
63
62
  }
64
63
  /**
65
- * Initialize from an Access.Definition or the access control DSL defined
66
- * by the Matter Specification.
64
+ * Initialize from an Access.Definition or the access control DSL defined by the Matter Specification.
67
65
  */
68
66
  constructor(definition) {
69
67
  super(definition);
@@ -77,8 +75,7 @@ class Access extends import_Aspect.Aspect {
77
75
  this.freeze();
78
76
  }
79
77
  /**
80
- * Parses standard Matter access syntax into an AccessFlag set. Extremely
81
- * lenient.
78
+ * Parses standard Matter access syntax into an AccessFlag set. Extremely lenient.
82
79
  */
83
80
  static parse(access, definition) {
84
81
  definition = definition.toUpperCase();
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/aspects/Access.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["AccessLevel", "Access", "Rw", "Fabric", "Privilege", "PrivilegeName", "Timed"]
6
6
  }
@@ -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;AAOpF;;;;;;;;;;;;;;;;;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,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;CAC5F;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,GAAE,KAAK,CAAC,YAAiB,SAkHrE;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"}
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;AAOpF;;;;;;;;;;;;;;;;;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,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;CAC5F;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,GAAE,KAAK,CAAC,YAAiB,SAmHrE;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"}
@@ -113,6 +113,7 @@ function Scope(subject, options = {}) {
113
113
  }
114
114
  return filterWithConformance(
115
115
  parent,
116
+ tags,
116
117
  allMembers,
117
118
  featureNames,
118
119
  supportedFeatures,
@@ -179,14 +180,31 @@ function injectGlobalAttributes(scope, members) {
179
180
  }
180
181
  }
181
182
  }
182
- function filterWithConformance(parent, members, features, supportedFeatures, conformantOnly, cache2) {
183
- const cached = cache2?.get(parent);
184
- if (cached) {
185
- return cached;
183
+ function filterWithConformance(parent, tags, members, features, supportedFeatures, conformantOnly, cache2) {
184
+ const tagsToCollect = new Set(tags);
185
+ const result = Array();
186
+ const cached = cache2 ? cache2.get(parent) ?? /* @__PURE__ */ new Map() : void 0;
187
+ if (cache2 && cached) {
188
+ for (const tag of tagsToCollect) {
189
+ const cachedMembers = cached.get(tag);
190
+ if (cachedMembers) {
191
+ result.push(...cachedMembers);
192
+ tagsToCollect.delete(tag);
193
+ }
194
+ }
195
+ if (tagsToCollect.size === 0) {
196
+ return result;
197
+ }
186
198
  }
187
199
  const selectedMembers = {};
200
+ for (const tag of tagsToCollect) {
201
+ selectedMembers[tag] = {};
202
+ }
188
203
  for (const member of members) {
189
- const { conformance } = member;
204
+ const { conformance, tag } = member;
205
+ if (!tagsToCollect.has(tag)) {
206
+ continue;
207
+ }
190
208
  if (!conformance) {
191
209
  throw new import_general.ImplementationError(
192
210
  `Conformance filtering invoked on ${member} which does not support conformance`
@@ -195,7 +213,7 @@ function filterWithConformance(parent, members, features, supportedFeatures, con
195
213
  if (conformantOnly && !conformance.applicabilityOf(features, supportedFeatures)) {
196
214
  continue;
197
215
  }
198
- const other = selectedMembers[member.name];
216
+ const other = selectedMembers[tag][member.name];
199
217
  if (other !== void 0) {
200
218
  if (!conformantOnly && !conformance.applicabilityOf(features, supportedFeatures)) {
201
219
  continue;
@@ -213,11 +231,19 @@ function filterWithConformance(parent, members, features, supportedFeatures, con
213
231
  );
214
232
  }
215
233
  }
216
- selectedMembers[member.name] = member;
234
+ selectedMembers[tag][member.name] = member;
235
+ }
236
+ for (const tag in selectedMembers) {
237
+ const tagResult = Object.values(selectedMembers[tag]);
238
+ if (tagResult.length) {
239
+ result.push(...tagResult);
240
+ if (cached) {
241
+ cached.set(tag, new Set(tagResult));
242
+ }
243
+ }
217
244
  }
218
- const result = Object.values(selectedMembers);
219
- if (cache2) {
220
- cache2.set(parent, result);
245
+ if (cache2 && cached) {
246
+ cache2.set(parent, cached);
221
247
  }
222
248
  return result;
223
249
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/logic/Scope.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["options", "Scope", "cache"]
6
6
  }
@@ -17,11 +17,9 @@ export declare enum AccessLevel {
17
17
  Administer = 5
18
18
  }
19
19
  /**
20
- * An operational representation of "access" as defined by the Matter
21
- * specification.
20
+ * An operational representation of "access" as defined by the Matter specification.
22
21
  *
23
- * "Access" controls the operations a remote party may perform on a data field
24
- * or cluster element.
22
+ * "Access" controls the operations a remote party may perform on a data field or cluster element.
25
23
  */
26
24
  export declare class Access extends Aspect<Access.Definition> implements Access.Ast {
27
25
  rw?: Access.Rw;
@@ -35,19 +33,16 @@ export declare class Access extends Aspect<Access.Definition> implements Access.
35
33
  get fabricSensitive(): boolean;
36
34
  get empty(): boolean;
37
35
  /**
38
- * Determine whether this access is fully specified. This means we know
39
- * whether reads and/or writes are allowed and if so the required access
40
- * levels.
36
+ * Determine whether this access is fully specified. This means we know whether reads and/or writes are allowed and
37
+ * if so the required access levels.
41
38
  */
42
39
  get complete(): boolean;
43
40
  /**
44
- * Initialize from an Access.Definition or the access control DSL defined
45
- * by the Matter Specification.
41
+ * Initialize from an Access.Definition or the access control DSL defined by the Matter Specification.
46
42
  */
47
43
  constructor(definition: string | Access.Definition);
48
44
  /**
49
- * Parses standard Matter access syntax into an AccessFlag set. Extremely
50
- * lenient.
45
+ * Parses standard Matter access syntax into an AccessFlag set. Extremely lenient.
51
46
  */
52
47
  static parse(access: Access, definition: string): Access.Flags;
53
48
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Access.d.ts","sourceRoot":"","sources":["../../../src/aspects/Access.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Access.d.ts","sourceRoot":"","sources":["../../../src/aspects/Access.ts"],"names":[],"mappings":"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"}
@@ -30,16 +30,14 @@ class Access extends Aspect {
30
30
  return (!this.rw || this.rw === Access.Rw.Read) && !this.fabric && !this.readPriv && !this.writePriv && !this.timed;
31
31
  }
32
32
  /**
33
- * Determine whether this access is fully specified. This means we know
34
- * whether reads and/or writes are allowed and if so the required access
35
- * levels.
33
+ * Determine whether this access is fully specified. This means we know whether reads and/or writes are allowed and
34
+ * if so the required access levels.
36
35
  */
37
36
  get complete() {
38
- return this.rw !== void 0 && (!this.readable || this.rw !== void 0) && (!this.writable || this.rw !== void 0);
37
+ return this.rw !== void 0 && (!this.readable || this.readPriv !== void 0) && (!this.writable || this.writePriv !== void 0);
39
38
  }
40
39
  /**
41
- * Initialize from an Access.Definition or the access control DSL defined
42
- * by the Matter Specification.
40
+ * Initialize from an Access.Definition or the access control DSL defined by the Matter Specification.
43
41
  */
44
42
  constructor(definition) {
45
43
  super(definition);
@@ -53,8 +51,7 @@ class Access extends Aspect {
53
51
  this.freeze();
54
52
  }
55
53
  /**
56
- * Parses standard Matter access syntax into an AccessFlag set. Extremely
57
- * lenient.
54
+ * Parses standard Matter access syntax into an AccessFlag set. Extremely lenient.
58
55
  */
59
56
  static parse(access, definition) {
60
57
  definition = definition.toUpperCase();
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/aspects/Access.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["AccessLevel", "Access", "Rw", "Fabric", "Privilege", "PrivilegeName", "Timed"]
6
6
  }
@@ -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;AAOpF;;;;;;;;;;;;;;;;;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,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;CAC5F;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,GAAE,KAAK,CAAC,YAAiB,SAkHrE;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"}
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;AAOpF;;;;;;;;;;;;;;;;;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,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;CAC5F;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,GAAE,KAAK,CAAC,YAAiB,SAmHrE;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"}
@@ -90,6 +90,7 @@ function Scope(subject, options = {}) {
90
90
  }
91
91
  return filterWithConformance(
92
92
  parent,
93
+ tags,
93
94
  allMembers,
94
95
  featureNames,
95
96
  supportedFeatures,
@@ -156,14 +157,31 @@ function injectGlobalAttributes(scope, members) {
156
157
  }
157
158
  }
158
159
  }
159
- function filterWithConformance(parent, members, features, supportedFeatures, conformantOnly, cache2) {
160
- const cached = cache2?.get(parent);
161
- if (cached) {
162
- return cached;
160
+ function filterWithConformance(parent, tags, members, features, supportedFeatures, conformantOnly, cache2) {
161
+ const tagsToCollect = new Set(tags);
162
+ const result = Array();
163
+ const cached = cache2 ? cache2.get(parent) ?? /* @__PURE__ */ new Map() : void 0;
164
+ if (cache2 && cached) {
165
+ for (const tag of tagsToCollect) {
166
+ const cachedMembers = cached.get(tag);
167
+ if (cachedMembers) {
168
+ result.push(...cachedMembers);
169
+ tagsToCollect.delete(tag);
170
+ }
171
+ }
172
+ if (tagsToCollect.size === 0) {
173
+ return result;
174
+ }
163
175
  }
164
176
  const selectedMembers = {};
177
+ for (const tag of tagsToCollect) {
178
+ selectedMembers[tag] = {};
179
+ }
165
180
  for (const member of members) {
166
- const { conformance } = member;
181
+ const { conformance, tag } = member;
182
+ if (!tagsToCollect.has(tag)) {
183
+ continue;
184
+ }
167
185
  if (!conformance) {
168
186
  throw new ImplementationError(
169
187
  `Conformance filtering invoked on ${member} which does not support conformance`
@@ -172,7 +190,7 @@ function filterWithConformance(parent, members, features, supportedFeatures, con
172
190
  if (conformantOnly && !conformance.applicabilityOf(features, supportedFeatures)) {
173
191
  continue;
174
192
  }
175
- const other = selectedMembers[member.name];
193
+ const other = selectedMembers[tag][member.name];
176
194
  if (other !== void 0) {
177
195
  if (!conformantOnly && !conformance.applicabilityOf(features, supportedFeatures)) {
178
196
  continue;
@@ -190,11 +208,19 @@ function filterWithConformance(parent, members, features, supportedFeatures, con
190
208
  );
191
209
  }
192
210
  }
193
- selectedMembers[member.name] = member;
211
+ selectedMembers[tag][member.name] = member;
212
+ }
213
+ for (const tag in selectedMembers) {
214
+ const tagResult = Object.values(selectedMembers[tag]);
215
+ if (tagResult.length) {
216
+ result.push(...tagResult);
217
+ if (cached) {
218
+ cached.set(tag, new Set(tagResult));
219
+ }
220
+ }
194
221
  }
195
- const result = Object.values(selectedMembers);
196
- if (cache2) {
197
- cache2.set(parent, result);
222
+ if (cache2 && cached) {
223
+ cache2.set(parent, cached);
198
224
  }
199
225
  return result;
200
226
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/logic/Scope.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["options", "Scope", "cache"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/model",
3
- "version": "0.13.1-alpha.0-20250509-28e1567e1",
3
+ "version": "0.13.1-alpha.0-20250515-a4c61c546",
4
4
  "description": "Matter data model",
5
5
  "keywords": [
6
6
  "iot",
@@ -33,11 +33,11 @@
33
33
  "embed-examples": "embedme **/README.md"
34
34
  },
35
35
  "dependencies": {
36
- "@matter/general": "0.13.1-alpha.0-20250509-28e1567e1"
36
+ "@matter/general": "0.13.1-alpha.0-20250515-a4c61c546"
37
37
  },
38
38
  "devDependencies": {
39
- "@matter/testing": "0.13.1-alpha.0-20250509-28e1567e1",
40
- "@matter/tools": "0.13.1-alpha.0-20250509-28e1567e1"
39
+ "@matter/testing": "0.13.1-alpha.0-20250515-a4c61c546",
40
+ "@matter/tools": "0.13.1-alpha.0-20250515-a4c61c546"
41
41
  },
42
42
  "files": [
43
43
  "dist/**/*",
@@ -21,11 +21,9 @@ export enum AccessLevel {
21
21
  }
22
22
 
23
23
  /**
24
- * An operational representation of "access" as defined by the Matter
25
- * specification.
24
+ * An operational representation of "access" as defined by the Matter specification.
26
25
  *
27
- * "Access" controls the operations a remote party may perform on a data field
28
- * or cluster element.
26
+ * "Access" controls the operations a remote party may perform on a data field or cluster element.
29
27
  */
30
28
  export class Access extends Aspect<Access.Definition> implements Access.Ast {
31
29
  declare rw?: Access.Rw;
@@ -57,21 +55,19 @@ export class Access extends Aspect<Access.Definition> implements Access.Ast {
57
55
  }
58
56
 
59
57
  /**
60
- * Determine whether this access is fully specified. This means we know
61
- * whether reads and/or writes are allowed and if so the required access
62
- * levels.
58
+ * Determine whether this access is fully specified. This means we know whether reads and/or writes are allowed and
59
+ * if so the required access levels.
63
60
  */
64
61
  get complete() {
65
62
  return (
66
63
  this.rw !== undefined &&
67
- (!this.readable || this.rw !== undefined) &&
68
- (!this.writable || this.rw !== undefined)
64
+ (!this.readable || this.readPriv !== undefined) &&
65
+ (!this.writable || this.writePriv !== undefined)
69
66
  );
70
67
  }
71
68
 
72
69
  /**
73
- * Initialize from an Access.Definition or the access control DSL defined
74
- * by the Matter Specification.
70
+ * Initialize from an Access.Definition or the access control DSL defined by the Matter Specification.
75
71
  */
76
72
  constructor(definition: string | Access.Definition) {
77
73
  super(definition);
@@ -88,8 +84,7 @@ export class Access extends Aspect<Access.Definition> implements Access.Ast {
88
84
  }
89
85
 
90
86
  /**
91
- * Parses standard Matter access syntax into an AccessFlag set. Extremely
92
- * lenient.
87
+ * Parses standard Matter access syntax into an AccessFlag set. Extremely lenient.
93
88
  */
94
89
  static parse(access: Access, definition: string) {
95
90
  definition = definition.toUpperCase();
@@ -132,8 +127,7 @@ export class Access extends Aspect<Access.Definition> implements Access.Ast {
132
127
  break;
133
128
 
134
129
  case "[":
135
- // Optional write syntax. Note only R[W] is legal but we
136
- // allow for bare [W]
130
+ // Optional write syntax. Note only R[W] is legal but we allow for bare [W]
137
131
  if (i < definition.length - 2 && definition[i + 1] === "W" && definition[i + 2] === "]") {
138
132
  flags.push(Access.Rw.ReadWriteOption);
139
133
  i += 2;
@@ -141,8 +135,7 @@ export class Access extends Aspect<Access.Definition> implements Access.Ast {
141
135
  break;
142
136
 
143
137
  case "*":
144
- // Deprecated syntax, again allow for *W when only R*W is
145
- // legal
138
+ // Deprecated syntax, again allow for *W when only R*W is legal
146
139
  if (i < definition.length - 1 && definition[i + 1] === "W") {
147
140
  flags.push(Access.Rw.ReadWriteOption);
148
141
  i++;
@@ -87,8 +87,8 @@ export function Scope(subject: Model, options: Scope.ScopeOptions = {}) {
87
87
 
88
88
  const useCache = options.forceCache || Object.isFrozen(owner);
89
89
 
90
- let deconflictedMemberCache: Map<Model, Model[]> | undefined;
91
- let conformantMemberCache: Map<Model, Model[]> | undefined;
90
+ let deconflictedMemberCache: Map<Model, Map<ElementTag, Set<Model>>> | undefined;
91
+ let conformantMemberCache: Map<Model, Map<ElementTag, Set<Model>>> | undefined;
92
92
 
93
93
  let { featureNames, supportedFeatures } = owner as ClusterModel;
94
94
  if (!featureNames) {
@@ -171,6 +171,7 @@ export function Scope(subject: Model, options: Scope.ScopeOptions = {}) {
171
171
 
172
172
  return filterWithConformance(
173
173
  parent,
174
+ tags,
174
175
  allMembers,
175
176
  featureNames,
176
177
  supportedFeatures,
@@ -343,20 +344,39 @@ function injectGlobalAttributes(scope: Model, members: Model[]) {
343
344
  */
344
345
  function filterWithConformance(
345
346
  parent: Model,
347
+ tags: Set<ElementTag>,
346
348
  members: Model[],
347
349
  features: FeatureSet,
348
350
  supportedFeatures: FeatureSet,
349
351
  conformantOnly: boolean,
350
- cache?: Map<Model, Model[]>,
352
+ cache?: Map<Model, Map<ElementTag, Set<Model>>>,
351
353
  ) {
352
- const cached = cache?.get(parent);
353
- if (cached) {
354
- return cached;
354
+ const tagsToCollect = new Set<ElementTag>(tags);
355
+ const result = Array<Model>();
356
+ const cached = cache ? (cache.get(parent) ?? new Map()) : undefined;
357
+
358
+ if (cache && cached) {
359
+ for (const tag of tagsToCollect) {
360
+ const cachedMembers = cached.get(tag);
361
+ if (cachedMembers) {
362
+ result.push(...cachedMembers);
363
+ tagsToCollect.delete(tag);
364
+ }
365
+ }
366
+ if (tagsToCollect.size === 0) {
367
+ return result;
368
+ }
355
369
  }
356
370
 
357
- const selectedMembers = {} as Record<string, Model>;
371
+ const selectedMembers = {} as Record<string, Record<string, Model>>;
372
+ for (const tag of tagsToCollect) {
373
+ selectedMembers[tag] = {};
374
+ }
358
375
  for (const member of members) {
359
- const { conformance } = member as ValueModel;
376
+ const { conformance, tag } = member as ValueModel;
377
+ if (!tagsToCollect.has(tag)) {
378
+ continue; // Entry belongs to a tag likely already in the result because was cached
379
+ }
360
380
 
361
381
  if (!conformance) {
362
382
  throw new ImplementationError(
@@ -368,7 +388,7 @@ function filterWithConformance(
368
388
  continue;
369
389
  }
370
390
 
371
- const other = selectedMembers[member.name];
391
+ const other = selectedMembers[tag][member.name];
372
392
  if (other !== undefined) {
373
393
  if (!conformantOnly && !conformance.applicabilityOf(features, supportedFeatures)) {
374
394
  continue;
@@ -391,13 +411,20 @@ function filterWithConformance(
391
411
  // This member takes precedence and will overwrite below
392
412
  }
393
413
 
394
- selectedMembers[member.name] = member;
414
+ selectedMembers[tag][member.name] = member;
395
415
  }
396
416
 
397
- const result = Object.values(selectedMembers);
398
-
399
- if (cache) {
400
- cache.set(parent, result);
417
+ for (const tag in selectedMembers) {
418
+ const tagResult = Object.values(selectedMembers[tag]);
419
+ if (tagResult.length) {
420
+ result.push(...tagResult);
421
+ if (cached) {
422
+ cached.set(tag as ElementTag, new Set(tagResult));
423
+ }
424
+ }
425
+ }
426
+ if (cache && cached) {
427
+ cache.set(parent, cached);
401
428
  }
402
429
 
403
430
  return result;