mirror of
https://github.com/stake-house/wagyu-installer.git
synced 2022-05-06 20:09:49 +03:00
66 lines
2.1 KiB
JavaScript
66 lines
2.1 KiB
JavaScript
|
|
'use strict';
|
|
|
|
// pull in the 'path' module from node
|
|
const path = require('path');
|
|
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
|
const webpack = require('webpack');
|
|
|
|
const { GitRevisionPlugin } = require('git-revision-webpack-plugin');
|
|
const gitRevisionPlugin = new GitRevisionPlugin({
|
|
branch: true,
|
|
commithashCommand: 'rev-list --max-count=1 --no-merges --abbrev-commit HEAD',
|
|
});
|
|
|
|
// export the configuration as an object
|
|
module.exports = {
|
|
// development mode will set some useful defaults in webpack
|
|
mode: 'development',
|
|
// the entry point is the top of the tree of modules.
|
|
// webpack will bundle this file and everything it references.
|
|
entry: './src/react/index.tsx',
|
|
// we specify we want to put the bundled result in the matching build/ folder
|
|
output: {
|
|
filename: 'index.js',
|
|
path: path.resolve(__dirname, 'build/react'),
|
|
},
|
|
module: {
|
|
// rules tell webpack how to handle certain types of files
|
|
rules: [
|
|
// at the moment the only custom handling we have is for typescript files
|
|
// .ts and .tsx files get passed to ts-loader
|
|
{
|
|
test: /\.tsx?$/,
|
|
loader: 'ts-loader',
|
|
}, {
|
|
test: /node_modules\/JSONStream\/index\.js$/,
|
|
loader: 'shebang-loader'
|
|
}, {
|
|
test: /\.css$/i,
|
|
use: ['style-loader', 'css-loader'],
|
|
}, {
|
|
test: /\.(woff|woff2|eot|ttf|svg)$/,
|
|
type: 'asset/resource',
|
|
},
|
|
],
|
|
},
|
|
resolve: {
|
|
// specify certain file extensions to get automatically appended to imports
|
|
// ie we can write `import 'index'` instead of `import 'index.ts'`
|
|
extensions: ['.ts', '.tsx', '.js'],
|
|
},
|
|
plugins: [
|
|
new HtmlWebpackPlugin({
|
|
template: 'src/react/index.html',
|
|
}),
|
|
gitRevisionPlugin,
|
|
new webpack.DefinePlugin({
|
|
VERSION: JSON.stringify(gitRevisionPlugin.version()),
|
|
COMMITHASH: JSON.stringify(gitRevisionPlugin.commithash()),
|
|
BRANCH: JSON.stringify(gitRevisionPlugin.branch()),
|
|
LASTCOMMITDATETIME: JSON.stringify(gitRevisionPlugin.lastcommitdatetime()),
|
|
})
|
|
],
|
|
target: 'electron-renderer'
|
|
};
|