UNPKG

2.28 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const lodash_1 = require("lodash");
4const PKG_JSON_1 = require("../../const/PKG_JSON");
5const sortObjectByKey_1 = require("../../fns/sortObjectByKey");
6const Git_1 = require("../Git");
7const ObjectWriter_1 = require("../ObjectWriter");
8const pkg_version_1 = require("../sync-request/pkg-version/pkg-version");
9function handle() {
10 const w = new ObjectWriter_1.ObjectWriter('package.json', 0 /* JSON */);
11 function mkFilter(key) {
12 return (d) => !w.has([key, d]);
13 }
14 const devExact = lodash_1.uniq([
15 '@alorel-personal/conventional-changelog-alorel',
16 '@alorel-personal/semantic-release',
17 '@alorel-personal/tslint-rules'
18 ]).filter(mkFilter('devDependencies'));
19 let devTilde = [
20 '@semantic-release/changelog',
21 '@semantic-release/exec',
22 '@semantic-release/git',
23 '@types/node',
24 'mocha',
25 'source-map-support',
26 '@types/mocha',
27 'chai',
28 '@types/chai',
29 'semantic-release',
30 'coveralls',
31 'nyc',
32 'rimraf',
33 'tslib',
34 'ts-node',
35 'typescript'
36 ];
37 devTilde = lodash_1.uniq(devTilde).filter(mkFilter('devDependencies'));
38 const pkgsToQuery = devExact.concat(devTilde).sort();
39 w.set(['devDependencies', PKG_JSON_1.PKG_JSON.name], PKG_JSON_1.PKG_JSON.version, false);
40 if (pkgsToQuery.length) {
41 const pkgVersions = pkg_version_1.getPkgVersions(...pkgsToQuery);
42 if (devExact.length) {
43 for (const pkg of devExact) {
44 if (pkgVersions[pkg]) {
45 w.set(['devDependencies', pkg], pkgVersions[pkg]);
46 }
47 }
48 }
49 if (devTilde.length) {
50 for (const pkg of devTilde) {
51 if (pkgVersions[pkg]) {
52 w.set(['devDependencies', pkg], `~${pkgVersions[pkg]}`);
53 }
54 }
55 }
56 w.set('peerDependencies.tslib', '^1.6.0', false);
57 if (w.has('devDependencies')) {
58 w.set('devDependencies', sortObjectByKey_1.sortObjectByKey(w.get('devDependencies')));
59 }
60 w.save();
61 Git_1.Git.add('package.json');
62 }
63}
64exports.handle = handle;