@matter/node 0.15.2-alpha.0-20250717-3607eeac6 → 0.15.2-alpha.0-20250718-7e661c331
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.
- package/dist/cjs/behavior/internal/BehaviorBacking.d.ts +2 -2
- package/dist/cjs/behavior/internal/BehaviorBacking.d.ts.map +1 -1
- package/dist/cjs/behavior/internal/BehaviorBacking.js +6 -1
- package/dist/cjs/behavior/internal/BehaviorBacking.js.map +1 -1
- package/dist/cjs/behavior/internal/ClientBehaviorBacking.d.ts +1 -6
- package/dist/cjs/behavior/internal/ClientBehaviorBacking.d.ts.map +1 -1
- package/dist/cjs/behavior/internal/ClientBehaviorBacking.js +0 -5
- package/dist/cjs/behavior/internal/ClientBehaviorBacking.js.map +1 -1
- package/dist/cjs/behavior/internal/ServerBehaviorBacking.d.ts +0 -3
- package/dist/cjs/behavior/internal/ServerBehaviorBacking.d.ts.map +1 -1
- package/dist/cjs/behavior/internal/ServerBehaviorBacking.js +0 -15
- package/dist/cjs/behavior/internal/ServerBehaviorBacking.js.map +1 -1
- package/dist/cjs/behavior/state/managed/Datasource.js +7 -3
- package/dist/cjs/behavior/state/managed/Datasource.js.map +1 -1
- package/dist/cjs/behavior/supervision/RootSupervisor.d.ts +2 -2
- package/dist/cjs/behavior/supervision/RootSupervisor.d.ts.map +1 -1
- package/dist/cjs/behavior/supervision/RootSupervisor.js +12 -10
- package/dist/cjs/behavior/supervision/RootSupervisor.js.map +1 -1
- package/dist/cjs/node/ClientNode.d.ts.map +1 -1
- package/dist/cjs/node/ClientNode.js +2 -2
- package/dist/cjs/node/ClientNode.js.map +1 -1
- package/dist/cjs/node/ServerNode.js +2 -2
- package/dist/cjs/node/ServerNode.js.map +1 -1
- package/dist/cjs/node/client/ClientEndpointInitializer.d.ts.map +1 -1
- package/dist/cjs/node/client/ClientEndpointInitializer.js +5 -4
- package/dist/cjs/node/client/ClientEndpointInitializer.js.map +2 -2
- package/dist/cjs/node/client/ClientStructure.d.ts +14 -2
- package/dist/cjs/node/client/ClientStructure.d.ts.map +1 -1
- package/dist/cjs/node/client/ClientStructure.js +21 -3
- package/dist/cjs/node/client/ClientStructure.js.map +1 -1
- package/dist/cjs/node/server/ServerEndpointInitializer.d.ts.map +1 -1
- package/dist/cjs/node/server/ServerEndpointInitializer.js +2 -1
- package/dist/cjs/node/server/ServerEndpointInitializer.js.map +1 -1
- package/dist/cjs/node/server/ServerEnvironment.d.ts.map +1 -1
- package/dist/cjs/node/server/ServerEnvironment.js +0 -2
- package/dist/cjs/node/server/ServerEnvironment.js.map +1 -1
- package/dist/cjs/storage/EndpointStore.d.ts +4 -4
- package/dist/cjs/storage/EndpointStore.d.ts.map +1 -1
- package/dist/cjs/storage/EndpointStore.js +9 -7
- package/dist/cjs/storage/EndpointStore.js.map +1 -1
- package/dist/cjs/storage/client/ClientEndpointStore.d.ts +24 -0
- package/dist/cjs/storage/client/ClientEndpointStore.d.ts.map +1 -0
- package/dist/cjs/storage/client/ClientEndpointStore.js +67 -0
- package/dist/cjs/storage/client/ClientEndpointStore.js.map +6 -0
- package/dist/cjs/storage/client/ClientNodeStore.d.ts +13 -3
- package/dist/cjs/storage/client/ClientNodeStore.d.ts.map +1 -1
- package/dist/cjs/storage/client/ClientNodeStore.js +24 -3
- package/dist/cjs/storage/client/ClientNodeStore.js.map +1 -1
- package/dist/cjs/storage/client/ClientNodeStores.d.ts +2 -2
- package/dist/cjs/storage/client/ClientNodeStores.d.ts.map +1 -1
- package/dist/cjs/storage/client/ClientNodeStores.js +1 -1
- package/dist/cjs/storage/client/ClientNodeStores.js.map +1 -1
- package/dist/cjs/storage/client/DatasourceCache.d.ts +2 -2
- package/dist/cjs/storage/client/DatasourceCache.d.ts.map +1 -1
- package/dist/cjs/storage/client/DatasourceCache.js +5 -3
- package/dist/cjs/storage/client/DatasourceCache.js.map +1 -1
- package/dist/cjs/storage/client/RemoteWriteParticipant.d.ts +30 -0
- package/dist/cjs/storage/client/RemoteWriteParticipant.d.ts.map +1 -0
- package/dist/cjs/storage/client/RemoteWriteParticipant.js +66 -0
- package/dist/cjs/storage/client/RemoteWriteParticipant.js.map +6 -0
- package/dist/cjs/storage/client/RemoteWriter.d.ts +29 -0
- package/dist/cjs/storage/client/RemoteWriter.d.ts.map +1 -0
- package/dist/cjs/storage/client/RemoteWriter.js +73 -0
- package/dist/cjs/storage/client/RemoteWriter.js.map +6 -0
- package/dist/cjs/storage/server/DatasourceStore.d.ts +0 -3
- package/dist/cjs/storage/server/DatasourceStore.d.ts.map +1 -1
- package/dist/cjs/storage/server/DatasourceStore.js.map +1 -1
- package/dist/cjs/storage/server/ServerEndpointStore.d.ts +4 -0
- package/dist/cjs/storage/server/ServerEndpointStore.d.ts.map +1 -1
- package/dist/cjs/storage/server/ServerEndpointStore.js +8 -0
- package/dist/cjs/storage/server/ServerEndpointStore.js.map +1 -1
- package/dist/cjs/storage/server/ServerNodeStore.d.ts +3 -2
- package/dist/cjs/storage/server/ServerNodeStore.d.ts.map +1 -1
- package/dist/cjs/storage/server/ServerNodeStore.js.map +1 -1
- package/dist/esm/behavior/internal/BehaviorBacking.d.ts +2 -2
- package/dist/esm/behavior/internal/BehaviorBacking.d.ts.map +1 -1
- package/dist/esm/behavior/internal/BehaviorBacking.js +6 -1
- package/dist/esm/behavior/internal/BehaviorBacking.js.map +1 -1
- package/dist/esm/behavior/internal/ClientBehaviorBacking.d.ts +1 -6
- package/dist/esm/behavior/internal/ClientBehaviorBacking.d.ts.map +1 -1
- package/dist/esm/behavior/internal/ClientBehaviorBacking.js +0 -5
- package/dist/esm/behavior/internal/ClientBehaviorBacking.js.map +1 -1
- package/dist/esm/behavior/internal/ServerBehaviorBacking.d.ts +0 -3
- package/dist/esm/behavior/internal/ServerBehaviorBacking.d.ts.map +1 -1
- package/dist/esm/behavior/internal/ServerBehaviorBacking.js +0 -15
- package/dist/esm/behavior/internal/ServerBehaviorBacking.js.map +1 -1
- package/dist/esm/behavior/state/managed/Datasource.js +7 -3
- package/dist/esm/behavior/state/managed/Datasource.js.map +1 -1
- package/dist/esm/behavior/supervision/RootSupervisor.d.ts +2 -2
- package/dist/esm/behavior/supervision/RootSupervisor.d.ts.map +1 -1
- package/dist/esm/behavior/supervision/RootSupervisor.js +12 -10
- package/dist/esm/behavior/supervision/RootSupervisor.js.map +1 -1
- package/dist/esm/node/ClientNode.d.ts.map +1 -1
- package/dist/esm/node/ClientNode.js +2 -2
- package/dist/esm/node/ClientNode.js.map +1 -1
- package/dist/esm/node/ServerNode.js +2 -2
- package/dist/esm/node/ServerNode.js.map +1 -1
- package/dist/esm/node/client/ClientEndpointInitializer.d.ts.map +1 -1
- package/dist/esm/node/client/ClientEndpointInitializer.js +5 -4
- package/dist/esm/node/client/ClientEndpointInitializer.js.map +2 -2
- package/dist/esm/node/client/ClientStructure.d.ts +14 -2
- package/dist/esm/node/client/ClientStructure.d.ts.map +1 -1
- package/dist/esm/node/client/ClientStructure.js +21 -3
- package/dist/esm/node/client/ClientStructure.js.map +1 -1
- package/dist/esm/node/server/ServerEndpointInitializer.d.ts.map +1 -1
- package/dist/esm/node/server/ServerEndpointInitializer.js +2 -1
- package/dist/esm/node/server/ServerEndpointInitializer.js.map +1 -1
- package/dist/esm/node/server/ServerEnvironment.d.ts.map +1 -1
- package/dist/esm/node/server/ServerEnvironment.js +0 -2
- package/dist/esm/node/server/ServerEnvironment.js.map +1 -1
- package/dist/esm/storage/EndpointStore.d.ts +4 -4
- package/dist/esm/storage/EndpointStore.d.ts.map +1 -1
- package/dist/esm/storage/EndpointStore.js +9 -7
- package/dist/esm/storage/EndpointStore.js.map +1 -1
- package/dist/esm/storage/client/ClientEndpointStore.d.ts +24 -0
- package/dist/esm/storage/client/ClientEndpointStore.d.ts.map +1 -0
- package/dist/esm/storage/client/ClientEndpointStore.js +47 -0
- package/dist/esm/storage/client/ClientEndpointStore.js.map +6 -0
- package/dist/esm/storage/client/ClientNodeStore.d.ts +13 -3
- package/dist/esm/storage/client/ClientNodeStore.d.ts.map +1 -1
- package/dist/esm/storage/client/ClientNodeStore.js +24 -3
- package/dist/esm/storage/client/ClientNodeStore.js.map +1 -1
- package/dist/esm/storage/client/ClientNodeStores.d.ts +2 -2
- package/dist/esm/storage/client/ClientNodeStores.d.ts.map +1 -1
- package/dist/esm/storage/client/ClientNodeStores.js +1 -1
- package/dist/esm/storage/client/ClientNodeStores.js.map +1 -1
- package/dist/esm/storage/client/DatasourceCache.d.ts +2 -2
- package/dist/esm/storage/client/DatasourceCache.d.ts.map +1 -1
- package/dist/esm/storage/client/DatasourceCache.js +5 -3
- package/dist/esm/storage/client/DatasourceCache.js.map +1 -1
- package/dist/esm/storage/client/RemoteWriteParticipant.d.ts +30 -0
- package/dist/esm/storage/client/RemoteWriteParticipant.d.ts.map +1 -0
- package/dist/esm/storage/client/RemoteWriteParticipant.js +46 -0
- package/dist/esm/storage/client/RemoteWriteParticipant.js.map +6 -0
- package/dist/esm/storage/client/RemoteWriter.d.ts +29 -0
- package/dist/esm/storage/client/RemoteWriter.d.ts.map +1 -0
- package/dist/esm/storage/client/RemoteWriter.js +53 -0
- package/dist/esm/storage/client/RemoteWriter.js.map +6 -0
- package/dist/esm/storage/server/DatasourceStore.d.ts +0 -3
- package/dist/esm/storage/server/DatasourceStore.d.ts.map +1 -1
- package/dist/esm/storage/server/DatasourceStore.js.map +1 -1
- package/dist/esm/storage/server/ServerEndpointStore.d.ts +4 -0
- package/dist/esm/storage/server/ServerEndpointStore.d.ts.map +1 -1
- package/dist/esm/storage/server/ServerEndpointStore.js +8 -0
- package/dist/esm/storage/server/ServerEndpointStore.js.map +1 -1
- package/dist/esm/storage/server/ServerNodeStore.d.ts +3 -2
- package/dist/esm/storage/server/ServerNodeStore.d.ts.map +1 -1
- package/dist/esm/storage/server/ServerNodeStore.js.map +1 -1
- package/package.json +7 -7
- package/src/behavior/internal/BehaviorBacking.ts +3 -2
- package/src/behavior/internal/ClientBehaviorBacking.ts +0 -15
- package/src/behavior/internal/ServerBehaviorBacking.ts +0 -19
- package/src/behavior/state/managed/Datasource.ts +10 -3
- package/src/behavior/supervision/RootSupervisor.ts +18 -15
- package/src/node/ClientNode.ts +4 -2
- package/src/node/ServerNode.ts +2 -2
- package/src/node/client/ClientEndpointInitializer.ts +7 -3
- package/src/node/client/ClientStructure.ts +26 -6
- package/src/node/server/ServerEndpointInitializer.ts +3 -1
- package/src/node/server/ServerEnvironment.ts +0 -2
- package/src/storage/EndpointStore.ts +9 -9
- package/src/storage/client/ClientEndpointStore.ts +53 -0
- package/src/storage/client/ClientNodeStore.ts +38 -6
- package/src/storage/client/ClientNodeStores.ts +3 -4
- package/src/storage/client/DatasourceCache.ts +10 -7
- package/src/storage/client/RemoteWriteParticipant.ts +62 -0
- package/src/storage/client/RemoteWriter.ts +81 -0
- package/src/storage/server/DatasourceStore.ts +1 -6
- package/src/storage/server/ServerEndpointStore.ts +9 -0
- package/src/storage/server/ServerNodeStore.ts +4 -2
|
@@ -70,13 +70,21 @@ class ClientStructure {
|
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
/**
|
|
73
|
-
* Obtain the store for a
|
|
73
|
+
* Obtain the store for a remote cluster.
|
|
74
74
|
*/
|
|
75
|
-
|
|
75
|
+
storeForRemote(endpoint, type) {
|
|
76
76
|
const endpointStructure = this.#endpointFor(endpoint.number);
|
|
77
77
|
const clusterStructure = this.#clusterFor(endpointStructure, type.cluster.id);
|
|
78
78
|
return clusterStructure.store;
|
|
79
79
|
}
|
|
80
|
+
/**
|
|
81
|
+
*
|
|
82
|
+
* @param request
|
|
83
|
+
* @returns
|
|
84
|
+
*/
|
|
85
|
+
storeForLocal(endpoint, type) {
|
|
86
|
+
return this.#nodeStore.storeForEndpoint(endpoint).createStoreForLocalBehavior(type.id);
|
|
87
|
+
}
|
|
80
88
|
/**
|
|
81
89
|
* Inject version filters into a Read or Subscribe request.
|
|
82
90
|
*/
|
|
@@ -145,6 +153,16 @@ class ClientStructure {
|
|
|
145
153
|
await this.#updateCluster(currentUpdates);
|
|
146
154
|
}
|
|
147
155
|
}
|
|
156
|
+
/**
|
|
157
|
+
* Obtain the {@link ClusterType} for an endpoint number and cluster ID.
|
|
158
|
+
*/
|
|
159
|
+
clusterFor(endpoint, cluster) {
|
|
160
|
+
const ep = this.#endpointFor(endpoint);
|
|
161
|
+
if (!ep) {
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
return this.#clusterFor(ep, cluster)?.behavior?.cluster;
|
|
165
|
+
}
|
|
148
166
|
/**
|
|
149
167
|
* Apply new attribute values for specific endpoint/cluster.
|
|
150
168
|
*
|
|
@@ -261,7 +279,7 @@ class ClientStructure {
|
|
|
261
279
|
}
|
|
262
280
|
cluster = {
|
|
263
281
|
id,
|
|
264
|
-
store: this.#nodeStore.storeForEndpoint(endpoint.endpoint).createStoreForBehavior(id.toString()
|
|
282
|
+
store: this.#nodeStore.storeForEndpoint(endpoint.endpoint).createStoreForBehavior(id.toString())
|
|
265
283
|
};
|
|
266
284
|
endpoint.clusters[id] = cluster;
|
|
267
285
|
return cluster;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/node/client/ClientStructure.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["id"]
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerEndpointInitializer.d.ts","sourceRoot":"","sources":["../../../../src/node/server/ServerEndpointInitializer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAClF,OAAO,EAAE,WAAW,EAAyB,MAAM,UAAU,CAAC;AAM9D,qBAAa,yBAA0B,SAAQ,mBAAmB;;gBAGlD,WAAW,EAAE,WAAW;IAK3B,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAa1C,eAAe,CAAC,QAAQ,EAAE,QAAQ;IAQlC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAQ7C;;;;;OAKG;IACH,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,eAAe;
|
|
1
|
+
{"version":3,"file":"ServerEndpointInitializer.d.ts","sourceRoot":"","sources":["../../../../src/node/server/ServerEndpointInitializer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAClF,OAAO,EAAE,WAAW,EAAyB,MAAM,UAAU,CAAC;AAM9D,qBAAa,yBAA0B,SAAQ,mBAAmB;;gBAGlD,WAAW,EAAE,WAAW;IAK3B,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAa1C,eAAe,CAAC,QAAQ,EAAE,QAAQ;IAQlC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAQ7C;;;;;OAKG;IACH,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,eAAe;CA+C1E"}
|
|
@@ -67,7 +67,8 @@ class ServerEndpointInitializer extends import_EndpointInitializer.EndpointIniti
|
|
|
67
67
|
* initializes.
|
|
68
68
|
*/
|
|
69
69
|
createBacking(endpoint, type) {
|
|
70
|
-
|
|
70
|
+
const store = this.#store.storeForEndpoint(endpoint).createStoreForBehavior(type.id);
|
|
71
|
+
return new import_ServerBehaviorBacking.ServerBehaviorBacking(endpoint, type, store, endpoint.behaviors.optionsFor(type));
|
|
71
72
|
}
|
|
72
73
|
/**
|
|
73
74
|
* Select an ID for an endpoint automatically based on available metadata.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/node/server/ServerEndpointInitializer.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,mCAAsC;AACtC,sBAAyB;AACzB,iCAAoC;AACpC,qBAAmD;AACnD,6BAAgC;AAChC,8BAAiC;AAbjC;AAAA;AAAA;AAAA;AAAA;AAeA,MAAM,SAAS,sBAAO,IAAI,cAAc;AAEjC,MAAM,kCAAkC,+CAAoB;AAAA,EAC/D;AAAA,EAEA,YAAY,aAA0B;AAClC,UAAM;AACN,SAAK,SAAS,YAAY,IAAI,sCAAe;AAAA,EACjD;AAAA,EAES,qBAAqB,UAAoB;AAC9C,QAAI,CAAC,SAAS,UAAU,OAAO;AAC3B,eAAS,KAAK,KAAK,cAAc,QAAQ;AAAA,IAC7C;AAEA,SAAK,OAAO,eAAe,aAAa,QAAQ;AAGhD,QAAI,EAAE,yCAAiB,MAAM,SAAS,UAAU,YAAY;AACxD,eAAS,UAAU,OAAO,wCAAgB;AAAA,IAC9C;AAAA,EACJ;AAAA,EAEA,MAAM,gBAAgB,UAAoB;AACtC,QAAI,CAAC,SAAS,UAAU,OAAO;AAC3B;AAAA,IACJ;AAEA,UAAM,KAAK,OAAO,eAAe,sBAAsB,QAAQ;AAAA,EACnE;AAAA,EAEA,MAAM,qBAAqB,UAAoB;AAC3C,QAAI,CAAC,SAAS,UAAU,SAAS,SAAS,WAAW,GAAG;AACpD;AAAA,IACJ;AAEA,SAAK,OAAO,eAAe,2BAA2B,QAAQ;AAAA,EAClE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,cAAc,UAAoB,MAAsC;AACpE,WAAO,IAAI,mDAAsB,UAAU,MAAM,SAAS,UAAU,WAAW,IAAI,CAAC;AAAA,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,mCAAsC;AACtC,sBAAyB;AACzB,iCAAoC;AACpC,qBAAmD;AACnD,6BAAgC;AAChC,8BAAiC;AAbjC;AAAA;AAAA;AAAA;AAAA;AAeA,MAAM,SAAS,sBAAO,IAAI,cAAc;AAEjC,MAAM,kCAAkC,+CAAoB;AAAA,EAC/D;AAAA,EAEA,YAAY,aAA0B;AAClC,UAAM;AACN,SAAK,SAAS,YAAY,IAAI,sCAAe;AAAA,EACjD;AAAA,EAES,qBAAqB,UAAoB;AAC9C,QAAI,CAAC,SAAS,UAAU,OAAO;AAC3B,eAAS,KAAK,KAAK,cAAc,QAAQ;AAAA,IAC7C;AAEA,SAAK,OAAO,eAAe,aAAa,QAAQ;AAGhD,QAAI,EAAE,yCAAiB,MAAM,SAAS,UAAU,YAAY;AACxD,eAAS,UAAU,OAAO,wCAAgB;AAAA,IAC9C;AAAA,EACJ;AAAA,EAEA,MAAM,gBAAgB,UAAoB;AACtC,QAAI,CAAC,SAAS,UAAU,OAAO;AAC3B;AAAA,IACJ;AAEA,UAAM,KAAK,OAAO,eAAe,sBAAsB,QAAQ;AAAA,EACnE;AAAA,EAEA,MAAM,qBAAqB,UAAoB;AAC3C,QAAI,CAAC,SAAS,UAAU,SAAS,SAAS,WAAW,GAAG;AACpD;AAAA,IACJ;AAEA,SAAK,OAAO,eAAe,2BAA2B,QAAQ;AAAA,EAClE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,cAAc,UAAoB,MAAsC;AACpE,UAAM,QAAQ,KAAK,OAAO,iBAAiB,QAAQ,EAAE,uBAAuB,KAAK,EAAE;AAEnF,WAAO,IAAI,mDAAsB,UAAU,MAAM,OAAO,SAAS,UAAU,WAAW,IAAI,CAAC;AAAA,EAC/F;AAAA;AAAA;AAAA;AAAA,EAKA,cAAc,UAAoB;AAC9B,UAAM,YACF,SAAS,UAAU,UAAU,oBAAoB,SAAS,UAAU,UAAU;AAClF,QAAI,WAAW;AACX,YAAM,WAAW;AAAA,QACb,GAAG,IAAI,UAAU,MAAM;AAAA,QACvB,GAAG,SAAS,UAAU,YAAY,SAAS;AAAA,MAC/C;AAEA,UAAIA,MAAM,SAAoC;AAC9C,UAAIA,KAAI;AACJ,eAAOA;AAAA,MACX;AAEA,MAAAA,MAAM,SAAoC;AAC1C,UAAIA,KAAI;AACJ,eAAOA;AAAA,MACX;AAAA,IACJ;AAEA,QAAI,EAAE,SAAS,iBAAiB,2BAAW;AACvC,YAAM,IAAI,6BAAc,2DAA2D;AAAA,IACvF;AACA,QAAI,CAAC,SAAS,MAAM,UAAU,OAAO;AACjC,YAAM,IAAI,6BAAc,2DAA2D;AAAA,IACvF;AAEA,UAAM,QAAQ,SAAS,MAAM,MAAM,QAAQ,QAAQ;AACnD,QAAI,UAAU,IAAI;AACd,YAAM,IAAI,6BAAc,wEAAwE;AAAA,IACpG;AAGA,UAAM,KAAK,OAAO,KAAK;AACvB,WAAO,KAAK,wBAAwB,EAAE,iBAAiB,SAAS,KAAK,oCAAoC;AAEzG,WAAO;AAAA,EACX;AACJ;",
|
|
5
5
|
"names": ["id"]
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerEnvironment.d.ts","sourceRoot":"","sources":["../../../../src/node/server/ServerEnvironment.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAU,UAAU,EAAE,MAAM,UAAU,CAAC;AAE9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ServerEnvironment.d.ts","sourceRoot":"","sources":["../../../../src/node/server/ServerEnvironment.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAU,UAAU,EAAE,MAAM,UAAU,CAAC;AAE9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAKtD;;GAEG;AACH,yBAAiB,iBAAiB,CAAC;IAC/B,sGAAsG;IAC/F,MAAM,yBAAyB,yBAAe,CAAC;IAEtD,SAAsB,UAAU,CAAC,IAAI,EAAE,UAAU,iBAuBhD;IAED,SAAsB,KAAK,CAAC,IAAI,EAAE,UAAU,iBAM3C;CACJ"}
|
|
@@ -26,7 +26,6 @@ var import_EndpointInitializer = require("#endpoint/properties/EndpointInitializ
|
|
|
26
26
|
var import_general = require("#general");
|
|
27
27
|
var import_ServerEndpointInitializer = require("#node/server/ServerEndpointInitializer.js");
|
|
28
28
|
var import_protocol = require("#protocol");
|
|
29
|
-
var import_NodeStore = require("#storage/NodeStore.js");
|
|
30
29
|
var import_ServerNodeStore = require("#storage/server/ServerNodeStore.js");
|
|
31
30
|
var import_IdentityService = require("./IdentityService.js");
|
|
32
31
|
/**
|
|
@@ -40,7 +39,6 @@ var ServerEnvironment;
|
|
|
40
39
|
async function initialize(node) {
|
|
41
40
|
const { env } = node;
|
|
42
41
|
const store = await import_ServerNodeStore.ServerNodeStore.create(env, node.id);
|
|
43
|
-
env.set(import_NodeStore.NodeStore, store);
|
|
44
42
|
env.set(import_ServerNodeStore.ServerNodeStore, store);
|
|
45
43
|
env.set(import_EndpointInitializer.EndpointInitializer, new import_ServerEndpointInitializer.ServerEndpointInitializer(env));
|
|
46
44
|
env.set(import_IdentityService.IdentityService, new import_IdentityService.IdentityService(node));
|
|
@@ -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,qCAA8C;AAC9C,iCAAoC;AACpC,qBAAmC;AACnC,uCAA0C;AAE1C,sBAA8C;AAC9C,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qCAA8C;AAC9C,iCAAoC;AACpC,qBAAmC;AACnC,uCAA0C;AAE1C,sBAA8C;AAC9C,6BAAgC;AAChC,6BAAgC;AAbhC;AAAA;AAAA;AAAA;AAAA;AAkBO,IAAU;AAAA,CAAV,CAAUA,uBAAV;AAEI,EAAMA,mBAAA,gCAA4B,2BAAW;AAEpD,iBAAsB,WAAW,MAAkB;AAC/C,UAAM,EAAE,IAAI,IAAI;AAGhB,UAAM,QAAQ,MAAM,uCAAgB,OAAO,KAAK,KAAK,EAAE;AACvD,QAAI,IAAI,wCAAiB,KAAK;AAC9B,QAAI,IAAI,gDAAqB,IAAI,2DAA0B,GAAG,CAAC;AAC/D,QAAI,IAAI,wCAAiB,IAAI,uCAAgB,IAAI,CAAC;AAGlD,UAAM,UAAU,MAAM,IAAI,KAAK,6BAAa;AAE5C,YAAQ,OAAO,QAAQ,GAAG,YAAY;AAClC,YAAM,gBAAgB,QAAQ,QAAQ,IAAI,YAAU,OAAO,WAAW;AACtE,UAAI,cAAc,SAAS,GAAG;AAC1B,kBAAM,8DAA8B,MAAM,aAAa;AAAA,MAC3D;AACA,MAAAA,mBAAA,0BAA0B,KAAK;AAAA,IACnC,CAAC;AAED,UAAM,IAAI,KAAK,8BAAc;AAE7B,QAAI,IAAI,qBAAM,EAAE,YAAY,KAAK,EAAE;AAAA,EACvC;AAvBA,EAAAA,mBAAsB;AAyBtB,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,GA7BT;",
|
|
5
5
|
"names": ["ServerEnvironment"]
|
|
6
6
|
}
|
|
@@ -5,22 +5,22 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { StorageContext } from "#general";
|
|
7
7
|
import { Val } from "#protocol";
|
|
8
|
-
import { DatasourceStore } from "./server/DatasourceStore.js";
|
|
9
8
|
/**
|
|
10
9
|
* Persistence for state values associated with a specific endpoint.
|
|
11
10
|
*/
|
|
12
11
|
export declare class EndpointStore {
|
|
13
12
|
#private;
|
|
14
|
-
protected initialValues:
|
|
13
|
+
protected initialValues: Map<string, Val.Struct>;
|
|
15
14
|
constructor(storage: StorageContext);
|
|
16
15
|
/**
|
|
17
16
|
* Retrieve the primary key used to identify this store.
|
|
18
17
|
*/
|
|
19
18
|
get id(): string;
|
|
20
19
|
/**
|
|
21
|
-
*
|
|
20
|
+
* Extract initial values for a behavior. Derivatives invoke this when instantiating a store. The values are then
|
|
21
|
+
* owned by the store.
|
|
22
22
|
*/
|
|
23
|
-
|
|
23
|
+
protected consumeInitialValues(behaviorId: string): Val.Struct | undefined;
|
|
24
24
|
/**
|
|
25
25
|
* Patch values. Keyed by {@link Behavior.id} then property name.
|
|
26
26
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EndpointStore.d.ts","sourceRoot":"","sources":["../../../src/storage/EndpointStore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAyB,MAAM,UAAU,CAAC;AACjE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"EndpointStore.d.ts","sourceRoot":"","sources":["../../../src/storage/EndpointStore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAyB,MAAM,UAAU,CAAC;AACjE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAEhC;;GAEG;AACH,qBAAa,aAAa;;IACtB,SAAS,CAAC,aAAa,0BAAiC;gBAM5C,OAAO,EAAE,cAAc;IAInC;;OAEG;IACH,IAAI,EAAE,WAEL;IAED;;;OAGG;IACH,SAAS,CAAC,oBAAoB,CAAC,UAAU,EAAE,MAAM;IAQjD;;;;OAIG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;IAkCxD;;OAEG;IACH,QAAQ;IAIR;;OAEG;IACH,IAAI,cAAc,gBAEjB;IAED;;OAEG;IACG,IAAI;IAiBV;;OAEG;IACH,KAAK;IAIL,SAAS,KAAK,OAAO,wBAEpB;CACJ"}
|
|
@@ -27,7 +27,7 @@ module.exports = __toCommonJS(EndpointStore_exports);
|
|
|
27
27
|
* SPDX-License-Identifier: Apache-2.0
|
|
28
28
|
*/
|
|
29
29
|
class EndpointStore {
|
|
30
|
-
initialValues =
|
|
30
|
+
initialValues = /* @__PURE__ */ new Map();
|
|
31
31
|
#storage;
|
|
32
32
|
#knownBehaviors = /* @__PURE__ */ new Set();
|
|
33
33
|
constructor(storage) {
|
|
@@ -40,14 +40,15 @@ class EndpointStore {
|
|
|
40
40
|
return this.storage.thisContexts[this.storage.thisContexts.length - 1];
|
|
41
41
|
}
|
|
42
42
|
/**
|
|
43
|
-
*
|
|
43
|
+
* Extract initial values for a behavior. Derivatives invoke this when instantiating a store. The values are then
|
|
44
|
+
* owned by the store.
|
|
44
45
|
*/
|
|
45
|
-
|
|
46
|
-
const initialValues = this.initialValues
|
|
46
|
+
consumeInitialValues(behaviorId) {
|
|
47
|
+
const initialValues = this.initialValues.get(behaviorId);
|
|
47
48
|
if (initialValues !== void 0) {
|
|
48
|
-
|
|
49
|
+
this.initialValues.delete(behaviorId);
|
|
49
50
|
}
|
|
50
|
-
return
|
|
51
|
+
return initialValues;
|
|
51
52
|
}
|
|
52
53
|
/**
|
|
53
54
|
* Patch values. Keyed by {@link Behavior.id} then property name.
|
|
@@ -102,7 +103,8 @@ class EndpointStore {
|
|
|
102
103
|
async load() {
|
|
103
104
|
this.#knownBehaviors = new Set(await this.storage.contexts());
|
|
104
105
|
for (const behaviorId of this.#knownBehaviors) {
|
|
105
|
-
const behaviorValues =
|
|
106
|
+
const behaviorValues = {};
|
|
107
|
+
this.initialValues.set(behaviorId, behaviorValues);
|
|
106
108
|
const behaviorStorage = this.storage.createContext(behaviorId);
|
|
107
109
|
const storedValues = await behaviorStorage.values();
|
|
108
110
|
for (const [key, value] of Object.entries(storedValues)) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/storage/EndpointStore.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaO,MAAM,cAAc;AAAA,EACb,gBAAgB,oBAAI,IAAwB;AAAA,EAEtD;AAAA,EAEA,kBAAkB,oBAAI,IAAY;AAAA,EAElC,YAAY,SAAyB;AACjC,SAAK,WAAW;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,KAAK;AACL,WAAO,KAAK,QAAQ,aAAa,KAAK,QAAQ,aAAa,SAAS,CAAC;AAAA,EACzE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMU,qBAAqB,YAAoB;AAC/C,UAAM,gBAAgB,KAAK,cAAc,IAAI,UAAU;AACvD,QAAI,kBAAkB,QAAW;AAC7B,WAAK,cAAc,OAAO,UAAU;AAAA,IACxC;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,IAAI,QAAgD;AACtD,eAAW,cAAc,QAAQ;AAC7B,YAAM,iBAAiB,OAAO,UAAU;AACxC,YAAM,kBAAkB,KAAK,QAAQ,cAAc,UAAU;AAE7D,UAAI,mBAAmB,QAAW;AAC9B,YAAI,KAAK,eAAe,IAAI,UAAU,GAAG;AACrC,gBAAM,gBAAgB,SAAS;AAC/B,eAAK,eAAe,OAAO,UAAU;AAAA,QACzC;AACA;AAAA,MACJ;AAEA,UAAI,CAAC,KAAK,eAAe,IAAI,UAAU,GAAG;AACtC,aAAK,eAAe,IAAI,UAAU;AAAA,MACtC;AAEA,YAAM,SAAS,CAAC;AAChB,UAAI,aAAa;AACjB,iBAAW,OAAO,gBAAgB;AAC9B,cAAM,QAAQ,eAAe,GAAG;AAChC,YAAI,UAAU,QAAW;AACrB,gBAAM,gBAAgB,OAAO,GAAG;AAAA,QACpC,OAAO;AACH,iBAAO,GAAG,IAAI;AACd;AAAA,QACJ;AAAA,MACJ;AACA,UAAI,aAAa,GAAG;AAChB,cAAM,gBAAgB,IAAI,MAAM;AAAA,MACpC;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW;AACP,WAAO,WAAW,KAAK,SAAS,aAAa,KAAK,GAAG,CAAC;AAAA,EAC1D;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,iBAAiB;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,OAAO;AACT,SAAK,kBAAkB,IAAI,IAAI,MAAM,KAAK,QAAQ,SAAS,CAAC;AAE5D,eAAW,cAAc,KAAK,iBAAiB;AAC3C,YAAM,iBAAiB,CAAC;AACxB,WAAK,cAAc,IAAI,YAAY,cAAc;AACjD,YAAM,kBAAkB,KAAK,QAAQ,cAAc,UAAU;AAE7D,YAAM,eAAe,MAAM,gBAAgB,OAAO;AAClD,iBAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,YAAY,GAAG;AACrD,YAAI,UAAU,QAAW;AACrB,yBAAe,GAAG,IAAI;AAAA,QAC1B;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAKA,QAAQ;AACJ,WAAO,KAAK,QAAQ,SAAS;AAAA,EACjC;AAAA,EAEA,IAAc,UAAU;AACpB,WAAO,KAAK;AAAA,EAChB;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { StorageContext, Transaction } from "#general";
|
|
7
|
+
import { EndpointStore } from "#storage/EndpointStore.js";
|
|
8
|
+
import type { EndpointNumber } from "#types";
|
|
9
|
+
import type { ClientNodeStore } from "./ClientNodeStore.js";
|
|
10
|
+
export declare class ClientEndpointStore extends EndpointStore {
|
|
11
|
+
#private;
|
|
12
|
+
constructor(owner: ClientNodeStore, number: EndpointNumber, storage: StorageContext);
|
|
13
|
+
get number(): EndpointNumber;
|
|
14
|
+
participantFor(transaction: Transaction): import("#general").Participant;
|
|
15
|
+
/**
|
|
16
|
+
* Create a {@link Datasource.ExternallyMutableStore} for a behavior.
|
|
17
|
+
*/
|
|
18
|
+
createStoreForBehavior(behaviorId: string): import("../../behavior/state/managed/Datasource.js").Datasource.ExternallyMutableStore;
|
|
19
|
+
/**
|
|
20
|
+
* Create a {@link Datasource.Store} for a behavior that does not track a remote cluster.
|
|
21
|
+
*/
|
|
22
|
+
createStoreForLocalBehavior(behaviorId: string): import("../../behavior/state/managed/Datasource.js").Datasource.Store;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=ClientEndpointStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClientEndpointStore.d.ts","sourceRoot":"","sources":["../../../../src/storage/client/ClientEndpointStore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI5D,qBAAa,mBAAoB,SAAQ,aAAa;;gBAItC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,cAAc;IAMnF,IAAI,MAAM,mBAET;IAED,cAAc,CAAC,WAAW,EAAE,WAAW;IASvC;;OAEG;IACH,sBAAsB,CAAC,UAAU,EAAE,MAAM;IAKzC;;OAEG;IACH,2BAA2B,CAAC,UAAU,EAAE,MAAM;CAIjD"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var ClientEndpointStore_exports = {};
|
|
20
|
+
__export(ClientEndpointStore_exports, {
|
|
21
|
+
ClientEndpointStore: () => ClientEndpointStore
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(ClientEndpointStore_exports);
|
|
24
|
+
var import_EndpointStore = require("#storage/EndpointStore.js");
|
|
25
|
+
var import_DatasourceStore = require("#storage/server/DatasourceStore.js");
|
|
26
|
+
var import_DatasourceCache = require("./DatasourceCache.js");
|
|
27
|
+
var import_RemoteWriteParticipant = require("./RemoteWriteParticipant.js");
|
|
28
|
+
/**
|
|
29
|
+
* @license
|
|
30
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
31
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
32
|
+
*/
|
|
33
|
+
class ClientEndpointStore extends import_EndpointStore.EndpointStore {
|
|
34
|
+
#owner;
|
|
35
|
+
#number;
|
|
36
|
+
constructor(owner, number, storage) {
|
|
37
|
+
super(storage);
|
|
38
|
+
this.#owner = owner;
|
|
39
|
+
this.#number = number;
|
|
40
|
+
}
|
|
41
|
+
get number() {
|
|
42
|
+
return this.#number;
|
|
43
|
+
}
|
|
44
|
+
participantFor(transaction) {
|
|
45
|
+
let participant = transaction.getParticipant(this.#owner);
|
|
46
|
+
if (participant === void 0) {
|
|
47
|
+
participant = new import_RemoteWriteParticipant.RemoteWriteParticipant(this.#owner);
|
|
48
|
+
transaction.addParticipants(participant);
|
|
49
|
+
}
|
|
50
|
+
return participant;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Create a {@link Datasource.ExternallyMutableStore} for a behavior.
|
|
54
|
+
*/
|
|
55
|
+
createStoreForBehavior(behaviorId) {
|
|
56
|
+
const initialValues = this.consumeInitialValues(behaviorId);
|
|
57
|
+
return (0, import_DatasourceCache.DatasourceCache)(this, behaviorId, initialValues);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Create a {@link Datasource.Store} for a behavior that does not track a remote cluster.
|
|
61
|
+
*/
|
|
62
|
+
createStoreForLocalBehavior(behaviorId) {
|
|
63
|
+
const initialValues = this.consumeInitialValues(behaviorId);
|
|
64
|
+
return (0, import_DatasourceStore.DatasourceStore)(this, behaviorId, initialValues);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=ClientEndpointStore.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/storage/client/ClientEndpointStore.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,2BAA8B;AAC9B,6BAAgC;AAGhC,6BAAgC;AAChC,oCAAuC;AAZvC;AAAA;AAAA;AAAA;AAAA;AAcO,MAAM,4BAA4B,mCAAc;AAAA,EACnD;AAAA,EACA;AAAA,EAEA,YAAY,OAAwB,QAAwB,SAAyB;AACjF,UAAM,OAAO;AACb,SAAK,SAAS;AACd,SAAK,UAAU;AAAA,EACnB;AAAA,EAEA,IAAI,SAAS;AACT,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,eAAe,aAA0B;AACrC,QAAI,cAAc,YAAY,eAAe,KAAK,MAAM;AACxD,QAAI,gBAAgB,QAAW;AAC3B,oBAAc,IAAI,qDAAuB,KAAK,MAAM;AACpD,kBAAY,gBAAgB,WAAW;AAAA,IAC3C;AACA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA,EAKA,uBAAuB,YAAoB;AACvC,UAAM,gBAAgB,KAAK,qBAAqB,UAAU;AAC1D,eAAO,wCAAgB,MAAM,YAAY,aAAa;AAAA,EAC1D;AAAA;AAAA;AAAA;AAAA,EAKA,4BAA4B,YAAoB;AAC5C,UAAM,gBAAgB,KAAK,qBAAqB,UAAU;AAC1D,eAAO,wCAAgB,MAAM,YAAY,aAAa;AAAA,EAC1D;AACJ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -4,13 +4,23 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { Endpoint } from "#endpoint/Endpoint.js";
|
|
7
|
-
import {
|
|
7
|
+
import { StorageContextFactory } from "#general";
|
|
8
8
|
import { NodeStore } from "../NodeStore.js";
|
|
9
|
+
import { ClientEndpointStore } from "./ClientEndpointStore.js";
|
|
10
|
+
import type { RemoteWriter } from "./RemoteWriter.js";
|
|
11
|
+
/**
|
|
12
|
+
* {@link ClientNode} persistence.
|
|
13
|
+
*/
|
|
9
14
|
export declare class ClientNodeStore extends NodeStore {
|
|
10
15
|
#private;
|
|
11
|
-
|
|
16
|
+
constructor(id: string, storage: StorageContextFactory);
|
|
17
|
+
toString(): string;
|
|
18
|
+
get id(): string;
|
|
19
|
+
get write(): RemoteWriter;
|
|
20
|
+
set write(write: RemoteWriter);
|
|
21
|
+
get endpointStores(): MapIterator<ClientEndpointStore>;
|
|
12
22
|
erase(): void | Promise<void> | undefined;
|
|
13
|
-
storeForEndpoint(endpoint: Endpoint):
|
|
23
|
+
storeForEndpoint(endpoint: Endpoint): ClientEndpointStore;
|
|
14
24
|
protected load(): Promise<void>;
|
|
15
25
|
}
|
|
16
26
|
//# sourceMappingURL=ClientNodeStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClientNodeStore.d.ts","sourceRoot":"","sources":["../../../../src/storage/client/ClientNodeStore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"ClientNodeStore.d.ts","sourceRoot":"","sources":["../../../../src/storage/client/ClientNodeStore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAiC,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAGhF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;;gBAM9B,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB;IAK7C,QAAQ;IAIjB,IAAI,EAAE,WAEL;IAED,IAAI,KAAK,IAQQ,YAAY,CAF5B;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,YAAY,EAE5B;IAED,IAAI,cAAc,qCAEjB;IAEQ,KAAK;IAKL,gBAAgB,CAAC,QAAQ,EAAE,QAAQ;cAgBnB,IAAI;CAahC"}
|
|
@@ -22,16 +22,37 @@ __export(ClientNodeStore_exports, {
|
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(ClientNodeStore_exports);
|
|
24
24
|
var import_general = require("#general");
|
|
25
|
-
var import_EndpointStore = require("#storage/EndpointStore.js");
|
|
26
25
|
var import_NodeStore = require("../NodeStore.js");
|
|
26
|
+
var import_ClientEndpointStore = require("./ClientEndpointStore.js");
|
|
27
27
|
/**
|
|
28
28
|
* @license
|
|
29
29
|
* Copyright 2022-2025 Matter.js Authors
|
|
30
30
|
* SPDX-License-Identifier: Apache-2.0
|
|
31
31
|
*/
|
|
32
32
|
class ClientNodeStore extends import_NodeStore.NodeStore {
|
|
33
|
+
#id;
|
|
33
34
|
#storage;
|
|
34
35
|
#stores = /* @__PURE__ */ new Map();
|
|
36
|
+
#write;
|
|
37
|
+
constructor(id, storage) {
|
|
38
|
+
super(storage);
|
|
39
|
+
this.#id = id;
|
|
40
|
+
}
|
|
41
|
+
toString() {
|
|
42
|
+
return `client-node-store#${this.#id}`;
|
|
43
|
+
}
|
|
44
|
+
get id() {
|
|
45
|
+
return this.#id;
|
|
46
|
+
}
|
|
47
|
+
get write() {
|
|
48
|
+
if (this.#write === void 0) {
|
|
49
|
+
throw new import_general.InternalError("Write attempt on ClientNodeStore without writer installed");
|
|
50
|
+
}
|
|
51
|
+
return this.#write;
|
|
52
|
+
}
|
|
53
|
+
set write(write) {
|
|
54
|
+
this.#write = write;
|
|
55
|
+
}
|
|
35
56
|
get endpointStores() {
|
|
36
57
|
return this.#stores.values();
|
|
37
58
|
}
|
|
@@ -46,7 +67,7 @@ class ClientNodeStore extends import_NodeStore.NodeStore {
|
|
|
46
67
|
}
|
|
47
68
|
let store = this.#stores.get(number);
|
|
48
69
|
if (store === void 0) {
|
|
49
|
-
store = new
|
|
70
|
+
store = new import_ClientEndpointStore.ClientEndpointStore(this, number, this.#storage.createContext(number.toString()));
|
|
50
71
|
this.#stores.set(number, store);
|
|
51
72
|
}
|
|
52
73
|
return store;
|
|
@@ -58,7 +79,7 @@ class ClientNodeStore extends import_NodeStore.NodeStore {
|
|
|
58
79
|
if (Number.isNaN(number)) {
|
|
59
80
|
continue;
|
|
60
81
|
}
|
|
61
|
-
const store = new
|
|
82
|
+
const store = new import_ClientEndpointStore.ClientEndpointStore(this, number, this.#storage.createContext(id));
|
|
62
83
|
await store.load();
|
|
63
84
|
this.#stores.set(number, store);
|
|
64
85
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/storage/client/ClientNodeStore.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,qBAAqE;AAGrE,uBAA0B;AAC1B,iCAAoC;AAXpC;AAAA;AAAA;AAAA;AAAA;AAiBO,MAAM,wBAAwB,2BAAU;AAAA,EAC3C;AAAA,EACA;AAAA,EACA,UAAU,oBAAI,IAAyC;AAAA,EACvD;AAAA,EAEA,YAAY,IAAY,SAAgC;AACpD,UAAM,OAAO;AACb,SAAK,MAAM;AAAA,EACf;AAAA,EAES,WAAW;AAChB,WAAO,qBAAqB,KAAK,GAAG;AAAA,EACxC;AAAA,EAEA,IAAI,KAAK;AACL,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,QAAQ;AACR,QAAI,KAAK,WAAW,QAAW;AAC3B,YAAM,IAAI,6BAAc,2DAA2D;AAAA,IACvF;AAEA,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,MAAM,OAAqB;AAC3B,SAAK,SAAS;AAAA,EAClB;AAAA,EAEA,IAAI,iBAAiB;AACjB,WAAO,KAAK,QAAQ,OAAO;AAAA,EAC/B;AAAA,EAES,QAAQ;AACb,SAAK,UAAU,oBAAI,IAAI;AACvB,WAAO,KAAK,UAAU,SAAS;AAAA,EACnC;AAAA,EAES,iBAAiB,UAAoB;AAC1C,UAAM,EAAE,OAAO,IAAI;AAEnB,QAAI,KAAK,aAAa,QAAW;AAC7B,YAAM,IAAI,6BAAc,oBAAoB,KAAK,SAAS,CAAC,cAAc,MAAM,uBAAuB;AAAA,IAC1G;AAEA,QAAI,QAAQ,KAAK,QAAQ,IAAI,MAAM;AACnC,QAAI,UAAU,QAAW;AACrB,cAAQ,IAAI,+CAAoB,MAAM,QAAQ,KAAK,SAAS,cAAc,OAAO,SAAS,CAAC,CAAC;AAC5F,WAAK,QAAQ,IAAI,QAAQ,KAAK;AAAA,IAClC;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,MAAyB,OAAO;AAC5B,SAAK,WAAW,KAAK,eAAe,cAAc,WAAW;AAC7D,eAAW,MAAM,MAAM,KAAK,SAAS,SAAS,GAAG;AAC7C,YAAM,SAAS,OAAO,SAAS,EAAE;AACjC,UAAI,OAAO,MAAM,MAAM,GAAG;AACtB;AAAA,MACJ;AAEA,YAAM,QAAQ,IAAI,+CAAoB,MAAM,QAAQ,KAAK,SAAS,cAAc,EAAE,CAAC;AACnF,YAAM,MAAM,KAAK;AACjB,WAAK,QAAQ,IAAI,QAAQ,KAAK;AAAA,IAClC;AAAA,EACJ;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Construction, StorageContext } from "#general";
|
|
7
7
|
import type { ClientNode } from "#node/ClientNode.js";
|
|
8
|
-
import {
|
|
8
|
+
import { ClientNodeStore } from "./ClientNodeStore.js";
|
|
9
9
|
/**
|
|
10
10
|
* Manages {@link ClientNodeStore}s for a {@link Node}.
|
|
11
11
|
*/
|
|
@@ -26,7 +26,7 @@ export declare class ClientNodeStores {
|
|
|
26
26
|
*
|
|
27
27
|
* These stores are cached internally by ID.
|
|
28
28
|
*/
|
|
29
|
-
storeForNode(node: ClientNode):
|
|
29
|
+
storeForNode(node: ClientNode): ClientNodeStore;
|
|
30
30
|
/**
|
|
31
31
|
* List all nodes present.
|
|
32
32
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClientNodeStores.d.ts","sourceRoot":"","sources":["../../../../src/storage/client/ClientNodeStores.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAwB,cAAc,EAAE,MAAM,UAAU,CAAC;AAC9E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ClientNodeStores.d.ts","sourceRoot":"","sources":["../../../../src/storage/client/ClientNodeStores.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAwB,cAAc,EAAE,MAAM,UAAU,CAAC;AAC9E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAIvD;;GAEG;AACH,qBAAa,gBAAgB;;IAMzB,IAAI,YAAY,mCAEf;gBAEW,OAAO,EAAE,cAAc;IAM7B,CAAC,YAAY,CAAC,SAAS,CAAC;IAwB9B;;;;;OAKG;IACH,UAAU;IAMV;;;;OAIG;IACH,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,eAAe;IAW/C;;OAEG;IACH,IAAI,QAAQ,aAIX;IAEK,KAAK;CAUd"}
|
|
@@ -95,7 +95,7 @@ class ClientNodeStores {
|
|
|
95
95
|
await this.construction;
|
|
96
96
|
}
|
|
97
97
|
#createNodeStore(id) {
|
|
98
|
-
const store = new import_ClientNodeStore.ClientNodeStore(this.#storage.createContext(id));
|
|
98
|
+
const store = new import_ClientNodeStore.ClientNodeStore(id, this.#storage.createContext(id));
|
|
99
99
|
store.construction.start();
|
|
100
100
|
this.#stores[id] = store;
|
|
101
101
|
return store;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/storage/client/ClientNodeStores.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAmE;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAmE;AAGnE,6BAAgC;AAThC;AAAA;AAAA;AAAA;AAAA;AAWA,MAAM,mBAAmB;AAKlB,MAAM,iBAAiB;AAAA,EAC1B;AAAA,EACA,UAAU,CAAC;AAAA,EACX;AAAA,EACA,mBAAmB;AAAA,EAEnB,IAAI,eAAe;AACf,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,YAAY,SAAyB;AACjC,SAAK,WAAW;AAChB,SAAK,oBAAgB,6BAAa,IAAI;AACtC,SAAK,cAAc,MAAM;AAAA,EAC7B;AAAA,EAEA,OAAO,4BAAa,SAAS,IAAI;AAC7B,UAAM,WAAW,MAAM,KAAK,SAAS,SAAS;AAE9C,eAAW,MAAM,UAAU;AACvB,UAAI,CAAC,GAAG,WAAW,gBAAgB,GAAG;AAClC;AAAA,MACJ;AAEA,YAAM,MAAM,OAAO,SAAS,GAAG,MAAM,iBAAiB,MAAM,CAAC;AAC7D,UAAI,CAAC,OAAO,MAAM,GAAG,GAAG;AACpB,YAAI,KAAK,oBAAoB,KAAK;AAC9B,eAAK,mBAAmB,MAAM;AAAA,QAClC;AAAA,MACJ;AAEA,WAAK,iBAAiB,EAAE;AAAA,IAC5B;AAEA,UAAM,oCAAqB;AAAA,MACvB,OAAO,OAAO,KAAK,OAAO,EAAE,IAAI,WAAS,MAAM,aAAa,KAAK;AAAA,MACjE;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,aAAa;AACT,SAAK,cAAc,OAAO;AAE1B,WAAO,GAAG,gBAAgB,GAAG,KAAK,kBAAkB;AAAA,EACxD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,aAAa,MAAmC;AAC5C,SAAK,cAAc,OAAO;AAE1B,UAAM,QAAQ,KAAK,QAAQ,KAAK,EAAE;AAClC,QAAI,OAAO;AACP,aAAO;AAAA,IACX;AAEA,WAAO,KAAK,iBAAiB,KAAK,EAAE;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,WAAW;AACX,SAAK,cAAc,OAAO;AAE1B,WAAO,OAAO,KAAK,KAAK,OAAO;AAAA,EACnC;AAAA,EAEA,MAAM,QAAQ;AACV,UAAM,KAAK;AAAA,EACf;AAAA,EAEA,iBAAiB,IAAY;AACzB,UAAM,QAAQ,IAAI,uCAAgB,IAAI,KAAK,SAAS,cAAc,EAAE,CAAC;AACrE,UAAM,aAAa,MAAM;AACzB,SAAK,QAAQ,EAAE,IAAI;AACnB,WAAO;AAAA,EACX;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Datasource } from "#behavior/state/managed/Datasource.js";
|
|
7
7
|
import { Val } from "#protocol";
|
|
8
|
-
import {
|
|
8
|
+
import type { ClientEndpointStore } from "./ClientEndpointStore.js";
|
|
9
9
|
/**
|
|
10
10
|
* Factory function for the default implementation of {@link Datasource.ExternallyMutableStore}.
|
|
11
11
|
*
|
|
12
12
|
* This implements storage for attribute values for a single cluster loaded from remote nodes.
|
|
13
13
|
*/
|
|
14
|
-
export declare function DatasourceCache(store:
|
|
14
|
+
export declare function DatasourceCache(store: ClientEndpointStore, behaviorId: string, initialValues: Val.Struct | undefined): Datasource.ExternallyMutableStore;
|
|
15
15
|
export declare namespace DatasourceCache {
|
|
16
16
|
/**
|
|
17
17
|
* Standard key for storing the version.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatasourceCache.d.ts","sourceRoot":"","sources":["../../../../src/storage/client/DatasourceCache.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAEnE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAChC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"DatasourceCache.d.ts","sourceRoot":"","sources":["../../../../src/storage/client/DatasourceCache.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAEnE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAChC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGpE;;;;GAIG;AACH,wBAAgB,eAAe,CAC3B,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,GAAG,CAAC,MAAM,GAAG,SAAS,GACtC,UAAU,CAAC,sBAAsB,CAyCnC;AAED,yBAAiB,eAAe,CAAC;IAC7B;;;;OAIG;IACI,MAAM,WAAW,gBAAgB,CAAC;CAC5C"}
|
|
@@ -23,7 +23,6 @@ __export(DatasourceCache_exports, {
|
|
|
23
23
|
module.exports = __toCommonJS(DatasourceCache_exports);
|
|
24
24
|
var import_Datasource = require("#behavior/state/managed/Datasource.js");
|
|
25
25
|
var import_general = require("#general");
|
|
26
|
-
var import_DatasourceStore = require("../server/DatasourceStore.js");
|
|
27
26
|
/**
|
|
28
27
|
* @license
|
|
29
28
|
* Copyright 2022-2025 Matter.js Authors
|
|
@@ -35,7 +34,11 @@ function DatasourceCache(store, behaviorId, initialValues) {
|
|
|
35
34
|
version = import_Datasource.Datasource.UNKNOWN_VERSION;
|
|
36
35
|
}
|
|
37
36
|
return {
|
|
38
|
-
|
|
37
|
+
initialValues,
|
|
38
|
+
async set(transaction, values) {
|
|
39
|
+
const participant = store.participantFor(transaction);
|
|
40
|
+
participant.set(store.number, behaviorId, values);
|
|
41
|
+
},
|
|
39
42
|
async externalSet(values) {
|
|
40
43
|
if (typeof values[DatasourceCache.VERSION_KEY] === "number") {
|
|
41
44
|
version = values[DatasourceCache.VERSION_KEY];
|
|
@@ -59,7 +62,6 @@ function DatasourceCache(store, behaviorId, initialValues) {
|
|
|
59
62
|
}
|
|
60
63
|
};
|
|
61
64
|
}
|
|
62
|
-
DatasourceCache;
|
|
63
65
|
((DatasourceCache2) => {
|
|
64
66
|
DatasourceCache2.VERSION_KEY = "__version__";
|
|
65
67
|
})(DatasourceCache || (DatasourceCache = {}));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/storage/client/DatasourceCache.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,wBAA2B;AAC3B,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,wBAA2B;AAC3B,qBAA2C;AAP3C;AAAA;AAAA;AAAA;AAAA;AAiBO,SAAS,gBACZ,OACA,YACA,eACiC;AACjC,MAAI,UAAU,gBAAgB,gBAAgB,WAAW;AACzD,MAAI,OAAO,YAAY,UAAU;AAC7B,cAAU,6BAAW;AAAA,EACzB;AAEA,SAAO;AAAA,IACH;AAAA,IAEA,MAAM,IAAI,aAA0B,QAAoB;AACpD,YAAM,cAAc,MAAM,eAAe,WAAW;AACpD,kBAAY,IAAI,MAAM,QAAQ,YAAY,MAAM;AAAA,IACpD;AAAA,IAEA,MAAM,YAAY,QAAoB;AAClC,UAAI,OAAO,OAAO,gBAAgB,WAAW,MAAM,UAAU;AACzD,kBAAU,OAAO,gBAAgB,WAAW;AAAA,MAChD;AAEA,YAAM,MAAM,IAAI,EAAE,CAAC,UAAU,GAAG,OAAO,CAAC;AAExC,UAAI,KAAK,wBAAwB;AAC7B,cAAM,KAAK,uBAAuB,MAAM;AAAA,MAC5C,OAAO;AACH,YAAI,CAAC,KAAK,eAAe;AACrB,eAAK,gBAAgB,CAAC;AAAA,QAC1B;AACA,eAAO,OAAO,KAAK,eAAe,MAAM;AAAA,MAC5C;AAAA,IACJ;AAAA,IAEA,wBAAwB;AAAA,IAExB,IAAI,UAAU;AACV,aAAO;AAAA,IACX;AAAA,IAEA,IAAI,QAAQ,UAAkB;AAC1B,YAAM,IAAI,6BAAc,gDAAgD;AAAA,IAC5E;AAAA,EACJ;AACJ;AAAA,CAEO,CAAUA,qBAAV;AAMI,EAAMA,iBAAA,cAAc;AAAA,GANd;",
|
|
5
5
|
"names": ["DatasourceCache"]
|
|
6
6
|
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Transaction } from "#general";
|
|
7
|
+
import { Val } from "#protocol";
|
|
8
|
+
import { EndpointNumber } from "#types";
|
|
9
|
+
import type { ClientNodeStore } from "./ClientNodeStore.js";
|
|
10
|
+
/**
|
|
11
|
+
* A transaction participant that persists changes to a remote node.
|
|
12
|
+
*
|
|
13
|
+
* There is one of these for node/transaction pair. All attributes in a transaction commit with a single interaction.
|
|
14
|
+
*/
|
|
15
|
+
export declare class RemoteWriteParticipant implements Transaction.Participant {
|
|
16
|
+
#private;
|
|
17
|
+
/**
|
|
18
|
+
* There is one participant for each transaction/client node pair. We therefore use the store as the role.
|
|
19
|
+
*/
|
|
20
|
+
get role(): ClientNodeStore;
|
|
21
|
+
/**
|
|
22
|
+
* Add an attribute update to the write request.
|
|
23
|
+
*/
|
|
24
|
+
set(endpointNumber: EndpointNumber, behaviorId: string, values: Val.Struct): void;
|
|
25
|
+
commit2(): Promise<void>;
|
|
26
|
+
rollback(): void;
|
|
27
|
+
toString(): string;
|
|
28
|
+
constructor(store: ClientNodeStore);
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=RemoteWriteParticipant.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RemoteWriteParticipant.d.ts","sourceRoot":"","sources":["../../../../src/storage/client/RemoteWriteParticipant.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D;;;;GAIG;AACH,qBAAa,sBAAuB,YAAW,WAAW,CAAC,WAAW;;IAIlE;;OAEG;IACH,IAAI,IAAI,oBAEP;IAED;;OAEG;IACH,GAAG,CAAC,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM;IAQpE,OAAO;IAWb,QAAQ;IAIR,QAAQ;gBAII,KAAK,EAAE,eAAe;CAGrC"}
|