UNPKG

@gctools-components/i18n-translation-webpack-plugin

Version:

Complete i18n translation solution for webpack, including code-splitting and automatic generation of translation files

35 lines (29 loc) 1.14 kB
'use strict'; /* * Author: National Research Council Canada * Website: http://www.nrc-cnrc.gc.ca/eng/rd/ict/ * * License: MIT * Copyright: Her Majesty the Queen in Right of Canada, as represented by * the Minister of National Research Council, 2017 */ /* eslint-disable camelcase */ /** * Entrypoint to the localizer for translate functions. * */ var loaderUtils = require('loader-utils'); function i18nLoader() { var loaderOptions = loaderUtils.getOptions(this); var options = JSON.parse(decodeURIComponent(loaderOptions.options)); var localizer_global = options.localizer_global, localizer_window = options.localizer_window; var addDomain = ''; if (loaderOptions.domain) { addDomain = localizer_global + '.registerDomain(\'' + loaderOptions.domain + '\');'; } var window = localizer_window ? 'if (typeof window !== \'undefined\')\n window.' + localizer_window + ' = ' + localizer_global + ';' : ''; var newStr = '\n (function () {\n ' + addDomain + '\n ' + window + '\n module.exports = ' + localizer_global + ';\n })();'; return newStr; } module.exports = i18nLoader;