多维表格
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

70 lines
1.6 KiB

const nodeExternals = require('webpack-node-externals');
// const CopyPlugin = require('copy-webpack-plugin');
//
// const TerserPlugin = require('terser-webpack-plugin');
const webpack = require('webpack');
const JavaScriptObfuscator = require('webpack-obfuscator');
const path = require('path');
module.exports = {
entry: './src/index.ts',
module: {
rules: [
{
test: /\.tsx?$/,
exclude: /node_modules/,
use: {
loader: 'ts-loader',
options: {
transpileOnly: true
}
},
},
],
},
optimization: {
minimize: false, //Update this to true or false
// minimizer: [new TerserPlugin()],
nodeEnv: false
},
externals: [nodeExternals()],
resolve: {
extensions: ['.tsx', '.ts', '.js', '.json'],
},
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist'),
library: 'libs',
libraryTarget: 'umd',
globalObject: "typeof self !== 'undefined' ? self : this",
},
// node: {
// fs: 'empty'
// },
plugins: [
new JavaScriptObfuscator({
rotateStringArray: true,
splitStrings: true,
splitStringsChunkLength: 6
}, []),
new webpack.BannerPlugin({banner: "#! /usr/bin/env node", raw: true}),
// new CopyPlugin({
// patterns: [
// // {
// // from: "src/sample-db/chinook.sqlite",
// // to: 'chinook.sqlite',
// // // flatten: true,
// // },
// {
// from: "src/sample-db/sakila.db",
// to: 'sakila.db',
// // flatten: true,
// },
// ],
// })
],
target: 'node',
};