tnp-helpers 19.0.65 → 19.0.67

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 (211) hide show
  1. package/browser/README.md +24 -24
  2. package/browser/fesm2022/tnp-helpers.mjs +3459 -320
  3. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  4. package/browser/lib/base/classes/base-cli-worker/base-cli-worker-config.d.ts +4 -0
  5. package/browser/lib/base/classes/base-cli-worker/base-cli-worker-controller.d.ts +3 -4
  6. package/browser/lib/base/classes/base-cli-worker/base-cli-worker-terminal-ui.d.ts +4 -3
  7. package/browser/lib/base/classes/base-cli-worker/base-cli-worker.d.ts +86 -35
  8. package/browser/lib/base/classes/base-cli-worker/base-cli-worker.models.d.ts +45 -0
  9. package/browser/lib/base/classes/base-cli-worker/base-cli-worker.utils.d.ts +6 -0
  10. package/browser/lib/base/classes/base-cli-worker/index.d.ts +3 -1
  11. package/browser/lib/base/classes/base-docker.d.ts +4 -7
  12. package/browser/lib/base/classes/base-git.d.ts +2 -0
  13. package/browser/lib/base/classes/base-global-command-line.d.ts +265 -0
  14. package/browser/lib/base/classes/base-node-modules.d.ts +1 -0
  15. package/browser/lib/base/classes/base-npm-helpers.d.ts +1 -0
  16. package/browser/lib/base/classes/base-release-process.d.ts +3 -1
  17. package/browser/lib/base/classes/base-vscode.d.ts +1 -1
  18. package/browser/lib/base/classes/index.d.ts +2 -1
  19. package/browser/lib/base/gh-temp-code.d.ts +17 -0
  20. package/browser/lib/build-info._auto-generated_.d.ts +1 -1
  21. package/browser/lib/helpers/helpers.d.ts +0 -5
  22. package/browser/lib/utils.d.ts +24 -35
  23. package/browser/package.json +1 -1
  24. package/lib/base/classes/base-cli-worker/base-cli-worker-config.d.ts +4 -0
  25. package/lib/base/classes/base-cli-worker/base-cli-worker-config.js +4 -0
  26. package/lib/base/classes/base-cli-worker/base-cli-worker-config.js.map +1 -1
  27. package/lib/base/classes/base-cli-worker/base-cli-worker-controller.d.ts +3 -4
  28. package/lib/base/classes/base-cli-worker/base-cli-worker-controller.js +28 -15
  29. package/lib/base/classes/base-cli-worker/base-cli-worker-controller.js.map +1 -1
  30. package/lib/base/classes/base-cli-worker/base-cli-worker-terminal-ui.d.ts +4 -3
  31. package/lib/base/classes/base-cli-worker/base-cli-worker-terminal-ui.js +28 -9
  32. package/lib/base/classes/base-cli-worker/base-cli-worker-terminal-ui.js.map +1 -1
  33. package/lib/base/classes/base-cli-worker/base-cli-worker.d.ts +84 -33
  34. package/lib/base/classes/base-cli-worker/base-cli-worker.js +375 -209
  35. package/lib/base/classes/base-cli-worker/base-cli-worker.js.map +1 -1
  36. package/lib/base/classes/base-cli-worker/base-cli-worker.models.d.ts +44 -0
  37. package/lib/base/classes/base-cli-worker/base-cli-worker.models.js +35 -0
  38. package/lib/base/classes/base-cli-worker/base-cli-worker.models.js.map +1 -0
  39. package/lib/base/classes/base-cli-worker/base-cli-worker.utils.d.ts +5 -0
  40. package/lib/base/classes/base-cli-worker/base-cli-worker.utils.js +30 -0
  41. package/lib/base/classes/base-cli-worker/base-cli-worker.utils.js.map +1 -0
  42. package/lib/base/classes/base-cli-worker/index.d.ts +2 -0
  43. package/lib/base/classes/base-cli-worker/index.js +2 -0
  44. package/lib/base/classes/base-cli-worker/index.js.map +1 -1
  45. package/lib/base/classes/base-command-line-feature.backend.d.ts +47 -0
  46. package/lib/base/classes/base-command-line-feature.backend.js +147 -0
  47. package/lib/base/classes/base-command-line-feature.backend.js.map +1 -0
  48. package/lib/base/classes/base-docker.d.ts +4 -7
  49. package/lib/base/classes/base-docker.js +12 -18
  50. package/lib/base/classes/base-docker.js.map +1 -1
  51. package/lib/base/classes/base-git.d.ts +2 -0
  52. package/lib/base/classes/base-git.js +29 -9
  53. package/lib/base/classes/base-git.js.map +1 -1
  54. package/lib/base/classes/base-global-command-line.backend.d.ts +14 -1
  55. package/lib/base/classes/base-global-command-line.backend.js +463 -65
  56. package/lib/base/classes/base-global-command-line.backend.js.map +1 -1
  57. package/lib/base/classes/base-global-command-line.d.ts +271 -0
  58. package/lib/base/classes/base-global-command-line.js +2484 -0
  59. package/lib/base/classes/base-global-command-line.js.map +1 -0
  60. package/lib/base/classes/base-ignore-hide.js +4 -0
  61. package/lib/base/classes/base-ignore-hide.js.map +1 -1
  62. package/lib/base/classes/base-node-modules.d.ts +1 -0
  63. package/lib/base/classes/base-node-modules.js +22 -1
  64. package/lib/base/classes/base-node-modules.js.map +1 -1
  65. package/lib/base/classes/base-npm-helpers.d.ts +1 -0
  66. package/lib/base/classes/base-npm-helpers.js +2 -2
  67. package/lib/base/classes/base-npm-helpers.js.map +1 -1
  68. package/lib/base/classes/base-powershell.d.ts +1 -0
  69. package/lib/base/classes/base-powershell.js +13 -0
  70. package/lib/base/classes/base-powershell.js.map +1 -1
  71. package/lib/base/classes/base-process/base-process-api.service.d.ts +7 -0
  72. package/lib/base/classes/base-process/base-process.context.d.ts +19 -0
  73. package/lib/base/classes/base-process/base-process.context.js +22 -0
  74. package/lib/base/classes/base-process/base-process.context.js.map +1 -0
  75. package/lib/base/classes/base-process/base-process.controller.d.ts +17 -0
  76. package/lib/base/classes/base-process/base-process.controller.js +91 -0
  77. package/lib/base/classes/base-process/base-process.controller.js.map +1 -0
  78. package/lib/base/classes/base-process/base-process.d.ts +8 -0
  79. package/lib/base/classes/base-process/base-process.defaults-values.d.ts +2 -0
  80. package/lib/base/classes/base-process/base-process.defaults-values.js +9 -0
  81. package/lib/base/classes/base-process/base-process.defaults-values.js.map +1 -0
  82. package/lib/base/classes/base-process/base-process.js +62 -0
  83. package/lib/base/classes/base-process/base-process.js.map +1 -0
  84. package/lib/base/classes/base-process/base-process.models.d.ts +6 -0
  85. package/lib/base/classes/base-process/base-process.models.js +3 -0
  86. package/lib/base/classes/base-process/base-process.models.js.map +1 -0
  87. package/lib/base/classes/base-process/base-process.provider.d.ts +16 -0
  88. package/lib/base/classes/base-process/base-process.provider.js +69 -0
  89. package/lib/base/classes/base-process/base-process.provider.js.map +1 -0
  90. package/lib/base/classes/base-process/base-process.repository copy.d.ts +8 -0
  91. package/lib/base/classes/base-process/base-process.repository copy.js +32 -0
  92. package/lib/base/classes/base-process/base-process.repository copy.js.map +1 -0
  93. package/lib/base/classes/base-process/base-process.repository.d.ts +8 -0
  94. package/lib/base/classes/base-process/base-process.repository.js +32 -0
  95. package/lib/base/classes/base-process/base-process.repository.js.map +1 -0
  96. package/lib/base/classes/base-process/base-process.terminal-ui.d.ts +11 -0
  97. package/lib/base/classes/base-process/base-process.terminal-ui.js +54 -0
  98. package/lib/base/classes/base-process/base-process.terminal-ui.js.map +1 -0
  99. package/lib/base/classes/base-process/base-process.worker.d.ts +16 -0
  100. package/lib/base/classes/base-process/base-process.worker.js +29 -0
  101. package/lib/base/classes/base-process/base-process.worker.js.map +1 -0
  102. package/lib/base/classes/base-process/index.d.ts +1 -0
  103. package/lib/base/classes/base-process/index.js +22 -0
  104. package/lib/base/classes/base-process/index.js.map +1 -0
  105. package/lib/base/classes/base-process/processes.repository.d.ts +0 -0
  106. package/lib/base/classes/base-process/processes.repository.js +5 -0
  107. package/lib/base/classes/base-process/processes.repository.js.map +1 -0
  108. package/lib/base/classes/base-project-resolver.js +2 -1
  109. package/lib/base/classes/base-project-resolver.js.map +1 -1
  110. package/lib/base/classes/base-project.d.ts +1 -1
  111. package/lib/base/classes/base-project.js +8 -6
  112. package/lib/base/classes/base-project.js.map +1 -1
  113. package/lib/base/classes/base-release-process.d.ts +3 -1
  114. package/lib/base/classes/base-release-process.js +4 -3
  115. package/lib/base/classes/base-release-process.js.map +1 -1
  116. package/lib/base/classes/base-vscode.d.ts +1 -1
  117. package/lib/base/classes/base-vscode.js +9 -1
  118. package/lib/base/classes/base-vscode.js.map +1 -1
  119. package/lib/base/classes/index.d.ts +1 -1
  120. package/lib/base/classes/index.js +2 -4
  121. package/lib/base/classes/index.js.map +1 -1
  122. package/lib/base/tcp-udp-ports/not-assignable-port.entity.js +2 -2
  123. package/lib/base/tcp-udp-ports/ports.entity.d.ts +1 -1
  124. package/lib/base/tcp-udp-ports/tcp-upd-ports-terminal-ui.js +27 -14
  125. package/lib/base/tcp-udp-ports/tcp-upd-ports-terminal-ui.js.map +1 -1
  126. package/lib/build-info._auto-generated_.d.ts +1 -1
  127. package/lib/build-info._auto-generated_.js +1 -1
  128. package/lib/env/env.angular-node-app.d.ts +1 -2
  129. package/lib/env/env.angular-node-app.js +3 -4
  130. package/lib/env/env.angular-node-app.js.map +1 -1
  131. package/lib/env/env.docs-webapp.d.ts +1 -2
  132. package/lib/env/env.docs-webapp.js +3 -4
  133. package/lib/env/env.docs-webapp.js.map +1 -1
  134. package/lib/env/env.electron-app.d.ts +1 -2
  135. package/lib/env/env.electron-app.js +3 -4
  136. package/lib/env/env.electron-app.js.map +1 -1
  137. package/lib/env/env.mobile-app.d.ts +1 -2
  138. package/lib/env/env.mobile-app.js +3 -4
  139. package/lib/env/env.mobile-app.js.map +1 -1
  140. package/lib/env/env.npm-lib-and-cli-tool.d.ts +1 -2
  141. package/lib/env/env.npm-lib-and-cli-tool.js +3 -4
  142. package/lib/env/env.npm-lib-and-cli-tool.js.map +1 -1
  143. package/lib/env/env.vscode-plugin.d.ts +1 -2
  144. package/lib/env/env.vscode-plugin.js +3 -4
  145. package/lib/env/env.vscode-plugin.js.map +1 -1
  146. package/lib/env-backend._auto-generated_.d.ts +34 -0
  147. package/lib/env-backend._auto-generated_.js +38 -0
  148. package/lib/env-backend._auto-generated_.js.map +1 -0
  149. package/lib/env-browser._auto-generated_.d.ts +34 -0
  150. package/lib/env-browser._auto-generated_.js +38 -0
  151. package/lib/env-browser._auto-generated_.js.map +1 -0
  152. package/lib/env.backend.d.ts +34 -0
  153. package/lib/env.backend.js +40 -0
  154. package/lib/env.backend.js.map +1 -0
  155. package/lib/env.browser.d.ts +34 -0
  156. package/lib/helpers/for-backend/helpers-dependencies.backend.d.ts +2 -0
  157. package/lib/helpers/for-backend/helpers-dependencies.backend.js +7 -0
  158. package/lib/helpers/for-backend/helpers-dependencies.backend.js.map +1 -0
  159. package/lib/helpers/for-backend/helpers-file-folders.js +11 -3
  160. package/lib/helpers/for-backend/helpers-file-folders.js.map +1 -1
  161. package/lib/helpers/for-backend/helpers-git.backend.d.ts +1 -0
  162. package/lib/helpers/for-backend/helpers-git.backend.js +46 -17
  163. package/lib/helpers/for-backend/helpers-git.backend.js.map +1 -1
  164. package/lib/helpers/for-browser/angular.helper.js +2 -2
  165. package/lib/helpers/helpers-numbers.js.map +1 -1
  166. package/lib/helpers/helpers.d.ts +0 -8
  167. package/lib/helpers/helpers.js +1 -55
  168. package/lib/helpers/helpers.js.map +1 -1
  169. package/lib/old/base-component.js +2 -2
  170. package/lib/old/base-formly-component.js +2 -2
  171. package/lib/old/dual-component-ctrl.js +2 -2
  172. package/lib/utils.d.ts +24 -35
  173. package/lib/utils.js +165 -105
  174. package/lib/utils.js.map +1 -1
  175. package/lib/validators/validators-firedev.d.ts +3 -0
  176. package/lib/validators/validators-firedev.js +34 -0
  177. package/lib/validators/validators-firedev.js.map +1 -0
  178. package/lib/validators/validators-git.d.ts +3 -0
  179. package/lib/validators/validators-git.js +13 -0
  180. package/lib/validators/validators-git.js.map +1 -0
  181. package/lib/validators/validators-network.d.ts +3 -0
  182. package/lib/validators/validators-network.js +19 -0
  183. package/lib/validators/validators-network.js.map +1 -0
  184. package/lib/validators/validators.d.ts +6 -0
  185. package/lib/validators/validators.js +11 -0
  186. package/lib/validators/validators.js.map +1 -0
  187. package/package.json +1 -1
  188. package/tmp-environment.json +33 -0
  189. package/websql/README.md +24 -24
  190. package/websql/fesm2022/tnp-helpers.mjs +3460 -321
  191. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  192. package/websql/lib/base/classes/base-cli-worker/base-cli-worker-config.d.ts +4 -0
  193. package/websql/lib/base/classes/base-cli-worker/base-cli-worker-controller.d.ts +3 -4
  194. package/websql/lib/base/classes/base-cli-worker/base-cli-worker-terminal-ui.d.ts +4 -3
  195. package/websql/lib/base/classes/base-cli-worker/base-cli-worker.d.ts +86 -35
  196. package/websql/lib/base/classes/base-cli-worker/base-cli-worker.models.d.ts +45 -0
  197. package/websql/lib/base/classes/base-cli-worker/base-cli-worker.utils.d.ts +6 -0
  198. package/websql/lib/base/classes/base-cli-worker/index.d.ts +3 -1
  199. package/websql/lib/base/classes/base-docker.d.ts +4 -7
  200. package/websql/lib/base/classes/base-git.d.ts +2 -0
  201. package/websql/lib/base/classes/base-global-command-line.d.ts +265 -0
  202. package/websql/lib/base/classes/base-node-modules.d.ts +1 -0
  203. package/websql/lib/base/classes/base-npm-helpers.d.ts +1 -0
  204. package/websql/lib/base/classes/base-release-process.d.ts +3 -1
  205. package/websql/lib/base/classes/base-vscode.d.ts +1 -1
  206. package/websql/lib/base/classes/index.d.ts +2 -1
  207. package/websql/lib/base/gh-temp-code.d.ts +17 -0
  208. package/websql/lib/build-info._auto-generated_.d.ts +1 -1
  209. package/websql/lib/helpers/helpers.d.ts +0 -5
  210. package/websql/lib/utils.d.ts +24 -35
  211. package/websql/package.json +1 -1
@@ -18,4 +18,4 @@ export declare const PROJECT_NPM_NAME = "tnp-helpers";
18
18
  /**
19
19
  * Autogenerated by current cli tool. Use *tnp release* to bump version.
20
20
  */
21
- export declare const CURRENT_PACKAGE_VERSION = "19.0.65";
21
+ export declare const CURRENT_PACKAGE_VERSION = "19.0.67";
@@ -59,11 +59,6 @@ export declare class HelpersTaon extends CoreHelpers {
59
59
  uniqArray<T = any>(array: any[], uniqueProperty?: keyof T): T[];
60
60
  slash(pathFromWindowsOrUnixType: string): any;
61
61
  isElevated(): Promise<void>;
62
- /**
63
- * TODO fix this methods
64
- */
65
- localIpAddress(): Promise<any>;
66
- allLocalIpAddresses(): URL[];
67
62
  mesureExectionInMs(description: string, functionToExecute: Function, ...functionArguments: any[]): Promise<number>;
68
63
  mesureExectionInMsSync(description: string, functionToExecute: () => void): number;
69
64
  waitForCondition(conditionFn: (any: any) => boolean, howOfftenCheckInMs?: number): Promise<unknown>;
@@ -1,4 +1,5 @@
1
1
  // @ts-nocheck
2
+ import { ChildProcess, StdioOptions } from 'node:child_process';
2
3
  import type * as ts from 'typescript';
3
4
  export declare namespace UtilsNpm {
4
5
  const isSpecialVersion: (version: string) => boolean;
@@ -192,44 +193,32 @@ export declare namespace UtilsPasswords {
192
193
  const hashPassword: (password: string) => Promise<string>;
193
194
  const verifyPassword: (password: string, stored: string) => Promise<boolean>;
194
195
  }
195
- export declare namespace FilePathMetaData {
196
+ export declare namespace UtilsDocker {
197
+ const DOCKER_LABEL_KEY = "com.docker.compose.project";
198
+ const DOCKER_TAON_PROJECT_LABEL = "com.docker.compose.taon.project=true";
199
+ const cleanImagesAndContainersByDockerLabel: (labelKey: string, labelValue: string) => Promise<void>;
200
+ interface DockerComposeActionOptions {
201
+ composeFileName?: string;
202
+ cwd?: string;
203
+ env?: NodeJS.ProcessEnv;
204
+ skipBuild?: boolean;
205
+ stdio?: StdioOptions;
206
+ useFirstYmlFound?: boolean;
207
+ }
208
+ type DockerComposeActionType = 'up' | 'down';
196
209
  /**
197
- * Embed metadata into filename while preserving the extension.
210
+ * @returns cmd + args array
211
+ * you can use with child_process.spawn
212
+ * const [cmd, ...args] = getDockerComposeActionCommand('up');
213
+ * child.spawn(cmd, args, { ... });
198
214
  *
199
- * Example:
200
- * embedData({ version: "1.2.3", envName: "__" }, "project.zip")
201
- * -> "version|-|1.2.3||--||envName|-|__|||project.zip"
215
+ * @param action 'up' | 'down'
202
216
  */
203
- function embedData<T extends Record<string, any>>(data: T, orgFilename: string, options?: {
204
- skipAddingBasenameAtEnd?: boolean;
205
- }): string;
217
+ const getDockerComposeActionCommand: (action: DockerComposeActionType, options?: Omit<DockerComposeActionOptions, "cwd" | "env" | "stdio" | "useFirstYmlFound">) => string[];
218
+ const getDockerComposeActionChildProcess: (action: DockerComposeActionType, options?: DockerComposeActionOptions) => ChildProcess;
219
+ const removeAllTaonContainersAndImagesFromDocker: () => Promise<void>;
206
220
  /**
207
- * Extract metadata from filename (reverse of embedData).
208
- *
209
- * Example:
210
- * extractData<{ version: string; env: string }>("myfile__version-1.2.3__env-prod.zip")
211
- * -> { version: "1.2.3", env: "prod" }
221
+ * @TODO @REFACTOR use async stuff
212
222
  */
213
- function extractData<T extends Record<string, any>>(filename: string): T;
214
- const getOnlyMetadataString: (filename: string) => string;
215
- }
216
- /**
217
- * Easy way to connect CLI commands to cli class methods.
218
- *
219
- * Example:
220
- * in clic class
221
- * $FirstCli {
222
- *
223
- * @UtilsCliMethod.decorator('doSomething')
224
- * doSomething() {
225
- * console.log('doing something');
226
- * }
227
- * }
228
- *
229
- * UtilsCliMethod.getFrom($FirstCli.prototype.doSomething) // "firstcli:dosomething"
230
- *
231
- */
232
- export declare namespace UtilsCliMethod {
233
- const decorator: (methodName: string) => MethodDecorator;
234
- const getFrom: (ClassPrototypeMethodFnHere: Function, globalMethod?: boolean) => string;
223
+ const linkPodmanAsDockerIfNecessary: () => Promise<void>;
235
224
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tnp-helpers/browser",
3
- "version": "19.0.65",
3
+ "version": "19.0.67",
4
4
  "module": "fesm2022/tnp-helpers.mjs",
5
5
  "typings": "index.d.ts",
6
6
  "exports": {
@@ -1,5 +1,9 @@
1
1
  export declare class BaseCliWorkerConfig {
2
2
  static from(opt: Partial<BaseCliWorkerConfig>): BaseCliWorkerConfig;
3
+ /**
4
+ * path to file where config is stored
5
+ */
6
+ pathToFile: string;
3
7
  /**
4
8
  * port taken by service
5
9
  */
@@ -8,6 +8,10 @@ class BaseCliWorkerConfig {
8
8
  static from(opt) {
9
9
  return lib_1._.merge(new BaseCliWorkerConfig(), opt);
10
10
  }
11
+ /**
12
+ * path to file where config is stored
13
+ */
14
+ pathToFile;
11
15
  /**
12
16
  * port taken by service
13
17
  */
@@ -1 +1 @@
1
- {"version":3,"file":"base-cli-worker-config.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AAAA,mCAA6B;AAC7B,sCAAiC;AAEjC,4BAA4B;AAC5B,MAAa,mBAAmB;IAC9B,MAAM,CAAC,IAAI,CAAC,GAAiC;QAC3C,OAAO,OAAC,CAAC,KAAK,CAAC,IAAI,mBAAmB,EAAE,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,IAAI,CAAS;IACb;;OAEG;IACH,SAAS,CAAS;IAClB;;OAEG;IACH,GAAG,CAAS;IACZ;;;OAGG;IACH,cAAc,CAAS;IACvB;;OAEG;IACH,OAAO,CAAS;IAEhB,iCAAiC,CAAC,KAA0B;QAC1D,sBAAsB;QACtB,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACpC,KAAK,CAAC;QACR,CAAC;QACD,IAAI,CAAC;YACH,OAAO,IAAA,YAAG,EAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;QACD,YAAY;IACd,CAAC;IAED,QAAQ,CAAC,KAA0B;QACjC,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,OAAO,CACL,CAAC,CAAC,IAAI,CAAC,SAAS;YAChB,CAAC,CAAC,IAAI,CAAC,IAAI;YACX,CAAC,CAAC,IAAI,CAAC,GAAG;YACV,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;YAClC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,CACvB,CAAC;IACJ,CAAC;IAED,IAAI,OAAO;QACT,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACpD,CAAC;CACF;AA3DD,kDA2DC;AACD,YAAY"}
1
+ {"version":3,"file":"base-cli-worker-config.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AAAA,mCAA6B;AAC7B,sCAAiC;AAEjC,4BAA4B;AAC5B,MAAa,mBAAmB;IAC9B,MAAM,CAAC,IAAI,CAAC,GAAiC;QAC3C,OAAO,OAAC,CAAC,KAAK,CAAC,IAAI,mBAAmB,EAAE,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,UAAU,CAAS;IACnB;;OAEG;IACH,IAAI,CAAS;IACb;;OAEG;IACH,SAAS,CAAS;IAClB;;OAEG;IACH,GAAG,CAAS;IACZ;;;OAGG;IACH,cAAc,CAAS;IACvB;;OAEG;IACH,OAAO,CAAS;IAEhB,iCAAiC,CAAC,KAA0B;QAC1D,sBAAsB;QACtB,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACpC,KAAK,CAAC;QACR,CAAC;QACD,IAAI,CAAC;YACH,OAAO,IAAA,YAAG,EAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;QACD,YAAY;IACd,CAAC;IAED,QAAQ,CAAC,KAA0B;QACjC,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,OAAO,CACL,CAAC,CAAC,IAAI,CAAC,SAAS;YAChB,CAAC,CAAC,IAAI,CAAC,IAAI;YACX,CAAC,CAAC,IAAI,CAAC,GAAG;YACV,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;YAClC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,CACvB,CAAC;IACJ,CAAC;IAED,IAAI,OAAO;QACT,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACpD,CAAC;CACF;AA/DD,kDA+DC;AACD,YAAY"}
@@ -1,15 +1,14 @@
1
1
  import { Taon } from 'taon';
2
2
  import { BaseCliWorkerConfig } from './base-cli-worker-config';
3
- export declare abstract class BaseCliWorkerController extends Taon.Base
4
- .Controller {
3
+ export declare abstract class BaseCliWorkerController<UPLOAD_FILE_QUERY_PARAMS = {}> extends Taon.Base.Controller<UPLOAD_FILE_QUERY_PARAMS> {
5
4
  /**
6
5
  * service id
7
6
  */
8
7
  private cliWorkerServiceId;
9
8
  private cliWorkerServiceVersion;
10
9
  baseCLiWorkerCommand_initializeMetadata(serviceId: string, serviceVersion: string): Taon.Response<void>;
11
- baseCLiWorkerCommand_kill(): Taon.Response<void>;
12
- info(): Taon.Response<string>;
10
+ baseCLiWorkerCommand_kill(dontRemoveConfigFile?: boolean): Taon.Response<void>;
11
+ info(): Taon.ResponseHtml;
13
12
  baseCLiWorkerCommand_isHealthy(checkingProcessConfig: BaseCliWorkerConfig): Taon.Response<boolean>;
14
13
  baseCLiWorkerCommand_hasUpToDateVersion(checkingProcessConfig: BaseCliWorkerConfig): Taon.Response<boolean>;
15
14
  }
@@ -13,8 +13,8 @@ exports.BaseCliWorkerController = void 0;
13
13
  const lib_1 = require("taon/lib");
14
14
  const lib_2 = require("tnp-core/lib");
15
15
  const base_cli_worker_config_1 = require("./base-cli-worker-config");
16
- let BaseCliWorkerController = class BaseCliWorkerController extends lib_1.Taon.Base
17
- .Controller {
16
+ const base_cli_worker_utils_1 = require("./base-cli-worker.utils");
17
+ let BaseCliWorkerController = class BaseCliWorkerController extends lib_1.Taon.Base.Controller {
18
18
  /**
19
19
  * service id
20
20
  */
@@ -31,14 +31,21 @@ let BaseCliWorkerController = class BaseCliWorkerController extends lib_1.Taon.B
31
31
  }
32
32
  //#endregion
33
33
  //#region api methods / kill
34
- baseCLiWorkerCommand_kill() {
34
+ baseCLiWorkerCommand_kill(dontRemoveConfigFile) {
35
35
  //#region @backendFunc
36
36
  return async () => {
37
37
  console.log(`Killing worker "${this.cliWorkerServiceId}"...`);
38
- setTimeout(() => {
38
+ setTimeout(async () => {
39
+ console.log(`Destroying context worker "${this.cliWorkerServiceId}"...`);
40
+ await this.ctx.destroy();
41
+ if (!dontRemoveConfigFile) {
42
+ lib_2.Helpers.removeFileIfExists(base_cli_worker_utils_1.BaseCliWorkerUtils.getPathToProcessLocalInfoJson(this.cliWorkerServiceId));
43
+ }
39
44
  lib_2.Helpers.clearConsole();
40
- process.exit(0);
41
- }, 1000); // TODO may be change to 0
45
+ setTimeout(() => {
46
+ process.exit(0);
47
+ });
48
+ }); // TODO may be change to 0
42
49
  };
43
50
  //#endregion
44
51
  }
@@ -47,11 +54,17 @@ let BaseCliWorkerController = class BaseCliWorkerController extends lib_1.Taon.B
47
54
  info() {
48
55
  //#region @backendFunc
49
56
  return async () => {
50
- return (`Service "${this.cliWorkerServiceId}" is ` +
51
- `running healthy on port ${this.ctx.uriPort},
52
- version: ${this.cliWorkerServiceVersion},
53
- pid: ${process.pid}
54
- `);
57
+ return `
58
+ <html>
59
+ <head><title>Service Info</title></head>
60
+ <body>
61
+ <h1>Service "${this.cliWorkerServiceId}" is</h1>
62
+ <h1>running healthy on port ${this.ctx.uriPort} </h1>
63
+ <h4>version: ${this.cliWorkerServiceVersion}</h4>
64
+ <h4>pid: ${process.pid}</h4><br>
65
+ </body>
66
+ <html>
67
+ `;
55
68
  };
56
69
  //#endregion
57
70
  }
@@ -99,13 +112,13 @@ __decorate([
99
112
  __param(1, lib_1.Taon.Http.Param.Body('serviceVersion'))
100
113
  ], BaseCliWorkerController.prototype, "baseCLiWorkerCommand_initializeMetadata", null);
101
114
  __decorate([
102
- lib_1.Taon.Http.GET()
115
+ lib_1.Taon.Http.GET(),
116
+ __param(0, lib_1.Taon.Http.Param.Query('dontRemoveConfigFile'))
103
117
  ], BaseCliWorkerController.prototype, "baseCLiWorkerCommand_kill", null);
104
118
  __decorate([
105
- lib_1.Taon.Http.GET({
119
+ lib_1.Taon.Http.HTML({
106
120
  pathIsGlobal: true,
107
- // overrideContentType: 'text/html',
108
- // overridResponseType: 'text',
121
+ path: '/info',
109
122
  })
110
123
  ], BaseCliWorkerController.prototype, "info", null);
111
124
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"base-cli-worker-controller.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-cli-worker-controller.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { CoreModels } from 'tnp-core';
2
- import type { BaseCliWorker } from './base-cli-worker';
2
+ import type { BaseCliWorker, BaseCliWorkerGuiUrlOptions } from './base-cli-worker';
3
3
  import type { BaseCliWorkerController } from './base-cli-worker-controller';
4
4
  export type BaseWorkerTerminalActionReturnType = {
5
5
  [uniqeActionName: string]: {
@@ -7,7 +7,7 @@ export type BaseWorkerTerminalActionReturnType = {
7
7
  action: () => unknown | Promise<unknown>;
8
8
  };
9
9
  };
10
- export declare class BaseCliWorkerTerminalUI<WORKER extends BaseCliWorker<BaseCliWorkerController, any>> {
10
+ export declare class BaseCliWorkerTerminalUI<WORKER extends BaseCliWorker<BaseCliWorkerController<any>, any>> {
11
11
  protected worker: WORKER;
12
12
  constructor(worker: WORKER);
13
13
  protected headerText(): Promise<string>;
@@ -17,7 +17,7 @@ export declare class BaseCliWorkerTerminalUI<WORKER extends BaseCliWorker<BaseCl
17
17
  * override whole terminal header
18
18
  */
19
19
  protected header(): Promise<void>;
20
- infoMessageBelowHeader(): Promise<void>;
20
+ infoMessageBelowHeader(options?: BaseCliWorkerGuiUrlOptions): Promise<void>;
21
21
  protected get backAction(): {
22
22
  back: {
23
23
  name: string;
@@ -33,6 +33,7 @@ export declare class BaseCliWorkerTerminalUI<WORKER extends BaseCliWorker<BaseCl
33
33
  exitIsOnlyReturn?: boolean;
34
34
  chooseAction?: boolean;
35
35
  }): BaseWorkerTerminalActionReturnType;
36
+ private headerDisplayed;
36
37
  infoScreen(options?: {
37
38
  exitIsOnlyReturn?: boolean;
38
39
  }): Promise<void>;
@@ -31,20 +31,24 @@ class BaseCliWorkerTerminalUI {
31
31
  */
32
32
  async header() {
33
33
  //#region @backendFunc
34
- lib_2.UtilsTerminal.drawBigText(await this.headerText(), {
35
- align: this.headerTextAlign(),
36
- style: this.textHeaderStyle(),
37
- });
34
+ const headerText = await this.headerText();
35
+ if (headerText) {
36
+ lib_2.UtilsTerminal.drawBigText(await this.headerText(), {
37
+ align: this.headerTextAlign(),
38
+ style: this.textHeaderStyle(),
39
+ });
40
+ }
38
41
  //#endregion
39
42
  }
40
43
  //#endregion
41
44
  //#region protected methods / info message below header
42
- async infoMessageBelowHeader() {
45
+ async infoMessageBelowHeader(options) {
43
46
  //#region @backendFunc
47
+ options = options || {};
44
48
  lib_2.Helpers.info(`
45
49
  Service ${lib_3.chalk.bold.red(this.worker.serviceID)}` +
46
50
  ` (version: ${this.worker.serviceVersion}) started..
47
- Check info here http://localhost:${lib_3.chalk.bold(this.worker.processLocalInfoObj?.port?.toString())}/${'info'}
51
+ Check info here ${this.worker.getWorkerInfoGuiUrl(options)}
48
52
  Worker started by ${lib_3.chalk.bold(lib_1.config.frameworkName)}
49
53
  (cwd: ${(0, lib_2.crossPlatformPath)(process.cwd())})
50
54
  `);
@@ -83,7 +87,7 @@ class BaseCliWorkerTerminalUI {
83
87
  name: 'Open browser with service info',
84
88
  action: async () => {
85
89
  const openInBrowser = require('open');
86
- openInBrowser(`http://localhost:${this.worker.processLocalInfoObj.port}/info`);
90
+ openInBrowser(this.worker.getWorkerInfoGuiUrl());
87
91
  },
88
92
  },
89
93
  exit: {
@@ -108,15 +112,30 @@ class BaseCliWorkerTerminalUI {
108
112
  }
109
113
  //#endregion
110
114
  //#region protected methods / info screen
115
+ headerDisplayed = false;
111
116
  async infoScreen(options) {
112
117
  options = options || {};
113
118
  while (true) {
114
119
  if (!lib_2.UtilsTerminal.isVerboseModeTaon()) {
115
120
  lib_2.UtilsTerminal.clearConsole();
116
121
  }
117
- await this.header();
118
- await this.infoMessageBelowHeader();
119
122
  const choices = this.getWorkerTerminalActions(options);
123
+ if (this.headerDisplayed) {
124
+ await this.infoMessageBelowHeader();
125
+ }
126
+ else {
127
+ this.headerDisplayed = true;
128
+ await this.header();
129
+ await lib_2.UtilsTerminal.pressAnyKeyToContinueAsync({
130
+ message: `\nWelcome to ${lib_3.chalk.bold(this.worker.serviceID) +
131
+ lib_3.chalk.bold('@') +
132
+ lib_3.chalk.bold(this.worker.serviceVersion)} Terminal UI.` +
133
+ `\n
134
+ Press any key to continue...`,
135
+ });
136
+ lib_2.UtilsTerminal.clearConsole();
137
+ await this.infoMessageBelowHeader();
138
+ }
120
139
  const choice = await lib_2.UtilsTerminal.select({
121
140
  choices,
122
141
  question: 'Choose action',
@@ -1 +1 @@
1
- {"version":3,"file":"base-cli-worker-terminal-ui.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-cli-worker-terminal-ui.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}
@@ -1,8 +1,15 @@
1
- import { Taon } from 'taon';
1
+ import { BehaviorSubject } from 'rxjs';
2
+ import { EndpointContext, Taon } from 'taon';
2
3
  import { BaseCliWorkerConfig } from './base-cli-worker-config';
3
4
  import type { BaseCliWorkerController } from './base-cli-worker-controller';
4
5
  import { BaseCliWorkerTerminalUI } from './base-cli-worker-terminal-ui';
5
- export declare abstract class BaseCliWorker<REMOTE_CTRL extends BaseCliWorkerController, TERMINAL_UI extends BaseCliWorkerTerminalUI<any>> {
6
+ import { BaseCliMethodOptions } from './base-cli-worker.models';
7
+ export interface BaseCliWorkerGuiUrlOptions {
8
+ domain?: string;
9
+ port?: number | null;
10
+ useHttps?: boolean;
11
+ }
12
+ export declare abstract class BaseCliWorker<REMOTE_CTRL extends BaseCliWorkerController<any>, TERMINAL_UI extends BaseCliWorkerTerminalUI<any> = any> {
6
13
  /**
7
14
  * unique id for service
8
15
  */
@@ -15,16 +22,34 @@ export declare abstract class BaseCliWorker<REMOTE_CTRL extends BaseCliWorkerCon
15
22
  * unique id for service
16
23
  */
17
24
  readonly serviceVersion: string;
25
+ /**
26
+ * Indicates if worker is part of cloud
27
+ * and should use cloud ip address
28
+ */
29
+ static readonly isCloudEnable: Pick<BehaviorSubject<boolean>, 'next' | 'getValue'>;
30
+ /**
31
+ * Cloud ip address of the worker (if part of cloud)
32
+ */
33
+ static readonly cloudIp: Pick<BehaviorSubject<string | null>, 'next' | 'getValue'>;
34
+ private static workers;
18
35
  readonly SPECIAL_WORKER_READY_MESSAGE = "$$$ WORKER_READY $$$";
36
+ /**
37
+ * dependency workers that should be started before this worker
38
+ */
39
+ readonly dependencyWorkers: Map<string, BaseCliWorker<any, any>>;
19
40
  readonly terminalUI: TERMINAL_UI;
20
41
  readonly workerContextTemplate: ReturnType<typeof Taon.createContextTemplate>;
21
- private workerMainContext;
22
- getRemoteControllerFor(ipAddressOfTaonInstance: string, port?: number): Promise<REMOTE_CTRL>;
23
- private workerRemoteContext;
42
+ /**
43
+ * Name of the worker context
44
+ */
45
+ get contextName(): string;
46
+ /**
47
+ * Port where worker is running
48
+ * (getter only accessible from host machine)
49
+ */
50
+ get port(): number | undefined;
51
+ getWorkerInfoGuiUrl(options?: BaseCliWorkerGuiUrlOptions): string;
24
52
  readonly controllerClass: new () => REMOTE_CTRL;
25
- private contextForRemoteConnection;
26
- protected get pathToProcessLocalInfoJson(): string;
27
- get processLocalInfoObj(): BaseCliWorkerConfig;
28
53
  constructor(
29
54
  /**
30
55
  * unique id for service
@@ -38,25 +63,20 @@ export declare abstract class BaseCliWorker<REMOTE_CTRL extends BaseCliWorkerCon
38
63
  * unique id for service
39
64
  */
40
65
  serviceVersion: string);
41
- /**
42
- * <strong>IMPORTANT USE ONLY IN DEVELOPMENT !!!</strong>
43
- * for production use startDetachedIfNeedsToBeStarted()
44
- * start normally process
45
- * this will crash if process already started
46
- */
47
- startNormallyInCurrentProcess(options?: {
48
- actionBeforeTerminalUI?: () => Promise<void>;
49
- }): Promise<void>;
50
- getControllerForRemoteConnection(options?: {
51
- calledFrom?: string;
52
- }): Promise<REMOTE_CTRL>;
53
- startDetachedIfNeedsToBeStarted(options?: {
54
- useCurrentWindowForDetach?: boolean;
55
- }): Promise<void>;
66
+ static getAllWorkersStartedInSystemFromCurrentCli(): BaseCliWorker<any, any>[];
67
+ get processLocalInfoObj(): BaseCliWorkerConfig;
68
+ getRemoteControllerFor<ctrl = REMOTE_CTRL>(options?: {
69
+ methodOptions: Partial<BaseCliMethodOptions>;
70
+ /**
71
+ * Optionally get other controller from remote context
72
+ */
73
+ controllerClass?: new () => ctrl;
74
+ }): Promise<ctrl>;
56
75
  /**
57
76
  * stop if started
58
77
  */
59
78
  kill(options?: {
79
+ methodOptions?: Partial<BaseCliMethodOptions>;
60
80
  dontRemoveConfigFile?: boolean;
61
81
  }): Promise<void>;
62
82
  /**
@@ -64,17 +84,45 @@ export declare abstract class BaseCliWorker<REMOTE_CTRL extends BaseCliWorkerCon
64
84
  * @param options.detached - default true
65
85
  */
66
86
  restart(options?: {
67
- detached?: boolean;
68
- useCurrentWindowForDetach?: boolean;
87
+ methodOptions?: BaseCliMethodOptions;
69
88
  }): Promise<void>;
70
89
  /**
71
90
  * only for cli start
72
91
  * @param cliParams on from cli
73
92
  */
74
- cliStartProcedure(cliParams: any): Promise<void>;
93
+ cliStartProcedure(options: {
94
+ methodOptions?: Partial<BaseCliMethodOptions>;
95
+ }): Promise<{
96
+ controller: REMOTE_CTRL;
97
+ worker: BaseCliWorker<any, any>;
98
+ serviceId: string;
99
+ }>;
100
+ protected getRemoteContextFor(options?: {
101
+ methodOptions?: Partial<BaseCliMethodOptions>;
102
+ }): Promise<EndpointContext>;
103
+ protected get pathToProcessLocalInfoJson(): string;
104
+ protected get processLocalInfoPortNotInited(): boolean;
105
+ protected get workerIsStarting(): boolean;
106
+ protected startDetachedIfNeedsToBeStarted(options?: {
107
+ methodOptions?: Partial<BaseCliMethodOptions>;
108
+ }): Promise<void>;
109
+ /**
110
+ * <strong>IMPORTANT USE ONLY IN DEVELOPMENT !!!</strong>
111
+ * for production use startDetachedIfNeedsToBeStarted()
112
+ * start normally process
113
+ * this will crash if process already started
114
+ */
115
+ protected startNormallyInCurrentProcess(options?: {
116
+ methodOptions?: Partial<BaseCliMethodOptions>;
117
+ actionBeforeTerminalUI?: () => Promise<void>;
118
+ }): Promise<void>;
75
119
  protected preventExternalConfigChange(): void;
76
- protected preventStartIfAlreadyStarted(): Promise<void>;
77
- protected killWorkerWithLowerVersion(): Promise<void>;
120
+ protected preventStartIfAlreadyStarted(options?: {
121
+ methodOptions?: Partial<BaseCliMethodOptions>;
122
+ }): Promise<void>;
123
+ protected killWorkerWithLowerVersion(options?: {
124
+ methodOptions?: Partial<BaseCliMethodOptions>;
125
+ }): Promise<void>;
78
126
  /**
79
127
  * This has 2 purposes:
80
128
  * - infinite check when when detached process finished starting
@@ -82,17 +130,20 @@ export declare abstract class BaseCliWorker<REMOTE_CTRL extends BaseCliWorkerCon
82
130
  */
83
131
  protected isServiceHealthy(options: {
84
132
  healthCheckRequestTrys?: number;
133
+ methodOptions?: Partial<BaseCliMethodOptions>;
85
134
  }): Promise<boolean>;
86
135
  /**
87
136
  * start if not started detached process
88
137
  */
89
138
  protected startDetached(options?: {
90
- useCurrentWindowForDetach?: boolean;
139
+ methodOptions?: Partial<BaseCliMethodOptions>;
91
140
  }): Promise<void>;
92
141
  private saveProcessInfo;
93
- protected initializeWorkerMetadata(): Promise<void>;
94
- protected waitForProcessPortSavedToDisk(options?: {
95
- calledFrom?: string;
142
+ protected initializeWorkerMetadata(options?: {
143
+ methodOptions?: Partial<BaseCliMethodOptions>;
144
+ }): Promise<void>;
145
+ protected waitForProcessPortSavedToDisk(options: {
146
+ methodOptions: BaseCliMethodOptions;
96
147
  }): Promise<void>;
97
- getServicePort(): Promise<number>;
148
+ protected getServicePort(): Promise<number>;
98
149
  }