@project-chip/matter.js 0.15.4 → 0.15.5

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 (42) hide show
  1. package/dist/cjs/CommissioningController.d.ts +1 -1
  2. package/dist/cjs/CommissioningController.d.ts.map +1 -1
  3. package/dist/cjs/CommissioningController.js +9 -18
  4. package/dist/cjs/CommissioningController.js.map +1 -1
  5. package/dist/cjs/MatterController.d.ts.map +1 -1
  6. package/dist/cjs/MatterController.js +2 -2
  7. package/dist/cjs/MatterController.js.map +1 -1
  8. package/dist/cjs/device/CachedClientNodeStore.d.ts +4 -3
  9. package/dist/cjs/device/CachedClientNodeStore.d.ts.map +1 -1
  10. package/dist/cjs/device/CachedClientNodeStore.js +19 -2
  11. package/dist/cjs/device/CachedClientNodeStore.js.map +1 -1
  12. package/dist/cjs/device/Endpoint.d.ts +1 -1
  13. package/dist/cjs/device/Endpoint.d.ts.map +1 -1
  14. package/dist/cjs/device/Endpoint.js.map +1 -1
  15. package/dist/cjs/device/PairedNode.d.ts +52 -28
  16. package/dist/cjs/device/PairedNode.d.ts.map +1 -1
  17. package/dist/cjs/device/PairedNode.js +196 -77
  18. package/dist/cjs/device/PairedNode.js.map +1 -1
  19. package/dist/esm/CommissioningController.d.ts +1 -1
  20. package/dist/esm/CommissioningController.d.ts.map +1 -1
  21. package/dist/esm/CommissioningController.js +9 -18
  22. package/dist/esm/CommissioningController.js.map +1 -1
  23. package/dist/esm/MatterController.d.ts.map +1 -1
  24. package/dist/esm/MatterController.js +2 -3
  25. package/dist/esm/MatterController.js.map +1 -1
  26. package/dist/esm/device/CachedClientNodeStore.d.ts +4 -3
  27. package/dist/esm/device/CachedClientNodeStore.d.ts.map +1 -1
  28. package/dist/esm/device/CachedClientNodeStore.js +19 -2
  29. package/dist/esm/device/CachedClientNodeStore.js.map +1 -1
  30. package/dist/esm/device/Endpoint.d.ts +1 -1
  31. package/dist/esm/device/Endpoint.d.ts.map +1 -1
  32. package/dist/esm/device/Endpoint.js.map +1 -1
  33. package/dist/esm/device/PairedNode.d.ts +52 -28
  34. package/dist/esm/device/PairedNode.d.ts.map +1 -1
  35. package/dist/esm/device/PairedNode.js +197 -78
  36. package/dist/esm/device/PairedNode.js.map +1 -1
  37. package/package.json +8 -8
  38. package/src/CommissioningController.ts +10 -18
  39. package/src/MatterController.ts +3 -4
  40. package/src/device/CachedClientNodeStore.ts +24 -4
  41. package/src/device/Endpoint.ts +1 -1
  42. package/src/device/PairedNode.ts +292 -89
@@ -66,6 +66,15 @@ var NodeStateInformation = /* @__PURE__ */ ((NodeStateInformation2) => {
66
66
  })(NodeStateInformation || {});
67
67
  class NodeNotConnectedError extends import_general.MatterError {
68
68
  }
69
+ function areNumberListsSame(list1, list2) {
70
+ const set1 = new Set(list1);
71
+ const set2 = new Set(list2);
72
+ if (set1.size !== set2.size) return false;
73
+ for (const entry of set1.values()) {
74
+ if (!set2.has(entry)) return false;
75
+ }
76
+ return true;
77
+ }
69
78
  class PairedNode {
70
79
  constructor(nodeId, commissioningController, options = {}, knownNodeDetails, interactionClient, reconnectFunc, assignDisconnectedHandler, sessions, crypto, storedAttributeData) {
71
80
  this.nodeId = nodeId;
@@ -159,31 +168,23 @@ class PairedNode {
159
168
  #reconnectFunc;
160
169
  #currentSubscriptionIntervalS;
161
170
  #crypto;
171
+ /**
172
+ * Endpoint structure change information that are checked when updating structure
173
+ * - null means that the endpoint itself changed, so will be regenerated completely any case
174
+ * - array of ClusterIds means that only these clusters changed and will be updated
175
+ */
176
+ #registeredEndpointStructureChanges = /* @__PURE__ */ new Map();
162
177
  events = {
163
- /**
164
- * Emitted when the node is initialized from local data. These data usually are stale, but you can still already
165
- * use the node to interact with the device. If no local data are available this event will be emitted together
166
- * with the initializedFromRemote event.
167
- */
168
178
  initialized: (0, import_general.AsyncObservable)(),
169
- /**
170
- * Emitted when the node is fully initialized from remote and all attributes and events are subscribed.
171
- * This event can also be awaited if code needs to be blocked until the node is fully initialized.
172
- */
173
179
  initializedFromRemote: (0, import_general.AsyncObservable)(),
174
- /** Emitted when the state of the node changes. */
175
180
  stateChanged: (0, import_general.Observable)(),
176
- /**
177
- * Emitted when an attribute value changes. If the oldValue is undefined then no former value was known.
178
- */
179
181
  attributeChanged: (0, import_general.Observable)(),
180
- /** Emitted when an event is triggered. */
181
182
  eventTriggered: (0, import_general.Observable)(),
182
- /** Emitted when the structure of the node changes (Endpoints got added or also removed). */
183
183
  structureChanged: (0, import_general.Observable)(),
184
- /** Emitted when the node is decommissioned. */
184
+ nodeEndpointAdded: (0, import_general.Observable)(),
185
+ nodeEndpointRemoved: (0, import_general.Observable)(),
186
+ nodeEndpointChanged: (0, import_general.Observable)(),
185
187
  decommissioned: (0, import_general.Observable)(),
186
- /** Emitted when a subscription alive trigger is received (max interval trigger or any data update) */
187
188
  connectionAlive: (0, import_general.Observable)()
188
189
  };
189
190
  static async create(nodeId, commissioningController, options = {}, knownNodeDetails, interactionClient, reconnectFunc, assignDisconnectedHandler, sessions, crypto, storedAttributeData) {
@@ -398,7 +399,7 @@ class PairedNode {
398
399
  })) {
399
400
  return;
400
401
  }
401
- await this.#initializeEndpointStructure(storedAttributeData);
402
+ await this.#initializeEndpointStructure(storedAttributeData, false);
402
403
  await this.events.initialized.emit(this.#nodeDetails.toStorageData());
403
404
  this.#localInitializationDone = true;
404
405
  }
@@ -436,7 +437,7 @@ class PairedNode {
436
437
  if (attributeReports === void 0) {
437
438
  throw new import_general.InternalError("No attribute reports received when subscribing to all values!");
438
439
  }
439
- await this.#initializeEndpointStructure(attributeReports, anyInitializationDone);
440
+ await this.#initializeEndpointStructure(attributeReports);
440
441
  this.#remoteInitializationInProgress = false;
441
442
  if (!deviceDetailsUpdated) {
442
443
  const rootEndpoint = this.getRootEndpoint();
@@ -447,7 +448,7 @@ class PairedNode {
447
448
  this.#currentSubscriptionIntervalS = maxInterval;
448
449
  } else {
449
450
  const allClusterAttributes = await this.readAllAttributes();
450
- await this.#initializeEndpointStructure(allClusterAttributes, anyInitializationDone);
451
+ await this.#initializeEndpointStructure(allClusterAttributes);
451
452
  this.#remoteInitializationInProgress = false;
452
453
  }
453
454
  if (!this.#remoteInitializationDone) {
@@ -586,18 +587,21 @@ class PairedNode {
586
587
  this.#reconnectDelayTimer = void 0;
587
588
  this.#setConnectionState(0 /* Connected */);
588
589
  }
590
+ if (this.#remoteInitializationDone && this.#registeredEndpointStructureChanges.size > 0 && !this.#updateEndpointStructureTimer.isRunning) {
591
+ logger.info(`Node ${this.nodeId}: Endpoint structure needs to be updated ...`);
592
+ this.#updateEndpointStructureTimer.stop().start();
593
+ }
589
594
  this.events.connectionAlive.emit();
590
595
  }
591
596
  };
592
597
  this.#currentSubscriptionHandler = subscriptionHandler;
593
598
  const maxKnownEventNumber = this.#interactionClient.maxKnownEventNumber;
594
- const attributeData = await this.#interactionClient.getAllAttributes({
599
+ await this.#interactionClient.getAllAttributes({
595
600
  dataVersionFilters: this.#interactionClient.getCachedClusterDataVersions(),
596
- executeQueued: !!threadConnected
601
+ executeQueued: !!threadConnected,
597
602
  // We queue subscriptions for thread devices
603
+ attributeChangeListener: subscriptionHandler.attributeListener
598
604
  });
599
- await this.#interactionClient.processAttributeUpdates(attributeData, subscriptionHandler.attributeListener);
600
- attributeData.length = 0;
601
605
  const initialSubscriptionData = await this.#interactionClient.subscribeAllAttributesAndEvents({
602
606
  isUrgent: true,
603
607
  minIntervalFloorSeconds,
@@ -623,30 +627,31 @@ class PairedNode {
623
627
  enrichCachedAttributeData: true
624
628
  });
625
629
  }
626
- #checkAttributesForNeededStructureUpdate(_endpointId, clusterId, attributeId) {
627
- let structureUpdateNeeded = false;
628
- if (clusterId === import_clusters.DescriptorCluster.id) {
630
+ #checkAttributesForNeededStructureUpdate(endpointId, clusterId, attributeId) {
631
+ if (clusterId === import_clusters.Descriptor.Complete.id) {
629
632
  switch (attributeId) {
630
- case import_clusters.DescriptorCluster.attributes.partsList.id:
631
- case import_clusters.DescriptorCluster.attributes.serverList.id:
632
- case import_clusters.DescriptorCluster.attributes.deviceTypeList.id:
633
- structureUpdateNeeded = true;
634
- break;
635
- }
636
- }
637
- if (!structureUpdateNeeded) {
638
- switch (attributeId) {
639
- case import_model.FeatureMap.id:
640
- case import_model.AttributeList.id:
641
- case import_model.AcceptedCommandList.id:
642
- case import_model.ClusterRevision.id:
643
- structureUpdateNeeded = true;
644
- break;
633
+ case import_clusters.Descriptor.Complete.attributes.partsList.id:
634
+ case import_clusters.Descriptor.Complete.attributes.serverList.id:
635
+ case import_clusters.Descriptor.Complete.attributes.clientList.id:
636
+ case import_clusters.Descriptor.Complete.attributes.deviceTypeList.id:
637
+ this.#registeredEndpointStructureChanges.set(endpointId, null);
638
+ return;
645
639
  }
646
640
  }
647
- if (structureUpdateNeeded) {
648
- logger.info(`Node ${this.nodeId}: Endpoint structure needs to be updated ...`);
649
- this.#updateEndpointStructureTimer.stop().start();
641
+ switch (attributeId) {
642
+ case import_model.FeatureMap.id:
643
+ case import_model.AttributeList.id:
644
+ case import_model.AcceptedCommandList.id:
645
+ case import_model.ClusterRevision.id:
646
+ let knownForUpdate = this.#registeredEndpointStructureChanges.get(endpointId);
647
+ if (knownForUpdate !== null) {
648
+ knownForUpdate = knownForUpdate ?? [];
649
+ if (!knownForUpdate.includes(clusterId)) {
650
+ knownForUpdate.push(clusterId);
651
+ this.#registeredEndpointStructureChanges.set(endpointId, knownForUpdate);
652
+ }
653
+ }
654
+ break;
650
655
  }
651
656
  }
652
657
  #checkEventsForNeededStructureUpdate(_endpointId, clusterId, eventId) {
@@ -674,55 +679,165 @@ class PairedNode {
674
679
  this.#reconnectDelayTimer.start();
675
680
  }
676
681
  async #updateEndpointStructure() {
677
- const allClusterAttributes = await this.readAllAttributes();
682
+ const allClusterAttributes = this.#interactionClient.getAllCachedClusterData();
678
683
  await this.#initializeEndpointStructure(allClusterAttributes, true);
679
- this.#options.stateInformationCallback?.(this.nodeId, 4 /* StructureChanged */);
680
- this.events.structureChanged.emit();
684
+ }
685
+ /**
686
+ * Traverse the structure data and collect all data for the given endpointId.
687
+ * Return true if data for the endpoint was found, otherwise false.
688
+ * If data was found it is added to the collectedData map.
689
+ */
690
+ collectDescriptorData(structure, endpointId, collectedData) {
691
+ if (collectedData.has(endpointId)) {
692
+ return;
693
+ }
694
+ const endpointData = structure[endpointId];
695
+ const descriptorData = endpointData?.[import_clusters.Descriptor.Complete.id];
696
+ if (endpointData === void 0 || descriptorData === void 0) {
697
+ logger.info(`Descriptor data for endpoint ${endpointId} not found in structure! Ignoring endpoint ...`);
698
+ return;
699
+ }
700
+ collectedData.set(endpointId, descriptorData);
701
+ if (descriptorData.partsList.length) {
702
+ for (const partEndpointId of descriptorData.partsList) {
703
+ this.collectDescriptorData(structure, partEndpointId, collectedData);
704
+ }
705
+ }
706
+ }
707
+ #hasEndpointChanged(device, descriptorData) {
708
+ return !(areNumberListsSame(
709
+ device.getDeviceTypes().map(({ code }) => code),
710
+ descriptorData.deviceTypeList.map(({ deviceType }) => deviceType)
711
+ ) && // Check if the cluster clients are the same - they map to the serverList attribute
712
+ areNumberListsSame(
713
+ device.getAllClusterClients().map(({ id }) => id),
714
+ descriptorData.serverList
715
+ ) && // Check if the cluster servers are the same - they map to the clientList attribute
716
+ areNumberListsSame(
717
+ device.getAllClusterServers().map(({ id }) => id),
718
+ descriptorData.clientList
719
+ ));
681
720
  }
682
721
  /** Reads all data from the device and create a device object structure out of it. */
683
- async #initializeEndpointStructure(allClusterAttributes, updateStructure = false) {
722
+ async #initializeEndpointStructure(allClusterAttributes, updateStructure = this.#localInitializationDone || this.#remoteInitializationDone) {
723
+ if (this.#updateEndpointStructureTimer.isRunning) {
724
+ this.#updateEndpointStructureTimer.stop();
725
+ }
726
+ const eventsToEmit = /* @__PURE__ */ new Map();
727
+ const structureUpdateDetails = this.#registeredEndpointStructureChanges;
728
+ this.#registeredEndpointStructureChanges = /* @__PURE__ */ new Map();
684
729
  const allData = (0, import_protocol.structureReadAttributeDataToClusterObject)(allClusterAttributes);
730
+ const descriptors = /* @__PURE__ */ new Map();
731
+ this.collectDescriptorData(allData, (0, import_types.EndpointNumber)(0), descriptors);
685
732
  if (updateStructure) {
686
733
  const endpointsToRemove = new Set(this.#endpoints.keys());
687
- for (const [endpointId] of Object.entries(allData)) {
688
- const endpointIdNumber = (0, import_types.EndpointNumber)(parseInt(endpointId));
689
- if (this.#endpoints.has(endpointIdNumber)) {
690
- logger.debug(`Node ${this.nodeId}: Retaining device`, endpointId);
691
- endpointsToRemove.delete(endpointIdNumber);
734
+ for (const endpointId of descriptors.keys()) {
735
+ const device = this.#endpoints.get(endpointId);
736
+ if (device !== void 0) {
737
+ const hasChanged = structureUpdateDetails.has(endpointId);
738
+ if (!hasChanged || !this.#hasEndpointChanged(device, descriptors.get(endpointId))) {
739
+ logger.debug(
740
+ `Node ${this.nodeId}: Retaining endpoint`,
741
+ endpointId,
742
+ hasChanged ? "(with only structure changes)" : "(unchanged)"
743
+ );
744
+ endpointsToRemove.delete(endpointId);
745
+ if (hasChanged) {
746
+ eventsToEmit.set(endpointId, "nodeEndpointChanged");
747
+ }
748
+ } else {
749
+ logger.debug(`Node ${this.nodeId}: Recreating endpoint`, endpointId);
750
+ eventsToEmit.set(endpointId, "nodeEndpointChanged");
751
+ }
692
752
  }
693
753
  }
694
- for (const endpointId of endpointsToRemove.values()) {
695
- logger.debug(`Node ${this.nodeId}: Removing device`, endpointId);
696
- this.#endpoints.get(endpointId)?.removeFromStructure();
697
- this.#endpoints.delete(endpointId);
754
+ for (const endpoint of endpointsToRemove.values()) {
755
+ const endpointId = (0, import_types.EndpointNumber)(endpoint);
756
+ const device = this.#endpoints.get(endpointId);
757
+ if (device !== void 0) {
758
+ if (eventsToEmit.get(endpointId) !== "nodeEndpointChanged") {
759
+ logger.debug(`Node ${this.nodeId}: Removing endpoint`, endpointId);
760
+ eventsToEmit.set(endpointId, "nodeEndpointRemoved");
761
+ }
762
+ device.removeFromStructure();
763
+ this.#endpoints.delete(endpointId);
764
+ }
698
765
  }
699
766
  } else {
700
767
  this.#endpoints.clear();
701
768
  }
702
- const partLists = /* @__PURE__ */ new Map();
703
- for (const [endpointId, clusters] of Object.entries(allData)) {
704
- const endpointIdNumber = (0, import_types.EndpointNumber)(parseInt(endpointId));
705
- const descriptorData = clusters[import_clusters.DescriptorCluster.id];
706
- partLists.set(endpointIdNumber, descriptorData.partsList);
707
- if (this.#endpoints.has(endpointIdNumber)) {
769
+ for (const endpointId of descriptors.keys()) {
770
+ const clusters = allData[endpointId];
771
+ if (this.#endpoints.has(endpointId)) {
708
772
  continue;
709
773
  }
710
- logger.debug(`Node ${this.nodeId}: Creating device`, endpointId, import_general.Diagnostic.json(clusters));
711
- this.#endpoints.set(
712
- endpointIdNumber,
713
- this.#createDevice(endpointIdNumber, clusters, this.#interactionClient)
774
+ const isRecreation = eventsToEmit.get(endpointId) === "nodeEndpointChanged";
775
+ logger.debug(
776
+ `Node ${this.nodeId}: ${isRecreation ? "Recreating" : "Creating"} endpoint`,
777
+ endpointId,
778
+ import_general.Diagnostic.json(clusters)
714
779
  );
780
+ this.#endpoints.set(endpointId, this.#createDevice(endpointId, clusters, this.#interactionClient));
781
+ if (!isRecreation) {
782
+ eventsToEmit.set(endpointId, "nodeEndpointAdded");
783
+ }
784
+ }
785
+ for (const [endpointId, { partsList }] of descriptors.entries()) {
786
+ const endpoint = this.#endpoints.get(endpointId);
787
+ if (endpoint === void 0) {
788
+ continue;
789
+ }
790
+ endpoint.getChildEndpoints().forEach((child) => {
791
+ if (child.number !== void 0 && !partsList.includes(child.number)) {
792
+ endpoint.removeChildEndpoint(child);
793
+ if (!eventsToEmit.has(endpointId)) {
794
+ eventsToEmit.set(endpointId, "nodeEndpointChanged");
795
+ }
796
+ }
797
+ });
798
+ }
799
+ this.#structureEndpoints(descriptors);
800
+ if (updateStructure && eventsToEmit.size) {
801
+ for (const [endpointId, eventName] of eventsToEmit.entries()) {
802
+ if (eventName !== "nodeEndpointAdded") {
803
+ const clusterServers = descriptors.get(endpointId)?.serverList;
804
+ await this.#interactionClient.cleanupAttributeData(
805
+ endpointId,
806
+ eventName === "nodeEndpointRemoved" ? void 0 : clusterServers
807
+ );
808
+ }
809
+ }
810
+ const emitChangeEvents = () => {
811
+ for (const [endpointId, eventName] of eventsToEmit.entries()) {
812
+ logger.debug(`Node ${this.nodeId}: Emitting event ${eventName} for endpoint ${endpointId}`);
813
+ this.events[eventName].emit(endpointId);
814
+ }
815
+ this.#options.stateInformationCallback?.(this.nodeId, 4 /* StructureChanged */);
816
+ this.events.structureChanged.emit();
817
+ };
818
+ if (this.#connectionState === 0 /* Connected */) {
819
+ emitChangeEvents();
820
+ } else {
821
+ this.events.stateChanged.once((State) => {
822
+ if (State === 0 /* Connected */) {
823
+ emitChangeEvents();
824
+ }
825
+ });
826
+ }
715
827
  }
716
- this.#structureEndpoints(partLists);
717
828
  }
718
- /** Bring the endpoints in a structure based on their partsList attribute. */
719
- #structureEndpoints(partLists) {
720
- logger.debug(
721
- `Node ${this.nodeId}: Endpoints from PartsLists`,
722
- import_general.Diagnostic.json(Array.from(partLists.entries()))
829
+ /**
830
+ * Bring the endpoints in a structure based on their partsList attribute. This method only adds endpoints into the
831
+ * right place as children, Cleanup is not happening here
832
+ */
833
+ #structureEndpoints(descriptors) {
834
+ const partLists = Array.from(descriptors.entries()).map(
835
+ ([ep, { partsList }]) => [ep, partsList]
836
+ // else Typescript gets confused
723
837
  );
838
+ logger.debug(`Node ${this.nodeId}: Endpoints from PartsLists`, import_general.Diagnostic.json(partLists));
724
839
  const endpointUsages = {};
725
- Array.from(partLists.entries()).forEach(
840
+ partLists.forEach(
726
841
  ([parent, partsList]) => partsList.forEach((endPoint) => {
727
842
  if (endPoint === parent) {
728
843
  logger.warn(`Node ${this.nodeId}: Endpoint ${endPoint} is referencing itself!`);
@@ -746,14 +861,18 @@ class PairedNode {
746
861
  const childEndpointId = (0, import_types.EndpointNumber)(parseInt(childId));
747
862
  const childEndpoint = this.#endpoints.get(childEndpointId);
748
863
  const parentEndpoint = this.#endpoints.get(usages[0]);
864
+ const existingChildEndpoint = parentEndpoint?.getChildEndpoint(childEndpointId);
749
865
  if (childEndpoint === void 0 || parentEndpoint === void 0) {
750
866
  logger.warn(
751
867
  `Node ${this.nodeId}: Endpoint ${usages[0]} not found in the data received from the device!`
752
868
  );
753
- } else if (parentEndpoint.getChildEndpoint(childEndpointId) === void 0) {
869
+ } else if (existingChildEndpoint !== childEndpoint) {
754
870
  logger.debug(
755
871
  `Node ${this.nodeId}: Endpoint structure: Child: ${childEndpointId} -> Parent: ${parentEndpoint.number}`
756
872
  );
873
+ if (existingChildEndpoint !== void 0) {
874
+ parentEndpoint.removeChildEndpoint(existingChildEndpoint);
875
+ }
757
876
  parentEndpoint.addChildEndpoint(childEndpoint);
758
877
  }
759
878
  delete endpointUsages[(0, import_types.EndpointNumber)(parseInt(childId))];
@@ -775,7 +894,7 @@ class PairedNode {
775
894
  }
776
895
  /** Create a device object from the data read from the device. */
777
896
  #createDevice(endpointId, data, interactionClient) {
778
- const descriptorData = data[import_clusters.DescriptorCluster.id];
897
+ const descriptorData = data[import_clusters.Descriptor.Complete.id];
779
898
  const deviceTypes = descriptorData.deviceTypeList.flatMap(({ deviceType, revision }) => {
780
899
  const deviceTypeDefinition = (0, import_DeviceTypes.getDeviceTypeDefinitionFromModelByCode)(deviceType);
781
900
  if (deviceTypeDefinition === void 0) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/device/PairedNode.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["NodeStates", "NodeStateInformation"]
6
6
  }
@@ -132,7 +132,7 @@ export declare class CommissioningController {
132
132
  /** @deprecated Use PairedNode.disconnect() instead */
133
133
  disconnectNode(nodeId: NodeId, force?: boolean): Promise<void>;
134
134
  /**
135
- * Returns the PairedNode instance for a given NodeId. The instance is initialized without auto connect if not yet
135
+ * Returns the PairedNode instance for a given NodeId. The instance is initialized without auto-connect if not yet
136
136
  * created.
137
137
  */
138
138
  getNode(nodeId: NodeId, allowUnknownNode?: boolean): Promise<PairedNode>;
@@ -1 +1 @@
1
- {"version":3,"file":"CommissioningController.d.ts","sourceRoot":"","sources":["../../src/CommissioningController.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EACH,YAAY,EACZ,MAAM,EACN,WAAW,EAIX,eAAe,EACf,OAAO,EAGP,cAAc,EACd,WAAW,EAGd,MAAM,UAAU,CAAC;AAElB,OAAO,EAEH,oBAAoB,EACpB,+BAA+B,EAC/B,2BAA2B,EAG3B,gCAAgC,EAChC,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,WAAW,EAEX,cAAc,EACd,iBAAiB,EACjB,UAAU,EACb,MAAM,WAAW,CAAC;AACnB,OAAO,EACH,oBAAoB,EACpB,2BAA2B,EAC3B,QAAQ,EACR,WAAW,EACX,MAAM,EACN,wBAAwB,EACxB,QAAQ,EACX,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAA6B,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAE,kCAAkC,EAAc,UAAU,EAAE,MAAM,wBAAwB,CAAC;AASpG,MAAM,MAAM,4BAA4B,GAAG;IACvC;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAElC;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,8BAA8B,GAAG,kCAAkC,GAAG;IAC9E;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B,+FAA+F;IAC/F,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAEvC,+FAA+F;IAC/F,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAEvC;;;SAGK;IACL,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAE/B,0GAA0G;IAC1G,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;IAElC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;IAElC;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAExC;;;OAGG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAExD;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAElC;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,4BAA4B,CAAC;IAEpD;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAE7B;;;OAGG;IACH,QAAQ,CAAC,wBAAwB,CAAC,EAAE,oBAAoB,CAAC;IAEzD;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAChC,CAAC;AAEF,8CAA8C;AAC9C,MAAM,MAAM,wBAAwB,GAAG,kCAAkC,GAAG;IACxE,aAAa,EAAE,IAAI,CAAC,gCAAgC,EAAE,QAAQ,GAAG,WAAW,GAAG,UAAU,CAAC,CAAC;IAC3F,SAAS,EAAE,gCAAgC,CAAC,WAAW,CAAC,CAAC;IACzD,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iFAAiF;AACjF,qBAAa,uBAAuB;;IAsBhC;;;;OAIG;gBACS,OAAO,EAAE,8BAA8B;IAMnD,IAAI,MAAM,WAET;IAED,IAAI,MAAM,uBAET;IAED,iGAAiG;IACjG,IAAI,sBAAsB;;;MASzB;IAmFD;;;OAGG;IACG,cAAc,CAChB,WAAW,EAAE,wBAAwB,EACrC,iBAAiB,CAAC,EAAE;QAChB,6BAA6B,CAAC,EAAE,OAAO,CAAC;QACxC,qBAAqB,CAAC,EAAE,YAAY,CAAC,2BAA2B,CAAC,CAAC;KACrE;IAwBL,kBAAkB,CAAC,WAAW,EAAE,wBAAwB;IAOxD;;;;OAIG;IACH,4BAA4B,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,aAAa;IAM9E,mEAAmE;IACnE,kBAAkB,CAAC,MAAM,EAAE,MAAM;IAKjC;;;;;;;OAOG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,kBAAkB,UAAO;IAsB1D,sDAAsD;IAChD,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,UAAQ;IAQlD;;;OAGG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,UAAQ;IAQtD;;;;;;;OAOG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,kCAAkC,EAAE,gBAAgB,UAAQ;IAgD/G;;;;;OAKG;IACG,OAAO,CAAC,cAAc,CAAC,EAAE,kCAAkC;IAejE;;;;;OAKG;IACH,cAAc,CAAC,WAAW,EAAE,WAAW;IAIvC;;;;;OAKG;IACH,kBAAkB,CAAC,eAAe,EAAE,eAAe;IAInD;;;;;OAKG;IACH,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,WAAW,CAAC;IAK/C,6FAA6F;IAC7F,cAAc;IAMd;;;OAGG;IACG,uBAAuB,CACzB,eAAe,EAAE,MAAM,GAAG,cAAc,EACxC,aAAa,CAAC,EAAE,iBAAiB,EACjC,OAAO,CAAC,EAAE;QACN,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC9B,GACF,OAAO,CAAC,iBAAiB,CAAC;IAS7B;;;OAGG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM;IAI5B,mEAAmE;IACnE,oBAAoB;IAMpB,wEAAwE;IACxE,2BAA2B;;;;;;;IAM3B;;;OAGG;IACG,KAAK;IAgBX,oEAAoE;IACpE,OAAO,IAAI,MAAM,GAAG,SAAS;IAI7B,eAAe;IACf,UAAU,CAAC,YAAY,EAAE,OAAO;IAYhC,eAAe;IACT,yBAAyB;IAW/B;;OAEG;IACG,KAAK;IA4CX;;OAEG;IACH,mCAAmC,CAC/B,cAAc,EAAE,+BAA+B,EAC/C,qBAAqB,CAAC,EAAE,wBAAwB,CAAC,OAAO,2BAA2B,CAAC;IASxF;;;;OAIG;IACG,6BAA6B,CAC/B,cAAc,EAAE,+BAA+B,EAC/C,qBAAqB,CAAC,EAAE,wBAAwB,CAAC,OAAO,2BAA2B,CAAC,EACpF,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,EAC3D,cAAc,SAAM;IAYxB;;;OAGG;IACG,YAAY;IAelB,kEAAkE;IAClE,2BAA2B;;;;;;;;;;;IAI3B,eAAe;IACT,4BAA4B,CAAC,MAAM,EAAE,MAAM;IA4BjD;;;OAGG;IACG,iBAAiB,CAAC,KAAK,EAAE,MAAM;IA6CrC,IAAI,MAAM,4CAKT;CACJ;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACjC;;;;GA0CA"}
1
+ {"version":3,"file":"CommissioningController.d.ts","sourceRoot":"","sources":["../../src/CommissioningController.ts"],"names":[],"mappings":"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"}
@@ -74,13 +74,10 @@ class CommissioningController {
74
74
  fabricData
75
75
  };
76
76
  }
77
- #assertIsAddedToMatterServer() {
77
+ #assertDependencies() {
78
78
  if (this.#mdnsScanner === void 0 || this.#storage === void 0 && this.#environment === void 0) {
79
79
  throw new ImplementationError("Add the node to the Matter instance before.");
80
80
  }
81
- if (!this.#started) {
82
- throw new ImplementationError("The node needs to be started before interacting with the controller.");
83
- }
84
81
  return { mdnsScanner: this.#mdnsScanner, storage: this.#storage, environment: this.#environment };
85
82
  }
86
83
  #assertControllerIsStarted(errorText) {
@@ -93,7 +90,6 @@ class CommissioningController {
93
90
  }
94
91
  /** Internal method to initialize a MatterController instance. */
95
92
  async #initializeController() {
96
- const { mdnsScanner, storage, environment } = this.#assertIsAddedToMatterServer();
97
93
  if (this.#controllerInstance !== void 0) {
98
94
  return this.#controllerInstance;
99
95
  }
@@ -108,9 +104,7 @@ class CommissioningController {
108
104
  rootCertificateAuthority,
109
105
  rootFabric
110
106
  } = this.#options;
111
- if (environment === void 0 && storage === void 0) {
112
- throw new ImplementationError("Storage not initialized correctly.");
113
- }
107
+ const { mdnsScanner, storage, environment } = this.#assertDependencies();
114
108
  const controllerStore = environment?.has(ControllerStore) ? environment.get(ControllerStore) : new LegacyControllerStore(storage);
115
109
  const { netInterfaces, scanners, port } = await configureNetwork({
116
110
  network: environment?.has(Network) ? environment.get(Network) : Environment.default.get(Network),
@@ -150,7 +144,6 @@ class CommissioningController {
150
144
  * node on success.
151
145
  */
152
146
  async commissionNode(nodeOptions, commissionOptions) {
153
- this.#assertIsAddedToMatterServer();
154
147
  const controller = this.#assertControllerIsStarted();
155
148
  const { connectNodeAfterCommissioning = true, commissioningFlowImpl } = commissionOptions ?? {};
156
149
  const nodeId = await controller.commission(nodeOptions, { commissioningFlowImpl });
@@ -166,7 +159,6 @@ class CommissioningController {
166
159
  return nodeId;
167
160
  }
168
161
  connectPaseChannel(nodeOptions) {
169
- this.#assertIsAddedToMatterServer();
170
162
  const controller = this.#assertControllerIsStarted();
171
163
  return controller.connectPaseChannel(nodeOptions);
172
164
  }
@@ -176,7 +168,6 @@ class CommissioningController {
176
168
  * process.
177
169
  */
178
170
  completeCommissioningForNode(peerNodeId, discoveryData) {
179
- this.#assertIsAddedToMatterServer();
180
171
  const controller = this.#assertControllerIsStarted();
181
172
  return controller.completeCommissioning(peerNodeId, discoveryData);
182
173
  }
@@ -223,7 +214,7 @@ class CommissioningController {
223
214
  await this.#controllerInstance?.disconnect(nodeId);
224
215
  }
225
216
  /**
226
- * Returns the PairedNode instance for a given NodeId. The instance is initialized without auto connect if not yet
217
+ * Returns the PairedNode instance for a given NodeId. The instance is initialized without auto-connect if not yet
227
218
  * created.
228
219
  */
229
220
  async getNode(nodeId, allowUnknownNode = false) {
@@ -447,7 +438,6 @@ class CommissioningController {
447
438
  * Cancels the discovery process for commissionable devices started with discoverCommissionableDevices().
448
439
  */
449
440
  cancelCommissionableDeviceDiscovery(identifierData, discoveryCapabilities) {
450
- this.#assertIsAddedToMatterServer();
451
441
  const controller = this.#assertControllerIsStarted();
452
442
  controller.collectScanners(discoveryCapabilities).forEach((scanner) => ControllerDiscovery.cancelCommissionableDeviceDiscovery(scanner, identifierData));
453
443
  }
@@ -457,7 +447,6 @@ class CommissioningController {
457
447
  * cancelCommissionableDeviceDiscovery(). The discoveredCallback will be called for each discovered device.
458
448
  */
459
449
  async discoverCommissionableDevices(identifierData, discoveryCapabilities, discoveredCallback, timeoutSeconds = 900) {
460
- this.#assertIsAddedToMatterServer();
461
450
  const controller = this.#assertControllerIsStarted();
462
451
  return await ControllerDiscovery.discoverCommissionableDevices(
463
452
  controller.collectScanners(discoveryCapabilities),
@@ -471,10 +460,12 @@ class CommissioningController {
471
460
  * will remove all commissioning data and paired nodes from the controller.
472
461
  */
473
462
  async resetStorage() {
474
- this.#assertControllerIsStarted(
475
- "Storage cannot be reset while the controller is operating! Please close the controller first."
476
- );
477
- const { storage, environment } = this.#assertIsAddedToMatterServer();
463
+ if (this.#started) {
464
+ throw new ImplementationError(
465
+ "Storage cannot be reset while the controller is operating! Please close the controller first."
466
+ );
467
+ }
468
+ const { storage, environment } = this.#assertDependencies();
478
469
  if (environment !== void 0) {
479
470
  const controllerStore = environment.get(ControllerStore);
480
471
  await controllerStore.erase();