diff options
author | Marcin Aman <maman@virtuslab.com> | 2020-05-28 16:17:13 +0200 |
---|---|---|
committer | Paweł Marks <Kordyjan@users.noreply.github.com> | 2020-06-04 11:25:34 +0200 |
commit | b614604effda51ca7c76c8901be78ced62b642b2 (patch) | |
tree | 971fc02905cf3e0c75ef4fb00d93ce72b43936cb /plugins/base/frontend/webpack.config.js | |
parent | 4065a65fe3294e0ddf54f5756380f7dc1aa032b2 (diff) | |
download | dokka-b614604effda51ca7c76c8901be78ced62b642b2.tar.gz dokka-b614604effda51ca7c76c8901be78ced62b642b2.tar.bz2 dokka-b614604effda51ca7c76c8901be78ced62b642b2.zip |
Update TS migration to current dev, move to a common package, rename to frontend
Diffstat (limited to 'plugins/base/frontend/webpack.config.js')
-rw-r--r-- | plugins/base/frontend/webpack.config.js | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/plugins/base/frontend/webpack.config.js b/plugins/base/frontend/webpack.config.js new file mode 100644 index 00000000..559f5792 --- /dev/null +++ b/plugins/base/frontend/webpack.config.js @@ -0,0 +1,64 @@ +const {join, resolve} = require('path'); + +const ringUiWebpackConfig = require('@jetbrains/ring-ui/webpack.config'); + +const pkgConfig = require('./package.json').config; + +const componentsPath = join(__dirname, pkgConfig.components); + +// Patch @jetbrains/ring-ui svg-sprite-loader config +ringUiWebpackConfig.loaders.svgInlineLoader.include.push( + require('@jetbrains/logos'), + require('@jetbrains/icons') +); + +const webpackConfig = () => ({ + entry: `${componentsPath}/root.tsx`, + resolve: { + mainFields: ['module', 'browser', 'main'], + extensions: ['.tsx', '.ts', '.js'], + alias: { + react: resolve('./node_modules/react'), + 'react-dom': resolve('./node_modules/react-dom'), + '@jetbrains/ring-ui': resolve('./node_modules/@jetbrains/ring-ui') + } + }, + output: { + path: resolve(__dirname, pkgConfig.dist), + filename: '[name].js', + publicPath: '', + devtoolModuleFilenameTemplate: '/[absolute-resource-path]' + }, + module: { + rules: [ + ...ringUiWebpackConfig.config.module.rules, + { + test: /\.s[ac]ss$/i, + use: [ + 'style-loader', + 'css-loader', + 'sass-loader', + ], + include: componentsPath, + exclude: ringUiWebpackConfig.componentsPath, + }, + { + test: /\.tsx?$/, + use: [ + { + loader: 'ts-loader', + options: { + transpileOnly: true + } + } + ] + } + ] + }, + plugins: [], + output: { + path: __dirname + '/dist/' + } +}); + +module.exports = webpackConfig; |