1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const lodash_1 = require("lodash");
|
4 | const PKG_JSON_1 = require("../../const/PKG_JSON");
|
5 | const sortObjectByKey_1 = require("../../fns/sortObjectByKey");
|
6 | const Git_1 = require("../Git");
|
7 | const ObjectWriter_1 = require("../ObjectWriter");
|
8 | const pkg_version_1 = require("../sync-request/pkg-version/pkg-version");
|
9 | function handle() {
|
10 | const w = new ObjectWriter_1.ObjectWriter('package.json', 0 );
|
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 | }
|
64 | exports.handle = handle;
|