tnp-helpers 16.5.16 → 16.5.19

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 (130) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/esm2022/lib/base/base-feature-for-project.mjs +8 -0
  3. package/browser/esm2022/lib/base/base-project-resolver.mjs +204 -0
  4. package/browser/esm2022/lib/base/base-project.mjs +1007 -0
  5. package/browser/esm2022/lib/base/commit-data.mjs +145 -0
  6. package/browser/esm2022/lib/base/index.mjs +11 -0
  7. package/browser/esm2022/lib/base/translate.mjs +42 -0
  8. package/browser/esm2022/lib/helpers.mjs +6 -3
  9. package/browser/esm2022/lib/index.mjs +2 -3
  10. package/browser/esm2022/lib/models.mjs +1 -1
  11. package/browser/fesm2022/tnp-helpers.mjs +860 -84
  12. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  13. package/browser/lib/base/base-feature-for-project.d.ts +6 -0
  14. package/{client/lib → browser/lib/base}/base-project-resolver.d.ts +4 -7
  15. package/browser/lib/base/base-project.d.ts +287 -0
  16. package/browser/lib/base/commit-data.d.ts +31 -0
  17. package/browser/lib/base/index.d.ts +5 -0
  18. package/browser/lib/base/translate.d.ts +2 -0
  19. package/browser/lib/index.d.ts +2 -3
  20. package/browser/lib/models.d.ts +1 -1
  21. package/client/esm2022/lib/base/base-feature-for-project.mjs +8 -0
  22. package/client/esm2022/lib/base/base-project-resolver.mjs +204 -0
  23. package/client/esm2022/lib/base/base-project.mjs +1007 -0
  24. package/client/esm2022/lib/base/commit-data.mjs +145 -0
  25. package/client/esm2022/lib/base/index.mjs +11 -0
  26. package/client/esm2022/lib/base/translate.mjs +42 -0
  27. package/client/esm2022/lib/helpers.mjs +6 -3
  28. package/client/esm2022/lib/index.mjs +2 -3
  29. package/client/esm2022/lib/models.mjs +1 -1
  30. package/client/fesm2022/tnp-helpers.mjs +860 -84
  31. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  32. package/client/lib/base/base-feature-for-project.d.ts +6 -0
  33. package/{browser/lib → client/lib/base}/base-project-resolver.d.ts +4 -7
  34. package/client/lib/base/base-project.d.ts +287 -0
  35. package/client/lib/base/commit-data.d.ts +31 -0
  36. package/client/lib/base/index.d.ts +5 -0
  37. package/client/lib/base/translate.d.ts +2 -0
  38. package/client/lib/index.d.ts +2 -3
  39. package/client/lib/models.d.ts +1 -1
  40. package/client/package.json +37 -34
  41. package/lib/base/base-command-line.backend.d.ts +79 -0
  42. package/lib/base/base-command-line.backend.js +674 -0
  43. package/lib/base/base-command-line.backend.js.map +1 -0
  44. package/lib/base/base-feature-for-project.d.ts +5 -0
  45. package/lib/base/base-feature-for-project.js +11 -0
  46. package/lib/base/base-feature-for-project.js.map +1 -0
  47. package/lib/{base-project-resolver.d.ts → base/base-project-resolver.d.ts} +4 -7
  48. package/lib/{base-project-resolver.js → base/base-project-resolver.js} +33 -28
  49. package/lib/base/base-project-resolver.js.map +1 -0
  50. package/lib/base/base-project.d.ts +297 -0
  51. package/lib/base/base-project.js +1451 -0
  52. package/lib/base/base-project.js.map +1 -0
  53. package/lib/base/base-start-config.backend.d.ts +35 -0
  54. package/lib/base/base-start-config.backend.js +126 -0
  55. package/lib/base/base-start-config.backend.js.map +1 -0
  56. package/lib/base/command-line-feature.backend.d.ts +32 -0
  57. package/lib/base/command-line-feature.backend.js +89 -0
  58. package/lib/base/command-line-feature.backend.js.map +1 -0
  59. package/lib/base/commit-data.d.ts +30 -0
  60. package/lib/base/commit-data.js +200 -0
  61. package/lib/base/commit-data.js.map +1 -0
  62. package/lib/base/index.d.ts +7 -0
  63. package/lib/base/index.js +13 -0
  64. package/lib/base/index.js.map +1 -0
  65. package/lib/base/translate.d.ts +1 -0
  66. package/lib/base/translate.js +80 -0
  67. package/lib/base/translate.js.map +1 -0
  68. package/lib/for-backend/helpers-cli-tool.backend.d.ts +42 -22
  69. package/lib/for-backend/helpers-cli-tool.backend.js +129 -180
  70. package/lib/for-backend/helpers-cli-tool.backend.js.map +1 -1
  71. package/lib/for-backend/helpers-file-folders.backend.d.ts +2 -8
  72. package/lib/for-backend/helpers-file-folders.backend.js +4 -14
  73. package/lib/for-backend/helpers-file-folders.backend.js.map +1 -1
  74. package/lib/for-backend/helpers-git.backend.d.ts +48 -12
  75. package/lib/for-backend/helpers-git.backend.js +227 -142
  76. package/lib/for-backend/helpers-git.backend.js.map +1 -1
  77. package/lib/for-backend/helpers-process.backend.d.ts +5 -11
  78. package/lib/for-backend/helpers-process.backend.js +77 -39
  79. package/lib/for-backend/helpers-process.backend.js.map +1 -1
  80. package/lib/for-backend/helpers-vscode.backend.d.ts +3 -3
  81. package/lib/for-backend/helpers-vscode.backend.js.map +1 -1
  82. package/lib/for-browser/angular.helper.js +3 -3
  83. package/lib/helpers.d.ts +2 -3
  84. package/lib/helpers.js +5 -2
  85. package/lib/helpers.js.map +1 -1
  86. package/lib/index.d.ts +2 -3
  87. package/lib/index.js +1 -2
  88. package/lib/index.js.map +1 -1
  89. package/lib/models.d.ts +1 -1
  90. package/lib/old/base-component.js +3 -3
  91. package/lib/old/base-formly-component.js +3 -3
  92. package/lib/old/dual-component-ctrl.js +3 -3
  93. package/package.json +8 -5
  94. package/package.json_tnp.json5 +4 -1
  95. package/tmp-environment.json +41 -45
  96. package/websql/esm2022/lib/base/base-feature-for-project.mjs +8 -0
  97. package/websql/esm2022/lib/base/base-project-resolver.mjs +203 -0
  98. package/websql/esm2022/lib/base/base-project.mjs +994 -0
  99. package/websql/esm2022/lib/base/commit-data.mjs +145 -0
  100. package/websql/esm2022/lib/base/index.mjs +11 -0
  101. package/websql/esm2022/lib/base/translate.mjs +42 -0
  102. package/websql/esm2022/lib/helpers.mjs +6 -3
  103. package/websql/esm2022/lib/index.mjs +2 -3
  104. package/websql/esm2022/lib/models.mjs +1 -1
  105. package/websql/fesm2022/tnp-helpers.mjs +861 -85
  106. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  107. package/websql/lib/base/base-feature-for-project.d.ts +6 -0
  108. package/websql/lib/{base-project-resolver.d.ts → base/base-project-resolver.d.ts} +4 -7
  109. package/websql/lib/base/base-project.d.ts +287 -0
  110. package/websql/lib/base/commit-data.d.ts +31 -0
  111. package/websql/lib/base/index.d.ts +5 -0
  112. package/websql/lib/base/translate.d.ts +2 -0
  113. package/websql/lib/index.d.ts +2 -3
  114. package/websql/lib/models.d.ts +1 -1
  115. package/browser/esm2022/lib/base-project-resolver.mjs +0 -223
  116. package/browser/esm2022/lib/base-project.mjs +0 -374
  117. package/browser/lib/base-project.d.ts +0 -94
  118. package/client/esm2022/lib/base-project-resolver.mjs +0 -223
  119. package/client/esm2022/lib/base-project.mjs +0 -374
  120. package/client/lib/base-project.d.ts +0 -94
  121. package/lib/base-project-resolver.js.map +0 -1
  122. package/lib/base-project.d.ts +0 -103
  123. package/lib/base-project.js +0 -482
  124. package/lib/base-project.js.map +0 -1
  125. package/lib/git-project.d.ts +0 -57
  126. package/lib/git-project.js +0 -224
  127. package/lib/git-project.js.map +0 -1
  128. package/websql/esm2022/lib/base-project-resolver.mjs +0 -222
  129. package/websql/esm2022/lib/base-project.mjs +0 -361
  130. package/websql/lib/base-project.d.ts +0 -94
@@ -1,374 +0,0 @@
1
- /* */
2
- /* */
3
- /* */
4
- /* */
5
- /* */
6
- import { path } from 'tnp-core/browser';
7
- import { _ } from 'tnp-core/browser';
8
- import { HelpersFiredev } from './helpers';
9
- import { BaseProjectResolver } from './base-project-resolver';
10
- const Helpers = HelpersFiredev.Instance;
11
- const takenPorts = [];
12
- class BaseProject {
13
- static { this.ins = new BaseProjectResolver(BaseProject); }
14
- static sortGroupOfProject(projects, resoveDepsArray, projNameToCompare) {
15
- const visited = {};
16
- const stack = {};
17
- const result = [];
18
- const visit = (project) => {
19
- if (stack[projNameToCompare(project)]) {
20
- Helpers.error(`Circular dependency detected involving project: ${projNameToCompare(project)}`);
21
- }
22
- if (!visited[projNameToCompare(project)]) {
23
- visited[projNameToCompare(project)] = true;
24
- stack[projNameToCompare(project)] = true;
25
- const depsResolved = resoveDepsArray(project);
26
- depsResolved.forEach(dependency => {
27
- const dependentProject = projects.find(p => {
28
- return projNameToCompare(p) === dependency;
29
- });
30
- if (dependentProject) {
31
- visit(dependentProject);
32
- }
33
- });
34
- stack[projNameToCompare(project)] = false;
35
- result.push(project);
36
- }
37
- };
38
- projects.forEach(project => visit(project));
39
- return result;
40
- }
41
- // @ts-ignore
42
- constructor(location) {
43
- this.location = location;
44
- this.cache = {};
45
- }
46
- /**
47
- * doesn't need to be real path -> can be link
48
- */
49
- get basename() {
50
- /* */
51
- /* */
52
- return (void 0);
53
- }
54
- get name() {
55
- return this.packageJSON?.name;
56
- }
57
- get version() {
58
- return this.packageJSON?.version;
59
- }
60
- /**
61
- * npm dependencies
62
- */
63
- get dependencies() {
64
- return (this.packageJSON ? this.packageJSON.dependencies : {}) || {};
65
- }
66
- /**
67
- * peerDependencies dependencies
68
- */
69
- get peerDependencies() {
70
- return (this.packageJSON ? this.packageJSON.peerDependencies : {}) || {};
71
- }
72
- /**
73
- * devDependencies dependencies
74
- */
75
- get devDependencies() {
76
- return (this.packageJSON ? this.packageJSON.devDependencies : {}) || {};
77
- }
78
- /**
79
- * resolutions dependencies
80
- */
81
- get resolutions() {
82
- return (this.packageJSON ? this.packageJSON['resolutions'] : {}) || {};
83
- }
84
- /**
85
- * object with all deps from package json
86
- */
87
- get allDependencies() {
88
- return _.merge({
89
- ...this.devDependencies,
90
- ...this.peerDependencies,
91
- ...this.dependencies,
92
- ...this.resolutions
93
- });
94
- }
95
- get tnp() {
96
- return this.packageJSON?.tnp;
97
- }
98
- get firedev() {
99
- return this.packageJSON?.firedev;
100
- }
101
- /**
102
- * alias to getAllChildren
103
- */
104
- get children() {
105
- /* */
106
- /* */
107
- return (void 0);
108
- }
109
- child(nameOrBasename, errors = true) {
110
- /* */
111
- /* */
112
- /* */
113
- /* */
114
- /* */
115
- /* */
116
- return (void 0);
117
- }
118
- get parent() {
119
- /* */
120
- /* */
121
- /* */
122
- /* */
123
- /* */
124
- return (void 0);
125
- }
126
- get grandpa() {
127
- /* */
128
- /* */
129
- /* */
130
- /* */
131
- /* */
132
- /* */
133
- return (void 0);
134
- }
135
- get genericName() {
136
- /* */
137
- /* */
138
- /* */
139
- /* */
140
- /* */
141
- /* */
142
- /* */
143
- /* */
144
- /* */
145
- /* */
146
- /* */
147
- /* */
148
- return (void 0);
149
- }
150
- /**
151
- * try run but continue when it fails
152
- * @param command
153
- * @param options
154
- * @returns
155
- */
156
- tryRunSync(command
157
- /* */
158
- /* */
159
- ) {
160
- /* */
161
- /* */
162
- /* */
163
- /* */
164
- /* */
165
- /* */
166
- return (void 0);
167
- }
168
- /**
169
- * same has project.hasFile();
170
- */
171
- pathExists(relativePath) {
172
- return this.hasFile(relativePath);
173
- }
174
- /**
175
- * same as project.pathExists();
176
- */
177
- hasFile(relativePath) {
178
- return Helpers.exists(this.pathFor(relativePath));
179
- }
180
- /**
181
- * same as project.pathhasFileExists();
182
- * but with path.resolve
183
- */
184
- containsFile(fileRelativeToProjectPath) {
185
- const fullPath = path.resolve(path.join(this.location, fileRelativeToProjectPath));
186
- return Helpers.exists(fullPath);
187
- }
188
- /**
189
- * absolute path:
190
- * concated project location with relative path
191
- */
192
- pathFor(relativePath) {
193
- /* */
194
- /* */
195
- /* */
196
- /* */
197
- /* */
198
- /* */
199
- /* */
200
- /* */
201
- return (void 0);
202
- }
203
- writeJson(relativePath, json) {
204
- /* */
205
- /* */
206
- /* */
207
- /* */
208
- /* */
209
- return (void 0);
210
- }
211
- run(command
212
- /* */
213
- /* */
214
- ) {
215
- /* */
216
- /* */
217
- /* */
218
- /* */
219
- /* */
220
- return (void 0);
221
- }
222
- outputFrom(command
223
- /* */
224
- /* */
225
- ) {
226
- /* */
227
- /* */
228
- return (void 0);
229
- }
230
- removeFile(fileRelativeToProjectPath) {
231
- /* */
232
- /* */
233
- /* */
234
- return (void 0);
235
- }
236
- remove(relativePath, exactPath = true) {
237
- /* */
238
- /* */
239
- return (void 0);
240
- }
241
- linkNodeModulesTo(proj) {
242
- /* */
243
- /* */
244
- /* */
245
- /* */
246
- /* */
247
- return (void 0);
248
- }
249
- reinstallNodeModules(forcerRemoveNodeModules = false) {
250
- /* */
251
- /* */
252
- /* */
253
- /* */
254
- /* */
255
- /* */
256
- /* */
257
- /* */
258
- return (void 0);
259
- }
260
- async assignFreePort(startFrom = 4200, howManyFreePortsAfterThatPort = 0) {
261
- /* */
262
- /* */
263
- /* */
264
- /* */
265
- /* */
266
- /* */
267
- /* */
268
- /* */
269
- /* */
270
- /* */
271
- /* */
272
- /* */
273
- /* */
274
- /* */
275
- /* */
276
- /* */
277
- /* */
278
- /* */
279
- /* */
280
- /* */
281
- /* */
282
- /* */
283
- /* */
284
- /* */
285
- /* */
286
- /* */
287
- return (void 0);
288
- }
289
- filterOnlyCopy(basePathFoldersOnlyToInclude) {
290
- /* */
291
- /* */
292
- /* */
293
- return (void 0);
294
- }
295
- removeItself() {
296
- /* */
297
- /* */
298
- }
299
- filterDontCopy(basePathFoldersTosSkip) {
300
- /* */
301
- /* */
302
- /* */
303
- return (void 0);
304
- }
305
- defineProperty(variableName, classFn) {
306
- /* */
307
- /* */
308
- /* */
309
- /* */
310
- /* */
311
- /* */
312
- /* */
313
- /* */
314
- /* */
315
- /* */
316
- /* */
317
- /* */
318
- /* */
319
- /* */
320
- /* */
321
- /* */
322
- /* */
323
- /* */
324
- /* */
325
- /* */
326
- /* */
327
- /* */
328
- /* */
329
- /* */
330
- /* */
331
- /* */
332
- /* */
333
- /* */
334
- return (void 0);
335
- }
336
- getAllChildren() {
337
- /* */
338
- /* */
339
- /* */
340
- /* */
341
- /* */
342
- /* */
343
- /* */
344
- /* */
345
- /* */
346
- return (void 0);
347
- }
348
- getFoldersForPossibleProjectChildren() {
349
- /* */
350
- /* */
351
- /* */
352
- /* */
353
- /* */
354
- /* */
355
- /* */
356
- /* */
357
- /* */
358
- /* */
359
- /* */
360
- /* */
361
- /* */
362
- /* */
363
- /* */
364
- /* */
365
- /* */
366
- /* */
367
- /* */
368
- return (void 0);
369
- }
370
- }
371
- export { BaseProject };
372
- ;
373
- ({}); // @--end-of-file-for-module=tnp-helpers lib/base-project.ts
374
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9iYXNlLXByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFHTCxPQUFPLEVBQUUsSUFBSSxFQUFxQixNQUFNLGtCQUFrQixDQUFDO0FBRTNELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSTlELE1BQU0sT0FBTyxHQUFHLGNBQWMsQ0FBQyxRQUFRLENBQUM7QUFHeEMsTUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFDO0FBR3RCLE1BQXNCLFdBQVc7YUFReEIsUUFBRyxHQUFHLElBQUksbUJBQW1CLENBQWMsV0FBVyxDQUFDLEFBQXBELENBQXFEO0lBSXhELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBZ0QsUUFBYSxFQUFFLGVBQXNDLEVBQUUsaUJBQXNDO1FBRTNLLE1BQU0sT0FBTyxHQUErQixFQUFFLENBQUM7UUFDL0MsTUFBTSxLQUFLLEdBQStCLEVBQUUsQ0FBQztRQUM3QyxNQUFNLE1BQU0sR0FBUSxFQUFFLENBQUM7UUFFdkIsTUFBTSxLQUFLLEdBQUcsQ0FBQyxPQUFVLEVBQUUsRUFBRTtZQUMzQixJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFO2dCQUVyQyxPQUFPLENBQUMsS0FBSyxDQUFDLG1EQUFtRCxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDaEc7WUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixD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UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7O1NBamJtQixXQUFXO0FBdWJoQyxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDREQUE0RCIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcbmltcG9ydCB7IENMSSB9IGZyb20gJ3RucC1jbGkvYnJvd3Nlcic7XG5pbXBvcnQgeyBwYXRoLCBjcm9zc1BsYXRmb3JtUGF0aCB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuaW1wb3J0IHsgY29uZmlnIH0gZnJvbSAndG5wLWNvbmZpZy9icm93c2VyJztcbmltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IEhlbHBlcnNGaXJlZGV2IH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IE1vZGVscyB9IGZyb20gJ3RucC1tb2RlbHMvYnJvd3Nlcic7XG5pbXBvcnQgeyBCYXNlUHJvamVjdFJlc29sdmVyIH0gZnJvbSAnLi9iYXNlLXByb2plY3QtcmVzb2x2ZXInO1xuaW1wb3J0IHsgQ0xBU1MgfSBmcm9tICd0eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvYnJvd3Nlcic7XG5cblxuY29uc3QgSGVscGVycyA9IEhlbHBlcnNGaXJlZGV2Lkluc3RhbmNlO1xuXG5cbmNvbnN0IHRha2VuUG9ydHMgPSBbXTtcblxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZVByb2plY3Q8VCBleHRlbmRzIEJhc2VQcm9qZWN0ID0gYW55PlxuLyogKi9cbi8qICovXG4gIFxue1xuXG5cblxuICBzdGF0aWMgaW5zID0gbmV3IEJhc2VQcm9qZWN0UmVzb2x2ZXI8QmFzZVByb2plY3Q+KEJhc2VQcm9qZWN0KTtcblxuXG5cbiAgcHVibGljIHN0YXRpYyBzb3J0R3JvdXBPZlByb2plY3Q8VCBleHRlbmRzIEJhc2VQcm9qZWN0PGFueT4gPSBCYXNlUHJvamVjdDxhbnk+Pihwcm9qZWN0czogVFtdLCByZXNvdmVEZXBzQXJyYXk6IChwcm9qOiBUKSA9PiBzdHJpbmdbXSwgcHJvak5hbWVUb0NvbXBhcmU6IChwcm9qOiBUKSA9PiBzdHJpbmcpOiBUW10ge1xuXG4gICAgY29uc3QgdmlzaXRlZDogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0gPSB7fTtcbiAgICBjb25zdCBzdGFjazogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0gPSB7fTtcbiAgICBjb25zdCByZXN1bHQ6IFRbXSA9IFtdO1xuXG4gICAgY29uc3QgdmlzaXQgPSAocHJvamVjdDogVCkgPT4ge1xuICAgICAgaWYgKHN0YWNrW3Byb2pOYW1lVG9Db21wYXJlKHByb2plY3QpXSkge1xuXG4gICAgICAgIEhlbHBlcnMuZXJyb3IoYENpcmN1bGFyIGRlcGVuZGVuY3kgZGV0ZWN0ZWQgaW52b2x2aW5nIHByb2plY3Q6ICR7cHJvak5hbWVUb0NvbXBhcmUocHJvamVjdCl9YCk7XG4gICAgICB9XG5cbiAgICAgIGlmICghdmlzaXRlZFtwcm9qTmFtZVRvQ29tcGFyZShwcm9qZWN0KV0pIHtcbiAgICAgICAgdmlzaXRlZFtwcm9qTmFtZVRvQ29tcGFyZShwcm9qZWN0KV0gPSB0cnVlO1xuICAgICAgICBzdGFja1twcm9qTmFtZVRvQ29tcGFyZShwcm9qZWN0KV0gPSB0cnVlO1xuXG4gICAgICAgIGNvbnN0IGRlcHNSZXNvbHZlZCA9IHJlc292ZURlcHNBcnJheShwcm9qZWN0KTtcbiAgICAgICAgZGVwc1Jlc29sdmVkLmZvckVhY2goZGVwZW5kZW5jeSA9PiB7XG4gICAgICAgICAgY29uc3QgZGVwZW5kZW50UHJvamVjdCA9IHByb2plY3RzLmZpbmQocCA9PiB7XG5cbiAgICAgICAgICAgIHJldHVybiBwcm9qTmFtZVRvQ29tcGFyZShwKSA9PT0gZGVwZW5kZW5jeTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBpZiAoZGVwZW5kZW50UHJvamVjdCkge1xuICAgICAgICAgICAgdmlzaXQoZGVwZW5kZW50UHJvamVjdCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBzdGFja1twcm9qTmFtZVRvQ29tcGFyZShwcm9qZWN0KV0gPSBmYWxzZTtcbiAgICAgICAgcmVzdWx0LnB1c2gocHJvamVjdCk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHByb2plY3RzLmZvckVhY2gocHJvamVjdCA9PiB2aXNpdChwcm9qZWN0KSk7XG4gICAgcmV0dXJuIHJlc3VsdDtcblxuICB9XG5cblxuXG4gIHB1YmxpYyBjYWNoZTogYW55ID0ge307XG5cbiAgLy8gQHRzLWlnbm9yZVxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBsb2NhdGlvbjogc3RyaW5nKSB7IH1cbiAgYWJzdHJhY3QgcmVhZG9ubHkgaW5zOiBCYXNlUHJvamVjdFJlc29sdmVyPFQ+O1xuICAvKipcbiAgICogZG9lc24ndCBuZWVkIHRvIGJlIHJlYWwgcGF0aCAtPiBjYW4gYmUgbGlua1xuICAgKi9cblxuICBnZXQgYmFzZW5hbWUoKTogc3RyaW5nIHtcbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuICBnZXQgbmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wYWNrYWdlSlNPTj8ubmFtZTtcbiAgfVxuICByZWFkb25seSB0eXBlOiBzdHJpbmc7XG4gIGdldCB2ZXJzaW9uKCkge1xuICAgIHJldHVybiB0aGlzLnBhY2thZ2VKU09OPy52ZXJzaW9uO1xuICB9XG5cbiAgLyoqXG4gICAqIG5wbSBkZXBlbmRlbmNpZXNcbiAgICovXG4gIGdldCBkZXBlbmRlbmNpZXMoKSB7XG4gICAgcmV0dXJuICh0aGlzLnBhY2thZ2VKU09OID8gdGhpcy5wYWNrYWdlSlNPTi5kZXBlbmRlbmNpZXMgOiB7fSkgfHwge307XG4gIH1cblxuICAvKipcbiAgICogcGVlckRlcGVuZGVuY2llcyBkZXBlbmRlbmNpZXNcbiAgICovXG4gIGdldCBwZWVyRGVwZW5kZW5jaWVzKCkge1xuICAgIHJldHVybiAodGhpcy5wYWNrYWdlSlNPTiA/IHRoaXMucGFja2FnZUpTT04ucGVlckRlcGVuZGVuY2llcyA6IHt9KSB8fCB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBkZXZEZXBlbmRlbmNpZXMgZGVwZW5kZW5jaWVzXG4gICAqL1xuICBnZXQgZGV2RGVwZW5kZW5jaWVzKCkge1xuICAgIHJldHVybiAodGhpcy5wYWNrYWdlSlNPTiA/IHRoaXMucGFja2FnZUpTT04uZGV2RGVwZW5kZW5jaWVzIDoge30pIHx8IHt9O1xuICB9XG5cbiAgLyoqXG4gICAqIHJlc29sdXRpb25zIGRlcGVuZGVuY2llc1xuICAgKi9cbiAgZ2V0IHJlc29sdXRpb25zKCkge1xuICAgIHJldHVybiAodGhpcy5wYWNrYWdlSlNPTiA/IHRoaXMucGFja2FnZUpTT05bJ3Jlc29sdXRpb25zJ10gOiB7fSkgfHwge307XG4gIH1cblxuICAvKipcbiAgICogIG9iamVjdCB3aXRoIGFsbCBkZXBzIGZyb20gcGFja2FnZSBqc29uXG4gICAqL1xuICBnZXQgYWxsRGVwZW5kZW5jaWVzKCk6IHsgW3BhY2thZ2VOYW1lOiBzdHJpbmddOiBzdHJpbmcgfSB7XG4gICAgcmV0dXJuIF8ubWVyZ2Uoe1xuICAgICAgLi4udGhpcy5kZXZEZXBlbmRlbmNpZXMsXG4gICAgICAuLi50aGlzLnBlZXJEZXBlbmRlbmNpZXMsXG4gICAgICAuLi50aGlzLmRlcGVuZGVuY2llcyxcbiAgICAgIC4uLnRoaXMucmVzb2x1dGlvbnNcbiAgICB9KSBhcyBhbnk7XG4gIH1cblxuICBnZXQgdG5wKCkge1xuICAgIHJldHVybiB0aGlzLnBhY2thZ2VKU09OPy50bnA7XG4gIH1cblxuICBnZXQgZmlyZWRldigpIHtcbiAgICByZXR1cm4gdGhpcy5wYWNrYWdlSlNPTj8uZmlyZWRldjtcbiAgfVxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcGFja2FnZUpTT046IE1vZGVscy5ucG0uSVBhY2thZ2VKU09OO1xuXG4gIC8qKlxuICAgKiBvbmx5IGF2YWlsYWJsZSBhZnRlciBleGVjdXRpbmcgKnRoaXMuYXNzaWduRnJlZVBvcnQoKSpcbiAgICovXG4gIHJlYWRvbmx5IHBvcnQ6IHN0cmluZztcblxuICAvKipcbiAgICogYWxpYXMgdG8gZ2V0QWxsQ2hpbGRyZW5cbiAgICovXG4gIGdldCBjaGlsZHJlbigpOiBUW10ge1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuICBjaGlsZChuYW1lT3JCYXNlbmFtZTogc3RyaW5nLCBlcnJvcnMgPSB0cnVlKTogVCB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuICBnZXQgcGFyZW50KCk6IFQge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuICBnZXQgZ3JhbmRwYSgpOiBUIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuICBnZXQgZ2VuZXJpY05hbWUoKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cbiAgLyoqXG4gICAqIHRyeSBydW4gYnV0IGNvbnRpbnVlIHdoZW4gaXQgZmFpbHNcbiAgICogQHBhcmFtIGNvbW1hbmRcbiAgICogQHBhcmFtIG9wdGlvbnNcbiAgICogQHJldHVybnNcbiAgICovXG4gIHRyeVJ1blN5bmMoY29tbWFuZDogc3RyaW5nXG4vKiAqL1xuLyogKi9cbiAgXG4gICk6IHZvaWQge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG4gIC8qKlxuICAqIHNhbWUgaGFzIHByb2plY3QuaGFzRmlsZSgpO1xuICAqL1xuICBwYXRoRXhpc3RzKHJlbGF0aXZlUGF0aDogc3RyaW5nIHwgc3RyaW5nW10pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5oYXNGaWxlKHJlbGF0aXZlUGF0aCk7XG4gIH1cblxuICAvKipcbiAgICogc2FtZSBhcyBwcm9qZWN0LnBhdGhFeGlzdHMoKTtcbiAgICovXG4gIGhhc0ZpbGUocmVsYXRpdmVQYXRoOiBzdHJpbmcgfCBzdHJpbmdbXSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBIZWxwZXJzLmV4aXN0cyh0aGlzLnBhdGhGb3IocmVsYXRpdmVQYXRoKSk7XG4gIH1cblxuICAvKipcbiAgICogc2FtZSBhcyBwcm9qZWN0LnBhdGhoYXNGaWxlRXhpc3RzKCk7XG4gICAqIGJ1dCB3aXRoIHBhdGgucmVzb2x2ZVxuICAgKi9cbiAgY29udGFpbnNGaWxlKGZpbGVSZWxhdGl2ZVRvUHJvamVjdFBhdGg6IHN0cmluZykge1xuICAgIGNvbnN0IGZ1bGxQYXRoID0gcGF0aC5yZXNvbHZlKHBhdGguam9pbih0aGlzLmxvY2F0aW9uLCBmaWxlUmVsYXRpdmVUb1Byb2plY3RQYXRoKSk7XG4gICAgcmV0dXJuIEhlbHBlcnMuZXhpc3RzKGZ1bGxQYXRoKTtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIGFic29sdXRlIHBhdGg6XG4gICAqIGNvbmNhdGVkIHByb2plY3QgbG9jYXRpb24gd2l0aCByZWxhdGl2ZSBwYXRoXG4gICAqL1xuICBwYXRoRm9yKHJlbGF0aXZlUGF0aDogc3RyaW5nIHwgc3RyaW5nW10pIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG4gIHdyaXRlSnNvbihyZWxhdGl2ZVBhdGg6IHN0cmluZywganNvbjogb2JqZWN0KSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG4gIHJ1bihjb21tYW5kOiBzdHJpbmdcbi8qICovXG4vKiAqL1xuICBcbiAgKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuICBvdXRwdXRGcm9tKGNvbW1hbmQ6IHN0cmluZ1xuLyogKi9cbi8qICovXG4gIFxuICApIHtcbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG4gIHJlbW92ZUZpbGUoZmlsZVJlbGF0aXZlVG9Qcm9qZWN0UGF0aDogc3RyaW5nKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cbiAgcmVtb3ZlKHJlbGF0aXZlUGF0aDogc3RyaW5nLCBleGFjdFBhdGggPSB0cnVlKSB7XG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuICBsaW5rTm9kZU1vZHVsZXNUbyhwcm9qOiBQYXJ0aWFsPEJhc2VQcm9qZWN0Pikge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cbiAgcmVpbnN0YWxsTm9kZU1vZHVsZXMoZm9yY2VyUmVtb3ZlTm9kZU1vZHVsZXMgPSBmYWxzZSkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuICBhc3luYyBhc3NpZ25GcmVlUG9ydChzdGFydEZyb206IG51bWJlciA9IDQyMDAsIGhvd01hbnlGcmVlUG9ydHNBZnRlclRoYXRQb3J0OiBudW1iZXIgPSAwKTogUHJvbWlzZTxudW1iZXI+IHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cbiAgZmlsdGVyT25seUNvcHkoYmFzZVBhdGhGb2xkZXJzT25seVRvSW5jbHVkZTogc3RyaW5nW10pIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuICByZW1vdmVJdHNlbGYoKSB7XG4vKiAqL1xuLyogKi9cbiAgXG4gIH1cblxuICBmaWx0ZXJEb250Q29weShiYXNlUGF0aEZvbGRlcnNUb3NTa2lwOiBzdHJpbmdbXSkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG4gIGRlZmluZVByb3BlcnR5PFQ+KHZhcmlhYmxlTmFtZToga2V5b2YgVCwgY2xhc3NGbjogRnVuY3Rpb24pIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuICBwcm90ZWN0ZWQgZ2V0QWxsQ2hpbGRyZW4oKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG5cbiAgcHJvdGVjdGVkIGdldEZvbGRlcnNGb3JQb3NzaWJsZVByb2plY3RDaGlsZHJlbigpOiBzdHJpbmdbXSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cbn1cblxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2Jhc2UtcHJvamVjdC50cyJdfQ==
@@ -1,94 +0,0 @@
1
- // @ts-nocheck
2
- import { Models } from 'tnp-models/browser';
3
- import { BaseProjectResolver } from './base-project-resolver';
4
- export declare abstract class BaseProject<T extends BaseProject = any> {
5
- readonly location: string;
6
- static ins: BaseProjectResolver<BaseProject<any>>;
7
- static sortGroupOfProject<T extends BaseProject<any> = BaseProject<any>>(projects: T[], resoveDepsArray: (proj: T) => string[], projNameToCompare: (proj: T) => string): T[];
8
- cache: any;
9
- constructor(location: string);
10
- abstract readonly ins: BaseProjectResolver<T>;
11
- /**
12
- * doesn't need to be real path -> can be link
13
- */
14
- get basename(): string;
15
- get name(): string;
16
- readonly type: string;
17
- get version(): string;
18
- /**
19
- * npm dependencies
20
- */
21
- get dependencies(): Models.npm.DependenciesFromPackageJsonStyle;
22
- /**
23
- * peerDependencies dependencies
24
- */
25
- get peerDependencies(): Models.npm.DependenciesFromPackageJsonStyle;
26
- /**
27
- * devDependencies dependencies
28
- */
29
- get devDependencies(): Models.npm.DependenciesFromPackageJsonStyle;
30
- /**
31
- * resolutions dependencies
32
- */
33
- get resolutions(): any;
34
- /**
35
- * object with all deps from package json
36
- */
37
- get allDependencies(): {
38
- [packageName: string]: string;
39
- };
40
- get tnp(): Models.npm.TnpData & Models.npm.TnpIPackageJSONOverride;
41
- get firedev(): Models.npm.TnpData & Models.npm.TnpIPackageJSONOverride;
42
- protected readonly packageJSON: Models.npm.IPackageJSON;
43
- /**
44
- * only available after executing *this.assignFreePort()*
45
- */
46
- readonly port: string;
47
- /**
48
- * alias to getAllChildren
49
- */
50
- get children(): T[];
51
- child(nameOrBasename: string, errors?: boolean): T;
52
- get parent(): T;
53
- get grandpa(): T;
54
- get genericName(): any;
55
- /**
56
- * try run but continue when it fails
57
- * @param command
58
- * @param options
59
- * @returns
60
- */
61
- tryRunSync(command: string): void;
62
- /**
63
- * same has project.hasFile();
64
- */
65
- pathExists(relativePath: string | string[]): boolean;
66
- /**
67
- * same as project.pathExists();
68
- */
69
- hasFile(relativePath: string | string[]): boolean;
70
- /**
71
- * same as project.pathhasFileExists();
72
- * but with path.resolve
73
- */
74
- containsFile(fileRelativeToProjectPath: string): any;
75
- /**
76
- * absolute path:
77
- * concated project location with relative path
78
- */
79
- pathFor(relativePath: string | string[]): any;
80
- writeJson(relativePath: string, json: object): any;
81
- run(command: string): any;
82
- outputFrom(command: string): any;
83
- removeFile(fileRelativeToProjectPath: string): any;
84
- remove(relativePath: string, exactPath?: boolean): any;
85
- linkNodeModulesTo(proj: Partial<BaseProject>): any;
86
- reinstallNodeModules(forcerRemoveNodeModules?: boolean): any;
87
- assignFreePort(startFrom?: number, howManyFreePortsAfterThatPort?: number): Promise<number>;
88
- filterOnlyCopy(basePathFoldersOnlyToInclude: string[]): any;
89
- removeItself(): void;
90
- filterDontCopy(basePathFoldersTosSkip: string[]): any;
91
- defineProperty<T>(variableName: keyof T, classFn: Function): any;
92
- protected getAllChildren(): any;
93
- protected getFoldersForPossibleProjectChildren(): string[];
94
- }