fix: distribute proper source maps in npm distribution packages (#9877)

Refs #9101
This commit is contained in:
Oliwia Rogala
2024-04-30 11:11:31 +02:00
committed by GitHub
parent b6805e5635
commit 8c90d5d9d0
8 changed files with 14 additions and 17 deletions

View File

@@ -6,11 +6,8 @@
!dist/swagger-ui.js !dist/swagger-ui.js
!dist/swagger-ui.js.map !dist/swagger-ui.js.map
!dist/swagger-ui-bundle.js !dist/swagger-ui-bundle.js
!dist/swagger-ui-bundle.js.map
!dist/swagger-ui-standalone-preset.js !dist/swagger-ui-standalone-preset.js
!dist/swagger-ui-standalone-preset.js.map
!dist/swagger-ui-es-bundle.js !dist/swagger-ui-es-bundle.js
!dist/swagger-ui-es-bundle.js.map
!dist/swagger-ui-es-bundle-core.js !dist/swagger-ui-es-bundle-core.js
!dist/swagger-ui-es-bundle-core.js.map !dist/swagger-ui-es-bundle-core.js.map
!dist/swagger-ui.css !dist/swagger-ui.css

View File

@@ -14,9 +14,7 @@ cp ../../../dist/swagger-ui-es-bundle-core.js.map ../dist
cp ../../../dist/swagger-ui.js ../dist cp ../../../dist/swagger-ui.js ../dist
cp ../../../dist/swagger-ui.js.map ../dist cp ../../../dist/swagger-ui.js.map ../dist
cp ../../../dist/swagger-ui-bundle.js ../dist cp ../../../dist/swagger-ui-bundle.js ../dist
cp ../../../dist/swagger-ui-bundle.js.map ../dist
cp ../../../dist/swagger-ui-es-bundle.js ../dist cp ../../../dist/swagger-ui-es-bundle.js ../dist
cp ../../../dist/swagger-ui-es-bundle.js.map ../dist
cp ../../../dist/swagger-ui.css ../dist cp ../../../dist/swagger-ui.css ../dist
cp ../../../dist/swagger-ui.css.map ../dist cp ../../../dist/swagger-ui.css.map ../dist

View File

@@ -8,7 +8,7 @@ const webpack = require("webpack")
const TerserPlugin = require("terser-webpack-plugin") const TerserPlugin = require("terser-webpack-plugin")
const nodeExternals = require("webpack-node-externals") const nodeExternals = require("webpack-node-externals")
const { getRepoInfo } = require("./_helpers") const { getRepoInfo, getDevtool } = require("./_helpers")
const pkg = require("../package.json") const pkg = require("../package.json")
const projectBasePath = path.join(__dirname, "../") const projectBasePath = path.join(__dirname, "../")
@@ -129,13 +129,7 @@ function buildConfig(
}, },
}, },
// If we're mangling, size is a concern -- so use trace-only sourcemaps devtool: getDevtool(sourcemaps, minimize),
// Otherwise, provide heavy souremaps suitable for development
devtool: sourcemaps
? minimize
? "nosources-source-map"
: "cheap-module-source-map"
: false,
performance: { performance: {
hints: "error", hints: "error",
@@ -149,6 +143,7 @@ function buildConfig(
(compiler) => (compiler) =>
new TerserPlugin({ new TerserPlugin({
terserOptions: { terserOptions: {
sourceMap: sourcemaps,
mangle: !!mangle, mangle: !!mangle,
keep_classnames: keep_classnames:
!customConfig.mode || customConfig.mode === "production", !customConfig.mode || customConfig.mode === "production",

View File

@@ -16,6 +16,12 @@ function getRepoInfo() {
} }
} }
function getDevtool(sourcemaps, minimize) {
if (!sourcemaps) return false
return minimize ? "source-map" : "cheap-module-source-map"
}
module.exports = { module.exports = {
getRepoInfo, getRepoInfo,
getDevtool,
} }

View File

@@ -22,7 +22,7 @@ const result = configBuilder(
{ {
minimize: true, minimize: true,
mangle: true, mangle: true,
sourcemaps: true, sourcemaps: false,
includeDependencies: true, includeDependencies: true,
}, },
{ {

View File

@@ -14,6 +14,7 @@ const {
WebpackBundleSizeAnalyzerPlugin, WebpackBundleSizeAnalyzerPlugin,
} = require("webpack-bundle-size-analyzer") } = require("webpack-bundle-size-analyzer")
const nodeExternals = require("webpack-node-externals") const nodeExternals = require("webpack-node-externals")
const { getDevtool } = require("./_helpers")
// const { StatsWriterPlugin } = require("webpack-stats-plugin") // const { StatsWriterPlugin } = require("webpack-stats-plugin")
const minimize = true const minimize = true
@@ -44,7 +45,7 @@ const result = configBuilder(
module: true, module: true,
}, },
}, },
devtool: sourcemaps && minimize ? "source-map" : false, devtool: getDevtool(sourcemaps, minimize),
externalsType: "module", externalsType: "module",
externals: [ externals: [
{ {

View File

@@ -21,7 +21,7 @@ const result = configBuilder(
{ {
minimize: true, minimize: true,
mangle: true, mangle: true,
sourcemaps: true, sourcemaps: false,
includeDependencies: true, includeDependencies: true,
}, },
{ {

View File

@@ -8,7 +8,7 @@ const result = configBuilder(
{ {
minimize: true, minimize: true,
mangle: true, mangle: true,
sourcemaps: true, sourcemaps: false,
}, },
{ {
entry: { entry: {