@lerna-lite/core 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +16 -0
  3. package/dist/child-process.d.ts +13 -0
  4. package/dist/child-process.js +129 -0
  5. package/dist/child-process.js.map +1 -0
  6. package/dist/command.d.ts +37 -0
  7. package/dist/command.js +269 -0
  8. package/dist/command.js.map +1 -0
  9. package/dist/conventional-commits/constants.d.ts +4 -0
  10. package/dist/conventional-commits/constants.js +13 -0
  11. package/dist/conventional-commits/constants.js.map +1 -0
  12. package/dist/conventional-commits/get-changelog-config.d.ts +12 -0
  13. package/dist/conventional-commits/get-changelog-config.js +92 -0
  14. package/dist/conventional-commits/get-changelog-config.js.map +1 -0
  15. package/dist/conventional-commits/index.d.ts +6 -0
  16. package/dist/conventional-commits/index.js +19 -0
  17. package/dist/conventional-commits/index.js.map +1 -0
  18. package/dist/conventional-commits/make-bump-only-filter.d.ts +6 -0
  19. package/dist/conventional-commits/make-bump-only-filter.js +23 -0
  20. package/dist/conventional-commits/make-bump-only-filter.js.map +1 -0
  21. package/dist/conventional-commits/read-existing-changelog.d.ts +7 -0
  22. package/dist/conventional-commits/read-existing-changelog.js +33 -0
  23. package/dist/conventional-commits/read-existing-changelog.js.map +1 -0
  24. package/dist/conventional-commits/recommend-version.d.ts +10 -0
  25. package/dist/conventional-commits/recommend-version.js +87 -0
  26. package/dist/conventional-commits/recommend-version.js.map +1 -0
  27. package/dist/conventional-commits/update-changelog.d.ts +11 -0
  28. package/dist/conventional-commits/update-changelog.js +84 -0
  29. package/dist/conventional-commits/update-changelog.js.map +1 -0
  30. package/dist/git-clients/github-client.d.ts +6 -0
  31. package/dist/git-clients/github-client.js +41 -0
  32. package/dist/git-clients/github-client.js.map +1 -0
  33. package/dist/git-clients/gitlab-client.d.ts +5 -0
  34. package/dist/git-clients/gitlab-client.js +53 -0
  35. package/dist/git-clients/gitlab-client.js.map +1 -0
  36. package/dist/git-clients/index.d.ts +2 -0
  37. package/dist/git-clients/index.js +15 -0
  38. package/dist/git-clients/index.js.map +1 -0
  39. package/dist/index.d.ts +12 -0
  40. package/dist/index.js +27 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/models/index.d.ts +97 -0
  43. package/dist/models/index.js +3 -0
  44. package/dist/models/index.js.map +1 -0
  45. package/dist/otplease.d.ts +13 -0
  46. package/dist/otplease.js +110 -0
  47. package/dist/otplease.js.map +1 -0
  48. package/dist/package-graph/index.d.ts +2 -0
  49. package/dist/package-graph/index.js +15 -0
  50. package/dist/package-graph/index.js.map +1 -0
  51. package/dist/package-graph/lib/cyclic-package-graph-node.d.ts +41 -0
  52. package/dist/package-graph/lib/cyclic-package-graph-node.js +101 -0
  53. package/dist/package-graph/lib/cyclic-package-graph-node.js.map +1 -0
  54. package/dist/package-graph/lib/index.d.ts +3 -0
  55. package/dist/package-graph/lib/index.js +16 -0
  56. package/dist/package-graph/lib/index.js.map +1 -0
  57. package/dist/package-graph/lib/package-graph-node.d.ts +35 -0
  58. package/dist/package-graph/lib/package-graph-node.js +61 -0
  59. package/dist/package-graph/lib/package-graph-node.js.map +1 -0
  60. package/dist/package-graph/lib/report-cycles.d.ts +1 -0
  61. package/dist/package-graph/lib/report-cycles.js +20 -0
  62. package/dist/package-graph/lib/report-cycles.js.map +1 -0
  63. package/dist/package-graph/package-graph.d.ts +78 -0
  64. package/dist/package-graph/package-graph.js +256 -0
  65. package/dist/package-graph/package-graph.js.map +1 -0
  66. package/dist/package.d.ts +96 -0
  67. package/dist/package.js +260 -0
  68. package/dist/package.js.map +1 -0
  69. package/dist/project/index.d.ts +2 -0
  70. package/dist/project/index.js +15 -0
  71. package/dist/project/index.js.map +1 -0
  72. package/dist/project/lib/apply-extends.d.ts +6 -0
  73. package/dist/project/lib/apply-extends.js +38 -0
  74. package/dist/project/lib/apply-extends.js.map +1 -0
  75. package/dist/project/lib/index.d.ts +3 -0
  76. package/dist/project/lib/index.js +16 -0
  77. package/dist/project/lib/index.js.map +1 -0
  78. package/dist/project/lib/make-file-finder.d.ts +2 -0
  79. package/dist/project/lib/make-file-finder.js +72 -0
  80. package/dist/project/lib/make-file-finder.js.map +1 -0
  81. package/dist/project/lib/shallow-extend.d.ts +5 -0
  82. package/dist/project/lib/shallow-extend.js +25 -0
  83. package/dist/project/lib/shallow-extend.js.map +1 -0
  84. package/dist/project/project.d.ts +50 -0
  85. package/dist/project/project.js +193 -0
  86. package/dist/project/project.js.map +1 -0
  87. package/dist/prompt.d.ts +5 -0
  88. package/dist/prompt.js +65 -0
  89. package/dist/prompt.js.map +1 -0
  90. package/dist/utils/check-working-tree.d.ts +8 -0
  91. package/dist/utils/check-working-tree.js +42 -0
  92. package/dist/utils/check-working-tree.js.map +1 -0
  93. package/dist/utils/clean-stack.d.ts +5 -0
  94. package/dist/utils/clean-stack.js +19 -0
  95. package/dist/utils/clean-stack.js.map +1 -0
  96. package/dist/utils/collect-dependents.d.ts +11 -0
  97. package/dist/utils/collect-dependents.js +46 -0
  98. package/dist/utils/collect-dependents.js.map +1 -0
  99. package/dist/utils/collect-uncommitted.d.ts +19 -0
  100. package/dist/utils/collect-uncommitted.js +46 -0
  101. package/dist/utils/collect-uncommitted.js.map +1 -0
  102. package/dist/utils/collect-updates/collect-updates.d.ts +25 -0
  103. package/dist/utils/collect-updates/collect-updates.js +100 -0
  104. package/dist/utils/collect-updates/collect-updates.js.map +1 -0
  105. package/dist/utils/collect-updates/index.d.ts +2 -0
  106. package/dist/utils/collect-updates/index.js +15 -0
  107. package/dist/utils/collect-updates/index.js.map +1 -0
  108. package/dist/utils/collect-updates/lib/collect-packages.d.ts +13 -0
  109. package/dist/utils/collect-updates/lib/collect-packages.js +34 -0
  110. package/dist/utils/collect-updates/lib/collect-packages.js.map +1 -0
  111. package/dist/utils/collect-updates/lib/get-packages-for-option.d.ts +5 -0
  112. package/dist/utils/collect-updates/lib/get-packages-for-option.js +31 -0
  113. package/dist/utils/collect-updates/lib/get-packages-for-option.js.map +1 -0
  114. package/dist/utils/collect-updates/lib/has-tags.d.ts +5 -0
  115. package/dist/utils/collect-updates/lib/has-tags.js +27 -0
  116. package/dist/utils/collect-updates/lib/has-tags.js.map +1 -0
  117. package/dist/utils/collect-updates/lib/index.d.ts +4 -0
  118. package/dist/utils/collect-updates/lib/index.js +17 -0
  119. package/dist/utils/collect-updates/lib/index.js.map +1 -0
  120. package/dist/utils/collect-updates/lib/make-diff-predicate.d.ts +6 -0
  121. package/dist/utils/collect-updates/lib/make-diff-predicate.js +65 -0
  122. package/dist/utils/collect-updates/lib/make-diff-predicate.js.map +1 -0
  123. package/dist/utils/conf.d.ts +23 -0
  124. package/dist/utils/conf.js +256 -0
  125. package/dist/utils/conf.js.map +1 -0
  126. package/dist/utils/defaults.d.ts +1 -0
  127. package/dist/utils/defaults.js +182 -0
  128. package/dist/utils/defaults.js.map +1 -0
  129. package/dist/utils/describe-ref.d.ts +24 -0
  130. package/dist/utils/describe-ref.js +81 -0
  131. package/dist/utils/describe-ref.js.map +1 -0
  132. package/dist/utils/env-replace.d.ts +1 -0
  133. package/dist/utils/env-replace.js +23 -0
  134. package/dist/utils/env-replace.js.map +1 -0
  135. package/dist/utils/find-prefix.d.ts +2 -0
  136. package/dist/utils/find-prefix.js +49 -0
  137. package/dist/utils/find-prefix.js.map +1 -0
  138. package/dist/utils/format-error.d.ts +7 -0
  139. package/dist/utils/format-error.js +20 -0
  140. package/dist/utils/format-error.js.map +1 -0
  141. package/dist/utils/index.d.ts +23 -0
  142. package/dist/utils/index.js +36 -0
  143. package/dist/utils/index.js.map +1 -0
  144. package/dist/utils/log-package-error.d.ts +5 -0
  145. package/dist/utils/log-package-error.js +36 -0
  146. package/dist/utils/log-package-error.js.map +1 -0
  147. package/dist/utils/nerf-dart.d.ts +1 -0
  148. package/dist/utils/nerf-dart.js +19 -0
  149. package/dist/utils/nerf-dart.js.map +1 -0
  150. package/dist/utils/npm-conf.d.ts +2 -0
  151. package/dist/utils/npm-conf.js +54 -0
  152. package/dist/utils/npm-conf.js.map +1 -0
  153. package/dist/utils/parse-field.d.ts +1 -0
  154. package/dist/utils/parse-field.js +66 -0
  155. package/dist/utils/parse-field.js.map +1 -0
  156. package/dist/utils/prerelease-id-from-version.d.ts +5 -0
  157. package/dist/utils/prerelease-id-from-version.js +16 -0
  158. package/dist/utils/prerelease-id-from-version.js.map +1 -0
  159. package/dist/utils/pulse-till-done.d.ts +1 -0
  160. package/dist/utils/pulse-till-done.js +41 -0
  161. package/dist/utils/pulse-till-done.js.map +1 -0
  162. package/dist/utils/query-graph.d.ts +36 -0
  163. package/dist/utils/query-graph.js +78 -0
  164. package/dist/utils/query-graph.js.map +1 -0
  165. package/dist/utils/run-lifecycle.d.ts +10 -0
  166. package/dist/utils/run-lifecycle.js +109 -0
  167. package/dist/utils/run-lifecycle.js.map +1 -0
  168. package/dist/utils/run-topologically.d.ts +12 -0
  169. package/dist/utils/run-topologically.js +37 -0
  170. package/dist/utils/run-topologically.js.map +1 -0
  171. package/dist/utils/types.d.ts +128 -0
  172. package/dist/utils/types.js +138 -0
  173. package/dist/utils/types.js.map +1 -0
  174. package/dist/utils/warn-if-hanging.d.ts +1 -0
  175. package/dist/utils/warn-if-hanging.js +18 -0
  176. package/dist/utils/warn-if-hanging.js.map +1 -0
  177. package/dist/utils/write-log-file.d.ts +1 -0
  178. package/dist/utils/write-log-file.js +33 -0
  179. package/dist/utils/write-log-file.js.map +1 -0
  180. package/dist/validation-error.d.ts +4 -0
  181. package/dist/validation-error.js +19 -0
  182. package/dist/validation-error.js.map +1 -0
  183. package/package.json +110 -0
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createRunner = exports.runLifecycle = void 0;
7
+ const npmlog_1 = __importDefault(require("npmlog"));
8
+ // @ts-ignore
9
+ const npm_lifecycle_1 = __importDefault(require("npm-lifecycle"));
10
+ const npm_conf_1 = require("../utils/npm-conf");
11
+ /**
12
+ * Alias dash-cased npmConf to camelCase
13
+ * @param {LifecycleConfig} obj
14
+ * @returns {LifecycleConfig}
15
+ */
16
+ function flattenOptions(obj) {
17
+ return {
18
+ ignorePrepublish: obj['ignore-prepublish'],
19
+ ignoreScripts: obj['ignore-scripts'],
20
+ nodeOptions: obj['node-options'],
21
+ scriptShell: obj['script-shell'],
22
+ scriptsPrependNodePath: obj['scripts-prepend-node-path'],
23
+ unsafePerm: obj['unsafe-perm'],
24
+ ...obj,
25
+ };
26
+ }
27
+ /**
28
+ * Run a lifecycle script for a package.
29
+ * @param {import('@lerna/package').Package} pkg
30
+ * @param {string} stage
31
+ * @param {LifecycleConfig} options
32
+ */
33
+ function runLifecycle(pkg, stage, options) {
34
+ // back-compat for @lerna/npm-conf instances
35
+ // https://github.com/isaacs/proto-list/blob/27764cd/proto-list.js#L14
36
+ if ('root' in options) {
37
+ // eslint-disable-next-line no-param-reassign
38
+ options = options.snapshot;
39
+ }
40
+ const opts = {
41
+ log: npmlog_1.default,
42
+ unsafePerm: true,
43
+ ...flattenOptions(options),
44
+ };
45
+ const dir = pkg.location;
46
+ const config = {};
47
+ if (opts.ignoreScripts) {
48
+ opts.log.verbose('lifecycle', '%j ignored in %j', stage, pkg.name);
49
+ return Promise.resolve();
50
+ }
51
+ if (!pkg.scripts || !pkg.scripts[stage]) {
52
+ opts.log.silly('lifecycle', 'No script for %j in %j, continuing', stage, pkg.name);
53
+ return Promise.resolve();
54
+ }
55
+ if (stage === 'prepublish' && opts.ignorePrepublish) {
56
+ opts.log.verbose('lifecycle', '%j ignored in %j', stage, pkg.name);
57
+ return Promise.resolve();
58
+ }
59
+ // https://github.com/zkat/figgy-pudding/blob/7d68bd3/index.js#L42-L64
60
+ for (const [key, val] of Object.entries(opts)) {
61
+ // omit falsy values and circular objects
62
+ if (val !== null && key !== 'log' && key !== 'logstream') {
63
+ config[key] = val;
64
+ }
65
+ }
66
+ /* istanbul ignore else */
67
+ // eslint-disable-next-line no-underscore-dangle
68
+ if (pkg.__isLernaPackage) {
69
+ // To ensure npm-lifecycle creates the correct npm_package_* env vars,
70
+ // we must pass the _actual_ JSON instead of our fancy Package thingy
71
+ // eslint-disable-next-line no-param-reassign
72
+ pkg = pkg.toJSON();
73
+ }
74
+ // TODO: remove pkg._id when npm-lifecycle no longer relies on it
75
+ pkg._id = `${pkg.name}@${pkg.version}`; // eslint-disable-line
76
+ opts.log.silly('lifecycle', '%j starting in %j', stage, pkg.name);
77
+ return (0, npm_lifecycle_1.default)(pkg, stage, dir, {
78
+ config,
79
+ dir,
80
+ failOk: false,
81
+ log: opts.log,
82
+ // bring along camelCased aliases
83
+ nodeOptions: opts.nodeOptions,
84
+ scriptShell: opts.scriptShell,
85
+ scriptsPrependNodePath: opts.scriptsPrependNodePath,
86
+ unsafePerm: opts.unsafePerm,
87
+ }).then(() => {
88
+ opts.log.silly('lifecycle', '%j finished in %j', stage, pkg.name);
89
+ }, (err) => {
90
+ // propagate the exit code
91
+ const exitCode = err.errno || 1;
92
+ // error logging has already occurred on stderr, but we need to stop the chain
93
+ npmlog_1.default.error('lifecycle', '%j errored in %j, exiting %d', stage, pkg.name, exitCode);
94
+ // ensure clean logging, avoiding spurious log dump
95
+ err.name = 'ValidationError';
96
+ // our yargs.fail() handler expects a numeric .exitCode, not .errno
97
+ err.exitCode = exitCode;
98
+ process.exitCode = exitCode;
99
+ // stop the chain
100
+ throw err;
101
+ });
102
+ }
103
+ exports.runLifecycle = runLifecycle;
104
+ function createRunner(commandOptions) {
105
+ const cfg = (0, npm_conf_1.npmConf)(commandOptions).snapshot;
106
+ return (pkg, stage) => runLifecycle(pkg, stage, cfg);
107
+ }
108
+ exports.createRunner = createRunner;
109
+ //# sourceMappingURL=run-lifecycle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-lifecycle.js","sourceRoot":"","sources":["../../src/utils/run-lifecycle.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAyB;AACzB,aAAa;AACb,kEAAsC;AAEtC,gDAA4C;AAI5C;;;;GAIG;AACH,SAAS,cAAc,CAAC,GAAQ;IAC9B,OAAO;QACL,gBAAgB,EAAE,GAAG,CAAC,mBAAmB,CAAC;QAC1C,aAAa,EAAE,GAAG,CAAC,gBAAgB,CAAC;QACpC,WAAW,EAAE,GAAG,CAAC,cAAc,CAAC;QAChC,WAAW,EAAE,GAAG,CAAC,cAAc,CAAC;QAChC,sBAAsB,EAAE,GAAG,CAAC,2BAA2B,CAAC;QACxD,UAAU,EAAE,GAAG,CAAC,aAAa,CAAC;QAC9B,GAAG,GAAG;KACP,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAgB,YAAY,CAAC,GAAY,EAAE,KAAa,EAAE,OAAwB;IAChF,4CAA4C;IAC5C,sEAAsE;IACtE,IAAI,MAAM,IAAI,OAAO,EAAE;QACrB,6CAA6C;QAC7C,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;KAC5B;IAED,MAAM,IAAI,GAAG;QACX,GAAG,EAAH,gBAAG;QACH,UAAU,EAAE,IAAI;QAChB,GAAG,cAAc,CAAC,OAAO,CAAC;KAC3B,CAAC;IACF,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC;IACzB,MAAM,MAAM,GAAG,EAAE,CAAC;IAElB,IAAI,IAAI,CAAC,aAAa,EAAE;QACtB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAEnE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;KAC1B;IAED,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACvC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,oCAAoC,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAEnF,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;KAC1B;IAED,IAAI,KAAK,KAAK,YAAY,IAAI,IAAI,CAAC,gBAAgB,EAAE;QACnD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAEnE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;KAC1B;IAED,sEAAsE;IACtE,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAC7C,yCAAyC;QACzC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,WAAW,EAAE;YACxD,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;SACnB;KACF;IAED,0BAA0B;IAC1B,gDAAgD;IAChD,IAAI,GAAG,CAAC,gBAAgB,EAAE;QACxB,sEAAsE;QACtE,qEAAqE;QACrE,6CAA6C;QAC7C,GAAG,GAAG,GAAG,CAAC,MAAM,EAAa,CAAC;KAC/B;IAED,iEAAiE;IACjE,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,sBAAsB;IAE9D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IAElE,OAAO,IAAA,uBAAS,EAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QAChC,MAAM;QACN,GAAG;QACH,MAAM,EAAE,KAAK;QACb,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,iCAAiC;QACjC,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;QACnD,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC,CAAC,IAAI,CACL,GAAG,EAAE;QACH,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC,EACD,CAAC,GAAQ,EAAE,EAAE;QACX,0BAA0B;QAC1B,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC;QAEhC,8EAA8E;QAC9E,gBAAG,CAAC,KAAK,CAAC,WAAW,EAAE,8BAA8B,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAElF,mDAAmD;QACnD,GAAG,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAE7B,mEAAmE;QACnE,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACxB,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE5B,iBAAiB;QACjB,MAAM,GAAG,CAAC;IACZ,CAAC,CACF,CAAC;AACJ,CAAC;AAxFD,oCAwFC;AAED,SAAgB,YAAY,CAAC,cAAmB;IAC9C,MAAM,GAAG,GAAI,IAAA,kBAAO,EAAC,cAAc,CAAS,CAAC,QAAQ,CAAC;IAEtD,OAAO,CAAC,GAAY,EAAE,KAAa,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;AACxE,CAAC;AAJD,oCAIC"}
@@ -0,0 +1,12 @@
1
+ import { TopologicalConfig } from '../models';
2
+ import { Package } from '../package';
3
+ /**
4
+ * Run callback in maximally-saturated topological order.
5
+ *
6
+ * @template T
7
+ * @param {import("@lerna/package").Package[]} packages List of `Package` instances
8
+ * @param {(pkg: import("@lerna/package").Package) => Promise<T>} runner Callback to map each `Package` with
9
+ * @param {TopologicalConfig} [options]
10
+ * @returns {Promise<T[]>} when all executions complete
11
+ */
12
+ export declare function runTopologically<T = any>(packages: Package[], runner: (pkg: Package) => Promise<T>, { concurrency, graphType, rejectCycles }?: TopologicalConfig): Promise<unknown>;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.runTopologically = void 0;
7
+ const p_queue_1 = __importDefault(require("p-queue"));
8
+ const query_graph_1 = require("./query-graph");
9
+ /**
10
+ * Run callback in maximally-saturated topological order.
11
+ *
12
+ * @template T
13
+ * @param {import("@lerna/package").Package[]} packages List of `Package` instances
14
+ * @param {(pkg: import("@lerna/package").Package) => Promise<T>} runner Callback to map each `Package` with
15
+ * @param {TopologicalConfig} [options]
16
+ * @returns {Promise<T[]>} when all executions complete
17
+ */
18
+ function runTopologically(packages, runner, { concurrency, graphType, rejectCycles } = {}) {
19
+ const queue = new p_queue_1.default({ concurrency });
20
+ const graph = new query_graph_1.QueryGraph(packages, { graphType, rejectCycles });
21
+ return new Promise((resolve, reject) => {
22
+ const returnValues = [];
23
+ const queueNextAvailablePackages = () => graph.getAvailablePackages().forEach(({ pkg, name }) => {
24
+ graph.markAsTaken(name);
25
+ queue
26
+ .add(() => runner(pkg)
27
+ .then((value) => returnValues.push(value))
28
+ .then(() => graph.markAsDone(pkg))
29
+ .then(() => queueNextAvailablePackages()))
30
+ .catch(reject);
31
+ });
32
+ queueNextAvailablePackages();
33
+ return queue.onIdle().then(() => resolve(returnValues));
34
+ });
35
+ }
36
+ exports.runTopologically = runTopologically;
37
+ //# sourceMappingURL=run-topologically.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-topologically.js","sourceRoot":"","sources":["../../src/utils/run-topologically.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA6B;AAE7B,+CAA2C;AAI3C;;;;;;;;GAQG;AACH,SAAgB,gBAAgB,CAAU,QAAmB,EAAE,MAAoC,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,KAAK,EAAuB;IACrK,MAAM,KAAK,GAAG,IAAI,iBAAM,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,IAAI,wBAAU,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,CAAC;IAEpE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,YAAY,GAAU,EAAE,CAAC;QAE/B,MAAM,0BAA0B,GAAG,GAAG,EAAE,CACtC,KAAK,CAAC,oBAAoB,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE;YACrD,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAExB,KAAK;iBACF,GAAG,CAAC,GAAG,EAAE,CACR,MAAM,CAAC,GAAG,CAAC;iBACR,IAAI,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBAC9C,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;iBACjC,IAAI,CAAC,GAAG,EAAE,CAAC,0BAA0B,EAAE,CAAC,CAC5C;iBACA,KAAK,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;QAEL,0BAA0B,EAAE,CAAC;QAE7B,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC;AAzBD,4CAyBC"}
@@ -0,0 +1,128 @@
1
+ /// <reference types="node" />
2
+ import path from 'path';
3
+ import { Stream } from 'stream';
4
+ import url from 'url';
5
+ export declare const types: {
6
+ access: (string | null)[];
7
+ 'allow-same-version': BooleanConstructor;
8
+ 'always-auth': BooleanConstructor;
9
+ also: (string | null)[];
10
+ audit: BooleanConstructor;
11
+ 'audit-level': string[];
12
+ 'auth-type': string[];
13
+ 'bin-links': BooleanConstructor;
14
+ browser: (StringConstructor | null)[];
15
+ ca: (ArrayConstructor | StringConstructor | null)[];
16
+ cafile: path.PlatformPath;
17
+ cache: path.PlatformPath;
18
+ 'cache-lock-stale': NumberConstructor;
19
+ 'cache-lock-retries': NumberConstructor;
20
+ 'cache-lock-wait': NumberConstructor;
21
+ 'cache-max': NumberConstructor;
22
+ 'cache-min': NumberConstructor;
23
+ cert: (StringConstructor | null)[];
24
+ cidr: (ArrayConstructor | StringConstructor | null)[];
25
+ color: (string | BooleanConstructor)[];
26
+ depth: NumberConstructor;
27
+ description: BooleanConstructor;
28
+ dev: BooleanConstructor;
29
+ 'dry-run': BooleanConstructor;
30
+ editor: StringConstructor;
31
+ 'engine-strict': BooleanConstructor;
32
+ force: BooleanConstructor;
33
+ 'fetch-retries': NumberConstructor;
34
+ 'fetch-retry-factor': NumberConstructor;
35
+ 'fetch-retry-mintimeout': NumberConstructor;
36
+ 'fetch-retry-maxtimeout': NumberConstructor;
37
+ git: StringConstructor;
38
+ 'git-tag-version': BooleanConstructor;
39
+ 'commit-hooks': BooleanConstructor;
40
+ global: BooleanConstructor;
41
+ globalconfig: path.PlatformPath;
42
+ 'global-style': BooleanConstructor;
43
+ group: (StringConstructor | NumberConstructor)[];
44
+ 'https-proxy': (typeof url | null)[];
45
+ 'user-agent': StringConstructor;
46
+ 'ham-it-up': BooleanConstructor;
47
+ heading: StringConstructor;
48
+ 'if-present': BooleanConstructor;
49
+ 'ignore-prepublish': BooleanConstructor;
50
+ 'ignore-scripts': BooleanConstructor;
51
+ 'init-module': path.PlatformPath;
52
+ 'init-author-name': StringConstructor;
53
+ 'init-author-email': StringConstructor;
54
+ 'init-author-url': (string | typeof url)[];
55
+ 'init-license': StringConstructor;
56
+ 'init-version': () => void;
57
+ json: BooleanConstructor;
58
+ key: (StringConstructor | null)[];
59
+ 'legacy-bundling': BooleanConstructor;
60
+ link: BooleanConstructor;
61
+ 'local-address': never[];
62
+ loglevel: string[];
63
+ logstream: typeof Stream;
64
+ 'logs-max': NumberConstructor;
65
+ long: BooleanConstructor;
66
+ maxsockets: NumberConstructor;
67
+ message: StringConstructor;
68
+ 'metrics-registry': (StringConstructor | null)[];
69
+ 'node-options': (StringConstructor | null)[];
70
+ 'node-version': ((() => void) | null)[];
71
+ noproxy: (ArrayConstructor | StringConstructor | null)[];
72
+ offline: BooleanConstructor;
73
+ 'onload-script': (StringConstructor | null)[];
74
+ only: (string | null)[];
75
+ optional: BooleanConstructor;
76
+ 'package-lock': BooleanConstructor;
77
+ otp: (StringConstructor | null)[];
78
+ 'package-lock-only': BooleanConstructor;
79
+ parseable: BooleanConstructor;
80
+ 'prefer-offline': BooleanConstructor;
81
+ 'prefer-online': BooleanConstructor;
82
+ prefix: path.PlatformPath;
83
+ preid: StringConstructor;
84
+ production: BooleanConstructor;
85
+ progress: BooleanConstructor;
86
+ proxy: (boolean | typeof url | null)[];
87
+ 'read-only': BooleanConstructor;
88
+ 'rebuild-bundle': BooleanConstructor;
89
+ registry: (typeof url | null)[];
90
+ rollback: BooleanConstructor;
91
+ save: BooleanConstructor;
92
+ 'save-bundle': BooleanConstructor;
93
+ 'save-dev': BooleanConstructor;
94
+ 'save-exact': BooleanConstructor;
95
+ 'save-optional': BooleanConstructor;
96
+ 'save-prefix': StringConstructor;
97
+ 'save-prod': BooleanConstructor;
98
+ scope: StringConstructor;
99
+ 'script-shell': (StringConstructor | null)[];
100
+ 'scripts-prepend-node-path': (string | boolean)[];
101
+ searchopts: StringConstructor;
102
+ searchexclude: (StringConstructor | null)[];
103
+ searchlimit: NumberConstructor;
104
+ searchstaleness: NumberConstructor;
105
+ 'send-metrics': BooleanConstructor;
106
+ shell: StringConstructor;
107
+ shrinkwrap: BooleanConstructor;
108
+ 'sign-git-commit': BooleanConstructor;
109
+ 'sign-git-tag': BooleanConstructor;
110
+ 'sso-poll-frequency': NumberConstructor;
111
+ 'sso-type': (string | null)[];
112
+ 'strict-ssl': BooleanConstructor;
113
+ tag: StringConstructor;
114
+ timing: BooleanConstructor;
115
+ tmp: path.PlatformPath;
116
+ unicode: BooleanConstructor;
117
+ 'unsafe-perm': BooleanConstructor;
118
+ 'update-notifier': BooleanConstructor;
119
+ usage: BooleanConstructor;
120
+ user: (StringConstructor | NumberConstructor)[];
121
+ userconfig: path.PlatformPath;
122
+ umask: () => void;
123
+ version: BooleanConstructor;
124
+ 'tag-version-prefix': StringConstructor;
125
+ versions: BooleanConstructor;
126
+ viewer: StringConstructor;
127
+ _exit: BooleanConstructor;
128
+ };
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.types = void 0;
7
+ const path_1 = __importDefault(require("path"));
8
+ const stream_1 = require("stream");
9
+ const url_1 = __importDefault(require("url"));
10
+ const Umask = () => { };
11
+ const getLocalAddresses = () => [];
12
+ const semver = () => { };
13
+ exports.types = {
14
+ access: [null, 'restricted', 'public'],
15
+ 'allow-same-version': Boolean,
16
+ 'always-auth': Boolean,
17
+ also: [null, 'dev', 'development'],
18
+ audit: Boolean,
19
+ 'audit-level': ['low', 'moderate', 'high', 'critical'],
20
+ 'auth-type': ['legacy', 'sso', 'saml', 'oauth'],
21
+ 'bin-links': Boolean,
22
+ browser: [null, String],
23
+ ca: [null, String, Array],
24
+ cafile: path_1.default,
25
+ cache: path_1.default,
26
+ 'cache-lock-stale': Number,
27
+ 'cache-lock-retries': Number,
28
+ 'cache-lock-wait': Number,
29
+ 'cache-max': Number,
30
+ 'cache-min': Number,
31
+ cert: [null, String],
32
+ cidr: [null, String, Array],
33
+ color: ['always', Boolean],
34
+ depth: Number,
35
+ description: Boolean,
36
+ dev: Boolean,
37
+ 'dry-run': Boolean,
38
+ editor: String,
39
+ 'engine-strict': Boolean,
40
+ force: Boolean,
41
+ 'fetch-retries': Number,
42
+ 'fetch-retry-factor': Number,
43
+ 'fetch-retry-mintimeout': Number,
44
+ 'fetch-retry-maxtimeout': Number,
45
+ git: String,
46
+ 'git-tag-version': Boolean,
47
+ 'commit-hooks': Boolean,
48
+ global: Boolean,
49
+ globalconfig: path_1.default,
50
+ 'global-style': Boolean,
51
+ group: [Number, String],
52
+ 'https-proxy': [null, url_1.default],
53
+ 'user-agent': String,
54
+ 'ham-it-up': Boolean,
55
+ heading: String,
56
+ 'if-present': Boolean,
57
+ 'ignore-prepublish': Boolean,
58
+ 'ignore-scripts': Boolean,
59
+ 'init-module': path_1.default,
60
+ 'init-author-name': String,
61
+ 'init-author-email': String,
62
+ 'init-author-url': ['', url_1.default],
63
+ 'init-license': String,
64
+ 'init-version': semver,
65
+ json: Boolean,
66
+ key: [null, String],
67
+ 'legacy-bundling': Boolean,
68
+ link: Boolean,
69
+ 'local-address': getLocalAddresses(),
70
+ loglevel: ['silent', 'error', 'warn', 'notice', 'http', 'timing', 'info', 'verbose', 'silly'],
71
+ logstream: stream_1.Stream,
72
+ 'logs-max': Number,
73
+ long: Boolean,
74
+ maxsockets: Number,
75
+ message: String,
76
+ 'metrics-registry': [null, String],
77
+ 'node-options': [null, String],
78
+ 'node-version': [null, semver],
79
+ noproxy: [null, String, Array],
80
+ offline: Boolean,
81
+ 'onload-script': [null, String],
82
+ only: [null, 'dev', 'development', 'prod', 'production'],
83
+ optional: Boolean,
84
+ 'package-lock': Boolean,
85
+ otp: [null, String],
86
+ 'package-lock-only': Boolean,
87
+ parseable: Boolean,
88
+ 'prefer-offline': Boolean,
89
+ 'prefer-online': Boolean,
90
+ prefix: path_1.default,
91
+ preid: String,
92
+ production: Boolean,
93
+ progress: Boolean,
94
+ // allow proxy to be disabled explicitly
95
+ proxy: [null, false, url_1.default],
96
+ 'read-only': Boolean,
97
+ 'rebuild-bundle': Boolean,
98
+ registry: [null, url_1.default],
99
+ rollback: Boolean,
100
+ save: Boolean,
101
+ 'save-bundle': Boolean,
102
+ 'save-dev': Boolean,
103
+ 'save-exact': Boolean,
104
+ 'save-optional': Boolean,
105
+ 'save-prefix': String,
106
+ 'save-prod': Boolean,
107
+ scope: String,
108
+ 'script-shell': [null, String],
109
+ 'scripts-prepend-node-path': [false, true, 'auto', 'warn-only'],
110
+ searchopts: String,
111
+ searchexclude: [null, String],
112
+ searchlimit: Number,
113
+ searchstaleness: Number,
114
+ 'send-metrics': Boolean,
115
+ shell: String,
116
+ shrinkwrap: Boolean,
117
+ 'sign-git-commit': Boolean,
118
+ 'sign-git-tag': Boolean,
119
+ 'sso-poll-frequency': Number,
120
+ 'sso-type': [null, 'oauth', 'saml'],
121
+ 'strict-ssl': Boolean,
122
+ tag: String,
123
+ timing: Boolean,
124
+ tmp: path_1.default,
125
+ unicode: Boolean,
126
+ 'unsafe-perm': Boolean,
127
+ 'update-notifier': Boolean,
128
+ usage: Boolean,
129
+ user: [Number, String],
130
+ userconfig: path_1.default,
131
+ umask: Umask,
132
+ version: Boolean,
133
+ 'tag-version-prefix': String,
134
+ versions: Boolean,
135
+ viewer: String,
136
+ _exit: Boolean,
137
+ };
138
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function warnIfHanging(): void;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.warnIfHanging = void 0;
7
+ const npmlog_1 = __importDefault(require("npmlog"));
8
+ const child_process_1 = require("../child-process");
9
+ function warnIfHanging() {
10
+ const childProcessCount = (0, child_process_1.getChildProcessCount)();
11
+ if (childProcessCount > 0) {
12
+ npmlog_1.default.warn('complete', `Waiting for ${childProcessCount} child ` +
13
+ `process${childProcessCount === 1 ? '' : 'es'} to exit. ` +
14
+ 'CTRL-C to exit immediately.');
15
+ }
16
+ }
17
+ exports.warnIfHanging = warnIfHanging;
18
+ //# sourceMappingURL=warn-if-hanging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warn-if-hanging.js","sourceRoot":"","sources":["../../src/utils/warn-if-hanging.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAyB;AAEzB,oDAAwD;AAExD,SAAgB,aAAa;IAC3B,MAAM,iBAAiB,GAAG,IAAA,oCAAoB,GAAE,CAAC;IAEjD,IAAI,iBAAiB,GAAG,CAAC,EAAE;QACzB,gBAAG,CAAC,IAAI,CACN,UAAU,EACV,eAAe,iBAAiB,SAAS;YACzC,UAAU,iBAAiB,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,YAAY;YACzD,6BAA6B,CAC9B,CAAC;KACH;AACH,CAAC;AAXD,sCAWC"}
@@ -0,0 +1 @@
1
+ export declare function writeLogFile(cwd: string): void;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.writeLogFile = void 0;
7
+ const npmlog_1 = __importDefault(require("npmlog"));
8
+ const path_1 = __importDefault(require("path"));
9
+ const os_1 = __importDefault(require("os"));
10
+ const write_file_atomic_1 = __importDefault(require("write-file-atomic"));
11
+ function writeLogFile(cwd) {
12
+ let logOutput = '';
13
+ npmlog_1.default.record.forEach((m) => {
14
+ let pref = [m.id, m.level];
15
+ if (m.prefix) {
16
+ pref.push(m.prefix);
17
+ }
18
+ pref = pref.join(' ');
19
+ m.message
20
+ .trim()
21
+ .split(/\r?\n/)
22
+ .map((line) => `${pref} ${line}`.trim())
23
+ .forEach((line) => {
24
+ logOutput += line + os_1.default.EOL;
25
+ });
26
+ });
27
+ // this must be synchronous because it is called before process exit
28
+ write_file_atomic_1.default.sync(path_1.default.join(cwd, 'lerna-debug.log'), logOutput);
29
+ // truncate log after writing
30
+ npmlog_1.default.record.length = 0;
31
+ }
32
+ exports.writeLogFile = writeLogFile;
33
+ //# sourceMappingURL=write-log-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-log-file.js","sourceRoot":"","sources":["../../src/utils/write-log-file.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAyB;AACzB,gDAAwB;AACxB,4CAAoB;AACpB,0EAAgD;AAEhD,SAAgB,YAAY,CAAC,GAAW;IACtC,IAAI,SAAS,GAAG,EAAE,CAAC;IAEnB,gBAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACvB,IAAI,IAAI,GAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,CAAC,MAAM,EAAE;YACZ,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;SACrB;QACD,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEtB,CAAC,CAAC,OAAO;aACN,IAAI,EAAE;aACN,KAAK,CAAC,OAAO,CAAC;aACd,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;aACvC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAChB,SAAS,IAAI,IAAI,GAAG,YAAE,CAAC,GAAG,CAAC;QAC7B,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,oEAAoE;IACpE,2BAAe,CAAC,IAAI,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,CAAC,EAAE,SAAS,CAAC,CAAC;IAEnE,6BAA6B;IAC7B,gBAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;AACxB,CAAC;AAxBD,oCAwBC"}
@@ -0,0 +1,4 @@
1
+ export declare class ValidationError extends Error {
2
+ prefix: string;
3
+ constructor(prefix: string, message: string, ...rest: string[]);
4
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ValidationError = void 0;
7
+ const npmlog_1 = __importDefault(require("npmlog"));
8
+ class ValidationError extends Error {
9
+ constructor(prefix, message, ...rest) {
10
+ super(message);
11
+ this.prefix = '';
12
+ this.name = 'ValidationError';
13
+ this.prefix = prefix;
14
+ npmlog_1.default.resume(); // might be paused, noop otherwise
15
+ npmlog_1.default.error(prefix, message, ...rest);
16
+ }
17
+ }
18
+ exports.ValidationError = ValidationError;
19
+ //# sourceMappingURL=validation-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation-error.js","sourceRoot":"","sources":["../src/validation-error.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAyB;AAEzB,MAAa,eAAgB,SAAQ,KAAK;IAGxC,YAAY,MAAc,EAAE,OAAe,EAAE,GAAG,IAAc;QAC5D,KAAK,CAAC,OAAO,CAAC,CAAC;QAHjB,WAAM,GAAG,EAAE,CAAC;QAIV,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,gBAAG,CAAC,MAAM,EAAE,CAAC,CAAC,kCAAkC;QAChD,gBAAG,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACtC,CAAC;CACF;AAVD,0CAUC"}
package/package.json ADDED
@@ -0,0 +1,110 @@
1
+ {
2
+ "name": "@lerna-lite/core",
3
+ "description": "Lerna-Lite core implementation module",
4
+ "version": "0.3.0",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "typings": "dist/index.d.ts",
8
+ "publishConfig": {
9
+ "access": "public"
10
+ },
11
+ "files": [
12
+ "/dist"
13
+ ],
14
+ "scripts": {
15
+ "build": "tsc --project tsconfig.bundle.json",
16
+ "pack-tarball": "npm pack"
17
+ },
18
+ "license": "MIT",
19
+ "author": "Ghislain B.",
20
+ "homepage": "https://github.com/ghiscoding/lerna-lite",
21
+ "repository": {
22
+ "type": "git",
23
+ "url": "https://github.com/ghiscoding/lerna-lite.git",
24
+ "directory": "packages/core"
25
+ },
26
+ "bugs": {
27
+ "url": "https://github.com/ghiscoding/lerna-lite/issues"
28
+ },
29
+ "engines": {
30
+ "node": ">=16.11.0",
31
+ "npm": ">=8.0.0"
32
+ },
33
+ "dependencies": {
34
+ "@octokit/rest": "^18.12.0",
35
+ "async": "^3.2.3",
36
+ "chalk": "^4.1.2",
37
+ "clone-deep": "^4.0.1",
38
+ "config-chain": "^1.1.13",
39
+ "conventional-changelog-angular": "^5.0.13",
40
+ "conventional-changelog-core": "^4.2.4",
41
+ "conventional-recommended-bump": "^6.1.0",
42
+ "cosmiconfig": "^7.0.1",
43
+ "dedent": "^0.7.0",
44
+ "execa": "^5.1.1",
45
+ "fs-extra": "^10.0.0",
46
+ "get-stream": "^6.0.1",
47
+ "git-url-parse": "^11.6.0",
48
+ "glob-parent": "^6.0.2",
49
+ "globby": "^11.1.0",
50
+ "inquirer": "^8.2.0",
51
+ "is-ci": "^3.0.1",
52
+ "libnpmaccess": "^5.0.0",
53
+ "libnpmpublish": "^5.0.0",
54
+ "load-json-file": "^6.2.0",
55
+ "minimatch": "^3.0.4",
56
+ "node-fetch": "^2.6.6",
57
+ "npm-lifecycle": "^3.1.5",
58
+ "npm-package-arg": "^8.1.5",
59
+ "npm-packlist": "^3.0.0",
60
+ "npm-registry-fetch": "^12.0.0",
61
+ "npmlog": "^6.0.0",
62
+ "os": "^0.1.2",
63
+ "p-map": "^4.0.0",
64
+ "p-pipe": "^3.1.0",
65
+ "p-queue": "^6.6.2",
66
+ "p-reduce": "^2.1.0",
67
+ "pacote": "^12.0.2",
68
+ "path": "^0.12.7",
69
+ "resolve-from": "^5.0.0",
70
+ "semver": "^7.3.5",
71
+ "slash": "^3.0.0",
72
+ "ssri": "^8.0.1",
73
+ "strong-log-transformer": "^2.1.0",
74
+ "tar": "^6.1.11",
75
+ "temp-write": "^4.0.0",
76
+ "ts-node": "^10.4.0",
77
+ "whatwg-url": "^11.0.0",
78
+ "write-file-atomic": "^4.0.0",
79
+ "write-json-file": "^4.3.0",
80
+ "write-pkg": "^4.0.0",
81
+ "yargs": "^17.3.1"
82
+ },
83
+ "devDependencies": {
84
+ "@types/async": "^3.2.12",
85
+ "@types/clone-deep": "^4.0.1",
86
+ "@types/conventional-changelog-core": "^4.2.1",
87
+ "@types/conventional-recommended-bump": "^6.1.0",
88
+ "@types/dedent": "^0.7.0",
89
+ "@types/execa": "^2.0.0",
90
+ "@types/fs-extra": "^9.0.13",
91
+ "@types/git-url-parse": "^9.0.1",
92
+ "@types/glob-parent": "^5.1.1",
93
+ "@types/load-json-file": "^5.1.0",
94
+ "@types/node": "^17.0.8",
95
+ "@types/npm-package-arg": "^6.1.1",
96
+ "@types/npmlog": "^4.1.4",
97
+ "@types/p-map": "^2.0.0",
98
+ "@types/semver": "^7.3.9",
99
+ "@types/strong-log-transformer": "^1.0.0",
100
+ "@types/write-file-atomic": "^4.0.0",
101
+ "@types/write-json-file": "^3.2.1",
102
+ "@types/write-pkg": "^4.0.0",
103
+ "@types/yargs": "^17.0.8"
104
+ },
105
+ "funding": {
106
+ "type": "ko_fi",
107
+ "url": "https://ko-fi.com/N4N679OT"
108
+ },
109
+ "gitHead": "a945ca51d55a153ef61e296d9856cda65c716a79"
110
+ }