Skip to content

Commit b22ce56

Browse files
committed
Remove dev dependencies from node modules folder #2856
1 parent c1c3ac4 commit b22ce56

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

lib/tools/node-modules/node-modules-dest-copy.ts

+21
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,27 @@ export class TnsModulesCopy {
5151

5252
// remove platform-specific files (processed separately by plugin services)
5353
shelljs.rm("-rf", path.join(targetPackageDir, "platforms"));
54+
55+
//leave only production dependencies
56+
let packageJsonFilePath = path.join(dependency.directory, "package.json");
57+
if (!this.$fs.exists(packageJsonFilePath)) {
58+
return;
59+
}
60+
61+
let packageJsonContent = this.$fs.readJson(packageJsonFilePath);
62+
let productionDependencies = packageJsonContent.dependencies;
63+
64+
let dependenciesFolder = path.join(targetPackageDir, "node_modules");
65+
if (this.$fs.exists(dependenciesFolder)) {
66+
let dependencies = this.$fs.readDirectory(dependenciesFolder);
67+
68+
for (let i = 0; i < dependencies.length; i++) {
69+
let dir = dependencies[i];
70+
if (productionDependencies == null || !productionDependencies.hasOwnProperty(dir)) {
71+
shelljs.rm("-rf", path.join(dependenciesFolder, dir));
72+
}
73+
}
74+
}
5475
}
5576
}
5677
}

0 commit comments

Comments
 (0)