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, |
|
};
|
|
|