1
0
mirror of https://github.com/hotomoe/hotomoe synced 2024-12-11 13:18:11 +09:00
hotomoe/webpack/plugins/consts.ts
syuilo 74f3a6aadb ✌️
2017-12-17 04:31:24 +09:00

39 lines
915 B
TypeScript

/**
* Constant Replacer
*/
import * as webpack from 'webpack';
import version from '../../src/version';
const constants = require('../../src/const.json');
import config from '../../src/conf';
export default lang => {
const consts = {
_RECAPTCHA_SITEKEY_: config.recaptcha.site_key,
_SW_PUBLICKEY_: config.sw ? config.sw.public_key : null,
_THEME_COLOR_: constants.themeColor,
_COPYRIGHT_: constants.copyright,
_VERSION_: version,
_STATUS_URL_: config.status_url,
_STATS_URL_: config.stats_url,
_DOCS_URL_: config.docs_url,
_API_URL_: config.api_url,
_DEV_URL_: config.dev_url,
_CH_URL_: config.ch_url,
_LANG_: lang,
_HOST_: config.host,
_URL_: config.url,
};
const _consts = {};
Object.keys(consts).forEach(key => {
_consts[key] = JSON.stringify(consts[key]);
});
return new webpack.DefinePlugin(Object.assign({}, _consts, {
__CONSTS__: JSON.stringify(consts)
}));
};