mirror of
https://github.com/FoggedLens/iD.git
synced 2026-05-19 06:58:32 +02:00
+188
-64
@@ -1,66 +1,190 @@
|
||||
{
|
||||
"dataLocales": [
|
||||
"af",
|
||||
"sq",
|
||||
"ar",
|
||||
"ar-AA",
|
||||
"hy",
|
||||
"ast",
|
||||
"bn",
|
||||
"bs",
|
||||
"bg-BG",
|
||||
"ca",
|
||||
"zh",
|
||||
"zh-CN",
|
||||
"zh-HK",
|
||||
"zh-TW",
|
||||
"yue",
|
||||
"hr",
|
||||
"cs",
|
||||
"da",
|
||||
"nl",
|
||||
"en-GB",
|
||||
"eo",
|
||||
"et",
|
||||
"fi",
|
||||
"fr",
|
||||
"gl",
|
||||
"de",
|
||||
"el",
|
||||
"gu",
|
||||
"hi",
|
||||
"hu",
|
||||
"is",
|
||||
"id",
|
||||
"it",
|
||||
"ja",
|
||||
"kn",
|
||||
"ko",
|
||||
"ku",
|
||||
"lv",
|
||||
"lij",
|
||||
"lt",
|
||||
"ml",
|
||||
"no",
|
||||
"fa",
|
||||
"pl",
|
||||
"pt",
|
||||
"pt-BR",
|
||||
"ro",
|
||||
"ru",
|
||||
"sc",
|
||||
"sr",
|
||||
"si",
|
||||
"sk",
|
||||
"sl",
|
||||
"es",
|
||||
"sv",
|
||||
"tl",
|
||||
"ta",
|
||||
"te",
|
||||
"th",
|
||||
"tr",
|
||||
"uk",
|
||||
"vi"
|
||||
]
|
||||
"dataLocales": {
|
||||
"af": {
|
||||
"rtl": false
|
||||
},
|
||||
"ar": {
|
||||
"rtl": true
|
||||
},
|
||||
"ar-AA": {
|
||||
"rtl": true
|
||||
},
|
||||
"ast": {
|
||||
"rtl": false
|
||||
},
|
||||
"bg-BG": {
|
||||
"rtl": false
|
||||
},
|
||||
"bn": {
|
||||
"rtl": false
|
||||
},
|
||||
"bs": {
|
||||
"rtl": false
|
||||
},
|
||||
"ca": {
|
||||
"rtl": false
|
||||
},
|
||||
"cs": {
|
||||
"rtl": false
|
||||
},
|
||||
"da": {
|
||||
"rtl": false
|
||||
},
|
||||
"de": {
|
||||
"rtl": false
|
||||
},
|
||||
"el": {
|
||||
"rtl": false
|
||||
},
|
||||
"en-GB": {
|
||||
"rtl": false
|
||||
},
|
||||
"eo": {
|
||||
"rtl": false
|
||||
},
|
||||
"es": {
|
||||
"rtl": false
|
||||
},
|
||||
"et": {
|
||||
"rtl": false
|
||||
},
|
||||
"fa": {
|
||||
"rtl": true
|
||||
},
|
||||
"fi": {
|
||||
"rtl": false
|
||||
},
|
||||
"fr": {
|
||||
"rtl": false
|
||||
},
|
||||
"gl": {
|
||||
"rtl": false
|
||||
},
|
||||
"gu": {
|
||||
"rtl": false
|
||||
},
|
||||
"hi": {
|
||||
"rtl": false
|
||||
},
|
||||
"hr": {
|
||||
"rtl": false
|
||||
},
|
||||
"hu": {
|
||||
"rtl": false
|
||||
},
|
||||
"hy": {
|
||||
"rtl": false
|
||||
},
|
||||
"id": {
|
||||
"rtl": false
|
||||
},
|
||||
"is": {
|
||||
"rtl": false
|
||||
},
|
||||
"it": {
|
||||
"rtl": false
|
||||
},
|
||||
"ja": {
|
||||
"rtl": false
|
||||
},
|
||||
"kn": {
|
||||
"rtl": false
|
||||
},
|
||||
"ko": {
|
||||
"rtl": false
|
||||
},
|
||||
"ku": {
|
||||
"rtl": false
|
||||
},
|
||||
"lij": {
|
||||
"rtl": false
|
||||
},
|
||||
"lt": {
|
||||
"rtl": false
|
||||
},
|
||||
"lv": {
|
||||
"rtl": false
|
||||
},
|
||||
"ml": {
|
||||
"rtl": false
|
||||
},
|
||||
"nl": {
|
||||
"rtl": false
|
||||
},
|
||||
"no": {
|
||||
"rtl": false
|
||||
},
|
||||
"pl": {
|
||||
"rtl": false
|
||||
},
|
||||
"pt": {
|
||||
"rtl": false
|
||||
},
|
||||
"pt-BR": {
|
||||
"rtl": false
|
||||
},
|
||||
"ro": {
|
||||
"rtl": false
|
||||
},
|
||||
"ru": {
|
||||
"rtl": false
|
||||
},
|
||||
"sc": {
|
||||
"rtl": false
|
||||
},
|
||||
"si": {
|
||||
"rtl": false
|
||||
},
|
||||
"sk": {
|
||||
"rtl": false
|
||||
},
|
||||
"sl": {
|
||||
"rtl": false
|
||||
},
|
||||
"sq": {
|
||||
"rtl": false
|
||||
},
|
||||
"sr": {
|
||||
"rtl": false
|
||||
},
|
||||
"sv": {
|
||||
"rtl": false
|
||||
},
|
||||
"ta": {
|
||||
"rtl": false
|
||||
},
|
||||
"te": {
|
||||
"rtl": false
|
||||
},
|
||||
"th": {
|
||||
"rtl": false
|
||||
},
|
||||
"tl": {
|
||||
"rtl": false
|
||||
},
|
||||
"tr": {
|
||||
"rtl": false
|
||||
},
|
||||
"uk": {
|
||||
"rtl": false
|
||||
},
|
||||
"vi": {
|
||||
"rtl": false
|
||||
},
|
||||
"yue": {
|
||||
"rtl": false
|
||||
},
|
||||
"zh": {
|
||||
"rtl": false
|
||||
},
|
||||
"zh-CN": {
|
||||
"rtl": false
|
||||
},
|
||||
"zh-HK": {
|
||||
"rtl": false
|
||||
},
|
||||
"zh-TW": {
|
||||
"rtl": false
|
||||
}
|
||||
}
|
||||
}
|
||||
+38
-11
@@ -1,8 +1,9 @@
|
||||
/* Downloads the latest translations from Transifex */
|
||||
|
||||
var request = require('request').defaults({maxSockets: 1}),
|
||||
var request = require('request').defaults({ maxSockets: 1 }),
|
||||
yaml = require('js-yaml'),
|
||||
fs = require('fs'),
|
||||
stringify = require('json-stable-stringify'),
|
||||
_ = require('lodash');
|
||||
|
||||
var resources = ['core', 'presets'];
|
||||
@@ -26,27 +27,39 @@ var auth = JSON.parse(fs.readFileSync('./transifex.auth', 'utf8'));
|
||||
var sourceCore = yaml.load(fs.readFileSync('./data/core.yaml', 'utf8')),
|
||||
sourcePresets = yaml.load(fs.readFileSync('./data/presets.yaml', 'utf8'));
|
||||
|
||||
|
||||
asyncMap(resources, getResource, function(err, locales) {
|
||||
if (err) return console.log(err);
|
||||
|
||||
var locale = _.merge(sourceCore, sourcePresets),
|
||||
codes = [];
|
||||
dataLocales = {};
|
||||
|
||||
locales.forEach(function(l) {
|
||||
locale = _.merge(locale, l);
|
||||
});
|
||||
|
||||
for (var i in locale) {
|
||||
if (i === 'en' || _.isEmpty(locale[i])) continue;
|
||||
codes.push(i);
|
||||
var obj = {};
|
||||
obj[i] = locale[i];
|
||||
fs.writeFileSync(outdir + i + '.json', JSON.stringify(obj, null, 4));
|
||||
}
|
||||
|
||||
fs.writeFileSync('data/locales.json', JSON.stringify({ dataLocales: codes }, null, 4));
|
||||
asyncMap(Object.keys(locale),
|
||||
function(code, done) {
|
||||
if (code === 'en' || _.isEmpty(locale[code])) {
|
||||
done();
|
||||
} else {
|
||||
var obj = {};
|
||||
obj[code] = locale[code];
|
||||
fs.writeFileSync(outdir + code + '.json', JSON.stringify(obj, null, 4));
|
||||
getLanguageInfo(code, function(err, info) {
|
||||
dataLocales[code] = { rtl: info && info.rtl };
|
||||
done();
|
||||
});
|
||||
}
|
||||
}, function(err) {
|
||||
if (!err) {
|
||||
fs.writeFileSync('data/locales.json', stringify({ dataLocales: dataLocales }, { space: 4 }));
|
||||
}
|
||||
}
|
||||
);
|
||||
});
|
||||
|
||||
|
||||
function getResource(resource, callback) {
|
||||
resource = project + 'resource/' + resource + '/';
|
||||
getLanguages(resource, function(err, codes) {
|
||||
@@ -65,6 +78,7 @@ function getResource(resource, callback) {
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function getLanguage(resource) {
|
||||
return function(code, callback) {
|
||||
code = code.replace(/-/g, '_');
|
||||
@@ -78,6 +92,18 @@ function getLanguage(resource) {
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
function getLanguageInfo(code, callback) {
|
||||
code = code.replace(/-/g, '_');
|
||||
var url = api + 'language/' + code;
|
||||
request.get(url, { auth : auth }, function(err, resp, body) {
|
||||
if (err) return callback(err);
|
||||
console.log(resp.statusCode + ': ' + url);
|
||||
callback(null, JSON.parse(body));
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function getLanguages(resource, callback) {
|
||||
var url = resource + '?details';
|
||||
request.get(url, { auth: auth },
|
||||
@@ -92,6 +118,7 @@ function getLanguages(resource, callback) {
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function asyncMap(inputs, func, callback) {
|
||||
var remaining = inputs.length,
|
||||
results = [],
|
||||
|
||||
@@ -49,6 +49,7 @@
|
||||
"happen": "~0.3.1",
|
||||
"js-yaml": "~3.7.0",
|
||||
"jsonschema": "~1.1.0",
|
||||
"json-stable-stringify": "~1.0.1",
|
||||
"maki": "0.5.0",
|
||||
"mapillary-js": "2.1.0",
|
||||
"minimist": "~1.2.0",
|
||||
|
||||
Reference in New Issue
Block a user