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

Commit d395fa3

Browse files
authored
fix-next: read moduleRequires from app/package.json as well (#526)
1 parent dd5fe11 commit d395fa3

File tree

1 file changed

+9
-1
lines changed
  • plugins/NativeScriptSnapshotPlugin

1 file changed

+9
-1
lines changed

Diff for: plugins/NativeScriptSnapshotPlugin/index.js

+9-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ const { closeSync, openSync, writeFileSync } = require("fs");
33
const validateOptions = require("schema-utils");
44

55
const ProjectSnapshotGenerator = require("../../snapshot/android/project-snapshot-generator");
6+
const { getPackageJson } = require("../../projectHelpers");
67
const {
78
ANDROID_PROJECT_DIR,
89
ANDROID_APP_PATH,
@@ -38,14 +39,16 @@ exports.NativeScriptSnapshotPlugin = (function() {
3839

3940
NativeScriptSnapshotPlugin.ensureSnapshotModuleEntry = function(options) {
4041
const { webpackConfig, requireModules, chunks, includeApplicationCss } = options;
42+
const internalRequireModules = this.getInternalRequireModules(webpackConfig.context);
4143

4244
const snapshotEntryPath = join(ANDROID_PROJECT_DIR, SNAPSHOT_ENTRY_MODULE);
4345

4446
let snapshotEntryContent = "";
4547
if (includeApplicationCss) {
4648
snapshotEntryContent += `require("nativescript-dev-webpack/load-application-css");`;
4749
}
48-
snapshotEntryContent += requireModules.map(mod => `require('${mod}')`).join(";");
50+
snapshotEntryContent += [ ...requireModules, ...internalRequireModules]
51+
.map(mod => `require('${mod}')`).join(";");
4952

5053
writeFileSync(snapshotEntryPath, snapshotEntryContent, { encoding: "utf8" });
5154

@@ -59,6 +62,11 @@ exports.NativeScriptSnapshotPlugin = (function() {
5962
webpackConfig.optimization.runtimeChunk = { name: SNAPSHOT_ENTRY_NAME };
6063
}
6164

65+
NativeScriptSnapshotPlugin.getInternalRequireModules = function(webpackContext) {
66+
const packageJson = getPackageJson(webpackContext);
67+
return (packageJson && packageJson["android"] && packageJson["android"]["requireModules"]) || [];
68+
}
69+
6270
NativeScriptSnapshotPlugin.validateSchema = function(options) {
6371
if (!options.chunk && !options.chunks) {
6472
const error = NativeScriptSnapshotPlugin.extendError({ message: `No chunks specified!` });

0 commit comments

Comments
 (0)