@zincapp/znvault-cli 2.16.4 → 2.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/agent.d.ts.map +1 -1
- package/dist/commands/agent.js +6 -0
- package/dist/commands/agent.js.map +1 -1
- package/dist/commands/apikey/conditions.d.ts +6 -0
- package/dist/commands/apikey/conditions.d.ts.map +1 -0
- package/dist/commands/apikey/conditions.js +57 -0
- package/dist/commands/apikey/conditions.js.map +1 -0
- package/dist/commands/apikey/create.d.ts +6 -0
- package/dist/commands/apikey/create.d.ts.map +1 -0
- package/dist/commands/apikey/create.js +106 -0
- package/dist/commands/apikey/create.js.map +1 -0
- package/dist/commands/apikey/delete.d.ts +6 -0
- package/dist/commands/apikey/delete.d.ts.map +1 -0
- package/dist/commands/apikey/delete.js +29 -0
- package/dist/commands/apikey/delete.js.map +1 -0
- package/dist/commands/apikey/enable-disable.d.ts +6 -0
- package/dist/commands/apikey/enable-disable.d.ts.map +1 -0
- package/dist/commands/apikey/enable-disable.js +44 -0
- package/dist/commands/apikey/enable-disable.js.map +1 -0
- package/dist/commands/apikey/helpers.d.ts +23 -0
- package/dist/commands/apikey/helpers.d.ts.map +1 -0
- package/dist/commands/apikey/helpers.js +135 -0
- package/dist/commands/apikey/helpers.js.map +1 -0
- package/dist/commands/apikey/index.d.ts +10 -0
- package/dist/commands/apikey/index.d.ts.map +1 -0
- package/dist/commands/apikey/index.js +33 -0
- package/dist/commands/apikey/index.js.map +1 -0
- package/dist/commands/apikey/list.d.ts +6 -0
- package/dist/commands/apikey/list.d.ts.map +1 -0
- package/dist/commands/apikey/list.js +74 -0
- package/dist/commands/apikey/list.js.map +1 -0
- package/dist/commands/apikey/managed/bind.d.ts +6 -0
- package/dist/commands/apikey/managed/bind.d.ts.map +1 -0
- package/dist/commands/apikey/managed/bind.js +52 -0
- package/dist/commands/apikey/managed/bind.js.map +1 -0
- package/dist/commands/apikey/managed/conditions.d.ts +6 -0
- package/dist/commands/apikey/managed/conditions.d.ts.map +1 -0
- package/dist/commands/apikey/managed/conditions.js +62 -0
- package/dist/commands/apikey/managed/conditions.js.map +1 -0
- package/dist/commands/apikey/managed/config.d.ts +6 -0
- package/dist/commands/apikey/managed/config.d.ts.map +1 -0
- package/dist/commands/apikey/managed/config.js +52 -0
- package/dist/commands/apikey/managed/config.js.map +1 -0
- package/dist/commands/apikey/managed/create.d.ts +6 -0
- package/dist/commands/apikey/managed/create.d.ts.map +1 -0
- package/dist/commands/apikey/managed/create.js +82 -0
- package/dist/commands/apikey/managed/create.js.map +1 -0
- package/dist/commands/apikey/managed/delete.d.ts +6 -0
- package/dist/commands/apikey/managed/delete.d.ts.map +1 -0
- package/dist/commands/apikey/managed/delete.js +29 -0
- package/dist/commands/apikey/managed/delete.js.map +1 -0
- package/dist/commands/apikey/managed/get.d.ts +6 -0
- package/dist/commands/apikey/managed/get.d.ts.map +1 -0
- package/dist/commands/apikey/managed/get.js +31 -0
- package/dist/commands/apikey/managed/get.js.map +1 -0
- package/dist/commands/apikey/managed/helpers.d.ts +5 -0
- package/dist/commands/apikey/managed/helpers.d.ts.map +1 -0
- package/dist/commands/apikey/managed/helpers.js +70 -0
- package/dist/commands/apikey/managed/helpers.js.map +1 -0
- package/dist/commands/apikey/managed/index.d.ts +7 -0
- package/dist/commands/apikey/managed/index.d.ts.map +1 -0
- package/dist/commands/apikey/managed/index.js +27 -0
- package/dist/commands/apikey/managed/index.js.map +1 -0
- package/dist/commands/apikey/managed/list.d.ts +6 -0
- package/dist/commands/apikey/managed/list.d.ts.map +1 -0
- package/dist/commands/apikey/managed/list.js +58 -0
- package/dist/commands/apikey/managed/list.js.map +1 -0
- package/dist/commands/apikey/managed/permissions.d.ts +6 -0
- package/dist/commands/apikey/managed/permissions.d.ts.map +1 -0
- package/dist/commands/apikey/managed/permissions.js +73 -0
- package/dist/commands/apikey/managed/permissions.js.map +1 -0
- package/dist/commands/apikey/managed/rotate.d.ts +6 -0
- package/dist/commands/apikey/managed/rotate.d.ts.map +1 -0
- package/dist/commands/apikey/managed/rotate.js +29 -0
- package/dist/commands/apikey/managed/rotate.js.map +1 -0
- package/dist/commands/apikey/managed/types.d.ts +62 -0
- package/dist/commands/apikey/managed/types.d.ts.map +1 -0
- package/dist/commands/apikey/managed/types.js +3 -0
- package/dist/commands/apikey/managed/types.js.map +1 -0
- package/dist/commands/apikey/permissions.d.ts +6 -0
- package/dist/commands/apikey/permissions.d.ts.map +1 -0
- package/dist/commands/apikey/permissions.js +70 -0
- package/dist/commands/apikey/permissions.js.map +1 -0
- package/dist/commands/apikey/policies.d.ts +6 -0
- package/dist/commands/apikey/policies.d.ts.map +1 -0
- package/dist/commands/apikey/policies.js +82 -0
- package/dist/commands/apikey/policies.js.map +1 -0
- package/dist/commands/apikey/rotate.d.ts +6 -0
- package/dist/commands/apikey/rotate.d.ts.map +1 -0
- package/dist/commands/apikey/rotate.js +42 -0
- package/dist/commands/apikey/rotate.js.map +1 -0
- package/dist/commands/apikey/self.d.ts +6 -0
- package/dist/commands/apikey/self.d.ts.map +1 -0
- package/dist/commands/apikey/self.js +96 -0
- package/dist/commands/apikey/self.js.map +1 -0
- package/dist/commands/apikey/show.d.ts +6 -0
- package/dist/commands/apikey/show.d.ts.map +1 -0
- package/dist/commands/apikey/show.js +79 -0
- package/dist/commands/apikey/show.js.map +1 -0
- package/dist/commands/apikey/types.d.ts +83 -0
- package/dist/commands/apikey/types.d.ts.map +1 -0
- package/dist/commands/apikey/types.js +3 -0
- package/dist/commands/apikey/types.js.map +1 -0
- package/dist/commands/apikey.d.ts +8 -2
- package/dist/commands/apikey.d.ts.map +1 -1
- package/dist/commands/apikey.js +9 -1296
- package/dist/commands/apikey.js.map +1 -1
- package/dist/commands/device.d.ts.map +1 -1
- package/dist/commands/device.js +8 -5
- package/dist/commands/device.js.map +1 -1
- package/dist/commands/plugin.d.ts.map +1 -1
- package/dist/commands/plugin.js +29 -7
- package/dist/commands/plugin.js.map +1 -1
- package/dist/commands/secret/copy.d.ts +6 -0
- package/dist/commands/secret/copy.d.ts.map +1 -0
- package/dist/commands/secret/copy.js +43 -0
- package/dist/commands/secret/copy.js.map +1 -0
- package/dist/commands/secret/create.d.ts +6 -0
- package/dist/commands/secret/create.d.ts.map +1 -0
- package/dist/commands/secret/create.js +297 -0
- package/dist/commands/secret/create.js.map +1 -0
- package/dist/commands/secret/decrypt.d.ts +6 -0
- package/dist/commands/secret/decrypt.d.ts.map +1 -0
- package/dist/commands/secret/decrypt.js +104 -0
- package/dist/commands/secret/decrypt.js.map +1 -0
- package/dist/commands/secret/delete.d.ts +6 -0
- package/dist/commands/secret/delete.d.ts.map +1 -0
- package/dist/commands/secret/delete.js +60 -0
- package/dist/commands/secret/delete.js.map +1 -0
- package/dist/commands/secret/get.d.ts +6 -0
- package/dist/commands/secret/get.d.ts.map +1 -0
- package/dist/commands/secret/get.js +60 -0
- package/dist/commands/secret/get.js.map +1 -0
- package/dist/commands/secret/helpers.d.ts +11 -0
- package/dist/commands/secret/helpers.d.ts.map +1 -0
- package/dist/commands/secret/helpers.js +59 -0
- package/dist/commands/secret/helpers.js.map +1 -0
- package/dist/commands/secret/history.d.ts +6 -0
- package/dist/commands/secret/history.d.ts.map +1 -0
- package/dist/commands/secret/history.js +52 -0
- package/dist/commands/secret/history.js.map +1 -0
- package/dist/commands/secret/index.d.ts +12 -0
- package/dist/commands/secret/index.d.ts.map +1 -0
- package/dist/commands/secret/index.js +49 -0
- package/dist/commands/secret/index.js.map +1 -0
- package/dist/commands/secret/list.d.ts +6 -0
- package/dist/commands/secret/list.d.ts.map +1 -0
- package/dist/commands/secret/list.js +72 -0
- package/dist/commands/secret/list.js.map +1 -0
- package/dist/commands/secret/pem-analysis.d.ts +32 -0
- package/dist/commands/secret/pem-analysis.d.ts.map +1 -0
- package/dist/commands/secret/pem-analysis.js +190 -0
- package/dist/commands/secret/pem-analysis.js.map +1 -0
- package/dist/commands/secret/resolve.d.ts +17 -0
- package/dist/commands/secret/resolve.d.ts.map +1 -0
- package/dist/commands/secret/resolve.js +36 -0
- package/dist/commands/secret/resolve.js.map +1 -0
- package/dist/commands/secret/rotate.d.ts +6 -0
- package/dist/commands/secret/rotate.d.ts.map +1 -0
- package/dist/commands/secret/rotate.js +72 -0
- package/dist/commands/secret/rotate.js.map +1 -0
- package/dist/commands/secret/types.d.ts +123 -0
- package/dist/commands/secret/types.d.ts.map +1 -0
- package/dist/commands/secret/types.js +3 -0
- package/dist/commands/secret/types.js.map +1 -0
- package/dist/commands/secret/update.d.ts +6 -0
- package/dist/commands/secret/update.d.ts.map +1 -0
- package/dist/commands/secret/update.js +124 -0
- package/dist/commands/secret/update.js.map +1 -0
- package/dist/commands/secret.d.ts +8 -2
- package/dist/commands/secret.d.ts.map +1 -1
- package/dist/commands/secret.js +6 -1131
- package/dist/commands/secret.js.map +1 -1
- package/dist/index.js +48 -4
- package/dist/index.js.map +1 -1
- package/dist/lib/client/apikeys.d.ts +34 -0
- package/dist/lib/client/apikeys.d.ts.map +1 -0
- package/dist/lib/client/apikeys.js +113 -0
- package/dist/lib/client/apikeys.js.map +1 -0
- package/dist/lib/client/audit.d.ts +21 -0
- package/dist/lib/client/audit.d.ts.map +1 -0
- package/dist/lib/client/audit.js +40 -0
- package/dist/lib/client/audit.js.map +1 -0
- package/dist/lib/client/health.d.ts +30 -0
- package/dist/lib/client/health.d.ts.map +1 -0
- package/dist/lib/client/health.js +55 -0
- package/dist/lib/client/health.js.map +1 -0
- package/dist/lib/client/http.d.ts +50 -0
- package/dist/lib/client/http.d.ts.map +1 -0
- package/dist/lib/client/http.js +333 -0
- package/dist/lib/client/http.js.map +1 -0
- package/dist/lib/client/index.d.ts +156 -0
- package/dist/lib/client/index.d.ts.map +1 -0
- package/dist/lib/client/index.js +172 -0
- package/dist/lib/client/index.js.map +1 -0
- package/dist/lib/client/lockdown.d.ts +23 -0
- package/dist/lib/client/lockdown.d.ts.map +1 -0
- package/dist/lib/client/lockdown.js +48 -0
- package/dist/lib/client/lockdown.js.map +1 -0
- package/dist/lib/client/managed-keys.d.ts +18 -0
- package/dist/lib/client/managed-keys.d.ts.map +1 -0
- package/dist/lib/client/managed-keys.js +190 -0
- package/dist/lib/client/managed-keys.js.map +1 -0
- package/dist/lib/client/policies.d.ts +35 -0
- package/dist/lib/client/policies.d.ts.map +1 -0
- package/dist/lib/client/policies.js +131 -0
- package/dist/lib/client/policies.js.map +1 -0
- package/dist/lib/client/tenants.d.ts +29 -0
- package/dist/lib/client/tenants.d.ts.map +1 -0
- package/dist/lib/client/tenants.js +56 -0
- package/dist/lib/client/tenants.js.map +1 -0
- package/dist/lib/client/types.d.ts +45 -0
- package/dist/lib/client/types.d.ts.map +1 -0
- package/dist/lib/client/types.js +3 -0
- package/dist/lib/client/types.js.map +1 -0
- package/dist/lib/client/users.d.ts +44 -0
- package/dist/lib/client/users.d.ts.map +1 -0
- package/dist/lib/client/users.js +116 -0
- package/dist/lib/client/users.js.map +1 -0
- package/dist/lib/client.d.ts +11 -246
- package/dist/lib/client.d.ts.map +1 -1
- package/dist/lib/client.js +10 -996
- package/dist/lib/client.js.map +1 -1
- package/dist/lib/command-error-handler.d.ts +99 -0
- package/dist/lib/command-error-handler.d.ts.map +1 -0
- package/dist/lib/command-error-handler.js +108 -0
- package/dist/lib/command-error-handler.js.map +1 -0
- package/dist/lib/config/apikey.d.ts +29 -0
- package/dist/lib/config/apikey.d.ts.map +1 -0
- package/dist/lib/config/apikey.js +58 -0
- package/dist/lib/config/apikey.js.map +1 -0
- package/dist/lib/config/cache.d.ts +47 -0
- package/dist/lib/config/cache.d.ts.map +1 -0
- package/dist/lib/config/cache.js +84 -0
- package/dist/lib/config/cache.js.map +1 -0
- package/dist/lib/config/credentials.d.ts +33 -0
- package/dist/lib/config/credentials.d.ts.map +1 -0
- package/dist/lib/config/credentials.js +70 -0
- package/dist/lib/config/credentials.js.map +1 -0
- package/dist/lib/config/getters.d.ts +28 -0
- package/dist/lib/config/getters.d.ts.map +1 -0
- package/dist/lib/config/getters.js +65 -0
- package/dist/lib/config/getters.js.map +1 -0
- package/dist/lib/config/index.d.ts +17 -0
- package/dist/lib/config/index.d.ts.map +1 -0
- package/dist/lib/config/index.js +21 -0
- package/dist/lib/config/index.js.map +1 -0
- package/dist/lib/config/migration.d.ts +10 -0
- package/dist/lib/config/migration.d.ts.map +1 -0
- package/dist/lib/config/migration.js +59 -0
- package/dist/lib/config/migration.js.map +1 -0
- package/dist/lib/config/plugins.d.ts +25 -0
- package/dist/lib/config/plugins.d.ts.map +1 -0
- package/dist/lib/config/plugins.js +58 -0
- package/dist/lib/config/plugins.js.map +1 -0
- package/dist/lib/config/profile.d.ts +42 -0
- package/dist/lib/config/profile.d.ts.map +1 -0
- package/dist/lib/config/profile.js +154 -0
- package/dist/lib/config/profile.js.map +1 -0
- package/dist/lib/config/store.d.ts +23 -0
- package/dist/lib/config/store.d.ts.map +1 -0
- package/dist/lib/config/store.js +41 -0
- package/dist/lib/config/store.js.map +1 -0
- package/dist/lib/config/types.d.ts +44 -0
- package/dist/lib/config/types.d.ts.map +1 -0
- package/dist/lib/config/types.js +8 -0
- package/dist/lib/config/types.js.map +1 -0
- package/dist/lib/config/validation.d.ts +38 -0
- package/dist/lib/config/validation.d.ts.map +1 -0
- package/dist/lib/config/validation.js +146 -0
- package/dist/lib/config/validation.js.map +1 -0
- package/dist/lib/config.d.ts +5 -158
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +26 -424
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/constants.d.ts +65 -0
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/lib/constants.js +90 -0
- package/dist/lib/constants.js.map +1 -0
- package/dist/lib/db.d.ts +4 -0
- package/dist/lib/db.d.ts.map +1 -1
- package/dist/lib/db.js +77 -46
- package/dist/lib/db.js.map +1 -1
- package/dist/lib/format-helpers.d.ts +63 -0
- package/dist/lib/format-helpers.d.ts.map +1 -0
- package/dist/lib/format-helpers.js +219 -0
- package/dist/lib/format-helpers.js.map +1 -0
- package/dist/lib/visual.d.ts +22 -0
- package/dist/lib/visual.d.ts.map +1 -1
- package/dist/lib/visual.js +83 -0
- package/dist/lib/visual.js.map +1 -1
- package/dist/services/signature-verifier.d.ts.map +1 -1
- package/dist/services/signature-verifier.js +11 -4
- package/dist/services/signature-verifier.js.map +1 -1
- package/dist/services/update-installer.d.ts +7 -0
- package/dist/services/update-installer.d.ts.map +1 -1
- package/dist/services/update-installer.js +58 -19
- package/dist/services/update-installer.js.map +1 -1
- package/package.json +1 -1
package/dist/lib/config.js
CHANGED
|
@@ -1,425 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
export function getActiveProfileName() {
|
|
28
|
-
return runtimeProfileOverride ?? process.env.ZNVAULT_PROFILE ?? store.get('activeProfile');
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Migrate legacy config to profile-based config
|
|
32
|
-
*/
|
|
33
|
-
function migrateIfNeeded() {
|
|
34
|
-
// Check if we have legacy config (url at root level but no profiles)
|
|
35
|
-
const legacyUrl = store.get('url');
|
|
36
|
-
const profiles = store.get('profiles');
|
|
37
|
-
if (legacyUrl && Object.keys(profiles).length === 0) {
|
|
38
|
-
// Migrate legacy config to default profile
|
|
39
|
-
const defaultProfile = {
|
|
40
|
-
url: legacyUrl,
|
|
41
|
-
insecure: store.get('insecure') ?? CONFIG_DEFAULTS.insecure,
|
|
42
|
-
timeout: store.get('timeout') ?? CONFIG_DEFAULTS.timeout,
|
|
43
|
-
defaultTenant: store.get('defaultTenant'),
|
|
44
|
-
credentials: store.get('credentials'),
|
|
45
|
-
};
|
|
46
|
-
store.set('profiles', { [DEFAULT_PROFILE]: defaultProfile });
|
|
47
|
-
store.set('activeProfile', DEFAULT_PROFILE);
|
|
48
|
-
// Clean up legacy keys
|
|
49
|
-
store.delete('url');
|
|
50
|
-
store.delete('insecure');
|
|
51
|
-
store.delete('timeout');
|
|
52
|
-
store.delete('defaultTenant');
|
|
53
|
-
store.delete('credentials');
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
// Run migration on module load
|
|
57
|
-
migrateIfNeeded();
|
|
58
|
-
/**
|
|
59
|
-
* Get the current profile data
|
|
60
|
-
*/
|
|
61
|
-
function getCurrentProfile() {
|
|
62
|
-
const profileName = getActiveProfileName();
|
|
63
|
-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- needed for test mocks
|
|
64
|
-
const profiles = store.get('profiles') ?? {};
|
|
65
|
-
return profiles[profileName] ?? {
|
|
66
|
-
url: CONFIG_DEFAULTS.url,
|
|
67
|
-
insecure: CONFIG_DEFAULTS.insecure,
|
|
68
|
-
timeout: CONFIG_DEFAULTS.timeout,
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Save profile data
|
|
73
|
-
*/
|
|
74
|
-
function saveProfile(profileName, profile) {
|
|
75
|
-
const profiles = store.get('profiles');
|
|
76
|
-
profiles[profileName] = profile;
|
|
77
|
-
store.set('profiles', profiles);
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Get configuration value with priority:
|
|
81
|
-
* 1. Environment variable
|
|
82
|
-
* 2. Current profile config
|
|
83
|
-
* 3. Default value
|
|
84
|
-
*/
|
|
85
|
-
export function getConfig() {
|
|
86
|
-
const envUrl = process.env.ZNVAULT_URL;
|
|
87
|
-
const envInsecure = process.env.ZNVAULT_INSECURE;
|
|
88
|
-
const envTimeout = process.env.ZNVAULT_TIMEOUT;
|
|
89
|
-
const profile = getCurrentProfile();
|
|
90
|
-
return {
|
|
91
|
-
url: envUrl ?? profile.url,
|
|
92
|
-
insecure: envInsecure === 'true' || profile.insecure,
|
|
93
|
-
timeout: envTimeout ? parseInt(envTimeout, 10) : profile.timeout,
|
|
94
|
-
defaultTenant: profile.defaultTenant,
|
|
95
|
-
credentials: profile.credentials,
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Get a specific config value
|
|
100
|
-
*/
|
|
101
|
-
export function getConfigValue(key) {
|
|
102
|
-
return getConfig()[key];
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Set a config value in the current profile
|
|
106
|
-
*/
|
|
107
|
-
export function setConfigValue(key, value) {
|
|
108
|
-
const profileName = getActiveProfileName();
|
|
109
|
-
const profile = getCurrentProfile();
|
|
110
|
-
// Type-safe assignment using a properly typed intermediate object
|
|
111
|
-
const updatedProfile = {
|
|
112
|
-
...profile,
|
|
113
|
-
[key]: value,
|
|
114
|
-
};
|
|
115
|
-
saveProfile(profileName, updatedProfile);
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Store credentials after login
|
|
119
|
-
*/
|
|
120
|
-
export function storeCredentials(credentials) {
|
|
121
|
-
const profileName = getActiveProfileName();
|
|
122
|
-
const profile = getCurrentProfile();
|
|
123
|
-
profile.credentials = credentials;
|
|
124
|
-
saveProfile(profileName, profile);
|
|
125
|
-
}
|
|
126
|
-
/**
|
|
127
|
-
* Clear stored credentials
|
|
128
|
-
*/
|
|
129
|
-
export function clearCredentials() {
|
|
130
|
-
const profileName = getActiveProfileName();
|
|
131
|
-
const profile = getCurrentProfile();
|
|
132
|
-
delete profile.credentials;
|
|
133
|
-
saveProfile(profileName, profile);
|
|
134
|
-
}
|
|
135
|
-
/**
|
|
136
|
-
* Get stored credentials
|
|
137
|
-
*/
|
|
138
|
-
export function getCredentials() {
|
|
139
|
-
return getCurrentProfile().credentials;
|
|
140
|
-
}
|
|
141
|
-
/**
|
|
142
|
-
* Check if credentials are expired
|
|
143
|
-
*/
|
|
144
|
-
export function isTokenExpired() {
|
|
145
|
-
const credentials = getCredentials();
|
|
146
|
-
if (!credentials)
|
|
147
|
-
return true;
|
|
148
|
-
// Add 60 second buffer
|
|
149
|
-
return Date.now() >= (credentials.expiresAt - 60000);
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Get the effective URL (from env or config)
|
|
153
|
-
*/
|
|
154
|
-
export function getEffectiveUrl() {
|
|
155
|
-
return process.env.ZNVAULT_URL ?? getCurrentProfile().url;
|
|
156
|
-
}
|
|
157
|
-
/**
|
|
158
|
-
* Check if we have API key authentication (env or stored in profile)
|
|
159
|
-
*/
|
|
160
|
-
export function hasApiKey() {
|
|
161
|
-
return !!(process.env.ZNVAULT_API_KEY ?? getCurrentProfile().apiKey);
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Get API key (environment takes precedence over stored)
|
|
165
|
-
*/
|
|
166
|
-
export function getApiKey() {
|
|
167
|
-
return process.env.ZNVAULT_API_KEY ?? getCurrentProfile().apiKey;
|
|
168
|
-
}
|
|
169
|
-
/**
|
|
170
|
-
* Store API key in current profile
|
|
171
|
-
*/
|
|
172
|
-
export function storeApiKey(apiKey, keyId, keyName) {
|
|
173
|
-
const profileName = getActiveProfileName();
|
|
174
|
-
const profile = getCurrentProfile();
|
|
175
|
-
profile.apiKey = apiKey;
|
|
176
|
-
if (keyId)
|
|
177
|
-
profile.apiKeyId = keyId;
|
|
178
|
-
if (keyName)
|
|
179
|
-
profile.apiKeyName = keyName;
|
|
180
|
-
saveProfile(profileName, profile);
|
|
181
|
-
}
|
|
182
|
-
/**
|
|
183
|
-
* Get stored API key info from current profile
|
|
184
|
-
*/
|
|
185
|
-
export function getStoredApiKeyInfo() {
|
|
186
|
-
const profile = getCurrentProfile();
|
|
187
|
-
if (!profile.apiKey)
|
|
188
|
-
return undefined;
|
|
189
|
-
return {
|
|
190
|
-
key: profile.apiKey,
|
|
191
|
-
id: profile.apiKeyId,
|
|
192
|
-
name: profile.apiKeyName,
|
|
193
|
-
};
|
|
194
|
-
}
|
|
195
|
-
/**
|
|
196
|
-
* Clear stored API key from current profile
|
|
197
|
-
*/
|
|
198
|
-
export function clearApiKey() {
|
|
199
|
-
const profileName = getActiveProfileName();
|
|
200
|
-
const profile = getCurrentProfile();
|
|
201
|
-
delete profile.apiKey;
|
|
202
|
-
delete profile.apiKeyId;
|
|
203
|
-
delete profile.apiKeyName;
|
|
204
|
-
saveProfile(profileName, profile);
|
|
205
|
-
}
|
|
206
|
-
/**
|
|
207
|
-
* Get stored API key from current profile
|
|
208
|
-
*/
|
|
209
|
-
export function getStoredApiKey() {
|
|
210
|
-
return getCurrentProfile().apiKey;
|
|
211
|
-
}
|
|
212
|
-
/**
|
|
213
|
-
* Check if we have username/password in environment
|
|
214
|
-
*/
|
|
215
|
-
export function hasEnvCredentials() {
|
|
216
|
-
return !!(process.env.ZNVAULT_USERNAME && process.env.ZNVAULT_PASSWORD);
|
|
217
|
-
}
|
|
218
|
-
/**
|
|
219
|
-
* Get credentials from environment
|
|
220
|
-
*/
|
|
221
|
-
export function getEnvCredentials() {
|
|
222
|
-
const username = process.env.ZNVAULT_USERNAME;
|
|
223
|
-
const password = process.env.ZNVAULT_PASSWORD;
|
|
224
|
-
if (username && password) {
|
|
225
|
-
return { username, password };
|
|
226
|
-
}
|
|
227
|
-
return undefined;
|
|
228
|
-
}
|
|
229
|
-
/**
|
|
230
|
-
* Reset all configuration
|
|
231
|
-
*/
|
|
232
|
-
export function resetConfig() {
|
|
233
|
-
store.clear();
|
|
234
|
-
}
|
|
235
|
-
/**
|
|
236
|
-
* Get config file path (for display purposes)
|
|
237
|
-
*/
|
|
238
|
-
export function getConfigPath() {
|
|
239
|
-
return store.path;
|
|
240
|
-
}
|
|
241
|
-
/**
|
|
242
|
-
* Get all stored config (for display)
|
|
243
|
-
*/
|
|
244
|
-
export function getAllConfig() {
|
|
245
|
-
const profile = getCurrentProfile();
|
|
246
|
-
return {
|
|
247
|
-
activeProfile: getActiveProfileName(),
|
|
248
|
-
url: profile.url,
|
|
249
|
-
insecure: profile.insecure,
|
|
250
|
-
timeout: profile.timeout,
|
|
251
|
-
defaultTenant: profile.defaultTenant,
|
|
252
|
-
hasCredentials: !!profile.credentials,
|
|
253
|
-
hasApiKey: !!profile.apiKey,
|
|
254
|
-
apiKeyPrefix: profile.apiKey ? profile.apiKey.substring(0, 12) + '...' : undefined,
|
|
255
|
-
configPath: store.path,
|
|
256
|
-
};
|
|
257
|
-
}
|
|
258
|
-
// ============================================================================
|
|
259
|
-
// Profile Management
|
|
260
|
-
// ============================================================================
|
|
261
|
-
/**
|
|
262
|
-
* List all profiles
|
|
263
|
-
*/
|
|
264
|
-
export function listProfiles() {
|
|
265
|
-
const profiles = store.get('profiles');
|
|
266
|
-
const activeProfile = getActiveProfileName();
|
|
267
|
-
return Object.entries(profiles).map(([name, profile]) => ({
|
|
268
|
-
name,
|
|
269
|
-
url: profile.url,
|
|
270
|
-
active: name === activeProfile,
|
|
271
|
-
hasCredentials: !!profile.credentials,
|
|
272
|
-
hasApiKey: !!profile.apiKey,
|
|
273
|
-
}));
|
|
274
|
-
}
|
|
275
|
-
/**
|
|
276
|
-
* Create a new profile
|
|
277
|
-
*/
|
|
278
|
-
export function createProfile(name, options) {
|
|
279
|
-
const profiles = store.get('profiles');
|
|
280
|
-
if (name in profiles) {
|
|
281
|
-
throw new Error(`Profile '${name}' already exists`);
|
|
282
|
-
}
|
|
283
|
-
let newProfile;
|
|
284
|
-
if (options.copyFrom) {
|
|
285
|
-
if (!(options.copyFrom in profiles)) {
|
|
286
|
-
throw new Error(`Source profile '${options.copyFrom}' not found`);
|
|
287
|
-
}
|
|
288
|
-
newProfile = { ...profiles[options.copyFrom] };
|
|
289
|
-
// Don't copy credentials
|
|
290
|
-
newProfile.credentials = undefined;
|
|
291
|
-
}
|
|
292
|
-
else {
|
|
293
|
-
newProfile = {
|
|
294
|
-
url: options.url ?? CONFIG_DEFAULTS.url,
|
|
295
|
-
insecure: options.insecure ?? CONFIG_DEFAULTS.insecure,
|
|
296
|
-
timeout: CONFIG_DEFAULTS.timeout,
|
|
297
|
-
};
|
|
298
|
-
}
|
|
299
|
-
if (options.url) {
|
|
300
|
-
newProfile.url = options.url;
|
|
301
|
-
}
|
|
302
|
-
if (options.insecure !== undefined) {
|
|
303
|
-
newProfile.insecure = options.insecure;
|
|
304
|
-
}
|
|
305
|
-
profiles[name] = newProfile;
|
|
306
|
-
store.set('profiles', profiles);
|
|
307
|
-
}
|
|
308
|
-
/**
|
|
309
|
-
* Delete a profile
|
|
310
|
-
*/
|
|
311
|
-
export function deleteProfile(name) {
|
|
312
|
-
if (name === DEFAULT_PROFILE) {
|
|
313
|
-
throw new Error(`Cannot delete the '${DEFAULT_PROFILE}' profile`);
|
|
314
|
-
}
|
|
315
|
-
const profiles = store.get('profiles');
|
|
316
|
-
if (!(name in profiles)) {
|
|
317
|
-
throw new Error(`Profile '${name}' not found`);
|
|
318
|
-
}
|
|
319
|
-
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
|
|
320
|
-
delete profiles[name];
|
|
321
|
-
store.set('profiles', profiles);
|
|
322
|
-
// If we deleted the active profile, switch to default
|
|
323
|
-
if (store.get('activeProfile') === name) {
|
|
324
|
-
store.set('activeProfile', DEFAULT_PROFILE);
|
|
325
|
-
}
|
|
326
|
-
}
|
|
327
|
-
/**
|
|
328
|
-
* Switch active profile
|
|
329
|
-
*/
|
|
330
|
-
export function switchProfile(name) {
|
|
331
|
-
const profiles = store.get('profiles');
|
|
332
|
-
if (!(name in profiles)) {
|
|
333
|
-
throw new Error(`Profile '${name}' not found`);
|
|
334
|
-
}
|
|
335
|
-
store.set('activeProfile', name);
|
|
336
|
-
}
|
|
337
|
-
/**
|
|
338
|
-
* Get a specific profile
|
|
339
|
-
*/
|
|
340
|
-
export function getProfile(name) {
|
|
341
|
-
const profiles = store.get('profiles');
|
|
342
|
-
return profiles[name];
|
|
343
|
-
}
|
|
344
|
-
/**
|
|
345
|
-
* Rename a profile
|
|
346
|
-
*/
|
|
347
|
-
export function renameProfile(oldName, newName) {
|
|
348
|
-
if (oldName === DEFAULT_PROFILE) {
|
|
349
|
-
throw new Error(`Cannot rename the '${DEFAULT_PROFILE}' profile`);
|
|
350
|
-
}
|
|
351
|
-
const profiles = store.get('profiles');
|
|
352
|
-
if (!(oldName in profiles)) {
|
|
353
|
-
throw new Error(`Profile '${oldName}' not found`);
|
|
354
|
-
}
|
|
355
|
-
if (newName in profiles) {
|
|
356
|
-
throw new Error(`Profile '${newName}' already exists`);
|
|
357
|
-
}
|
|
358
|
-
profiles[newName] = profiles[oldName];
|
|
359
|
-
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
|
|
360
|
-
delete profiles[oldName];
|
|
361
|
-
store.set('profiles', profiles);
|
|
362
|
-
// Update active profile if needed
|
|
363
|
-
if (store.get('activeProfile') === oldName) {
|
|
364
|
-
store.set('activeProfile', newName);
|
|
365
|
-
}
|
|
366
|
-
}
|
|
367
|
-
// ============================================================================
|
|
368
|
-
// Plugin Management
|
|
369
|
-
// ============================================================================
|
|
370
|
-
/**
|
|
371
|
-
* Get all configured plugins
|
|
372
|
-
*/
|
|
373
|
-
export function getPlugins() {
|
|
374
|
-
return store.get('plugins') ?? [];
|
|
375
|
-
}
|
|
376
|
-
/**
|
|
377
|
-
* Add a plugin configuration
|
|
378
|
-
*/
|
|
379
|
-
export function addPlugin(config) {
|
|
380
|
-
const plugins = getPlugins();
|
|
381
|
-
const source = config.package || config.path;
|
|
382
|
-
// Check for duplicate
|
|
383
|
-
const existing = plugins.findIndex(p => (p.package || p.path) === source);
|
|
384
|
-
if (existing >= 0) {
|
|
385
|
-
// Update existing
|
|
386
|
-
plugins[existing] = config;
|
|
387
|
-
}
|
|
388
|
-
else {
|
|
389
|
-
plugins.push(config);
|
|
390
|
-
}
|
|
391
|
-
store.set('plugins', plugins);
|
|
392
|
-
}
|
|
393
|
-
/**
|
|
394
|
-
* Remove a plugin by package name or path
|
|
395
|
-
*/
|
|
396
|
-
export function removePlugin(packageOrPath) {
|
|
397
|
-
const plugins = getPlugins();
|
|
398
|
-
const initialLength = plugins.length;
|
|
399
|
-
const filtered = plugins.filter(p => p.package !== packageOrPath && p.path !== packageOrPath);
|
|
400
|
-
if (filtered.length < initialLength) {
|
|
401
|
-
store.set('plugins', filtered);
|
|
402
|
-
return true;
|
|
403
|
-
}
|
|
404
|
-
return false;
|
|
405
|
-
}
|
|
406
|
-
/**
|
|
407
|
-
* Enable or disable a plugin
|
|
408
|
-
*/
|
|
409
|
-
export function setPluginEnabled(packageOrPath, enabled) {
|
|
410
|
-
const plugins = getPlugins();
|
|
411
|
-
const plugin = plugins.find(p => p.package === packageOrPath || p.path === packageOrPath);
|
|
412
|
-
if (plugin) {
|
|
413
|
-
plugin.enabled = enabled;
|
|
414
|
-
store.set('plugins', plugins);
|
|
415
|
-
return true;
|
|
416
|
-
}
|
|
417
|
-
return false;
|
|
418
|
-
}
|
|
419
|
-
/**
|
|
420
|
-
* Clear all plugins
|
|
421
|
-
*/
|
|
422
|
-
export function clearPlugins() {
|
|
423
|
-
store.set('plugins', []);
|
|
424
|
-
}
|
|
1
|
+
// Path: src/lib/config.ts
|
|
2
|
+
/**
|
|
3
|
+
* Config module - backward compatibility re-export
|
|
4
|
+
*
|
|
5
|
+
* This file maintains backward compatibility by re-exporting from the
|
|
6
|
+
* modularized config/ directory structure.
|
|
7
|
+
*/
|
|
8
|
+
export { CONFIG_DEFAULTS, DEFAULT_PROFILE,
|
|
9
|
+
// Store
|
|
10
|
+
store, setRuntimeProfile, resetConfig, getConfigPath,
|
|
11
|
+
// Migration
|
|
12
|
+
ensureMigrated, resetMigrationState,
|
|
13
|
+
// Cache
|
|
14
|
+
invalidateProfileCache, invalidateAllProfileCaches, invalidateConfigCache, invalidateAllCaches, getCacheStats,
|
|
15
|
+
// Profile management
|
|
16
|
+
getActiveProfileName, getCurrentProfile, saveProfile, listProfiles, createProfile, deleteProfile, switchProfile, getProfile, renameProfile,
|
|
17
|
+
// Credentials
|
|
18
|
+
storeCredentials, clearCredentials, getCredentials, isTokenExpired, hasEnvCredentials, getEnvCredentials,
|
|
19
|
+
// API key
|
|
20
|
+
hasApiKey, getApiKey, storeApiKey, getStoredApiKeyInfo, clearApiKey, getStoredApiKey,
|
|
21
|
+
// Plugins
|
|
22
|
+
getPlugins, addPlugin, removePlugin, setPluginEnabled, clearPlugins,
|
|
23
|
+
// Config getters/setters
|
|
24
|
+
getConfig, getConfigValue, setConfigValue, getEffectiveUrl, getAllConfig,
|
|
25
|
+
// Validation
|
|
26
|
+
validateEnvironment, assertValidEnvironment, getValidatedEnvCredentials, getValidatedApiKey, getValidatedUrl, } from './config/index.js';
|
|
425
27
|
//# sourceMappingURL=config.js.map
|
package/dist/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAE1B;;;;;GAKG;AAEH,OAAO,EAML,eAAe,EACf,eAAe;AAEf,QAAQ;AACR,KAAK,EACL,iBAAiB,EACjB,WAAW,EACX,aAAa;AAEb,YAAY;AACZ,cAAc,EACd,mBAAmB;AAEnB,QAAQ;AACR,sBAAsB,EACtB,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,aAAa;AAEb,qBAAqB;AACrB,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,aAAa,EACb,aAAa,EACb,UAAU,EACV,aAAa;AAEb,cAAc;AACd,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,iBAAiB;AAEjB,UAAU;AACV,SAAS,EACT,SAAS,EACT,WAAW,EACX,mBAAmB,EACnB,WAAW,EACX,eAAe;AAEf,UAAU;AACV,UAAU,EACV,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,YAAY;AAEZ,yBAAyB;AACzB,SAAS,EACT,cAAc,EACd,cAAc,EACd,eAAe,EACf,YAAY;AAEZ,aAAa;AACb,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,kBAAkB,EAClB,eAAe,GAEhB,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI configuration constants
|
|
3
|
+
* Extracted magic numbers for maintainability and consistency
|
|
4
|
+
*/
|
|
5
|
+
/** Default HTTP request timeout in milliseconds */
|
|
6
|
+
export declare const DEFAULT_TIMEOUT_MS = 30000;
|
|
7
|
+
/** Token refresh buffer - refresh token this many ms before expiry */
|
|
8
|
+
export declare const TOKEN_REFRESH_BUFFER_MS = 60000;
|
|
9
|
+
/** Update check interval in milliseconds (24 hours) */
|
|
10
|
+
export declare const UPDATE_CHECK_INTERVAL_MS: number;
|
|
11
|
+
/** Spinner timeout for long operations */
|
|
12
|
+
export declare const SPINNER_TIMEOUT_MS = 120000;
|
|
13
|
+
/** Redis CLI ping timeout in milliseconds */
|
|
14
|
+
export declare const REDIS_PING_TIMEOUT_MS = 5000;
|
|
15
|
+
/** Redis Sentinel command timeout in milliseconds */
|
|
16
|
+
export declare const REDIS_SENTINEL_TIMEOUT_MS = 3000;
|
|
17
|
+
/** Config cache TTL in milliseconds */
|
|
18
|
+
export declare const CONFIG_CACHE_TTL_MS = 5000;
|
|
19
|
+
/** Default page size for list operations */
|
|
20
|
+
export declare const DEFAULT_PAGE_SIZE = 100;
|
|
21
|
+
/** Maximum page size for list operations */
|
|
22
|
+
export declare const MAX_PAGE_SIZE = 1000;
|
|
23
|
+
/** Default API key expiry in days */
|
|
24
|
+
export declare const DEFAULT_EXPIRY_DAYS = 90;
|
|
25
|
+
/** Maximum API key expiry in days (10 years) */
|
|
26
|
+
export declare const MAX_EXPIRY_DAYS = 3650;
|
|
27
|
+
/** Minimum password length */
|
|
28
|
+
export declare const MIN_PASSWORD_LENGTH = 12;
|
|
29
|
+
/** Maximum directory search depth for binary search */
|
|
30
|
+
export declare const MAX_DIRECTORY_DEPTH = 5;
|
|
31
|
+
/** Maximum file size to read (10MB) */
|
|
32
|
+
export declare const MAX_FILE_SIZE_BYTES: number;
|
|
33
|
+
/** Default number of items to display in lists */
|
|
34
|
+
export declare const DEFAULT_DISPLAY_LIMIT = 50;
|
|
35
|
+
/** Maximum string truncation length for table cells */
|
|
36
|
+
export declare const MAX_CELL_LENGTH = 50;
|
|
37
|
+
/** Maximum number of items in a formatted list summary */
|
|
38
|
+
export declare const MAX_LIST_ITEMS = 5;
|
|
39
|
+
export declare const SECONDS: {
|
|
40
|
+
readonly MINUTE: 60;
|
|
41
|
+
readonly HOUR: number;
|
|
42
|
+
readonly DAY: number;
|
|
43
|
+
readonly WEEK: number;
|
|
44
|
+
};
|
|
45
|
+
export declare const HTTP_STATUS: {
|
|
46
|
+
readonly OK: 200;
|
|
47
|
+
readonly CREATED: 201;
|
|
48
|
+
readonly NO_CONTENT: 204;
|
|
49
|
+
readonly BAD_REQUEST: 400;
|
|
50
|
+
readonly UNAUTHORIZED: 401;
|
|
51
|
+
readonly FORBIDDEN: 403;
|
|
52
|
+
readonly NOT_FOUND: 404;
|
|
53
|
+
readonly CONFLICT: 409;
|
|
54
|
+
readonly INTERNAL_ERROR: 500;
|
|
55
|
+
readonly SERVICE_UNAVAILABLE: 503;
|
|
56
|
+
};
|
|
57
|
+
export declare const EXIT_CODE: {
|
|
58
|
+
readonly SUCCESS: 0;
|
|
59
|
+
readonly ERROR: 1;
|
|
60
|
+
readonly INVALID_ARGS: 2;
|
|
61
|
+
readonly AUTH_REQUIRED: 3;
|
|
62
|
+
readonly PERMISSION_DENIED: 4;
|
|
63
|
+
readonly NOT_FOUND: 5;
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"AAEA;;;GAGG;AAMH,mDAAmD;AACnD,eAAO,MAAM,kBAAkB,QAAQ,CAAC;AAExC,sEAAsE;AACtE,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAE7C,uDAAuD;AACvD,eAAO,MAAM,wBAAwB,QAAsB,CAAC;AAE5D,0CAA0C;AAC1C,eAAO,MAAM,kBAAkB,SAAS,CAAC;AAEzC,6CAA6C;AAC7C,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAE1C,qDAAqD;AACrD,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAE9C,uCAAuC;AACvC,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAMxC,4CAA4C;AAC5C,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,4CAA4C;AAC5C,eAAO,MAAM,aAAa,OAAO,CAAC;AAMlC,qCAAqC;AACrC,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAEtC,gDAAgD;AAChD,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,8BAA8B;AAC9B,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAMtC,uDAAuD;AACvD,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC,uCAAuC;AACvC,eAAO,MAAM,mBAAmB,QAAmB,CAAC;AAMpD,kDAAkD;AAClD,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC,uDAAuD;AACvD,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,0DAA0D;AAC1D,eAAO,MAAM,cAAc,IAAI,CAAC;AAMhC,eAAO,MAAM,OAAO;;;;;CAKV,CAAC;AAMX,eAAO,MAAM,WAAW;;;;;;;;;;;CAWd,CAAC;AAMX,eAAO,MAAM,SAAS;;;;;;;CAOZ,CAAC"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
// Path: src/lib/constants.ts
|
|
2
|
+
/**
|
|
3
|
+
* CLI configuration constants
|
|
4
|
+
* Extracted magic numbers for maintainability and consistency
|
|
5
|
+
*/
|
|
6
|
+
// ============================================================================
|
|
7
|
+
// Timeouts and Intervals
|
|
8
|
+
// ============================================================================
|
|
9
|
+
/** Default HTTP request timeout in milliseconds */
|
|
10
|
+
export const DEFAULT_TIMEOUT_MS = 30000;
|
|
11
|
+
/** Token refresh buffer - refresh token this many ms before expiry */
|
|
12
|
+
export const TOKEN_REFRESH_BUFFER_MS = 60000;
|
|
13
|
+
/** Update check interval in milliseconds (24 hours) */
|
|
14
|
+
export const UPDATE_CHECK_INTERVAL_MS = 24 * 60 * 60 * 1000;
|
|
15
|
+
/** Spinner timeout for long operations */
|
|
16
|
+
export const SPINNER_TIMEOUT_MS = 120000;
|
|
17
|
+
/** Redis CLI ping timeout in milliseconds */
|
|
18
|
+
export const REDIS_PING_TIMEOUT_MS = 5000;
|
|
19
|
+
/** Redis Sentinel command timeout in milliseconds */
|
|
20
|
+
export const REDIS_SENTINEL_TIMEOUT_MS = 3000;
|
|
21
|
+
/** Config cache TTL in milliseconds */
|
|
22
|
+
export const CONFIG_CACHE_TTL_MS = 5000;
|
|
23
|
+
// ============================================================================
|
|
24
|
+
// Pagination
|
|
25
|
+
// ============================================================================
|
|
26
|
+
/** Default page size for list operations */
|
|
27
|
+
export const DEFAULT_PAGE_SIZE = 100;
|
|
28
|
+
/** Maximum page size for list operations */
|
|
29
|
+
export const MAX_PAGE_SIZE = 1000;
|
|
30
|
+
// ============================================================================
|
|
31
|
+
// API Key and Token Settings
|
|
32
|
+
// ============================================================================
|
|
33
|
+
/** Default API key expiry in days */
|
|
34
|
+
export const DEFAULT_EXPIRY_DAYS = 90;
|
|
35
|
+
/** Maximum API key expiry in days (10 years) */
|
|
36
|
+
export const MAX_EXPIRY_DAYS = 3650;
|
|
37
|
+
/** Minimum password length */
|
|
38
|
+
export const MIN_PASSWORD_LENGTH = 12;
|
|
39
|
+
// ============================================================================
|
|
40
|
+
// File System
|
|
41
|
+
// ============================================================================
|
|
42
|
+
/** Maximum directory search depth for binary search */
|
|
43
|
+
export const MAX_DIRECTORY_DEPTH = 5;
|
|
44
|
+
/** Maximum file size to read (10MB) */
|
|
45
|
+
export const MAX_FILE_SIZE_BYTES = 10 * 1024 * 1024;
|
|
46
|
+
// ============================================================================
|
|
47
|
+
// Display Settings
|
|
48
|
+
// ============================================================================
|
|
49
|
+
/** Default number of items to display in lists */
|
|
50
|
+
export const DEFAULT_DISPLAY_LIMIT = 50;
|
|
51
|
+
/** Maximum string truncation length for table cells */
|
|
52
|
+
export const MAX_CELL_LENGTH = 50;
|
|
53
|
+
/** Maximum number of items in a formatted list summary */
|
|
54
|
+
export const MAX_LIST_ITEMS = 5;
|
|
55
|
+
// ============================================================================
|
|
56
|
+
// Time Constants (in seconds)
|
|
57
|
+
// ============================================================================
|
|
58
|
+
export const SECONDS = {
|
|
59
|
+
MINUTE: 60,
|
|
60
|
+
HOUR: 60 * 60,
|
|
61
|
+
DAY: 24 * 60 * 60,
|
|
62
|
+
WEEK: 7 * 24 * 60 * 60,
|
|
63
|
+
};
|
|
64
|
+
// ============================================================================
|
|
65
|
+
// HTTP Status Codes
|
|
66
|
+
// ============================================================================
|
|
67
|
+
export const HTTP_STATUS = {
|
|
68
|
+
OK: 200,
|
|
69
|
+
CREATED: 201,
|
|
70
|
+
NO_CONTENT: 204,
|
|
71
|
+
BAD_REQUEST: 400,
|
|
72
|
+
UNAUTHORIZED: 401,
|
|
73
|
+
FORBIDDEN: 403,
|
|
74
|
+
NOT_FOUND: 404,
|
|
75
|
+
CONFLICT: 409,
|
|
76
|
+
INTERNAL_ERROR: 500,
|
|
77
|
+
SERVICE_UNAVAILABLE: 503,
|
|
78
|
+
};
|
|
79
|
+
// ============================================================================
|
|
80
|
+
// Exit Codes
|
|
81
|
+
// ============================================================================
|
|
82
|
+
export const EXIT_CODE = {
|
|
83
|
+
SUCCESS: 0,
|
|
84
|
+
ERROR: 1,
|
|
85
|
+
INVALID_ARGS: 2,
|
|
86
|
+
AUTH_REQUIRED: 3,
|
|
87
|
+
PERMISSION_DENIED: 4,
|
|
88
|
+
NOT_FOUND: 5,
|
|
89
|
+
};
|
|
90
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAE7B;;;GAGG;AAEH,+EAA+E;AAC/E,yBAAyB;AACzB,+EAA+E;AAE/E,mDAAmD;AACnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC;AAExC,sEAAsE;AACtE,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAE7C,uDAAuD;AACvD,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE5D,0CAA0C;AAC1C,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC,6CAA6C;AAC7C,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAE1C,qDAAqD;AACrD,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC;AAE9C,uCAAuC;AACvC,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAExC,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,4CAA4C;AAC5C,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAErC,4CAA4C;AAC5C,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC;AAElC,+EAA+E;AAC/E,6BAA6B;AAC7B,+EAA+E;AAE/E,qCAAqC;AACrC,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAEtC,gDAAgD;AAChD,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AAEpC,8BAA8B;AAC9B,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAEtC,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,uDAAuD;AACvD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAErC,uCAAuC;AACvC,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEpD,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,kDAAkD;AAClD,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAExC,uDAAuD;AACvD,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAElC,0DAA0D;AAC1D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC;AAEhC,+EAA+E;AAC/E,8BAA8B;AAC9B,+EAA+E;AAE/E,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,EAAE,GAAG,EAAE;IACb,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;IACjB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;CACd,CAAC;AAEX,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,EAAE,EAAE,GAAG;IACP,OAAO,EAAE,GAAG;IACZ,UAAU,EAAE,GAAG;IACf,WAAW,EAAE,GAAG;IAChB,YAAY,EAAE,GAAG;IACjB,SAAS,EAAE,GAAG;IACd,SAAS,EAAE,GAAG;IACd,QAAQ,EAAE,GAAG;IACb,cAAc,EAAE,GAAG;IACnB,mBAAmB,EAAE,GAAG;CAChB,CAAC;AAEX,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;IACR,YAAY,EAAE,CAAC;IACf,aAAa,EAAE,CAAC;IAChB,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC;CACJ,CAAC"}
|
package/dist/lib/db.d.ts
CHANGED
|
@@ -16,6 +16,10 @@ export declare class LocalDBClient {
|
|
|
16
16
|
private getVaultVersion;
|
|
17
17
|
private getPostgresStatus;
|
|
18
18
|
private getRedisStatus;
|
|
19
|
+
/**
|
|
20
|
+
* Execute a command asynchronously with timeout
|
|
21
|
+
*/
|
|
22
|
+
private execAsync;
|
|
19
23
|
private getClusterInfoFromRedis;
|
|
20
24
|
clusterStatus(): Promise<ClusterStatus>;
|
|
21
25
|
listTenants(options?: {
|
package/dist/lib/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/lib/db.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/lib/db.ts"],"names":[],"mappings":"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"}
|