UNPKG

@sap/cli-core

Version:

Command-Line Interface (CLI) Core Module

35 lines (34 loc) 1.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.remove = exports.set = exports.get = void 0; const cache_1 = require("../cache"); const logger_1 = require("../logger"); const SETTINGS_FILE = "settings.json"; const getLogger = () => (0, logger_1.get)("settings"); const get = async () => { try { return JSON.parse(await (0, cache_1.readFile)(SETTINGS_FILE)); } catch (err) { const { debug } = getLogger(); debug("failed to read settings file", err); return {}; } }; exports.get = get; const set = async (key, value) => { const settings = await (0, exports.get)(); settings[key] = value; await (0, cache_1.writeFile)(SETTINGS_FILE, JSON.stringify(settings)); const { debug } = getLogger(); debug(`updated key ${key}, value ${value}`); }; exports.set = set; const remove = async (key) => { const settings = await (0, exports.get)(); delete settings[key]; await (0, cache_1.writeFile)(SETTINGS_FILE, JSON.stringify(settings)); const { debug } = getLogger(); debug(`removed key ${key}`); }; exports.remove = remove;