@matter/model 0.13.1-alpha.0-20250511-74ef153aa → 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.
- package/dist/cjs/aspects/Access.d.ts +6 -11
- package/dist/cjs/aspects/Access.d.ts.map +1 -1
- package/dist/cjs/aspects/Access.js +5 -8
- package/dist/cjs/aspects/Access.js.map +1 -1
- package/dist/esm/aspects/Access.d.ts +6 -11
- package/dist/esm/aspects/Access.d.ts.map +1 -1
- package/dist/esm/aspects/Access.js +5 -8
- package/dist/esm/aspects/Access.js.map +1 -1
- package/package.json +4 -4
- package/src/aspects/Access.ts +10 -17
|
@@ -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
|
-
*
|
|
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":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;GAIG;AACH,oBAAY,WAAW;IACnB,IAAI,IAAI;IACR,SAAS,IAAI;IACb,OAAO,IAAI;IACX,MAAM,IAAI;IACV,UAAU,IAAI;CACjB;AAED
|
|
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
|
-
*
|
|
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.
|
|
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": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAyB;AACzB,oBAAuB;AAPvB;AAAA;AAAA;AAAA;AAAA;AAcO,IAAK,cAAL,kBAAKA,iBAAL;AACH,EAAAA,0BAAA,UAAO,KAAP;AACA,EAAAA,0BAAA,eAAY,KAAZ;AACA,EAAAA,0BAAA,aAAU,KAAV;AACA,EAAAA,0BAAA,YAAS,KAAT;AACA,EAAAA,0BAAA,gBAAa,KAAb;AALQ,SAAAA;AAAA,GAAA;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["AccessLevel", "Access", "Rw", "Fabric", "Privilege", "PrivilegeName", "Timed"]
|
|
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
|
-
*
|
|
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":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;GAIG;AACH,oBAAY,WAAW;IACnB,IAAI,IAAI;IACR,SAAS,IAAI;IACb,OAAO,IAAI;IACX,MAAM,IAAI;IACV,UAAU,IAAI;CACjB;AAED
|
|
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
|
-
*
|
|
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.
|
|
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": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,gBAAgB;AACzB,SAAS,cAAc;AAOhB,IAAK,cAAL,kBAAKA,iBAAL;AACH,EAAAA,0BAAA,UAAO,KAAP;AACA,EAAAA,0BAAA,eAAY,KAAZ;AACA,EAAAA,0BAAA,aAAU,KAAV;AACA,EAAAA,0BAAA,YAAS,KAAT;AACA,EAAAA,0BAAA,gBAAa,KAAb;AALQ,SAAAA;AAAA,GAAA;
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,gBAAgB;AACzB,SAAS,cAAc;AAOhB,IAAK,cAAL,kBAAKA,iBAAL;AACH,EAAAA,0BAAA,UAAO,KAAP;AACA,EAAAA,0BAAA,eAAY,KAAZ;AACA,EAAAA,0BAAA,aAAU,KAAV;AACA,EAAAA,0BAAA,YAAS,KAAT;AACA,EAAAA,0BAAA,gBAAa,KAAb;AALQ,SAAAA;AAAA,GAAA;AAaL,MAAM,eAAe,OAAgD;AAAA,EAOxE,IAAI,WAAW;AACX,WAAO,CAAC,KAAK,MAAM,KAAK,OAAO,OAAO,GAAG;AAAA,EAC7C;AAAA,EAEA,IAAI,WAAW;AACX,WAAO,CAAC,CAAC,KAAK,MAAM,KAAK,OAAO,OAAO,GAAG;AAAA,EAC9C;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,KAAK,WAAW,OAAO,OAAO;AAAA,EACzC;AAAA,EAEA,IAAI,kBAAkB;AAClB,WAAO,KAAK,WAAW,OAAO,OAAO;AAAA,EACzC;AAAA,EAEA,IAAa,QAAQ;AACjB,YACK,CAAC,KAAK,MAAM,KAAK,OAAO,OAAO,GAAG,SAAS,CAAC,KAAK,UAAU,CAAC,KAAK,YAAY,CAAC,KAAK,aAAa,CAAC,KAAK;AAAA,EAE/G;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,IAAI,WAAW;AACX,WACI,KAAK,OAAO,WACX,CAAC,KAAK,YAAY,KAAK,aAAa,YACpC,CAAC,KAAK,YAAY,KAAK,cAAc;AAAA,EAE9C;AAAA;AAAA;AAAA;AAAA,EAKA,YAAY,YAAwC;AAChD,UAAM,UAAU;AAEhB,QAAI,MAAM,QAAQ,UAAU,GAAG;AAC3B,WAAK,IAAI,WAAW,KAAK,CAAC;AAAA,IAC9B,WAAW,SAAS,UAAU,GAAG;AAC7B,aAAO,OAAO,MAAM,UAAU;AAAA,IAClC,WAAW,eAAe,UAAa,eAAe,MAAM;AACxD,WAAK,IAAI,MAAM,KAAK,OAAO,MAAM,MAAM,UAAU,CAAC,CAAC;AAAA,IACvD;AAEA,SAAK,OAAO;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,MAAM,QAAgB,YAAoB;AAC7C,iBAAa,WAAW,YAAY;AACpC,QAAI,eAAe,WAAW;AAC1B,aAAO,CAAC;AAAA,IACZ;AAEA,UAAM,QAAQ,CAAC;AACf,aAAS,IAAI,GAAG,IAAI,WAAW,QAAQ,KAAK;AACxC,cAAQ,WAAW,CAAC,GAAG;AAAA,QACnB,KAAK;AACD,gBAAM,KAAK,OAAO,GAAG,IAAI;AACzB;AAAA,QACJ,KAAK;AACD,gBAAM,KAAK,OAAO,OAAO,OAAO;AAChC;AAAA,QACJ,KAAK;AACD,gBAAM,KAAK,OAAO,OAAO,MAAM;AAC/B;AAAA,QACJ,KAAK;AACD,gBAAM,KAAK,OAAO,OAAO,SAAS;AAClC;AAAA,QACJ,KAAK;AACD,gBAAM,KAAK,OAAO,UAAU,IAAI;AAChC;AAAA,QACJ,KAAK;AACD,gBAAM,KAAK,OAAO,UAAU,OAAO;AACnC;AAAA,QACJ,KAAK;AACD,gBAAM,KAAK,OAAO,UAAU,MAAM;AAClC;AAAA,QACJ,KAAK;AACD,gBAAM,KAAK,OAAO,UAAU,UAAU;AACtC;AAAA,QACJ,KAAK;AACD,gBAAM,KAAK,OAAO,MAAM,QAAQ;AAChC;AAAA,QACJ,KAAK;AACD,gBAAM,KAAK,OAAO,GAAG,KAAK;AAC1B;AAAA,QAEJ,KAAK;AAED,cAAI,IAAI,WAAW,SAAS,KAAK,WAAW,IAAI,CAAC,MAAM,OAAO,WAAW,IAAI,CAAC,MAAM,KAAK;AACrF,kBAAM,KAAK,OAAO,GAAG,eAAe;AACpC,iBAAK;AAAA,UACT;AACA;AAAA,QAEJ,KAAK;AAED,cAAI,IAAI,WAAW,SAAS,KAAK,WAAW,IAAI,CAAC,MAAM,KAAK;AACxD,kBAAM,KAAK,OAAO,GAAG,eAAe;AACpC;AAAA,UACJ;AACA;AAAA,QAEJ,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACD;AAAA,QAEJ;AACI,iBAAO,MAAM,uBAAuB,iBAAiB,WAAW,CAAC,CAAC,GAAG;AACrE;AACA;AAAA,MACR;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAKS,WAAW;AAChB,UAAM,QAAQ,CAAC;AAEf,QAAI,KAAK,OAAO,QAAW;AACvB,YAAM,KAAK,KAAK,EAAE;AAAA,IACtB;AAEA,QAAI,KAAK,WAAW,QAAW;AAC3B,YAAM,KAAK,KAAK,MAAM;AAAA,IAC1B;AAEA,QAAI,KAAK,aAAa,KAAK,WAAW;AAClC,UAAI,KAAK,aAAa,QAAW;AAC7B,cAAM,KAAK,KAAK,QAAQ;AAAA,MAC5B;AAAA,IACJ,WAAW,KAAK,UAAU;AACtB,UAAI,KAAK,WAAW;AAChB,cAAM,KAAK,GAAG,KAAK,QAAQ,GAAG,KAAK,SAAS,EAAE;AAAA,MAClD,OAAO;AACH,cAAM,KAAK,KAAK,QAAQ;AAAA,MAC5B;AAAA,IACJ,WAAW,KAAK,WAAW;AACvB,YAAM,KAAK,KAAK,SAAS;AAAA,IAC7B;AAEA,QAAI,KAAK,OAAO;AACZ,YAAM,KAAK,OAAO,MAAM,QAAQ;AAAA,IACpC;AAEA,WAAO,MAAM,KAAK,GAAG;AAAA,EACzB;AAAA,EAEQ,IAAI,OAAqB;AAC7B,UAAM,QAAQ,OAAK;AACf,cAAQ,GAAG;AAAA,QACP,KAAK,OAAO,GAAG;AACX,cAAI,CAAC,KAAK,IAAI;AACV,iBAAK,KAAK;AAAA,UACd;AACA;AAAA,QAEJ,KAAK,OAAO,GAAG;AACX,cAAI,CAAC,KAAK,IAAI;AACV,iBAAK,KAAK;AAAA,UACd,WAAW,KAAK,OAAO,OAAO,GAAG,MAAM;AACnC,iBAAK,KAAK,OAAO,GAAG;AAAA,UACxB;AACA;AAAA,QAEJ,KAAK,OAAO,GAAG;AACX,cAAI,KAAK,OAAO,OAAO,GAAG,iBAAiB;AACvC,iBAAK,KAAK;AAAA,UACd;AACA;AAAA,QAEJ,KAAK,OAAO,GAAG;AACX,eAAK,KAAK;AACV;AAAA,QAEJ,KAAK,OAAO,OAAO;AACf,eAAK,SAAS,OAAO,OAAO;AAC5B;AAAA,QAEJ,KAAK,OAAO,OAAO;AACf,cAAI,KAAK,WAAW,OAAO,OAAO,WAAW;AACzC,iBAAK,SAAS;AAAA,UAClB;AACA;AAAA,QAEJ,KAAK,OAAO,OAAO;AACf,eAAK,SAAS;AACd;AAAA,QAEJ,KAAK,OAAO,UAAU;AAClB,eAAK,WAAW;AAChB;AAAA,QAEJ,KAAK,OAAO,UAAU;AAAA,QACtB,KAAK,OAAO,UAAU;AAAA,QACtB,KAAK,OAAO,UAAU;AAClB,cAAI,CAAC,KAAK,YAAY,OAAO,eAAe,CAAC,IAAI,OAAO,eAAe,KAAK,QAAQ,GAAG;AACnF,iBAAK,WAAW;AAAA,UACpB;AACA,cAAI,CAAC,KAAK,aAAa,OAAO,eAAe,CAAC,IAAI,OAAO,eAAe,KAAK,SAAS,GAAG;AACrF,iBAAK,YAAY;AAAA,UACrB;AACA;AAAA,QAEJ,KAAK,OAAO,MAAM;AACd,eAAK,QAAQ;AACb;AAAA,MACR;AAAA,IACJ,CAAC;AAAA,EACL;AACJ;AAAA,CAEO,CAAUC,YAAV;AAYI,MAAK;AAAL,IAAKC,QAAL;AAIH,IAAAA,IAAA,UAAO;AAKP,IAAAA,IAAA,WAAQ;AAKR,IAAAA,IAAA,eAAY;AAKZ,IAAAA,IAAA,qBAAkB;AAAA,KAnBV,KAAAD,QAAA,OAAAA,QAAA;AAyBL,MAAK;AAAL,IAAKE,YAAL;AAIH,IAAAA,QAAA,aAAU;AAKV,IAAAA,QAAA,YAAS;AAKT,IAAAA,QAAA,eAAY;AAAA,KAdJ,SAAAF,QAAA,WAAAA,QAAA;AAoBL,MAAK;AAAL,IAAKG,eAAL;AAIH,IAAAA,WAAA,UAAO;AAKP,IAAAA,WAAA,aAAU;AAKV,IAAAA,WAAA,YAAS;AAKT,IAAAA,WAAA,gBAAa;AAAA,KAnBL,YAAAH,QAAA,cAAAA,QAAA;AAyBL,MAAK;AAAL,IAAKI,mBAAL;AACH,IAAAA,eAAA,OAAI;AACJ,IAAAA,eAAA,OAAI;AACJ,IAAAA,eAAA,OAAI;AACJ,IAAAA,eAAA,OAAI;AAAA,KAJI,gBAAAJ,QAAA,kBAAAA,QAAA;AAUL,EAAMA,QAAA,iBAAiB;AAAA,IAC1B,GAAG;AAAA;AAAA,IAEH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACP;AAKO,MAAK;AAAL,IAAKK,WAAL;AAIH,IAAAA,OAAA,cAAW;AAAA,KAJH,QAAAL,QAAA,UAAAA,QAAA;AAiBL,EAAMA,QAAA,IAAI;AACV,EAAMA,QAAA,IAAI;AACV,EAAMA,QAAA,KAAK;AACX,EAAMA,QAAA,MAAM;AAEZ,EAAMA,QAAA,IAAI;AACV,EAAMA,QAAA,IAAI;AACV,EAAMA,QAAA,IAAI;AAEV,EAAMA,QAAA,IAAI;AACV,EAAMA,QAAA,IAAI,CAAC,iBAAiB;AAC5B,EAAMA,QAAA,IAAI,CAAC,gBAAgB;AAC3B,EAAMA,QAAA,IAAI,CAAC,oBAAoB;AAC/B,EAAMA,QAAA,KAAK,CAAC,gBAAgB,iBAAiB;AAC7C,EAAMA,QAAA,KAAK,CAAC,gBAAgB,gBAAgB;AAC5C,EAAMA,QAAA,KAAK,CAAC,gBAAgB,oBAAoB;AAChD,EAAMA,QAAA,KAAK,CAAC,mBAAmB,gBAAgB;AAC/C,EAAMA,QAAA,KAAK,CAAC,mBAAmB,oBAAoB;AACnD,EAAMA,QAAA,KAAK,CAAC,kBAAkB,oBAAoB;AAElD,EAAMA,QAAA,IAAI;AAAA,GA5IJ;AAAA,CA2KV,CAAUA,YAAV;AACI,EAAMA,QAAA,UAAU,IAAIA,QAAO;AAAA,IAC9B,IAAIA,QAAO;AAAA,IACX,UAAU;AAAA,IACV,WAAW;AAAA,EACf,CAAC;AAAA,GALY;",
|
|
5
5
|
"names": ["AccessLevel", "Access", "Rw", "Fabric", "Privilege", "PrivilegeName", "Timed"]
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@matter/model",
|
|
3
|
-
"version": "0.13.1-alpha.0-
|
|
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-
|
|
36
|
+
"@matter/general": "0.13.1-alpha.0-20250515-a4c61c546"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@matter/testing": "0.13.1-alpha.0-
|
|
40
|
-
"@matter/tools": "0.13.1-alpha.0-
|
|
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/**/*",
|
package/src/aspects/Access.ts
CHANGED
|
@@ -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
|
-
*
|
|
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.
|
|
68
|
-
(!this.writable || this.
|
|
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++;
|