Files
codeql-action/node_modules/language-map/scripts/build
T

37 lines
961 B
Python
Raw Normal View History

2021-04-22 15:33:01 -07:00
#!/usr/bin/env node
var fs = require('fs');
var yaml = require('js-yaml');
var path = require('path');
var request = require('request');
var camelize = require('camel-case');
var path = path.join(__dirname, '..', 'languages.json');
/**
* Sanitize the languages JSON object.
*
* @param {Object} obj
* @return {Object}
*/
var sanitizeYaml = function (obj) {
Object.keys(obj).forEach(function (language) {
Object.keys(obj[language]).forEach(function (key) {
var value = obj[language][key];
delete obj[language][key];
obj[language][camelize(key)] = value;
});
});
return obj;
};
/**
* Make a request to the YAML file hosted by GitHub and convert to JSON.
*/
request('https://raw.githubusercontent.com/github/linguist/master/lib/linguist/languages.yml', function (err, res, body) {
var languages = sanitizeYaml(yaml.safeLoad(body));
fs.writeFileSync(path, JSON.stringify(languages, null, 2));
});