Skip to content
This repository was archived by the owner on Aug 7, 2021. It is now read-only.

Commit b8c4f1c

Browse files
committed
fix: use AoT entry module if it exists
1 parent 35932b3 commit b8c4f1c

File tree

1 file changed

+31
-5
lines changed

1 file changed

+31
-5
lines changed

Diff for: index.js

+31-5
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,13 @@ exports.GenerateBundleStarterPlugin.prototype = {
6161
};
6262

6363
exports.getEntryModule = function() {
64-
var projectDir = path.dirname(path.dirname(__dirname));
65-
var appPackageJsonPath = path.join(projectDir, "app", "package.json");
66-
var appPackageJson = JSON.parse(fs.readFileSync(appPackageJsonPath, "utf8"));
67-
if (!appPackageJson.main) {
64+
const maybePackageJsonEntry = getPackageJsonEntry();
65+
if (!maybePackageJsonEntry) {
6866
throw new Error("app/package.json must contain a `main` attribute.");
6967
}
70-
return appPackageJson.main.replace(/\.js$/i, "");
68+
69+
const maybeAotEntry = getAotEntry(maybePackageJsonEntry);
70+
return maybeAotEntry || maybePackageJsonEntry;
7171
};
7272

7373
exports.getAppPath = function(platform) {
@@ -108,3 +108,29 @@ exports.uglifyMangleExcludes = [
108108
"TimePicker",
109109
"View",
110110
];
111+
112+
function getPackageJsonEntry() {
113+
const packageJsonSource = getAppPackageJsonSource();
114+
const entry = packageJsonSource.main;
115+
116+
return entry ? entry.replace(/\.js$/i, "") : null;
117+
}
118+
119+
function getAppPackageJsonSource() {
120+
const projectDir = getProjectDir();
121+
const appPackageJsonPath = path.join(projectDir, "app", "package.json");
122+
123+
return JSON.parse(fs.readFileSync(appPackageJsonPath, "utf8"));
124+
}
125+
126+
function getAotEntry(entry) {
127+
const aotEntry = `${entry}.aot.ts`;
128+
const projectDir = getProjectDir();
129+
const aotEntryPath = path.join(projectDir, "app", aotEntry);
130+
131+
return fs.existsSync(aotEntryPath) ? aotEntry : null;
132+
}
133+
134+
function getProjectDir() {
135+
return path.dirname(path.dirname(__dirname));
136+
}

0 commit comments

Comments
 (0)