🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
DemoInstallSign in
Socket

broccoli-cldr-data

Package Overview
Dependencies
Maintainers
1
Versions
13
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

broccoli-cldr-data - npm Package Compare versions

Comparing version

to
0.3.0

2

package.json
{
"name": "broccoli-cldr-data",
"version": "0.2.3",
"version": "0.3.0",
"description": "extracts cldr data to a broccoli directory",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -14,2 +14,3 @@ /* jshint node: true */

var assert = require('assert');
var path = require('path');
var fs = require('fs');

@@ -40,12 +41,3 @@

prelude: '',
moduleType: 'es6',
wrapEntry: function(data) {
var prefix = 'export default';
if (this.moduleType === 'commonjs') {
prefix = 'module.exports =';
}
return prefix + ' ' + serialize(data) + ';';
}
moduleType: 'es6'
}, options);

@@ -74,35 +66,38 @@

Plugin.prototype.build = function() {
Plugin.prototype.writeFileSync = function(groupedByLanguage) {
var options = this.options;
var destPath = this.outputPath + '/' + options.destDir;
var outputPath = path.join(this.outputPath, options.destDir);
var cldrData = extractor({
locales: options.locales,
pluralRules: options.pluralRules,
relativeFields: options.relativeFields
mkdirp.sync(outputPath);
for (var language in groupedByLanguage) {
var prefix = options.moduleType.toLowerCase() === 'es6' ? 'export default' : 'module.exports =';
var languageData = prefix + ' ' + serialize(groupedByLanguage[language]) + ';';
fs.writeFileSync(
path.join(outputPath, language.toLowerCase() + '.js'),
options.prelude.concat(languageData),
{ encoding: 'utf8' }
);
}
}
Plugin.prototype.build = function() {
var data = extractor({
locales: this.options.locales,
pluralRules: this.options.pluralRules,
relativeFields: this.options.relativeFields
});
var cldrDataByLang = Object.keys(cldrData).reduce(function(map, locale) {
var data = cldrData[locale];
var groupedByLanguage = Object.keys(data).reduce(function(ret, locale) {
var lang = locale.split('-')[0];
var langData = map[lang] || [];
map[lang] = langData.concat(data);
var langData = ret[lang] || [];
ret[lang] = langData.concat(data[locale]);
return map;
return ret;
}, Object.create(null));
mkdirp.sync(destPath);
Object.keys(cldrDataByLang).forEach(function(lang) {
var cldrData = cldrDataByLang[lang];
if (typeof options.wrapEntry === 'function') {
cldrData = options.wrapEntry(cldrData);
}
var outFile = destPath + '/' + lang.toLocaleLowerCase() + '.js';
fs.writeFileSync(outFile, options.prelude.concat(cldrData), { encoding: 'utf8' });
});
return this.writeFileSync(groupedByLanguage);
}
module.exports = Plugin;