All files / piscosour/lib/utils userConfig.js

0% Statements 0/20
0% Branches 0/4
0% Functions 0/4
0% Lines 0/17
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 28 29 30 31 32 33 34                                                                   
'use strict';
 
const fs = require('fs');
const path = require('path');
 
const _ = require('lodash');
 
const fsUtils = require('./fsUtils');
 
const piscosourDir = '.piscosour';
const piscosourJson = 'piscosour.json';
const home = process.env.HOME ? process.env.HOME : process.env.HOMEPATH;
const userConfigPath = path.join(home, piscosourDir, piscosourJson);
 
const read = () => fsUtils.readConfig(userConfigPath, true);
 
const write = (userConfig) => {
  if (!fsUtils.exists(userConfigPath)) {
    fsUtils.createDir(path.join(home, piscosourDir));
  }
  fs.writeFileSync(userConfigPath, JSON.stringify(userConfig, null, 2));
  return userConfig;
};
 
const get = (key) => _.get(read(), key, null);
 
const set = (key, value) => write(_.set(read(), key, value));
 
module.exports = {
  read: read,
  write: write,
  get: get,
  set: set
};