jenkins/webpack.config.js
Jan Faracik c42ab43c49
Redesign the Jenkins header (#10245)
* WB

* Push

* More responsive

* Update headerContent.jelly

* Push

* Update logo.jelly

* Update _page-header.scss

* Update _page-header.scss

* Update header

* Tidy up breadcrumbs

* Tidy up focus

* Update _breadcrumbs.scss

* Update configure.jelly

* push

* Add badges

* Tidy

* Push

* Update headerContent.jelly

* Update ManageJenkinsAction.java

* Update headerContent.jelly

* Working!

* WB

* Tidy up

* Fixes

* Update sidepanel.jelly

* Lint

* Tidy up

* Update ManageJenkinsAction.java

* Simplify

* Update _side-panel-tasks.scss

* Update _side-panel-tasks.scss

* Update UserAction.java

* Update Jenkins.java

* Add border to account image

* Tidy up avatars

* Update _side-panel-tasks.scss

* Init

* Tidy up

* Hide behind flag

* Update sidepanel.jelly

* Push

* Tidy up

* Update logo.jelly

* Accessibility

* Update _breadcrumbs-new.scss

* Fix dropdown theme

* Update _breadcrumbs.scss

* Update _header.scss

* Update ManageJenkinsAction.java

* Remove flag

* Tidy up

* Update with HeaderAction

* Revert "Update with HeaderAction"

This reverts commit 2ea0b1f867c3f3ae446c81ae780a8eb8a28c3d88.

* Tidy

* Update RootAction.java

* Update _breadcrumbs.scss

* Push

* Update _header.scss

* Update _header.scss

* Fix invisible actions not actually being invisible, make avatar huge to please Tim

* Tidy

* Push

* Fix breadcrumbs + notification

* Update jumplist.jelly

* Getting there 🚀

* WB

* Update index.jelly

* Update headerContent.jelly

* Responsive

* Push

* Push

* Push

* Update index.js

* Push

* Tidy up

* Tidy up

* Tidy

* Update logo.jelly

* Delete NewHeaderUserExperimentalFlag.java

* Lint

* Update index.js

* Update index.js

* Fix some tests

* Update headerContent.jelly

* Update headerContent.jelly

* Remove bravo test - need to confirm this

* Update Security3349Test.java

* Update pom.xml

* Fix SpotBugs + i18n

* Add doc for header scroll, support prefers contrast

* Add overflow menu for actions, improve accessibility

* Update actions-overflow.js

* Fix tests + accessibility

* Fix JS

* Update breadcrumbs-overflow.js

* Update breadcrumbs-overflow.js

* Add breadcrumb menu on hover, fix issues on mobile

* Update _breadcrumbs.scss

* i18n

* Update pom.xml

* Add tab support for user dropdown

* Squashed commit of the following:

commit 847981ebcb6ae6aaac5463602cb185e2ade40200
Merge: 0ea6dcff0e 23f2b9ef59
Author: Kris Stern <krisstern@outlook.com>
Date:   Wed Feb 26 09:16:52 2025 +0800

    Merge branch 'master' into add-groups-to-command-palette

commit 0ea6dcff0e791c2e63d3da5b942e0524e1dc9620
Merge: c0777dbe79 68425e2cd4
Author: Kris Stern <krisstern@outlook.com>
Date:   Wed Feb 26 01:06:33 2025 +0800

    Merge branch 'master' into add-groups-to-command-palette

commit c0777dbe79b022dda8eb6f4fff117cf39064ee2b
Merge: 1638afe17e c37293c52d
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Mon Feb 24 13:40:35 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit 1638afe17eaabc2d0cfe2a1b9240cd40df8ce4d6
Merge: c987a9e536 b97764d3fd
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Fri Feb 21 11:49:03 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit c987a9e536a56c5815d868def8c5c6a3dbf1f2d6
Merge: f909eec0d4 16748f4413
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Thu Feb 20 08:17:19 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit f909eec0d49fb71e81ceeecf5a81f4d5159a16d3
Merge: 85eedb7e88 217b0f5742
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Feb 19 16:12:45 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit 85eedb7e88c38f0ae872f2f0a0c154162cf5c455
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Feb 19 16:11:24 2025 +0000

    Move to Item

commit 8f4f117bac52988dc2a3e11602159304bb43fd2c
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Feb 19 15:43:50 2025 +0000

    Tighten up animations + improve contrast

commit d7b7d6388deb477ba0cfb07588cff9f87e144c1d
Merge: 8750f7cb92 4fa61274f9
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Feb 19 08:50:45 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit 8750f7cb922e97fdb621fec6bff376786863db14
Merge: 7b527340a2 a05c33f797
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Tue Feb 18 21:42:31 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit 7b527340a27e81af95343e70fce8ad1a610f0850
Merge: e2c133d128 3505fb3540
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Mon Feb 17 20:59:02 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit e2c133d1283e7e444fd49e21a26753f2085e925c
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Sun Feb 16 18:23:14 2025 +0000

    Update require-changelog-label.yml

commit d32a61c1eabdb66b0d8d5e3300c714de484c8989
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Sun Feb 16 17:11:18 2025 +0000

    Update _theme.scss

commit 42ecfcac5c555800d3b24fe6af6705e62073ddec
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Sun Feb 16 17:10:48 2025 +0000

    Rename to Items

commit cc3779171a89988d2755092cd6b490be9b3a9b86
Merge: 0f1cb2187c 2b9d4d62a6
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Sun Feb 16 17:10:25 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit 0f1cb2187c66967a209e7cca34a6faf2775e6690
Merge: 04dc6cd222 9474c89bf1
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Feb 12 20:42:01 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit 04dc6cd2225f4635a5f91c648d9e3dbbb0a7350d
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Tue Feb 11 17:06:31 2025 +0000

    Reduce spacing a touch, fix icon spacing

commit 0ab3665587aec8a2c6d458bc394594299fecbbf2
Merge: 7c9e172b2f 848ac9b66a
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Tue Feb 11 14:44:03 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit 7c9e172b2f427ffd9b1a85594615261bea327477
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Tue Feb 11 11:23:27 2025 +0000

    Update Messages.properties

commit ec6a5e5ee01879fe817a6827ed42e238f6d46217
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Tue Feb 11 08:51:16 2025 +0000

    Fix test

commit 14a64885a2284883d86f2af8f7ce4745d34511db
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Mon Feb 10 16:44:39 2025 +0000

    Tidy up

commit 46a9e5681a98d86914123c50cec31ea6d3d01d0c
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Mon Feb 10 16:28:15 2025 +0000

    Tidy

commit d7270b1fa49b27c2005e86807400f033969d7a41
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Mon Feb 10 16:06:04 2025 +0000

    Tidy

commit b2da3f8d39c2c606c293919562528732390f386c
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Mon Feb 10 16:03:37 2025 +0000

    Tidy up

commit b746fba008faf4784747c7494a4995628c02726e
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Mon Feb 10 15:53:53 2025 +0000

    Move to extensionpoint

commit 7827304ae14cafbfc1f1500dea16881d6e4dec6a
Merge: cac127d119 d03a2e11c9
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Mon Feb 10 15:45:28 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit cac127d1196eeda50d15457384bf57009e7a0f41
Merge: add75bf6a9 e3e3c45270
Author: Tim Jacomb <21194782+timja@users.noreply.github.com>
Date:   Mon Jan 13 11:03:10 2025 +0000

    Merge branch 'jenkinsci:master' into add-groups-to-command-palette

commit add75bf6a9605ab61bf66b9e5e736803cb836d93
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Sat Jan 11 19:02:52 2025 +0000

    Update _command-palette.scss

commit eb4073f4fb74217d6aaf1ad960151e10318b67f0
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Sat Jan 11 18:59:37 2025 +0000

    Tidy up

commit 323e48fddfa079550c040066272a50efdcc0ede6
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Sat Jan 11 18:47:34 2025 +0000

    Update Job.java

commit 3cbdfbc4b5d3981c7c69c3c742127d11972e13c0
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Sat Jan 11 18:47:13 2025 +0000

    Update _command-palette.scss

commit 8fecf0d88053b43953d25d0430e2662b8e4ec02e
Merge: 428e826fcd 331c7685ca
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Sat Jan 11 18:45:30 2025 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit 428e826fcd1597f216b8534414aba45556e3ac03
Merge: 5657369d95 f1b6d31272
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Mon Dec 16 20:53:15 2024 +0000

    Merge branch 'master' into add-groups-to-command-palette

commit 5657369d9556231595c20aa2c7c8e9b3d0ae0f7c
Merge: 26f17a277f 674d5085c3
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Fri Dec 13 09:46:35 2024 +0000

    Merge branch 'add-icons-to-command-palette' into add-groups-to-command-palette

commit 674d5085c333e3f580279ae0dbb8ce032b45c1b9
Merge: 809d2e6120 7020e80af8
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Fri Dec 13 09:42:59 2024 +0000

    Merge branch 'master' into add-icons-to-command-palette

commit 26f17a277f39cb27528bd647db266174a95b356e
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Dec 11 22:10:56 2024 +0000

    Update _command-palette.scss

commit 2b6ffc85f33c17a095dffc770b5c383293d5d261
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Dec 11 22:09:09 2024 +0000

    Init

commit 809d2e6120b36093c60ab88e2794d14fb3aaa5ea
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Dec 11 21:37:47 2024 +0000

    Make iconXml private, rename to icon

commit 3d45ca7c3926586e17f8aed1f31f556109e63ea2
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Dec 11 21:29:27 2024 +0000

    Add group field

commit 80f24cbfdcbadd52801c987e75cffec761df8fc6
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Dec 11 21:25:23 2024 +0000

    Init

commit 1b9faa8fb0c129a1543b97aae2de55f676f2cecc
Merge: d6868c970a 26738449cd
Author: Tim Jacomb <timjacomb1@gmail.com>
Date:   Wed Dec 11 21:11:56 2024 +0000

    Merge branch 'add-icons-to-command-palette' of github.com:janfaracik/jenkins into add-icons-to-command-palette

commit d6868c970a06a17633cf7d145beef28598730a0b
Author: Tim Jacomb <timjacomb1@gmail.com>
Date:   Wed Dec 11 21:11:41 2024 +0000

    Reword javadoc

commit 26738449cd62ea3c007503c0bebff4872b1fc14b
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Dec 11 21:03:29 2024 +0000

    Implement IconSpec in IComputer

commit 57910109f32aa4cb2cf81188c12534f676e5a4ac
Merge: 661f994783 05ed7560fd
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Dec 11 20:23:58 2024 +0000

    Merge branch 'master' into add-icons-to-command-palette

commit 661f994783b96c867b2b0a618e66c603d5384b40
Merge: 23570203ea dad5ef3266
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Dec 11 20:15:22 2024 +0000

    Merge branch 'refine-command-palette' into add-icons-to-command-palette

commit 23570203ea4eace9656825f7fb2e7233cdd59592
Merge: 436a02b9d3 788ae63c50
Author: Tim Jacomb <timjacomb1@gmail.com>
Date:   Wed Dec 11 16:35:43 2024 +0000

    Merge branch 'add-icons-to-command-palette' of github.com:janfaracik/jenkins into add-icons-to-command-palette

commit 436a02b9d307183e6cdedca66ec565f639896474
Author: Tim Jacomb <timjacomb1@gmail.com>
Date:   Wed Dec 11 16:35:24 2024 +0000

    Add support for images

commit a3fdb3e0c7df55fdf2876dc71ad0e3cda13289c5
Merge: ea67d6a554 d22cc2fa3c
Author: Tim Jacomb <timjacomb1@gmail.com>
Date:   Wed Dec 11 15:27:12 2024 +0000

    Merge branch 'master' into add-icons-to-command-palette

commit 788ae63c5077057f5c53cf29cb61e2bbda5facb5
Merge: ea67d6a554 d22cc2fa3c
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Wed Dec 11 10:00:04 2024 +0000

    Merge branch 'jenkinsci:master' into add-icons-to-command-palette

commit dad5ef3266cf3a188a78f42c36eaa4c381e5bbf4
Merge: cc63c9c8e5 d22cc2fa3c
Author: Tim Jacomb <21194782+timja@users.noreply.github.com>
Date:   Wed Dec 11 09:07:05 2024 +0000

    Merge branch 'master' into refine-command-palette

commit ea67d6a554417f3a976918b242b78ee3a816b2a9
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Tue Dec 10 22:26:16 2024 +0000

    Update Search.java

commit a9aadbab3068e2f456866523f94ff88fa9052184
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Tue Dec 10 22:25:40 2024 +0000

    Revert "Update Search.java"

    This reverts commit 24837ea667183f189ee0ab73e86cb8cda58c8fe2.

commit 24837ea667183f189ee0ab73e86cb8cda58c8fe2
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Tue Dec 10 21:59:03 2024 +0000

    Update Search.java

commit d43a8d3b2f4121e234ef16a7b4723e271cd9c43e
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Tue Dec 10 21:54:23 2024 +0000

    Init

commit cc63c9c8e50a27b78874ac67f48584e232c4e1b5
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Tue Dec 10 21:37:09 2024 +0000

    Refine command palette

* Move logo

* Revert "Move logo"

This reverts commit 25647d6a040fee15378ed4821cfde2cff29a015a.

* Move actions to taglib

* Split logo from breadcrumbs

* Fix sticky app bar

* Update _page-header.scss

* Update HudsonTest.java

* Update _page-header.scss

* Move breadcrumb loading above setting mode to header

* Reduce header height

* Increase logo height

* Move getActions to Header

* Update header avatar with jenkins-avatar

* Squashed commit of the following:

commit 5060044fcd4a0edf7083906a542f7ed5d4066fc3
Merge: 0ea3e49fa1 2fb523ffe3
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Sat Mar 22 17:56:53 2025 +0000

    Merge branch 'master' into improve-tooltips-dropdowns

commit 0ea3e49fa11dfe53d21fbef283d3125dcc6f521c
Merge: 3dd0b9f421 a1f9d3e7e2
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Sat Mar 22 12:24:49 2025 +0000

    Merge branch 'master' into improve-tooltips-dropdowns

commit 3dd0b9f421b8921a4c5624af8596d6c2f6434441
Merge: 7f5f814aa5 73185b257d
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Fri Mar 21 09:57:52 2025 +0000

    Merge branch 'master' into improve-tooltips-dropdowns

commit 7f5f814aa543ca93e49cc95bd7c0281d844714c5
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Thu Mar 20 10:26:32 2025 +0000

    Update _dropdowns.scss

commit e9eee3c0a4548de82832c8ea45c72db4eab4418e
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Thu Mar 20 10:25:35 2025 +0000

    Update _theme.scss

commit ce11fd1fb33492fdb8ced65c8ce74821eb8f5e6f
Author: Jan Faracik <43062514+janfaracik@users.noreply.github.com>
Date:   Thu Mar 20 10:22:07 2025 +0000

    Init

* Delete idea files

* Update core/src/main/java/jenkins/views/Header.java

Co-authored-by: Markus Winter <m.winter@sap.com>

* Sort actions manually in header

* Update markup and CSS

* Handle that dodgy SVG messing up the label

* Fix new computer missing sidepanel

* Update core/src/main/resources/lib/layout/header/actions.jelly

Co-authored-by: Markus Winter <m.winter@sap.com>

* Update core/src/main/java/jenkins/views/Header.java

Co-authored-by: Markus Winter <m.winter@sap.com>

* Update core/src/main/resources/lib/layout/header/actions.jelly

Co-authored-by: Markus Winter <m.winter@sap.com>

* Update Header.java

---------

Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com>
Co-authored-by: Kris Stern <krisstern@outlook.com>
Co-authored-by: Markus Winter <m.winter@sap.com>
2025-04-18 12:24:10 +08:00

184 lines
5.5 KiB
JavaScript

const path = require("path");
const MiniCSSExtractPlugin = require("mini-css-extract-plugin");
const CssMinimizerPlugin = require("css-minimizer-webpack-plugin");
const RemoveEmptyScriptsPlugin = require("webpack-remove-empty-scripts");
const { CleanWebpackPlugin: CleanPlugin } = require("clean-webpack-plugin");
module.exports = (env, argv) => ({
mode: "development",
entry: {
pluginSetupWizard: [
path.join(__dirname, "src/main/js/pluginSetupWizard.js"),
path.join(__dirname, "src/main/scss/pluginSetupWizard.scss"),
],
"plugin-manager-ui": [
path.join(__dirname, "src/main/js/plugin-manager-ui.js"),
],
"add-item": [
path.join(__dirname, "src/main/js/add-item.js"),
path.join(__dirname, "src/main/js/add-item.scss"),
],
"pages/computer-set": [
path.join(__dirname, "src/main/js/pages/computer-set"),
],
"pages/dashboard": [path.join(__dirname, "src/main/js/pages/dashboard")],
"pages/manage-jenkins/system-information": [
path.join(
__dirname,
"src/main/js/pages/manage-jenkins/system-information",
),
],
app: [path.join(__dirname, "src/main/js/app.js")],
header: [path.join(__dirname, "src/main/js/components/header/index.js")],
"pages/cloud-set": [
path.join(__dirname, "src/main/js/pages/cloud-set/index.js"),
path.join(__dirname, "src/main/js/pages/cloud-set/index.scss"),
],
"pages/manage-jenkins": [
path.join(__dirname, "src/main/js/pages/manage-jenkins"),
],
"pages/register": [path.join(__dirname, "src/main/js/pages/register")],
"keyboard-shortcuts": [
path.join(__dirname, "src/main/js/keyboard-shortcuts.js"),
],
"sortable-drag-drop": [
path.join(__dirname, "src/main/js/sortable-drag-drop.js"),
],
"section-to-sidebar-items": [
path.join(__dirname, "src/main/js/section-to-sidebar-items.js"),
],
"section-to-tabs": [path.join(__dirname, "src/main/js/section-to-tabs.js")],
"components/row-selection-controller": [
path.join(__dirname, "src/main/js/components/row-selection-controller"),
],
"pages/project/builds-card": [
path.join(__dirname, "src/main/js/pages/project/builds-card.js"),
],
"simple-page": [path.join(__dirname, "src/main/scss/simple-page.scss")],
styles: [path.join(__dirname, "src/main/scss/styles.scss")],
},
output: {
path: path.join(__dirname, "war/src/main/webapp/jsbundles"),
},
devtool:
argv.mode === "production"
? "source-map"
: "inline-cheap-module-source-map",
plugins: [
new RemoveEmptyScriptsPlugin({}),
new MiniCSSExtractPlugin({
filename: "[name].css",
}),
// Clean all assets within the specified output.
// It will not clean copied fonts
new CleanPlugin(),
],
module: {
rules: [
{
test: /\.(css|scss)$/,
use: [
"style-loader",
{
loader: MiniCSSExtractPlugin.loader,
options: {
esModule: false,
},
},
{
loader: "css-loader",
options: {
sourceMap: true,
// ignore the URLS on the base styles as they are picked
// from the war/src/main/webapp/images dir
url: {
filter: (url, resourcePath) => {
return !resourcePath.includes("styles.scss");
},
},
},
},
{
loader: "postcss-loader",
options: {
sourceMap: true,
},
},
{
loader: "sass-loader",
options: {
sourceMap: true,
},
},
],
},
{
test: /\.(woff(2)?|ttf|eot|svg)(\?v=\d+\.\d+\.\d+)?$/,
type: "asset/resource",
generator: {
filename: "fonts/[name].[ext]",
},
},
{
test: /\.hbs$/,
loader: "handlebars-loader",
options: {
// The preferred option for adding handlebars helpers is putting them
// inside this helpers directory
helperDirs: path.join(__dirname, "src/main/js/handlebars-helpers"),
precompileOptions: {
knownHelpersOnly: false,
// Helpers registered with Handlebars.registerHelper must be listed so that
// handlebars-loader will expect them when compiling the templates.
// This helpers cannot be moved to the helpers directory because they are closures
knownHelpers: [
"pluginCountForCategory",
"totalPluginCount",
"inSelectedPlugins",
"dependencyCount",
"eachDependency",
"ifVisibleDependency",
],
},
},
},
{
test: /\.js$/,
exclude: /node_modules/,
loader: "babel-loader",
},
],
},
optimization: {
splitChunks: {
chunks: "async",
cacheGroups: {
commons: {
test: /[\\/]node_modules[\\/]/,
name: "vendors",
chunks: "all",
},
},
},
minimizer: [
new CssMinimizerPlugin({
minimizerOptions: {
preset: [
"default",
{
svgo: { exclude: true },
},
],
},
}),
],
},
resolve: {
alias: {
"@": path.resolve(__dirname, "src/main/js"),
// Needed to be able to register helpers at runtime
handlebars: "handlebars/runtime",
},
},
});