Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
fs.readFile(jsonLocation, function(resumeJsonDoesNotExist, data) {
if (resumeJsonDoesNotExist) {
if (['export', 'test'].indexOf(process.argv[2]) !== -1) { // removed serve. test this later
console.log('There is no resume.json file located in this directory');
console.log('Type: `resume init` to initialize a new resume');
return;
}
var resumeJson = false;
callback(null);
} else {
try {
jsonlint.parse(String(data));
var resumeJson = JSON.parse(data);
callback(null, resumeJson);
} catch (error) {
callback(error);
}
}
});
}
fs.readFile('./resume.json', function(resumeJsonDoesNotExist, data) {
if (resumeJsonDoesNotExist) {
if (['export', 'publish', 'test'].indexOf(process.argv[2]) !== -1) { // removed serve. test this later
console.log('There is no resume.json file located in this directory');
console.log('Type: `resume init` to initialize a new resume');
}
var resumeJson = false;
callback(null);
} else {
try {
jsonlint.parse(String(data));
var resumeJson = JSON.parse(data);
callback(null, resumeJson);
} catch (error) {
callback(error);
}
}
});
},
export function parseJSONFile(filePath) {
const contents = fs.readFileSync(filePath, 'utf8');
let data;
try {
data = JSON.parse(contents);
} catch (e) {
try {
jsonlintParse(contents);
} catch (egood) {
// Ugly hack to get the line number out of the jsonlint error
const lineRegex = /line ([0-9]+)/g;
const results = lineRegex.exec(egood.message);
let line = 0;
if (results !== null) {
line = parseInt(results[1], 10);
}
// Return the best error we can
throw new ParseError(`${filePath}:${line}: ${egood}`);
}
}
return data;
}
_validateResponseText(jsonString) {
try {
JSON.parse(jsonString);
return {
valid: true,
error: ''
};
}
catch (ex) {
try {
jsonlint.parse(jsonString);
return {
valid: true,
error: ''
};
} catch (ex) {
// retrieve line number from error
let lineMatch = ex.message.match(/line ([0-9]*)/);
if (lineMatch && lineMatch.length > 1) {
//Highlight error line.
this.highlightErrorLine(+lineMatch[1] - 1);
}
return {
valid: false,
error: ex.message.toString()
};
fs.readFile(file, {encoding: 'utf-8'}, function(err, src){
var errors;
try{
jsonlint(src);
}catch(err){
errors = err.message;
}
done(null, errors ? [file, errors] : null);
});
},
function validateConfigFile (fileContents) {
try {
jsonlint.parse(fileContents);
}
catch (e) {
var msgArr = e.message.split('\n');
var msg = msgArr[1] + '\n' + msgArr[2];
feedback.info();
feedback.error('Invalid Divshot configuration file. ' + msgArr[0] + '\n');
feedback.info(msg);
process.exit(1);
}
}
return new Promise(async (resolve, reject) => {
let playbook;
try {
let json = fs.readFileSync(filePath).toString('utf-8')
playbook = jsonlint.parse(json);
} catch (ex) {
return reject(ex)
}
resolve(playbook);
})
}
return new Promise(async (resolve, reject) => {
let playbook;
try {
let json = fs.readFileSync(filePath).toString('utf-8')
playbook = jsonlint.parse(json);
} catch (ex) {
return reject(ex)
}
resolve(playbook);
})
}
function json(data, cb) {
var jsonlint = require('jsonlint');
var result;
try{
result = jsonlint.parse(data);
}catch(e) {
return cb(e);
}
cb(null, result);
}
function parseManifestAsCollection(wFile) {
var wDir = path.dirname(wFile);
var manifest;
try {
manifest = jsonlint.parse(fs.readFileSync(wFile, 'utf8'));
} catch (e) {
exports.die('Error parsing "' + wFile + '"', e);
}
return {
dir: wDir,
manifest: manifest
};
}