1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- const path = require("path")
- const webpack = require("webpack")
- module.exports = {
- target: 'node',
- entry: {
- 'index.ignore': 'file-loader?name=index.html!val-loader!pug-html-loader!./app/index.pug',
- 'preload': './app/src/entry.preload.ts',
- 'bundle': './app/src/entry.ts',
- },
- devtool: 'source-map',
- output: {
- path: 'app/assets/webpack',
- pathinfo: true,
- //publicPath: 'assets/webpack/',
- filename: '[name].js'
- },
- resolve: {
- modules: ['app/src/', 'node_modules', 'app/assets/'],
- extensions: ['.ts', '.js'],
- },
- module: {
- loaders: [
- {
- test: /\.ts$/,
- loader: 'awesome-typescript-loader'
- },
- {
- test: /\.pug$/,
- exclude: [
- /index.pug/
- ],
- loaders: [
- {
- loader: 'apply-loader'
- },
- {
- loader: 'pug-loader'
- }
- ]
- },
- { test: /\.css$/, loader: "style-loader!css-loader" },
- {
- test: /\.less$/,
- loader: "style-loader!css-loader!less-loader",
- exclude: [/app\/src\/components\//],
- },
- {
- test: /\.less$/,
- loader: "to-string-loader!css-loader!less-loader",
- include: [/app\/src\/components\//],
- },
- {
- test: /\.(png|svg)$/,
- loader: "file-loader",
- query: {
- name: 'images/[name].[hash:8].[ext]'
- }
- },
- {
- test: /\.(ttf|eot|otf|woff|woff2)(\?v=[0-9]\.[0-9]\.[0-9])?$/,
- loader: "file-loader",
- query: {
- name: 'fonts/[name].[hash:8].[ext]'
- }
- },
- ]
- },
- externals: {
- 'electron': 'require("electron")',
- 'net': 'require("net")',
- 'remote': 'require("remote")',
- 'shell': 'require("shell")',
- 'ipc': 'require("ipc")',
- 'fs': 'require("fs")',
- 'buffer': 'require("buffer")',
- 'pty.js': 'require("pty.js")',
- 'system': '{}',
- 'file': '{}'
- },
- plugins: [
- new webpack.ProvidePlugin({
- "window.jQuery": "jquery",
- }),
- ]
- }
- if (!process.env.DEV) {
- module.exports.plugins.push(new webpack.LoaderOptionsPlugin({
- minimize: true,
- }))
- module.exports.plugins.push(new webpack.optimize.UglifyJsPlugin({
- sourceMap: true,
- mangle: false,
- }))
- module.exports.devtool = 'source-map'
- }
|