UNPKG

cloakx

Version:

Cloakx is a secure, lightweight CLI tool to manage your development secrets locally — no cloud, no hassle. Store, retrieve, and manage secrets across projects with encryption and ease. 🔐 Perfect for solo devs, indie hackers, and teams who value speed, si

38 lines (37 loc) 1.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.updateSecret = updateSecret; // src/commands/update.ts const commander_1 = require("commander"); const vault_1 = require("../utils/vault"); const crypto_1 = require("../utils/crypto"); const session_1 = require("../utils/session"); /** * Update a secret value by key. */ async function updateSecret(key, value) { try { const vault = (0, vault_1.loadVault)(); if (!vault[key]) { console.error(`❌ Key "${key}" does not exist.`); process.exit(1); } const password = await (0, session_1.getSessionPassword)(); const encrypted = (0, crypto_1.encrypt)(value, password); vault[key] = encrypted; (0, vault_1.saveVault)(vault); console.log(`✅ Key "${key}" has been updated.`); } catch (err) { console.error(`❌ Error updating key: ${err.message || err}`); process.exit(1); } } const command = new commander_1.Command('upd') .description('Update a secret by key') .argument('<key>', 'Key of the secret to update') .argument('<value>', 'New value of the secret') .action(async (key, value) => { await updateSecret(key, value); }); exports.default = command;