voltenv-sdk 1.1.1 → 1.1.3

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/dist/index.d.ts CHANGED
@@ -13,7 +13,8 @@ export declare class VoltEnv {
13
13
  */
14
14
  private resolvePrefix;
15
15
  /**
16
- * Try to detect the framework from package.json
16
+ * Try to detect the framework from package.json by searching up the directory tree
17
+ * Only works in Node.js environments
17
18
  */
18
19
  private detectFramework;
19
20
  /**
@@ -74,26 +75,16 @@ export declare class VoltEnv {
74
75
  * @param keys Array of keys to delete
75
76
  */
76
77
  deleteMany(environment: string, keys: string[]): Promise<void>;
77
- /**
78
- * Get metadata for a specific variable
79
- * @param environment The environment name
80
- * @param key The variable key
81
- */
82
- getMetadata(environment: string, key: string): Promise<Record<string, any>>;
83
- /**
84
- * Get the audit history of a variable
85
- * @param environment The environment name
86
- * @param key The variable key
87
- */
88
- getHistory(environment: string, key: string): Promise<any[]>;
89
78
  /**
90
79
  * Export all variables in an environment to a .env file
80
+ * Node.js only - will throw error in browser
91
81
  * @param environment The environment name
92
82
  * @param filePath Path to the .env file to create/overwrite
93
83
  */
94
84
  exportToEnvFile(environment: string, filePath: string): Promise<void>;
95
85
  /**
96
86
  * Load variables from a .env file and set them in an environment
87
+ * Node.js only - will throw error in browser
97
88
  * @param environment The environment name
98
89
  * @param filePath Path to the .env file to read from
99
90
  */
@@ -122,22 +113,19 @@ export declare class VoltEnv {
122
113
  deleteEnvironment(name: string): Promise<void>;
123
114
  /**
124
115
  * Sync/refresh variables from server (bypassing cache)
125
- *If an environment is provided, it only syncs that environment.
116
+ * If an environment is provided, it only syncs that environment.
126
117
  * If no environment is provided, it lists all environments and syncs them all.
127
118
  * @param environment Optional environment to sync
128
119
  */
129
120
  sync(environment?: string): Promise<void>;
130
121
  /**
131
- * Get all cached keys (for debugging)
122
+ * Clear the entire cache
132
123
  */
133
- getCacheKeys(): string[];
124
+ clearCache(): void;
134
125
  /**
135
- * Get cache statistics
126
+ * Get all cached keys (for debugging)
136
127
  */
137
- getCacheStats(): {
138
- size: number;
139
- keys: string[];
140
- };
128
+ getCacheKeys(): string[];
141
129
  }
142
130
  export default VoltEnv;
143
131
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAIxE,qBAAa,OAAO;IAChB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,cAAc,CAAc;IAEpC;;;OAGG;gBACS,OAAO,EAAE,cAAc,GAAG,MAAM;IA0B5C;;OAEG;IACH,OAAO,CAAC,aAAa;IAiBrB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAmDvB;;OAEG;IACH,OAAO,CAAC,WAAW;IAMnB;;;;;;OAMG;IACG,GAAG,CACL,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,YAAY,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IA4B9B;;;;OAIG;IACG,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAgBlE;;;;;OAKG;IACG,GAAG,CACL,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;IAWhB;;;;;OAKG;IACG,SAAS,CACX,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;IAYhB;;;;;;OAMG;IACH,KAAK,CACD,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,EACrD,QAAQ,GAAE,MAAc,GACzB,MAAM,IAAI;IAyBb;;;;OAIG;IACG,OAAO,CACT,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAClC,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;;OAIG;IACG,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7D;;;;OAIG;IACG,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAapE;;;;;OAKG;IACG,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB3E;;;;;OAKG;IACG,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuC3E;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAO3C;;;;OAIG;IACG,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAOnF;;;;OAIG;IACG,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjF;;;OAGG;IACG,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQpD;;;;;OAKG;IACG,IAAI,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB/C;;OAEG;IACH,UAAU,IAAI,IAAI;IAMlB;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE;CAO3B;AAED,eAAe,OAAO,CAAC"}
package/dist/index.js CHANGED
@@ -1,41 +1,9 @@
1
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
- })();
2
+ // Remove these imports entirely
3
+ // import * as fs from 'fs';
4
+ // import * as path from 'path';
35
5
  Object.defineProperty(exports, "__esModule", { value: true });
36
6
  exports.VoltEnv = void 0;
37
- const fs = __importStar(require("fs"));
38
- const path = __importStar(require("path"));
39
7
  const errorHandler_1 = require("./utilities/errorHandler");
40
8
  const httpClient_1 = require("./utilities/httpClient");
41
9
  const cacheService_1 = require("./utilities/cacheService");
@@ -70,28 +38,68 @@ class VoltEnv {
70
38
  case 'vite': return 'VITE_';
71
39
  case 'nextjs': return 'NEXT_PUBLIC_';
72
40
  case 'cra': return 'REACT_APP_';
41
+ case 'nuxt': return 'NUXT_PUBLIC_';
42
+ case 'astro': return 'PUBLIC_';
43
+ case 'sveltekit': return 'PUBLIC_';
44
+ case 'remix': return 'PUBLIC_';
73
45
  default: return '';
74
46
  }
75
47
  }
76
48
  /**
77
- * Try to detect the framework from package.json
49
+ * Try to detect the framework from package.json by searching up the directory tree
50
+ * Only works in Node.js environments
78
51
  */
79
52
  detectFramework() {
53
+ const isNode = typeof process !== 'undefined'
54
+ && process.versions != null
55
+ && process.versions.node != null;
56
+ if (!isNode) {
57
+ return '';
58
+ }
80
59
  try {
81
- const packageJsonPath = path.join(process.cwd(), 'package.json');
82
- if (fs.existsSync(packageJsonPath)) {
83
- const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
84
- const deps = { ...packageJson.dependencies, ...packageJson.devDependencies };
85
- if (deps['vite'])
86
- return 'vite';
87
- if (deps['next'])
88
- return 'nextjs';
89
- if (deps['react-scripts'])
90
- return 'cra';
60
+ const fs = require('fs');
61
+ const path = require('path');
62
+ let currentDir = process.cwd();
63
+ const rootDir = path.parse(currentDir).root;
64
+ while (true) {
65
+ const packageJsonPath = path.join(currentDir, 'package.json');
66
+ if (fs.existsSync(packageJsonPath)) {
67
+ const content = fs.readFileSync(packageJsonPath, 'utf8');
68
+ try {
69
+ const packageJson = JSON.parse(content);
70
+ const deps = {
71
+ ...(packageJson.dependencies || {}),
72
+ ...(packageJson.devDependencies || {})
73
+ };
74
+ if (deps['@remix-run/dev'] || deps['@remix-run/node'])
75
+ return 'remix';
76
+ if (deps['next'] || fs.existsSync(path.join(currentDir, 'next.config.js')))
77
+ return 'nextjs';
78
+ if (deps['@sveltejs/kit'])
79
+ return 'sveltekit';
80
+ if (deps['nuxt'] || fs.existsSync(path.join(currentDir, 'nuxt.config.ts')))
81
+ return 'nuxt';
82
+ if (deps['astro'])
83
+ return 'astro';
84
+ if (deps['react-scripts'])
85
+ return 'cra';
86
+ if (deps['vite'])
87
+ return 'vite';
88
+ }
89
+ catch (e) {
90
+ // Ignore parse errors
91
+ }
92
+ }
93
+ if (currentDir === rootDir)
94
+ break;
95
+ const parentDir = path.dirname(currentDir);
96
+ if (parentDir === currentDir)
97
+ break;
98
+ currentDir = parentDir;
91
99
  }
92
100
  }
93
101
  catch (error) {
94
- // Silently fail and return empty string if package.json cannot be read/parsed
102
+ // Silently fail
95
103
  }
96
104
  return '';
97
105
  }
@@ -253,66 +261,70 @@ class VoltEnv {
253
261
  });
254
262
  }
255
263
  }
256
- /**
257
- * Get metadata for a specific variable
258
- * @param environment The environment name
259
- * @param key The variable key
260
- */
261
- async getMetadata(environment, key) {
262
- const prefixedKey = this.applyPrefix(key);
263
- const data = await this.httpClient.get(`/v1/variables/${environment}/${prefixedKey}/metadata`);
264
- return data;
265
- }
266
- /**
267
- * Get the audit history of a variable
268
- * @param environment The environment name
269
- * @param key The variable key
270
- */
271
- async getHistory(environment, key) {
272
- const prefixedKey = this.applyPrefix(key);
273
- const data = await this.httpClient.get(`/v1/variables/${environment}/${prefixedKey}/history`);
274
- return data.history;
275
- }
276
264
  /**
277
265
  * Export all variables in an environment to a .env file
266
+ * Node.js only - will throw error in browser
278
267
  * @param environment The environment name
279
268
  * @param filePath Path to the .env file to create/overwrite
280
269
  */
281
270
  async exportToEnvFile(environment, filePath) {
282
- const variables = await this.getAll(environment);
283
- const content = Object.entries(variables)
284
- .map(([key, value]) => `${key}=${value}`)
285
- .join('\n');
286
- const absolutePath = path.isAbsolute(filePath)
287
- ? filePath
288
- : path.join(process.cwd(), filePath);
289
- fs.writeFileSync(absolutePath, content, 'utf8');
271
+ // Check if we're in Node.js
272
+ if (typeof process === 'undefined' || typeof require === 'undefined') {
273
+ throw new Error('exportToEnvFile is only available in Node.js environments');
274
+ }
275
+ try {
276
+ const fs = require('fs');
277
+ const path = require('path');
278
+ const variables = await this.getAll(environment);
279
+ const content = Object.entries(variables)
280
+ .map(([key, value]) => `${key}=${value}`)
281
+ .join('\n');
282
+ const absolutePath = path.isAbsolute(filePath)
283
+ ? filePath
284
+ : path.join(process.cwd(), filePath);
285
+ fs.writeFileSync(absolutePath, content, 'utf8');
286
+ }
287
+ catch (error) {
288
+ throw new Error(`Failed to export to env file: ${error}`);
289
+ }
290
290
  }
291
291
  /**
292
292
  * Load variables from a .env file and set them in an environment
293
+ * Node.js only - will throw error in browser
293
294
  * @param environment The environment name
294
295
  * @param filePath Path to the .env file to read from
295
296
  */
296
297
  async loadFromEnvFile(environment, filePath) {
297
- const absolutePath = path.isAbsolute(filePath)
298
- ? filePath
299
- : path.join(process.cwd(), filePath);
300
- if (!fs.existsSync(absolutePath)) {
301
- throw new Error(`File not found: ${absolutePath}`);
298
+ // Check if we're in Node.js
299
+ if (typeof process === 'undefined' || typeof require === 'undefined') {
300
+ throw new Error('loadFromEnvFile is only available in Node.js environments');
302
301
  }
303
- const content = fs.readFileSync(absolutePath, 'utf8');
304
- const variables = {};
305
- content.split(/\r?\n/).forEach(line => {
306
- const trimmedLine = line.trim();
307
- if (trimmedLine && !trimmedLine.startsWith('#')) {
308
- const [key, ...valueParts] = trimmedLine.split('=');
309
- if (key) {
310
- variables[key.trim()] = valueParts.join('=').trim();
302
+ try {
303
+ const fs = require('fs');
304
+ const path = require('path');
305
+ const absolutePath = path.isAbsolute(filePath)
306
+ ? filePath
307
+ : path.join(process.cwd(), filePath);
308
+ if (!fs.existsSync(absolutePath)) {
309
+ throw new Error(`File not found: ${absolutePath}`);
310
+ }
311
+ const content = fs.readFileSync(absolutePath, 'utf8');
312
+ const variables = {};
313
+ content.split(/\r?\n/).forEach((line) => {
314
+ const trimmedLine = line.trim();
315
+ if (trimmedLine && !trimmedLine.startsWith('#')) {
316
+ const [key, ...valueParts] = trimmedLine.split('=');
317
+ if (key) {
318
+ variables[key.trim()] = valueParts.join('=').trim();
319
+ }
311
320
  }
321
+ });
322
+ if (Object.keys(variables).length > 0) {
323
+ await this.setMany(environment, variables);
312
324
  }
313
- });
314
- if (Object.keys(variables).length > 0) {
315
- await this.setMany(environment, variables);
325
+ }
326
+ catch (error) {
327
+ throw new Error(`Failed to load from env file: ${error}`);
316
328
  }
317
329
  }
318
330
  /**
@@ -354,7 +366,7 @@ class VoltEnv {
354
366
  }
355
367
  /**
356
368
  * Sync/refresh variables from server (bypassing cache)
357
- *If an environment is provided, it only syncs that environment.
369
+ * If an environment is provided, it only syncs that environment.
358
370
  * If no environment is provided, it lists all environments and syncs them all.
359
371
  * @param environment Optional environment to sync
360
372
  */
@@ -376,25 +388,21 @@ class VoltEnv {
376
388
  }
377
389
  }
378
390
  /**
379
- * Get all cached keys (for debugging)
391
+ * Clear the entire cache
380
392
  */
381
- getCacheKeys() {
382
- if (!this.cacheService) {
383
- return [];
393
+ clearCache() {
394
+ if (this.cacheService) {
395
+ this.cacheService.clear();
384
396
  }
385
- return Array.from(this.cacheService.keys());
386
397
  }
387
398
  /**
388
- * Get cache statistics
399
+ * Get all cached keys (for debugging)
389
400
  */
390
- getCacheStats() {
401
+ getCacheKeys() {
391
402
  if (!this.cacheService) {
392
- return { size: 0, keys: [] };
403
+ return [];
393
404
  }
394
- return {
395
- size: this.cacheService.size,
396
- keys: Array.from(this.cacheService.keys())
397
- };
405
+ return Array.from(this.cacheService.keys());
398
406
  }
399
407
  }
400
408
  exports.VoltEnv = VoltEnv;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,uCAAyB;AACzB,2CAA6B;AAC7B,2DAAwE;AACxE,uDAAoD;AACpD,2DAAwD;AAExD,MAAa,OAAO;IAKhB;;;OAGG;IACH,YAAY,OAAgC;QANpC,mBAAc,GAAW,EAAE,CAAC;QAOhC,MAAM,MAAM,GAAG,OAAO,OAAO,KAAK,QAAQ;YACtC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE;YACrB,CAAC,CAAC,OAAO,CAAC;QAEd,MAAM,EACF,MAAM,EACN,OAAO,GAAG,yBAAyB,EACnC,OAAO,GAAG,IAAI,EACd,KAAK,GAAG,IAAI,EACZ,OAAO,EACP,SAAS,EACT,MAAM,EACT,GAAG,MAAM,CAAC;QAEX,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAU,CAAC;YAC7B,MAAM;YACN,OAAO;YACP,OAAO;YACP,OAAO;SACV,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,2BAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACtD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,SAAkB,EAAE,cAAuB;QAC7D,IAAI,cAAc,KAAK,SAAS;YAAE,OAAO,cAAc,CAAC;QAExD,MAAM,EAAE,GAAG,SAAS,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QAE/C,QAAQ,EAAE,EAAE,CAAC;YACT,KAAK,MAAM,CAAC,CAAC,OAAO,OAAO,CAAC;YAC5B,KAAK,QAAQ,CAAC,CAAC,OAAO,cAAc,CAAC;YACrC,KAAK,KAAK,CAAC,CAAC,OAAO,YAAY,CAAC;YAChC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC;IACL,CAAC;IAED;;OAEG;IACK,eAAe;QACnB,IAAI,CAAC;YACD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC;YACjE,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;gBACjC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;gBACzE,MAAM,IAAI,GAAG,EAAE,GAAG,WAAW,CAAC,YAAY,EAAE,GAAG,WAAW,CAAC,eAAe,EAAE,CAAC;gBAE7E,IAAI,IAAI,CAAC,MAAM,CAAC;oBAAE,OAAO,MAAM,CAAC;gBAChC,IAAI,IAAI,CAAC,MAAM,CAAC;oBAAE,OAAO,QAAQ,CAAC;gBAClC,IAAI,IAAI,CAAC,eAAe,CAAC;oBAAE,OAAO,KAAK,CAAC;YAC5C,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,8EAA8E;QAClF,CAAC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,GAAW;QAC3B,IAAI,CAAC,IAAI,CAAC,cAAc;YAAE,OAAO,GAAG,CAAC;QACrC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC;YAAE,OAAO,GAAG,CAAC;QACpD,OAAO,GAAG,IAAI,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC;IAC1C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,GAAG,CACL,WAAmB,EACnB,GAAW,EACX,YAAqB;QAErB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,GAAG,WAAW,IAAI,WAAW,EAAE,CAAC;QAEjD,IAAI,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAS,QAAQ,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAClC,iBAAiB,WAAW,IAAI,WAAW,EAAE,CAChD,CAAC;YAEF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YAEzB,IAAI,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC7B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC3C,CAAC;YAED,OAAO,KAAK,IAAI,YAAY,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,KAAK,YAAY,2BAAY,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC9D,OAAO,YAAY,CAAC;YACxB,CAAC;YACD,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,WAAmB;QAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAClC,iBAAiB,WAAW,EAAE,CACjC,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAEjC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC/C,IAAI,CAAC,YAAa,CAAC,GAAG,CAAC,GAAG,WAAW,IAAI,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG,CACL,WAAmB,EACnB,GAAW,EACX,KAAa;QAEb,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,iBAAiB,WAAW,IAAI,WAAW,EAAE,EAAE;YACrE,KAAK;SACR,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,WAAW,IAAI,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;QAClE,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CACX,WAAmB,EACnB,GAAW,EACX,KAAa;QAEb,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,iBAAiB,WAAW,IAAI,WAAW,EAAE,EAAE;YACrE,KAAK;YACL,QAAQ,EAAE,IAAI;SACjB,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,WAAW,IAAI,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;QAClE,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CACD,WAAmB,EACnB,QAAqD,EACrD,WAAmB,KAAK;QAExB,IAAI,iBAAiB,GAAW,EAAE,CAAC;QAEnC,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;YAC/B,IAAI,CAAC;gBACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBACjD,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;gBAEnD,IAAI,gBAAgB,KAAK,iBAAiB,EAAE,CAAC;oBACzC,iBAAiB,GAAG,gBAAgB,CAAC;oBACrC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACxB,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,WAAW,GAAG,EAAE,KAAK,CAAC,CAAC;YACzE,CAAC;QACL,CAAC,CAAC;QAEF,gBAAgB;QAChB,eAAe,EAAE,CAAC;QAElB,MAAM,KAAK,GAAG,WAAW,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAErD,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,OAAO,CACT,WAAmB,EACnB,SAAiC;QAEjC,MAAM,iBAAiB,GAA2B,EAAE,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC/C,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,WAAW,QAAQ,EAAE;YAC7D,SAAS,EAAE,iBAAiB;SAC/B,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBACvD,IAAI,CAAC,YAAa,CAAC,GAAG,CAAC,GAAG,WAAW,IAAI,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,WAAmB,EAAE,GAAW;QACzC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,iBAAiB,WAAW,IAAI,WAAW,EAAE,CAAC,CAAC;QAE5E,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,WAAW,IAAI,WAAW,EAAE,CAAC,CAAC;QAC9D,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,WAAmB,EAAE,IAAc;QAChD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QACxD,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,WAAW,eAAe,EAAE;YACpE,IAAI,EAAE,YAAY;SACrB,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBACvB,IAAI,CAAC,YAAa,CAAC,MAAM,CAAC,GAAG,WAAW,IAAI,GAAG,EAAE,CAAC,CAAC;YACvD,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,WAAmB,EAAE,GAAW;QAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAClC,iBAAiB,WAAW,IAAI,WAAW,WAAW,CACzD,CAAC;QACF,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,WAAmB,EAAE,GAAW;QAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAClC,iBAAiB,WAAW,IAAI,WAAW,UAAU,CACxD,CAAC;QACF,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,QAAgB;QACvD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;aACpC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;aACxC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEhB,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC1C,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;QAEzC,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,QAAgB;QACvD,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC1C,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;QAEzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,mBAAmB,YAAY,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACtD,MAAM,SAAS,GAA2B,EAAE,CAAC;QAE7C,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAClC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAChC,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9C,MAAM,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACpD,IAAI,GAAG,EAAE,CAAC;oBACN,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBACxD,CAAC;YACL,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB;QAClB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAClC,kBAAkB,CACrB,CAAC;QACF,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iBAAiB,CAAC,IAAY,EAAE,OAA6B;QAC/D,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE;YAC3C,IAAI;YACJ,GAAG,OAAO;SACb,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iBAAiB,CAAC,IAAY,EAAE,MAA2B;QAC7D,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB,CAAC,IAAY;QAChC,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;QAEzD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;QACjD,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CAAC,WAAoB;QAC3B,IAAI,WAAW,EAAE,CAAC;YACd,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAEjD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC;gBAEpD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;oBAC/C,IAAI,CAAC,YAAa,CAAC,GAAG,CAAC,GAAG,WAAW,IAAI,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;gBAC3D,CAAC,CAAC,CAAC;YACP,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAEnD,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzB,CAAC;QACL,CAAC;IACL,CAAC;IAED;;OAEG;IACH,YAAY;QACR,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,OAAO,EAAE,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,aAAa;QACT,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACjC,CAAC;QACD,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;YAC5B,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;SAC7C,CAAC;IACN,CAAC;CACJ;AA5bD,0BA4bC;AAED,kBAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/index.ts CHANGED
@@ -1,6 +1,7 @@
1
+ // Remove these imports entirely
2
+ // import * as fs from 'fs';
3
+ // import * as path from 'path';
1
4
 
2
- import * as fs from 'fs';
3
- import * as path from 'path';
4
5
  import { VoltEnvError, VoltEnvOptions } from './utilities/errorHandler';
5
6
  import { HttpClient } from './utilities/httpClient';
6
7
  import { CacheService } from './utilities/cacheService';
@@ -52,26 +53,65 @@ export class VoltEnv {
52
53
  case 'vite': return 'VITE_';
53
54
  case 'nextjs': return 'NEXT_PUBLIC_';
54
55
  case 'cra': return 'REACT_APP_';
56
+ case 'nuxt': return 'NUXT_PUBLIC_';
57
+ case 'astro': return 'PUBLIC_';
58
+ case 'sveltekit': return 'PUBLIC_';
59
+ case 'remix': return 'PUBLIC_';
55
60
  default: return '';
56
61
  }
57
62
  }
58
63
 
59
64
  /**
60
- * Try to detect the framework from package.json
65
+ * Try to detect the framework from package.json by searching up the directory tree
66
+ * Only works in Node.js environments
61
67
  */
62
68
  private detectFramework(): string {
69
+ const isNode = typeof process !== 'undefined'
70
+ && process.versions != null
71
+ && process.versions.node != null;
72
+
73
+ if (!isNode) {
74
+ return '';
75
+ }
76
+
63
77
  try {
64
- const packageJsonPath = path.join(process.cwd(), 'package.json');
65
- if (fs.existsSync(packageJsonPath)) {
66
- const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
67
- const deps = { ...packageJson.dependencies, ...packageJson.devDependencies };
68
-
69
- if (deps['vite']) return 'vite';
70
- if (deps['next']) return 'nextjs';
71
- if (deps['react-scripts']) return 'cra';
78
+ const fs = require('fs');
79
+ const path = require('path');
80
+
81
+ let currentDir = process.cwd();
82
+ const rootDir = path.parse(currentDir).root;
83
+
84
+ while (true) {
85
+ const packageJsonPath = path.join(currentDir, 'package.json');
86
+
87
+ if (fs.existsSync(packageJsonPath)) {
88
+ const content = fs.readFileSync(packageJsonPath, 'utf8');
89
+ try {
90
+ const packageJson = JSON.parse(content);
91
+ const deps = {
92
+ ...(packageJson.dependencies || {}),
93
+ ...(packageJson.devDependencies || {})
94
+ };
95
+
96
+ if (deps['@remix-run/dev'] || deps['@remix-run/node']) return 'remix';
97
+ if (deps['next'] || fs.existsSync(path.join(currentDir, 'next.config.js'))) return 'nextjs';
98
+ if (deps['@sveltejs/kit']) return 'sveltekit';
99
+ if (deps['nuxt'] || fs.existsSync(path.join(currentDir, 'nuxt.config.ts'))) return 'nuxt';
100
+ if (deps['astro']) return 'astro';
101
+ if (deps['react-scripts']) return 'cra';
102
+ if (deps['vite']) return 'vite';
103
+ } catch (e) {
104
+ // Ignore parse errors
105
+ }
106
+ }
107
+
108
+ if (currentDir === rootDir) break;
109
+ const parentDir = path.dirname(currentDir);
110
+ if (parentDir === currentDir) break;
111
+ currentDir = parentDir;
72
112
  }
73
113
  } catch (error) {
74
- // Silently fail and return empty string if package.json cannot be read/parsed
114
+ // Silently fail
75
115
  }
76
116
  return '';
77
117
  }
@@ -281,79 +321,79 @@ export class VoltEnv {
281
321
  }
282
322
  }
283
323
 
284
- /**
285
- * Get metadata for a specific variable
286
- * @param environment The environment name
287
- * @param key The variable key
288
- */
289
- async getMetadata(environment: string, key: string): Promise<Record<string, any>> {
290
- const prefixedKey = this.applyPrefix(key);
291
- const data = await this.httpClient.get<Record<string, any>>(
292
- `/v1/variables/${environment}/${prefixedKey}/metadata`
293
- );
294
- return data;
295
- }
296
-
297
- /**
298
- * Get the audit history of a variable
299
- * @param environment The environment name
300
- * @param key The variable key
301
- */
302
- async getHistory(environment: string, key: string): Promise<any[]> {
303
- const prefixedKey = this.applyPrefix(key);
304
- const data = await this.httpClient.get<{ history: any[] }>(
305
- `/v1/variables/${environment}/${prefixedKey}/history`
306
- );
307
- return data.history;
308
- }
309
-
310
324
  /**
311
325
  * Export all variables in an environment to a .env file
326
+ * Node.js only - will throw error in browser
312
327
  * @param environment The environment name
313
328
  * @param filePath Path to the .env file to create/overwrite
314
329
  */
315
330
  async exportToEnvFile(environment: string, filePath: string): Promise<void> {
316
- const variables = await this.getAll(environment);
317
- const content = Object.entries(variables)
318
- .map(([key, value]) => `${key}=${value}`)
319
- .join('\n');
331
+ // Check if we're in Node.js
332
+ if (typeof process === 'undefined' || typeof require === 'undefined') {
333
+ throw new Error('exportToEnvFile is only available in Node.js environments');
334
+ }
335
+
336
+ try {
337
+ const fs = require('fs');
338
+ const path = require('path');
339
+
340
+ const variables = await this.getAll(environment);
341
+ const content = Object.entries(variables)
342
+ .map(([key, value]) => `${key}=${value}`)
343
+ .join('\n');
320
344
 
321
- const absolutePath = path.isAbsolute(filePath)
322
- ? filePath
323
- : path.join(process.cwd(), filePath);
345
+ const absolutePath = path.isAbsolute(filePath)
346
+ ? filePath
347
+ : path.join(process.cwd(), filePath);
324
348
 
325
- fs.writeFileSync(absolutePath, content, 'utf8');
349
+ fs.writeFileSync(absolutePath, content, 'utf8');
350
+ } catch (error) {
351
+ throw new Error(`Failed to export to env file: ${error}`);
352
+ }
326
353
  }
327
354
 
328
355
  /**
329
356
  * Load variables from a .env file and set them in an environment
357
+ * Node.js only - will throw error in browser
330
358
  * @param environment The environment name
331
359
  * @param filePath Path to the .env file to read from
332
360
  */
333
361
  async loadFromEnvFile(environment: string, filePath: string): Promise<void> {
334
- const absolutePath = path.isAbsolute(filePath)
335
- ? filePath
336
- : path.join(process.cwd(), filePath);
337
-
338
- if (!fs.existsSync(absolutePath)) {
339
- throw new Error(`File not found: ${absolutePath}`);
362
+ // Check if we're in Node.js
363
+ if (typeof process === 'undefined' || typeof require === 'undefined') {
364
+ throw new Error('loadFromEnvFile is only available in Node.js environments');
340
365
  }
341
366
 
342
- const content = fs.readFileSync(absolutePath, 'utf8');
343
- const variables: Record<string, string> = {};
367
+ try {
368
+ const fs = require('fs');
369
+ const path = require('path');
344
370
 
345
- content.split(/\r?\n/).forEach(line => {
346
- const trimmedLine = line.trim();
347
- if (trimmedLine && !trimmedLine.startsWith('#')) {
348
- const [key, ...valueParts] = trimmedLine.split('=');
349
- if (key) {
350
- variables[key.trim()] = valueParts.join('=').trim();
351
- }
371
+ const absolutePath = path.isAbsolute(filePath)
372
+ ? filePath
373
+ : path.join(process.cwd(), filePath);
374
+
375
+ if (!fs.existsSync(absolutePath)) {
376
+ throw new Error(`File not found: ${absolutePath}`);
352
377
  }
353
- });
354
378
 
355
- if (Object.keys(variables).length > 0) {
356
- await this.setMany(environment, variables);
379
+ const content = fs.readFileSync(absolutePath, 'utf8');
380
+ const variables: Record<string, string> = {};
381
+
382
+ content.split(/\r?\n/).forEach((line: string) => {
383
+ const trimmedLine = line.trim();
384
+ if (trimmedLine && !trimmedLine.startsWith('#')) {
385
+ const [key, ...valueParts] = trimmedLine.split('=');
386
+ if (key) {
387
+ variables[key.trim()] = valueParts.join('=').trim();
388
+ }
389
+ }
390
+ });
391
+
392
+ if (Object.keys(variables).length > 0) {
393
+ await this.setMany(environment, variables);
394
+ }
395
+ } catch (error) {
396
+ throw new Error(`Failed to load from env file: ${error}`);
357
397
  }
358
398
  }
359
399
 
@@ -403,7 +443,7 @@ export class VoltEnv {
403
443
 
404
444
  /**
405
445
  * Sync/refresh variables from server (bypassing cache)
406
- *If an environment is provided, it only syncs that environment.
446
+ * If an environment is provided, it only syncs that environment.
407
447
  * If no environment is provided, it lists all environments and syncs them all.
408
448
  * @param environment Optional environment to sync
409
449
  */
@@ -428,27 +468,24 @@ export class VoltEnv {
428
468
  }
429
469
 
430
470
  /**
431
- * Get all cached keys (for debugging)
471
+ * Clear the entire cache
432
472
  */
433
- getCacheKeys(): string[] {
434
- if (!this.cacheService) {
435
- return [];
473
+ clearCache(): void {
474
+ if (this.cacheService) {
475
+ this.cacheService.clear();
436
476
  }
437
- return Array.from(this.cacheService.keys());
438
477
  }
439
478
 
440
479
  /**
441
- * Get cache statistics
480
+ * Get all cached keys (for debugging)
442
481
  */
443
- getCacheStats(): { size: number; keys: string[] } {
482
+ getCacheKeys(): string[] {
444
483
  if (!this.cacheService) {
445
- return { size: 0, keys: [] };
484
+ return [];
446
485
  }
447
- return {
448
- size: this.cacheService.size,
449
- keys: Array.from(this.cacheService.keys())
450
- };
486
+ return Array.from(this.cacheService.keys());
451
487
  }
488
+
452
489
  }
453
490
 
454
- export default VoltEnv;
491
+ export default VoltEnv;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "voltenv-sdk",
3
- "version": "1.1.1",
3
+ "version": "1.1.3",
4
4
  "description": "TypeScript SDK for VoltEnv",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/tsconfig.json CHANGED
@@ -5,6 +5,9 @@
5
5
  "lib": [
6
6
  "ES2020"
7
7
  ],
8
+ "types": [
9
+ "node"
10
+ ],
8
11
  "declaration": true,
9
12
  "declarationMap": true,
10
13
  "sourceMap": true,