1 | "use strict";
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports.getInclusionReasons = getInclusionReasons;
|
7 |
|
8 | var _semver = _interopRequireDefault(require("semver"));
|
9 |
|
10 | var _pretty = require("./pretty");
|
11 |
|
12 | var _utils = require("./utils");
|
13 |
|
14 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15 |
|
16 | function getInclusionReasons(item, targetVersions, list) {
|
17 | const minVersions = list[item] || {};
|
18 | return Object.keys(targetVersions).reduce((result, env) => {
|
19 | const minVersion = (0, _utils.getLowestImplementedVersion)(minVersions, env);
|
20 | const targetVersion = targetVersions[env];
|
21 |
|
22 | if (!minVersion) {
|
23 | result[env] = (0, _pretty.prettifyVersion)(targetVersion);
|
24 | } else {
|
25 | const minIsUnreleased = (0, _utils.isUnreleasedVersion)(minVersion, env);
|
26 | const targetIsUnreleased = (0, _utils.isUnreleasedVersion)(targetVersion, env);
|
27 |
|
28 | if (!targetIsUnreleased && (minIsUnreleased || _semver.default.lt(targetVersion.toString(), (0, _utils.semverify)(minVersion)))) {
|
29 | result[env] = (0, _pretty.prettifyVersion)(targetVersion);
|
30 | }
|
31 | }
|
32 |
|
33 | return result;
|
34 | }, {});
|
35 | } |
\ | No newline at end of file |