@matter/nodejs 0.17.0-alpha.0-20260507-059f7763b → 0.17.0-alpha.0-20260508-29ff5ae9e
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/package.json +9 -9
- package/dist/cjs/behavior/index.d.ts +0 -7
- package/dist/cjs/behavior/index.d.ts.map +0 -1
- package/dist/cjs/behavior/index.js +0 -8
- package/dist/cjs/behavior/index.js.map +0 -6
- package/dist/cjs/behavior/instrumentation.d.ts +0 -11
- package/dist/cjs/behavior/instrumentation.d.ts.map +0 -1
- package/dist/cjs/behavior/instrumentation.js +0 -39
- package/dist/cjs/behavior/instrumentation.js.map +0 -6
- package/dist/cjs/behavior/register.d.ts +0 -7
- package/dist/cjs/behavior/register.d.ts.map +0 -1
- package/dist/cjs/behavior/register.js +0 -9
- package/dist/cjs/behavior/register.js.map +0 -6
- package/dist/cjs/config.d.ts +0 -98
- package/dist/cjs/config.d.ts.map +0 -1
- package/dist/cjs/config.js +0 -210
- package/dist/cjs/config.js.map +0 -6
- package/dist/cjs/crypto/NodeJsCrypto.d.ts +0 -13
- package/dist/cjs/crypto/NodeJsCrypto.d.ts.map +0 -1
- package/dist/cjs/crypto/NodeJsCrypto.js +0 -46
- package/dist/cjs/crypto/NodeJsCrypto.js.map +0 -6
- package/dist/cjs/crypto/index.d.ts +0 -7
- package/dist/cjs/crypto/index.d.ts.map +0 -1
- package/dist/cjs/crypto/index.js +0 -24
- package/dist/cjs/crypto/index.js.map +0 -6
- package/dist/cjs/environment/NodeJsEnvironment.d.ts +0 -77
- package/dist/cjs/environment/NodeJsEnvironment.d.ts.map +0 -1
- package/dist/cjs/environment/NodeJsEnvironment.js +0 -254
- package/dist/cjs/environment/NodeJsEnvironment.js.map +0 -6
- package/dist/cjs/environment/ProcessManager.d.ts +0 -48
- package/dist/cjs/environment/ProcessManager.d.ts.map +0 -1
- package/dist/cjs/environment/ProcessManager.js +0 -129
- package/dist/cjs/environment/ProcessManager.js.map +0 -6
- package/dist/cjs/environment/index.d.ts +0 -9
- package/dist/cjs/environment/index.d.ts.map +0 -1
- package/dist/cjs/environment/index.js +0 -26
- package/dist/cjs/environment/index.js.map +0 -6
- package/dist/cjs/environment/register.d.ts +0 -7
- package/dist/cjs/environment/register.d.ts.map +0 -1
- package/dist/cjs/environment/register.js +0 -10
- package/dist/cjs/environment/register.js.map +0 -6
- package/dist/cjs/fs/NodeJsDirectory.d.ts +0 -24
- package/dist/cjs/fs/NodeJsDirectory.d.ts.map +0 -1
- package/dist/cjs/fs/NodeJsDirectory.js +0 -102
- package/dist/cjs/fs/NodeJsDirectory.js.map +0 -6
- package/dist/cjs/fs/NodeJsFile.d.ts +0 -22
- package/dist/cjs/fs/NodeJsFile.d.ts.map +0 -1
- package/dist/cjs/fs/NodeJsFile.js +0 -248
- package/dist/cjs/fs/NodeJsFile.js.map +0 -6
- package/dist/cjs/fs/NodeJsFilesystem.d.ts +0 -27
- package/dist/cjs/fs/NodeJsFilesystem.d.ts.map +0 -1
- package/dist/cjs/fs/NodeJsFilesystem.js +0 -83
- package/dist/cjs/fs/NodeJsFilesystem.js.map +0 -6
- package/dist/cjs/fs/fs-utils.d.ts +0 -16
- package/dist/cjs/fs/fs-utils.d.ts.map +0 -1
- package/dist/cjs/fs/fs-utils.js +0 -154
- package/dist/cjs/fs/fs-utils.js.map +0 -6
- package/dist/cjs/fs/index.d.ts +0 -7
- package/dist/cjs/fs/index.d.ts.map +0 -1
- package/dist/cjs/fs/index.js +0 -24
- package/dist/cjs/fs/index.js.map +0 -6
- package/dist/cjs/fs/lock-utils.d.ts +0 -12
- package/dist/cjs/fs/lock-utils.d.ts.map +0 -1
- package/dist/cjs/fs/lock-utils.js +0 -132
- package/dist/cjs/fs/lock-utils.js.map +0 -6
- package/dist/cjs/index.d.ts +0 -14
- package/dist/cjs/index.d.ts.map +0 -1
- package/dist/cjs/index.js +0 -31
- package/dist/cjs/index.js.map +0 -6
- package/dist/cjs/log/FileLogger.d.ts +0 -12
- package/dist/cjs/log/FileLogger.d.ts.map +0 -1
- package/dist/cjs/log/FileLogger.js +0 -46
- package/dist/cjs/log/FileLogger.js.map +0 -6
- package/dist/cjs/log/index.d.ts +0 -7
- package/dist/cjs/log/index.d.ts.map +0 -1
- package/dist/cjs/log/index.js +0 -24
- package/dist/cjs/log/index.js.map +0 -6
- package/dist/cjs/net/NodeJsHttpEndpoint.d.ts +0 -38
- package/dist/cjs/net/NodeJsHttpEndpoint.d.ts.map +0 -1
- package/dist/cjs/net/NodeJsHttpEndpoint.js +0 -306
- package/dist/cjs/net/NodeJsHttpEndpoint.js.map +0 -6
- package/dist/cjs/net/NodeJsNetwork.d.ts +0 -37
- package/dist/cjs/net/NodeJsNetwork.d.ts.map +0 -1
- package/dist/cjs/net/NodeJsNetwork.js +0 -199
- package/dist/cjs/net/NodeJsNetwork.js.map +0 -6
- package/dist/cjs/net/NodeJsTcpConnection.d.ts +0 -24
- package/dist/cjs/net/NodeJsTcpConnection.d.ts.map +0 -1
- package/dist/cjs/net/NodeJsTcpConnection.js +0 -138
- package/dist/cjs/net/NodeJsTcpConnection.js.map +0 -6
- package/dist/cjs/net/NodeJsTcpListener.d.ts +0 -19
- package/dist/cjs/net/NodeJsTcpListener.d.ts.map +0 -1
- package/dist/cjs/net/NodeJsTcpListener.js +0 -100
- package/dist/cjs/net/NodeJsTcpListener.js.map +0 -6
- package/dist/cjs/net/NodeJsUdpSocket.d.ts +0 -23
- package/dist/cjs/net/NodeJsUdpSocket.d.ts.map +0 -1
- package/dist/cjs/net/NodeJsUdpSocket.js +0 -394
- package/dist/cjs/net/NodeJsUdpSocket.js.map +0 -6
- package/dist/cjs/net/WsAdapter.d.ts +0 -25
- package/dist/cjs/net/WsAdapter.d.ts.map +0 -1
- package/dist/cjs/net/WsAdapter.js +0 -33
- package/dist/cjs/net/WsAdapter.js.map +0 -6
- package/dist/cjs/net/index.d.ts +0 -12
- package/dist/cjs/net/index.d.ts.map +0 -1
- package/dist/cjs/net/index.js +0 -29
- package/dist/cjs/net/index.js.map +0 -6
- package/dist/cjs/package.json +0 -6
- package/dist/cjs/storage/fs/DirectoryBlobStorageDriver.d.ts +0 -29
- package/dist/cjs/storage/fs/DirectoryBlobStorageDriver.d.ts.map +0 -1
- package/dist/cjs/storage/fs/DirectoryBlobStorageDriver.js +0 -155
- package/dist/cjs/storage/fs/DirectoryBlobStorageDriver.js.map +0 -6
- package/dist/cjs/storage/fs/FileStorageDriver.d.ts +0 -44
- package/dist/cjs/storage/fs/FileStorageDriver.d.ts.map +0 -1
- package/dist/cjs/storage/fs/FileStorageDriver.js +0 -334
- package/dist/cjs/storage/fs/FileStorageDriver.js.map +0 -6
- package/dist/cjs/storage/fs/FlatFileBlobStorageDriver.d.ts +0 -30
- package/dist/cjs/storage/fs/FlatFileBlobStorageDriver.d.ts.map +0 -1
- package/dist/cjs/storage/fs/FlatFileBlobStorageDriver.js +0 -195
- package/dist/cjs/storage/fs/FlatFileBlobStorageDriver.js.map +0 -6
- package/dist/cjs/storage/fs/JsonFileStorageDriver.d.ts +0 -27
- package/dist/cjs/storage/fs/JsonFileStorageDriver.d.ts.map +0 -1
- package/dist/cjs/storage/fs/JsonFileStorageDriver.js +0 -128
- package/dist/cjs/storage/fs/JsonFileStorageDriver.js.map +0 -6
- package/dist/cjs/storage/fs/WalBlobStorageDriver.d.ts +0 -19
- package/dist/cjs/storage/fs/WalBlobStorageDriver.d.ts.map +0 -1
- package/dist/cjs/storage/fs/WalBlobStorageDriver.js +0 -44
- package/dist/cjs/storage/fs/WalBlobStorageDriver.js.map +0 -6
- package/dist/cjs/storage/fs/index.d.ts +0 -21
- package/dist/cjs/storage/fs/index.d.ts.map +0 -1
- package/dist/cjs/storage/fs/index.js +0 -40
- package/dist/cjs/storage/fs/index.js.map +0 -6
- package/dist/cjs/storage/index.d.ts +0 -8
- package/dist/cjs/storage/index.d.ts.map +0 -1
- package/dist/cjs/storage/index.js +0 -25
- package/dist/cjs/storage/index.js.map +0 -6
- package/dist/cjs/storage/sqlite/SqliteBlobStorageDriver.d.ts +0 -48
- package/dist/cjs/storage/sqlite/SqliteBlobStorageDriver.d.ts.map +0 -1
- package/dist/cjs/storage/sqlite/SqliteBlobStorageDriver.js +0 -217
- package/dist/cjs/storage/sqlite/SqliteBlobStorageDriver.js.map +0 -6
- package/dist/cjs/storage/sqlite/SqlitePlatform.d.ts +0 -23
- package/dist/cjs/storage/sqlite/SqlitePlatform.d.ts.map +0 -1
- package/dist/cjs/storage/sqlite/SqlitePlatform.js +0 -56
- package/dist/cjs/storage/sqlite/SqlitePlatform.js.map +0 -6
- package/dist/cjs/storage/sqlite/SqliteStorageDriver.d.ts +0 -102
- package/dist/cjs/storage/sqlite/SqliteStorageDriver.d.ts.map +0 -1
- package/dist/cjs/storage/sqlite/SqliteStorageDriver.js +0 -424
- package/dist/cjs/storage/sqlite/SqliteStorageDriver.js.map +0 -6
- package/dist/cjs/storage/sqlite/SqliteStorageDriverError.d.ts +0 -19
- package/dist/cjs/storage/sqlite/SqliteStorageDriverError.d.ts.map +0 -1
- package/dist/cjs/storage/sqlite/SqliteStorageDriverError.js +0 -41
- package/dist/cjs/storage/sqlite/SqliteStorageDriverError.js.map +0 -6
- package/dist/cjs/storage/sqlite/SqliteTypes.d.ts +0 -67
- package/dist/cjs/storage/sqlite/SqliteTypes.d.ts.map +0 -1
- package/dist/cjs/storage/sqlite/SqliteTypes.js +0 -35
- package/dist/cjs/storage/sqlite/SqliteTypes.js.map +0 -6
- package/dist/cjs/storage/sqlite/SqliteUtil.d.ts +0 -33
- package/dist/cjs/storage/sqlite/SqliteUtil.d.ts.map +0 -1
- package/dist/cjs/storage/sqlite/SqliteUtil.js +0 -64
- package/dist/cjs/storage/sqlite/SqliteUtil.js.map +0 -6
- package/dist/cjs/storage/sqlite/index.d.ts +0 -15
- package/dist/cjs/storage/sqlite/index.d.ts.map +0 -1
- package/dist/cjs/storage/sqlite/index.js +0 -37
- package/dist/cjs/storage/sqlite/index.js.map +0 -6
- package/dist/cjs/storage/sqlite/platform/BunSqlite.d.ts +0 -13
- package/dist/cjs/storage/sqlite/platform/BunSqlite.d.ts.map +0 -1
- package/dist/cjs/storage/sqlite/platform/BunSqlite.js +0 -61
- package/dist/cjs/storage/sqlite/platform/BunSqlite.js.map +0 -6
- package/dist/cjs/storage/sqlite/platform/NodeJsSqlite.d.ts +0 -8
- package/dist/cjs/storage/sqlite/platform/NodeJsSqlite.d.ts.map +0 -1
- package/dist/cjs/storage/sqlite/platform/NodeJsSqlite.js +0 -53
- package/dist/cjs/storage/sqlite/platform/NodeJsSqlite.js.map +0 -6
- package/dist/cjs/time/index.d.ts +0 -7
- package/dist/cjs/time/index.d.ts.map +0 -1
- package/dist/cjs/time/index.js +0 -8
- package/dist/cjs/time/index.js.map +0 -6
- package/dist/cjs/time/startup.d.ts +0 -7
- package/dist/cjs/time/startup.d.ts.map +0 -1
- package/dist/cjs/time/startup.js +0 -11
- package/dist/cjs/time/startup.js.map +0 -6
- package/dist/cjs/util/runtimeChecks.d.ts +0 -14
- package/dist/cjs/util/runtimeChecks.d.ts.map +0 -1
- package/dist/cjs/util/runtimeChecks.js +0 -45
- package/dist/cjs/util/runtimeChecks.js.map +0 -6
- package/dist/esm/behavior/index.js +0 -7
- package/dist/esm/behavior/index.js.map +0 -6
- package/dist/esm/behavior/instrumentation.js +0 -19
- package/dist/esm/behavior/instrumentation.js.map +0 -6
- package/dist/esm/behavior/register.js +0 -8
- package/dist/esm/behavior/register.js.map +0 -6
- package/dist/esm/config.js +0 -190
- package/dist/esm/config.js.map +0 -6
- package/dist/esm/crypto/NodeJsCrypto.js +0 -16
- package/dist/esm/crypto/NodeJsCrypto.js.map +0 -6
- package/dist/esm/crypto/index.js +0 -7
- package/dist/esm/crypto/index.js.map +0 -6
- package/dist/esm/environment/NodeJsEnvironment.js +0 -242
- package/dist/esm/environment/NodeJsEnvironment.js.map +0 -6
- package/dist/esm/environment/ProcessManager.js +0 -109
- package/dist/esm/environment/ProcessManager.js.map +0 -6
- package/dist/esm/environment/index.js +0 -9
- package/dist/esm/environment/index.js.map +0 -6
- package/dist/esm/environment/register.js +0 -9
- package/dist/esm/environment/register.js.map +0 -6
- package/dist/esm/fs/NodeJsDirectory.js +0 -82
- package/dist/esm/fs/NodeJsDirectory.js.map +0 -6
- package/dist/esm/fs/NodeJsFile.js +0 -232
- package/dist/esm/fs/NodeJsFile.js.map +0 -6
- package/dist/esm/fs/NodeJsFilesystem.js +0 -63
- package/dist/esm/fs/NodeJsFilesystem.js.map +0 -6
- package/dist/esm/fs/fs-utils.js +0 -137
- package/dist/esm/fs/fs-utils.js.map +0 -6
- package/dist/esm/fs/index.js +0 -7
- package/dist/esm/fs/index.js.map +0 -6
- package/dist/esm/fs/lock-utils.js +0 -112
- package/dist/esm/fs/lock-utils.js.map +0 -6
- package/dist/esm/index.js +0 -14
- package/dist/esm/index.js.map +0 -6
- package/dist/esm/log/FileLogger.js +0 -26
- package/dist/esm/log/FileLogger.js.map +0 -6
- package/dist/esm/log/index.js +0 -7
- package/dist/esm/log/index.js.map +0 -6
- package/dist/esm/net/NodeJsHttpEndpoint.js +0 -286
- package/dist/esm/net/NodeJsHttpEndpoint.js.map +0 -6
- package/dist/esm/net/NodeJsNetwork.js +0 -189
- package/dist/esm/net/NodeJsNetwork.js.map +0 -6
- package/dist/esm/net/NodeJsTcpConnection.js +0 -124
- package/dist/esm/net/NodeJsTcpConnection.js.map +0 -6
- package/dist/esm/net/NodeJsTcpListener.js +0 -86
- package/dist/esm/net/NodeJsTcpListener.js.map +0 -6
- package/dist/esm/net/NodeJsUdpSocket.js +0 -385
- package/dist/esm/net/NodeJsUdpSocket.js.map +0 -6
- package/dist/esm/net/WsAdapter.js +0 -13
- package/dist/esm/net/WsAdapter.js.map +0 -6
- package/dist/esm/net/index.js +0 -12
- package/dist/esm/net/index.js.map +0 -6
- package/dist/esm/package.json +0 -6
- package/dist/esm/storage/fs/DirectoryBlobStorageDriver.js +0 -140
- package/dist/esm/storage/fs/DirectoryBlobStorageDriver.js.map +0 -6
- package/dist/esm/storage/fs/FileStorageDriver.js +0 -323
- package/dist/esm/storage/fs/FileStorageDriver.js.map +0 -6
- package/dist/esm/storage/fs/FlatFileBlobStorageDriver.js +0 -180
- package/dist/esm/storage/fs/FlatFileBlobStorageDriver.js.map +0 -6
- package/dist/esm/storage/fs/JsonFileStorageDriver.js +0 -116
- package/dist/esm/storage/fs/JsonFileStorageDriver.js.map +0 -6
- package/dist/esm/storage/fs/WalBlobStorageDriver.js +0 -24
- package/dist/esm/storage/fs/WalBlobStorageDriver.js.map +0 -6
- package/dist/esm/storage/fs/index.js +0 -19
- package/dist/esm/storage/fs/index.js.map +0 -6
- package/dist/esm/storage/index.js +0 -8
- package/dist/esm/storage/index.js.map +0 -6
- package/dist/esm/storage/sqlite/SqliteBlobStorageDriver.js +0 -197
- package/dist/esm/storage/sqlite/SqliteBlobStorageDriver.js.map +0 -6
- package/dist/esm/storage/sqlite/SqlitePlatform.js +0 -26
- package/dist/esm/storage/sqlite/SqlitePlatform.js.map +0 -6
- package/dist/esm/storage/sqlite/SqliteStorageDriver.js +0 -409
- package/dist/esm/storage/sqlite/SqliteStorageDriver.js.map +0 -6
- package/dist/esm/storage/sqlite/SqliteStorageDriverError.js +0 -21
- package/dist/esm/storage/sqlite/SqliteStorageDriverError.js.map +0 -6
- package/dist/esm/storage/sqlite/SqliteTypes.js +0 -15
- package/dist/esm/storage/sqlite/SqliteTypes.js.map +0 -6
- package/dist/esm/storage/sqlite/SqliteUtil.js +0 -44
- package/dist/esm/storage/sqlite/SqliteUtil.js.map +0 -6
- package/dist/esm/storage/sqlite/index.js +0 -17
- package/dist/esm/storage/sqlite/index.js.map +0 -6
- package/dist/esm/storage/sqlite/platform/BunSqlite.js +0 -41
- package/dist/esm/storage/sqlite/platform/BunSqlite.js.map +0 -6
- package/dist/esm/storage/sqlite/platform/NodeJsSqlite.js +0 -33
- package/dist/esm/storage/sqlite/platform/NodeJsSqlite.js.map +0 -6
- package/dist/esm/time/index.js +0 -7
- package/dist/esm/time/index.js.map +0 -6
- package/dist/esm/time/startup.js +0 -10
- package/dist/esm/time/startup.js.map +0 -6
- package/dist/esm/util/runtimeChecks.js +0 -25
- package/dist/esm/util/runtimeChecks.js.map +0 -6
|
@@ -1,306 +0,0 @@
|
|
|
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 NodeJsHttpEndpoint_exports = {};
|
|
20
|
-
__export(NodeJsHttpEndpoint_exports, {
|
|
21
|
-
NodeJsHttpEndpoint: () => NodeJsHttpEndpoint
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(NodeJsHttpEndpoint_exports);
|
|
24
|
-
var import_general = require("@matter/general");
|
|
25
|
-
var import_node_fs = require("node:fs");
|
|
26
|
-
var import_node_http = require("node:http");
|
|
27
|
-
var import_node_https = require("node:https");
|
|
28
|
-
var import_node_path = require("node:path");
|
|
29
|
-
var import_WsAdapter = require("./WsAdapter.js");
|
|
30
|
-
/**
|
|
31
|
-
* @license
|
|
32
|
-
* Copyright 2022-2026 Matter.js Authors
|
|
33
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
34
|
-
*/
|
|
35
|
-
const logger = new import_general.Logger("NodeJsHttpEndpoint");
|
|
36
|
-
class NodeJsHttpEndpoint {
|
|
37
|
-
#server;
|
|
38
|
-
#ready;
|
|
39
|
-
#http;
|
|
40
|
-
#httpListener;
|
|
41
|
-
#ws;
|
|
42
|
-
#wsListener;
|
|
43
|
-
#notFound;
|
|
44
|
-
#wsAdapter;
|
|
45
|
-
#wsAdapterFactory;
|
|
46
|
-
static async create(config) {
|
|
47
|
-
const endpoint = new NodeJsHttpEndpoint(config);
|
|
48
|
-
await endpoint.ready;
|
|
49
|
-
return endpoint;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Create a new endpoint.
|
|
53
|
-
*
|
|
54
|
-
* You may pass an existing {@link Server} or pass {@link HttpEndpoint.Configuration} to create a server dedicated
|
|
55
|
-
* to this endpoint.
|
|
56
|
-
*/
|
|
57
|
-
constructor(config) {
|
|
58
|
-
let close, ready, server, notFound;
|
|
59
|
-
if ("on" in config) {
|
|
60
|
-
({ close, ready, server, notFound } = this.#bindToServer(config));
|
|
61
|
-
} else {
|
|
62
|
-
({ close, ready, server, notFound } = this.#createDedicatedServer(config));
|
|
63
|
-
}
|
|
64
|
-
this.#server = server;
|
|
65
|
-
this.#ready = ready;
|
|
66
|
-
this.close = close;
|
|
67
|
-
this.#notFound = notFound;
|
|
68
|
-
}
|
|
69
|
-
get server() {
|
|
70
|
-
return this.#server;
|
|
71
|
-
}
|
|
72
|
-
#bindToServer(server) {
|
|
73
|
-
return {
|
|
74
|
-
server,
|
|
75
|
-
ready: Promise.resolve(),
|
|
76
|
-
close: async () => {
|
|
77
|
-
this.http = void 0;
|
|
78
|
-
this.ws = void 0;
|
|
79
|
-
},
|
|
80
|
-
notFound: () => void 0
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
#createDedicatedServer(options) {
|
|
84
|
-
const address = import_general.AppAddress.for(options.address);
|
|
85
|
-
let server;
|
|
86
|
-
if (address.isTls) {
|
|
87
|
-
if (options.certificate === void 0 || options.key === void 0) {
|
|
88
|
-
throw new import_general.NetworkError(
|
|
89
|
-
`Cannot create HTTPS endpoint for ${address} because no certificate and/or key is present`
|
|
90
|
-
);
|
|
91
|
-
}
|
|
92
|
-
server = (0, import_node_https.createServer)({
|
|
93
|
-
keepAlive: true,
|
|
94
|
-
cert: options.certificate,
|
|
95
|
-
key: options.key
|
|
96
|
-
});
|
|
97
|
-
} else {
|
|
98
|
-
server = (0, import_node_http.createServer)({ keepAlive: true });
|
|
99
|
-
}
|
|
100
|
-
const opts = {};
|
|
101
|
-
const { transport } = address;
|
|
102
|
-
switch (transport.kind) {
|
|
103
|
-
case "ip":
|
|
104
|
-
if (!address.isWildcardHost) {
|
|
105
|
-
opts.host = address.hostname;
|
|
106
|
-
}
|
|
107
|
-
if (!address.isWildcardPort) {
|
|
108
|
-
opts.port = address.portNum;
|
|
109
|
-
}
|
|
110
|
-
break;
|
|
111
|
-
case "unix":
|
|
112
|
-
opts.path = (0, import_node_path.normalize)(decodeURIComponent(address.hostname));
|
|
113
|
-
if ((0, import_node_fs.existsSync)(opts.path)) {
|
|
114
|
-
if ((0, import_node_fs.statSync)(opts.path).isSocket()) {
|
|
115
|
-
try {
|
|
116
|
-
(0, import_node_fs.rmSync)(opts.path);
|
|
117
|
-
} catch (e) {
|
|
118
|
-
throw new import_general.NetworkError(
|
|
119
|
-
`Error deleting previous socket at ${opts.path}: ${(0, import_general.asError)(e).message}`
|
|
120
|
-
);
|
|
121
|
-
}
|
|
122
|
-
} else {
|
|
123
|
-
throw new import_general.NetworkError(`UNIX socket path ${opts.path} exists and is not a socket`);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
break;
|
|
127
|
-
default:
|
|
128
|
-
throw new import_general.NetworkError(
|
|
129
|
-
`Unsupported address type "${options.address?.type}" for HTTP endpoint`
|
|
130
|
-
);
|
|
131
|
-
}
|
|
132
|
-
server.listen(opts);
|
|
133
|
-
return {
|
|
134
|
-
server,
|
|
135
|
-
ready: new Promise((resolve, reject) => {
|
|
136
|
-
let settled = false;
|
|
137
|
-
server.once("listening", () => {
|
|
138
|
-
if (settled) {
|
|
139
|
-
return;
|
|
140
|
-
}
|
|
141
|
-
settled = true;
|
|
142
|
-
resolve();
|
|
143
|
-
});
|
|
144
|
-
server.on("error", (error) => {
|
|
145
|
-
if (settled) {
|
|
146
|
-
logger.warn("HTTP server error:", error.message);
|
|
147
|
-
return;
|
|
148
|
-
}
|
|
149
|
-
settled = true;
|
|
150
|
-
reject(error);
|
|
151
|
-
});
|
|
152
|
-
}),
|
|
153
|
-
close: async () => {
|
|
154
|
-
return new Promise((resolve, reject) => {
|
|
155
|
-
server.close((err) => {
|
|
156
|
-
if (err) {
|
|
157
|
-
reject(err);
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
160
|
-
resolve();
|
|
161
|
-
});
|
|
162
|
-
});
|
|
163
|
-
},
|
|
164
|
-
notFound: (res) => respondError(res, 404)
|
|
165
|
-
};
|
|
166
|
-
}
|
|
167
|
-
get ready() {
|
|
168
|
-
return this.#ready;
|
|
169
|
-
}
|
|
170
|
-
set http(handler) {
|
|
171
|
-
this.#http = handler;
|
|
172
|
-
if (!this.#http) {
|
|
173
|
-
if (this.#httpListener) {
|
|
174
|
-
this.#server.off("request", this.#httpListener);
|
|
175
|
-
}
|
|
176
|
-
return;
|
|
177
|
-
}
|
|
178
|
-
if (this.#httpListener) {
|
|
179
|
-
return;
|
|
180
|
-
}
|
|
181
|
-
this.#httpListener = (req, res) => {
|
|
182
|
-
this.#handleHttp(req, res).catch((error) => {
|
|
183
|
-
logger.error("Unhandled error in HTTP endpoint handler", error);
|
|
184
|
-
respondError(res, 500);
|
|
185
|
-
});
|
|
186
|
-
};
|
|
187
|
-
this.#server.on("request", this.#httpListener);
|
|
188
|
-
}
|
|
189
|
-
set ws(handler) {
|
|
190
|
-
this.#ws = handler;
|
|
191
|
-
if (!this.#ws) {
|
|
192
|
-
if (this.#wsListener) {
|
|
193
|
-
this.#server.off("upgrade", this.#wsListener);
|
|
194
|
-
}
|
|
195
|
-
return;
|
|
196
|
-
}
|
|
197
|
-
let adapter = this.#wsAdapter;
|
|
198
|
-
if (!adapter) {
|
|
199
|
-
const factory = this.#wsAdapterFactory ?? import_WsAdapter.WsAdapter.defaultFactory;
|
|
200
|
-
if (!factory) {
|
|
201
|
-
logger.warn(
|
|
202
|
-
"WebSocket support disabled because no adapter is installed; please import @matter/nodejs-ws or equivalent"
|
|
203
|
-
);
|
|
204
|
-
return;
|
|
205
|
-
}
|
|
206
|
-
adapter = this.#wsAdapter = factory();
|
|
207
|
-
}
|
|
208
|
-
this.#wsListener = (req, socket, head) => {
|
|
209
|
-
this.#handleUpgrade(adapter, req, socket, head).catch((error) => {
|
|
210
|
-
logger.error("Unhandled error WebSocket endpoint", error);
|
|
211
|
-
});
|
|
212
|
-
};
|
|
213
|
-
this.#server.on("upgrade", this.#wsListener);
|
|
214
|
-
}
|
|
215
|
-
close;
|
|
216
|
-
async #handleHttp(req, res) {
|
|
217
|
-
if (!this.#http) {
|
|
218
|
-
return;
|
|
219
|
-
}
|
|
220
|
-
const request = new NodeJsHttpRequest(req);
|
|
221
|
-
const response = await this.#http(request);
|
|
222
|
-
if (!response) {
|
|
223
|
-
this.#notFound(res);
|
|
224
|
-
return;
|
|
225
|
-
}
|
|
226
|
-
res.statusCode = response.status;
|
|
227
|
-
res.statusMessage = response.statusText;
|
|
228
|
-
response.headers.forEach(([name, value]) => res.appendHeader(name, value));
|
|
229
|
-
if (response.body === null) {
|
|
230
|
-
res.end();
|
|
231
|
-
return;
|
|
232
|
-
}
|
|
233
|
-
const nodeBodyStream = import_node_fs.ReadStream.fromWeb(response.body);
|
|
234
|
-
nodeBodyStream.on("error", (error) => {
|
|
235
|
-
logger.error("Error transmitting HTTP body", error);
|
|
236
|
-
respondError(res, 500);
|
|
237
|
-
});
|
|
238
|
-
nodeBodyStream.pipe(res);
|
|
239
|
-
}
|
|
240
|
-
async #handleUpgrade(adapter, req, socket, head) {
|
|
241
|
-
if (req.headers.upgrade !== "websocket") {
|
|
242
|
-
socket.destroy();
|
|
243
|
-
return;
|
|
244
|
-
}
|
|
245
|
-
if (!this.#ws) {
|
|
246
|
-
socket.destroy();
|
|
247
|
-
return;
|
|
248
|
-
}
|
|
249
|
-
const request = new NodeJsHttpRequest(req);
|
|
250
|
-
try {
|
|
251
|
-
await this.#ws(request, async () => {
|
|
252
|
-
return adapter.handle(req, socket, head);
|
|
253
|
-
});
|
|
254
|
-
} finally {
|
|
255
|
-
if (!socket.destroyed) {
|
|
256
|
-
socket.destroy();
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
}
|
|
260
|
-
}
|
|
261
|
-
class NodeJsHttpRequest extends Request {
|
|
262
|
-
constructor(message) {
|
|
263
|
-
const { method, rawHeaders } = message;
|
|
264
|
-
const url = `http://${message.headers.host ?? "unknown"}${message.url ?? "/"}`;
|
|
265
|
-
const headers = new Headers();
|
|
266
|
-
for (let i = 0; i < message.rawHeaders.length; i += 2) {
|
|
267
|
-
headers.append(rawHeaders[i], rawHeaders[i + 1]);
|
|
268
|
-
}
|
|
269
|
-
const init = {
|
|
270
|
-
method,
|
|
271
|
-
headers,
|
|
272
|
-
duplex: "half"
|
|
273
|
-
// Not in RequestInit type but required by node
|
|
274
|
-
};
|
|
275
|
-
if (method !== "GET" && method !== "HEAD") {
|
|
276
|
-
init.body = import_node_http.IncomingMessage.toWeb(message);
|
|
277
|
-
}
|
|
278
|
-
super(url, init);
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
function respondError(res, code) {
|
|
282
|
-
if (res.closed) {
|
|
283
|
-
return;
|
|
284
|
-
}
|
|
285
|
-
try {
|
|
286
|
-
if (!res.headersSent) {
|
|
287
|
-
res.statusCode = code;
|
|
288
|
-
res.setHeader("Content-Type", "text/plain");
|
|
289
|
-
res.end(`HTTP error ${code}
|
|
290
|
-
`);
|
|
291
|
-
} else {
|
|
292
|
-
res.end();
|
|
293
|
-
}
|
|
294
|
-
} catch (e) {
|
|
295
|
-
logger.warn(`Error conveying ${code} error:`, (0, import_general.asError)(e).message);
|
|
296
|
-
}
|
|
297
|
-
}
|
|
298
|
-
((NodeJsHttpEndpoint2) => {
|
|
299
|
-
class Factory extends import_general.HttpEndpointFactory {
|
|
300
|
-
async create(config) {
|
|
301
|
-
return NodeJsHttpEndpoint2.create(config);
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
NodeJsHttpEndpoint2.Factory = Factory;
|
|
305
|
-
})(NodeJsHttpEndpoint || (NodeJsHttpEndpoint = {}));
|
|
306
|
-
//# sourceMappingURL=NodeJsHttpEndpoint.js.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/net/NodeJsHttpEndpoint.ts"],
|
|
4
|
-
"mappings": "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",
|
|
5
|
-
"names": ["createHttpsServer", "createHttpServer", "NodeJsHttpEndpoint"]
|
|
6
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2022-2026 Matter.js Authors
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { Network, NetworkInterface, NetworkInterfaceDetails, TcpConnection, TcpListener, TcpListenerOptions, UdpSocket, UdpSocketOptions } from "@matter/general";
|
|
7
|
-
export declare class NodeJsNetwork extends Network {
|
|
8
|
-
static getMulticastInterfaceIpv4(netInterface: string): string | undefined;
|
|
9
|
-
static getMembershipMulticastInterfaces(netInterfaceOrZone: string | undefined, ipv4: boolean): (string | undefined)[];
|
|
10
|
-
static getNetInterfaceZoneIpv6(netInterface: string): string | undefined;
|
|
11
|
-
/**
|
|
12
|
-
* Returns the zone-scoped name of the first non-internal IPv6 interface.
|
|
13
|
-
* Used as a fallback for multicast sends when no interface has been observed
|
|
14
|
-
* from inbound traffic (e.g. when all sessions run over TCP).
|
|
15
|
-
*/
|
|
16
|
-
static getDefaultNetInterface(): string | undefined;
|
|
17
|
-
static getNetInterfaceForIp(ip: string): string | undefined;
|
|
18
|
-
private static readonly netInterfaces;
|
|
19
|
-
close(): Promise<void>;
|
|
20
|
-
private static getNetInterfaceForRemoteAddress;
|
|
21
|
-
private static getNetInterfaceZoneIpv6Internal;
|
|
22
|
-
/**
|
|
23
|
-
* Get all network interfaces.
|
|
24
|
-
* The optional configuration parameter allows to map interface names to types if this mapping is known.
|
|
25
|
-
* Each network interface which has no mapped type is returned as Ethernet for now.
|
|
26
|
-
*
|
|
27
|
-
* @param configuration - An array of objects with the name and type properties.
|
|
28
|
-
*/
|
|
29
|
-
getNetInterfaces(configuration?: NetworkInterface[]): NetworkInterface[];
|
|
30
|
-
getIpMac(netInterface: string): NetworkInterfaceDetails | undefined;
|
|
31
|
-
createUdpSocket(options: UdpSocketOptions): Promise<UdpSocket>;
|
|
32
|
-
createTcpListener(options: TcpListenerOptions): Promise<TcpListener>;
|
|
33
|
-
connectTcp(host: string, port: number, options?: {
|
|
34
|
-
timeout?: number;
|
|
35
|
-
}): Promise<TcpConnection>;
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=NodeJsNetwork.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
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,EAGvB,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,SAAS,EACT,gBAAgB,EACnB,MAAM,iBAAiB,CAAC;AASzB,qBAAa,aAAc,SAAQ,OAAO;IACtC,MAAM,CAAC,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASzE;IAED,MAAM,CAAC,gCAAgC,CACnC,kBAAkB,EAAE,MAAM,GAAG,SAAS,EACtC,IAAI,EAAE,OAAO,GACd,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CA4BxB;IAED,MAAM,CAAC,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAIvE;IAED;;;;OAIG;IACH,MAAM,CAAC,sBAAsB,IAAI,MAAM,GAAG,SAAS,CASlD;IAED,MAAM,CAAC,oBAAoB,CAAC,EAAE,EAAE,MAAM,sBAIrC;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAInC;IAEa,KAAK,kBAEnB;IAED,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,CAiB3E;IAED,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAMlE;IAEQ,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,CAEtE;IAEQ,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,CAE5E;IAEc,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CA8B5G;CACJ"}
|
|
@@ -1,199 +0,0 @@
|
|
|
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 NodeJsNetwork_exports = {};
|
|
20
|
-
__export(NodeJsNetwork_exports, {
|
|
21
|
-
NodeJsNetwork: () => NodeJsNetwork
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(NodeJsNetwork_exports);
|
|
24
|
-
var import_general = require("@matter/general");
|
|
25
|
-
var import_node_net = require("node:net");
|
|
26
|
-
var import_node_os = require("node:os");
|
|
27
|
-
var import_NodeJsTcpConnection = require("./NodeJsTcpConnection.js");
|
|
28
|
-
var import_NodeJsTcpListener = require("./NodeJsTcpListener.js");
|
|
29
|
-
var import_NodeJsUdpSocket = require("./NodeJsUdpSocket.js");
|
|
30
|
-
/**
|
|
31
|
-
* @license
|
|
32
|
-
* Copyright 2022-2026 Matter.js Authors
|
|
33
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
34
|
-
*/
|
|
35
|
-
const logger = import_general.Logger.get("NetworkNode");
|
|
36
|
-
class NodeJsNetwork extends import_general.Network {
|
|
37
|
-
static getMulticastInterfaceIpv4(netInterface) {
|
|
38
|
-
const netInterfaceInfo = (0, import_node_os.networkInterfaces)()[netInterface];
|
|
39
|
-
if (netInterfaceInfo === void 0) throw new import_general.NetworkError(`Unknown interface: ${netInterface}`);
|
|
40
|
-
for (const info of netInterfaceInfo) {
|
|
41
|
-
if (familyIs(4, info)) {
|
|
42
|
-
return info.address;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
return void 0;
|
|
46
|
-
}
|
|
47
|
-
static getMembershipMulticastInterfaces(netInterfaceOrZone, ipv4) {
|
|
48
|
-
if (ipv4) {
|
|
49
|
-
return [void 0];
|
|
50
|
-
} else {
|
|
51
|
-
const multicastInterfaces = Object.entries((0, import_node_os.networkInterfaces)()).flatMap(([netIf, netIfInfo]) => {
|
|
52
|
-
if (netIfInfo === void 0) {
|
|
53
|
-
return [];
|
|
54
|
-
}
|
|
55
|
-
const zone = this.getNetInterfaceZoneIpv6Internal(netIf, netIfInfo);
|
|
56
|
-
if (zone === void 0) {
|
|
57
|
-
return [];
|
|
58
|
-
}
|
|
59
|
-
if (netInterfaceOrZone !== void 0 && netInterfaceOrZone !== zone) {
|
|
60
|
-
return [];
|
|
61
|
-
}
|
|
62
|
-
return [`::%${zone}`];
|
|
63
|
-
});
|
|
64
|
-
if (multicastInterfaces.length === 0) {
|
|
65
|
-
logger.warn(
|
|
66
|
-
`No IPv6 multicast interface found${netInterfaceOrZone !== void 0 ? ` for interface ${netInterfaceOrZone}` : ""}.`
|
|
67
|
-
);
|
|
68
|
-
}
|
|
69
|
-
return multicastInterfaces;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
static getNetInterfaceZoneIpv6(netInterface) {
|
|
73
|
-
const netInterfaceInfo = (0, import_node_os.networkInterfaces)()[netInterface];
|
|
74
|
-
if (netInterfaceInfo === void 0) throw new import_general.NetworkError(`Unknown interface: ${netInterface}`);
|
|
75
|
-
return this.getNetInterfaceZoneIpv6Internal(netInterface, netInterfaceInfo);
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Returns the zone-scoped name of the first non-internal IPv6 interface.
|
|
79
|
-
* Used as a fallback for multicast sends when no interface has been observed
|
|
80
|
-
* from inbound traffic (e.g. when all sessions run over TCP).
|
|
81
|
-
*/
|
|
82
|
-
static getDefaultNetInterface() {
|
|
83
|
-
const interfaces = (0, import_node_os.networkInterfaces)();
|
|
84
|
-
for (const name in interfaces) {
|
|
85
|
-
const infos = interfaces[name];
|
|
86
|
-
if (infos.some((info) => familyIs(6, info) && !info.internal)) {
|
|
87
|
-
return this.getNetInterfaceZoneIpv6Internal(name, infos);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
return void 0;
|
|
91
|
-
}
|
|
92
|
-
static getNetInterfaceForIp(ip) {
|
|
93
|
-
return this.netInterfaces.get(ip);
|
|
94
|
-
}
|
|
95
|
-
static netInterfaces = new import_general.Cache(
|
|
96
|
-
"Network interface",
|
|
97
|
-
(ip) => this.getNetInterfaceForRemoteAddress(ip),
|
|
98
|
-
(0, import_general.Minutes)(5)
|
|
99
|
-
);
|
|
100
|
-
async close() {
|
|
101
|
-
await NodeJsNetwork.netInterfaces.close();
|
|
102
|
-
}
|
|
103
|
-
static getNetInterfaceForRemoteAddress(ip) {
|
|
104
|
-
if (ip.includes("%")) {
|
|
105
|
-
return ip.split("%")[1];
|
|
106
|
-
} else {
|
|
107
|
-
const interfaces = (0, import_node_os.networkInterfaces)();
|
|
108
|
-
for (const name in interfaces) {
|
|
109
|
-
const netInterfaces = interfaces[name];
|
|
110
|
-
for (const { address, netmask } of netInterfaces) {
|
|
111
|
-
if ((0, import_general.onSameNetwork)(ip, address, netmask)) {
|
|
112
|
-
return this.getNetInterfaceZoneIpv6Internal(name, netInterfaces);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
if ((0, import_general.isIPv6)(ip)) {
|
|
117
|
-
if (ip.startsWith("fd")) {
|
|
118
|
-
return "";
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
return void 0;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
static getNetInterfaceZoneIpv6Internal(netInterface, netInterfaceInfos) {
|
|
125
|
-
if (process.platform !== "win32") {
|
|
126
|
-
return netInterface;
|
|
127
|
-
}
|
|
128
|
-
if (netInterfaceInfos === void 0) return void 0;
|
|
129
|
-
return netInterfaceInfos.find((info) => familyIs(6, info) && info.address.startsWith("fe80::"))?.scopeid?.toString();
|
|
130
|
-
}
|
|
131
|
-
/**
|
|
132
|
-
* Get all network interfaces.
|
|
133
|
-
* The optional configuration parameter allows to map interface names to types if this mapping is known.
|
|
134
|
-
* Each network interface which has no mapped type is returned as Ethernet for now.
|
|
135
|
-
*
|
|
136
|
-
* @param configuration - An array of objects with the name and type properties.
|
|
137
|
-
*/
|
|
138
|
-
getNetInterfaces(configuration = []) {
|
|
139
|
-
const result = new Array();
|
|
140
|
-
const interfaces = (0, import_node_os.networkInterfaces)();
|
|
141
|
-
for (const name in interfaces) {
|
|
142
|
-
const netInterfaces = interfaces[name];
|
|
143
|
-
if (netInterfaces.length === 0) continue;
|
|
144
|
-
if (netInterfaces[0].internal) continue;
|
|
145
|
-
let type = import_general.InterfaceType.Ethernet;
|
|
146
|
-
if (configuration.length > 0) {
|
|
147
|
-
const nameType = configuration.find(({ name: mapName }) => name === mapName);
|
|
148
|
-
if (nameType !== void 0 && nameType.type !== void 0) {
|
|
149
|
-
type = nameType.type;
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
result.push({ name, type });
|
|
153
|
-
}
|
|
154
|
-
return result;
|
|
155
|
-
}
|
|
156
|
-
getIpMac(netInterface) {
|
|
157
|
-
const netInterfaceInfo = (0, import_node_os.networkInterfaces)()[netInterface];
|
|
158
|
-
if (netInterfaceInfo === void 0) return void 0;
|
|
159
|
-
const ipV4 = netInterfaceInfo.filter((info) => familyIs(4, info)).map(({ address }) => address);
|
|
160
|
-
const ipV6 = netInterfaceInfo.filter((info) => familyIs(6, info)).map(({ address }) => address);
|
|
161
|
-
return { mac: netInterfaceInfo[0].mac, ipV4, ipV6 };
|
|
162
|
-
}
|
|
163
|
-
createUdpSocket(options) {
|
|
164
|
-
return import_NodeJsUdpSocket.NodeJsUdpSocket.create(options);
|
|
165
|
-
}
|
|
166
|
-
createTcpListener(options) {
|
|
167
|
-
return import_NodeJsTcpListener.NodeJsTcpListener.create(options);
|
|
168
|
-
}
|
|
169
|
-
async connectTcp(host, port, options) {
|
|
170
|
-
return new Promise((resolve, reject) => {
|
|
171
|
-
let settled = false;
|
|
172
|
-
const settle = (fn) => {
|
|
173
|
-
if (!settled) {
|
|
174
|
-
settled = true;
|
|
175
|
-
fn();
|
|
176
|
-
}
|
|
177
|
-
};
|
|
178
|
-
const socket = (0, import_node_net.createConnection)({ host, port, noDelay: true }, () => {
|
|
179
|
-
socket.setTimeout(0);
|
|
180
|
-
socket.off("error", rejectOnce);
|
|
181
|
-
settle(() => resolve(new import_NodeJsTcpConnection.NodeJsTcpConnection(socket)));
|
|
182
|
-
});
|
|
183
|
-
const rejectOnce = (error) => settle(() => {
|
|
184
|
-
socket.destroy();
|
|
185
|
-
reject(error);
|
|
186
|
-
});
|
|
187
|
-
socket.setTimeout(options?.timeout ?? import_general.TCP_CONNECTION_TIMEOUT_MS);
|
|
188
|
-
socket.once("timeout", () => {
|
|
189
|
-
socket.destroy();
|
|
190
|
-
settle(() => reject(new import_general.NetworkError("TCP connection timeout")));
|
|
191
|
-
});
|
|
192
|
-
socket.on("error", rejectOnce);
|
|
193
|
-
});
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
function familyIs(version, { family }) {
|
|
197
|
-
return family === `IPv${version}`;
|
|
198
|
-
}
|
|
199
|
-
//# sourceMappingURL=NodeJsNetwork.js.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/net/NodeJsNetwork.ts"],
|
|
4
|
-
"mappings": "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",
|
|
5
|
-
"names": []
|
|
6
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2022-2026 Matter.js Authors
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { Bytes, TcpConnection, Transport } from "@matter/general";
|
|
7
|
-
import type { Socket } from "node:net";
|
|
8
|
-
/**
|
|
9
|
-
* Node.js implementation of the {@link TcpConnection} interface.
|
|
10
|
-
* Wraps a connected `net.Socket`.
|
|
11
|
-
*/
|
|
12
|
-
export declare class NodeJsTcpConnection implements TcpConnection {
|
|
13
|
-
#private;
|
|
14
|
-
readonly remoteAddress: string;
|
|
15
|
-
readonly remotePort: number;
|
|
16
|
-
readonly localPort: number;
|
|
17
|
-
constructor(socket: Socket);
|
|
18
|
-
[Symbol.asyncIterator](): AsyncIterator<Bytes>;
|
|
19
|
-
send(data: Bytes): Promise<void>;
|
|
20
|
-
onClose(listener: () => void): Transport.Listener;
|
|
21
|
-
onError(listener: (error: Error) => void): Transport.Listener;
|
|
22
|
-
close(): Promise<void>;
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=NodeJsTcpConnection.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NodeJsTcpConnection.d.ts","sourceRoot":"","sources":["../../../src/net/NodeJsTcpConnection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EAIL,aAAa,EACb,SAAS,EAEZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAKvC;;;GAGG;AACH,qBAAa,mBAAoB,YAAW,aAAa;;IACrD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAU3B,YAAY,MAAM,EAAE,MAAM,EAoCzB;IAED,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAuB7C;IAED,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAU/B;IAED,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAOhD;IAED,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,SAAS,CAAC,QAAQ,CAU5D;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAiB3B;CACJ"}
|