UNPKG

@lcap/cli

Version:

utils for lcap

56 lines 1.76 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getSecretByOption = exports.tokenCheck = exports.tokenOptions = exports.transformSecretToToken = exports.getSecretByToken = exports.getSecretByFile = void 0; const promises_1 = require("fs/promises"); const path_1 = require("path"); function getSecretByFile(file) { return (0, promises_1.readFile)(file, 'utf-8').then((val) => { try { return JSON.parse(val); } catch (e) { return val; } }); } exports.getSecretByFile = getSecretByFile; function getSecretByToken(token) { const content = Buffer.from(token, 'base64').toString('utf-8'); try { return JSON.parse(content); } catch (err) { return token; } } exports.getSecretByToken = getSecretByToken; function transformSecretToToken(data) { return Buffer.from(JSON.stringify(data)).toString('base64'); } exports.transformSecretToToken = transformSecretToToken; exports.tokenOptions = { token: { type: 'string', describe: '发布密钥', }, tokenFile: { type: 'string', describe: '发布密钥所在文件', }, }; function tokenCheck(argv) { if (!argv.token && !argv.tokenFile) { throw new Error('以下参数至少需要填入一个:token, tokenFile'); } return true; } exports.tokenCheck = tokenCheck; async function getSecretByOption(root, opt) { return opt.token ? getSecretByToken(opt.token) : opt.tokenFile ? getSecretByFile((0, path_1.isAbsolute)(opt.tokenFile) ? opt.tokenFile : (0, path_1.join)(root, opt.tokenFile)) : ''; } exports.getSecretByOption = getSecretByOption; //# sourceMappingURL=secret.js.map