UNPKG

@smartrep/web-widget

Version:

Client side library to load the web widget

81 lines (79 loc) 1.81 kB
const path = require('path'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const { version } = require('./package.json'); const sass = require('sass'); module.exports = { entry: './src/dev.index.js', devServer: { host: process.env.HOST, // Defaults to `localhost` port: process.env.PORT // Defaults to 8080, }, output: { path: path.join(__dirname, '/lib'), filename: 'index.js', library: 'WebChat', libraryTarget: 'umd', clean: true }, stats: { children: false }, plugins: [ new HtmlWebpackPlugin({ template: './demo.dev.html' }) ], resolve: { extensions: ['.js', '.jsx'] }, mode: 'development', devtool: 'eval-source-map', module: { rules: [ { test: /\.(js|jsx)$/, exclude: /node_modules\/(?!micromark)/, use: [ { loader: 'string-replace-loader', options: { search: 'PACKAGE_VERSION_TO_BE_REPLACED', replace: version } }, { loader: 'babel-loader' } ] }, { test: /\.scss$/, use: [ { loader: 'style-loader' }, { loader: 'css-loader' }, { loader: 'sass-loader', options: { implementation: sass, api: 'modern-compiler', sassOptions: { loadPaths: [path.resolve(__dirname, 'src/scss/')] } } } ] }, { test: /\.css$/, use: ['style-loader', 'css-loader'] }, { test: /\.(jpg|png|gif|svg|woff|ttf|eot)$/, type: 'asset', parser: { dataUrlCondition: { maxSize: 8 * 1024 // 8kb } } } ] } };