@plures/pluresdb 1.5.3 → 2.9.6

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 (103) hide show
  1. package/README.md +106 -414
  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/napi/index.js +60 -0
  8. package/embedded.d.ts +1 -0
  9. package/embedded.js +46 -0
  10. package/package.json +27 -10
  11. package/dist/.tsbuildinfo +0 -1
  12. package/dist/better-sqlite3-shared.d.ts +0 -12
  13. package/dist/better-sqlite3-shared.d.ts.map +0 -1
  14. package/dist/better-sqlite3-shared.js +0 -143
  15. package/dist/better-sqlite3-shared.js.map +0 -1
  16. package/dist/better-sqlite3.d.ts +0 -4
  17. package/dist/better-sqlite3.d.ts.map +0 -1
  18. package/dist/better-sqlite3.js +0 -8
  19. package/dist/better-sqlite3.js.map +0 -1
  20. package/dist/cli.d.ts +0 -7
  21. package/dist/cli.d.ts.map +0 -1
  22. package/dist/cli.js.map +0 -1
  23. package/dist/node-index.d.ts +0 -148
  24. package/dist/node-index.d.ts.map +0 -1
  25. package/dist/node-index.js +0 -665
  26. package/dist/node-index.js.map +0 -1
  27. package/dist/node-wrapper.d.ts +0 -44
  28. package/dist/node-wrapper.d.ts.map +0 -1
  29. package/dist/node-wrapper.js +0 -296
  30. package/dist/node-wrapper.js.map +0 -1
  31. package/dist/types/index.d.ts +0 -28
  32. package/dist/types/index.d.ts.map +0 -1
  33. package/dist/types/index.js +0 -3
  34. package/dist/types/index.js.map +0 -1
  35. package/dist/types/node-types.d.ts +0 -71
  36. package/dist/types/node-types.d.ts.map +0 -1
  37. package/dist/types/node-types.js +0 -6
  38. package/dist/types/node-types.js.map +0 -1
  39. package/dist/vscode/extension.d.ts +0 -81
  40. package/dist/vscode/extension.d.ts.map +0 -1
  41. package/dist/vscode/extension.js +0 -309
  42. package/dist/vscode/extension.js.map +0 -1
  43. package/examples/basic-usage.d.ts +0 -2
  44. package/examples/basic-usage.d.ts.map +0 -1
  45. package/examples/basic-usage.js +0 -26
  46. package/examples/basic-usage.js.map +0 -1
  47. package/examples/basic-usage.ts +0 -29
  48. package/examples/vscode-extension-example/README.md +0 -95
  49. package/examples/vscode-extension-example/package.json +0 -49
  50. package/examples/vscode-extension-example/src/extension.ts +0 -172
  51. package/examples/vscode-extension-example/tsconfig.json +0 -12
  52. package/examples/vscode-extension-integration.d.ts +0 -31
  53. package/examples/vscode-extension-integration.d.ts.map +0 -1
  54. package/examples/vscode-extension-integration.js +0 -319
  55. package/examples/vscode-extension-integration.js.map +0 -1
  56. package/examples/vscode-extension-integration.ts +0 -41
  57. package/legacy/benchmarks/memory-benchmarks.ts +0 -350
  58. package/legacy/benchmarks/run-benchmarks.ts +0 -315
  59. package/legacy/better-sqlite3-shared.ts +0 -157
  60. package/legacy/better-sqlite3.ts +0 -4
  61. package/legacy/cli.ts +0 -241
  62. package/legacy/config.ts +0 -50
  63. package/legacy/core/crdt.ts +0 -107
  64. package/legacy/core/database.ts +0 -529
  65. package/legacy/healthcheck.ts +0 -162
  66. package/legacy/http/api-server.ts +0 -438
  67. package/legacy/index.ts +0 -28
  68. package/legacy/logic/rules.ts +0 -46
  69. package/legacy/main.rs +0 -3
  70. package/legacy/main.ts +0 -197
  71. package/legacy/network/websocket-server.ts +0 -115
  72. package/legacy/node-index.ts +0 -823
  73. package/legacy/node-wrapper.ts +0 -329
  74. package/legacy/sqlite-compat.ts +0 -633
  75. package/legacy/sqlite3-compat.ts +0 -55
  76. package/legacy/storage/kv-storage.ts +0 -73
  77. package/legacy/tests/core.test.ts +0 -305
  78. package/legacy/tests/fixtures/performance-data.json +0 -71
  79. package/legacy/tests/fixtures/test-data.json +0 -129
  80. package/legacy/tests/integration/api-server.test.ts +0 -334
  81. package/legacy/tests/integration/mesh-network.test.ts +0 -303
  82. package/legacy/tests/logic.test.ts +0 -34
  83. package/legacy/tests/performance/load.test.ts +0 -290
  84. package/legacy/tests/security/input-validation.test.ts +0 -286
  85. package/legacy/tests/unit/core.test.ts +0 -226
  86. package/legacy/tests/unit/subscriptions.test.ts +0 -135
  87. package/legacy/tests/unit/vector-search.test.ts +0 -173
  88. package/legacy/tests/vscode_extension_test.ts +0 -281
  89. package/legacy/types/index.ts +0 -32
  90. package/legacy/types/node-types.ts +0 -80
  91. package/legacy/util/debug.ts +0 -14
  92. package/legacy/vector/index.ts +0 -59
  93. package/legacy/vscode/extension.ts +0 -387
  94. package/scripts/compiled-crud-verify.ts +0 -30
  95. package/scripts/dogfood.ts +0 -297
  96. package/scripts/postinstall.js +0 -156
  97. package/scripts/publish-crates.sh +0 -95
  98. package/scripts/release-check.js +0 -224
  99. package/scripts/run-tests.ts +0 -178
  100. package/scripts/setup-libclang.ps1 +0 -209
  101. package/scripts/update-changelog.js +0 -214
  102. package/web/README.md +0 -27
  103. package/web/svelte/package.json +0 -31
@@ -1,172 +0,0 @@
1
- import * as vscode from "vscode";
2
- import { SQLiteCompatibleAPI } from "pluresdb";
3
- import * as path from "path";
4
-
5
- export function activate(context: vscode.ExtensionContext) {
6
- console.log("PluresDB extension is now active!");
7
-
8
- // Initialize PluresDB database
9
- const db = new SQLiteCompatibleAPI({
10
- config: {
11
- dataDir: path.join(context.globalStorageUri.fsPath, "pluresdb"),
12
- port: 34567,
13
- host: "localhost",
14
- },
15
- });
16
-
17
- // Start the database
18
- db.start()
19
- .then(() => {
20
- console.log("PluresDB database started");
21
-
22
- // Set up database schema
23
- setupDatabase(db);
24
- })
25
- .catch((error) => {
26
- console.error("Failed to start PluresDB:", error);
27
- vscode.window.showErrorMessage("Failed to start PluresDB database");
28
- });
29
-
30
- // Register commands
31
- const helloWorldCommand = vscode.commands.registerCommand(
32
- "pluresdb-example.helloWorld",
33
- () => {
34
- vscode.window.showInformationMessage("Hello World from PluresDB!");
35
- },
36
- );
37
-
38
- const storeDataCommand = vscode.commands.registerCommand(
39
- "pluresdb-example.storeData",
40
- async () => {
41
- const key = await vscode.window.showInputBox({
42
- prompt: "Enter key to store",
43
- placeHolder: "user:123",
44
- });
45
-
46
- if (key) {
47
- const value = await vscode.window.showInputBox({
48
- prompt: "Enter value (JSON)",
49
- placeHolder: '{"name": "John", "email": "john@example.com"}',
50
- });
51
-
52
- if (value) {
53
- try {
54
- const parsedValue = JSON.parse(value);
55
- await db.put(key, parsedValue);
56
- vscode.window.showInformationMessage(`Stored data for key: ${key}`);
57
- } catch (error) {
58
- vscode.window.showErrorMessage(
59
- `Failed to store data: ${
60
- error instanceof Error ? error.message : String(error)
61
- }`,
62
- );
63
- }
64
- }
65
- }
66
- },
67
- );
68
-
69
- const retrieveDataCommand = vscode.commands.registerCommand(
70
- "pluresdb-example.retrieveData",
71
- async () => {
72
- const key = await vscode.window.showInputBox({
73
- prompt: "Enter key to retrieve",
74
- placeHolder: "user:123",
75
- });
76
-
77
- if (key) {
78
- try {
79
- const value = await db.getValue(key);
80
- if (value) {
81
- const doc = await vscode.workspace.openTextDocument({
82
- content: JSON.stringify(value, null, 2),
83
- language: "json",
84
- });
85
- await vscode.window.showTextDocument(doc);
86
- } else {
87
- vscode.window.showInformationMessage("Key not found");
88
- }
89
- } catch (error) {
90
- vscode.window.showErrorMessage(
91
- `Failed to retrieve data: ${
92
- error instanceof Error ? error.message : String(error)
93
- }`,
94
- );
95
- }
96
- }
97
- },
98
- );
99
-
100
- const searchDataCommand = vscode.commands.registerCommand(
101
- "pluresdb-example.searchData",
102
- async () => {
103
- const query = await vscode.window.showInputBox({
104
- prompt: "Enter search query",
105
- placeHolder: "machine learning",
106
- });
107
-
108
- if (query) {
109
- try {
110
- const results = await db.vectorSearch(query, 10);
111
- const doc = await vscode.workspace.openTextDocument({
112
- content: JSON.stringify(results, null, 2),
113
- language: "json",
114
- });
115
- await vscode.window.showTextDocument(doc);
116
- } catch (error) {
117
- vscode.window.showErrorMessage(
118
- `Search failed: ${
119
- error instanceof Error ? error.message : String(error)
120
- }`,
121
- );
122
- }
123
- }
124
- },
125
- );
126
-
127
- // Register all commands
128
- context.subscriptions.push(
129
- helloWorldCommand,
130
- storeDataCommand,
131
- retrieveDataCommand,
132
- searchDataCommand,
133
- );
134
-
135
- // Clean up on deactivation
136
- context.subscriptions.push({
137
- dispose: () => {
138
- db.stop().catch(console.error);
139
- },
140
- });
141
- }
142
-
143
- async function setupDatabase(db: SQLiteCompatibleAPI) {
144
- try {
145
- // Create tables for common VSCode extension use cases
146
- await db.exec(`
147
- CREATE TABLE IF NOT EXISTS settings (
148
- key TEXT PRIMARY KEY,
149
- value TEXT,
150
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP
151
- )
152
- `);
153
-
154
- await db.exec(`
155
- CREATE TABLE IF NOT EXISTS documents (
156
- id TEXT PRIMARY KEY,
157
- content TEXT,
158
- language TEXT,
159
- file_path TEXT,
160
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP
161
- )
162
- `);
163
-
164
- console.log("Database schema created successfully");
165
- } catch (error) {
166
- console.error("Failed to create database schema:", error);
167
- }
168
- }
169
-
170
- export function deactivate() {
171
- console.log("PluresDB extension deactivated");
172
- }
@@ -1,12 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "module": "commonjs",
4
- "target": "ES2020",
5
- "outDir": "out",
6
- "lib": ["ES2020"],
7
- "sourceMap": true,
8
- "rootDir": "src",
9
- "strict": true
10
- },
11
- "exclude": ["node_modules", ".vscode-test"]
12
- }
@@ -1,31 +0,0 @@
1
- /**
2
- * VSCode Extension Integration Example
3
- * This shows how to integrate PluresDB into a VSCode extension
4
- */
5
- import * as vscode from "vscode";
6
- export declare class PluresExtension {
7
- private plures;
8
- private sqliteAPI;
9
- private context;
10
- constructor(context: vscode.ExtensionContext);
11
- private setupEventHandlers;
12
- activate(): Promise<void>;
13
- deactivate(): Promise<void>;
14
- private registerCommands;
15
- private setupDatabase;
16
- storeSetting(key: string, value: any): Promise<any>;
17
- getSetting(key: string): Promise<any>;
18
- storeDocument(
19
- id: string,
20
- content: string,
21
- language: string,
22
- filePath: string,
23
- ): Promise<any>;
24
- searchDocuments(query: string): Promise<any>;
25
- executeSQL(sql: string, params?: any[]): Promise<any>;
26
- }
27
- export declare function activate(
28
- context: vscode.ExtensionContext,
29
- ): PluresExtension;
30
- export declare function deactivate(extension: PluresExtension): void;
31
- //# sourceMappingURL=vscode-extension-integration.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vscode-extension-integration.d.ts","sourceRoot":"","sources":["vscode-extension-integration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAGjC,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,OAAO,CAA0B;gBAE7B,OAAO,EAAE,MAAM,CAAC,gBAAgB;IA+B5C,OAAO,CAAC,kBAAkB;IAcpB,QAAQ;IAkBR,UAAU;IAShB,OAAO,CAAC,gBAAgB;YA6GV,aAAa;IAmCrB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAIpC,UAAU,CAAC,GAAG,EAAE,MAAM;IAItB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAS7E,eAAe,CAAC,KAAK,EAAE,MAAM;IAI7B,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,GAAG,EAAO;CAGjD;AAGD,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,qBAIxD;AAGD,wBAAgB,UAAU,CAAC,SAAS,EAAE,iBAAiB,QAEtD"}
@@ -1,319 +0,0 @@
1
- "use strict";
2
- /**
3
- * VSCode Extension Integration Example
4
- * This shows how to integrate PluresDB into a VSCode extension
5
- */
6
- var __createBinding = (this && this.__createBinding) ||
7
- (Object.create
8
- ? function (o, m, k, k2) {
9
- if (k2 === undefined) k2 = k;
10
- var desc = Object.getOwnPropertyDescriptor(m, k);
11
- if (
12
- !desc ||
13
- ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)
14
- ) {
15
- desc = {
16
- enumerable: true,
17
- get: function () {
18
- return m[k];
19
- },
20
- };
21
- }
22
- Object.defineProperty(o, k2, desc);
23
- }
24
- : function (o, m, k, k2) {
25
- if (k2 === undefined) k2 = k;
26
- o[k2] = m[k];
27
- });
28
- var __setModuleDefault = (this && this.__setModuleDefault) ||
29
- (Object.create
30
- ? function (o, v) {
31
- Object.defineProperty(o, "default", { enumerable: true, value: v });
32
- }
33
- : function (o, v) {
34
- o["default"] = v;
35
- });
36
- var __importStar = (this && this.__importStar) ||
37
- (function () {
38
- var ownKeys = function (o) {
39
- ownKeys = Object.getOwnPropertyNames ||
40
- function (o) {
41
- var ar = [];
42
- for (var k in o) {
43
- if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
44
- }
45
- return ar;
46
- };
47
- return ownKeys(o);
48
- };
49
- return function (mod) {
50
- if (mod && mod.__esModule) return mod;
51
- var result = {};
52
- if (mod != null) {
53
- for (var k = ownKeys(mod), i = 0; i < k.length; i++) {
54
- if (k[i] !== "default") __createBinding(result, mod, k[i]);
55
- }
56
- }
57
- __setModuleDefault(result, mod);
58
- return result;
59
- };
60
- })();
61
- Object.defineProperty(exports, "__esModule", { value: true });
62
- exports.PluresExtension = void 0;
63
- exports.activate = activate;
64
- exports.deactivate = deactivate;
65
- const vscode = __importStar(require("vscode"));
66
- const pluresdb_1 = require("pluresdb");
67
- class PluresExtension {
68
- plures;
69
- sqliteAPI;
70
- context;
71
- constructor(context) {
72
- this.context = context;
73
- // Initialize PluresDB with VSCode-specific configuration
74
- this.plures = new pluresdb_1.PluresNode({
75
- config: {
76
- port: 34567,
77
- host: "localhost",
78
- dataDir: path.join(context.globalStorageUri.fsPath, "pluresdb"),
79
- webPort: 34568,
80
- logLevel: "info",
81
- },
82
- autoStart: false, // We'll start it manually
83
- });
84
- // Create SQLite-compatible API
85
- this.sqliteAPI = new pluresdb_1.SQLiteCompatibleAPI({
86
- config: {
87
- port: 34567,
88
- host: "localhost",
89
- dataDir: path.join(context.globalStorageUri.fsPath, "pluresdb"),
90
- webPort: 34568,
91
- logLevel: "info",
92
- },
93
- autoStart: false,
94
- });
95
- // Set up event handlers
96
- this.setupEventHandlers();
97
- }
98
- setupEventHandlers() {
99
- this.plures.on("started", () => {
100
- vscode.window.showInformationMessage("PluresDB database started");
101
- });
102
- this.plures.on("stopped", () => {
103
- vscode.window.showInformationMessage("PluresDB database stopped");
104
- });
105
- this.plures.on("error", (error) => {
106
- vscode.window.showErrorMessage(`PluresDB error: ${error.message}`);
107
- });
108
- }
109
- async activate() {
110
- try {
111
- // Start PluresDB
112
- await this.plures.start();
113
- await this.sqliteAPI.start();
114
- // Register commands
115
- this.registerCommands();
116
- // Set up database schema
117
- await this.setupDatabase();
118
- vscode.window.showInformationMessage("PluresDB extension activated");
119
- } catch (error) {
120
- vscode.window.showErrorMessage(
121
- `Failed to activate PluresDB: ${error.message}`,
122
- );
123
- }
124
- }
125
- async deactivate() {
126
- try {
127
- await this.plures.stop();
128
- await this.sqliteAPI.stop();
129
- } catch (error) {
130
- console.error("Error stopping PluresDB:", error);
131
- }
132
- }
133
- registerCommands() {
134
- // Command to open PluresDB web UI
135
- const openWebUI = vscode.commands.registerCommand(
136
- "pluresdb.openWebUI",
137
- () => {
138
- const webUrl = this.plures.getWebUrl();
139
- vscode.env.openExternal(vscode.Uri.parse(webUrl));
140
- },
141
- );
142
- // Command to execute SQL query
143
- const executeQuery = vscode.commands.registerCommand(
144
- "pluresdb.executeQuery",
145
- async () => {
146
- const sql = await vscode.window.showInputBox({
147
- prompt: "Enter SQL query",
148
- placeHolder: "SELECT * FROM users",
149
- });
150
- if (sql) {
151
- try {
152
- const result = await this.sqliteAPI.all(sql);
153
- const doc = await vscode.workspace.openTextDocument({
154
- content: JSON.stringify(result, null, 2),
155
- language: "json",
156
- });
157
- await vscode.window.showTextDocument(doc);
158
- } catch (error) {
159
- vscode.window.showErrorMessage(`Query failed: ${error.message}`);
160
- }
161
- }
162
- },
163
- );
164
- // Command to perform vector search
165
- const vectorSearch = vscode.commands.registerCommand(
166
- "pluresdb.vectorSearch",
167
- async () => {
168
- const query = await vscode.window.showInputBox({
169
- prompt: "Enter search query",
170
- placeHolder: "machine learning",
171
- });
172
- if (query) {
173
- try {
174
- const results = await this.sqliteAPI.vectorSearch(query, 10);
175
- const doc = await vscode.workspace.openTextDocument({
176
- content: JSON.stringify(results, null, 2),
177
- language: "json",
178
- });
179
- await vscode.window.showTextDocument(doc);
180
- } catch (error) {
181
- vscode.window.showErrorMessage(
182
- `Vector search failed: ${error.message}`,
183
- );
184
- }
185
- }
186
- },
187
- );
188
- // Command to store data
189
- const storeData = vscode.commands.registerCommand(
190
- "pluresdb.storeData",
191
- async () => {
192
- const key = await vscode.window.showInputBox({
193
- prompt: "Enter key",
194
- placeHolder: "user:123",
195
- });
196
- if (key) {
197
- const value = await vscode.window.showInputBox({
198
- prompt: "Enter value (JSON)",
199
- placeHolder: '{"name": "John", "email": "john@example.com"}',
200
- });
201
- if (value) {
202
- try {
203
- const parsedValue = JSON.parse(value);
204
- await this.sqliteAPI.put(key, parsedValue);
205
- vscode.window.showInformationMessage(
206
- `Stored data for key: ${key}`,
207
- );
208
- } catch (error) {
209
- vscode.window.showErrorMessage(
210
- `Failed to store data: ${error.message}`,
211
- );
212
- }
213
- }
214
- }
215
- },
216
- );
217
- // Command to retrieve data
218
- const retrieveData = vscode.commands.registerCommand(
219
- "pluresdb.retrieveData",
220
- async () => {
221
- const key = await vscode.window.showInputBox({
222
- prompt: "Enter key to retrieve",
223
- placeHolder: "user:123",
224
- });
225
- if (key) {
226
- try {
227
- const value = await this.sqliteAPI.getValue(key);
228
- if (value) {
229
- const doc = await vscode.workspace.openTextDocument({
230
- content: JSON.stringify(value, null, 2),
231
- language: "json",
232
- });
233
- await vscode.window.showTextDocument(doc);
234
- } else {
235
- vscode.window.showInformationMessage("Key not found");
236
- }
237
- } catch (error) {
238
- vscode.window.showErrorMessage(
239
- `Failed to retrieve data: ${error.message}`,
240
- );
241
- }
242
- }
243
- },
244
- );
245
- // Register all commands
246
- this.context.subscriptions.push(
247
- openWebUI,
248
- executeQuery,
249
- vectorSearch,
250
- storeData,
251
- retrieveData,
252
- );
253
- }
254
- async setupDatabase() {
255
- // Create tables for common VSCode extension use cases
256
- const tables = [
257
- `CREATE TABLE IF NOT EXISTS settings (
258
- key TEXT PRIMARY KEY,
259
- value TEXT,
260
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
261
- updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
262
- )`,
263
- `CREATE TABLE IF NOT EXISTS documents (
264
- id TEXT PRIMARY KEY,
265
- content TEXT,
266
- language TEXT,
267
- file_path TEXT,
268
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
269
- updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
270
- )`,
271
- `CREATE TABLE IF NOT EXISTS search_history (
272
- id INTEGER PRIMARY KEY AUTOINCREMENT,
273
- query TEXT,
274
- results_count INTEGER,
275
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP
276
- )`,
277
- ];
278
- for (const sql of tables) {
279
- try {
280
- await this.sqliteAPI.exec(sql);
281
- } catch (error) {
282
- console.error("Error creating table:", error);
283
- }
284
- }
285
- }
286
- // Public API methods for other parts of the extension
287
- async storeSetting(key, value) {
288
- return this.sqliteAPI.put(`settings:${key}`, value);
289
- }
290
- async getSetting(key) {
291
- return this.sqliteAPI.getValue(`settings:${key}`);
292
- }
293
- async storeDocument(id, content, language, filePath) {
294
- return this.sqliteAPI.put(`documents:${id}`, {
295
- content,
296
- language,
297
- filePath,
298
- updatedAt: new Date().toISOString(),
299
- });
300
- }
301
- async searchDocuments(query) {
302
- return this.sqliteAPI.vectorSearch(query, 20);
303
- }
304
- async executeSQL(sql, params = []) {
305
- return this.sqliteAPI.all(sql, params);
306
- }
307
- }
308
- exports.PluresExtension = PluresExtension;
309
- // Extension activation function
310
- function activate(context) {
311
- const extension = new PluresExtension(context);
312
- extension.activate();
313
- return extension;
314
- }
315
- // Extension deactivation function
316
- function deactivate(extension) {
317
- extension.deactivate();
318
- }
319
- //# sourceMappingURL=vscode-extension-integration.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vscode-extension-integration.js","sourceRoot":"","sources":["vscode-extension-integration.ts"],"names":[],"mappings":"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"}
@@ -1,41 +0,0 @@
1
- /**
2
- * VSCode Extension Integration Example
3
- * This shows how to integrate PluresDB into a VSCode extension
4
- */
5
-
6
- import * as vscode from "vscode";
7
- import {
8
- createPluresExtension,
9
- ExtensionContextLike,
10
- PluresVSCodeExtension,
11
- VSCodeAPI,
12
- } from "../src/vscode/extension.ts";
13
-
14
- let extensionInstance: PluresVSCodeExtension | undefined;
15
-
16
- export async function activate(context: vscode.ExtensionContext) {
17
- const mappedContext: ExtensionContextLike = {
18
- subscriptions: context.subscriptions,
19
- globalStorageUri: { fsPath: context.globalStorageUri.fsPath },
20
- };
21
-
22
- const vscodeApi = vscode as unknown as VSCodeAPI;
23
- extensionInstance = createPluresExtension(vscodeApi, mappedContext);
24
-
25
- await extensionInstance.activate();
26
-
27
- context.subscriptions.push({
28
- dispose: () => {
29
- extensionInstance?.deactivate().catch((error) => {
30
- console.error("Failed to deactivate PluresDB extension", error);
31
- });
32
- },
33
- });
34
-
35
- return extensionInstance;
36
- }
37
-
38
- export async function deactivate() {
39
- await extensionInstance?.deactivate();
40
- extensionInstance = undefined;
41
- }