UNPKG

tb-i18n-loader

Version:
29 lines (23 loc) 829 B
var loaderUtils = require('loader-utils') var util = require('./util') var configLanguages = ['zh', 'zh_tw', 'en', 'ja', 'ko'] module.exports = function (content) { if (this.cacheable) this.cacheable() var query = loaderUtils.parseQuery(this.query) var descriptionAs = query.descriptionAs var languages = query.languages || configLanguages var description = util.parseDescription(content) var results = ['var i18n = require(\'tb-i18n\');'] for (var i = 0, len = languages.length; i < len; i++) { var lang = languages[i] var result if (lang === descriptionAs) { result = util.translate(lang, description) } else { result = util.translateLocales(lang, Object.keys(description)) } results.push(result) } results.push('module.exports = i18n;') return results.join('\n') }