@matter/protocol 0.16.0-alpha.0-20251203-aaf94bca8 → 0.16.0-alpha.0-20251207-37e501b18

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 (570) hide show
  1. package/dist/cjs/action/client/ClientInteraction.d.ts.map +1 -1
  2. package/dist/cjs/action/client/ClientInteraction.js +82 -34
  3. package/dist/cjs/action/client/ClientInteraction.js.map +2 -2
  4. package/dist/cjs/action/client/subscription/ClientSubscription.d.ts +10 -5
  5. package/dist/cjs/action/client/subscription/ClientSubscription.d.ts.map +1 -1
  6. package/dist/cjs/action/client/subscription/ClientSubscription.js +21 -1
  7. package/dist/cjs/action/client/subscription/ClientSubscription.js.map +2 -2
  8. package/dist/cjs/action/client/subscription/ClientSubscriptionHandler.js +2 -3
  9. package/dist/cjs/action/client/subscription/ClientSubscriptionHandler.js.map +1 -1
  10. package/dist/cjs/action/client/subscription/ClientSubscriptions.d.ts +4 -2
  11. package/dist/cjs/action/client/subscription/ClientSubscriptions.d.ts.map +1 -1
  12. package/dist/cjs/action/client/subscription/ClientSubscriptions.js +68 -8
  13. package/dist/cjs/action/client/subscription/ClientSubscriptions.js.map +1 -1
  14. package/dist/cjs/action/client/subscription/PeerSubscription.d.ts +0 -1
  15. package/dist/cjs/action/client/subscription/PeerSubscription.d.ts.map +1 -1
  16. package/dist/cjs/action/client/subscription/PeerSubscription.js +1 -2
  17. package/dist/cjs/action/client/subscription/PeerSubscription.js.map +1 -1
  18. package/dist/cjs/action/client/subscription/SustainedSubscription.d.ts +0 -2
  19. package/dist/cjs/action/client/subscription/SustainedSubscription.d.ts.map +1 -1
  20. package/dist/cjs/action/client/subscription/SustainedSubscription.js +2 -4
  21. package/dist/cjs/action/client/subscription/SustainedSubscription.js.map +1 -1
  22. package/dist/cjs/action/request/Invoke.js +2 -2
  23. package/dist/cjs/action/request/Invoke.js.map +1 -1
  24. package/dist/cjs/action/server/AttributeReadResponse.d.ts.map +1 -1
  25. package/dist/cjs/action/server/AttributeReadResponse.js +78 -25
  26. package/dist/cjs/action/server/AttributeReadResponse.js.map +1 -1
  27. package/dist/cjs/action/server/AttributeWriteResponse.d.ts.map +1 -1
  28. package/dist/cjs/action/server/AttributeWriteResponse.js +70 -17
  29. package/dist/cjs/action/server/AttributeWriteResponse.js.map +1 -1
  30. package/dist/cjs/action/server/CommandInvokeResponse.d.ts.map +1 -1
  31. package/dist/cjs/action/server/CommandInvokeResponse.js +83 -30
  32. package/dist/cjs/action/server/CommandInvokeResponse.js.map +1 -1
  33. package/dist/cjs/action/server/DataResponse.d.ts +1 -0
  34. package/dist/cjs/action/server/DataResponse.d.ts.map +1 -1
  35. package/dist/cjs/action/server/DataResponse.js +3 -0
  36. package/dist/cjs/action/server/DataResponse.js.map +1 -1
  37. package/dist/cjs/action/server/ServerInteraction.d.ts.map +1 -1
  38. package/dist/cjs/action/server/ServerInteraction.js +4 -4
  39. package/dist/cjs/action/server/ServerInteraction.js.map +1 -1
  40. package/dist/cjs/advertisement/Advertisement.d.ts.map +1 -1
  41. package/dist/cjs/advertisement/Advertisement.js +66 -14
  42. package/dist/cjs/advertisement/Advertisement.js.map +1 -1
  43. package/dist/cjs/advertisement/Advertiser.d.ts +4 -1
  44. package/dist/cjs/advertisement/Advertiser.d.ts.map +1 -1
  45. package/dist/cjs/advertisement/Advertiser.js +63 -2
  46. package/dist/cjs/advertisement/Advertiser.js.map +1 -1
  47. package/dist/cjs/advertisement/ble/BleAdvertiser.d.ts +6 -1
  48. package/dist/cjs/advertisement/ble/BleAdvertiser.d.ts.map +1 -1
  49. package/dist/cjs/advertisement/ble/BleAdvertiser.js +1 -1
  50. package/dist/cjs/advertisement/ble/BleAdvertiser.js.map +1 -1
  51. package/dist/cjs/advertisement/mdns/MdnsAdvertiser.d.ts +5 -1
  52. package/dist/cjs/advertisement/mdns/MdnsAdvertiser.d.ts.map +1 -1
  53. package/dist/cjs/advertisement/mdns/MdnsAdvertiser.js +1 -1
  54. package/dist/cjs/advertisement/mdns/MdnsAdvertiser.js.map +1 -1
  55. package/dist/cjs/certificate/kinds/definitions/asn.js +1 -1
  56. package/dist/cjs/certificate/kinds/definitions/asn.js.map +1 -1
  57. package/dist/cjs/certificate/kinds/definitions/attestation.d.ts.map +1 -1
  58. package/dist/cjs/cluster/client/AttributeClient.d.ts.map +1 -1
  59. package/dist/cjs/cluster/client/AttributeClient.js +2 -2
  60. package/dist/cjs/cluster/client/AttributeClient.js.map +1 -1
  61. package/dist/cjs/codec/MessageCodec.d.ts +8 -1
  62. package/dist/cjs/codec/MessageCodec.d.ts.map +1 -1
  63. package/dist/cjs/codec/MessageCodec.js +38 -28
  64. package/dist/cjs/codec/MessageCodec.js.map +2 -2
  65. package/dist/cjs/common/FailsafeContext.d.ts +8 -9
  66. package/dist/cjs/common/FailsafeContext.d.ts.map +1 -1
  67. package/dist/cjs/common/FailsafeContext.js +27 -33
  68. package/dist/cjs/common/FailsafeContext.js.map +1 -1
  69. package/dist/cjs/common/FailsafeTimer.d.ts +4 -3
  70. package/dist/cjs/common/FailsafeTimer.d.ts.map +1 -1
  71. package/dist/cjs/common/FailsafeTimer.js +4 -4
  72. package/dist/cjs/common/FailsafeTimer.js.map +1 -1
  73. package/dist/cjs/common/Mark.d.ts +17 -0
  74. package/dist/cjs/common/Mark.d.ts.map +1 -0
  75. package/dist/cjs/{peer/OperationalPeer.js → common/Mark.js} +19 -3
  76. package/dist/cjs/common/Mark.js.map +6 -0
  77. package/dist/cjs/common/index.d.ts +1 -0
  78. package/dist/cjs/common/index.d.ts.map +1 -1
  79. package/dist/cjs/common/index.js +1 -0
  80. package/dist/cjs/common/index.js.map +1 -1
  81. package/dist/cjs/fabric/Fabric.d.ts +16 -8
  82. package/dist/cjs/fabric/Fabric.d.ts.map +1 -1
  83. package/dist/cjs/fabric/Fabric.js +35 -18
  84. package/dist/cjs/fabric/Fabric.js.map +1 -1
  85. package/dist/cjs/fabric/FabricAuthority.d.ts +2 -2
  86. package/dist/cjs/fabric/FabricAuthority.d.ts.map +1 -1
  87. package/dist/cjs/fabric/FabricAuthority.js +3 -3
  88. package/dist/cjs/fabric/FabricAuthority.js.map +1 -1
  89. package/dist/cjs/fabric/FabricManager.d.ts +10 -14
  90. package/dist/cjs/fabric/FabricManager.d.ts.map +1 -1
  91. package/dist/cjs/fabric/FabricManager.js +44 -40
  92. package/dist/cjs/fabric/FabricManager.js.map +2 -2
  93. package/dist/cjs/index.d.ts +1 -1
  94. package/dist/cjs/index.d.ts.map +1 -1
  95. package/dist/cjs/index.js +1 -1
  96. package/dist/cjs/index.js.map +1 -1
  97. package/dist/cjs/interaction/AttributeDataEncoder.d.ts +1 -1
  98. package/dist/cjs/interaction/InteractionClient.d.ts +2 -2
  99. package/dist/cjs/interaction/InteractionClient.d.ts.map +1 -1
  100. package/dist/cjs/interaction/InteractionClient.js +39 -22
  101. package/dist/cjs/interaction/InteractionClient.js.map +1 -1
  102. package/dist/cjs/interaction/InteractionMessenger.d.ts +2 -2
  103. package/dist/cjs/interaction/InteractionMessenger.d.ts.map +1 -1
  104. package/dist/cjs/interaction/InteractionMessenger.js +35 -27
  105. package/dist/cjs/interaction/InteractionMessenger.js.map +1 -1
  106. package/dist/cjs/interaction/Subscription.d.ts +16 -37
  107. package/dist/cjs/interaction/Subscription.d.ts.map +1 -1
  108. package/dist/cjs/interaction/Subscription.js +15 -68
  109. package/dist/cjs/interaction/Subscription.js.map +2 -2
  110. package/dist/cjs/interaction/SubscriptionClient.d.ts +2 -2
  111. package/dist/cjs/interaction/SubscriptionClient.d.ts.map +1 -1
  112. package/dist/cjs/interaction/SubscriptionClient.js +2 -2
  113. package/dist/cjs/interaction/SubscriptionClient.js.map +1 -1
  114. package/dist/cjs/mdns/MdnsClient.d.ts +10 -10
  115. package/dist/cjs/mdns/MdnsClient.d.ts.map +1 -1
  116. package/dist/cjs/mdns/MdnsClient.js +165 -80
  117. package/dist/cjs/mdns/MdnsClient.js.map +1 -1
  118. package/dist/cjs/mdns/MdnsServer.d.ts +2 -2
  119. package/dist/cjs/mdns/MdnsServer.d.ts.map +1 -1
  120. package/dist/cjs/mdns/MdnsServer.js +173 -94
  121. package/dist/cjs/mdns/MdnsServer.js.map +2 -2
  122. package/dist/cjs/mdns/MdnsService.d.ts.map +1 -1
  123. package/dist/cjs/mdns/MdnsService.js +3 -2
  124. package/dist/cjs/mdns/MdnsService.js.map +1 -1
  125. package/dist/cjs/mdns/MdnsSocket.d.ts +3 -2
  126. package/dist/cjs/mdns/MdnsSocket.d.ts.map +1 -1
  127. package/dist/cjs/mdns/MdnsSocket.js +2 -1
  128. package/dist/cjs/mdns/MdnsSocket.js.map +1 -1
  129. package/dist/cjs/peer/ControllerCommissioner.d.ts +2 -2
  130. package/dist/cjs/peer/ControllerCommissioner.d.ts.map +1 -1
  131. package/dist/cjs/peer/ControllerCommissioner.js +26 -28
  132. package/dist/cjs/peer/ControllerCommissioner.js.map +1 -1
  133. package/dist/cjs/peer/ControllerDiscovery.d.ts +1 -1
  134. package/dist/cjs/peer/ControllerDiscovery.d.ts.map +1 -1
  135. package/dist/cjs/peer/ControllerDiscovery.js +3 -3
  136. package/dist/cjs/peer/ControllerDiscovery.js.map +1 -1
  137. package/dist/cjs/peer/Peer.d.ts +57 -0
  138. package/dist/cjs/peer/Peer.d.ts.map +1 -0
  139. package/dist/cjs/peer/Peer.js +182 -0
  140. package/dist/cjs/peer/Peer.js.map +6 -0
  141. package/dist/cjs/peer/PeerAddress.d.ts.map +1 -1
  142. package/dist/cjs/peer/PeerAddress.js +5 -2
  143. package/dist/cjs/peer/PeerAddress.js.map +1 -1
  144. package/dist/cjs/peer/PeerAddressStore.d.ts +3 -3
  145. package/dist/cjs/peer/PeerAddressStore.d.ts.map +1 -1
  146. package/{src/peer/OperationalPeer.ts → dist/cjs/peer/PeerDescriptor.d.ts} +14 -12
  147. package/dist/cjs/peer/PeerDescriptor.d.ts.map +1 -0
  148. package/dist/cjs/peer/PeerDescriptor.js +71 -0
  149. package/dist/cjs/peer/PeerDescriptor.js.map +6 -0
  150. package/dist/cjs/peer/PeerSet.d.ts +23 -26
  151. package/dist/cjs/peer/PeerSet.d.ts.map +1 -1
  152. package/dist/cjs/peer/PeerSet.js +173 -173
  153. package/dist/cjs/peer/PeerSet.js.map +2 -2
  154. package/dist/cjs/peer/index.d.ts +1 -1
  155. package/dist/cjs/peer/index.d.ts.map +1 -1
  156. package/dist/cjs/peer/index.js +1 -1
  157. package/dist/cjs/peer/index.js.map +1 -1
  158. package/dist/cjs/protocol/DeviceAdvertiser.js +4 -4
  159. package/dist/cjs/protocol/DeviceAdvertiser.js.map +1 -1
  160. package/dist/cjs/protocol/ExchangeManager.d.ts +6 -9
  161. package/dist/cjs/protocol/ExchangeManager.d.ts.map +1 -1
  162. package/dist/cjs/protocol/ExchangeManager.js +306 -246
  163. package/dist/cjs/protocol/ExchangeManager.js.map +2 -2
  164. package/dist/cjs/protocol/ExchangeProvider.d.ts +9 -11
  165. package/dist/cjs/protocol/ExchangeProvider.d.ts.map +1 -1
  166. package/dist/cjs/protocol/ExchangeProvider.js +79 -32
  167. package/dist/cjs/protocol/ExchangeProvider.js.map +2 -2
  168. package/dist/cjs/protocol/MessageChannel.d.ts +6 -7
  169. package/dist/cjs/protocol/MessageChannel.d.ts.map +1 -1
  170. package/dist/cjs/protocol/MessageChannel.js +14 -16
  171. package/dist/cjs/protocol/MessageChannel.js.map +1 -1
  172. package/dist/cjs/protocol/MessageCounter.d.ts +4 -4
  173. package/dist/cjs/protocol/MessageCounter.d.ts.map +1 -1
  174. package/dist/cjs/protocol/MessageCounter.js +7 -7
  175. package/dist/cjs/protocol/MessageCounter.js.map +1 -1
  176. package/dist/cjs/protocol/MessageExchange.d.ts +31 -20
  177. package/dist/cjs/protocol/MessageExchange.d.ts.map +1 -1
  178. package/dist/cjs/protocol/MessageExchange.js +316 -231
  179. package/dist/cjs/protocol/MessageExchange.js.map +2 -2
  180. package/dist/cjs/protocol/ProtocolMocks.d.ts +100 -0
  181. package/dist/cjs/protocol/ProtocolMocks.d.ts.map +1 -0
  182. package/dist/cjs/protocol/ProtocolMocks.js +237 -0
  183. package/dist/cjs/protocol/ProtocolMocks.js.map +6 -0
  184. package/dist/cjs/protocol/errors.d.ts +35 -0
  185. package/dist/cjs/protocol/errors.d.ts.map +1 -0
  186. package/dist/cjs/protocol/errors.js +50 -0
  187. package/dist/cjs/protocol/errors.js.map +6 -0
  188. package/dist/cjs/protocol/index.d.ts +2 -1
  189. package/dist/cjs/protocol/index.d.ts.map +1 -1
  190. package/dist/cjs/protocol/index.js +2 -1
  191. package/dist/cjs/protocol/index.js.map +1 -1
  192. package/dist/cjs/securechannel/SecureChannelMessenger.d.ts +1 -0
  193. package/dist/cjs/securechannel/SecureChannelMessenger.d.ts.map +1 -1
  194. package/dist/cjs/securechannel/SecureChannelMessenger.js +3 -0
  195. package/dist/cjs/securechannel/SecureChannelMessenger.js.map +1 -1
  196. package/dist/cjs/securechannel/SecureChannelProtocol.js +2 -2
  197. package/dist/cjs/securechannel/SecureChannelProtocol.js.map +1 -1
  198. package/dist/cjs/session/GroupSession.d.ts +21 -10
  199. package/dist/cjs/session/GroupSession.d.ts.map +1 -1
  200. package/dist/cjs/session/GroupSession.js +37 -12
  201. package/dist/cjs/session/GroupSession.js.map +1 -1
  202. package/dist/cjs/session/NodeSession.d.ts +56 -50
  203. package/dist/cjs/session/NodeSession.d.ts.map +1 -1
  204. package/dist/cjs/session/NodeSession.js +95 -103
  205. package/dist/cjs/session/NodeSession.js.map +1 -1
  206. package/dist/cjs/session/SecureSession.d.ts +4 -4
  207. package/dist/cjs/session/SecureSession.d.ts.map +1 -1
  208. package/dist/cjs/session/SecureSession.js +1 -1
  209. package/dist/cjs/session/SecureSession.js.map +1 -1
  210. package/dist/cjs/session/Session.d.ts +82 -66
  211. package/dist/cjs/session/Session.d.ts.map +1 -1
  212. package/dist/cjs/session/Session.js +218 -45
  213. package/dist/cjs/session/Session.js.map +1 -1
  214. package/dist/cjs/session/SessionManager.d.ts +33 -36
  215. package/dist/cjs/session/SessionManager.d.ts.map +1 -1
  216. package/dist/cjs/session/SessionManager.js +112 -150
  217. package/dist/cjs/session/SessionManager.js.map +1 -1
  218. package/dist/cjs/session/SessionParameters.d.ts +87 -0
  219. package/dist/cjs/session/SessionParameters.d.ts.map +1 -0
  220. package/dist/cjs/session/SessionParameters.js +81 -0
  221. package/dist/cjs/session/SessionParameters.js.map +6 -0
  222. package/dist/{esm/session/InsecureSession.d.ts → cjs/session/UnsecuredSession.d.ts} +18 -16
  223. package/dist/cjs/session/UnsecuredSession.d.ts.map +1 -0
  224. package/dist/cjs/session/{InsecureSession.js → UnsecuredSession.js} +21 -21
  225. package/dist/cjs/session/UnsecuredSession.js.map +6 -0
  226. package/dist/cjs/session/case/CaseClient.d.ts.map +1 -1
  227. package/dist/cjs/session/case/CaseClient.js +6 -4
  228. package/dist/cjs/session/case/CaseClient.js.map +1 -1
  229. package/dist/cjs/session/case/CaseServer.d.ts.map +1 -1
  230. package/dist/cjs/session/case/CaseServer.js +14 -10
  231. package/dist/cjs/session/case/CaseServer.js.map +1 -1
  232. package/dist/cjs/session/index.d.ts +2 -1
  233. package/dist/cjs/session/index.d.ts.map +1 -1
  234. package/dist/cjs/session/index.js +2 -1
  235. package/dist/cjs/session/index.js.map +1 -1
  236. package/dist/cjs/session/pase/PaseClient.d.ts +3 -3
  237. package/dist/cjs/session/pase/PaseClient.d.ts.map +1 -1
  238. package/dist/cjs/session/pase/PaseClient.js +5 -3
  239. package/dist/cjs/session/pase/PaseClient.js.map +1 -1
  240. package/dist/cjs/session/pase/PaseServer.d.ts.map +1 -1
  241. package/dist/cjs/session/pase/PaseServer.js +13 -13
  242. package/dist/cjs/session/pase/PaseServer.js.map +1 -1
  243. package/dist/esm/action/client/ClientInteraction.d.ts.map +1 -1
  244. package/dist/esm/action/client/ClientInteraction.js +82 -34
  245. package/dist/esm/action/client/ClientInteraction.js.map +2 -2
  246. package/dist/esm/action/client/subscription/ClientSubscription.d.ts +10 -5
  247. package/dist/esm/action/client/subscription/ClientSubscription.d.ts.map +1 -1
  248. package/dist/esm/action/client/subscription/ClientSubscription.js +22 -2
  249. package/dist/esm/action/client/subscription/ClientSubscription.js.map +2 -2
  250. package/dist/esm/action/client/subscription/ClientSubscriptionHandler.js +2 -3
  251. package/dist/esm/action/client/subscription/ClientSubscriptionHandler.js.map +1 -1
  252. package/dist/esm/action/client/subscription/ClientSubscriptions.d.ts +4 -2
  253. package/dist/esm/action/client/subscription/ClientSubscriptions.d.ts.map +1 -1
  254. package/dist/esm/action/client/subscription/ClientSubscriptions.js +68 -8
  255. package/dist/esm/action/client/subscription/ClientSubscriptions.js.map +1 -1
  256. package/dist/esm/action/client/subscription/PeerSubscription.d.ts +0 -1
  257. package/dist/esm/action/client/subscription/PeerSubscription.d.ts.map +1 -1
  258. package/dist/esm/action/client/subscription/PeerSubscription.js +1 -2
  259. package/dist/esm/action/client/subscription/PeerSubscription.js.map +1 -1
  260. package/dist/esm/action/client/subscription/SustainedSubscription.d.ts +0 -2
  261. package/dist/esm/action/client/subscription/SustainedSubscription.d.ts.map +1 -1
  262. package/dist/esm/action/client/subscription/SustainedSubscription.js +2 -4
  263. package/dist/esm/action/client/subscription/SustainedSubscription.js.map +1 -1
  264. package/dist/esm/action/request/Invoke.js +2 -2
  265. package/dist/esm/action/request/Invoke.js.map +1 -1
  266. package/dist/esm/action/server/AttributeReadResponse.d.ts.map +1 -1
  267. package/dist/esm/action/server/AttributeReadResponse.js +78 -25
  268. package/dist/esm/action/server/AttributeReadResponse.js.map +1 -1
  269. package/dist/esm/action/server/AttributeWriteResponse.d.ts.map +1 -1
  270. package/dist/esm/action/server/AttributeWriteResponse.js +70 -17
  271. package/dist/esm/action/server/AttributeWriteResponse.js.map +1 -1
  272. package/dist/esm/action/server/CommandInvokeResponse.d.ts.map +1 -1
  273. package/dist/esm/action/server/CommandInvokeResponse.js +83 -30
  274. package/dist/esm/action/server/CommandInvokeResponse.js.map +1 -1
  275. package/dist/esm/action/server/DataResponse.d.ts +1 -0
  276. package/dist/esm/action/server/DataResponse.d.ts.map +1 -1
  277. package/dist/esm/action/server/DataResponse.js +3 -0
  278. package/dist/esm/action/server/DataResponse.js.map +1 -1
  279. package/dist/esm/action/server/ServerInteraction.d.ts.map +1 -1
  280. package/dist/esm/action/server/ServerInteraction.js +4 -4
  281. package/dist/esm/action/server/ServerInteraction.js.map +1 -1
  282. package/dist/esm/advertisement/Advertisement.d.ts.map +1 -1
  283. package/dist/esm/advertisement/Advertisement.js +66 -14
  284. package/dist/esm/advertisement/Advertisement.js.map +1 -1
  285. package/dist/esm/advertisement/Advertiser.d.ts +4 -1
  286. package/dist/esm/advertisement/Advertiser.d.ts.map +1 -1
  287. package/dist/esm/advertisement/Advertiser.js +63 -2
  288. package/dist/esm/advertisement/Advertiser.js.map +1 -1
  289. package/dist/esm/advertisement/ble/BleAdvertiser.d.ts +6 -1
  290. package/dist/esm/advertisement/ble/BleAdvertiser.d.ts.map +1 -1
  291. package/dist/esm/advertisement/ble/BleAdvertiser.js +1 -1
  292. package/dist/esm/advertisement/ble/BleAdvertiser.js.map +1 -1
  293. package/dist/esm/advertisement/mdns/MdnsAdvertiser.d.ts +5 -1
  294. package/dist/esm/advertisement/mdns/MdnsAdvertiser.d.ts.map +1 -1
  295. package/dist/esm/advertisement/mdns/MdnsAdvertiser.js +1 -1
  296. package/dist/esm/advertisement/mdns/MdnsAdvertiser.js.map +1 -1
  297. package/dist/esm/certificate/kinds/definitions/asn.js +2 -2
  298. package/dist/esm/certificate/kinds/definitions/asn.js.map +1 -1
  299. package/dist/esm/certificate/kinds/definitions/attestation.d.ts.map +1 -1
  300. package/dist/esm/cluster/client/AttributeClient.d.ts.map +1 -1
  301. package/dist/esm/cluster/client/AttributeClient.js +1 -1
  302. package/dist/esm/cluster/client/AttributeClient.js.map +1 -1
  303. package/dist/esm/codec/MessageCodec.d.ts +8 -1
  304. package/dist/esm/codec/MessageCodec.d.ts.map +1 -1
  305. package/dist/esm/codec/MessageCodec.js +39 -28
  306. package/dist/esm/codec/MessageCodec.js.map +2 -2
  307. package/dist/esm/common/FailsafeContext.d.ts +8 -9
  308. package/dist/esm/common/FailsafeContext.d.ts.map +1 -1
  309. package/dist/esm/common/FailsafeContext.js +27 -33
  310. package/dist/esm/common/FailsafeContext.js.map +1 -1
  311. package/dist/esm/common/FailsafeTimer.d.ts +4 -3
  312. package/dist/esm/common/FailsafeTimer.d.ts.map +1 -1
  313. package/dist/esm/common/FailsafeTimer.js +4 -4
  314. package/dist/esm/common/FailsafeTimer.js.map +1 -1
  315. package/dist/esm/common/Mark.d.ts +17 -0
  316. package/dist/esm/common/Mark.d.ts.map +1 -0
  317. package/dist/esm/common/Mark.js +18 -0
  318. package/dist/esm/common/Mark.js.map +6 -0
  319. package/dist/esm/common/index.d.ts +1 -0
  320. package/dist/esm/common/index.d.ts.map +1 -1
  321. package/dist/esm/common/index.js +1 -0
  322. package/dist/esm/common/index.js.map +1 -1
  323. package/dist/esm/fabric/Fabric.d.ts +16 -8
  324. package/dist/esm/fabric/Fabric.d.ts.map +1 -1
  325. package/dist/esm/fabric/Fabric.js +36 -18
  326. package/dist/esm/fabric/Fabric.js.map +1 -1
  327. package/dist/esm/fabric/FabricAuthority.d.ts +2 -2
  328. package/dist/esm/fabric/FabricAuthority.d.ts.map +1 -1
  329. package/dist/esm/fabric/FabricAuthority.js +5 -5
  330. package/dist/esm/fabric/FabricAuthority.js.map +1 -1
  331. package/dist/esm/fabric/FabricManager.d.ts +10 -14
  332. package/dist/esm/fabric/FabricManager.d.ts.map +1 -1
  333. package/dist/esm/fabric/FabricManager.js +45 -40
  334. package/dist/esm/fabric/FabricManager.js.map +2 -2
  335. package/dist/esm/index.d.ts +1 -1
  336. package/dist/esm/index.d.ts.map +1 -1
  337. package/dist/esm/index.js +1 -1
  338. package/dist/esm/index.js.map +1 -1
  339. package/dist/esm/interaction/AttributeDataEncoder.d.ts +1 -1
  340. package/dist/esm/interaction/InteractionClient.d.ts +2 -2
  341. package/dist/esm/interaction/InteractionClient.d.ts.map +1 -1
  342. package/dist/esm/interaction/InteractionClient.js +39 -22
  343. package/dist/esm/interaction/InteractionClient.js.map +1 -1
  344. package/dist/esm/interaction/InteractionMessenger.d.ts +2 -2
  345. package/dist/esm/interaction/InteractionMessenger.d.ts.map +1 -1
  346. package/dist/esm/interaction/InteractionMessenger.js +33 -28
  347. package/dist/esm/interaction/InteractionMessenger.js.map +1 -1
  348. package/dist/esm/interaction/Subscription.d.ts +16 -37
  349. package/dist/esm/interaction/Subscription.d.ts.map +1 -1
  350. package/dist/esm/interaction/Subscription.js +16 -69
  351. package/dist/esm/interaction/Subscription.js.map +2 -2
  352. package/dist/esm/interaction/SubscriptionClient.d.ts +2 -2
  353. package/dist/esm/interaction/SubscriptionClient.d.ts.map +1 -1
  354. package/dist/esm/interaction/SubscriptionClient.js +2 -2
  355. package/dist/esm/interaction/SubscriptionClient.js.map +1 -1
  356. package/dist/esm/mdns/MdnsClient.d.ts +10 -10
  357. package/dist/esm/mdns/MdnsClient.d.ts.map +1 -1
  358. package/dist/esm/mdns/MdnsClient.js +166 -80
  359. package/dist/esm/mdns/MdnsClient.js.map +1 -1
  360. package/dist/esm/mdns/MdnsServer.d.ts +2 -2
  361. package/dist/esm/mdns/MdnsServer.d.ts.map +1 -1
  362. package/dist/esm/mdns/MdnsServer.js +176 -94
  363. package/dist/esm/mdns/MdnsServer.js.map +2 -2
  364. package/dist/esm/mdns/MdnsService.d.ts.map +1 -1
  365. package/dist/esm/mdns/MdnsService.js +3 -2
  366. package/dist/esm/mdns/MdnsService.js.map +1 -1
  367. package/dist/esm/mdns/MdnsSocket.d.ts +3 -2
  368. package/dist/esm/mdns/MdnsSocket.d.ts.map +1 -1
  369. package/dist/esm/mdns/MdnsSocket.js +2 -1
  370. package/dist/esm/mdns/MdnsSocket.js.map +1 -1
  371. package/dist/esm/peer/ControllerCommissioner.d.ts +2 -2
  372. package/dist/esm/peer/ControllerCommissioner.d.ts.map +1 -1
  373. package/dist/esm/peer/ControllerCommissioner.js +26 -28
  374. package/dist/esm/peer/ControllerCommissioner.js.map +1 -1
  375. package/dist/esm/peer/ControllerDiscovery.d.ts +1 -1
  376. package/dist/esm/peer/ControllerDiscovery.d.ts.map +1 -1
  377. package/dist/esm/peer/ControllerDiscovery.js +1 -1
  378. package/dist/esm/peer/ControllerDiscovery.js.map +1 -1
  379. package/dist/esm/peer/Peer.d.ts +57 -0
  380. package/dist/esm/peer/Peer.d.ts.map +1 -0
  381. package/dist/esm/peer/Peer.js +162 -0
  382. package/dist/esm/peer/Peer.js.map +6 -0
  383. package/dist/esm/peer/PeerAddress.d.ts.map +1 -1
  384. package/dist/esm/peer/PeerAddress.js +5 -2
  385. package/dist/esm/peer/PeerAddress.js.map +1 -1
  386. package/dist/esm/peer/PeerAddressStore.d.ts +3 -3
  387. package/dist/esm/peer/PeerAddressStore.d.ts.map +1 -1
  388. package/dist/{cjs/peer/OperationalPeer.d.ts → esm/peer/PeerDescriptor.d.ts} +14 -7
  389. package/dist/esm/peer/PeerDescriptor.d.ts.map +1 -0
  390. package/dist/esm/peer/PeerDescriptor.js +51 -0
  391. package/dist/esm/peer/PeerDescriptor.js.map +6 -0
  392. package/dist/esm/peer/PeerSet.d.ts +23 -26
  393. package/dist/esm/peer/PeerSet.d.ts.map +1 -1
  394. package/dist/esm/peer/PeerSet.js +173 -175
  395. package/dist/esm/peer/PeerSet.js.map +2 -2
  396. package/dist/esm/peer/index.d.ts +1 -1
  397. package/dist/esm/peer/index.d.ts.map +1 -1
  398. package/dist/esm/peer/index.js +1 -1
  399. package/dist/esm/protocol/DeviceAdvertiser.js +4 -4
  400. package/dist/esm/protocol/DeviceAdvertiser.js.map +1 -1
  401. package/dist/esm/protocol/ExchangeManager.d.ts +6 -9
  402. package/dist/esm/protocol/ExchangeManager.d.ts.map +1 -1
  403. package/dist/esm/protocol/ExchangeManager.js +308 -251
  404. package/dist/esm/protocol/ExchangeManager.js.map +2 -2
  405. package/dist/esm/protocol/ExchangeProvider.d.ts +9 -11
  406. package/dist/esm/protocol/ExchangeProvider.d.ts.map +1 -1
  407. package/dist/esm/protocol/ExchangeProvider.js +81 -37
  408. package/dist/esm/protocol/ExchangeProvider.js.map +2 -2
  409. package/dist/esm/protocol/MessageChannel.d.ts +6 -7
  410. package/dist/esm/protocol/MessageChannel.d.ts.map +1 -1
  411. package/dist/esm/protocol/MessageChannel.js +22 -18
  412. package/dist/esm/protocol/MessageChannel.js.map +1 -1
  413. package/dist/esm/protocol/MessageCounter.d.ts +4 -4
  414. package/dist/esm/protocol/MessageCounter.d.ts.map +1 -1
  415. package/dist/esm/protocol/MessageCounter.js +7 -7
  416. package/dist/esm/protocol/MessageCounter.js.map +1 -1
  417. package/dist/esm/protocol/MessageExchange.d.ts +31 -20
  418. package/dist/esm/protocol/MessageExchange.d.ts.map +1 -1
  419. package/dist/esm/protocol/MessageExchange.js +318 -238
  420. package/dist/esm/protocol/MessageExchange.js.map +2 -2
  421. package/dist/esm/protocol/ProtocolMocks.d.ts +100 -0
  422. package/dist/esm/protocol/ProtocolMocks.d.ts.map +1 -0
  423. package/dist/esm/protocol/ProtocolMocks.js +230 -0
  424. package/dist/esm/protocol/ProtocolMocks.js.map +6 -0
  425. package/dist/esm/protocol/errors.d.ts +35 -0
  426. package/dist/esm/protocol/errors.d.ts.map +1 -0
  427. package/dist/esm/protocol/errors.js +30 -0
  428. package/dist/esm/protocol/errors.js.map +6 -0
  429. package/dist/esm/protocol/index.d.ts +2 -1
  430. package/dist/esm/protocol/index.d.ts.map +1 -1
  431. package/dist/esm/protocol/index.js +2 -1
  432. package/dist/esm/protocol/index.js.map +1 -1
  433. package/dist/esm/securechannel/SecureChannelMessenger.d.ts +1 -0
  434. package/dist/esm/securechannel/SecureChannelMessenger.d.ts.map +1 -1
  435. package/dist/esm/securechannel/SecureChannelMessenger.js +3 -0
  436. package/dist/esm/securechannel/SecureChannelMessenger.js.map +1 -1
  437. package/dist/esm/securechannel/SecureChannelProtocol.js +2 -2
  438. package/dist/esm/securechannel/SecureChannelProtocol.js.map +1 -1
  439. package/dist/esm/session/GroupSession.d.ts +21 -10
  440. package/dist/esm/session/GroupSession.d.ts.map +1 -1
  441. package/dist/esm/session/GroupSession.js +41 -12
  442. package/dist/esm/session/GroupSession.js.map +1 -1
  443. package/dist/esm/session/NodeSession.d.ts +56 -50
  444. package/dist/esm/session/NodeSession.d.ts.map +1 -1
  445. package/dist/esm/session/NodeSession.js +99 -105
  446. package/dist/esm/session/NodeSession.js.map +1 -1
  447. package/dist/esm/session/SecureSession.d.ts +4 -4
  448. package/dist/esm/session/SecureSession.d.ts.map +1 -1
  449. package/dist/esm/session/SecureSession.js +1 -1
  450. package/dist/esm/session/SecureSession.js.map +1 -1
  451. package/dist/esm/session/Session.d.ts +82 -66
  452. package/dist/esm/session/Session.d.ts.map +1 -1
  453. package/dist/esm/session/Session.js +223 -45
  454. package/dist/esm/session/Session.js.map +1 -1
  455. package/dist/esm/session/SessionManager.d.ts +33 -36
  456. package/dist/esm/session/SessionManager.d.ts.map +1 -1
  457. package/dist/esm/session/SessionManager.js +113 -157
  458. package/dist/esm/session/SessionManager.js.map +1 -1
  459. package/dist/esm/session/SessionParameters.d.ts +87 -0
  460. package/dist/esm/session/SessionParameters.d.ts.map +1 -0
  461. package/dist/esm/session/SessionParameters.js +61 -0
  462. package/dist/esm/session/SessionParameters.js.map +6 -0
  463. package/dist/{cjs/session/InsecureSession.d.ts → esm/session/UnsecuredSession.d.ts} +18 -16
  464. package/dist/esm/session/UnsecuredSession.d.ts.map +1 -0
  465. package/dist/esm/session/{InsecureSession.js → UnsecuredSession.js} +18 -18
  466. package/dist/esm/session/UnsecuredSession.js.map +6 -0
  467. package/dist/esm/session/case/CaseClient.d.ts.map +1 -1
  468. package/dist/esm/session/case/CaseClient.js +5 -3
  469. package/dist/esm/session/case/CaseClient.js.map +1 -1
  470. package/dist/esm/session/case/CaseServer.d.ts.map +1 -1
  471. package/dist/esm/session/case/CaseServer.js +14 -10
  472. package/dist/esm/session/case/CaseServer.js.map +1 -1
  473. package/dist/esm/session/index.d.ts +2 -1
  474. package/dist/esm/session/index.d.ts.map +1 -1
  475. package/dist/esm/session/index.js +2 -1
  476. package/dist/esm/session/index.js.map +1 -1
  477. package/dist/esm/session/pase/PaseClient.d.ts +3 -3
  478. package/dist/esm/session/pase/PaseClient.d.ts.map +1 -1
  479. package/dist/esm/session/pase/PaseClient.js +5 -3
  480. package/dist/esm/session/pase/PaseClient.js.map +1 -1
  481. package/dist/esm/session/pase/PaseServer.d.ts.map +1 -1
  482. package/dist/esm/session/pase/PaseServer.js +13 -13
  483. package/dist/esm/session/pase/PaseServer.js.map +1 -1
  484. package/package.json +6 -6
  485. package/src/action/client/ClientInteraction.ts +47 -13
  486. package/src/action/client/subscription/ClientSubscription.ts +30 -5
  487. package/src/action/client/subscription/ClientSubscriptionHandler.ts +2 -4
  488. package/src/action/client/subscription/ClientSubscriptions.ts +14 -3
  489. package/src/action/client/subscription/PeerSubscription.ts +2 -2
  490. package/src/action/client/subscription/SustainedSubscription.ts +2 -6
  491. package/src/action/request/Invoke.ts +2 -2
  492. package/src/action/server/AttributeReadResponse.ts +2 -0
  493. package/src/action/server/AttributeWriteResponse.ts +2 -0
  494. package/src/action/server/CommandInvokeResponse.ts +1 -0
  495. package/src/action/server/DataResponse.ts +4 -0
  496. package/src/action/server/ServerInteraction.ts +4 -4
  497. package/src/advertisement/Advertisement.ts +6 -7
  498. package/src/advertisement/Advertiser.ts +12 -1
  499. package/src/advertisement/ble/BleAdvertiser.ts +7 -2
  500. package/src/advertisement/mdns/MdnsAdvertiser.ts +7 -1
  501. package/src/certificate/kinds/definitions/asn.ts +2 -2
  502. package/src/certificate/kinds/definitions/attestation.ts +1 -0
  503. package/src/cluster/client/AttributeClient.ts +1 -1
  504. package/src/codec/MessageCodec.ts +39 -32
  505. package/src/common/FailsafeContext.ts +36 -39
  506. package/src/common/FailsafeTimer.ts +7 -6
  507. package/src/common/Mark.ts +17 -0
  508. package/src/common/index.ts +1 -0
  509. package/src/fabric/Fabric.ts +51 -23
  510. package/src/fabric/FabricAuthority.ts +4 -4
  511. package/src/fabric/FabricManager.ts +53 -40
  512. package/src/index.ts +3 -1
  513. package/src/interaction/InteractionClient.ts +40 -23
  514. package/src/interaction/InteractionMessenger.ts +38 -32
  515. package/src/interaction/Subscription.ts +20 -92
  516. package/src/interaction/SubscriptionClient.ts +3 -3
  517. package/src/mdns/MdnsClient.ts +20 -3
  518. package/src/mdns/MdnsServer.ts +13 -1
  519. package/src/mdns/MdnsService.ts +3 -2
  520. package/src/mdns/MdnsSocket.ts +9 -3
  521. package/src/peer/ControllerCommissioner.ts +35 -37
  522. package/src/peer/ControllerDiscovery.ts +1 -1
  523. package/src/peer/Peer.ts +161 -0
  524. package/src/peer/PeerAddress.ts +6 -2
  525. package/src/peer/PeerAddressStore.ts +3 -3
  526. package/src/peer/PeerDescriptor.ts +89 -0
  527. package/src/peer/PeerSet.ts +145 -213
  528. package/src/peer/index.ts +1 -1
  529. package/src/protocol/DeviceAdvertiser.ts +4 -4
  530. package/src/protocol/ExchangeManager.ts +161 -181
  531. package/src/protocol/ExchangeProvider.ts +31 -40
  532. package/src/protocol/MessageChannel.ts +29 -18
  533. package/src/protocol/MessageCounter.ts +8 -8
  534. package/src/protocol/MessageExchange.ts +181 -144
  535. package/src/protocol/ProtocolMocks.ts +302 -0
  536. package/src/protocol/errors.ts +44 -0
  537. package/src/protocol/index.ts +2 -1
  538. package/src/securechannel/SecureChannelMessenger.ts +4 -0
  539. package/src/securechannel/SecureChannelProtocol.ts +2 -2
  540. package/src/session/GroupSession.ts +67 -23
  541. package/src/session/NodeSession.ts +140 -136
  542. package/src/session/SecureSession.ts +6 -5
  543. package/src/session/Session.ts +234 -101
  544. package/src/session/SessionManager.ts +148 -187
  545. package/src/session/SessionParameters.ts +108 -0
  546. package/src/session/{InsecureSession.ts → UnsecuredSession.ts} +28 -26
  547. package/src/session/case/CaseClient.ts +6 -3
  548. package/src/session/case/CaseServer.ts +15 -11
  549. package/src/session/index.ts +2 -1
  550. package/src/session/pase/PaseClient.ts +12 -5
  551. package/src/session/pase/PaseServer.ts +14 -13
  552. package/dist/cjs/peer/OperationalPeer.d.ts.map +0 -1
  553. package/dist/cjs/peer/OperationalPeer.js.map +0 -6
  554. package/dist/cjs/protocol/ChannelManager.d.ts +0 -29
  555. package/dist/cjs/protocol/ChannelManager.d.ts.map +0 -1
  556. package/dist/cjs/protocol/ChannelManager.js +0 -178
  557. package/dist/cjs/protocol/ChannelManager.js.map +0 -6
  558. package/dist/cjs/session/InsecureSession.d.ts.map +0 -1
  559. package/dist/cjs/session/InsecureSession.js.map +0 -6
  560. package/dist/esm/peer/OperationalPeer.d.ts +0 -38
  561. package/dist/esm/peer/OperationalPeer.d.ts.map +0 -1
  562. package/dist/esm/peer/OperationalPeer.js +0 -6
  563. package/dist/esm/peer/OperationalPeer.js.map +0 -6
  564. package/dist/esm/protocol/ChannelManager.d.ts +0 -29
  565. package/dist/esm/protocol/ChannelManager.d.ts.map +0 -1
  566. package/dist/esm/protocol/ChannelManager.js +0 -158
  567. package/dist/esm/protocol/ChannelManager.js.map +0 -6
  568. package/dist/esm/session/InsecureSession.d.ts.map +0 -1
  569. package/dist/esm/session/InsecureSession.js.map +0 -6
  570. package/src/protocol/ChannelManager.ts +0 -180
@@ -30,7 +30,6 @@ import {
30
30
  import { ControllerDiscovery, PairRetransmissionLimitReachedError } from "#peer/ControllerDiscovery.js";
31
31
  import { ExchangeManager } from "#protocol/ExchangeManager.js";
32
32
  import { DedicatedChannelExchangeProvider } from "#protocol/ExchangeProvider.js";
33
- import { MessageChannel } from "#protocol/MessageChannel.js";
34
33
  import { ChannelStatusResponseError } from "#securechannel/SecureChannelMessenger.js";
35
34
  import { PaseClient } from "#session/pase/PaseClient.js";
36
35
  import { SessionManager } from "#session/SessionManager.js";
@@ -66,19 +65,19 @@ class ControllerCommissioner {
66
65
  this.#assertPeerAddress(fabric.addressOf(nodeId));
67
66
  }
68
67
  addresses.sort((a) => a.type === "udp" ? -1 : 1);
69
- let channel;
68
+ let session;
70
69
  for (const address of addresses) {
71
70
  try {
72
- channel = await this.#initializePaseSecureChannel(address, passcode, discoveryData);
71
+ session = await this.#initializePaseSecureChannel(address, passcode, discoveryData);
73
72
  } catch (e) {
74
73
  NoResponseTimeoutError.accept(e);
75
74
  logger.warn(`Could not connect to ${ServerAddress.urlFor(address)}: ${e.message}`);
76
75
  }
77
76
  }
78
- if (channel === void 0) {
77
+ if (session === void 0) {
79
78
  throw new NoResponseTimeoutError("Could not connect to device");
80
79
  }
81
- return await this.#commissionConnectedNode(channel, options, discoveryData);
80
+ return await this.#commissionConnectedNode(session, options, discoveryData);
82
81
  }
83
82
  /**
84
83
  * Discover and establish a PASE channel with a device.
@@ -115,16 +114,16 @@ class ControllerCommissioner {
115
114
  logger.info(
116
115
  `Connecting to device with identifier ${Diagnostic.json(identifierData)} and ${scannersToUse.length} scanners and knownAddress ${Diagnostic.json(knownAddress)}`
117
116
  );
118
- let paseSecureChannel;
117
+ let paseSession;
119
118
  let discoveryData;
120
119
  if (knownAddress !== void 0) {
121
120
  try {
122
- paseSecureChannel = await this.#initializePaseSecureChannel(knownAddress, passcode);
121
+ paseSession = await this.#initializePaseSecureChannel(knownAddress, passcode);
123
122
  } catch (error) {
124
123
  NoResponseTimeoutError.accept(error);
125
124
  }
126
125
  }
127
- if (paseSecureChannel === void 0) {
126
+ if (paseSession === void 0) {
128
127
  const discoveredDevices = await ControllerDiscovery.discoverDeviceAddressesByIdentifier(
129
128
  scannersToUse,
130
129
  identifierData,
@@ -140,9 +139,9 @@ class ControllerCommissioner {
140
139
  return channel;
141
140
  }
142
141
  );
143
- paseSecureChannel = result;
142
+ paseSession = result;
144
143
  }
145
- return { paseSecureChannel, discoveryData };
144
+ return { paseSession, discoveryData };
146
145
  }
147
146
  /**
148
147
  * Commission a node with discovery.
@@ -152,8 +151,8 @@ class ControllerCommissioner {
152
151
  if (nodeId !== void 0) {
153
152
  this.#assertPeerAddress(fabric.addressOf(nodeId));
154
153
  }
155
- const { paseSecureChannel, discoveryData } = await this.discoverAndEstablishPase(options);
156
- return await this.#commissionConnectedNode(paseSecureChannel, options, discoveryData);
154
+ const { paseSession, discoveryData } = await this.discoverAndEstablishPase(options);
155
+ return await this.#commissionConnectedNode(paseSession, options, discoveryData);
157
156
  }
158
157
  /**
159
158
  * Method to start commission process with a PASE pairing.
@@ -194,7 +193,8 @@ class ControllerCommissioner {
194
193
  `Unsupported address type ${address.type} for Matter protocol`
195
194
  );
196
195
  }
197
- const unsecureSession = this.#context.sessions.createInsecureSession({
196
+ const unsecuredSession = this.#context.sessions.createUnsecuredSession({
197
+ channel: paseChannel,
198
198
  // Use the session parameters from MDNS announcements when available and rest is assumed to be fallbacks
199
199
  sessionParameters: {
200
200
  idleInterval: Millis(device?.SII),
@@ -203,29 +203,29 @@ class ControllerCommissioner {
203
203
  },
204
204
  isInitiator: true
205
205
  });
206
- const paseUnsecureMessageChannel = new MessageChannel(paseChannel, unsecureSession);
207
- const paseExchange = this.#context.exchanges.initiateExchangeWithChannel(
208
- paseUnsecureMessageChannel,
206
+ const paseExchange = this.#context.exchanges.initiateExchangeForSession(
207
+ unsecuredSession,
209
208
  SECURE_CHANNEL_PROTOCOL_ID
210
209
  );
211
- let paseSecureSession;
212
210
  try {
213
- paseSecureSession = await this.#paseClient.pair(
211
+ const caseSession = await this.#paseClient.pair(
214
212
  this.#context.sessions.sessionParameters,
215
213
  paseExchange,
214
+ paseChannel,
216
215
  passcode
217
216
  );
217
+ unsecuredSession.detachChannel();
218
+ return caseSession;
218
219
  } catch (e) {
219
- await paseExchange.close();
220
220
  if (e instanceof ChannelStatusResponseError) {
221
221
  throw new NoResponseTimeoutError(
222
222
  `Establishing PASE channel failed with channel status response error ${e.message}`
223
223
  );
224
224
  }
225
225
  throw e;
226
+ } finally {
227
+ await unsecuredSession.initiateForceClose();
226
228
  }
227
- await unsecureSession.destroy();
228
- return new MessageChannel(paseChannel, paseSecureSession);
229
229
  }
230
230
  /** Validate if a Peer Address is already known and commissioned */
231
231
  #assertPeerAddress(address) {
@@ -252,7 +252,7 @@ class ControllerCommissioner {
252
252
  * Method to commission a device with a PASE secure channel. It returns the NodeId of the commissioned device on
253
253
  * success.
254
254
  */
255
- async #commissionConnectedNode(paseSecureMessageChannel, options, discoveryData) {
255
+ async #commissionConnectedNode(paseSession, options, discoveryData) {
256
256
  const {
257
257
  fabric,
258
258
  finalizeCommissioning: performCaseCommissioning,
@@ -271,7 +271,7 @@ class ControllerCommissioner {
271
271
  const commissioningManager = new commissioningFlowImpl(
272
272
  // Use the created secure session to do the commissioning
273
273
  new InteractionClient(
274
- new DedicatedChannelExchangeProvider(this.#context.exchanges, paseSecureMessageChannel),
274
+ new DedicatedChannelExchangeProvider(this.#context.exchanges, paseSession),
275
275
  void 0,
276
276
  address
277
277
  ),
@@ -280,7 +280,7 @@ class ControllerCommissioner {
280
280
  commissioningOptions,
281
281
  async (address2, supportsConcurrentConnections) => {
282
282
  if (!supportsConcurrentConnections) {
283
- await paseSecureMessageChannel.close();
283
+ await paseSession.initiateClose();
284
284
  }
285
285
  if (performCaseCommissioning !== void 0) {
286
286
  await performCaseCommissioning(address2, discoveryData);
@@ -299,12 +299,10 @@ class ControllerCommissioner {
299
299
  try {
300
300
  await commissioningManager.executeCommissioning();
301
301
  } catch (error) {
302
- await this.#context.clients.peers.delete(address);
302
+ await this.#context.clients.peers.get(address)?.delete();
303
303
  throw error;
304
304
  } finally {
305
- if (!paseSecureMessageChannel.closed) {
306
- await paseSecureMessageChannel.close();
307
- }
305
+ await paseSession.initiateClose();
308
306
  }
309
307
  return address;
310
308
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/peer/ControllerCommissioner.ts"],
4
- "mappings": "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",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,4BAA4B;AACrC,SAAS,4BAA4B;AACrC,SAA+E,kBAAkB;AAEjG;AAAA,EAGI;AAAA,EAEA;AAAA,EACA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP,SAAS,mBAAmB,iCAAiC;AAC7D,SAAS,kBAAkB;AAC3B;AAAA,EACI;AAAA,EACA;AAAA,EAEA;AAAA,OACG;AACP,SAAS,qBAAqB,2CAA2C;AACzE,SAAS,uBAAuB;AAChC,SAAS,wCAAwC;AACjD,SAAS,kCAAkC;AAE3C,SAAS,kBAAkB;AAC3B,SAAS,sBAAsB;AAC/B,SAAsC,QAAQ,kCAA4D;AAE1G,SAAS,mBAAmB,eAAe;AAE3C,MAAM,SAAS,OAAO,IAAI,kBAAkB;AA6FrC,MAAM,uBAAuB;AAAA,EAChC;AAAA,EACA;AAAA,EAEA,YAAY,SAAwC;AAChD,SAAK,WAAW;AAChB,SAAK,cAAc,IAAI,WAAW,QAAQ,QAAQ;AAAA,EACtD;AAAA,EAEA,QAAQ,cAAc,MAAM,EAAE,KAAkB;AAC5C,UAAM,WAAW,IAAI,uBAAuB;AAAA,MACxC,OAAO,IAAI,IAAI,OAAO;AAAA,MACtB,SAAS,IAAI,IAAI,yBAAyB;AAAA,MAC1C,UAAU,IAAI,IAAI,UAAU;AAAA,MAC5B,YAAY,IAAI,IAAI,0BAA0B;AAAA,MAC9C,UAAU,IAAI,IAAI,cAAc;AAAA,MAChC,WAAW,IAAI,IAAI,eAAe;AAAA,MAClC,IAAI,IAAI,IAAI,oBAAoB;AAAA,IACpC,CAAC;AACD,QAAI,IAAI,wBAAwB,QAAQ;AACxC,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,WAAW,SAAgE;AAC7E,UAAM,EAAE,UAAU,WAAW,eAAe,QAAQ,OAAO,IAAI;AAG/D,QAAI,WAAW,QAAW;AACtB,WAAK,mBAAmB,OAAO,UAAU,MAAM,CAAC;AAAA,IACpD;AAGA,cAAU,KAAK,OAAM,EAAE,SAAS,QAAQ,KAAK,CAAE;AAG/C,QAAI;AACJ,eAAW,WAAW,WAAW;AAC7B,UAAI;AACA,kBAAU,MAAM,KAAK,6BAA6B,SAAS,UAAU,aAAa;AAAA,MACtF,SAAS,GAAG;AACR,+BAAuB,OAAO,CAAC;AAC/B,eAAO,KAAK,wBAAwB,cAAc,OAAO,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE;AAAA,MACrF;AAAA,IACJ;AAEA,QAAI,YAAY,QAAW;AACvB,YAAM,IAAI,uBAAuB,6BAA6B;AAAA,IAClE;AAEA,WAAO,MAAM,KAAK,yBAAyB,SAAS,SAAS,aAAa;AAAA,EAC9E;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,yBACF,SACoE;AACpE,UAAM;AAAA,MACF,WAAW,EAAE,UAAU,QAAQ,EAAE,EAAE;AAAA,MACnC;AAAA,IACJ,IAAI;AAEJ,UAAM,uBACF,0BAA0B,QAAQ,YAAY,QAAQ,UAAU,uBAAuB;AAC3F,QAAI;AAAA,MACA,WAAW,EAAE,wBAAwB,CAAC,GAAG,aAAa;AAAA,IAC1D,IAAI;AACJ,QAAI,iBAAiB,oBAAoB,QAAQ,YAAY,QAAQ,UAAU,iBAAiB,CAAC;AAEjG,QACI,KAAK,SAAS,SAAS,cAAc,YAAY,GAAG,KACpD,KAAK,SAAS,WAAW,gBAAgB,YAAY,KAAK,IAAI,MAAM,QACtE;AACE,4BAAsB,cAAc;AAAA,IACxC;AACA,QAAI,yBAAyB,QAAW;AACpC,UAAI,EAAE,UAAU,IAAI;AACpB,UAAI,sBAAsB,QAAQ,MAAM;AACpC,gCAAwB,EAAE,aAAa,MAAM,KAAK,UAAU,KAAK,aAAW,QAAQ,SAAS,KAAK,EAAE;AAAA,MACxG,WAAW,sBAAsB,gBAAgB,MAAM;AAEnD,oBAAY,UAAU,OAAO,aAAW,QAAQ,SAAS,KAAK;AAAA,MAClE;AACA,gBAAU,KAAK,OAAM,EAAE,SAAS,QAAQ,KAAK,CAAE;AAC/C,qBAAe,UAAU,CAAC;AAC1B,UAAI,gBAAgB,wBAAwB,qBAAqB,eAAe,QAAW;AAEvF,yBAAiB,EAAE,YAAY,qBAAqB,WAAqB;AAAA,MAC7E,OAAO;AACH,yBAAiB,EAAE,mBAAmB,qBAAqB,EAAE;AAAA,MACjE;AAAA,IACJ;AAEA,UAAM,gBAAgB,KAAK,SAAS,SAAS,OAAO,qBAAqB;AAEzE,WAAO;AAAA,MACH,wCAAwC,WAAW,KAAK,cAAc,CAAC,QACnE,cAAc,MAClB,8BAA8B,WAAW,KAAK,YAAY,CAAC;AAAA,IAC/D;AAGA,QAAI;AACJ,QAAI;AAGJ,QAAI,iBAAiB,QAAW;AAC5B,UAAI;AACA,sBAAc,MAAM,KAAK,6BAA6B,cAAc,QAAQ;AAAA,MAChF,SAAS,OAAO;AACZ,+BAAuB,OAAO,KAAK;AAAA,MACvC;AAAA,IACJ;AACA,QAAI,gBAAgB,QAAW;AAC3B,YAAM,oBAAoB,MAAM,oBAAoB;AAAA,QAChD;AAAA,QACA;AAAA,QACA;AAAA,MACJ;AAEA,YAAM,EAAE,OAAO,IAAI,MAAM,oBAAoB;AAAA,QACzC;AAAA,QACA;AAAA,QACA,YACI,cAAc,QAAQ,aAAW,QAAQ,mCAAmC,cAAc,CAAC;AAAA,QAC/F,OAAO,SAAS,WAAW;AACvB,gBAAM,UAAU,MAAM,KAAK,6BAA6B,SAAS,UAAU,MAAM;AACjF,0BAAgB;AAChB,iBAAO;AAAA,QACX;AAAA,MACJ;AAGA,oBAAc;AAAA,IAClB;AAEA,WAAO,EAAE,aAAa,cAAc;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,wBAAwB,SAAiE;AAC3F,UAAM,EAAE,QAAQ,OAAO,IAAI;AAE3B,QAAI,WAAW,QAAW;AACtB,WAAK,mBAAmB,OAAO,UAAU,MAAM,CAAC;AAAA,IACpD;AAGA,UAAM,EAAE,aAAa,cAAc,IAAI,MAAM,KAAK,yBAAyB,OAAO;AAGlF,WAAO,MAAM,KAAK,yBAAyB,aAAa,SAAS,aAAa;AAAA,EAClF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,6BACF,SACA,UACA,QACoB;AACpB,QAAI;AACJ,QAAI,WAAW,QAAW;AACtB,aAAO,KAAK,4BAA4B,WAAW,yBAAyB,MAAM,CAAC;AAAA,IACvF;AAEA,YAAQ,QAAQ,MAAM;AAAA,MAClB,KAAK;AACD,cAAM,EAAE,GAAG,IAAI;AAEf,cAAM,gBAAgB,OAAO,EAAE;AAC/B,cAAM,gBAAgB,KAAK,SAAS,WAAW;AAAA,UAC3C,YAAY;AAAA,UACZ,gBAAgB,OAAO;AAAA,QAC3B;AACA,YAAI,kBAAkB,QAAW;AAE7B,gBAAM,IAAI;AAAA,YACN,MAAM,gBAAgB,MAAM,GAAG,0CAA0C,EAAE;AAAA,UAC/E;AAAA,QACJ;AACA,sBAAc,MAAM,cAAc,YAAY,OAAO;AACrD;AAAA,MAEJ,KAAK;AACD,cAAM,MAAM,KAAK,SAAS,WAAW,aAAa,YAAY,GAAG;AACjE,YAAI,CAAC,KAAK;AACN,gBAAM,IAAI;AAAA,YACN,6CAA6C,QAAQ,iBAAiB;AAAA,UAC1E;AAAA,QACJ;AAEA,sBAAc,MAAM,IAAI,YAAY,OAAO;AAC3C;AAAA,MAEJ;AACI,cAAM,IAAI;AAAA,UACN,4BAA6B,QAA0B,IAAI;AAAA,QAC/D;AAAA,IACR;AAGA,UAAM,mBAAmB,KAAK,SAAS,SAAS,uBAAuB;AAAA,MACnE,SAAS;AAAA;AAAA,MAET,mBAAmB;AAAA,QACf,cAAc,OAAO,QAAQ,GAAG;AAAA,QAChC,gBAAgB,OAAO,QAAQ,GAAG;AAAA,QAClC,iBAAiB,OAAO,QAAQ,GAAG;AAAA,MACvC;AAAA,MACA,aAAa;AAAA,IACjB,CAAC;AACD,UAAM,eAAe,KAAK,SAAS,UAAU;AAAA,MACzC;AAAA,MACA;AAAA,IACJ;AAEA,QAAI;AACA,YAAM,cAAc,MAAM,KAAK,YAAY;AAAA,QACvC,KAAK,SAAS,SAAS;AAAA,QACvB;AAAA,QACA;AAAA,QACA;AAAA,MACJ;AACA,uBAAiB,cAAc;AAC/B,aAAO;AAAA,IACX,SAAS,GAAG;AAER,UAAI,aAAa,4BAA4B;AACzC,cAAM,IAAI;AAAA,UACN,uEAAuE,EAAE,OAAO;AAAA,QACpF;AAAA,MACJ;AACA,YAAM;AAAA,IACV,UAAE;AACE,YAAM,iBAAiB,mBAAmB;AAAA,IAC9C;AAAA,EACJ;AAAA;AAAA,EAGA,mBAAmB,SAAsB;AACrC,QAAI,KAAK,SAAS,MAAM,IAAI,OAAO,GAAG;AAClC,YAAM,IAAI,oBAAoB,WAAW,QAAQ,MAAM,iDAAiD;AAAA,IAC5G;AAAA,EACJ;AAAA;AAAA,EAGA,kBAAkB,QAAgB,QAAiB;AAC/C,WAAO,MAAM;AACT,YAAM,UAAU,OAAO,UAAU,UAAU,OAAO,wBAAwB,OAAO,MAAM,CAAC;AACxF,UAAI;AACA,aAAK,mBAAmB,OAAO;AAAA,MACnC,SAAS,OAAO;AACZ,YAAI,iBAAiB,sBAAsB,WAAW,QAAW;AAC7D,gBAAM;AAAA,QACV;AACA;AAAA,MACJ;AACA,aAAO;AAAA,IACX;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,yBACF,aACA,SACA,eACoB;AACpB,UAAM;AAAA,MACF;AAAA,MACA,uBAAuB;AAAA,MACvB,wBAAwB;AAAA,IAC5B,IAAI;AAEJ,UAAM,uBAAuB;AAAA,MACzB,oBAAoB,qBAAqB,uBAAuB;AAAA;AAAA,MAChE,uBAAuB;AAAA,MACvB,GAAG;AAAA,IACP;AA8BA,UAAM,UAAU,KAAK,kBAAkB,QAAQ,qBAAqB,MAAM;AAC1E,WAAO;AAAA,MACH,+BAA+B,QAAQ,MAAM,gBAAgB,OAAO,QAAQ,WAAW,QAAQ,WAAW;AAAA,IAC9G;AACA,UAAM,uBAAuB,IAAI;AAAA;AAAA,MAE7B,IAAI;AAAA,QACA,IAAI,iCAAiC,KAAK,SAAS,WAAW,WAAW;AAAA,QACzE;AAAA,QACA;AAAA,MACJ;AAAA,MACA,KAAK,SAAS;AAAA,MACd;AAAA,MACA;AAAA,MACA,OAAOA,UAAS,kCAAkC;AAC9C,YAAI,CAAC,+BAA+B;AAMhC,gBAAM,YAAY,cAAc;AAAA,QACpC;AAEA,YAAI,6BAA6B,QAAW;AACxC,gBAAM,yBAAyBA,UAAS,aAAa;AACrD;AAAA,QACJ;AAGA,eAAO,MAAM,KAAK,SAAS,QAAQ,QAAQA,UAAS;AAAA,UAChD,kBAAkB;AAAA,YACd,eAAe,kBAAkB;AAAA,YACjC,SAAS,QAAQ,CAAC;AAAA,YAClB;AAAA,UACJ;AAAA,UACA,kBAAkB;AAAA,QACtB,CAAC;AAAA,MACL;AAAA,IACJ;AAEA,QAAI;AACA,YAAM,qBAAqB,qBAAqB;AAAA,IACpD,SAAS,OAAO;AAEZ,YAAM,KAAK,SAAS,QAAQ,MAAM,IAAI,OAAO,GAAG,OAAO;AACvD,YAAM;AAAA,IACV,UAAE;AAME,YAAM,YAAY,cAAc;AAAA,IACpC;AAEA,WAAO;AAAA,EACX;AACJ;",
5
5
  "names": ["address"]
6
6
  }
@@ -4,11 +4,11 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { ClassExtends, Duration } from "#general";
7
+ import { RetransmissionLimitReachedError } from "#protocol/errors.js";
7
8
  import { NodeId } from "#types";
8
9
  import { AddressTypeFromDevice, CommissionableDevice, CommissionableDeviceIdentifiers, DiscoverableDevice, OperationalDevice, Scanner } from "../common/Scanner.js";
9
10
  import { Fabric } from "../fabric/Fabric.js";
10
11
  import { MdnsClient } from "../mdns/MdnsClient.js";
11
- import { RetransmissionLimitReachedError } from "../protocol/MessageExchange.js";
12
12
  export declare class DiscoveryError extends RetransmissionLimitReachedError {
13
13
  }
14
14
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ControllerDiscovery.d.ts","sourceRoot":"","sources":["../../../src/peer/ControllerDiscovery.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,YAAY,EAEZ,QAAQ,EAKX,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EACH,qBAAqB,EACrB,oBAAoB,EACpB,+BAA+B,EAC/B,kBAAkB,EAClB,iBAAiB,EACjB,OAAO,EACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AAIjF,qBAAa,cAAe,SAAQ,+BAA+B;CAAG;AAEtE;;;GAGG;AACH,qBAAa,mCAAoC,SAAQ,+BAA+B;CAAG;AAE3F,qBAAa,mBAAmB;IAC5B;;;;OAIG;WACU,mCAAmC,CAC5C,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,EACxB,UAAU,EAAE,+BAA+B,EAC3C,OAAO,WAAc,GACtB,OAAO,CAAC,oBAAoB,EAAE,CAAC;WAgCrB,6BAA6B,CACtC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,EACxB,OAAO,EAAE,QAAQ,EACjB,UAAU,GAAE,+BAAoC,EAChD,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,GAC5D,OAAO,CAAC,oBAAoB,EAAE,CAAC;WAqCrB,yBAAyB,CAClC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,UAAU,EACnB,OAAO,CAAC,EAAE,QAAQ,EAClB,qBAAqB,CAAC,EAAE,OAAO,GAChC,OAAO,CAAC,iBAAiB,CAAC;IAU7B,MAAM,CAAC,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU;IAI/F,MAAM,CAAC,mCAAmC,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,GAAE,+BAAoC;IAI7G;;;;;OAKG;WACU,sBAAsB,CAAC,EAAE,SAAS,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,KAAK,EACtF,OAAO,EAAE,EAAE,EAAE,EACb,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,EAC1B,iBAAiB,EAAE,MAAM,OAAO,CAAC,EAAE,EAAE,CAAC,EACtC,IAAI,EAAE,CAAC,OAAO,EAAE,qBAAqB,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,EACrE,gBAAgB,CAAC,EAAE,qBAAqB,CAAC,EAAE,CAAC,GAC7C,OAAO,CAAC;QAAE,MAAM,EAAE,CAAC,CAAC;QAAC,aAAa,EAAE,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAAC,YAAY,CAAC,EAAE,EAAE,CAAA;KAAE,CAAC;CA6EzF"}
1
+ {"version":3,"file":"ControllerDiscovery.d.ts","sourceRoot":"","sources":["../../../src/peer/ControllerDiscovery.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,YAAY,EAEZ,QAAQ,EAKX,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EACH,qBAAqB,EACrB,oBAAoB,EACpB,+BAA+B,EAC/B,kBAAkB,EAClB,iBAAiB,EACjB,OAAO,EACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAInD,qBAAa,cAAe,SAAQ,+BAA+B;CAAG;AAEtE;;;GAGG;AACH,qBAAa,mCAAoC,SAAQ,+BAA+B;CAAG;AAE3F,qBAAa,mBAAmB;IAC5B;;;;OAIG;WACU,mCAAmC,CAC5C,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,EACxB,UAAU,EAAE,+BAA+B,EAC3C,OAAO,WAAc,GACtB,OAAO,CAAC,oBAAoB,EAAE,CAAC;WAgCrB,6BAA6B,CACtC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,EACxB,OAAO,EAAE,QAAQ,EACjB,UAAU,GAAE,+BAAoC,EAChD,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,GAC5D,OAAO,CAAC,oBAAoB,EAAE,CAAC;WAqCrB,yBAAyB,CAClC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,UAAU,EACnB,OAAO,CAAC,EAAE,QAAQ,EAClB,qBAAqB,CAAC,EAAE,OAAO,GAChC,OAAO,CAAC,iBAAiB,CAAC;IAU7B,MAAM,CAAC,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU;IAI/F,MAAM,CAAC,mCAAmC,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,GAAE,+BAAoC;IAI7G;;;;;OAKG;WACU,sBAAsB,CAAC,EAAE,SAAS,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,KAAK,EACtF,OAAO,EAAE,EAAE,EAAE,EACb,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,EAC1B,iBAAiB,EAAE,MAAM,OAAO,CAAC,EAAE,EAAE,CAAC,EACtC,IAAI,EAAE,CAAC,OAAO,EAAE,qBAAqB,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,EACrE,gBAAgB,CAAC,EAAE,qBAAqB,CAAC,EAAE,CAAC,GAC7C,OAAO,CAAC;QAAE,MAAM,EAAE,CAAC,CAAC;QAAC,aAAa,EAAE,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAAC,YAAY,CAAC,EAAE,EAAE,CAAA;KAAE,CAAC;CA6EzF"}
@@ -12,7 +12,7 @@ import {
12
12
  ServerAddress
13
13
  } from "#general";
14
14
  import { CommissionableDeviceDiscoveryFailedError } from "#peer/ControllerCommissioningFlow.js";
15
- import { RetransmissionLimitReachedError } from "../protocol/MessageExchange.js";
15
+ import { RetransmissionLimitReachedError } from "#protocol/errors.js";
16
16
  const logger = Logger.get("ControllerDiscovery");
17
17
  class DiscoveryError extends RetransmissionLimitReachedError {
18
18
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/peer/ControllerDiscovery.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -0,0 +1,57 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { BasicInformation } from "#clusters/basic-information";
7
+ import { BasicSet, Lifetime, MaybePromise } from "#general";
8
+ import type { MdnsClient } from "#mdns/MdnsClient.js";
9
+ import type { NodeSession } from "#session/NodeSession.js";
10
+ import type { SecureSession } from "#session/SecureSession.js";
11
+ import type { SessionManager } from "#session/SessionManager.js";
12
+ import { PeerDescriptor } from "./PeerDescriptor.js";
13
+ import type { NodeDiscoveryType } from "./PeerSet.js";
14
+ /**
15
+ * A node on a fabric we are a member of.
16
+ */
17
+ export declare class Peer {
18
+ #private;
19
+ activeDiscovery?: Peer.ActiveDiscovery;
20
+ activeReconnection?: Peer.ActiveReconnection;
21
+ constructor(descriptor: PeerDescriptor, context: Peer.Context);
22
+ get fabric(): import("../index.js").Fabric;
23
+ get limits(): BasicInformation.CapabilityMinima;
24
+ set limits(limits: BasicInformation.CapabilityMinima);
25
+ get address(): import("./PeerAddress.js").PeerAddress;
26
+ get descriptor(): PeerDescriptor;
27
+ get sessions(): BasicSet<NodeSession, NodeSession>;
28
+ /**
29
+ * Permanently forget the peer.
30
+ */
31
+ delete(): Promise<void>;
32
+ /**
33
+ * Close the peer without removing persistent state.
34
+ */
35
+ close(): Promise<void>;
36
+ toString(): string;
37
+ }
38
+ export declare namespace Peer {
39
+ interface Context {
40
+ lifetime: Lifetime.Owner;
41
+ sessions: SessionManager;
42
+ savePeer(peer: Peer): MaybePromise<void>;
43
+ deletePeer(peer: Peer): MaybePromise<void>;
44
+ closed(peer: Peer): void;
45
+ }
46
+ interface ActiveDiscovery {
47
+ type: NodeDiscoveryType;
48
+ promises?: (() => Promise<SecureSession>)[];
49
+ stopTimerFunc?: (() => void) | undefined;
50
+ mdnsClient?: MdnsClient;
51
+ }
52
+ interface ActiveReconnection {
53
+ promise: Promise<SecureSession>;
54
+ rejecter: (reason?: any) => void;
55
+ }
56
+ }
57
+ //# sourceMappingURL=Peer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Peer.d.ts","sourceRoot":"","sources":["../../../src/peer/Peer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAkB,QAAQ,EAAkC,QAAQ,EAAU,YAAY,EAAE,MAAM,UAAU,CAAC;AACpH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAA4B,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAItD;;GAEG;AACH,qBAAa,IAAI;;IAab,eAAe,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC;IACvC,kBAAkB,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC;gBAEjC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO;IA4B7D,IAAI,MAAM,iCAET;IAED,IAAI,MAAM,IAIS,gBAAgB,CAAC,gBAAgB,CAFnD;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,gBAAgB,EAEnD;IAED,IAAI,OAAO,2CAEV;IAED,IAAI,UAAU,mBAEb;IAED,IAAI,QAAQ,uCAEX;IAED;;OAEG;IACG,MAAM;IAOZ;;OAEG;IACG,KAAK;IA0BX,QAAQ;CASX;AAED,yBAAiB,IAAI,CAAC;IAClB,UAAiB,OAAO;QACpB,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC;QACzB,QAAQ,EAAE,cAAc,CAAC;QACzB,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACzC,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;KAC5B;IAGD,UAAiB,eAAe;QAC5B,IAAI,EAAE,iBAAiB,CAAC;QACxB,QAAQ,CAAC,EAAE,CAAC,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;QAC5C,aAAa,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;QACzC,UAAU,CAAC,EAAE,UAAU,CAAC;KAC3B;IAGD,UAAiB,kBAAkB;QAC/B,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;QAChC,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;KACpC;CACJ"}
@@ -0,0 +1,162 @@
1
+ var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
2
+ var __typeError = (msg) => {
3
+ throw TypeError(msg);
4
+ };
5
+ var __using = (stack, value, async) => {
6
+ if (value != null) {
7
+ if (typeof value !== "object" && typeof value !== "function") __typeError("Object expected");
8
+ var dispose, inner;
9
+ if (async) dispose = value[__knownSymbol("asyncDispose")];
10
+ if (dispose === void 0) {
11
+ dispose = value[__knownSymbol("dispose")];
12
+ if (async) inner = dispose;
13
+ }
14
+ if (typeof dispose !== "function") __typeError("Object not disposable");
15
+ if (inner) dispose = function() {
16
+ try {
17
+ inner.call(this);
18
+ } catch (e) {
19
+ return Promise.reject(e);
20
+ }
21
+ };
22
+ stack.push([async, dispose, value]);
23
+ } else if (async) {
24
+ stack.push([async]);
25
+ }
26
+ return value;
27
+ };
28
+ var __callDispose = (stack, error, hasError) => {
29
+ var E = typeof SuppressedError === "function" ? SuppressedError : function(e, s, m, _) {
30
+ return _ = Error(m), _.name = "SuppressedError", _.error = e, _.suppressed = s, _;
31
+ };
32
+ var fail = (e) => error = hasError ? new E(e, error, "An error was suppressed during disposal") : (hasError = true, e);
33
+ var next = (it) => {
34
+ while (it = stack.pop()) {
35
+ try {
36
+ var result = it[1] && it[1].call(it[2]);
37
+ if (it[0]) return Promise.resolve(result).then(next, (e) => (fail(e), next()));
38
+ } catch (e) {
39
+ fail(e);
40
+ }
41
+ }
42
+ if (hasError) throw error;
43
+ };
44
+ return next();
45
+ };
46
+ /**
47
+ * @license
48
+ * Copyright 2022-2025 Matter.js Authors
49
+ * SPDX-License-Identifier: Apache-2.0
50
+ */
51
+ import { BasicMultiplex, BasicSet, Diagnostic, isIpNetworkChannel, Logger } from "#general";
52
+ import { ObservablePeerDescriptor } from "./PeerDescriptor.js";
53
+ const logger = Logger.get("Peer");
54
+ class Peer {
55
+ #lifetime;
56
+ #descriptor;
57
+ #context;
58
+ #sessions = new BasicSet();
59
+ #workers;
60
+ #isSaving = false;
61
+ #limits = {
62
+ caseSessionsPerFabric: 3,
63
+ subscriptionsPerFabric: 3
64
+ };
65
+ // TODO - manage these internally and/or factor away
66
+ activeDiscovery;
67
+ activeReconnection;
68
+ constructor(descriptor, context) {
69
+ this.#lifetime = context.lifetime.join(descriptor.address.toString());
70
+ this.#workers = new BasicMultiplex();
71
+ this.#descriptor = new ObservablePeerDescriptor(descriptor, () => {
72
+ if (this.#isSaving) {
73
+ return;
74
+ }
75
+ this.#isSaving = true;
76
+ this.#workers.add(this.#save());
77
+ });
78
+ this.#context = context;
79
+ this.#sessions.added.on((session) => {
80
+ session.closing.on(() => {
81
+ this.#sessions.delete(session);
82
+ });
83
+ const { channel } = session.channel;
84
+ if (isIpNetworkChannel(channel)) {
85
+ this.#descriptor.operationalAddress = channel.networkAddress;
86
+ }
87
+ });
88
+ }
89
+ get fabric() {
90
+ return this.#context.sessions.fabricFor(this.address);
91
+ }
92
+ get limits() {
93
+ return this.#limits;
94
+ }
95
+ set limits(limits) {
96
+ this.#limits = limits;
97
+ }
98
+ get address() {
99
+ return this.#descriptor.address;
100
+ }
101
+ get descriptor() {
102
+ return this.#descriptor;
103
+ }
104
+ get sessions() {
105
+ return this.#sessions;
106
+ }
107
+ /**
108
+ * Permanently forget the peer.
109
+ */
110
+ async delete() {
111
+ logger.info("Removing", Diagnostic.strong(this.toString()));
112
+ await this.close();
113
+ await this.#context.deletePeer(this);
114
+ await this.#context.sessions.deleteResumptionRecord(this.address);
115
+ }
116
+ /**
117
+ * Close the peer without removing persistent state.
118
+ */
119
+ async close() {
120
+ var _stack = [];
121
+ try {
122
+ const _lifetime = __using(_stack, this.#lifetime.closing());
123
+ if (this.activeDiscovery) {
124
+ this.activeDiscovery.stopTimerFunc?.();
125
+ this.activeDiscovery.mdnsClient?.cancelOperationalDeviceDiscovery(this.fabric, this.address.nodeId, false);
126
+ this.activeDiscovery = void 0;
127
+ }
128
+ if (this.activeReconnection) {
129
+ this.activeReconnection.rejecter("Peer closed");
130
+ this.activeReconnection = void 0;
131
+ }
132
+ for (const session of this.#context.sessions.sessionsFor(this.address)) {
133
+ await session.initiateClose();
134
+ }
135
+ await this.#workers;
136
+ this.#context.closed(this);
137
+ } catch (_) {
138
+ var _error = _, _hasError = true;
139
+ } finally {
140
+ __callDispose(_stack, _error, _hasError);
141
+ }
142
+ }
143
+ toString() {
144
+ return this.address.toString();
145
+ }
146
+ async #save() {
147
+ var _stack = [];
148
+ try {
149
+ const _lifetime = __using(_stack, this.#lifetime.join("saving"));
150
+ this.#isSaving = false;
151
+ await this.#context.savePeer(this);
152
+ } catch (_) {
153
+ var _error = _, _hasError = true;
154
+ } finally {
155
+ __callDispose(_stack, _error, _hasError);
156
+ }
157
+ }
158
+ }
159
+ export {
160
+ Peer
161
+ };
162
+ //# sourceMappingURL=Peer.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/peer/Peer.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,SAAS,gBAAgB,UAAU,YAAY,oBAA8B,cAA4B;AAKzG,SAAS,gCAAgD;AAGzD,MAAM,SAAS,OAAO,IAAI,MAAM;AAKzB,MAAM,KAAK;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY,IAAI,SAAsB;AAAA,EACtC;AAAA,EACA,YAAY;AAAA,EACZ,UAA6C;AAAA,IACzC,uBAAuB;AAAA,IACvB,wBAAwB;AAAA,EAC5B;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EAEA,YAAY,YAA4B,SAAuB;AAC3D,SAAK,YAAY,QAAQ,SAAS,KAAK,WAAW,QAAQ,SAAS,CAAC;AACpE,SAAK,WAAW,IAAI,eAAe;AAEnC,SAAK,cAAc,IAAI,yBAAyB,YAAY,MAAM;AAC9D,UAAI,KAAK,WAAW;AAChB;AAAA,MACJ;AAEA,WAAK,YAAY;AACjB,WAAK,SAAS,IAAI,KAAK,MAAM,CAAC;AAAA,IAClC,CAAC;AACD,SAAK,WAAW;AAEhB,SAAK,UAAU,MAAM,GAAG,aAAW;AAE/B,cAAQ,QAAQ,GAAG,MAAM;AACrB,aAAK,UAAU,OAAO,OAAO;AAAA,MACjC,CAAC;AAGD,YAAM,EAAE,QAAQ,IAAI,QAAQ;AAC5B,UAAI,mBAAmB,OAAO,GAAG;AAC7B,aAAK,YAAY,qBAAqB,QAAQ;AAAA,MAClD;AAAA,IACJ,CAAC;AAAA,EACL;AAAA,EAEA,IAAI,SAAS;AACT,WAAO,KAAK,SAAS,SAAS,UAAU,KAAK,OAAO;AAAA,EACxD;AAAA,EAEA,IAAI,SAAS;AACT,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,OAAO,QAA2C;AAClD,SAAK,UAAU;AAAA,EACnB;AAAA,EAEA,IAAI,UAAU;AACV,WAAO,KAAK,YAAY;AAAA,EAC5B;AAAA,EAEA,IAAI,aAAa;AACb,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,WAAW;AACX,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,SAAS;AACX,WAAO,KAAK,YAAY,WAAW,OAAO,KAAK,SAAS,CAAC,CAAC;AAC1D,UAAM,KAAK,MAAM;AACjB,UAAM,KAAK,SAAS,WAAW,IAAI;AACnC,UAAM,KAAK,SAAS,SAAS,uBAAuB,KAAK,OAAO;AAAA,EACpE;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,QAAQ;AACV;AAAA;AAAA,YAAM,YAAY,qBAAK,UAAU,QAAQ;AAEzC,UAAI,KAAK,iBAAiB;AACtB,aAAK,gBAAgB,gBAAgB;AAGrC,aAAK,gBAAgB,YAAY,iCAAiC,KAAK,QAAQ,KAAK,QAAQ,QAAQ,KAAK;AAEzG,aAAK,kBAAkB;AAAA,MAC3B;AAEA,UAAI,KAAK,oBAAoB;AACzB,aAAK,mBAAmB,SAAS,aAAa;AAC9C,aAAK,qBAAqB;AAAA,MAC9B;AAEA,iBAAW,WAAW,KAAK,SAAS,SAAS,YAAY,KAAK,OAAO,GAAG;AACpE,cAAM,QAAQ,cAAc;AAAA,MAChC;AAEA,YAAM,KAAK;AAEX,WAAK,SAAS,OAAO,IAAI;AAAA,aAtBzB;AAAA;AAAA;AAAA;AAAA;AAAA,EAuBJ;AAAA,EAEA,WAAW;AACP,WAAO,KAAK,QAAQ,SAAS;AAAA,EACjC;AAAA,EAEA,MAAM,QAAQ;AACV;AAAA;AAAA,YAAM,YAAY,qBAAK,UAAU,KAAK,QAAQ;AAC9C,WAAK,YAAY;AACjB,YAAM,KAAK,SAAS,SAAS,IAAI;AAAA,aAFjC;AAAA;AAAA;AAAA;AAAA;AAAA,EAGJ;AACJ;",
5
+ "names": []
6
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"PeerAddress.d.ts","sourceRoot":"","sources":["../../../src/peer/PeerAddress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAW,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAClB;AAMD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,SAAS,GAAG,WAAW,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAkC5E;AAED,yBAAiB,WAAW,CAAC;IACzB,SAAgB,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,WAM9E;IAED,SAAgB,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAErD;CACJ;AAED;;GAEG;AACH,qBAAa,cAAc,CAAC,CAAC,CAAE,SAAQ,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IAC7C,MAAM,CAAC,GAAG,EAAE,WAAW;IAIvB,GAAG,CAAC,GAAG,EAAE,WAAW;IAIpB,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;IAI9B,GAAG,CAAC,GAAG,EAAE,WAAW;CAGhC;AAED,qBAAa,cAAe,SAAQ,GAAG,CAAC,WAAW,CAAC;IACvC,GAAG,CAAC,KAAK,EAAE,WAAW;IAItB,GAAG,CAAC,KAAK,EAAE,WAAW;IAItB,MAAM,CAAC,KAAK,EAAE,WAAW;CAGrC"}
1
+ {"version":3,"file":"PeerAddress.d.ts","sourceRoot":"","sources":["../../../src/peer/PeerAddress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAW,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAClB;AAMD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,SAAS,GAAG,WAAW,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAqC5E;AAED,yBAAiB,WAAW,CAAC;IACzB,SAAgB,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,WAM9E;IAED,SAAgB,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAErD;CACJ;AAED;;GAEG;AACH,qBAAa,cAAc,CAAC,CAAC,CAAE,SAAQ,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IAC7C,MAAM,CAAC,GAAG,EAAE,WAAW;IAIvB,GAAG,CAAC,GAAG,EAAE,WAAW;IAIpB,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;IAI9B,GAAG,CAAC,GAAG,EAAE,WAAW;CAGhC;AAED,qBAAa,cAAe,SAAQ,GAAG,CAAC,WAAW,CAAC;IACvC,GAAG,CAAC,KAAK,EAAE,WAAW;IAItB,GAAG,CAAC,KAAK,EAAE,WAAW;IAItB,MAAM,CAAC,KAAK,EAAE,WAAW;CAGrC"}
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { DiagnosticPresentation } from "#general";
6
7
  import { GroupId } from "#types";
7
8
  const interned = Symbol("interned-logical-address");
8
9
  const internedAddresses = /* @__PURE__ */ new Map();
@@ -27,8 +28,10 @@ function PeerAddress(address) {
27
28
  ...address,
28
29
  [interned]: true,
29
30
  toString() {
30
- const nodeStr = this.nodeId > 65535 ? `0x${this.nodeId.toString(16)}` : this.nodeId;
31
- return `peer@${this.fabricIndex}:${nodeStr}`;
31
+ return `@${this.fabricIndex.toString(16)}:${this.nodeId.toString(16)}`;
32
+ },
33
+ get [DiagnosticPresentation.value]() {
34
+ return this.toString();
32
35
  }
33
36
  }
34
37
  );
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/peer/PeerAddress.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAsB,eAAuB;AAU7C,MAAM,WAAW,OAAO,0BAA0B;AAElD,MAAM,oBAAoB,oBAAI,IAA2C;AAQlE,SAAS,YAA+C,SAAe;AAC1E,MAAI,YAAY,QAAW;AACvB,WAAO;AAAA,EACX;AAEA,MAAI,YAAY,SAAS;AACrB,WAAO;AAAA,EACX;AAEA,MAAI,iBAAiB,kBAAkB,IAAI,QAAQ,WAAW;AAC9D,MAAI,mBAAmB,QAAW;AAC9B,sBAAkB,IAAI,QAAQ,aAAc,iBAAiB,oBAAI,IAAI,CAAE;AAAA,EAC3E;AAEA,MAAI,kBAAkB,eAAe,IAAI,QAAQ,MAAM;AACvD,MAAI,iBAAiB;AACjB,WAAO;AAAA,EACX;AAEA,iBAAe;AAAA,IACX,QAAQ;AAAA,IACP,kBAAkB;AAAA,MACf,GAAG;AAAA,MAEH,CAAC,QAAQ,GAAG;AAAA,MAEZ,WAAW;AACP,cAAM,UAAU,KAAK,SAAS,QAAS,KAAK,KAAK,OAAO,SAAS,EAAE,CAAC,KAAK,KAAK;AAC9E,eAAO,QAAQ,KAAK,WAAW,IAAI,OAAO;AAAA,MAC9C;AAAA,IACJ;AAAA,EACJ;AAEA,SAAO;AACX;AAAA,CAEO,CAAUA,iBAAV;AACI,WAAS,GAAG,OAA+B,OAA+B;AAC7E,QAAI,UAAU,UAAa,UAAU,QAAW;AAC5C,aAAO;AAAA,IACX;AAEA,WAAO,MAAM,gBAAgB,MAAM,eAAe,MAAM,WAAW,MAAM;AAAA,EAC7E;AANO,EAAAA,aAAS;AAQT,WAAS,QAAQ,SAA+B;AACnD,WAAO,QAAQ,cAAc,QAAQ,MAAM;AAAA,EAC/C;AAFO,EAAAA,aAAS;AAAA,GATH;AAiBV,MAAM,uBAA0B,IAAoB;AAAA,EAC9C,OAAO,KAAkB;AAC9B,WAAO,MAAM,OAAO,YAAY,GAAG,CAAC;AAAA,EACxC;AAAA,EAES,IAAI,KAAkB;AAC3B,WAAO,MAAM,IAAI,YAAY,GAAG,CAAC;AAAA,EACrC;AAAA,EAES,IAAI,KAAkB,OAAU;AACrC,WAAO,MAAM,IAAI,YAAY,GAAG,GAAG,KAAK;AAAA,EAC5C;AAAA,EAES,IAAI,KAAkB;AAC3B,WAAO,MAAM,IAAI,YAAY,GAAG,CAAC;AAAA,EACrC;AACJ;AAEO,MAAM,uBAAuB,IAAiB;AAAA,EACxC,IAAI,OAAoB;AAC7B,WAAO,MAAM,IAAI,YAAY,KAAK,CAAC;AAAA,EACvC;AAAA,EAES,IAAI,OAAoB;AAC7B,WAAO,MAAM,IAAI,YAAY,KAAK,CAAC;AAAA,EACvC;AAAA,EAES,OAAO,OAAoB;AAChC,WAAO,MAAM,OAAO,YAAY,KAAK,CAAC;AAAA,EAC1C;AACJ;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,8BAA8B;AACvC,SAAsB,eAAuB;AAU7C,MAAM,WAAW,OAAO,0BAA0B;AAElD,MAAM,oBAAoB,oBAAI,IAA2C;AAQlE,SAAS,YAA+C,SAAe;AAC1E,MAAI,YAAY,QAAW;AACvB,WAAO;AAAA,EACX;AAEA,MAAI,YAAY,SAAS;AACrB,WAAO;AAAA,EACX;AAEA,MAAI,iBAAiB,kBAAkB,IAAI,QAAQ,WAAW;AAC9D,MAAI,mBAAmB,QAAW;AAC9B,sBAAkB,IAAI,QAAQ,aAAc,iBAAiB,oBAAI,IAAI,CAAE;AAAA,EAC3E;AAEA,MAAI,kBAAkB,eAAe,IAAI,QAAQ,MAAM;AACvD,MAAI,iBAAiB;AACjB,WAAO;AAAA,EACX;AAEA,iBAAe;AAAA,IACX,QAAQ;AAAA,IACP,kBAAkB;AAAA,MACf,GAAG;AAAA,MAEH,CAAC,QAAQ,GAAG;AAAA,MAEZ,WAAW;AACP,eAAO,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC,IAAI,KAAK,OAAO,SAAS,EAAE,CAAC;AAAA,MACxE;AAAA,MAEA,KAAK,uBAAuB,KAAK,IAAI;AACjC,eAAO,KAAK,SAAS;AAAA,MACzB;AAAA,IACJ;AAAA,EACJ;AAEA,SAAO;AACX;AAAA,CAEO,CAAUA,iBAAV;AACI,WAAS,GAAG,OAA+B,OAA+B;AAC7E,QAAI,UAAU,UAAa,UAAU,QAAW;AAC5C,aAAO;AAAA,IACX;AAEA,WAAO,MAAM,gBAAgB,MAAM,eAAe,MAAM,WAAW,MAAM;AAAA,EAC7E;AANO,EAAAA,aAAS;AAQT,WAAS,QAAQ,SAA+B;AACnD,WAAO,QAAQ,cAAc,QAAQ,MAAM;AAAA,EAC/C;AAFO,EAAAA,aAAS;AAAA,GATH;AAiBV,MAAM,uBAA0B,IAAoB;AAAA,EAC9C,OAAO,KAAkB;AAC9B,WAAO,MAAM,OAAO,YAAY,GAAG,CAAC;AAAA,EACxC;AAAA,EAES,IAAI,KAAkB;AAC3B,WAAO,MAAM,IAAI,YAAY,GAAG,CAAC;AAAA,EACrC;AAAA,EAES,IAAI,KAAkB,OAAU;AACrC,WAAO,MAAM,IAAI,YAAY,GAAG,GAAG,KAAK;AAAA,EAC5C;AAAA,EAES,IAAI,KAAkB;AAC3B,WAAO,MAAM,IAAI,YAAY,GAAG,CAAC;AAAA,EACrC;AACJ;AAEO,MAAM,uBAAuB,IAAiB;AAAA,EACxC,IAAI,OAAoB;AAC7B,WAAO,MAAM,IAAI,YAAY,KAAK,CAAC;AAAA,EACvC;AAAA,EAES,IAAI,OAAoB;AAC7B,WAAO,MAAM,IAAI,YAAY,KAAK,CAAC;AAAA,EACvC;AAAA,EAES,OAAO,OAAoB;AAChC,WAAO,MAAM,OAAO,YAAY,KAAK,CAAC;AAAA,EAC1C;AACJ;",
5
5
  "names": ["PeerAddress"]
6
6
  }
@@ -7,14 +7,14 @@ import { ReadScope } from "#action/client/ReadScope.js";
7
7
  import { Construction, MaybePromise } from "#general";
8
8
  import { DecodedAttributeReportValue } from "#interaction/AttributeDataDecoder.js";
9
9
  import { AttributeId, ClusterId, EndpointNumber, EventNumber } from "#types";
10
- import { OperationalPeer } from "./OperationalPeer.js";
11
10
  import { PeerAddress } from "./PeerAddress.js";
11
+ import { PeerDescriptor } from "./PeerDescriptor.js";
12
12
  /**
13
13
  * The interface {@link PeerSet} uses for persisting operational information.
14
14
  */
15
15
  export declare abstract class PeerAddressStore {
16
- abstract loadPeers(): MaybePromise<Iterable<OperationalPeer>>;
17
- abstract updatePeer(peer: OperationalPeer): MaybePromise<void>;
16
+ abstract loadPeers(): MaybePromise<Iterable<PeerDescriptor>>;
17
+ abstract updatePeer(peer: PeerDescriptor): MaybePromise<void>;
18
18
  abstract deletePeer(address: PeerAddress): MaybePromise<void>;
19
19
  abstract createNodeStore(address: PeerAddress): MaybePromise<PeerDataStore | undefined>;
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PeerAddressStore.d.ts","sourceRoot":"","sources":["../../../src/peer/PeerAddressStore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C;;GAEG;AACH,8BAAsB,gBAAgB;IAClC,QAAQ,CAAC,SAAS,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC7D,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,YAAY,CAAC,IAAI,CAAC;IAC9D,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC;IAC7D,QAAQ,CAAC,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,CAAC,aAAa,GAAG,SAAS,CAAC;CAC1F;AAED,8BAAsB,aAAa;IAC/B,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC;IAEnD,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC;IACrC,QAAQ,CAAC,qBAAqB,CAAC,WAAW,EAAE,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC;IAE5E,QAAQ,CAAC,iBAAiB,CAAC,UAAU,EAAE,2BAA2B,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC;IAGhH,QAAQ,CAAC,iBAAiB,CACtB,UAAU,EAAE,cAAc,EAC1B,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,GACzB,2BAA2B,CAAC,GAAG,CAAC,GAAG,SAAS;IAC/C,QAAQ,CAAC,kBAAkB,CAAC,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,GAAG,2BAA2B,CAAC,GAAG,CAAC,EAAE;IACjH,QAAQ,CAAC,qBAAqB,CAAC,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS;IACpG,QAAQ,CAAC,sBAAsB,CAC3B,gBAAgB,CAAC,EAAE,cAAc,EACjC,eAAe,CAAC,EAAE,SAAS,GAC5B;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,SAAS,EAAE,SAAS,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE;IAC9E,QAAQ,CAAC,oBAAoB,CAAC,UAAU,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC;CAC1G"}
1
+ {"version":3,"file":"PeerAddressStore.d.ts","sourceRoot":"","sources":["../../../src/peer/PeerAddressStore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD;;GAEG;AACH,8BAAsB,gBAAgB;IAClC,QAAQ,CAAC,SAAS,IAAI,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC5D,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC;IAC7D,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC;IAC7D,QAAQ,CAAC,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,CAAC,aAAa,GAAG,SAAS,CAAC;CAC1F;AAED,8BAAsB,aAAa;IAC/B,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC;IAEnD,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC;IACrC,QAAQ,CAAC,qBAAqB,CAAC,WAAW,EAAE,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC;IAE5E,QAAQ,CAAC,iBAAiB,CAAC,UAAU,EAAE,2BAA2B,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC;IAGhH,QAAQ,CAAC,iBAAiB,CACtB,UAAU,EAAE,cAAc,EAC1B,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,GACzB,2BAA2B,CAAC,GAAG,CAAC,GAAG,SAAS;IAC/C,QAAQ,CAAC,kBAAkB,CAAC,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,GAAG,2BAA2B,CAAC,GAAG,CAAC,EAAE;IACjH,QAAQ,CAAC,qBAAqB,CAAC,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS;IACpG,QAAQ,CAAC,sBAAsB,CAC3B,gBAAgB,CAAC,EAAE,cAAc,EACjC,eAAe,CAAC,EAAE,SAAS,GAC5B;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,SAAS,EAAE,SAAS,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE;IAC9E,QAAQ,CAAC,oBAAoB,CAAC,UAAU,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC;CAC1G"}
@@ -6,14 +6,13 @@
6
6
  import { DiscoveryData } from "#common/Scanner.js";
7
7
  import { ServerAddressUdp } from "#general";
8
8
  import type { PeerDataStore } from "#peer/PeerAddressStore.js";
9
- import { SessionParameters } from "#session/Session.js";
10
9
  import { PeerAddress } from "./PeerAddress.js";
11
10
  /**
12
11
  * Operational information for a single peer.
13
12
  *
14
13
  * For our purposes a "peer" is another node commissioned to a fabric to which we have access.
15
14
  */
16
- export interface OperationalPeer {
15
+ export interface PeerDescriptor {
17
16
  /**
18
17
  * The logical address of the peer.
19
18
  */
@@ -22,17 +21,25 @@ export interface OperationalPeer {
22
21
  * A physical address the peer may be accessed at, if known.
23
22
  */
24
23
  operationalAddress?: ServerAddressUdp;
25
- /**
26
- * The peer's session parameters reported during discovery.
27
- */
28
- sessionParameters?: SessionParameters;
29
24
  /**
30
25
  * Additional information collected while locating the peer.
31
26
  */
32
27
  discoveryData?: DiscoveryData;
33
28
  /**
34
29
  * The data store for the peer.
30
+ *
31
+ * @deprecated
35
32
  */
36
33
  dataStore?: PeerDataStore;
37
34
  }
38
- //# sourceMappingURL=OperationalPeer.d.ts.map
35
+ export declare class ObservablePeerDescriptor implements PeerDescriptor {
36
+ #private;
37
+ constructor({ address, operationalAddress, discoveryData, dataStore }: PeerDescriptor, onChange: () => void);
38
+ get address(): PeerAddress;
39
+ get operationalAddress(): ServerAddressUdp | undefined;
40
+ set operationalAddress(value: ServerAddressUdp | undefined);
41
+ get discoveryData(): DiscoveryData | undefined;
42
+ set discoveryData(value: DiscoveryData | undefined);
43
+ get dataStore(): PeerDataStore | undefined;
44
+ }
45
+ //# sourceMappingURL=PeerDescriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PeerDescriptor.d.ts","sourceRoot":"","sources":["../../../src/peer/PeerDescriptor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAe,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC3B;;OAEG;IACH,OAAO,EAAE,WAAW,CAAC;IAErB;;OAEG;IACH,kBAAkB,CAAC,EAAE,gBAAgB,CAAC;IAEtC;;OAEG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B;;;;OAIG;IACH,SAAS,CAAC,EAAE,aAAa,CAAC;CAC7B;AAED,qBAAa,wBAAyB,YAAW,cAAc;;gBAO/C,EAAE,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,IAAI;IAQ3G,IAAI,OAAO,gBAEV;IAED,IAAI,kBAAkB,IAIQ,gBAAgB,GAAG,SAAS,CAFzD;IAED,IAAI,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,GAAG,SAAS,EAOzD;IAED,IAAI,aAAa,IAIQ,aAAa,GAAG,SAAS,CAFjD;IAED,IAAI,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,EAOjD;IAED,IAAI,SAAS,8BAEZ;CACJ"}