Skip to content

Commit 1263657

Browse files
committed
fix(webpack): Aliased module paths now properly map to the correct aurelia-loader module id
Added more information and with more minimal changes
1 parent 2743730 commit 1263657

File tree

3 files changed

+432
-84
lines changed

3 files changed

+432
-84
lines changed

src/AureliaDependenciesPlugin.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { IncludeDependency } from "./IncludeDependency";
22
import BasicEvaluatedExpression = require("webpack/lib/BasicEvaluatedExpression");
3+
import { preserveModuleName } from "./PreserveModuleNamePlugin";
34

45
const TAP_NAME = "Aurelia:Dependencies";
56

@@ -13,7 +14,13 @@ class AureliaDependency extends IncludeDependency {
1314

1415
class Template {
1516
apply(dep: AureliaDependency, source: Webpack.Source) {
16-
source.replace(dep.range[0], dep.range[1] - 1, "'" + dep.request.replace(/^async(?:\?[^!]*)?!/, "") + "'");
17+
// Get the module id, fallback to using the module request
18+
let moduleId: string = dep.request;
19+
if (dep.module && typeof dep.module[preserveModuleName] === 'string') {
20+
moduleId = dep.module[preserveModuleName];
21+
}
22+
23+
source.replace(dep.range[0], dep.range[1] - 1, "'" + moduleId.replace(/^async(?:\?[^!]*)?!/, "") + "'");
1724
};
1825
}
1926

0 commit comments

Comments
 (0)