tnp-helpers 16.444.15 → 16.444.18

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 (94) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/esm2022/lib/base/base-git.mjs +613 -0
  3. package/browser/esm2022/lib/base/base-library-build.mjs +383 -0
  4. package/browser/esm2022/lib/base/base-linked-projects.mjs +291 -0
  5. package/browser/esm2022/lib/base/base-npm-helpers.mjs +317 -0
  6. package/browser/esm2022/lib/base/base-project-resolver.mjs +56 -2
  7. package/browser/esm2022/lib/base/base-project.mjs +180 -1482
  8. package/browser/esm2022/lib/base/core-project.mjs +5 -3
  9. package/browser/esm2022/lib/base/index.mjs +5 -1
  10. package/browser/esm2022/lib/models.mjs +2 -1
  11. package/browser/fesm2022/tnp-helpers.mjs +1095 -745
  12. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  13. package/browser/lib/base/base-git.d.ts +114 -0
  14. package/browser/lib/base/base-library-build.d.ts +22 -0
  15. package/browser/lib/base/base-linked-projects.d.ts +23 -0
  16. package/browser/lib/base/base-npm-helpers.d.ts +80 -0
  17. package/browser/lib/base/base-project-resolver.d.ts +2 -1
  18. package/browser/lib/base/base-project.d.ts +9 -205
  19. package/browser/lib/base/index.d.ts +4 -0
  20. package/browser/lib/models.d.ts +17 -4
  21. package/client/esm2022/lib/base/base-git.mjs +613 -0
  22. package/client/esm2022/lib/base/base-library-build.mjs +383 -0
  23. package/client/esm2022/lib/base/base-linked-projects.mjs +291 -0
  24. package/client/esm2022/lib/base/base-npm-helpers.mjs +317 -0
  25. package/client/esm2022/lib/base/base-project-resolver.mjs +56 -2
  26. package/client/esm2022/lib/base/base-project.mjs +180 -1482
  27. package/client/esm2022/lib/base/core-project.mjs +5 -3
  28. package/client/esm2022/lib/base/index.mjs +5 -1
  29. package/client/esm2022/lib/models.mjs +2 -1
  30. package/client/fesm2022/tnp-helpers.mjs +1095 -745
  31. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  32. package/client/lib/base/base-git.d.ts +114 -0
  33. package/client/lib/base/base-library-build.d.ts +22 -0
  34. package/client/lib/base/base-linked-projects.d.ts +23 -0
  35. package/client/lib/base/base-npm-helpers.d.ts +80 -0
  36. package/client/lib/base/base-project-resolver.d.ts +2 -1
  37. package/client/lib/base/base-project.d.ts +9 -205
  38. package/client/lib/base/index.d.ts +4 -0
  39. package/client/lib/models.d.ts +17 -4
  40. package/client/package.json +9 -9
  41. package/lib/base/base-command-line.backend.d.ts +2 -0
  42. package/lib/base/base-command-line.backend.js +38 -13
  43. package/lib/base/base-command-line.backend.js.map +1 -1
  44. package/lib/base/base-git.d.ts +120 -0
  45. package/lib/base/base-git.js +856 -0
  46. package/lib/base/base-git.js.map +1 -0
  47. package/lib/base/base-library-build.d.ts +26 -0
  48. package/lib/base/base-library-build.js +450 -0
  49. package/lib/base/base-library-build.js.map +1 -0
  50. package/lib/base/base-linked-projects.d.ts +23 -0
  51. package/lib/base/base-linked-projects.js +391 -0
  52. package/lib/base/base-linked-projects.js.map +1 -0
  53. package/lib/base/base-npm-helpers.d.ts +79 -0
  54. package/lib/base/base-npm-helpers.js +399 -0
  55. package/lib/base/base-npm-helpers.js.map +1 -0
  56. package/lib/base/base-project-resolver.d.ts +2 -1
  57. package/lib/base/base-project-resolver.js +39 -4
  58. package/lib/base/base-project-resolver.js.map +1 -1
  59. package/lib/base/base-project.d.ts +11 -214
  60. package/lib/base/base-project.js +103 -1737
  61. package/lib/base/base-project.js.map +1 -1
  62. package/lib/base/core-project.js +8 -4
  63. package/lib/base/core-project.js.map +1 -1
  64. package/lib/base/index.d.ts +4 -0
  65. package/lib/base/index.js +4 -0
  66. package/lib/base/index.js.map +1 -1
  67. package/lib/helpers/for-backend/helpers-git.backend.d.ts +1 -1
  68. package/lib/helpers/for-backend/helpers-git.backend.js +2 -2
  69. package/lib/helpers/for-browser/angular.helper.js +3 -3
  70. package/lib/models.d.ts +17 -4
  71. package/lib/old/base-component.js +3 -3
  72. package/lib/old/base-formly-component.js +3 -3
  73. package/lib/old/dual-component-ctrl.js +3 -3
  74. package/package.json +4 -4
  75. package/tmp-environment.json +13 -13
  76. package/websql/esm2022/lib/base/base-git.mjs +613 -0
  77. package/websql/esm2022/lib/base/base-library-build.mjs +383 -0
  78. package/websql/esm2022/lib/base/base-linked-projects.mjs +291 -0
  79. package/websql/esm2022/lib/base/base-npm-helpers.mjs +317 -0
  80. package/websql/esm2022/lib/base/base-project-resolver.mjs +50 -2
  81. package/websql/esm2022/lib/base/base-project.mjs +235 -1537
  82. package/websql/esm2022/lib/base/core-project.mjs +5 -3
  83. package/websql/esm2022/lib/base/index.mjs +5 -1
  84. package/websql/esm2022/lib/models.mjs +2 -1
  85. package/websql/fesm2022/tnp-helpers.mjs +1107 -762
  86. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  87. package/websql/lib/base/base-git.d.ts +114 -0
  88. package/websql/lib/base/base-library-build.d.ts +22 -0
  89. package/websql/lib/base/base-linked-projects.d.ts +23 -0
  90. package/websql/lib/base/base-npm-helpers.d.ts +80 -0
  91. package/websql/lib/base/base-project-resolver.d.ts +2 -1
  92. package/websql/lib/base/base-project.d.ts +12 -205
  93. package/websql/lib/base/index.d.ts +4 -0
  94. package/websql/lib/models.d.ts +17 -4
@@ -0,0 +1,399 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseNpmHelpers = void 0;
4
+ var tslib_1 = require("tslib");
5
+ //#region imports
6
+ //#region @backend
7
+ var tnp_core_1 = require("tnp-core");
8
+ //#endregion
9
+ var tnp_core_2 = require("tnp-core");
10
+ var index_1 = require("../index");
11
+ var base_feature_for_project_1 = require("./base-feature-for-project");
12
+ var tnp_config_1 = require("tnp-config");
13
+ //#endregion
14
+ var BaseNpmHelpers = /** @class */ (function (_super) {
15
+ tslib_1.__extends(BaseNpmHelpers, _super);
16
+ function BaseNpmHelpers(project) {
17
+ var _this = _super.call(this, project) || this;
18
+ _this.packageJSON = project.readJson(tnp_config_1.config.file.package_json);
19
+ return _this;
20
+ }
21
+ Object.defineProperty(BaseNpmHelpers.prototype, "name", {
22
+ //#region methods & getters / name
23
+ get: function () {
24
+ var _a;
25
+ return ((_a = this.packageJSON) === null || _a === void 0 ? void 0 : _a.name) || '';
26
+ },
27
+ enumerable: false,
28
+ configurable: true
29
+ });
30
+ Object.defineProperty(BaseNpmHelpers.prototype, "version", {
31
+ //#endregion
32
+ //#region methods & getters / version
33
+ /**
34
+ * version from package.json -> property version
35
+ */
36
+ get: function () {
37
+ var _a;
38
+ return (_a = this.packageJSON) === null || _a === void 0 ? void 0 : _a.version;
39
+ },
40
+ enumerable: false,
41
+ configurable: true
42
+ });
43
+ Object.defineProperty(BaseNpmHelpers.prototype, "majorVersion", {
44
+ //#endregion
45
+ //#region methods & getters / major version
46
+ /**
47
+ * Major Version from package.json
48
+ */
49
+ // @ts-ignore
50
+ get: function () {
51
+ //#region @backendFunc
52
+ return Number(tnp_core_2._.first((this.version || '').split('.')));
53
+ //#endregion
54
+ },
55
+ enumerable: false,
56
+ configurable: true
57
+ });
58
+ Object.defineProperty(BaseNpmHelpers.prototype, "minorVersion", {
59
+ //#endregion
60
+ //#region methods & getters / minor version
61
+ /**
62
+ * Minor Version from package.json
63
+ */
64
+ // @ts-ignore
65
+ get: function () {
66
+ //#region @backendFunc
67
+ var _a = tslib_1.__read((this.version || '').split('.') || [void 0, void 0], 2), __ = _a[0], minor = _a[1];
68
+ return Number(minor);
69
+ //#endregion
70
+ },
71
+ enumerable: false,
72
+ configurable: true
73
+ });
74
+ //#endregion
75
+ //#region methods & getters / bump path version
76
+ /**
77
+ * @deprecated
78
+ */
79
+ BaseNpmHelpers.prototype.bumpPatchVersion = function () {
80
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
81
+ var packageJson, version, versionComponents, major, minor, patch, preRelease, newPatch, newVersion;
82
+ return tslib_1.__generator(this, function (_a) {
83
+ packageJson = this.project.readJson(tnp_config_1.config.file.package_json);
84
+ version = packageJson === null || packageJson === void 0 ? void 0 : packageJson.version;
85
+ if (!version) {
86
+ return [2 /*return*/];
87
+ }
88
+ versionComponents = version.match(/^(\d+)\.(\d+)\.(\d+)(-.+)?$/);
89
+ major = versionComponents[1];
90
+ minor = versionComponents[2];
91
+ patch = versionComponents[3];
92
+ preRelease = versionComponents[4] || '';
93
+ newPatch = parseInt(patch, 10) + 1;
94
+ newVersion = "".concat(major, ".").concat(minor, ".").concat(newPatch).concat(preRelease);
95
+ // Update the version in the package.json object
96
+ packageJson.version = newVersion;
97
+ // Write the updated package.json back to disk
98
+ this.project.writeJson(tnp_config_1.config.file.package_json, packageJson);
99
+ return [2 /*return*/];
100
+ });
101
+ });
102
+ };
103
+ Object.defineProperty(BaseNpmHelpers.prototype, "versionPathAsNumber", {
104
+ //#endregion
105
+ //#region methods & getters / get version path as number
106
+ get: function () {
107
+ //#region @backendFunc
108
+ var ver = this.version.split('.');
109
+ var res = Number(tnp_core_2._.last(ver));
110
+ return isNaN(res) ? 0 : res;
111
+ //#endregion
112
+ },
113
+ enumerable: false,
114
+ configurable: true
115
+ });
116
+ Object.defineProperty(BaseNpmHelpers.prototype, "dependencies", {
117
+ //#endregion
118
+ //#region methods & getters / dependencies
119
+ /**
120
+ * npm dependencies from package.json
121
+ */
122
+ get: function () {
123
+ return (this.packageJSON ? this.packageJSON.dependencies : {}) || {};
124
+ },
125
+ enumerable: false,
126
+ configurable: true
127
+ });
128
+ Object.defineProperty(BaseNpmHelpers.prototype, "peerDependencies", {
129
+ //#endregion
130
+ //#region methods & getters / peer dependencies
131
+ /**
132
+ * peerDependencies dependencies
133
+ */
134
+ get: function () {
135
+ return (this.packageJSON ? this.packageJSON.peerDependencies : {}) || {};
136
+ },
137
+ enumerable: false,
138
+ configurable: true
139
+ });
140
+ Object.defineProperty(BaseNpmHelpers.prototype, "devDependencies", {
141
+ //#endregion
142
+ //#region methods & getters / dev dependencies
143
+ /**
144
+ * devDependencies dependencies
145
+ */
146
+ get: function () {
147
+ return (this.packageJSON ? this.packageJSON.devDependencies : {}) || {};
148
+ },
149
+ enumerable: false,
150
+ configurable: true
151
+ });
152
+ Object.defineProperty(BaseNpmHelpers.prototype, "resolutions", {
153
+ //#endregion
154
+ //#region methods & getters / resolutions dependencies
155
+ /**
156
+ * resolutions dependencies
157
+ */
158
+ get: function () {
159
+ return (this.packageJSON ? this.packageJSON['resolutions'] : {}) || {};
160
+ },
161
+ enumerable: false,
162
+ configurable: true
163
+ });
164
+ Object.defineProperty(BaseNpmHelpers.prototype, "allDependencies", {
165
+ //#endregion
166
+ //#region methods & getters / all dependencies
167
+ /**
168
+ * @returns object witl all deps from current project package json
169
+ */
170
+ get: function () {
171
+ return this.allDepsFromPackageJson(this.packageJSON);
172
+ },
173
+ enumerable: false,
174
+ configurable: true
175
+ });
176
+ /**
177
+ * @returns object witl all deps from package json
178
+ */
179
+ BaseNpmHelpers.prototype.allDepsFromPackageJson = function (packageJson) {
180
+ return tnp_core_2._.merge(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, (packageJson.devDependencies || {})), (packageJson.peerDependencies || {})), (packageJson.dependencies || {})), (packageJson.resolutions || {})));
181
+ };
182
+ //#endregion
183
+ //#region getters & methods / check if loggin in to npm
184
+ BaseNpmHelpers.prototype.checkIfLogginInToNpm = function () {
185
+ //#region @backendFunc
186
+ // if (!this.canBePublishToNpmRegistry) {
187
+ // return;
188
+ // }
189
+ try {
190
+ this.project.run('npm whoami').sync();
191
+ }
192
+ catch (e) {
193
+ index_1.Helpers.error("Please login in to npm.", false, true);
194
+ }
195
+ //#endregion
196
+ };
197
+ //#endregion
198
+ //#region methods & getters / link node_modules to other project
199
+ BaseNpmHelpers.prototype.linkNodeModulesTo = function (proj) {
200
+ //#region @backendFunc
201
+ var source = this.project.pathFor(tnp_config_1.config.folder.node_modules);
202
+ var dest = proj.pathFor(tnp_config_1.config.folder.node_modules);
203
+ index_1.Helpers.remove(dest, true);
204
+ index_1.Helpers.createSymLink(source, dest);
205
+ //#endregion
206
+ };
207
+ //#endregion
208
+ //#region methods & getters / prefer yarn over npm
209
+ BaseNpmHelpers.prototype.preferYarnOverNpm = function () {
210
+ return false;
211
+ };
212
+ //#endregion
213
+ //#region methods & getters / make sure node modules installed
214
+ BaseNpmHelpers.prototype.makeSureNodeModulesInstalled = function (options) {
215
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
216
+ return tslib_1.__generator(this, function (_a) {
217
+ if (this.emptyNodeModules) {
218
+ this.reinstalNodeModules(options);
219
+ }
220
+ return [2 /*return*/];
221
+ });
222
+ });
223
+ };
224
+ //#endregion
225
+ //#region methods & getters / delete node_modules
226
+ BaseNpmHelpers.prototype.deleteNodeModules = function () {
227
+ this.project.remove(tnp_config_1.config.folder.node_modules);
228
+ };
229
+ //#endregion
230
+ //#region methods & getters / reinstall node_modules
231
+ BaseNpmHelpers.prototype.reinstallNodeModules = function (forcerRemoveNodeModules) {
232
+ if (forcerRemoveNodeModules === void 0) { forcerRemoveNodeModules = false; }
233
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
234
+ var source, _a, _b;
235
+ return tslib_1.__generator(this, function (_c) {
236
+ switch (_c.label) {
237
+ case 0:
238
+ //#region @backendFunc
239
+ index_1.Helpers.taskStarted("Reinstalling node_modules in ".concat(this.project.genericName));
240
+ source = this.project.pathFor(tnp_config_1.config.folder.node_modules);
241
+ if (forcerRemoveNodeModules) {
242
+ index_1.Helpers.remove(source, true);
243
+ }
244
+ _b = (_a = this.project).execute;
245
+ return [4 /*yield*/, this.prepareCommand({
246
+ useYarn: this.preferYarnOverNpm(),
247
+ })];
248
+ case 1: return [4 /*yield*/, _b.apply(_a, [_c.sent()])];
249
+ case 2:
250
+ _c.sent();
251
+ index_1.Helpers.taskDone("Reinstalling done for ".concat(this.project.genericName));
252
+ return [2 /*return*/];
253
+ }
254
+ });
255
+ });
256
+ };
257
+ //#endregion
258
+ //#region methods & getters / reinstall node modules
259
+ BaseNpmHelpers.prototype.reinstalNodeModules = function (options) {
260
+ //#region @backendFunc
261
+ index_1.Helpers.taskStarted("Reinstalling node modules for ".concat(this.project.genericName));
262
+ this.deleteNodeModules();
263
+ index_1.Helpers.run("".concat((options === null || options === void 0 ? void 0 : options.useYarn) ? 'yarn' : 'npm', " install ").concat((options === null || options === void 0 ? void 0 : options.force) ? '--force' : ''), { cwd: this.project.location }).sync();
264
+ index_1.Helpers.taskDone("Reinstalled node modules for ".concat(this.project.genericName));
265
+ //#endregion
266
+ };
267
+ Object.defineProperty(BaseNpmHelpers.prototype, "emptyNodeModules", {
268
+ //#endregion
269
+ //#region fields & getters / empty node_modules
270
+ /**
271
+ * @returns true if node_modules folder is empty
272
+ */
273
+ get: function () {
274
+ //#region @backendFunc
275
+ var node_modules_path = (0, tnp_core_1.crossPlatformPath)((0, tnp_core_1.crossPlatformPath)([this.project.location, tnp_config_1.config.folder.node_modules]));
276
+ if (index_1.Helpers.exists(node_modules_path)) {
277
+ try {
278
+ var real_node_modules_path = (0, tnp_core_1.crossPlatformPath)(tnp_core_1.fse.realpathSync((0, tnp_core_1.crossPlatformPath)([
279
+ this.project.location,
280
+ tnp_config_1.config.folder.node_modules,
281
+ ])));
282
+ node_modules_path = real_node_modules_path;
283
+ }
284
+ catch (error) { }
285
+ }
286
+ if (index_1.Helpers.isUnexistedLink(node_modules_path)) {
287
+ try {
288
+ index_1.Helpers.logWarn("[npm-helpers][emptyNodeModules] removing unexisted node_modules" +
289
+ " link form ".concat(this.project.location));
290
+ tnp_core_1.fse.unlinkSync(node_modules_path);
291
+ }
292
+ catch (error) { }
293
+ return true;
294
+ }
295
+ if (!index_1.Helpers.exists(node_modules_path)) {
296
+ return true;
297
+ }
298
+ if (!index_1.Helpers.exists((0, tnp_core_1.crossPlatformPath)([node_modules_path, '.bin']))) {
299
+ return true;
300
+ }
301
+ if (index_1.Helpers.findChildren(node_modules_path, function (c) { return c; }).length === 0) {
302
+ return true;
303
+ }
304
+ var package_json = (0, tnp_core_1.crossPlatformPath)([
305
+ tnp_core_1.path.dirname(node_modules_path),
306
+ tnp_config_1.config.file.package_json,
307
+ ]);
308
+ var minDepsLength = Object.keys(this.allDepsFromPackageJson(index_1.Helpers.readJson5(package_json))).length;
309
+ var notFullyInstalled = index_1.Helpers.findChildren(node_modules_path, function (c) { return c; }).length <
310
+ minDepsLength + 1;
311
+ if (notFullyInstalled) {
312
+ index_1.Helpers.logWarn("[npm-helpers] Not all deps are installed in ".concat(this.project.location));
313
+ }
314
+ return notFullyInstalled;
315
+ //#endregion
316
+ },
317
+ enumerable: false,
318
+ configurable: true
319
+ });
320
+ //#endregion
321
+ //#region methods & getters / reset package-lock.json
322
+ BaseNpmHelpers.prototype.resetPackageLockJson = function () {
323
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
324
+ var children, currentLocation;
325
+ var _this = this;
326
+ return tslib_1.__generator(this, function (_a) {
327
+ children = this.project.children;
328
+ currentLocation = this.project.location;
329
+ children.forEach(function (c) {
330
+ index_1.Helpers.info("reverting changes of package-lock.json for ".concat(tnp_core_1.chalk.bold(c.name)));
331
+ // console.log(`Project ${c.name} - loc: ${c.location} `)
332
+ try {
333
+ _this.project
334
+ .run("git checkout ".concat(c.location.replace(currentLocation + '/', ''), "/package-lock.json"))
335
+ .sync();
336
+ }
337
+ catch (error) { }
338
+ });
339
+ index_1.Helpers.info('RESETING DONE');
340
+ return [2 /*return*/];
341
+ });
342
+ });
343
+ };
344
+ //#endregion
345
+ //#region getters & methods / start npm task
346
+ BaseNpmHelpers.prototype.startNpmTask = function (taskName, additionalArguments) {
347
+ if (tnp_core_2._.isObject(additionalArguments)) {
348
+ additionalArguments = Object.keys(additionalArguments)
349
+ .map(function (k) { return "--".concat(k, " ").concat(additionalArguments[k]); })
350
+ .join(' ');
351
+ }
352
+ return this.project.run("npm run ".concat(taskName, " ").concat(additionalArguments ? ' -- ' + additionalArguments : ''), { output: true });
353
+ };
354
+ //#endregion
355
+ //#region methods & getters / prepare command
356
+ BaseNpmHelpers.prototype.prepareCommand = function (optiosn) {
357
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
358
+ var _a, pkg, remove, silent, useYarn, force, removeYarnOrPackageJsonLock, generateYarnOrPackageJsonLock, ignoreOptional, command, commonOptions, argsForFasterInstall, argsForFasterInstall;
359
+ return tslib_1.__generator(this, function (_b) {
360
+ _a = optiosn || {}, pkg = _a.pkg, remove = _a.remove, silent = _a.silent, useYarn = _a.useYarn, force = _a.force, removeYarnOrPackageJsonLock = _a.removeYarnOrPackageJsonLock, generateYarnOrPackageJsonLock = _a.generateYarnOrPackageJsonLock, ignoreOptional = _a.ignoreOptional;
361
+ command = '';
362
+ commonOptions = "--ignore-engines --no-audit";
363
+ if (useYarn) {
364
+ argsForFasterInstall = "".concat(force ? '--force' : '', " ").concat(commonOptions, " ");
365
+ command =
366
+ "".concat(removeYarnOrPackageJsonLock
367
+ ? "rm ".concat(tnp_config_1.config.file.yarn_lock, " ") +
368
+ "&& touch ".concat(tnp_config_1.config.file.yarn_lock, " && ")
369
+ : '') +
370
+ "yarn ".concat(remove ? 'remove' : 'add', " ").concat(pkg ? pkg.name : '', " ") +
371
+ " ".concat(generateYarnOrPackageJsonLock ? '' : '--no-lockfile', " ") +
372
+ " ".concat(argsForFasterInstall, " ") +
373
+ " ".concat(pkg && pkg.installType && pkg.installType === '--save-dev' ? '-dev' : '', " ");
374
+ //#endregion
375
+ }
376
+ else {
377
+ argsForFasterInstall = "".concat(force ? '--force' : '', " ").concat(commonOptions, " ") +
378
+ "".concat(silent ? '--silent --no-progress' : '', " ");
379
+ command =
380
+ "".concat(removeYarnOrPackageJsonLock
381
+ ? "rm ".concat(tnp_config_1.config.file.package_lock_json, " ") +
382
+ "&& touch ".concat(tnp_config_1.config.file.package_lock_json, " && ")
383
+ : '') +
384
+ "npx --node-options=--max-old-space-size=8000 npm " +
385
+ "".concat(remove ? 'uninstall' : 'install', " ").concat(pkg ? pkg.name : '', " ") +
386
+ " ".concat(generateYarnOrPackageJsonLock ? '' : '--no-package-lock', " ") +
387
+ " ".concat(ignoreOptional ? '--ignore-optional' : '', " ") +
388
+ " ".concat(pkg && pkg.installType ? pkg.installType : '', " ") +
389
+ " ".concat(argsForFasterInstall, " ");
390
+ //#endregion
391
+ }
392
+ return [2 /*return*/, command];
393
+ });
394
+ });
395
+ };
396
+ return BaseNpmHelpers;
397
+ }(base_feature_for_project_1.BaseFeatureForProject));
398
+ exports.BaseNpmHelpers = BaseNpmHelpers;
399
+ //# sourceMappingURL=base-npm-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-npm-helpers.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}
@@ -29,7 +29,7 @@ export declare class BaseProjectResolver<T extends Partial<BaseProject> = any> {
29
29
  typeFrom(location: string, recrusiveCall?: boolean): string;
30
30
  From(locationOfProject: string | string[], options?: any): T;
31
31
  nearestTo(absoluteLocation: string, options?: {
32
- type?: (string | string[]);
32
+ type?: string | string[];
33
33
  findGitRoot?: boolean;
34
34
  onlyOutSideNodeModules?: boolean;
35
35
  }): T;
@@ -37,4 +37,5 @@ export declare class BaseProjectResolver<T extends Partial<BaseProject> = any> {
37
37
  remove(project: T): void;
38
38
  add(project: T): void;
39
39
  allProjectFrom(absoluteLocation: string, stopOnCwd?: string): T[];
40
+ sortGroupOfProject<T extends BaseProject = BaseProject>(projects: T[], resoveDepsArray: (proj: T) => string[], projNameToCompare: (proj: T) => string): T[];
40
41
  }
@@ -113,7 +113,7 @@ var BaseProjectResolver = /** @class */ (function () {
113
113
  }
114
114
  var type = this.typeFrom(location);
115
115
  if (type) {
116
- var resultProject = new (this.classFn)();
116
+ var resultProject = new this.classFn();
117
117
  var pj = index_1.Helpers.readJson((0, tnp_core_2.crossPlatformPath)([location, tnp_config_1.config.file.package_json]));
118
118
  // @ts-ignore
119
119
  resultProject.location = location;
@@ -140,13 +140,15 @@ var BaseProjectResolver = /** @class */ (function () {
140
140
  if (tnp_core_1.fse.existsSync(absoluteLocation)) {
141
141
  absoluteLocation = tnp_core_1.fse.realpathSync(absoluteLocation);
142
142
  }
143
- if (tnp_core_1.fse.existsSync(absoluteLocation) && !tnp_core_1.fse.lstatSync(absoluteLocation).isDirectory()) {
143
+ if (tnp_core_1.fse.existsSync(absoluteLocation) &&
144
+ !tnp_core_1.fse.lstatSync(absoluteLocation).isDirectory()) {
144
145
  absoluteLocation = tnp_core_2.path.dirname(absoluteLocation);
145
146
  }
146
147
  var project;
147
148
  var previousLocation;
148
149
  while (true) {
149
- if (onlyOutSideNodeModules && (tnp_core_2.path.basename(tnp_core_2.path.dirname(absoluteLocation)) === 'node_modules')) {
150
+ if (onlyOutSideNodeModules &&
151
+ tnp_core_2.path.basename(tnp_core_2.path.dirname(absoluteLocation)) === 'node_modules') {
150
152
  absoluteLocation = tnp_core_2.path.dirname(tnp_core_2.path.dirname(absoluteLocation));
151
153
  }
152
154
  project = this.From(absoluteLocation, options);
@@ -180,7 +182,8 @@ var BaseProjectResolver = /** @class */ (function () {
180
182
  return;
181
183
  }
182
184
  absoluteLocation = (0, tnp_core_2.crossPlatformPath)(tnp_core_2.path.resolve(newAbsLocation));
183
- if (!tnp_core_1.fse.existsSync(absoluteLocation) && absoluteLocation.split('/').length < 2) {
185
+ if (!tnp_core_1.fse.existsSync(absoluteLocation) &&
186
+ absoluteLocation.split('/').length < 2) {
184
187
  return;
185
188
  }
186
189
  if (previousLocation === absoluteLocation) {
@@ -239,6 +242,38 @@ var BaseProjectResolver = /** @class */ (function () {
239
242
  return projectsList;
240
243
  //#endregion
241
244
  };
245
+ //#endregion
246
+ //#region fields & getters / sort group of projects
247
+ BaseProjectResolver.prototype.sortGroupOfProject = function (projects, resoveDepsArray, projNameToCompare) {
248
+ var visited = {};
249
+ var stack = {};
250
+ var result = [];
251
+ var visit = function (project) {
252
+ if (stack[projNameToCompare(project)]) {
253
+ // Circular dependency detected
254
+ index_1.Helpers.error("Circular dependency detected involving project: ".concat(projNameToCompare(project)));
255
+ }
256
+ if (!visited[projNameToCompare(project)]) {
257
+ visited[projNameToCompare(project)] = true;
258
+ stack[projNameToCompare(project)] = true;
259
+ var depsResolved = resoveDepsArray(project);
260
+ depsResolved.forEach(function (dependency) {
261
+ var dependentProject = projects.find(function (p) {
262
+ // console.log(`comparing :"${projNameToCompare(p)}" and "${dependency}"`)
263
+ return projNameToCompare(p) === dependency;
264
+ });
265
+ if (dependentProject) {
266
+ visit(dependentProject);
267
+ }
268
+ });
269
+ stack[projNameToCompare(project)] = false;
270
+ result.push(project);
271
+ }
272
+ };
273
+ projects.forEach(function (project) { return visit(project); });
274
+ return result;
275
+ // return result.reverse(); // Reverse the result to get the correct order
276
+ };
242
277
  return BaseProjectResolver;
243
278
  }());
244
279
  exports.BaseProjectResolver = BaseProjectResolver;
@@ -1 +1 @@
1
- {"version":3,"file":"base-project-resolver.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-project-resolver.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}