@matter/node 0.11.9 → 0.12.0-alpha.0-20241213-fcd71a96d

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 (221) hide show
  1. package/dist/cjs/behavior/internal/BehaviorBacking.d.ts +6 -1
  2. package/dist/cjs/behavior/internal/BehaviorBacking.d.ts.map +1 -1
  3. package/dist/cjs/behavior/internal/BehaviorBacking.js +2 -1
  4. package/dist/cjs/behavior/internal/BehaviorBacking.js.map +1 -1
  5. package/dist/cjs/behavior/internal/ClientBehaviorBacking.d.ts +2 -1
  6. package/dist/cjs/behavior/internal/ClientBehaviorBacking.d.ts.map +1 -1
  7. package/dist/cjs/behavior/internal/ClientBehaviorBacking.js +4 -0
  8. package/dist/cjs/behavior/internal/ClientBehaviorBacking.js.map +1 -1
  9. package/dist/cjs/behavior/internal/ServerBehaviorBacking.d.ts +2 -0
  10. package/dist/cjs/behavior/internal/ServerBehaviorBacking.d.ts.map +1 -1
  11. package/dist/cjs/behavior/internal/ServerBehaviorBacking.js +37 -0
  12. package/dist/cjs/behavior/internal/ServerBehaviorBacking.js.map +1 -1
  13. package/dist/cjs/behavior/state/transaction/Transaction.d.ts +18 -18
  14. package/dist/cjs/behavior/system/events/EventsBehavior.d.ts +26 -0
  15. package/dist/cjs/behavior/system/events/EventsBehavior.d.ts.map +1 -0
  16. package/dist/cjs/behavior/system/events/EventsBehavior.js +74 -0
  17. package/dist/cjs/behavior/system/events/EventsBehavior.js.map +6 -0
  18. package/dist/cjs/behavior/system/events/index.d.ts +7 -0
  19. package/dist/cjs/behavior/system/events/index.d.ts.map +1 -0
  20. package/dist/cjs/behavior/system/events/index.js +24 -0
  21. package/dist/cjs/behavior/system/events/index.js.map +6 -0
  22. package/dist/cjs/behavior/system/network/ServerNetworkRuntime.d.ts.map +1 -1
  23. package/dist/cjs/behavior/system/network/ServerNetworkRuntime.js +3 -0
  24. package/dist/cjs/behavior/system/network/ServerNetworkRuntime.js.map +1 -1
  25. package/dist/cjs/behaviors/administrator-commissioning/AdministratorCommissioningServer.d.ts +8 -0
  26. package/dist/cjs/behaviors/administrator-commissioning/AdministratorCommissioningServer.d.ts.map +1 -1
  27. package/dist/cjs/behaviors/administrator-commissioning/AdministratorCommissioningServer.js +12 -4
  28. package/dist/cjs/behaviors/administrator-commissioning/AdministratorCommissioningServer.js.map +1 -1
  29. package/dist/cjs/behaviors/general-diagnostics/GeneralDiagnosticsServer.d.ts +2 -4
  30. package/dist/cjs/behaviors/general-diagnostics/GeneralDiagnosticsServer.d.ts.map +1 -1
  31. package/dist/cjs/behaviors/general-diagnostics/GeneralDiagnosticsServer.js +6 -8
  32. package/dist/cjs/behaviors/general-diagnostics/GeneralDiagnosticsServer.js.map +1 -1
  33. package/dist/cjs/behaviors/operational-credentials/OperationalCredentialsServer.d.ts.map +1 -1
  34. package/dist/cjs/behaviors/operational-credentials/OperationalCredentialsServer.js +23 -20
  35. package/dist/cjs/behaviors/operational-credentials/OperationalCredentialsServer.js.map +1 -1
  36. package/dist/cjs/endpoint/Agent.d.ts +1 -1
  37. package/dist/cjs/endpoint/Agent.js +1 -1
  38. package/dist/cjs/endpoint/index.d.ts +1 -1
  39. package/dist/cjs/endpoint/index.d.ts.map +1 -1
  40. package/dist/cjs/endpoint/index.js +1 -1
  41. package/dist/cjs/endpoint/index.js.map +1 -1
  42. package/dist/cjs/endpoint/properties/Behaviors.d.ts +13 -0
  43. package/dist/cjs/endpoint/properties/Behaviors.d.ts.map +1 -1
  44. package/dist/cjs/endpoint/properties/Behaviors.js +37 -24
  45. package/dist/cjs/endpoint/properties/Behaviors.js.map +2 -2
  46. package/dist/cjs/endpoint/properties/EndpointInitializer.d.ts +8 -3
  47. package/dist/cjs/endpoint/properties/EndpointInitializer.d.ts.map +1 -1
  48. package/dist/cjs/endpoint/properties/EndpointInitializer.js +5 -0
  49. package/dist/cjs/endpoint/properties/EndpointInitializer.js.map +1 -1
  50. package/dist/cjs/endpoint/server/BehaviorServer.d.ts +21 -0
  51. package/dist/cjs/endpoint/server/BehaviorServer.d.ts.map +1 -0
  52. package/dist/cjs/endpoint/server/BehaviorServer.js +272 -0
  53. package/dist/cjs/endpoint/server/BehaviorServer.js.map +6 -0
  54. package/dist/{esm/endpoint → cjs/endpoint/server}/EndpointServer.d.ts +5 -6
  55. package/dist/cjs/endpoint/server/EndpointServer.d.ts.map +1 -0
  56. package/dist/cjs/endpoint/{EndpointServer.js → server/EndpointServer.js} +38 -14
  57. package/dist/cjs/endpoint/server/EndpointServer.js.map +6 -0
  58. package/dist/cjs/{node → endpoint}/server/ServerEndpointInitializer.d.ts +4 -4
  59. package/dist/cjs/endpoint/server/ServerEndpointInitializer.d.ts.map +1 -0
  60. package/dist/cjs/{node → endpoint}/server/ServerEndpointInitializer.js +7 -7
  61. package/dist/cjs/endpoint/server/ServerEndpointInitializer.js.map +6 -0
  62. package/dist/cjs/endpoint/server/index.d.ts +8 -0
  63. package/dist/cjs/endpoint/server/index.d.ts.map +1 -0
  64. package/dist/cjs/endpoint/server/index.js +25 -0
  65. package/dist/cjs/endpoint/server/index.js.map +6 -0
  66. package/dist/cjs/endpoint/type/MutableEndpoint.d.ts.map +1 -1
  67. package/dist/cjs/endpoint/type/MutableEndpoint.js +3 -0
  68. package/dist/cjs/endpoint/type/MutableEndpoint.js.map +1 -1
  69. package/dist/cjs/node/Node.d.ts +5 -0
  70. package/dist/cjs/node/Node.d.ts.map +1 -1
  71. package/dist/cjs/node/Node.js +17 -2
  72. package/dist/cjs/node/Node.js.map +1 -1
  73. package/dist/cjs/node/NodeLifecycle.d.ts +11 -1
  74. package/dist/cjs/node/NodeLifecycle.d.ts.map +1 -1
  75. package/dist/cjs/node/NodeLifecycle.js +14 -0
  76. package/dist/cjs/node/NodeLifecycle.js.map +1 -1
  77. package/dist/cjs/node/ServerNode.d.ts +3 -2
  78. package/dist/cjs/node/ServerNode.d.ts.map +1 -1
  79. package/dist/cjs/node/ServerNode.js +9 -9
  80. package/dist/cjs/node/ServerNode.js.map +1 -1
  81. package/dist/cjs/node/server/ServerEnvironment.js +1 -1
  82. package/dist/cjs/node/server/ServerEnvironment.js.map +1 -1
  83. package/dist/cjs/node/server/TransactionalInteractionServer.d.ts +2 -2
  84. package/dist/cjs/node/server/TransactionalInteractionServer.d.ts.map +1 -1
  85. package/dist/cjs/node/server/TransactionalInteractionServer.js +9 -4
  86. package/dist/cjs/node/server/TransactionalInteractionServer.js.map +2 -2
  87. package/dist/cjs/node/server/index.d.ts +0 -1
  88. package/dist/cjs/node/server/index.d.ts.map +1 -1
  89. package/dist/cjs/node/server/index.js +0 -1
  90. package/dist/cjs/node/server/index.js.map +1 -1
  91. package/dist/esm/behavior/internal/BehaviorBacking.d.ts +6 -1
  92. package/dist/esm/behavior/internal/BehaviorBacking.d.ts.map +1 -1
  93. package/dist/esm/behavior/internal/BehaviorBacking.js +2 -1
  94. package/dist/esm/behavior/internal/BehaviorBacking.js.map +1 -1
  95. package/dist/esm/behavior/internal/ClientBehaviorBacking.d.ts +2 -1
  96. package/dist/esm/behavior/internal/ClientBehaviorBacking.d.ts.map +1 -1
  97. package/dist/esm/behavior/internal/ClientBehaviorBacking.js +4 -0
  98. package/dist/esm/behavior/internal/ClientBehaviorBacking.js.map +1 -1
  99. package/dist/esm/behavior/internal/ServerBehaviorBacking.d.ts +2 -0
  100. package/dist/esm/behavior/internal/ServerBehaviorBacking.d.ts.map +1 -1
  101. package/dist/esm/behavior/internal/ServerBehaviorBacking.js +37 -0
  102. package/dist/esm/behavior/internal/ServerBehaviorBacking.js.map +1 -1
  103. package/dist/esm/behavior/state/transaction/Transaction.d.ts +18 -18
  104. package/dist/esm/behavior/system/events/EventsBehavior.d.ts +26 -0
  105. package/dist/esm/behavior/system/events/EventsBehavior.d.ts.map +1 -0
  106. package/dist/esm/behavior/system/events/EventsBehavior.js +54 -0
  107. package/dist/esm/behavior/system/events/EventsBehavior.js.map +6 -0
  108. package/dist/esm/behavior/system/events/index.d.ts +7 -0
  109. package/dist/esm/behavior/system/events/index.d.ts.map +1 -0
  110. package/dist/esm/behavior/system/events/index.js +7 -0
  111. package/dist/esm/behavior/system/events/index.js.map +6 -0
  112. package/dist/esm/behavior/system/network/ServerNetworkRuntime.d.ts.map +1 -1
  113. package/dist/esm/behavior/system/network/ServerNetworkRuntime.js +3 -0
  114. package/dist/esm/behavior/system/network/ServerNetworkRuntime.js.map +1 -1
  115. package/dist/esm/behaviors/administrator-commissioning/AdministratorCommissioningServer.d.ts +8 -0
  116. package/dist/esm/behaviors/administrator-commissioning/AdministratorCommissioningServer.d.ts.map +1 -1
  117. package/dist/esm/behaviors/administrator-commissioning/AdministratorCommissioningServer.js +12 -4
  118. package/dist/esm/behaviors/administrator-commissioning/AdministratorCommissioningServer.js.map +1 -1
  119. package/dist/esm/behaviors/general-diagnostics/GeneralDiagnosticsServer.d.ts +2 -4
  120. package/dist/esm/behaviors/general-diagnostics/GeneralDiagnosticsServer.d.ts.map +1 -1
  121. package/dist/esm/behaviors/general-diagnostics/GeneralDiagnosticsServer.js +6 -8
  122. package/dist/esm/behaviors/general-diagnostics/GeneralDiagnosticsServer.js.map +1 -1
  123. package/dist/esm/behaviors/operational-credentials/OperationalCredentialsServer.d.ts.map +1 -1
  124. package/dist/esm/behaviors/operational-credentials/OperationalCredentialsServer.js +23 -20
  125. package/dist/esm/behaviors/operational-credentials/OperationalCredentialsServer.js.map +1 -1
  126. package/dist/esm/endpoint/Agent.d.ts +1 -1
  127. package/dist/esm/endpoint/Agent.js +1 -1
  128. package/dist/esm/endpoint/index.d.ts +1 -1
  129. package/dist/esm/endpoint/index.d.ts.map +1 -1
  130. package/dist/esm/endpoint/index.js +1 -1
  131. package/dist/esm/endpoint/properties/Behaviors.d.ts +13 -0
  132. package/dist/esm/endpoint/properties/Behaviors.d.ts.map +1 -1
  133. package/dist/esm/endpoint/properties/Behaviors.js +38 -27
  134. package/dist/esm/endpoint/properties/Behaviors.js.map +2 -2
  135. package/dist/esm/endpoint/properties/EndpointInitializer.d.ts +8 -3
  136. package/dist/esm/endpoint/properties/EndpointInitializer.d.ts.map +1 -1
  137. package/dist/esm/endpoint/properties/EndpointInitializer.js +5 -0
  138. package/dist/esm/endpoint/properties/EndpointInitializer.js.map +1 -1
  139. package/dist/esm/endpoint/server/BehaviorServer.d.ts +21 -0
  140. package/dist/esm/endpoint/server/BehaviorServer.d.ts.map +1 -0
  141. package/dist/esm/endpoint/server/BehaviorServer.js +269 -0
  142. package/dist/esm/endpoint/server/BehaviorServer.js.map +6 -0
  143. package/dist/{cjs/endpoint → esm/endpoint/server}/EndpointServer.d.ts +5 -6
  144. package/dist/esm/endpoint/server/EndpointServer.d.ts.map +1 -0
  145. package/dist/esm/endpoint/{EndpointServer.js → server/EndpointServer.js} +38 -14
  146. package/dist/esm/endpoint/server/EndpointServer.js.map +6 -0
  147. package/dist/esm/{node → endpoint}/server/ServerEndpointInitializer.d.ts +4 -4
  148. package/dist/esm/endpoint/server/ServerEndpointInitializer.d.ts.map +1 -0
  149. package/dist/esm/{node → endpoint}/server/ServerEndpointInitializer.js +7 -7
  150. package/dist/esm/endpoint/server/ServerEndpointInitializer.js.map +6 -0
  151. package/dist/esm/endpoint/server/index.d.ts +8 -0
  152. package/dist/esm/endpoint/server/index.d.ts.map +1 -0
  153. package/dist/esm/endpoint/server/index.js +8 -0
  154. package/dist/esm/endpoint/server/index.js.map +6 -0
  155. package/dist/esm/endpoint/type/MutableEndpoint.d.ts.map +1 -1
  156. package/dist/esm/endpoint/type/MutableEndpoint.js +3 -0
  157. package/dist/esm/endpoint/type/MutableEndpoint.js.map +1 -1
  158. package/dist/esm/node/Node.d.ts +5 -0
  159. package/dist/esm/node/Node.d.ts.map +1 -1
  160. package/dist/esm/node/Node.js +17 -2
  161. package/dist/esm/node/Node.js.map +1 -1
  162. package/dist/esm/node/NodeLifecycle.d.ts +11 -1
  163. package/dist/esm/node/NodeLifecycle.d.ts.map +1 -1
  164. package/dist/esm/node/NodeLifecycle.js +15 -1
  165. package/dist/esm/node/NodeLifecycle.js.map +1 -1
  166. package/dist/esm/node/ServerNode.d.ts +3 -2
  167. package/dist/esm/node/ServerNode.d.ts.map +1 -1
  168. package/dist/esm/node/ServerNode.js +10 -10
  169. package/dist/esm/node/ServerNode.js.map +1 -1
  170. package/dist/esm/node/server/ServerEnvironment.js +1 -1
  171. package/dist/esm/node/server/ServerEnvironment.js.map +1 -1
  172. package/dist/esm/node/server/TransactionalInteractionServer.d.ts +2 -2
  173. package/dist/esm/node/server/TransactionalInteractionServer.d.ts.map +1 -1
  174. package/dist/esm/node/server/TransactionalInteractionServer.js +9 -4
  175. package/dist/esm/node/server/TransactionalInteractionServer.js.map +2 -2
  176. package/dist/esm/node/server/index.d.ts +0 -1
  177. package/dist/esm/node/server/index.d.ts.map +1 -1
  178. package/dist/esm/node/server/index.js +0 -1
  179. package/dist/esm/node/server/index.js.map +1 -1
  180. package/package.json +7 -7
  181. package/src/behavior/internal/BehaviorBacking.ts +9 -1
  182. package/src/behavior/internal/ClientBehaviorBacking.ts +6 -1
  183. package/src/behavior/internal/ServerBehaviorBacking.ts +51 -0
  184. package/src/behavior/system/events/EventsBehavior.ts +60 -0
  185. package/src/behavior/system/events/index.ts +7 -0
  186. package/src/behavior/system/network/ServerNetworkRuntime.ts +6 -0
  187. package/src/behaviors/administrator-commissioning/AdministratorCommissioningServer.ts +14 -4
  188. package/src/behaviors/general-diagnostics/GeneralDiagnosticsServer.ts +16 -9
  189. package/src/behaviors/operational-credentials/OperationalCredentialsServer.ts +26 -20
  190. package/src/endpoint/Agent.ts +1 -1
  191. package/src/endpoint/index.ts +1 -1
  192. package/src/endpoint/properties/Behaviors.ts +56 -28
  193. package/src/endpoint/properties/EndpointInitializer.ts +9 -3
  194. package/src/endpoint/server/BehaviorServer.ts +387 -0
  195. package/src/endpoint/{EndpointServer.ts → server/EndpointServer.ts} +50 -20
  196. package/src/{node → endpoint}/server/ServerEndpointInitializer.ts +7 -7
  197. package/src/endpoint/server/index.ts +8 -0
  198. package/src/endpoint/type/MutableEndpoint.ts +4 -0
  199. package/src/node/Node.ts +22 -4
  200. package/src/node/NodeLifecycle.ts +17 -1
  201. package/src/node/ServerNode.ts +11 -13
  202. package/src/node/server/ServerEnvironment.ts +1 -1
  203. package/src/node/server/TransactionalInteractionServer.ts +13 -7
  204. package/src/node/server/index.ts +0 -1
  205. package/dist/cjs/behavior/internal/ClusterServerBacking.d.ts +0 -36
  206. package/dist/cjs/behavior/internal/ClusterServerBacking.d.ts.map +0 -1
  207. package/dist/cjs/behavior/internal/ClusterServerBacking.js +0 -342
  208. package/dist/cjs/behavior/internal/ClusterServerBacking.js.map +0 -6
  209. package/dist/cjs/endpoint/EndpointServer.d.ts.map +0 -1
  210. package/dist/cjs/endpoint/EndpointServer.js.map +0 -6
  211. package/dist/cjs/node/server/ServerEndpointInitializer.d.ts.map +0 -1
  212. package/dist/cjs/node/server/ServerEndpointInitializer.js.map +0 -6
  213. package/dist/esm/behavior/internal/ClusterServerBacking.d.ts +0 -36
  214. package/dist/esm/behavior/internal/ClusterServerBacking.d.ts.map +0 -1
  215. package/dist/esm/behavior/internal/ClusterServerBacking.js +0 -330
  216. package/dist/esm/behavior/internal/ClusterServerBacking.js.map +0 -6
  217. package/dist/esm/endpoint/EndpointServer.d.ts.map +0 -1
  218. package/dist/esm/endpoint/EndpointServer.js.map +0 -6
  219. package/dist/esm/node/server/ServerEndpointInitializer.d.ts.map +0 -1
  220. package/dist/esm/node/server/ServerEndpointInitializer.js.map +0 -6
  221. package/src/behavior/internal/ClusterServerBacking.ts +0 -446
@@ -118,6 +118,9 @@ class Node extends import_Endpoint.Endpoint {
118
118
  * Bring the node online.
119
119
  */
120
120
  async start() {
121
+ await this.lifecycle.mutex.produce(this.startWithMutex.bind(this));
122
+ }
123
+ async startWithMutex() {
121
124
  this.env.runtime.add(this);
122
125
  try {
123
126
  await this.construction.ready;
@@ -152,6 +155,9 @@ class Node extends import_Endpoint.Endpoint {
152
155
  * Once the node is offline you may use {@link start} to bring the node online again.
153
156
  */
154
157
  async cancel() {
158
+ await this.lifecycle.mutex.produce(this.cancelWithMutex.bind(this));
159
+ }
160
+ async cancelWithMutex() {
155
161
  if (!this.#runtime) {
156
162
  return;
157
163
  }
@@ -160,11 +166,20 @@ class Node extends import_Endpoint.Endpoint {
160
166
  this.#runtime = void 0;
161
167
  }
162
168
  async close() {
169
+ await this.lifecycle.mutex.produce(this.closeWithMutex.bind(this));
170
+ }
171
+ async closeWithMutex() {
163
172
  if (this.#runtime) {
164
- await this.cancel();
173
+ await this.cancelWithMutex();
165
174
  }
166
175
  await super.close();
167
176
  }
177
+ async reset() {
178
+ await this.lifecycle.mutex.produce(this.resetWithMutex.bind(this));
179
+ }
180
+ async resetWithMutex() {
181
+ return super.reset();
182
+ }
168
183
  get [import_general.RuntimeService.label]() {
169
184
  return ["Runtime for", import_general.Diagnostic.strong(this.toString())];
170
185
  }
@@ -194,7 +209,7 @@ class Node extends import_Endpoint.Endpoint {
194
209
  logger.notice(import_general.Diagnostic.strong(this.toString()), message);
195
210
  }
196
211
  async [import_general.Construction.destruct]() {
197
- await this.cancel();
212
+ await this.cancelWithMutex();
198
213
  await super[import_general.Construction.destruct]();
199
214
  import_general.DiagnosticSource.delete(this);
200
215
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/node/Node.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["Node"]
6
6
  }
@@ -6,7 +6,7 @@
6
6
  import { ActionContext } from "#behavior/context/ActionContext.js";
7
7
  import { Endpoint } from "#endpoint/Endpoint.js";
8
8
  import { EndpointLifecycle } from "#endpoint/properties/EndpointLifecycle.js";
9
- import { AsyncObservable, Observable } from "#general";
9
+ import { AsyncObservable, Mutex, Observable } from "#general";
10
10
  /**
11
11
  * Extended lifecycle information that only applies to root endpoints.
12
12
  */
@@ -45,5 +45,15 @@ export declare class NodeLifecycle extends EndpointLifecycle {
45
45
  * Emits when node is no longer comissioned.
46
46
  */
47
47
  get decommissioned(): Observable<[context: ActionContext], void>;
48
+ /**
49
+ * Mutex for protecting node lifecycle transitions.
50
+ *
51
+ * Methods that implement complex async lifecycle transitions use this mutex to ensure conflicting operations cannot
52
+ * intermingle.
53
+ *
54
+ * Generally methods that hold this mutex have a protected "*WithMutex" variant. This allows for nesting of logic
55
+ * that requires the mutex without causing deadlock.
56
+ */
57
+ get mutex(): Mutex;
48
58
  }
49
59
  //# sourceMappingURL=NodeLifecycle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NodeLifecycle.d.ts","sourceRoot":"","sources":["../../../src/node/NodeLifecycle.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEvD;;GAEG;AACH,qBAAa,aAAc,SAAQ,iBAAiB;;gBAUpC,QAAQ,EAAE,QAAQ;IAoB9B;;OAEG;IACH,IAAI,QAAQ,YAEX;IAED;;OAEG;IACH,IAAI,MAAM,oDAET;IAED;;OAEG;IACH,IAAI,WAAW,gDAEd;IAED;;OAEG;IACH,IAAI,YAAY,oDAEf;IAED;;OAEG;IACH,IAAI,OAAO,+CAEV;IAED;;OAEG;IACH,IAAI,cAAc,YAEjB;IAED;;OAEG;IACH,IAAI,YAAY,+CAEf;IAED;;OAEG;IACH,IAAI,cAAc,+CAEjB;CACJ"}
1
+ {"version":3,"file":"NodeLifecycle.d.ts","sourceRoot":"","sources":["../../../src/node/NodeLifecycle.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE9D;;GAEG;AACH,qBAAa,aAAc,SAAQ,iBAAiB;;gBAWpC,QAAQ,EAAE,QAAQ;IAsB9B;;OAEG;IACH,IAAI,QAAQ,YAEX;IAED;;OAEG;IACH,IAAI,MAAM,oDAET;IAED;;OAEG;IACH,IAAI,WAAW,gDAEd;IAED;;OAEG;IACH,IAAI,YAAY,oDAEf;IAED;;OAEG;IACH,IAAI,OAAO,+CAEV;IAED;;OAEG;IACH,IAAI,cAAc,YAEjB;IAED;;OAEG;IACH,IAAI,YAAY,+CAEf;IAED;;OAEG;IACH,IAAI,cAAc,+CAEjB;IAED;;;;;;;;OAQG;IACH,IAAI,KAAK,UAER;CACJ"}
@@ -37,8 +37,10 @@ class NodeLifecycle extends import_EndpointLifecycle.EndpointLifecycle {
37
37
  #initialized = (0, import_general.Observable)();
38
38
  #isOnline = false;
39
39
  #isCommissioned = false;
40
+ #mutex;
40
41
  constructor(endpoint) {
41
42
  super(endpoint);
43
+ this.#mutex = new import_general.Mutex(endpoint);
42
44
  this.#online.on(() => {
43
45
  this.#isOnline = true;
44
46
  });
@@ -103,5 +105,17 @@ class NodeLifecycle extends import_EndpointLifecycle.EndpointLifecycle {
103
105
  get decommissioned() {
104
106
  return this.#decommissioned;
105
107
  }
108
+ /**
109
+ * Mutex for protecting node lifecycle transitions.
110
+ *
111
+ * Methods that implement complex async lifecycle transitions use this mutex to ensure conflicting operations cannot
112
+ * intermingle.
113
+ *
114
+ * Generally methods that hold this mutex have a protected "*WithMutex" variant. This allows for nesting of logic
115
+ * that requires the mutex without causing deadlock.
116
+ */
117
+ get mutex() {
118
+ return this.#mutex;
119
+ }
106
120
  }
107
121
  //# sourceMappingURL=NodeLifecycle.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/node/NodeLifecycle.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,+BAAkC;AAClC,qBAA4C;AAT5C;AAAA;AAAA;AAAA;AAAA;AAcO,MAAM,sBAAsB,2CAAkB;AAAA,EACjD,cAAU,gCAA0C;AAAA,EACpD,oBAAgB,gCAA0C;AAAA,EAC1D,eAAW,2BAAqC;AAAA,EAChD,oBAAgB,2BAAqC;AAAA,EACrD,sBAAkB,2BAAqC;AAAA,EACvD,mBAAe,2BAAsC;AAAA,EACrD,YAAY;AAAA,EACZ,kBAAkB;AAAA,EAElB,YAAY,UAAoB;AAC5B,UAAM,QAAQ;AAEd,SAAK,QAAQ,GAAG,MAAM;AAClB,WAAK,YAAY;AAAA,IACrB,CAAC;AACD,SAAK,SAAS,GAAG,MAAM;AACnB,WAAK,YAAY;AAAA,IACrB,CAAC;AACD,SAAK,cAAc,GAAG,MAAM;AACxB,WAAK,kBAAkB;AAAA,IAC3B,CAAC;AACD,SAAK,gBAAgB,GAAG,MAAM;AAC1B,WAAK,kBAAkB;AAAA,IAC3B,CAAC;AACD,SAAK,aAAa,GAAG,oBAAkB;AACnC,WAAK,kBAAkB;AAAA,IAC3B,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,WAAW;AACX,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,SAAS;AACT,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,cAAc;AACd,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,eAAe;AACf,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,UAAU;AACV,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,iBAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,eAAe;AACf,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,iBAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,+BAAkC;AAClC,qBAAmD;AATnD;AAAA;AAAA;AAAA;AAAA;AAcO,MAAM,sBAAsB,2CAAkB;AAAA,EACjD,cAAU,gCAA0C;AAAA,EACpD,oBAAgB,gCAA0C;AAAA,EAC1D,eAAW,2BAAqC;AAAA,EAChD,oBAAgB,2BAAqC;AAAA,EACrD,sBAAkB,2BAAqC;AAAA,EACvD,mBAAe,2BAAsC;AAAA,EACrD,YAAY;AAAA,EACZ,kBAAkB;AAAA,EAClB;AAAA,EAEA,YAAY,UAAoB;AAC5B,UAAM,QAAQ;AAEd,SAAK,SAAS,IAAI,qBAAM,QAAQ;AAEhC,SAAK,QAAQ,GAAG,MAAM;AAClB,WAAK,YAAY;AAAA,IACrB,CAAC;AACD,SAAK,SAAS,GAAG,MAAM;AACnB,WAAK,YAAY;AAAA,IACrB,CAAC;AACD,SAAK,cAAc,GAAG,MAAM;AACxB,WAAK,kBAAkB;AAAA,IAC3B,CAAC;AACD,SAAK,gBAAgB,GAAG,MAAM;AAC1B,WAAK,kBAAkB;AAAA,IAC3B,CAAC;AACD,SAAK,aAAa,GAAG,oBAAkB;AACnC,WAAK,kBAAkB;AAAA,IAC3B,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,WAAW;AACX,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,SAAS;AACT,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,cAAc;AACd,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,eAAe;AACf,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,UAAU;AACV,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,iBAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,eAAe;AACf,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,iBAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,IAAI,QAAQ;AACR,WAAO,KAAK;AAAA,EAChB;AACJ;",
5
5
  "names": []
6
6
  }
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import { CommissioningServer } from "#behavior/system/commissioning/CommissioningServer.js";
7
7
  import { ControllerBehavior } from "#behavior/system/controller/ControllerBehavior.js";
8
+ import { EventsBehavior } from "#behavior/system/events/EventsBehavior.js";
8
9
  import { NetworkServer } from "#behavior/system/network/NetworkServer.js";
9
10
  import { ServerNetworkRuntime } from "#behavior/system/network/ServerNetworkRuntime.js";
10
11
  import { ProductDescriptionServer } from "#behavior/system/product-description/ProductDescriptionServer.js";
@@ -51,12 +52,12 @@ export declare class ServerNode<T extends ServerNode.RootEndpoint = ServerNode.R
51
52
  static create<This extends typeof ServerNode<any>, T extends ServerNode.RootEndpoint = ServerNode.RootEndpoint>(this: This, config: Partial<Node.Configuration<T>>): Promise<ServerNode<T>>;
52
53
  protected createRuntime(): ServerNetworkRuntime;
53
54
  [Construction.destruct](): Promise<void>;
54
- reset(): Promise<void>;
55
55
  prepareRuntimeShutdown(): Promise<void>;
56
56
  /**
57
57
  * Perform a factory reset of the node.
58
58
  */
59
59
  erase(): Promise<void>;
60
+ protected eraseWithMutex(): Promise<void>;
60
61
  /**
61
62
  * Access other nodes on the fabric.
62
63
  */
@@ -122,7 +123,7 @@ export declare namespace ServerNode {
122
123
  readonly operationalCredentials: typeof import("../behaviors/index.js").OperationalCredentialsServer;
123
124
  } & {
124
125
  readonly generalDiagnostics: typeof import("../behaviors/index.js").GeneralDiagnosticsServer;
125
- }, readonly [typeof CommissioningServer, typeof NetworkServer, typeof ProductDescriptionServer, typeof SessionsBehavior, typeof ControllerBehavior]>>;
126
+ }, readonly [typeof CommissioningServer, typeof NetworkServer, typeof ProductDescriptionServer, typeof SessionsBehavior, typeof EventsBehavior, typeof ControllerBehavior]>>;
126
127
  interface RootEndpoint extends Identity<typeof RootEndpoint> {
127
128
  }
128
129
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ServerNode.d.ts","sourceRoot":"","sources":["../../../src/node/ServerNode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAE,MAAM,kEAAkE,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAIjF,OAAO,EAAE,YAAY,EAAoB,QAAQ,EAAkC,MAAM,UAAU,CAAC;AAGpG,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AActD;;;;GAIG;AACH,qBAAa,UAAU,CAAC,CAAC,SAAS,UAAU,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAE,SAAQ,IAAI,CAAC,CAAC,CAAC;;IAGhG;;;;;;;OAOG;gBACS,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAE/C;;;;;;OAMG;gBACS,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAYlD;;;;;OAKG;WACU,MAAM,CACf,IAAI,SAAS,OAAO,UAAU,CAAC,GAAG,CAAC,EACnC,CAAC,SAAS,UAAU,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,EAC7D,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAE1E;;;;OAIG;WACU,MAAM,CACf,IAAI,SAAS,OAAO,UAAU,CAAC,GAAG,CAAC,EACnC,CAAC,SAAS,UAAU,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,EAC7D,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAS7E,SAAS,CAAC,aAAa,IAAI,oBAAoB;IAIhC,CAAC,YAAY,CAAC,QAAQ,CAAC;IAKvB,KAAK;IAOL,sBAAsB;IAKrC;;OAEG;IACY,KAAK;IAkCpB;;OAEG;IACH,IAAI,KAAK,gBAOR;IAEK,YAAY;cAIO,UAAU;IAMnC;;;;;;;OAOG;cACa,YAAY;IAO5B;;;OAGG;cACgB,mBAAmB;CACzC;AAED,yBAAiB,UAAU,CAAC;IACjB,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yJAMxB,CAAC;IAEF,UAAiB,YAAa,SAAQ,QAAQ,CAAC,OAAO,YAAY,CAAC;KAAG;CACzE"}
1
+ {"version":3,"file":"ServerNode.d.ts","sourceRoot":"","sources":["../../../src/node/ServerNode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAE,MAAM,kEAAkE,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAGjF,OAAO,EAAE,YAAY,EAAoB,QAAQ,EAAkC,MAAM,UAAU,CAAC;AAGpG,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AActD;;;;GAIG;AACH,qBAAa,UAAU,CAAC,CAAC,SAAS,UAAU,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAE,SAAQ,IAAI,CAAC,CAAC,CAAC;;IAGhG;;;;;;;OAOG;gBACS,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAE/C;;;;;;OAMG;gBACS,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAYlD;;;;;OAKG;WACU,MAAM,CACf,IAAI,SAAS,OAAO,UAAU,CAAC,GAAG,CAAC,EACnC,CAAC,SAAS,UAAU,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,EAC7D,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAE1E;;;;OAIG;WACU,MAAM,CACf,IAAI,SAAS,OAAO,UAAU,CAAC,GAAG,CAAC,EACnC,CAAC,SAAS,UAAU,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,EAC7D,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAS7E,SAAS,CAAC,aAAa,IAAI,oBAAoB;IAIhC,CAAC,YAAY,CAAC,QAAQ,CAAC;IAKvB,sBAAsB;IAKrC;;OAEG;IACY,KAAK;cAIJ,cAAc;IAkC9B;;OAEG;IACH,IAAI,KAAK,gBAOR;IAEK,YAAY;cAIO,UAAU;IAMnC;;;;;;;OAOG;cACa,YAAY;IAO5B;;;OAGG;cACgB,mBAAmB;CACzC;AAED,yBAAiB,UAAU,CAAC;IACjB,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gLAOxB,CAAC;IAEF,UAAiB,YAAa,SAAQ,QAAQ,CAAC,OAAO,YAAY,CAAC;KAAG;CACzE"}
@@ -23,11 +23,11 @@ __export(ServerNode_exports, {
23
23
  module.exports = __toCommonJS(ServerNode_exports);
24
24
  var import_CommissioningServer = require("#behavior/system/commissioning/CommissioningServer.js");
25
25
  var import_ControllerBehavior = require("#behavior/system/controller/ControllerBehavior.js");
26
+ var import_EventsBehavior = require("#behavior/system/events/EventsBehavior.js");
26
27
  var import_NetworkServer = require("#behavior/system/network/NetworkServer.js");
27
28
  var import_ServerNetworkRuntime = require("#behavior/system/network/ServerNetworkRuntime.js");
28
29
  var import_ProductDescriptionServer = require("#behavior/system/product-description/ProductDescriptionServer.js");
29
30
  var import_SessionsBehavior = require("#behavior/system/sessions/SessionsBehavior.js");
30
- var import_EndpointServer = require("#endpoint/EndpointServer.js");
31
31
  var import_general = require("#general");
32
32
  var import_protocol = require("#protocol");
33
33
  var import_root = require("../endpoints/root.js");
@@ -64,10 +64,6 @@ class ServerNode extends import_Node.Node {
64
64
  await super[import_general.Construction.destruct]();
65
65
  await import_ServerEnvironment.ServerEnvironment.close(this);
66
66
  }
67
- async reset() {
68
- await super.reset();
69
- await import_EndpointServer.EndpointServer.forEndpoint(this)[Symbol.asyncDispose]();
70
- }
71
67
  async prepareRuntimeShutdown() {
72
68
  const sessions = this.env.get(import_protocol.SessionManager);
73
69
  await sessions.close();
@@ -76,18 +72,21 @@ class ServerNode extends import_Node.Node {
76
72
  * Perform a factory reset of the node.
77
73
  */
78
74
  async erase() {
75
+ await this.lifecycle.mutex.produce(this.eraseWithMutex.bind(this));
76
+ }
77
+ async eraseWithMutex() {
79
78
  try {
80
79
  await this.construction;
81
80
  const isOnline = this.lifecycle.isOnline;
82
81
  if (isOnline) {
83
- await this.cancel();
82
+ await this.cancelWithMutex();
84
83
  }
85
84
  this.statusUpdate("resetting to factory defaults");
86
- await this.reset();
85
+ await this.resetWithMutex();
87
86
  await this.resetStorage();
88
87
  this.construction.start();
89
88
  if (isOnline) {
90
- await this.start();
89
+ await this.startWithMutex();
91
90
  } else {
92
91
  await this.construction.ready;
93
92
  }
@@ -124,7 +123,7 @@ class ServerNode extends import_Node.Node {
124
123
  async resetStorage() {
125
124
  await this.env.get(import_protocol.SessionManager).clear();
126
125
  await this.env.get(import_protocol.FabricManager).clear();
127
- await this.env.get(import_protocol.EventHandler).clear();
126
+ await this.env.get(import_protocol.OccurrenceManager).clear();
128
127
  await this.env.get(import_ServerNodeStore.ServerNodeStore).erase();
129
128
  }
130
129
  /**
@@ -140,6 +139,7 @@ class ServerNode extends import_Node.Node {
140
139
  import_NetworkServer.NetworkServer,
141
140
  import_ProductDescriptionServer.ProductDescriptionServer,
142
141
  import_SessionsBehavior.SessionsBehavior,
142
+ import_EventsBehavior.EventsBehavior,
143
143
  import_ControllerBehavior.ControllerBehavior
144
144
  );
145
145
  })(ServerNode || (ServerNode = {}));
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/node/ServerNode.ts"],
4
- "mappings": "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",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,iCAAoC;AACpC,gCAAmC;AACnC,4BAA+B;AAC/B,2BAA8B;AAC9B,kCAAqC;AACrC,sCAAyC;AACzC,8BAAiC;AAGjC,qBAAyF;AACzF,sBAAiE;AACjE,kBAAiD;AACjD,kBAAqB;AACrB,yBAA4B;AAC5B,+BAAkC;AAClC,6BAAgC;AArBhC;AAAA;AAAA;AAAA;AAAA;AA0BA,MAAM,0BAA0B,2BAAY;AAAA,EACxC,YAAY,SAAiB,OAAY;AACrC,UAAM,OAAO;AACb,SAAK,YAAQ,wBAAQ,KAAK;AAAA,EAC9B;AACJ;AAOO,MAAM,mBAAgF,iBAAQ;AAAA,EACjG;AAAA,EAqBA,YAAY,YAAwC,SAA2B;AAC3E,UAAM,iBAAK,cAAc,WAAW,cAAmB,YAAY,OAAO,CAAC;AAE3E,SAAK,IAAI,IAAI,YAAY,IAAI;AAE7B,oCAAiB,IAAI,IAAI;AAEzB,SAAK,aAAa,MAAM;AAAA,EAC5B;AAAA,EAuBA,aAAa,OAGC,YAAwC,SAA2B;AAC7E,WAAO,UAAM,yBAAS,MAAM,YAAY,OAAO;AAAA,EACnD;AAAA,EAEU,gBAAsC;AAC5C,WAAO,IAAI,iDAAqB,IAAI;AAAA,EACxC;AAAA,EAEA,OAAgB,4BAAa,QAAQ,IAAI;AACrC,UAAM,MAAM,4BAAa,QAAQ,EAAE;AACnC,UAAM,2CAAkB,MAAM,IAAI;AAAA,EACtC;AAAA,EAEA,MAAe,yBAAyB;AACpC,UAAM,WAAW,KAAK,IAAI,IAAI,8BAAc;AAC5C,UAAM,SAAS,MAAM;AAAA,EACzB;AAAA;AAAA;AAAA;AAAA,EAKA,MAAe,QAAQ;AACnB,UAAM,KAAK,UAAU,MAAM,QAAQ,KAAK,eAAe,KAAK,IAAI,CAAC;AAAA,EACrE;AAAA,EAEA,MAAgB,iBAAiB;AAC7B,QAAI;AACA,YAAM,KAAK;AAGX,YAAM,WAAW,KAAK,UAAU;AAChC,UAAI,UAAU;AACV,cAAM,KAAK,gBAAgB;AAAA,MAC/B;AAGA,WAAK,aAAa,+BAA+B;AAGjD,YAAM,KAAK,eAAe;AAG1B,YAAM,KAAK,aAAa;AAGxB,WAAK,aAAa,MAAM;AAGxB,UAAI,UAAU;AACV,cAAM,KAAK,eAAe;AAAA,MAC9B,OAAO;AACH,cAAM,KAAK,aAAa;AAAA,MAC5B;AAAA,IACJ,SAAS,GAAG;AACR,WAAK,aAAa,MAAM;AACxB,YAAM,IAAI,kBAAkB,iCAAiC,IAAI,IAAI,CAAC;AAAA,IAC1E;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,QAAQ;AACR,QAAI,CAAC,KAAK,QAAQ;AACd,WAAK,SAAS,IAAI,+BAAY,IAAI;AAClC,WAAK,OAAO,WAAW;AAAA,IAC3B;AAEA,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,MAAM,eAAe;AACjB,UAAM,KAAK,IAAI,gBAAgB,IAAI,KAAK,WAAS,MAAM,IAAI,kCAAa,EAAE,aAAa,CAAC;AAAA,EAC5F;AAAA,EAEA,MAAyB,aAAa;AAClC,UAAM,2CAAkB,WAAW,IAAI;AAEvC,UAAM,MAAM,WAAW;AAAA,EAC3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,MAAgB,eAAe;AAC3B,UAAM,KAAK,IAAI,IAAI,8BAAc,EAAE,MAAM;AACzC,UAAM,KAAK,IAAI,IAAI,6BAAa,EAAE,MAAM;AACxC,UAAM,KAAK,IAAI,IAAI,iCAAiB,EAAE,MAAM;AAC5C,UAAM,KAAK,IAAI,IAAI,sCAAe,EAAE,MAAM;AAAA,EAC9C;AAAA;AAAA;AAAA;AAAA;AAAA,EAMmB,sBAAsB;AAAA,EAAC;AAC9C;AAAA,CAEO,CAAUA,gBAAV;AACI,EAAMA,YAAA,eAAe,YAAAC,aAAiB;AAAA,IACzC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ;AAAA,GARa;",
5
5
  "names": ["ServerNode", "BaseRootEndpoint"]
6
6
  }
@@ -24,8 +24,8 @@ module.exports = __toCommonJS(ServerEnvironment_exports);
24
24
  var import_endpoint = require("#endpoint/index.js");
25
25
  var import_ServerNodeStore = require("#node/storage/ServerNodeStore.js");
26
26
  var import_protocol = require("#protocol");
27
+ var import_ServerEndpointInitializer = require("../../endpoint/server/ServerEndpointInitializer.js");
27
28
  var import_IdentityService = require("./IdentityService.js");
28
- var import_ServerEndpointInitializer = require("./ServerEndpointInitializer.js");
29
29
  /**
30
30
  * @license
31
31
  * Copyright 2022-2024 Matter.js Authors
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/server/ServerEnvironment.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,sBAAoC;AAEpC,6BAAgC;AAChC,sBAA8C;AAC9C,6BAAgC;AAChC,uCAA0C;AAX1C;AAAA;AAAA;AAAA;AAAA;AAgBO,IAAU;AAAA,CAAV,CAAUA,uBAAV;AACH,iBAAsB,WAAW,MAAkB;AAC/C,UAAM,EAAE,IAAI,IAAI;AAGhB,QAAI,IAAI,wCAAiB,MAAM,uCAAgB,OAAO,KAAK,KAAK,EAAE,CAAC;AACnE,QAAI,IAAI,qCAAqB,IAAI,2DAA0B,GAAG,CAAC;AAC/D,QAAI,IAAI,wCAAiB,IAAI,uCAAgB,IAAI,CAAC;AAGlD,UAAM,IAAI,KAAK,6BAAa;AAC5B,UAAM,IAAI,KAAK,8BAAc;AAAA,EACjC;AAXA,EAAAA,mBAAsB;AAatB,iBAAsB,MAAM,MAAkB;AAC1C,UAAM,EAAE,IAAI,IAAI;AAEhB,QAAI,MAAM,6BAAa;AACvB,UAAM,IAAI,MAAM,8BAAc;AAC9B,UAAM,IAAI,MAAM,sCAAe;AAAA,EACnC;AANA,EAAAA,mBAAsB;AAAA,GAdT;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,sBAAoC;AAEpC,6BAAgC;AAChC,sBAA8C;AAC9C,uCAA0C;AAC1C,6BAAgC;AAXhC;AAAA;AAAA;AAAA;AAAA;AAgBO,IAAU;AAAA,CAAV,CAAUA,uBAAV;AACH,iBAAsB,WAAW,MAAkB;AAC/C,UAAM,EAAE,IAAI,IAAI;AAGhB,QAAI,IAAI,wCAAiB,MAAM,uCAAgB,OAAO,KAAK,KAAK,EAAE,CAAC;AACnE,QAAI,IAAI,qCAAqB,IAAI,2DAA0B,GAAG,CAAC;AAC/D,QAAI,IAAI,wCAAiB,IAAI,uCAAgB,IAAI,CAAC;AAGlD,UAAM,IAAI,KAAK,6BAAa;AAC5B,UAAM,IAAI,KAAK,8BAAc;AAAA,EACjC;AAXA,EAAAA,mBAAsB;AAatB,iBAAsB,MAAM,MAAkB;AAC1C,UAAM,EAAE,IAAI,IAAI;AAEhB,QAAI,MAAM,6BAAa;AACvB,UAAM,IAAI,MAAM,8BAAc;AAC9B,UAAM,IAAI,MAAM,sCAAe;AAAA,EACnC;AANA,EAAAA,mBAAsB;AAAA,GAdT;",
5
5
  "names": ["ServerEnvironment"]
6
6
  }
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { Endpoint } from "#endpoint/Endpoint.js";
7
- import { AnyAttributeServer, AnyEventServer, AttributePath, AttributeServer, CommandPath, CommandServer, EndpointInterface, EventPath, EventStorageData, InteractionContext, InteractionServer, Message, MessageExchange, SessionManager, WriteRequest, WriteResponse } from "#protocol";
7
+ import { AnyAttributeServer, AnyEventServer, AttributePath, AttributeServer, CommandPath, CommandServer, EndpointInterface, EventPath, InteractionContext, InteractionServer, Message, MessageExchange, NumberedOccurrence, SessionManager, WriteRequest, WriteResponse } from "#protocol";
8
8
  import { TlvEventFilter, TypeFromSchema } from "#types";
9
9
  import { AccessControlServer } from "../../behaviors/access-control/AccessControlServer.js";
10
10
  import { ServerNode } from "../ServerNode.js";
@@ -32,7 +32,7 @@ export declare class TransactionalInteractionServer extends InteractionServer {
32
32
  version: number;
33
33
  value: any;
34
34
  }>;
35
- protected readEvent(path: EventPath, eventFilters: TypeFromSchema<typeof TlvEventFilter>[] | undefined, event: AnyEventServer<any, any>, exchange: MessageExchange, fabricFiltered: boolean, message: Message, endpoint: EndpointInterface): Promise<EventStorageData<any>[]>;
35
+ protected readEvent(path: EventPath, eventFilters: TypeFromSchema<typeof TlvEventFilter>[] | undefined, event: AnyEventServer<any, any>, exchange: MessageExchange, fabricFiltered: boolean, message: Message, endpoint: EndpointInterface): Promise<NumberedOccurrence[]>;
36
36
  handleWriteRequest(exchange: MessageExchange, writeRequest: WriteRequest, message: Message): Promise<WriteResponse>;
37
37
  protected writeAttribute(path: AttributePath, attribute: AttributeServer<any>, value: any, exchange: MessageExchange, message: Message, endpoint: EndpointInterface, timed?: boolean, isListWrite?: boolean): Promise<void>;
38
38
  protected invokeCommand(path: CommandPath, command: CommandServer<any, any>, exchange: MessageExchange, commandFields: any, message: Message, endpoint: EndpointInterface, timed?: boolean): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionalInteractionServer.d.ts","sourceRoot":"","sources":["../../../../src/node/server/TransactionalInteractionServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAIjD,OAAO,EAEH,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAEhB,kBAAkB,EAElB,iBAAiB,EAEjB,OAAO,EACP,eAAe,EACf,cAAc,EACd,YAAY,EACZ,aAAa,EAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAa9C;;;;;;;;;;;GAWG;AACH,qBAAa,8BAA+B,SAAQ,iBAAiB;;WASpD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,cAAc;gBAa7E,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,kBAAkB;IA0B9E,CAAC,MAAM,CAAC,YAAY,CAAC;IAM3B,gBAAgB;IAID,aAAa,CAAC,QAAQ,EAAE,eAAe;IAiBtD,IAAI,SAAS,wBASZ;cAEwB,aAAa,CAClC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAClC,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,UAAQ;;;;cAsBM,SAAS,CAC9B,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,cAAc,CAAC,OAAO,cAAc,CAAC,EAAE,GAAG,SAAS,EACjE,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,EAC/B,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;IAsBpB,kBAAkB,CAC7B,QAAQ,EAAE,eAAe,EACzB,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,GACjB,OAAO,CAAC,aAAa,CAAC;cAkCA,cAAc,CACnC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,EAC/B,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ,EACb,WAAW,CAAC,EAAE,OAAO;cAoCA,aAAa,CAClC,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAChC,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,GAAG,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ;;;;yBA/Ib,QAAE;;CAkLT"}
1
+ {"version":3,"file":"TransactionalInteractionServer.d.ts","sourceRoot":"","sources":["../../../../src/node/server/TransactionalInteractionServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAIjD,OAAO,EAEH,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,SAAS,EAET,kBAAkB,EAElB,iBAAiB,EAEjB,OAAO,EACP,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,aAAa,EAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAa9C;;;;;;;;;;;GAWG;AACH,qBAAa,8BAA+B,SAAQ,iBAAiB;;WASpD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,cAAc;gBAa7E,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,kBAAkB;IA8B9E,CAAC,MAAM,CAAC,YAAY,CAAC;IAO3B,gBAAgB;IAID,aAAa,CAAC,QAAQ,EAAE,eAAe;IAiBtD,IAAI,SAAS,wBASZ;cAEwB,aAAa,CAClC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAClC,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,UAAQ;;;;cAsBM,SAAS,CAC9B,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,cAAc,CAAC,OAAO,cAAc,CAAC,EAAE,GAAG,SAAS,EACjE,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,EAC/B,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,GAC5B,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAsBjB,kBAAkB,CAC7B,QAAQ,EAAE,eAAe,EACzB,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,GACjB,OAAO,CAAC,aAAa,CAAC;cAkCA,cAAc,CACnC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,EAC/B,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ,EACb,WAAW,CAAC,EAAE,OAAO;cAoCA,aAAa,CAClC,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAChC,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,GAAG,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,UAAQ;;;;yBAzJ2C,QAAO;;CA6LtE"}
@@ -71,8 +71,8 @@ var import_NodeActivity = require("#behavior/context/NodeActivity.js");
71
71
  var import_OfflineContext = require("#behavior/context/server/OfflineContext.js");
72
72
  var import_OnlineContext = require("#behavior/context/server/OnlineContext.js");
73
73
  var import_access_control = require("#clusters/access-control");
74
- var import_EndpointServer = require("#endpoint/EndpointServer.js");
75
74
  var import_EndpointLifecycle = require("#endpoint/properties/EndpointLifecycle.js");
75
+ var import_EndpointServer = require("#endpoint/server/EndpointServer.js");
76
76
  var import_general = require("#general");
77
77
  var import_protocol = require("#protocol");
78
78
  var import_AccessControlServer = require("../../behaviors/access-control/AccessControlServer.js");
@@ -110,11 +110,14 @@ class TransactionalInteractionServer extends import_protocol.InteractionServer {
110
110
  this.#endpoint = endpoint;
111
111
  this.#endpointStructure = structure;
112
112
  this.#updateStructure();
113
- this.#changeListener = (type) => {
113
+ this.#changeListener = (type, endpoint2) => {
114
114
  switch (type) {
115
+ case import_EndpointLifecycle.EndpointLifecycle.Change.ServersChanged:
116
+ import_EndpointServer.EndpointServer.forEndpoint(endpoint2).updateServers();
117
+ this.#updateStructure();
118
+ break;
115
119
  case import_EndpointLifecycle.EndpointLifecycle.Change.PartsReady:
116
120
  case import_EndpointLifecycle.EndpointLifecycle.Change.ClientsChanged:
117
- case import_EndpointLifecycle.EndpointLifecycle.Change.ServersChanged:
118
121
  case import_EndpointLifecycle.EndpointLifecycle.Change.Destroyed:
119
122
  this.#updateStructure();
120
123
  break;
@@ -126,6 +129,7 @@ class TransactionalInteractionServer extends import_protocol.InteractionServer {
126
129
  this.#endpoint.lifecycle.changed.off(this.#changeListener);
127
130
  await this.close();
128
131
  this.#endpointStructure.close();
132
+ await import_EndpointServer.EndpointServer.forEndpoint(this.#endpoint)[Symbol.asyncDispose]();
129
133
  }
130
134
  blockNewActivity() {
131
135
  this.#newActivityBlocked = true;
@@ -271,7 +275,8 @@ class TransactionalInteractionServer extends import_protocol.InteractionServer {
271
275
  }
272
276
  #updateStructure() {
273
277
  if (this.#endpoint.lifecycle.isPartsReady) {
274
- this.#endpointStructure.initializeFromEndpoint(import_EndpointServer.EndpointServer.forEndpoint(this.#endpoint));
278
+ const server = import_EndpointServer.EndpointServer.forEndpoint(this.#endpoint);
279
+ this.#endpointStructure.initializeFromEndpoint(server);
275
280
  }
276
281
  }
277
282
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/server/TransactionalInteractionServer.ts"],
4
- "mappings": "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",
5
- "names": []
4
+ "mappings": "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",
5
+ "names": ["endpoint"]
6
6
  }
@@ -3,6 +3,5 @@
3
3
  * Copyright 2022-2024 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- export * from "./ServerEndpointInitializer.js";
7
6
  export * from "./TransactionalInteractionServer.js";
8
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/node/server/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/node/server/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,qCAAqC,CAAC"}
@@ -15,7 +15,6 @@ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "defau
15
15
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
16
  var server_exports = {};
17
17
  module.exports = __toCommonJS(server_exports);
18
- __reExport(server_exports, require("./ServerEndpointInitializer.js"), module.exports);
19
18
  __reExport(server_exports, require("./TransactionalInteractionServer.js"), module.exports);
20
19
  /**
21
20
  * @license
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/node/server/index.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,2BAAc,2CANd;AAOA,2BAAc,gDAPd;AAAA;AAAA;AAAA;AAAA;AAAA;",
4
+ "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,2BAAc,gDANd;AAAA;AAAA;AAAA;AAAA;AAAA;",
5
5
  "names": []
6
6
  }
@@ -3,8 +3,9 @@
3
3
  * Copyright 2022-2024 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { type Agent } from "#endpoint/Agent.js";
6
+ import type { Agent } from "#endpoint/Agent.js";
7
7
  import type { Endpoint } from "#endpoint/Endpoint.js";
8
+ import type { SupportedElements } from "#endpoint/properties/Behaviors.js";
8
9
  import { Construction, EventEmitter, Lifecycle, MaybePromise, Observable } from "#general";
9
10
  import type { Behavior } from "../Behavior.js";
10
11
  import { Reactor } from "../Reactor.js";
@@ -74,6 +75,10 @@ export declare abstract class BehaviorBacking {
74
75
  * A read-only offline view of behavior state.
75
76
  */
76
77
  get stateView(): {};
78
+ /**
79
+ * Supported elements.
80
+ */
81
+ abstract readonly elements: SupportedElements | undefined;
77
82
  /**
78
83
  * Install a reactor.
79
84
  */
@@ -1 +1 @@
1
- {"version":3,"file":"BehaviorBacking.d.ts","sourceRoot":"","sources":["../../../../src/behavior/internal/BehaviorBacking.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAuB,SAAS,EAAU,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACxH,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,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO;IAe/E,QAAQ;IAIR,IAAI,IAAI,0CAEP;IAED;;;;OAIG;IACH,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,KAAK;IAoBrC;;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,gDAMb;IAED,SAAS,KAAK,iBAAiB,IAAI,UAAU,CAAC,OAAO,CAUpD;IAED;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC;IAErD;;OAEG;IACH,WAAW;IAQX;;OAEG;IACH,IAAI,MAAM,iBAKT;IAED;;OAEG;IACH,IAAI,MAAM,qBAET;IAED;;OAEG;IACH,IAAI,SAAS,OAEZ;IAED;;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;CAyChC"}
1
+ {"version":3,"file":"BehaviorBacking.d.ts","sourceRoot":"","sources":["../../../../src/behavior/internal/BehaviorBacking.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,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,EAAE,YAAY,EAAE,YAAY,EAAuB,SAAS,EAAU,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAExH,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,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO;IAe/E,QAAQ;IAIR,IAAI,IAAI,0CAEP;IAED;;;;OAIG;IACH,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,KAAK;IAoBrC;;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,gDAMb;IAED,SAAS,KAAK,iBAAiB,IAAI,UAAU,CAAC,OAAO,CAWpD;IAED;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC;IAErD;;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;CAyChC"}
@@ -130,7 +130,8 @@ class BehaviorBacking {
130
130
  events: this.events,
131
131
  defaults: this.#endpoint.behaviors.defaultsFor(this.type),
132
132
  store: this.store,
133
- owner: this.#endpoint
133
+ owner: this.#endpoint,
134
+ cluster: this.type.schema?.tag === "cluster" ? this.type.schema.id : void 0
134
135
  };
135
136
  }
136
137
  /**
@@ -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
  }
@@ -6,7 +6,7 @@
6
6
  import { Behavior } from "#behavior/Behavior.js";
7
7
  import { Datasource } from "#behavior/state/managed/Datasource.js";
8
8
  import { Endpoint } from "#endpoint/Endpoint.js";
9
- import { EndpointStore } from "#endpoint/index.js";
9
+ import { EndpointStore, SupportedElements } from "#endpoint/index.js";
10
10
  import { BehaviorBacking } from "./BehaviorBacking.js";
11
11
  /**
12
12
  * This class backs the client implementation of a behavior.
@@ -14,5 +14,6 @@ import { BehaviorBacking } from "./BehaviorBacking.js";
14
14
  export declare class ClientBehaviorBacking extends BehaviorBacking {
15
15
  protected store: Datasource.Store | undefined;
16
16
  constructor(endpoint: Endpoint, behavior: Behavior.Type, endpointStore: EndpointStore, options?: Behavior.Options);
17
+ get elements(): SupportedElements | undefined;
17
18
  }
18
19
  //# sourceMappingURL=ClientBehaviorBacking.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClientBehaviorBacking.d.ts","sourceRoot":"","sources":["../../../../src/behavior/internal/ClientBehaviorBacking.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;IACtD,UAAmB,KAAK,EAAE,UAAU,CAAC,KAAK,GAAG,SAAS,CAAC;gBAE3C,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO;CAKpH"}
1
+ {"version":3,"file":"ClientBehaviorBacking.d.ts","sourceRoot":"","sources":["../../../../src/behavior/internal/ClientBehaviorBacking.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;IACtD,UAAmB,KAAK,EAAE,UAAU,CAAC,KAAK,GAAG,SAAS,CAAC;gBAE3C,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO;IAMjH,IAAI,QAAQ,IAAI,iBAAiB,GAAG,SAAS,CAE5C;CACJ"}
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2024 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { NotImplementedError } from "@matter/general";
6
7
  import { BehaviorBacking } from "./BehaviorBacking.js";
7
8
  class ClientBehaviorBacking extends BehaviorBacking {
8
9
  store;
@@ -10,6 +11,9 @@ class ClientBehaviorBacking extends BehaviorBacking {
10
11
  super(endpoint, behavior, options);
11
12
  this.store = endpointStore.storeForBehavior(behavior.id);
12
13
  }
14
+ get elements() {
15
+ throw new NotImplementedError();
16
+ }
13
17
  }
14
18
  export {
15
19
  ClientBehaviorBacking
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/behavior/internal/ClientBehaviorBacking.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,SAAS,uBAAuB;AAKzB,MAAM,8BAA8B,gBAAgB;AAAA,EACpC;AAAA,EAEnB,YAAY,UAAoB,UAAyB,eAA8B,SAA4B;AAC/G,UAAM,UAAU,UAAU,OAAO;AAEjC,SAAK,QAAQ,cAAc,iBAAiB,SAAS,EAAE;AAAA,EAC3D;AACJ;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,SAAS,2BAA2B;AACpC,SAAS,uBAAuB;AAKzB,MAAM,8BAA8B,gBAAgB;AAAA,EACpC;AAAA,EAEnB,YAAY,UAAoB,UAAyB,eAA8B,SAA4B;AAC/G,UAAM,UAAU,UAAU,OAAO;AAEjC,SAAK,QAAQ,cAAc,iBAAiB,SAAS,EAAE;AAAA,EAC3D;AAAA,EAEA,IAAI,WAA0C;AAC1C,UAAM,IAAI,oBAAoB;AAAA,EAClC;AACJ;",
5
5
  "names": []
6
6
  }
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2024 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import type { SupportedElements } from "#endpoint/index.js";
6
7
  import { Behavior } from "../Behavior.js";
7
8
  import { Datasource } from "../state/managed/Datasource.js";
8
9
  import { BehaviorBacking } from "./BehaviorBacking.js";
@@ -12,6 +13,7 @@ import { BehaviorBacking } from "./BehaviorBacking.js";
12
13
  export declare class ServerBehaviorBacking extends BehaviorBacking {
13
14
  #private;
14
15
  get store(): Datasource.Store;
16
+ get elements(): SupportedElements | undefined;
15
17
  protected invokeInitializer(behavior: Behavior, options?: Behavior.Options): PromiseLike<void> | undefined;
16
18
  }
17
19
  //# sourceMappingURL=ServerBehaviorBacking.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerBehaviorBacking.d.ts","sourceRoot":"","sources":["../../../../src/behavior/internal/ServerBehaviorBacking.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;;IAGtD,IAAa,KAAK,qBAOjB;cAEkB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO;CA6CtF"}
1
+ {"version":3,"file":"ServerBehaviorBacking.d.ts","sourceRoot":"","sources":["../../../../src/behavior/internal/ServerBehaviorBacking.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAK5D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAIvD;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;;IAItD,IAAa,KAAK,qBAOjB;IAED,IAAI,QAAQ,kCAEX;cAEkB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO;CAoFtF"}