tnp-helpers 18.0.19 → 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 (532) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/README.md +24 -24
  3. package/browser/esm2022/lib/base/classes/base-bower-json.mjs +14 -0
  4. package/browser/esm2022/lib/base/classes/base-cli-worker-config.mjs +1 -4
  5. package/browser/esm2022/lib/base/classes/base-cli-worker-controller.mjs +1 -1
  6. package/browser/esm2022/lib/base/classes/base-cli-worker.mjs +14 -4
  7. package/browser/esm2022/lib/base/classes/base-debounce-compiler-for-project.mjs +5 -5
  8. package/browser/esm2022/lib/base/classes/base-feature-for-project.mjs +4 -1
  9. package/browser/esm2022/lib/base/classes/base-git.mjs +244 -4
  10. package/browser/esm2022/lib/base/classes/base-json-file-reader.mjs +114 -0
  11. package/browser/esm2022/lib/base/classes/base-library-build.mjs +35 -10
  12. package/browser/esm2022/lib/base/classes/base-linked-projects.mjs +8 -5
  13. package/browser/esm2022/lib/base/classes/base-node-modules.mjs +495 -0
  14. package/browser/esm2022/lib/base/classes/base-npm-helpers.mjs +32 -430
  15. package/browser/esm2022/lib/base/classes/base-package-json.mjs +340 -0
  16. package/browser/esm2022/lib/base/classes/base-process-manager.mjs +285 -0
  17. package/browser/esm2022/lib/base/classes/base-project-resolver.mjs +2 -11
  18. package/browser/esm2022/lib/base/classes/base-project.mjs +83 -87
  19. package/browser/esm2022/lib/base/classes/base-quick-fixes.mjs +44 -1
  20. package/browser/esm2022/lib/base/classes/base-release-process.mjs +34 -36
  21. package/browser/esm2022/lib/base/classes/{base-github-pages.mjs → base-static-pages.mjs} +6 -6
  22. package/browser/esm2022/lib/base/classes/base-vscode.mjs +31 -1
  23. package/browser/esm2022/lib/base/classes/index.mjs +5 -1
  24. package/browser/esm2022/lib/base/commit-data.mjs +21 -4
  25. package/browser/esm2022/lib/base/core-project.mjs +3 -3
  26. package/browser/esm2022/lib/base/linked-project.mjs +4 -4
  27. package/browser/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +2 -4
  28. package/browser/esm2022/lib/base/translate.mjs +566 -0
  29. package/browser/esm2022/lib/helpers/helpers-array-obj.mjs +5 -10
  30. package/browser/esm2022/lib/helpers/helpers.mjs +12 -6
  31. package/browser/esm2022/lib/index.mjs +2 -4
  32. package/browser/esm2022/lib/models.mjs +173 -3
  33. package/browser/esm2022/lib/utils.mjs +402 -41
  34. package/browser/fesm2022/tnp-helpers.mjs +4616 -2904
  35. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  36. package/browser/lib/base/classes/base-bower-json.d.ts +35 -0
  37. package/browser/lib/base/classes/base-cli-worker.d.ts +2 -2
  38. package/browser/lib/base/classes/base-debounce-compiler-for-project.d.ts +5 -5
  39. package/browser/lib/base/classes/base-feature-for-project.d.ts +2 -1
  40. package/browser/lib/base/classes/base-git.d.ts +42 -5
  41. package/browser/lib/base/classes/base-json-file-reader.d.ts +72 -0
  42. package/browser/lib/base/classes/base-library-build.d.ts +8 -11
  43. package/browser/lib/base/classes/base-linked-projects.d.ts +1 -2
  44. package/browser/lib/base/classes/base-node-modules.d.ts +56 -0
  45. package/browser/lib/base/classes/base-npm-helpers.d.ts +29 -108
  46. package/browser/lib/base/classes/base-package-json.d.ts +107 -0
  47. package/browser/lib/base/classes/base-process-manager.d.ts +31 -0
  48. package/browser/lib/base/classes/base-project-resolver.d.ts +2 -2
  49. package/browser/lib/base/classes/base-project.d.ts +17 -18
  50. package/browser/lib/base/classes/base-quick-fixes.d.ts +3 -1
  51. package/browser/lib/base/classes/base-release-process.d.ts +15 -13
  52. package/browser/lib/base/classes/{base-github-pages.d.ts → base-static-pages.d.ts} +3 -3
  53. package/browser/lib/base/classes/base-vscode.d.ts +4 -0
  54. package/browser/lib/base/classes/index.d.ts +5 -1
  55. package/browser/lib/base/commit-data.d.ts +14 -1
  56. package/browser/lib/base/core-project.d.ts +1 -1
  57. package/browser/lib/base/linked-project.d.ts +1 -1
  58. package/browser/lib/base/tcp-udp-ports/ports.entity.d.ts +1 -1
  59. package/browser/lib/base/translate.d.ts +228 -0
  60. package/browser/lib/helpers/helpers-array-obj.d.ts +3 -0
  61. package/browser/lib/helpers/helpers.d.ts +12 -8
  62. package/browser/lib/index.d.ts +1 -3
  63. package/browser/lib/models.d.ts +68 -8
  64. package/browser/lib/utils.d.ts +72 -13
  65. package/client/README.md +24 -24
  66. package/client/esm2022/lib/base/classes/base-bower-json.mjs +14 -0
  67. package/client/esm2022/lib/base/classes/base-cli-worker-config.mjs +1 -4
  68. package/client/esm2022/lib/base/classes/base-cli-worker-controller.mjs +1 -1
  69. package/client/esm2022/lib/base/classes/base-cli-worker.mjs +14 -4
  70. package/client/esm2022/lib/base/classes/base-debounce-compiler-for-project.mjs +5 -5
  71. package/client/esm2022/lib/base/classes/base-feature-for-project.mjs +4 -1
  72. package/client/esm2022/lib/base/classes/base-git.mjs +244 -4
  73. package/client/esm2022/lib/base/classes/base-json-file-reader.mjs +114 -0
  74. package/client/esm2022/lib/base/classes/base-library-build.mjs +35 -10
  75. package/client/esm2022/lib/base/classes/base-linked-projects.mjs +8 -5
  76. package/client/esm2022/lib/base/classes/base-node-modules.mjs +495 -0
  77. package/client/esm2022/lib/base/classes/base-npm-helpers.mjs +32 -430
  78. package/client/esm2022/lib/base/classes/base-package-json.mjs +340 -0
  79. package/client/esm2022/lib/base/classes/base-process-manager.mjs +285 -0
  80. package/client/esm2022/lib/base/classes/base-project-resolver.mjs +2 -11
  81. package/client/esm2022/lib/base/classes/base-project.mjs +83 -87
  82. package/client/esm2022/lib/base/classes/base-quick-fixes.mjs +44 -1
  83. package/client/esm2022/lib/base/classes/base-release-process.mjs +34 -36
  84. package/client/esm2022/lib/base/classes/{base-github-pages.mjs → base-static-pages.mjs} +6 -6
  85. package/client/esm2022/lib/base/classes/base-vscode.mjs +31 -1
  86. package/client/esm2022/lib/base/classes/index.mjs +5 -1
  87. package/client/esm2022/lib/base/commit-data.mjs +21 -4
  88. package/client/esm2022/lib/base/core-project.mjs +3 -3
  89. package/client/esm2022/lib/base/linked-project.mjs +4 -4
  90. package/client/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +2 -4
  91. package/client/esm2022/lib/base/translate.mjs +566 -0
  92. package/client/esm2022/lib/helpers/helpers-array-obj.mjs +5 -10
  93. package/client/esm2022/lib/helpers/helpers.mjs +12 -6
  94. package/client/esm2022/lib/index.mjs +2 -4
  95. package/client/esm2022/lib/models.mjs +173 -3
  96. package/client/esm2022/lib/utils.mjs +402 -41
  97. package/client/fesm2022/tnp-helpers.mjs +4616 -2904
  98. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  99. package/client/lib/base/classes/base-bower-json.d.ts +35 -0
  100. package/client/lib/base/classes/base-cli-worker.d.ts +2 -2
  101. package/client/lib/base/classes/base-debounce-compiler-for-project.d.ts +5 -5
  102. package/client/lib/base/classes/base-feature-for-project.d.ts +2 -1
  103. package/client/lib/base/classes/base-git.d.ts +42 -5
  104. package/client/lib/base/classes/base-json-file-reader.d.ts +72 -0
  105. package/client/lib/base/classes/base-library-build.d.ts +8 -11
  106. package/client/lib/base/classes/base-linked-projects.d.ts +1 -2
  107. package/client/lib/base/classes/base-node-modules.d.ts +56 -0
  108. package/client/lib/base/classes/base-npm-helpers.d.ts +29 -108
  109. package/client/lib/base/classes/base-package-json.d.ts +107 -0
  110. package/client/lib/base/classes/base-process-manager.d.ts +31 -0
  111. package/client/lib/base/classes/base-project-resolver.d.ts +2 -2
  112. package/client/lib/base/classes/base-project.d.ts +17 -18
  113. package/client/lib/base/classes/base-quick-fixes.d.ts +3 -1
  114. package/client/lib/base/classes/base-release-process.d.ts +15 -13
  115. package/{websql/lib/base/classes/base-github-pages.d.ts → client/lib/base/classes/base-static-pages.d.ts} +3 -3
  116. package/client/lib/base/classes/base-vscode.d.ts +4 -0
  117. package/client/lib/base/classes/index.d.ts +5 -1
  118. package/client/lib/base/commit-data.d.ts +14 -1
  119. package/client/lib/base/core-project.d.ts +1 -1
  120. package/client/lib/base/linked-project.d.ts +1 -1
  121. package/client/lib/base/tcp-udp-ports/ports.entity.d.ts +1 -1
  122. package/client/lib/base/translate.d.ts +228 -0
  123. package/client/lib/helpers/helpers-array-obj.d.ts +3 -0
  124. package/client/lib/helpers/helpers.d.ts +12 -8
  125. package/client/lib/index.d.ts +1 -3
  126. package/client/lib/models.d.ts +68 -8
  127. package/client/lib/utils.d.ts +72 -13
  128. package/index.js +15 -2
  129. package/index.js.map +1 -1
  130. package/lib/base/base-cli-worker-config.d.ts +27 -0
  131. package/lib/base/base-cli-worker-config.js +53 -0
  132. package/lib/base/base-cli-worker-config.js.map +1 -0
  133. package/lib/base/base-cli-worker-controller.d.ts +15 -0
  134. package/lib/base/base-cli-worker-controller.js +154 -0
  135. package/lib/base/base-cli-worker-controller.js.map +1 -0
  136. package/lib/base/base-cli-worker.d.ts +82 -0
  137. package/lib/base/base-cli-worker.js +654 -0
  138. package/lib/base/base-cli-worker.js.map +1 -0
  139. package/lib/base/base-command-line.backend.d.ts +174 -0
  140. package/lib/base/base-command-line.backend.js +2221 -0
  141. package/lib/base/base-command-line.backend.js.map +1 -0
  142. package/lib/base/base-compiler-for-project.d.ts +7 -0
  143. package/lib/base/base-compiler-for-project.js +62 -0
  144. package/lib/base/base-compiler-for-project.js.map +1 -0
  145. package/lib/base/base-db.d.ts +12 -0
  146. package/lib/base/base-db.js +74 -0
  147. package/lib/base/base-db.js.map +1 -0
  148. package/lib/base/base-debounce-compiler-for-project.d.ts +28 -0
  149. package/lib/base/base-debounce-compiler-for-project.js +82 -0
  150. package/lib/base/base-debounce-compiler-for-project.js.map +1 -0
  151. package/lib/base/base-detached-service.d.ts +6 -0
  152. package/lib/base/base-detached-service.js +16 -0
  153. package/lib/base/base-detached-service.js.map +1 -0
  154. package/lib/base/base-feature-for-project.d.ts +5 -0
  155. package/lib/base/base-feature-for-project.js +11 -0
  156. package/lib/base/base-feature-for-project.js.map +1 -0
  157. package/lib/base/base-git.d.ts +148 -0
  158. package/lib/base/base-git.js +1202 -0
  159. package/lib/base/base-git.js.map +1 -0
  160. package/{client/lib/base/classes → lib/base}/base-github-pages.d.ts +4 -5
  161. package/lib/base/base-github-pages.js +173 -0
  162. package/lib/base/base-github-pages.js.map +1 -0
  163. package/lib/base/base-ignore-hide.d.ts +14 -0
  164. package/lib/base/base-ignore-hide.js +55 -0
  165. package/lib/base/base-ignore-hide.js.map +1 -0
  166. package/lib/base/base-library-build.d.ts +65 -0
  167. package/lib/base/base-library-build.js +717 -0
  168. package/lib/base/base-library-build.js.map +1 -0
  169. package/lib/base/base-linked-projects.d.ts +24 -0
  170. package/lib/base/base-linked-projects.js +408 -0
  171. package/lib/base/base-linked-projects.js.map +1 -0
  172. package/lib/base/base-npm-helpers.d.ts +128 -0
  173. package/lib/base/base-npm-helpers.js +774 -0
  174. package/lib/base/base-npm-helpers.js.map +1 -0
  175. package/lib/base/base-project-resolver.d.ts +41 -0
  176. package/lib/base/base-project-resolver.js +308 -0
  177. package/lib/base/base-project-resolver.js.map +1 -0
  178. package/lib/base/base-project.d.ts +244 -0
  179. package/lib/base/base-project.js +1223 -0
  180. package/lib/base/base-project.js.map +1 -0
  181. package/lib/base/base-quick-fixes.d.ts +6 -0
  182. package/lib/base/base-quick-fixes.js +31 -0
  183. package/lib/base/base-quick-fixes.js.map +1 -0
  184. package/lib/base/base-release-process.d.ts +69 -0
  185. package/lib/base/base-release-process.js +913 -0
  186. package/lib/base/base-release-process.js.map +1 -0
  187. package/lib/base/base-start-config.backend.d.ts +36 -0
  188. package/lib/base/base-start-config.backend.js +167 -0
  189. package/lib/base/base-start-config.backend.js.map +1 -0
  190. package/lib/base/base-vscode.d.ts +12 -0
  191. package/lib/base/base-vscode.js +139 -0
  192. package/lib/base/base-vscode.js.map +1 -0
  193. package/lib/base/classes/base-bower-json.d.ts +34 -0
  194. package/lib/base/classes/base-bower-json.js +19 -0
  195. package/lib/base/classes/base-bower-json.js.map +1 -0
  196. package/lib/base/classes/base-cli-worker-config.js +35 -24
  197. package/lib/base/classes/base-cli-worker-config.js.map +1 -1
  198. package/lib/base/classes/base-cli-worker-controller.js +98 -128
  199. package/lib/base/classes/base-cli-worker-controller.js.map +1 -1
  200. package/lib/base/classes/base-cli-worker.d.ts +2 -2
  201. package/lib/base/classes/base-cli-worker.js +402 -606
  202. package/lib/base/classes/base-cli-worker.js.map +1 -1
  203. package/lib/base/classes/base-command-line-feature.backend.d.ts +5 -9
  204. package/lib/base/classes/base-command-line-feature.backend.js +73 -132
  205. package/lib/base/classes/base-command-line-feature.backend.js.map +1 -1
  206. package/lib/base/classes/base-command-line.backend.d.ts +175 -0
  207. package/lib/base/classes/base-command-line.backend.js +2235 -0
  208. package/lib/base/classes/base-command-line.backend.js.map +1 -0
  209. package/lib/base/classes/base-compiler-for-project.js +27 -32
  210. package/lib/base/classes/base-compiler-for-project.js.map +1 -1
  211. package/lib/base/classes/base-db.js +43 -60
  212. package/lib/base/classes/base-db.js.map +1 -1
  213. package/lib/base/classes/base-debounce-compiler-for-project.d.ts +5 -5
  214. package/lib/base/classes/base-debounce-compiler-for-project.js +44 -70
  215. package/lib/base/classes/base-debounce-compiler-for-project.js.map +1 -1
  216. package/lib/base/classes/base-detached-service.js.map +1 -1
  217. package/lib/base/classes/base-feature-for-project.d.ts +2 -1
  218. package/lib/base/classes/base-feature-for-project.js +7 -4
  219. package/lib/base/classes/base-feature-for-project.js.map +1 -1
  220. package/lib/base/classes/base-git.d.ts +40 -3
  221. package/lib/base/classes/base-git.js +885 -943
  222. package/lib/base/classes/base-git.js.map +1 -1
  223. package/lib/base/classes/base-github-pages.js.map +1 -1
  224. package/lib/base/classes/base-global-command-line.backend.d.ts +10 -2
  225. package/lib/base/classes/base-global-command-line.backend.js +1058 -2011
  226. package/lib/base/classes/base-global-command-line.backend.js.map +1 -1
  227. package/lib/base/classes/base-ignore-hide.d.ts +2 -2
  228. package/lib/base/classes/base-ignore-hide.js +24 -28
  229. package/lib/base/classes/base-ignore-hide.js.map +1 -1
  230. package/lib/base/classes/base-json-file-reader.d.ts +71 -0
  231. package/lib/base/classes/base-json-file-reader.js +141 -0
  232. package/lib/base/classes/base-json-file-reader.js.map +1 -0
  233. package/lib/base/classes/base-library-build.d.ts +8 -12
  234. package/lib/base/classes/base-library-build.js +433 -638
  235. package/lib/base/classes/base-library-build.js.map +1 -1
  236. package/lib/base/classes/base-linked-projects.d.ts +1 -3
  237. package/lib/base/classes/base-linked-projects.js +200 -314
  238. package/lib/base/classes/base-linked-projects.js.map +1 -1
  239. package/lib/base/classes/base-node-modules.d.ts +55 -0
  240. package/lib/base/classes/base-node-modules.js +415 -0
  241. package/lib/base/classes/base-node-modules.js.map +1 -0
  242. package/lib/base/classes/base-npm-helpers.d.ts +29 -97
  243. package/lib/base/classes/base-npm-helpers.js +178 -729
  244. package/lib/base/classes/base-npm-helpers.js.map +1 -1
  245. package/lib/base/classes/base-package-json.d.ts +106 -0
  246. package/lib/base/classes/base-package-json.js +381 -0
  247. package/lib/base/classes/base-package-json.js.map +1 -0
  248. package/lib/base/classes/base-process-manager.d.ts +30 -0
  249. package/lib/base/classes/base-process-manager.js +269 -0
  250. package/lib/base/classes/base-process-manager.js.map +1 -0
  251. package/lib/base/classes/base-project-resolver.d.ts +2 -3
  252. package/lib/base/classes/base-project-resolver.js +102 -119
  253. package/lib/base/classes/base-project-resolver.js.map +1 -1
  254. package/lib/base/classes/base-project.d.ts +20 -17
  255. package/lib/base/classes/base-project.js +553 -760
  256. package/lib/base/classes/base-project.js.map +1 -1
  257. package/lib/base/classes/base-quick-fixes.d.ts +3 -1
  258. package/lib/base/classes/base-quick-fixes.js +45 -17
  259. package/lib/base/classes/base-quick-fixes.js.map +1 -1
  260. package/lib/base/classes/base-release-process.d.ts +15 -13
  261. package/lib/base/classes/base-release-process.js +487 -835
  262. package/lib/base/classes/base-release-process.js.map +1 -1
  263. package/lib/base/classes/base-start-config.backend.js +116 -100
  264. package/lib/base/classes/base-start-config.backend.js.map +1 -1
  265. package/lib/base/classes/base-static-pages.d.ts +14 -0
  266. package/lib/base/classes/base-static-pages.js +105 -0
  267. package/lib/base/classes/base-static-pages.js.map +1 -0
  268. package/lib/base/classes/base-vscode.d.ts +4 -0
  269. package/lib/base/classes/base-vscode.js +446 -424
  270. package/lib/base/classes/base-vscode.js.map +1 -1
  271. package/lib/base/classes/index copy.d.ts +22 -0
  272. package/lib/base/classes/index copy.js +28 -0
  273. package/lib/base/classes/index copy.js.map +1 -0
  274. package/lib/base/classes/index.d.ts +4 -0
  275. package/lib/base/classes/index.js +36 -19
  276. package/lib/base/classes/index.js.map +1 -1
  277. package/lib/base/command-line-feature.backend.d.ts +51 -0
  278. package/lib/base/command-line-feature.backend.js +206 -0
  279. package/lib/base/command-line-feature.backend.js.map +1 -0
  280. package/lib/base/commit-data.d.ts +14 -1
  281. package/lib/base/commit-data.js +411 -464
  282. package/lib/base/commit-data.js.map +1 -1
  283. package/lib/base/config-database.js +33 -61
  284. package/lib/base/config-database.js.map +1 -1
  285. package/lib/base/core-project.d.ts +1 -1
  286. package/lib/base/core-project.js +110 -146
  287. package/lib/base/core-project.js.map +1 -1
  288. package/lib/base/gh-temp-code.d.ts +1 -0
  289. package/lib/base/gh-temp-code.js +62 -104
  290. package/lib/base/gh-temp-code.js.map +1 -1
  291. package/lib/base/index-rebuilder.backend.d.ts +1 -0
  292. package/lib/base/index-rebuilder.backend.js.map +1 -1
  293. package/lib/base/index.js +20 -7
  294. package/lib/base/index.js.map +1 -1
  295. package/lib/base/linked-project.d.ts +1 -1
  296. package/lib/base/linked-project.js +59 -38
  297. package/lib/base/linked-project.js.map +1 -1
  298. package/lib/base/ports-worker.d.ts +32 -0
  299. package/lib/base/ports-worker.js +244 -0
  300. package/lib/base/ports-worker.js.map +1 -0
  301. package/lib/base/project-database.js +12 -22
  302. package/lib/base/project-database.js.map +1 -1
  303. package/lib/base/tcp-udp-ports/index.js +17 -4
  304. package/lib/base/tcp-udp-ports/index.js.map +1 -1
  305. package/lib/base/tcp-udp-ports/not-assignable-port.entity.d.ts +1 -0
  306. package/lib/base/tcp-udp-ports/not-assignable-port.entity.js +2 -2
  307. package/lib/base/tcp-udp-ports/not-assignable-port.entity.js.map +1 -1
  308. package/lib/base/tcp-udp-ports/port.entity.d.ts +0 -0
  309. package/lib/base/tcp-udp-ports/port.entity.js +5 -0
  310. package/lib/base/tcp-udp-ports/port.entity.js.map +1 -0
  311. package/lib/base/tcp-udp-ports/ports.controller.js +195 -283
  312. package/lib/base/tcp-udp-ports/ports.controller.js.map +1 -1
  313. package/lib/base/tcp-udp-ports/ports.entity.d.ts +2 -2
  314. package/lib/base/tcp-udp-ports/ports.entity.js +74 -62
  315. package/lib/base/tcp-udp-ports/ports.entity.js.map +1 -1
  316. package/lib/base/tcp-udp-ports/tcp-udp-ports.context.js +11 -14
  317. package/lib/base/tcp-udp-ports/tcp-udp-ports.context.js.map +1 -1
  318. package/lib/base/tcp-udp-ports/tcp-upd-ports.worker.js +244 -427
  319. package/lib/base/tcp-udp-ports/tcp-upd-ports.worker.js.map +1 -1
  320. package/lib/base/tcp-upd-ports.worker.d.ts +13 -0
  321. package/lib/base/tcp-upd-ports.worker.js +99 -0
  322. package/lib/base/tcp-upd-ports.worker.js.map +1 -0
  323. package/lib/base/translate.d.ts +1 -1
  324. package/lib/base/translate.js +90 -119
  325. package/lib/base/translate.js.map +1 -1
  326. package/lib/build-info._auto-generated_.js.map +1 -1
  327. package/lib/helpers/for-backend/helpers-cli-tool.backend.js +109 -115
  328. package/lib/helpers/for-backend/helpers-cli-tool.backend.js.map +1 -1
  329. package/lib/helpers/for-backend/helpers-console-gui.js +55 -102
  330. package/lib/helpers/for-backend/helpers-console-gui.js.map +1 -1
  331. package/lib/helpers/for-backend/helpers-dependencies.backend.js +28 -45
  332. package/lib/helpers/for-backend/helpers-dependencies.backend.js.map +1 -1
  333. package/lib/helpers/for-backend/helpers-file-folders.backend.d.ts +2 -2
  334. package/lib/helpers/for-backend/helpers-file-folders.backend.js +277 -266
  335. package/lib/helpers/for-backend/helpers-file-folders.backend.js.map +1 -1
  336. package/lib/helpers/for-backend/helpers-git.backend.d.ts +38 -3
  337. package/lib/helpers/for-backend/helpers-git.backend.js +806 -807
  338. package/lib/helpers/for-backend/helpers-git.backend.js.map +1 -1
  339. package/lib/helpers/for-backend/helpers-network.backend.js +15 -18
  340. package/lib/helpers/for-backend/helpers-network.backend.js.map +1 -1
  341. package/lib/helpers/for-backend/helpers-npm.backend.js +5 -8
  342. package/lib/helpers/for-backend/helpers-npm.backend.js.map +1 -1
  343. package/lib/helpers/for-backend/helpers-path.backend.js +18 -26
  344. package/lib/helpers/for-backend/helpers-path.backend.js.map +1 -1
  345. package/lib/helpers/for-backend/helpers-process.backend.d.ts +2 -2
  346. package/lib/helpers/for-backend/helpers-process.backend.js +285 -363
  347. package/lib/helpers/for-backend/helpers-process.backend.js.map +1 -1
  348. package/lib/helpers/for-backend/helpers-system-terminal.backend.js +25 -42
  349. package/lib/helpers/for-backend/helpers-system-terminal.backend.js.map +1 -1
  350. package/lib/helpers/for-backend/helpers-vscode.backend.js +9 -12
  351. package/lib/helpers/for-backend/helpers-vscode.backend.js.map +1 -1
  352. package/lib/helpers/for-backend/ts-code/index.js +0 -2
  353. package/lib/helpers/for-backend/ts-code/index.js.map +1 -1
  354. package/lib/helpers/for-backend/ts-code/ts-code-extractor.d.ts +26 -0
  355. package/lib/helpers/for-backend/ts-code/ts-code-extractor.js +62 -0
  356. package/lib/helpers/for-backend/ts-code/ts-code-extractor.js.map +1 -0
  357. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.d.ts +19 -0
  358. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.js +81 -0
  359. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.js.map +1 -0
  360. package/lib/helpers/for-backend/ts-code/ts-import-export-extractor.js +2 -2
  361. package/lib/helpers/for-backend/ts-code/ts-import-export-extractor.js.map +1 -1
  362. package/lib/helpers/for-browser/angular.helper.js +2 -2
  363. package/lib/helpers/for-browser/angular.helper.js.map +1 -1
  364. package/lib/helpers/for-browser/helpers-browser.js +27 -40
  365. package/lib/helpers/for-browser/helpers-browser.js.map +1 -1
  366. package/lib/helpers/helpers-array-obj.d.ts +3 -0
  367. package/lib/helpers/helpers-array-obj.js +49 -61
  368. package/lib/helpers/helpers-array-obj.js.map +1 -1
  369. package/lib/helpers/helpers-json5.backend.js +44 -55
  370. package/lib/helpers/helpers-json5.backend.js.map +1 -1
  371. package/lib/helpers/helpers-numbers.js +7 -10
  372. package/lib/helpers/helpers-numbers.js.map +1 -1
  373. package/lib/helpers/helpers-strings-regexes.js +40 -47
  374. package/lib/helpers/helpers-strings-regexes.js.map +1 -1
  375. package/lib/helpers/helpers-strings.js +38 -41
  376. package/lib/helpers/helpers-strings.js.map +1 -1
  377. package/lib/helpers/helpers.d.ts +12 -8
  378. package/lib/helpers/helpers.js +313 -393
  379. package/lib/helpers/helpers.js.map +1 -1
  380. package/lib/index._auto-generated_.d.ts +1 -0
  381. package/lib/index._auto-generated_.js.map +1 -1
  382. package/lib/index.d.ts +3 -4
  383. package/lib/index.js +21 -10
  384. package/lib/index.js.map +1 -1
  385. package/lib/lowdb/adapters/Memory.js +14 -20
  386. package/lib/lowdb/adapters/Memory.js.map +1 -1
  387. package/lib/lowdb/adapters/browser/LocalStorage.js +5 -8
  388. package/lib/lowdb/adapters/browser/LocalStorage.js.map +1 -1
  389. package/lib/lowdb/adapters/browser/SessionStorage.js +5 -8
  390. package/lib/lowdb/adapters/browser/SessionStorage.js.map +1 -1
  391. package/lib/lowdb/adapters/browser/WebStorage.js +10 -9
  392. package/lib/lowdb/adapters/browser/WebStorage.js.map +1 -1
  393. package/lib/lowdb/adapters/node/DataFile.js +29 -38
  394. package/lib/lowdb/adapters/node/DataFile.js.map +1 -1
  395. package/lib/lowdb/adapters/node/JSONFile.js +13 -18
  396. package/lib/lowdb/adapters/node/JSONFile.js.map +1 -1
  397. package/lib/lowdb/adapters/node/TextFile.js +36 -44
  398. package/lib/lowdb/adapters/node/TextFile.js.map +1 -1
  399. package/lib/lowdb/adapters/node/steno.js +72 -122
  400. package/lib/lowdb/adapters/node/steno.js.map +1 -1
  401. package/lib/lowdb/browser.js +17 -4
  402. package/lib/lowdb/browser.js.map +1 -1
  403. package/lib/lowdb/core/Low.js +30 -60
  404. package/lib/lowdb/core/Low.js.map +1 -1
  405. package/lib/lowdb/examples/browser.js.map +1 -1
  406. package/lib/lowdb/examples/cli.d.ts +1 -0
  407. package/lib/lowdb/examples/cli.js.map +1 -1
  408. package/lib/lowdb/examples/in-memory.d.ts +1 -0
  409. package/lib/lowdb/examples/in-memory.js.map +1 -1
  410. package/lib/lowdb/examples/server.d.ts +1 -0
  411. package/lib/lowdb/examples/server.js.map +1 -1
  412. package/lib/lowdb/index.js +16 -3
  413. package/lib/lowdb/index.js.map +1 -1
  414. package/lib/lowdb/node.js +18 -5
  415. package/lib/lowdb/node.js.map +1 -1
  416. package/lib/lowdb/presets/browser.js +7 -7
  417. package/lib/lowdb/presets/browser.js.map +1 -1
  418. package/lib/lowdb/presets/node.js +12 -23
  419. package/lib/lowdb/presets/node.js.map +1 -1
  420. package/lib/models.d.ts +68 -8
  421. package/lib/models.js +197 -3
  422. package/lib/models.js.map +1 -1
  423. package/lib/old/base-component.d.ts +1 -0
  424. package/lib/old/base-component.js +2 -2
  425. package/lib/old/base-component.js.map +1 -1
  426. package/lib/old/base-formly-component.d.ts +1 -0
  427. package/lib/old/base-formly-component.js +2 -2
  428. package/lib/old/base-formly-component.js.map +1 -1
  429. package/lib/old/condition-wait.d.ts +1 -0
  430. package/lib/old/condition-wait.js.map +1 -1
  431. package/lib/old/dual-component-ctrl.d.ts +1 -0
  432. package/lib/old/dual-component-ctrl.js +2 -2
  433. package/lib/old/dual-component-ctrl.js.map +1 -1
  434. package/lib/old/execute-command.d.ts +11 -0
  435. package/lib/old/execute-command.js +564 -0
  436. package/lib/old/execute-command.js.map +1 -0
  437. package/lib/old/helpers.d.ts +62 -0
  438. package/lib/old/helpers.js +279 -0
  439. package/lib/old/helpers.js.map +1 -0
  440. package/lib/old/models.d.ts +80 -0
  441. package/lib/old/models.js +57 -0
  442. package/lib/old/models.js.map +1 -0
  443. package/lib/utils.d.ts +72 -13
  444. package/lib/utils.js +502 -179
  445. package/lib/utils.js.map +1 -1
  446. package/lib/validators/validators-firedev.js +5 -5
  447. package/lib/validators/validators-firedev.js.map +1 -1
  448. package/lib/validators/validators-git.js +2 -2
  449. package/lib/validators/validators-git.js.map +1 -1
  450. package/lib/validators/validators-network.js +1 -1
  451. package/lib/validators/validators-network.js.map +1 -1
  452. package/lib/validators/validators.js +2 -2
  453. package/lib/validators/validators.js.map +1 -1
  454. package/migrations/1736198527297_init.js +39 -58
  455. package/migrations/1736198527297_init.js.map +1 -1
  456. package/migrations/1736199486472_addingNotAssignablePorts.js +42 -93
  457. package/migrations/1736199486472_addingNotAssignablePorts.js.map +1 -1
  458. package/migrations/1736454437350_addFreePorts.js +48 -100
  459. package/migrations/1736454437350_addFreePorts.js.map +1 -1
  460. package/migrations/index.js +15 -2
  461. package/migrations/index.js.map +1 -1
  462. package/migrations/migrations_index._auto-generated_.js +3 -3
  463. package/migrations/migrations_index._auto-generated_.js.map +1 -1
  464. package/package.json +14 -61
  465. package/src.d.ts +1 -1
  466. package/taon.jsonc +34 -49
  467. package/tmp-environment.json +8 -389
  468. package/websql/README.md +24 -24
  469. package/websql/esm2022/lib/base/classes/base-bower-json.mjs +14 -0
  470. package/websql/esm2022/lib/base/classes/base-cli-worker-config.mjs +1 -4
  471. package/websql/esm2022/lib/base/classes/base-cli-worker-controller.mjs +1 -1
  472. package/websql/esm2022/lib/base/classes/base-cli-worker.mjs +14 -4
  473. package/websql/esm2022/lib/base/classes/base-debounce-compiler-for-project.mjs +5 -5
  474. package/websql/esm2022/lib/base/classes/base-feature-for-project.mjs +4 -1
  475. package/websql/esm2022/lib/base/classes/base-git.mjs +244 -4
  476. package/websql/esm2022/lib/base/classes/base-json-file-reader.mjs +114 -0
  477. package/websql/esm2022/lib/base/classes/base-library-build.mjs +35 -10
  478. package/websql/esm2022/lib/base/classes/base-linked-projects.mjs +8 -5
  479. package/websql/esm2022/lib/base/classes/base-node-modules.mjs +495 -0
  480. package/websql/esm2022/lib/base/classes/base-npm-helpers.mjs +32 -430
  481. package/websql/esm2022/lib/base/classes/base-package-json.mjs +340 -0
  482. package/websql/esm2022/lib/base/classes/base-process-manager.mjs +285 -0
  483. package/websql/esm2022/lib/base/classes/base-project-resolver.mjs +2 -10
  484. package/websql/esm2022/lib/base/classes/base-project.mjs +82 -87
  485. package/websql/esm2022/lib/base/classes/base-quick-fixes.mjs +44 -1
  486. package/websql/esm2022/lib/base/classes/base-release-process.mjs +34 -36
  487. package/websql/esm2022/lib/base/classes/{base-github-pages.mjs → base-static-pages.mjs} +6 -6
  488. package/websql/esm2022/lib/base/classes/base-vscode.mjs +31 -1
  489. package/websql/esm2022/lib/base/classes/index.mjs +5 -1
  490. package/websql/esm2022/lib/base/commit-data.mjs +21 -4
  491. package/websql/esm2022/lib/base/core-project.mjs +3 -3
  492. package/websql/esm2022/lib/base/linked-project.mjs +4 -4
  493. package/websql/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +2 -4
  494. package/websql/esm2022/lib/base/translate.mjs +566 -0
  495. package/websql/esm2022/lib/helpers/helpers-array-obj.mjs +5 -10
  496. package/websql/esm2022/lib/helpers/helpers.mjs +12 -6
  497. package/websql/esm2022/lib/index.mjs +2 -4
  498. package/websql/esm2022/lib/models.mjs +173 -3
  499. package/websql/esm2022/lib/utils.mjs +402 -41
  500. package/websql/fesm2022/tnp-helpers.mjs +4744 -3032
  501. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  502. package/websql/lib/base/classes/base-bower-json.d.ts +35 -0
  503. package/websql/lib/base/classes/base-cli-worker.d.ts +2 -2
  504. package/websql/lib/base/classes/base-debounce-compiler-for-project.d.ts +5 -5
  505. package/websql/lib/base/classes/base-feature-for-project.d.ts +2 -1
  506. package/websql/lib/base/classes/base-git.d.ts +42 -5
  507. package/websql/lib/base/classes/base-json-file-reader.d.ts +72 -0
  508. package/websql/lib/base/classes/base-library-build.d.ts +8 -11
  509. package/websql/lib/base/classes/base-linked-projects.d.ts +1 -2
  510. package/websql/lib/base/classes/base-node-modules.d.ts +56 -0
  511. package/websql/lib/base/classes/base-npm-helpers.d.ts +29 -108
  512. package/websql/lib/base/classes/base-package-json.d.ts +107 -0
  513. package/websql/lib/base/classes/base-process-manager.d.ts +31 -0
  514. package/websql/lib/base/classes/base-project-resolver.d.ts +2 -2
  515. package/websql/lib/base/classes/base-project.d.ts +17 -18
  516. package/websql/lib/base/classes/base-quick-fixes.d.ts +3 -1
  517. package/websql/lib/base/classes/base-release-process.d.ts +15 -13
  518. package/websql/lib/base/classes/base-static-pages.d.ts +15 -0
  519. package/websql/lib/base/classes/base-vscode.d.ts +4 -0
  520. package/websql/lib/base/classes/index.d.ts +5 -1
  521. package/websql/lib/base/commit-data.d.ts +14 -1
  522. package/websql/lib/base/core-project.d.ts +1 -1
  523. package/websql/lib/base/linked-project.d.ts +1 -1
  524. package/websql/lib/base/tcp-udp-ports/ports.entity.d.ts +1 -1
  525. package/websql/lib/base/translate.d.ts +228 -0
  526. package/websql/lib/helpers/helpers-array-obj.d.ts +3 -0
  527. package/websql/lib/helpers/helpers.d.ts +12 -8
  528. package/websql/lib/index.d.ts +1 -3
  529. package/websql/lib/models.d.ts +68 -8
  530. package/websql/lib/utils.d.ts +72 -13
  531. package/browser/package.json +0 -25
  532. package/websql/package.json +0 -25
@@ -0,0 +1,913 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseReleaseProcess = void 0;
4
+ var tslib_1 = require("tslib");
5
+ //#endregion
6
+ var index_1 = require("../index");
7
+ var base_feature_for_project_1 = require("./base-feature-for-project");
8
+ var tnp_core_1 = require("tnp-core");
9
+ var commit_data_1 = require("./commit-data");
10
+ var tnp_config_1 = require("tnp-config");
11
+ //#endregion
12
+ var BaseReleaseProcess = /** @class */ (function (_super) {
13
+ tslib_1.__extends(BaseReleaseProcess, _super);
14
+ function BaseReleaseProcess() {
15
+ var _this = _super.apply(this, tslib_1.__spreadArray([], tslib_1.__read(arguments), false)) || this;
16
+ /**
17
+ * Automatic release process of patch plus one version
18
+ */
19
+ _this.automaticRelease = false;
20
+ _this.commitsForChangelog = [];
21
+ return _this;
22
+ //#endregion
23
+ }
24
+ //#endregion
25
+ BaseReleaseProcess.prototype.getReleaseWords = function () {
26
+ return ['release'];
27
+ };
28
+ //#region methods & getters / start release
29
+ BaseReleaseProcess.prototype.startRelease = function (options) {
30
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
31
+ var _a, _b, _c, _d, _e, _f;
32
+ return tslib_1.__generator(this, function (_g) {
33
+ switch (_g.label) {
34
+ case 0:
35
+ if (!true) return [3 /*break*/, 17];
36
+ index_1.Helpers.clearConsole();
37
+ this.newVersion = options === null || options === void 0 ? void 0 : options.newVersion;
38
+ this.automaticRelease = (options === null || options === void 0 ? void 0 : options.automaticRelease) || false;
39
+ return [4 /*yield*/, this.resetReleaseFiles()];
40
+ case 1:
41
+ _g.sent();
42
+ this.project.npmHelpers.reloadPackageJsonInMemory();
43
+ _a = this;
44
+ return [4 /*yield*/, this.generateLastChangesSummary()];
45
+ case 2:
46
+ _a.lastChangesSummary = _g.sent();
47
+ _c = (_b = console).log;
48
+ _d = "".concat(tnp_core_1.chalk.bold.underline("Release process for ".concat(this.project.name)), ":\n");
49
+ return [4 /*yield*/, this.lastChangesSummary];
50
+ case 3:
51
+ _c.apply(_b, [_d +
52
+ (_g.sent())]);
53
+ _e = this;
54
+ return [4 /*yield*/, this.selectReleaseType()];
55
+ case 4:
56
+ _e.type = _g.sent();
57
+ return [4 /*yield*/, this.confirmNewVersion()];
58
+ case 5:
59
+ _g.sent();
60
+ _f = this;
61
+ return [4 /*yield*/, this.selectChangelogCommits()];
62
+ case 6:
63
+ _f.commitsForChangelog = _g.sent();
64
+ return [4 /*yield*/, this.updateChangeLogFromCommits()];
65
+ case 7:
66
+ _g.sent();
67
+ return [4 /*yield*/, this.bumpNewVersionEverywhere()];
68
+ case 8:
69
+ _g.sent();
70
+ return [4 /*yield*/, this.buildAllLibraries()];
71
+ case 9:
72
+ _g.sent();
73
+ return [4 /*yield*/, this.testBeforePublish()];
74
+ case 10:
75
+ if (!(_g.sent())) {
76
+ return [3 /*break*/, 0];
77
+ }
78
+ return [4 /*yield*/, this.publishToNpm()];
79
+ case 11:
80
+ if (!(_g.sent())) {
81
+ return [3 /*break*/, 0];
82
+ }
83
+ return [4 /*yield*/, this.reinstallNodeModules()];
84
+ case 12:
85
+ _g.sent();
86
+ return [4 /*yield*/, this.testAfterPublish()];
87
+ case 13:
88
+ if (!(_g.sent())) {
89
+ return [3 /*break*/, 0];
90
+ }
91
+ return [4 /*yield*/, this.project.git.stageAllFiles()];
92
+ case 14:
93
+ _g.sent();
94
+ return [4 /*yield*/, this.project.git.restoreLastVersion(tnp_config_1.config.file._gitignore)];
95
+ case 15:
96
+ _g.sent();
97
+ return [4 /*yield*/, this.commitAndPush()];
98
+ case 16:
99
+ _g.sent();
100
+ return [3 /*break*/, 17];
101
+ case 17: return [2 /*return*/];
102
+ }
103
+ });
104
+ });
105
+ };
106
+ //#endregion
107
+ //#region methods & getters / reinstall node modules
108
+ BaseReleaseProcess.prototype.reinstallNodeModules = function () {
109
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
110
+ return tslib_1.__generator(this, function (_a) {
111
+ switch (_a.label) {
112
+ case 0:
113
+ index_1.Helpers.taskStarted("Reinstalling node_modules to recreate package-lock.json");
114
+ return [4 /*yield*/, this.project.npmHelpers.reinstallNodeModules()];
115
+ case 1:
116
+ _a.sent();
117
+ index_1.Helpers.taskDone("Reinstalling node_modules to recreate package-lock.json");
118
+ return [2 /*return*/];
119
+ }
120
+ });
121
+ });
122
+ };
123
+ //#endregion
124
+ //#region methods & getters / select changelog commits
125
+ BaseReleaseProcess.prototype.selectChangelogCommits = function () {
126
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
127
+ var data, useAllCommitsForChangelog, choices;
128
+ return tslib_1.__generator(this, function (_a) {
129
+ switch (_a.label) {
130
+ case 0: return [4 /*yield*/, this.getCommitsUpToReleaseCommit()];
131
+ case 1:
132
+ data = _a.sent();
133
+ index_1.Helpers.info("Last commits up to release commiut:\n" +
134
+ data.map(function (d) { return "- ".concat(d.commitMessages); }).join('\n'));
135
+ return [4 /*yield*/, index_1.Helpers.questionYesNo('Use all commits for changelog ?')];
136
+ case 2:
137
+ useAllCommitsForChangelog = _a.sent();
138
+ if (useAllCommitsForChangelog) {
139
+ return [2 /*return*/, data];
140
+ }
141
+ return [4 /*yield*/, index_1.Helpers.consoleGui.multiselect('Select commits to add to changelog', data.map(function (d) {
142
+ var _a;
143
+ return {
144
+ name: d.commitMessages,
145
+ value: (_a = d.index) === null || _a === void 0 ? void 0 : _a.toString(),
146
+ };
147
+ }))];
148
+ case 3:
149
+ choices = _a.sent();
150
+ return [2 /*return*/, choices.map(function (v) {
151
+ return data.find(function (d) { return d.index.toString() === v; });
152
+ })];
153
+ }
154
+ });
155
+ });
156
+ };
157
+ //#endregion
158
+ //#region methods & getters / get commits up to release commit
159
+ BaseReleaseProcess.prototype.getCommitsUpToReleaseCommit = function () {
160
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
161
+ var lastReleaseCommitData, commits, index, commitMessages;
162
+ return tslib_1.__generator(this, function (_a) {
163
+ switch (_a.label) {
164
+ case 0: return [4 /*yield*/, this.getLastReleaseCommitData()];
165
+ case 1:
166
+ lastReleaseCommitData = _a.sent();
167
+ if (!(lastReleaseCommitData.index !== -1)) return [3 /*break*/, 6];
168
+ commits = [];
169
+ index = 0;
170
+ _a.label = 2;
171
+ case 2:
172
+ if (!(index < lastReleaseCommitData.index)) return [3 /*break*/, 5];
173
+ return [4 /*yield*/, this.project.git.getCommitMessageByIndex(index)];
174
+ case 3:
175
+ commitMessages = _a.sent();
176
+ commits.push({ commitMessages: commitMessages, index: index });
177
+ _a.label = 4;
178
+ case 4:
179
+ index++;
180
+ return [3 /*break*/, 2];
181
+ case 5: return [2 /*return*/, commits];
182
+ case 6: return [2 /*return*/, []];
183
+ }
184
+ });
185
+ });
186
+ };
187
+ //#endregion
188
+ //#region methods & getters / publish to npm
189
+ BaseReleaseProcess.prototype.publishToNpm = function () {
190
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
191
+ var editor, error_1;
192
+ return tslib_1.__generator(this, function (_a) {
193
+ switch (_a.label) {
194
+ case 0:
195
+ if (!!this.automaticRelease) return [3 /*break*/, 7];
196
+ return [4 /*yield*/, index_1.Helpers.questionYesNo("Publish packages to npm (yes) ? ..or it's just a version bump (no)")];
197
+ case 1:
198
+ if (!(_a.sent())) {
199
+ return [2 /*return*/, true];
200
+ }
201
+ return [4 /*yield*/, index_1.Helpers.questionYesNo("Preview compiled code before publish ?")];
202
+ case 2:
203
+ if (!_a.sent()) return [3 /*break*/, 7];
204
+ _a.label = 3;
205
+ case 3:
206
+ _a.trys.push([3, 5, , 6]);
207
+ return [4 /*yield*/, this.project.ins.configDb.getCodeEditor()];
208
+ case 4:
209
+ editor = _a.sent();
210
+ this.project.run("cd dist && ".concat(editor, " ."), { output: true }).sync();
211
+ return [3 /*break*/, 6];
212
+ case 5:
213
+ error_1 = _a.sent();
214
+ return [3 /*break*/, 6];
215
+ case 6:
216
+ index_1.Helpers.pressKeyOrWait("Press any key to continue");
217
+ _a.label = 7;
218
+ case 7: return [4 /*yield*/, index_1.Helpers.questionYesNo("Publish ".concat(this.newVersion, " to npm ?"))];
219
+ case 8:
220
+ if (!(_a.sent())) {
221
+ return [2 /*return*/, false];
222
+ }
223
+ return [4 /*yield*/, this.project.publish()];
224
+ case 9:
225
+ _a.sent();
226
+ return [2 /*return*/, true];
227
+ }
228
+ });
229
+ });
230
+ };
231
+ //#endregion
232
+ //#region methods & getters / test after publish
233
+ BaseReleaseProcess.prototype.testAfterPublish = function () {
234
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
235
+ return tslib_1.__generator(this, function (_a) {
236
+ switch (_a.label) {
237
+ case 0:
238
+ if (!!this.automaticRelease) return [3 /*break*/, 3];
239
+ return [4 /*yield*/, index_1.Helpers.questionYesNo("Do you want to run test after fresh install (and before release commit ?) ?")];
240
+ case 1:
241
+ if (!_a.sent()) return [3 /*break*/, 3];
242
+ return [4 /*yield*/, this.testLibraries()];
243
+ case 2:
244
+ if (!(_a.sent())) {
245
+ index_1.Helpers.pressKeyOrWait("Test failed.. starting release again.. press any key to continue");
246
+ return [2 /*return*/, false];
247
+ }
248
+ _a.label = 3;
249
+ case 3: return [2 /*return*/, true];
250
+ }
251
+ });
252
+ });
253
+ };
254
+ //#endregion
255
+ //#region methods & getters / test before publish
256
+ BaseReleaseProcess.prototype.testBeforePublish = function () {
257
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
258
+ return tslib_1.__generator(this, function (_a) {
259
+ switch (_a.label) {
260
+ case 0:
261
+ if (!!this.automaticRelease) return [3 /*break*/, 3];
262
+ return [4 /*yield*/, index_1.Helpers.questionYesNo("Do you want to run test before npm publish ?")];
263
+ case 1:
264
+ if (!_a.sent()) return [3 /*break*/, 3];
265
+ return [4 /*yield*/, this.testLibraries()];
266
+ case 2:
267
+ if (!(_a.sent())) {
268
+ index_1.Helpers.pressKeyOrWait("Test failed.. starting release again.. press any key to continue");
269
+ return [2 /*return*/, false];
270
+ }
271
+ _a.label = 3;
272
+ case 3: return [2 /*return*/, true];
273
+ }
274
+ });
275
+ });
276
+ };
277
+ //#endregion
278
+ //#region methods & getters / commit and push
279
+ BaseReleaseProcess.prototype.commitAndPush = function () {
280
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
281
+ var releaseCommitMessage, lastCommitMessage, jiraNumbers, args;
282
+ return tslib_1.__generator(this, function (_a) {
283
+ switch (_a.label) {
284
+ case 0:
285
+ releaseCommitMessage = this.releaseCommitTemplate();
286
+ return [4 /*yield*/, this.project.git.penultimateCommitMessage()];
287
+ case 1:
288
+ lastCommitMessage = _a.sent();
289
+ jiraNumbers = commit_data_1.CommitData.extractAndOrderJiraNumbers(lastCommitMessage);
290
+ args = [jiraNumbers.join(' ') + ' ' + releaseCommitMessage];
291
+ // console.log({ jiraNumbers, args, lastCommitMessage });
292
+ return [4 /*yield*/, this.project.git.pushProcess({
293
+ typeofCommit: 'release',
294
+ askToConfirmPush: true,
295
+ askToConfirmBranchChange: true,
296
+ askToConfirmCommit: true,
297
+ skipLint: true,
298
+ args: args,
299
+ exitCallBack: function () {
300
+ process.exit(1);
301
+ },
302
+ })];
303
+ case 2:
304
+ // console.log({ jiraNumbers, args, lastCommitMessage });
305
+ _a.sent();
306
+ return [2 /*return*/];
307
+ }
308
+ });
309
+ });
310
+ };
311
+ //#endregion
312
+ //#region methods & getters / release commit template
313
+ BaseReleaseProcess.prototype.releaseCommitTemplate = function () {
314
+ return "Release v".concat(this.newVersion, " + changelog.md update");
315
+ };
316
+ //#endregion
317
+ //#region methods & getters / test libraries
318
+ BaseReleaseProcess.prototype.testLibraries = function () {
319
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
320
+ return tslib_1.__generator(this, function (_a) {
321
+ try {
322
+ this.project.run('npm run test', { output: true }).sync();
323
+ return [2 /*return*/, true];
324
+ }
325
+ catch (error) {
326
+ index_1.Helpers.info("Test failed, you can run test manually");
327
+ return [2 /*return*/, false];
328
+ }
329
+ return [2 /*return*/];
330
+ });
331
+ });
332
+ };
333
+ //#endregion
334
+ //#region methods & getters / build all libraries
335
+ BaseReleaseProcess.prototype.buildAllLibraries = function () {
336
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
337
+ return tslib_1.__generator(this, function (_a) {
338
+ switch (_a.label) {
339
+ case 0: return [4 /*yield*/, this.project.libraryBuild.buildLibraries({
340
+ watch: false,
341
+ releaseBuild: true,
342
+ buildType: 'angular',
343
+ })];
344
+ case 1:
345
+ _a.sent();
346
+ return [2 /*return*/];
347
+ }
348
+ });
349
+ });
350
+ };
351
+ //#endregion
352
+ //#region methods & getters / reset release files
353
+ BaseReleaseProcess.prototype.resetReleaseFiles = function () {
354
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
355
+ var _a, _b, projToBump;
356
+ var e_1, _c;
357
+ return tslib_1.__generator(this, function (_d) {
358
+ //#region @backendFunc
359
+ this.project.git.restoreLastVersion(this.changeLogPath);
360
+ try {
361
+ for (_a = tslib_1.__values(this.toBumpProjects), _b = _a.next(); !_b.done; _b = _a.next()) {
362
+ projToBump = _b.value;
363
+ projToBump.git.restoreLastVersion(tnp_config_1.config.file.package_json);
364
+ projToBump.git.restoreLastVersion(tnp_config_1.config.file.package_lock_json);
365
+ }
366
+ }
367
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
368
+ finally {
369
+ try {
370
+ if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
371
+ }
372
+ finally { if (e_1) throw e_1.error; }
373
+ }
374
+ return [2 /*return*/];
375
+ });
376
+ });
377
+ };
378
+ Object.defineProperty(BaseReleaseProcess.prototype, "toBumpProjects", {
379
+ //#endregion
380
+ //#region methods & getters / to bump projects
381
+ get: function () {
382
+ var toBumpProjects = tslib_1.__spreadArray([
383
+ this.project
384
+ ], tslib_1.__read(this.project.libraryBuild.libraries), false);
385
+ return toBumpProjects;
386
+ },
387
+ enumerable: false,
388
+ configurable: true
389
+ });
390
+ //#endregion
391
+ //#region methods & getters / bump new version everywhere
392
+ BaseReleaseProcess.prototype.bumpNewVersionEverywhere = function () {
393
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
394
+ var allLibrariesNames, _a, _b, projToBump, allLibrariesNames_1, allLibrariesNames_1_1, libName;
395
+ var e_2, _c, e_3, _d;
396
+ return tslib_1.__generator(this, function (_e) {
397
+ allLibrariesNames = this.project.libraryBuild.libraries.map(function (l) { return l.name; });
398
+ try {
399
+ for (_a = tslib_1.__values(this.toBumpProjects), _b = _a.next(); !_b.done; _b = _a.next()) {
400
+ projToBump = _b.value;
401
+ projToBump.npmHelpers.version = this.newVersion;
402
+ try {
403
+ for (allLibrariesNames_1 = (e_3 = void 0, tslib_1.__values(allLibrariesNames)), allLibrariesNames_1_1 = allLibrariesNames_1.next(); !allLibrariesNames_1_1.done; allLibrariesNames_1_1 = allLibrariesNames_1.next()) {
404
+ libName = allLibrariesNames_1_1.value;
405
+ projToBump.npmHelpers.updateDependency({
406
+ packageName: libName,
407
+ version: (this.project.location === projToBump.location ? '' : '^') +
408
+ this.newVersion,
409
+ });
410
+ }
411
+ }
412
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
413
+ finally {
414
+ try {
415
+ if (allLibrariesNames_1_1 && !allLibrariesNames_1_1.done && (_d = allLibrariesNames_1.return)) _d.call(allLibrariesNames_1);
416
+ }
417
+ finally { if (e_3) throw e_3.error; }
418
+ }
419
+ }
420
+ }
421
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
422
+ finally {
423
+ try {
424
+ if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
425
+ }
426
+ finally { if (e_2) throw e_2.error; }
427
+ }
428
+ return [2 /*return*/];
429
+ });
430
+ });
431
+ };
432
+ //#endregion
433
+ //#region methods & getters / confirm release type
434
+ BaseReleaseProcess.prototype.confirmNewVersion = function () {
435
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
436
+ var newVersion, originalNewVersion, confirm_1;
437
+ return tslib_1.__generator(this, function (_a) {
438
+ switch (_a.label) {
439
+ case 0:
440
+ //#region @backendFunc
441
+ if (this.automaticRelease) {
442
+ return [2 /*return*/];
443
+ }
444
+ newVersion = this.newVersion;
445
+ if (!this.newVersion) {
446
+ newVersion = this.project.npmHelpers.versionWithPatchPlusOne;
447
+ if (this.type === 'minor') {
448
+ newVersion =
449
+ this.project.npmHelpers.versionWithMinorPlusOneAndPatchZero;
450
+ }
451
+ if (this.type === 'major') {
452
+ newVersion =
453
+ this.project.npmHelpers
454
+ .versionWithMajorPlusOneAndMinorZeroAndPatchZero;
455
+ }
456
+ }
457
+ originalNewVersion = newVersion;
458
+ _a.label = 1;
459
+ case 1:
460
+ if (!true) return [3 /*break*/, 6];
461
+ index_1.Helpers.info("New version will be: ".concat(newVersion));
462
+ return [4 /*yield*/, index_1.Helpers.questionYesNo('Do you want to continue? (no -> edit version manually) ')];
463
+ case 2:
464
+ confirm_1 = _a.sent();
465
+ if (!confirm_1) return [3 /*break*/, 3];
466
+ return [3 /*break*/, 6];
467
+ case 3: return [4 /*yield*/, index_1.Helpers.consoleGui.input({
468
+ question: 'Provide proper new version and press enter',
469
+ defaultValue: originalNewVersion,
470
+ validate: function (value) {
471
+ var regexForValidationNpmVersionWithPossiblePreRelease = /^(\d+\.\d+\.\d+)(\-[a-zA-Z0-9]+)?$/;
472
+ return regexForValidationNpmVersionWithPossiblePreRelease.test(value);
473
+ },
474
+ })];
475
+ case 4:
476
+ newVersion = _a.sent();
477
+ _a.label = 5;
478
+ case 5: return [3 /*break*/, 1];
479
+ case 6:
480
+ this.newVersion = newVersion;
481
+ return [2 /*return*/];
482
+ }
483
+ });
484
+ });
485
+ };
486
+ //#endregion
487
+ //#region methods & getters / select release type
488
+ BaseReleaseProcess.prototype.selectReleaseType = function () {
489
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
490
+ var options, selected;
491
+ return tslib_1.__generator(this, function (_a) {
492
+ switch (_a.label) {
493
+ case 0:
494
+ //#region @backendFunc
495
+ if (this.automaticRelease) {
496
+ return [2 /*return*/, 'patch'];
497
+ }
498
+ options = [
499
+ {
500
+ name: "Patch release (v".concat(this.project.npmHelpers.versionWithPatchPlusOne, ")"),
501
+ value: 'patch',
502
+ },
503
+ {
504
+ name: "Minor release (v".concat(this.project.npmHelpers.versionWithMinorPlusOneAndPatchZero, ")"),
505
+ value: 'minor',
506
+ },
507
+ {
508
+ name: "Major release (v".concat(this.project.npmHelpers.versionWithMajorPlusOneAndMinorZeroAndPatchZero, ")"),
509
+ value: 'major',
510
+ },
511
+ ];
512
+ return [4 /*yield*/, index_1.Helpers.consoleGui.select('Select release type', options)];
513
+ case 1:
514
+ selected = _a.sent();
515
+ return [2 /*return*/, selected];
516
+ }
517
+ });
518
+ });
519
+ };
520
+ //#endregion
521
+ //#region methods & getters / commit message in changelog transform fn
522
+ BaseReleaseProcess.prototype.commitMessageInChangelogTransformFn = function (message) {
523
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
524
+ return tslib_1.__generator(this, function (_a) {
525
+ return [2 /*return*/, message];
526
+ });
527
+ });
528
+ };
529
+ //#endregion
530
+ //#region methods & getters / caclulate item
531
+ BaseReleaseProcess.prototype.getChangelogContentToAppend = function (askForEveryItem) {
532
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
533
+ var newChangeLogContentToAdd, _a, _b, commit, template, e_4_1, thingsToAddToChangeLog;
534
+ var e_4, _c;
535
+ return tslib_1.__generator(this, function (_d) {
536
+ switch (_d.label) {
537
+ case 0:
538
+ newChangeLogContentToAdd = '';
539
+ _d.label = 1;
540
+ case 1:
541
+ _d.trys.push([1, 6, 7, 8]);
542
+ _a = tslib_1.__values(this.commitsForChangelog), _b = _a.next();
543
+ _d.label = 2;
544
+ case 2:
545
+ if (!!_b.done) return [3 /*break*/, 5];
546
+ commit = _b.value;
547
+ return [4 /*yield*/, this.changelogItemTemplate(commit.index, askForEveryItem)];
548
+ case 3:
549
+ template = (_d.sent()) +
550
+ '\n';
551
+ newChangeLogContentToAdd += template;
552
+ _d.label = 4;
553
+ case 4:
554
+ _b = _a.next();
555
+ return [3 /*break*/, 2];
556
+ case 5: return [3 /*break*/, 8];
557
+ case 6:
558
+ e_4_1 = _d.sent();
559
+ e_4 = { error: e_4_1 };
560
+ return [3 /*break*/, 8];
561
+ case 7:
562
+ try {
563
+ if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
564
+ }
565
+ finally { if (e_4) throw e_4.error; }
566
+ return [7 /*endfinally*/];
567
+ case 8:
568
+ thingsToAddToChangeLog = "".concat(newChangeLogContentToAdd
569
+ ? "".concat(this.changeLogKeyWord(), " ").concat(this.newVersion, " ") +
570
+ "(".concat((0, tnp_core_1.dateformat)(new Date(), 'yyyy-mm-dd'), ")\n") +
571
+ "----------------------------------\n" +
572
+ "".concat(newChangeLogContentToAdd.trim() + '\n', "\n")
573
+ : '');
574
+ return [2 /*return*/, thingsToAddToChangeLog];
575
+ }
576
+ });
577
+ });
578
+ };
579
+ //#endregion
580
+ //#region methods & getters / update changelog.md from commits
581
+ /**
582
+ * TODO extend this to all commits from last release
583
+ */
584
+ BaseReleaseProcess.prototype.updateChangeLogFromCommits = function () {
585
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
586
+ var askForEveryItem, thingsToAddToChangeLog, changeLogNewContent;
587
+ return tslib_1.__generator(this, function (_a) {
588
+ switch (_a.label) {
589
+ case 0:
590
+ askForEveryItem = false;
591
+ _a.label = 1;
592
+ case 1:
593
+ if (!true) return [3 /*break*/, 4];
594
+ return [4 /*yield*/, this.getChangelogContentToAppend(askForEveryItem)];
595
+ case 2:
596
+ thingsToAddToChangeLog = _a.sent();
597
+ console.log("New things for changelog.md:\n".concat(tnp_core_1.chalk.gray.bold(thingsToAddToChangeLog)));
598
+ return [4 /*yield*/, index_1.Helpers.questionYesNo('Accept this new things in changelog (if no -> edit mode) ?')];
599
+ case 3:
600
+ if (!(_a.sent())) {
601
+ askForEveryItem = true;
602
+ return [3 /*break*/, 1];
603
+ }
604
+ changeLogNewContent = thingsToAddToChangeLog + "".concat(this.changelogContent.trim(), "\n");
605
+ this.project.writeFile(this.changeLogPath, changeLogNewContent);
606
+ return [3 /*break*/, 4];
607
+ case 4: return [2 /*return*/];
608
+ }
609
+ });
610
+ });
611
+ };
612
+ //#endregion
613
+ //#region methods & getters / extract changed libraries in last commit
614
+ BaseReleaseProcess.prototype.extractChangedLibrariesInCommit = function (hashOrIndex) {
615
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
616
+ var hash, index, useHash, lastChanges, _a, libraries;
617
+ var _this = this;
618
+ return tslib_1.__generator(this, function (_b) {
619
+ switch (_b.label) {
620
+ case 0:
621
+ hash = tnp_core_1._.isString(hashOrIndex) ? hashOrIndex : void 0;
622
+ index = tnp_core_1._.isNumber(hashOrIndex) ? hashOrIndex : void 0;
623
+ useHash = !!hash;
624
+ if (!useHash) return [3 /*break*/, 2];
625
+ return [4 /*yield*/, this.project.git.getChangedFilesInCommitByHash(hash)];
626
+ case 1:
627
+ _a = _b.sent();
628
+ return [3 /*break*/, 4];
629
+ case 2: return [4 /*yield*/, this.project.git.getChangedFilesInCommitByIndex(index)];
630
+ case 3:
631
+ _a = _b.sent();
632
+ _b.label = 4;
633
+ case 4:
634
+ lastChanges = _a;
635
+ libraries = this.project.libraryBuild.libraries.filter(function (l) {
636
+ var libraryRelativePath = l.location.replace(_this.project.location + '/', '');
637
+ return lastChanges.some(function (c) { return c.includes(libraryRelativePath); });
638
+ });
639
+ return [2 /*return*/, libraries.map(function (l) { return l.name; }).join(', ')];
640
+ }
641
+ });
642
+ });
643
+ };
644
+ //#endregion
645
+ //#region methods & getters / change log item template
646
+ BaseReleaseProcess.prototype.changelogItemTemplate = function (hashOrIndex_1) {
647
+ return tslib_1.__awaiter(this, arguments, void 0, function (hashOrIndex, confirmEveryItem) {
648
+ var hash, index, useHash, commitMessage, _a, jiraNumbers, message, extractedLibraries, translatedMessage, _b, _c, result, itemIsOK, confirm_2;
649
+ if (confirmEveryItem === void 0) { confirmEveryItem = false; }
650
+ return tslib_1.__generator(this, function (_d) {
651
+ switch (_d.label) {
652
+ case 0:
653
+ hash = tnp_core_1._.isString(hashOrIndex) ? hashOrIndex : void 0;
654
+ index = tnp_core_1._.isNumber(hashOrIndex) ? hashOrIndex : void 0;
655
+ useHash = !!hash;
656
+ if (!useHash) return [3 /*break*/, 2];
657
+ return [4 /*yield*/, this.project.git.getCommitMessageByHash(hash)];
658
+ case 1:
659
+ _a = _d.sent();
660
+ return [3 /*break*/, 4];
661
+ case 2: return [4 /*yield*/, this.project.git.getCommitMessageByIndex(index)];
662
+ case 3:
663
+ _a = _d.sent();
664
+ _d.label = 4;
665
+ case 4:
666
+ commitMessage = _a;
667
+ jiraNumbers = commit_data_1.CommitData.extractAndOrderJiraNumbers(commitMessage);
668
+ message = commit_data_1.CommitData.cleanMessageFromJiraNumTeamIdEtc(commitMessage);
669
+ return [4 /*yield*/, this.extractChangedLibrariesInCommit(hashOrIndex)];
670
+ case 5:
671
+ extractedLibraries = _d.sent();
672
+ _c = (_b = tnp_core_1._).upperFirst;
673
+ return [4 /*yield*/, this.commitMessageInChangelogTransformFn(message.replace(/\-/g, '').replace(/\:/g, ''))];
674
+ case 6:
675
+ translatedMessage = _c.apply(_b, [_d.sent()]);
676
+ result = ("* [".concat(tnp_core_1._.last(jiraNumbers), "] - ") +
677
+ "".concat(extractedLibraries ? extractedLibraries + ' - ' : '') +
678
+ " ".concat(translatedMessage))
679
+ .replace(/\- \-/g, ' - ')
680
+ .replace(/\ \ /g, ' ');
681
+ if (!confirmEveryItem) return [3 /*break*/, 9];
682
+ console.log("Confirm changelog new item ".concat(tnp_core_1.chalk.gray("(from \"".concat(commitMessage, "\")")), ":\n") +
683
+ "\n".concat(tnp_core_1.chalk.italic(result), "\n"));
684
+ return [4 /*yield*/, index_1.Helpers.questionYesNo('Is this item OK ?')];
685
+ case 7:
686
+ itemIsOK = _d.sent();
687
+ if (!!itemIsOK) return [3 /*break*/, 9];
688
+ return [4 /*yield*/, index_1.Helpers.consoleGui.input({
689
+ question: 'Provide proper changelog item or press enter to confirm',
690
+ defaultValue: result,
691
+ // required: false,
692
+ })];
693
+ case 8:
694
+ confirm_2 = _d.sent();
695
+ result = confirm_2;
696
+ _d.label = 9;
697
+ case 9:
698
+ // replace double spaces
699
+ result = result.replace(/\ \ /g, ' ');
700
+ result = result.replace(/\ \ /g, ' ');
701
+ result = result.replace(/\ \ /g, ' ');
702
+ return [2 /*return*/, result];
703
+ }
704
+ });
705
+ });
706
+ };
707
+ //#endregion
708
+ //#region methods & getters / generate last changes summary
709
+ BaseReleaseProcess.prototype.generateLastChangesSummary = function () {
710
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
711
+ var lastReleaseCommitData, hasLastReleaseCommit, lastReleaseCommitMsg, _a, _b, _c, _d;
712
+ return tslib_1.__generator(this, function (_e) {
713
+ switch (_e.label) {
714
+ case 0: return [4 /*yield*/, this.getLastReleaseCommitData()];
715
+ case 1:
716
+ lastReleaseCommitData = _e.sent();
717
+ hasLastReleaseCommit = lastReleaseCommitData.index !== -1;
718
+ lastReleaseCommitMsg = !hasLastReleaseCommit
719
+ ? '< nothing release yet >'
720
+ : lastReleaseCommitData.lastRelaseCommitMsg;
721
+ _c = (_b = "".concat(tnp_core_1.chalk.bold.gray('Last changelog.md notes summary'), ":\n")).concat;
722
+ return [4 /*yield*/, this.getLastPackageVersionChangesFromChnagelog()];
723
+ case 2:
724
+ _d = (_a = _c.apply(_b, [_e.sent(), "\n\n"]).concat(tnp_core_1.chalk.bold.gray(hasLastReleaseCommit ? 'Last commits up to relase commit' : 'Last 3 commits'), ":\n")).concat;
725
+ return [4 /*yield*/, this.getLastChangesFromCommits({
726
+ maxMessagesToCheck: hasLastReleaseCommit ? Number.POSITIVE_INFINITY : 3,
727
+ stopOnCommitMessage: hasLastReleaseCommit
728
+ ? lastReleaseCommitData.lastRelaseCommitMsg
729
+ : '',
730
+ })];
731
+ case 3: return [2 /*return*/, _d.apply(_a, [_e.sent(), "\n "])];
732
+ }
733
+ });
734
+ });
735
+ };
736
+ //#endregion
737
+ //#region methods & getters / get last changes from commits
738
+ BaseReleaseProcess.prototype.getLastChangesFromCommits = function () {
739
+ return tslib_1.__awaiter(this, arguments, void 0, function (_a) {
740
+ var index, commits, commitMessage;
741
+ var _b = _a === void 0 ? {} : _a, _c = _b.maxMessagesToCheck, maxMessagesToCheck = _c === void 0 ? 3 : _c, _d = _b.stopOnCommitMessage, stopOnCommitMessage = _d === void 0 ? '' : _d;
742
+ return tslib_1.__generator(this, function (_e) {
743
+ switch (_e.label) {
744
+ case 0:
745
+ index = 0;
746
+ commits = [];
747
+ _e.label = 1;
748
+ case 1:
749
+ if (!true) return [3 /*break*/, 3];
750
+ return [4 /*yield*/, this.project.git.getCommitMessageByIndex(index)];
751
+ case 2:
752
+ commitMessage = _e.sent();
753
+ commits.push(commitMessage);
754
+ ++index;
755
+ if (!!(stopOnCommitMessage || '').trim() &&
756
+ commitMessage.includes(stopOnCommitMessage)) {
757
+ return [3 /*break*/, 3];
758
+ }
759
+ if (index > maxMessagesToCheck) {
760
+ return [3 /*break*/, 3];
761
+ }
762
+ return [3 /*break*/, 1];
763
+ case 3: return [2 /*return*/, commits
764
+ .map(function (c) { return tnp_core_1.chalk.italic(c); })
765
+ .map(function (c, index) { return "".concat(index + 1, ". ").concat(c); })
766
+ .join('\n')];
767
+ }
768
+ });
769
+ });
770
+ };
771
+ //#endregion
772
+ //#region methods & getters / get last relase commit data
773
+ BaseReleaseProcess.prototype.getLastReleaseCommitData = function () {
774
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
775
+ var index, maxMessages, _loop_1, this_1, state_1;
776
+ return tslib_1.__generator(this, function (_a) {
777
+ switch (_a.label) {
778
+ case 0:
779
+ index = 0;
780
+ maxMessages = 50;
781
+ _loop_1 = function () {
782
+ var commitMessage, npmVersionRegex, match;
783
+ return tslib_1.__generator(this, function (_b) {
784
+ switch (_b.label) {
785
+ case 0: return [4 /*yield*/, this_1.project.git.getCommitMessageByIndex(index)];
786
+ case 1:
787
+ commitMessage = _b.sent();
788
+ npmVersionRegex = /\d+\.\d+\.\d+/;
789
+ // console.log('commitMessage', { index, commitMessage });
790
+ if (this_1.getReleaseWords().some(function (r) {
791
+ return commitMessage.toLowerCase().includes(r);
792
+ })) {
793
+ match = commitMessage.match(npmVersionRegex);
794
+ if (match) {
795
+ 2;
796
+ return [2 /*return*/, { value: { lastRelaseCommitMsg: commitMessage, index: index } }];
797
+ }
798
+ }
799
+ ++index;
800
+ if (index > maxMessages) {
801
+ return [2 /*return*/, "break"];
802
+ }
803
+ return [2 /*return*/];
804
+ }
805
+ });
806
+ };
807
+ this_1 = this;
808
+ _a.label = 1;
809
+ case 1:
810
+ if (!true) return [3 /*break*/, 3];
811
+ return [5 /*yield**/, _loop_1()];
812
+ case 2:
813
+ state_1 = _a.sent();
814
+ if (typeof state_1 === "object")
815
+ return [2 /*return*/, state_1.value];
816
+ if (state_1 === "break")
817
+ return [3 /*break*/, 3];
818
+ return [3 /*break*/, 1];
819
+ case 3: return [2 /*return*/, { lastRelaseCommitMsg: '', index: -1 }];
820
+ }
821
+ });
822
+ });
823
+ };
824
+ //#endregion
825
+ //#region methods & getters / get last changes from changelog
826
+ BaseReleaseProcess.prototype.getLastPackageVersionChangesFromChnagelog = function () {
827
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
828
+ var changelogData, validToShow, lastRelease;
829
+ var _this = this;
830
+ return tslib_1.__generator(this, function (_a) {
831
+ //#region @backendFunc
832
+ if (!this.project.hasFile(this.changeLogPath)) {
833
+ return [2 /*return*/, "< project doesn't use CHANGELOG.md yet >"];
834
+ }
835
+ changelogData = this.getChnagelogData();
836
+ if (changelogData.length === 0) {
837
+ return [2 /*return*/, "< no changelog data >"];
838
+ }
839
+ validToShow = [];
840
+ while (true) {
841
+ lastRelease = changelogData.shift();
842
+ if (lastRelease.version === this.project.npmHelpers.version) {
843
+ validToShow.push(lastRelease);
844
+ }
845
+ else {
846
+ break;
847
+ }
848
+ }
849
+ return [2 /*return*/, validToShow
850
+ .map(function (cd) {
851
+ return ("".concat(_this.changeLogKeyWord(), " ").concat(cd.version, " (").concat(cd.date, "):") +
852
+ "\n".concat(cd.changes.join('\n')));
853
+ })
854
+ .join('\n')];
855
+ });
856
+ });
857
+ };
858
+ Object.defineProperty(BaseReleaseProcess.prototype, "changeLogPath", {
859
+ //#endregion
860
+ //#region methods & getters / get changelog path
861
+ get: function () {
862
+ //#region @backendFunc
863
+ return this.project.hasFile('changelog.md')
864
+ ? 'changelog.md'
865
+ : 'CHANGELOG.md';
866
+ //#endregion
867
+ },
868
+ enumerable: false,
869
+ configurable: true
870
+ });
871
+ Object.defineProperty(BaseReleaseProcess.prototype, "changelogContent", {
872
+ //#endregion
873
+ //#region methods & getters / get changelog content
874
+ get: function () {
875
+ return this.project.readFile(this.changeLogPath) || '';
876
+ },
877
+ enumerable: false,
878
+ configurable: true
879
+ });
880
+ //#endregion
881
+ //#region methods & getters / change log key word
882
+ BaseReleaseProcess.prototype.changeLogKeyWord = function () {
883
+ return 'Changes in version';
884
+ };
885
+ //#endregion
886
+ //#region methods & getters / get changelog data
887
+ BaseReleaseProcess.prototype.getChnagelogData = function () {
888
+ //#region @backendFunc
889
+ var changelogData = [];
890
+ var keyword = this.changeLogKeyWord();
891
+ var regex = new RegExp("".concat(keyword, " (\\d+\\.\\d+\\.\\d+) \\((\\d{4}-\\d{2}-\\d{2})\\)\\s*[-]+\\s*([\\s\\S]*?)(?=").concat(keyword, " \\d+\\.\\d+\\.\\d+ \\(|$)"), 'g');
892
+ var match;
893
+ while ((match = regex.exec(this.changelogContent)) !== null) {
894
+ var version = match[1];
895
+ var date = match[2];
896
+ var changesText = match[3].trim();
897
+ var changes = changesText
898
+ .split('\n')
899
+ .map(function (line) { return line.trim(); })
900
+ .filter(function (line) { return line; });
901
+ changelogData.push({
902
+ changes: changes,
903
+ version: version,
904
+ date: date,
905
+ });
906
+ }
907
+ return changelogData;
908
+ //#endregion
909
+ };
910
+ return BaseReleaseProcess;
911
+ }(base_feature_for_project_1.BaseFeatureForProject));
912
+ exports.BaseReleaseProcess = BaseReleaseProcess;
913
+ //# sourceMappingURL=base-release-process.js.map