Spaces:
Sleeping
Sleeping
File size: 1,358 Bytes
b593f0b | 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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | #!/usr/bin/env node
var argv = require('minimist')(process.argv.slice(2), {
boolean: 'json',
boolean: 'mapbox-api-supported'
}),
validate = require('../').validate,
validateMapboxApiSupported = require('../').validateMapboxApiSupported
rw = require('rw'),
status = 0;
if (argv.help || argv.h || (!argv._.length && process.stdin.isTTY)) {
return help();
}
if (!argv._.length) {
argv._.push('/dev/stdin');
}
argv._.forEach(function(file) {
var errors;
if (argv['mapbox-api-supported']) {
errors = validateMapboxApiSupported(rw.readFileSync(file, 'utf8'));
} else {
errors = validate(rw.readFileSync(file, 'utf8'));
}
if (errors.length) {
if (argv.json) {
process.stdout.write(JSON.stringify(errors, null, 2));
} else {
errors.forEach(function (e) {
console.log('%s:%d: %s', file, e.line, e.message);
});
}
status = 1;
}
});
process.exit(status);
function help() {
console.log('usage:');
console.log(' gl-style-validate file.json');
console.log(' gl-style-validate < file.json');
console.log('');
console.log('options:');
console.log('--json output errors as json');
console.log('--mapbox-api-supported validate compatibility with Mapbox Styles API');
}
|