Skip to content

Commit fe5933d

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 5177bb3 commit fe5933d

File tree

3 files changed

+434
-86
lines changed

3 files changed

+434
-86
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
class AureliaDependency extends IncludeDependency {
56
constructor(request: string,
@@ -11,7 +12,13 @@ class AureliaDependency extends IncludeDependency {
1112

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

0 commit comments

Comments
 (0)