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

Commit a4e7f1c

Browse files
authored
fix(npm scripts): replace deprecated build-app script on postinstall (#184)
fixes #183
1 parent 941541d commit a4e7f1c

File tree

2 files changed

+17
-34
lines changed

2 files changed

+17
-34
lines changed

Diff for: installer.js

+10-9
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,14 @@ const PROJECT_DIR = path.dirname(path.dirname(__dirname));
1010
const APP_DIR = path.resolve(PROJECT_DIR, "app");
1111

1212
function install() {
13-
let packageJson = helpers.getPackageJson(PROJECT_DIR);
13+
const packageJson = helpers.getPackageJson(PROJECT_DIR);
1414

1515
projectFilesManager.addProjectFiles(PROJECT_DIR, APP_DIR);
1616
projectFilesManager.editExistingProjectFiles(PROJECT_DIR);
1717

18-
let scripts = packageJson.scripts || {};
19-
scripts = npmScriptsManager.removeDeprecatedNpmScripts(scripts);
20-
scripts = npmScriptsManager.addNpmScripts(scripts);
18+
const scripts = packageJson.scripts || {};
19+
npmScriptsManager.removeDeprecatedNpmScripts(scripts);
20+
npmScriptsManager.addNpmScripts(scripts);
2121
packageJson.scripts = scripts;
2222

2323
const postinstallOptions = dependencyManager.addProjectDeps(packageJson);
@@ -29,16 +29,17 @@ function install() {
2929
}
3030

3131
function uninstall() {
32-
let packageJson = helpers.getPackageJson(PROJECT_DIR);
32+
const packageJson = helpers.getPackageJson(PROJECT_DIR);
3333

3434
projectFilesManager.removeProjectFiles(PROJECT_DIR, APP_DIR);
35-
npmScriptsManager.removeDeprecatedNpmScripts(packageJson);
3635

37-
let scripts = packageJson.scripts;
38-
scripts = npmScriptsManager.removeNpmScripts(scripts);
39-
packageJson.scripts = scripts;
36+
console.log("Removing npm scripts...");
37+
npmScriptsManager.removeDeprecatedNpmScripts(packageJson);
38+
npmScriptsManager.removeNpmScripts(packageJson.scripts);
4039

4140
helpers.writePackageJson(packageJson, PROJECT_DIR);
41+
42+
console.log("NativeScript Webpack removed!");
4243
}
4344

4445
module.exports = {

Diff for: npmScriptsManager.js

+7-25
Original file line numberDiff line numberDiff line change
@@ -17,30 +17,24 @@ const DEPRECATED_SCRIPT_TEMPLATES = Object.freeze([
1717

1818
const PLATFORMS = Object.freeze(["android", "ios"]);
1919

20-
function addNpmScripts(scripts) {
21-
scripts = scripts || {};
22-
20+
function addNpmScripts(scripts = {}) {
2321
Object.keys(SCRIPT_TEMPLATES).forEach(name => {
24-
packageJson = addPlatformScript(scripts, name, SCRIPT_TEMPLATES[name]);
22+
addPlatformScript(scripts, name, SCRIPT_TEMPLATES[name]);
2523
});
26-
27-
return scripts;
2824
}
2925

3026
function removeDeprecatedNpmScripts(scripts) {
3127
return removeNpmScripts(scripts, DEPRECATED_SCRIPT_TEMPLATES);
3228
}
3329

3430
function removeNpmScripts(scripts, scriptTemplates = Object.keys(SCRIPT_TEMPLATES)) {
35-
scriptTemplates.forEach(function(templateName) {
36-
scripts = removePlatformScripts(scripts, templateName);
31+
scriptTemplates.forEach(templateName => {
32+
removePlatformScripts(scripts, templateName);
3733
});
38-
39-
return scripts;
4034
}
4135

4236
function addPlatformScript(scripts, nameTemplate, commandTemplate) {
43-
PLATFORMS.forEach(function (platform) {
37+
PLATFORMS.forEach(platform => {
4438
const name = nameTemplate.replace(/\[PLATFORM\]/g, platform);
4539
const command = commandTemplate.replace(/\[PLATFORM\]/g, platform);
4640

@@ -49,25 +43,13 @@ function addPlatformScript(scripts, nameTemplate, commandTemplate) {
4943
scripts[name] = command;
5044
}
5145
});
52-
53-
return scripts;
5446
}
5547

5648
function removePlatformScripts(scripts, nameTemplate) {
57-
if (!scripts || Object.keys(SCRIPT_TEMPLATES).includes(nameTemplate)) {
58-
return scripts;
59-
}
60-
61-
PLATFORMS.forEach(function (platform) {
49+
PLATFORMS.forEach(platform => {
6250
const name = nameTemplate.replace(/\[PLATFORM\]/g, platform);
63-
64-
if (scripts[name]) {
65-
console.info(`Removing script: ${name}`);
66-
delete scripts[name];
67-
}
51+
delete scripts[name];
6852
});
69-
70-
return scripts;
7153
}
7254

7355
module.exports = {

0 commit comments

Comments
 (0)