| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- const path = require('path')
- const webpack = require('webpack')
- module.exports = {
- target: 'web',
- entry: {
- 'index.ignore': 'file-loader?name=../index.html!pug-html-loader!' + path.resolve(__dirname, './index.pug'),
- 'terminal.ignore': 'file-loader?name=terminal.html!pug-html-loader!' + path.resolve(__dirname, './terminal.pug'),
- index: path.resolve(__dirname, 'index.ts'),
- terminal: path.resolve(__dirname, 'terminal.ts'),
- },
- mode: process.env.TERMINUS_DEV ? 'development' : 'production',
- context: __dirname,
- devtool: 'source-map',
- output: {
- path: path.join(__dirname, 'dist'),
- pathinfo: true,
- filename: '[name].js',
- chunkFilename: '[name].bundle.js',
- },
- resolve: {
- modules: [
- '../tabby/tabby-core/node_modules/',
- '../tabby/tabby-settings/node_modules/',
- '../tabby/tabby-terminal/node_modules/',
- '../tabby/node_modules',
- '../tabby/app/node_modules',
- '../tabby/app/assets/',
- ].map(x => path.join(__dirname, x)),
- extensions: ['.ts', '.js'],
- },
- module: {
- rules: [
- {
- test: /\.ts$/,
- use: {
- loader: 'awesome-typescript-loader',
- options: {
- configFileName: path.resolve(__dirname, 'tsconfig.json'),
- paths: {
- "terminus-*": [path.resolve(__dirname, '../terminus-*')],
- "*": [path.resolve(__dirname, '../../app/node_modules/*')],
- }
- },
- },
- },
- { test: /terminus\/app\/dist/, use: ['script-loader'] },
- { test: /dist\/index/, use: ['raw-loader'] },
- {
- test: /\.(ttf|eot|otf|woff|woff2)(\?v=[0-9]\.[0-9]\.[0-9])?$/,
- use: {
- loader: 'file-loader',
- options: {
- name: 'fonts/[name].[ext]',
- },
- },
- },
- { test: /\.scss$/, use: ['style-loader', 'css-loader', 'sass-loader'] },
- { test: /\.css$/, use: ['css-loader', 'sass-loader'] },
- {
- test: /\.(jpeg|png|svg)?$/,
- use: {
- loader: 'file-loader',
- options: {
- name: '[name].[ext]'
- }
- }
- }
- ],
- },
- externals: {
- 'fs': 'commonjs fs',
- 'module': 'commonjs module'
- }
- }
|