Skip to content

Commit

Permalink
Updated Webpack config
Browse files Browse the repository at this point in the history
  • Loading branch information
danielmain committed Oct 21, 2021
1 parent 9597dcb commit 3db582a
Show file tree
Hide file tree
Showing 7 changed files with 628 additions and 245 deletions.
48 changes: 22 additions & 26 deletions gulpfile.js
Expand Up @@ -3,15 +3,14 @@ const webpack = require('webpack');
const webpackStream = require('webpack-stream');
const shell = require('gulp-shell');
const electronConnect = require('electron-connect');
const flowRemoveTypes = require('gulp-flow-remove-types');
const mainWebpackConfig = require('./source/main/webpack.config');
const rendererWebpackConfig = require('./source/renderer/webpack.config');

// Setup electron-connect server to start the app in development mode
let electronServer;
// Gulp input sources for main and renderer compilation
const mainInputSource = () => gulp.src('source/main/index.js');
const rendererInputSource = () => gulp.src('source/renderer/index.js');
const mainInputSource = () => gulp.src('source/main/index.ts');
const rendererInputSource = () => gulp.src('source/renderer/index.ts');
// Webpack watch configs
const mainWebpackWatchConfig = Object.assign({}, mainWebpackConfig, {
watch: true,
Expand Down Expand Up @@ -125,44 +124,41 @@ gulp.task('build', gulp.series('clean:dist', 'build:main', 'build:renderer'));
gulp.task('prepare:themes:utils', () =>
gulp
.src([
'source/renderer/app/themes/utils/checkCreateTheme.js',
'source/renderer/app/themes/utils/constants.js',
'source/renderer/app/themes/utils/createShades.js',
'source/renderer/app/themes/utils/createTheme.js',
'source/renderer/app/themes/utils/findUpdates.js',
'source/renderer/app/themes/utils/updateThemes.js',
'source/renderer/app/themes/utils/updateThemesCLI.js',
'source/renderer/app/themes/utils/writeThemeUpdate.js',
'source/renderer/app/themes/utils/checkCreateTheme.ts',
'source/renderer/app/themes/utils/constants.ts',
'source/renderer/app/themes/utils/createShades.ts',
'source/renderer/app/themes/utils/createTheme.ts',
'source/renderer/app/themes/utils/findUpdates.ts',
'source/renderer/app/themes/utils/updateThemes.ts',
'source/renderer/app/themes/utils/updateThemesCLI.ts',
'source/renderer/app/themes/utils/writeThemeUpdate.ts',
])
.pipe(flowRemoveTypes())
.pipe(gulp.dest('dist/utils'))
);

gulp.task('prepare:themes:daedalus', () =>
gulp
.src([
'source/renderer/app/themes/daedalus/cardano.js',
'source/renderer/app/themes/daedalus/dark-blue.js',
'source/renderer/app/themes/daedalus/dark-cardano.js',
'source/renderer/app/themes/daedalus/flight-candidate.js',
'source/renderer/app/themes/daedalus/incentivized-testnet.js',
'source/renderer/app/themes/daedalus/index.js',
'source/renderer/app/themes/daedalus/light-blue.js',
'source/renderer/app/themes/daedalus/shelley-testnet.js',
'source/renderer/app/themes/daedalus/white.js',
'source/renderer/app/themes/daedalus/yellow.js',
'source/renderer/app/themes/daedalus/cardano.ts',
'source/renderer/app/themes/daedalus/dark-blue.ts',
'source/renderer/app/themes/daedalus/dark-cardano.ts',
'source/renderer/app/themes/daedalus/flight-candidate.ts',
'source/renderer/app/themes/daedalus/incentivized-testnet.ts',
'source/renderer/app/themes/daedalus/index.ts',
'source/renderer/app/themes/daedalus/light-blue.ts',
'source/renderer/app/themes/daedalus/shelley-testnet.ts',
'source/renderer/app/themes/daedalus/white.ts',
'source/renderer/app/themes/daedalus/yellow.ts',
])
.pipe(flowRemoveTypes())
.pipe(gulp.dest('dist/daedalus'))
);

gulp.task('prepare:themes:scripts', () =>
gulp
.src([
'source/renderer/app/themes/scripts/check.js',
'source/renderer/app/themes/scripts/update.js',
'source/renderer/app/themes/scripts/check.ts',
'source/renderer/app/themes/scripts/update.ts',
])
.pipe(flowRemoveTypes())
.pipe(gulp.dest('dist/scripts'))
);

Expand Down
8 changes: 5 additions & 3 deletions package.json
Expand Up @@ -84,6 +84,7 @@
"@storybook/addons": "5.3.14",
"@storybook/core": "5.3.14",
"@storybook/react": "5.3.14",
"@typescript-eslint/eslint-plugin": "^5.1.0",
"asar": "2.1.0",
"autodll-webpack-plugin": "0.4.2",
"axios": "0.21.1",
Expand Down Expand Up @@ -152,12 +153,13 @@
"svg-inline-loader": "0.8.2",
"thread-loader": "2.1.3",
"transform-loader": "0.2.4",
"ts-loader": "^9.2.6",
"typescript": "^4.4.3",
"url-loader": "2.0.1",
"utf-8-validate": "5.0.2",
"webdriverio": "5.18.7",
"webpack": "4.44.2",
"webpack-cli": "3.3.12",
"webpack": "4.46.0",
"webpack-cli": "^4.9.1",
"webpack-stream": "6.1.0",
"yamljs": "0.3.0",
"yarn-lockfile": "1.1.1"
Expand All @@ -175,7 +177,7 @@
"borc": "2.1.2",
"bs58": "4.0.1",
"cardano-crypto.js": "5.3.6-rc.6",
"cardano-js": "0.4.7",
"cardano-js": "0.4.8",
"cardano-launcher": "0.20210215.0",
"cbor": "5.0.2",
"check-disk-space": "2.1.0",
Expand Down
95 changes: 95 additions & 0 deletions source/main/webpack.config.js
@@ -0,0 +1,95 @@
const webpack = require('webpack');

const isCi = process.env.CI && process.env.CI !== '';
module.exports = {
mode: 'development',
devtool: 'cheap-module-source-map',
entry: {
index: './source/main/index.ts',
preload: './source/main/preload.ts',
},
optimization: {
// https://github.com/webpack/webpack/issues/7470
nodeEnv: false,
},
output: {
filename: '[name].js',
},

/**
* Set target to Electron specific node.js env.
* https://github.com/chentsulin/webpack-target-electron-renderer#how-this-module-works
*/
target: 'electron-main',
cache: true,

/**
* Disables webpack processing of __dirname and __filename.
* If you run the bundle in node.js it falls back to these values of node.ts.
* https://github.com/webpack/webpack/issues/2010
*/
node: {
__dirname: false,
__filename: false,
},
externals: {
'js-chain-libs-node': 'commonjs2 js-chain-libs-node',
'trezor-connect': 'commonjs2 trezor-connect',
},
module: {
rules: [
{
test: /\.ts$/,
include: /source/,
exclude: /source\/renderer/,
use: [{ loader: 'ts-loader' }],
},
{
test: /(pdfkit|linebreak|fontkit|unicode|brotli|png-js).*\.js$/,
use: {
loader: 'transform-loader?brfs',
},
},
{
test: /\.(woff2?|eot|ttf|otf|png|jpe?g|gif|svg)(\?.*)?$/,
exclude: /\.inline\.svg$/,
use: {
loader: 'file-loader',
options: {
name: '[name]-[hash].[ext]',
outputPath: 'assets/',
},
},
},
],
},
plugins: [
new webpack.DefinePlugin(
Object.assign(
{
'process.env.API_VERSION': JSON.stringify(
process.env.API_VERSION || 'dev'
),
'process.env.NETWORK': JSON.stringify(
process.env.NETWORK || 'development'
),
'process.env.MOCK_TOKEN_METADATA_SERVER_PORT':
process.env.MOCK_TOKEN_METADATA_SERVER_PORT || 0,
'process.env.MOBX_DEV_TOOLS': process.env.MOBX_DEV_TOOLS || 0,
'process.env.BUILD_NUMBER': JSON.stringify(
process.env.BUILD_NUMBER || 'dev'
),
'process.env.IS_WATCH_MODE': process.env.IS_WATCH_MODE === 'true',
'process.env.KEEP_LOCAL_CLUSTER_RUNNING':
process.env.KEEP_LOCAL_CLUSTER_RUNNING === 'true',
},
process.env.NODE_ENV === 'production'
? {
// Only bake in NODE_ENV value for production builds.
'process.env.NODE_ENV': '"production"',
}
: {}
)
),
].filter(Boolean),
};
74 changes: 0 additions & 74 deletions source/main/webpack.config.ts

This file was deleted.

0 comments on commit 3db582a

Please sign in to comment.