flow-up
Version:
Easily add flowtype to your codebase
62 lines (49 loc) • 1.44 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
var _fs = require('./util/fs');
const getINIConfig = flowConfig => {
const sections = Object.keys(flowConfig);
let INIConfig = '';
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
try {
for (var _iterator = sections[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
const section = _step.value;
INIConfig += `[${section}]\n`;
if (!Array.isArray(flowConfig[section])) {
throw new Error('Invalid flow configuration provided. Each section must be an array of string values.');
}
flowConfig[section].forEach(item => {
INIConfig += `${item}\n`;
});
INIConfig += '\n';
}
} catch (err) {
_didIteratorError = true;
_iteratorError = err;
} finally {
try {
if (!_iteratorNormalCompletion && _iterator.return) {
_iterator.return();
}
} finally {
if (_didIteratorError) {
throw _iteratorError;
}
}
}
return INIConfig;
};
function flowConfigWriter(flowConfig, filepath) {
const flowconfigINI = getINIConfig(flowConfig);
// @TODO: promisify the file write
try {
(0, _fs.writeFile)(filepath, flowconfigINI);
} catch (err) {
throw err;
}
}
exports.default = flowConfigWriter;
;