@mcampa/ai-context-core 0.0.1-beta.c518c19

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 (88) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +354 -0
  3. package/dist/.tsbuildinfo +1 -0
  4. package/dist/context.d.ts +276 -0
  5. package/dist/context.d.ts.map +1 -0
  6. package/dist/context.js +1177 -0
  7. package/dist/context.js.map +1 -0
  8. package/dist/embedding/base-embedding.d.ts +51 -0
  9. package/dist/embedding/base-embedding.d.ts.map +1 -0
  10. package/dist/embedding/base-embedding.js +36 -0
  11. package/dist/embedding/base-embedding.js.map +1 -0
  12. package/dist/embedding/gemini-embedding.d.ts +53 -0
  13. package/dist/embedding/gemini-embedding.d.ts.map +1 -0
  14. package/dist/embedding/gemini-embedding.js +154 -0
  15. package/dist/embedding/gemini-embedding.js.map +1 -0
  16. package/dist/embedding/index.d.ts +6 -0
  17. package/dist/embedding/index.d.ts.map +1 -0
  18. package/dist/embedding/index.js +24 -0
  19. package/dist/embedding/index.js.map +1 -0
  20. package/dist/embedding/ollama-embedding.d.ts +55 -0
  21. package/dist/embedding/ollama-embedding.d.ts.map +1 -0
  22. package/dist/embedding/ollama-embedding.js +193 -0
  23. package/dist/embedding/ollama-embedding.js.map +1 -0
  24. package/dist/embedding/openai-embedding.d.ts +36 -0
  25. package/dist/embedding/openai-embedding.d.ts.map +1 -0
  26. package/dist/embedding/openai-embedding.js +161 -0
  27. package/dist/embedding/openai-embedding.js.map +1 -0
  28. package/dist/embedding/voyageai-embedding.d.ts +44 -0
  29. package/dist/embedding/voyageai-embedding.d.ts.map +1 -0
  30. package/dist/embedding/voyageai-embedding.js +227 -0
  31. package/dist/embedding/voyageai-embedding.js.map +1 -0
  32. package/dist/index.d.ts +8 -0
  33. package/dist/index.d.ts.map +1 -0
  34. package/dist/index.js +24 -0
  35. package/dist/index.js.map +1 -0
  36. package/dist/splitter/ast-splitter.d.ts +22 -0
  37. package/dist/splitter/ast-splitter.d.ts.map +1 -0
  38. package/dist/splitter/ast-splitter.js +308 -0
  39. package/dist/splitter/ast-splitter.js.map +1 -0
  40. package/dist/splitter/index.d.ts +41 -0
  41. package/dist/splitter/index.d.ts.map +1 -0
  42. package/dist/splitter/index.js +27 -0
  43. package/dist/splitter/index.js.map +1 -0
  44. package/dist/splitter/langchain-splitter.d.ts +13 -0
  45. package/dist/splitter/langchain-splitter.d.ts.map +1 -0
  46. package/dist/splitter/langchain-splitter.js +118 -0
  47. package/dist/splitter/langchain-splitter.js.map +1 -0
  48. package/dist/sync/merkle.d.ts +30 -0
  49. package/dist/sync/merkle.d.ts.map +1 -0
  50. package/dist/sync/merkle.js +112 -0
  51. package/dist/sync/merkle.js.map +1 -0
  52. package/dist/sync/synchronizer.d.ts +30 -0
  53. package/dist/sync/synchronizer.d.ts.map +1 -0
  54. package/dist/sync/synchronizer.js +347 -0
  55. package/dist/sync/synchronizer.js.map +1 -0
  56. package/dist/types.d.ts +14 -0
  57. package/dist/types.d.ts.map +1 -0
  58. package/dist/types.js +3 -0
  59. package/dist/types.js.map +1 -0
  60. package/dist/utils/env-manager.d.ts +19 -0
  61. package/dist/utils/env-manager.d.ts.map +1 -0
  62. package/dist/utils/env-manager.js +125 -0
  63. package/dist/utils/env-manager.js.map +1 -0
  64. package/dist/utils/index.d.ts +2 -0
  65. package/dist/utils/index.d.ts.map +1 -0
  66. package/dist/utils/index.js +7 -0
  67. package/dist/utils/index.js.map +1 -0
  68. package/dist/vectordb/index.d.ts +5 -0
  69. package/dist/vectordb/index.d.ts.map +1 -0
  70. package/dist/vectordb/index.js +14 -0
  71. package/dist/vectordb/index.js.map +1 -0
  72. package/dist/vectordb/milvus-restful-vectordb.d.ts +75 -0
  73. package/dist/vectordb/milvus-restful-vectordb.d.ts.map +1 -0
  74. package/dist/vectordb/milvus-restful-vectordb.js +728 -0
  75. package/dist/vectordb/milvus-restful-vectordb.js.map +1 -0
  76. package/dist/vectordb/milvus-vectordb.d.ts +60 -0
  77. package/dist/vectordb/milvus-vectordb.d.ts.map +1 -0
  78. package/dist/vectordb/milvus-vectordb.js +662 -0
  79. package/dist/vectordb/milvus-vectordb.js.map +1 -0
  80. package/dist/vectordb/types.d.ts +120 -0
  81. package/dist/vectordb/types.d.ts.map +1 -0
  82. package/dist/vectordb/types.js +9 -0
  83. package/dist/vectordb/types.js.map +1 -0
  84. package/dist/vectordb/zilliz-utils.d.ts +135 -0
  85. package/dist/vectordb/zilliz-utils.d.ts.map +1 -0
  86. package/dist/vectordb/zilliz-utils.js +197 -0
  87. package/dist/vectordb/zilliz-utils.js.map +1 -0
  88. package/package.json +58 -0
@@ -0,0 +1,347 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.FileSynchronizer = void 0;
37
+ const fs = __importStar(require("fs/promises"));
38
+ const path = __importStar(require("path"));
39
+ const crypto = __importStar(require("crypto"));
40
+ const merkle_1 = require("./merkle");
41
+ const os = __importStar(require("os"));
42
+ class FileSynchronizer {
43
+ constructor(rootDir, ignorePatterns = []) {
44
+ this.rootDir = rootDir;
45
+ this.snapshotPath = this.getSnapshotPath(rootDir);
46
+ this.fileHashes = new Map();
47
+ this.merkleDAG = new merkle_1.MerkleDAG();
48
+ this.ignorePatterns = ignorePatterns;
49
+ }
50
+ getSnapshotPath(codebasePath) {
51
+ const homeDir = os.homedir();
52
+ const merkleDir = path.join(homeDir, ".context", "merkle");
53
+ const normalizedPath = path.resolve(codebasePath);
54
+ const hash = crypto.createHash("md5").update(normalizedPath).digest("hex");
55
+ return path.join(merkleDir, `${hash}.json`);
56
+ }
57
+ async hashFile(filePath) {
58
+ // Double-check that this is actually a file, not a directory
59
+ const stat = await fs.stat(filePath);
60
+ if (stat.isDirectory()) {
61
+ throw new Error(`Attempted to hash a directory: ${filePath}`);
62
+ }
63
+ const content = await fs.readFile(filePath, "utf-8");
64
+ return crypto.createHash("sha256").update(content).digest("hex");
65
+ }
66
+ async generateFileHashes(dir) {
67
+ const fileHashes = new Map();
68
+ let entries;
69
+ try {
70
+ entries = await fs.readdir(dir, { withFileTypes: true });
71
+ }
72
+ catch (error) {
73
+ console.warn(`[Synchronizer] Cannot read directory ${dir}: ${String(error)}`);
74
+ return fileHashes;
75
+ }
76
+ for (const entry of entries) {
77
+ const fullPath = path.join(dir, entry.name);
78
+ const relativePath = path.relative(this.rootDir, fullPath);
79
+ // Check if this path should be ignored BEFORE any file system operations
80
+ if (this.shouldIgnore(relativePath, entry.isDirectory())) {
81
+ continue; // Skip completely - no access at all
82
+ }
83
+ // Double-check with fs.stat to be absolutely sure about file type
84
+ let stat;
85
+ try {
86
+ stat = await fs.stat(fullPath);
87
+ }
88
+ catch (error) {
89
+ console.warn(`[Synchronizer] Cannot stat ${fullPath}: ${String(error)}`);
90
+ continue;
91
+ }
92
+ if (stat.isDirectory()) {
93
+ // Verify it's really a directory and not ignored
94
+ if (!this.shouldIgnore(relativePath, true)) {
95
+ const subHashes = await this.generateFileHashes(fullPath);
96
+ const entries = Array.from(subHashes.entries());
97
+ for (let i = 0; i < entries.length; i++) {
98
+ const [p, h] = entries[i];
99
+ fileHashes.set(p, h);
100
+ }
101
+ }
102
+ }
103
+ else if (stat.isFile()) {
104
+ // Verify it's really a file and not ignored
105
+ if (!this.shouldIgnore(relativePath, false)) {
106
+ try {
107
+ const hash = await this.hashFile(fullPath);
108
+ fileHashes.set(relativePath, hash);
109
+ }
110
+ catch (error) {
111
+ console.warn(`[Synchronizer] Cannot hash file ${fullPath}: ${String(error)}`);
112
+ continue;
113
+ }
114
+ }
115
+ }
116
+ // Skip other types (symlinks, etc.)
117
+ }
118
+ return fileHashes;
119
+ }
120
+ shouldIgnore(relativePath, isDirectory = false) {
121
+ // Always ignore hidden files and directories (starting with .)
122
+ const pathParts = relativePath.split(path.sep);
123
+ if (pathParts.some((part) => part.startsWith("."))) {
124
+ return true;
125
+ }
126
+ if (this.ignorePatterns.length === 0) {
127
+ return false;
128
+ }
129
+ // Normalize path separators and remove leading/trailing slashes
130
+ const normalizedPath = relativePath
131
+ .replace(/\\/g, "/")
132
+ .replace(/^\/+|\/+$/g, "");
133
+ if (!normalizedPath) {
134
+ return false; // Don't ignore root
135
+ }
136
+ // Check direct pattern matches first
137
+ for (const pattern of this.ignorePatterns) {
138
+ if (this.matchPattern(normalizedPath, pattern, isDirectory)) {
139
+ return true;
140
+ }
141
+ }
142
+ // Check if any parent directory is ignored
143
+ const normalizedPathParts = normalizedPath.split("/");
144
+ for (let i = 0; i < normalizedPathParts.length; i++) {
145
+ const partialPath = normalizedPathParts.slice(0, i + 1).join("/");
146
+ for (const pattern of this.ignorePatterns) {
147
+ // Check directory patterns
148
+ if (pattern.endsWith("/")) {
149
+ const dirPattern = pattern.slice(0, -1);
150
+ if (this.simpleGlobMatch(partialPath, dirPattern) ||
151
+ this.simpleGlobMatch(normalizedPathParts[i], dirPattern)) {
152
+ return true;
153
+ }
154
+ }
155
+ // Check exact path patterns
156
+ else if (pattern.includes("/")) {
157
+ if (this.simpleGlobMatch(partialPath, pattern)) {
158
+ return true;
159
+ }
160
+ }
161
+ // Check filename patterns against any path component
162
+ else {
163
+ if (this.simpleGlobMatch(normalizedPathParts[i], pattern)) {
164
+ return true;
165
+ }
166
+ }
167
+ }
168
+ }
169
+ return false;
170
+ }
171
+ matchPattern(filePath, pattern, isDirectory = false) {
172
+ // Clean both path and pattern
173
+ const cleanPath = filePath.replace(/^\/+|\/+$/g, "");
174
+ const cleanPattern = pattern.replace(/^\/+|\/+$/g, "");
175
+ if (!cleanPath || !cleanPattern) {
176
+ return false;
177
+ }
178
+ // Handle directory patterns (ending with /)
179
+ if (pattern.endsWith("/")) {
180
+ if (!isDirectory)
181
+ return false; // Directory pattern only matches directories
182
+ const dirPattern = cleanPattern.slice(0, -1);
183
+ // Direct match or any path component matches
184
+ return (this.simpleGlobMatch(cleanPath, dirPattern) ||
185
+ cleanPath
186
+ .split("/")
187
+ .some((part) => this.simpleGlobMatch(part, dirPattern)));
188
+ }
189
+ // Handle path patterns (containing /)
190
+ if (cleanPattern.includes("/")) {
191
+ return this.simpleGlobMatch(cleanPath, cleanPattern);
192
+ }
193
+ // Handle filename patterns (no /) - match against basename
194
+ const fileName = path.basename(cleanPath);
195
+ return this.simpleGlobMatch(fileName, cleanPattern);
196
+ }
197
+ simpleGlobMatch(text, pattern) {
198
+ if (!text || !pattern)
199
+ return false;
200
+ // Convert glob pattern to regex
201
+ const regexPattern = pattern
202
+ .replace(/[.+^${}()|[\]\\]/g, "\\$&") // Escape regex special chars except *
203
+ .replace(/\*/g, ".*"); // Convert * to .*
204
+ const regex = new RegExp(`^${regexPattern}$`);
205
+ return regex.test(text);
206
+ }
207
+ buildMerkleDAG(fileHashes) {
208
+ const dag = new merkle_1.MerkleDAG();
209
+ const keys = Array.from(fileHashes.keys());
210
+ const sortedPaths = keys.slice().sort(); // Create a sorted copy
211
+ // Create a root node for the entire directory
212
+ let valuesString = "";
213
+ keys.forEach((key) => {
214
+ valuesString += fileHashes.get(key);
215
+ });
216
+ const rootNodeData = "root:" + valuesString;
217
+ const rootNodeId = dag.addNode(rootNodeData);
218
+ // Add each file as a child of the root
219
+ for (const path of sortedPaths) {
220
+ const fileData = path + ":" + fileHashes.get(path);
221
+ dag.addNode(fileData, rootNodeId);
222
+ }
223
+ return dag;
224
+ }
225
+ async initialize() {
226
+ console.log(`Initializing file synchronizer for ${this.rootDir}`);
227
+ await this.loadSnapshot();
228
+ this.merkleDAG = this.buildMerkleDAG(this.fileHashes);
229
+ console.log(`[Synchronizer] File synchronizer initialized. Loaded ${this.fileHashes.size} file hashes.`);
230
+ }
231
+ async checkForChanges() {
232
+ console.log("[Synchronizer] Checking for file changes...");
233
+ const newFileHashes = await this.generateFileHashes(this.rootDir);
234
+ const newMerkleDAG = this.buildMerkleDAG(newFileHashes);
235
+ // Compare the DAGs
236
+ const changes = merkle_1.MerkleDAG.compare(this.merkleDAG, newMerkleDAG);
237
+ // If there are any changes in the DAG, we should also do a file-level comparison
238
+ if (changes.added.length > 0 ||
239
+ changes.removed.length > 0 ||
240
+ changes.modified.length > 0) {
241
+ console.log("[Synchronizer] Merkle DAG has changed. Comparing file states...");
242
+ const fileChanges = this.compareStates(this.fileHashes, newFileHashes);
243
+ this.fileHashes = newFileHashes;
244
+ this.merkleDAG = newMerkleDAG;
245
+ await this.saveSnapshot();
246
+ console.log(`[Synchronizer] Found changes: ${fileChanges.added.length} added, ${fileChanges.removed.length} removed, ${fileChanges.modified.length} modified.`);
247
+ return fileChanges;
248
+ }
249
+ console.log("[Synchronizer] No changes detected based on Merkle DAG comparison.");
250
+ return { added: [], removed: [], modified: [] };
251
+ }
252
+ compareStates(oldHashes, newHashes) {
253
+ const added = [];
254
+ const removed = [];
255
+ const modified = [];
256
+ const newEntries = Array.from(newHashes.entries());
257
+ for (let i = 0; i < newEntries.length; i++) {
258
+ const [file, hash] = newEntries[i];
259
+ if (!oldHashes.has(file)) {
260
+ added.push(file);
261
+ }
262
+ else if (oldHashes.get(file) !== hash) {
263
+ modified.push(file);
264
+ }
265
+ }
266
+ const oldKeys = Array.from(oldHashes.keys());
267
+ for (let i = 0; i < oldKeys.length; i++) {
268
+ const file = oldKeys[i];
269
+ if (!newHashes.has(file)) {
270
+ removed.push(file);
271
+ }
272
+ }
273
+ return { added, removed, modified };
274
+ }
275
+ getFileHash(filePath) {
276
+ return this.fileHashes.get(filePath);
277
+ }
278
+ async saveSnapshot() {
279
+ const merkleDir = path.dirname(this.snapshotPath);
280
+ await fs.mkdir(merkleDir, { recursive: true });
281
+ // Convert Map to array without using iterator
282
+ const fileHashesArray = [];
283
+ const keys = Array.from(this.fileHashes.keys());
284
+ keys.forEach((key) => {
285
+ fileHashesArray.push([key, this.fileHashes.get(key)]);
286
+ });
287
+ const data = JSON.stringify({
288
+ fileHashes: fileHashesArray,
289
+ merkleDAG: this.merkleDAG.serialize(),
290
+ });
291
+ await fs.writeFile(this.snapshotPath, data, "utf-8");
292
+ console.log(`Saved snapshot to ${this.snapshotPath}`);
293
+ }
294
+ async loadSnapshot() {
295
+ try {
296
+ const data = await fs.readFile(this.snapshotPath, "utf-8");
297
+ const obj = JSON.parse(data);
298
+ // Reconstruct Map without using constructor with iterator
299
+ this.fileHashes = new Map();
300
+ for (const [key, value] of obj.fileHashes) {
301
+ this.fileHashes.set(key, value);
302
+ }
303
+ if (obj.merkleDAG) {
304
+ this.merkleDAG = merkle_1.MerkleDAG.deserialize(obj.merkleDAG);
305
+ }
306
+ console.log(`Loaded snapshot from ${this.snapshotPath}`);
307
+ }
308
+ catch (error) {
309
+ if (error instanceof Error &&
310
+ error.code === "ENOENT") {
311
+ console.log(`Snapshot file not found at ${this.snapshotPath}. Generating new one.`);
312
+ this.fileHashes = await this.generateFileHashes(this.rootDir);
313
+ this.merkleDAG = this.buildMerkleDAG(this.fileHashes);
314
+ await this.saveSnapshot();
315
+ }
316
+ else {
317
+ throw error;
318
+ }
319
+ }
320
+ }
321
+ /**
322
+ * Delete snapshot file for a given codebase path
323
+ */
324
+ static async deleteSnapshot(codebasePath) {
325
+ const homeDir = os.homedir();
326
+ const merkleDir = path.join(homeDir, ".context", "merkle");
327
+ const normalizedPath = path.resolve(codebasePath);
328
+ const hash = crypto.createHash("md5").update(normalizedPath).digest("hex");
329
+ const snapshotPath = path.join(merkleDir, `${hash}.json`);
330
+ try {
331
+ await fs.unlink(snapshotPath);
332
+ console.log(`Deleted snapshot file: ${snapshotPath}`);
333
+ }
334
+ catch (error) {
335
+ if (error instanceof Error &&
336
+ error.code === "ENOENT") {
337
+ console.log(`Snapshot file not found (already deleted): ${snapshotPath}`);
338
+ }
339
+ else {
340
+ console.error(`[Synchronizer] Failed to delete snapshot file ${snapshotPath}:`, String(error));
341
+ throw error; // Re-throw non-ENOENT errors
342
+ }
343
+ }
344
+ }
345
+ }
346
+ exports.FileSynchronizer = FileSynchronizer;
347
+ //# sourceMappingURL=synchronizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"synchronizer.js","sourceRoot":"","sources":["../../src/sync/synchronizer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ export interface SearchQuery {
2
+ term: string;
3
+ includeContent?: boolean;
4
+ limit?: number;
5
+ }
6
+ export interface SemanticSearchResult {
7
+ content: string;
8
+ relativePath: string;
9
+ startLine: number;
10
+ endLine: number;
11
+ language: string;
12
+ score: number;
13
+ }
14
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf"}
package/dist/types.js ADDED
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ export declare class EnvManager {
2
+ private envFilePath;
3
+ constructor();
4
+ /**
5
+ * Get environment variable by name
6
+ * Priority: process.env > .env file > undefined
7
+ */
8
+ get(name: string): string | undefined;
9
+ /**
10
+ * Set environment variable to the .env file
11
+ */
12
+ set(name: string, value: string): void;
13
+ /**
14
+ * Get the path to the .env file
15
+ */
16
+ getEnvFilePath(): string;
17
+ }
18
+ export declare const envManager: EnvManager;
19
+ //# sourceMappingURL=env-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env-manager.d.ts","sourceRoot":"","sources":["../../src/utils/env-manager.ts"],"names":[],"mappings":"AAIA,qBAAa,UAAU;IACrB,OAAO,CAAC,WAAW,CAAS;;IAO5B;;;OAGG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IA0BrC;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IA+CtC;;OAEG;IACH,cAAc,IAAI,MAAM;CAGzB;AAGD,eAAO,MAAM,UAAU,YAAmB,CAAC"}
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.envManager = exports.EnvManager = void 0;
37
+ const fs = __importStar(require("fs"));
38
+ const path = __importStar(require("path"));
39
+ const os = __importStar(require("os"));
40
+ class EnvManager {
41
+ constructor() {
42
+ const homeDir = os.homedir();
43
+ this.envFilePath = path.join(homeDir, ".context", ".env");
44
+ }
45
+ /**
46
+ * Get environment variable by name
47
+ * Priority: process.env > .env file > undefined
48
+ */
49
+ get(name) {
50
+ // First try to get from process environment variables
51
+ if (process.env[name]) {
52
+ return process.env[name];
53
+ }
54
+ // If not found in process env, try to read from .env file
55
+ try {
56
+ if (fs.existsSync(this.envFilePath)) {
57
+ const content = fs.readFileSync(this.envFilePath, "utf-8");
58
+ const lines = content.split("\n");
59
+ for (const line of lines) {
60
+ const trimmedLine = line.trim();
61
+ if (trimmedLine.startsWith(`${name}=`)) {
62
+ return trimmedLine.substring(name.length + 1);
63
+ }
64
+ }
65
+ }
66
+ }
67
+ catch (_error) {
68
+ // Ignore file read errors
69
+ }
70
+ return undefined;
71
+ }
72
+ /**
73
+ * Set environment variable to the .env file
74
+ */
75
+ set(name, value) {
76
+ try {
77
+ // Ensure directory exists
78
+ const envDir = path.dirname(this.envFilePath);
79
+ if (!fs.existsSync(envDir)) {
80
+ fs.mkdirSync(envDir, { recursive: true });
81
+ }
82
+ let content = "";
83
+ let found = false;
84
+ // Read existing content if file exists
85
+ if (fs.existsSync(this.envFilePath)) {
86
+ content = fs.readFileSync(this.envFilePath, "utf-8");
87
+ // Update existing variable
88
+ const lines = content.split("\n");
89
+ for (let i = 0; i < lines.length; i++) {
90
+ if (lines[i].trim().startsWith(`${name}=`)) {
91
+ // Replace the existing value
92
+ lines[i] = `${name}=${value}`;
93
+ found = true;
94
+ console.log(`[EnvManager] ✅ Updated ${name} in ${this.envFilePath}`);
95
+ break;
96
+ }
97
+ }
98
+ content = lines.join("\n");
99
+ }
100
+ // If variable not found, append it
101
+ if (!found) {
102
+ if (content && !content.endsWith("\n")) {
103
+ content += "\n";
104
+ }
105
+ content += `${name}=${value}\n`;
106
+ console.log(`[EnvManager] ✅ Added ${name} to ${this.envFilePath}`);
107
+ }
108
+ fs.writeFileSync(this.envFilePath, content, "utf-8");
109
+ }
110
+ catch (error) {
111
+ console.error(`[EnvManager] ❌ Failed to write env file: ${error}`);
112
+ throw error;
113
+ }
114
+ }
115
+ /**
116
+ * Get the path to the .env file
117
+ */
118
+ getEnvFilePath() {
119
+ return this.envFilePath;
120
+ }
121
+ }
122
+ exports.EnvManager = EnvManager;
123
+ // Export a default instance for convenience
124
+ exports.envManager = new EnvManager();
125
+ //# sourceMappingURL=env-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env-manager.js","sourceRoot":"","sources":["../../src/utils/env-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { EnvManager, envManager } from "./env-manager";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.envManager = exports.EnvManager = void 0;
4
+ var env_manager_1 = require("./env-manager");
5
+ Object.defineProperty(exports, "EnvManager", { enumerable: true, get: function () { return env_manager_1.EnvManager; } });
6
+ Object.defineProperty(exports, "envManager", { enumerable: true, get: function () { return env_manager_1.envManager; } });
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,6CAAuD;AAA9C,yGAAA,UAAU,OAAA;AAAE,yGAAA,UAAU,OAAA"}
@@ -0,0 +1,5 @@
1
+ export { VectorDocument, SearchOptions, VectorSearchResult, VectorDatabase, HybridSearchRequest, HybridSearchOptions, HybridSearchResult, RerankStrategy, COLLECTION_LIMIT_MESSAGE, } from "./types";
2
+ export { MilvusRestfulVectorDatabase, MilvusRestfulConfig, } from "./milvus-restful-vectordb";
3
+ export { MilvusVectorDatabase, MilvusConfig } from "./milvus-vectordb";
4
+ export { ClusterManager, ZillizConfig, Project, Cluster, CreateFreeClusterRequest, CreateFreeClusterResponse, CreateFreeClusterWithDetailsResponse, DescribeClusterResponse, } from "./zilliz-utils";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vectordb/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,wBAAwB,GACzB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EACL,cAAc,EACd,YAAY,EACZ,OAAO,EACP,OAAO,EACP,wBAAwB,EACxB,yBAAyB,EACzB,oCAAoC,EACpC,uBAAuB,GACxB,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClusterManager = exports.MilvusVectorDatabase = exports.MilvusRestfulVectorDatabase = exports.COLLECTION_LIMIT_MESSAGE = void 0;
4
+ // Re-export types and interfaces
5
+ var types_1 = require("./types");
6
+ Object.defineProperty(exports, "COLLECTION_LIMIT_MESSAGE", { enumerable: true, get: function () { return types_1.COLLECTION_LIMIT_MESSAGE; } });
7
+ // Implementation class exports
8
+ var milvus_restful_vectordb_1 = require("./milvus-restful-vectordb");
9
+ Object.defineProperty(exports, "MilvusRestfulVectorDatabase", { enumerable: true, get: function () { return milvus_restful_vectordb_1.MilvusRestfulVectorDatabase; } });
10
+ var milvus_vectordb_1 = require("./milvus-vectordb");
11
+ Object.defineProperty(exports, "MilvusVectorDatabase", { enumerable: true, get: function () { return milvus_vectordb_1.MilvusVectorDatabase; } });
12
+ var zilliz_utils_1 = require("./zilliz-utils");
13
+ Object.defineProperty(exports, "ClusterManager", { enumerable: true, get: function () { return zilliz_utils_1.ClusterManager; } });
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vectordb/index.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,iCAUiB;AADf,iHAAA,wBAAwB,OAAA;AAG1B,+BAA+B;AAC/B,qEAGmC;AAFjC,sIAAA,2BAA2B,OAAA;AAG7B,qDAAuE;AAA9D,uHAAA,oBAAoB,OAAA;AAC7B,+CASwB;AARtB,8GAAA,cAAc,OAAA"}