12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- const webpack = require('webpack');
- const pkg = require('./package.json');
- const path = require('path');
- const TerserPlugin = require('terser-webpack-plugin');
- let config = {
- entry: './src/index.js',
- output: {
- filename: 'flv.js',
- path: path.resolve(__dirname, 'dist'),
- library: 'flvjs',
- libraryTarget: 'umd',
- environment: {
- arrowFunction: false,
- bigIntLiteral: false,
- const: false,
- destructuring: false,
- dynamicImport: false,
- forOf: false,
- module: false
- }
- },
- devtool: 'source-map',
- resolve: {
- extensions: ['.ts', '.tsx', '.js', '.json'],
- fallback: {
- fs: false,
- path: false
- }
- },
- plugins: [
- new webpack.DefinePlugin({
- __VERSION__: JSON.stringify(pkg.version)
- })
- ],
- optimization: {
- minimizer: [
- new TerserPlugin({
- extractComments: false,
- })
- ]
- },
- module: {
- rules: [
- {
- test: /\.(ts|js)$/,
- use: 'ts-loader',
- exclude: /node-modules/
- },
- {
- enforce: 'pre',
- test: /\.js$/,
- use: 'source-map-loader'
- }
- ]
- }
- };
- module.exports = (env, argv) => {
- if (argv.mode === 'production') {
- config.output.filename = 'flv.min.js';
- }
- return config;
- };
|