mirror of
https://github.com/Mibew/simple-icons.git
synced 2024-11-17 19:04:13 +03:00
e0df400494
* Add prettier as a dependency * Add format command and configure prettier I opted for single quotes to be in line with other simple-icons projects I ignore the data file because changing its formatting is quite a bit of trouble for all open PRs. * Run prettier * Replace all functions by arrow functions * Move prettier configuration to config file Move it to a file so editors (and other software) can pick up on the configuration. I went with .js because (a) it allows for comments and (2) it seems most of the config files are in JavaScript already. * Add prettier --check when running npm run lint (This adds it to the CI as well) * Add husky and format changes before committing * Use object destructuring for imports consistently * Add shebang and fileoverview to jsonlint.js
27 lines
730 B
JavaScript
27 lines
730 B
JavaScript
#!/usr/bin/env node
|
|
/**
|
|
* @fileoverview
|
|
* CLI tool to run jsonschema on the simple-icons.json data file.
|
|
*/
|
|
|
|
const path = require('path');
|
|
const { Validator } = require('jsonschema');
|
|
|
|
const rootDir = path.resolve(__dirname, '..', '..');
|
|
const schemaFile = path.resolve(rootDir, '.jsonschema.json');
|
|
const dataFile = path.resolve(rootDir, '_data', 'simple-icons.json');
|
|
|
|
const schema = require(schemaFile);
|
|
const data = require(dataFile);
|
|
|
|
const validator = new Validator();
|
|
const result = validator.validate(data, schema);
|
|
if (result.errors.length > 0) {
|
|
result.errors.forEach((error) => {
|
|
console.error(error);
|
|
});
|
|
|
|
console.error(`Found ${result.errors.length} error(s) in simple-icons.json`);
|
|
process.exit(1);
|
|
}
|