feat: source map remapping for runtime stack trace displays

This commit is contained in:
Nathan Walker
2025-08-02 17:46:33 -07:00
parent 6e41e738ee
commit c934d898b4
3 changed files with 128 additions and 1 deletions

View File

@@ -44,6 +44,14 @@ export default function (config: Config, env: IWebpackEnv = _env): Config {
// set mode
config.mode(mode);
// use source map files with v9+
function useSourceMapFiles() {
if (mode === 'development') {
// in development we always use source-map files with v9+ runtimes
// they are parsed and mapped to display in-flight app error screens
env.sourceMap = 'source-map';
}
}
// determine target output by @nativescript/core version
// v9+ supports ESM output, anything below uses CommonJS
if (hasDependency('@nativescript/core')) {
@@ -51,9 +59,13 @@ export default function (config: Config, env: IWebpackEnv = _env): Config {
// ensure alpha/beta/rc versions are considered as well
if (coreVersion && !coreVersion.includes('9.0.0')) {
if (!satisfies(coreVersion, '>=9.0.0')) {
// @nativescript/core < 9.0.0 uses CommonJS output
// @nativescript/core < 9 uses CommonJS output
env.commonjs = true;
} else {
useSourceMapFiles();
}
} else {
useSourceMapFiles();
}
}