From f5b2d71cd70ffd919023db665b865ef2a6f28508 Mon Sep 17 00:00:00 2001 From: Caleb Kniffen Date: Wed, 1 Jun 2022 11:50:23 -0500 Subject: [PATCH] feat(source-maps): Generate source-maps for browser build (#2010) Improve debugging for users loading in library via unpkg or jsdelivr --- package-lock.json | 72 ++++++++++++++++++++++++++++++++- package.json | 1 + packages/xrpl/package.json | 4 +- packages/xrpl/webpack.config.js | 8 +++- 4 files changed, 82 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index a9b772a8..06499d95 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,7 +4,6 @@ "requires": true, "packages": { "": { - "name": "xrpl.js", "workspaces": [ "packages/*" ], @@ -53,6 +52,7 @@ "process": "^0.11.10", "puppeteer": "^13.7.0", "run-script-os": "^1.1.6", + "source-map-loader": "^3.0.1", "source-map-support": "^0.5.16", "stream-browserify": "^3.0.0", "stream-http": "3.2.0", @@ -14463,6 +14463,48 @@ "node": ">=0.10.0" } }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-loader": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-3.0.1.tgz", + "integrity": "sha512-Vp1UsfyPvgujKQzi4pyDiTOnE3E4H+yHvkVRN3c/9PJmQS4CQJExvcDvaX/D+RV+xQben9HJ56jMJS3CgUeWyA==", + "dev": true, + "dependencies": { + "abab": "^2.0.5", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/source-map-loader/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/source-map-resolve": { "version": "0.5.3", "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", @@ -27801,6 +27843,34 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true + }, + "source-map-loader": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-3.0.1.tgz", + "integrity": "sha512-Vp1UsfyPvgujKQzi4pyDiTOnE3E4H+yHvkVRN3c/9PJmQS4CQJExvcDvaX/D+RV+xQben9HJ56jMJS3CgUeWyA==", + "dev": true, + "requires": { + "abab": "^2.0.5", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.1" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, "source-map-resolve": { "version": "0.5.3", "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", diff --git a/package.json b/package.json index 15ccde9c..2d7c9996 100644 --- a/package.json +++ b/package.json @@ -55,6 +55,7 @@ "process": "^0.11.10", "puppeteer": "^13.7.0", "run-script-os": "^1.1.6", + "source-map-loader": "^3.0.1", "source-map-support": "^0.5.16", "stream-browserify": "^3.0.0", "stream-http": "3.2.0", diff --git a/packages/xrpl/package.json b/packages/xrpl/package.json index 1946d3d0..d5ec8dfa 100644 --- a/packages/xrpl/package.json +++ b/packages/xrpl/package.json @@ -6,7 +6,9 @@ "files": [ "dist/npm/*", "build/xrpl-latest-min.js", - "build/xrpl-latest.js" + "build/xrpl-latest-min.js.map", + "build/xrpl-latest.js", + "build/xrpl-latest.js.map" ], "main": "dist/npm/", "unpkg": "build/xrpl-latest-min.js", diff --git a/packages/xrpl/webpack.config.js b/packages/xrpl/webpack.config.js index 6238c488..aed3785a 100644 --- a/packages/xrpl/webpack.config.js +++ b/packages/xrpl/webpack.config.js @@ -23,6 +23,7 @@ function getDefaultConfiguration() { path: path.join(__dirname, 'build/'), filename: `xrpl.default.js`, }, + devtool: 'source-map', plugins: [ new webpack.NormalModuleReplacementPlugin(/^ws$/, './WSWrapper'), new webpack.ProvidePlugin({ process: 'process/browser' }), @@ -45,7 +46,12 @@ function getDefaultConfiguration() { }), ], module: { - rules: [], + rules: [ + { + test: /\.js$/, + use: ['source-map-loader'], + }, + ], }, resolve: { alias: {