|
| 1 | +#!/usr/bin/env node |
| 2 | + |
| 3 | +var path = require("path"); |
| 4 | +var fs = require("fs"); |
| 5 | + |
| 6 | +var binPath = __dirname; |
| 7 | +var pluginPath = path.dirname(binPath); |
| 8 | +var pluginPackageJsonPath = path.join(pluginPath, "package.json"); |
| 9 | +var projectPath = path.dirname(path.dirname(pluginPath)); |
| 10 | +var appPackageJsonPath = path.join(projectPath, "package.json"); |
| 11 | + |
| 12 | +var appPackageJson = JSON.parse(fs.readFileSync(appPackageJsonPath, "utf8")); |
| 13 | +var pluginPackageJson = JSON.parse(fs.readFileSync(pluginPackageJsonPath, "utf8")); |
| 14 | + |
| 15 | +Object.keys(pluginPackageJson.dependencies).forEach(function(dependencyName) { |
| 16 | + var version = pluginPackageJson.dependencies[dependencyName]; |
| 17 | + if (dependencyName.startsWith("@angular") || dependencyName === "rxjs") { |
| 18 | + appPackageJson.dependencies[dependencyName] = version; |
| 19 | + console.log("Updated dependency '" + dependencyName + "' to version: " + version + "."); |
| 20 | + } |
| 21 | +}); |
| 22 | + |
| 23 | +Object.keys(pluginPackageJson.devDependencies).forEach(function(dependencyName) { |
| 24 | + var version = pluginPackageJson.devDependencies[dependencyName]; |
| 25 | + if (dependencyName.startsWith("@angular") || dependencyName === "zone.js") { |
| 26 | + appPackageJson.devDependencies[dependencyName] = version; |
| 27 | + console.log("Updated dev dependency '" + dependencyName + "' to version: " + version + "."); |
| 28 | + } |
| 29 | +}); |
| 30 | + |
| 31 | +fs.writeFileSync(appPackageJsonPath, JSON.stringify(appPackageJson, null, 2)); |
| 32 | + |
| 33 | +console.log("\nAngular dependencies updated. Don't forget to run `npm install`."); |
0 commit comments