Sharkey/webpack/plugins/consts.ts

42 lines
1.0 KiB
TypeScript
Raw Normal View History

2017-11-22 13:51:32 -08:00
/**
* Constant Replacer
*/
import * as webpack from 'webpack';
2018-03-02 14:32:18 -08:00
const meta = require('../../package.json');
const version = meta.version;
2017-11-22 13:51:32 -08:00
const constants = require('../../src/const.json');
import config from '../../src/conf';
2018-02-15 02:59:07 -08:00
import { licenseHtml } from '../../src/common/build/license';
2017-11-22 13:51:32 -08:00
export default lang => {
const consts = {
_RECAPTCHA_SITEKEY_: config.recaptcha.site_key,
_SW_PUBLICKEY_: config.sw ? config.sw.public_key : null,
_THEME_COLOR_: constants.themeColor,
2017-12-16 11:31:24 -08:00
_COPYRIGHT_: constants.copyright,
2017-11-22 13:51:32 -08:00
_VERSION_: version,
_STATUS_URL_: config.status_url,
_STATS_URL_: config.stats_url,
2017-12-16 08:41:22 -08:00
_DOCS_URL_: config.docs_url,
2017-11-22 13:51:32 -08:00
_API_URL_: config.api_url,
_DEV_URL_: config.dev_url,
_CH_URL_: config.ch_url,
_LANG_: lang,
_HOST_: config.host,
_URL_: config.url,
_LICENSE_: licenseHtml,
_GOOGLE_MAPS_API_KEY_: config.google_maps_api_key
2017-11-22 13:51:32 -08:00
};
const _consts = {};
Object.keys(consts).forEach(key => {
_consts[key] = JSON.stringify(consts[key]);
});
2018-02-15 02:59:07 -08:00
return new webpack.DefinePlugin(_consts);
2017-11-22 13:51:32 -08:00
};