@matter/protocol 0.12.4-alpha.0-20250211-56b2c53a0 → 0.12.4-alpha.0-20250213-1187f81eb
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/action/Interactable.d.ts +36 -0
- package/dist/cjs/action/Interactable.d.ts.map +1 -0
- package/dist/cjs/action/Interactable.js +22 -0
- package/dist/cjs/action/Interactable.js.map +6 -0
- package/dist/cjs/action/Val.d.ts +94 -0
- package/dist/cjs/action/Val.d.ts.map +1 -0
- package/dist/cjs/action/Val.js +33 -0
- package/dist/cjs/action/Val.js.map +6 -0
- package/dist/cjs/action/errors.d.ts +69 -0
- package/dist/cjs/action/errors.d.ts.map +1 -0
- package/dist/cjs/action/errors.js +108 -0
- package/dist/cjs/action/errors.js.map +6 -0
- package/dist/cjs/action/index.d.ts +13 -0
- package/dist/cjs/action/index.d.ts.map +1 -0
- package/dist/cjs/action/index.js +30 -0
- package/dist/cjs/action/index.js.map +6 -0
- package/dist/cjs/action/protocols.d.ts +118 -0
- package/dist/cjs/action/protocols.d.ts.map +1 -0
- package/dist/cjs/action/protocols.js +22 -0
- package/dist/cjs/action/protocols.js.map +6 -0
- package/dist/cjs/action/request/Invoke.d.ts +35 -0
- package/dist/cjs/action/request/Invoke.d.ts.map +1 -0
- package/dist/cjs/action/request/Invoke.js +80 -0
- package/dist/cjs/action/request/Invoke.js.map +6 -0
- package/dist/cjs/action/request/MalformedRequestError.d.ts +14 -0
- package/dist/cjs/action/request/MalformedRequestError.d.ts.map +1 -0
- package/dist/cjs/action/request/MalformedRequestError.js +32 -0
- package/dist/cjs/action/request/MalformedRequestError.js.map +6 -0
- package/dist/cjs/action/request/Read.d.ts +141 -0
- package/dist/cjs/action/request/Read.d.ts.map +1 -0
- package/dist/cjs/action/request/Read.js +173 -0
- package/dist/cjs/action/request/Read.js.map +6 -0
- package/dist/cjs/action/request/Specifier.d.ts +82 -0
- package/dist/cjs/action/request/Specifier.d.ts.map +1 -0
- package/dist/cjs/action/request/Specifier.js +88 -0
- package/dist/cjs/action/request/Specifier.js.map +6 -0
- package/dist/cjs/action/request/Subscribe.d.ts +26 -0
- package/dist/cjs/action/request/Subscribe.d.ts.map +1 -0
- package/dist/cjs/action/request/Subscribe.js +50 -0
- package/dist/cjs/action/request/Subscribe.js.map +6 -0
- package/dist/cjs/action/request/Write.d.ts +10 -0
- package/dist/cjs/action/request/Write.d.ts.map +1 -0
- package/dist/cjs/action/request/Write.js +22 -0
- package/dist/cjs/action/request/Write.js.map +6 -0
- package/dist/cjs/action/request/index.d.ts +11 -0
- package/dist/cjs/action/request/index.d.ts.map +1 -0
- package/dist/cjs/action/request/index.js +28 -0
- package/dist/cjs/action/request/index.js.map +6 -0
- package/dist/cjs/action/response/InvokeResult.d.ts +15 -0
- package/dist/cjs/action/response/InvokeResult.d.ts.map +1 -0
- package/dist/cjs/action/response/InvokeResult.js +22 -0
- package/dist/cjs/action/response/InvokeResult.js.map +6 -0
- package/dist/cjs/action/response/ReadResult.d.ts +63 -0
- package/dist/cjs/action/response/ReadResult.d.ts.map +1 -0
- package/dist/cjs/action/response/ReadResult.js +22 -0
- package/dist/cjs/action/response/ReadResult.js.map +6 -0
- package/dist/cjs/action/response/SubscribeResult.d.ts +13 -0
- package/dist/cjs/action/response/SubscribeResult.d.ts.map +1 -0
- package/dist/cjs/action/response/SubscribeResult.js +22 -0
- package/dist/cjs/action/response/SubscribeResult.js.map +6 -0
- package/dist/cjs/action/response/WriteResult.d.ts +12 -0
- package/dist/cjs/action/response/WriteResult.d.ts.map +1 -0
- package/dist/cjs/action/response/WriteResult.js +22 -0
- package/dist/cjs/action/response/WriteResult.js.map +6 -0
- package/dist/cjs/action/response/index.d.ts +10 -0
- package/dist/cjs/action/response/index.d.ts.map +1 -0
- package/dist/cjs/action/response/index.js +27 -0
- package/dist/cjs/action/response/index.js.map +6 -0
- package/dist/cjs/action/server/AccessControl.d.ts +152 -0
- package/dist/cjs/action/server/AccessControl.d.ts.map +1 -0
- package/dist/cjs/action/server/AccessControl.js +287 -0
- package/dist/cjs/action/server/AccessControl.js.map +6 -0
- package/dist/cjs/action/server/AttributeResponse.d.ts +36 -0
- package/dist/cjs/action/server/AttributeResponse.d.ts.map +1 -0
- package/dist/cjs/action/server/AttributeResponse.js +352 -0
- package/dist/cjs/action/server/AttributeResponse.js.map +6 -0
- package/dist/cjs/action/server/ServerInteraction.d.ts +35 -0
- package/dist/cjs/action/server/ServerInteraction.d.ts.map +1 -0
- package/dist/cjs/action/server/ServerInteraction.js +52 -0
- package/dist/cjs/action/server/ServerInteraction.js.map +6 -0
- package/dist/cjs/action/server/index.d.ts +9 -0
- package/dist/cjs/action/server/index.d.ts.map +1 -0
- package/dist/cjs/action/server/index.js +26 -0
- package/dist/cjs/action/server/index.js.map +6 -0
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/interaction/AccessControlManager.d.ts +1 -1
- package/dist/cjs/interaction/AccessControlManager.d.ts.map +1 -1
- package/dist/cjs/interaction/AccessControlManager.js +2 -2
- package/dist/cjs/interaction/AccessControlManager.js.map +1 -1
- package/dist/cjs/interaction/AttributeDataEncoder.d.ts +1 -3
- package/dist/cjs/interaction/AttributeDataEncoder.d.ts.map +1 -1
- package/dist/cjs/interaction/InteractionMessenger.d.ts +5 -5
- package/dist/cjs/interaction/InteractionMessenger.d.ts.map +1 -1
- package/dist/cjs/interaction/InteractionServer.d.ts +1 -1
- package/dist/cjs/interaction/InteractionServer.d.ts.map +1 -1
- package/dist/cjs/interaction/InteractionServer.js +2 -2
- package/dist/cjs/interaction/InteractionServer.js.map +1 -1
- package/dist/cjs/interaction/ServerSubscription.d.ts +2 -2
- package/dist/cjs/interaction/ServerSubscription.d.ts.map +1 -1
- package/dist/cjs/interaction/ServerSubscription.js +0 -1
- package/dist/cjs/interaction/ServerSubscription.js.map +1 -1
- package/dist/cjs/mdns/MdnsScanner.d.ts +2 -2
- package/dist/esm/action/Interactable.d.ts +36 -0
- package/dist/esm/action/Interactable.d.ts.map +1 -0
- package/dist/esm/action/Interactable.js +6 -0
- package/dist/esm/action/Interactable.js.map +6 -0
- package/dist/esm/action/Val.d.ts +94 -0
- package/dist/esm/action/Val.d.ts.map +1 -0
- package/dist/esm/action/Val.js +13 -0
- package/dist/esm/action/Val.js.map +6 -0
- package/dist/esm/action/errors.d.ts +69 -0
- package/dist/esm/action/errors.d.ts.map +1 -0
- package/dist/esm/action/errors.js +88 -0
- package/dist/esm/action/errors.js.map +6 -0
- package/dist/esm/action/index.d.ts +13 -0
- package/dist/esm/action/index.d.ts.map +1 -0
- package/dist/esm/action/index.js +13 -0
- package/dist/esm/action/index.js.map +6 -0
- package/dist/esm/action/protocols.d.ts +118 -0
- package/dist/esm/action/protocols.d.ts.map +1 -0
- package/dist/esm/action/protocols.js +6 -0
- package/dist/esm/action/protocols.js.map +6 -0
- package/dist/esm/action/request/Invoke.d.ts +35 -0
- package/dist/esm/action/request/Invoke.d.ts.map +1 -0
- package/dist/esm/action/request/Invoke.js +60 -0
- package/dist/esm/action/request/Invoke.js.map +6 -0
- package/dist/esm/action/request/MalformedRequestError.d.ts +14 -0
- package/dist/esm/action/request/MalformedRequestError.d.ts.map +1 -0
- package/dist/esm/action/request/MalformedRequestError.js +12 -0
- package/dist/esm/action/request/MalformedRequestError.js.map +6 -0
- package/dist/esm/action/request/Read.d.ts +141 -0
- package/dist/esm/action/request/Read.d.ts.map +1 -0
- package/dist/esm/action/request/Read.js +153 -0
- package/dist/esm/action/request/Read.js.map +6 -0
- package/dist/esm/action/request/Specifier.d.ts +82 -0
- package/dist/esm/action/request/Specifier.d.ts.map +1 -0
- package/dist/esm/action/request/Specifier.js +68 -0
- package/dist/esm/action/request/Specifier.js.map +6 -0
- package/dist/esm/action/request/Subscribe.d.ts +26 -0
- package/dist/esm/action/request/Subscribe.d.ts.map +1 -0
- package/dist/esm/action/request/Subscribe.js +30 -0
- package/dist/esm/action/request/Subscribe.js.map +6 -0
- package/dist/esm/action/request/Write.d.ts +10 -0
- package/dist/esm/action/request/Write.d.ts.map +1 -0
- package/dist/esm/action/request/Write.js +6 -0
- package/dist/esm/action/request/Write.js.map +6 -0
- package/dist/esm/action/request/index.d.ts +11 -0
- package/dist/esm/action/request/index.d.ts.map +1 -0
- package/dist/esm/action/request/index.js +11 -0
- package/dist/esm/action/request/index.js.map +6 -0
- package/dist/esm/action/response/InvokeResult.d.ts +15 -0
- package/dist/esm/action/response/InvokeResult.d.ts.map +1 -0
- package/dist/esm/action/response/InvokeResult.js +6 -0
- package/dist/esm/action/response/InvokeResult.js.map +6 -0
- package/dist/esm/action/response/ReadResult.d.ts +63 -0
- package/dist/esm/action/response/ReadResult.d.ts.map +1 -0
- package/dist/esm/action/response/ReadResult.js +6 -0
- package/dist/esm/action/response/ReadResult.js.map +6 -0
- package/dist/esm/action/response/SubscribeResult.d.ts +13 -0
- package/dist/esm/action/response/SubscribeResult.d.ts.map +1 -0
- package/dist/esm/action/response/SubscribeResult.js +6 -0
- package/dist/esm/action/response/SubscribeResult.js.map +6 -0
- package/dist/esm/action/response/WriteResult.d.ts +12 -0
- package/dist/esm/action/response/WriteResult.d.ts.map +1 -0
- package/dist/esm/action/response/WriteResult.js +6 -0
- package/dist/esm/action/response/WriteResult.js.map +6 -0
- package/dist/esm/action/response/index.d.ts +10 -0
- package/dist/esm/action/response/index.d.ts.map +1 -0
- package/dist/esm/action/response/index.js +10 -0
- package/dist/esm/action/response/index.js.map +6 -0
- package/dist/esm/action/server/AccessControl.d.ts +152 -0
- package/dist/esm/action/server/AccessControl.d.ts.map +1 -0
- package/dist/esm/action/server/AccessControl.js +267 -0
- package/dist/esm/action/server/AccessControl.js.map +6 -0
- package/dist/esm/action/server/AttributeResponse.d.ts +36 -0
- package/dist/esm/action/server/AttributeResponse.d.ts.map +1 -0
- package/dist/esm/action/server/AttributeResponse.js +339 -0
- package/dist/esm/action/server/AttributeResponse.js.map +6 -0
- package/dist/esm/action/server/ServerInteraction.d.ts +35 -0
- package/dist/esm/action/server/ServerInteraction.d.ts.map +1 -0
- package/dist/esm/action/server/ServerInteraction.js +32 -0
- package/dist/esm/action/server/ServerInteraction.js.map +6 -0
- package/dist/esm/action/server/index.d.ts +9 -0
- package/dist/esm/action/server/index.d.ts.map +1 -0
- package/dist/esm/action/server/index.js +9 -0
- package/dist/esm/action/server/index.js.map +6 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/interaction/AccessControlManager.d.ts +1 -1
- package/dist/esm/interaction/AccessControlManager.d.ts.map +1 -1
- package/dist/esm/interaction/AccessControlManager.js +2 -2
- package/dist/esm/interaction/AccessControlManager.js.map +1 -1
- package/dist/esm/interaction/AttributeDataEncoder.d.ts +1 -3
- package/dist/esm/interaction/AttributeDataEncoder.d.ts.map +1 -1
- package/dist/esm/interaction/InteractionMessenger.d.ts +5 -5
- package/dist/esm/interaction/InteractionMessenger.d.ts.map +1 -1
- package/dist/esm/interaction/InteractionServer.d.ts +1 -1
- package/dist/esm/interaction/InteractionServer.d.ts.map +1 -1
- package/dist/esm/interaction/InteractionServer.js +2 -2
- package/dist/esm/interaction/InteractionServer.js.map +1 -1
- package/dist/esm/interaction/ServerSubscription.d.ts +2 -2
- package/dist/esm/interaction/ServerSubscription.d.ts.map +1 -1
- package/dist/esm/interaction/ServerSubscription.js +0 -1
- package/dist/esm/interaction/ServerSubscription.js.map +1 -1
- package/dist/esm/mdns/MdnsScanner.d.ts +2 -2
- package/package.json +6 -6
- package/src/action/Interactable.ts +40 -0
- package/src/action/Val.ts +111 -0
- package/src/action/errors.ts +119 -0
- package/src/action/index.ts +13 -0
- package/src/action/protocols.ts +134 -0
- package/src/action/request/Invoke.ts +93 -0
- package/src/action/request/MalformedRequestError.ts +14 -0
- package/src/action/request/Read.ts +356 -0
- package/src/action/request/Specifier.ts +146 -0
- package/src/action/request/Subscribe.ts +54 -0
- package/src/action/request/Write.ts +13 -0
- package/src/action/request/index.ts +11 -0
- package/src/action/response/InvokeResult.ts +17 -0
- package/src/action/response/ReadResult.ts +89 -0
- package/src/action/response/SubscribeResult.ts +14 -0
- package/src/action/response/WriteResult.ts +13 -0
- package/src/action/response/index.ts +10 -0
- package/src/action/server/AccessControl.ts +494 -0
- package/src/action/server/AttributeResponse.ts +413 -0
- package/src/action/server/ServerInteraction.ts +64 -0
- package/src/action/server/index.ts +9 -0
- package/src/index.ts +1 -0
- package/src/interaction/AccessControlManager.ts +3 -3
- package/src/interaction/InteractionServer.ts +2 -3
- package/src/interaction/ServerSubscription.ts +0 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/interaction/ServerSubscription.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAOA;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OACG;AACP,SAAS,qBAAqB;AAI9B;AAAA,EAEI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAQG;AACP,SAA6B,mCAAmC;AAChE,SAAyB,kCAAkC;AAC3D,SAAS,sBAAsB;AAG/B,SAAS,kCAAkC;AAC3C;AAAA,EAKI;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP,SAAS,oBAA0C;AAEnD,MAAM,SAAS,OAAO,IAAI,oBAAoB;AAYvC,MAAM,iCAAiC,KAAK;AAC5C,MAAM,sCAAsC,IAAI;AAChD,MAAM,iBAAiB;AACvB,MAAM,iCAAiC;AA2BvC,IAAU;AAAA,CAAV,CAAUA,8BAAV;AAMI,WAAS,GAAG,SAA6C;AAC5D,WAAO;AAAA,MACH,oBAAoB,SAAS,sBAAsB;AAAA,MACnD,oBAAoB,KAAK,IAAI,SAAS,sBAAsB,gBAAgB,cAAc;AAAA,MAC1F,4BAA4B,SAAS,8BAA8B;AAAA,IACvE;AAAA,EACJ;AANO,EAAAA,0BAAS;AAAA,GANH;AAuDV,MAAM,2BAA2B,aAAa;AAAA,EACxC;AAAA,EACA;AAAA,EAET,oBAAoB;AAAA,EACpB;AAAA,EACS,kBAAyB,KAAK;AAAA,IAAS,gBAAgB,KAAK,EAAE;AAAA,IAAU;AAAA,IAAI,MACjF,KAAK,mBAAmB;AAAA,EAC5B;AAAA,EACS,+BAA+B,oBAAI,IAAgD;AAAA,EACnF,2BAA2B,oBAAI,IAAiC;AAAA,EAChE,sBAAsB,oBAAI,IAMjC;AAAA,EACO,kBAAkB,oBAAI,IAM7B;AAAA,EACF,wBAAwB;AAAA,EACf;AAAA,EACA;AAAA,EACQ;AAAA,EACA;AAAA,EACA;AAAA,EAET,4BAA4B;AAAA,EAC5B,yBAAyB;AAAA,EACzB,0BAA0B,oBAAI,IAAuB;AAAA,EACrD;AAAA,EAER,YAAY,SAOT;AACC,UAAM,EAAE,IAAI,SAAS,UAAU,kBAAkB,oBAAoB,oBAAoB,IAAI;AAE7F,UAAM,QAAQ,SAAS,IAAI,QAAQ;AACnC,SAAK,WAAW;AAChB,SAAK,aAAa,QAAQ;AAE1B,SAAK,cAAc,KAAK,QAAQ;AAChC,SAAK,qBAAqB,mBAAmB;AAC7C,SAAK,uBAAuB,qBAAqB;AAEjD,UAAM,EAAE,aAAa,aAAa,IAAI,KAAK;AAAA,MACvC,oBAAoB,qBAAqB;AAAA,MACzC,oBAAoB,qBAAqB;AAAA,MACzC,oBAAoB,6BAA6B;AAAA,IACrD;AACA,SAAK,iBAAiB;AACtB,SAAK,kBAAkB;AAEvB,SAAK,eAAe,KAAK;AAAA,MAAS,gBAAgB,KAAK,EAAE;AAAA,MAAW,KAAK;AAAA,MAAiB,MACtF,KAAK,mBAAmB;AAAA,IAC5B;AAAA,EACJ;AAAA,EAEQ,0BACJ,2BACA,2BACA,mCAC6C;AAM7C,UAAM,cAAc,KAAK;AAAA,MACrB,KAAK;AAAA,QACD;AAAA,QACA,KAAK,IAAI,KAAK,oBAAoB,KAAK,IAAI,2BAA2B,KAAK,oBAAoB,CAAC;AAAA,MACpG,IAAI,KAAK,MAAM,oCAAoC,KAAK,OAAO,CAAC;AAAA,MAChE,iCAAiC;AAAA,IACrC;AACA,QAAI,eAAe,KAAK,MAAM,cAAc,CAAC;AAC7C,QAAI,eAAe,KAAQ;AAIvB,qBAAe,KAAK,IAAI,KAAK,oBAAoB,KAAK,MAAM,cAAc,GAAG,CAAC;AAAA,IAClF;AACA,QAAI,eAAe,2BAA2B;AAE1C,aAAO;AAAA,QACH,4CAA4C,YAAY,qCAAqC,WAAW;AAAA,MAC5G;AACA,qBAAe;AAAA,IACnB;AACA,WAAO,EAAE,aAAa,aAAa;AAAA,EACvC;AAAA,EAEQ,wBAAwB;AAC5B,UAAM,gBAAgB,IAAI,MAAyB;AACnD,UAAM,kBAAkB,IAAI,MAAiD;AAC7E,UAAM,mBAAmB,IAAI,IAAY,KAAK,oBAAoB,KAAK,CAAC;AAExE,QAAI,KAAK,SAAS,sBAAsB,QAAW;AAC/C,WAAK,SAAS,kBAAkB,QAAQ,UAAQ;AAC5C,cAAM,aAAa,KAAK,WAAW,cAAc,CAAC,IAAI,CAAC;AAEvD,YAAI,WAAW,WAAW,GAAG;AAEzB,gBAAM,EAAE,YAAY,WAAW,YAAY,IAAI;AAC/C,cAAI,eAAe,UAAa,cAAc,UAAa,gBAAgB,QAAW;AAElF,mBAAO;AAAA,cACH,0BAA0B,KAAK,WAAW;AAAA,gBACtC;AAAA,cACJ,CAAC;AAAA,YACL;AAAA,UACJ,OAAO;AAEH,gBAAI;AACA,mBAAK,WAAW,8BAA8B,YAAY,WAAW,WAAW;AAChF,oBAAM,IAAI;AAAA,gBACN;AAAA,cACJ;AAAA,YACJ,SAAS,GAAG;AACR,kCAAoB,OAAO,CAAC;AAE5B,qBAAO;AAAA,gBACH,0BAA0B,KAAK,WAAW;AAAA,kBACtC;AAAA,gBACJ,CAAC,8BAA8B,EAAE,IAAI;AAAA,cACzC;AAEA,8BAAgB,KAAK,EAAE,MAAM,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAAA,YAC7D;AAAA,UACJ;AACA;AAAA,QACJ;AAEA,mBAAW,QAAQ,CAAC,EAAE,MAAAC,OAAM,UAAU,MAAM;AACxC,2BAAiB,OAAO,kBAAkBA,KAAI,CAAC;AAE/C,gBAAM,4BAA4B,KAAK,oBAAoB,IAAI,kBAAkBA,KAAI,CAAC;AACtF,cAAI,8BAA8B,QAAW;AACzC,kBAAM,EAAE,WAAW,mBAAmB,UAAU,iBAAiB,IAAI;AACrE,gBAAI,sBAAsB,WAAW;AACjC,kBAAI,qBAAqB,QAAW;AAChC,kCAAkB,0BAA0B,gBAAgB;AAAA,cAChE;AACA,mBAAK,oBAAoB,OAAO,kBAAkBA,KAAI,CAAC;AAAA,YAC3D,OAAO;AACH;AAAA,YACJ;AAAA,UACJ;AACA,cAAI,UAAU,gBAAgB;AAG1B,kBAAM,WAAW,CAAC,OAAY,YAC1B,KAAK,wBAAwBA,OAAM,UAAU,QAAQ,SAAS,KAAK;AACvE,sBAAU,uBAAuB,QAAQ;AACzC,iBAAK,oBAAoB,IAAI,kBAAkBA,KAAI,GAAG,EAAE,WAAW,SAAS,CAAC;AAAA,UACjF,OAAO;AACH,iBAAK,oBAAoB,IAAI,kBAAkBA,KAAI,GAAG,EAAE,UAAU,CAAC;AAAA,UACvE;AACA,wBAAc,KAAK,EAAE,MAAAA,OAAM,UAAU,CAAC;AAAA,QAC1C,CAAC;AAAA,MACL,CAAC;AAAA,IACL;AAGA,SAAK,6BAA6B,MAAM,KAAK,iBAAiB,OAAO,CAAC,CAAC;AACvE,WAAO,EAAE,eAAe,gBAAgB;AAAA,EAC5C;AAAA,EAEA,6BAA6B,MAAqB;AAC9C,eAAW,UAAU,MAAM;AACvB,YAAM,4BAA4B,KAAK,oBAAoB,IAAI,MAAM;AACrE,UAAI,8BAA8B,QAAW;AACzC,cAAM,EAAE,WAAW,SAAS,IAAI;AAChC,YAAI,aAAa,QAAW;AACxB,oBAAU,0BAA0B,QAAQ;AAAA,QAChD;AACA,aAAK,oBAAoB,OAAO,MAAM;AAAA,MAC1C;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,qBAAqB;AACjB,UAAM,YAAY,IAAI,MAAqB;AAC3C,UAAM,cAAc,IAAI,MAA6C;AACrE,UAAM,eAAe,IAAI,IAAY,KAAK,gBAAgB,KAAK,CAAC;AAEhE,QAAI,KAAK,SAAS,kBAAkB,QAAW;AAC3C,WAAK,SAAS,cAAc,QAAQ,UAAQ;AACxC,cAAM,SAAS,KAAK,WAAW,UAAU,CAAC,IAAI,CAAC;AAC/C,YAAI,OAAO,WAAW,GAAG;AACrB,gBAAM,EAAE,YAAY,WAAW,QAAQ,IAAI;AAC3C,cAAI,eAAe,UAAa,cAAc,UAAa,YAAY,QAAW;AAE9E,mBAAO;AAAA,cACH,sBAAsB,KAAK,WAAW,iBAAiB,IAAI,CAAC;AAAA,YAChE;AAAA,UACJ,OAAO;AACH,gBAAI;AACA,mBAAK,WAAW,0BAA0B,YAAY,WAAW,OAAO;AACxE,oBAAM,IAAI;AAAA,gBACN;AAAA,cACJ;AAAA,YACJ,SAAS,GAAG;AACR,kCAAoB,OAAO,CAAC;AAE5B,qBAAO;AAAA,gBACH,sBAAsB,KAAK,WAAW;AAAA,kBAClC;AAAA,gBACJ,CAAC,8BAA8B,EAAE,IAAI;AAAA,cACzC;AAEA,0BAAY,KAAK,EAAE,MAAM,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAAA,YACzD;AAAA,UACJ;AACA;AAAA,QACJ;AAEA,eAAO,QAAQ,CAAC,EAAE,MAAAA,OAAM,MAAM,MAAM;AAChC,uBAAa,OAAO,cAAcA,KAAI,CAAC;AAEvC,gBAAM,wBAAwB,KAAK,gBAAgB,IAAI,cAAcA,KAAI,CAAC;AAC1E,cAAI,0BAA0B,QAAW;AACrC,kBAAM,EAAE,OAAO,eAAe,UAAU,iBAAiB,IAAI;AAC7D,gBAAI,kBAAkB,OAAO;AACzB,kBAAI,qBAAqB,QAAW;AAChC,8BAAc,eAAe,gBAAgB;AAAA,cACjD;AACA,mBAAK,gBAAgB,OAAO,cAAcA,KAAI,CAAC;AAAA,YACnD,OAAO;AACH;AAAA,YACJ;AAAA,UACJ;AACA,gBAAM,WAAW,CAAC,aACd,KAAK,oBAAoBA,OAAM,MAAM,QAAQ,QAAQ;AACzD,gBAAM,YAAY,QAAQ;AAC1B,oBAAU,KAAK,EAAE,MAAAA,OAAM,MAAM,CAAC;AAC9B,eAAK,gBAAgB,IAAI,cAAcA,KAAI,GAAG,EAAE,OAAO,SAAS,CAAC;AAAA,QACrE,CAAC;AAAA,MACL,CAAC;AAAA,IACL;AAGA,SAAK,yBAAyB,MAAM,KAAK,aAAa,OAAO,CAAC,CAAC;AAE/D,WAAO,EAAE,WAAW,YAAY;AAAA,EACpC;AAAA,EAEA,yBAAyB,MAAqB;AAC1C,eAAW,UAAU,MAAM;AACvB,YAAM,wBAAwB,KAAK,gBAAgB,IAAI,MAAM;AAC7D,UAAI,0BAA0B,QAAW;AACrC,cAAM,EAAE,OAAO,SAAS,IAAI;AAC5B,YAAI,aAAa,QAAW;AACxB,gBAAM,eAAe,QAAQ;AAAA,QACjC;AACA,aAAK,gBAAgB,OAAO,MAAM;AAAA,MACtC;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,qBAAqB;AACvB,UAAM,EAAE,cAAc,IAAI,KAAK,sBAAsB;AAErD,eAAW,EAAE,MAAM,UAAU,KAAK,eAAe;AAC7C,YAAM,EAAE,SAAS,MAAM,IAAI,KAAK,SAAS,cAAc,MAAM,SAAS;AAKtE,WAAK,6BAA6B,IAAI,kBAAkB,IAAI,GAAG;AAAA,QAC3D;AAAA,QACA;AAAA,QACA,QAAQ,UAAU;AAAA,QAClB;AAAA,QACA;AAAA,MACJ,CAAC;AAAA,IACL;AAEA,UAAM,EAAE,UAAU,IAAI,KAAK,mBAAmB;AAC9C,UAAM,cAAc,MAAmC;AACvD,eAAW,EAAE,MAAM,MAAM,KAAK,WAAW;AACrC,YAAM,EAAE,OAAO,IAAI;AACnB,UAAI,mBAAmB,MAAM;AAAA,QACzB,KAAK;AAAA,QACL,KAAK,SAAS;AAAA,QACd;AAAA,QACA,KAAK,SAAS;AAAA,MAClB;AACA,UAAI,aAAa,GAAG,gBAAgB,GAAG;AACnC,2BAAmB,MAAM;AAAA,MAC7B;AACA,kBAAY;AAAA,QACR,GAAG,iBAAiB,IAAI,WAAS;AAAA,UAC7B;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ,EAAE;AAAA,MACN;AAAA,IACJ;AAEA,gBAAY,KAAK,CAAC,GAAG,MAAM;AACvB,YAAM,eAAe,EAAE,MAAM,UAAU,YAAY,CAAC;AACpD,YAAM,eAAe,EAAE,MAAM,UAAU,YAAY,CAAC;AACpD,UAAI,eAAe,cAAc;AAC7B,eAAO;AAAA,MACX,WAAW,eAAe,cAAc;AACpC,eAAO;AAAA,MACX,OAAO;AACH,eAAO;AAAA,MACX;AAAA,IACJ,CAAC;AAED,eAAW,cAAc,aAAa;AAClC,WAAK,yBAAyB,IAAI,UAAU;AAAA,IAChD;AAEA,SAAK,mBAAmB;AAAA,EAC5B;AAAA,EAEA,IAAI,cAAsB;AACtB,WAAO,KAAK,KAAK,KAAK,iBAAiB,GAAI;AAAA,EAC/C;AAAA,EAEA,IAAI,eAAuB;AACvB,WAAO,KAAK,KAAK,KAAK,kBAAkB,GAAI;AAAA,EAChD;AAAA,EAEA,yBAAyB;AAErB,QAAI,KAAK,SAAS,iBAAiB,OAAW,MAAK,SAAS,aAAa,SAAS;AAClF,QAAI,KAAK,SAAS,uBAAuB,OAAW,MAAK,SAAS,mBAAmB,SAAS;AAE9F,SAAK,wBAAwB;AAC7B,QAAI,KAAK,6BAA6B,OAAO,KAAK,KAAK,yBAAyB,OAAO,GAAG;AACtF,WAAK,mBAAmB;AAAA,IAC5B;AACA,SAAK,eAAe,KAAK;AAAA,MAAS;AAAA,MAAuB,KAAK;AAAA,MAAiB,MAC3E,KAAK,mBAAmB;AAAA,IAC5B,EAAE,MAAM;AACR,SAAK,WAAW,OAAO,GAAG,MAAM;AAC5B,UAAI,KAAK,UAAU;AACf;AAAA,MACJ;AAEA,WAAK,mBAAmB,EAAE;AAAA,QAAM,WAC5B,OAAO,MAAM,uDAAuD,KAAK;AAAA,MAC7E;AAAA,IACJ,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,qBAAqB;AACjB,QAAI,KAAK,gBAAgB,aAAa,KAAK,UAAU;AAEjD;AAAA,IACJ;AAEA,QAAI,CAAC,KAAK,uBAAuB;AAC7B;AAAA,IACJ;AAEA,SAAK,aAAa,KAAK;AACvB,UAAM,MAAM,KAAK,MAAM;AACvB,UAAM,wBAAwB,MAAM,KAAK;AACzC,QAAI,wBAAwB,KAAK,oBAAoB;AAEjD,WAAK,eAAe,KAAK;AAAA,QACrB;AAAA,QACA,KAAK,qBAAqB;AAAA,QAC1B,MAAM,KAAK,mBAAmB;AAAA,MAClC,EAAE,MAAM;AACR;AAAA,IACJ;AAEA,SAAK,gBAAgB,MAAM;AAC3B,SAAK,eAAe,KAAK;AAAA,MAAS,uBAAuB,KAAK,EAAE;AAAA,MAAI,KAAK;AAAA,MAAiB,MACtF,KAAK,mBAAmB;AAAA,IAC5B,EAAE,MAAM;AAAA,EACZ;AAAA,EAEA,qBAAqB;AACjB,QAAI,KAAK,yBAAyB,QAAW;AACzC,aAAO,MAAM,yDAAyD;AACtE,WAAK,4BAA4B;AACjC;AAAA,IACJ;AACA,SAAK,uBAAuB,KAAK,YAAY,EACxC,MAAM,WAAS,OAAO,KAAK,uCAAuC,KAAK,CAAC,EACxE,QAAQ,MAAO,KAAK,uBAAuB,MAAU;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,YAAY,eAAe,OAAO;AAEpC,UAAM,yBAAyB,IAAI,MAA0C;AAC7E,UAAM,mBAAyE,CAAC;AAChF,UAAM,KAAK,KAAK,6BAA6B,OAAO,CAAC,EAAE,QAAQ,WAAS;AACpE,YAAM;AAAA,QACF,MAAM,EAAE,QAAQ,YAAY,UAAU;AAAA,MAC1C,IAAI;AACJ,YAAM,SAAS,GAAG,MAAM,IAAI,UAAU,IAAI,SAAS;AACnD,uBAAiB,MAAM,IAAI,iBAAiB,MAAM,KAAK,CAAC;AACxD,uBAAiB,MAAM,EAAE,KAAK,KAAK;AAAA,IACvC,CAAC;AACD,SAAK,6BAA6B,MAAM;AACxC,WAAO,OAAO,gBAAgB,EAAE;AAAA,MAAQ,UACpC,uBAAuB;AAAA,QACnB,GAAG,KAAK,KAAK,CAAC,EAAE,SAAS,SAAS,GAAG,EAAE,SAAS,SAAS,MAAM,WAAW,QAAQ;AAAA,MACtF;AAAA,IACJ;AAEA,UAAM,qBAAqB,MAAM,KAAK,KAAK,yBAAyB,OAAO,CAAC;AAC5E,SAAK,yBAAyB,MAAM;AAEpC,QAAI,gBAAgB,uBAAuB,WAAW,KAAK,mBAAmB,WAAW,GAAG;AACxF;AAAA,IACJ;AAEA,SAAK,oBAAoB,KAAK,MAAM;AAEpC,QAAI;AACA,YAAM,KAAK,kBAAkB,wBAAwB,kBAAkB;AACvE,WAAK,yBAAyB;AAAA,IAClC,SAAS,OAAO;AACZ,UAAI,KAAK,UAAU;AAEf;AAAA,MACJ;AAEA,WAAK;AACL,aAAO;AAAA,QACH,0DAA0D,KAAK,sBAAsB;AAAA,QACpF,iBAAiB,eAAe,MAAM,WAAY;AAAA,MACvD;AACA,UAAI,KAAK,0BAA0B,GAAG;AAElC,cAAM,4BAA4B,MAAM,KAAK,KAAK,6BAA6B,OAAO,CAAC;AACvF,aAAK,6BAA6B,MAAM;AACxC,cAAM,wBAAwB,MAAM,KAAK,KAAK,yBAAyB,OAAO,CAAC;AAC/E,aAAK,yBAAyB,MAAM;AACpC,SAAC,GAAG,wBAAwB,GAAG,yBAAyB,EAAE;AAAA,UAAQ,YAC9D,KAAK,6BAA6B,IAAI,kBAAkB,OAAO,IAAI,GAAG,MAAM;AAAA,QAChF;AACA,SAAC,GAAG,oBAAoB,GAAG,qBAAqB,EAAE;AAAA,UAAQ,YACtD,KAAK,yBAAyB,IAAI,MAAM;AAAA,QAC5C;AAAA,MACJ,OAAO;AACH,eAAO;AAAA,UACH,kEAAkE,KAAK,EAAE;AAAA,QAC7E;AACA,aAAK,4BAA4B;AACjC,YACI,iBAAiB,0BACjB,iBAAiB,gBACjB,iBAAiB,gBACnB;AAEE,gBAAM,KAAK,QAAQ;AACnB;AAAA,QACJ,OAAO;AACH,gBAAM;AAAA,QACV;AAAA,MACJ;AAAA,IACJ;AAEA,QAAI,KAAK,2BAA2B;AAChC,aAAO,MAAM,6DAA6D;AAC1E,WAAK,4BAA4B;AACjC,YAAM,KAAK,YAAY,IAAI;AAAA,IAC/B;AAAA,EACJ;AAAA,EAEA,MAAM,mCAAmC,WAA4B;AACjE,QAAI,iBAAiB;AACrB,UAAM,sBAAsB,IAAI,MAA0B;AAC1D,eAAW,EAAE,MAAM,MAAM,KAAK,WAAW;AACrC,YAAM,EAAE,OAAO,IAAI;AACnB,UAAI;AACA,cAAM,iBAAiB,MAAM,KAAK,SAAS,UAAU,MAAM,OAAO,KAAK,SAAS,YAAY;AAC5F,YAAI,eAAe,WAAW,GAAG;AAC7B,2BAAiB;AAAA,QACrB,OAAO;AACH,yBAAe,QAAQ,CAAC,EAAE,QAAQ,UAAU,gBAAgB,QAAQ,MAAM;AACtE,gCAAoB,KAAK;AAAA,cACrB,wBAAwB,MAAM;AAAA,cAC9B,WAAW;AAAA,gBACP;AAAA,gBACA,aAAa;AAAA,gBACb;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACJ;AAAA,YACJ,CAAC;AAAA,UACL,CAAC;AAAA,QACL;AAAA,MACJ,SAAS,OAAO;AACZ,YAAI,oBAAoB,GAAG,OAAO,WAAW,iBAAiB,GAAG;AAC7D,iBAAO,KAAK,mCAAmC,KAAK,WAAW,iBAAiB,IAAI,CAAC,EAAE;AAAA,QAC3F,OAAO;AACH,iBAAO,KAAK,uBAAuB,KAAK,WAAW,iBAAiB,IAAI,CAAC,KAAK,KAAK;AAAA,QACvF;AAAA,MACJ;AAAA,IACJ;AACA,wBAAoB,KAAK,CAAC,GAAG,MAAM;AAC/B,YAAM,eAAe,EAAE,WAAW,eAAe;AACjD,YAAM,eAAe,EAAE,WAAW,eAAe;AACjD,UAAI,eAAe,cAAc;AAC7B,eAAO;AAAA,MACX,WAAW,eAAe,cAAc;AACpC,eAAO;AAAA,MACX,OAAO;AACH,eAAO;AAAA,MACX;AAAA,IACJ,CAAC;AAED,WAAO,EAAE,qBAAqB,eAAe;AAAA,EACjD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,CAAC,gCACG,kBAIA,cAKF;AACE,UAAM,uBAAuB,IAAI;AAAA,MAC7B,KAAK,SAAS,oBAAoB,IAAI,CAAC,EAAE,MAAM,YAAY,MAAM,CAAC,gBAAgB,IAAI,GAAG,WAAW,CAAC,KACjG,CAAC;AAAA,IACT;AAEA,UAAM,EAAE,eAAe,gBAAgB,IAAI;AAC3C,UAAM,EAAE,qBAAqB,gBAAgB,YAAY,IAAI;AAE7D,WAAO;AAAA,MACH,iCAAiC,cAAc,MAAM,mBAAmB,oBAAoB,MAAM;AAAA,IACtG;AAEA,QAAI,gCAAgC;AAEpC,UAAM,uBAAuB,oBAAI,IAAyC;AAC1E,eAAW,EAAE,MAAM,UAAU,KAAK,eAAe;AAC7C,YAAM,EAAE,WAAW,IAAI;AACvB,YAAM,qBAAqB,qBAAqB,IAAI,UAAU,KAAK,IAAI,MAAyB;AAChG,yBAAmB,KAAK,EAAE,MAAM,UAAU,CAAC;AAC3C,2BAAqB,IAAI,YAAY,kBAAkB;AAAA,IAC3D;AAEA,QAAI,oBAAoB;AACxB,eAAW,cAAc,qBAAqB,KAAK,GAAG;AAClD,YAAM,qBAAqB,qBAAqB,IAAI,UAAU;AAC9D,2BAAqB,OAAO,UAAU;AACtC,iBAAW,EAAE,MAAM,WAAW,OAAO,QAAQ,KAAK,KAAK,SAAS;AAAA,QAC5D;AAAA,MACJ,GAAG;AACC,YAAI,UAAU,OAAW;AAEzB,cAAM,EAAE,QAAQ,YAAAC,aAAY,UAAU,IAAI;AAE1C,cAAM,qBACFA,gBAAe,UAAa,cAAc,SACpC,qBAAqB,IAAI,gBAAgB,EAAE,QAAQ,YAAAA,aAAY,UAAU,CAAC,CAAC,IAC3E;AACV,YAAI,uBAAuB,UAAa,uBAAuB,SAAS;AACpE,0CAAgC;AAChC;AAAA,QACJ;AAEA;AACA,cAAM;AAAA,UACF,wBAAwB,UAAU;AAAA,UAClC,eAAe;AAAA,YACX;AAAA,YACA,aAAa;AAAA,YACb,SAAS;AAAA,YACT,QAAQ,UAAU;AAAA,UACtB;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAEA,eAAW,mBAAmB,iBAAiB;AAC3C,YAAM;AAAA,QACF,wBAAwB;AAAA,QACxB;AAAA,MACJ;AAAA,IACJ;AAEA,QACI,sBAAsB,KACtB,CAAC,iCACD,oBAAoB,WAAW,KAC/B,CAAC,gBACH;AACE,YAAM,IAAI;AAAA,QACN;AAAA,QACA,WAAW;AAAA,MACf;AAAA,IACJ;AAEA,eAAW,eAAe,qBAAqB;AAC3C,YAAM;AAAA,IACV;AAEA,eAAW,eAAe,aAAa;AACnC,YAAM;AAAA,QACF,wBAAwB;AAAA,QACxB;AAAA,MACJ;AAAA,IACJ;AAEA,SAAK,oBAAoB,KAAK,MAAM;AAAA,EACxC;AAAA,EAEA,MAAM,kBAAkB,WAAuC;AAC3D,SAAK,aAAa,KAAK;AAEvB,UAAM,EAAE,eAAe,gBAAgB,IAAI,KAAK,sBAAsB;AACtE,UAAM,EAAE,WAAW,YAAY,IAAI,KAAK,mBAAmB;AAC3D,UAAM,EAAE,qBAAqB,eAAe,IAAI,MAAM,KAAK,mCAAmC,SAAS;AAEvG,UAAM,UAAU;AAAA,MACZ;AAAA,QACI,kBAAkB;AAAA;AAAA,QAClB,gBAAgB,KAAK;AAAA,QACrB,0BAA0B,cAAc;AAAA,MAC5C;AAAA,MACA,KAAK,SAAS;AAAA,MACd,KAAK;AAAA,QACD,EAAE,eAAe,gBAAgB;AAAA,QACjC,EAAE,qBAAqB,gBAAgB,YAAY;AAAA,MACvD;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,wBAA2B,MAAqB,QAAsB,SAAiB,OAAU;AAC7F,UAAM,eAAe,KAAK,uBAAuB,MAAM,QAAQ,SAAS,KAAK;AAC7E,QAAI,aAAa,GAAG,YAAY,GAAG;AAC/B,YAAM,WAAW,QAAQ,QAAQ,YAAY,EACxC,MAAM,WAAS,OAAO,MAAM,oCAAoC,KAAK,CAAC,EACtE,QAAQ,MAAM,KAAK,wBAAwB,OAAO,QAAQ,CAAC;AAChE,WAAK,wBAAwB,IAAI,QAAQ;AAAA,IAC7C;AAAA,EACJ;AAAA,EAEA,uBACI,MACA,QACA,SACA,OACkB;AAClB,UAAM,wBAAwB,KAAK,oBAAoB,IAAI,kBAAkB,IAAI,CAAC;AAClF,QAAI,0BAA0B,OAAW;AAEzC,UAAM,EAAE,UAAU,IAAI;AACtB,QAAI,qBAAqB,6BAA6B;AAIlD,YAAM,EAAE,OAAAC,OAAM,IAAI,KAAK,SAAS,cAAc,MAAM,WAAW,IAAI;AACnE,WAAK,6BAA6B,IAAI,kBAAkB,IAAI,GAAG;AAAA,QAC3D;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAAA;AAAA,MACJ,CAAC;AACD,WAAK,mBAAmB;AAAA,IAC5B;AACA,SAAK,6BAA6B,IAAI,kBAAkB,IAAI,GAAG,EAAE,WAAW,MAAM,QAAQ,SAAS,MAAM,CAAC;AAC1G,SAAK,mBAAmB;AAAA,EAC5B;AAAA,EAEA,oBAAuB,MAAiB,QAAsB,UAA8B;AACxF,UAAM,oBAAoB,KAAK,gBAAgB,IAAI,cAAc,IAAI,CAAC;AACtE,QAAI,sBAAsB,OAAW;AAErC,UAAM,EAAE,MAAM,IAAI;AAClB,QAAI,iBAAiB,4BAA4B;AAC7C,YAAM,EAAE,QAAQ,IAAI;AACpB,UACI,SAAS,OAAO,KAChB,iBAAiB,WACjB,QAAQ,gBAAgB,KAAK,QAAQ,QAAQ,aAC/C;AAEE;AAAA,MACJ;AAAA,IACJ;AACA,SAAK,yBAAyB,IAAI,EAAE,OAAO,MAAM,QAAQ,MAAM,SAAS,CAAC;AACzE,QAAI,KAAK,UAAU;AACf,WAAK,mBAAmB;AAAA,IAC5B;AAAA,EACJ;AAAA,EAEA,MAAM,QAAQ;AACV,SAAK,gBAAgB,KAAK;AAC1B,QAAI,KAAK,6BAA6B,OAAO,KAAK,KAAK,yBAAyB,OAAO,GAAG;AACtF,aAAO;AAAA,QACH,yBAAyB,KAAK,EAAE,SAAS,KAAK,6BAA6B,IAAI,mBAAmB,KAAK,yBAAyB,IAAI,UAAU,KAAK,WAAW,mBAAmB,EAAE;AAAA,MACvL;AACA,WAAK,mBAAmB;AACxB,UAAI,KAAK,sBAAsB;AAC3B,cAAM,KAAK;AAAA,MACf;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,MAAyB,UAAU;AAC/B,SAAK,wBAAwB;AAC7B,SAAK,6BAA6B,MAAM,KAAK,KAAK,oBAAoB,KAAK,CAAC,CAAC;AAC7E,SAAK,yBAAyB,MAAM,KAAK,KAAK,gBAAgB,KAAK,CAAC,CAAC;AACrE,QAAI,KAAK,wBAAwB,MAAM;AACnC,YAAM,YAAY,CAAC,GAAG,KAAK,wBAAwB,OAAO,CAAC;AAC3D,WAAK,wBAAwB,MAAM;AACnC,YAAM,qBAAqB,WAAW,WAAW,kDAAkD,EAAE;AAAA,QACjG,WAAS,OAAO,MAAM,KAAK;AAAA,MAC/B;AAAA,IACJ;AACA,SAAK,aAAa,KAAK;AACvB,SAAK,gBAAgB,KAAK;AAC1B,UAAM,MAAM,QAAQ;AAAA,EACxB;AAAA;AAAA;AAAA;AAAA,EAKA,MAAe,MAAM,WAAW,OAAO;AACnC,QAAI,KAAK,UAAU;AACf;AAAA,IACJ;AACA,UAAM,KAAK,QAAQ;AACnB,QAAI,UAAU;AACV,YAAM,KAAK,MAAM;AAAA,IACrB;AACA,QAAI,KAAK,sBAAsB;AAC3B,YAAM,KAAK;AAAA,IACf;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,CAAC,mBAAmB,YAAkD,QAAuC;AACzG,eAAW;AAAA,MACP;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP,SAAS;AAAA,MACT,WAAW,EAAE,uBAAuB;AAAA,IACxC,KAAK,YAAY;AACb,YAAM;AAAA,QACF;AAAA,QACA,eAAe,EAAE,MAAM,aAAa,QAAQ,QAAQ;AAAA,MACxD;AAAA,IACJ;AAEA,eAAW;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA,MAAM,EAAE,QAAQ,aAAa,UAAU,gBAAgB,QAAQ;AAAA,IACnE,KAAK,QAAQ;AACT,YAAM;AAAA,QACF,wBAAwB,MAAM;AAAA,QAC9B,WAAW,EAAE,MAAM,aAAa,UAAU,gBAAgB,QAAQ,QAAQ;AAAA,MAC9E;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,MAAc,kBACV,YACA,QACF;AACE,UAAM,WAAW,KAAK,SAAS,iBAAiB,KAAK,aAAa,uBAAuB;AACzF,QAAI,aAAa,OAAW;AAC5B,QAAI,WAAW,QAAQ;AACnB,aAAO;AAAA,QACH,yCAAyC,KAAK,EAAE,KAAK,WAChD;AAAA,UACG,CAAC,EAAE,MAAM,OAAO,QAAQ,MACpB,GAAG,KAAK,WAAW,qBAAqB,IAAI,CAAC,IAAI,OAAO,OAAO,KAAK,CAAC,KAAK,OAAO;AAAA,QACzF,EACC,KAAK,IAAI,CAAC;AAAA,MACnB;AAAA,IACJ;AACA,UAAM,YAAY,IAAI,2BAA2B,QAAQ;AAEzD,QAAI;AACA,UAAI,WAAW,WAAW,KAAK,OAAO,WAAW,GAAG;AAChD,cAAM,UAAU;AAAA,UACZ;AAAA,YACI,kBAAkB;AAAA;AAAA,YAClB,gBAAgB,KAAK;AAAA,YACrB,0BAA0B,cAAc;AAAA,UAC5C;AAAA,UACA,KAAK,SAAS;AAAA,UACd;AAAA,UACA,CAAC,KAAK;AAAA;AAAA,QACV;AAAA,MACJ,OAAO;AACH,cAAM,UAAU;AAAA,UACZ;AAAA,YACI,kBAAkB;AAAA;AAAA,YAClB,gBAAgB,KAAK;AAAA,YACrB,0BAA0B,cAAc;AAAA,UAC5C;AAAA,UACA,KAAK,SAAS;AAAA,UACd,KAAK,mBAAmB,YAAY,MAAM;AAAA,UAC1C,CAAC,KAAK;AAAA;AAAA,QACV;AAAA,MACJ;AAAA,IACJ,SAAS,OAAO;AACZ,UAAI,oBAAoB,GAAG,OAAO,WAAW,qBAAqB,WAAW,OAAO,GAAG;AACnF,eAAO,KAAK,gBAAgB,KAAK,EAAE,qBAAqB;AACxD,aAAK,mBAAmB;AACxB,cAAM,KAAK,MAAM,KAAK;AAAA,MAC1B,OAAO;AACH,4BAAoB,OAAO,KAAK;AAChC,eAAO,KAAK,gBAAgB,KAAK,EAAE,mBAAmB,KAAK;AAC3D,cAAM,KAAK,MAAM,KAAK;AAAA,MAC1B;AAAA,IACJ,UAAE;AACE,YAAM,UAAU,MAAM;AAAA,IAC1B;AAAA,EACJ;AACJ;",
|
|
5
5
|
"names": ["ServerSubscriptionConfig", "path", "endpointId", "value"]
|
|
6
6
|
}
|
|
@@ -46,9 +46,9 @@ export declare class MdnsScanner implements Scanner {
|
|
|
46
46
|
addresses: ServerAddressIp[];
|
|
47
47
|
discoveredAt: undefined;
|
|
48
48
|
ttl: undefined;
|
|
49
|
-
SAT?: number | undefined;
|
|
50
|
-
SAI?: number | undefined;
|
|
51
49
|
SII?: number | undefined;
|
|
50
|
+
SAI?: number | undefined;
|
|
51
|
+
SAT?: number | undefined;
|
|
52
52
|
VP?: string | undefined;
|
|
53
53
|
DT?: number | undefined;
|
|
54
54
|
DN?: string | undefined;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@matter/protocol",
|
|
3
|
-
"version": "0.12.4-alpha.0-
|
|
3
|
+
"version": "0.12.4-alpha.0-20250213-1187f81eb",
|
|
4
4
|
"description": "Low-level APIs for Matter interaction",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"iot",
|
|
@@ -40,14 +40,14 @@
|
|
|
40
40
|
"#*": "./src/*"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@matter/general": "0.12.4-alpha.0-
|
|
44
|
-
"@matter/model": "0.12.4-alpha.0-
|
|
45
|
-
"@matter/types": "0.12.4-alpha.0-
|
|
43
|
+
"@matter/general": "0.12.4-alpha.0-20250213-1187f81eb",
|
|
44
|
+
"@matter/model": "0.12.4-alpha.0-20250213-1187f81eb",
|
|
45
|
+
"@matter/types": "0.12.4-alpha.0-20250213-1187f81eb",
|
|
46
46
|
"@noble/curves": "^1.8.1"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@matter/tools": "0.12.4-alpha.0-
|
|
50
|
-
"@matter/testing": "0.12.4-alpha.0-
|
|
49
|
+
"@matter/tools": "0.12.4-alpha.0-20250213-1187f81eb",
|
|
50
|
+
"@matter/testing": "0.12.4-alpha.0-20250213-1187f81eb"
|
|
51
51
|
},
|
|
52
52
|
"files": [
|
|
53
53
|
"dist/**/*",
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { Invoke } from "./request/Invoke.js";
|
|
8
|
+
import { Read } from "./request/Read.js";
|
|
9
|
+
import { Subscribe } from "./request/Subscribe.js";
|
|
10
|
+
import { Write } from "./request/Write.js";
|
|
11
|
+
import { InvokeResult } from "./response/InvokeResult.js";
|
|
12
|
+
import { ReadResult } from "./response/ReadResult.js";
|
|
13
|
+
import { SubscribeResult } from "./response/SubscribeResult.js";
|
|
14
|
+
import { WriteResult } from "./response/WriteResult.js";
|
|
15
|
+
import { AccessControl } from "./server/AccessControl.js";
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Objects implementing this interface can participate in Matter interactions.
|
|
19
|
+
*/
|
|
20
|
+
export interface Interactable<SessionT = AccessControl.Session> {
|
|
21
|
+
/**
|
|
22
|
+
* Perform a Matter read interaction.
|
|
23
|
+
*/
|
|
24
|
+
read(request: Read, session?: SessionT): ReadResult;
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Perform a Matter subscribe interaction.
|
|
28
|
+
*/
|
|
29
|
+
subscribe(request: Subscribe, session?: SessionT): SubscribeResult;
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Perform a Matter write interaction.
|
|
33
|
+
*/
|
|
34
|
+
write<T extends Write>(request: T, session?: SessionT): WriteResult<T>;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Perform a Matter invoke interaction.
|
|
38
|
+
*/
|
|
39
|
+
invoke<T extends Invoke>(request: T, session?: SessionT): InvokeResult<T>;
|
|
40
|
+
}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { AccessControl } from "./server/AccessControl.js";
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Any JS value representing a value defined by Matter.
|
|
11
|
+
*/
|
|
12
|
+
export type Val = unknown;
|
|
13
|
+
|
|
14
|
+
export namespace Val {
|
|
15
|
+
/**
|
|
16
|
+
* Type for Matter structs. In JS this is an object with string keys.
|
|
17
|
+
*/
|
|
18
|
+
export type Struct = Record<string, Val>;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Type for Matter structs encoded using protocol semantics. In JS this is an object with "numeric" keys.
|
|
22
|
+
*/
|
|
23
|
+
export type ProtocolStruct = Record<number, Val>;
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Type for Matter lists. In Js this is an array.
|
|
27
|
+
*/
|
|
28
|
+
export type List = Val[];
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Any matter collection type.
|
|
32
|
+
*/
|
|
33
|
+
export type Collection = Struct | List;
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* A Reference offers a simple mechanism for referring to properties by reference.
|
|
37
|
+
*/
|
|
38
|
+
export interface Reference<T extends Val = Val> {
|
|
39
|
+
/**
|
|
40
|
+
* The current value of the referenced property. Cleared when the reference is no longer functional.
|
|
41
|
+
*/
|
|
42
|
+
value: T;
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* The current canonical value of the referenced property.
|
|
46
|
+
*/
|
|
47
|
+
readonly original: T;
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* When true, the reference is no longer usable because the owning context has exited.
|
|
51
|
+
*/
|
|
52
|
+
readonly expired: boolean;
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Diagnostic path to the referenced value.
|
|
56
|
+
*/
|
|
57
|
+
location: AccessControl.Location;
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Active references to child properties.
|
|
61
|
+
*/
|
|
62
|
+
subrefs?: Record<number | string, Reference>;
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Mutates data. Clones the container and updates metadata when called on an unmodified transactional
|
|
66
|
+
* reference.
|
|
67
|
+
*
|
|
68
|
+
* Then runs the specified mutator to make the actual changes.
|
|
69
|
+
*
|
|
70
|
+
* @param mutator the mutation logic, may freely modify {@link value}
|
|
71
|
+
*/
|
|
72
|
+
change(mutator: () => void): void;
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Refresh any internal cache from the referenced container.
|
|
76
|
+
*/
|
|
77
|
+
refresh(): void;
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* The managed value that owns the reference.
|
|
81
|
+
*/
|
|
82
|
+
owner?: T;
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* The object that owns the root managed value.
|
|
86
|
+
*/
|
|
87
|
+
rootOwner?: any;
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* The parent of this reference, if any.
|
|
91
|
+
*/
|
|
92
|
+
parent?: Reference;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export const properties = Symbol("properties");
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Unmanaged raw state classes have no contextual information. They may implement this interface to provide an
|
|
99
|
+
* alternate context-aware object for property read, write and validation.
|
|
100
|
+
*/
|
|
101
|
+
export interface Dynamic<O = any, S extends AccessControl.Session = AccessControl.Session> extends Struct {
|
|
102
|
+
/**
|
|
103
|
+
* Obtain a context-aware property source (and sink). Supervision will read/write properties from here if
|
|
104
|
+
* present. Otherwise they're read from static state as normal.
|
|
105
|
+
*
|
|
106
|
+
* @param owner the owner of the root reference of the managed value
|
|
107
|
+
* @param session the {@link AccessControl.Session} accessing the value
|
|
108
|
+
*/
|
|
109
|
+
[properties]<This extends Val.Struct>(this: This, owner: O, session: S): Partial<This>;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { Schema, SchemaErrorPath, ValueModel } from "#model";
|
|
8
|
+
import { StatusCode, StatusResponseError } from "#types";
|
|
9
|
+
|
|
10
|
+
export { SchemaImplementationError } from "#model";
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Thrown due operational schema violations.
|
|
14
|
+
*/
|
|
15
|
+
export class SchemaViolationError extends StatusResponseError {
|
|
16
|
+
constructor(prefix: string, path: SchemaErrorPath, message: string, code: StatusCode) {
|
|
17
|
+
const text = `${prefix} ${path.path ?? path}: ${message} (${code})`;
|
|
18
|
+
super(text, code);
|
|
19
|
+
|
|
20
|
+
// Remove default status code injection
|
|
21
|
+
this.message = text;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Thrown for invalid reads.
|
|
27
|
+
*/
|
|
28
|
+
export class ReadError extends SchemaViolationError {
|
|
29
|
+
constructor(path: SchemaErrorPath, message: string, code?: StatusCode) {
|
|
30
|
+
super("Reading", path, message, code ?? StatusCode.UnsupportedRead);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Thrown for invalid writes.
|
|
36
|
+
*/
|
|
37
|
+
export class WriteError extends SchemaViolationError {
|
|
38
|
+
constructor(path: SchemaErrorPath, message: string, code?: StatusCode) {
|
|
39
|
+
super("Writing", path, message, code ?? StatusCode.UnsupportedWrite);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Thrown for invalid invokes.
|
|
45
|
+
*/
|
|
46
|
+
export class InvokeError extends SchemaViolationError {
|
|
47
|
+
constructor(path: SchemaErrorPath, message: string, code?: StatusCode) {
|
|
48
|
+
super("Invoking", path, message, code ?? StatusCode.UnsupportedAccess);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Thrown when validation fails.
|
|
54
|
+
*/
|
|
55
|
+
export class ValidateError extends SchemaViolationError {
|
|
56
|
+
constructor(path: SchemaErrorPath, message: string, code?: StatusCode) {
|
|
57
|
+
super("Validating", path, message, code ?? StatusCode.InvalidDataType);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Thrown when a value is of the wrong datatype.
|
|
63
|
+
*/
|
|
64
|
+
export class DatatypeError extends ValidateError {
|
|
65
|
+
constructor(path: SchemaErrorPath, type: string, value: unknown, code?: StatusCode) {
|
|
66
|
+
let str = `${value}`;
|
|
67
|
+
if (str.length > 60) {
|
|
68
|
+
str = `${str.substring(60)}…`;
|
|
69
|
+
}
|
|
70
|
+
super(path, `Value "${str}" is not ${type}`, code);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Thrown when constraint is violated.
|
|
76
|
+
*/
|
|
77
|
+
export class ConstraintError extends ValidateError {
|
|
78
|
+
constructor(schema: Schema, path: SchemaErrorPath, message: string) {
|
|
79
|
+
super(path, `Constraint "${(schema as ValueModel).constraint}": ${message}`, StatusCode.ConstraintError);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Thrown when conformance is violated.
|
|
85
|
+
*/
|
|
86
|
+
export class ConformanceError extends ValidateError {
|
|
87
|
+
constructor(schema: Schema, path: SchemaErrorPath, message: string, choice?: string) {
|
|
88
|
+
let prefix;
|
|
89
|
+
if (choice) {
|
|
90
|
+
prefix = `Conformance choice "${choice}"`;
|
|
91
|
+
} else {
|
|
92
|
+
prefix = `Conformance "${(schema as ValueModel).conformance}"`;
|
|
93
|
+
}
|
|
94
|
+
super(path, `${prefix}: ${message}`, StatusCode.InvalidAction);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Thrown for access attempts against a managed value that is no longer valid.
|
|
100
|
+
*/
|
|
101
|
+
export class ExpiredReferenceError extends SchemaViolationError {
|
|
102
|
+
constructor(path: SchemaErrorPath) {
|
|
103
|
+
super(
|
|
104
|
+
"Referencing",
|
|
105
|
+
path,
|
|
106
|
+
"This value is no longer available because its context has exited",
|
|
107
|
+
StatusCode.Failure,
|
|
108
|
+
);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* Thrown for access attempts against a managed value referencing a container that was removed.
|
|
114
|
+
*/
|
|
115
|
+
export class PhantomReferenceError extends SchemaViolationError {
|
|
116
|
+
constructor(path: SchemaErrorPath) {
|
|
117
|
+
super("Referencing", path, "Container was removed", StatusCode.Failure);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
export * from "./errors.js";
|
|
8
|
+
export * from "./Interactable.js";
|
|
9
|
+
export * from "./protocols.js";
|
|
10
|
+
export * from "./request/index.js";
|
|
11
|
+
export * from "./response/index.js";
|
|
12
|
+
export * from "./server/index.js";
|
|
13
|
+
export * from "./Val.js";
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Project CHIP Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { DataModelPath, MatterModel } from "#model";
|
|
8
|
+
import type { AttributeId, ClusterId, DeviceTypeId, EndpointNumber, FabricIndex, NodeId, TlvSchema } from "#types";
|
|
9
|
+
import { AccessControl } from "./server/AccessControl.js";
|
|
10
|
+
import { Val } from "./Val.js";
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Optimized Matter protocol<->JS object interface
|
|
14
|
+
*
|
|
15
|
+
* This is the root contract between a Matter protocol implementation and a higher-level Matter data model.
|
|
16
|
+
*
|
|
17
|
+
* Note that the term "protocol" here has dual meaning. The client of this interface is a Matter Protocol
|
|
18
|
+
* implementation. The implementation adheres to a JS protocol in the "interface" sense used by JS specifications.
|
|
19
|
+
*
|
|
20
|
+
* The goal is for this abstraction to be as inexpensive as possible. Element access is via iteration or direct
|
|
21
|
+
* property access using protocol-level numeric IDs.
|
|
22
|
+
*
|
|
23
|
+
* We limit metadata to parent->child, authorization and marshalling. We limit function calls to a few places where the
|
|
24
|
+
* return value depends on session state.
|
|
25
|
+
*
|
|
26
|
+
* To optimize performance, underlying implementations should align their native structures as closely as possible to
|
|
27
|
+
* those defined by these contracts. When adaptation is necessary you can generate objects to perform adaptation,
|
|
28
|
+
* possibly with getters and/or setters where caching is infeasible or unnecessary.
|
|
29
|
+
*/
|
|
30
|
+
export interface NodeProtocol extends CollectionProtocol<EndpointProtocol> {
|
|
31
|
+
/**
|
|
32
|
+
* The active Matter data model.
|
|
33
|
+
*
|
|
34
|
+
* A protocol implementation may fall back to this model in some cases when element paths do not resolve.
|
|
35
|
+
*/
|
|
36
|
+
matter: MatterModel;
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Obtain the ID of this node in the context of a specific fabric.
|
|
40
|
+
*/
|
|
41
|
+
nodeIdFor(fabric: FabricIndex): NodeId | undefined;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Protocol contract for a specific endpoint.
|
|
46
|
+
*/
|
|
47
|
+
export interface EndpointProtocol
|
|
48
|
+
extends CollectionProtocol<ClusterProtocol>,
|
|
49
|
+
AddressableElementProtocol<EndpointNumber> {
|
|
50
|
+
/**
|
|
51
|
+
* Path to the endpoint within the data model.
|
|
52
|
+
*/
|
|
53
|
+
path: DataModelPath;
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* List of device types associated with the endpoint.
|
|
57
|
+
*/
|
|
58
|
+
deviceTypes: DeviceTypeId[];
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Protocol contract for a specific cluster on a specific endpoint.
|
|
63
|
+
*/
|
|
64
|
+
export interface ClusterProtocol {
|
|
65
|
+
type: ClusterTypeProtocol;
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Current version of cluster data.
|
|
69
|
+
*/
|
|
70
|
+
version: number;
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* The location of the cluster within the data model.
|
|
74
|
+
*/
|
|
75
|
+
location: AccessControl.Location;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Access a record of attribute values, keyed by attribute ID.
|
|
79
|
+
*
|
|
80
|
+
* Note that current protocol implementations do not filter data within this responsibility based on the
|
|
81
|
+
* session. So doing so is the responsibility of the node implementation.
|
|
82
|
+
*/
|
|
83
|
+
open(session: AccessControl.Session): Val.ProtocolStruct;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Protocol contract for a specific type of cluster (including feature variants).
|
|
88
|
+
*
|
|
89
|
+
* TODO - commands and events
|
|
90
|
+
*/
|
|
91
|
+
export interface ClusterTypeProtocol extends AddressableElementProtocol<ClusterId> {
|
|
92
|
+
/**
|
|
93
|
+
* Attribute metadata.
|
|
94
|
+
*/
|
|
95
|
+
attributes: CollectionProtocol<AttributeTypeProtocol>;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Descriptor for a specific property type.
|
|
100
|
+
*/
|
|
101
|
+
export interface AttributeTypeProtocol extends AddressableElementProtocol<AttributeId> {
|
|
102
|
+
/**
|
|
103
|
+
* The TLV schema for this property.
|
|
104
|
+
*/
|
|
105
|
+
tlv: TlvSchema<unknown>;
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Access control information for the attribute.
|
|
109
|
+
*/
|
|
110
|
+
limits: AccessControl.Limits;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Protocol contract for addressable elements.
|
|
115
|
+
*/
|
|
116
|
+
export interface AddressableElementProtocol<N extends number> {
|
|
117
|
+
/**
|
|
118
|
+
* The numeric ID of the element defined by the Matter specification.
|
|
119
|
+
*/
|
|
120
|
+
id: N;
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Bitmap with each wildcard path flag bit set where this value should be skipped.
|
|
124
|
+
*/
|
|
125
|
+
wildcardPathFlags: number;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* A collection of elements that supports lookup by numeric ID and iteration.
|
|
130
|
+
*/
|
|
131
|
+
export interface CollectionProtocol<T> {
|
|
132
|
+
[id: number]: T | undefined;
|
|
133
|
+
[Symbol.iterator](): Iterator<T, void, void>;
|
|
134
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { FALLBACK_INTERACTIONMODEL_REVISION } from "#session/Session.js";
|
|
8
|
+
import { ClusterType, CommandData, InvokeRequest, TlvSchema, TypeFromSchema } from "#types";
|
|
9
|
+
import { MalformedRequestError } from "./MalformedRequestError.js";
|
|
10
|
+
import { Specifier } from "./Specifier.js";
|
|
11
|
+
|
|
12
|
+
export interface Invoke extends InvokeRequest {
|
|
13
|
+
timeout?: number;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Request invocation of one or more commands.
|
|
18
|
+
*/
|
|
19
|
+
export function Invoke(definition: Invoke.Definition): Invoke {
|
|
20
|
+
const {
|
|
21
|
+
commands,
|
|
22
|
+
interactionModelRevision = FALLBACK_INTERACTIONMODEL_REVISION,
|
|
23
|
+
suppressResponse = false,
|
|
24
|
+
timed: timedRequest = false,
|
|
25
|
+
} = definition;
|
|
26
|
+
|
|
27
|
+
if (!commands?.length) {
|
|
28
|
+
throw new MalformedRequestError(`Invocation requires at least one command`);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return {
|
|
32
|
+
invokeRequests: commands,
|
|
33
|
+
interactionModelRevision,
|
|
34
|
+
suppressResponse,
|
|
35
|
+
timedRequest,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export namespace Invoke {
|
|
40
|
+
export interface Definition {
|
|
41
|
+
commands: CommandData[];
|
|
42
|
+
suppressResponse?: boolean;
|
|
43
|
+
timed?: boolean;
|
|
44
|
+
interactionModelRevision?: number;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export function Command<const C extends ClusterType>(request: Invoke.CommandRequest<C>): CommandData {
|
|
48
|
+
const result: CommandData = {
|
|
49
|
+
commandPath: {
|
|
50
|
+
clusterId: Specifier.clusterFor(request.cluster).id,
|
|
51
|
+
commandId: Invoke.commandOf(request).requestId,
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
const endpointId = Specifier.endpointIdOf(request);
|
|
56
|
+
if (endpointId !== undefined) {
|
|
57
|
+
result.commandPath.endpointId = endpointId;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
return result;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export type CommandRequest<
|
|
64
|
+
C extends Specifier.Cluster = Specifier.Cluster,
|
|
65
|
+
CMD extends Specifier.Command<Specifier.ClusterFor<C>> = Specifier.Command<Specifier.ClusterFor<C>>,
|
|
66
|
+
> = {
|
|
67
|
+
endpoint?: Specifier.Endpoint;
|
|
68
|
+
cluster: C;
|
|
69
|
+
command: CMD;
|
|
70
|
+
} & Fields<Specifier.CommandFor<Specifier.ClusterFor<C>, CMD>["requestSchema"]>;
|
|
71
|
+
|
|
72
|
+
export function commandOf<const R extends CommandRequest>(request: R): ClusterType.Command {
|
|
73
|
+
if (typeof request.command === "string") {
|
|
74
|
+
const cluster = Specifier.clusterFor(request.cluster);
|
|
75
|
+
if (cluster === undefined) {
|
|
76
|
+
throw new MalformedRequestError(`Cannot designate command "${request.command}" without cluster`);
|
|
77
|
+
}
|
|
78
|
+
const command = cluster.commands[request.command];
|
|
79
|
+
if (command === undefined) {
|
|
80
|
+
throw new MalformedRequestError(`Cluster ${cluster.name} does not define command ${request.command}`);
|
|
81
|
+
}
|
|
82
|
+
return command as Specifier.CommandFor<Specifier.ClusterOf<R>, R["command"]>;
|
|
83
|
+
}
|
|
84
|
+
return request.command as Specifier.CommandFor<Specifier.ClusterOf<R>, R["command"]>;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export type Fields<S extends TlvSchema<any>> =
|
|
88
|
+
S extends TlvSchema<void>
|
|
89
|
+
? {}
|
|
90
|
+
: S extends TlvSchema<null>
|
|
91
|
+
? { fields?: TypeFromSchema<S> }
|
|
92
|
+
: { fields: TypeFromSchema<S> };
|
|
93
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { ImplementationError } from "#general";
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Thrown when an action request does not adhere to the Matter specification.
|
|
11
|
+
*
|
|
12
|
+
* This is a client-side error that throws while formulating a request.
|
|
13
|
+
*/
|
|
14
|
+
export class MalformedRequestError extends ImplementationError {}
|