@plures/pluresdb 1.4.0
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/LICENSE +72 -0
- package/README.md +450 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/better-sqlite3-shared.d.ts +12 -0
- package/dist/better-sqlite3-shared.d.ts.map +1 -0
- package/dist/better-sqlite3-shared.js +143 -0
- package/dist/better-sqlite3-shared.js.map +1 -0
- package/dist/better-sqlite3.d.ts +4 -0
- package/dist/better-sqlite3.d.ts.map +1 -0
- package/dist/better-sqlite3.js +8 -0
- package/dist/better-sqlite3.js.map +1 -0
- package/dist/cli.d.ts +7 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +258 -0
- package/dist/cli.js.map +1 -0
- package/dist/node-index.d.ts +148 -0
- package/dist/node-index.d.ts.map +1 -0
- package/dist/node-index.js +665 -0
- package/dist/node-index.js.map +1 -0
- package/dist/node-wrapper.d.ts +44 -0
- package/dist/node-wrapper.d.ts.map +1 -0
- package/dist/node-wrapper.js +296 -0
- package/dist/node-wrapper.js.map +1 -0
- package/dist/types/index.d.ts +28 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/node-types.d.ts +71 -0
- package/dist/types/node-types.d.ts.map +1 -0
- package/dist/types/node-types.js +6 -0
- package/dist/types/node-types.js.map +1 -0
- package/dist/vscode/extension.d.ts +81 -0
- package/dist/vscode/extension.d.ts.map +1 -0
- package/dist/vscode/extension.js +309 -0
- package/dist/vscode/extension.js.map +1 -0
- package/examples/basic-usage.d.ts +2 -0
- package/examples/basic-usage.d.ts.map +1 -0
- package/examples/basic-usage.js +26 -0
- package/examples/basic-usage.js.map +1 -0
- package/examples/basic-usage.ts +29 -0
- package/examples/vscode-extension-example/README.md +95 -0
- package/examples/vscode-extension-example/package.json +49 -0
- package/examples/vscode-extension-example/src/extension.ts +172 -0
- package/examples/vscode-extension-example/tsconfig.json +12 -0
- package/examples/vscode-extension-integration.d.ts +31 -0
- package/examples/vscode-extension-integration.d.ts.map +1 -0
- package/examples/vscode-extension-integration.js +319 -0
- package/examples/vscode-extension-integration.js.map +1 -0
- package/examples/vscode-extension-integration.ts +41 -0
- package/legacy/benchmarks/memory-benchmarks.ts +350 -0
- package/legacy/benchmarks/run-benchmarks.ts +315 -0
- package/legacy/better-sqlite3-shared.ts +157 -0
- package/legacy/better-sqlite3.ts +4 -0
- package/legacy/cli.ts +241 -0
- package/legacy/config.ts +50 -0
- package/legacy/core/crdt.ts +107 -0
- package/legacy/core/database.ts +529 -0
- package/legacy/healthcheck.ts +162 -0
- package/legacy/http/api-server.ts +438 -0
- package/legacy/index.ts +28 -0
- package/legacy/logic/rules.ts +46 -0
- package/legacy/main.rs +3 -0
- package/legacy/main.ts +197 -0
- package/legacy/network/websocket-server.ts +115 -0
- package/legacy/node-index.ts +823 -0
- package/legacy/node-wrapper.ts +329 -0
- package/legacy/sqlite-compat.ts +633 -0
- package/legacy/sqlite3-compat.ts +55 -0
- package/legacy/storage/kv-storage.ts +73 -0
- package/legacy/tests/core.test.ts +305 -0
- package/legacy/tests/fixtures/performance-data.json +71 -0
- package/legacy/tests/fixtures/test-data.json +129 -0
- package/legacy/tests/integration/api-server.test.ts +334 -0
- package/legacy/tests/integration/mesh-network.test.ts +303 -0
- package/legacy/tests/logic.test.ts +34 -0
- package/legacy/tests/performance/load.test.ts +290 -0
- package/legacy/tests/security/input-validation.test.ts +286 -0
- package/legacy/tests/unit/core.test.ts +226 -0
- package/legacy/tests/unit/subscriptions.test.ts +135 -0
- package/legacy/tests/unit/vector-search.test.ts +173 -0
- package/legacy/tests/vscode_extension_test.ts +281 -0
- package/legacy/types/index.ts +32 -0
- package/legacy/types/node-types.ts +80 -0
- package/legacy/util/debug.ts +14 -0
- package/legacy/vector/index.ts +59 -0
- package/legacy/vscode/extension.ts +387 -0
- package/package.json +127 -0
- package/scripts/compiled-crud-verify.ts +30 -0
- package/scripts/dogfood.ts +297 -0
- package/scripts/postinstall.js +156 -0
- package/scripts/release-check.js +190 -0
- package/scripts/run-tests.ts +178 -0
- package/scripts/setup-libclang.ps1 +209 -0
- package/scripts/update-changelog.js +214 -0
- package/web/README.md +27 -0
- package/web/svelte/package.json +31 -0
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isPlainObject = isPlainObject;
|
|
4
|
+
exports.normalizeParameterInput = normalizeParameterInput;
|
|
5
|
+
exports.shapeRow = shapeRow;
|
|
6
|
+
exports.normalizeQueryResult = normalizeQueryResult;
|
|
7
|
+
exports.splitSqlStatements = splitSqlStatements;
|
|
8
|
+
exports.sanitizeDataDirName = sanitizeDataDirName;
|
|
9
|
+
function isPlainObject(value) {
|
|
10
|
+
if (value === null || typeof value !== "object") {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
const proto = Object.getPrototypeOf(value);
|
|
14
|
+
return proto === Object.prototype || proto === null;
|
|
15
|
+
}
|
|
16
|
+
function normalizeParameterInput(args) {
|
|
17
|
+
if (args.length === 0) {
|
|
18
|
+
return [];
|
|
19
|
+
}
|
|
20
|
+
if (args.length === 1) {
|
|
21
|
+
const first = args[0];
|
|
22
|
+
if (Array.isArray(first)) {
|
|
23
|
+
return first;
|
|
24
|
+
}
|
|
25
|
+
if (isPlainObject(first)) {
|
|
26
|
+
return [first];
|
|
27
|
+
}
|
|
28
|
+
return [first];
|
|
29
|
+
}
|
|
30
|
+
return args;
|
|
31
|
+
}
|
|
32
|
+
function expandDotNotation(row) {
|
|
33
|
+
const result = {};
|
|
34
|
+
for (const [key, value] of Object.entries(row)) {
|
|
35
|
+
const parts = key.split(".");
|
|
36
|
+
let cursor = result;
|
|
37
|
+
for (let index = 0; index < parts.length; index++) {
|
|
38
|
+
const part = parts[index];
|
|
39
|
+
if (index === parts.length - 1) {
|
|
40
|
+
cursor[part] = value;
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
const next = cursor[part];
|
|
44
|
+
if (!isPlainObject(next)) {
|
|
45
|
+
cursor[part] = {};
|
|
46
|
+
}
|
|
47
|
+
cursor = cursor[part];
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return result;
|
|
52
|
+
}
|
|
53
|
+
function shapeRow(row, columns, mode) {
|
|
54
|
+
if (mode.raw) {
|
|
55
|
+
return row;
|
|
56
|
+
}
|
|
57
|
+
let normalized;
|
|
58
|
+
if (Array.isArray(row)) {
|
|
59
|
+
if (columns && columns.length > 0) {
|
|
60
|
+
const mapped = {};
|
|
61
|
+
columns.forEach((column, index) => {
|
|
62
|
+
mapped[column] = row[index];
|
|
63
|
+
});
|
|
64
|
+
normalized = mapped;
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
normalized = [...row];
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
else if (isPlainObject(row)) {
|
|
71
|
+
normalized = { ...row };
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
normalized = row;
|
|
75
|
+
}
|
|
76
|
+
if (mode.pluck) {
|
|
77
|
+
if (Array.isArray(row)) {
|
|
78
|
+
return row[0];
|
|
79
|
+
}
|
|
80
|
+
if (isPlainObject(row)) {
|
|
81
|
+
const keys = Object.keys(row);
|
|
82
|
+
return keys.length > 0
|
|
83
|
+
? row[keys[0]]
|
|
84
|
+
: undefined;
|
|
85
|
+
}
|
|
86
|
+
if (columns && columns.length > 0 && isPlainObject(normalized)) {
|
|
87
|
+
return normalized[columns[0]];
|
|
88
|
+
}
|
|
89
|
+
return normalized;
|
|
90
|
+
}
|
|
91
|
+
if (mode.expand && isPlainObject(normalized)) {
|
|
92
|
+
return expandDotNotation(normalized);
|
|
93
|
+
}
|
|
94
|
+
return normalized;
|
|
95
|
+
}
|
|
96
|
+
function normalizeQueryResult(raw) {
|
|
97
|
+
if (raw && typeof raw === "object" && "rows" in raw) {
|
|
98
|
+
const result = raw;
|
|
99
|
+
const columnsValue = Array.isArray(result.columns) ? result.columns : [];
|
|
100
|
+
const rowsValue = Array.isArray(result.rows) ? result.rows : [];
|
|
101
|
+
const changesValue = typeof result.changes === "number"
|
|
102
|
+
? result.changes
|
|
103
|
+
: 0;
|
|
104
|
+
const lastInsertRowIdValue = typeof result.lastInsertRowId === "number"
|
|
105
|
+
? result.lastInsertRowId
|
|
106
|
+
: typeof result.lastInsertRowid === "number"
|
|
107
|
+
? Number(result.lastInsertRowid)
|
|
108
|
+
: 0;
|
|
109
|
+
return {
|
|
110
|
+
rows: rowsValue,
|
|
111
|
+
columns: columnsValue,
|
|
112
|
+
changes: changesValue,
|
|
113
|
+
lastInsertRowId: lastInsertRowIdValue,
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
if (Array.isArray(raw)) {
|
|
117
|
+
return {
|
|
118
|
+
rows: raw,
|
|
119
|
+
columns: [],
|
|
120
|
+
changes: 0,
|
|
121
|
+
lastInsertRowId: 0,
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
if (raw === undefined || raw === null) {
|
|
125
|
+
return { rows: [], columns: [], changes: 0, lastInsertRowId: 0 };
|
|
126
|
+
}
|
|
127
|
+
return {
|
|
128
|
+
rows: [raw],
|
|
129
|
+
columns: [],
|
|
130
|
+
changes: 0,
|
|
131
|
+
lastInsertRowId: 0,
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
function splitSqlStatements(sql) {
|
|
135
|
+
return sql
|
|
136
|
+
.split(/;\s*(?=(?:[^"']|"[^"]*"|'[^']*')*$)/)
|
|
137
|
+
.map((statement) => statement.trim())
|
|
138
|
+
.filter((statement) => statement.length > 0);
|
|
139
|
+
}
|
|
140
|
+
function sanitizeDataDirName(name) {
|
|
141
|
+
return name.replace(/[\s\\/:]+/g, "_").replace(/_+/g, "_");
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=better-sqlite3-shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"better-sqlite3-shared.js","sourceRoot":"","sources":["../legacy/better-sqlite3-shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"better-sqlite3.d.ts","sourceRoot":"","sources":["../legacy/better-sqlite3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE7E,eAAe,qBAAqB,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BetterSQLite3Statement = exports.BetterSQLite3Database = void 0;
|
|
4
|
+
const node_index_1 = require("./node-index");
|
|
5
|
+
Object.defineProperty(exports, "BetterSQLite3Database", { enumerable: true, get: function () { return node_index_1.BetterSQLite3Database; } });
|
|
6
|
+
Object.defineProperty(exports, "BetterSQLite3Statement", { enumerable: true, get: function () { return node_index_1.BetterSQLite3Statement; } });
|
|
7
|
+
exports.default = node_index_1.BetterSQLite3Database;
|
|
8
|
+
//# sourceMappingURL=better-sqlite3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"better-sqlite3.js","sourceRoot":"","sources":["../legacy/better-sqlite3.ts"],"names":[],"mappings":";;;AAAA,6CAA6E;AAGpE,sGAHA,kCAAqB,OAGA;AAAE,uGAHA,mCAAsB,OAGA;AADtD,kBAAe,kCAAqB,CAAC"}
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../legacy/cli.ts"],"names":[],"mappings":";AAEA;;;GAGG"}
|
package/dist/cli.js
ADDED
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
/**
|
|
4
|
+
* CLI wrapper for PluresDB in Node.js environment
|
|
5
|
+
* This allows VSCode extensions to use pluresdb as a regular npm package
|
|
6
|
+
*/
|
|
7
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
|
+
if (k2 === undefined) k2 = k;
|
|
9
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
10
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
11
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
12
|
+
}
|
|
13
|
+
Object.defineProperty(o, k2, desc);
|
|
14
|
+
}) : (function(o, m, k, k2) {
|
|
15
|
+
if (k2 === undefined) k2 = k;
|
|
16
|
+
o[k2] = m[k];
|
|
17
|
+
}));
|
|
18
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
19
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
20
|
+
}) : function(o, v) {
|
|
21
|
+
o["default"] = v;
|
|
22
|
+
});
|
|
23
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
24
|
+
var ownKeys = function(o) {
|
|
25
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
26
|
+
var ar = [];
|
|
27
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
28
|
+
return ar;
|
|
29
|
+
};
|
|
30
|
+
return ownKeys(o);
|
|
31
|
+
};
|
|
32
|
+
return function (mod) {
|
|
33
|
+
if (mod && mod.__esModule) return mod;
|
|
34
|
+
var result = {};
|
|
35
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
36
|
+
__setModuleDefault(result, mod);
|
|
37
|
+
return result;
|
|
38
|
+
};
|
|
39
|
+
})();
|
|
40
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
41
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
42
|
+
};
|
|
43
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
44
|
+
const node_wrapper_1 = require("./node-wrapper");
|
|
45
|
+
const path = __importStar(require("path"));
|
|
46
|
+
const fs = __importStar(require("fs"));
|
|
47
|
+
const node_process_1 = __importDefault(require("node:process"));
|
|
48
|
+
// Parse command line arguments
|
|
49
|
+
const args = node_process_1.default.argv.slice(2);
|
|
50
|
+
const command = args[0];
|
|
51
|
+
if (!command) {
|
|
52
|
+
console.log(`
|
|
53
|
+
PluresDB - P2P Graph Database with SQLite Compatibility
|
|
54
|
+
|
|
55
|
+
Usage: pluresdb <command> [options]
|
|
56
|
+
|
|
57
|
+
Commands:
|
|
58
|
+
serve Start the PluresDB server
|
|
59
|
+
put <key> <value> Store a key-value pair
|
|
60
|
+
get <key> Retrieve a value by key
|
|
61
|
+
delete <key> Delete a key-value pair
|
|
62
|
+
query <sql> Execute SQL query
|
|
63
|
+
vsearch <query> Perform vector search
|
|
64
|
+
list [prefix] List all keys (optionally with prefix)
|
|
65
|
+
config Show configuration
|
|
66
|
+
config set <key> <value> Set configuration value
|
|
67
|
+
--help Show this help message
|
|
68
|
+
--version Show version
|
|
69
|
+
|
|
70
|
+
Examples:
|
|
71
|
+
pluresdb serve --port 8080
|
|
72
|
+
pluresdb put "user:123" '{"name": "John"}'
|
|
73
|
+
pluresdb get "user:123"
|
|
74
|
+
pluresdb query "SELECT * FROM users"
|
|
75
|
+
pluresdb vsearch "machine learning"
|
|
76
|
+
`);
|
|
77
|
+
node_process_1.default.exit(0);
|
|
78
|
+
}
|
|
79
|
+
if (command === "--version") {
|
|
80
|
+
const packageJson = JSON.parse(fs.readFileSync(path.join(__dirname, "../package.json"), "utf8"));
|
|
81
|
+
console.log(packageJson.version);
|
|
82
|
+
node_process_1.default.exit(0);
|
|
83
|
+
}
|
|
84
|
+
if (command === "--help") {
|
|
85
|
+
console.log(`
|
|
86
|
+
PluresDB - P2P Graph Database with SQLite Compatibility
|
|
87
|
+
|
|
88
|
+
Usage: pluresdb <command> [options]
|
|
89
|
+
|
|
90
|
+
Commands:
|
|
91
|
+
serve Start the PluresDB server
|
|
92
|
+
put <key> <value> Store a key-value pair
|
|
93
|
+
get <key> Retrieve a value by key
|
|
94
|
+
delete <key> Delete a key-value pair
|
|
95
|
+
query <sql> Execute SQL query
|
|
96
|
+
vsearch <query> Perform vector search
|
|
97
|
+
list [prefix] List all keys (optionally with prefix)
|
|
98
|
+
config Show configuration
|
|
99
|
+
config set <key> <value> Set configuration value
|
|
100
|
+
--help Show this help message
|
|
101
|
+
--version Show version
|
|
102
|
+
|
|
103
|
+
Examples:
|
|
104
|
+
pluresdb serve --port 8080
|
|
105
|
+
pluresdb put "user:123" '{"name": "John"}'
|
|
106
|
+
pluresdb get "user:123"
|
|
107
|
+
pluresdb query "SELECT * FROM users"
|
|
108
|
+
pluresdb vsearch "machine learning"
|
|
109
|
+
`);
|
|
110
|
+
node_process_1.default.exit(0);
|
|
111
|
+
}
|
|
112
|
+
// Parse options
|
|
113
|
+
const options = {};
|
|
114
|
+
let i = 1;
|
|
115
|
+
while (i < args.length) {
|
|
116
|
+
const arg = args[i];
|
|
117
|
+
if (arg.startsWith("--")) {
|
|
118
|
+
const key = arg.substring(2);
|
|
119
|
+
const value = args[i + 1];
|
|
120
|
+
if (value && !value.startsWith("--")) {
|
|
121
|
+
options[key] = value;
|
|
122
|
+
i += 2;
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
options[key] = true;
|
|
126
|
+
i += 1;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
i += 1;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
async function main() {
|
|
134
|
+
try {
|
|
135
|
+
if (command === "serve") {
|
|
136
|
+
const config = {
|
|
137
|
+
port: options.port ? parseInt(options.port) : 34567,
|
|
138
|
+
host: options.host || "localhost",
|
|
139
|
+
dataDir: options["data-dir"] ||
|
|
140
|
+
path.join(require("os").homedir(), ".pluresdb"),
|
|
141
|
+
webPort: options["web-port"] ? parseInt(options["web-port"]) : 34568,
|
|
142
|
+
logLevel: options["log-level"] || "info",
|
|
143
|
+
};
|
|
144
|
+
const plures = new node_wrapper_1.PluresNode({ config, autoStart: true });
|
|
145
|
+
console.log(`🚀 PluresDB server starting...`);
|
|
146
|
+
console.log(`📊 API: http://${config.host}:${config.port}`);
|
|
147
|
+
console.log(`🌐 Web UI: http://${config.host}:${config.webPort}`);
|
|
148
|
+
console.log(`📁 Data: ${config.dataDir}`);
|
|
149
|
+
console.log(`\nPress Ctrl+C to stop the server`);
|
|
150
|
+
// Handle graceful shutdown
|
|
151
|
+
node_process_1.default.on("SIGINT", async () => {
|
|
152
|
+
console.log("\n🛑 Shutting down PluresDB...");
|
|
153
|
+
await plures.stop();
|
|
154
|
+
node_process_1.default.exit(0);
|
|
155
|
+
});
|
|
156
|
+
// Keep the process alive
|
|
157
|
+
await new Promise(() => { });
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
// For other commands, we need to start the server first
|
|
161
|
+
const plures = new node_wrapper_1.PluresNode({ autoStart: true });
|
|
162
|
+
try {
|
|
163
|
+
switch (command) {
|
|
164
|
+
case "put":
|
|
165
|
+
if (args.length < 3) {
|
|
166
|
+
console.error("Error: put command requires key and value");
|
|
167
|
+
node_process_1.default.exit(1);
|
|
168
|
+
}
|
|
169
|
+
const key = args[1];
|
|
170
|
+
const value = JSON.parse(args[2]);
|
|
171
|
+
await plures.put(key, value);
|
|
172
|
+
console.log(`✅ Stored: ${key}`);
|
|
173
|
+
break;
|
|
174
|
+
case "get":
|
|
175
|
+
if (args.length < 2) {
|
|
176
|
+
console.error("Error: get command requires key");
|
|
177
|
+
node_process_1.default.exit(1);
|
|
178
|
+
}
|
|
179
|
+
const getKey = args[1];
|
|
180
|
+
const result = await plures.get(getKey);
|
|
181
|
+
if (result === null) {
|
|
182
|
+
console.log("Key not found");
|
|
183
|
+
}
|
|
184
|
+
else {
|
|
185
|
+
console.log(JSON.stringify(result, null, 2));
|
|
186
|
+
}
|
|
187
|
+
break;
|
|
188
|
+
case "delete":
|
|
189
|
+
if (args.length < 2) {
|
|
190
|
+
console.error("Error: delete command requires key");
|
|
191
|
+
node_process_1.default.exit(1);
|
|
192
|
+
}
|
|
193
|
+
const deleteKey = args[1];
|
|
194
|
+
await plures.delete(deleteKey);
|
|
195
|
+
console.log(`✅ Deleted: ${deleteKey}`);
|
|
196
|
+
break;
|
|
197
|
+
case "query":
|
|
198
|
+
if (args.length < 2) {
|
|
199
|
+
console.error("Error: query command requires SQL");
|
|
200
|
+
node_process_1.default.exit(1);
|
|
201
|
+
}
|
|
202
|
+
const sql = args[1];
|
|
203
|
+
const queryResult = await plures.query(sql);
|
|
204
|
+
console.log(JSON.stringify(queryResult, null, 2));
|
|
205
|
+
break;
|
|
206
|
+
case "vsearch":
|
|
207
|
+
if (args.length < 2) {
|
|
208
|
+
console.error("Error: vsearch command requires query");
|
|
209
|
+
node_process_1.default.exit(1);
|
|
210
|
+
}
|
|
211
|
+
const searchQuery = args[1];
|
|
212
|
+
const limit = options.limit ? parseInt(options.limit) : 10;
|
|
213
|
+
const searchResult = await plures.vectorSearch(searchQuery, limit);
|
|
214
|
+
console.log(JSON.stringify(searchResult, null, 2));
|
|
215
|
+
break;
|
|
216
|
+
case "list":
|
|
217
|
+
const prefix = args[1];
|
|
218
|
+
const listResult = await plures.list(prefix);
|
|
219
|
+
console.log(JSON.stringify(listResult, null, 2));
|
|
220
|
+
break;
|
|
221
|
+
case "config":
|
|
222
|
+
if (args[1] === "set") {
|
|
223
|
+
if (args.length < 4) {
|
|
224
|
+
console.error("Error: config set requires key and value");
|
|
225
|
+
node_process_1.default.exit(1);
|
|
226
|
+
}
|
|
227
|
+
const configKey = args[2];
|
|
228
|
+
const configValue = args[3];
|
|
229
|
+
await plures.setConfig({ [configKey]: configValue });
|
|
230
|
+
console.log(`✅ Set config: ${configKey} = ${configValue}`);
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
const config = await plures.getConfig();
|
|
234
|
+
console.log(JSON.stringify(config, null, 2));
|
|
235
|
+
}
|
|
236
|
+
break;
|
|
237
|
+
default:
|
|
238
|
+
console.error(`Unknown command: ${command}`);
|
|
239
|
+
console.log('Run "pluresdb --help" for usage information');
|
|
240
|
+
node_process_1.default.exit(1);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
finally {
|
|
244
|
+
await plures.stop();
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
catch (error) {
|
|
249
|
+
console.error("Error:", error instanceof Error ? error.message : String(error));
|
|
250
|
+
node_process_1.default.exit(1);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
// Run the main function
|
|
254
|
+
main().catch((error) => {
|
|
255
|
+
console.error("Fatal error:", error instanceof Error ? error.message : String(error));
|
|
256
|
+
node_process_1.default.exit(1);
|
|
257
|
+
});
|
|
258
|
+
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../legacy/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Node.js Entry Point for PluresDB
|
|
3
|
+
* This provides a clean API for VSCode extensions and other Node.js applications
|
|
4
|
+
*/
|
|
5
|
+
import { EventEmitter } from "node:events";
|
|
6
|
+
import { BetterSQLite3Options, BetterSQLite3RunResult, Peer, PluresDBOptions, QueryResult } from "./types/node-types";
|
|
7
|
+
export declare class PluresNode extends EventEmitter {
|
|
8
|
+
private process;
|
|
9
|
+
private config;
|
|
10
|
+
private denoPath;
|
|
11
|
+
private isRunning;
|
|
12
|
+
private apiUrl;
|
|
13
|
+
constructor(options?: PluresDBOptions);
|
|
14
|
+
private findDenoPath;
|
|
15
|
+
private isCommandAvailable;
|
|
16
|
+
start(): Promise<void>;
|
|
17
|
+
private waitForServer;
|
|
18
|
+
stop(): Promise<void>;
|
|
19
|
+
getApiUrl(): string;
|
|
20
|
+
getWebUrl(): string;
|
|
21
|
+
isServerRunning(): boolean;
|
|
22
|
+
query(sql: string, params?: any[]): Promise<any>;
|
|
23
|
+
put(key: string, value: any): Promise<void>;
|
|
24
|
+
get(key: string): Promise<any>;
|
|
25
|
+
delete(key: string): Promise<void>;
|
|
26
|
+
vectorSearch(query: string, limit?: number): Promise<any[]>;
|
|
27
|
+
list(prefix?: string): Promise<string[]>;
|
|
28
|
+
getConfig(): Promise<any>;
|
|
29
|
+
setConfig(config: any): Promise<void>;
|
|
30
|
+
createIdentity(options: {
|
|
31
|
+
name: string;
|
|
32
|
+
email: string;
|
|
33
|
+
}): Promise<{
|
|
34
|
+
id: string;
|
|
35
|
+
publicKey: string;
|
|
36
|
+
}>;
|
|
37
|
+
searchPeers(query: string): Promise<Peer[]>;
|
|
38
|
+
shareNode(nodeId: string, targetPeerId: string, options?: {
|
|
39
|
+
accessLevel?: "read-only" | "read-write" | "admin";
|
|
40
|
+
}): Promise<{
|
|
41
|
+
sharedNodeId: string;
|
|
42
|
+
}>;
|
|
43
|
+
acceptSharedNode(sharedNodeId: string): Promise<{
|
|
44
|
+
success: boolean;
|
|
45
|
+
}>;
|
|
46
|
+
addDevice(device: {
|
|
47
|
+
name: string;
|
|
48
|
+
type: "laptop" | "phone" | "server" | "desktop";
|
|
49
|
+
}): Promise<{
|
|
50
|
+
id: string;
|
|
51
|
+
}>;
|
|
52
|
+
syncWithDevice(deviceId: string): Promise<{
|
|
53
|
+
success: boolean;
|
|
54
|
+
}>;
|
|
55
|
+
}
|
|
56
|
+
export declare class SQLiteCompatibleAPI {
|
|
57
|
+
private plures;
|
|
58
|
+
constructor(options?: PluresDBOptions);
|
|
59
|
+
start(): Promise<void>;
|
|
60
|
+
stop(): Promise<void>;
|
|
61
|
+
run(sql: string, params?: any[]): Promise<any>;
|
|
62
|
+
get(sql: string, params?: any[]): Promise<any>;
|
|
63
|
+
all(sql: string, params?: any[]): Promise<any>;
|
|
64
|
+
exec(sql: string): Promise<any>;
|
|
65
|
+
put(key: string, value: any): Promise<void>;
|
|
66
|
+
getValue(key: string): Promise<any>;
|
|
67
|
+
delete(key: string): Promise<void>;
|
|
68
|
+
vectorSearch(query: string, limit?: number): Promise<any[]>;
|
|
69
|
+
list(prefix?: string): Promise<string[]>;
|
|
70
|
+
getApiUrl(): string;
|
|
71
|
+
getWebUrl(): string;
|
|
72
|
+
isRunning(): boolean;
|
|
73
|
+
createIdentity(options: {
|
|
74
|
+
name: string;
|
|
75
|
+
email: string;
|
|
76
|
+
}): Promise<{
|
|
77
|
+
id: string;
|
|
78
|
+
publicKey: string;
|
|
79
|
+
}>;
|
|
80
|
+
searchPeers(query: string): Promise<Peer[]>;
|
|
81
|
+
shareNode(nodeId: string, targetPeerId: string, options?: {
|
|
82
|
+
accessLevel?: "read-only" | "read-write" | "admin";
|
|
83
|
+
}): Promise<{
|
|
84
|
+
sharedNodeId: string;
|
|
85
|
+
}>;
|
|
86
|
+
acceptSharedNode(sharedNodeId: string): Promise<{
|
|
87
|
+
success: boolean;
|
|
88
|
+
}>;
|
|
89
|
+
addDevice(device: {
|
|
90
|
+
name: string;
|
|
91
|
+
type: "laptop" | "phone" | "server" | "desktop";
|
|
92
|
+
}): Promise<{
|
|
93
|
+
id: string;
|
|
94
|
+
}>;
|
|
95
|
+
syncWithDevice(deviceId: string): Promise<{
|
|
96
|
+
success: boolean;
|
|
97
|
+
}>;
|
|
98
|
+
}
|
|
99
|
+
export declare class BetterSQLite3Statement {
|
|
100
|
+
private readonly database;
|
|
101
|
+
private readonly sql;
|
|
102
|
+
private boundParams;
|
|
103
|
+
private rawMode;
|
|
104
|
+
private pluckMode;
|
|
105
|
+
private expandMode;
|
|
106
|
+
readonly reader: boolean;
|
|
107
|
+
constructor(database: BetterSQLite3Database, sql: string);
|
|
108
|
+
get databaseInstance(): BetterSQLite3Database;
|
|
109
|
+
bind(...params: unknown[]): this;
|
|
110
|
+
raw(toggle?: boolean): this;
|
|
111
|
+
pluck(toggle?: boolean): this;
|
|
112
|
+
expand(toggle?: boolean): this;
|
|
113
|
+
safeIntegers(): this;
|
|
114
|
+
run(...params: unknown[]): Promise<BetterSQLite3RunResult>;
|
|
115
|
+
get(...params: unknown[]): Promise<unknown>;
|
|
116
|
+
all(...params: unknown[]): Promise<unknown[]>;
|
|
117
|
+
iterate(...params: unknown[]): AsyncIterableIterator<unknown>;
|
|
118
|
+
columns(): Promise<string[]>;
|
|
119
|
+
private resolveParams;
|
|
120
|
+
private fetchRows;
|
|
121
|
+
private transformRows;
|
|
122
|
+
}
|
|
123
|
+
export declare class BetterSQLite3Database {
|
|
124
|
+
private readonly options;
|
|
125
|
+
private readonly plures;
|
|
126
|
+
private readonly filename;
|
|
127
|
+
private readonly verbose?;
|
|
128
|
+
private openPromise;
|
|
129
|
+
private opened;
|
|
130
|
+
constructor(filenameOrOptions?: string | BetterSQLite3Options, maybeOptions?: BetterSQLite3Options);
|
|
131
|
+
get name(): string;
|
|
132
|
+
get isOpen(): boolean;
|
|
133
|
+
open(): Promise<this>;
|
|
134
|
+
close(): Promise<void>;
|
|
135
|
+
prepare(sql: string): BetterSQLite3Statement;
|
|
136
|
+
exec(sql: string): Promise<this>;
|
|
137
|
+
transaction<TArgs extends unknown[], TResult>(fn: (...args: TArgs) => Promise<TResult> | TResult): (...args: TArgs) => Promise<TResult>;
|
|
138
|
+
pragma(statement: string): Promise<unknown[]>;
|
|
139
|
+
defaultSafeIntegers(): this;
|
|
140
|
+
unsafeMode(): this;
|
|
141
|
+
executeStatement(sql: string, params: unknown[]): Promise<QueryResult>;
|
|
142
|
+
private ensureOpen;
|
|
143
|
+
private resolveOptions;
|
|
144
|
+
}
|
|
145
|
+
export { PluresNode as default };
|
|
146
|
+
export * from "./types/node-types";
|
|
147
|
+
export { createPluresExtension, PluresVSCodeExtension, } from "./vscode/extension";
|
|
148
|
+
//# sourceMappingURL=node-index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-index.d.ts","sourceRoot":"","sources":["../legacy/node-index.ts"],"names":[],"mappings":"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"}
|