@matter/node 0.12.4 → 0.12.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.
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { EventEmitter, Observable } from "#general";
7
- import { ExposedFabricInformation } from "#protocol";
7
+ import { ExposedFabricInformation, Subscription } from "#protocol";
8
8
  import { NodeId } from "#types";
9
9
  import { Behavior } from "../../Behavior.js";
10
10
  /**
@@ -35,6 +35,7 @@ export declare namespace SessionsBehavior {
35
35
  opened: Observable<[session: Session], void>;
36
36
  closed: Observable<[session: Session], void>;
37
37
  subscriptionsChanged: Observable<[session: Session], void>;
38
+ subscriptionAdded: Observable<[subscription: Subscription], void>;
38
39
  }
39
40
  }
40
41
  //# sourceMappingURL=SessionsBehavior.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SessionsBehavior.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/sessions/SessionsBehavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEpD,OAAO,EAAE,wBAAwB,EAA+C,MAAM,WAAW,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;;IAC1C,gBAAyB,EAAE,cAAc;IAEjC,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC;IAC9B,MAAM,EAAE,gBAAgB,CAAC,MAAM,CAAC;IAE/B,UAAU;CAsEtB;AAED,yBAAiB,gBAAgB,CAAC;IAC9B,UAAiB,OAAO;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,wBAAwB,CAAC;QAClC,YAAY,EAAE,OAAO,CAAC;QACtB,wBAAwB,EAAE,MAAM,GAAG,SAAS,CAAC;QAC7C,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;QACxC,2BAA2B,EAAE,MAAM,CAAC;KACvC;IAED,MAAa,KAAK;QACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;KAC1C;IAED,MAAa,MAAO,SAAQ,YAAY;QACpC,MAAM,uCAAoC;QAC1C,MAAM,uCAAoC;QAC1C,oBAAoB,uCAAoC;KAC3D;CACJ"}
1
+ {"version":3,"file":"SessionsBehavior.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/sessions/SessionsBehavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEpD,OAAO,EAAE,wBAAwB,EAAiC,YAAY,EAAE,MAAM,WAAW,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;;IAC1C,gBAAyB,EAAE,cAAc;IAEjC,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC;IAC9B,MAAM,EAAE,gBAAgB,CAAC,MAAM,CAAC;IAE/B,UAAU;CAsEtB;AAED,yBAAiB,gBAAgB,CAAC;IAC9B,UAAiB,OAAO;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,wBAAwB,CAAC;QAClC,YAAY,EAAE,OAAO,CAAC;QACtB,wBAAwB,EAAE,MAAM,GAAG,SAAS,CAAC;QAC7C,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;QACxC,2BAA2B,EAAE,MAAM,CAAC;KACvC;IAED,MAAa,KAAK;QACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;KAC1C;IAED,MAAa,MAAO,SAAQ,YAAY;QACpC,MAAM,uCAAoC;QAC1C,MAAM,uCAAoC;QAC1C,oBAAoB,uCAAoC;QACxD,iBAAiB,iDAA8C;KAClE;CACJ"}
@@ -24,7 +24,6 @@ module.exports = __toCommonJS(SessionsBehavior_exports);
24
24
  var import_general = require("#general");
25
25
  var import_protocol = require("#protocol");
26
26
  var import_Behavior = require("../../Behavior.js");
27
- var import_SubscriptionBehavior = require("../subscription/SubscriptionBehavior.js");
28
27
  /**
29
28
  * @license
30
29
  * Copyright 2022-2025 Matter.js Authors
@@ -76,7 +75,7 @@ class SessionsBehavior extends import_Behavior.Behavior {
76
75
  return;
77
76
  }
78
77
  if (session.subscriptions.has(subscription)) {
79
- this.agent.get(import_SubscriptionBehavior.SubscriptionBehavior).addSubscription(subscription);
78
+ this.events.subscriptionAdded.emit(subscription);
80
79
  }
81
80
  const sessionEntry = this.state.sessions[session.id];
82
81
  if (sessionEntry === void 0) {
@@ -99,6 +98,7 @@ class SessionsBehavior extends import_Behavior.Behavior {
99
98
  opened = (0, import_general.Observable)();
100
99
  closed = (0, import_general.Observable)();
101
100
  subscriptionsChanged = (0, import_general.Observable)();
101
+ subscriptionAdded = (0, import_general.Observable)();
102
102
  }
103
103
  SessionsBehavior2.Events = Events;
104
104
  })(SessionsBehavior || (SessionsBehavior = {}));
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/behavior/system/sessions/SessionsBehavior.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAyC;AAEzC,sBAAsF;AAGtF,sBAAyB;AACzB,kCAAqC;AAZrC;AAAA;AAAA;AAAA;AAAA;AAiBO,MAAM,yBAAyB,yBAAS;AAAA,EAC3C,OAAyB,KAAK;AAAA,EAKrB,aAAa;AAClB,UAAM,MAAM,KAAK;AACjB,QAAI,IAAI,IAAI,8BAAc,GAAG;AACzB,WAAK,iBAAiB,IAAI,IAAI,8BAAc,CAAC;AAAA,IACjD;AACA,SAAK,QAAS,KAAK,SAAS,UAA4B,SAAS,KAAK,iBAAiB;AAAA,EAC3F;AAAA,EAEA,yBAAyB,SAAkD;AACvE,WAAO;AAAA,MACH,MAAM,QAAQ;AAAA,MACd,QAAQ,QAAQ;AAAA,MAChB,YAAY,QAAQ;AAAA,MACpB,QAAQ,QAAQ,QAAQ;AAAA,MACxB,cAAc,QAAQ,aAAa;AAAA,MACnC,0BAA0B,QAAQ;AAAA,MAClC,qBAAqB,QAAQ;AAAA,MAC7B,6BAA6B,QAAQ,cAAc;AAAA,IACvD;AAAA,EACJ;AAAA,EAEA,iBAAiB,UAA0B;AACvC,SAAK,QAAQ,SAAS,SAAS,OAAO,KAAK,cAAc;AAEzD,SAAK,QAAQ,SAAS,SAAS,SAAS,KAAK,cAAc;AAE3D,SAAK,QAAQ,SAAS,sBAAsB,KAAK,uBAAuB,EAAE,MAAM,KAAK,CAAC;AAAA,EAC1F;AAAA,EAEA,eAAe,SAAwB;AACnC,QAAI,QAAQ,QAAQ;AAChB;AAAA,IACJ;AACA,UAAM,iBAAiB,KAAK,yBAAyB,OAAO;AAC5D,SAAK,MAAM,SAAS,QAAQ,EAAE,IAAI;AAClC,SAAK,OAAO,OAAO,KAAK,cAAc;AAAA,EAC1C;AAAA,EAEA,eAAe,SAAwB;AACnC,QAAI,EAAE,QAAQ,MAAM,KAAK,MAAM,WAAW;AACtC;AAAA,IACJ;AAEA,WAAO,KAAK,MAAM,SAAS,QAAQ,EAAE;AACrC,SAAK,OAAO,OAAO,KAAK,KAAK,yBAAyB,OAAO,CAAC;AAAA,EAClE;AAAA,EAEA,sBAAsB,SAAwB,cAA4B;AACtE,QAAI,QAAQ,QAAQ;AAChB;AAAA,IACJ;AAGA,QAAI,QAAQ,cAAc,IAAI,YAAY,GAAG;AACzC,WAAK,MAAM,IAAI,gDAAoB,EAAE,gBAAgB,YAAY;AAAA,IACrE;AAEA,UAAM,eAAe,KAAK,MAAM,SAAS,QAAQ,EAAE;AACnD,QAAI,iBAAiB,QAAW;AAC5B;AAAA,IACJ;AAEA,iBAAa,8BAA8B,QAAQ,cAAc;AACjE,SAAK,MAAM,SAAS,QAAQ,EAAE,IAAI;AAClC,SAAK,OAAO,qBAAqB,KAAK,YAAY;AAAA,EACtD;AAAA,EAEA,oBAAoB;AAChB,SAAK,MAAM,WAAW,CAAC;AAAA,EAC3B;AACJ;AAAA,CAEO,CAAUA,sBAAV;AAAA,EAYI,MAAM,MAAM;AAAA,IACf,WAAoC,CAAC;AAAA,EACzC;AAFO,EAAAA,kBAAM;AAAA,EAIN,MAAM,eAAe,4BAAa;AAAA,IACrC,aAAS,2BAA+B;AAAA,IACxC,aAAS,2BAA+B;AAAA,IACxC,2BAAuB,2BAA+B;AAAA,EAC1D;AAJO,EAAAA,kBAAM;AAAA,GAhBA;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAyC;AAEzC,sBAAsF;AAGtF,sBAAyB;AAXzB;AAAA;AAAA;AAAA;AAAA;AAgBO,MAAM,yBAAyB,yBAAS;AAAA,EAC3C,OAAyB,KAAK;AAAA,EAKrB,aAAa;AAClB,UAAM,MAAM,KAAK;AACjB,QAAI,IAAI,IAAI,8BAAc,GAAG;AACzB,WAAK,iBAAiB,IAAI,IAAI,8BAAc,CAAC;AAAA,IACjD;AACA,SAAK,QAAS,KAAK,SAAS,UAA4B,SAAS,KAAK,iBAAiB;AAAA,EAC3F;AAAA,EAEA,yBAAyB,SAAkD;AACvE,WAAO;AAAA,MACH,MAAM,QAAQ;AAAA,MACd,QAAQ,QAAQ;AAAA,MAChB,YAAY,QAAQ;AAAA,MACpB,QAAQ,QAAQ,QAAQ;AAAA,MACxB,cAAc,QAAQ,aAAa;AAAA,MACnC,0BAA0B,QAAQ;AAAA,MAClC,qBAAqB,QAAQ;AAAA,MAC7B,6BAA6B,QAAQ,cAAc;AAAA,IACvD;AAAA,EACJ;AAAA,EAEA,iBAAiB,UAA0B;AACvC,SAAK,QAAQ,SAAS,SAAS,OAAO,KAAK,cAAc;AAEzD,SAAK,QAAQ,SAAS,SAAS,SAAS,KAAK,cAAc;AAE3D,SAAK,QAAQ,SAAS,sBAAsB,KAAK,uBAAuB,EAAE,MAAM,KAAK,CAAC;AAAA,EAC1F;AAAA,EAEA,eAAe,SAAwB;AACnC,QAAI,QAAQ,QAAQ;AAChB;AAAA,IACJ;AACA,UAAM,iBAAiB,KAAK,yBAAyB,OAAO;AAC5D,SAAK,MAAM,SAAS,QAAQ,EAAE,IAAI;AAClC,SAAK,OAAO,OAAO,KAAK,cAAc;AAAA,EAC1C;AAAA,EAEA,eAAe,SAAwB;AACnC,QAAI,EAAE,QAAQ,MAAM,KAAK,MAAM,WAAW;AACtC;AAAA,IACJ;AAEA,WAAO,KAAK,MAAM,SAAS,QAAQ,EAAE;AACrC,SAAK,OAAO,OAAO,KAAK,KAAK,yBAAyB,OAAO,CAAC;AAAA,EAClE;AAAA,EAEA,sBAAsB,SAAwB,cAA4B;AACtE,QAAI,QAAQ,QAAQ;AAChB;AAAA,IACJ;AAGA,QAAI,QAAQ,cAAc,IAAI,YAAY,GAAG;AACzC,WAAK,OAAO,kBAAkB,KAAK,YAAY;AAAA,IACnD;AAEA,UAAM,eAAe,KAAK,MAAM,SAAS,QAAQ,EAAE;AACnD,QAAI,iBAAiB,QAAW;AAC5B;AAAA,IACJ;AAEA,iBAAa,8BAA8B,QAAQ,cAAc;AACjE,SAAK,MAAM,SAAS,QAAQ,EAAE,IAAI;AAClC,SAAK,OAAO,qBAAqB,KAAK,YAAY;AAAA,EACtD;AAAA,EAEA,oBAAoB;AAChB,SAAK,MAAM,WAAW,CAAC;AAAA,EAC3B;AACJ;AAAA,CAEO,CAAUA,sBAAV;AAAA,EAYI,MAAM,MAAM;AAAA,IACf,WAAoC,CAAC;AAAA,EACzC;AAFO,EAAAA,kBAAM;AAAA,EAIN,MAAM,eAAe,4BAAa;AAAA,IACrC,aAAS,2BAA+B;AAAA,IACxC,aAAS,2BAA+B;AAAA,IACxC,2BAAuB,2BAA+B;AAAA,IACtD,wBAAoB,2BAAyC;AAAA,EACjE;AALO,EAAAA,kBAAM;AAAA,GAhBA;",
5
5
  "names": ["SessionsBehavior"]
6
6
  }
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { DatatypeModel } from "#model";
7
7
  import { TransactionalInteractionServer } from "#node/index.js";
8
- import { PeerSubscription, Subscription } from "#protocol";
8
+ import { PeerSubscription } from "#protocol";
9
9
  import { Behavior } from "../../Behavior.js";
10
10
  /**
11
11
  * Subscriptions Persistence handling.
@@ -21,7 +21,6 @@ export declare class SubscriptionBehavior extends Behavior {
21
21
  internal: SubscriptionBehavior.Internal;
22
22
  initialize(): void;
23
23
  static schema: DatatypeModel;
24
- addSubscription(subscription: Subscription): void;
25
24
  reestablishFormerSubscriptions(interactionServer: TransactionalInteractionServer): Promise<void>;
26
25
  }
27
26
  export declare namespace SubscriptionBehavior {
@@ -1 +1 @@
1
- {"version":3,"file":"SubscriptionBehavior.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/subscription/SubscriptionBehavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,aAAa,EAAgB,MAAM,QAAQ,CAAC;AACrD,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAOH,gBAAgB,EAGhB,YAAY,EACf,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAM7C;;;;;;GAMG;AACH,qBAAa,oBAAqB,SAAQ,QAAQ;;IAC9C,gBAAyB,EAAE,kBAAkB;IAErC,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC;IAClC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,CAAC;IAEvC,UAAU;IAOnB,OAAgB,MAAM,gBAkFpB;IAEF,eAAe,CAAC,YAAY,EAAE,YAAY;IAiEpC,8BAA8B,CAAC,iBAAiB,EAAE,8BAA8B;CAmFzF;AAED,yBAAiB,oBAAoB,CAAC;IAClC,MAAa,KAAK;QACd,sEAAsE;QACtE,kBAAkB,UAAQ;QAE1B;;;WAGG;QACH,aAAa,EAAG,gBAAgB,EAAE,CAAC;KACtC;IAED,MAAa,QAAQ;QACjB;;;WAGG;QACH,mBAAmB,qBAA6B;KACnD;CACJ"}
1
+ {"version":3,"file":"SubscriptionBehavior.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/subscription/SubscriptionBehavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,aAAa,EAAgB,MAAM,QAAQ,CAAC;AACrD,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAOH,gBAAgB,EAInB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAO7C;;;;;;GAMG;AACH,qBAAa,oBAAqB,SAAQ,QAAQ;;IAC9C,gBAAyB,EAAE,kBAAkB;IAErC,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC;IAClC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,CAAC;IAEvC,UAAU;IAUnB,OAAgB,MAAM,gBAkFpB;IAkEI,8BAA8B,CAAC,iBAAiB,EAAE,8BAA8B;CAmFzF;AAED,yBAAiB,oBAAoB,CAAC;IAClC,MAAa,KAAK;QACd,sEAAsE;QACtE,kBAAkB,UAAQ;QAE1B;;;WAGG;QACH,aAAa,EAAG,gBAAgB,EAAE,CAAC;KACtC;IAED,MAAa,QAAQ;QACjB;;;WAGG;QACH,mBAAmB,qBAA6B;KACnD;CACJ"}
@@ -26,6 +26,7 @@ var import_model = require("#model");
26
26
  var import_protocol = require("#protocol");
27
27
  var import_types = require("#types");
28
28
  var import_Behavior = require("../../Behavior.js");
29
+ var import_SessionsBehavior = require("../sessions/SessionsBehavior.js");
29
30
  /**
30
31
  * @license
31
32
  * Copyright 2022-2025 Matter.js Authors
@@ -40,6 +41,8 @@ class SubscriptionBehavior extends import_Behavior.Behavior {
40
41
  this.internal.formerSubscriptions = (0, import_general.deepCopy)(this.state.subscriptions);
41
42
  }
42
43
  this.state.subscriptions = [];
44
+ const sessions = this.agent.get(import_SessionsBehavior.SessionsBehavior);
45
+ this.reactTo(sessions.events.subscriptionAdded, this.#addSubscription, { lock: true });
43
46
  }
44
47
  static schema = new import_model.DatatypeModel(
45
48
  {
@@ -124,7 +127,7 @@ class SubscriptionBehavior extends import_Behavior.Behavior {
124
127
  )
125
128
  )
126
129
  );
127
- addSubscription(subscription) {
130
+ #addSubscription(subscription) {
128
131
  if (this.state.persistenceEnabled === false || !(subscription instanceof import_protocol.ServerSubscription)) return;
129
132
  const {
130
133
  criteria: { attributeRequests, eventRequests, isFabricFiltered },
@@ -165,8 +168,7 @@ class SubscriptionBehavior extends import_Behavior.Behavior {
165
168
  this.state.subscriptions.push(peerSubscription);
166
169
  }
167
170
  #subscriptionCancelled(subscription) {
168
- if (subscription.isCanceledByPeer) {
169
- if (this.state.persistenceEnabled === false) return;
171
+ if (subscription.isCanceledByPeer && this.state.persistenceEnabled !== false) {
170
172
  const { id } = subscription;
171
173
  const subscriptionIndex = this.state.subscriptions.findIndex(({ subscriptionId }) => id === subscriptionId);
172
174
  if (subscriptionIndex !== -1) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/behavior/system/subscription/SubscriptionBehavior.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["SubscriptionBehavior"]
6
6
  }
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { EventEmitter, Observable } from "#general";
7
- import { ExposedFabricInformation } from "#protocol";
7
+ import { ExposedFabricInformation, Subscription } from "#protocol";
8
8
  import { NodeId } from "#types";
9
9
  import { Behavior } from "../../Behavior.js";
10
10
  /**
@@ -35,6 +35,7 @@ export declare namespace SessionsBehavior {
35
35
  opened: Observable<[session: Session], void>;
36
36
  closed: Observable<[session: Session], void>;
37
37
  subscriptionsChanged: Observable<[session: Session], void>;
38
+ subscriptionAdded: Observable<[subscription: Subscription], void>;
38
39
  }
39
40
  }
40
41
  //# sourceMappingURL=SessionsBehavior.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SessionsBehavior.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/sessions/SessionsBehavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEpD,OAAO,EAAE,wBAAwB,EAA+C,MAAM,WAAW,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;;IAC1C,gBAAyB,EAAE,cAAc;IAEjC,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC;IAC9B,MAAM,EAAE,gBAAgB,CAAC,MAAM,CAAC;IAE/B,UAAU;CAsEtB;AAED,yBAAiB,gBAAgB,CAAC;IAC9B,UAAiB,OAAO;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,wBAAwB,CAAC;QAClC,YAAY,EAAE,OAAO,CAAC;QACtB,wBAAwB,EAAE,MAAM,GAAG,SAAS,CAAC;QAC7C,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;QACxC,2BAA2B,EAAE,MAAM,CAAC;KACvC;IAED,MAAa,KAAK;QACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;KAC1C;IAED,MAAa,MAAO,SAAQ,YAAY;QACpC,MAAM,uCAAoC;QAC1C,MAAM,uCAAoC;QAC1C,oBAAoB,uCAAoC;KAC3D;CACJ"}
1
+ {"version":3,"file":"SessionsBehavior.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/sessions/SessionsBehavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEpD,OAAO,EAAE,wBAAwB,EAAiC,YAAY,EAAE,MAAM,WAAW,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;;IAC1C,gBAAyB,EAAE,cAAc;IAEjC,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC;IAC9B,MAAM,EAAE,gBAAgB,CAAC,MAAM,CAAC;IAE/B,UAAU;CAsEtB;AAED,yBAAiB,gBAAgB,CAAC;IAC9B,UAAiB,OAAO;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,wBAAwB,CAAC;QAClC,YAAY,EAAE,OAAO,CAAC;QACtB,wBAAwB,EAAE,MAAM,GAAG,SAAS,CAAC;QAC7C,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;QACxC,2BAA2B,EAAE,MAAM,CAAC;KACvC;IAED,MAAa,KAAK;QACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;KAC1C;IAED,MAAa,MAAO,SAAQ,YAAY;QACpC,MAAM,uCAAoC;QAC1C,MAAM,uCAAoC;QAC1C,oBAAoB,uCAAoC;QACxD,iBAAiB,iDAA8C;KAClE;CACJ"}
@@ -6,7 +6,6 @@
6
6
  import { EventEmitter, Observable } from "#general";
7
7
  import { SessionManager } from "#protocol";
8
8
  import { Behavior } from "../../Behavior.js";
9
- import { SubscriptionBehavior } from "../subscription/SubscriptionBehavior.js";
10
9
  class SessionsBehavior extends Behavior {
11
10
  static id = "sessions";
12
11
  initialize() {
@@ -53,7 +52,7 @@ class SessionsBehavior extends Behavior {
53
52
  return;
54
53
  }
55
54
  if (session.subscriptions.has(subscription)) {
56
- this.agent.get(SubscriptionBehavior).addSubscription(subscription);
55
+ this.events.subscriptionAdded.emit(subscription);
57
56
  }
58
57
  const sessionEntry = this.state.sessions[session.id];
59
58
  if (sessionEntry === void 0) {
@@ -76,6 +75,7 @@ class SessionsBehavior extends Behavior {
76
75
  opened = Observable();
77
76
  closed = Observable();
78
77
  subscriptionsChanged = Observable();
78
+ subscriptionAdded = Observable();
79
79
  }
80
80
  SessionsBehavior2.Events = Events;
81
81
  })(SessionsBehavior || (SessionsBehavior = {}));
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/behavior/system/sessions/SessionsBehavior.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,cAAc,kBAAkB;AAEzC,SAAkD,sBAAoC;AAGtF,SAAS,gBAAgB;AACzB,SAAS,4BAA4B;AAK9B,MAAM,yBAAyB,SAAS;AAAA,EAC3C,OAAyB,KAAK;AAAA,EAKrB,aAAa;AAClB,UAAM,MAAM,KAAK;AACjB,QAAI,IAAI,IAAI,cAAc,GAAG;AACzB,WAAK,iBAAiB,IAAI,IAAI,cAAc,CAAC;AAAA,IACjD;AACA,SAAK,QAAS,KAAK,SAAS,UAA4B,SAAS,KAAK,iBAAiB;AAAA,EAC3F;AAAA,EAEA,yBAAyB,SAAkD;AACvE,WAAO;AAAA,MACH,MAAM,QAAQ;AAAA,MACd,QAAQ,QAAQ;AAAA,MAChB,YAAY,QAAQ;AAAA,MACpB,QAAQ,QAAQ,QAAQ;AAAA,MACxB,cAAc,QAAQ,aAAa;AAAA,MACnC,0BAA0B,QAAQ;AAAA,MAClC,qBAAqB,QAAQ;AAAA,MAC7B,6BAA6B,QAAQ,cAAc;AAAA,IACvD;AAAA,EACJ;AAAA,EAEA,iBAAiB,UAA0B;AACvC,SAAK,QAAQ,SAAS,SAAS,OAAO,KAAK,cAAc;AAEzD,SAAK,QAAQ,SAAS,SAAS,SAAS,KAAK,cAAc;AAE3D,SAAK,QAAQ,SAAS,sBAAsB,KAAK,uBAAuB,EAAE,MAAM,KAAK,CAAC;AAAA,EAC1F;AAAA,EAEA,eAAe,SAAwB;AACnC,QAAI,QAAQ,QAAQ;AAChB;AAAA,IACJ;AACA,UAAM,iBAAiB,KAAK,yBAAyB,OAAO;AAC5D,SAAK,MAAM,SAAS,QAAQ,EAAE,IAAI;AAClC,SAAK,OAAO,OAAO,KAAK,cAAc;AAAA,EAC1C;AAAA,EAEA,eAAe,SAAwB;AACnC,QAAI,EAAE,QAAQ,MAAM,KAAK,MAAM,WAAW;AACtC;AAAA,IACJ;AAEA,WAAO,KAAK,MAAM,SAAS,QAAQ,EAAE;AACrC,SAAK,OAAO,OAAO,KAAK,KAAK,yBAAyB,OAAO,CAAC;AAAA,EAClE;AAAA,EAEA,sBAAsB,SAAwB,cAA4B;AACtE,QAAI,QAAQ,QAAQ;AAChB;AAAA,IACJ;AAGA,QAAI,QAAQ,cAAc,IAAI,YAAY,GAAG;AACzC,WAAK,MAAM,IAAI,oBAAoB,EAAE,gBAAgB,YAAY;AAAA,IACrE;AAEA,UAAM,eAAe,KAAK,MAAM,SAAS,QAAQ,EAAE;AACnD,QAAI,iBAAiB,QAAW;AAC5B;AAAA,IACJ;AAEA,iBAAa,8BAA8B,QAAQ,cAAc;AACjE,SAAK,MAAM,SAAS,QAAQ,EAAE,IAAI;AAClC,SAAK,OAAO,qBAAqB,KAAK,YAAY;AAAA,EACtD;AAAA,EAEA,oBAAoB;AAChB,SAAK,MAAM,WAAW,CAAC;AAAA,EAC3B;AACJ;AAAA,CAEO,CAAUA,sBAAV;AAAA,EAYI,MAAM,MAAM;AAAA,IACf,WAAoC,CAAC;AAAA,EACzC;AAFO,EAAAA,kBAAM;AAAA,EAIN,MAAM,eAAe,aAAa;AAAA,IACrC,SAAS,WAA+B;AAAA,IACxC,SAAS,WAA+B;AAAA,IACxC,uBAAuB,WAA+B;AAAA,EAC1D;AAJO,EAAAA,kBAAM;AAAA,GAhBA;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,cAAc,kBAAkB;AAEzC,SAAkD,sBAAoC;AAGtF,SAAS,gBAAgB;AAKlB,MAAM,yBAAyB,SAAS;AAAA,EAC3C,OAAyB,KAAK;AAAA,EAKrB,aAAa;AAClB,UAAM,MAAM,KAAK;AACjB,QAAI,IAAI,IAAI,cAAc,GAAG;AACzB,WAAK,iBAAiB,IAAI,IAAI,cAAc,CAAC;AAAA,IACjD;AACA,SAAK,QAAS,KAAK,SAAS,UAA4B,SAAS,KAAK,iBAAiB;AAAA,EAC3F;AAAA,EAEA,yBAAyB,SAAkD;AACvE,WAAO;AAAA,MACH,MAAM,QAAQ;AAAA,MACd,QAAQ,QAAQ;AAAA,MAChB,YAAY,QAAQ;AAAA,MACpB,QAAQ,QAAQ,QAAQ;AAAA,MACxB,cAAc,QAAQ,aAAa;AAAA,MACnC,0BAA0B,QAAQ;AAAA,MAClC,qBAAqB,QAAQ;AAAA,MAC7B,6BAA6B,QAAQ,cAAc;AAAA,IACvD;AAAA,EACJ;AAAA,EAEA,iBAAiB,UAA0B;AACvC,SAAK,QAAQ,SAAS,SAAS,OAAO,KAAK,cAAc;AAEzD,SAAK,QAAQ,SAAS,SAAS,SAAS,KAAK,cAAc;AAE3D,SAAK,QAAQ,SAAS,sBAAsB,KAAK,uBAAuB,EAAE,MAAM,KAAK,CAAC;AAAA,EAC1F;AAAA,EAEA,eAAe,SAAwB;AACnC,QAAI,QAAQ,QAAQ;AAChB;AAAA,IACJ;AACA,UAAM,iBAAiB,KAAK,yBAAyB,OAAO;AAC5D,SAAK,MAAM,SAAS,QAAQ,EAAE,IAAI;AAClC,SAAK,OAAO,OAAO,KAAK,cAAc;AAAA,EAC1C;AAAA,EAEA,eAAe,SAAwB;AACnC,QAAI,EAAE,QAAQ,MAAM,KAAK,MAAM,WAAW;AACtC;AAAA,IACJ;AAEA,WAAO,KAAK,MAAM,SAAS,QAAQ,EAAE;AACrC,SAAK,OAAO,OAAO,KAAK,KAAK,yBAAyB,OAAO,CAAC;AAAA,EAClE;AAAA,EAEA,sBAAsB,SAAwB,cAA4B;AACtE,QAAI,QAAQ,QAAQ;AAChB;AAAA,IACJ;AAGA,QAAI,QAAQ,cAAc,IAAI,YAAY,GAAG;AACzC,WAAK,OAAO,kBAAkB,KAAK,YAAY;AAAA,IACnD;AAEA,UAAM,eAAe,KAAK,MAAM,SAAS,QAAQ,EAAE;AACnD,QAAI,iBAAiB,QAAW;AAC5B;AAAA,IACJ;AAEA,iBAAa,8BAA8B,QAAQ,cAAc;AACjE,SAAK,MAAM,SAAS,QAAQ,EAAE,IAAI;AAClC,SAAK,OAAO,qBAAqB,KAAK,YAAY;AAAA,EACtD;AAAA,EAEA,oBAAoB;AAChB,SAAK,MAAM,WAAW,CAAC;AAAA,EAC3B;AACJ;AAAA,CAEO,CAAUA,sBAAV;AAAA,EAYI,MAAM,MAAM;AAAA,IACf,WAAoC,CAAC;AAAA,EACzC;AAFO,EAAAA,kBAAM;AAAA,EAIN,MAAM,eAAe,aAAa;AAAA,IACrC,SAAS,WAA+B;AAAA,IACxC,SAAS,WAA+B;AAAA,IACxC,uBAAuB,WAA+B;AAAA,IACtD,oBAAoB,WAAyC;AAAA,EACjE;AALO,EAAAA,kBAAM;AAAA,GAhBA;",
5
5
  "names": ["SessionsBehavior"]
6
6
  }
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { DatatypeModel } from "#model";
7
7
  import { TransactionalInteractionServer } from "#node/index.js";
8
- import { PeerSubscription, Subscription } from "#protocol";
8
+ import { PeerSubscription } from "#protocol";
9
9
  import { Behavior } from "../../Behavior.js";
10
10
  /**
11
11
  * Subscriptions Persistence handling.
@@ -21,7 +21,6 @@ export declare class SubscriptionBehavior extends Behavior {
21
21
  internal: SubscriptionBehavior.Internal;
22
22
  initialize(): void;
23
23
  static schema: DatatypeModel;
24
- addSubscription(subscription: Subscription): void;
25
24
  reestablishFormerSubscriptions(interactionServer: TransactionalInteractionServer): Promise<void>;
26
25
  }
27
26
  export declare namespace SubscriptionBehavior {
@@ -1 +1 @@
1
- {"version":3,"file":"SubscriptionBehavior.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/subscription/SubscriptionBehavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,aAAa,EAAgB,MAAM,QAAQ,CAAC;AACrD,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAOH,gBAAgB,EAGhB,YAAY,EACf,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAM7C;;;;;;GAMG;AACH,qBAAa,oBAAqB,SAAQ,QAAQ;;IAC9C,gBAAyB,EAAE,kBAAkB;IAErC,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC;IAClC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,CAAC;IAEvC,UAAU;IAOnB,OAAgB,MAAM,gBAkFpB;IAEF,eAAe,CAAC,YAAY,EAAE,YAAY;IAiEpC,8BAA8B,CAAC,iBAAiB,EAAE,8BAA8B;CAmFzF;AAED,yBAAiB,oBAAoB,CAAC;IAClC,MAAa,KAAK;QACd,sEAAsE;QACtE,kBAAkB,UAAQ;QAE1B;;;WAGG;QACH,aAAa,EAAG,gBAAgB,EAAE,CAAC;KACtC;IAED,MAAa,QAAQ;QACjB;;;WAGG;QACH,mBAAmB,qBAA6B;KACnD;CACJ"}
1
+ {"version":3,"file":"SubscriptionBehavior.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/subscription/SubscriptionBehavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,aAAa,EAAgB,MAAM,QAAQ,CAAC;AACrD,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAOH,gBAAgB,EAInB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAO7C;;;;;;GAMG;AACH,qBAAa,oBAAqB,SAAQ,QAAQ;;IAC9C,gBAAyB,EAAE,kBAAkB;IAErC,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC;IAClC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,CAAC;IAEvC,UAAU;IAUnB,OAAgB,MAAM,gBAkFpB;IAkEI,8BAA8B,CAAC,iBAAiB,EAAE,8BAA8B;CAmFzF;AAED,yBAAiB,oBAAoB,CAAC;IAClC,MAAa,KAAK;QACd,sEAAsE;QACtE,kBAAkB,UAAQ;QAE1B;;;WAGG;QACH,aAAa,EAAG,gBAAgB,EAAE,CAAC;KACtC;IAED,MAAa,QAAQ;QACjB;;;WAGG;QACH,mBAAmB,qBAA6B;KACnD;CACJ"}
@@ -17,6 +17,7 @@ import {
17
17
  } from "#protocol";
18
18
  import { StatusCode, StatusResponseError } from "#types";
19
19
  import { Behavior } from "../../Behavior.js";
20
+ import { SessionsBehavior } from "../sessions/SessionsBehavior.js";
20
21
  const logger = Logger.get("SubscriptionBehavior");
21
22
  const REESTABLISH_SUBSCRIPTIONS_TIMEOUT_S = 2;
22
23
  class SubscriptionBehavior extends Behavior {
@@ -26,6 +27,8 @@ class SubscriptionBehavior extends Behavior {
26
27
  this.internal.formerSubscriptions = deepCopy(this.state.subscriptions);
27
28
  }
28
29
  this.state.subscriptions = [];
30
+ const sessions = this.agent.get(SessionsBehavior);
31
+ this.reactTo(sessions.events.subscriptionAdded, this.#addSubscription, { lock: true });
29
32
  }
30
33
  static schema = new DatatypeModel(
31
34
  {
@@ -110,7 +113,7 @@ class SubscriptionBehavior extends Behavior {
110
113
  )
111
114
  )
112
115
  );
113
- addSubscription(subscription) {
116
+ #addSubscription(subscription) {
114
117
  if (this.state.persistenceEnabled === false || !(subscription instanceof ServerSubscription)) return;
115
118
  const {
116
119
  criteria: { attributeRequests, eventRequests, isFabricFiltered },
@@ -151,8 +154,7 @@ class SubscriptionBehavior extends Behavior {
151
154
  this.state.subscriptions.push(peerSubscription);
152
155
  }
153
156
  #subscriptionCancelled(subscription) {
154
- if (subscription.isCanceledByPeer) {
155
- if (this.state.persistenceEnabled === false) return;
157
+ if (subscription.isCanceledByPeer && this.state.persistenceEnabled !== false) {
156
158
  const { id } = subscription;
157
159
  const subscriptionIndex = this.state.subscriptions.findIndex(({ subscriptionId }) => id === subscriptionId);
158
160
  if (subscriptionIndex !== -1) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/behavior/system/subscription/SubscriptionBehavior.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["SubscriptionBehavior"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/node",
3
- "version": "0.12.4",
3
+ "version": "0.12.5",
4
4
  "description": "API for building Matter nodes",
5
5
  "keywords": [
6
6
  "iot",
@@ -43,14 +43,14 @@
43
43
  },
44
44
  "dependencies": {
45
45
  "@noble/curves": "^1.8.1",
46
- "@matter/general": "0.12.4",
47
- "@matter/model": "0.12.4",
48
- "@matter/types": "0.12.4",
49
- "@matter/protocol": "0.12.4"
46
+ "@matter/general": "0.12.5",
47
+ "@matter/model": "0.12.5",
48
+ "@matter/types": "0.12.5",
49
+ "@matter/protocol": "0.12.5"
50
50
  },
51
51
  "devDependencies": {
52
- "@matter/tools": "0.12.4",
53
- "@matter/testing": "0.12.4"
52
+ "@matter/tools": "0.12.5",
53
+ "@matter/testing": "0.12.5"
54
54
  },
55
55
  "files": [
56
56
  "dist/**/*",
@@ -10,7 +10,6 @@ import { ExposedFabricInformation, SecureSession, SessionManager, Subscription }
10
10
  import { NodeId } from "#types";
11
11
  import { NodeLifecycle } from "../../../node/NodeLifecycle.js";
12
12
  import { Behavior } from "../../Behavior.js";
13
- import { SubscriptionBehavior } from "../subscription/SubscriptionBehavior.js";
14
13
 
15
14
  /**
16
15
  * Active {@link ServerNode} client sessions.
@@ -75,7 +74,7 @@ export class SessionsBehavior extends Behavior {
75
74
 
76
75
  // When subscription was added then inform SubscriptionBehavior
77
76
  if (session.subscriptions.has(subscription)) {
78
- this.agent.get(SubscriptionBehavior).addSubscription(subscription);
77
+ this.events.subscriptionAdded.emit(subscription);
79
78
  }
80
79
 
81
80
  const sessionEntry = this.state.sessions[session.id];
@@ -113,5 +112,6 @@ export namespace SessionsBehavior {
113
112
  opened = Observable<[session: Session]>();
114
113
  closed = Observable<[session: Session]>();
115
114
  subscriptionsChanged = Observable<[session: Session]>();
115
+ subscriptionAdded = Observable<[subscription: Subscription]>();
116
116
  }
117
117
  }
@@ -21,6 +21,7 @@ import {
21
21
  } from "#protocol";
22
22
  import { StatusCode, StatusResponseError } from "#types";
23
23
  import { Behavior } from "../../Behavior.js";
24
+ import { SessionsBehavior } from "../sessions/SessionsBehavior.js";
24
25
  const logger = Logger.get("SubscriptionBehavior");
25
26
 
26
27
  /** Timeout in seconds to wait for responses or discovery of the peer node when trying to re-establish a subscription. */
@@ -44,6 +45,9 @@ export class SubscriptionBehavior extends Behavior {
44
45
  this.internal.formerSubscriptions = deepCopy(this.state.subscriptions);
45
46
  }
46
47
  this.state.subscriptions = [];
48
+
49
+ const sessions = this.agent.get(SessionsBehavior);
50
+ this.reactTo(sessions.events.subscriptionAdded, this.#addSubscription, { lock: true });
47
51
  }
48
52
 
49
53
  static override schema = new DatatypeModel(
@@ -130,7 +134,7 @@ export class SubscriptionBehavior extends Behavior {
130
134
  ),
131
135
  );
132
136
 
133
- addSubscription(subscription: Subscription) {
137
+ #addSubscription(subscription: Subscription) {
134
138
  if (this.state.persistenceEnabled === false || !(subscription instanceof ServerSubscription)) return;
135
139
 
136
140
  const {
@@ -178,8 +182,7 @@ export class SubscriptionBehavior extends Behavior {
178
182
  }
179
183
 
180
184
  #subscriptionCancelled(subscription: Subscription): MaybePromise {
181
- if (subscription.isCanceledByPeer) {
182
- if (this.state.persistenceEnabled === false) return;
185
+ if (subscription.isCanceledByPeer && this.state.persistenceEnabled !== false) {
183
186
  const { id } = subscription;
184
187
  const subscriptionIndex = this.state.subscriptions.findIndex(({ subscriptionId }) => id === subscriptionId);
185
188
  if (subscriptionIndex !== -1) {