tnp-helpers 18.0.20 → 18.0.21

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 (521) hide show
  1. package/browser/esm2022/lib/base/classes/base-bower-json.mjs +14 -0
  2. package/browser/esm2022/lib/base/classes/base-cli-worker-config.mjs +1 -4
  3. package/browser/esm2022/lib/base/classes/base-cli-worker-controller.mjs +1 -1
  4. package/browser/esm2022/lib/base/classes/base-cli-worker.mjs +10 -2
  5. package/browser/esm2022/lib/base/classes/base-debounce-compiler-for-project.mjs +5 -5
  6. package/browser/esm2022/lib/base/classes/base-feature-for-project.mjs +4 -1
  7. package/browser/esm2022/lib/base/classes/base-git.mjs +229 -4
  8. package/browser/esm2022/lib/base/classes/base-json-file-reader.mjs +114 -0
  9. package/browser/esm2022/lib/base/classes/base-library-build.mjs +11 -7
  10. package/browser/esm2022/lib/base/classes/base-linked-projects.mjs +8 -5
  11. package/browser/esm2022/lib/base/classes/base-node-modules.mjs +495 -0
  12. package/browser/esm2022/lib/base/classes/base-npm-helpers.mjs +32 -429
  13. package/browser/esm2022/lib/base/classes/base-package-json.mjs +340 -0
  14. package/browser/esm2022/lib/base/classes/base-process-manager.mjs +285 -0
  15. package/browser/esm2022/lib/base/classes/base-project-resolver.mjs +2 -11
  16. package/browser/esm2022/lib/base/classes/base-project.mjs +76 -61
  17. package/browser/esm2022/lib/base/classes/base-quick-fixes.mjs +44 -1
  18. package/browser/esm2022/lib/base/classes/base-release-process.mjs +44 -11
  19. package/browser/esm2022/lib/base/classes/{base-github-pages.mjs → base-static-pages.mjs} +6 -6
  20. package/browser/esm2022/lib/base/classes/base-vscode.mjs +29 -1
  21. package/browser/esm2022/lib/base/classes/index.mjs +5 -1
  22. package/browser/esm2022/lib/base/commit-data.mjs +19 -1
  23. package/browser/esm2022/lib/base/core-project.mjs +3 -3
  24. package/browser/esm2022/lib/base/linked-project.mjs +4 -4
  25. package/browser/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +2 -4
  26. package/browser/esm2022/lib/base/translate.mjs +566 -0
  27. package/browser/esm2022/lib/helpers/helpers-array-obj.mjs +5 -10
  28. package/browser/esm2022/lib/helpers/helpers.mjs +12 -6
  29. package/browser/esm2022/lib/index.mjs +2 -1
  30. package/browser/esm2022/lib/models.mjs +173 -3
  31. package/browser/esm2022/lib/utils.mjs +402 -41
  32. package/browser/fesm2022/tnp-helpers.mjs +4619 -2888
  33. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  34. package/browser/lib/base/classes/base-bower-json.d.ts +35 -0
  35. package/browser/lib/base/classes/base-cli-worker.d.ts +1 -1
  36. package/browser/lib/base/classes/base-debounce-compiler-for-project.d.ts +5 -5
  37. package/browser/lib/base/classes/base-feature-for-project.d.ts +2 -1
  38. package/browser/lib/base/classes/base-git.d.ts +34 -5
  39. package/browser/lib/base/classes/base-json-file-reader.d.ts +72 -0
  40. package/browser/lib/base/classes/base-library-build.d.ts +5 -5
  41. package/browser/lib/base/classes/base-linked-projects.d.ts +1 -2
  42. package/browser/lib/base/classes/base-node-modules.d.ts +56 -0
  43. package/browser/lib/base/classes/base-npm-helpers.d.ts +29 -112
  44. package/browser/lib/base/classes/base-package-json.d.ts +107 -0
  45. package/browser/lib/base/classes/base-process-manager.d.ts +31 -0
  46. package/browser/lib/base/classes/base-project-resolver.d.ts +2 -2
  47. package/browser/lib/base/classes/base-project.d.ts +14 -16
  48. package/browser/lib/base/classes/base-quick-fixes.d.ts +3 -1
  49. package/browser/lib/base/classes/base-release-process.d.ts +8 -9
  50. package/browser/lib/base/classes/{base-github-pages.d.ts → base-static-pages.d.ts} +3 -3
  51. package/browser/lib/base/classes/base-vscode.d.ts +4 -0
  52. package/browser/lib/base/classes/index.d.ts +5 -1
  53. package/browser/lib/base/commit-data.d.ts +14 -1
  54. package/browser/lib/base/linked-project.d.ts +1 -1
  55. package/browser/lib/base/tcp-udp-ports/ports.entity.d.ts +1 -1
  56. package/browser/lib/base/translate.d.ts +228 -0
  57. package/browser/lib/helpers/helpers-array-obj.d.ts +3 -0
  58. package/browser/lib/helpers/helpers.d.ts +12 -8
  59. package/browser/lib/models.d.ts +68 -2
  60. package/browser/lib/utils.d.ts +72 -13
  61. package/client/esm2022/lib/base/classes/base-bower-json.mjs +14 -0
  62. package/client/esm2022/lib/base/classes/base-cli-worker-config.mjs +1 -4
  63. package/client/esm2022/lib/base/classes/base-cli-worker-controller.mjs +1 -1
  64. package/client/esm2022/lib/base/classes/base-cli-worker.mjs +10 -2
  65. package/client/esm2022/lib/base/classes/base-debounce-compiler-for-project.mjs +5 -5
  66. package/client/esm2022/lib/base/classes/base-feature-for-project.mjs +4 -1
  67. package/client/esm2022/lib/base/classes/base-git.mjs +229 -4
  68. package/client/esm2022/lib/base/classes/base-json-file-reader.mjs +114 -0
  69. package/client/esm2022/lib/base/classes/base-library-build.mjs +11 -7
  70. package/client/esm2022/lib/base/classes/base-linked-projects.mjs +8 -5
  71. package/client/esm2022/lib/base/classes/base-node-modules.mjs +495 -0
  72. package/client/esm2022/lib/base/classes/base-npm-helpers.mjs +32 -429
  73. package/client/esm2022/lib/base/classes/base-package-json.mjs +340 -0
  74. package/client/esm2022/lib/base/classes/base-process-manager.mjs +285 -0
  75. package/client/esm2022/lib/base/classes/base-project-resolver.mjs +2 -11
  76. package/client/esm2022/lib/base/classes/base-project.mjs +76 -61
  77. package/client/esm2022/lib/base/classes/base-quick-fixes.mjs +44 -1
  78. package/client/esm2022/lib/base/classes/base-release-process.mjs +44 -11
  79. package/client/esm2022/lib/base/classes/{base-github-pages.mjs → base-static-pages.mjs} +6 -6
  80. package/client/esm2022/lib/base/classes/base-vscode.mjs +29 -1
  81. package/client/esm2022/lib/base/classes/index.mjs +5 -1
  82. package/client/esm2022/lib/base/commit-data.mjs +19 -1
  83. package/client/esm2022/lib/base/core-project.mjs +3 -3
  84. package/client/esm2022/lib/base/linked-project.mjs +4 -4
  85. package/client/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +2 -4
  86. package/client/esm2022/lib/base/translate.mjs +566 -0
  87. package/client/esm2022/lib/helpers/helpers-array-obj.mjs +5 -10
  88. package/client/esm2022/lib/helpers/helpers.mjs +12 -6
  89. package/client/esm2022/lib/index.mjs +2 -1
  90. package/client/esm2022/lib/models.mjs +173 -3
  91. package/client/esm2022/lib/utils.mjs +402 -41
  92. package/client/fesm2022/tnp-helpers.mjs +4619 -2888
  93. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  94. package/client/lib/base/classes/base-bower-json.d.ts +35 -0
  95. package/client/lib/base/classes/base-cli-worker.d.ts +1 -1
  96. package/client/lib/base/classes/base-debounce-compiler-for-project.d.ts +5 -5
  97. package/client/lib/base/classes/base-feature-for-project.d.ts +2 -1
  98. package/client/lib/base/classes/base-git.d.ts +34 -5
  99. package/client/lib/base/classes/base-json-file-reader.d.ts +72 -0
  100. package/client/lib/base/classes/base-library-build.d.ts +5 -5
  101. package/client/lib/base/classes/base-linked-projects.d.ts +1 -2
  102. package/client/lib/base/classes/base-node-modules.d.ts +56 -0
  103. package/client/lib/base/classes/base-npm-helpers.d.ts +29 -112
  104. package/client/lib/base/classes/base-package-json.d.ts +107 -0
  105. package/client/lib/base/classes/base-process-manager.d.ts +31 -0
  106. package/client/lib/base/classes/base-project-resolver.d.ts +2 -2
  107. package/client/lib/base/classes/base-project.d.ts +14 -16
  108. package/client/lib/base/classes/base-quick-fixes.d.ts +3 -1
  109. package/client/lib/base/classes/base-release-process.d.ts +8 -9
  110. package/{websql/lib/base/classes/base-github-pages.d.ts → client/lib/base/classes/base-static-pages.d.ts} +3 -3
  111. package/client/lib/base/classes/base-vscode.d.ts +4 -0
  112. package/client/lib/base/classes/index.d.ts +5 -1
  113. package/client/lib/base/commit-data.d.ts +14 -1
  114. package/client/lib/base/linked-project.d.ts +1 -1
  115. package/client/lib/base/tcp-udp-ports/ports.entity.d.ts +1 -1
  116. package/client/lib/base/translate.d.ts +228 -0
  117. package/client/lib/helpers/helpers-array-obj.d.ts +3 -0
  118. package/client/lib/helpers/helpers.d.ts +12 -8
  119. package/client/lib/models.d.ts +68 -2
  120. package/client/lib/utils.d.ts +72 -13
  121. package/index.js +15 -2
  122. package/index.js.map +1 -1
  123. package/lib/base/base-cli-worker-config.d.ts +27 -0
  124. package/lib/base/base-cli-worker-config.js +53 -0
  125. package/lib/base/base-cli-worker-config.js.map +1 -0
  126. package/lib/base/base-cli-worker-controller.d.ts +15 -0
  127. package/lib/base/base-cli-worker-controller.js +154 -0
  128. package/lib/base/base-cli-worker-controller.js.map +1 -0
  129. package/lib/base/base-cli-worker.d.ts +82 -0
  130. package/lib/base/base-cli-worker.js +654 -0
  131. package/lib/base/base-cli-worker.js.map +1 -0
  132. package/lib/base/base-command-line.backend.d.ts +174 -0
  133. package/lib/base/base-command-line.backend.js +2221 -0
  134. package/lib/base/base-command-line.backend.js.map +1 -0
  135. package/lib/base/base-compiler-for-project.d.ts +7 -0
  136. package/lib/base/base-compiler-for-project.js +62 -0
  137. package/lib/base/base-compiler-for-project.js.map +1 -0
  138. package/lib/base/base-db.d.ts +12 -0
  139. package/lib/base/base-db.js +74 -0
  140. package/lib/base/base-db.js.map +1 -0
  141. package/lib/base/base-debounce-compiler-for-project.d.ts +28 -0
  142. package/lib/base/base-debounce-compiler-for-project.js +82 -0
  143. package/lib/base/base-debounce-compiler-for-project.js.map +1 -0
  144. package/lib/base/base-detached-service.d.ts +6 -0
  145. package/lib/base/base-detached-service.js +16 -0
  146. package/lib/base/base-detached-service.js.map +1 -0
  147. package/lib/base/base-feature-for-project.d.ts +5 -0
  148. package/lib/base/base-feature-for-project.js +11 -0
  149. package/lib/base/base-feature-for-project.js.map +1 -0
  150. package/lib/base/base-git.d.ts +148 -0
  151. package/lib/base/base-git.js +1202 -0
  152. package/lib/base/base-git.js.map +1 -0
  153. package/{client/lib/base/classes → lib/base}/base-github-pages.d.ts +4 -5
  154. package/lib/base/base-github-pages.js +173 -0
  155. package/lib/base/base-github-pages.js.map +1 -0
  156. package/lib/base/base-ignore-hide.d.ts +14 -0
  157. package/lib/base/base-ignore-hide.js +55 -0
  158. package/lib/base/base-ignore-hide.js.map +1 -0
  159. package/lib/base/base-library-build.d.ts +65 -0
  160. package/lib/base/base-library-build.js +717 -0
  161. package/lib/base/base-library-build.js.map +1 -0
  162. package/lib/base/base-linked-projects.d.ts +24 -0
  163. package/lib/base/base-linked-projects.js +408 -0
  164. package/lib/base/base-linked-projects.js.map +1 -0
  165. package/lib/base/base-npm-helpers.d.ts +128 -0
  166. package/lib/base/base-npm-helpers.js +774 -0
  167. package/lib/base/base-npm-helpers.js.map +1 -0
  168. package/lib/base/base-project-resolver.d.ts +41 -0
  169. package/lib/base/base-project-resolver.js +308 -0
  170. package/lib/base/base-project-resolver.js.map +1 -0
  171. package/lib/base/base-project.d.ts +244 -0
  172. package/lib/base/base-project.js +1223 -0
  173. package/lib/base/base-project.js.map +1 -0
  174. package/lib/base/base-quick-fixes.d.ts +6 -0
  175. package/lib/base/base-quick-fixes.js +31 -0
  176. package/lib/base/base-quick-fixes.js.map +1 -0
  177. package/lib/base/base-release-process.d.ts +69 -0
  178. package/lib/base/base-release-process.js +913 -0
  179. package/lib/base/base-release-process.js.map +1 -0
  180. package/lib/base/base-start-config.backend.d.ts +36 -0
  181. package/lib/base/base-start-config.backend.js +167 -0
  182. package/lib/base/base-start-config.backend.js.map +1 -0
  183. package/lib/base/base-vscode.d.ts +12 -0
  184. package/lib/base/base-vscode.js +139 -0
  185. package/lib/base/base-vscode.js.map +1 -0
  186. package/lib/base/classes/base-bower-json.d.ts +34 -0
  187. package/lib/base/classes/base-bower-json.js +19 -0
  188. package/lib/base/classes/base-bower-json.js.map +1 -0
  189. package/lib/base/classes/base-cli-worker-config.js +35 -24
  190. package/lib/base/classes/base-cli-worker-config.js.map +1 -1
  191. package/lib/base/classes/base-cli-worker-controller.js +98 -128
  192. package/lib/base/classes/base-cli-worker-controller.js.map +1 -1
  193. package/lib/base/classes/base-cli-worker.d.ts +1 -1
  194. package/lib/base/classes/base-cli-worker.js +402 -610
  195. package/lib/base/classes/base-cli-worker.js.map +1 -1
  196. package/lib/base/classes/base-command-line-feature.backend.d.ts +5 -9
  197. package/lib/base/classes/base-command-line-feature.backend.js +73 -132
  198. package/lib/base/classes/base-command-line-feature.backend.js.map +1 -1
  199. package/lib/base/classes/base-command-line.backend.d.ts +175 -0
  200. package/lib/base/classes/base-command-line.backend.js +2235 -0
  201. package/lib/base/classes/base-command-line.backend.js.map +1 -0
  202. package/lib/base/classes/base-compiler-for-project.js +27 -32
  203. package/lib/base/classes/base-compiler-for-project.js.map +1 -1
  204. package/lib/base/classes/base-db.js +43 -60
  205. package/lib/base/classes/base-db.js.map +1 -1
  206. package/lib/base/classes/base-debounce-compiler-for-project.d.ts +5 -5
  207. package/lib/base/classes/base-debounce-compiler-for-project.js +44 -70
  208. package/lib/base/classes/base-debounce-compiler-for-project.js.map +1 -1
  209. package/lib/base/classes/base-detached-service.js.map +1 -1
  210. package/lib/base/classes/base-feature-for-project.d.ts +2 -1
  211. package/lib/base/classes/base-feature-for-project.js +7 -4
  212. package/lib/base/classes/base-feature-for-project.js.map +1 -1
  213. package/lib/base/classes/base-git.d.ts +32 -3
  214. package/lib/base/classes/base-git.js +885 -975
  215. package/lib/base/classes/base-git.js.map +1 -1
  216. package/lib/base/classes/base-github-pages.js.map +1 -1
  217. package/lib/base/classes/base-global-command-line.backend.d.ts +7 -2
  218. package/lib/base/classes/base-global-command-line.backend.js +1055 -2021
  219. package/lib/base/classes/base-global-command-line.backend.js.map +1 -1
  220. package/lib/base/classes/base-ignore-hide.d.ts +2 -2
  221. package/lib/base/classes/base-ignore-hide.js +24 -28
  222. package/lib/base/classes/base-ignore-hide.js.map +1 -1
  223. package/lib/base/classes/base-json-file-reader.d.ts +71 -0
  224. package/lib/base/classes/base-json-file-reader.js +141 -0
  225. package/lib/base/classes/base-json-file-reader.js.map +1 -0
  226. package/lib/base/classes/base-library-build.d.ts +5 -6
  227. package/lib/base/classes/base-library-build.js +431 -653
  228. package/lib/base/classes/base-library-build.js.map +1 -1
  229. package/lib/base/classes/base-linked-projects.d.ts +1 -3
  230. package/lib/base/classes/base-linked-projects.js +200 -314
  231. package/lib/base/classes/base-linked-projects.js.map +1 -1
  232. package/lib/base/classes/base-node-modules.d.ts +55 -0
  233. package/lib/base/classes/base-node-modules.js +415 -0
  234. package/lib/base/classes/base-node-modules.js.map +1 -0
  235. package/lib/base/classes/base-npm-helpers.d.ts +29 -99
  236. package/lib/base/classes/base-npm-helpers.js +178 -737
  237. package/lib/base/classes/base-npm-helpers.js.map +1 -1
  238. package/lib/base/classes/base-package-json.d.ts +106 -0
  239. package/lib/base/classes/base-package-json.js +381 -0
  240. package/lib/base/classes/base-package-json.js.map +1 -0
  241. package/lib/base/classes/base-process-manager.d.ts +30 -0
  242. package/lib/base/classes/base-process-manager.js +269 -0
  243. package/lib/base/classes/base-process-manager.js.map +1 -0
  244. package/lib/base/classes/base-project-resolver.d.ts +2 -3
  245. package/lib/base/classes/base-project-resolver.js +102 -119
  246. package/lib/base/classes/base-project-resolver.js.map +1 -1
  247. package/lib/base/classes/base-project.d.ts +17 -15
  248. package/lib/base/classes/base-project.js +551 -733
  249. package/lib/base/classes/base-project.js.map +1 -1
  250. package/lib/base/classes/base-quick-fixes.d.ts +3 -1
  251. package/lib/base/classes/base-quick-fixes.js +45 -17
  252. package/lib/base/classes/base-quick-fixes.js.map +1 -1
  253. package/lib/base/classes/base-release-process.d.ts +8 -9
  254. package/lib/base/classes/base-release-process.js +482 -757
  255. package/lib/base/classes/base-release-process.js.map +1 -1
  256. package/lib/base/classes/base-start-config.backend.js +115 -99
  257. package/lib/base/classes/base-start-config.backend.js.map +1 -1
  258. package/lib/base/classes/base-static-pages.d.ts +14 -0
  259. package/lib/base/classes/base-static-pages.js +105 -0
  260. package/lib/base/classes/base-static-pages.js.map +1 -0
  261. package/lib/base/classes/base-vscode.d.ts +4 -0
  262. package/lib/base/classes/base-vscode.js +446 -426
  263. package/lib/base/classes/base-vscode.js.map +1 -1
  264. package/lib/base/classes/index copy.d.ts +22 -0
  265. package/lib/base/classes/index copy.js +28 -0
  266. package/lib/base/classes/index copy.js.map +1 -0
  267. package/lib/base/classes/index.d.ts +4 -0
  268. package/lib/base/classes/index.js +36 -19
  269. package/lib/base/classes/index.js.map +1 -1
  270. package/lib/base/command-line-feature.backend.d.ts +51 -0
  271. package/lib/base/command-line-feature.backend.js +206 -0
  272. package/lib/base/command-line-feature.backend.js.map +1 -0
  273. package/lib/base/commit-data.d.ts +14 -1
  274. package/lib/base/commit-data.js +408 -460
  275. package/lib/base/commit-data.js.map +1 -1
  276. package/lib/base/config-database.js +33 -61
  277. package/lib/base/config-database.js.map +1 -1
  278. package/lib/base/core-project.js +110 -146
  279. package/lib/base/core-project.js.map +1 -1
  280. package/lib/base/gh-temp-code.d.ts +1 -0
  281. package/lib/base/gh-temp-code.js +62 -104
  282. package/lib/base/gh-temp-code.js.map +1 -1
  283. package/lib/base/index-rebuilder.backend.d.ts +1 -0
  284. package/lib/base/index-rebuilder.backend.js.map +1 -1
  285. package/lib/base/index.js +20 -7
  286. package/lib/base/index.js.map +1 -1
  287. package/lib/base/linked-project.d.ts +1 -1
  288. package/lib/base/linked-project.js +59 -38
  289. package/lib/base/linked-project.js.map +1 -1
  290. package/lib/base/ports-worker.d.ts +32 -0
  291. package/lib/base/ports-worker.js +244 -0
  292. package/lib/base/ports-worker.js.map +1 -0
  293. package/lib/base/project-database.js +12 -22
  294. package/lib/base/project-database.js.map +1 -1
  295. package/lib/base/tcp-udp-ports/index.js +17 -4
  296. package/lib/base/tcp-udp-ports/index.js.map +1 -1
  297. package/lib/base/tcp-udp-ports/not-assignable-port.entity.d.ts +1 -0
  298. package/lib/base/tcp-udp-ports/not-assignable-port.entity.js +2 -2
  299. package/lib/base/tcp-udp-ports/not-assignable-port.entity.js.map +1 -1
  300. package/lib/base/tcp-udp-ports/port.entity.d.ts +0 -0
  301. package/lib/base/tcp-udp-ports/port.entity.js +5 -0
  302. package/lib/base/tcp-udp-ports/port.entity.js.map +1 -0
  303. package/lib/base/tcp-udp-ports/ports.controller.js +195 -283
  304. package/lib/base/tcp-udp-ports/ports.controller.js.map +1 -1
  305. package/lib/base/tcp-udp-ports/ports.entity.d.ts +2 -2
  306. package/lib/base/tcp-udp-ports/ports.entity.js +74 -62
  307. package/lib/base/tcp-udp-ports/ports.entity.js.map +1 -1
  308. package/lib/base/tcp-udp-ports/tcp-udp-ports.context.js +11 -14
  309. package/lib/base/tcp-udp-ports/tcp-udp-ports.context.js.map +1 -1
  310. package/lib/base/tcp-udp-ports/tcp-upd-ports.worker.js +244 -427
  311. package/lib/base/tcp-udp-ports/tcp-upd-ports.worker.js.map +1 -1
  312. package/lib/base/tcp-upd-ports.worker.d.ts +13 -0
  313. package/lib/base/tcp-upd-ports.worker.js +99 -0
  314. package/lib/base/tcp-upd-ports.worker.js.map +1 -0
  315. package/lib/base/translate.d.ts +1 -1
  316. package/lib/base/translate.js +90 -119
  317. package/lib/base/translate.js.map +1 -1
  318. package/lib/build-info._auto-generated_.js.map +1 -1
  319. package/lib/helpers/for-backend/helpers-cli-tool.backend.js +109 -115
  320. package/lib/helpers/for-backend/helpers-cli-tool.backend.js.map +1 -1
  321. package/lib/helpers/for-backend/helpers-console-gui.js +55 -102
  322. package/lib/helpers/for-backend/helpers-console-gui.js.map +1 -1
  323. package/lib/helpers/for-backend/helpers-dependencies.backend.js +28 -45
  324. package/lib/helpers/for-backend/helpers-dependencies.backend.js.map +1 -1
  325. package/lib/helpers/for-backend/helpers-file-folders.backend.d.ts +2 -2
  326. package/lib/helpers/for-backend/helpers-file-folders.backend.js +277 -266
  327. package/lib/helpers/for-backend/helpers-file-folders.backend.js.map +1 -1
  328. package/lib/helpers/for-backend/helpers-git.backend.d.ts +28 -3
  329. package/lib/helpers/for-backend/helpers-git.backend.js +804 -864
  330. package/lib/helpers/for-backend/helpers-git.backend.js.map +1 -1
  331. package/lib/helpers/for-backend/helpers-network.backend.js +15 -18
  332. package/lib/helpers/for-backend/helpers-network.backend.js.map +1 -1
  333. package/lib/helpers/for-backend/helpers-npm.backend.js +5 -8
  334. package/lib/helpers/for-backend/helpers-npm.backend.js.map +1 -1
  335. package/lib/helpers/for-backend/helpers-path.backend.js +18 -26
  336. package/lib/helpers/for-backend/helpers-path.backend.js.map +1 -1
  337. package/lib/helpers/for-backend/helpers-process.backend.d.ts +2 -2
  338. package/lib/helpers/for-backend/helpers-process.backend.js +285 -363
  339. package/lib/helpers/for-backend/helpers-process.backend.js.map +1 -1
  340. package/lib/helpers/for-backend/helpers-system-terminal.backend.js +25 -42
  341. package/lib/helpers/for-backend/helpers-system-terminal.backend.js.map +1 -1
  342. package/lib/helpers/for-backend/helpers-vscode.backend.js +9 -12
  343. package/lib/helpers/for-backend/helpers-vscode.backend.js.map +1 -1
  344. package/lib/helpers/for-backend/ts-code/index.js +0 -2
  345. package/lib/helpers/for-backend/ts-code/index.js.map +1 -1
  346. package/lib/helpers/for-backend/ts-code/ts-code-extractor.d.ts +26 -0
  347. package/lib/helpers/for-backend/ts-code/ts-code-extractor.js +62 -0
  348. package/lib/helpers/for-backend/ts-code/ts-code-extractor.js.map +1 -0
  349. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.d.ts +19 -0
  350. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.js +81 -0
  351. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.js.map +1 -0
  352. package/lib/helpers/for-backend/ts-code/ts-import-export-extractor.js +2 -2
  353. package/lib/helpers/for-backend/ts-code/ts-import-export-extractor.js.map +1 -1
  354. package/lib/helpers/for-browser/angular.helper.js +2 -2
  355. package/lib/helpers/for-browser/angular.helper.js.map +1 -1
  356. package/lib/helpers/for-browser/helpers-browser.js +27 -40
  357. package/lib/helpers/for-browser/helpers-browser.js.map +1 -1
  358. package/lib/helpers/helpers-array-obj.d.ts +3 -0
  359. package/lib/helpers/helpers-array-obj.js +49 -61
  360. package/lib/helpers/helpers-array-obj.js.map +1 -1
  361. package/lib/helpers/helpers-json5.backend.js +44 -55
  362. package/lib/helpers/helpers-json5.backend.js.map +1 -1
  363. package/lib/helpers/helpers-numbers.js +7 -10
  364. package/lib/helpers/helpers-numbers.js.map +1 -1
  365. package/lib/helpers/helpers-strings-regexes.js +40 -47
  366. package/lib/helpers/helpers-strings-regexes.js.map +1 -1
  367. package/lib/helpers/helpers-strings.js +38 -41
  368. package/lib/helpers/helpers-strings.js.map +1 -1
  369. package/lib/helpers/helpers.d.ts +12 -8
  370. package/lib/helpers/helpers.js +313 -393
  371. package/lib/helpers/helpers.js.map +1 -1
  372. package/lib/index._auto-generated_.d.ts +1 -0
  373. package/lib/index._auto-generated_.js.map +1 -1
  374. package/lib/index.d.ts +2 -1
  375. package/lib/index.js +21 -7
  376. package/lib/index.js.map +1 -1
  377. package/lib/lowdb/adapters/Memory.js +14 -20
  378. package/lib/lowdb/adapters/Memory.js.map +1 -1
  379. package/lib/lowdb/adapters/browser/LocalStorage.js +5 -8
  380. package/lib/lowdb/adapters/browser/LocalStorage.js.map +1 -1
  381. package/lib/lowdb/adapters/browser/SessionStorage.js +5 -8
  382. package/lib/lowdb/adapters/browser/SessionStorage.js.map +1 -1
  383. package/lib/lowdb/adapters/browser/WebStorage.js +10 -9
  384. package/lib/lowdb/adapters/browser/WebStorage.js.map +1 -1
  385. package/lib/lowdb/adapters/node/DataFile.js +29 -38
  386. package/lib/lowdb/adapters/node/DataFile.js.map +1 -1
  387. package/lib/lowdb/adapters/node/JSONFile.js +13 -18
  388. package/lib/lowdb/adapters/node/JSONFile.js.map +1 -1
  389. package/lib/lowdb/adapters/node/TextFile.js +36 -44
  390. package/lib/lowdb/adapters/node/TextFile.js.map +1 -1
  391. package/lib/lowdb/adapters/node/steno.js +72 -122
  392. package/lib/lowdb/adapters/node/steno.js.map +1 -1
  393. package/lib/lowdb/browser.js +17 -4
  394. package/lib/lowdb/browser.js.map +1 -1
  395. package/lib/lowdb/core/Low.js +30 -60
  396. package/lib/lowdb/core/Low.js.map +1 -1
  397. package/lib/lowdb/examples/browser.js.map +1 -1
  398. package/lib/lowdb/examples/cli.d.ts +1 -0
  399. package/lib/lowdb/examples/cli.js.map +1 -1
  400. package/lib/lowdb/examples/in-memory.d.ts +1 -0
  401. package/lib/lowdb/examples/in-memory.js.map +1 -1
  402. package/lib/lowdb/examples/server.d.ts +1 -0
  403. package/lib/lowdb/examples/server.js.map +1 -1
  404. package/lib/lowdb/index.js +16 -3
  405. package/lib/lowdb/index.js.map +1 -1
  406. package/lib/lowdb/node.js +18 -5
  407. package/lib/lowdb/node.js.map +1 -1
  408. package/lib/lowdb/presets/browser.js +7 -7
  409. package/lib/lowdb/presets/browser.js.map +1 -1
  410. package/lib/lowdb/presets/node.js +12 -23
  411. package/lib/lowdb/presets/node.js.map +1 -1
  412. package/lib/models.d.ts +68 -2
  413. package/lib/models.js +197 -3
  414. package/lib/models.js.map +1 -1
  415. package/lib/old/base-component.d.ts +1 -0
  416. package/lib/old/base-component.js +2 -2
  417. package/lib/old/base-component.js.map +1 -1
  418. package/lib/old/base-formly-component.d.ts +1 -0
  419. package/lib/old/base-formly-component.js +2 -2
  420. package/lib/old/base-formly-component.js.map +1 -1
  421. package/lib/old/condition-wait.d.ts +1 -0
  422. package/lib/old/condition-wait.js.map +1 -1
  423. package/lib/old/dual-component-ctrl.d.ts +1 -0
  424. package/lib/old/dual-component-ctrl.js +2 -2
  425. package/lib/old/dual-component-ctrl.js.map +1 -1
  426. package/lib/old/execute-command.d.ts +11 -0
  427. package/lib/old/execute-command.js +564 -0
  428. package/lib/old/execute-command.js.map +1 -0
  429. package/lib/old/helpers.d.ts +62 -0
  430. package/lib/old/helpers.js +279 -0
  431. package/lib/old/helpers.js.map +1 -0
  432. package/lib/old/models.d.ts +80 -0
  433. package/lib/old/models.js +57 -0
  434. package/lib/old/models.js.map +1 -0
  435. package/lib/utils.d.ts +72 -13
  436. package/lib/utils.js +502 -179
  437. package/lib/utils.js.map +1 -1
  438. package/lib/validators/validators-firedev.js +5 -5
  439. package/lib/validators/validators-firedev.js.map +1 -1
  440. package/lib/validators/validators-git.js +2 -2
  441. package/lib/validators/validators-git.js.map +1 -1
  442. package/lib/validators/validators-network.js +1 -1
  443. package/lib/validators/validators-network.js.map +1 -1
  444. package/lib/validators/validators.js +2 -2
  445. package/lib/validators/validators.js.map +1 -1
  446. package/migrations/1736198527297_init.js +39 -58
  447. package/migrations/1736198527297_init.js.map +1 -1
  448. package/migrations/1736199486472_addingNotAssignablePorts.js +42 -93
  449. package/migrations/1736199486472_addingNotAssignablePorts.js.map +1 -1
  450. package/migrations/1736454437350_addFreePorts.js +48 -100
  451. package/migrations/1736454437350_addFreePorts.js.map +1 -1
  452. package/migrations/index.js +15 -2
  453. package/migrations/index.js.map +1 -1
  454. package/migrations/migrations_index._auto-generated_.js +3 -3
  455. package/migrations/migrations_index._auto-generated_.js.map +1 -1
  456. package/package.json +14 -61
  457. package/src.d.ts +1 -1
  458. package/taon.jsonc +26 -41
  459. package/tmp-environment.json +8 -389
  460. package/websql/esm2022/lib/base/classes/base-bower-json.mjs +14 -0
  461. package/websql/esm2022/lib/base/classes/base-cli-worker-config.mjs +1 -4
  462. package/websql/esm2022/lib/base/classes/base-cli-worker-controller.mjs +1 -1
  463. package/websql/esm2022/lib/base/classes/base-cli-worker.mjs +10 -2
  464. package/websql/esm2022/lib/base/classes/base-debounce-compiler-for-project.mjs +5 -5
  465. package/websql/esm2022/lib/base/classes/base-feature-for-project.mjs +4 -1
  466. package/websql/esm2022/lib/base/classes/base-git.mjs +229 -4
  467. package/websql/esm2022/lib/base/classes/base-json-file-reader.mjs +114 -0
  468. package/websql/esm2022/lib/base/classes/base-library-build.mjs +11 -7
  469. package/websql/esm2022/lib/base/classes/base-linked-projects.mjs +8 -5
  470. package/websql/esm2022/lib/base/classes/base-node-modules.mjs +495 -0
  471. package/websql/esm2022/lib/base/classes/base-npm-helpers.mjs +32 -429
  472. package/websql/esm2022/lib/base/classes/base-package-json.mjs +340 -0
  473. package/websql/esm2022/lib/base/classes/base-process-manager.mjs +285 -0
  474. package/websql/esm2022/lib/base/classes/base-project-resolver.mjs +2 -10
  475. package/websql/esm2022/lib/base/classes/base-project.mjs +75 -61
  476. package/websql/esm2022/lib/base/classes/base-quick-fixes.mjs +44 -1
  477. package/websql/esm2022/lib/base/classes/base-release-process.mjs +44 -11
  478. package/websql/esm2022/lib/base/classes/{base-github-pages.mjs → base-static-pages.mjs} +6 -6
  479. package/websql/esm2022/lib/base/classes/base-vscode.mjs +29 -1
  480. package/websql/esm2022/lib/base/classes/index.mjs +5 -1
  481. package/websql/esm2022/lib/base/commit-data.mjs +19 -1
  482. package/websql/esm2022/lib/base/core-project.mjs +3 -3
  483. package/websql/esm2022/lib/base/linked-project.mjs +4 -4
  484. package/websql/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +2 -4
  485. package/websql/esm2022/lib/base/translate.mjs +566 -0
  486. package/websql/esm2022/lib/helpers/helpers-array-obj.mjs +5 -10
  487. package/websql/esm2022/lib/helpers/helpers.mjs +12 -6
  488. package/websql/esm2022/lib/index.mjs +2 -1
  489. package/websql/esm2022/lib/models.mjs +173 -3
  490. package/websql/esm2022/lib/utils.mjs +402 -41
  491. package/websql/fesm2022/tnp-helpers.mjs +4738 -3007
  492. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  493. package/websql/lib/base/classes/base-bower-json.d.ts +35 -0
  494. package/websql/lib/base/classes/base-cli-worker.d.ts +1 -1
  495. package/websql/lib/base/classes/base-debounce-compiler-for-project.d.ts +5 -5
  496. package/websql/lib/base/classes/base-feature-for-project.d.ts +2 -1
  497. package/websql/lib/base/classes/base-git.d.ts +34 -5
  498. package/websql/lib/base/classes/base-json-file-reader.d.ts +72 -0
  499. package/websql/lib/base/classes/base-library-build.d.ts +5 -5
  500. package/websql/lib/base/classes/base-linked-projects.d.ts +1 -2
  501. package/websql/lib/base/classes/base-node-modules.d.ts +56 -0
  502. package/websql/lib/base/classes/base-npm-helpers.d.ts +29 -110
  503. package/websql/lib/base/classes/base-package-json.d.ts +107 -0
  504. package/websql/lib/base/classes/base-process-manager.d.ts +31 -0
  505. package/websql/lib/base/classes/base-project-resolver.d.ts +2 -2
  506. package/websql/lib/base/classes/base-project.d.ts +14 -16
  507. package/websql/lib/base/classes/base-quick-fixes.d.ts +3 -1
  508. package/websql/lib/base/classes/base-release-process.d.ts +8 -9
  509. package/websql/lib/base/classes/base-static-pages.d.ts +15 -0
  510. package/websql/lib/base/classes/base-vscode.d.ts +4 -0
  511. package/websql/lib/base/classes/index.d.ts +5 -1
  512. package/websql/lib/base/commit-data.d.ts +14 -1
  513. package/websql/lib/base/linked-project.d.ts +1 -1
  514. package/websql/lib/base/tcp-udp-ports/ports.entity.d.ts +1 -1
  515. package/websql/lib/base/translate.d.ts +228 -0
  516. package/websql/lib/helpers/helpers-array-obj.d.ts +3 -0
  517. package/websql/lib/helpers/helpers.d.ts +12 -8
  518. package/websql/lib/models.d.ts +68 -2
  519. package/websql/lib/utils.d.ts +72 -13
  520. package/browser/package.json +0 -25
  521. package/websql/package.json +0 -25
@@ -1,19 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseCliWorker = void 0;
4
- var tslib_1 = require("tslib");
5
- //#region imports
6
- var tnp_core_1 = require("tnp-core");
7
- var index_1 = require("../../index");
8
- var base_cli_worker_config_1 = require("./base-cli-worker-config");
4
+ const tnp_core_1 = require("tnp-core");
5
+ const index_1 = require("../../index");
6
+ const base_cli_worker_config_1 = require("./base-cli-worker-config");
9
7
  //#endregion
10
8
  //#region constants
11
- var WORKER_INIT_START_TIME_LIMIT = 25; // 15 seconds max to start worker
12
- var START_PORT_FOR_SERVICES = 3600;
9
+ const WORKER_INIT_START_TIME_LIMIT = 25; // 15 seconds max to start worker
10
+ const START_PORT_FOR_SERVICES = 3600;
13
11
  //#endregion
14
- var BaseCliWorker = /** @class */ (function () {
12
+ class BaseCliWorker {
13
+ serviceID;
14
+ startCommand;
15
+ serviceVersion;
16
+ SPECIAL_WORKER_READY_MESSAGE = '$$$ WORKER_READY $$$';
15
17
  //#region constructor
16
- function BaseCliWorker(
18
+ constructor(
17
19
  /**
18
20
  * unique id for service
19
21
  */
@@ -29,277 +31,183 @@ var BaseCliWorker = /** @class */ (function () {
29
31
  this.serviceID = serviceID;
30
32
  this.startCommand = startCommand;
31
33
  this.serviceVersion = serviceVersion;
32
- this.SPECIAL_WORKER_READY_MESSAGE = '$$$ WORKER_READY $$$';
33
34
  }
34
- Object.defineProperty(BaseCliWorker.prototype, "pathToProcessLocalInfoJson", {
35
+ //#endregion
36
+ //#region fields & getters
37
+ //#region fields & getters / path to process local info
38
+ get pathToProcessLocalInfoJson() {
39
+ //#region @backendFunc
40
+ // console.log('os.userInfo()', os.userInfo());
41
+ return (0, tnp_core_1.crossPlatformPath)([
42
+ tnp_core_1.os.userInfo().homedir,
43
+ `.taon`,
44
+ '__workers-service-process-info__',
45
+ `${this.serviceID}.json`,
46
+ ]);
35
47
  //#endregion
36
- //#region fields & getters
37
- //#region fields & getters / path to process local info
38
- get: function () {
39
- //#region @backendFunc
40
- // console.log('os.userInfo()', os.userInfo());
41
- return (0, tnp_core_1.crossPlatformPath)([
42
- tnp_core_1.os.userInfo().homedir,
43
- ".taon",
44
- '__workers-service-process-info__',
45
- "".concat(this.serviceID, ".json"),
46
- ]);
47
- //#endregion
48
- },
49
- enumerable: false,
50
- configurable: true
51
- });
52
- Object.defineProperty(BaseCliWorker.prototype, "processLocalInfoObj", {
48
+ }
49
+ //#endregion
50
+ //#region fields & getters / process local info json object
51
+ get processLocalInfoObj() {
52
+ //#region @backendFunc
53
+ const configJson = index_1.Helpers.readJson5(this.pathToProcessLocalInfoJson) || {};
54
+ if (tnp_core_1._.isObject(configJson)) {
55
+ return tnp_core_1._.merge(new base_cli_worker_config_1.BaseCliWorkerConfig(), configJson);
56
+ }
57
+ return new base_cli_worker_config_1.BaseCliWorkerConfig();
53
58
  //#endregion
54
- //#region fields & getters / process local info json object
55
- get: function () {
56
- //#region @backendFunc
57
- var configJson = index_1.Helpers.readJson5(this.pathToProcessLocalInfoJson) || {};
58
- if (tnp_core_1._.isObject(configJson)) {
59
- return tnp_core_1._.merge(new base_cli_worker_config_1.BaseCliWorkerConfig(), configJson);
60
- }
61
- return new base_cli_worker_config_1.BaseCliWorkerConfig();
62
- //#endregion
63
- },
64
- enumerable: false,
65
- configurable: true
66
- });
59
+ }
67
60
  //#endregion
68
61
  //#endregion
69
62
  //#region public methods
70
63
  //#region public methods / start if needs to be started
71
- BaseCliWorker.prototype.startDetachedIfNeedsToBeStarted = function (options) {
72
- return tslib_1.__awaiter(this, void 0, void 0, function () {
73
- var serviceIsHealthy;
74
- return tslib_1.__generator(this, function (_a) {
75
- switch (_a.label) {
76
- case 0:
77
- if (!this.processLocalInfoObj.isEmpty) return [3 /*break*/, 2];
78
- // not started ever yet
79
- return [4 /*yield*/, this.startDetached(options)];
80
- case 1:
81
- // not started ever yet
82
- _a.sent();
83
- return [2 /*return*/];
84
- case 2: return [4 /*yield*/, this.isServiceHealthy({
85
- healthCheckRequestTrys: 1, // just quick check
86
- })];
87
- case 3:
88
- serviceIsHealthy = _a.sent();
89
- if (!!serviceIsHealthy) return [3 /*break*/, 5];
90
- return [4 /*yield*/, this.startDetached(options)];
91
- case 4:
92
- _a.sent();
93
- return [2 /*return*/];
94
- case 5:
95
- index_1.Helpers.log("Service \"".concat(this.serviceID, "\" is already started/healthy..."));
96
- return [2 /*return*/];
97
- }
98
- });
64
+ async startDetachedIfNeedsToBeStarted(options) {
65
+ //#region @backendFunc
66
+ if (this.processLocalInfoObj.isEmpty) {
67
+ // not started ever yet
68
+ await this.startDetached(options);
69
+ return;
70
+ }
71
+ const serviceIsHealthy = await this.isServiceHealthy({
72
+ healthCheckRequestTrys: 1, // just quick check
99
73
  });
100
- };
74
+ if (!serviceIsHealthy) {
75
+ await this.startDetached(options);
76
+ return;
77
+ }
78
+ index_1.Helpers.log(`Service "${this.serviceID}" is already started/healthy...`);
79
+ //#endregion
80
+ }
101
81
  //#endregion
102
82
  //#region public methods / kill
103
83
  /**
104
84
  * stop if started
105
85
  */
106
- BaseCliWorker.prototype.kill = function (options) {
107
- return tslib_1.__awaiter(this, void 0, void 0, function () {
108
- var ctrl, error_1;
109
- return tslib_1.__generator(this, function (_a) {
110
- switch (_a.label) {
111
- case 0:
112
- //#region @backendFunc
113
- options = options || {};
114
- index_1.Helpers.log("Killing service \"".concat(this.serviceID, "\"..."));
115
- if (this.processLocalInfoObj.isEmpty) {
116
- index_1.Helpers.log("Service \"".concat(this.serviceID, "\" not started - nothing to kill..."));
117
- return [2 /*return*/];
118
- }
119
- return [4 /*yield*/, this.getControllerForRemoteConnection()];
120
- case 1:
121
- ctrl = _a.sent();
122
- _a.label = 2;
123
- case 2:
124
- _a.trys.push([2, 4, , 5]);
125
- if (!options.dontRemoveConfigFile) {
126
- index_1.Helpers.removeFileIfExists(this.pathToProcessLocalInfoJson);
127
- }
128
- return [4 /*yield*/, ctrl.baseCLiWorkerCommand_kill().received];
129
- case 3:
130
- _a.sent();
131
- index_1.Helpers.log("Service \"".concat(this.serviceID, "\" killed..."));
132
- return [3 /*break*/, 5];
133
- case 4:
134
- error_1 = _a.sent();
135
- index_1.Helpers.log(error_1);
136
- index_1.Helpers.log("Service \"".concat(this.serviceID, "\" not killed... "));
137
- return [3 /*break*/, 5];
138
- case 5: return [2 /*return*/];
139
- }
140
- });
141
- });
142
- };
86
+ async kill(options) {
87
+ //#region @backendFunc
88
+ options = options || {};
89
+ index_1.Helpers.log(`Killing service "${this.serviceID}"...`);
90
+ if (this.processLocalInfoObj.isEmpty) {
91
+ index_1.Helpers.log(`Service "${this.serviceID}" not started - nothing to kill...`);
92
+ return;
93
+ }
94
+ const ctrl = await this.getControllerForRemoteConnection();
95
+ try {
96
+ if (!options.dontRemoveConfigFile) {
97
+ index_1.Helpers.removeFileIfExists(this.pathToProcessLocalInfoJson);
98
+ }
99
+ await ctrl.baseCLiWorkerCommand_kill().received;
100
+ index_1.Helpers.log(`Service "${this.serviceID}" killed...`);
101
+ }
102
+ catch (error) {
103
+ index_1.Helpers.log(error);
104
+ index_1.Helpers.log(`Service "${this.serviceID}" not killed... `);
105
+ }
106
+ //#endregion
107
+ }
143
108
  //#endregion
144
109
  //#region public methods / restart
145
110
  /**
146
111
  * kill detached process and start again
147
112
  * @param options.detached - default true
148
113
  */
149
- BaseCliWorker.prototype.restart = function (options) {
150
- return tslib_1.__awaiter(this, void 0, void 0, function () {
151
- return tslib_1.__generator(this, function (_a) {
152
- switch (_a.label) {
153
- case 0:
154
- options = options || {};
155
- options.detached = tnp_core_1._.isUndefined(options.detached) ? true : false;
156
- return [4 /*yield*/, this.kill()];
157
- case 1:
158
- _a.sent();
159
- if (!options.detached) return [3 /*break*/, 3];
160
- index_1.Helpers.info("Restarting service \"".concat(this.serviceID, "\" in detached mode..."));
161
- return [4 /*yield*/, this.startDetached(options)];
162
- case 2:
163
- _a.sent();
164
- return [3 /*break*/, 5];
165
- case 3:
166
- index_1.Helpers.info("Restarting service \"".concat(this.serviceID, "\" in current process..."));
167
- return [4 /*yield*/, this.startNormallyInCurrentProcess()];
168
- case 4:
169
- _a.sent();
170
- _a.label = 5;
171
- case 5: return [2 /*return*/];
172
- }
173
- });
174
- });
175
- };
114
+ async restart(options) {
115
+ options = options || {};
116
+ options.detached = tnp_core_1._.isUndefined(options.detached) ? true : false;
117
+ await this.kill();
118
+ //longer because os is disposing process previous process
119
+ if (options.detached) {
120
+ index_1.Helpers.info(`Restarting service "${this.serviceID}" in detached mode...`);
121
+ await this.startDetached(options);
122
+ }
123
+ else {
124
+ index_1.Helpers.info(`Restarting service "${this.serviceID}" in current process...`);
125
+ await this.startNormallyInCurrentProcess();
126
+ }
127
+ }
176
128
  //#endregion
177
129
  //#region public methods / cli start
178
130
  /**
179
131
  * only for cli start
180
132
  * @param cliParams on from cli
181
133
  */
182
- BaseCliWorker.prototype.cliStartProcedure = function (cliParams) {
183
- return tslib_1.__awaiter(this, void 0, void 0, function () {
184
- var instance, detached;
185
- return tslib_1.__generator(this, function (_a) {
186
- switch (_a.label) {
187
- case 0:
188
- instance = this;
189
- detached = !!cliParams['detached'] || !!cliParams['detach'];
190
- if (!cliParams['restart']) return [3 /*break*/, 2];
191
- return [4 /*yield*/, instance.restart({
192
- detached: detached,
193
- })];
194
- case 1:
195
- _a.sent();
196
- process.exit(0);
197
- _a.label = 2;
198
- case 2:
199
- if (!cliParams['kill']) return [3 /*break*/, 4];
200
- return [4 /*yield*/, instance.kill()];
201
- case 3:
202
- _a.sent();
203
- process.exit(0);
204
- _a.label = 4;
205
- case 4:
206
- if (!detached) return [3 /*break*/, 6];
207
- return [4 /*yield*/, instance.startDetachedIfNeedsToBeStarted()];
208
- case 5:
209
- _a.sent();
210
- process.exit(0);
211
- return [3 /*break*/, 8];
212
- case 6: return [4 /*yield*/, instance.startNormallyInCurrentProcess()];
213
- case 7:
214
- _a.sent();
215
- _a.label = 8;
216
- case 8: return [2 /*return*/];
217
- }
134
+ async cliStartProcedure(cliParams) {
135
+ const instance = this;
136
+ const detached = !!cliParams['detached'] || !!cliParams['detach'];
137
+ //#region @backendFunc
138
+ if (cliParams['restart']) {
139
+ await instance.restart({
140
+ detached,
218
141
  });
219
- });
220
- };
142
+ process.exit(0);
143
+ }
144
+ if (cliParams['kill']) {
145
+ await instance.kill();
146
+ process.exit(0);
147
+ }
148
+ if (detached) {
149
+ await instance.startDetachedIfNeedsToBeStarted();
150
+ process.exit(0);
151
+ }
152
+ else {
153
+ await instance.startNormallyInCurrentProcess();
154
+ }
155
+ //#endregion
156
+ }
221
157
  //#endregion
222
158
  //#endregion
223
159
  //#region protected methods
224
160
  //#region protected methods / prevent external config change
225
- BaseCliWorker.prototype.preventExternalConfigChange = function () {
226
- var _this = this;
161
+ preventExternalConfigChange() {
227
162
  //#region @backendFunc
228
- index_1.Helpers.info("watching: ".concat(this.pathToProcessLocalInfoJson));
229
- var currentConfig = this.processLocalInfoObj;
230
- tnp_core_1.chokidar.watch(this.pathToProcessLocalInfoJson).on('change', function () {
231
- index_1.Helpers.log("Service data changed...");
232
- if (!_this.processLocalInfoObj.isEquals(currentConfig)) {
233
- index_1.Helpers.error("Service config data externally changed... killing service", false, true);
163
+ index_1.Helpers.info(`watching: ${this.pathToProcessLocalInfoJson}`);
164
+ const currentConfig = this.processLocalInfoObj;
165
+ tnp_core_1.chokidar.watch(this.pathToProcessLocalInfoJson).on('change', () => {
166
+ index_1.Helpers.log(`Service data changed...`);
167
+ if (!this.processLocalInfoObj.isEquals(currentConfig)) {
168
+ index_1.Helpers.error(`Service config data externally changed... killing service`, false, true);
234
169
  }
235
170
  });
236
171
  //#endregion
237
- };
172
+ }
238
173
  //#endregion
239
174
  //#region protected methods / prevent start if already started
240
- BaseCliWorker.prototype.preventStartIfAlreadyStarted = function () {
241
- return tslib_1.__awaiter(this, void 0, void 0, function () {
242
- var isHealthy, error_2;
243
- return tslib_1.__generator(this, function (_a) {
244
- switch (_a.label) {
245
- case 0:
246
- _a.trys.push([0, 2, , 3]);
247
- return [4 /*yield*/, this.isServiceHealthy({
248
- healthCheckRequestTrys: 2, // check only twice
249
- })];
250
- case 1:
251
- isHealthy = _a.sent();
252
- if (isHealthy) {
253
- index_1.Helpers.error("Service already started on port ".concat(this.processLocalInfoObj.port, " !"), false, true);
254
- }
255
- return [3 /*break*/, 3];
256
- case 2:
257
- error_2 = _a.sent();
258
- return [3 /*break*/, 3];
259
- case 3: return [2 /*return*/];
260
- }
175
+ async preventStartIfAlreadyStarted() {
176
+ //#region @backendFunc
177
+ try {
178
+ const isHealthy = await this.isServiceHealthy({
179
+ healthCheckRequestTrys: 2, // check only twice
261
180
  });
262
- });
263
- };
181
+ if (isHealthy) {
182
+ index_1.Helpers.error(`Service already started on port ${this.processLocalInfoObj.port} !`, false, true);
183
+ }
184
+ }
185
+ catch (error) { }
186
+ //#endregion
187
+ }
264
188
  //#endregion
265
189
  //#region protected methods / prevent start if already started
266
- BaseCliWorker.prototype.killWorkerWithLowerVersion = function () {
267
- return tslib_1.__awaiter(this, void 0, void 0, function () {
268
- var ctrl, req, isUpToDate, error_3;
269
- return tslib_1.__generator(this, function (_a) {
270
- switch (_a.label) {
271
- case 0:
272
- _a.trys.push([0, 6, , 7]);
273
- return [4 /*yield*/, this.getControllerForRemoteConnection()];
274
- case 1:
275
- ctrl = _a.sent();
276
- index_1.Helpers.log("Checking if current working version is up to date...");
277
- return [4 /*yield*/, ctrl.baseCLiWorkerCommand_hasUpToDateVersion(tnp_core_1._.merge(this.processLocalInfoObj, {
278
- version: this.serviceVersion,
279
- })).received];
280
- case 2:
281
- req = _a.sent();
282
- isUpToDate = req.body.booleanValue;
283
- if (!!isUpToDate) return [3 /*break*/, 5];
284
- index_1.Helpers.info("Killing service with lower version...");
285
- return [4 /*yield*/, this.kill({
286
- dontRemoveConfigFile: true,
287
- })];
288
- case 3:
289
- _a.sent();
290
- return [4 /*yield*/, index_1.Helpers.wait(1)];
291
- case 4:
292
- _a.sent();
293
- _a.label = 5;
294
- case 5: return [3 /*break*/, 7];
295
- case 6:
296
- error_3 = _a.sent();
297
- return [3 /*break*/, 7];
298
- case 7: return [2 /*return*/];
299
- }
300
- });
301
- });
302
- };
190
+ async killWorkerWithLowerVersion() {
191
+ //#region @backendFunc
192
+ try {
193
+ const ctrl = await this.getControllerForRemoteConnection();
194
+ index_1.Helpers.log(`Checking if current working version is up to date...`);
195
+ // console.log('this.processLocalInfoObj', this.processLocalInfoObj);
196
+ const req = await ctrl.baseCLiWorkerCommand_hasUpToDateVersion(tnp_core_1._.merge(this.processLocalInfoObj, {
197
+ version: this.serviceVersion,
198
+ })).received;
199
+ const isUpToDate = req.body.booleanValue;
200
+ if (!isUpToDate) {
201
+ index_1.Helpers.info(`Killing service with lower version...`);
202
+ await this.kill({
203
+ dontRemoveConfigFile: true,
204
+ });
205
+ await index_1.Helpers.wait(1);
206
+ }
207
+ }
208
+ catch (error) { }
209
+ //#endregion
210
+ }
303
211
  //#endregion
304
212
  //#region protected methods / is service healthy
305
213
  /**
@@ -307,437 +215,321 @@ var BaseCliWorker = /** @class */ (function () {
307
215
  * - infinite check when when detached process finished starting
308
216
  * - quick check if service is healthy / already started
309
217
  */
310
- BaseCliWorker.prototype.isServiceHealthy = function (options) {
311
- return tslib_1.__awaiter(this, void 0, void 0, function () {
312
- var healthCheckRequestTrys, i, workerIsStarting, isWaitingNotCheckingWhen, ctrl, req, isHealthy, error_4;
313
- return tslib_1.__generator(this, function (_a) {
314
- switch (_a.label) {
315
- case 0:
316
- //#region @backendFunc
317
- options = options || {};
318
- healthCheckRequestTrys = options.healthCheckRequestTrys || 1;
319
- i = 0;
320
- _a.label = 1;
321
- case 1:
322
- if (!true) return [3 /*break*/, 3];
323
- i++;
324
- index_1.Helpers.log("Checking if service \"".concat(this.serviceID, "\" is starting..."));
325
- workerIsStarting = !!this.processLocalInfoObj.startTimestamp;
326
- if (!workerIsStarting) {
327
- // initialized worker does not have startTimestamp
328
- return [3 /*break*/, 3];
329
- }
330
- if (i > WORKER_INIT_START_TIME_LIMIT) {
331
- return [2 /*return*/, false];
332
- }
333
- return [4 /*yield*/, index_1.Helpers.wait(1)];
334
- case 2:
335
- _a.sent();
336
- return [3 /*break*/, 1];
337
- case 3:
338
- i = 0;
339
- isWaitingNotCheckingWhen = 10;
340
- _a.label = 4;
341
- case 4:
342
- if (!true) return [3 /*break*/, 16];
343
- i++;
344
- _a.label = 5;
345
- case 5:
346
- _a.trys.push([5, 11, , 15]);
347
- // const isWaitingNotChecking = i >= isWaitingNotCheckingWhen;
348
- // TODO: check why this is may not work
349
- if (isWaitingNotCheckingWhen === i) {
350
- index_1.Helpers.info("Waiting for service \"".concat(this.serviceID, "\" to start..."));
351
- }
352
- else {
353
- index_1.Helpers.log("Checking if service \"".concat(this.serviceID, "\" is healthy..."));
354
- }
355
- return [4 /*yield*/, this.getControllerForRemoteConnection()];
356
- case 6:
357
- ctrl = _a.sent();
358
- index_1.Helpers.log("Sending is healthy request...");
359
- return [4 /*yield*/, ctrl.baseCLiWorkerCommand_isHealthy(this.processLocalInfoObj).received];
360
- case 7:
361
- req = _a.sent();
362
- isHealthy = req.body.booleanValue;
363
- // console.log('isHealthy', { isHealthy });
364
- if (isHealthy) {
365
- index_1.Helpers.log("Service \"".concat(this.serviceID, "\" is healthy (response is true)..."));
366
- }
367
- else {
368
- index_1.Helpers.log("Service \"".concat(this.serviceID, "\" is not healthy (response is false)..."));
369
- }
370
- if (!(isHealthy || i === healthCheckRequestTrys)) return [3 /*break*/, 8];
371
- return [2 /*return*/, isHealthy];
372
- case 8:
373
- index_1.Helpers.log('Trying again...');
374
- return [4 /*yield*/, index_1.Helpers.wait(1)];
375
- case 9:
376
- _a.sent();
377
- return [3 /*break*/, 4];
378
- case 10: return [3 /*break*/, 15];
379
- case 11:
380
- error_4 = _a.sent();
381
- if (i >= isWaitingNotCheckingWhen && (error_4 === null || error_4 === void 0 ? void 0 : error_4.message)) {
382
- console.error(error_4.message);
383
- }
384
- index_1.Helpers.log("Service \"".concat(this.serviceID, "\" is not healthy (can't check health)..."));
385
- if (!(i === healthCheckRequestTrys)) return [3 /*break*/, 12];
386
- return [2 /*return*/, false];
387
- case 12:
388
- index_1.Helpers.log('Trying again...');
389
- return [4 /*yield*/, index_1.Helpers.wait(1)];
390
- case 13:
391
- _a.sent();
392
- return [3 /*break*/, 4];
393
- case 14: return [3 /*break*/, 15];
394
- case 15: return [3 /*break*/, 4];
395
- case 16: return [2 /*return*/];
218
+ async isServiceHealthy(options) {
219
+ //#region @backendFunc
220
+ options = options || {};
221
+ const healthCheckRequestTrys = options.healthCheckRequestTrys || 1;
222
+ let i = 0; // 15 seconds to start worker
223
+ while (true) {
224
+ i++;
225
+ index_1.Helpers.log(`Checking if service "${this.serviceID}" is starting...`);
226
+ const workerIsStarting = !!this.processLocalInfoObj.startTimestamp;
227
+ if (!workerIsStarting) {
228
+ // initialized worker does not have startTimestamp
229
+ break;
230
+ }
231
+ if (i > WORKER_INIT_START_TIME_LIMIT) {
232
+ return false;
233
+ }
234
+ await index_1.Helpers.wait(1);
235
+ }
236
+ i = 0;
237
+ const isWaitingNotCheckingWhen = 10;
238
+ while (true) {
239
+ i++;
240
+ try {
241
+ // const isWaitingNotChecking = i >= isWaitingNotCheckingWhen;
242
+ // TODO: check why this is may not work
243
+ if (isWaitingNotCheckingWhen === i) {
244
+ index_1.Helpers.info(`Waiting for service "${this.serviceID}" to start...`);
396
245
  }
397
- });
398
- });
399
- };
246
+ else {
247
+ index_1.Helpers.log(`Checking if service "${this.serviceID}" is healthy...`);
248
+ }
249
+ const ctrl = await this.getControllerForRemoteConnection();
250
+ index_1.Helpers.log(`Sending is healthy request...`);
251
+ // console.log('this.processLocalInfoObj', this.processLocalInfoObj);
252
+ const req = await ctrl.baseCLiWorkerCommand_isHealthy(this.processLocalInfoObj).received;
253
+ const isHealthy = req.body.booleanValue;
254
+ // console.log('isHealthy', { isHealthy });
255
+ if (isHealthy) {
256
+ index_1.Helpers.log(`Service "${this.serviceID}" is healthy (response is true)...`);
257
+ }
258
+ else {
259
+ index_1.Helpers.log(`Service "${this.serviceID}" is not healthy (response is false)...`);
260
+ }
261
+ if (isHealthy || i === healthCheckRequestTrys) {
262
+ return isHealthy;
263
+ }
264
+ else {
265
+ index_1.Helpers.log('Trying again...');
266
+ await index_1.Helpers.wait(1);
267
+ continue;
268
+ }
269
+ }
270
+ catch (error) {
271
+ if (i >= isWaitingNotCheckingWhen && error?.message) {
272
+ console.error(error.message);
273
+ }
274
+ index_1.Helpers.log(`Service "${this.serviceID}" is not healthy (can't check health)...`);
275
+ if (i === healthCheckRequestTrys) {
276
+ return false;
277
+ }
278
+ else {
279
+ index_1.Helpers.log('Trying again...');
280
+ await index_1.Helpers.wait(1);
281
+ continue;
282
+ }
283
+ }
284
+ }
285
+ //#endregion
286
+ }
400
287
  //#endregion
401
288
  //#region protected methods / start detached
402
289
  /**
403
290
  * start if not started detached process
404
291
  */
405
- BaseCliWorker.prototype.startDetached = function (options) {
406
- return tslib_1.__awaiter(this, void 0, void 0, function () {
407
- var isServiceHealthy;
408
- return tslib_1.__generator(this, function (_a) {
409
- switch (_a.label) {
410
- case 0:
411
- //#region @backendFunc
412
- options = options || {};
413
- index_1.Helpers.log("Starting detached command in new terminal \"".concat(tnp_core_1.chalk.bold(this.startCommand), "\"..."));
414
- if (!options.useCurrentWindowForDetach) return [3 /*break*/, 2];
415
- return [4 /*yield*/, tnp_core_1.UtilsProcess.startAsyncChildProcessCommandUntil(this.startCommand, {
416
- untilOptions: {
417
- stdout: [this.SPECIAL_WORKER_READY_MESSAGE],
418
- stderr: [this.SPECIAL_WORKER_READY_MESSAGE],
419
- },
420
- })];
421
- case 1:
422
- _a.sent();
423
- return [3 /*break*/, 4];
424
- case 2: return [4 /*yield*/, tnp_core_1.UtilsProcess.startInNewTerminalWindow(this.startCommand)];
425
- case 3:
426
- _a.sent();
427
- _a.label = 4;
428
- case 4:
429
- index_1.Helpers.log("Starting detached service \"".concat(tnp_core_1.chalk.bold(this.serviceID), "\" - waiting until healthy..."));
430
- return [4 /*yield*/, this.isServiceHealthy({
431
- healthCheckRequestTrys: Infinity, // wait infinity until started
432
- })];
433
- case 5:
434
- isServiceHealthy = _a.sent();
435
- if (!isServiceHealthy) {
436
- index_1.Helpers.throw("Not able to start service \"".concat(this.serviceID, "\"..."));
437
- return [2 /*return*/];
438
- }
439
- index_1.Helpers.log("Healthy detached service \"".concat(tnp_core_1.chalk.bold(this.serviceID), "\" started."));
440
- return [2 /*return*/];
441
- }
292
+ async startDetached(options) {
293
+ //#region @backendFunc
294
+ options = options || {};
295
+ index_1.Helpers.log(`Starting detached command in new terminal "${tnp_core_1.chalk.bold(this.startCommand)}"...`);
296
+ if (options.useCurrentWindowForDetach) {
297
+ await tnp_core_1.UtilsProcess.startAsyncChildProcessCommandUntil(this.startCommand, {
298
+ untilOptions: {
299
+ stdout: [this.SPECIAL_WORKER_READY_MESSAGE],
300
+ stderr: [this.SPECIAL_WORKER_READY_MESSAGE],
301
+ },
442
302
  });
303
+ }
304
+ else {
305
+ await tnp_core_1.UtilsProcess.startInNewTerminalWindow(this.startCommand);
306
+ }
307
+ index_1.Helpers.log(`Starting detached service "${tnp_core_1.chalk.bold(this.serviceID)}" - waiting until healthy...`);
308
+ const isServiceHealthy = await this.isServiceHealthy({
309
+ healthCheckRequestTrys: Infinity, // wait infinity until started
443
310
  });
444
- };
311
+ if (!isServiceHealthy) {
312
+ index_1.Helpers.throw(`Not able to start service "${this.serviceID}"...`);
313
+ return;
314
+ }
315
+ index_1.Helpers.log(`Healthy detached service "${tnp_core_1.chalk.bold(this.serviceID)}" started.`);
316
+ //#endregion
317
+ }
445
318
  //#endregion
446
319
  //#region protected methods / text for header
447
- BaseCliWorker.prototype.headerText = function () {
448
- return tslib_1.__awaiter(this, void 0, void 0, function () {
449
- return tslib_1.__generator(this, function (_a) {
450
- return [2 /*return*/, tnp_core_1._.startCase(this.serviceID)];
451
- });
452
- });
453
- };
320
+ async headerText() {
321
+ return tnp_core_1._.startCase(this.serviceID);
322
+ }
454
323
  //#endregion
455
324
  //#region protected methods / text header style
456
- BaseCliWorker.prototype.textHeaderStyle = function () {
325
+ textHeaderStyle() {
457
326
  return 'block';
458
- };
327
+ }
459
328
  //#endregion
460
329
  //#region protected methods / header text align
461
- BaseCliWorker.prototype.headerTextAlign = function () {
330
+ headerTextAlign() {
462
331
  return 'left';
463
- };
332
+ }
464
333
  //#endregion
465
334
  //#region protected methods / header
466
335
  /**
467
336
  * override whole terminal header
468
337
  */
469
- BaseCliWorker.prototype.header = function () {
470
- return tslib_1.__awaiter(this, void 0, void 0, function () {
471
- var cfonts, output, _a, _b;
472
- return tslib_1.__generator(this, function (_c) {
473
- switch (_c.label) {
474
- case 0:
475
- cfonts = require('cfonts');
476
- _b = (_a = cfonts).render;
477
- return [4 /*yield*/, this.headerText()];
478
- case 1:
479
- output = _b.apply(_a, [_c.sent(), {
480
- font: this.textHeaderStyle(),
481
- align: this.headerTextAlign(),
482
- colors: ['system'],
483
- background: 'transparent',
484
- letterSpacing: 1,
485
- lineHeight: 1,
486
- space: true,
487
- maxLength: '0',
488
- gradient: false,
489
- independentGradient: false,
490
- transitionGradient: false,
491
- env: 'node',
492
- }]);
493
- console.log(output.string);
494
- return [2 /*return*/];
495
- }
496
- });
338
+ async header() {
339
+ //#region @backendFunc
340
+ const cfonts = require('cfonts');
341
+ const output = cfonts.render(await this.headerText(), {
342
+ font: this.textHeaderStyle(),
343
+ align: this.headerTextAlign(),
344
+ colors: ['system'],
345
+ background: 'transparent',
346
+ letterSpacing: 1,
347
+ lineHeight: 1,
348
+ space: true,
349
+ maxLength: '0',
350
+ gradient: false,
351
+ independentGradient: false,
352
+ transitionGradient: false,
353
+ env: 'node',
497
354
  });
498
- };
355
+ console.log(output.string);
356
+ //#endregion
357
+ }
499
358
  //#endregion
500
359
  //#region protected methods / info message below header
501
- BaseCliWorker.prototype.infoMessageBelowHeader = function () {
502
- return tslib_1.__awaiter(this, void 0, void 0, function () {
503
- var _a, _b;
504
- return tslib_1.__generator(this, function (_c) {
505
- //#region @backendFunc
506
- index_1.Helpers.info("\n\n Service ".concat(tnp_core_1.chalk.bold.red(this.serviceID)) +
507
- " (version: ".concat(this.serviceVersion, ") 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 "));
508
- return [2 /*return*/];
509
- });
510
- });
511
- };
512
- Object.defineProperty(BaseCliWorker.prototype, "backAction", {
513
- //#endregion
514
- //#region protected methods / get back action
515
- get: function () {
516
- return {
517
- back: {
518
- name: 'Back',
519
- },
520
- };
521
- },
522
- enumerable: false,
523
- configurable: true
524
- });
525
- Object.defineProperty(BaseCliWorker.prototype, "chooseAction", {
360
+ async infoMessageBelowHeader() {
361
+ //#region @backendFunc
362
+ index_1.Helpers.info(`
363
+
364
+ Service ${tnp_core_1.chalk.bold.red(this.serviceID)}` +
365
+ ` (version: ${this.serviceVersion}) started..
366
+ Check info here http://localhost:${tnp_core_1.chalk.bold(this.processLocalInfoObj?.port?.toString())}/${'info'}
367
+
368
+ `);
526
369
  //#endregion
527
- //#region protected methods / choose action
528
- get: function () {
529
- var _this = this;
530
- return {
531
- emptyAction: {
532
- name: ' -- choose any action below --',
533
- action: function () { return tslib_1.__awaiter(_this, void 0, void 0, function () { return tslib_1.__generator(this, function (_a) {
534
- return [2 /*return*/];
535
- }); }); },
536
- },
537
- };
538
- },
539
- enumerable: false,
540
- configurable: true
541
- });
370
+ }
371
+ //#endregion
372
+ //#region protected methods / get back action
373
+ get backAction() {
374
+ return {
375
+ back: {
376
+ name: 'Back',
377
+ },
378
+ };
379
+ }
380
+ //#endregion
381
+ //#region protected methods / choose action
382
+ get chooseAction() {
383
+ return {
384
+ emptyAction: {
385
+ name: ' -- choose any action below --',
386
+ action: async () => { },
387
+ },
388
+ };
389
+ }
542
390
  //#endregion
543
391
  //#region protected methods / display special worker ready message
544
- BaseCliWorker.prototype.displaySpecialWorkerReadyMessage = function () {
392
+ displaySpecialWorkerReadyMessage() {
545
393
  console.log(this.SPECIAL_WORKER_READY_MESSAGE);
546
- };
394
+ }
547
395
  //#endregion
548
396
  //#region protected methods / worker terminal actions
549
- BaseCliWorker.prototype.getWorkerTerminalActions = function (options) {
550
- var _this = this;
397
+ getWorkerTerminalActions(options) {
551
398
  //#region @backendFunc
552
399
  options = options || {};
553
400
  options.chooseAction = tnp_core_1._.isBoolean(options.chooseAction)
554
401
  ? options.chooseAction
555
402
  : true;
556
- return tslib_1.__assign(tslib_1.__assign({}, (options.chooseAction ? this.chooseAction : {})), { openBrowser: {
403
+ return {
404
+ ...(options.chooseAction ? this.chooseAction : {}),
405
+ openBrowser: {
557
406
  name: 'Open browser with service info',
558
- action: function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
559
- var openInBrowser;
560
- return tslib_1.__generator(this, function (_a) {
561
- openInBrowser = require('open');
562
- openInBrowser("http://localhost:".concat(this.processLocalInfoObj.port, "/info"));
563
- return [2 /*return*/];
564
- });
565
- }); },
566
- }, exit: {
407
+ action: async () => {
408
+ const openInBrowser = require('open');
409
+ openInBrowser(`http://localhost:${this.processLocalInfoObj.port}/info`);
410
+ },
411
+ },
412
+ exit: {
567
413
  name: options.exitIsOnlyReturn
568
414
  ? '< Return to previous menu'
569
- : "Shut down service",
570
- action: function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
571
- return tslib_1.__generator(this, function (_a) {
572
- switch (_a.label) {
573
- case 0:
574
- if (options.exitIsOnlyReturn) {
575
- return [2 /*return*/, true]; // false will keep loop running
576
- }
577
- return [4 /*yield*/, tnp_core_1.UtilsTerminal.confirm({
578
- defaultValue: false,
579
- message: 'Are you sure you want to shut down service?',
580
- })];
581
- case 1:
582
- if (!_a.sent()) return [3 /*break*/, 3];
583
- return [4 /*yield*/, this.kill()];
584
- case 2:
585
- _a.sent();
586
- process.exit(0);
587
- _a.label = 3;
588
- case 3: return [2 /*return*/];
589
- }
590
- });
591
- }); },
592
- } });
415
+ : `Shut down service`,
416
+ action: async () => {
417
+ if (options.exitIsOnlyReturn) {
418
+ return true; // false will keep loop running
419
+ }
420
+ if (await tnp_core_1.UtilsTerminal.confirm({
421
+ defaultValue: false,
422
+ message: 'Are you sure you want to shut down service?',
423
+ })) {
424
+ await this.kill();
425
+ process.exit(0);
426
+ }
427
+ },
428
+ },
429
+ };
593
430
  //#endregion
594
- };
431
+ }
595
432
  //#endregion
596
433
  //#region protected methods / info screen
597
- BaseCliWorker.prototype.infoScreen = function (options) {
598
- return tslib_1.__awaiter(this, void 0, void 0, function () {
599
- var choices, choice, action, result;
600
- return tslib_1.__generator(this, function (_a) {
601
- switch (_a.label) {
602
- case 0:
603
- options = options || {};
604
- _a.label = 1;
605
- case 1:
606
- if (!true) return [3 /*break*/, 6];
607
- index_1.Helpers.clearConsole();
608
- return [4 /*yield*/, this.header()];
609
- case 2:
610
- _a.sent();
611
- return [4 /*yield*/, this.infoMessageBelowHeader()];
612
- case 3:
613
- _a.sent();
614
- choices = this.getWorkerTerminalActions(options);
615
- return [4 /*yield*/, tnp_core_1.UtilsTerminal.select({
616
- choices: choices,
617
- question: 'Choose action',
618
- })];
619
- case 4:
620
- choice = _a.sent();
621
- action = choices[choice].action;
622
- return [4 /*yield*/, action()];
623
- case 5:
624
- result = _a.sent();
625
- if (choice === 'exit' && result) {
626
- return [3 /*break*/, 6];
627
- }
628
- return [3 /*break*/, 1];
629
- case 6: return [2 /*return*/];
630
- }
434
+ async infoScreen(options) {
435
+ options = options || {};
436
+ while (true) {
437
+ index_1.Helpers.clearConsole();
438
+ await this.header();
439
+ await this.infoMessageBelowHeader();
440
+ const choices = this.getWorkerTerminalActions(options);
441
+ const choice = await tnp_core_1.UtilsTerminal.select({
442
+ choices,
443
+ question: 'Choose action',
631
444
  });
632
- });
633
- };
445
+ const action = choices[choice].action;
446
+ const result = await action();
447
+ if (choice === 'exit' && result) {
448
+ break;
449
+ }
450
+ }
451
+ }
634
452
  //#endregion
635
453
  //#region protected methods / save process info
636
- BaseCliWorker.prototype.saveProcessInfo = function (processConfig) {
454
+ saveProcessInfo(processConfig) {
637
455
  //#region @backendFunc
638
456
  processConfig = processConfig || {};
639
457
  if (index_1.Helpers.exists(this.pathToProcessLocalInfoJson)) {
640
- var jsonConfig = index_1.Helpers.readJson(this.pathToProcessLocalInfoJson);
458
+ const jsonConfig = index_1.Helpers.readJson(this.pathToProcessLocalInfoJson);
641
459
  if (tnp_core_1._.isObject(jsonConfig) && Object.keys(jsonConfig).length > 0) {
642
460
  processConfig = tnp_core_1._.merge(jsonConfig, processConfig);
643
461
  }
644
462
  }
645
- index_1.Helpers.log("Saving process info to \"".concat(this.pathToProcessLocalInfoJson, "\"..."));
463
+ index_1.Helpers.log(`Saving process info to "${this.pathToProcessLocalInfoJson}"...`);
646
464
  index_1.Helpers.log(processConfig);
647
465
  index_1.Helpers.writeJson(this.pathToProcessLocalInfoJson, processConfig);
648
466
  //#endregion
649
- };
467
+ }
650
468
  //#endregion
651
469
  //#region protected methods / initialize worker
652
- BaseCliWorker.prototype.initializeWorkerMetadata = function () {
653
- return tslib_1.__awaiter(this, void 0, void 0, function () {
654
- var portControllerInstance, error_5;
655
- return tslib_1.__generator(this, function (_a) {
656
- switch (_a.label) {
657
- case 0:
658
- _a.trys.push([0, 3, , 4]);
659
- return [4 /*yield*/, this.getControllerForRemoteConnection()];
660
- case 1:
661
- portControllerInstance = _a.sent();
662
- return [4 /*yield*/, portControllerInstance.baseCLiWorkerCommand_initializeMetadata(this.serviceID, this.serviceVersion).received];
663
- case 2:
664
- _a.sent();
665
- this.saveProcessInfo({
666
- startTimestamp: null,
667
- });
668
- return [3 /*break*/, 4];
669
- case 3:
670
- error_5 = _a.sent();
671
- this.saveProcessInfo({
672
- startTimestamp: null,
673
- });
674
- index_1.Helpers.throw(error_5);
675
- return [3 /*break*/, 4];
676
- case 4: return [2 /*return*/];
677
- }
470
+ async initializeWorkerMetadata() {
471
+ //#region @backendFunc
472
+ try {
473
+ const portControllerInstance = await this.getControllerForRemoteConnection();
474
+ await portControllerInstance.baseCLiWorkerCommand_initializeMetadata(this.serviceID, this.serviceVersion).received;
475
+ this.saveProcessInfo({
476
+ startTimestamp: null,
678
477
  });
679
- });
680
- };
478
+ }
479
+ catch (error) {
480
+ this.saveProcessInfo({
481
+ startTimestamp: null,
482
+ });
483
+ index_1.Helpers.throw(error);
484
+ }
485
+ // process.on('SIGINT', () => {
486
+ // this.kill();
487
+ // });
488
+ //#endregion
489
+ }
681
490
  //#endregion
682
491
  //#region protected methods / wait for process port saved to disk
683
- BaseCliWorker.prototype.waitForProcessPortSavedToDisk = function () {
684
- return tslib_1.__awaiter(this, void 0, void 0, function () {
685
- var portForRemote, MAX_TRYS, i;
686
- return tslib_1.__generator(this, function (_a) {
687
- switch (_a.label) {
688
- case 0:
689
- portForRemote = this.processLocalInfoObj.port;
690
- MAX_TRYS = 10;
691
- i = 0;
692
- if (!!portForRemote) return [3 /*break*/, 5];
693
- _a.label = 1;
694
- case 1:
695
- if (!!portForRemote) return [3 /*break*/, 5];
696
- i++;
697
- portForRemote = this.processLocalInfoObj.port;
698
- if (!portForRemote) return [3 /*break*/, 2];
699
- return [3 /*break*/, 5];
700
- case 2:
701
- index_1.Helpers.log("Waiting for port to be available...");
702
- if (i > MAX_TRYS) {
703
- index_1.Helpers.throw("Can't get port for remote connection.." +
704
- " worker process did not start correctly");
705
- }
706
- return [4 /*yield*/, index_1.Helpers.wait(1)];
707
- case 3:
708
- _a.sent();
709
- _a.label = 4;
710
- case 4: return [3 /*break*/, 1];
711
- case 5: return [2 /*return*/];
492
+ async waitForProcessPortSavedToDisk() {
493
+ //#region @backendFunc
494
+ let portForRemote = this.processLocalInfoObj.port;
495
+ const MAX_TRYS = 10;
496
+ let i = 0;
497
+ if (!portForRemote) {
498
+ while (!portForRemote) {
499
+ i++;
500
+ portForRemote = this.processLocalInfoObj.port;
501
+ if (portForRemote) {
502
+ break;
712
503
  }
713
- });
714
- });
715
- };
504
+ else {
505
+ index_1.Helpers.log(`Waiting for port to be available...`);
506
+ if (i > MAX_TRYS) {
507
+ index_1.Helpers.throw(`Can't get port for remote connection..` +
508
+ ` worker process did not start correctly`);
509
+ }
510
+ await index_1.Helpers.wait(1);
511
+ }
512
+ }
513
+ }
514
+ //#endregion
515
+ }
716
516
  //#endregion
717
517
  //#region protected methods / get free port
718
- BaseCliWorker.prototype.getServicePort = function () {
719
- return tslib_1.__awaiter(this, void 0, void 0, function () {
720
- var port;
721
- return tslib_1.__generator(this, function (_a) {
722
- switch (_a.label) {
723
- case 0: return [4 /*yield*/, tnp_core_1.Utils.getFreePort({
724
- startFrom: START_PORT_FOR_SERVICES,
725
- })];
726
- case 1:
727
- port = _a.sent();
728
- this.saveProcessInfo({
729
- port: port,
730
- serviceID: this.serviceID,
731
- pid: process.pid,
732
- startTimestamp: Date.now(),
733
- version: this.serviceVersion,
734
- });
735
- return [2 /*return*/, port];
736
- }
737
- });
518
+ async getServicePort() {
519
+ //#region @backendFunc
520
+ const port = await tnp_core_1.Utils.getFreePort({
521
+ startFrom: START_PORT_FOR_SERVICES,
522
+ });
523
+ this.saveProcessInfo({
524
+ port,
525
+ serviceID: this.serviceID,
526
+ pid: process.pid,
527
+ startTimestamp: Date.now(),
528
+ version: this.serviceVersion,
738
529
  });
739
- };
740
- return BaseCliWorker;
741
- }());
530
+ return port;
531
+ //#endregion
532
+ }
533
+ }
742
534
  exports.BaseCliWorker = BaseCliWorker;
743
535
  //# sourceMappingURL=base-cli-worker.js.map