Skip to content

Commit a6902c0

Browse files
committed
build: use Webpack for building frontend.
The dependencies have been updated with: $ ./mvnw -Pfrontend frontend:npm -Dfrontend.npm.arguments='install --save-dev webpack webpack-cli babel-loader' $ ./mvnw -Pfrontend frontend:npm -Dfrontend.npm.arguments='uninstall @babel/cli' Fix #1455
1 parent cefbc0e commit a6902c0

10 files changed

+2457
-287
lines changed

src/main/frontend/package-lock.json

+2,400-275
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/main/frontend/package.json

+7-11
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,16 @@
55
"private": true,
66
"dependencies": {},
77
"devDependencies": {
8-
"@babel/cli": "~7.10.1",
98
"@babel/core": "~7.10.2",
109
"@babel/preset-env": "~7.10.2",
11-
"@babel/preset-react": "~7.10.1"
10+
"@babel/preset-react": "~7.10.1",
11+
"babel-loader": "~8.1.0",
12+
"webpack": "~4.43.0",
13+
"webpack-cli": "~3.3.12"
1214
},
1315
"scripts": {
14-
"build": "babel src --out-dir ../../../target/classes/js",
15-
"watch": "babel src --out-dir ../../../target/classes/js --watch"
16+
"build": "webpack",
17+
"watch": "webpack --watch"
1618
},
1719
"repository": {
1820
"type": "git",
@@ -31,11 +33,5 @@
3133
"url": "https://github.com/php-coder/mystamps/issues",
3234
"email": "[email protected]"
3335
},
34-
"homepage": "https://github.com/php-coder/mystamps#readme",
35-
"babel": {
36-
"presets": [
37-
"@babel/preset-react",
38-
"@babel/preset-env"
39-
]
40-
}
36+
"homepage": "https://github.com/php-coder/mystamps#readme"
4137
}

src/main/frontend/src/components/AddCatalogNumbersForm.js

+2
Original file line numberDiff line numberDiff line change
@@ -167,3 +167,5 @@ class AddCatalogNumbersFormView extends React.PureComponent {
167167
);
168168
}
169169
}
170+
171+
window.AddCatalogNumbersForm = AddCatalogNumbersForm;

src/main/frontend/src/components/AddCatalogPriceForm.js

+2
Original file line numberDiff line numberDiff line change
@@ -185,3 +185,5 @@ class AddCatalogPriceFormView extends React.PureComponent {
185185
);
186186
}
187187
}
188+
189+
window.AddCatalogPriceForm = AddCatalogPriceForm;

src/main/frontend/src/components/AddCommentForm.js

+2
Original file line numberDiff line numberDiff line change
@@ -132,3 +132,5 @@ class AddCommentFormView extends React.PureComponent {
132132
);
133133
}
134134
}
135+
136+
window.AddCommentForm = AddCommentForm;

src/main/frontend/src/components/AddReleaseYearForm.js

+2
Original file line numberDiff line numberDiff line change
@@ -148,3 +148,5 @@ class AddReleaseYearFormView extends React.PureComponent {
148148
);
149149
}
150150
}
151+
152+
window.AddReleaseYearForm = AddReleaseYearForm;

src/main/frontend/src/components/SeriesSaleImportForm.js

+2
Original file line numberDiff line numberDiff line change
@@ -174,3 +174,5 @@ class SeriesSaleImportFormView extends React.PureComponent {
174174
)
175175
}
176176
}
177+
178+
window.SeriesSaleImportForm = SeriesSaleImportForm;

src/main/frontend/src/components/SeriesSalesList.js

+2
Original file line numberDiff line numberDiff line change
@@ -129,3 +129,5 @@ class ParticipantLink extends React.PureComponent {
129129
)
130130
}
131131
}
132+
133+
window.SeriesSalesList = SeriesSalesList;

src/main/frontend/src/components/SimilarSeriesForm.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ class SimilarSeriesForm extends React.PureComponent {
2929
handleSubmit(event) {
3030
event.preventDefault();
3131

32-
const similarSeriesIds = CatalogUtils.expandNumbers(this.state.similarSeriesIds)
32+
const similarSeriesIds = window.CatalogUtils.expandNumbers(this.state.similarSeriesIds)
3333
.split(',')
3434
.map(number => parseInt(number, 10))
3535
.filter(number => !isNaN(number));
@@ -139,3 +139,5 @@ class SimilarSeriesFormView extends React.PureComponent {
139139
)
140140
}
141141
}
142+
143+
window.SimilarSeriesForm = SimilarSeriesForm;

src/main/frontend/webpack.config.js

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
const path = require('path');
2+
3+
const SRC_DIR = './src/components/';
4+
5+
// @todo #1455 Remove export of components to window
6+
module.exports = {
7+
mode: 'production',
8+
entry: {
9+
AddCatalogNumbersForm: SRC_DIR + 'AddCatalogNumbersForm.js',
10+
AddCatalogPriceForm: SRC_DIR + 'AddCatalogPriceForm.js',
11+
AddCommentForm: SRC_DIR + 'AddCommentForm.js',
12+
AddReleaseYearForm: SRC_DIR + 'AddReleaseYearForm.js',
13+
SeriesSaleImportForm: SRC_DIR + 'SeriesSaleImportForm.js',
14+
SeriesSalesList: SRC_DIR + 'SeriesSalesList.js',
15+
SimilarSeriesForm: SRC_DIR + 'SimilarSeriesForm.js'
16+
},
17+
output: {
18+
path: path.resolve(__dirname, '../../../target/classes/js/components'),
19+
filename: '[name].js'
20+
},
21+
module: {
22+
rules: [
23+
{
24+
test: /\.js$/,
25+
exclude: /node_modules/,
26+
use: {
27+
loader: 'babel-loader',
28+
options: {
29+
presets: [ "@babel/preset-react", "@babel/preset-env" ]
30+
}
31+
}
32+
}
33+
]
34+
}
35+
}

0 commit comments

Comments
 (0)