tnp-helpers 18.0.13 → 18.0.15

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 (161) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/esm2022/lib/base/base-cli-worker-config.mjs +33 -0
  3. package/browser/esm2022/lib/base/base-cli-worker-controller.mjs +87 -0
  4. package/browser/esm2022/lib/base/base-cli-worker.mjs +303 -0
  5. package/browser/esm2022/lib/base/base-db.mjs +3 -2
  6. package/browser/esm2022/lib/base/base-git.mjs +1 -1
  7. package/browser/esm2022/lib/base/base-library-build.mjs +1 -1
  8. package/browser/esm2022/lib/base/base-linked-projects.mjs +1 -1
  9. package/browser/esm2022/lib/base/base-npm-helpers.mjs +1 -1
  10. package/browser/esm2022/lib/base/base-project-resolver.mjs +9 -6
  11. package/browser/esm2022/lib/base/base-project.mjs +2 -2
  12. package/browser/esm2022/lib/base/base-quick-fixes.mjs +1 -1
  13. package/browser/esm2022/lib/base/base-release-process.mjs +1 -1
  14. package/browser/esm2022/lib/base/base-vscode.mjs +1 -1
  15. package/browser/esm2022/lib/base/core-project.mjs +1 -1
  16. package/browser/esm2022/lib/base/ports-worker.mjs +107 -0
  17. package/browser/esm2022/lib/models.mjs +1 -1
  18. package/browser/fesm2022/tnp-helpers.mjs +524 -8
  19. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  20. package/browser/lib/base/base-cli-worker-config.d.ts +24 -0
  21. package/browser/lib/base/base-cli-worker-controller.d.ts +14 -0
  22. package/browser/lib/base/base-cli-worker.d.ts +47 -0
  23. package/browser/lib/base/base-db.d.ts +1 -1
  24. package/browser/lib/base/base-git.d.ts +3 -3
  25. package/browser/lib/base/base-library-build.d.ts +8 -8
  26. package/browser/lib/base/base-linked-projects.d.ts +3 -3
  27. package/browser/lib/base/base-npm-helpers.d.ts +2 -2
  28. package/browser/lib/base/base-project-resolver.d.ts +5 -6
  29. package/browser/lib/base/base-project.d.ts +15 -15
  30. package/browser/lib/base/base-quick-fixes.d.ts +2 -2
  31. package/browser/lib/base/base-release-process.d.ts +4 -4
  32. package/browser/lib/base/base-vscode.d.ts +1 -1
  33. package/browser/lib/base/core-project.d.ts +2 -2
  34. package/browser/lib/base/ports-worker.d.ts +11 -0
  35. package/client/esm2022/lib/base/base-cli-worker-config.mjs +33 -0
  36. package/client/esm2022/lib/base/base-cli-worker-controller.mjs +87 -0
  37. package/client/esm2022/lib/base/base-cli-worker.mjs +303 -0
  38. package/client/esm2022/lib/base/base-db.mjs +3 -2
  39. package/client/esm2022/lib/base/base-git.mjs +1 -1
  40. package/client/esm2022/lib/base/base-library-build.mjs +1 -1
  41. package/client/esm2022/lib/base/base-linked-projects.mjs +1 -1
  42. package/client/esm2022/lib/base/base-npm-helpers.mjs +1 -1
  43. package/client/esm2022/lib/base/base-project-resolver.mjs +9 -6
  44. package/client/esm2022/lib/base/base-project.mjs +2 -2
  45. package/client/esm2022/lib/base/base-quick-fixes.mjs +1 -1
  46. package/client/esm2022/lib/base/base-release-process.mjs +1 -1
  47. package/client/esm2022/lib/base/base-vscode.mjs +1 -1
  48. package/client/esm2022/lib/base/core-project.mjs +1 -1
  49. package/client/esm2022/lib/base/ports-worker.mjs +107 -0
  50. package/client/esm2022/lib/models.mjs +1 -1
  51. package/client/fesm2022/tnp-helpers.mjs +524 -8
  52. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  53. package/client/lib/base/base-cli-worker-config.d.ts +24 -0
  54. package/client/lib/base/base-cli-worker-controller.d.ts +14 -0
  55. package/client/lib/base/base-cli-worker.d.ts +47 -0
  56. package/client/lib/base/base-db.d.ts +1 -1
  57. package/client/lib/base/base-git.d.ts +3 -3
  58. package/client/lib/base/base-library-build.d.ts +8 -8
  59. package/client/lib/base/base-linked-projects.d.ts +3 -3
  60. package/client/lib/base/base-npm-helpers.d.ts +2 -2
  61. package/client/lib/base/base-project-resolver.d.ts +5 -6
  62. package/client/lib/base/base-project.d.ts +15 -15
  63. package/client/lib/base/base-quick-fixes.d.ts +2 -2
  64. package/client/lib/base/base-release-process.d.ts +4 -4
  65. package/client/lib/base/base-vscode.d.ts +1 -1
  66. package/client/lib/base/core-project.d.ts +2 -2
  67. package/client/lib/base/ports-worker.d.ts +11 -0
  68. package/lib/base/base-cli-worker-config.d.ts +23 -0
  69. package/lib/base/base-cli-worker-config.js +45 -0
  70. package/lib/base/base-cli-worker-config.js.map +1 -0
  71. package/lib/base/base-cli-worker-controller.d.ts +13 -0
  72. package/lib/base/base-cli-worker-controller.js +114 -0
  73. package/lib/base/base-cli-worker-controller.js.map +1 -0
  74. package/lib/base/base-cli-worker.d.ts +46 -0
  75. package/lib/base/base-cli-worker.js +437 -0
  76. package/lib/base/base-cli-worker.js.map +1 -0
  77. package/lib/base/base-command-line.backend.d.ts +2 -0
  78. package/lib/base/base-command-line.backend.js +39 -0
  79. package/lib/base/base-command-line.backend.js.map +1 -1
  80. package/lib/base/base-db.d.ts +2 -2
  81. package/lib/base/base-db.js +3 -3
  82. package/lib/base/base-db.js.map +1 -1
  83. package/lib/base/base-detached-service.d.ts +6 -0
  84. package/lib/base/base-detached-service.js +16 -0
  85. package/lib/base/base-detached-service.js.map +1 -0
  86. package/lib/base/base-git.d.ts +3 -3
  87. package/lib/base/base-git.js +2 -2
  88. package/lib/base/base-git.js.map +1 -1
  89. package/lib/base/base-ignore-hide.d.ts +1 -1
  90. package/lib/base/base-library-build.d.ts +9 -9
  91. package/lib/base/base-linked-projects.d.ts +3 -3
  92. package/lib/base/base-linked-projects.js +1 -1
  93. package/lib/base/base-linked-projects.js.map +1 -1
  94. package/lib/base/base-npm-helpers.d.ts +2 -2
  95. package/lib/base/base-project-resolver.d.ts +5 -6
  96. package/lib/base/base-project-resolver.js +14 -5
  97. package/lib/base/base-project-resolver.js.map +1 -1
  98. package/lib/base/base-project.d.ts +16 -16
  99. package/lib/base/base-project.js +1 -1
  100. package/lib/base/base-project.js.map +1 -1
  101. package/lib/base/base-quick-fixes.d.ts +2 -2
  102. package/lib/base/base-release-process.d.ts +4 -4
  103. package/lib/base/base-start-config.backend.d.ts +0 -2
  104. package/lib/base/base-start-config.backend.js +7 -2
  105. package/lib/base/base-start-config.backend.js.map +1 -1
  106. package/lib/base/base-vscode.d.ts +1 -1
  107. package/lib/base/config-database.js +2 -2
  108. package/lib/base/config-database.js.map +1 -1
  109. package/lib/base/core-project.d.ts +2 -2
  110. package/lib/base/ports-worker.d.ts +10 -0
  111. package/lib/base/ports-worker.js +185 -0
  112. package/lib/base/ports-worker.js.map +1 -0
  113. package/lib/base/project-database.js +1 -1
  114. package/lib/base/project-database.js.map +1 -1
  115. package/lib/helpers/for-backend/helpers-cli-tool.backend.js +0 -1
  116. package/lib/helpers/for-backend/helpers-cli-tool.backend.js.map +1 -1
  117. package/lib/helpers/for-backend/helpers-file-folders.backend.d.ts +4 -0
  118. package/lib/helpers/for-backend/helpers-file-folders.backend.js +7 -3
  119. package/lib/helpers/for-backend/helpers-file-folders.backend.js.map +1 -1
  120. package/lib/helpers/for-backend/helpers-process.backend.d.ts +3 -2
  121. package/lib/helpers/for-backend/helpers-process.backend.js +19 -10
  122. package/lib/helpers/for-backend/helpers-process.backend.js.map +1 -1
  123. package/lib/helpers/for-browser/angular.helper.js +2 -2
  124. package/lib/old/base-component.js +2 -2
  125. package/lib/old/base-formly-component.js +2 -2
  126. package/lib/old/dual-component-ctrl.js +2 -2
  127. package/package.json +5 -5
  128. package/tmp-environment.json +37 -31
  129. package/websql/esm2022/lib/base/base-cli-worker-config.mjs +33 -0
  130. package/websql/esm2022/lib/base/base-cli-worker-controller.mjs +87 -0
  131. package/websql/esm2022/lib/base/base-cli-worker.mjs +303 -0
  132. package/websql/esm2022/lib/base/base-db.mjs +3 -2
  133. package/websql/esm2022/lib/base/base-git.mjs +1 -1
  134. package/websql/esm2022/lib/base/base-library-build.mjs +1 -1
  135. package/websql/esm2022/lib/base/base-linked-projects.mjs +1 -1
  136. package/websql/esm2022/lib/base/base-npm-helpers.mjs +1 -1
  137. package/websql/esm2022/lib/base/base-project-resolver.mjs +9 -6
  138. package/websql/esm2022/lib/base/base-project.mjs +2 -2
  139. package/websql/esm2022/lib/base/base-quick-fixes.mjs +1 -1
  140. package/websql/esm2022/lib/base/base-release-process.mjs +1 -1
  141. package/websql/esm2022/lib/base/base-vscode.mjs +1 -1
  142. package/websql/esm2022/lib/base/core-project.mjs +1 -1
  143. package/websql/esm2022/lib/base/ports-worker.mjs +114 -0
  144. package/websql/esm2022/lib/models.mjs +1 -1
  145. package/websql/fesm2022/tnp-helpers.mjs +531 -8
  146. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  147. package/websql/lib/base/base-cli-worker-config.d.ts +24 -0
  148. package/websql/lib/base/base-cli-worker-controller.d.ts +14 -0
  149. package/websql/lib/base/base-cli-worker.d.ts +47 -0
  150. package/websql/lib/base/base-db.d.ts +1 -1
  151. package/websql/lib/base/base-git.d.ts +3 -3
  152. package/websql/lib/base/base-library-build.d.ts +8 -8
  153. package/websql/lib/base/base-linked-projects.d.ts +3 -3
  154. package/websql/lib/base/base-npm-helpers.d.ts +2 -2
  155. package/websql/lib/base/base-project-resolver.d.ts +5 -6
  156. package/websql/lib/base/base-project.d.ts +15 -15
  157. package/websql/lib/base/base-quick-fixes.d.ts +2 -2
  158. package/websql/lib/base/base-release-process.d.ts +4 -4
  159. package/websql/lib/base/base-vscode.d.ts +1 -1
  160. package/websql/lib/base/core-project.d.ts +2 -2
  161. package/websql/lib/base/ports-worker.d.ts +11 -0
@@ -0,0 +1,437 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseCliWorker = void 0;
4
+ var tslib_1 = require("tslib");
5
+ //#region imports
6
+ var tnp_core_1 = require("tnp-core");
7
+ var tnp_config_1 = require("tnp-config");
8
+ var index_1 = require("../index");
9
+ var base_cli_worker_config_1 = require("./base-cli-worker-config");
10
+ //#endregion
11
+ //#region constants
12
+ var WORKER_INIT_START_TIME_LIMIT = 15; // 15 seconds max to start worker
13
+ var START_PORT_FOR_SERVICES = 3600;
14
+ //#endregion
15
+ var BaseCliWorker = /** @class */ (function () {
16
+ //#region constructor
17
+ function BaseCliWorker(
18
+ /**
19
+ * unique id for service
20
+ */
21
+ serviceID,
22
+ /**
23
+ * external command that will start service
24
+ */
25
+ startCommand) {
26
+ this.serviceID = serviceID;
27
+ this.startCommand = startCommand;
28
+ }
29
+ Object.defineProperty(BaseCliWorker.prototype, "pathToProcessLocalInfoJson", {
30
+ //#endregion
31
+ //#region fields & getters
32
+ //#region fields & getters / path to process local info
33
+ get: function () {
34
+ //#region @backendFunc
35
+ // console.log('os.userInfo()', os.userInfo());
36
+ return (0, tnp_core_1.crossPlatformPath)([
37
+ tnp_core_1.os.userInfo().homedir,
38
+ ".".concat(tnp_config_1.config.frameworkName),
39
+ '__workers-service-process-info__',
40
+ this.serviceID,
41
+ ]);
42
+ //#endregion
43
+ },
44
+ enumerable: false,
45
+ configurable: true
46
+ });
47
+ Object.defineProperty(BaseCliWorker.prototype, "processLocalInfoObj", {
48
+ //#endregion
49
+ //#region fields & getters / process local info json object
50
+ get: function () {
51
+ //#region @backendFunc
52
+ var configJson = index_1.Helpers.readJson5(this.pathToProcessLocalInfoJson) || {};
53
+ if (tnp_core_1._.isObject(configJson)) {
54
+ return tnp_core_1._.merge(new base_cli_worker_config_1.BaseCliWorkerConfig(), configJson);
55
+ }
56
+ return new base_cli_worker_config_1.BaseCliWorkerConfig();
57
+ //#endregion
58
+ },
59
+ enumerable: false,
60
+ configurable: true
61
+ });
62
+ //#endregion
63
+ //#endregion
64
+ //#region public methods
65
+ //#region public methods / start if needs to be started
66
+ BaseCliWorker.prototype.startDetachedIfNeedsToBeStarted = function () {
67
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
68
+ var serviceIsHealthy;
69
+ return tslib_1.__generator(this, function (_a) {
70
+ switch (_a.label) {
71
+ case 0:
72
+ if (!this.processLocalInfoObj.isEmpty) return [3 /*break*/, 2];
73
+ // not started ever yet
74
+ return [4 /*yield*/, this.startDetached()];
75
+ case 1:
76
+ // not started ever yet
77
+ _a.sent();
78
+ return [2 /*return*/];
79
+ case 2: return [4 /*yield*/, this.isServiceHealthy()];
80
+ case 3:
81
+ serviceIsHealthy = _a.sent();
82
+ if (!!serviceIsHealthy) return [3 /*break*/, 5];
83
+ return [4 /*yield*/, this.startDetached()];
84
+ case 4:
85
+ _a.sent();
86
+ return [2 /*return*/];
87
+ case 5:
88
+ index_1.Helpers.log("Service \"".concat(this.serviceID, "\" is already started/healthy..."));
89
+ return [2 /*return*/];
90
+ }
91
+ });
92
+ });
93
+ };
94
+ //#endregion
95
+ //#region public methods / kill
96
+ /**
97
+ * stop if started
98
+ */
99
+ BaseCliWorker.prototype.kill = function () {
100
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
101
+ var ctrl, error_1;
102
+ return tslib_1.__generator(this, function (_a) {
103
+ switch (_a.label) {
104
+ case 0:
105
+ index_1.Helpers.log("Killing service \"".concat(this.serviceID, "\"..."));
106
+ if (this.processLocalInfoObj.isEmpty) {
107
+ index_1.Helpers.log("Service \"".concat(this.serviceID, "\" not started - nothing to kill..."));
108
+ return [2 /*return*/];
109
+ }
110
+ return [4 /*yield*/, this.getControllerForRemoteConnection()];
111
+ case 1:
112
+ ctrl = _a.sent();
113
+ _a.label = 2;
114
+ case 2:
115
+ _a.trys.push([2, 4, , 5]);
116
+ index_1.Helpers.removeFileIfExists(this.pathToProcessLocalInfoJson);
117
+ return [4 /*yield*/, ctrl.baseCLiWorkerCommand_kill().received];
118
+ case 3:
119
+ _a.sent();
120
+ index_1.Helpers.log("Service \"".concat(this.serviceID, "\" killed..."));
121
+ return [3 /*break*/, 5];
122
+ case 4:
123
+ error_1 = _a.sent();
124
+ index_1.Helpers.log(error_1);
125
+ index_1.Helpers.log("Service \"".concat(this.serviceID, "\" not killed... "));
126
+ return [3 /*break*/, 5];
127
+ case 5: return [2 /*return*/];
128
+ }
129
+ });
130
+ });
131
+ };
132
+ //#endregion
133
+ //#region public methods / restart
134
+ /**
135
+ * kill detached process and start again
136
+ */
137
+ BaseCliWorker.prototype.restart = function () {
138
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
139
+ return tslib_1.__generator(this, function (_a) {
140
+ switch (_a.label) {
141
+ case 0: return [4 /*yield*/, this.kill()];
142
+ case 1:
143
+ _a.sent();
144
+ return [4 /*yield*/, this.startDetached()];
145
+ case 2:
146
+ _a.sent();
147
+ return [2 /*return*/];
148
+ }
149
+ });
150
+ });
151
+ };
152
+ //#endregion
153
+ //#endregion
154
+ //#region protected methods
155
+ //#region protected methods / is service healthy
156
+ BaseCliWorker.prototype.isServiceHealthy = function (options) {
157
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
158
+ var i, workerIsStarting, healthCheckRequestTrys, ctrl, req, isHealthy, error_2;
159
+ return tslib_1.__generator(this, function (_a) {
160
+ switch (_a.label) {
161
+ case 0:
162
+ //#region @backendFunc
163
+ options = options || {};
164
+ i = 0;
165
+ _a.label = 1;
166
+ case 1:
167
+ if (!true) return [3 /*break*/, 3];
168
+ i++;
169
+ index_1.Helpers.log("Checking if service \"".concat(this.serviceID, "\" is starting..."));
170
+ workerIsStarting = !!this.processLocalInfoObj.startTimestamp;
171
+ if (!workerIsStarting) {
172
+ // initialized worker does not have startTimestamp
173
+ return [3 /*break*/, 3];
174
+ }
175
+ if (i > WORKER_INIT_START_TIME_LIMIT) {
176
+ return [2 /*return*/, false];
177
+ }
178
+ return [4 /*yield*/, index_1.Helpers.wait(1)];
179
+ case 2:
180
+ _a.sent();
181
+ return [3 /*break*/, 1];
182
+ case 3:
183
+ i = 0;
184
+ healthCheckRequestTrys = options.healthCheckRequestTrys || 1;
185
+ _a.label = 4;
186
+ case 4:
187
+ if (!true) return [3 /*break*/, 16];
188
+ i++;
189
+ _a.label = 5;
190
+ case 5:
191
+ _a.trys.push([5, 11, , 15]);
192
+ index_1.Helpers.log("Checking if service \"".concat(this.serviceID, "\" is healthy..."));
193
+ return [4 /*yield*/, this.getControllerForRemoteConnection()];
194
+ case 6:
195
+ ctrl = _a.sent();
196
+ index_1.Helpers.log("Sending is healthy request...");
197
+ return [4 /*yield*/, ctrl.baseCLiWorkerCommand_isHealthy(this.processLocalInfoObj).received];
198
+ case 7:
199
+ req = _a.sent();
200
+ isHealthy = req.body.booleanValue;
201
+ // console.log('isHealthy', { isHealthy });
202
+ if (isHealthy) {
203
+ index_1.Helpers.log("Service \"".concat(this.serviceID, "\" is healthy (response is true)..."));
204
+ }
205
+ else {
206
+ index_1.Helpers.log("Service \"".concat(this.serviceID, "\" is not healthy (response is false)..."));
207
+ }
208
+ if (!(isHealthy || i === healthCheckRequestTrys)) return [3 /*break*/, 8];
209
+ return [2 /*return*/, isHealthy];
210
+ case 8:
211
+ index_1.Helpers.log('Trying again...');
212
+ return [4 /*yield*/, index_1.Helpers.wait(1)];
213
+ case 9:
214
+ _a.sent();
215
+ return [3 /*break*/, 4];
216
+ case 10: return [3 /*break*/, 15];
217
+ case 11:
218
+ error_2 = _a.sent();
219
+ index_1.Helpers.log("Service \"".concat(this.serviceID, "\" is not healthy (can't check health)..."));
220
+ if (!(i === healthCheckRequestTrys)) return [3 /*break*/, 12];
221
+ return [2 /*return*/, false];
222
+ case 12:
223
+ index_1.Helpers.log('Trying again...');
224
+ return [4 /*yield*/, index_1.Helpers.wait(1)];
225
+ case 13:
226
+ _a.sent();
227
+ return [3 /*break*/, 4];
228
+ case 14: return [3 /*break*/, 15];
229
+ case 15: return [3 /*break*/, 4];
230
+ case 16: return [2 /*return*/];
231
+ }
232
+ });
233
+ });
234
+ };
235
+ //#endregion
236
+ //#region protected methods / start
237
+ /**
238
+ * start if not started detached process
239
+ */
240
+ BaseCliWorker.prototype.startDetached = function () {
241
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
242
+ var isServiceHealthy;
243
+ return tslib_1.__generator(this, function (_a) {
244
+ switch (_a.label) {
245
+ case 0:
246
+ //#region @backendFunc
247
+ index_1.Helpers.log("Starting detached command in new terminal \"".concat(tnp_core_1.chalk.bold(this.startCommand), "\"..."));
248
+ return [4 /*yield*/, tnp_core_1.UtilsProcess.startInNewTerminalWindow(this.startCommand)];
249
+ case 1:
250
+ _a.sent();
251
+ index_1.Helpers.log("Starting detached service \"".concat(tnp_core_1.chalk.bold(this.serviceID), "\" - waiting until healthy..."));
252
+ return [4 /*yield*/, this.isServiceHealthy({
253
+ healthCheckRequestTrys: 5,
254
+ })];
255
+ case 2:
256
+ isServiceHealthy = _a.sent();
257
+ if (!isServiceHealthy) {
258
+ index_1.Helpers.throw("Not able to start service \"".concat(this.serviceID, "\"..."));
259
+ return [2 /*return*/];
260
+ }
261
+ index_1.Helpers.log("Healthy detached service \"".concat(tnp_core_1.chalk.bold(this.serviceID), "\" started."));
262
+ return [2 /*return*/];
263
+ }
264
+ });
265
+ });
266
+ };
267
+ //#endregion
268
+ //#region protected methods / info screen
269
+ BaseCliWorker.prototype._infoScreen = function () {
270
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
271
+ var cfonts, output, choices, choice, openInBrowser;
272
+ var _a, _b;
273
+ return tslib_1.__generator(this, function (_c) {
274
+ switch (_c.label) {
275
+ case 0:
276
+ if (!true) return [3 /*break*/, 2];
277
+ index_1.Helpers.clearConsole();
278
+ cfonts = require('cfonts');
279
+ output = cfonts.render("TAON.DEV", {
280
+ font: 'block',
281
+ align: 'left',
282
+ colors: ['system'],
283
+ background: 'transparent',
284
+ letterSpacing: 1,
285
+ lineHeight: 1,
286
+ space: true,
287
+ maxLength: '0',
288
+ gradient: false,
289
+ independentGradient: false,
290
+ transitionGradient: false,
291
+ env: 'node',
292
+ });
293
+ console.log(output.string);
294
+ index_1.Helpers.info("\n\n Service ".concat(tnp_core_1.chalk.bold.red(this.serviceID), " started..\n Check info here http://localhost:").concat(tnp_core_1.chalk.bold((_b = (_a = this.processLocalInfoObj) === null || _a === void 0 ? void 0 : _a.port) === null || _b === void 0 ? void 0 : _b.toString()), "/").concat('info', "\n\n "));
295
+ choices = {
296
+ openBrowser: {
297
+ name: 'Open browser with service info',
298
+ },
299
+ // showAllProcesses: {
300
+ // name: 'Show all processes',
301
+ // },
302
+ // showLogo: {
303
+ // name: 'Show logo',
304
+ // },
305
+ exit: {
306
+ name: "Shut down service",
307
+ },
308
+ };
309
+ return [4 /*yield*/, index_1.UtilsTerminal.select({
310
+ choices: choices,
311
+ question: 'Choose action',
312
+ })];
313
+ case 1:
314
+ choice = _c.sent();
315
+ if (choice === 'openBrowser') {
316
+ openInBrowser = require('open');
317
+ openInBrowser("http://localhost:".concat(this.processLocalInfoObj.port, "/info"));
318
+ }
319
+ if (choice === 'exit') {
320
+ process.exit(0);
321
+ }
322
+ switch (choice) {
323
+ }
324
+ return [3 /*break*/, 0];
325
+ case 2: return [2 /*return*/];
326
+ }
327
+ });
328
+ });
329
+ };
330
+ //#endregion
331
+ //#region protected methods / save process info
332
+ BaseCliWorker.prototype.saveProcessInfo = function (processConfig) {
333
+ //#region @backendFunc
334
+ processConfig = processConfig || {};
335
+ if (index_1.Helpers.exists(this.pathToProcessLocalInfoJson)) {
336
+ var jsonConfig = index_1.Helpers.readJson(this.pathToProcessLocalInfoJson);
337
+ if (tnp_core_1._.isObject(jsonConfig) && Object.keys(jsonConfig).length > 0) {
338
+ processConfig = tnp_core_1._.merge(jsonConfig, processConfig);
339
+ }
340
+ }
341
+ index_1.Helpers.log("Saving process info to \"".concat(this.pathToProcessLocalInfoJson, "\"...\n ").concat(processConfig === null || processConfig === void 0 ? void 0 : processConfig.toString(), "\n "));
342
+ index_1.Helpers.writeJson(this.pathToProcessLocalInfoJson, processConfig);
343
+ //#endregion
344
+ };
345
+ //#endregion
346
+ //#region protected methods / initialize worker
347
+ BaseCliWorker.prototype.initializeWorkerMetadata = function () {
348
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
349
+ var portControllerInstance, error_3;
350
+ return tslib_1.__generator(this, function (_a) {
351
+ switch (_a.label) {
352
+ case 0:
353
+ _a.trys.push([0, 3, , 4]);
354
+ return [4 /*yield*/, this.getControllerForRemoteConnection()];
355
+ case 1:
356
+ portControllerInstance = _a.sent();
357
+ return [4 /*yield*/, portControllerInstance.baseCLiWorkerCommand_initializeMetadata(this.serviceID).received];
358
+ case 2:
359
+ _a.sent();
360
+ this.saveProcessInfo({
361
+ startTimestamp: null,
362
+ });
363
+ return [3 /*break*/, 4];
364
+ case 3:
365
+ error_3 = _a.sent();
366
+ this.saveProcessInfo({
367
+ startTimestamp: null,
368
+ });
369
+ index_1.Helpers.throw(error_3);
370
+ return [3 /*break*/, 4];
371
+ case 4: return [2 /*return*/];
372
+ }
373
+ });
374
+ });
375
+ };
376
+ //#endregion
377
+ //#region protected methods / wait for process port saved to disk
378
+ BaseCliWorker.prototype.waitForProcessPortSavedToDisk = function () {
379
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
380
+ var portForRemote, MAX_TRYS, i;
381
+ return tslib_1.__generator(this, function (_a) {
382
+ switch (_a.label) {
383
+ case 0:
384
+ portForRemote = this.processLocalInfoObj.port;
385
+ MAX_TRYS = 10;
386
+ i = 0;
387
+ if (!!portForRemote) return [3 /*break*/, 5];
388
+ _a.label = 1;
389
+ case 1:
390
+ if (!!portForRemote) return [3 /*break*/, 5];
391
+ i++;
392
+ portForRemote = this.processLocalInfoObj.port;
393
+ if (!portForRemote) return [3 /*break*/, 2];
394
+ return [3 /*break*/, 5];
395
+ case 2:
396
+ index_1.Helpers.log("Waiting for port to be available...");
397
+ if (i > MAX_TRYS) {
398
+ index_1.Helpers.throw("Can't get port for remote connection.." +
399
+ " worker process did not start correctly");
400
+ }
401
+ return [4 /*yield*/, index_1.Helpers.wait(1)];
402
+ case 3:
403
+ _a.sent();
404
+ _a.label = 4;
405
+ case 4: return [3 /*break*/, 1];
406
+ case 5: return [2 /*return*/];
407
+ }
408
+ });
409
+ });
410
+ };
411
+ //#endregion
412
+ //#region protected methods / get free port
413
+ BaseCliWorker.prototype.getServicePort = function () {
414
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
415
+ var port;
416
+ return tslib_1.__generator(this, function (_a) {
417
+ switch (_a.label) {
418
+ case 0: return [4 /*yield*/, tnp_core_1.Utils.getFreePort({
419
+ startFrom: START_PORT_FOR_SERVICES,
420
+ })];
421
+ case 1:
422
+ port = _a.sent();
423
+ this.saveProcessInfo({
424
+ port: port,
425
+ serviceID: this.serviceID,
426
+ pid: process.pid,
427
+ startTimestamp: Date.now(),
428
+ });
429
+ return [2 /*return*/, port];
430
+ }
431
+ });
432
+ });
433
+ };
434
+ return BaseCliWorker;
435
+ }());
436
+ exports.BaseCliWorker = BaseCliWorker;
437
+ //# sourceMappingURL=base-cli-worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-cli-worker.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;;AAAA,iBAAiB;AACjB,qCASkB;AAClB,yCAAoC;AACpC,kCAAkD;AAElD,mEAA+D;AAC/D,YAAY;AAEZ,mBAAmB;AACnB,IAAM,4BAA4B,GAAG,EAAE,CAAC,CAAC,iCAAiC;AAC1E,IAAM,uBAAuB,GAAG,IAAI,CAAC;AACrC,YAAY;AAEZ;IACE,qBAAqB;IACrB;IACE;;OAEG;IACgB,SAAiB;IACpC;;OAEG;IACgB,YAAoB;QAJpB,cAAS,GAAT,SAAS,CAAQ;QAIjB,iBAAY,GAAZ,YAAY,CAAQ;IACtC,CAAC;IAaJ,sBAAY,qDAA0B;QALtC,YAAY;QAEZ,0BAA0B;QAE1B,uDAAuD;aACvD;YACE,sBAAsB;YACtB,+CAA+C;YAC/C,OAAO,IAAA,4BAAiB,EAAC;gBACvB,aAAE,CAAC,QAAQ,EAAE,CAAC,OAAO;gBACrB,WAAI,mBAAM,CAAC,aAAa,CAAE;gBAC1B,kCAAkC;gBAClC,IAAI,CAAC,SAAS;aACf,CAAC,CAAC;YACH,YAAY;QACd,CAAC;;;OAAA;IAID,sBAAc,8CAAmB;QAHjC,YAAY;QAEZ,2DAA2D;aAC3D;YACE,sBAAsB;YACtB,IAAM,UAAU,GAAG,eAAO,CAAC,SAAS,CAAC,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,CAAC;YAC5E,IAAI,YAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3B,OAAO,YAAC,CAAC,KAAK,CAAC,IAAI,4CAAmB,EAAE,EAAE,UAAU,CAAC,CAAC;YACxD,CAAC;YACD,OAAO,IAAI,4CAAmB,EAAE,CAAC;YACjC,YAAY;QACd,CAAC;;;OAAA;IACD,YAAY;IAEZ,YAAY;IAEZ,wBAAwB;IAExB,uDAAuD;IAC1C,uDAA+B,GAA5C;;;;;;6BAGM,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAhC,wBAAgC;wBAClC,uBAAuB;wBACvB,qBAAM,IAAI,CAAC,aAAa,EAAE,EAAA;;wBAD1B,uBAAuB;wBACvB,SAA0B,CAAC;wBAC3B,sBAAO;4BAGgB,qBAAM,IAAI,CAAC,gBAAgB,EAAE,EAAA;;wBAAhD,gBAAgB,GAAG,SAA6B;6BAClD,CAAC,gBAAgB,EAAjB,wBAAiB;wBACnB,qBAAM,IAAI,CAAC,aAAa,EAAE,EAAA;;wBAA1B,SAA0B,CAAC;wBAC3B,sBAAO;;wBAET,eAAO,CAAC,GAAG,CAAC,oBAAY,IAAI,CAAC,SAAS,qCAAiC,CAAC,CAAC;;;;;KAE1E;IACD,YAAY;IAEZ,+BAA+B;IAC/B;;OAEG;IACG,4BAAI,GAAV;;;;;;wBACE,eAAO,CAAC,GAAG,CAAC,4BAAoB,IAAI,CAAC,SAAS,UAAM,CAAC,CAAC;wBACtD,IAAI,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC;4BACrC,eAAO,CAAC,GAAG,CACT,oBAAY,IAAI,CAAC,SAAS,wCAAoC,CAC/D,CAAC;4BACF,sBAAO;wBACT,CAAC;wBACY,qBAAM,IAAI,CAAC,gCAAgC,EAAE,EAAA;;wBAApD,IAAI,GAAG,SAA6C;;;;wBAExD,eAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;wBAC5D,qBAAM,IAAI,CAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAA;;wBAA/C,SAA+C,CAAC;wBAChD,eAAO,CAAC,GAAG,CAAC,oBAAY,IAAI,CAAC,SAAS,iBAAa,CAAC,CAAC;;;;wBAErD,eAAO,CAAC,GAAG,CAAC,OAAK,CAAC,CAAC;wBACnB,eAAO,CAAC,GAAG,CAAC,oBAAY,IAAI,CAAC,SAAS,wBAAoB,CAAC,CAAC;;;;;;KAE/D;IACD,YAAY;IAEZ,kCAAkC;IAClC;;OAEG;IACG,+BAAO,GAAb;;;;4BACE,qBAAM,IAAI,CAAC,IAAI,EAAE,EAAA;;wBAAjB,SAAiB,CAAC;wBAClB,qBAAM,IAAI,CAAC,aAAa,EAAE,EAAA;;wBAA1B,SAA0B,CAAC;;;;;KAC5B;IACD,YAAY;IAEZ,YAAY;IAEZ,2BAA2B;IAE3B,gDAAgD;IAChC,wCAAgB,GAAhC,UAAiC,OAEhC;;;;;;wBACC,sBAAsB;wBACtB,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;wBACpB,CAAC,GAAG,CAAC,CAAC;;;6BACH,IAAI;wBACT,CAAC,EAAE,CAAC;wBACJ,eAAO,CAAC,GAAG,CAAC,gCAAwB,IAAI,CAAC,SAAS,sBAAkB,CAAC,CAAC;wBAChE,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC;wBAEnE,IAAI,CAAC,gBAAgB,EAAE,CAAC;4BACtB,kDAAkD;4BAClD,wBAAM;wBACR,CAAC;wBACD,IAAI,CAAC,GAAG,4BAA4B,EAAE,CAAC;4BACrC,sBAAO,KAAK,EAAC;wBACf,CAAC;wBACD,qBAAM,eAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAA;;wBAArB,SAAqB,CAAC;;;wBAGxB,CAAC,GAAG,CAAC,CAAC;wBACA,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,IAAI,CAAC,CAAC;;;6BAE5D,IAAI;wBACT,CAAC,EAAE,CAAC;;;;wBAEF,eAAO,CAAC,GAAG,CAAC,gCAAwB,IAAI,CAAC,SAAS,qBAAiB,CAAC,CAAC;wBACxD,qBAAM,IAAI,CAAC,gCAAgC,EAAE,EAAA;;wBAApD,IAAI,GAAG,SAA6C;wBAC1D,eAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;wBAEjC,qBAAM,IAAI,CAAC,8BAA8B,CACnD,IAAI,CAAC,mBAAmB,CACzB,CAAC,QAAQ,EAAA;;wBAFJ,GAAG,GAAG,SAEF;wBACJ,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;wBACxC,2CAA2C;wBAC3C,IAAI,SAAS,EAAE,CAAC;4BACd,eAAO,CAAC,GAAG,CACT,oBAAY,IAAI,CAAC,SAAS,wCAAoC,CAC/D,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,eAAO,CAAC,GAAG,CACT,oBAAY,IAAI,CAAC,SAAS,6CAAyC,CACpE,CAAC;wBACJ,CAAC;6BACG,CAAA,SAAS,IAAI,CAAC,KAAK,sBAAsB,CAAA,EAAzC,wBAAyC;wBAC3C,sBAAO,SAAS,EAAC;;wBAEjB,eAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;wBAC/B,qBAAM,eAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAA;;wBAArB,SAAqB,CAAC;wBACtB,wBAAS;;;;wBAGX,eAAO,CAAC,GAAG,CACT,oBAAY,IAAI,CAAC,SAAS,8CAA0C,CACrE,CAAC;6BACE,CAAA,CAAC,KAAK,sBAAsB,CAAA,EAA5B,yBAA4B;wBAC9B,sBAAO,KAAK,EAAC;;wBAEb,eAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;wBAC/B,qBAAM,eAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAA;;wBAArB,SAAqB,CAAC;wBACtB,wBAAS;;;;;;;KAKhB;IACD,YAAY;IAEZ,mCAAmC;IACnC;;OAEG;IACa,qCAAa,GAA7B;;;;;;wBACE,sBAAsB;wBACtB,eAAO,CAAC,GAAG,CACT,sDAA8C,gBAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAM,CAClF,CAAC;wBACF,qBAAM,uBAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,CAAC,EAAA;;wBAA9D,SAA8D,CAAC;wBAC/D,eAAO,CAAC,GAAG,CACT,sCAA8B,gBAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,kCAA8B,CACvF,CAAC;wBACuB,qBAAM,IAAI,CAAC,gBAAgB,CAAC;gCACnD,sBAAsB,EAAE,CAAC;6BAC1B,CAAC,EAAA;;wBAFI,gBAAgB,GAAG,SAEvB;wBACF,IAAI,CAAC,gBAAgB,EAAE,CAAC;4BACtB,eAAO,CAAC,KAAK,CAAC,sCAA8B,IAAI,CAAC,SAAS,UAAM,CAAC,CAAC;4BAClE,sBAAO;wBACT,CAAC;wBACD,eAAO,CAAC,GAAG,CACT,qCAA6B,gBAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAY,CACpE,CAAC;;;;;KAEH;IACD,YAAY;IAEZ,yCAAyC;IACzB,mCAAW,GAA3B;;;;;;;6BACS,IAAI;wBACT,eAAO,CAAC,YAAY,EAAE,CAAC;wBACjB,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;wBAC3B,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE;4BACvC,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,MAAM;4BACb,MAAM,EAAE,CAAC,QAAQ,CAAC;4BAClB,UAAU,EAAE,aAAa;4BACzB,aAAa,EAAE,CAAC;4BAChB,UAAU,EAAE,CAAC;4BACb,KAAK,EAAE,IAAI;4BACX,SAAS,EAAE,GAAG;4BACd,QAAQ,EAAE,KAAK;4BACf,mBAAmB,EAAE,KAAK;4BAC1B,kBAAkB,EAAE,KAAK;4BACzB,GAAG,EAAE,MAAM;yBACZ,CAAC,CAAC;wBACH,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAE3B,eAAO,CAAC,IAAI,CAAC,8BAED,gBAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,kEACL,gBAAK,CAAC,IAAI,CAC3C,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,IAAI,0CAAE,QAAQ,EAAE,CAC3C,cAAI,MAA4C,mBAE9C,CAAC,CAAC;wBACD,OAAO,GAAG;4BACd,WAAW,EAAE;gCACX,IAAI,EAAE,gCAAgC;6BACvC;4BACD,sBAAsB;4BACtB,gCAAgC;4BAChC,KAAK;4BACL,cAAc;4BACd,uBAAuB;4BACvB,KAAK;4BACL,IAAI,EAAE;gCACJ,IAAI,EAAE,mBAAmB;6BAC1B;yBACF,CAAC;wBACa,qBAAM,qBAAa,CAAC,MAAM,CAAuB;gCAC9D,OAAO,SAAA;gCACP,QAAQ,EAAE,eAAe;6BAC1B,CAAC,EAAA;;wBAHI,MAAM,GAAG,SAGb;wBACF,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;4BACvB,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;4BACtC,aAAa,CAAC,2BAAoB,IAAI,CAAC,mBAAmB,CAAC,IAAI,UAAO,CAAC,CAAC;wBAC1E,CAAC;wBACD,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;4BACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBAClB,CAAC;wBACD,QAAQ,MAAM,EAAE,CAAC;wBACjB,CAAC;;;;;;KAEJ;IACD,YAAY;IAEZ,+CAA+C;IACvC,uCAAe,GAAvB,UAAwB,aAA2C;QACjE,sBAAsB;QACtB,aAAa,GAAG,aAAa,IAAK,EAAU,CAAC;QAC7C,IAAI,eAAO,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,EAAE,CAAC;YACpD,IAAM,UAAU,GAAG,eAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACrE,IAAI,YAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjE,aAAa,GAAG,YAAC,CAAC,KAAK,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QACD,eAAO,CAAC,GAAG,CACT,mCAA2B,IAAI,CAAC,0BAA0B,0BACxD,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ,EAAE,aAC1B,CACF,CAAC;QAEF,eAAO,CAAC,SAAS,CAAC,IAAI,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;QAClE,YAAY;IACd,CAAC;IACD,YAAY;IAEZ,+CAA+C;IAC/B,gDAAwB,GAAxC;;;;;;;wBAIM,qBAAM,IAAI,CAAC,gCAAgC,EAAE,EAAA;;wBADzC,sBAAsB,GAC1B,SAA6C;wBAE/C,qBAAM,sBAAsB,CAAC,uCAAuC,CAClE,IAAI,CAAC,SAAS,CACf,CAAC,QAAQ,EAAA;;wBAFV,SAEU,CAAC;wBACX,IAAI,CAAC,eAAe,CAAC;4BACnB,cAAc,EAAE,IAAI;yBACrB,CAAC,CAAC;;;;wBAEH,IAAI,CAAC,eAAe,CAAC;4BACnB,cAAc,EAAE,IAAI;yBACrB,CAAC,CAAC;wBACH,eAAO,CAAC,KAAK,CAAC,OAAK,CAAC,CAAC;;;;;;KAMxB;IACD,YAAY;IAEZ,iEAAiE;IACjD,qDAA6B,GAA7C;;;;;;wBAEM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;wBAC5C,QAAQ,GAAG,EAAE,CAAC;wBAChB,CAAC,GAAG,CAAC,CAAC;6BACN,CAAC,aAAa,EAAd,wBAAc;;;6BACT,CAAC,aAAa;wBACnB,CAAC,EAAE,CAAC;wBACJ,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;6BAC1C,aAAa,EAAb,wBAAa;wBACf,wBAAM;;wBAEN,eAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;wBACnD,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC;4BACjB,eAAO,CAAC,KAAK,CACX,wCAAwC;gCACtC,yCAAyC,CAC5C,CAAC;wBACJ,CAAC;wBACD,qBAAM,eAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAA;;wBAArB,SAAqB,CAAC;;;;;;;KAK7B;IACD,YAAY;IAEZ,2CAA2C;IACrC,sCAAc,GAApB;;;;;4BAEe,qBAAM,gBAAK,CAAC,WAAW,CAAC;4BACnC,SAAS,EAAE,uBAAuB;yBACnC,CAAC,EAAA;;wBAFI,IAAI,GAAG,SAEX;wBAEF,IAAI,CAAC,eAAe,CAAC;4BACnB,IAAI,MAAA;4BACJ,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,GAAG,EAAE,OAAO,CAAC,GAAG;4BAChB,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE;yBAC3B,CAAC,CAAC;wBACH,sBAAO,IAAI,EAAC;;;;KAEb;IAIH,oBAAC;AAAD,CAAC,AA1WD,IA0WC;AA1WqB,sCAAa"}
@@ -157,4 +157,6 @@ export declare class BaseCommandLine<PARAMS = any, PROJECT extends BaseProject<a
157
157
  clone(): Promise<void>;
158
158
  ghSave(): Promise<void>;
159
159
  ghRestore(): Promise<void>;
160
+ startCliServicePortsWorker(): Promise<void>;
161
+ pauseTerminal(): void;
160
162
  }
@@ -2106,6 +2106,45 @@ var BaseCommandLine = /** @class */ (function (_super) {
2106
2106
  });
2107
2107
  });
2108
2108
  };
2109
+ //#endregion
2110
+ BaseCommandLine.prototype.startCliServicePortsWorker = function () {
2111
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
2112
+ return tslib_1.__generator(this, function (_a) {
2113
+ switch (_a.label) {
2114
+ case 0:
2115
+ if (!this.params['restart']) return [3 /*break*/, 2];
2116
+ return [4 /*yield*/, this.ins.portsWorker.restart()];
2117
+ case 1:
2118
+ _a.sent();
2119
+ this._exit();
2120
+ _a.label = 2;
2121
+ case 2:
2122
+ if (!this.params['kill']) return [3 /*break*/, 4];
2123
+ return [4 /*yield*/, this.ins.portsWorker.kill()];
2124
+ case 3:
2125
+ _a.sent();
2126
+ this._exit();
2127
+ _a.label = 4;
2128
+ case 4:
2129
+ if (!(!!this.params['detached'] || !!this.params['detach'])) return [3 /*break*/, 6];
2130
+ return [4 /*yield*/, this.ins.portsWorker.startDetachedIfNeedsToBeStarted()];
2131
+ case 5:
2132
+ _a.sent();
2133
+ this._exit();
2134
+ return [3 /*break*/, 8];
2135
+ case 6: return [4 /*yield*/, this.ins.portsWorker.startNormallyInCurrentProcess()];
2136
+ case 7:
2137
+ _a.sent();
2138
+ _a.label = 8;
2139
+ case 8: return [2 /*return*/];
2140
+ }
2141
+ });
2142
+ });
2143
+ };
2144
+ BaseCommandLine.prototype.pauseTerminal = function () {
2145
+ index_1.Helpers.pressKeyAndContinue();
2146
+ this._exit();
2147
+ };
2109
2148
  return BaseCommandLine;
2110
2149
  }(command_line_feature_backend_1.CommandLineFeature));
2111
2150
  exports.BaseCommandLine = BaseCommandLine;