UNPKG

ruscryptojs

Version:

Simplified library for Russian GOST crypto providers.

75 lines (72 loc) 2.15 kB
'use strict'; var webpack = require('webpack'); var { CleanWebpackPlugin } = require('clean-webpack-plugin'); var path = require('path'); var libraryName = 'RusCryptoJS'; var filename = 'ruscrypto.min.js'; module.exports = (env, argv) => { if (argv.mode === 'production') { var plugins = [ new CleanWebpackPlugin({ protectWebpackAssets: false, cleanAfterEveryBuildPatterns: ['*.LICENSE.txt'] }) ]; var devServer = undefined; } else { var plugins = [ new webpack.HotModuleReplacementPlugin() ]; var devServer = { hot: true, static: "./docs", devMiddleware: { publicPath: "/js/" } }; } return { entry: { main: [ './src' ] }, output: { path: path.resolve(__dirname, 'dist'), filename: filename, library: libraryName, libraryTarget: 'umd', umdNamedDefine: true, // https://github.com/webpack/webpack/issues/1625#issuecomment-407553490 globalObject: "typeof self !== 'undefined' ? self : this" }, resolve: { extensions: ['.js'], }, module: { rules: [{ test: /\.js$/, exclude: /node_modules/, use: { loader: "babel-loader", options: { presets: [ ["@babel/preset-env", { debug: false, useBuiltIns: "usage", targets: { chrome: "60", firefox: "52", ie: "11", safari: "10" } }] ] } } }], }, plugins: plugins, devtool: "source-map", devServer: devServer } };