@plures/pluresdb 1.6.10 โ†’ 2.9.7

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.
Files changed (93) hide show
  1. package/README.md +97 -289
  2. package/crates/README.md +99 -0
  3. package/crates/pluresdb-node/README.md +181 -0
  4. package/crates/pluresdb-node/index.d.ts +0 -0
  5. package/crates/pluresdb-node/index.js +265 -0
  6. package/crates/pluresdb-node/package.json +35 -0
  7. package/dist/.tsbuildinfo +1 -1
  8. package/dist/napi/index.d.ts +38 -0
  9. package/dist/napi/index.d.ts.map +1 -0
  10. package/dist/napi/index.js +60 -0
  11. package/dist/napi/index.js.map +1 -0
  12. package/dist/node-index.d.ts +32 -0
  13. package/dist/node-index.d.ts.map +1 -1
  14. package/dist/node-index.js +52 -0
  15. package/dist/node-index.js.map +1 -1
  16. package/embedded.d.ts +1 -0
  17. package/embedded.js +46 -0
  18. package/package.json +21 -8
  19. package/examples/basic-usage.d.ts +0 -2
  20. package/examples/basic-usage.d.ts.map +0 -1
  21. package/examples/basic-usage.js +0 -26
  22. package/examples/basic-usage.js.map +0 -1
  23. package/examples/basic-usage.ts +0 -29
  24. package/examples/browser-demo/README.md +0 -204
  25. package/examples/browser-demo/index.html +0 -466
  26. package/examples/browser-wasm-integration.md +0 -411
  27. package/examples/ipc-demo/README.md +0 -127
  28. package/examples/local-first-usage.ts +0 -138
  29. package/examples/native-ipc-integration.md +0 -526
  30. package/examples/tauri-demo/README.md +0 -240
  31. package/examples/tauri-integration.md +0 -260
  32. package/examples/vscode-extension-example/README.md +0 -95
  33. package/examples/vscode-extension-example/package.json +0 -49
  34. package/examples/vscode-extension-example/src/extension.ts +0 -172
  35. package/examples/vscode-extension-example/tsconfig.json +0 -12
  36. package/examples/vscode-extension-integration.d.ts +0 -31
  37. package/examples/vscode-extension-integration.d.ts.map +0 -1
  38. package/examples/vscode-extension-integration.js +0 -319
  39. package/examples/vscode-extension-integration.js.map +0 -1
  40. package/examples/vscode-extension-integration.ts +0 -41
  41. package/legacy/benchmarks/memory-benchmarks.ts +0 -350
  42. package/legacy/benchmarks/run-benchmarks.ts +0 -315
  43. package/legacy/better-sqlite3-shared.ts +0 -157
  44. package/legacy/better-sqlite3.ts +0 -4
  45. package/legacy/cli.ts +0 -241
  46. package/legacy/config.ts +0 -50
  47. package/legacy/core/crdt.ts +0 -107
  48. package/legacy/core/database.ts +0 -529
  49. package/legacy/healthcheck.ts +0 -162
  50. package/legacy/http/api-server.ts +0 -569
  51. package/legacy/index.ts +0 -31
  52. package/legacy/local-first/unified-api.ts +0 -449
  53. package/legacy/logic/rules.ts +0 -46
  54. package/legacy/main.rs +0 -3
  55. package/legacy/main.ts +0 -197
  56. package/legacy/network/websocket-server.ts +0 -115
  57. package/legacy/node-index.ts +0 -827
  58. package/legacy/node-wrapper.ts +0 -329
  59. package/legacy/plugins/README.md +0 -181
  60. package/legacy/plugins/example-embedding-plugin.ts +0 -56
  61. package/legacy/plugins/plugin-system.ts +0 -315
  62. package/legacy/sqlite-compat.ts +0 -633
  63. package/legacy/sqlite3-compat.ts +0 -55
  64. package/legacy/storage/kv-storage.ts +0 -73
  65. package/legacy/tests/core.test.ts +0 -305
  66. package/legacy/tests/fixtures/performance-data.json +0 -71
  67. package/legacy/tests/fixtures/test-data.json +0 -129
  68. package/legacy/tests/integration/api-server.test.ts +0 -334
  69. package/legacy/tests/integration/mesh-network.test.ts +0 -303
  70. package/legacy/tests/logic.test.ts +0 -34
  71. package/legacy/tests/performance/load.test.ts +0 -290
  72. package/legacy/tests/security/input-validation.test.ts +0 -286
  73. package/legacy/tests/unit/core.test.ts +0 -226
  74. package/legacy/tests/unit/local-first-api.test.ts +0 -65
  75. package/legacy/tests/unit/plugin-system.test.ts +0 -388
  76. package/legacy/tests/unit/subscriptions.test.ts +0 -135
  77. package/legacy/tests/unit/vector-search.test.ts +0 -173
  78. package/legacy/tests/vscode_extension_test.ts +0 -281
  79. package/legacy/types/index.ts +0 -32
  80. package/legacy/types/node-types.ts +0 -80
  81. package/legacy/util/debug.ts +0 -27
  82. package/legacy/vector/index.ts +0 -59
  83. package/legacy/vscode/extension.ts +0 -387
  84. package/scripts/compiled-crud-verify.ts +0 -30
  85. package/scripts/dogfood.ts +0 -297
  86. package/scripts/publish-crates.sh +0 -95
  87. package/scripts/release-check.js +0 -224
  88. package/scripts/run-tests.ts +0 -178
  89. package/scripts/setup-libclang.ps1 +0 -209
  90. package/scripts/update-changelog.js +0 -214
  91. package/scripts/validate-npm-publish.js +0 -228
  92. package/web/README.md +0 -27
  93. package/web/svelte/package.json +0 -31
@@ -1,228 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- * Pre-publish Validation Script for NPM
5
- *
6
- * This script validates that the package is ready to be published to npm.
7
- * It checks:
8
- * 1. TypeScript compilation succeeds
9
- * 2. Deno type checking passes
10
- * 3. All tests pass
11
- * 4. Required files exist in dist/
12
- * 5. package.json is valid
13
- */
14
-
15
- const { execSync } = require("node:child_process");
16
- const fs = require("node:fs");
17
- const path = require("node:path");
18
-
19
- const RED = "\x1b[31m";
20
- const GREEN = "\x1b[32m";
21
- const YELLOW = "\x1b[33m";
22
- const RESET = "\x1b[0m";
23
- const BOLD = "\x1b[1m";
24
-
25
- // Configuration
26
- const MAX_PACKAGE_SIZE_MB = 10;
27
-
28
- function log(message, color = RESET) {
29
- console.log(`${color}${message}${RESET}`);
30
- }
31
-
32
- function error(message) {
33
- log(`โœ— ${message}`, RED);
34
- }
35
-
36
- function success(message) {
37
- log(`โœ“ ${message}`, GREEN);
38
- }
39
-
40
- function info(message) {
41
- log(`โ„น ${message}`, YELLOW);
42
- }
43
-
44
- function title(message) {
45
- log(`\n${BOLD}${message}${RESET}`);
46
- }
47
-
48
- function runCommand(command, description) {
49
- try {
50
- info(`Running: ${description}...`);
51
- execSync(command, { stdio: "inherit", cwd: process.cwd() });
52
- success(description);
53
- return true;
54
- } catch (err) {
55
- error(`${description} failed`);
56
- return false;
57
- }
58
- }
59
-
60
- function checkFileExists(filePath, description) {
61
- const fullPath = path.join(process.cwd(), filePath);
62
- if (fs.existsSync(fullPath)) {
63
- success(`${description}: ${filePath}`);
64
- return true;
65
- } else {
66
- error(`${description} missing: ${filePath}`);
67
- return false;
68
- }
69
- }
70
-
71
- async function main() {
72
- title("๐Ÿš€ NPM Publish Validation");
73
-
74
- let allChecksPassed = true;
75
-
76
- // 1. Check package.json is valid
77
- title("๐Ÿ“ฆ Validating package.json...");
78
- try {
79
- const packageJson = JSON.parse(
80
- fs.readFileSync(path.join(process.cwd(), "package.json"), "utf-8"),
81
- );
82
- if (!packageJson.name || !packageJson.version) {
83
- error("package.json missing required fields (name or version)");
84
- allChecksPassed = false;
85
- } else {
86
- success(
87
- `Package: ${packageJson.name}@${packageJson.version}`,
88
- );
89
- }
90
- } catch (err) {
91
- error(`Invalid package.json: ${err.message}`);
92
- allChecksPassed = false;
93
- }
94
-
95
- // 2. TypeScript compilation
96
- title("๐Ÿ”จ Building TypeScript...");
97
- if (!runCommand("npm run build:lib", "TypeScript compilation")) {
98
- allChecksPassed = false;
99
- }
100
-
101
- // 3. Check required dist files exist
102
- title("๐Ÿ“ Checking required files...");
103
- const requiredFiles = [
104
- "dist/node-index.js",
105
- "dist/node-index.d.ts",
106
- "dist/better-sqlite3.js",
107
- "dist/better-sqlite3.d.ts",
108
- "dist/cli.js",
109
- "dist/cli.d.ts",
110
- "dist/local-first/unified-api.js",
111
- "dist/local-first/unified-api.d.ts",
112
- "dist/vscode/extension.js",
113
- "dist/vscode/extension.d.ts",
114
- "dist/types/node-types.js",
115
- "dist/types/node-types.d.ts",
116
- ];
117
-
118
- for (const file of requiredFiles) {
119
- if (!checkFileExists(file, "Required file")) {
120
- allChecksPassed = false;
121
- }
122
- }
123
-
124
- // 4. Deno type checking
125
- title("๐Ÿฆ• Deno type checking...");
126
- const denoPath = process.env.DENO_PATH || "deno";
127
- const denoCheckFiles = [
128
- "legacy/local-first/unified-api.ts",
129
- "legacy/node-index.ts",
130
- "legacy/better-sqlite3.ts",
131
- "legacy/cli.ts",
132
- "legacy/vscode/extension.ts",
133
- ];
134
-
135
- // Check if Deno is available
136
- let denoAvailable = false;
137
- try {
138
- execSync(`${denoPath} --version`, { stdio: "pipe" });
139
- denoAvailable = true;
140
- } catch (err) {
141
- info("Deno not available - skipping Deno type checks");
142
- }
143
-
144
- if (denoAvailable) {
145
- let denoChecksFailed = false;
146
- for (const file of denoCheckFiles) {
147
- if (
148
- !runCommand(
149
- `${denoPath} check --sloppy-imports ${file}`,
150
- `Deno type check: ${file}`,
151
- )
152
- ) {
153
- error(`Deno type check failed for ${file}`);
154
- denoChecksFailed = true;
155
- allChecksPassed = false;
156
- // Continue checking other files to show all failures
157
- }
158
- }
159
- if (!denoChecksFailed) {
160
- success("All Deno type checks passed");
161
- }
162
- }
163
-
164
- // 5. Run tests (if Deno is available)
165
- title("๐Ÿงช Running tests...");
166
- if (denoAvailable) {
167
- // Set DENO_PATH environment variable so npm test can find deno
168
- const testEnv = { ...process.env };
169
- const denoPathEnv = process.env.DENO_PATH;
170
- if (denoPathEnv && denoPathEnv.includes(path.sep)) {
171
- // If DENO_PATH was provided as a path, make sure its directory is in PATH for npm test
172
- const denoBinDir = path.dirname(denoPathEnv);
173
- // Use path.delimiter for cross-platform compatibility (: on Unix, ; on Windows)
174
- testEnv.PATH = `${denoBinDir}${path.delimiter}${process.env.PATH}`;
175
- }
176
-
177
- try {
178
- execSync("npm test", { stdio: "inherit", cwd: process.cwd(), env: testEnv });
179
- success("Deno tests");
180
- } catch (err) {
181
- error("Tests failed");
182
- allChecksPassed = false;
183
- }
184
- } else {
185
- info("Deno tests skipped (Deno not available)");
186
- }
187
-
188
- // 6. Check package size
189
- title("๐Ÿ“Š Package size check...");
190
- try {
191
- const output = execSync("npm pack --dry-run 2>&1", { encoding: "utf-8" });
192
- const sizeMatch = output.match(/package size:\s+(\d+\.?\d*)\s*(\w+)/i);
193
- if (sizeMatch) {
194
- const size = parseFloat(sizeMatch[1]);
195
- const unit = sizeMatch[2];
196
- success(`Package size: ${size} ${unit}`);
197
-
198
- // Warn if package is larger than configured threshold
199
- if (unit.toLowerCase() === "mb" && size > MAX_PACKAGE_SIZE_MB) {
200
- info(
201
- `Warning: Package size is quite large (${size} ${unit}). Consider excluding unnecessary files.`,
202
- );
203
- }
204
- }
205
- } catch (err) {
206
- info("Could not determine package size");
207
- }
208
-
209
- // Summary
210
- title("๐Ÿ“‹ Validation Summary");
211
- if (allChecksPassed) {
212
- success("All critical checks passed! โœจ");
213
- log(
214
- "\nThe package is ready to be published to npm.",
215
- GREEN,
216
- );
217
- process.exit(0);
218
- } else {
219
- error("Some checks failed. Please fix the issues before publishing.");
220
- process.exit(1);
221
- }
222
- }
223
-
224
- main().catch((err) => {
225
- error(`Validation failed with error: ${err.message}`);
226
- console.error(err);
227
- process.exit(1);
228
- });
package/web/README.md DELETED
@@ -1,27 +0,0 @@
1
- # Web UI (Svelte)
2
-
3
- This folder contains a Svelte-based reactive UI for PluresDB.
4
-
5
- - svelte/ source using Vite
6
- - Built assets go to web/dist/ and are served by the PluresDB HTTP server
7
-
8
- ## Dev
9
-
10
- Use Node 18+.
11
-
12
- ```
13
- cd web/svelte
14
- npm i
15
- npm run dev
16
- ```
17
-
18
- Configure the API base URL if needed (defaults to same origin).
19
-
20
- ## Build
21
-
22
- ```
23
- cd web/svelte
24
- npm run build
25
- ```
26
-
27
- This outputs to ../dist/. Start PluresDB serve and open the port+1 URL printed in the console.
@@ -1,31 +0,0 @@
1
- {
2
- "name": "pluresdb-ui",
3
- "private": true,
4
- "version": "0.0.1",
5
- "type": "module",
6
- "scripts": {
7
- "dev": "vite",
8
- "build": "vite build",
9
- "preview": "vite preview"
10
- },
11
- "devDependencies": {
12
- "@codemirror/commands": "^6.6.0",
13
- "@codemirror/lang-json": "^6.0.1",
14
- "@codemirror/lint": "^6.8.0",
15
- "@codemirror/state": "^6.4.0",
16
- "@codemirror/theme-one-dark": "^6.1.2",
17
- "@codemirror/view": "^6.28.1",
18
- "@sveltejs/vite-plugin-svelte": "^6.2.1",
19
- "ajv": "^8.12.0",
20
- "svelte": "^5.17.3",
21
- "vite": "^7.2.2"
22
- },
23
- "dependencies": {
24
- "@monaco-editor/loader": "^1.5.0",
25
- "cytoscape": "^3.29.3",
26
- "cytoscape-cola": "^2.5.1",
27
- "cytoscape-cose-bilkent": "^4.1.0",
28
- "cytoscape-dagre": "^2.5.0",
29
- "monaco-editor": "^0.49.0"
30
- }
31
- }