From f7a53e6c6b81020d4f99d33a1364f9411ad7df3f Mon Sep 17 00:00:00 2001 From: Roman Date: Wed, 26 Jan 2022 13:07:07 +0200 Subject: [PATCH] merge-fixes, using internal webpack@5 asset handlers (type: "asset/*") Signed-off-by: Roman --- package.json | 6 +- .../catalog-entities/kubernetes-cluster.ts | 2 +- src/renderer/components/icon/icon.tsx | 2 +- webpack.main.ts | 4 ++ webpack.renderer.ts | 20 ++---- yarn.lock | 68 +++++++++---------- 6 files changed, 48 insertions(+), 54 deletions(-) diff --git a/package.json b/package.json index 5d7606deff..16487f3668 100644 --- a/package.json +++ b/package.json @@ -244,7 +244,6 @@ "react": "^17.0.2", "react-dom": "^17.0.2", "react-material-ui-carousel": "^2.3.8", - "react-refresh": "^0.11.0", "react-router": "^5.2.0", "react-virtualized-auto-sizer": "^1.0.6", "readable-stream": "^3.6.0", @@ -345,7 +344,6 @@ "eslint-plugin-react": "^7.27.1", "eslint-plugin-react-hooks": "^4.3.0", "eslint-plugin-unused-imports": "^1.1.5", - "file-loader": "^6.2.0", "flex.box": "^3.4.4", "fork-ts-checker-webpack-plugin": "^6.5.0", "hoist-non-react-statics": "^3.3.2", @@ -364,7 +362,6 @@ "postcss": "^8.4.5", "postcss-loader": "^6.2.1", "randomcolor": "^0.6.2", - "raw-loader": "^4.0.2", "react-beautiful-dnd": "^13.1.0", "react-router-dom": "^5.3.0", "react-select": "3.2.0", @@ -386,8 +383,7 @@ "typeface-roboto": "^1.1.13", "typescript": "^4.5.2", "typescript-plugin-css-modules": "^3.4.0", - "url-loader": "^4.1.1", - "webpack": "^5.66.0", + "webpack": "^5.67.0", "webpack-cli": "^4.9.1", "webpack-dev-server": "^4.7.3", "webpack-node-externals": "^3.0.0", diff --git a/src/common/catalog-entities/kubernetes-cluster.ts b/src/common/catalog-entities/kubernetes-cluster.ts index 813d5d3866..f697d90bf0 100644 --- a/src/common/catalog-entities/kubernetes-cluster.ts +++ b/src/common/catalog-entities/kubernetes-cluster.ts @@ -134,7 +134,7 @@ class KubernetesClusterCategory extends CatalogCategory { public readonly kind = "CatalogCategory"; public metadata = { name: "Clusters", - icon: require(`!!raw-loader!./icons/kubernetes.svg`).default, // eslint-disable-line + icon: require(`./icons/kubernetes.svg?raw`).default, // eslint-disable-line }; public spec: CatalogCategorySpec = { group: "entity.k8slens.dev", diff --git a/src/renderer/components/icon/icon.tsx b/src/renderer/components/icon/icon.tsx index d84f7df6de..3c8d2df164 100644 --- a/src/renderer/components/icon/icon.tsx +++ b/src/renderer/components/icon/icon.tsx @@ -100,7 +100,7 @@ export class Icon extends React.PureComponent { // render as inline svg-icon if (typeof svg === "string") { - const svgIconText = svg.includes("; } diff --git a/webpack.main.ts b/webpack.main.ts index 68e584aa35..ec158fae07 100755 --- a/webpack.main.ts +++ b/webpack.main.ts @@ -42,6 +42,10 @@ configs.push((): webpack.Configuration => { test: /\.node$/, use: "node-loader", }, + { + resourceQuery: /raw/, + type: "asset/source", + }, getTSLoader({}, /\.ts$/), ], }, diff --git a/webpack.renderer.ts b/webpack.renderer.ts index 8b01272547..c8c31e3c27 100755 --- a/webpack.renderer.ts +++ b/webpack.renderer.ts @@ -60,6 +60,7 @@ export function webpackLensRenderer(): webpack.Configuration { path: buildDir, filename: "[name].js", chunkFilename: "chunks/[name].js", + assetModuleFilename: "assets/[name][ext][query]", }, stats: { warningsFilter: [ @@ -85,6 +86,10 @@ export function webpackLensRenderer(): webpack.Configuration { test: /\.node$/, use: "node-loader", }, + { + resourceQuery: /raw/, + type: "asset/source", + }, getTSLoader(), cssModulesWebpackRule(), filesAndIconsWebpackRule(), @@ -128,13 +133,7 @@ export function webpackLensRenderer(): webpack.Configuration { export function filesAndIconsWebpackRule(): webpack.RuleSetRule { return { test: /\.(jpg|png|svg|map|ico)$/, - use: { - loader: "file-loader", - options: { - name: "images/[name]-[hash:6].[ext]", - esModule: false, // handle media imports in