You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
633 B
30 lines
633 B
//
|
|
'use strict';
|
|
|
|
const parseJson = require('parse-json');
|
|
const yaml = require('js-yaml');
|
|
const importFresh = require('import-fresh');
|
|
|
|
function loadJs(filepath ) {
|
|
const result = importFresh(filepath);
|
|
return result;
|
|
}
|
|
|
|
function loadJson(filepath , content ) {
|
|
try {
|
|
return parseJson(content);
|
|
} catch (err) {
|
|
err.message = `JSON Error in ${filepath}:\n${err.message}`;
|
|
throw err;
|
|
}
|
|
}
|
|
|
|
function loadYaml(filepath , content ) {
|
|
return yaml.safeLoad(content, { filename: filepath });
|
|
}
|
|
|
|
module.exports = {
|
|
loadJs,
|
|
loadJson,
|
|
loadYaml,
|
|
};
|
|
|