@matter/protocol 0.14.1-alpha.0-20250605-9fc134af0 → 0.14.1-alpha.0-20250606-a9bcd03f9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (312) hide show
  1. package/dist/cjs/action/server/AccessControl.d.ts +5 -7
  2. package/dist/cjs/action/server/AccessControl.d.ts.map +1 -1
  3. package/dist/cjs/action/server/AccessControl.js.map +1 -1
  4. package/dist/cjs/action/server/AttributeWriteResponse.d.ts.map +1 -1
  5. package/dist/cjs/action/server/AttributeWriteResponse.js +23 -0
  6. package/dist/cjs/action/server/AttributeWriteResponse.js.map +1 -1
  7. package/dist/cjs/action/server/CommandInvokeResponse.d.ts.map +1 -1
  8. package/dist/cjs/action/server/CommandInvokeResponse.js +24 -1
  9. package/dist/cjs/action/server/CommandInvokeResponse.js.map +1 -1
  10. package/dist/cjs/action/server/DataResponse.d.ts +1 -1
  11. package/dist/cjs/action/server/DataResponse.d.ts.map +1 -1
  12. package/dist/cjs/action/server/Subject.d.ts +25 -0
  13. package/dist/cjs/action/server/Subject.d.ts.map +1 -0
  14. package/dist/cjs/action/server/Subject.js +54 -0
  15. package/dist/cjs/action/server/Subject.js.map +6 -0
  16. package/dist/cjs/action/server/index.d.ts +1 -0
  17. package/dist/cjs/action/server/index.d.ts.map +1 -1
  18. package/dist/cjs/action/server/index.js +1 -0
  19. package/dist/cjs/action/server/index.js.map +1 -1
  20. package/dist/cjs/certificate/DeviceCertification.d.ts +2 -2
  21. package/dist/cjs/certificate/DeviceCertification.d.ts.map +1 -1
  22. package/dist/cjs/certificate/DeviceCertification.js.map +1 -1
  23. package/dist/cjs/cluster/client/AttributeClient.d.ts +3 -3
  24. package/dist/cjs/cluster/client/AttributeClient.d.ts.map +1 -1
  25. package/dist/cjs/cluster/client/AttributeClient.js +14 -2
  26. package/dist/cjs/cluster/client/AttributeClient.js.map +1 -1
  27. package/dist/cjs/cluster/client/ClusterClient.d.ts +3 -2
  28. package/dist/cjs/cluster/client/ClusterClient.d.ts.map +1 -1
  29. package/dist/cjs/cluster/client/ClusterClient.js +60 -1
  30. package/dist/cjs/cluster/client/ClusterClient.js.map +1 -1
  31. package/dist/cjs/cluster/client/ClusterClientTypes.d.ts +33 -8
  32. package/dist/cjs/cluster/client/ClusterClientTypes.d.ts.map +1 -1
  33. package/dist/cjs/cluster/client/EventClient.d.ts +3 -3
  34. package/dist/cjs/cluster/client/EventClient.d.ts.map +1 -1
  35. package/dist/cjs/cluster/client/EventClient.js +7 -0
  36. package/dist/cjs/cluster/client/EventClient.js.map +1 -1
  37. package/dist/cjs/codec/MessageCodec.d.ts.map +1 -1
  38. package/dist/cjs/codec/MessageCodec.js +31 -6
  39. package/dist/cjs/codec/MessageCodec.js.map +1 -1
  40. package/dist/cjs/fabric/Fabric.d.ts +20 -30
  41. package/dist/cjs/fabric/Fabric.d.ts.map +1 -1
  42. package/dist/cjs/fabric/Fabric.js +38 -62
  43. package/dist/cjs/fabric/Fabric.js.map +2 -2
  44. package/dist/cjs/fabric/FabricManager.d.ts.map +1 -1
  45. package/dist/cjs/fabric/FabricManager.js +10 -4
  46. package/dist/cjs/fabric/FabricManager.js.map +1 -1
  47. package/dist/cjs/groups/FabricGroupsManager.d.ts +46 -0
  48. package/dist/cjs/groups/FabricGroupsManager.d.ts.map +1 -0
  49. package/dist/cjs/groups/FabricGroupsManager.js +155 -0
  50. package/dist/cjs/groups/FabricGroupsManager.js.map +6 -0
  51. package/dist/cjs/groups/Groups.d.ts +34 -0
  52. package/dist/cjs/groups/Groups.d.ts.map +1 -0
  53. package/dist/cjs/groups/Groups.js +89 -0
  54. package/dist/cjs/groups/Groups.js.map +6 -0
  55. package/dist/cjs/groups/KeySets.d.ts +64 -0
  56. package/dist/cjs/groups/KeySets.d.ts.map +1 -0
  57. package/dist/cjs/groups/KeySets.js +179 -0
  58. package/dist/cjs/groups/KeySets.js.map +6 -0
  59. package/dist/cjs/groups/MessagingState.d.ts +24 -0
  60. package/dist/cjs/groups/MessagingState.d.ts.map +1 -0
  61. package/dist/cjs/groups/MessagingState.js +91 -0
  62. package/dist/cjs/groups/MessagingState.js.map +6 -0
  63. package/dist/cjs/groups/index.d.ts +8 -0
  64. package/dist/cjs/groups/index.d.ts.map +1 -0
  65. package/dist/cjs/groups/index.js +25 -0
  66. package/dist/cjs/groups/index.js.map +6 -0
  67. package/dist/cjs/index.d.ts +1 -0
  68. package/dist/cjs/index.d.ts.map +1 -1
  69. package/dist/cjs/index.js +1 -0
  70. package/dist/cjs/index.js.map +1 -1
  71. package/dist/cjs/interaction/AccessControlManager.d.ts +4 -13
  72. package/dist/cjs/interaction/AccessControlManager.d.ts.map +1 -1
  73. package/dist/cjs/interaction/AccessControlManager.js +38 -47
  74. package/dist/cjs/interaction/AccessControlManager.js.map +1 -1
  75. package/dist/cjs/interaction/InteractionClient.d.ts +5 -4
  76. package/dist/cjs/interaction/InteractionClient.d.ts.map +1 -1
  77. package/dist/cjs/interaction/InteractionClient.js +53 -3
  78. package/dist/cjs/interaction/InteractionClient.js.map +1 -1
  79. package/dist/cjs/interaction/InteractionMessenger.d.ts.map +1 -1
  80. package/dist/cjs/interaction/InteractionMessenger.js +15 -0
  81. package/dist/cjs/interaction/InteractionMessenger.js.map +1 -1
  82. package/dist/cjs/interaction/Subscription.d.ts +3 -3
  83. package/dist/cjs/interaction/Subscription.d.ts.map +1 -1
  84. package/dist/cjs/interaction/Subscription.js.map +1 -1
  85. package/dist/cjs/peer/PeerAddress.d.ts +1 -0
  86. package/dist/cjs/peer/PeerAddress.d.ts.map +1 -1
  87. package/dist/cjs/peer/PeerAddress.js +5 -0
  88. package/dist/cjs/peer/PeerAddress.js.map +1 -1
  89. package/dist/cjs/peer/PeerSet.d.ts.map +1 -1
  90. package/dist/cjs/peer/PeerSet.js +31 -2
  91. package/dist/cjs/peer/PeerSet.js.map +1 -1
  92. package/dist/cjs/protocol/ChannelManager.d.ts.map +1 -1
  93. package/dist/cjs/protocol/ChannelManager.js +7 -8
  94. package/dist/cjs/protocol/ChannelManager.js.map +1 -1
  95. package/dist/cjs/protocol/ExchangeManager.d.ts.map +1 -1
  96. package/dist/cjs/protocol/ExchangeManager.js +39 -25
  97. package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
  98. package/dist/cjs/protocol/MessageExchange.d.ts +1 -1
  99. package/dist/cjs/protocol/MessageExchange.d.ts.map +1 -1
  100. package/dist/cjs/protocol/MessageExchange.js +32 -4
  101. package/dist/cjs/protocol/MessageExchange.js.map +1 -1
  102. package/dist/cjs/protocol/MessageReceptionState.d.ts +1 -1
  103. package/dist/cjs/securechannel/SecureChannelProtocol.js +1 -1
  104. package/dist/cjs/securechannel/SecureChannelProtocol.js.map +1 -1
  105. package/dist/cjs/session/GroupSession.d.ts +56 -0
  106. package/dist/cjs/session/GroupSession.d.ts.map +1 -0
  107. package/dist/cjs/session/GroupSession.js +188 -0
  108. package/dist/cjs/session/GroupSession.js.map +6 -0
  109. package/dist/cjs/session/InsecureSession.d.ts +2 -1
  110. package/dist/cjs/session/InsecureSession.d.ts.map +1 -1
  111. package/dist/cjs/session/InsecureSession.js +3 -2
  112. package/dist/cjs/session/InsecureSession.js.map +1 -1
  113. package/dist/cjs/session/NodeSession.d.ts +88 -0
  114. package/dist/cjs/session/NodeSession.d.ts.map +1 -0
  115. package/dist/cjs/session/NodeSession.js +318 -0
  116. package/dist/cjs/session/NodeSession.js.map +6 -0
  117. package/dist/cjs/session/SecureSession.d.ts +10 -75
  118. package/dist/cjs/session/SecureSession.d.ts.map +1 -1
  119. package/dist/cjs/session/SecureSession.js +9 -280
  120. package/dist/cjs/session/SecureSession.js.map +2 -2
  121. package/dist/cjs/session/Session.d.ts +6 -5
  122. package/dist/cjs/session/Session.d.ts.map +1 -1
  123. package/dist/cjs/session/Session.js +11 -1
  124. package/dist/cjs/session/Session.js.map +1 -1
  125. package/dist/cjs/session/SessionManager.d.ts +27 -9
  126. package/dist/cjs/session/SessionManager.d.ts.map +1 -1
  127. package/dist/cjs/session/SessionManager.js +83 -5
  128. package/dist/cjs/session/SessionManager.js.map +2 -2
  129. package/dist/cjs/session/case/CaseClient.d.ts +1 -1
  130. package/dist/cjs/session/case/CaseClient.js +2 -2
  131. package/dist/cjs/session/case/CaseClient.js.map +1 -1
  132. package/dist/cjs/session/index.d.ts +2 -0
  133. package/dist/cjs/session/index.d.ts.map +1 -1
  134. package/dist/cjs/session/index.js +2 -0
  135. package/dist/cjs/session/index.js.map +1 -1
  136. package/dist/cjs/session/pase/PaseClient.d.ts +1 -1
  137. package/dist/esm/action/server/AccessControl.d.ts +5 -7
  138. package/dist/esm/action/server/AccessControl.d.ts.map +1 -1
  139. package/dist/esm/action/server/AccessControl.js.map +1 -1
  140. package/dist/esm/action/server/AttributeWriteResponse.d.ts.map +1 -1
  141. package/dist/esm/action/server/AttributeWriteResponse.js +23 -0
  142. package/dist/esm/action/server/AttributeWriteResponse.js.map +1 -1
  143. package/dist/esm/action/server/CommandInvokeResponse.d.ts.map +1 -1
  144. package/dist/esm/action/server/CommandInvokeResponse.js +24 -1
  145. package/dist/esm/action/server/CommandInvokeResponse.js.map +1 -1
  146. package/dist/esm/action/server/DataResponse.d.ts +1 -1
  147. package/dist/esm/action/server/DataResponse.d.ts.map +1 -1
  148. package/dist/esm/action/server/Subject.d.ts +25 -0
  149. package/dist/esm/action/server/Subject.d.ts.map +1 -0
  150. package/dist/esm/action/server/Subject.js +34 -0
  151. package/dist/esm/action/server/Subject.js.map +6 -0
  152. package/dist/esm/action/server/index.d.ts +1 -0
  153. package/dist/esm/action/server/index.d.ts.map +1 -1
  154. package/dist/esm/action/server/index.js +1 -0
  155. package/dist/esm/action/server/index.js.map +1 -1
  156. package/dist/esm/certificate/DeviceCertification.d.ts +2 -2
  157. package/dist/esm/certificate/DeviceCertification.d.ts.map +1 -1
  158. package/dist/esm/certificate/DeviceCertification.js.map +1 -1
  159. package/dist/esm/cluster/client/AttributeClient.d.ts +3 -3
  160. package/dist/esm/cluster/client/AttributeClient.d.ts.map +1 -1
  161. package/dist/esm/cluster/client/AttributeClient.js +13 -1
  162. package/dist/esm/cluster/client/AttributeClient.js.map +1 -1
  163. package/dist/esm/cluster/client/ClusterClient.d.ts +3 -2
  164. package/dist/esm/cluster/client/ClusterClient.d.ts.map +1 -1
  165. package/dist/esm/cluster/client/ClusterClient.js +61 -2
  166. package/dist/esm/cluster/client/ClusterClient.js.map +1 -1
  167. package/dist/esm/cluster/client/ClusterClientTypes.d.ts +33 -8
  168. package/dist/esm/cluster/client/ClusterClientTypes.d.ts.map +1 -1
  169. package/dist/esm/cluster/client/EventClient.d.ts +3 -3
  170. package/dist/esm/cluster/client/EventClient.d.ts.map +1 -1
  171. package/dist/esm/cluster/client/EventClient.js +7 -0
  172. package/dist/esm/cluster/client/EventClient.js.map +1 -1
  173. package/dist/esm/codec/MessageCodec.d.ts.map +1 -1
  174. package/dist/esm/codec/MessageCodec.js +41 -7
  175. package/dist/esm/codec/MessageCodec.js.map +1 -1
  176. package/dist/esm/fabric/Fabric.d.ts +20 -30
  177. package/dist/esm/fabric/Fabric.d.ts.map +1 -1
  178. package/dist/esm/fabric/Fabric.js +38 -62
  179. package/dist/esm/fabric/Fabric.js.map +2 -2
  180. package/dist/esm/fabric/FabricManager.d.ts.map +1 -1
  181. package/dist/esm/fabric/FabricManager.js +10 -4
  182. package/dist/esm/fabric/FabricManager.js.map +1 -1
  183. package/dist/esm/groups/FabricGroupsManager.d.ts +46 -0
  184. package/dist/esm/groups/FabricGroupsManager.d.ts.map +1 -0
  185. package/dist/esm/groups/FabricGroupsManager.js +135 -0
  186. package/dist/esm/groups/FabricGroupsManager.js.map +6 -0
  187. package/dist/esm/groups/Groups.d.ts +34 -0
  188. package/dist/esm/groups/Groups.d.ts.map +1 -0
  189. package/dist/esm/groups/Groups.js +69 -0
  190. package/dist/esm/groups/Groups.js.map +6 -0
  191. package/dist/esm/groups/KeySets.d.ts +64 -0
  192. package/dist/esm/groups/KeySets.d.ts.map +1 -0
  193. package/dist/esm/groups/KeySets.js +159 -0
  194. package/dist/esm/groups/KeySets.js.map +6 -0
  195. package/dist/esm/groups/MessagingState.d.ts +24 -0
  196. package/dist/esm/groups/MessagingState.d.ts.map +1 -0
  197. package/dist/esm/groups/MessagingState.js +71 -0
  198. package/dist/esm/groups/MessagingState.js.map +6 -0
  199. package/dist/esm/groups/index.d.ts +8 -0
  200. package/dist/esm/groups/index.d.ts.map +1 -0
  201. package/dist/esm/groups/index.js +8 -0
  202. package/dist/esm/groups/index.js.map +6 -0
  203. package/dist/esm/index.d.ts +1 -0
  204. package/dist/esm/index.d.ts.map +1 -1
  205. package/dist/esm/index.js +1 -0
  206. package/dist/esm/index.js.map +1 -1
  207. package/dist/esm/interaction/AccessControlManager.d.ts +4 -13
  208. package/dist/esm/interaction/AccessControlManager.d.ts.map +1 -1
  209. package/dist/esm/interaction/AccessControlManager.js +39 -48
  210. package/dist/esm/interaction/AccessControlManager.js.map +1 -1
  211. package/dist/esm/interaction/InteractionClient.d.ts +5 -4
  212. package/dist/esm/interaction/InteractionClient.d.ts.map +1 -1
  213. package/dist/esm/interaction/InteractionClient.js +54 -4
  214. package/dist/esm/interaction/InteractionClient.js.map +1 -1
  215. package/dist/esm/interaction/InteractionMessenger.d.ts.map +1 -1
  216. package/dist/esm/interaction/InteractionMessenger.js +15 -0
  217. package/dist/esm/interaction/InteractionMessenger.js.map +1 -1
  218. package/dist/esm/interaction/Subscription.d.ts +3 -3
  219. package/dist/esm/interaction/Subscription.d.ts.map +1 -1
  220. package/dist/esm/interaction/Subscription.js.map +1 -1
  221. package/dist/esm/peer/PeerAddress.d.ts +1 -0
  222. package/dist/esm/peer/PeerAddress.d.ts.map +1 -1
  223. package/dist/esm/peer/PeerAddress.js +5 -0
  224. package/dist/esm/peer/PeerAddress.js.map +1 -1
  225. package/dist/esm/peer/PeerSet.d.ts.map +1 -1
  226. package/dist/esm/peer/PeerSet.js +33 -3
  227. package/dist/esm/peer/PeerSet.js.map +1 -1
  228. package/dist/esm/protocol/ChannelManager.d.ts.map +1 -1
  229. package/dist/esm/protocol/ChannelManager.js +7 -8
  230. package/dist/esm/protocol/ChannelManager.js.map +1 -1
  231. package/dist/esm/protocol/ExchangeManager.d.ts.map +1 -1
  232. package/dist/esm/protocol/ExchangeManager.js +41 -27
  233. package/dist/esm/protocol/ExchangeManager.js.map +1 -1
  234. package/dist/esm/protocol/MessageExchange.d.ts +1 -1
  235. package/dist/esm/protocol/MessageExchange.d.ts.map +1 -1
  236. package/dist/esm/protocol/MessageExchange.js +39 -5
  237. package/dist/esm/protocol/MessageExchange.js.map +1 -1
  238. package/dist/esm/protocol/MessageReceptionState.d.ts +1 -1
  239. package/dist/esm/securechannel/SecureChannelProtocol.js +2 -2
  240. package/dist/esm/securechannel/SecureChannelProtocol.js.map +1 -1
  241. package/dist/esm/session/GroupSession.d.ts +56 -0
  242. package/dist/esm/session/GroupSession.d.ts.map +1 -0
  243. package/dist/esm/session/GroupSession.js +177 -0
  244. package/dist/esm/session/GroupSession.js.map +6 -0
  245. package/dist/esm/session/InsecureSession.d.ts +2 -1
  246. package/dist/esm/session/InsecureSession.d.ts.map +1 -1
  247. package/dist/esm/session/InsecureSession.js +3 -2
  248. package/dist/esm/session/InsecureSession.js.map +1 -1
  249. package/dist/esm/session/NodeSession.d.ts +88 -0
  250. package/dist/esm/session/NodeSession.d.ts.map +1 -0
  251. package/dist/esm/session/NodeSession.js +298 -0
  252. package/dist/esm/session/NodeSession.js.map +6 -0
  253. package/dist/esm/session/SecureSession.d.ts +10 -75
  254. package/dist/esm/session/SecureSession.d.ts.map +1 -1
  255. package/dist/esm/session/SecureSession.js +10 -291
  256. package/dist/esm/session/SecureSession.js.map +2 -2
  257. package/dist/esm/session/Session.d.ts +6 -5
  258. package/dist/esm/session/Session.d.ts.map +1 -1
  259. package/dist/esm/session/Session.js +12 -2
  260. package/dist/esm/session/Session.js.map +1 -1
  261. package/dist/esm/session/SessionManager.d.ts +27 -9
  262. package/dist/esm/session/SessionManager.d.ts.map +1 -1
  263. package/dist/esm/session/SessionManager.js +84 -6
  264. package/dist/esm/session/SessionManager.js.map +1 -1
  265. package/dist/esm/session/case/CaseClient.d.ts +1 -1
  266. package/dist/esm/session/case/CaseClient.js +2 -2
  267. package/dist/esm/session/case/CaseClient.js.map +1 -1
  268. package/dist/esm/session/index.d.ts +2 -0
  269. package/dist/esm/session/index.d.ts.map +1 -1
  270. package/dist/esm/session/index.js +2 -0
  271. package/dist/esm/session/index.js.map +1 -1
  272. package/dist/esm/session/pase/PaseClient.d.ts +1 -1
  273. package/package.json +6 -6
  274. package/src/action/server/AccessControl.ts +4 -7
  275. package/src/action/server/AttributeWriteResponse.ts +29 -7
  276. package/src/action/server/CommandInvokeResponse.ts +28 -7
  277. package/src/action/server/DataResponse.ts +1 -1
  278. package/src/action/server/Subject.ts +45 -0
  279. package/src/action/server/index.ts +1 -0
  280. package/src/certificate/DeviceCertification.ts +2 -2
  281. package/src/cluster/client/AttributeClient.ts +15 -3
  282. package/src/cluster/client/ClusterClient.ts +90 -4
  283. package/src/cluster/client/ClusterClientTypes.ts +38 -9
  284. package/src/cluster/client/EventClient.ts +9 -2
  285. package/src/codec/MessageCodec.ts +49 -8
  286. package/src/fabric/Fabric.ts +51 -85
  287. package/src/fabric/FabricManager.ts +11 -4
  288. package/src/groups/FabricGroupsManager.ts +164 -0
  289. package/src/groups/Groups.ts +81 -0
  290. package/src/groups/KeySets.ts +194 -0
  291. package/src/groups/MessagingState.ts +76 -0
  292. package/src/groups/index.ts +8 -0
  293. package/src/index.ts +1 -0
  294. package/src/interaction/AccessControlManager.ts +49 -81
  295. package/src/interaction/InteractionClient.ts +66 -6
  296. package/src/interaction/InteractionMessenger.ts +15 -0
  297. package/src/interaction/Subscription.ts +3 -3
  298. package/src/peer/PeerAddress.ts +4 -0
  299. package/src/peer/PeerSet.ts +39 -4
  300. package/src/protocol/ChannelManager.ts +7 -9
  301. package/src/protocol/ExchangeManager.ts +51 -35
  302. package/src/protocol/MessageExchange.ts +42 -7
  303. package/src/protocol/MessageReceptionState.ts +2 -2
  304. package/src/securechannel/SecureChannelProtocol.ts +2 -2
  305. package/src/session/GroupSession.ts +223 -0
  306. package/src/session/InsecureSession.ts +3 -2
  307. package/src/session/NodeSession.ts +367 -0
  308. package/src/session/SecureSession.ts +14 -363
  309. package/src/session/Session.ts +17 -6
  310. package/src/session/SessionManager.ts +94 -14
  311. package/src/session/case/CaseClient.ts +2 -2
  312. package/src/session/index.ts +2 -3
@@ -8,7 +8,7 @@ import { InteractionClient } from "../../interaction/InteractionClient.js";
8
8
  /**
9
9
  * Factory function to create an AttributeClient for a given attribute.
10
10
  */
11
- export declare function createAttributeClient<T>(attribute: Attribute<T, any>, name: string, endpointId: EndpointNumber, clusterId: ClusterId, interactionClient: InteractionClient, present?: boolean): AttributeClient<T>;
11
+ export declare function createAttributeClient<T>(attribute: Attribute<T, any>, name: string, endpointId: EndpointNumber | undefined, clusterId: ClusterId, interactionClient: InteractionClient, present?: boolean): AttributeClient<T>;
12
12
  /**
13
13
  * General class for AttributeClients
14
14
  */
@@ -16,11 +16,11 @@ export declare class AttributeClient<T = any> {
16
16
  #private;
17
17
  readonly attribute: Attribute<T, any>;
18
18
  readonly name: string;
19
- readonly endpointId: EndpointNumber;
19
+ readonly endpointId: EndpointNumber | undefined;
20
20
  readonly clusterId: ClusterId;
21
21
  protected readonly schema: TlvSchema<any>;
22
22
  readonly id: AttributeId;
23
- constructor(attribute: Attribute<T, any>, name: string, endpointId: EndpointNumber, clusterId: ClusterId, interactionClient: InteractionClient);
23
+ constructor(attribute: Attribute<T, any>, name: string, endpointId: EndpointNumber | undefined, clusterId: ClusterId, interactionClient: InteractionClient);
24
24
  /**
25
25
  * Set the value of the attribute. When dataVersion parameter is provided the value is only set when the
26
26
  * cluster dataVersion of the server matches. If it does not match it is rejected with an Error.
@@ -1 +1 @@
1
- {"version":3,"file":"AttributeClient.d.ts","sourceRoot":"","sources":["../../../../src/cluster/client/AttributeClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,SAAS,EAAkB,WAAW,EAAE,SAAS,EAAE,cAAc,EAAe,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAG3E;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EACnC,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAC5B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,cAAc,EAC1B,SAAS,EAAE,SAAS,EACpB,iBAAiB,EAAE,iBAAiB,EACpC,OAAO,UAAQ,GAChB,eAAe,CAAC,CAAC,CAAC,CAQpB;AAED;;GAEG;AACH,qBAAa,eAAe,CAAC,CAAC,GAAG,GAAG;;IAU5B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,UAAU,EAAE,cAAc;IACnC,QAAQ,CAAC,SAAS,EAAE,SAAS;IATjC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IAE1C,QAAQ,CAAC,EAAE,EAAE,WAAW,CAAC;gBAIZ,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAC5B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,cAAc,EAC1B,SAAS,EAAE,SAAS,EAC7B,iBAAiB,EAAE,iBAAiB;IAWxC;;;OAGG;IACG,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;IA4CxC,IAAI,YAAY,YAEf;IAED,QAAQ;IAQR;;;;;;OAMG;IACG,GAAG,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,gBAAgB,UAAO;IAe9D;;;;;;OAMG;IACG,cAAc,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,gBAAgB,UAAO;;;;IAezE,kCAAkC;IAC5B,SAAS,CACX,uBAAuB,EAAE,MAAM,EAC/B,yBAAyB,EAAE,MAAM,EACjC,gBAAgB,CAAC,EAAE,MAAM,EACzB,gBAAgB,UAAO;;;IAiB3B;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,CAAC;IAIf,uCAAuC;IACvC,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI;IAI3C,4CAA4C;IAC5C,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI;CAMjD;AAED;;GAEG;AACH,qBAAa,wBAAwB,CAAC,CAAC,CAAE,SAAQ,eAAe,CAAC,CAAC,CAAC;CAAG;AAEtE;;;GAGG;AACH,qBAAa,+BAAgC,SAAQ,wBAAwB,CAAC,GAAG,CAAC;CAAG"}
1
+ {"version":3,"file":"AttributeClient.d.ts","sourceRoot":"","sources":["../../../../src/cluster/client/AttributeClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,SAAS,EAAkB,WAAW,EAAE,SAAS,EAAE,cAAc,EAAe,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAG3E;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EACnC,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAC5B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,cAAc,GAAG,SAAS,EACtC,SAAS,EAAE,SAAS,EACpB,iBAAiB,EAAE,iBAAiB,EACpC,OAAO,UAAQ,GAChB,eAAe,CAAC,CAAC,CAAC,CAQpB;AAED;;GAEG;AACH,qBAAa,eAAe,CAAC,CAAC,GAAG,GAAG;;IAU5B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,UAAU,EAAE,cAAc,GAAG,SAAS;IAC/C,QAAQ,CAAC,SAAS,EAAE,SAAS;IATjC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IAE1C,QAAQ,CAAC,EAAE,EAAE,WAAW,CAAC;gBAIZ,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAC5B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,cAAc,GAAG,SAAS,EACtC,SAAS,EAAE,SAAS,EAC7B,iBAAiB,EAAE,iBAAiB;IAWxC;;;OAGG;IACG,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;IA4CxC,IAAI,YAAY,YAEf;IAED,QAAQ;IAWR;;;;;;OAMG;IACG,GAAG,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,gBAAgB,UAAO;IAkB9D;;;;;;OAMG;IACG,cAAc,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,gBAAgB,UAAO;;;;IAkBzE,kCAAkC;IAC5B,SAAS,CACX,uBAAuB,EAAE,MAAM,EAC/B,yBAAyB,EAAE,MAAM,EACjC,gBAAgB,CAAC,EAAE,MAAM,EACzB,gBAAgB,UAAO;;;IAoB3B;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,CAAC;IAIf,uCAAuC;IACvC,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI;IAI3C,4CAA4C;IAC5C,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI;CAMjD;AAED;;GAEG;AACH,qBAAa,wBAAwB,CAAC,CAAC,CAAE,SAAQ,eAAe,CAAC,CAAC,CAAC;CAAG;AAEtE;;;GAGG;AACH,qBAAa,+BAAgC,SAAQ,wBAAwB,CAAC,GAAG,CAAC;CAAG"}
@@ -6,7 +6,7 @@
6
6
  import { ImplementationError } from "#general";
7
7
  import { FabricIndex as FabricIndexElement } from "#model";
8
8
  import { AttributeError, FabricIndex } from "#types";
9
- import { NoAssociatedFabricError } from "../../session/SecureSession.js";
9
+ import { NoAssociatedFabricError } from "../../session/NodeSession.js";
10
10
  function createAttributeClient(attribute, name, endpointId, clusterId, interactionClient, present = false) {
11
11
  if (attribute.unknown) {
12
12
  return new UnknownSupportedAttributeClient(attribute, name, endpointId, clusterId, interactionClient);
@@ -81,6 +81,9 @@ class AttributeClient {
81
81
  return this.#isFabricScoped;
82
82
  }
83
83
  getLocal() {
84
+ if (this.endpointId === void 0) {
85
+ throw new ImplementationError(`Cannot read attribute ${this.name} without endpointId.`);
86
+ }
84
87
  return this.#interactionClient.getStoredAttribute({
85
88
  endpointId: this.endpointId,
86
89
  clusterId: this.clusterId,
@@ -95,6 +98,9 @@ class AttributeClient {
95
98
  * - `undefined` returns local values if available or if the read is fabric filtered, otherwise remote read
96
99
  */
97
100
  async get(requestFromRemote, isFabricFiltered = true) {
101
+ if (this.endpointId === void 0) {
102
+ throw new ImplementationError(`Cannot read attribute ${this.name} without endpointId.`);
103
+ }
98
104
  if (requestFromRemote === void 0) {
99
105
  requestFromRemote = this.#isFabricScoped || !this.#updatedBySubscriptions ? true : void 0;
100
106
  } else if (!requestFromRemote && this.#isFabricScoped) {
@@ -116,6 +122,9 @@ class AttributeClient {
116
122
  * - `undefined` returns local values if available or if the read is fabric filtered, otherwise remote read
117
123
  */
118
124
  async getWithVersion(requestFromRemote, isFabricFiltered = true) {
125
+ if (this.endpointId === void 0) {
126
+ throw new ImplementationError(`Cannot read attribute ${this.name} without endpointId.`);
127
+ }
119
128
  if (requestFromRemote === void 0) {
120
129
  requestFromRemote = this.#isFabricScoped || !this.#updatedBySubscriptions ? true : void 0;
121
130
  } else if (!requestFromRemote && this.#isFabricScoped) {
@@ -131,6 +140,9 @@ class AttributeClient {
131
140
  }
132
141
  /** Subscribe to the attribute. */
133
142
  async subscribe(minIntervalFloorSeconds, maxIntervalCeilingSeconds, knownDataVersion, isFabricFiltered = true) {
143
+ if (this.endpointId === void 0) {
144
+ throw new ImplementationError(`Cannot read attribute ${this.name} without endpointId.`);
145
+ }
134
146
  if (!this.#updatedBySubscriptions) {
135
147
  throw new ImplementationError(`Attribute ${this.name} is not updated by subscriptions.`);
136
148
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/cluster/client/AttributeClient.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,2BAA2B;AACpC,SAAS,eAAe,0BAA0B;AAClD,SAAoB,gBAAwD,mBAA8B;AAE1G,SAAS,+BAA+B;AAKjC,SAAS,sBACZ,WACA,MACA,YACA,WACA,mBACA,UAAU,OACQ;AAClB,MAAI,UAAU,SAAS;AACnB,WAAO,IAAI,gCAAgC,WAAW,MAAM,YAAY,WAAW,iBAAiB;AAAA,EACxG;AACA,MAAI,SAAS;AACT,WAAO,IAAI,yBAAyB,WAAW,MAAM,YAAY,WAAW,iBAAiB;AAAA,EACjG;AACA,SAAO,IAAI,gBAAgB,WAAW,MAAM,YAAY,WAAW,iBAAiB;AACxF;AAKO,MAAM,gBAAyB;AAAA,EASlC,YACa,WACA,MACA,YACA,WACT,mBACF;AALW;AACA;AACA;AACA;AAGT,UAAM,EAAE,QAAQ,UAAU,cAAc,IAAI,YAAY,IAAI;AAC5D,SAAK,SAAS;AACd,SAAK,cAAc;AACnB,SAAK,kBAAkB;AACvB,SAAK,0BAA0B,CAAC;AAChC,SAAK,KAAK;AACV,SAAK,qBAAqB;AAAA,EAC9B;AAAA,EAtBS;AAAA,EACA;AAAA,EACA;AAAA,EACU;AAAA,EACV,aAAa,IAAI,MAA6B;AAAA,EAC9C;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAsBT,MAAM,IAAI,OAAU,aAAsB;AACtC,QAAI,CAAC,KAAK,YAAa,OAAM,IAAI,eAAe,aAAa,KAAK,IAAI,kBAAkB;AAExF,YAAQ,KAAK,OAAO;AAAA,MAChB;AAAA,MACQ,mBAAmB;AAAA,MAC3B,YAAY;AAAA,MACZ,wBAAsB,uBAAuB;AAAA,IACjD;AAEA,SAAK,OAAO,SAAS,KAAK;AAE1B,QAAI,KAAK,iBAAiB;AAEtB,cAAQ,KAAK,OAAO;AAAA,QAChB;AAAA,QACQ,mBAAmB;AAAA,QAC3B,wBAAsB,uBAAuB,YAAY;AAAA,MAC7D;AAEA,UAAI;AACA,cAAM,gBAAgB,KAAK,mBAAmB,QAAQ;AAEtD,gBAAQ,KAAK,OAAO;AAAA,UAChB;AAAA,UACQ,mBAAmB;AAAA,UAC3B,wBAAsB,mBAAmB,UAAU,cAAc;AAAA,QACrE;AAAA,MACJ,SAAS,GAAG;AACR,gCAAwB,OAAO,CAAC;AAAA,MACpC;AAAA,IACJ;AAEA,WAAO,MAAM,KAAK,mBAAmB,aAAgB;AAAA,MACjD,eAAe;AAAA,QACX,YAAY,KAAK;AAAA,QACjB,WAAW,KAAK;AAAA,QAChB,WAAW,KAAK;AAAA,QAChB;AAAA,QACA;AAAA,MACJ;AAAA,IACJ,CAAC;AAAA,EACL;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,WAAW;AACP,WAAO,KAAK,mBAAmB,mBAAmB;AAAA,MAC9C,YAAY,KAAK;AAAA,MACjB,WAAW,KAAK;AAAA,MAChB,WAAW,KAAK;AAAA,IACpB,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAM,IAAI,mBAA6B,mBAAmB,MAAM;AAC5D,QAAI,sBAAsB,QAAW;AACjC,0BAAoB,KAAK,mBAAmB,CAAC,KAAK,0BAA0B,OAAO;AAAA,IACvF,WAAW,CAAC,qBAAqB,KAAK,iBAAiB;AACnD,0BAAoB;AAAA,IACxB;AACA,WAAO,MAAM,KAAK,mBAAmB,aAAa;AAAA,MAC9C,YAAY,KAAK;AAAA,MACjB,WAAW,KAAK;AAAA,MAChB,WAAW,KAAK;AAAA,MAChB;AAAA,MACA;AAAA,IACJ,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAM,eAAe,mBAA6B,mBAAmB,MAAM;AACvE,QAAI,sBAAsB,QAAW;AACjC,0BAAoB,KAAK,mBAAmB,CAAC,KAAK,0BAA0B,OAAO;AAAA,IACvF,WAAW,CAAC,qBAAqB,KAAK,iBAAiB;AACnD,0BAAoB;AAAA,IACxB;AACA,WAAO,MAAM,KAAK,mBAAmB,wBAAwB;AAAA,MACzD,YAAY,KAAK;AAAA,MACjB,WAAW,KAAK;AAAA,MAChB,WAAW,KAAK;AAAA,MAChB;AAAA,MACA;AAAA,IACJ,CAAC;AAAA,EACL;AAAA;AAAA,EAGA,MAAM,UACF,yBACA,2BACA,kBACA,mBAAmB,MACrB;AACE,QAAI,CAAC,KAAK,yBAAyB;AAC/B,YAAM,IAAI,oBAAoB,aAAa,KAAK,IAAI,mCAAmC;AAAA,IAC3F;AACA,WAAO,KAAK,mBAAmB,mBAAmB;AAAA,MAC9C,YAAY,KAAK;AAAA,MACjB,WAAW,KAAK;AAAA,MAChB,WAAW,KAAK;AAAA,MAChB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAU,KAAK,OAAO,KAAK,IAAI;AAAA,IACnC,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,OAAO,OAAU;AACb,SAAK,WAAW,QAAQ,cAAY,SAAS,KAAK,CAAC;AAAA,EACvD;AAAA;AAAA,EAGA,YAAY,UAAiC;AACzC,SAAK,WAAW,KAAK,QAAQ;AAAA,EACjC;AAAA;AAAA,EAGA,eAAe,UAAiC;AAC5C,UAAM,aAAa,KAAK,WAAW,QAAQ,QAAQ;AACnD,QAAI,eAAe,IAAI;AACnB,WAAK,WAAW,OAAO,YAAY,CAAC;AAAA,IACxC;AAAA,EACJ;AACJ;AAKO,MAAM,iCAAoC,gBAAmB;AAAC;AAM9D,MAAM,wCAAwC,yBAA8B;AAAC;",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import { ClusterType, EndpointNumber, GlobalAttributes } from "#types";
7
7
  import { InteractionClient } from "../../interaction/InteractionClient.js";
8
- import { AttributeClientValues, ClusterClientObj } from "./ClusterClientTypes.js";
9
- export declare function ClusterClient<const T extends ClusterType>(clusterDef: T, endpointId: EndpointNumber, interactionClient: InteractionClient, globalAttributeValues?: Partial<AttributeClientValues<GlobalAttributes<T["features"]>>>): ClusterClientObj<T>;
8
+ import { AttributeClientValues, ClusterClientObj, GroupClusterClientObj } from "./ClusterClientTypes.js";
9
+ export declare function GroupClusterClient<const T extends ClusterType>(clusterDef: T, interactionClient: InteractionClient, globalAttributeValues?: Partial<AttributeClientValues<GlobalAttributes<T["features"]>>>): GroupClusterClientObj<T>;
10
+ export declare function ClusterClient<const T extends ClusterType>(clusterDef: T, endpointId: EndpointNumber | undefined, interactionClient: InteractionClient, globalAttributeValues?: Partial<AttributeClientValues<GlobalAttributes<T["features"]>>>): ClusterClientObj<T>;
10
11
  //# sourceMappingURL=ClusterClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClusterClient.d.ts","sourceRoot":"","sources":["../../../../src/cluster/client/ClusterClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAIH,WAAW,EAGX,cAAc,EAGd,gBAAgB,EAOnB,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE3E,OAAO,EAEH,qBAAqB,EACrB,gBAAgB,EAGnB,MAAM,yBAAyB,CAAC;AAKjC,wBAAgB,aAAa,CAAC,KAAK,CAAC,CAAC,SAAS,WAAW,EACrD,UAAU,EAAE,CAAC,EACb,UAAU,EAAE,cAAc,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,qBAAqB,GAAE,OAAO,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAM,GAC5F,gBAAgB,CAAC,CAAC,CAAC,CAgSrB"}
1
+ {"version":3,"file":"ClusterClient.d.ts","sourceRoot":"","sources":["../../../../src/cluster/client/ClusterClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAIH,WAAW,EAGX,cAAc,EAGd,gBAAgB,EAOnB,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE3E,OAAO,EAEH,qBAAqB,EACrB,gBAAgB,EAEhB,qBAAqB,EAGxB,MAAM,yBAAyB,CAAC;AAKjC,wBAAgB,kBAAkB,CAAC,KAAK,CAAC,CAAC,SAAS,WAAW,EAC1D,UAAU,EAAE,CAAC,EACb,iBAAiB,EAAE,iBAAiB,EACpC,qBAAqB,GAAE,OAAO,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAM,GAC5F,qBAAqB,CAAC,CAAC,CAAC,CAM1B;AAED,wBAAgB,aAAa,CAAC,KAAK,CAAC,CAAC,SAAS,WAAW,EACrD,UAAU,EAAE,CAAC,EACb,UAAU,EAAE,cAAc,GAAG,SAAS,EACtC,iBAAiB,EAAE,iBAAiB,EACpC,qBAAqB,GAAE,OAAO,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAM,GAC5F,gBAAgB,CAAC,CAAC,CAAC,CAwWrB"}
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { capitalize, Diagnostic, Logger, Merge } from "#general";
6
+ import { capitalize, Diagnostic, ImplementationError, Logger, Merge } from "#general";
7
7
  import {
8
8
  GlobalAttributes,
9
9
  StatusCode,
@@ -13,7 +13,17 @@ import {
13
13
  import { createAttributeClient } from "./AttributeClient.js";
14
14
  import { createEventClient } from "./EventClient.js";
15
15
  const logger = Logger.get("ClusterClient");
16
+ function GroupClusterClient(clusterDef, interactionClient, globalAttributeValues = {}) {
17
+ if (!interactionClient.isGroupAddress) {
18
+ throw new Error("GroupClusterClient must be used with a GroupAddress InteractionClient");
19
+ }
20
+ return ClusterClient(clusterDef, void 0, interactionClient, globalAttributeValues);
21
+ }
16
22
  function ClusterClient(clusterDef, endpointId, interactionClient, globalAttributeValues = {}) {
23
+ const isGroupAddress = interactionClient.isGroupAddress;
24
+ if (isGroupAddress !== (endpointId === void 0)) {
25
+ throw new Error("Endpoint ID must be defined for a Non-Group ClusterClient");
26
+ }
17
27
  function addAttributeToResult(attribute, attributeName) {
18
28
  attributes[attributeName] = createAttributeClient(
19
29
  attribute,
@@ -27,6 +37,9 @@ function ClusterClient(clusterDef, endpointId, interactionClient, globalAttribut
27
37
  attributeToId[attribute.id] = attributeName;
28
38
  const capitalizedAttributeName = capitalize(attributeName);
29
39
  result[`get${capitalizedAttributeName}Attribute`] = async (requestFromRemote, isFabricFiltered = true) => {
40
+ if (isGroupAddress) {
41
+ throw new ImplementationError("Group cluster clients do not support reading attributes");
42
+ }
30
43
  try {
31
44
  return await attributes[attributeName].get(requestFromRemote, isFabricFiltered);
32
45
  } catch (e) {
@@ -38,6 +51,9 @@ function ClusterClient(clusterDef, endpointId, interactionClient, globalAttribut
38
51
  };
39
52
  result[`set${capitalizedAttributeName}Attribute`] = async (value, dataVersion) => attributes[attributeName].set(value, dataVersion);
40
53
  result[`subscribe${capitalizedAttributeName}Attribute`] = async (listener, minIntervalS, maxIntervalS, knownDataVersion, isFabricFiltered) => {
54
+ if (isGroupAddress) {
55
+ throw new ImplementationError("Group cluster clients do not support subscribing attributes");
56
+ }
41
57
  attributes[attributeName].addListener(listener);
42
58
  return attributes[attributeName].subscribe(
43
59
  minIntervalS,
@@ -47,9 +63,15 @@ function ClusterClient(clusterDef, endpointId, interactionClient, globalAttribut
47
63
  );
48
64
  };
49
65
  result[`add${capitalizedAttributeName}AttributeListener`] = (listener) => {
66
+ if (isGroupAddress) {
67
+ throw new ImplementationError("Group cluster clients do not support subscribing attributes");
68
+ }
50
69
  attributes[attributeName].addListener(listener);
51
70
  };
52
71
  result[`remove${capitalizedAttributeName}AttributeListener`] = (listener) => {
72
+ if (isGroupAddress) {
73
+ throw new ImplementationError("Group cluster clients do not support subscribing attributes");
74
+ }
53
75
  attributes[attributeName].removeListener(listener);
54
76
  };
55
77
  }
@@ -59,6 +81,9 @@ function ClusterClient(clusterDef, endpointId, interactionClient, globalAttribut
59
81
  eventToId[event.id] = eventName;
60
82
  const capitalizedEventName = capitalize(eventName);
61
83
  result[`get${capitalizedEventName}Event`] = async (minimumEventNumber, isFabricFiltered) => {
84
+ if (isGroupAddress) {
85
+ throw new ImplementationError("Group cluster clients do not support reading events");
86
+ }
62
87
  try {
63
88
  return await events[eventName].get(minimumEventNumber, isFabricFiltered);
64
89
  } catch (e) {
@@ -69,6 +94,9 @@ function ClusterClient(clusterDef, endpointId, interactionClient, globalAttribut
69
94
  }
70
95
  };
71
96
  result[`subscribe${capitalizedEventName}Event`] = async (listener, minIntervalS, maxIntervalS, isUrgent, minimumEventNumber, isFabricFiltered) => {
97
+ if (isGroupAddress) {
98
+ throw new ImplementationError("Group cluster clients do not support subscribing to events");
99
+ }
72
100
  events[eventName].addListener(listener);
73
101
  return events[eventName].subscribe(
74
102
  minIntervalS,
@@ -79,9 +107,15 @@ function ClusterClient(clusterDef, endpointId, interactionClient, globalAttribut
79
107
  );
80
108
  };
81
109
  result[`add${capitalizedEventName}EventListener`] = (listener) => {
110
+ if (isGroupAddress) {
111
+ throw new ImplementationError("Group cluster clients do not support subscribing events");
112
+ }
82
113
  events[eventName].addListener(listener);
83
114
  };
84
115
  result[`remove${capitalizedEventName}EventListener`] = (listener) => {
116
+ if (isGroupAddress) {
117
+ throw new ImplementationError("Group cluster clients do not support subscribing events");
118
+ }
85
119
  events[eventName].removeListener(listener);
86
120
  };
87
121
  }
@@ -117,6 +151,9 @@ function ClusterClient(clusterDef, endpointId, interactionClient, globalAttribut
117
151
  events,
118
152
  commands,
119
153
  subscribeAllAttributes: async (options) => {
154
+ if (isGroupAddress) {
155
+ throw new ImplementationError("Group cluster clients do not support subscribing attributes");
156
+ }
120
157
  const {
121
158
  minIntervalFloorSeconds,
122
159
  maxIntervalCeilingSeconds,
@@ -172,9 +209,15 @@ function ClusterClient(clusterDef, endpointId, interactionClient, globalAttribut
172
209
  }
173
210
  },
174
211
  isAttributeSupported: (attributeId) => {
212
+ if (isGroupAddress) {
213
+ throw new ImplementationError("Group cluster clients do not allow to determine attribute existence.");
214
+ }
175
215
  return !!globalAttributeValues?.attributeList?.includes(attributeId);
176
216
  },
177
217
  isAttributeSupportedByName: (attributeName) => {
218
+ if (isGroupAddress) {
219
+ throw new ImplementationError("Group cluster clients do not allow to determine attribute existence.");
220
+ }
178
221
  const attribute = attributes[attributeName];
179
222
  if (attribute === void 0) {
180
223
  return false;
@@ -182,9 +225,15 @@ function ClusterClient(clusterDef, endpointId, interactionClient, globalAttribut
182
225
  return !!globalAttributeValues?.attributeList?.includes(attribute.id);
183
226
  },
184
227
  isCommandSupported: (commandId) => {
228
+ if (isGroupAddress) {
229
+ throw new ImplementationError("Group cluster clients do not allow to determine command existence.");
230
+ }
185
231
  return !!globalAttributeValues?.acceptedCommandList?.includes(commandId);
186
232
  },
187
233
  isCommandSupportedByName: (commandName) => {
234
+ if (isGroupAddress) {
235
+ throw new ImplementationError("Group cluster clients do not allow to determine attribute existence.");
236
+ }
188
237
  const command = commandDef[commandName];
189
238
  if (command === void 0) {
190
239
  return false;
@@ -221,6 +270,15 @@ function ClusterClient(clusterDef, endpointId, interactionClient, globalAttribut
221
270
  commandToId[requestId] = commandName;
222
271
  commands[commandName] = async (request, options = {}) => {
223
272
  const { asTimedRequest, timedRequestTimeoutMs, useExtendedFailSafeMessageResponseTimeout } = options;
273
+ if (isGroupAddress) {
274
+ return interactionClient.invokeWithSuppressedResponse({
275
+ clusterId,
276
+ command: commandDef[commandName],
277
+ request,
278
+ asTimedRequest,
279
+ timedRequestTimeoutMs
280
+ });
281
+ }
224
282
  return interactionClient.invoke({
225
283
  endpointId,
226
284
  clusterId,
@@ -244,6 +302,7 @@ function ClusterClient(clusterDef, endpointId, interactionClient, globalAttribut
244
302
  return result;
245
303
  }
246
304
  export {
247
- ClusterClient
305
+ ClusterClient,
306
+ GroupClusterClient
248
307
  };
249
308
  //# sourceMappingURL=ClusterClient.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/cluster/client/ClusterClient.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -36,6 +36,17 @@ export type SignatureFromCommandSpec<C extends Command<any, any, any>> = (reques
36
36
  */
37
37
  useExtendedFailSafeMessageResponseTimeout?: boolean;
38
38
  }) => Promise<ResponseType<C>>;
39
+ export type SignatureFromCommandSpecWithoutResponse<C extends Command<any, any, any>> = (request: RequestType<C>, options?: {
40
+ /** Send this command as a timed request also when not required. Default timeout are 10 seconds. */
41
+ asTimedRequest?: boolean;
42
+ /** Override the request timeout when the command is sent as times request. Default are 10s. */
43
+ timedRequestTimeoutMs?: number;
44
+ /**
45
+ * Use the extended fail-safe message response timeout of 30 seconds. Use this for all commands
46
+ * executed during an activated FailSafe context!
47
+ */
48
+ useExtendedFailSafeMessageResponseTimeout?: boolean;
49
+ }) => Promise<void>;
39
50
  type GetterTypeFromSpec<A extends Attribute<any, any>> = A extends OptionalAttribute<infer T, any> ? T | undefined : AttributeJsType<A>;
40
51
  type ClientAttributeGetters<A extends Attributes> = Omit<{
41
52
  [P in keyof A as `get${Capitalize<string & P>}Attribute`]: (requestFromRemote?: boolean, isFabricFiltered?: boolean) => Promise<GetterTypeFromSpec<A[P]>>;
@@ -62,6 +73,9 @@ type ClientAttributeListeners<A extends Attributes> = {
62
73
  type CommandServers<C extends Commands> = {
63
74
  [P in keyof C]: SignatureFromCommandSpec<C[P]>;
64
75
  };
76
+ type NoResponseCommandServers<C extends Commands> = {
77
+ [P in keyof C]: SignatureFromCommandSpecWithoutResponse<C[P]>;
78
+ };
65
79
  type ClientEventGetters<E extends Events> = {
66
80
  [P in keyof E as `get${Capitalize<string & P>}Event`]: (minimumEventNumber?: number | bigint, isFabricFiltered?: boolean) => Promise<DecodedEventData<EventType<E[P]>>>;
67
81
  };
@@ -73,8 +87,8 @@ type ClientEventListeners<E extends Events> = {
73
87
  } & {
74
88
  [P in keyof E as `remove${Capitalize<string & P>}EventListener`]: (listener: (value: DecodedEventData<EventType<E[P]>>) => void) => void;
75
89
  };
76
- /** Strongly typed interface of a cluster client */
77
- export type ClusterClientObj<T extends ClusterType = ClusterType> = {
90
+ /** Strongly typed interface of a group cluster client (limited functionalities) */
91
+ export type BaseClusterClientObj<T extends ClusterType = ClusterType> = {
78
92
  /**
79
93
  * Cluster ID
80
94
  * @readonly
@@ -102,11 +116,6 @@ export type ClusterClientObj<T extends ClusterType = ClusterType> = {
102
116
  * @readonly
103
117
  */
104
118
  readonly isUnknown: boolean;
105
- /**
106
- * Endpoint ID the cluster is on.
107
- * @readonly
108
- */
109
- readonly endpointId: number;
110
119
  /**
111
120
  * Supported Features of the cluster
112
121
  * @readonly
@@ -118,6 +127,22 @@ export type ClusterClientObj<T extends ClusterType = ClusterType> = {
118
127
  * @readonly
119
128
  */
120
129
  readonly attributes: AttributeClients<T["features"], T["attributes"]>;
130
+ } & ClientAttributeSetters<T["attributes"]>;
131
+ export type GroupClusterClientObj<T extends ClusterType = ClusterType> = BaseClusterClientObj<T> & {
132
+ /**
133
+ * Commands of the cluster as object with named keys. This can be used to discover the commands of the cluster
134
+ * programmatically.
135
+ * @readonly
136
+ */
137
+ readonly commands: NoResponseCommandServers<T["commands"]>;
138
+ } & NoResponseCommandServers<T["commands"]>;
139
+ /** Strongly typed interface of a cluster client */
140
+ export type ClusterClientObj<T extends ClusterType = ClusterType> = BaseClusterClientObj<T> & {
141
+ /**
142
+ * Endpoint ID the cluster is on.
143
+ * @readonly
144
+ */
145
+ readonly endpointId: number;
121
146
  /**
122
147
  * Events of the cluster as object with named keys. This can be used to discover the events of the cluster
123
148
  * programmatically.
@@ -154,7 +179,7 @@ export type ClusterClientObj<T extends ClusterType = ClusterType> = {
154
179
  isCommandSupported: (commandId: CommandId) => boolean;
155
180
  /** Returns if a given Command with provided name is present and supported at the connected cluster server. */
156
181
  isCommandSupportedByName: (commandName: string) => boolean;
157
- } & ClientAttributeGetters<T["attributes"]> & ClientGlobalAttributeGetters<T["features"]> & ClientAttributeSetters<T["attributes"]> & ClientAttributeSubscribers<T["attributes"]> & ClientAttributeListeners<T["attributes"]> & CommandServers<T["commands"]> & ClientEventGetters<T["events"]> & ClientEventSubscribers<T["events"]> & ClientEventListeners<T["events"]>;
182
+ } & ClientAttributeGetters<T["attributes"]> & ClientGlobalAttributeGetters<T["features"]> & ClientAttributeSubscribers<T["attributes"]> & ClientAttributeListeners<T["attributes"]> & CommandServers<T["commands"]> & ClientEventGetters<T["events"]> & ClientEventSubscribers<T["events"]> & ClientEventListeners<T["events"]>;
158
183
  export type ClusterClientObjInternal<T extends ClusterType = ClusterType> = ClusterClientObj<T> & {
159
184
  /**
160
185
  * Trigger an attribute update. This is mainly used internally and not needed to be called by the user.
@@ -1 +1 @@
1
- {"version":3,"file":"ClusterClientTypes.d.ts","sourceRoot":"","sources":["../../../../src/cluster/client/ClusterClientTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ClusterClientTypes.d.ts","sourceRoot":"","sources":["../../../../src/cluster/client/ClusterClientTypes.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ import { InteractionClient } from "../../interaction/InteractionClient.js";
9
9
  /**
10
10
  * Factory function to create an EVentClient for a given event.
11
11
  */
12
- export declare function createEventClient<T>(event: Event<T, any>, name: string, endpointId: EndpointNumber, clusterId: ClusterId, interactionClient: InteractionClient): EventClient<T>;
12
+ export declare function createEventClient<T>(event: Event<T, any>, name: string, endpointId: EndpointNumber | undefined, clusterId: ClusterId, interactionClient: InteractionClient): EventClient<T>;
13
13
  /**
14
14
  * General class for EventClients
15
15
  */
@@ -17,10 +17,10 @@ export declare class EventClient<T> {
17
17
  #private;
18
18
  readonly event: Event<T, any>;
19
19
  readonly name: string;
20
- readonly endpointId: EndpointNumber;
20
+ readonly endpointId: EndpointNumber | undefined;
21
21
  readonly clusterId: ClusterId;
22
22
  readonly id: EventId;
23
- constructor(event: Event<T, any>, name: string, endpointId: EndpointNumber, clusterId: ClusterId, interactionClient: InteractionClient);
23
+ constructor(event: Event<T, any>, name: string, endpointId: EndpointNumber | undefined, clusterId: ClusterId, interactionClient: InteractionClient);
24
24
  get(minimumEventNumber?: EventNumber, isFabricFiltered?: boolean): Promise<DecodedEventData<T>[] | undefined>;
25
25
  subscribe(minIntervalFloorSeconds: number, maxIntervalCeilingSeconds: number, isUrgent?: boolean, minimumEventNumber?: EventNumber, isFabricFiltered?: boolean): Promise<{
26
26
  maxInterval: number;
@@ -1 +1 @@
1
- {"version":3,"file":"EventClient.d.ts","sourceRoot":"","sources":["../../../../src/cluster/client/EventClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE3E;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAC/B,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EACpB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,cAAc,EAC1B,SAAS,EAAE,SAAS,EACpB,iBAAiB,EAAE,iBAAiB,GACrC,WAAW,CAAC,CAAC,CAAC,CAEhB;AAED;;GAEG;AACH,qBAAa,WAAW,CAAC,CAAC;;IAMlB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,UAAU,EAAE,cAAc;IACnC,QAAQ,CAAC,SAAS,EAAE,SAAS;IAPjC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;gBAIR,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EACpB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,cAAc,EAC1B,SAAS,EAAE,SAAS,EAC7B,iBAAiB,EAAE,iBAAiB;IAMlC,GAAG,CACL,kBAAkB,CAAC,EAAE,WAAW,EAChC,gBAAgB,CAAC,EAAE,OAAO,GAC3B,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC;IAUvC,SAAS,CACX,uBAAuB,EAAE,MAAM,EAC/B,yBAAyB,EAAE,MAAM,EACjC,QAAQ,UAAO,EACf,kBAAkB,CAAC,EAAE,WAAW,EAChC,gBAAgB,CAAC,EAAE,OAAO;;;IAe9B,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAMpC,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,IAAI;IAI7D,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,IAAI;CAMnE"}
1
+ {"version":3,"file":"EventClient.d.ts","sourceRoot":"","sources":["../../../../src/cluster/client/EventClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE3E;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAC/B,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EACpB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,cAAc,GAAG,SAAS,EACtC,SAAS,EAAE,SAAS,EACpB,iBAAiB,EAAE,iBAAiB,GACrC,WAAW,CAAC,CAAC,CAAC,CAEhB;AAED;;GAEG;AACH,qBAAa,WAAW,CAAC,CAAC;;IAMlB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,UAAU,EAAE,cAAc,GAAG,SAAS;IAC/C,QAAQ,CAAC,SAAS,EAAE,SAAS;IAPjC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;gBAIR,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EACpB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,cAAc,GAAG,SAAS,EACtC,SAAS,EAAE,SAAS,EAC7B,iBAAiB,EAAE,iBAAiB;IAMlC,GAAG,CACL,kBAAkB,CAAC,EAAE,WAAW,EAChC,gBAAgB,CAAC,EAAE,OAAO,GAC3B,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC;IAavC,SAAS,CACX,uBAAuB,EAAE,MAAM,EAC/B,yBAAyB,EAAE,MAAM,EACjC,QAAQ,UAAO,EACf,kBAAkB,CAAC,EAAE,WAAW,EAChC,gBAAgB,CAAC,EAAE,OAAO;;;IAkB9B,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAMpC,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,IAAI;IAI7D,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,IAAI;CAMnE"}
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { ImplementationError } from "#general";
6
7
  function createEventClient(event, name, endpointId, clusterId, interactionClient) {
7
8
  return new EventClient(event, name, endpointId, clusterId, interactionClient);
8
9
  }
@@ -19,6 +20,9 @@ class EventClient {
19
20
  id;
20
21
  #interactionClient;
21
22
  async get(minimumEventNumber, isFabricFiltered) {
23
+ if (this.endpointId === void 0) {
24
+ throw new ImplementationError("Cannot read event without endpointId");
25
+ }
22
26
  return await this.#interactionClient.getEvent({
23
27
  endpointId: this.endpointId,
24
28
  clusterId: this.clusterId,
@@ -28,6 +32,9 @@ class EventClient {
28
32
  });
29
33
  }
30
34
  async subscribe(minIntervalFloorSeconds, maxIntervalCeilingSeconds, isUrgent = true, minimumEventNumber, isFabricFiltered) {
35
+ if (this.endpointId === void 0) {
36
+ throw new ImplementationError("Cannot read event without endpointId");
37
+ }
31
38
  return await this.#interactionClient.subscribeEvent({
32
39
  endpointId: this.endpointId,
33
40
  clusterId: this.clusterId,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/cluster/client/EventClient.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAaO,SAAS,kBACZ,OACA,MACA,YACA,WACA,mBACc;AACd,SAAO,IAAI,YAAY,OAAO,MAAM,YAAY,WAAW,iBAAiB;AAChF;AAKO,MAAM,YAAe;AAAA,EAKxB,YACa,OACA,MACA,YACA,WACT,mBACF;AALW;AACA;AACA;AACA;AAGT,SAAK,KAAK,MAAM;AAChB,SAAK,qBAAqB;AAAA,EAC9B;AAAA,EAbS,aAAa,IAAI,MAA4C;AAAA,EAC7D;AAAA,EACA;AAAA,EAaT,MAAM,IACF,oBACA,kBAC0C;AAC1C,WAAO,MAAM,KAAK,mBAAmB,SAAS;AAAA,MAC1C,YAAY,KAAK;AAAA,MACjB,WAAW,KAAK;AAAA,MAChB,OAAO,KAAK;AAAA,MACZ;AAAA,MACA;AAAA,IACJ,CAAC;AAAA,EACL;AAAA,EAEA,MAAM,UACF,yBACA,2BACA,WAAW,MACX,oBACA,kBACF;AACE,WAAO,MAAM,KAAK,mBAAmB,eAAe;AAAA,MAChD,YAAY,KAAK;AAAA,MACjB,WAAW,KAAK;AAAA,MAChB,OAAO,KAAK;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAU,KAAK,OAAO,KAAK,IAAI;AAAA,IACnC,CAAC;AAAA,EACL;AAAA,EAEA,OAAO,UAA+B;AAClC,eAAW,YAAY,KAAK,YAAY;AACpC,eAAS,QAAQ;AAAA,IACrB;AAAA,EACJ;AAAA,EAEA,YAAY,UAAmD;AAC3D,SAAK,WAAW,KAAK,QAAQ;AAAA,EACjC;AAAA,EAEA,eAAe,UAAmD;AAC9D,UAAM,aAAa,KAAK,WAAW,QAAQ,QAAQ;AACnD,QAAI,eAAe,IAAI;AACnB,WAAK,WAAW,OAAO,YAAY,CAAC;AAAA,IACxC;AAAA,EACJ;AACJ;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,2BAA2B;AAQ7B,SAAS,kBACZ,OACA,MACA,YACA,WACA,mBACc;AACd,SAAO,IAAI,YAAY,OAAO,MAAM,YAAY,WAAW,iBAAiB;AAChF;AAKO,MAAM,YAAe;AAAA,EAKxB,YACa,OACA,MACA,YACA,WACT,mBACF;AALW;AACA;AACA;AACA;AAGT,SAAK,KAAK,MAAM;AAChB,SAAK,qBAAqB;AAAA,EAC9B;AAAA,EAbS,aAAa,IAAI,MAA4C;AAAA,EAC7D;AAAA,EACA;AAAA,EAaT,MAAM,IACF,oBACA,kBAC0C;AAC1C,QAAI,KAAK,eAAe,QAAW;AAC/B,YAAM,IAAI,oBAAoB,sCAAsC;AAAA,IACxE;AACA,WAAO,MAAM,KAAK,mBAAmB,SAAS;AAAA,MAC1C,YAAY,KAAK;AAAA,MACjB,WAAW,KAAK;AAAA,MAChB,OAAO,KAAK;AAAA,MACZ;AAAA,MACA;AAAA,IACJ,CAAC;AAAA,EACL;AAAA,EAEA,MAAM,UACF,yBACA,2BACA,WAAW,MACX,oBACA,kBACF;AACE,QAAI,KAAK,eAAe,QAAW;AAC/B,YAAM,IAAI,oBAAoB,sCAAsC;AAAA,IACxE;AACA,WAAO,MAAM,KAAK,mBAAmB,eAAe;AAAA,MAChD,YAAY,KAAK;AAAA,MACjB,WAAW,KAAK;AAAA,MAChB,OAAO,KAAK;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAU,KAAK,OAAO,KAAK,IAAI;AAAA,IACnC,CAAC;AAAA,EACL;AAAA,EAEA,OAAO,UAA+B;AAClC,eAAW,YAAY,KAAK,YAAY;AACpC,eAAS,QAAQ;AAAA,IACrB;AAAA,EACJ;AAAA,EAEA,YAAY,UAAmD;AAC3D,SAAK,WAAW,KAAK,QAAQ;AAAA,EACjC;AAAA,EAEA,eAAe,UAAmD;AAC9D,UAAM,aAAa,KAAK,WAAW,QAAQ,QAAQ;AACnD,QAAI,eAAe,IAAI;AACnB,WAAK,WAAW,OAAO,YAAY,CAAC;AAAA,IACxC;AAAA,EACJ;AACJ;",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MessageCodec.d.ts","sourceRoot":"","sources":["../../../src/codec/MessageCodec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAiC,UAAU,EAAoD,MAAM,UAAU,CAAC;AACvH,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAoC,MAAM,EAAiD,MAAM,QAAQ,CAAC;AAGjH,MAAM,WAAW,YAAY;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC;IACzB,sBAAsB,EAAE,OAAO,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACrD,aAAa,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,MAAM;IACnB,MAAM,EAAE,YAAY,CAAC;IACrB,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAC9B,kBAAkB,EAAE,UAAU,CAAC;CAClC;AAED,MAAM,WAAW,aAAc,SAAQ,MAAM;IACzC,MAAM,EAAE,mBAAmB,CAAC;CAC/B;AACD,MAAM,WAAW,OAAO;IACpB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,OAAO,EAAE,UAAU,CAAC;CACvB;AAED,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC3C,YAAY,EAAE,mBAAmB,CAAC;CACrC;AAID,oBAAY,WAAW;IACnB,KAAK,IAAI;IACT,OAAO,IAAI;CACd;AA0CD,qBAAa,YAAY;IACrB,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa;IAkBpD,MAAM,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,aAAa,GAAG,cAAc;IAgBnF,MAAM,CAAC,aAAa,CAAC,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,OAAO,GAAG,MAAM;IAWlG,MAAM,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,EAAE,MAAM,GAAG,UAAU;IAOzF,OAAO,CAAC,MAAM,CAAC,kBAAkB;IA4CjC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAyBlC,MAAM,CAAC,kBAAkB,CAAC,EACtB,SAAS,EAAE,cAAc,EACzB,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,WAAW,GACd,EAAE,YAAY;IAmBf,MAAM,CAAC,kBAAkB,CACrB,EACI,YAAY,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,EACtC,aAAa,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,EACnF,OAAO,GACV,EAAE,OAAO,EACV,UAAU,CAAC,EAAE,kBAAkB;IA0BnC,OAAO,CAAC,MAAM,CAAC,mBAAmB;CA2BrC"}
1
+ {"version":3,"file":"MessageCodec.d.ts","sourceRoot":"","sources":["../../../src/codec/MessageCodec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAIH,UAAU,EAKb,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAoC,MAAM,EAAiD,MAAM,QAAQ,CAAC;AAGjH,MAAM,WAAW,YAAY;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC;IACzB,sBAAsB,EAAE,OAAO,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACrD,aAAa,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,MAAM;IACnB,MAAM,EAAE,YAAY,CAAC;IACrB,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAC9B,kBAAkB,EAAE,UAAU,CAAC;CAClC;AAED,MAAM,WAAW,aAAc,SAAQ,MAAM;IACzC,MAAM,EAAE,mBAAmB,CAAC;CAC/B;AACD,MAAM,WAAW,OAAO;IACpB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,OAAO,EAAE,UAAU,CAAC;CACvB;AAED,MAAM,WAAW,cAAe,SAAQ,OAAO;IAC3C,YAAY,EAAE,mBAAmB,CAAC;CACrC;AAID,oBAAY,WAAW;IACnB,KAAK,IAAI;IACT,OAAO,IAAI;CACd;AA2CD,qBAAa,YAAY;IACrB,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa;IAkBpD,MAAM,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,aAAa,GAAG,cAAc;IAuBnF,MAAM,CAAC,aAAa,CAAC,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,OAAO,GAAG,MAAM;IAWlG,MAAM,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,EAAE,MAAM,GAAG,UAAU;IAOzF,OAAO,CAAC,MAAM,CAAC,kBAAkB;IA8DjC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAyBlC,MAAM,CAAC,kBAAkB,CAAC,EACtB,SAAS,EAAE,cAAc,EACzB,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,WAAW,GACd,EAAE,YAAY;IAyBf,MAAM,CAAC,kBAAkB,CACrB,EACI,YAAY,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,EACtC,aAAa,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,EACnF,OAAO,GACV,EAAE,OAAO,EACV,UAAU,CAAC,EAAE,kBAAkB;IA0BnC,OAAO,CAAC,MAAM,CAAC,mBAAmB;CA2BrC"}
@@ -3,7 +3,16 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { Bytes, DataReader, DataWriter, Diagnostic, Endian, NotImplementedError, UnexpectedDataError } from "#general";
6
+ import {
7
+ Bytes,
8
+ DataReader,
9
+ DataWriter,
10
+ Diagnostic,
11
+ Endian,
12
+ InternalError,
13
+ NotImplementedError,
14
+ UnexpectedDataError
15
+ } from "#general";
7
16
  import { GroupId, INTERACTION_PROTOCOL_ID, NodeId, SECURE_CHANNEL_PROTOCOL_ID, SecureMessageType } from "#types";
8
17
  import { MessageType } from "../interaction/InteractionMessenger.js";
9
18
  const HEADER_VERSION = 0;
@@ -33,6 +42,7 @@ var SecurityFlag = /* @__PURE__ */ ((SecurityFlag2) => {
33
42
  SecurityFlag2[SecurityFlag2["HasPrivacyEnhancements"] = 128] = "HasPrivacyEnhancements";
34
43
  SecurityFlag2[SecurityFlag2["IsControlMessage"] = 64] = "IsControlMessage";
35
44
  SecurityFlag2[SecurityFlag2["HasMessageExtension"] = 32] = "HasMessageExtension";
45
+ SecurityFlag2[SecurityFlag2["SessionTypeMask"] = 3] = "SessionTypeMask";
36
46
  return SecurityFlag2;
37
47
  })(SecurityFlag || {});
38
48
  function mapProtocolAndMessageType(protocolId, messageType) {
@@ -74,6 +84,11 @@ class MessageCodec {
74
84
  const extensionLength = reader.readUInt16();
75
85
  securityExtension = reader.readByteArray(extensionLength);
76
86
  }
87
+ if (header.sessionType === 1 /* Group */ && !header.isControlMessage) {
88
+ if (payloadHeader.requiresAck || payloadHeader.ackedMessageId) {
89
+ throw new UnexpectedDataError(`Group data messages cannot have requiresAck or ackedMessageId set.`);
90
+ }
91
+ }
77
92
  return {
78
93
  packetHeader: header,
79
94
  payloadHeader,
@@ -113,13 +128,29 @@ class MessageCodec {
113
128
  const sourceNodeId = hasSourceNodeId ? NodeId(reader.readUInt64()) : void 0;
114
129
  const destNodeId = hasDestNodeId ? NodeId(reader.readUInt64()) : void 0;
115
130
  const destGroupId = hasDestGroupId ? GroupId(reader.readUInt16()) : void 0;
116
- const sessionType = securityFlags & 3;
117
- if (sessionType !== 1 /* Group */ && sessionType !== 0 /* Unicast */)
118
- throw new UnexpectedDataError(`Unsupported session type ${sessionType}`);
131
+ const sessionType = securityFlags & 3 /* SessionTypeMask */;
132
+ if (sessionType !== 1 /* Group */ && sessionType !== 0 /* Unicast */) {
133
+ throw new UnexpectedDataError(`Unsupported session type ${sessionType}.`);
134
+ }
135
+ if (sessionType === 0 /* Unicast */ && hasDestGroupId) {
136
+ throw new UnexpectedDataError(`Unicast session cannot have destination group id.`);
137
+ }
138
+ if (sessionType === 1 /* Group */) {
139
+ if (!hasDestGroupId && !hasDestNodeId) {
140
+ throw new UnexpectedDataError(`Group session must have destination group id or destination node id.`);
141
+ }
142
+ if (!hasSourceNodeId) {
143
+ throw new UnexpectedDataError(`Group session must have source node id.`);
144
+ }
145
+ }
119
146
  const hasPrivacyEnhancements = (securityFlags & 128 /* HasPrivacyEnhancements */) !== 0;
120
- if (hasPrivacyEnhancements) throw new NotImplementedError(`Privacy enhancements not supported`);
147
+ if (hasPrivacyEnhancements) {
148
+ throw new NotImplementedError(`Privacy enhancements not supported.`);
149
+ }
121
150
  const isControlMessage = (securityFlags & 64 /* IsControlMessage */) !== 0;
122
- if (isControlMessage) throw new NotImplementedError(`Control Messages not supported`);
151
+ if (isControlMessage) {
152
+ throw new NotImplementedError(`Control Messages not supported.`);
153
+ }
123
154
  const hasMessageExtensions = (securityFlags & 32 /* HasMessageExtension */) !== 0;
124
155
  return {
125
156
  securityFlags,
@@ -164,6 +195,9 @@ class MessageCodec {
164
195
  sourceNodeId,
165
196
  sessionType
166
197
  }) {
198
+ if (sessionType === 1 /* Group */ && (destGroupId === void 0 || sourceNodeId === void 0 || destNodeId !== void 0)) {
199
+ throw new InternalError(`Group session must have destination group id or source node id.`);
200
+ }
167
201
  const writer = new DataWriter(Endian.Little);
168
202
  const flags = HEADER_VERSION << 4 | (destGroupId !== void 0 ? 2 /* HasDestGroupId */ : 0) | (destNodeId !== void 0 ? 1 /* HasDestNodeId */ : 0) | (sourceNodeId !== void 0 ? 4 /* HasSourceNodeId */ : 0);
169
203
  const securityFlags = sessionType;
@@ -173,7 +207,7 @@ class MessageCodec {
173
207
  writer.writeUInt32(messageCounter);
174
208
  if (sourceNodeId !== void 0) writer.writeUInt64(sourceNodeId);
175
209
  if (destNodeId !== void 0) writer.writeUInt64(destNodeId);
176
- if (destGroupId !== void 0) writer.writeUInt32(destGroupId);
210
+ if (destGroupId !== void 0) writer.writeUInt16(destGroupId);
177
211
  return writer.toByteArray();
178
212
  }
179
213
  static messageDiagnostics({