build(docker/frontend): fix babel and webpack config for new node version
This commit is contained in:
parent
95e1f03d31
commit
0ecba9f829
17
.babelrc
17
.babelrc
@ -1,17 +0,0 @@
|
|||||||
{
|
|
||||||
"presets": [
|
|
||||||
["env", {
|
|
||||||
"useBuiltIns": "usage",
|
|
||||||
"targets": { "node": "current" }
|
|
||||||
}
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"plugins": [
|
|
||||||
["@babel/plugin-proposal-decorators", { "legacy": true }],
|
|
||||||
["@babel/plugin-proposal-class-properties", { "loose": true }],
|
|
||||||
["@babel/plugin-proposal-private-methods", { "loose": true }],
|
|
||||||
["@babel/plugin-proposal-private-property-in-object", { "loose": true }],
|
|
||||||
["@babel/plugin-transform-modules-commonjs"],
|
|
||||||
["@babel/transform-runtime"]
|
|
||||||
]
|
|
||||||
}
|
|
||||||
26
babel.config.js
Normal file
26
babel.config.js
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
module.exports = (api) => {
|
||||||
|
api.cache(true);
|
||||||
|
|
||||||
|
const presets = [
|
||||||
|
["env", {
|
||||||
|
"useBuiltIns": "usage",
|
||||||
|
"targets": { "node": "current" },
|
||||||
|
}
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
const plugins = [
|
||||||
|
["@babel/plugin-proposal-decorators", { "legacy": true }],
|
||||||
|
["@babel/plugin-syntax-dynamic-import"],
|
||||||
|
["@babel/plugin-transform-class-properties", { "loose": true }],
|
||||||
|
["@babel/plugin-transform-private-methods", { "loose": true }],
|
||||||
|
["@babel/plugin-transform-private-property-in-object", { "loose": true }],
|
||||||
|
["@babel/plugin-transform-modules-commonjs"],
|
||||||
|
["@babel/transform-runtime"],
|
||||||
|
];
|
||||||
|
|
||||||
|
return {
|
||||||
|
presets,
|
||||||
|
plugins,
|
||||||
|
};
|
||||||
|
}
|
||||||
@ -17,7 +17,7 @@ ENV CHROME_BIN=chromium
|
|||||||
RUN npm install -g n
|
RUN npm install -g n
|
||||||
RUN n 20.17.0
|
RUN n 20.17.0
|
||||||
|
|
||||||
# debug only
|
# debug only, should display v20.17.0
|
||||||
RUN node --version
|
RUN node --version
|
||||||
|
|
||||||
ARG PROJECT_DIR=/fradrive
|
ARG PROJECT_DIR=/fradrive
|
||||||
|
|||||||
3645
package-lock.json
generated
3645
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -13,8 +13,10 @@
|
|||||||
"@babel/core": "^7.25.2",
|
"@babel/core": "^7.25.2",
|
||||||
"@babel/eslint-parser": "^7.25.1",
|
"@babel/eslint-parser": "^7.25.1",
|
||||||
"@babel/plugin-proposal-decorators": "^7.24.7",
|
"@babel/plugin-proposal-decorators": "^7.24.7",
|
||||||
|
"@babel/plugin-syntax-dynamic-import": "^7.8.3",
|
||||||
"@babel/plugin-transform-class-properties": "^7.25.4",
|
"@babel/plugin-transform-class-properties": "^7.25.4",
|
||||||
"@babel/plugin-transform-modules-commonjs": "^7.24.8",
|
"@babel/plugin-transform-modules-commonjs": "^7.24.8",
|
||||||
|
"@babel/plugin-transform-private-methods": "^7.18.6",
|
||||||
"@babel/plugin-transform-private-property-in-object": "^7.24.7",
|
"@babel/plugin-transform-private-property-in-object": "^7.24.7",
|
||||||
"@babel/plugin-transform-runtime": "^7.25.4",
|
"@babel/plugin-transform-runtime": "^7.25.4",
|
||||||
"@babel/preset-env": "^7.25.4",
|
"@babel/preset-env": "^7.25.4",
|
||||||
@ -22,7 +24,7 @@
|
|||||||
"autoprefixer": "^10.4.20",
|
"autoprefixer": "^10.4.20",
|
||||||
"axios": "^1.7.5",
|
"axios": "^1.7.5",
|
||||||
"babel-loader": "^9.1.3",
|
"babel-loader": "^9.1.3",
|
||||||
"babel-plugin-syntax-dynamic-import": "^6.18.0",
|
"babel-preset-env": "^1.7.0",
|
||||||
"clean-webpack-plugin": "^4.0.0",
|
"clean-webpack-plugin": "^4.0.0",
|
||||||
"copy-webpack-plugin": "^12.0.2",
|
"copy-webpack-plugin": "^12.0.2",
|
||||||
"css-loader": "^7.1.2",
|
"css-loader": "^7.1.2",
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// SPDX-FileCopyrightText: 2022-2024 Sarah Vaupel <sarah.vaupel@uniworx.de>, Gregor Kleen <gregor.kleen@ifi.lmu.de>, Sarah Vaupel <sarah.vaupel@ifi.lmu.de>, Sarah Vaupel <vaupel.sarah@campus.lmu.de>, David Mosbach <david.mosbach@uniworx.de>
|
// SPDX-FileCopyrightText: 2022-2024 Sarah Vaupel <sarah.vaupel@uniworx.de>, David Mosbach <david.mosbach@uniworx.de>, Gregor Kleen <gregor.kleen@ifi.lmu.de>, Sarah Vaupel <sarah.vaupel@ifi.lmu.de>, Sarah Vaupel <vaupel.sarah@campus.lmu.de>
|
||||||
//
|
//
|
||||||
// SPDX-License-Identifier: AGPL-3.0-or-later
|
// SPDX-License-Identifier: AGPL-3.0-or-later
|
||||||
|
|
||||||
@ -27,29 +27,27 @@ const webpackVersion = require('webpack/package.json').version.split('.').slice(
|
|||||||
const packageVersion = require('./package.json').version;
|
const packageVersion = require('./package.json').version;
|
||||||
|
|
||||||
async function webpackConfig() {
|
async function webpackConfig() {
|
||||||
const wellKnownCacheDir = path.resolve(__dirname, '.well-known-cache');
|
const wellKnownCacheDir = path.resolve(__dirname, '.cache/well-known');
|
||||||
const assetsDirectory = path.resolve(__dirname, 'assets');
|
const assetsDirectory = path.resolve(__dirname, 'assets');
|
||||||
let faviconApiVersion = undefined;
|
let faviconApiVersion = undefined;
|
||||||
|
|
||||||
// FIXME: fetching current favicon api version broken right now (needs adaptation to axios)
|
if (!fs.existsSync(wellKnownCacheDir)) {
|
||||||
// if (!fs.existsSync(wellKnownCacheDir)) {
|
try {
|
||||||
// try {
|
const faviconApiChangelog = await axios.get('https://realfavicongenerator.net/api/versions');
|
||||||
// const faviconApiChangelog = await axios.get('https://realfavicongenerator.net/api/versions');
|
faviconApiVersion = faviconApiChangelog.data.filter(vObj => vObj.relevance.automated_update).slice(-1)[0].version;
|
||||||
// faviconApiVersion = faviconApiChangelog.filter(vObj => vObj.relevance.automated_update).slice(-1)[0].version;
|
} catch(e) {
|
||||||
// } catch(e) {
|
console.error(e);
|
||||||
// console.error(e);
|
}
|
||||||
// }
|
}
|
||||||
// }
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
module: {
|
module: {
|
||||||
rules: [
|
rules: [
|
||||||
{
|
{
|
||||||
loader: 'babel-loader',
|
loader: 'babel-loader',
|
||||||
|
|
||||||
options: {
|
options: {
|
||||||
plugins: ['syntax-dynamic-import'],
|
// plugins: ['syntax-dynamic-import'],
|
||||||
|
//
|
||||||
presets: [
|
presets: [
|
||||||
[
|
[
|
||||||
'@babel/preset-env',
|
'@babel/preset-env',
|
||||||
|
|||||||
Reference in New Issue
Block a user