@matter/node 0.16.0-alpha.0-20251006-3fe1e7c57 → 0.16.0-alpha.0-20251013-89bb7099d

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 (573) hide show
  1. package/dist/cjs/behavior/Behavior.d.ts +4 -0
  2. package/dist/cjs/behavior/Behavior.d.ts.map +1 -1
  3. package/dist/cjs/behavior/Behavior.js +7 -1
  4. package/dist/cjs/behavior/Behavior.js.map +1 -1
  5. package/dist/cjs/behavior/Events.js +2 -2
  6. package/dist/cjs/behavior/internal/BehaviorBacking.d.ts.map +1 -1
  7. package/dist/cjs/behavior/internal/BehaviorBacking.js +67 -3
  8. package/dist/cjs/behavior/internal/BehaviorBacking.js.map +1 -1
  9. package/dist/cjs/behavior/state/managed/Datasource.d.ts +4 -9
  10. package/dist/cjs/behavior/state/managed/Datasource.d.ts.map +1 -1
  11. package/dist/cjs/behavior/state/managed/Datasource.js +9 -12
  12. package/dist/cjs/behavior/state/managed/Datasource.js.map +1 -1
  13. package/dist/cjs/behavior/state/managed/NameResolver.d.ts.map +1 -1
  14. package/dist/cjs/behavior/state/managed/NameResolver.js.map +1 -1
  15. package/dist/cjs/behavior/state/managed/values/ValueCaster.d.ts +3 -2
  16. package/dist/cjs/behavior/state/managed/values/ValueCaster.d.ts.map +1 -1
  17. package/dist/cjs/behavior/state/managed/values/ValueCaster.js +16 -3
  18. package/dist/cjs/behavior/state/managed/values/ValueCaster.js.map +1 -1
  19. package/dist/cjs/behavior/system/commissioning/CommissioningClient.d.ts +12 -5
  20. package/dist/cjs/behavior/system/commissioning/CommissioningClient.d.ts.map +1 -1
  21. package/dist/cjs/behavior/system/commissioning/CommissioningClient.js +17 -1
  22. package/dist/cjs/behavior/system/commissioning/CommissioningClient.js.map +1 -1
  23. package/dist/cjs/behavior/system/commissioning/CommissioningServer.d.ts.map +1 -1
  24. package/dist/cjs/behavior/system/commissioning/CommissioningServer.js +2 -1
  25. package/dist/cjs/behavior/system/commissioning/CommissioningServer.js.map +1 -1
  26. package/dist/cjs/behavior/system/controller/ControllerBehavior.d.ts.map +1 -1
  27. package/dist/cjs/behavior/system/controller/ControllerBehavior.js +0 -4
  28. package/dist/cjs/behavior/system/controller/ControllerBehavior.js.map +1 -1
  29. package/dist/cjs/behavior/system/http/HttpInterface.d.ts +36 -0
  30. package/dist/cjs/behavior/system/http/HttpInterface.d.ts.map +1 -0
  31. package/dist/cjs/behavior/system/http/HttpInterface.js +282 -0
  32. package/dist/cjs/behavior/system/http/HttpInterface.js.map +6 -0
  33. package/dist/cjs/behavior/system/http/HttpServer.d.ts +30 -0
  34. package/dist/cjs/behavior/system/http/HttpServer.d.ts.map +1 -0
  35. package/dist/cjs/behavior/system/http/HttpServer.js +51 -0
  36. package/dist/cjs/behavior/system/http/HttpServer.js.map +6 -0
  37. package/dist/cjs/behavior/system/http/index.d.ts +8 -0
  38. package/dist/cjs/behavior/system/http/index.d.ts.map +1 -0
  39. package/dist/cjs/behavior/system/http/index.js +25 -0
  40. package/dist/cjs/behavior/system/http/index.js.map +6 -0
  41. package/dist/cjs/behavior/system/index/IndexBehavior.d.ts +4 -4
  42. package/dist/cjs/behavior/system/index/IndexBehavior.d.ts.map +1 -1
  43. package/dist/cjs/behavior/system/index/IndexBehavior.js +9 -4
  44. package/dist/cjs/behavior/system/index/IndexBehavior.js.map +1 -1
  45. package/dist/cjs/behavior/system/index.d.ts +4 -0
  46. package/dist/cjs/behavior/system/index.d.ts.map +1 -1
  47. package/dist/cjs/behavior/system/index.js +4 -0
  48. package/dist/cjs/behavior/system/index.js.map +1 -1
  49. package/dist/cjs/behavior/system/mqtt/MqttInterface.d.ts +22 -0
  50. package/dist/cjs/behavior/system/mqtt/MqttInterface.d.ts.map +1 -0
  51. package/dist/cjs/behavior/system/mqtt/MqttInterface.js +351 -0
  52. package/dist/cjs/behavior/system/mqtt/MqttInterface.js.map +6 -0
  53. package/dist/cjs/behavior/system/mqtt/MqttServer.d.ts +36 -0
  54. package/dist/cjs/behavior/system/mqtt/MqttServer.d.ts.map +1 -0
  55. package/dist/cjs/behavior/system/mqtt/MqttServer.js +55 -0
  56. package/dist/cjs/behavior/system/mqtt/MqttServer.js.map +6 -0
  57. package/dist/cjs/behavior/system/mqtt/index.d.ts +8 -0
  58. package/dist/cjs/behavior/system/mqtt/index.d.ts.map +1 -0
  59. package/dist/cjs/behavior/system/mqtt/index.js +25 -0
  60. package/dist/cjs/behavior/system/mqtt/index.js.map +6 -0
  61. package/dist/cjs/behavior/system/network/NetworkClient.d.ts +32 -3
  62. package/dist/cjs/behavior/system/network/NetworkClient.d.ts.map +1 -1
  63. package/dist/cjs/behavior/system/network/NetworkClient.js +100 -18
  64. package/dist/cjs/behavior/system/network/NetworkClient.js.map +1 -1
  65. package/dist/cjs/behavior/system/product-description/ProductDescriptionServer.d.ts +2 -1
  66. package/dist/cjs/behavior/system/product-description/ProductDescriptionServer.d.ts.map +1 -1
  67. package/dist/cjs/behavior/system/product-description/ProductDescriptionServer.js +7 -5
  68. package/dist/cjs/behavior/system/product-description/ProductDescriptionServer.js.map +1 -1
  69. package/dist/cjs/behavior/system/remote/RemoteInterface.d.ts +41 -0
  70. package/dist/cjs/behavior/system/remote/RemoteInterface.d.ts.map +1 -0
  71. package/dist/cjs/behavior/system/remote/RemoteInterface.js +105 -0
  72. package/dist/cjs/behavior/system/remote/RemoteInterface.js.map +6 -0
  73. package/dist/cjs/behavior/system/remote/RemoteServer.d.ts +61 -0
  74. package/dist/cjs/behavior/system/remote/RemoteServer.d.ts.map +1 -0
  75. package/dist/cjs/behavior/system/remote/RemoteServer.js +118 -0
  76. package/dist/cjs/behavior/system/remote/RemoteServer.js.map +6 -0
  77. package/dist/cjs/behavior/system/remote/api/Api.d.ts +36 -0
  78. package/dist/cjs/behavior/system/remote/api/Api.d.ts.map +1 -0
  79. package/dist/cjs/behavior/system/remote/api/Api.js +157 -0
  80. package/dist/cjs/behavior/system/remote/api/Api.js.map +6 -0
  81. package/dist/cjs/behavior/system/remote/api/ApiPath.d.ts +32 -0
  82. package/dist/cjs/behavior/system/remote/api/ApiPath.d.ts.map +1 -0
  83. package/dist/cjs/behavior/system/remote/api/ApiPath.js +101 -0
  84. package/dist/cjs/behavior/system/remote/api/ApiPath.js.map +6 -0
  85. package/dist/cjs/behavior/system/remote/api/ApiResource.d.ts +102 -0
  86. package/dist/cjs/behavior/system/remote/api/ApiResource.d.ts.map +1 -0
  87. package/dist/cjs/behavior/system/remote/api/ApiResource.js +123 -0
  88. package/dist/cjs/behavior/system/remote/api/ApiResource.js.map +6 -0
  89. package/dist/cjs/behavior/system/remote/api/Envelope.d.ts +53 -0
  90. package/dist/cjs/behavior/system/remote/api/Envelope.d.ts.map +1 -0
  91. package/dist/cjs/behavior/system/remote/api/Envelope.js +107 -0
  92. package/dist/cjs/behavior/system/remote/api/Envelope.js.map +6 -0
  93. package/dist/cjs/behavior/system/remote/api/LocalResponse.d.ts +28 -0
  94. package/dist/cjs/behavior/system/remote/api/LocalResponse.d.ts.map +1 -0
  95. package/dist/cjs/behavior/system/remote/api/LocalResponse.js +22 -0
  96. package/dist/cjs/behavior/system/remote/api/LocalResponse.js.map +6 -0
  97. package/dist/cjs/behavior/system/remote/api/RemoteRequest.d.ts +43 -0
  98. package/dist/cjs/behavior/system/remote/api/RemoteRequest.d.ts.map +1 -0
  99. package/dist/cjs/behavior/system/remote/api/RemoteRequest.js +55 -0
  100. package/dist/cjs/behavior/system/remote/api/RemoteRequest.js.map +6 -0
  101. package/dist/cjs/behavior/system/remote/api/RemoteResponse.d.ts +38 -0
  102. package/dist/cjs/behavior/system/remote/api/RemoteResponse.d.ts.map +1 -0
  103. package/dist/cjs/behavior/system/remote/api/RemoteResponse.js +65 -0
  104. package/dist/cjs/behavior/system/remote/api/RemoteResponse.js.map +6 -0
  105. package/dist/cjs/behavior/system/remote/api/index.d.ts +13 -0
  106. package/dist/cjs/behavior/system/remote/api/index.d.ts.map +1 -0
  107. package/dist/cjs/behavior/system/remote/api/index.js +30 -0
  108. package/dist/cjs/behavior/system/remote/api/index.js.map +6 -0
  109. package/dist/cjs/behavior/system/remote/api/resources/BehaviorResource.d.ts +22 -0
  110. package/dist/cjs/behavior/system/remote/api/resources/BehaviorResource.d.ts.map +1 -0
  111. package/dist/cjs/behavior/system/remote/api/resources/BehaviorResource.js +69 -0
  112. package/dist/cjs/behavior/system/remote/api/resources/BehaviorResource.js.map +6 -0
  113. package/dist/cjs/behavior/system/remote/api/resources/ChangesResource.d.ts +25 -0
  114. package/dist/cjs/behavior/system/remote/api/resources/ChangesResource.d.ts.map +1 -0
  115. package/dist/cjs/behavior/system/remote/api/resources/ChangesResource.js +76 -0
  116. package/dist/cjs/behavior/system/remote/api/resources/ChangesResource.js.map +6 -0
  117. package/dist/cjs/behavior/system/remote/api/resources/CommandResource.d.ts +26 -0
  118. package/dist/cjs/behavior/system/remote/api/resources/CommandResource.d.ts.map +1 -0
  119. package/dist/cjs/behavior/system/remote/api/resources/CommandResource.js +83 -0
  120. package/dist/cjs/behavior/system/remote/api/resources/CommandResource.js.map +6 -0
  121. package/dist/cjs/behavior/system/remote/api/resources/EndpointContainerResource.d.ts +22 -0
  122. package/dist/cjs/behavior/system/remote/api/resources/EndpointContainerResource.d.ts.map +1 -0
  123. package/dist/cjs/behavior/system/remote/api/resources/EndpointContainerResource.js +52 -0
  124. package/dist/cjs/behavior/system/remote/api/resources/EndpointContainerResource.js.map +6 -0
  125. package/dist/cjs/behavior/system/remote/api/resources/EndpointResource.d.ts +34 -0
  126. package/dist/cjs/behavior/system/remote/api/resources/EndpointResource.d.ts.map +1 -0
  127. package/dist/cjs/behavior/system/remote/api/resources/EndpointResource.js +78 -0
  128. package/dist/cjs/behavior/system/remote/api/resources/EndpointResource.js.map +6 -0
  129. package/dist/cjs/behavior/system/remote/api/resources/NodeResource.d.ts +20 -0
  130. package/dist/cjs/behavior/system/remote/api/resources/NodeResource.d.ts.map +1 -0
  131. package/dist/cjs/behavior/system/remote/api/resources/NodeResource.js +74 -0
  132. package/dist/cjs/behavior/system/remote/api/resources/NodeResource.js.map +6 -0
  133. package/dist/cjs/behavior/system/remote/api/resources/PropertyResource.d.ts +28 -0
  134. package/dist/cjs/behavior/system/remote/api/resources/PropertyResource.d.ts.map +1 -0
  135. package/dist/cjs/behavior/system/remote/api/resources/PropertyResource.js +123 -0
  136. package/dist/cjs/behavior/system/remote/api/resources/PropertyResource.js.map +6 -0
  137. package/dist/cjs/behavior/system/remote/api/resources/ServerNodeResource.d.ts +22 -0
  138. package/dist/cjs/behavior/system/remote/api/resources/ServerNodeResource.d.ts.map +1 -0
  139. package/dist/cjs/behavior/system/remote/api/resources/ServerNodeResource.js +74 -0
  140. package/dist/cjs/behavior/system/remote/api/resources/ServerNodeResource.js.map +6 -0
  141. package/dist/cjs/behavior/system/remote/api/resources/index.d.ts +13 -0
  142. package/dist/cjs/behavior/system/remote/api/resources/index.d.ts.map +1 -0
  143. package/dist/cjs/behavior/system/remote/api/resources/index.js +30 -0
  144. package/dist/cjs/behavior/system/remote/api/resources/index.js.map +6 -0
  145. package/dist/cjs/behavior/system/remote/index.d.ts +9 -0
  146. package/dist/cjs/behavior/system/remote/index.d.ts.map +1 -0
  147. package/dist/cjs/behavior/system/remote/index.js +26 -0
  148. package/dist/cjs/behavior/system/remote/index.js.map +6 -0
  149. package/dist/cjs/behavior/system/subscriptions/SubscriptionsServer.d.ts.map +1 -1
  150. package/dist/cjs/behavior/system/subscriptions/SubscriptionsServer.js +1 -2
  151. package/dist/cjs/behavior/system/subscriptions/SubscriptionsServer.js.map +1 -1
  152. package/dist/cjs/behavior/system/websocket/WebSocketInterface.d.ts +16 -0
  153. package/dist/cjs/behavior/system/websocket/WebSocketInterface.d.ts.map +1 -0
  154. package/dist/cjs/behavior/system/websocket/WebSocketInterface.js +171 -0
  155. package/dist/cjs/behavior/system/websocket/WebSocketInterface.js.map +6 -0
  156. package/dist/cjs/behavior/system/websocket/WebSocketServer.d.ts +30 -0
  157. package/dist/cjs/behavior/system/websocket/WebSocketServer.d.ts.map +1 -0
  158. package/dist/cjs/behavior/system/websocket/WebSocketServer.js +51 -0
  159. package/dist/cjs/behavior/system/websocket/WebSocketServer.js.map +6 -0
  160. package/dist/cjs/behavior/system/websocket/index.d.ts +8 -0
  161. package/dist/cjs/behavior/system/websocket/index.d.ts.map +1 -0
  162. package/dist/cjs/behavior/system/websocket/index.js +25 -0
  163. package/dist/cjs/behavior/system/websocket/index.js.map +6 -0
  164. package/dist/cjs/endpoint/Agent.js +1 -1
  165. package/dist/cjs/endpoint/Agent.js.map +1 -1
  166. package/dist/cjs/endpoint/Endpoint.d.ts.map +1 -1
  167. package/dist/cjs/endpoint/Endpoint.js +6 -4
  168. package/dist/cjs/endpoint/Endpoint.js.map +1 -1
  169. package/dist/cjs/endpoint/properties/Behaviors.d.ts +4 -0
  170. package/dist/cjs/endpoint/properties/Behaviors.d.ts.map +1 -1
  171. package/dist/cjs/endpoint/properties/Behaviors.js +11 -2
  172. package/dist/cjs/endpoint/properties/Behaviors.js.map +1 -1
  173. package/dist/cjs/endpoint/properties/ClientNodeEndpoints.d.ts +20 -0
  174. package/dist/cjs/endpoint/properties/ClientNodeEndpoints.d.ts.map +1 -0
  175. package/dist/cjs/endpoint/properties/ClientNodeEndpoints.js +56 -0
  176. package/dist/cjs/endpoint/properties/ClientNodeEndpoints.js.map +6 -0
  177. package/dist/cjs/endpoint/properties/EndpointInitializer.d.ts +4 -0
  178. package/dist/cjs/endpoint/properties/EndpointInitializer.d.ts.map +1 -1
  179. package/dist/cjs/endpoint/properties/EndpointInitializer.js +6 -0
  180. package/dist/cjs/endpoint/properties/EndpointInitializer.js.map +1 -1
  181. package/dist/cjs/endpoint/properties/Endpoints.d.ts +1 -0
  182. package/dist/cjs/endpoint/properties/Endpoints.d.ts.map +1 -1
  183. package/dist/cjs/endpoint/properties/Endpoints.js +3 -0
  184. package/dist/cjs/endpoint/properties/Endpoints.js.map +1 -1
  185. package/dist/cjs/endpoint/type/EndpointType.d.ts +2 -0
  186. package/dist/cjs/endpoint/type/EndpointType.d.ts.map +1 -1
  187. package/dist/cjs/endpoint/type/EndpointType.js +5 -0
  188. package/dist/cjs/endpoint/type/EndpointType.js.map +2 -2
  189. package/dist/cjs/node/ClientNode.d.ts +4 -2
  190. package/dist/cjs/node/ClientNode.d.ts.map +1 -1
  191. package/dist/cjs/node/ClientNode.js +6 -2
  192. package/dist/cjs/node/ClientNode.js.map +1 -1
  193. package/dist/cjs/node/Node.js +1 -1
  194. package/dist/cjs/node/NodeLifecycle.d.ts +1 -1
  195. package/dist/cjs/node/NodeLifecycle.d.ts.map +1 -1
  196. package/dist/cjs/node/NodeLifecycle.js +1 -1
  197. package/dist/cjs/node/NodeLifecycle.js.map +1 -1
  198. package/dist/cjs/node/client/ClientEndpointInitializer.d.ts +2 -0
  199. package/dist/cjs/node/client/ClientEndpointInitializer.d.ts.map +1 -1
  200. package/dist/cjs/node/client/ClientEndpointInitializer.js +33 -0
  201. package/dist/cjs/node/client/ClientEndpointInitializer.js.map +1 -1
  202. package/dist/cjs/node/client/ClientEventEmitter.d.ts +3 -3
  203. package/dist/cjs/node/client/ClientEventEmitter.d.ts.map +1 -1
  204. package/dist/cjs/node/client/ClientNodeInteraction.d.ts +1 -0
  205. package/dist/cjs/node/client/ClientNodeInteraction.d.ts.map +1 -1
  206. package/dist/cjs/node/client/ClientNodeInteraction.js +6 -0
  207. package/dist/cjs/node/client/ClientNodeInteraction.js.map +1 -1
  208. package/dist/cjs/node/client/ClientStructure.d.ts +2 -0
  209. package/dist/cjs/node/client/ClientStructure.d.ts.map +1 -1
  210. package/dist/cjs/node/client/ClientStructure.js +18 -5
  211. package/dist/cjs/node/client/ClientStructure.js.map +1 -1
  212. package/dist/cjs/node/client/Peers.d.ts +6 -0
  213. package/dist/cjs/node/client/Peers.d.ts.map +1 -1
  214. package/dist/cjs/node/client/Peers.js +55 -3
  215. package/dist/cjs/node/client/Peers.js.map +2 -2
  216. package/dist/cjs/node/index.d.ts +1 -0
  217. package/dist/cjs/node/index.d.ts.map +1 -1
  218. package/dist/cjs/node/index.js +1 -0
  219. package/dist/cjs/node/index.js.map +1 -1
  220. package/dist/cjs/node/integration/ChangeNotificationService.d.ts +56 -0
  221. package/dist/cjs/node/integration/ChangeNotificationService.d.ts.map +1 -0
  222. package/dist/cjs/node/integration/ChangeNotificationService.js +93 -0
  223. package/dist/cjs/node/integration/ChangeNotificationService.js.map +6 -0
  224. package/dist/cjs/node/{server → integration}/ProtocolService.d.ts +15 -0
  225. package/dist/cjs/node/integration/ProtocolService.d.ts.map +1 -0
  226. package/dist/cjs/node/{server → integration}/ProtocolService.js +26 -51
  227. package/dist/cjs/node/integration/ProtocolService.js.map +6 -0
  228. package/dist/cjs/node/integration/StateStream.d.ts +87 -0
  229. package/dist/cjs/node/integration/StateStream.d.ts.map +1 -0
  230. package/dist/cjs/node/integration/StateStream.js +276 -0
  231. package/dist/cjs/node/integration/StateStream.js.map +6 -0
  232. package/dist/cjs/node/integration/index.d.ts +9 -0
  233. package/dist/cjs/node/integration/index.d.ts.map +1 -0
  234. package/dist/cjs/node/integration/index.js +26 -0
  235. package/dist/cjs/node/integration/index.js.map +6 -0
  236. package/dist/cjs/node/server/OnlineServerInteraction.d.ts +1 -0
  237. package/dist/cjs/node/server/OnlineServerInteraction.d.ts.map +1 -1
  238. package/dist/cjs/node/server/OnlineServerInteraction.js +4 -1
  239. package/dist/cjs/node/server/OnlineServerInteraction.js.map +1 -1
  240. package/dist/cjs/node/server/ServerEnvironment.d.ts.map +1 -1
  241. package/dist/cjs/node/server/ServerEnvironment.js +6 -0
  242. package/dist/cjs/node/server/ServerEnvironment.js.map +1 -1
  243. package/dist/cjs/node/server/ServerSubscription.d.ts.map +1 -1
  244. package/dist/cjs/node/server/ServerSubscription.js +2 -2
  245. package/dist/cjs/node/server/index.d.ts +0 -1
  246. package/dist/cjs/node/server/index.d.ts.map +1 -1
  247. package/dist/cjs/node/server/index.js +0 -1
  248. package/dist/cjs/node/server/index.js.map +1 -1
  249. package/dist/cjs/storage/client/ClientNodeStores.d.ts.map +1 -1
  250. package/dist/cjs/storage/client/ClientNodeStores.js.map +1 -1
  251. package/dist/esm/behavior/Behavior.d.ts +4 -0
  252. package/dist/esm/behavior/Behavior.d.ts.map +1 -1
  253. package/dist/esm/behavior/Behavior.js +7 -1
  254. package/dist/esm/behavior/Behavior.js.map +1 -1
  255. package/dist/esm/behavior/Events.js +2 -2
  256. package/dist/esm/behavior/internal/BehaviorBacking.d.ts.map +1 -1
  257. package/dist/esm/behavior/internal/BehaviorBacking.js +70 -4
  258. package/dist/esm/behavior/internal/BehaviorBacking.js.map +1 -1
  259. package/dist/esm/behavior/state/managed/Datasource.d.ts +4 -9
  260. package/dist/esm/behavior/state/managed/Datasource.d.ts.map +1 -1
  261. package/dist/esm/behavior/state/managed/Datasource.js +9 -13
  262. package/dist/esm/behavior/state/managed/Datasource.js.map +1 -1
  263. package/dist/esm/behavior/state/managed/NameResolver.d.ts.map +1 -1
  264. package/dist/esm/behavior/state/managed/NameResolver.js.map +1 -1
  265. package/dist/esm/behavior/state/managed/values/ValueCaster.d.ts +3 -2
  266. package/dist/esm/behavior/state/managed/values/ValueCaster.d.ts.map +1 -1
  267. package/dist/esm/behavior/state/managed/values/ValueCaster.js +16 -3
  268. package/dist/esm/behavior/state/managed/values/ValueCaster.js.map +1 -1
  269. package/dist/esm/behavior/system/commissioning/CommissioningClient.d.ts +12 -5
  270. package/dist/esm/behavior/system/commissioning/CommissioningClient.d.ts.map +1 -1
  271. package/dist/esm/behavior/system/commissioning/CommissioningClient.js +19 -1
  272. package/dist/esm/behavior/system/commissioning/CommissioningClient.js.map +1 -1
  273. package/dist/esm/behavior/system/commissioning/CommissioningServer.d.ts.map +1 -1
  274. package/dist/esm/behavior/system/commissioning/CommissioningServer.js +2 -1
  275. package/dist/esm/behavior/system/commissioning/CommissioningServer.js.map +1 -1
  276. package/dist/esm/behavior/system/controller/ControllerBehavior.d.ts.map +1 -1
  277. package/dist/esm/behavior/system/controller/ControllerBehavior.js +0 -5
  278. package/dist/esm/behavior/system/controller/ControllerBehavior.js.map +1 -1
  279. package/dist/esm/behavior/system/http/HttpInterface.d.ts +36 -0
  280. package/dist/esm/behavior/system/http/HttpInterface.d.ts.map +1 -0
  281. package/dist/esm/behavior/system/http/HttpInterface.js +273 -0
  282. package/dist/esm/behavior/system/http/HttpInterface.js.map +6 -0
  283. package/dist/esm/behavior/system/http/HttpServer.d.ts +30 -0
  284. package/dist/esm/behavior/system/http/HttpServer.d.ts.map +1 -0
  285. package/dist/esm/behavior/system/http/HttpServer.js +31 -0
  286. package/dist/esm/behavior/system/http/HttpServer.js.map +6 -0
  287. package/dist/esm/behavior/system/http/index.d.ts +8 -0
  288. package/dist/esm/behavior/system/http/index.d.ts.map +1 -0
  289. package/dist/esm/behavior/system/http/index.js +8 -0
  290. package/dist/esm/behavior/system/http/index.js.map +6 -0
  291. package/dist/esm/behavior/system/index/IndexBehavior.d.ts +4 -4
  292. package/dist/esm/behavior/system/index/IndexBehavior.d.ts.map +1 -1
  293. package/dist/esm/behavior/system/index/IndexBehavior.js +9 -4
  294. package/dist/esm/behavior/system/index/IndexBehavior.js.map +1 -1
  295. package/dist/esm/behavior/system/index.d.ts +4 -0
  296. package/dist/esm/behavior/system/index.d.ts.map +1 -1
  297. package/dist/esm/behavior/system/index.js +4 -0
  298. package/dist/esm/behavior/system/index.js.map +1 -1
  299. package/dist/esm/behavior/system/mqtt/MqttInterface.d.ts +22 -0
  300. package/dist/esm/behavior/system/mqtt/MqttInterface.d.ts.map +1 -0
  301. package/dist/esm/behavior/system/mqtt/MqttInterface.js +341 -0
  302. package/dist/esm/behavior/system/mqtt/MqttInterface.js.map +6 -0
  303. package/dist/esm/behavior/system/mqtt/MqttServer.d.ts +36 -0
  304. package/dist/esm/behavior/system/mqtt/MqttServer.d.ts.map +1 -0
  305. package/dist/esm/behavior/system/mqtt/MqttServer.js +35 -0
  306. package/dist/esm/behavior/system/mqtt/MqttServer.js.map +6 -0
  307. package/dist/esm/behavior/system/mqtt/index.d.ts +8 -0
  308. package/dist/esm/behavior/system/mqtt/index.d.ts.map +1 -0
  309. package/dist/esm/behavior/system/mqtt/index.js +8 -0
  310. package/dist/esm/behavior/system/mqtt/index.js.map +6 -0
  311. package/dist/esm/behavior/system/network/NetworkClient.d.ts +32 -3
  312. package/dist/esm/behavior/system/network/NetworkClient.d.ts.map +1 -1
  313. package/dist/esm/behavior/system/network/NetworkClient.js +101 -19
  314. package/dist/esm/behavior/system/network/NetworkClient.js.map +1 -1
  315. package/dist/esm/behavior/system/product-description/ProductDescriptionServer.d.ts +2 -1
  316. package/dist/esm/behavior/system/product-description/ProductDescriptionServer.d.ts.map +1 -1
  317. package/dist/esm/behavior/system/product-description/ProductDescriptionServer.js +8 -6
  318. package/dist/esm/behavior/system/product-description/ProductDescriptionServer.js.map +1 -1
  319. package/dist/esm/behavior/system/remote/RemoteInterface.d.ts +41 -0
  320. package/dist/esm/behavior/system/remote/RemoteInterface.d.ts.map +1 -0
  321. package/dist/esm/behavior/system/remote/RemoteInterface.js +85 -0
  322. package/dist/esm/behavior/system/remote/RemoteInterface.js.map +6 -0
  323. package/dist/esm/behavior/system/remote/RemoteServer.d.ts +61 -0
  324. package/dist/esm/behavior/system/remote/RemoteServer.d.ts.map +1 -0
  325. package/dist/esm/behavior/system/remote/RemoteServer.js +98 -0
  326. package/dist/esm/behavior/system/remote/RemoteServer.js.map +6 -0
  327. package/dist/esm/behavior/system/remote/api/Api.d.ts +36 -0
  328. package/dist/esm/behavior/system/remote/api/Api.d.ts.map +1 -0
  329. package/dist/esm/behavior/system/remote/api/Api.js +137 -0
  330. package/dist/esm/behavior/system/remote/api/Api.js.map +6 -0
  331. package/dist/esm/behavior/system/remote/api/ApiPath.d.ts +32 -0
  332. package/dist/esm/behavior/system/remote/api/ApiPath.d.ts.map +1 -0
  333. package/dist/esm/behavior/system/remote/api/ApiPath.js +81 -0
  334. package/dist/esm/behavior/system/remote/api/ApiPath.js.map +6 -0
  335. package/dist/esm/behavior/system/remote/api/ApiResource.d.ts +102 -0
  336. package/dist/esm/behavior/system/remote/api/ApiResource.d.ts.map +1 -0
  337. package/dist/esm/behavior/system/remote/api/ApiResource.js +103 -0
  338. package/dist/esm/behavior/system/remote/api/ApiResource.js.map +6 -0
  339. package/dist/esm/behavior/system/remote/api/Envelope.d.ts +53 -0
  340. package/dist/esm/behavior/system/remote/api/Envelope.d.ts.map +1 -0
  341. package/dist/esm/behavior/system/remote/api/Envelope.js +87 -0
  342. package/dist/esm/behavior/system/remote/api/Envelope.js.map +6 -0
  343. package/dist/esm/behavior/system/remote/api/LocalResponse.d.ts +28 -0
  344. package/dist/esm/behavior/system/remote/api/LocalResponse.d.ts.map +1 -0
  345. package/dist/esm/behavior/system/remote/api/LocalResponse.js +6 -0
  346. package/dist/esm/behavior/system/remote/api/LocalResponse.js.map +6 -0
  347. package/dist/esm/behavior/system/remote/api/RemoteRequest.d.ts +43 -0
  348. package/dist/esm/behavior/system/remote/api/RemoteRequest.d.ts.map +1 -0
  349. package/dist/esm/behavior/system/remote/api/RemoteRequest.js +35 -0
  350. package/dist/esm/behavior/system/remote/api/RemoteRequest.js.map +6 -0
  351. package/dist/esm/behavior/system/remote/api/RemoteResponse.d.ts +38 -0
  352. package/dist/esm/behavior/system/remote/api/RemoteResponse.d.ts.map +1 -0
  353. package/dist/esm/behavior/system/remote/api/RemoteResponse.js +45 -0
  354. package/dist/esm/behavior/system/remote/api/RemoteResponse.js.map +6 -0
  355. package/dist/esm/behavior/system/remote/api/index.d.ts +13 -0
  356. package/dist/esm/behavior/system/remote/api/index.d.ts.map +1 -0
  357. package/dist/esm/behavior/system/remote/api/index.js +13 -0
  358. package/dist/esm/behavior/system/remote/api/index.js.map +6 -0
  359. package/dist/esm/behavior/system/remote/api/resources/BehaviorResource.d.ts +22 -0
  360. package/dist/esm/behavior/system/remote/api/resources/BehaviorResource.d.ts.map +1 -0
  361. package/dist/esm/behavior/system/remote/api/resources/BehaviorResource.js +49 -0
  362. package/dist/esm/behavior/system/remote/api/resources/BehaviorResource.js.map +6 -0
  363. package/dist/esm/behavior/system/remote/api/resources/ChangesResource.d.ts +25 -0
  364. package/dist/esm/behavior/system/remote/api/resources/ChangesResource.d.ts.map +1 -0
  365. package/dist/esm/behavior/system/remote/api/resources/ChangesResource.js +56 -0
  366. package/dist/esm/behavior/system/remote/api/resources/ChangesResource.js.map +6 -0
  367. package/dist/esm/behavior/system/remote/api/resources/CommandResource.d.ts +26 -0
  368. package/dist/esm/behavior/system/remote/api/resources/CommandResource.d.ts.map +1 -0
  369. package/dist/esm/behavior/system/remote/api/resources/CommandResource.js +63 -0
  370. package/dist/esm/behavior/system/remote/api/resources/CommandResource.js.map +6 -0
  371. package/dist/esm/behavior/system/remote/api/resources/EndpointContainerResource.d.ts +22 -0
  372. package/dist/esm/behavior/system/remote/api/resources/EndpointContainerResource.d.ts.map +1 -0
  373. package/dist/esm/behavior/system/remote/api/resources/EndpointContainerResource.js +32 -0
  374. package/dist/esm/behavior/system/remote/api/resources/EndpointContainerResource.js.map +6 -0
  375. package/dist/esm/behavior/system/remote/api/resources/EndpointResource.d.ts +34 -0
  376. package/dist/esm/behavior/system/remote/api/resources/EndpointResource.d.ts.map +1 -0
  377. package/dist/esm/behavior/system/remote/api/resources/EndpointResource.js +58 -0
  378. package/dist/esm/behavior/system/remote/api/resources/EndpointResource.js.map +6 -0
  379. package/dist/esm/behavior/system/remote/api/resources/NodeResource.d.ts +20 -0
  380. package/dist/esm/behavior/system/remote/api/resources/NodeResource.d.ts.map +1 -0
  381. package/dist/esm/behavior/system/remote/api/resources/NodeResource.js +54 -0
  382. package/dist/esm/behavior/system/remote/api/resources/NodeResource.js.map +6 -0
  383. package/dist/esm/behavior/system/remote/api/resources/PropertyResource.d.ts +28 -0
  384. package/dist/esm/behavior/system/remote/api/resources/PropertyResource.d.ts.map +1 -0
  385. package/dist/esm/behavior/system/remote/api/resources/PropertyResource.js +103 -0
  386. package/dist/esm/behavior/system/remote/api/resources/PropertyResource.js.map +6 -0
  387. package/dist/esm/behavior/system/remote/api/resources/ServerNodeResource.d.ts +22 -0
  388. package/dist/esm/behavior/system/remote/api/resources/ServerNodeResource.d.ts.map +1 -0
  389. package/dist/esm/behavior/system/remote/api/resources/ServerNodeResource.js +54 -0
  390. package/dist/esm/behavior/system/remote/api/resources/ServerNodeResource.js.map +6 -0
  391. package/dist/esm/behavior/system/remote/api/resources/index.d.ts +13 -0
  392. package/dist/esm/behavior/system/remote/api/resources/index.d.ts.map +1 -0
  393. package/dist/esm/behavior/system/remote/api/resources/index.js +13 -0
  394. package/dist/esm/behavior/system/remote/api/resources/index.js.map +6 -0
  395. package/dist/esm/behavior/system/remote/index.d.ts +9 -0
  396. package/dist/esm/behavior/system/remote/index.d.ts.map +1 -0
  397. package/dist/esm/behavior/system/remote/index.js +9 -0
  398. package/dist/esm/behavior/system/remote/index.js.map +6 -0
  399. package/dist/esm/behavior/system/subscriptions/SubscriptionsServer.d.ts.map +1 -1
  400. package/dist/esm/behavior/system/subscriptions/SubscriptionsServer.js +1 -2
  401. package/dist/esm/behavior/system/subscriptions/SubscriptionsServer.js.map +1 -1
  402. package/dist/esm/behavior/system/websocket/WebSocketInterface.d.ts +16 -0
  403. package/dist/esm/behavior/system/websocket/WebSocketInterface.d.ts.map +1 -0
  404. package/dist/esm/behavior/system/websocket/WebSocketInterface.js +151 -0
  405. package/dist/esm/behavior/system/websocket/WebSocketInterface.js.map +6 -0
  406. package/dist/esm/behavior/system/websocket/WebSocketServer.d.ts +30 -0
  407. package/dist/esm/behavior/system/websocket/WebSocketServer.d.ts.map +1 -0
  408. package/dist/esm/behavior/system/websocket/WebSocketServer.js +31 -0
  409. package/dist/esm/behavior/system/websocket/WebSocketServer.js.map +6 -0
  410. package/dist/esm/behavior/system/websocket/index.d.ts +8 -0
  411. package/dist/esm/behavior/system/websocket/index.d.ts.map +1 -0
  412. package/dist/esm/behavior/system/websocket/index.js +8 -0
  413. package/dist/esm/behavior/system/websocket/index.js.map +6 -0
  414. package/dist/esm/endpoint/Agent.js +1 -1
  415. package/dist/esm/endpoint/Agent.js.map +1 -1
  416. package/dist/esm/endpoint/Endpoint.d.ts.map +1 -1
  417. package/dist/esm/endpoint/Endpoint.js +7 -4
  418. package/dist/esm/endpoint/Endpoint.js.map +1 -1
  419. package/dist/esm/endpoint/properties/Behaviors.d.ts +4 -0
  420. package/dist/esm/endpoint/properties/Behaviors.d.ts.map +1 -1
  421. package/dist/esm/endpoint/properties/Behaviors.js +11 -2
  422. package/dist/esm/endpoint/properties/Behaviors.js.map +1 -1
  423. package/dist/esm/endpoint/properties/ClientNodeEndpoints.d.ts +20 -0
  424. package/dist/esm/endpoint/properties/ClientNodeEndpoints.d.ts.map +1 -0
  425. package/dist/esm/endpoint/properties/ClientNodeEndpoints.js +36 -0
  426. package/dist/esm/endpoint/properties/ClientNodeEndpoints.js.map +6 -0
  427. package/dist/esm/endpoint/properties/EndpointInitializer.d.ts +4 -0
  428. package/dist/esm/endpoint/properties/EndpointInitializer.d.ts.map +1 -1
  429. package/dist/esm/endpoint/properties/EndpointInitializer.js +6 -0
  430. package/dist/esm/endpoint/properties/EndpointInitializer.js.map +1 -1
  431. package/dist/esm/endpoint/properties/Endpoints.d.ts +1 -0
  432. package/dist/esm/endpoint/properties/Endpoints.d.ts.map +1 -1
  433. package/dist/esm/endpoint/properties/Endpoints.js +3 -0
  434. package/dist/esm/endpoint/properties/Endpoints.js.map +1 -1
  435. package/dist/esm/endpoint/type/EndpointType.d.ts +2 -0
  436. package/dist/esm/endpoint/type/EndpointType.d.ts.map +1 -1
  437. package/dist/esm/endpoint/type/EndpointType.js +5 -0
  438. package/dist/esm/endpoint/type/EndpointType.js.map +2 -2
  439. package/dist/esm/node/ClientNode.d.ts +4 -2
  440. package/dist/esm/node/ClientNode.d.ts.map +1 -1
  441. package/dist/esm/node/ClientNode.js +6 -2
  442. package/dist/esm/node/ClientNode.js.map +1 -1
  443. package/dist/esm/node/Node.js +1 -1
  444. package/dist/esm/node/NodeLifecycle.d.ts +1 -1
  445. package/dist/esm/node/NodeLifecycle.d.ts.map +1 -1
  446. package/dist/esm/node/NodeLifecycle.js +1 -1
  447. package/dist/esm/node/NodeLifecycle.js.map +1 -1
  448. package/dist/esm/node/client/ClientEndpointInitializer.d.ts +2 -0
  449. package/dist/esm/node/client/ClientEndpointInitializer.d.ts.map +1 -1
  450. package/dist/esm/node/client/ClientEndpointInitializer.js +33 -0
  451. package/dist/esm/node/client/ClientEndpointInitializer.js.map +1 -1
  452. package/dist/esm/node/client/ClientEventEmitter.d.ts +3 -3
  453. package/dist/esm/node/client/ClientEventEmitter.d.ts.map +1 -1
  454. package/dist/esm/node/client/ClientNodeInteraction.d.ts +1 -0
  455. package/dist/esm/node/client/ClientNodeInteraction.d.ts.map +1 -1
  456. package/dist/esm/node/client/ClientNodeInteraction.js +6 -0
  457. package/dist/esm/node/client/ClientNodeInteraction.js.map +1 -1
  458. package/dist/esm/node/client/ClientStructure.d.ts +2 -0
  459. package/dist/esm/node/client/ClientStructure.d.ts.map +1 -1
  460. package/dist/esm/node/client/ClientStructure.js +18 -5
  461. package/dist/esm/node/client/ClientStructure.js.map +1 -1
  462. package/dist/esm/node/client/Peers.d.ts +6 -0
  463. package/dist/esm/node/client/Peers.d.ts.map +1 -1
  464. package/dist/esm/node/client/Peers.js +57 -5
  465. package/dist/esm/node/client/Peers.js.map +1 -1
  466. package/dist/esm/node/index.d.ts +1 -0
  467. package/dist/esm/node/index.d.ts.map +1 -1
  468. package/dist/esm/node/index.js +1 -0
  469. package/dist/esm/node/index.js.map +1 -1
  470. package/dist/esm/node/integration/ChangeNotificationService.d.ts +56 -0
  471. package/dist/esm/node/integration/ChangeNotificationService.d.ts.map +1 -0
  472. package/dist/esm/node/integration/ChangeNotificationService.js +73 -0
  473. package/dist/esm/node/integration/ChangeNotificationService.js.map +6 -0
  474. package/dist/esm/node/{server → integration}/ProtocolService.d.ts +15 -0
  475. package/dist/esm/node/integration/ProtocolService.d.ts.map +1 -0
  476. package/dist/esm/node/{server → integration}/ProtocolService.js +26 -52
  477. package/dist/esm/node/integration/ProtocolService.js.map +6 -0
  478. package/dist/esm/node/integration/StateStream.d.ts +87 -0
  479. package/dist/esm/node/integration/StateStream.d.ts.map +1 -0
  480. package/dist/esm/node/integration/StateStream.js +256 -0
  481. package/dist/esm/node/integration/StateStream.js.map +6 -0
  482. package/dist/esm/node/integration/index.d.ts +9 -0
  483. package/dist/esm/node/integration/index.d.ts.map +1 -0
  484. package/dist/esm/node/integration/index.js +9 -0
  485. package/dist/esm/node/integration/index.js.map +6 -0
  486. package/dist/esm/node/server/OnlineServerInteraction.d.ts +1 -0
  487. package/dist/esm/node/server/OnlineServerInteraction.d.ts.map +1 -1
  488. package/dist/esm/node/server/OnlineServerInteraction.js +4 -1
  489. package/dist/esm/node/server/OnlineServerInteraction.js.map +1 -1
  490. package/dist/esm/node/server/ServerEnvironment.d.ts.map +1 -1
  491. package/dist/esm/node/server/ServerEnvironment.js +7 -1
  492. package/dist/esm/node/server/ServerEnvironment.js.map +1 -1
  493. package/dist/esm/node/server/ServerSubscription.d.ts.map +1 -1
  494. package/dist/esm/node/server/ServerSubscription.js +2 -2
  495. package/dist/esm/node/server/index.d.ts +0 -1
  496. package/dist/esm/node/server/index.d.ts.map +1 -1
  497. package/dist/esm/node/server/index.js +0 -1
  498. package/dist/esm/node/server/index.js.map +1 -1
  499. package/dist/esm/storage/client/ClientNodeStores.d.ts.map +1 -1
  500. package/dist/esm/storage/client/ClientNodeStores.js.map +1 -1
  501. package/package.json +7 -7
  502. package/src/behavior/Behavior.ts +8 -1
  503. package/src/behavior/Events.ts +2 -2
  504. package/src/behavior/internal/BehaviorBacking.ts +82 -2
  505. package/src/behavior/state/managed/Datasource.ts +20 -26
  506. package/src/behavior/state/managed/NameResolver.ts +1 -1
  507. package/src/behavior/state/managed/values/ValueCaster.ts +21 -5
  508. package/src/behavior/system/commissioning/CommissioningClient.ts +34 -6
  509. package/src/behavior/system/commissioning/CommissioningServer.ts +2 -3
  510. package/src/behavior/system/controller/ControllerBehavior.ts +0 -7
  511. package/src/behavior/system/http/HttpInterface.ts +326 -0
  512. package/src/behavior/system/http/HttpServer.ts +32 -0
  513. package/src/behavior/system/http/index.ts +8 -0
  514. package/src/behavior/system/index/IndexBehavior.ts +14 -6
  515. package/src/behavior/system/index.ts +4 -0
  516. package/src/behavior/system/mqtt/MqttInterface.ts +414 -0
  517. package/src/behavior/system/mqtt/MqttServer.ts +38 -0
  518. package/src/behavior/system/mqtt/index.ts +8 -0
  519. package/src/behavior/system/network/NetworkClient.ts +124 -24
  520. package/src/behavior/system/product-description/ProductDescriptionServer.ts +7 -5
  521. package/src/behavior/system/remote/RemoteInterface.ts +119 -0
  522. package/src/behavior/system/remote/RemoteServer.ts +132 -0
  523. package/src/behavior/system/remote/api/Api.ts +179 -0
  524. package/src/behavior/system/remote/api/ApiPath.ts +101 -0
  525. package/src/behavior/system/remote/api/ApiResource.ts +169 -0
  526. package/src/behavior/system/remote/api/Envelope.ts +112 -0
  527. package/src/behavior/system/remote/api/LocalResponse.ts +37 -0
  528. package/src/behavior/system/remote/api/RemoteRequest.ts +88 -0
  529. package/src/behavior/system/remote/api/RemoteResponse.ts +83 -0
  530. package/src/behavior/system/remote/api/index.ts +13 -0
  531. package/src/behavior/system/remote/api/resources/BehaviorResource.ts +66 -0
  532. package/src/behavior/system/remote/api/resources/ChangesResource.ts +75 -0
  533. package/src/behavior/system/remote/api/resources/CommandResource.ts +91 -0
  534. package/src/behavior/system/remote/api/resources/EndpointContainerResource.ts +45 -0
  535. package/src/behavior/system/remote/api/resources/EndpointResource.ts +75 -0
  536. package/src/behavior/system/remote/api/resources/NodeResource.ts +71 -0
  537. package/src/behavior/system/remote/api/resources/PropertyResource.ts +124 -0
  538. package/src/behavior/system/remote/api/resources/ServerNodeResource.ts +63 -0
  539. package/src/behavior/system/remote/api/resources/index.ts +13 -0
  540. package/src/behavior/system/remote/index.ts +9 -0
  541. package/src/behavior/system/subscriptions/SubscriptionsServer.ts +1 -2
  542. package/src/behavior/system/websocket/WebSocketInterface.ts +127 -0
  543. package/src/behavior/system/websocket/WebSocketServer.ts +32 -0
  544. package/src/behavior/system/websocket/index.ts +8 -0
  545. package/src/endpoint/Agent.ts +1 -1
  546. package/src/endpoint/Endpoint.ts +10 -4
  547. package/src/endpoint/properties/Behaviors.ts +15 -2
  548. package/src/endpoint/properties/ClientNodeEndpoints.ts +38 -0
  549. package/src/endpoint/properties/EndpointInitializer.ts +7 -0
  550. package/src/endpoint/properties/Endpoints.ts +4 -0
  551. package/src/endpoint/type/EndpointType.ts +3 -0
  552. package/src/node/ClientNode.ts +7 -2
  553. package/src/node/Node.ts +1 -1
  554. package/src/node/NodeLifecycle.ts +1 -1
  555. package/src/node/client/ClientEndpointInitializer.ts +38 -0
  556. package/src/node/client/ClientEventEmitter.ts +5 -5
  557. package/src/node/client/ClientNodeInteraction.ts +7 -0
  558. package/src/node/client/ClientStructure.ts +23 -5
  559. package/src/node/client/Peers.ts +71 -5
  560. package/src/node/index.ts +1 -0
  561. package/src/node/integration/ChangeNotificationService.ts +122 -0
  562. package/src/node/{server → integration}/ProtocolService.ts +32 -74
  563. package/src/node/integration/StateStream.ts +474 -0
  564. package/src/node/integration/index.ts +9 -0
  565. package/src/node/server/OnlineServerInteraction.ts +5 -1
  566. package/src/node/server/ServerEnvironment.ts +9 -1
  567. package/src/node/server/ServerSubscription.ts +6 -6
  568. package/src/node/server/index.ts +0 -1
  569. package/src/storage/client/ClientNodeStores.ts +4 -0
  570. package/dist/cjs/node/server/ProtocolService.d.ts.map +0 -1
  571. package/dist/cjs/node/server/ProtocolService.js.map +0 -6
  572. package/dist/esm/node/server/ProtocolService.d.ts.map +0 -1
  573. package/dist/esm/node/server/ProtocolService.js.map +0 -6
@@ -57,6 +57,10 @@ export declare abstract class Behavior {
57
57
  * The endpoint's environment.
58
58
  */
59
59
  get env(): import("#general").Environment;
60
+ /**
61
+ * The Behavior's type.
62
+ */
63
+ get type(): Behavior.Type;
60
64
  /**
61
65
  * Access the behavior's state.
62
66
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Behavior.d.ts","sourceRoot":"","sources":["../../../src/behavior/Behavior.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Behavior.d.ts","sourceRoot":"","sources":["../../../src/behavior/Behavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,KAAK,EAAoB,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAEH,YAAY,EAEZ,YAAY,EAEZ,UAAU,EACV,WAAW,EACd,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAqBjE;;;;;;;GAOG;AACH,8BAAsB,QAAQ;;IAG1B;;;;;;;OAOG;IACH,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAE3B;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhC;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAS;IAEvC;;OAEG;IACH,IAAI,KAAK,UAER;IAED;;OAEG;IACH,IAAI,QAAQ,6EAEX;IAED;;OAEG;IACH,IAAI,OAAO,uCAEV;IAED;;OAEG;IACH,IAAI,GAAG,mCAEN;IAED;;OAEG;IACH,IAAI,IAAI,IACuB,QAAQ,CAAC,IAAI,CAC3C;IAED;;OAEG;IACH,SAAiB,KAAK,EAAE,EAAE,CAAC;IAE3B;;OAEG;IACH,SAAiB,MAAM,EAAE,YAAY,CAAC;gBAE1B,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe;IAWlD;;OAEG;IACH,MAAM,KAAK,UAAU,IAAI,cAAc,CAKtC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,eAAc;IAE1B;;OAEG;IACH,MAAM,CAAC,QAAQ,eAAc;IAE7B;;OAEG;IACH,MAAM,CAAC,MAAM,sBAAgB;IAE7B;;;;;;OAMG;IACH,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,YAAY;IAEvC;;;OAGG;IACH,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,YAAY;IAErC;;OAEG;IACH,QAAQ;IAIR;;;;OAIG;IACH,SAAS,CAAC,OAAO,CAAC,CAAC,SAAS,UAAU,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,EAC9C,UAAU,EAAE,CAAC,EACb,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAC9D,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO;IAK7B;;;;OAIG;IACH,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ;IAIlD;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO;IAQxF;;;;OAIG;IACH,SAAS,CAAC,aAAa,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO;IAQ7F;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI;IAIpC;;OAEG;IACH,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAEzC;IAED;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,IAAI,SAAS,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,GAYnE,IAAI;IAGzB;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE9C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,iGAEnC;CACJ;AAuCD,yBAAiB,QAAQ,CAAC;IACtB;;OAEG;IACH,UAAiB,IAAI;QACjB,KAAK,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,GAAG,QAAQ,CAAC;QAEvD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,EAAE,OAAO,QAAQ,CAAC,EAAE,CAAC;QAChC,QAAQ,CAAC,GAAG,EAAE,OAAO,QAAQ,CAAC,GAAG,CAAC;QAClC,QAAQ,CAAC,QAAQ,EAAE,OAAO,QAAQ,CAAC,QAAQ,CAAC;QAC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAEvC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;QACxB,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;QACpC,QAAQ,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAChD,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;QAC7B,QAAQ,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC;QAChC,QAAQ,CAAC,MAAM,EAAE,OAAO,YAAY,CAAC;KACxC;IAED;;;OAGG;IACH,SAAgB,aAAa,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAE3D;IAED;;OAEG;IACH,KAAY,OAAO,CAAC,CAAC,SAAS,IAAI,IAAI,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAE/D;;OAEG;IACH,KAAY,YAAY,CAAC,CAAC,SAAS,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/D;;OAEG;IACH,KAAY,YAAY,CAAC,CAAC,SAAS,IAAI,IAAI,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7E;;OAEG;IACH,KAAY,QAAQ,CAAC,CAAC,SAAS,IAAI,IAAI,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEjE;;OAEG;IACH,KAAY,uBAAuB,CAAC,CAAC,SAAS,IAAI,IAC9C,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAExF;;OAEG;IACH,KAAY,OAAO,CAAC,CAAC,SAAS,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,GACnF,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;CAC3C"}
@@ -82,6 +82,12 @@ class Behavior {
82
82
  get env() {
83
83
  return this.endpoint.env;
84
84
  }
85
+ /**
86
+ * The Behavior's type.
87
+ */
88
+ get type() {
89
+ return this.constructor;
90
+ }
85
91
  constructor(agent, backing) {
86
92
  this.#agent = agent;
87
93
  this[BACKING] = backing;
@@ -129,7 +135,7 @@ class Behavior {
129
135
  * Description used in diagnostic messages.
130
136
  */
131
137
  toString() {
132
- return `${this.endpoint}.${this.constructor.id}`;
138
+ return `${this.endpoint}.${this.type.id}`;
133
139
  }
134
140
  /**
135
141
  * Install a {@link Reactor}.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/behavior/Behavior.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["Behavior"]
6
6
  }
@@ -72,8 +72,8 @@ __export(Events_exports, {
72
72
  module.exports = __toCommonJS(Events_exports);
73
73
  var import_general = require("#general");
74
74
  var import_model = require("#model");
75
- var import_protocol = require("@matter/protocol");
76
- var import_types = require("@matter/types");
75
+ var import_protocol = require("#protocol");
76
+ var import_types = require("#types");
77
77
  var import_NodeActivity = require("./context/NodeActivity.js");
78
78
  /**
79
79
  * @license
@@ -1 +1 @@
1
- {"version":3,"file":"BehaviorBacking.d.ts","sourceRoot":"","sources":["../../../../src/behavior/internal/BehaviorBacking.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EACH,YAAY,EAEZ,YAAY,EAGZ,SAAS,EAET,YAAY,EACZ,UAAU,EACb,MAAM,UAAU,CAAC;AAGlB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAM5D;;GAEG;AACH,8BAAsB,eAAe;;IAUjC,IAAI,YAAY,kCAEf;gBAEW,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO;IAoBxG,QAAQ;IAIR,IAAI,IAAI,0CAEP;IAED;;;;OAIG;IACH,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,KAAK;IAsBrC,oBAAoB;IAYpB;;OAEG;IACH,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,UAAO;IAsBtC;;;;;OAKG;IACH,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO;IAI1E;;OAEG;IACH,IAAI,QAAQ,0DAEX;IAED;;OAEG;IACH,IAAI,IAAI,kBAEP;IAED;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI;IAWhD;;OAEG;IACH,IAAI,UAAU,gDAKb;IAED;;OAEG;IACH,IAAI,eAAe,4DAElB;IAED,SAAS,KAAK,iBAAiB,IAAI,UAAU,CAAC,OAAO,CAepD;IAED;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC;IAE3C;;OAEG;IACH,WAAW;IAQX;;OAEG;IACH,IAAI,MAAM,iBAKT;IAED;;OAEG;IACH,IAAI,MAAM,qBAET;IAED;;OAEG;IACH,IAAI,SAAS,OAEZ;IAED;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAE1D;;OAEG;IACH,OAAO,CAAC,CAAC,SAAS,UAAU,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,EACpC,UAAU,EAAE,CAAC,EACb,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAC9D,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO;IAQ7B;;OAEG;IACG,YAAY,CAAC,QAAQ,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,UAAU,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE;CA+C/E"}
1
+ {"version":3,"file":"BehaviorBacking.d.ts","sourceRoot":"","sources":["../../../../src/behavior/internal/BehaviorBacking.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAEH,YAAY,EAEZ,YAAY,EAGZ,SAAS,EAET,YAAY,EACZ,UAAU,EAEb,MAAM,UAAU,CAAC;AAIlB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAM5D;;GAEG;AACH,8BAAsB,eAAe;;IAcjC,IAAI,YAAY,kCAEf;gBAEW,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO;IAwBxG,QAAQ;IAIR,IAAI,IAAI,0CAEP;IAED;;;;OAIG;IACH,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,KAAK;IAsBrC,oBAAoB;IAYpB;;OAEG;IACH,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,UAAO;IAwBtC;;;;;OAKG;IACH,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO;IAI1E;;OAEG;IACH,IAAI,QAAQ,0DAEX;IAED;;OAEG;IACH,IAAI,IAAI,kBAEP;IAED;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI;IAWhD;;OAEG;IACH,IAAI,UAAU,gDAKb;IAED;;OAEG;IACH,IAAI,eAAe,4DAElB;IAED,SAAS,KAAK,iBAAiB,IAAI,UAAU,CAAC,OAAO,CAgBpD;IAED;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC;IAE3C;;OAEG;IACH,WAAW;IAQX;;OAEG;IACH,IAAI,MAAM,iBAKT;IAED;;OAEG;IACH,IAAI,MAAM,qBAET;IAED;;OAEG;IACH,IAAI,SAAS,OAEZ;IAED;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAE1D;;OAEG;IACH,OAAO,CAAC,CAAC,SAAS,UAAU,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,EACpC,UAAU,EAAE,CAAC,EACb,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAC9D,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO;IAQ7B;;OAEG;IACG,YAAY,CAAC,QAAQ,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,UAAU,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE;CAgH/E"}
@@ -24,7 +24,8 @@ module.exports = __toCommonJS(BehaviorBacking_exports);
24
24
  var import_Migration = require("#behavior/state/migrations/Migration.js");
25
25
  var import_errors = require("#endpoint/errors.js");
26
26
  var import_general = require("#general");
27
- var import_ProtocolService = require("#node/server/ProtocolService.js");
27
+ var import_ChangeNotificationService = require("#node/integration/ChangeNotificationService.js");
28
+ var import_ProtocolService = require("#node/integration/ProtocolService.js");
28
29
  var import_Datasource = require("../state/managed/Datasource.js");
29
30
  var import_BackingEvents = require("./BackingEvents.js");
30
31
  var import_Reactors = require("./Reactors.js");
@@ -37,20 +38,27 @@ const logger = import_general.Logger.get("BehaviorBacking");
37
38
  class BehaviorBacking {
38
39
  #endpoint;
39
40
  #type;
41
+ #protocol;
42
+ #changeTracking;
40
43
  #internal;
41
44
  #events;
42
45
  #options;
43
46
  #datasource;
44
47
  #reactors;
45
48
  #construction;
49
+ #suppressedChanges;
50
+ #quietObservers;
46
51
  get construction() {
47
52
  return this.#construction;
48
53
  }
49
54
  constructor(endpoint, type, store, options) {
50
55
  this.#endpoint = endpoint;
51
56
  this.#type = type;
57
+ this.#protocol = endpoint.env.get(import_ProtocolService.ProtocolService);
58
+ this.#changeTracking = endpoint.env.get(import_ChangeNotificationService.ChangeNotificationService);
52
59
  this.store = store;
53
60
  this.#options = options;
61
+ this.#configureEventSuppression();
54
62
  this.#construction = (0, import_general.Construction)(this);
55
63
  this.#construction.onError((error) => {
56
64
  if (endpoint.lifecycle.isReady) {
@@ -84,7 +92,7 @@ class BehaviorBacking {
84
92
  try {
85
93
  const behavior = this.#lifecycleInstance(agent);
86
94
  const promise = this.invokeInitializer(behavior, this.#options);
87
- return import_general.MaybePromise.then(promise, () => this.#endpoint.env.get(import_ProtocolService.ProtocolService).addCluster(this), crash);
95
+ return import_general.MaybePromise.then(promise, () => this.#protocol.addCluster(this), crash);
88
96
  } catch (e) {
89
97
  crash(e);
90
98
  }
@@ -107,6 +115,7 @@ class BehaviorBacking {
107
115
  invokeClose = false;
108
116
  }
109
117
  return this.construction.close(() => {
118
+ this.#quietObservers?.close();
110
119
  let result = import_general.MaybePromise.then(
111
120
  () => this.#reactors?.close(),
112
121
  () => {
@@ -182,7 +191,8 @@ class BehaviorBacking {
182
191
  events: this.events,
183
192
  defaults: this.#endpoint.behaviors.defaultsFor(this.type),
184
193
  store: this.store,
185
- owner: this.#endpoint
194
+ owner: this.#endpoint,
195
+ onChange: this.#onChange.bind(this)
186
196
  };
187
197
  }
188
198
  /**
@@ -242,6 +252,41 @@ class BehaviorBacking {
242
252
  }
243
253
  await this.#reactors.remove(selector);
244
254
  }
255
+ /**
256
+ * We handle events in bulk via {@link Datasource.Options.onChange}, but "quieter" and "changesOmitted" events
257
+ * require special handling. Those we ignore in the change handler and instead report only when emitted by the
258
+ * corresponding {@link OnlineEvent}.
259
+ */
260
+ #configureEventSuppression() {
261
+ const { schema } = this.type;
262
+ if (!schema) {
263
+ return;
264
+ }
265
+ for (const property of schema.conformant.properties) {
266
+ const { changesOmitted, quieter } = property.effectiveQuality;
267
+ if (!changesOmitted && !quieter) {
268
+ continue;
269
+ }
270
+ const name = (0, import_general.camelize)(property.name);
271
+ if (!this.#suppressedChanges) {
272
+ this.#suppressedChanges = /* @__PURE__ */ new Set();
273
+ }
274
+ this.#suppressedChanges.add(name);
275
+ if (!quieter) {
276
+ continue;
277
+ }
278
+ const event = this.events[`${name}$Changed`];
279
+ if (event === void 0) {
280
+ continue;
281
+ }
282
+ if (event.isQuieter) {
283
+ if (!this.#quietObservers) {
284
+ this.#quietObservers = new import_general.ObserverGroup();
285
+ }
286
+ this.#quietObservers.on(event.quiet, () => this.#broadcastChanges([name]));
287
+ }
288
+ }
289
+ }
245
290
  /**
246
291
  * Invoke {@link Behavior.destroy} to clean up application logic.
247
292
  */
@@ -271,5 +316,24 @@ class BehaviorBacking {
271
316
  const behavior = this.createBehavior(agent, this.#type);
272
317
  return behavior;
273
318
  }
319
+ #onChange(props) {
320
+ if (this.#suppressedChanges) {
321
+ props = props.filter((name) => !this.#suppressedChanges.has(name));
322
+ }
323
+ this.#broadcastChanges(props);
324
+ }
325
+ /**
326
+ * We provide two forms of optimized change tracking.
327
+ *
328
+ * {@link ProtocolService} offers a low-level service that supports the Matter protocol.
329
+ *
330
+ * {@link ChangeNotificationService} is a higher-level service that supports state synchronization use cases.
331
+ *
332
+ * This method informs these services of changes.
333
+ */
334
+ #broadcastChanges(props) {
335
+ this.#protocol.handleChange(this, props);
336
+ this.#changeTracking.broadcastUpdate(this, props);
337
+ }
274
338
  }
275
339
  //# sourceMappingURL=BehaviorBacking.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/behavior/internal/BehaviorBacking.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -9,7 +9,6 @@ import { AccessControl } from "#protocol";
9
9
  import { RootSupervisor } from "../../supervision/RootSupervisor.js";
10
10
  import { ValueSupervisor } from "../../supervision/ValueSupervisor.js";
11
11
  import { StateType } from "../StateType.js";
12
- declare const changed: unique symbol;
13
12
  /**
14
13
  * Datasource manages the canonical root of a state tree. The "state" property of a Behavior is a reference to a
15
14
  * Datasource.
@@ -38,10 +37,6 @@ export interface Datasource<T extends StateType = StateType> extends Transaction
38
37
  * Path used in diagnostic messages.
39
38
  */
40
39
  location: AccessControl.Location;
41
- /**
42
- * Event that gets emitted when the state changes.
43
- */
44
- changed: Observable<[changes: string[], version: number], MaybePromise>;
45
40
  /**
46
41
  * Events registered for this Datasource
47
42
  */
@@ -62,9 +57,6 @@ export declare namespace Datasource {
62
57
  } & {
63
58
  [K in `${string}$Changing` | `${string}$Changed`]: Observable<Parameters<ValueObserver>, MaybePromise>;
64
59
  };
65
- type InternalEvents = Events & {
66
- [changed]: Observable<[changes: string[], version: number], MaybePromise>;
67
- };
68
60
  /**
69
61
  * Datasource configuration options.
70
62
  */
@@ -112,6 +104,10 @@ export declare namespace Datasource {
112
104
  * For structs we also support the other key (id or name) for input, but always write using the preferred key.
113
105
  */
114
106
  primaryKey?: "name" | "id";
107
+ /**
108
+ * Optional callback, invoked when properties change.
109
+ */
110
+ onChange?: (attrs: string[]) => MaybePromise<void>;
115
111
  }
116
112
  /**
117
113
  * The interface {@link Datasource} uses to read and write non-volatile values.
@@ -156,5 +152,4 @@ export declare namespace Datasource {
156
152
  (value: Val, oldValue: Val, context?: ValueSupervisor.Session): void;
157
153
  }
158
154
  }
159
- export {};
160
155
  //# sourceMappingURL=Datasource.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Datasource.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/state/managed/Datasource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Datasource.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/state/managed/Datasource.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,6 @@ var import_protocol = require("#protocol");
30
30
  */
31
31
  const logger = import_general.Logger.get("Datasource");
32
32
  const FEATURES_KEY = "__features__";
33
- const changed = Symbol("changed");
34
33
  const viewTx = import_general.Transaction.open("offline-view", "ro");
35
34
  function Datasource(options) {
36
35
  const internals = configure(options);
@@ -53,9 +52,6 @@ function Datasource(options) {
53
52
  get location() {
54
53
  return internals.location;
55
54
  },
56
- get changed() {
57
- return internals.events[changed];
58
- },
59
55
  get events() {
60
56
  return internals.events;
61
57
  },
@@ -106,7 +102,6 @@ function configure(options) {
106
102
  }
107
103
  Object.freeze(options.location);
108
104
  const events = options.events ?? {};
109
- events[changed] = new import_general.Observable();
110
105
  let changedEventIndex;
111
106
  const persistentFields = options.supervisor.persistentKeys(options.primaryKey);
112
107
  return {
@@ -193,7 +188,12 @@ function configureExternalChanges(internals) {
193
188
  context.onChange(oldValues);
194
189
  }
195
190
  }
196
- const iterator = Object.keys(changes)[Symbol.iterator]();
191
+ const changedProps = Object.keys(changes);
192
+ const onChangePromise = internals.onChange?.(Array.from(changedProps));
193
+ const iterator = changedProps[Symbol.iterator]();
194
+ if (onChangePromise) {
195
+ return onChangePromise.then(emitChanged);
196
+ }
197
197
  return emitChanged();
198
198
  function emitChanged() {
199
199
  while (true) {
@@ -474,12 +474,9 @@ function createReference(resource, internals, session) {
474
474
  }
475
475
  }
476
476
  }
477
- const changeSetResult = internals.events[changed]?.emit(
478
- Array.from(changes.changeList.values()),
479
- internals.version
480
- );
481
- if (import_general.MaybePromise.is(changeSetResult)) {
482
- return changeSetResult.then(emitChanged);
477
+ const onChangePromise = internals.onChange?.([...changes.changeList]);
478
+ if (onChangePromise) {
479
+ return onChangePromise.then(emitChanged);
483
480
  }
484
481
  return emitChanged();
485
482
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/behavior/state/managed/Datasource.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAWO;AAEP,sBAAqE;AAnBrE;AAAA;AAAA;AAAA;AAAA;AAwBA,MAAM,SAAS,sBAAO,IAAI,YAAY;AAEtC,MAAM,eAAe;AAErB,MAAM,UAAU,OAAO,SAAS;AAEhC,MAAM,SAAS,2BAAY,KAAK,gBAAgB,IAAI;AAiD7C,SAAS,WAAkD,SAA+C;AAC7G,QAAM,YAAY,UAAU,OAAO;AAEnC,2BAAyB,SAAS;AAElC,MAAI;AAEJ,SAAO;AAAA,IACH,WAAW;AACP,aAAO,UAAU,SAAS,KAAK,SAAS;AAAA,IAC5C;AAAA,IAEA,UAAU,SAAkC;AACxC,UAAI,MAAM,UAAU,UAAU,IAAI,OAAO;AACzC,UAAI,CAAC,KAAK;AACN,cAAM,gBAAgB,MAAM,WAAW,OAAO;AAAA,MAClD;AACA,aAAO,IAAI;AAAA,IACf;AAAA,IAEA,IAAI,UAAU;AACV,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,IAAI,WAAW;AACX,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,IAAI,UAAU;AACV,aAAO,UAAU,OAAO,OAAO;AAAA,IACnC;AAAA,IAEA,IAAI,SAAS;AACT,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,SAAS,SAAkC,QAAqB;AAC5D,YAAM,WAAW,UAAU,WAAW;AACtC,UAAI,CAAC,UAAU;AACX;AAAA,MACJ;AACA,eAAS,UAAU,UAAU,QAAQ,SAAS,EAAE,MAAM,UAAU,SAAS,KAAK,CAAC;AAAA,IACnF;AAAA,IAEA,IAAI,OAAO;AACP,UAAI,CAAC,cAAc;AACf,cAAM,UAAmC;AAAA,UACrC,aAAa;AAAA,QACjB;AACA,uBAAe,gBAAgB,MAAM,WAAW,OAAO,EAAE;AAAA,MAC7D;AACA,aAAO;AAAA,IACX;AAAA,EACJ;AACJ;AAAA,CAEO,CAAUA,gBAAV;AAoHI,EAAMA,YAAA,kBAAkB;AAAA,GApHlB;AAkKjB,SAAS,UAAU,SAAwC;AACvD,QAAM,SAAS,IAAI,QAAQ,KAAK;AAEhC,MAAI,eAAe,QAAQ,OAAO;AAElC,MAAI;AACJ,MAAI,QAAQ,WAAW,WAAW,SAAS,QAAQ;AAC/C,kBAAc,CAAC,GAAG,QAAQ,WAAW,iBAAiB,EAAE,KAAK,GAAG;AAChE,UAAM,oBAAoB,eAAe,YAAY;AACrD,QAAI,sBAAsB,UAAa,sBAAsB,aAAa;AACtE,aAAO;AAAA,QACH,iCAAiC,QAAQ,SAAS,IAAI,mCAAmC,iBAAiB,SAAS,WAAW;AAAA,MAClI;AACA,qBAAe;AAAA,IACnB;AAAA,EACJ;AAEA,QAAM,gBAAgB;AAAA,IAClB,GAAG,QAAQ;AAAA,IACX,GAAG;AAAA,EACP;AAEA,MAAI,gBAAgB,eAAe;AAC/B,WAAO,cAAc,YAAY;AAAA,EACrC;AAEA,aAAW,OAAO,eAAe;AAC7B,WAAO,GAAG,IAAI,cAAc,GAAG;AAAA,EACnC;AAGA,SAAO,OAAO,QAAQ,QAAQ;AAE9B,QAAM,SAAU,QAAQ,UAAU,CAAC;AACnC,SAAO,OAAO,IAAI,IAAI,0BAAW;AAEjC,MAAI;AAEJ,QAAM,mBAAmB,QAAQ,WAAW,eAAe,QAAQ,UAAU;AAE7E,SAAO;AAAA,IACH,GAAG;AAAA,IACH,YAAY,QAAQ,eAAe,OAAO,OAAO;AAAA,IACjD;AAAA,IACA,SAAS,QAAQ,OAAO;AAAA,IACxB;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf;AAAA,IAEA,oBAAoB,SAAmC;AACnD,eAAS,oBAAoB,OAAY;AACrC,eAAO,MAAM,YAAY,QAAQ,SAAS,IAAI,cAAc,KAAK;AAAA,MACrE;AAEA,UAAI,QAAQ,QAAQ,gBAAgB,YAAY;AAC5C,YAAI;AACA,gBAAM,SAAS,QAAQ,QAAQ,gBAAgB,KAAK,OAAO;AAC3D,cAAI,4BAAa,GAAG,MAAM,GAAG;AACzB,mBAAO,4BAAa,KAAK,QAAQ,QAAW,mBAAmB;AAAA,UACnE;AAAA,QACJ,SAAS,GAAG;AACR,8BAAoB,CAAC;AAAA,QACzB;AAAA,MACJ;AAAA,IACJ;AAAA,IAEA,gBAAgB,KAAa;AACzB,UAAI,sBAAsB,QAAW;AACjC,4BAAoB,oBAAI,IAAI;AAAA,MAChC,WAAW,kBAAkB,IAAI,GAAG,GAAG;AACnC,eAAO,kBAAkB,IAAI,GAAG;AAAA,MACpC;AAEA,YAAM,KAAK,OAAO,SAAS,GAAG;AAC9B,UAAI;AACJ,UAAI,CAAC,OAAO,SAAS,EAAE,GAAG;AACtB,gBAAQ,OAAO,GAAG,GAAG,UAAU;AAAA,MACnC,OAAO;AACH,cAAM,QAAQ,QAAQ,WAAW,OAAO,OAAO,EAAE;AACjD,YAAI,UAAU,QAAW;AACrB,kBAAQ,OAAO,OAAG,yBAAS,MAAM,IAAI,CAAC,UAAU;AAAA,QACpD;AAAA,MACJ;AAEA,wBAAkB,IAAI,KAAK,KAAK;AAEhC,aAAO;AAAA,IACX;AAAA,EACJ;AACJ;AAEA,SAAS,WAAW,OAAsE;AACtF,SAAO,CAAC,CAAC,SAAS,iBAAiB;AACvC;AAQA,SAAS,yBAAyB,WAAsB;AACpD,QAAM,EAAE,MAAM,IAAI;AAClB,MAAI,CAAC,WAAW,KAAK,GAAG;AACpB;AAAA,EACJ;AAEA,YAAU,UAAU,MAAM;AAC1B,YAAU,gBAAgB;AAE1B,QAAM,yBAAyB,OAAO,qBAAiC;AACnE,UAAM,EAAE,OAAO,IAAI;AAEnB,QAAI;AACJ,QAAI;AAEJ,eAAW,QAAQ,kBAAkB;AACjC,cAAI,4BAAY,OAAO,IAAI,GAAG,iBAAiB,IAAI,CAAC,GAAG;AACnD;AAAA,MACJ;AAEA,UAAI,YAAY,QAAW;AACvB,kBAAU,EAAE,CAAC,IAAI,GAAG,iBAAiB,IAAI,EAAE;AAC3C,oBAAY,EAAE,CAAC,IAAI,GAAG,OAAO,IAAI,EAAE;AAAA,MACvC,OAAO;AACH,gBAAQ,IAAI,IAAI,iBAAiB,IAAI;AACrC,kBAAW,IAAI,IAAI,OAAO,IAAI;AAAA,MAClC;AAAA,IACJ;AAEA,cAAU,UAAU,MAAM;AAE1B,QAAI,CAAC,SAAS;AACV;AAAA,IACJ;AAEA,cAAU,SAAS;AAAA,MACf,GAAG,UAAU;AAAA,MACb,GAAG;AAAA,IACP;AAEA,QAAI,UAAU,UAAU;AACpB,iBAAW,WAAW,UAAU,SAAS,OAAO,GAAG;AAC/C,gBAAQ,SAAS,SAAU;AAAA,MAC/B;AAAA,IACJ;AAEA,UAAM,WAAW,OAAO,KAAK,OAAO,EAAE,OAAO,QAAQ,EAAE;AAEvD,WAAO,YAAY;AAEnB,aAAS,cAAkC;AACvC,aAAO,MAAM;AACT,cAAM,IAAI,SAAS,KAAK;AACxB,YAAI,EAAE,MAAM;AACR;AAAA,QACJ;AAEA,cAAM,OAAO,EAAE;AACf,cAAM,QAAQ,UAAU,gBAAgB,IAAI;AAC5C,YAAI,CAAC,OAAO,YAAY;AACpB;AAAA,QACJ;AAEA,cAAM,SAAS,MAAM,KAAK,QAAS,IAAI,GAAG,UAAW,IAAI,CAAC;AAC1D,YAAI,4BAAa,GAAG,MAAM,GAAG;AACzB,iBAAO,QAAQ,QAAQ,MAAM,EAAE,KAAK,WAAW;AAAA,QACnD;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AACJ;AAOA,SAAS,gBAAgB,UAAgC,WAAsB,SAAkC;AAC7G,MAAI,SAAS,UAAU;AACvB,MAAI;AACJ,MAAI;AACJ,MAAI,UAAU;AAEd,QAAM,cAAc;AAAA,IAChB,WAAW;AACP,aAAO,UAAU,SAAS,KAAK,SAAS;AAAA,IAC5C;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ;AAEA,QAAM,cAAc,QAAQ;AAG5B,OAAK,YAAY,SAAS,MAAM;AAC5B,QAAI,WAAW,UAAU,QAAQ;AAC7B,UAAI;AACA,iBAAS;AAAA,MACb,SAAS,GAAG;AACR,eAAO;AAAA,UACH,gCAAgC,UAAU,SAAS,IAAI,+BAA+B,YAAY,GAAG;AAAA,UACrG;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,CAAC;AAED,QAAM,SAAS,UAAU,WAAW;AAGpC,QAAM,YAAuC;AAAA,IACzC,YAAY,UAAU;AAAA,IAEtB,IAAI,WAAW;AACX,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,IAAI,QAAQ;AACR,UAAI,SAAS;AACT,cAAM,IAAI,sCAAsB,KAAK,QAAQ;AAAA,MACjD;AAEA,aAAO;AAAA,IACX;AAAA,IAEA,IAAI,MAAM,QAAQ;AACd,YAAM,IAAI,6BAAc,iCAAiC,UAAU,WAAW,OAAO,IAAI,EAAE;AAAA,IAC/F;AAAA,IAEA,IAAI,UAAU;AACV,aAAO;AAAA,IACX;AAAA,IAEA,IAAI,WAAW;AACX,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,IAAI,SAAS,MAA8B;AACvC,YAAM,IAAI,mCAAoB,sCAAsC;AAAA,IACxE;AAAA,IAEA,IAAI,YAAY;AACZ,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,OAAO,SAAS;AACZ,UAAI,SAAS;AACT,cAAM,IAAI,sCAAsB,KAAK,QAAQ;AAAA,MACjD;AAGA,iBAAW;AAGX,kBAAY,UAAU;AAGtB,UAAI,WAAW,UAAU,QAAQ;AAC7B,cAAM,MAAM;AACZ,iBAAS,IAAI,UAAU,KAAK;AAC5B,mBAAW,SAAS,QAAQ;AACxB,iBAAO,KAAK,IAAI,IAAI,KAAK;AAAA,QAC7B;AAGA,uBAAe;AAAA,MACnB;AAGA,cAAQ;AAGR,qBAAe;AAAA,IACnB;AAAA,IAEA,UAAU;AACN,YAAM,IAAI,6BAAc,qCAAqC,UAAU,WAAW,OAAO,IAAI,EAAE;AAAA,IACnG;AAAA,EACJ;AAEA,YAAU,WAAW,MAAM,OAAO,QAAQ;AAG1C,QAAM,UAA0B;AAAA,IAC5B,SAAS,UAAU,WAAW,OAAO,WAAW,OAAO;AAAA,IAEvD,SAAS,WAAuB;AAC5B,UAAI,WAAW,WAAW;AACtB,iBAAS,UAAU;AACnB,uBAAe;AAAA,MACnB;AAAA,IACJ;AAAA,EACJ;AAEA,MAAI,QAAQ,YAAY,cAAc,YAAY;AAC9C,QAAI,CAAC,UAAU,UAAU;AACrB,gBAAU,WAAW,oBAAI,IAAI;AAAA,IACjC;AACA,cAAU,SAAS,IAAI,SAAS,OAAO;AAAA,EAC3C;AAGA,OAAK,YAAY,QAAQ,MAAM;AAC3B,QAAI;AACA,gBAAU,UAAU,OAAO,OAAO;AAClC,gBAAU;AACV,qBAAe;AAAA,IACnB,SAAS,GAAG;AACR,aAAO;AAAA,QACH,gCAAgC,UAAU,SAAS,IAAI,4BAA4B,YAAY,GAAG;AAAA,QAClG;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,CAAC;AAED,SAAO;AAEP,WAAS,aAAa;AAElB,gBAAY,iBAAiB,QAAQ;AAGrC,gBAAY,gBAAgB,WAAW;AAGvC,gBAAY,UAAU;AAEtB,YACI,gCAAe,OAAO,KACtB,CAAC,QAAQ,sBACT,QAAQ,uBACR,CAAC,QAAQ,oBAAoB,aAAa,UAAU,mBAAmB,GACzE;AACE,cAAQ,qBAAqB;AAC7B,UAAI,UAAU,QAAQ,kBAAkB,YAAY;AAChD,kBAAU,QAAQ,kBAAkB,KAAK,OAAO;AAAA,MACpD;AACA,cAAQ,oBAAoB,GAAG,UAAU,mBAAmB;AAAA,IAChE;AAAA,EACJ;AAGA,WAAS,iBAAiB;AACtB,UAAM,UAAU,UAAU;AAC1B,QAAI,SAAS;AACT,iBAAW,OAAO,SAAS;AACvB,gBAAQ,GAAG,EAAE,QAAQ;AAAA,MACzB;AAAA,IACJ;AAAA,EACJ;AAGA,WAAS,mBAAmB;AACxB,QAAI,CAAC,UAAU,eAAe;AAC1B;AAAA,IACJ;AAGA,cAAU;AACV,QAAI,UAAU,UAAU,YAAa;AACjC,gBAAU,UAAU;AAAA,IACxB;AAAA,EACJ;AAIA,WAAS,uBAAuB,MAAoE;AAChG,QAAI;AACJ,QAAI,mBAAmB,QAAQ,iBAAiB;AAC5C,iBAAW,gBAAgB,IAAI;AAAA,IACnC,OAAO;AACH,iBAAW,UAAU,OAAO,IAAI;AAAA,IACpC;AAEA,UAAM,WAAW,OAAO,IAAI;AAC5B,YAAI,4BAAY,UAAU,QAAQ,GAAG;AACjC;AAAA,IACJ;AAEA,QAAI,CAAC,iBAAiB;AAClB,wBAAkB,CAAC;AAAA,IACvB;AACA,oBAAgB,IAAI,QAAI,yBAAS,QAAQ;AAIzC,WAAO,EAAE,UAAU,QAAQ,QAAQ,IAAI,GAAG,SAAS;AAAA,EACvD;AAQA,WAAS,YAAY;AAEjB,UAAM,EAAE,OAAO,IAAI;AACnB,QAAI,CAAC,QAAQ;AACT,aAAO;AAAA,IACX;AAGA,QAAI,iBAAiB;AAGrB,UAAM,cAAc,OAAO,KAAK,MAAM,EAAE,OAAO,QAAQ,EAAE;AAGzD,aAAS,UAAiC;AACtC,aAAO,MAAM;AACT,cAAM,IAAI,YAAY,KAAK;AAC3B,YAAI,EAAE,MAAM;AACR,iBAAO;AAAA,QACX;AAEA,cAAM,OAAO,EAAE;AAIf,cAAM,QAAQ,SAAS,GAAG,IAAI,WAAW;AACzC,YAAI,CAAC,OAAO,YAAY;AACpB;AAAA,QACJ;AAEA,cAAM,SAAS,uBAAuB,IAAI;AAC1C,YAAI,QAAQ;AAER,2BAAiB;AAGjB,gBAAM,SAAS,MAAM,KAAK,OAAO,UAAU,OAAO,UAAU,OAAO;AAInE,cAAI,4BAAa,GAAG,MAAM,GAAG;AACzB,mBAAO,OAAO,KAAK,OAAO;AAAA,UAC9B;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAEA,WAAO,QAAQ;AAAA,EACnB;AAIA,WAAS,2BAA2B;AAChC,cAAU;AAEV,QAAI,UAAU,WAAW,QAAQ;AAC7B,aAAO;AAAA,IACX;AAEA,eAAW,QAAQ,QAAQ;AACvB,YAAM,SAAS,OAAO,IAAI;AAC1B,YAAM,SAAS,UAAU,OAAO,IAAI;AACpC,UAAI,WAAW,UAAU,KAAC,4BAAY,QAAQ,MAAM,GAAG;AACnD,YAAI,CAAC,SAAS;AACV,oBAAU,EAAE,eAAe,CAAC,GAAG,YAAY,oBAAI,IAAI,EAAE;AAAA,QACzD;AACA,gBAAQ,WAAW,IAAI,IAAI;AAE3B,YAAI,UAAU,iBAAiB,IAAI,IAAI,GAAG;AACtC,cAAI,QAAQ,eAAe,QAAW;AAClC,oBAAQ,aAAa,CAAC;AAAA,UAC1B;AACA,kBAAQ,WAAW,IAAI,IAAI,OAAO,IAAI;AAAA,QAC1C;AAEA,cAAM,QAAQ,UAAU,gBAAgB,IAAI;AAC5C,YAAI,OAAO,YAAY;AACnB,kBAAQ,cAAc,KAAK;AAAA,YACvB;AAAA,YACA,QAAQ,CAAC,OAAO,IAAI,GAAG,UAAU,OAAO,IAAI,GAAG,OAAO;AAAA,UAC1D,CAAC;AAAA,QACL;AAAA,MACJ;AAAA,IACJ;AAGA,QAAI,SAAS;AAET,uBAAiB;AAEjB,UAAI,UAAU,OAAO,cAAc,YAAY;AAC3C,gBAAQ,cAAc,KAAK;AAAA,UACvB,OAAO,UAAU,OAAO;AAAA,UACxB,QAAQ,CAAC,OAAO;AAAA,QACpB,CAAC;AAAA,MACL;AAAA,IACJ;AAAA,EACJ;AAKA,WAAS,UAAU;AACf,6BAAyB;AAGzB,UAAM,aAAa,SAAS;AAC5B,QAAI,CAAC,YAAY;AACb;AAAA,IACJ;AAEA,QAAI,UAAU,gBAAgB,QAAW;AACrC,iBAAW,YAAY,IAAI,UAAU;AAAA,IACzC;AAEA,WAAO,UAAU,OAAO,IAAI,QAAQ,aAAa,UAAU;AAAA,EAC/D;AAKA,WAAS,UAAU;AACf,QAAI,CAAC,SAAS;AACV;AAAA,IACJ;AAEA,UAAM,YAAY,UAAU;AAC5B,cAAU,SAAS;AACnB,QAAI,UAAU,UAAU;AACpB,iBAAWC,YAAW,UAAU,SAAS,OAAO,GAAG;AAC/C,QAAAA,SAAQ,SAAS,SAAS;AAAA,MAC9B;AAAA,IACJ;AAAA,EACJ;AAKA,WAAS,aAAa;AAClB,QAAI,CAAC,SAAS;AACV;AAAA,IACJ;AAGA,UAAM,WAAW,QAAQ,cAAc,OAAO,QAAQ,EAAE;AAExD,aAAS,cAAkC;AACvC,aAAO,MAAM;AACT,cAAM,IAAI,SAAS,KAAK;AACxB,YAAI,EAAE,MAAM;AACR;AAAA,QACJ;AAEA,cAAM,EAAE,OAAO,OAAO,IAAI,EAAE;AAC5B,cAAM,SAAS,MAAM,KAAK,GAAG,MAAM;AACnC,YAAI,4BAAa,GAAG,MAAM,GAAG;AACzB,iBAAO,QAAQ,QAAQ,MAAM,EAAE,KAAK,WAAW;AAAA,QACnD;AAAA,MACJ;AAAA,IACJ;AAEA,UAAM,kBAAkB,UAAU,OAAO,OAAO,GAAG;AAAA,MAC/C,MAAM,KAAK,QAAQ,WAAW,OAAO,CAAC;AAAA,MACtC,UAAU;AAAA,IACd;AAEA,QAAI,4BAAa,GAAG,eAAe,GAAG;AAClC,aAAO,gBAAgB,KAAK,WAAW;AAAA,IAC3C;AAEA,WAAO,YAAY;AAAA,EACvB;AAKA,WAAS,WAAW;AAChB,KAAC,EAAE,OAAO,IAAI;AACd,mBAAe;AAAA,EACnB;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAWO;AAEP,sBAAqE;AAnBrE;AAAA;AAAA;AAAA;AAAA;AAwBA,MAAM,SAAS,sBAAO,IAAI,YAAY;AAEtC,MAAM,eAAe;AAErB,MAAM,SAAS,2BAAY,KAAK,gBAAgB,IAAI;AA4C7C,SAAS,WAAkD,SAA+C;AAC7G,QAAM,YAAY,UAAU,OAAO;AAEnC,2BAAyB,SAAS;AAElC,MAAI;AAEJ,SAAO;AAAA,IACH,WAAW;AACP,aAAO,UAAU,SAAS,KAAK,SAAS;AAAA,IAC5C;AAAA,IAEA,UAAU,SAAkC;AACxC,UAAI,MAAM,UAAU,UAAU,IAAI,OAAO;AACzC,UAAI,CAAC,KAAK;AACN,cAAM,gBAAgB,MAAM,WAAW,OAAO;AAAA,MAClD;AACA,aAAO,IAAI;AAAA,IACf;AAAA,IAEA,IAAI,UAAU;AACV,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,IAAI,WAAW;AACX,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,IAAI,SAAS;AACT,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,SAAS,SAAkC,QAAqB;AAC5D,YAAM,WAAW,UAAU,WAAW;AACtC,UAAI,CAAC,UAAU;AACX;AAAA,MACJ;AACA,eAAS,UAAU,UAAU,QAAQ,SAAS,EAAE,MAAM,UAAU,SAAS,KAAK,CAAC;AAAA,IACnF;AAAA,IAEA,IAAI,OAAO;AACP,UAAI,CAAC,cAAc;AACf,cAAM,UAAmC;AAAA,UACrC,aAAa;AAAA,QACjB;AACA,uBAAe,gBAAgB,MAAM,WAAW,OAAO,EAAE;AAAA,MAC7D;AACA,aAAO;AAAA,IACX;AAAA,EACJ;AACJ;AAAA,CAEO,CAAUA,gBAAV;AAqHI,EAAMA,YAAA,kBAAkB;AAAA,GArHlB;AAmKjB,SAAS,UAAU,SAAwC;AACvD,QAAM,SAAS,IAAI,QAAQ,KAAK;AAEhC,MAAI,eAAe,QAAQ,OAAO;AAElC,MAAI;AACJ,MAAI,QAAQ,WAAW,WAAW,SAAS,QAAQ;AAC/C,kBAAc,CAAC,GAAG,QAAQ,WAAW,iBAAiB,EAAE,KAAK,GAAG;AAChE,UAAM,oBAAoB,eAAe,YAAY;AACrD,QAAI,sBAAsB,UAAa,sBAAsB,aAAa;AACtE,aAAO;AAAA,QACH,iCAAiC,QAAQ,SAAS,IAAI,mCAAmC,iBAAiB,SAAS,WAAW;AAAA,MAClI;AACA,qBAAe;AAAA,IACnB;AAAA,EACJ;AAEA,QAAM,gBAAgB;AAAA,IAClB,GAAG,QAAQ;AAAA,IACX,GAAG;AAAA,EACP;AAEA,MAAI,gBAAgB,eAAe;AAC/B,WAAO,cAAc,YAAY;AAAA,EACrC;AAEA,aAAW,OAAO,eAAe;AAC7B,WAAO,GAAG,IAAI,cAAc,GAAG;AAAA,EACnC;AAGA,SAAO,OAAO,QAAQ,QAAQ;AAE9B,QAAM,SAAS,QAAQ,UAAU,CAAC;AAElC,MAAI;AAEJ,QAAM,mBAAmB,QAAQ,WAAW,eAAe,QAAQ,UAAU;AAE7E,SAAO;AAAA,IACH,GAAG;AAAA,IACH,YAAY,QAAQ,eAAe,OAAO,OAAO;AAAA,IACjD;AAAA,IACA,SAAS,QAAQ,OAAO;AAAA,IACxB;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf;AAAA,IAEA,oBAAoB,SAAmC;AACnD,eAAS,oBAAoB,OAAY;AACrC,eAAO,MAAM,YAAY,QAAQ,SAAS,IAAI,cAAc,KAAK;AAAA,MACrE;AAEA,UAAI,QAAQ,QAAQ,gBAAgB,YAAY;AAC5C,YAAI;AACA,gBAAM,SAAS,QAAQ,QAAQ,gBAAgB,KAAK,OAAO;AAC3D,cAAI,4BAAa,GAAG,MAAM,GAAG;AACzB,mBAAO,4BAAa,KAAK,QAAQ,QAAW,mBAAmB;AAAA,UACnE;AAAA,QACJ,SAAS,GAAG;AACR,8BAAoB,CAAC;AAAA,QACzB;AAAA,MACJ;AAAA,IACJ;AAAA,IAEA,gBAAgB,KAAa;AACzB,UAAI,sBAAsB,QAAW;AACjC,4BAAoB,oBAAI,IAAI;AAAA,MAChC,WAAW,kBAAkB,IAAI,GAAG,GAAG;AACnC,eAAO,kBAAkB,IAAI,GAAG;AAAA,MACpC;AAEA,YAAM,KAAK,OAAO,SAAS,GAAG;AAC9B,UAAI;AACJ,UAAI,CAAC,OAAO,SAAS,EAAE,GAAG;AACtB,gBAAQ,OAAO,GAAG,GAAG,UAAU;AAAA,MACnC,OAAO;AACH,cAAM,QAAQ,QAAQ,WAAW,OAAO,OAAO,EAAE;AACjD,YAAI,UAAU,QAAW;AACrB,kBAAQ,OAAO,OAAG,yBAAS,MAAM,IAAI,CAAC,UAAU;AAAA,QACpD;AAAA,MACJ;AAEA,wBAAkB,IAAI,KAAK,KAAK;AAEhC,aAAO;AAAA,IACX;AAAA,EACJ;AACJ;AAEA,SAAS,WAAW,OAAsE;AACtF,SAAO,CAAC,CAAC,SAAS,iBAAiB;AACvC;AAQA,SAAS,yBAAyB,WAAsB;AACpD,QAAM,EAAE,MAAM,IAAI;AAClB,MAAI,CAAC,WAAW,KAAK,GAAG;AACpB;AAAA,EACJ;AAEA,YAAU,UAAU,MAAM;AAC1B,YAAU,gBAAgB;AAE1B,QAAM,yBAAyB,OAAO,qBAAiC;AACnE,UAAM,EAAE,OAAO,IAAI;AAEnB,QAAI;AACJ,QAAI;AAEJ,eAAW,QAAQ,kBAAkB;AACjC,cAAI,4BAAY,OAAO,IAAI,GAAG,iBAAiB,IAAI,CAAC,GAAG;AACnD;AAAA,MACJ;AAEA,UAAI,YAAY,QAAW;AACvB,kBAAU,EAAE,CAAC,IAAI,GAAG,iBAAiB,IAAI,EAAE;AAC3C,oBAAY,EAAE,CAAC,IAAI,GAAG,OAAO,IAAI,EAAE;AAAA,MACvC,OAAO;AACH,gBAAQ,IAAI,IAAI,iBAAiB,IAAI;AACrC,kBAAW,IAAI,IAAI,OAAO,IAAI;AAAA,MAClC;AAAA,IACJ;AAEA,cAAU,UAAU,MAAM;AAE1B,QAAI,CAAC,SAAS;AACV;AAAA,IACJ;AAEA,cAAU,SAAS;AAAA,MACf,GAAG,UAAU;AAAA,MACb,GAAG;AAAA,IACP;AAEA,QAAI,UAAU,UAAU;AACpB,iBAAW,WAAW,UAAU,SAAS,OAAO,GAAG;AAC/C,gBAAQ,SAAS,SAAU;AAAA,MAC/B;AAAA,IACJ;AAEA,UAAM,eAAe,OAAO,KAAK,OAAO;AAExC,UAAM,kBAAkB,UAAU,WAAW,MAAM,KAAK,YAAY,CAAC;AAErE,UAAM,WAAW,aAAa,OAAO,QAAQ,EAAE;AAE/C,QAAI,iBAAiB;AACjB,aAAO,gBAAgB,KAAK,WAAW;AAAA,IAC3C;AAEA,WAAO,YAAY;AAEnB,aAAS,cAAkC;AACvC,aAAO,MAAM;AACT,cAAM,IAAI,SAAS,KAAK;AACxB,YAAI,EAAE,MAAM;AACR;AAAA,QACJ;AAEA,cAAM,OAAO,EAAE;AACf,cAAM,QAAQ,UAAU,gBAAgB,IAAI;AAC5C,YAAI,CAAC,OAAO,YAAY;AACpB;AAAA,QACJ;AAEA,cAAM,SAAS,MAAM,KAAK,QAAS,IAAI,GAAG,UAAW,IAAI,CAAC;AAC1D,YAAI,4BAAa,GAAG,MAAM,GAAG;AACzB,iBAAO,QAAQ,QAAQ,MAAM,EAAE,KAAK,WAAW;AAAA,QACnD;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AACJ;AAOA,SAAS,gBAAgB,UAAgC,WAAsB,SAAkC;AAC7G,MAAI,SAAS,UAAU;AACvB,MAAI;AACJ,MAAI;AACJ,MAAI,UAAU;AAEd,QAAM,cAAc;AAAA,IAChB,WAAW;AACP,aAAO,UAAU,SAAS,KAAK,SAAS;AAAA,IAC5C;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ;AAEA,QAAM,cAAc,QAAQ;AAG5B,OAAK,YAAY,SAAS,MAAM;AAC5B,QAAI,WAAW,UAAU,QAAQ;AAC7B,UAAI;AACA,iBAAS;AAAA,MACb,SAAS,GAAG;AACR,eAAO;AAAA,UACH,gCAAgC,UAAU,SAAS,IAAI,+BAA+B,YAAY,GAAG;AAAA,UACrG;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,CAAC;AAED,QAAM,SAAS,UAAU,WAAW;AAGpC,QAAM,YAAuC;AAAA,IACzC,YAAY,UAAU;AAAA,IAEtB,IAAI,WAAW;AACX,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,IAAI,QAAQ;AACR,UAAI,SAAS;AACT,cAAM,IAAI,sCAAsB,KAAK,QAAQ;AAAA,MACjD;AAEA,aAAO;AAAA,IACX;AAAA,IAEA,IAAI,MAAM,QAAQ;AACd,YAAM,IAAI,6BAAc,iCAAiC,UAAU,WAAW,OAAO,IAAI,EAAE;AAAA,IAC/F;AAAA,IAEA,IAAI,UAAU;AACV,aAAO;AAAA,IACX;AAAA,IAEA,IAAI,WAAW;AACX,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,IAAI,SAAS,MAA8B;AACvC,YAAM,IAAI,mCAAoB,sCAAsC;AAAA,IACxE;AAAA,IAEA,IAAI,YAAY;AACZ,aAAO,UAAU;AAAA,IACrB;AAAA,IAEA,OAAO,SAAS;AACZ,UAAI,SAAS;AACT,cAAM,IAAI,sCAAsB,KAAK,QAAQ;AAAA,MACjD;AAGA,iBAAW;AAGX,kBAAY,UAAU;AAGtB,UAAI,WAAW,UAAU,QAAQ;AAC7B,cAAM,MAAM;AACZ,iBAAS,IAAI,UAAU,KAAK;AAC5B,mBAAW,SAAS,QAAQ;AACxB,iBAAO,KAAK,IAAI,IAAI,KAAK;AAAA,QAC7B;AAGA,uBAAe;AAAA,MACnB;AAGA,cAAQ;AAGR,qBAAe;AAAA,IACnB;AAAA,IAEA,UAAU;AACN,YAAM,IAAI,6BAAc,qCAAqC,UAAU,WAAW,OAAO,IAAI,EAAE;AAAA,IACnG;AAAA,EACJ;AAEA,YAAU,WAAW,MAAM,OAAO,QAAQ;AAG1C,QAAM,UAA0B;AAAA,IAC5B,SAAS,UAAU,WAAW,OAAO,WAAW,OAAO;AAAA,IAEvD,SAAS,WAAuB;AAC5B,UAAI,WAAW,WAAW;AACtB,iBAAS,UAAU;AACnB,uBAAe;AAAA,MACnB;AAAA,IACJ;AAAA,EACJ;AAEA,MAAI,QAAQ,YAAY,cAAc,YAAY;AAC9C,QAAI,CAAC,UAAU,UAAU;AACrB,gBAAU,WAAW,oBAAI,IAAI;AAAA,IACjC;AACA,cAAU,SAAS,IAAI,SAAS,OAAO;AAAA,EAC3C;AAGA,OAAK,YAAY,QAAQ,MAAM;AAC3B,QAAI;AACA,gBAAU,UAAU,OAAO,OAAO;AAClC,gBAAU;AACV,qBAAe;AAAA,IACnB,SAAS,GAAG;AACR,aAAO;AAAA,QACH,gCAAgC,UAAU,SAAS,IAAI,4BAA4B,YAAY,GAAG;AAAA,QAClG;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,CAAC;AAED,SAAO;AAEP,WAAS,aAAa;AAElB,gBAAY,iBAAiB,QAAQ;AAGrC,gBAAY,gBAAgB,WAAW;AAGvC,gBAAY,UAAU;AAEtB,YACI,gCAAe,OAAO,KACtB,CAAC,QAAQ,sBACT,QAAQ,uBACR,CAAC,QAAQ,oBAAoB,aAAa,UAAU,mBAAmB,GACzE;AACE,cAAQ,qBAAqB;AAC7B,UAAI,UAAU,QAAQ,kBAAkB,YAAY;AAChD,kBAAU,QAAQ,kBAAkB,KAAK,OAAO;AAAA,MACpD;AACA,cAAQ,oBAAoB,GAAG,UAAU,mBAAmB;AAAA,IAChE;AAAA,EACJ;AAGA,WAAS,iBAAiB;AACtB,UAAM,UAAU,UAAU;AAC1B,QAAI,SAAS;AACT,iBAAW,OAAO,SAAS;AACvB,gBAAQ,GAAG,EAAE,QAAQ;AAAA,MACzB;AAAA,IACJ;AAAA,EACJ;AAGA,WAAS,mBAAmB;AACxB,QAAI,CAAC,UAAU,eAAe;AAC1B;AAAA,IACJ;AAGA,cAAU;AACV,QAAI,UAAU,UAAU,YAAa;AACjC,gBAAU,UAAU;AAAA,IACxB;AAAA,EACJ;AAIA,WAAS,uBAAuB,MAAoE;AAChG,QAAI;AACJ,QAAI,mBAAmB,QAAQ,iBAAiB;AAC5C,iBAAW,gBAAgB,IAAI;AAAA,IACnC,OAAO;AACH,iBAAW,UAAU,OAAO,IAAI;AAAA,IACpC;AAEA,UAAM,WAAW,OAAO,IAAI;AAC5B,YAAI,4BAAY,UAAU,QAAQ,GAAG;AACjC;AAAA,IACJ;AAEA,QAAI,CAAC,iBAAiB;AAClB,wBAAkB,CAAC;AAAA,IACvB;AACA,oBAAgB,IAAI,QAAI,yBAAS,QAAQ;AAIzC,WAAO,EAAE,UAAU,QAAQ,QAAQ,IAAI,GAAG,SAAS;AAAA,EACvD;AAQA,WAAS,YAAY;AAEjB,UAAM,EAAE,OAAO,IAAI;AACnB,QAAI,CAAC,QAAQ;AACT,aAAO;AAAA,IACX;AAGA,QAAI,iBAAiB;AAGrB,UAAM,cAAc,OAAO,KAAK,MAAM,EAAE,OAAO,QAAQ,EAAE;AAGzD,aAAS,UAAiC;AACtC,aAAO,MAAM;AACT,cAAM,IAAI,YAAY,KAAK;AAC3B,YAAI,EAAE,MAAM;AACR,iBAAO;AAAA,QACX;AAEA,cAAM,OAAO,EAAE;AAIf,cAAM,QAAQ,SAAS,GAAG,IAAI,WAAW;AACzC,YAAI,CAAC,OAAO,YAAY;AACpB;AAAA,QACJ;AAEA,cAAM,SAAS,uBAAuB,IAAI;AAC1C,YAAI,QAAQ;AAER,2BAAiB;AAGjB,gBAAM,SAAS,MAAM,KAAK,OAAO,UAAU,OAAO,UAAU,OAAO;AAInE,cAAI,4BAAa,GAAG,MAAM,GAAG;AACzB,mBAAO,OAAO,KAAK,OAAO;AAAA,UAC9B;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAEA,WAAO,QAAQ;AAAA,EACnB;AAIA,WAAS,2BAA2B;AAChC,cAAU;AAEV,QAAI,UAAU,WAAW,QAAQ;AAC7B,aAAO;AAAA,IACX;AAEA,eAAW,QAAQ,QAAQ;AACvB,YAAM,SAAS,OAAO,IAAI;AAC1B,YAAM,SAAS,UAAU,OAAO,IAAI;AACpC,UAAI,WAAW,UAAU,KAAC,4BAAY,QAAQ,MAAM,GAAG;AACnD,YAAI,CAAC,SAAS;AACV,oBAAU,EAAE,eAAe,CAAC,GAAG,YAAY,oBAAI,IAAI,EAAE;AAAA,QACzD;AACA,gBAAQ,WAAW,IAAI,IAAI;AAE3B,YAAI,UAAU,iBAAiB,IAAI,IAAI,GAAG;AACtC,cAAI,QAAQ,eAAe,QAAW;AAClC,oBAAQ,aAAa,CAAC;AAAA,UAC1B;AACA,kBAAQ,WAAW,IAAI,IAAI,OAAO,IAAI;AAAA,QAC1C;AAEA,cAAM,QAAQ,UAAU,gBAAgB,IAAI;AAC5C,YAAI,OAAO,YAAY;AACnB,kBAAQ,cAAc,KAAK;AAAA,YACvB;AAAA,YACA,QAAQ,CAAC,OAAO,IAAI,GAAG,UAAU,OAAO,IAAI,GAAG,OAAO;AAAA,UAC1D,CAAC;AAAA,QACL;AAAA,MACJ;AAAA,IACJ;AAGA,QAAI,SAAS;AAET,uBAAiB;AAEjB,UAAI,UAAU,OAAO,cAAc,YAAY;AAC3C,gBAAQ,cAAc,KAAK;AAAA,UACvB,OAAO,UAAU,OAAO;AAAA,UACxB,QAAQ,CAAC,OAAO;AAAA,QACpB,CAAC;AAAA,MACL;AAAA,IACJ;AAAA,EACJ;AAKA,WAAS,UAAU;AACf,6BAAyB;AAGzB,UAAM,aAAa,SAAS;AAC5B,QAAI,CAAC,YAAY;AACb;AAAA,IACJ;AAEA,QAAI,UAAU,gBAAgB,QAAW;AACrC,iBAAW,YAAY,IAAI,UAAU;AAAA,IACzC;AAEA,WAAO,UAAU,OAAO,IAAI,QAAQ,aAAa,UAAU;AAAA,EAC/D;AAKA,WAAS,UAAU;AACf,QAAI,CAAC,SAAS;AACV;AAAA,IACJ;AAEA,UAAM,YAAY,UAAU;AAC5B,cAAU,SAAS;AACnB,QAAI,UAAU,UAAU;AACpB,iBAAWC,YAAW,UAAU,SAAS,OAAO,GAAG;AAC/C,QAAAA,SAAQ,SAAS,SAAS;AAAA,MAC9B;AAAA,IACJ;AAAA,EACJ;AAKA,WAAS,aAAa;AAClB,QAAI,CAAC,SAAS;AACV;AAAA,IACJ;AAGA,UAAM,WAAW,QAAQ,cAAc,OAAO,QAAQ,EAAE;AAExD,aAAS,cAAkC;AACvC,aAAO,MAAM;AACT,cAAM,IAAI,SAAS,KAAK;AACxB,YAAI,EAAE,MAAM;AACR;AAAA,QACJ;AAEA,cAAM,EAAE,OAAO,OAAO,IAAI,EAAE;AAC5B,cAAM,SAAS,MAAM,KAAK,GAAG,MAAM;AACnC,YAAI,4BAAa,GAAG,MAAM,GAAG;AACzB,iBAAO,QAAQ,QAAQ,MAAM,EAAE,KAAK,WAAW;AAAA,QACnD;AAAA,MACJ;AAAA,IACJ;AAEA,UAAM,kBAAkB,UAAU,WAAW,CAAC,GAAG,QAAQ,UAAU,CAAC;AAEpE,QAAI,iBAAiB;AACjB,aAAO,gBAAgB,KAAK,WAAW;AAAA,IAC3C;AAEA,WAAO,YAAY;AAAA,EACvB;AAKA,WAAS,WAAW;AAChB,KAAC,EAAE,OAAO,IAAI;AACd,mBAAe;AAAA,EACnB;AACJ;",
5
5
  "names": ["Datasource", "context"]
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NameResolver.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/state/managed/NameResolver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,EAAgB,KAAK,EAAc,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAGhC;;;;GAIG;AACH,wBAAgB,YAAY,CACxB,UAAU,EAAE,cAAc,EAC1B,KAAK,EAAE,KAAK,GAAG,SAAS,EACxB,IAAI,EAAE,MAAM,GACb,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,CAAC,GAAG,SAAS,CA2DjC"}
1
+ {"version":3,"file":"NameResolver.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/state/managed/NameResolver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,EAAgB,KAAK,EAA+B,MAAM,QAAQ,CAAC;AAC1E,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAGhC;;;;GAIG;AACH,wBAAgB,YAAY,CACxB,UAAU,EAAE,cAAc,EAC1B,KAAK,EAAE,KAAK,GAAG,SAAS,EACxB,IAAI,EAAE,MAAM,GACb,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,CAAC,GAAG,SAAS,CA2DjC"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/behavior/state/managed/NameResolver.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,qBAAyB;AAEzB,mBAAgD;AAEhD,sBAAyB;AAXzB;AAAA;AAAA;AAAA;AAAA;AAkBO,SAAS,aACZ,YACA,OACA,MAC+B;AAC/B,MAAI,UAAU,QAAW;AACrB;AAAA,EACJ;AAGA,MACI,UAAU,WAAW,UACpB,MAAM,OAAO,UAAa,WAAW,OAAO,QAAQ,MAAM,OAAO,WAAW,OAAO,OAAO,MAAM,IACnG;AACE,QAAI,CAAC,WAAW,YAAY,IAAI,IAAI,GAAG;AACnC;AAAA,IACJ;AACA,WAAO,qBAAqB;AAAA,EAChC;AAGA,MAAI,EAAE,iBAAiB,4BAAe,MAAM,sBAAsB,UAAU;AACxE,WAAO,uBAAuB;AAAA,EAClC;AAKA,MAAI,WAAW,UAAU,KAAe,EAAE,KAAK,CAAAA,eAAS,yBAASA,OAAM,MAAM,KAAK,MAAM,IAAI,GAAG;AAC3F,WAAO,qBAAqB;AAAA,EAChC;AAGA,SAAO,uBAAuB;AAK9B,WAAS,uBAAuB;AAC5B,WAAO,CAAC,QAAc,MAAqB,IAAI;AAAA,EACnD;AAKA,WAAS,yBAAyB;AAC9B,UAAM,eAAe,MAAO;AAC5B,QAAI,EAAE,wBAAwB,4BAAe,EAAE,wBAAwB,4BAAe;AAClF;AAAA,IACJ;AAEA,UAAM,eAAe,aAAa,YAAY,cAAc,IAAI;AAChE,QAAI,CAAC,cAAc;AACf;AAAA,IACJ;AAEA,WAAO,CAAC,QAAa;AACjB,YAAM,SAAU,MAA8B,yBAAS,SAAS,GAAG,QAAQ;AAC3E,UAAI,QAAQ;AACR,eAAO,aAAa,MAAwB;AAAA,MAChD;AAAA,IACJ;AAAA,EACJ;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,qBAAyB;AAEzB,mBAAiE;AAEjE,sBAAyB;AAXzB;AAAA;AAAA;AAAA;AAAA;AAkBO,SAAS,aACZ,YACA,OACA,MAC+B;AAC/B,MAAI,UAAU,QAAW;AACrB;AAAA,EACJ;AAGA,MACI,UAAU,WAAW,UACpB,MAAM,OAAO,UAAa,WAAW,OAAO,QAAQ,MAAM,OAAO,WAAW,OAAO,OAAO,MAAM,IACnG;AACE,QAAI,CAAC,WAAW,YAAY,IAAI,IAAI,GAAG;AACnC;AAAA,IACJ;AACA,WAAO,qBAAqB;AAAA,EAChC;AAGA,MAAI,EAAE,iBAAiB,4BAAe,MAAM,sBAAsB,UAAU;AACxE,WAAO,uBAAuB;AAAA,EAClC;AAKA,MAAI,WAAW,UAAU,KAAe,EAAE,KAAK,CAAAA,eAAS,yBAASA,OAAM,MAAM,KAAK,MAAM,IAAI,GAAG;AAC3F,WAAO,qBAAqB;AAAA,EAChC;AAGA,SAAO,uBAAuB;AAK9B,WAAS,uBAAuB;AAC5B,WAAO,CAAC,QAAc,MAAqB,IAAI;AAAA,EACnD;AAKA,WAAS,yBAAyB;AAC9B,UAAM,eAAe,MAAO;AAC5B,QAAI,EAAE,wBAAwB,4BAAe,EAAE,wBAAwB,4BAAe;AAClF;AAAA,IACJ;AAEA,UAAM,eAAe,aAAa,YAAY,cAAc,IAAI;AAChE,QAAI,CAAC,cAAc;AACf;AAAA,IACJ;AAEA,WAAO,CAAC,QAAa;AACjB,YAAM,SAAU,MAA8B,yBAAS,SAAS,GAAG,QAAQ;AAC3E,UAAI,QAAQ;AACR,eAAO,aAAa,MAAwB;AAAA,MAChD;AAAA,IACJ;AAAA,EACJ;AACJ;",
5
5
  "names": ["model"]
6
6
  }
@@ -5,8 +5,9 @@
5
5
  */
6
6
  import type { Schema } from "#model";
7
7
  import { RootSupervisor } from "../../../supervision/RootSupervisor.js";
8
+ import { ValueSupervisor } from "../../../supervision/ValueSupervisor.js";
8
9
  /**
9
- * Obtain a {@link ValueSupervisor.Caster} function for the given schema.
10
+ * Obtain a {@link ValueSupervisor.Cast} function for the given schema.
10
11
  */
11
- export declare function ValueCaster(schema: Schema, owner: RootSupervisor): (value: unknown) => unknown;
12
+ export declare function ValueCaster(schema: Schema, owner: RootSupervisor): ValueSupervisor.Cast;
12
13
  //# sourceMappingURL=ValueCaster.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ValueCaster.d.ts","sourceRoot":"","sources":["../../../../../../src/behavior/state/managed/values/ValueCaster.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGrC,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAGxE;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,+BAahE"}
1
+ {"version":3,"file":"ValueCaster.d.ts","sourceRoot":"","sources":["../../../../../../src/behavior/state/managed/values/ValueCaster.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGrC,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAE1E;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,eAAe,CAAC,IAAI,CA6BvF"}
@@ -31,14 +31,27 @@ var import_protocol = require("#protocol");
31
31
  */
32
32
  function ValueCaster(schema, owner) {
33
33
  const metatype = schema.effectiveMetatype ?? import_model.Metatype.any;
34
+ let cast;
34
35
  switch (metatype) {
35
36
  case import_model.Metatype.object:
36
- return StructCaster(schema, owner);
37
+ cast = StructCaster(schema, owner);
38
+ break;
37
39
  case import_model.Metatype.array:
38
- return ListCaster(schema, owner);
40
+ cast = ListCaster(schema, owner);
41
+ break;
39
42
  default:
40
- return import_model.Metatype.cast[metatype];
43
+ cast = import_model.Metatype.cast[metatype];
44
+ break;
41
45
  }
46
+ if (schema.quality.nullable) {
47
+ return (value) => {
48
+ if (value === null) {
49
+ return value;
50
+ }
51
+ return cast(value);
52
+ };
53
+ }
54
+ return cast;
42
55
  }
43
56
  function StructCaster(schema, owner) {
44
57
  const memberConfigs = {};
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/behavior/state/managed/values/ValueCaster.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAyB;AAEzB,mBAAwF;AACxF,sBAA+C;AAT/C;AAAA;AAAA;AAAA;AAAA;AAgBO,SAAS,YAAY,QAAgB,OAAuB;AAC/D,QAAM,WAAW,OAAO,qBAAqB,sBAAS;AAEtD,UAAQ,UAAU;AAAA,IACd,KAAK,sBAAS;AACV,aAAO,aAAa,QAAQ,KAAK;AAAA,IAErC,KAAK,sBAAS;AACV,aAAO,WAAW,QAAsB,KAAK;AAAA,IAEjD;AACI,aAAO,sBAAS,KAAK,QAAQ;AAAA,EACrC;AACJ;AAEA,SAAS,aAAa,QAAmC,OAAuB;AAC5E,QAAM,gBAAgB,CAAC;AACvB,aAAW,UAAU,MAAM,UAAU,MAAM,GAAG;AAC1C,UAAM,SAAS,EAAE,UAAM,yBAAS,OAAO,IAAI,GAAG,MAAM,MAAM,IAAI,MAAM,EAAE,KAAK;AAG3E,kBAAc,OAAO,IAAI,IAAI;AAI7B,UAAM,YAAY,OAAO,KAAK,YAAY;AAC1C,QAAI,CAAC,cAAc,SAAS,GAAG;AAC3B,oBAAc,SAAS,IAAI;AAAA,IAC/B;AAAA,EACJ;AAEA,QAAM,eAAe,sBAAS,KAAK;AAEnC,SAAO,CAAC,UAAe;AACnB,UAAM,QAAQ,aAAa,KAAK;AAChC,UAAM,SAAS,CAAC;AAEhB,eAAW,OAAO,OAAO;AACrB,UAAI,SAAS,cAAc,GAAG;AAC9B,UAAI,WAAW,QAAW;AACtB,iBAAS,cAAc,IAAI,YAAY,CAAC;AAAA,MAC5C;AAEA,UAAI,WAAW,QAAW;AACtB,cAAM,IAAI,kCAAqB,aAAa,GAAG,kBAAkB;AAAA,MACrE;AAEA,aAAO,OAAO,IAAI,IAAI,OAAO,KAAK,MAAM,GAAG,CAAC;AAAA,IAChD;AAEA,WAAO;AAAA,EACX;AACJ;AAEA,SAAS,WAAW,QAAoB,OAAuB;AAC3D,QAAM,QAAQ,OAAO;AACrB,MAAI,UAAU,QAAW;AACrB,UAAM,IAAI,8CAA0B,4BAAc,OAAO,IAAI,GAAG,qCAAqC;AAAA,EACzG;AAEA,QAAM,cAAc,sBAAS,KAAK;AAClC,QAAM,YAAY,MAAM,IAAI,KAAK,EAAE;AAEnC,SAAO,CAAC,UAAe,YAAY,KAAK,GAAG,IAAI,SAAS;AAC5D;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAyB;AAEzB,mBAAwF;AACxF,sBAA+C;AAT/C;AAAA;AAAA;AAAA;AAAA;AAgBO,SAAS,YAAY,QAAgB,OAA6C;AACrF,QAAM,WAAW,OAAO,qBAAqB,sBAAS;AAEtD,MAAI;AACJ,UAAQ,UAAU;AAAA,IACd,KAAK,sBAAS;AACV,aAAO,aAAa,QAAQ,KAAK;AACjC;AAAA,IAEJ,KAAK,sBAAS;AACV,aAAO,WAAW,QAAsB,KAAK;AAC7C;AAAA,IAEJ;AACI,aAAO,sBAAS,KAAK,QAAQ;AAC7B;AAAA,EACR;AAEA,MAAI,OAAO,QAAQ,UAAU;AACzB,WAAO,WAAS;AACZ,UAAI,UAAU,MAAM;AAChB,eAAO;AAAA,MACX;AAEA,aAAO,KAAK,KAAK;AAAA,IACrB;AAAA,EACJ;AAEA,SAAO;AACX;AAEA,SAAS,aAAa,QAAmC,OAAuB;AAC5E,QAAM,gBAAgB,CAAC;AACvB,aAAW,UAAU,MAAM,UAAU,MAAM,GAAG;AAC1C,UAAM,SAAS,EAAE,UAAM,yBAAS,OAAO,IAAI,GAAG,MAAM,MAAM,IAAI,MAAM,EAAE,KAAK;AAG3E,kBAAc,OAAO,IAAI,IAAI;AAI7B,UAAM,YAAY,OAAO,KAAK,YAAY;AAC1C,QAAI,CAAC,cAAc,SAAS,GAAG;AAC3B,oBAAc,SAAS,IAAI;AAAA,IAC/B;AAAA,EACJ;AAEA,QAAM,eAAe,sBAAS,KAAK;AAEnC,SAAO,CAAC,UAAe;AACnB,UAAM,QAAQ,aAAa,KAAK;AAChC,UAAM,SAAS,CAAC;AAEhB,eAAW,OAAO,OAAO;AACrB,UAAI,SAAS,cAAc,GAAG;AAC9B,UAAI,WAAW,QAAW;AACtB,iBAAS,cAAc,IAAI,YAAY,CAAC;AAAA,MAC5C;AAEA,UAAI,WAAW,QAAW;AACtB,cAAM,IAAI,kCAAqB,aAAa,GAAG,kBAAkB;AAAA,MACrE;AAEA,aAAO,OAAO,IAAI,IAAI,OAAO,KAAK,MAAM,GAAG,CAAC;AAAA,IAChD;AAEA,WAAO;AAAA,EACX;AACJ;AAEA,SAAS,WAAW,QAAoB,OAAuB;AAC3D,QAAM,QAAQ,OAAO;AACrB,MAAI,UAAU,QAAW;AACrB,UAAM,IAAI,8CAA0B,4BAAc,OAAO,IAAI,GAAG,qCAAqC;AAAA,EACzG;AAEA,QAAM,cAAc,sBAAS,KAAK;AAClC,QAAM,YAAY,MAAM,IAAI,KAAK,EAAE;AAEnC,SAAO,CAAC,UAAe,YAAY,KAAK,GAAG,IAAI,SAAS;AAC5D;",
5
5
  "names": []
6
6
  }
@@ -157,9 +157,9 @@ export declare namespace CommissioningClient {
157
157
  */
158
158
  discoveryCapabilities?: TypeFromPartialBitSchema<typeof DiscoveryCapabilitiesBitmap>;
159
159
  /**
160
- * The initial read used to populate node data.
160
+ * The initial read/subscription used to populate node data.
161
161
  *
162
- * By default matter.js reads all attributes on the node. This allows us to efficiently initialize the complete
162
+ * By default, matter.js reads all attributes on the node. This allows us to efficiently initialize the complete
163
163
  * node structure.
164
164
  *
165
165
  * If you only require a subset of attributes you can replace this with a more discriminative read. For
@@ -168,7 +168,7 @@ export declare namespace CommissioningClient {
168
168
  *
169
169
  * ```js
170
170
  * {
171
- * startupSubscription: Read(
171
+ * defaultSubscription: Read(
172
172
  * Read.Attribute({ endpoint: 0 }),
173
173
  * Read.Attribute({ cluster: OnOffCluster })
174
174
  * )
@@ -176,9 +176,16 @@ export declare namespace CommissioningClient {
176
176
  * ```
177
177
  *
178
178
  * Note that certain clusters like Descriptor and Basic Information contain critical operational data. If your
179
- * read omits them then the node will only be partially functional once initialized.
179
+ * read omits them then the node will only be partially functional once initialized or relevant clusters and
180
+ * endpoints need to be enabled manually.
180
181
  */
181
- startupSubscription?: Subscribe | null;
182
+ defaultSubscription?: Subscribe;
183
+ /**
184
+ * By default, nodes we commission are automatically subscribed to using the {@link defaultSubscription} (or a
185
+ * full wildcard subscription if that is undefined).
186
+ * When set to false, the node will not be automatically subscribed.
187
+ */
188
+ autoSubscribe?: boolean;
182
189
  /**
183
190
  * Case Authenticated Tags (CATs) to use for operational CASE sessions with this node.
184
191
  *
@@ -1 +1 @@
1
- {"version":3,"file":"CommissioningClient.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/commissioning/CommissioningClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommissioningClient.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/commissioning/CommissioningClient.ts"],"names":[],"mappings":"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"}
@@ -111,7 +111,10 @@ class CommissioningClient extends import_Behavior.Behavior {
111
111
  }
112
112
  await this.context.transaction.commit();
113
113
  const network = this.agent.get(import_NetworkClient.NetworkClient);
114
- network.state.startupSubscription = opts.startupSubscription;
114
+ network.state.defaultSubscription = opts.defaultSubscription;
115
+ if (opts.autoSubscribe || opts.autoSubscribe === void 0) {
116
+ network.state.autoSubscribe = opts.autoSubscribe ?? true;
117
+ }
115
118
  network.state.caseAuthenticatedTags = opts.caseAuthenticatedTags;
116
119
  logger.notice(
117
120
  "Commissioned",
@@ -170,6 +173,19 @@ class CommissioningClient extends import_Behavior.Behavior {
170
173
  #peerAddressChanged(addr) {
171
174
  const node = this.endpoint;
172
175
  if (addr) {
176
+ const channels = node.env.get(import_protocol.ChannelManager);
177
+ if (channels.hasChannel(addr)) {
178
+ const channel = channels.getChannel(addr).channel;
179
+ const operationalAddress = (0, import_general.isIpNetworkChannel)(channel) ? channel.networkAddress : void 0;
180
+ if (operationalAddress) {
181
+ if (this.state.addresses === void 0) {
182
+ this.state.addresses = [];
183
+ }
184
+ if (!this.state.addresses.some((a) => import_general.ServerAddress.isEqual((0, import_general.ServerAddress)(a), operationalAddress))) {
185
+ this.state.addresses.push(import_general.ServerAddress.definitionOf(operationalAddress));
186
+ }
187
+ }
188
+ }
173
189
  node.lifecycle.commissioned.emit(this.context);
174
190
  } else {
175
191
  node.lifecycle.decommissioned.emit(this.context);