@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,116 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2022-2026 Matter.js Authors
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import {
|
|
7
|
-
FilesystemStorageDriver,
|
|
8
|
-
fromJson,
|
|
9
|
-
MemoryStorageDriver,
|
|
10
|
-
Seconds,
|
|
11
|
-
StorageError,
|
|
12
|
-
Time,
|
|
13
|
-
toJson
|
|
14
|
-
} from "@matter/general";
|
|
15
|
-
import { readFileSync } from "node:fs";
|
|
16
|
-
import { writeFile } from "node:fs/promises";
|
|
17
|
-
import { join } from "node:path";
|
|
18
|
-
class JsonFileStorageDriver extends FilesystemStorageDriver {
|
|
19
|
-
static id = "json";
|
|
20
|
-
/** We store changes after a value was set to the storage, but not more often than this setting (in ms). */
|
|
21
|
-
static commitDelay = Seconds.one;
|
|
22
|
-
committed = Promise.resolve();
|
|
23
|
-
#commitTimer = Time.getTimer("Storage commit", JsonFileStorageDriver.commitDelay, () => this.#commit());
|
|
24
|
-
#closed = false;
|
|
25
|
-
#resolveCommitted;
|
|
26
|
-
#path;
|
|
27
|
-
#store;
|
|
28
|
-
constructor(namespaceOrPath) {
|
|
29
|
-
super(typeof namespaceOrPath === "string" || namespaceOrPath === void 0 ? void 0 : namespaceOrPath);
|
|
30
|
-
this.#path = typeof namespaceOrPath === "string" ? namespaceOrPath : namespaceOrPath !== void 0 ? join(this.root.directory.path, "storage.json") : "";
|
|
31
|
-
this.#store = new MemoryStorageDriver();
|
|
32
|
-
}
|
|
33
|
-
static async create(namespace, _descriptor) {
|
|
34
|
-
const storage = new JsonFileStorageDriver(namespace);
|
|
35
|
-
try {
|
|
36
|
-
await storage.initialize();
|
|
37
|
-
} catch (error) {
|
|
38
|
-
await storage.close().catch(() => {
|
|
39
|
-
});
|
|
40
|
-
throw error;
|
|
41
|
-
}
|
|
42
|
-
return storage;
|
|
43
|
-
}
|
|
44
|
-
get initialized() {
|
|
45
|
-
return this.#store.initialized;
|
|
46
|
-
}
|
|
47
|
-
async initialize() {
|
|
48
|
-
if (this.initialized) throw new StorageError("Storage already initialized!");
|
|
49
|
-
await super.initialize();
|
|
50
|
-
let data = {};
|
|
51
|
-
try {
|
|
52
|
-
data = fromJson(readFileSync(this.#path, "utf-8"));
|
|
53
|
-
} catch (error) {
|
|
54
|
-
if (error.code !== "ENOENT") {
|
|
55
|
-
throw error;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
this.#store = new MemoryStorageDriver(data);
|
|
59
|
-
this.#store.initialize();
|
|
60
|
-
}
|
|
61
|
-
#triggerCommit() {
|
|
62
|
-
if (!this.#commitTimer.isRunning) {
|
|
63
|
-
this.committed = new Promise((resolve) => {
|
|
64
|
-
this.#resolveCommitted = resolve;
|
|
65
|
-
});
|
|
66
|
-
this.#commitTimer.start();
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
get(contexts, key) {
|
|
70
|
-
return this.#store.get(contexts, key);
|
|
71
|
-
}
|
|
72
|
-
set(contexts, keyOrValues, value) {
|
|
73
|
-
this.#store.set(contexts, keyOrValues, value);
|
|
74
|
-
this.#triggerCommit();
|
|
75
|
-
}
|
|
76
|
-
delete(contexts, key) {
|
|
77
|
-
this.#store.delete(contexts, key);
|
|
78
|
-
this.#triggerCommit();
|
|
79
|
-
}
|
|
80
|
-
keys(contexts) {
|
|
81
|
-
return this.#store.keys(contexts);
|
|
82
|
-
}
|
|
83
|
-
values(contexts) {
|
|
84
|
-
return this.#store.values(contexts);
|
|
85
|
-
}
|
|
86
|
-
contexts(contexts) {
|
|
87
|
-
return this.#store.contexts(contexts);
|
|
88
|
-
}
|
|
89
|
-
clearAll(contexts) {
|
|
90
|
-
this.#store.clearAll(contexts);
|
|
91
|
-
}
|
|
92
|
-
async #commit() {
|
|
93
|
-
if (!this.initialized || this.#closed) return;
|
|
94
|
-
if (this.#commitTimer.isRunning) {
|
|
95
|
-
this.#commitTimer.stop();
|
|
96
|
-
}
|
|
97
|
-
try {
|
|
98
|
-
await writeFile(this.#path, toJson(this.#store.data, 1), "utf-8");
|
|
99
|
-
} finally {
|
|
100
|
-
if (this.#resolveCommitted !== void 0) {
|
|
101
|
-
this.#resolveCommitted();
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
async close() {
|
|
106
|
-
this.#commitTimer.stop();
|
|
107
|
-
await this.#commit();
|
|
108
|
-
await this.#store.close();
|
|
109
|
-
this.#closed = true;
|
|
110
|
-
await super.close();
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
export {
|
|
114
|
-
JsonFileStorageDriver
|
|
115
|
-
};
|
|
116
|
-
//# sourceMappingURL=JsonFileStorageDriver.js.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/storage/fs/JsonFileStorageDriver.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 { DatafileRoot, ImplementationError } from "@matter/general";
|
|
7
|
-
import { DirectoryBlobStorageDriver } from "./DirectoryBlobStorageDriver.js";
|
|
8
|
-
class WalBlobStorageDriver extends DirectoryBlobStorageDriver {
|
|
9
|
-
static id = "wal";
|
|
10
|
-
static create(namespace, _descriptor) {
|
|
11
|
-
if (!(namespace instanceof DatafileRoot)) {
|
|
12
|
-
throw new ImplementationError("WalBlobStorageDriver requires a DatafileRoot namespace");
|
|
13
|
-
}
|
|
14
|
-
const blobsRoot = new DatafileRoot(namespace.directory.directory("blobs"));
|
|
15
|
-
return new WalBlobStorageDriver(blobsRoot);
|
|
16
|
-
}
|
|
17
|
-
constructor(namespace) {
|
|
18
|
-
super(namespace);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
export {
|
|
22
|
-
WalBlobStorageDriver
|
|
23
|
-
};
|
|
24
|
-
//# sourceMappingURL=WalBlobStorageDriver.js.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/storage/fs/WalBlobStorageDriver.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAA6B,cAAc,2BAA2B;AACtE,SAAS,kCAAkC;AAMpC,MAAM,6BAA6B,2BAA2B;AAAA,EACjE,OAAyB,KAAK;AAAA,EAE9B,OAAgB,OAAO,WAA0B,aAAqD;AAClG,QAAI,EAAE,qBAAqB,eAAe;AACtC,YAAM,IAAI,oBAAoB,wDAAwD;AAAA,IAC1F;AAEA,UAAM,YAAY,IAAI,aAAa,UAAU,UAAU,UAAU,OAAO,CAAC;AACzE,WAAO,IAAI,qBAAqB,SAAS;AAAA,EAC7C;AAAA,EAEQ,YAAY,WAA0B;AAC1C,UAAM,SAAS;AAAA,EACnB;AACJ;",
|
|
5
|
-
"names": []
|
|
6
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2022-2026 Matter.js Authors
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
export * from "./DirectoryBlobStorageDriver.js";
|
|
7
|
-
export * from "./FileStorageDriver.js";
|
|
8
|
-
export * from "./FlatFileBlobStorageDriver.js";
|
|
9
|
-
export * from "./JsonFileStorageDriver.js";
|
|
10
|
-
export * from "./WalBlobStorageDriver.js";
|
|
11
|
-
import { FileStorageDriver } from "./FileStorageDriver.js";
|
|
12
|
-
import { JsonFileStorageDriver } from "./JsonFileStorageDriver.js";
|
|
13
|
-
const StorageBackendDisk = FileStorageDriver;
|
|
14
|
-
const StorageBackendJsonFile = JsonFileStorageDriver;
|
|
15
|
-
export {
|
|
16
|
-
StorageBackendDisk,
|
|
17
|
-
StorageBackendJsonFile
|
|
18
|
-
};
|
|
19
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2022-2026 Matter.js Authors
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { DatafileRoot, FilesystemBlobStorageDriver } from "@matter/general";
|
|
7
|
-
import { resolve } from "node:path";
|
|
8
|
-
import { platformDatabaseCreator } from "./SqlitePlatform.js";
|
|
9
|
-
import { SqliteStorageDriverError } from "./SqliteStorageDriverError.js";
|
|
10
|
-
import { buildContextKeyPair, buildContextPath, escapeGlob } from "./SqliteUtil.js";
|
|
11
|
-
class SqliteBlobStorageDriver extends FilesystemBlobStorageDriver {
|
|
12
|
-
static id = "sqlite";
|
|
13
|
-
static memoryPath = ":memory:";
|
|
14
|
-
static defaultTableName = "blobstore";
|
|
15
|
-
/**
|
|
16
|
-
* Create a SqliteBlobStorageDriver for the given namespace using the platform-appropriate database.
|
|
17
|
-
*/
|
|
18
|
-
static async create(namespace) {
|
|
19
|
-
const storage = new SqliteBlobStorageDriver({ namespaceOrPath: namespace });
|
|
20
|
-
await storage.initialize();
|
|
21
|
-
return storage;
|
|
22
|
-
}
|
|
23
|
-
#isInitialized = false;
|
|
24
|
-
#database;
|
|
25
|
-
#databaseCreator;
|
|
26
|
-
#dbPath;
|
|
27
|
-
#tableName;
|
|
28
|
-
// Prepared queries
|
|
29
|
-
#queryOpenBlob;
|
|
30
|
-
#queryWriteBlob;
|
|
31
|
-
#queryDeleteBlob;
|
|
32
|
-
#queryHasBlob;
|
|
33
|
-
#queryKeysBlob;
|
|
34
|
-
#queryContextsSub;
|
|
35
|
-
#queryClearAll;
|
|
36
|
-
/**
|
|
37
|
-
* Create sqlite-based blob storage.
|
|
38
|
-
*
|
|
39
|
-
* @param args.databaseCreator Optional database instance creator. If omitted, resolved automatically during
|
|
40
|
-
* {@link initialize} via platform detection.
|
|
41
|
-
* @param args.namespaceOrPath DataNamespace (derives path from root directory), string (direct path), or
|
|
42
|
-
* null/undefined for in-memory database
|
|
43
|
-
* @param args.tableName table name
|
|
44
|
-
*/
|
|
45
|
-
constructor(args) {
|
|
46
|
-
const namespaceOrPath = args?.namespaceOrPath;
|
|
47
|
-
super(namespaceOrPath instanceof DatafileRoot ? namespaceOrPath : void 0);
|
|
48
|
-
this.#dbPath = typeof namespaceOrPath === "string" ? namespaceOrPath : namespaceOrPath instanceof DatafileRoot ? resolve(namespaceOrPath.directory.path, "storage.db") : SqliteBlobStorageDriver.memoryPath;
|
|
49
|
-
this.#tableName = args?.tableName ?? SqliteBlobStorageDriver.defaultTableName;
|
|
50
|
-
if (args?.databaseCreator) {
|
|
51
|
-
this.#openDatabase(args.databaseCreator);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
#openDatabase(databaseCreator) {
|
|
55
|
-
this.#databaseCreator = databaseCreator;
|
|
56
|
-
this.#database = databaseCreator(this.#dbPath);
|
|
57
|
-
const initQuery = this.#database.prepare(`
|
|
58
|
-
CREATE TABLE IF NOT EXISTS ${this.#tableName} (
|
|
59
|
-
context TEXT NOT NULL,
|
|
60
|
-
key TEXT NOT NULL,
|
|
61
|
-
data BLOB,
|
|
62
|
-
PRIMARY KEY (context, key)
|
|
63
|
-
) STRICT
|
|
64
|
-
`);
|
|
65
|
-
initQuery.run();
|
|
66
|
-
this.#queryOpenBlob = this.#database.prepare(`
|
|
67
|
-
SELECT data FROM ${this.#tableName} WHERE
|
|
68
|
-
context=$context AND
|
|
69
|
-
key=$key
|
|
70
|
-
`);
|
|
71
|
-
this.#queryWriteBlob = this.#database.prepare(`
|
|
72
|
-
INSERT INTO ${this.#tableName}
|
|
73
|
-
(context, key, data)
|
|
74
|
-
VALUES($context, $key, $data)
|
|
75
|
-
ON CONFLICT(context, key)
|
|
76
|
-
DO UPDATE SET data = excluded.data
|
|
77
|
-
`);
|
|
78
|
-
this.#queryDeleteBlob = this.#database.prepare(`
|
|
79
|
-
DELETE FROM ${this.#tableName} WHERE
|
|
80
|
-
context=$context AND
|
|
81
|
-
key=$key
|
|
82
|
-
`);
|
|
83
|
-
this.#queryHasBlob = this.#database.prepare(`
|
|
84
|
-
SELECT EXISTS(
|
|
85
|
-
SELECT 1 FROM ${this.#tableName}
|
|
86
|
-
WHERE context=$context AND key=$key
|
|
87
|
-
) as has_record
|
|
88
|
-
`);
|
|
89
|
-
this.#queryKeysBlob = this.#database.prepare(`
|
|
90
|
-
SELECT DISTINCT key FROM ${this.#tableName} WHERE
|
|
91
|
-
context=$context
|
|
92
|
-
`);
|
|
93
|
-
this.#queryContextsSub = this.#database.prepare(`
|
|
94
|
-
SELECT DISTINCT context FROM ${this.#tableName} WHERE
|
|
95
|
-
context GLOB $contextGlob
|
|
96
|
-
`);
|
|
97
|
-
this.#queryClearAll = this.#database.prepare(`
|
|
98
|
-
DELETE FROM ${this.#tableName} WHERE
|
|
99
|
-
context=$context OR context GLOB $contextGlob
|
|
100
|
-
`);
|
|
101
|
-
}
|
|
102
|
-
get initialized() {
|
|
103
|
-
return this.#isInitialized;
|
|
104
|
-
}
|
|
105
|
-
async initialize() {
|
|
106
|
-
if (this.#isInitialized) {
|
|
107
|
-
throw new SqliteStorageDriverError("initialize", this.#tableName, "Storage already initialized!");
|
|
108
|
-
}
|
|
109
|
-
await super.initialize();
|
|
110
|
-
if (!this.#databaseCreator) {
|
|
111
|
-
this.#openDatabase(await platformDatabaseCreator());
|
|
112
|
-
}
|
|
113
|
-
this.#isInitialized = true;
|
|
114
|
-
}
|
|
115
|
-
async close() {
|
|
116
|
-
this.#isInitialized = false;
|
|
117
|
-
this.#database?.close();
|
|
118
|
-
await super.close();
|
|
119
|
-
}
|
|
120
|
-
openBlob(contexts, key) {
|
|
121
|
-
const queryResult = this.#queryOpenBlob.get(buildContextKeyPair(contexts, key));
|
|
122
|
-
if (queryResult == null || queryResult.data == null) {
|
|
123
|
-
return new Blob();
|
|
124
|
-
}
|
|
125
|
-
return new Blob([new Uint8Array(queryResult.data)]);
|
|
126
|
-
}
|
|
127
|
-
// SQLite does not support incremental blob writes — the full blob must be buffered before INSERT.
|
|
128
|
-
async writeBlobFromStream(contexts, key, stream) {
|
|
129
|
-
const arrayBuffer = await new Response(stream).arrayBuffer();
|
|
130
|
-
const bytes = new Uint8Array(arrayBuffer);
|
|
131
|
-
const queryResult = this.#queryWriteBlob.run({
|
|
132
|
-
...buildContextKeyPair(contexts, key),
|
|
133
|
-
data: bytes
|
|
134
|
-
});
|
|
135
|
-
if (Number(queryResult.changes) <= 0) {
|
|
136
|
-
throw new SqliteStorageDriverError(
|
|
137
|
-
"writeBlob",
|
|
138
|
-
`${buildContextPath(contexts)}$${key}`,
|
|
139
|
-
`Something went wrong! Value wasn't changed.`
|
|
140
|
-
);
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
delete(contexts, key) {
|
|
144
|
-
this.#queryDeleteBlob.run(buildContextKeyPair(contexts, key));
|
|
145
|
-
}
|
|
146
|
-
has(contexts, key) {
|
|
147
|
-
const result = this.#queryHasBlob.get(buildContextKeyPair(contexts, key));
|
|
148
|
-
return result?.has_record === 1;
|
|
149
|
-
}
|
|
150
|
-
keys(contexts) {
|
|
151
|
-
const queryResults = this.#queryKeysBlob.all({
|
|
152
|
-
context: buildContextPath(contexts)
|
|
153
|
-
}).filter((v) => v != null);
|
|
154
|
-
return queryResults.map((v) => v.key);
|
|
155
|
-
}
|
|
156
|
-
contexts(contexts) {
|
|
157
|
-
const parentCtx = contexts.length > 0 ? buildContextPath(contexts) : "";
|
|
158
|
-
let subContexts;
|
|
159
|
-
if (contexts.length === 0) {
|
|
160
|
-
const allContexts = this.#queryContextsSub.all({ contextGlob: "*" }).filter((v) => v != null);
|
|
161
|
-
subContexts = allContexts.map((v) => {
|
|
162
|
-
const firstDotIndex = v.context.indexOf(".");
|
|
163
|
-
if (firstDotIndex < 0) {
|
|
164
|
-
return v.context;
|
|
165
|
-
}
|
|
166
|
-
return v.context.substring(0, firstDotIndex);
|
|
167
|
-
});
|
|
168
|
-
} else {
|
|
169
|
-
const allSubContexts = this.#queryContextsSub.all({
|
|
170
|
-
contextGlob: escapeGlob(parentCtx) + ".*"
|
|
171
|
-
}).filter((v) => v != null);
|
|
172
|
-
subContexts = allSubContexts.map((v) => {
|
|
173
|
-
const subKey = v.context.substring(parentCtx.length + 1);
|
|
174
|
-
const dotIndex = subKey.indexOf(".");
|
|
175
|
-
if (dotIndex < 0) {
|
|
176
|
-
return subKey;
|
|
177
|
-
}
|
|
178
|
-
return subKey.substring(0, dotIndex);
|
|
179
|
-
});
|
|
180
|
-
}
|
|
181
|
-
return [...new Set(subContexts.filter((c) => c != null && c.trim().length > 0))];
|
|
182
|
-
}
|
|
183
|
-
clearAll(contexts) {
|
|
184
|
-
if (contexts.length === 0) {
|
|
185
|
-
return;
|
|
186
|
-
}
|
|
187
|
-
const contextPath = buildContextPath(contexts);
|
|
188
|
-
this.#queryClearAll.run({
|
|
189
|
-
context: contextPath,
|
|
190
|
-
contextGlob: escapeGlob(contextPath) + ".*"
|
|
191
|
-
});
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
export {
|
|
195
|
-
SqliteBlobStorageDriver
|
|
196
|
-
};
|
|
197
|
-
//# sourceMappingURL=SqliteBlobStorageDriver.js.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/storage/sqlite/SqliteBlobStorageDriver.ts"],
|
|
4
|
-
"mappings": "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",
|
|
5
|
-
"names": []
|
|
6
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2022-2026 Matter.js Authors
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { NoProviderError } from "@matter/general";
|
|
7
|
-
import { isBunjs, supportsSqlite } from "#util/runtimeChecks.js";
|
|
8
|
-
async function platformDatabaseCreator() {
|
|
9
|
-
if (!supportsSqlite()) {
|
|
10
|
-
throw new NoProviderError("SQLite requires Node.js 22+ or Bun");
|
|
11
|
-
}
|
|
12
|
-
if (isBunjs()) {
|
|
13
|
-
const module2 = await import("./platform/BunSqlite.js");
|
|
14
|
-
return findDefaultExport(module2, "createBunDatabase");
|
|
15
|
-
}
|
|
16
|
-
const module = await import("./platform/NodeJsSqlite.js");
|
|
17
|
-
return findDefaultExport(module, "createNodeJsDatabase");
|
|
18
|
-
}
|
|
19
|
-
function findDefaultExport(moduleLike, name) {
|
|
20
|
-
return moduleLike[name] || moduleLike.default?.[name] || moduleLike.default;
|
|
21
|
-
}
|
|
22
|
-
export {
|
|
23
|
-
findDefaultExport,
|
|
24
|
-
platformDatabaseCreator
|
|
25
|
-
};
|
|
26
|
-
//# sourceMappingURL=SqlitePlatform.js.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/storage/sqlite/SqlitePlatform.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,uBAAuB;AAEhC,SAAS,SAAS,sBAAsB;AAQxC,eAAsB,0BAAoD;AACtE,MAAI,CAAC,eAAe,GAAG;AACnB,UAAM,IAAI,gBAAgB,oCAAoC;AAAA,EAClE;AAEA,MAAI,QAAQ,GAAG;AACX,UAAMA,UAAS,MAAM,OAAO,yBAAyB;AACrD,WAAO,kBAAkBA,SAAQ,mBAAmB;AAAA,EACxD;AAEA,QAAM,SAAS,MAAM,OAAO,4BAA4B;AACxD,SAAO,kBAAkB,QAAQ,sBAAsB;AAC3D;AAWO,SAAS,kBAAwC,YAAe,MAAe;AAClF,SAAO,WAAW,IAAI,KAAM,WAAmB,UAAU,IAAI,KAAM,WAAmB;AAC1F;",
|
|
5
|
-
"names": ["module"]
|
|
6
|
-
}
|