@matter/nodejs 0.16.0-alpha.0-20250816-d22ad240d → 0.16.0-alpha.0-20250819-0a388db8b
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/net/NodeJsNetwork.d.ts.map +1 -1
- package/dist/cjs/net/NodeJsNetwork.js +1 -1
- package/dist/cjs/net/NodeJsNetwork.js.map +1 -1
- package/dist/cjs/net/NodeJsUdpChannel.d.ts +3 -3
- package/dist/cjs/net/NodeJsUdpChannel.d.ts.map +1 -1
- package/dist/cjs/net/NodeJsUdpChannel.js +6 -6
- package/dist/cjs/net/NodeJsUdpChannel.js.map +1 -1
- package/dist/cjs/storage/StorageBackendDisk.d.ts +2 -2
- package/dist/cjs/storage/StorageBackendDisk.d.ts.map +1 -1
- package/dist/cjs/storage/StorageBackendDisk.js.map +1 -1
- package/dist/cjs/storage/StorageBackendJsonFile.d.ts +1 -1
- package/dist/cjs/storage/StorageBackendJsonFile.d.ts.map +1 -1
- package/dist/cjs/storage/StorageBackendJsonFile.js +1 -1
- package/dist/cjs/storage/StorageBackendJsonFile.js.map +1 -1
- package/dist/cjs/time/startup.js +2 -2
- package/dist/cjs/time/startup.js.map +1 -1
- package/dist/esm/net/NodeJsNetwork.d.ts.map +1 -1
- package/dist/esm/net/NodeJsNetwork.js +2 -1
- package/dist/esm/net/NodeJsNetwork.js.map +1 -1
- package/dist/esm/net/NodeJsUdpChannel.d.ts +3 -3
- package/dist/esm/net/NodeJsUdpChannel.d.ts.map +1 -1
- package/dist/esm/net/NodeJsUdpChannel.js +8 -6
- package/dist/esm/net/NodeJsUdpChannel.js.map +1 -1
- package/dist/esm/storage/StorageBackendDisk.d.ts +2 -2
- package/dist/esm/storage/StorageBackendDisk.d.ts.map +1 -1
- package/dist/esm/storage/StorageBackendDisk.js.map +1 -1
- package/dist/esm/storage/StorageBackendJsonFile.d.ts +1 -1
- package/dist/esm/storage/StorageBackendJsonFile.d.ts.map +1 -1
- package/dist/esm/storage/StorageBackendJsonFile.js +2 -2
- package/dist/esm/storage/StorageBackendJsonFile.js.map +1 -1
- package/dist/esm/time/startup.js +3 -3
- package/dist/esm/time/startup.js.map +1 -1
- package/package.json +10 -10
- package/src/net/NodeJsNetwork.ts +2 -1
- package/src/net/NodeJsUdpChannel.ts +11 -11
- package/src/storage/StorageBackendDisk.ts +4 -3
- package/src/storage/StorageBackendJsonFile.ts +2 -2
- package/src/time/startup.ts +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeJsNetwork.d.ts","sourceRoot":"","sources":["../../../src/net/NodeJsNetwork.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"NodeJsNetwork.d.ts","sourceRoot":"","sources":["../../../src/net/NodeJsNetwork.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAMH,OAAO,EAEP,gBAAgB,EAChB,uBAAuB,EAEvB,UAAU,EACV,iBAAiB,EACpB,MAAM,UAAU,CAAC;AAMlB,qBAAa,aAAc,SAAQ,OAAO;IACtC,MAAM,CAAC,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAW1E,MAAM,CAAC,gCAAgC,CACnC,kBAAkB,EAAE,MAAM,GAAG,SAAS,EACtC,IAAI,EAAE,OAAO,GACd,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE;IA8BzB,MAAM,CAAC,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAMxE,MAAM,CAAC,oBAAoB,CAAC,EAAE,EAAE,MAAM;IAMtC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAInC;IAEa,KAAK;IAIpB,OAAO,CAAC,MAAM,CAAC,+BAA+B;IAwB9C,OAAO,CAAC,MAAM,CAAC,+BAA+B;IAa9C;;;;;;OAMG;IACH,gBAAgB,CAAC,aAAa,GAAE,gBAAgB,EAAO,GAAG,gBAAgB,EAAE;IAmB5E,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS;IAQ1D,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC;CAG7E"}
|
|
@@ -77,7 +77,7 @@ class NodeJsNetwork extends import_general.Network {
|
|
|
77
77
|
static netInterfaces = new import_general.Cache(
|
|
78
78
|
"Network interface",
|
|
79
79
|
(ip) => this.getNetInterfaceForRemoteAddress(ip),
|
|
80
|
-
5
|
|
80
|
+
(0, import_general.Minutes)(5)
|
|
81
81
|
);
|
|
82
82
|
async close() {
|
|
83
83
|
await NodeJsNetwork.netInterfaces.close();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/net/NodeJsNetwork.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { ChannelType, UdpChannel, UdpChannelOptions, UdpSocketType } from "#general";
|
|
6
|
+
import { Bytes, ChannelType, UdpChannel, UdpChannelOptions, UdpSocketType } from "#general";
|
|
7
7
|
import * as dgram from "node:dgram";
|
|
8
8
|
export declare class NodeJsUdpChannel implements UdpChannel {
|
|
9
9
|
#private;
|
|
@@ -12,10 +12,10 @@ export declare class NodeJsUdpChannel implements UdpChannel {
|
|
|
12
12
|
constructor(type: UdpSocketType, socket: dgram.Socket, netInterface?: string);
|
|
13
13
|
addMembership(membershipAddress: string): void;
|
|
14
14
|
dropMembership(membershipAddress: string): void;
|
|
15
|
-
onData(listener: (netInterface: string | undefined, peerAddress: string, peerPort: number, data:
|
|
15
|
+
onData(listener: (netInterface: string | undefined, peerAddress: string, peerPort: number, data: Bytes) => void): {
|
|
16
16
|
close: () => Promise<void>;
|
|
17
17
|
};
|
|
18
|
-
send(host: string, port: number, data:
|
|
18
|
+
send(host: string, port: number, data: Bytes): Promise<void>;
|
|
19
19
|
close(): Promise<void>;
|
|
20
20
|
get port(): number;
|
|
21
21
|
supports(type: ChannelType, address?: string): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeJsUdpChannel.d.ts","sourceRoot":"","sources":["../../../src/net/NodeJsUdpChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"NodeJsUdpChannel.d.ts","sourceRoot":"","sources":["../../../src/net/NodeJsUdpChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EACL,WAAW,EAaX,UAAU,EACV,iBAAiB,EACjB,aAAa,EAChB,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAqCpC,qBAAa,gBAAiB,YAAW,UAAU;;WAKlC,MAAM,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,EAAE,iBAAiB;IAmC9F,QAAQ,CAAC,cAAc,SAAwB;gBAWnC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAM5E,aAAa,CAAC,iBAAiB,EAAE,MAAM;IAkBvC,cAAc,CAAC,iBAAiB,EAAE,MAAM;IAkBxC,MAAM,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI;;;IAoCzG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK;IAsC5C,KAAK;IAUX,IAAI,IAAI,WAEP;IAED,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM;CAiB/C"}
|
|
@@ -41,7 +41,7 @@ var import_NodeJsNetwork = require("./NodeJsNetwork.js");
|
|
|
41
41
|
* SPDX-License-Identifier: Apache-2.0
|
|
42
42
|
*/
|
|
43
43
|
const logger = import_general.Logger.get("NodejsChannel");
|
|
44
|
-
const
|
|
44
|
+
const UDP_SEND_TIMEOUT_CHECK_INTERVAL = import_general.Seconds.one;
|
|
45
45
|
function createDgramSocket(host, port, options) {
|
|
46
46
|
const socket = dgram.createSocket(options);
|
|
47
47
|
return new Promise((resolve, reject) => {
|
|
@@ -114,7 +114,7 @@ class NodeJsUdpChannel {
|
|
|
114
114
|
*/
|
|
115
115
|
#sendTimer = import_general.Time.getTimer(
|
|
116
116
|
"UDPChannel.send timeout check",
|
|
117
|
-
|
|
117
|
+
UDP_SEND_TIMEOUT_CHECK_INTERVAL,
|
|
118
118
|
() => this.#rejectDanglingSends()
|
|
119
119
|
);
|
|
120
120
|
#sendsInProgress = /* @__PURE__ */ new Map();
|
|
@@ -173,10 +173,10 @@ class NodeJsUdpChannel {
|
|
|
173
173
|
if (this.#sendsInProgress.size === 0) {
|
|
174
174
|
return;
|
|
175
175
|
}
|
|
176
|
-
const now = import_general.Time.nowMs
|
|
176
|
+
const now = import_general.Time.nowMs;
|
|
177
177
|
for (const [promise, { sendMs, rejecter }] of this.#sendsInProgress) {
|
|
178
|
-
const elapsed = now - sendMs;
|
|
179
|
-
if (elapsed >=
|
|
178
|
+
const elapsed = (0, import_general.Millis)(now - sendMs);
|
|
179
|
+
if (elapsed >= UDP_SEND_TIMEOUT_CHECK_INTERVAL) {
|
|
180
180
|
this.#sendsInProgress.delete(promise);
|
|
181
181
|
rejecter(new import_general.NetworkError("UDP send timeout"));
|
|
182
182
|
}
|
|
@@ -204,7 +204,7 @@ class NodeJsUdpChannel {
|
|
|
204
204
|
rejecter(netError);
|
|
205
205
|
}
|
|
206
206
|
};
|
|
207
|
-
this.#sendsInProgress.set(promise, { sendMs: import_general.Time.nowMs
|
|
207
|
+
this.#sendsInProgress.set(promise, { sendMs: import_general.Time.nowMs, rejecter });
|
|
208
208
|
if (!this.#sendTimer.isRunning) {
|
|
209
209
|
this.#sendTimer.start();
|
|
210
210
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/net/NodeJsUdpChannel.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["error"]
|
|
6
6
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Storage, SupportedStorageTypes } from "#general";
|
|
6
|
+
import { Bytes, Storage, SupportedStorageTypes } from "#general";
|
|
7
7
|
export declare class StorageBackendDisk extends Storage {
|
|
8
8
|
#private;
|
|
9
9
|
protected isInitialized: boolean;
|
|
@@ -18,7 +18,7 @@ export declare class StorageBackendDisk extends Storage {
|
|
|
18
18
|
has(contexts: string[], key: string): Promise<boolean>;
|
|
19
19
|
get<T extends SupportedStorageTypes>(contexts: string[], key: string): Promise<T | undefined>;
|
|
20
20
|
openBlob(contexts: string[], key: string): Promise<Blob>;
|
|
21
|
-
writeBlobFromStream(contexts: string[], key: string, stream: ReadableStream<
|
|
21
|
+
writeBlobFromStream(contexts: string[], key: string, stream: ReadableStream<Bytes>): Promise<void>;
|
|
22
22
|
set(contexts: string[], key: string, value: SupportedStorageTypes): Promise<void>;
|
|
23
23
|
set(contexts: string[], values: Record<string, SupportedStorageTypes>): Promise<void>;
|
|
24
24
|
delete(contexts: string[], key: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageBackendDisk.d.ts","sourceRoot":"","sources":["../../../src/storage/StorageBackendDisk.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"StorageBackendDisk.d.ts","sourceRoot":"","sources":["../../../src/storage/StorageBackendDisk.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EAKL,OAAO,EAEP,qBAAqB,EAExB,MAAM,UAAU,CAAC;AAOlB,qBAAa,kBAAmB,SAAQ,OAAO;;IAG3C,SAAS,CAAC,aAAa,UAAS;gBAGpB,IAAI,EAAE,MAAM,EAAE,KAAK,UAAQ;IAMvC,IAAI,WAAW,YAEd;IAEK,UAAU;IA2BV,KAAK;IAKX,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAInB,KAAK;IAMX,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,iBAAiB,UAAQ;IAY/D,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM;IAWhC,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAe/D,GAAG,CAAC,CAAC,SAAS,qBAAqB,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAkB7F,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU9D,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC;IAIlF,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IACjF,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA2F/E,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM;IAM5C,yEAAyE;IACnE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE;IAiBvB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE;IAmBzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE;IAsB3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE;CAgBpC;AAED;;GAEG"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/storage/StorageBackendDisk.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["value"]
|
|
6
6
|
}
|
|
@@ -7,7 +7,7 @@ import { StorageBackendMemory, SupportedStorageTypes } from "#general";
|
|
|
7
7
|
export declare class StorageBackendJsonFile extends StorageBackendMemory {
|
|
8
8
|
private readonly path;
|
|
9
9
|
/** We store changes after a value was set to the storage, but not more often than this setting (in ms). */
|
|
10
|
-
static commitDelay:
|
|
10
|
+
static commitDelay: import("#general").Duration;
|
|
11
11
|
committed: Promise<void>;
|
|
12
12
|
private readonly commitTimer;
|
|
13
13
|
private closed;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageBackendJsonFile.d.ts","sourceRoot":"","sources":["../../../src/storage/StorageBackendJsonFile.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"StorageBackendJsonFile.d.ts","sourceRoot":"","sources":["../../../src/storage/StorageBackendJsonFile.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAqB,oBAAoB,EAAgB,qBAAqB,EAAgB,MAAM,UAAU,CAAC;AAItH,qBAAa,sBAAuB,SAAQ,oBAAoB;IAWhD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAVjC,2GAA2G;IAC3G,MAAM,CAAC,WAAW,8BAAe;IACjC,SAAS,gBAAqB;IAE9B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAE1B;IACF,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAAC,CAAa;gBAET,IAAI,EAAE,MAAM;WAInB,MAAM,CAAC,IAAI,EAAE,MAAM;IAMhC,UAAU;IAcnB,OAAO,CAAC,aAAa;IASZ,GAAG,CACR,QAAQ,EAAE,MAAM,EAAE,EAClB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,EAC3D,KAAK,CAAC,EAAE,qBAAqB,GAC9B,IAAI;IAKE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAK7C,KAAK,IAAI,IAAI;YAKR,MAAM;IAcL,KAAK;IAQpB,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,QAAQ;CAGnB"}
|
|
@@ -35,7 +35,7 @@ class StorageBackendJsonFile extends import_general.StorageBackendMemory {
|
|
|
35
35
|
this.path = path;
|
|
36
36
|
}
|
|
37
37
|
/** We store changes after a value was set to the storage, but not more often than this setting (in ms). */
|
|
38
|
-
static commitDelay =
|
|
38
|
+
static commitDelay = import_general.Seconds.one;
|
|
39
39
|
committed = Promise.resolve();
|
|
40
40
|
commitTimer = import_general.Time.getTimer(
|
|
41
41
|
"Storage commit",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/storage/StorageBackendJsonFile.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAA2G;AAC3G,qBAA6B;AAC7B,sBAA0B;AAR1B;AAAA;AAAA;AAAA;AAAA;AAUO,MAAM,+BAA+B,oCAAqB;AAAA,EAW7D,YAA6B,MAAc;AACvC,UAAM;AADmB;AAAA,EAE7B;AAAA;AAAA,EAXA,OAAO,cAAc,uBAAQ;AAAA,EAC7B,YAAY,QAAQ,QAAQ;AAAA,EAEX,cAAc,oBAAK;AAAA,IAAS;AAAA,IAAkB,uBAAuB;AAAA,IAAa,MAC/F,KAAK,OAAO;AAAA,EAChB;AAAA,EACQ,SAAS;AAAA,EACT;AAAA,EAMR,aAAsB,OAAO,MAAc;AACvC,UAAM,UAAU,IAAI,KAAK,IAAI;AAC7B,YAAQ,WAAW;AACnB,WAAO;AAAA,EACX;AAAA,EAES,aAAa;AAClB,QAAI,KAAK,YAAa,OAAM,IAAI,4BAAa,8BAA8B;AAC3E,UAAM,WAAW;AACjB,QAAI;AACA,WAAK,QAAQ,KAAK,aAAS,6BAAa,KAAK,MAAM,OAAO,CAAC;AAAA,IAC/D,SAAS,OAAY;AAEjB,UAAI,MAAM,SAAS,UAAU;AACzB,cAAM;AAAA,MACV;AAAA,IACJ;AACA,SAAK,gBAAgB;AAAA,EACzB;AAAA,EAEQ,gBAAgB;AACpB,QAAI,CAAC,KAAK,YAAY,WAAW;AAC7B,WAAK,YAAY,IAAI,QAAQ,aAAW;AACpC,aAAK,mBAAmB;AAAA,MAC5B,CAAC;AACD,WAAK,YAAY,MAAM;AAAA,IAC3B;AAAA,EACJ;AAAA,EAES,IACL,UACA,aACA,OACI;AACJ,UAAM,IAAI,UAAU,aAAa,KAAK;AACtC,SAAK,cAAc;AAAA,EACvB;AAAA,EAES,OAAO,UAAoB,KAAmB;AACnD,UAAM,OAAO,UAAU,GAAG;AAC1B,SAAK,cAAc;AAAA,EACvB;AAAA,EAES,QAAc;AACnB,UAAM,MAAM;AACZ,SAAK,cAAc;AAAA,EACvB;AAAA,EAEA,MAAc,SAAS;AACnB,QAAI,CAAC,KAAK,eAAe,KAAK,OAAQ;AACtC,QAAI,KAAK,YAAY,WAAW;AAC5B,WAAK,YAAY,KAAK;AAAA,IAC1B;AACA,QAAI;AACA,gBAAM,2BAAU,KAAK,MAAM,KAAK,OAAO,KAAK,KAAK,GAAG,OAAO;AAAA,IAC/D,UAAE;AACE,UAAI,KAAK,qBAAqB,QAAW;AACrC,aAAK,mBAAmB;AAAA,MAC5B;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,MAAe,QAAQ;AACnB,SAAK,YAAY,KAAK;AACtB,UAAM,KAAK,OAAO;AAClB,UAAM,MAAM,MAAM;AAClB,SAAK,SAAS;AACd,SAAK,gBAAgB;AAAA,EACzB;AAAA,EAEQ,OAAO,QAAqB;AAChC,eAAO,uBAAO,QAAQ,CAAC;AAAA,EAC3B;AAAA,EAEQ,SAAS,MAAmB;AAChC,eAAO,yBAAS,IAAI;AAAA,EACxB;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/cjs/time/startup.js
CHANGED
|
@@ -6,6 +6,6 @@ var import_node_os = require("node:os");
|
|
|
6
6
|
* Copyright 2022-2025 Matter.js Authors
|
|
7
7
|
* SPDX-License-Identifier: Apache-2.0
|
|
8
8
|
*/
|
|
9
|
-
import_general.Time.startup.processMs =
|
|
10
|
-
import_general.Time.startup.systemMs =
|
|
9
|
+
import_general.Time.startup.processMs = (0, import_general.Timestamp)(import_general.Time.nowMs - (0, import_general.Seconds)(process.uptime()));
|
|
10
|
+
import_general.Time.startup.systemMs = (0, import_general.Timestamp)(import_general.Time.nowMs - (0, import_general.Seconds)((0, import_node_os.uptime)()));
|
|
11
11
|
//# sourceMappingURL=startup.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/time/startup.ts"],
|
|
4
|
-
"mappings": ";AAMA,
|
|
4
|
+
"mappings": ";AAMA,qBAAyC;AACzC,qBAAuB;AAPvB;AAAA;AAAA;AAAA;AAAA;AASA,oBAAK,QAAQ,gBAAY,0BAAU,oBAAK,YAAQ,wBAAQ,QAAQ,OAAO,CAAC,CAAC;AACzE,oBAAK,QAAQ,eAAW,0BAAU,oBAAK,YAAQ,4BAAQ,uBAAO,CAAC,CAAC;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeJsNetwork.d.ts","sourceRoot":"","sources":["../../../src/net/NodeJsNetwork.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"NodeJsNetwork.d.ts","sourceRoot":"","sources":["../../../src/net/NodeJsNetwork.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAMH,OAAO,EAEP,gBAAgB,EAChB,uBAAuB,EAEvB,UAAU,EACV,iBAAiB,EACpB,MAAM,UAAU,CAAC;AAMlB,qBAAa,aAAc,SAAQ,OAAO;IACtC,MAAM,CAAC,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAW1E,MAAM,CAAC,gCAAgC,CACnC,kBAAkB,EAAE,MAAM,GAAG,SAAS,EACtC,IAAI,EAAE,OAAO,GACd,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE;IA8BzB,MAAM,CAAC,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAMxE,MAAM,CAAC,oBAAoB,CAAC,EAAE,EAAE,MAAM;IAMtC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAInC;IAEa,KAAK;IAIpB,OAAO,CAAC,MAAM,CAAC,+BAA+B;IAwB9C,OAAO,CAAC,MAAM,CAAC,+BAA+B;IAa9C;;;;;;OAMG;IACH,gBAAgB,CAAC,aAAa,GAAE,gBAAgB,EAAO,GAAG,gBAAgB,EAAE;IAmB5E,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS;IAQ1D,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC;CAG7E"}
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
InterfaceType,
|
|
9
9
|
isIPv6,
|
|
10
10
|
Logger,
|
|
11
|
+
Minutes,
|
|
11
12
|
Network,
|
|
12
13
|
NetworkError,
|
|
13
14
|
onSameNetwork
|
|
@@ -62,7 +63,7 @@ class NodeJsNetwork extends Network {
|
|
|
62
63
|
static netInterfaces = new Cache(
|
|
63
64
|
"Network interface",
|
|
64
65
|
(ip) => this.getNetInterfaceForRemoteAddress(ip),
|
|
65
|
-
5
|
|
66
|
+
Minutes(5)
|
|
66
67
|
);
|
|
67
68
|
async close() {
|
|
68
69
|
await NodeJsNetwork.netInterfaces.close();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/net/NodeJsNetwork.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAGA;AAAA,OAGG;AACP,SAA+B,yBAAyB;AACxD,SAAS,wBAAwB;AAEjC,MAAM,SAAS,OAAO,IAAI,aAAa;AAEhC,MAAM,sBAAsB,QAAQ;AAAA,EACvC,OAAO,0BAA0B,cAA0C;AACvE,UAAM,mBAAmB,kBAAkB,EAAE,YAAY;AACzD,QAAI,qBAAqB,OAAW,OAAM,IAAI,aAAa,sBAAsB,YAAY,EAAE;AAC/F,eAAW,QAAQ,kBAAkB;AACjC,UAAI,SAAS,GAAG,IAAI,GAAG;AACnB,eAAO,KAAK;AAAA,MAChB;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,iCACH,oBACA,MACsB;AACtB,QAAI,MAAM;AACN,aAAO,CAAC,MAAS;AAAA,IACrB,OAAO;AACH,YAAM,sBAAsB,OAAO,QAAQ,kBAAkB,CAAC,EAAE,QAAQ,CAAC,CAAC,OAAO,SAAS,MAAM;AAC5F,YAAI,cAAc,QAAW;AACzB,iBAAO,CAAC;AAAA,QACZ;AACA,cAAM,OAAO,KAAK,gCAAgC,OAAO,SAAS;AAClE,YAAI,SAAS,QAAW;AACpB,iBAAO,CAAC;AAAA,QACZ;AAGA,YAAI,uBAAuB,UAAa,uBAAuB,MAAM;AACjE,iBAAO,CAAC;AAAA,QACZ;AACA,eAAO,CAAC,MAAM,IAAI,EAAE;AAAA,MACxB,CAAC;AACD,UAAI,oBAAoB,WAAW,GAAG;AAClC,eAAO;AAAA,UACH,oCACI,uBAAuB,SAAY,kBAAkB,kBAAkB,KAAK,EAChF;AAAA,QACJ;AAAA,MACJ;AACA,aAAO;AAAA,IACX;AAAA,EACJ;AAAA,EAEA,OAAO,wBAAwB,cAA0C;AACrE,UAAM,mBAAmB,kBAAkB,EAAE,YAAY;AACzD,QAAI,qBAAqB,OAAW,OAAM,IAAI,aAAa,sBAAsB,YAAY,EAAE;AAC/F,WAAO,KAAK,gCAAgC,cAAc,gBAAgB;AAAA,EAC9E;AAAA,EAEA,OAAO,qBAAqB,IAAY;AAGpC,WAAO,KAAK,cAAc,IAAI,EAAE;AAAA,EACpC;AAAA,EAEA,OAAwB,gBAAgB,IAAI;AAAA,IACxC;AAAA,IACA,CAAC,OAAe,KAAK,gCAAgC,EAAE;AAAA,IACvD,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { ChannelType, UdpChannel, UdpChannelOptions, UdpSocketType } from "#general";
|
|
6
|
+
import { Bytes, ChannelType, UdpChannel, UdpChannelOptions, UdpSocketType } from "#general";
|
|
7
7
|
import * as dgram from "node:dgram";
|
|
8
8
|
export declare class NodeJsUdpChannel implements UdpChannel {
|
|
9
9
|
#private;
|
|
@@ -12,10 +12,10 @@ export declare class NodeJsUdpChannel implements UdpChannel {
|
|
|
12
12
|
constructor(type: UdpSocketType, socket: dgram.Socket, netInterface?: string);
|
|
13
13
|
addMembership(membershipAddress: string): void;
|
|
14
14
|
dropMembership(membershipAddress: string): void;
|
|
15
|
-
onData(listener: (netInterface: string | undefined, peerAddress: string, peerPort: number, data:
|
|
15
|
+
onData(listener: (netInterface: string | undefined, peerAddress: string, peerPort: number, data: Bytes) => void): {
|
|
16
16
|
close: () => Promise<void>;
|
|
17
17
|
};
|
|
18
|
-
send(host: string, port: number, data:
|
|
18
|
+
send(host: string, port: number, data: Bytes): Promise<void>;
|
|
19
19
|
close(): Promise<void>;
|
|
20
20
|
get port(): number;
|
|
21
21
|
supports(type: ChannelType, address?: string): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeJsUdpChannel.d.ts","sourceRoot":"","sources":["../../../src/net/NodeJsUdpChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"NodeJsUdpChannel.d.ts","sourceRoot":"","sources":["../../../src/net/NodeJsUdpChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EACL,WAAW,EAaX,UAAU,EACV,iBAAiB,EACjB,aAAa,EAChB,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAqCpC,qBAAa,gBAAiB,YAAW,UAAU;;WAKlC,MAAM,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,EAAE,iBAAiB;IAmC9F,QAAQ,CAAC,cAAc,SAAwB;gBAWnC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAM5E,aAAa,CAAC,iBAAiB,EAAE,MAAM;IAkBvC,cAAc,CAAC,iBAAiB,EAAE,MAAM;IAkBxC,MAAM,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI;;;IAoCzG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK;IAsC5C,KAAK;IAUX,IAAI,IAAI,WAEP;IAED,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM;CAiB/C"}
|
|
@@ -12,16 +12,18 @@ import {
|
|
|
12
12
|
isIPv6,
|
|
13
13
|
Logger,
|
|
14
14
|
MAX_UDP_MESSAGE_SIZE,
|
|
15
|
+
Millis,
|
|
15
16
|
NetworkError,
|
|
16
17
|
NoAddressAvailableError,
|
|
17
18
|
repackErrorAs,
|
|
19
|
+
Seconds,
|
|
18
20
|
Time
|
|
19
21
|
} from "#general";
|
|
20
22
|
import { RetransmissionLimitReachedError } from "#protocol";
|
|
21
23
|
import * as dgram from "node:dgram";
|
|
22
24
|
import { NodeJsNetwork } from "./NodeJsNetwork.js";
|
|
23
25
|
const logger = Logger.get("NodejsChannel");
|
|
24
|
-
const
|
|
26
|
+
const UDP_SEND_TIMEOUT_CHECK_INTERVAL = Seconds.one;
|
|
25
27
|
function createDgramSocket(host, port, options) {
|
|
26
28
|
const socket = dgram.createSocket(options);
|
|
27
29
|
return new Promise((resolve, reject) => {
|
|
@@ -94,7 +96,7 @@ class NodeJsUdpChannel {
|
|
|
94
96
|
*/
|
|
95
97
|
#sendTimer = Time.getTimer(
|
|
96
98
|
"UDPChannel.send timeout check",
|
|
97
|
-
|
|
99
|
+
UDP_SEND_TIMEOUT_CHECK_INTERVAL,
|
|
98
100
|
() => this.#rejectDanglingSends()
|
|
99
101
|
);
|
|
100
102
|
#sendsInProgress = /* @__PURE__ */ new Map();
|
|
@@ -153,10 +155,10 @@ class NodeJsUdpChannel {
|
|
|
153
155
|
if (this.#sendsInProgress.size === 0) {
|
|
154
156
|
return;
|
|
155
157
|
}
|
|
156
|
-
const now = Time.nowMs
|
|
158
|
+
const now = Time.nowMs;
|
|
157
159
|
for (const [promise, { sendMs, rejecter }] of this.#sendsInProgress) {
|
|
158
|
-
const elapsed = now - sendMs;
|
|
159
|
-
if (elapsed >=
|
|
160
|
+
const elapsed = Millis(now - sendMs);
|
|
161
|
+
if (elapsed >= UDP_SEND_TIMEOUT_CHECK_INTERVAL) {
|
|
160
162
|
this.#sendsInProgress.delete(promise);
|
|
161
163
|
rejecter(new NetworkError("UDP send timeout"));
|
|
162
164
|
}
|
|
@@ -184,7 +186,7 @@ class NodeJsUdpChannel {
|
|
|
184
186
|
rejecter(netError);
|
|
185
187
|
}
|
|
186
188
|
};
|
|
187
|
-
this.#sendsInProgress.set(promise, { sendMs: Time.nowMs
|
|
189
|
+
this.#sendsInProgress.set(promise, { sendMs: Time.nowMs, rejecter });
|
|
188
190
|
if (!this.#sendTimer.isRunning) {
|
|
189
191
|
this.#sendTimer.start();
|
|
190
192
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/net/NodeJsUdpChannel.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAIG;AACP,SAAS,uCAAuC;AAChD,YAAY,WAAW;AACvB,SAAS,qBAAqB;AAE9B,MAAM,SAAS,OAAO,IAAI,eAAe;AAIzC,MAAM,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["error"]
|
|
6
6
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Storage, SupportedStorageTypes } from "#general";
|
|
6
|
+
import { Bytes, Storage, SupportedStorageTypes } from "#general";
|
|
7
7
|
export declare class StorageBackendDisk extends Storage {
|
|
8
8
|
#private;
|
|
9
9
|
protected isInitialized: boolean;
|
|
@@ -18,7 +18,7 @@ export declare class StorageBackendDisk extends Storage {
|
|
|
18
18
|
has(contexts: string[], key: string): Promise<boolean>;
|
|
19
19
|
get<T extends SupportedStorageTypes>(contexts: string[], key: string): Promise<T | undefined>;
|
|
20
20
|
openBlob(contexts: string[], key: string): Promise<Blob>;
|
|
21
|
-
writeBlobFromStream(contexts: string[], key: string, stream: ReadableStream<
|
|
21
|
+
writeBlobFromStream(contexts: string[], key: string, stream: ReadableStream<Bytes>): Promise<void>;
|
|
22
22
|
set(contexts: string[], key: string, value: SupportedStorageTypes): Promise<void>;
|
|
23
23
|
set(contexts: string[], values: Record<string, SupportedStorageTypes>): Promise<void>;
|
|
24
24
|
delete(contexts: string[], key: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageBackendDisk.d.ts","sourceRoot":"","sources":["../../../src/storage/StorageBackendDisk.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"StorageBackendDisk.d.ts","sourceRoot":"","sources":["../../../src/storage/StorageBackendDisk.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EAKL,OAAO,EAEP,qBAAqB,EAExB,MAAM,UAAU,CAAC;AAOlB,qBAAa,kBAAmB,SAAQ,OAAO;;IAG3C,SAAS,CAAC,aAAa,UAAS;gBAGpB,IAAI,EAAE,MAAM,EAAE,KAAK,UAAQ;IAMvC,IAAI,WAAW,YAEd;IAEK,UAAU;IA2BV,KAAK;IAKX,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAInB,KAAK;IAMX,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,iBAAiB,UAAQ;IAY/D,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM;IAWhC,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAe/D,GAAG,CAAC,CAAC,SAAS,qBAAqB,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAkB7F,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU9D,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC;IAIlF,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IACjF,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA2F/E,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM;IAM5C,yEAAyE;IACnE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE;IAiBvB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE;IAmBzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE;IAsB3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE;CAgBpC;AAED;;GAEG"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/storage/StorageBackendDisk.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["value"]
|
|
6
6
|
}
|
|
@@ -7,7 +7,7 @@ import { StorageBackendMemory, SupportedStorageTypes } from "#general";
|
|
|
7
7
|
export declare class StorageBackendJsonFile extends StorageBackendMemory {
|
|
8
8
|
private readonly path;
|
|
9
9
|
/** We store changes after a value was set to the storage, but not more often than this setting (in ms). */
|
|
10
|
-
static commitDelay:
|
|
10
|
+
static commitDelay: import("#general").Duration;
|
|
11
11
|
committed: Promise<void>;
|
|
12
12
|
private readonly commitTimer;
|
|
13
13
|
private closed;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageBackendJsonFile.d.ts","sourceRoot":"","sources":["../../../src/storage/StorageBackendJsonFile.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"StorageBackendJsonFile.d.ts","sourceRoot":"","sources":["../../../src/storage/StorageBackendJsonFile.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAqB,oBAAoB,EAAgB,qBAAqB,EAAgB,MAAM,UAAU,CAAC;AAItH,qBAAa,sBAAuB,SAAQ,oBAAoB;IAWhD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAVjC,2GAA2G;IAC3G,MAAM,CAAC,WAAW,8BAAe;IACjC,SAAS,gBAAqB;IAE9B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAE1B;IACF,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAAC,CAAa;gBAET,IAAI,EAAE,MAAM;WAInB,MAAM,CAAC,IAAI,EAAE,MAAM;IAMhC,UAAU;IAcnB,OAAO,CAAC,aAAa;IASZ,GAAG,CACR,QAAQ,EAAE,MAAM,EAAE,EAClB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,EAC3D,KAAK,CAAC,EAAE,qBAAqB,GAC9B,IAAI;IAKE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAK7C,KAAK,IAAI,IAAI;YAKR,MAAM;IAcL,KAAK;IAQpB,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,QAAQ;CAGnB"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { fromJson, StorageBackendMemory, StorageError, Time, toJson } from "#general";
|
|
6
|
+
import { fromJson, Seconds, StorageBackendMemory, StorageError, Time, toJson } from "#general";
|
|
7
7
|
import { readFileSync } from "node:fs";
|
|
8
8
|
import { writeFile } from "node:fs/promises";
|
|
9
9
|
class StorageBackendJsonFile extends StorageBackendMemory {
|
|
@@ -12,7 +12,7 @@ class StorageBackendJsonFile extends StorageBackendMemory {
|
|
|
12
12
|
this.path = path;
|
|
13
13
|
}
|
|
14
14
|
/** We store changes after a value was set to the storage, but not more often than this setting (in ms). */
|
|
15
|
-
static commitDelay =
|
|
15
|
+
static commitDelay = Seconds.one;
|
|
16
16
|
committed = Promise.resolve();
|
|
17
17
|
commitTimer = Time.getTimer(
|
|
18
18
|
"Storage commit",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/storage/StorageBackendJsonFile.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,UAAU,sBAAsB,cAAqC,MAAM,cAAc;
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,UAAU,SAAS,sBAAsB,cAAqC,MAAM,cAAc;AAC3G,SAAS,oBAAoB;AAC7B,SAAS,iBAAiB;AAEnB,MAAM,+BAA+B,qBAAqB;AAAA,EAW7D,YAA6B,MAAc;AACvC,UAAM;AADmB;AAAA,EAE7B;AAAA;AAAA,EAXA,OAAO,cAAc,QAAQ;AAAA,EAC7B,YAAY,QAAQ,QAAQ;AAAA,EAEX,cAAc,KAAK;AAAA,IAAS;AAAA,IAAkB,uBAAuB;AAAA,IAAa,MAC/F,KAAK,OAAO;AAAA,EAChB;AAAA,EACQ,SAAS;AAAA,EACT;AAAA,EAMR,aAAsB,OAAO,MAAc;AACvC,UAAM,UAAU,IAAI,KAAK,IAAI;AAC7B,YAAQ,WAAW;AACnB,WAAO;AAAA,EACX;AAAA,EAES,aAAa;AAClB,QAAI,KAAK,YAAa,OAAM,IAAI,aAAa,8BAA8B;AAC3E,UAAM,WAAW;AACjB,QAAI;AACA,WAAK,QAAQ,KAAK,SAAS,aAAa,KAAK,MAAM,OAAO,CAAC;AAAA,IAC/D,SAAS,OAAY;AAEjB,UAAI,MAAM,SAAS,UAAU;AACzB,cAAM;AAAA,MACV;AAAA,IACJ;AACA,SAAK,gBAAgB;AAAA,EACzB;AAAA,EAEQ,gBAAgB;AACpB,QAAI,CAAC,KAAK,YAAY,WAAW;AAC7B,WAAK,YAAY,IAAI,QAAQ,aAAW;AACpC,aAAK,mBAAmB;AAAA,MAC5B,CAAC;AACD,WAAK,YAAY,MAAM;AAAA,IAC3B;AAAA,EACJ;AAAA,EAES,IACL,UACA,aACA,OACI;AACJ,UAAM,IAAI,UAAU,aAAa,KAAK;AACtC,SAAK,cAAc;AAAA,EACvB;AAAA,EAES,OAAO,UAAoB,KAAmB;AACnD,UAAM,OAAO,UAAU,GAAG;AAC1B,SAAK,cAAc;AAAA,EACvB;AAAA,EAES,QAAc;AACnB,UAAM,MAAM;AACZ,SAAK,cAAc;AAAA,EACvB;AAAA,EAEA,MAAc,SAAS;AACnB,QAAI,CAAC,KAAK,eAAe,KAAK,OAAQ;AACtC,QAAI,KAAK,YAAY,WAAW;AAC5B,WAAK,YAAY,KAAK;AAAA,IAC1B;AACA,QAAI;AACA,YAAM,UAAU,KAAK,MAAM,KAAK,OAAO,KAAK,KAAK,GAAG,OAAO;AAAA,IAC/D,UAAE;AACE,UAAI,KAAK,qBAAqB,QAAW;AACrC,aAAK,mBAAmB;AAAA,MAC5B;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,MAAe,QAAQ;AACnB,SAAK,YAAY,KAAK;AACtB,UAAM,KAAK,OAAO;AAClB,UAAM,MAAM,MAAM;AAClB,SAAK,SAAS;AACd,SAAK,gBAAgB;AAAA,EACzB;AAAA,EAEQ,OAAO,QAAqB;AAChC,WAAO,OAAO,QAAQ,CAAC;AAAA,EAC3B;AAAA,EAEQ,SAAS,MAAmB;AAChC,WAAO,SAAS,IAAI;AAAA,EACxB;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/esm/time/startup.js
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Time } from "#general";
|
|
6
|
+
import { Seconds, Time, Timestamp } from "#general";
|
|
7
7
|
import { uptime } from "node:os";
|
|
8
|
-
Time.startup.processMs =
|
|
9
|
-
Time.startup.systemMs =
|
|
8
|
+
Time.startup.processMs = Timestamp(Time.nowMs - Seconds(process.uptime()));
|
|
9
|
+
Time.startup.systemMs = Timestamp(Time.nowMs - Seconds(uptime()));
|
|
10
10
|
//# sourceMappingURL=startup.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/time/startup.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,SAAS,MAAM,iBAAiB;AACzC,SAAS,cAAc;AAEvB,KAAK,QAAQ,YAAY,UAAU,KAAK,QAAQ,QAAQ,QAAQ,OAAO,CAAC,CAAC;AACzE,KAAK,QAAQ,WAAW,UAAU,KAAK,QAAQ,QAAQ,OAAO,CAAC,CAAC;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@matter/nodejs",
|
|
3
|
-
"version": "0.16.0-alpha.0-
|
|
3
|
+
"version": "0.16.0-alpha.0-20250819-0a388db8b",
|
|
4
4
|
"description": "Node.js platform support for matter.js",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"iot",
|
|
@@ -44,17 +44,17 @@
|
|
|
44
44
|
"#*": "./src/*"
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@matter/general": "0.16.0-alpha.0-
|
|
48
|
-
"@matter/node": "0.16.0-alpha.0-
|
|
49
|
-
"@matter/protocol": "0.16.0-alpha.0-
|
|
50
|
-
"@matter/types": "0.16.0-alpha.0-
|
|
47
|
+
"@matter/general": "0.16.0-alpha.0-20250819-0a388db8b",
|
|
48
|
+
"@matter/node": "0.16.0-alpha.0-20250819-0a388db8b",
|
|
49
|
+
"@matter/protocol": "0.16.0-alpha.0-20250819-0a388db8b",
|
|
50
|
+
"@matter/types": "0.16.0-alpha.0-20250819-0a388db8b"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@matter/model": "0.16.0-alpha.0-
|
|
54
|
-
"@matter/protocol": "0.16.0-alpha.0-
|
|
55
|
-
"@matter/tools": "0.16.0-alpha.0-
|
|
56
|
-
"@matter/testing": "0.16.0-alpha.0-
|
|
57
|
-
"@project-chip/matter.js": "0.16.0-alpha.0-
|
|
53
|
+
"@matter/model": "0.16.0-alpha.0-20250819-0a388db8b",
|
|
54
|
+
"@matter/protocol": "0.16.0-alpha.0-20250819-0a388db8b",
|
|
55
|
+
"@matter/tools": "0.16.0-alpha.0-20250819-0a388db8b",
|
|
56
|
+
"@matter/testing": "0.16.0-alpha.0-20250819-0a388db8b",
|
|
57
|
+
"@project-chip/matter.js": "0.16.0-alpha.0-20250819-0a388db8b",
|
|
58
58
|
"@types/bytebuffer": "^5.0.49"
|
|
59
59
|
},
|
|
60
60
|
"files": [
|
package/src/net/NodeJsNetwork.ts
CHANGED
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
InterfaceType,
|
|
10
10
|
isIPv6,
|
|
11
11
|
Logger,
|
|
12
|
+
Minutes,
|
|
12
13
|
Network,
|
|
13
14
|
NetworkError,
|
|
14
15
|
NetworkInterface,
|
|
@@ -82,7 +83,7 @@ export class NodeJsNetwork extends Network {
|
|
|
82
83
|
private static readonly netInterfaces = new Cache<string | undefined>(
|
|
83
84
|
"Network interface",
|
|
84
85
|
(ip: string) => this.getNetInterfaceForRemoteAddress(ip),
|
|
85
|
-
5
|
|
86
|
+
Minutes(5),
|
|
86
87
|
);
|
|
87
88
|
|
|
88
89
|
override async close() {
|
|
@@ -13,9 +13,11 @@ import {
|
|
|
13
13
|
isIPv6,
|
|
14
14
|
Logger,
|
|
15
15
|
MAX_UDP_MESSAGE_SIZE,
|
|
16
|
+
Millis,
|
|
16
17
|
NetworkError,
|
|
17
18
|
NoAddressAvailableError,
|
|
18
19
|
repackErrorAs,
|
|
20
|
+
Seconds,
|
|
19
21
|
Time,
|
|
20
22
|
UdpChannel,
|
|
21
23
|
UdpChannelOptions,
|
|
@@ -29,7 +31,7 @@ const logger = Logger.get("NodejsChannel");
|
|
|
29
31
|
|
|
30
32
|
// UDP should be sent out in some ms so if we needed 1s+, we have a problem
|
|
31
33
|
// 1s should be fine because we do not require any DNS lookups because we usually work with IPs directly
|
|
32
|
-
const
|
|
34
|
+
const UDP_SEND_TIMEOUT_CHECK_INTERVAL = Seconds.one;
|
|
33
35
|
|
|
34
36
|
function createDgramSocket(host: string | undefined, port: number | undefined, options: dgram.SocketOptions) {
|
|
35
37
|
const socket = dgram.createSocket(options);
|
|
@@ -105,7 +107,7 @@ export class NodeJsUdpChannel implements UdpChannel {
|
|
|
105
107
|
* Timer for a maximum interval to check for dangling send calls that are not completed.
|
|
106
108
|
* The way it is implemented we ensure that any "send" is rejected latest after < 2s
|
|
107
109
|
*/
|
|
108
|
-
readonly #sendTimer = Time.getTimer("UDPChannel.send timeout check",
|
|
110
|
+
readonly #sendTimer = Time.getTimer("UDPChannel.send timeout check", UDP_SEND_TIMEOUT_CHECK_INTERVAL, () =>
|
|
109
111
|
this.#rejectDanglingSends(),
|
|
110
112
|
);
|
|
111
113
|
readonly #sendsInProgress = new Map<Promise<void>, { sendMs: number; rejecter: (reason?: any) => void }>();
|
|
@@ -152,10 +154,8 @@ export class NodeJsUdpChannel implements UdpChannel {
|
|
|
152
154
|
}
|
|
153
155
|
}
|
|
154
156
|
|
|
155
|
-
onData(
|
|
156
|
-
|
|
157
|
-
) {
|
|
158
|
-
const messageListener = (data: BufferSource, { address, port }: dgram.RemoteInfo) => {
|
|
157
|
+
onData(listener: (netInterface: string | undefined, peerAddress: string, peerPort: number, data: Bytes) => void) {
|
|
158
|
+
const messageListener = (data: Bytes, { address, port }: dgram.RemoteInfo) => {
|
|
159
159
|
const netInterface = this.#netInterface ?? NodeJsNetwork.getNetInterfaceForIp(address);
|
|
160
160
|
listener(netInterface, address, port, data);
|
|
161
161
|
};
|
|
@@ -177,10 +177,10 @@ export class NodeJsUdpChannel implements UdpChannel {
|
|
|
177
177
|
// nothing to do
|
|
178
178
|
return;
|
|
179
179
|
}
|
|
180
|
-
const now = Time.nowMs
|
|
180
|
+
const now = Time.nowMs;
|
|
181
181
|
for (const [promise, { sendMs, rejecter }] of this.#sendsInProgress) {
|
|
182
|
-
const elapsed = now - sendMs;
|
|
183
|
-
if (elapsed >=
|
|
182
|
+
const elapsed = Millis(now - sendMs);
|
|
183
|
+
if (elapsed >= UDP_SEND_TIMEOUT_CHECK_INTERVAL) {
|
|
184
184
|
this.#sendsInProgress.delete(promise);
|
|
185
185
|
rejecter(new NetworkError("UDP send timeout"));
|
|
186
186
|
}
|
|
@@ -190,7 +190,7 @@ export class NodeJsUdpChannel implements UdpChannel {
|
|
|
190
190
|
}
|
|
191
191
|
}
|
|
192
192
|
|
|
193
|
-
async send(host: string, port: number, data:
|
|
193
|
+
async send(host: string, port: number, data: Bytes) {
|
|
194
194
|
const { promise, resolver, rejecter } = createPromise<void>();
|
|
195
195
|
|
|
196
196
|
const rejectOrResolve = (error?: Error | null) => {
|
|
@@ -215,7 +215,7 @@ export class NodeJsUdpChannel implements UdpChannel {
|
|
|
215
215
|
}
|
|
216
216
|
};
|
|
217
217
|
|
|
218
|
-
this.#sendsInProgress.set(promise, { sendMs: Time.nowMs
|
|
218
|
+
this.#sendsInProgress.set(promise, { sendMs: Time.nowMs, rejecter });
|
|
219
219
|
if (!this.#sendTimer.isRunning) {
|
|
220
220
|
this.#sendTimer.start();
|
|
221
221
|
}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import {
|
|
8
|
+
Bytes,
|
|
8
9
|
createPromise,
|
|
9
10
|
fromJson,
|
|
10
11
|
Logger,
|
|
@@ -144,7 +145,7 @@ export class StorageBackendDisk extends Storage {
|
|
|
144
145
|
}
|
|
145
146
|
}
|
|
146
147
|
|
|
147
|
-
writeBlobFromStream(contexts: string[], key: string, stream: ReadableStream<
|
|
148
|
+
writeBlobFromStream(contexts: string[], key: string, stream: ReadableStream<Bytes>) {
|
|
148
149
|
return this.#writeFile(this.buildStorageKey(contexts, key), stream);
|
|
149
150
|
}
|
|
150
151
|
|
|
@@ -167,7 +168,7 @@ export class StorageBackendDisk extends Storage {
|
|
|
167
168
|
}
|
|
168
169
|
|
|
169
170
|
/** According to Node.js documentation, writeFile is not atomic. This method ensures atomicity. */
|
|
170
|
-
async #writeFile(fileName: string, valueOrStream: string | ReadableStream<
|
|
171
|
+
async #writeFile(fileName: string, valueOrStream: string | ReadableStream<Bytes>): Promise<void> {
|
|
171
172
|
const blocker = this.#writeFileBlocker.get(fileName);
|
|
172
173
|
if (blocker !== undefined) {
|
|
173
174
|
await blocker;
|
|
@@ -182,7 +183,7 @@ export class StorageBackendDisk extends Storage {
|
|
|
182
183
|
return promise;
|
|
183
184
|
}
|
|
184
185
|
|
|
185
|
-
async #writeAndMoveFile(filepath: string, valueOrStream: string | ReadableStream<
|
|
186
|
+
async #writeAndMoveFile(filepath: string, valueOrStream: string | ReadableStream<Bytes>): Promise<void> {
|
|
186
187
|
const tmpName = `${filepath}.tmp`;
|
|
187
188
|
const handle = await open(tmpName, "w");
|
|
188
189
|
const isStream = valueOrStream instanceof ReadableStream;
|
|
@@ -4,13 +4,13 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { fromJson, StorageBackendMemory, StorageError, SupportedStorageTypes, Time, toJson } from "#general";
|
|
7
|
+
import { fromJson, Seconds, StorageBackendMemory, StorageError, SupportedStorageTypes, Time, toJson } from "#general";
|
|
8
8
|
import { readFileSync } from "node:fs";
|
|
9
9
|
import { writeFile } from "node:fs/promises";
|
|
10
10
|
|
|
11
11
|
export class StorageBackendJsonFile extends StorageBackendMemory {
|
|
12
12
|
/** We store changes after a value was set to the storage, but not more often than this setting (in ms). */
|
|
13
|
-
static commitDelay =
|
|
13
|
+
static commitDelay = Seconds.one;
|
|
14
14
|
committed = Promise.resolve();
|
|
15
15
|
|
|
16
16
|
private readonly commitTimer = Time.getTimer("Storage commit", StorageBackendJsonFile.commitDelay, () =>
|
package/src/time/startup.ts
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { Time } from "#general";
|
|
7
|
+
import { Seconds, Time, Timestamp } from "#general";
|
|
8
8
|
import { uptime } from "node:os";
|
|
9
9
|
|
|
10
|
-
Time.startup.processMs =
|
|
11
|
-
Time.startup.systemMs =
|
|
10
|
+
Time.startup.processMs = Timestamp(Time.nowMs - Seconds(process.uptime()));
|
|
11
|
+
Time.startup.systemMs = Timestamp(Time.nowMs - Seconds(uptime()));
|