tnp-helpers 18.0.17 → 18.0.18

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 (407) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/esm2022/lib/base/classes/base-cli-worker-config.mjs +40 -0
  3. package/browser/esm2022/lib/base/classes/base-cli-worker-controller.mjs +125 -0
  4. package/browser/esm2022/lib/base/classes/base-cli-worker.mjs +466 -0
  5. package/browser/esm2022/lib/base/classes/base-compiler-for-project.mjs +61 -0
  6. package/browser/esm2022/lib/base/classes/base-db.mjs +31 -0
  7. package/browser/esm2022/lib/base/classes/base-debounce-compiler-for-project.mjs +56 -0
  8. package/browser/esm2022/lib/base/classes/base-feature-for-project.mjs +8 -0
  9. package/{websql/esm2022/lib/base → browser/esm2022/lib/base/classes}/base-git.mjs +2 -2
  10. package/{websql/esm2022/lib/base → browser/esm2022/lib/base/classes}/base-github-pages.mjs +2 -2
  11. package/{websql/esm2022/lib/base → browser/esm2022/lib/base/classes}/base-library-build.mjs +3 -3
  12. package/browser/esm2022/lib/base/classes/base-linked-projects.mjs +320 -0
  13. package/browser/esm2022/lib/base/classes/base-npm-helpers.mjs +630 -0
  14. package/browser/esm2022/lib/base/classes/base-project-resolver.mjs +291 -0
  15. package/browser/esm2022/lib/base/classes/base-project.mjs +926 -0
  16. package/browser/esm2022/lib/base/classes/base-quick-fixes.mjs +24 -0
  17. package/{websql/esm2022/lib/base → browser/esm2022/lib/base/classes}/base-release-process.mjs +4 -4
  18. package/browser/esm2022/lib/base/classes/base-vscode.mjs +488 -0
  19. package/browser/esm2022/lib/base/classes/index.mjs +22 -0
  20. package/browser/esm2022/lib/base/commit-data.mjs +1 -1
  21. package/browser/esm2022/lib/base/config-database.mjs +5 -2
  22. package/browser/esm2022/lib/base/core-project.mjs +1 -1
  23. package/browser/esm2022/lib/base/index.mjs +3 -19
  24. package/browser/esm2022/lib/base/project-database.mjs +2 -2
  25. package/browser/esm2022/lib/base/tcp-udp-ports/index.mjs +7 -0
  26. package/browser/esm2022/lib/base/tcp-udp-ports/not-assignable-port.entity.mjs +19 -0
  27. package/browser/esm2022/lib/base/tcp-udp-ports/ports.controller.mjs +108 -0
  28. package/browser/esm2022/lib/base/tcp-udp-ports/ports.entity.mjs +26 -0
  29. package/browser/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +35 -0
  30. package/browser/esm2022/lib/base/tcp-udp-ports/tcp-upd-ports.worker.mjs +122 -0
  31. package/browser/esm2022/lib/utils.mjs +33 -144
  32. package/browser/esm2022/migrations/1736198527297_init.mjs +41 -0
  33. package/browser/esm2022/migrations/1736199486472_addingNotAssignablePorts.mjs +55 -0
  34. package/browser/esm2022/migrations/1736454437350_addFreePorts.mjs +37 -0
  35. package/browser/esm2022/migrations/index.mjs +5 -0
  36. package/browser/esm2022/migrations/migrations_index._auto-generated_.mjs +16 -0
  37. package/browser/fesm2022/tnp-helpers.mjs +2135 -1598
  38. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  39. package/{client/lib/base → browser/lib/base/classes}/base-cli-worker-controller.d.ts +2 -2
  40. package/browser/lib/base/{base-cli-worker.d.ts → classes/base-cli-worker.d.ts} +7 -1
  41. package/browser/lib/base/{base-git.d.ts → classes/base-git.d.ts} +1 -1
  42. package/{client/lib/base → browser/lib/base/classes}/base-library-build.d.ts +1 -1
  43. package/{websql/lib/base → browser/lib/base/classes}/base-linked-projects.d.ts +1 -1
  44. package/{client/lib/base → browser/lib/base/classes}/base-project-resolver.d.ts +4 -4
  45. package/browser/lib/base/{base-project.d.ts → classes/base-project.d.ts} +7 -4
  46. package/browser/lib/base/{base-release-process.d.ts → classes/base-release-process.d.ts} +1 -1
  47. package/browser/lib/base/classes/base-vscode.d.ts +24 -0
  48. package/browser/lib/base/classes/index.d.ts +16 -0
  49. package/browser/lib/base/config-database.d.ts +2 -2
  50. package/browser/lib/base/core-project.d.ts +1 -1
  51. package/browser/lib/base/index.d.ts +3 -16
  52. package/browser/lib/base/project-database.d.ts +2 -2
  53. package/browser/lib/base/tcp-udp-ports/index.d.ts +5 -0
  54. package/browser/lib/base/tcp-udp-ports/not-assignable-port.entity.d.ts +7 -0
  55. package/browser/lib/base/tcp-udp-ports/ports.controller.d.ts +20 -0
  56. package/browser/lib/base/tcp-udp-ports/ports.entity.d.ts +15 -0
  57. package/browser/lib/base/tcp-udp-ports/tcp-udp-ports.context.d.ts +59 -0
  58. package/browser/lib/base/tcp-udp-ports/tcp-upd-ports.worker.d.ts +23 -0
  59. package/browser/lib/utils.d.ts +2 -38
  60. package/browser/migrations/1736198527297_init.d.ts +19 -0
  61. package/browser/migrations/1736199486472_addingNotAssignablePorts.d.ts +11 -0
  62. package/browser/migrations/1736454437350_addFreePorts.d.ts +10 -0
  63. package/browser/migrations/index.d.ts +2 -0
  64. package/browser/migrations/migrations_index._auto-generated_.d.ts +12 -0
  65. package/client/esm2022/lib/base/classes/base-cli-worker-config.mjs +40 -0
  66. package/client/esm2022/lib/base/classes/base-cli-worker-controller.mjs +125 -0
  67. package/client/esm2022/lib/base/classes/base-cli-worker.mjs +466 -0
  68. package/client/esm2022/lib/base/classes/base-compiler-for-project.mjs +61 -0
  69. package/client/esm2022/lib/base/classes/base-db.mjs +31 -0
  70. package/client/esm2022/lib/base/classes/base-debounce-compiler-for-project.mjs +56 -0
  71. package/client/esm2022/lib/base/classes/base-feature-for-project.mjs +8 -0
  72. package/client/esm2022/lib/base/classes/base-git.mjs +932 -0
  73. package/client/esm2022/lib/base/classes/base-github-pages.mjs +110 -0
  74. package/{browser/esm2022/lib/base → client/esm2022/lib/base/classes}/base-library-build.mjs +2 -2
  75. package/client/esm2022/lib/base/classes/base-linked-projects.mjs +320 -0
  76. package/client/esm2022/lib/base/classes/base-npm-helpers.mjs +630 -0
  77. package/client/esm2022/lib/base/classes/base-project-resolver.mjs +291 -0
  78. package/client/esm2022/lib/base/classes/base-project.mjs +926 -0
  79. package/client/esm2022/lib/base/classes/base-quick-fixes.mjs +24 -0
  80. package/{browser/esm2022/lib/base → client/esm2022/lib/base/classes}/base-release-process.mjs +3 -3
  81. package/client/esm2022/lib/base/classes/base-vscode.mjs +488 -0
  82. package/client/esm2022/lib/base/classes/index.mjs +22 -0
  83. package/client/esm2022/lib/base/commit-data.mjs +1 -1
  84. package/client/esm2022/lib/base/config-database.mjs +5 -2
  85. package/client/esm2022/lib/base/core-project.mjs +1 -1
  86. package/client/esm2022/lib/base/index.mjs +3 -19
  87. package/client/esm2022/lib/base/project-database.mjs +2 -2
  88. package/client/esm2022/lib/base/tcp-udp-ports/index.mjs +7 -0
  89. package/client/esm2022/lib/base/tcp-udp-ports/not-assignable-port.entity.mjs +19 -0
  90. package/client/esm2022/lib/base/tcp-udp-ports/ports.controller.mjs +108 -0
  91. package/client/esm2022/lib/base/tcp-udp-ports/ports.entity.mjs +26 -0
  92. package/client/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +35 -0
  93. package/client/esm2022/lib/base/tcp-udp-ports/tcp-upd-ports.worker.mjs +122 -0
  94. package/client/esm2022/lib/utils.mjs +33 -144
  95. package/client/esm2022/migrations/1736198527297_init.mjs +41 -0
  96. package/client/esm2022/migrations/1736199486472_addingNotAssignablePorts.mjs +55 -0
  97. package/client/esm2022/migrations/1736454437350_addFreePorts.mjs +37 -0
  98. package/client/esm2022/migrations/index.mjs +5 -0
  99. package/client/esm2022/migrations/migrations_index._auto-generated_.mjs +16 -0
  100. package/client/fesm2022/tnp-helpers.mjs +2135 -1598
  101. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  102. package/{browser/lib/base → client/lib/base/classes}/base-cli-worker-controller.d.ts +2 -2
  103. package/client/lib/base/{base-cli-worker.d.ts → classes/base-cli-worker.d.ts} +7 -1
  104. package/{websql/lib/base → client/lib/base/classes}/base-git.d.ts +1 -1
  105. package/{browser/lib/base → client/lib/base/classes}/base-library-build.d.ts +1 -1
  106. package/{browser/lib/base → client/lib/base/classes}/base-linked-projects.d.ts +1 -1
  107. package/{websql/lib/base → client/lib/base/classes}/base-project-resolver.d.ts +4 -4
  108. package/client/lib/base/{base-project.d.ts → classes/base-project.d.ts} +7 -4
  109. package/client/lib/base/{base-release-process.d.ts → classes/base-release-process.d.ts} +1 -1
  110. package/client/lib/base/classes/base-vscode.d.ts +24 -0
  111. package/client/lib/base/classes/index.d.ts +16 -0
  112. package/client/lib/base/config-database.d.ts +2 -2
  113. package/client/lib/base/core-project.d.ts +1 -1
  114. package/client/lib/base/index.d.ts +3 -16
  115. package/client/lib/base/project-database.d.ts +2 -2
  116. package/client/lib/base/tcp-udp-ports/index.d.ts +5 -0
  117. package/client/lib/base/tcp-udp-ports/not-assignable-port.entity.d.ts +7 -0
  118. package/client/lib/base/tcp-udp-ports/ports.controller.d.ts +20 -0
  119. package/client/lib/base/tcp-udp-ports/ports.entity.d.ts +15 -0
  120. package/client/lib/base/tcp-udp-ports/tcp-udp-ports.context.d.ts +59 -0
  121. package/client/lib/base/tcp-udp-ports/tcp-upd-ports.worker.d.ts +23 -0
  122. package/client/lib/utils.d.ts +2 -38
  123. package/client/migrations/1736198527297_init.d.ts +19 -0
  124. package/client/migrations/1736199486472_addingNotAssignablePorts.d.ts +11 -0
  125. package/client/migrations/1736454437350_addFreePorts.d.ts +10 -0
  126. package/client/migrations/index.d.ts +2 -0
  127. package/client/migrations/migrations_index._auto-generated_.d.ts +12 -0
  128. package/lib/base/{base-cli-worker-controller.d.ts → classes/base-cli-worker-controller.d.ts} +4 -4
  129. package/lib/base/{base-cli-worker-controller.js → classes/base-cli-worker-controller.js} +3 -3
  130. package/lib/base/classes/base-cli-worker-controller.js.map +1 -0
  131. package/lib/base/{base-cli-worker.d.ts → classes/base-cli-worker.d.ts} +7 -1
  132. package/lib/base/{base-cli-worker.js → classes/base-cli-worker.js} +48 -29
  133. package/lib/base/classes/base-cli-worker.js.map +1 -0
  134. package/lib/base/{command-line-feature.backend.d.ts → classes/base-command-line-feature.backend.d.ts} +1 -1
  135. package/lib/base/{command-line-feature.backend.js → classes/base-command-line-feature.backend.js} +15 -15
  136. package/lib/base/classes/base-command-line-feature.backend.js.map +1 -0
  137. package/lib/base/{base-compiler-for-project.d.ts → classes/base-compiler-for-project.d.ts} +2 -2
  138. package/lib/base/{base-compiler-for-project.js → classes/base-compiler-for-project.js} +1 -1
  139. package/lib/base/{base-compiler-for-project.js.map → classes/base-compiler-for-project.js.map} +1 -1
  140. package/lib/base/{base-db.d.ts → classes/base-db.d.ts} +1 -1
  141. package/lib/base/{base-db.js → classes/base-db.js} +1 -1
  142. package/lib/base/{base-db.js.map → classes/base-db.js.map} +1 -1
  143. package/lib/base/{base-debounce-compiler-for-project.d.ts → classes/base-debounce-compiler-for-project.d.ts} +2 -2
  144. package/lib/base/{base-debounce-compiler-for-project.js.map → classes/base-debounce-compiler-for-project.js.map} +1 -1
  145. package/lib/base/{base-git.d.ts → classes/base-git.d.ts} +1 -1
  146. package/lib/base/{base-git.js → classes/base-git.js} +3 -3
  147. package/lib/base/{base-git.js.map → classes/base-git.js.map} +1 -1
  148. package/lib/base/{base-github-pages.js → classes/base-github-pages.js} +1 -1
  149. package/lib/base/{base-github-pages.js.map → classes/base-github-pages.js.map} +1 -1
  150. package/lib/base/{base-command-line.backend.d.ts → classes/base-global-command-line.backend.d.ts} +17 -4
  151. package/lib/base/{base-command-line.backend.js → classes/base-global-command-line.backend.js} +236 -161
  152. package/lib/base/classes/base-global-command-line.backend.js.map +1 -0
  153. package/lib/base/{base-ignore-hide.js → classes/base-ignore-hide.js} +1 -1
  154. package/lib/base/{base-ignore-hide.js.map → classes/base-ignore-hide.js.map} +1 -1
  155. package/lib/base/{base-library-build.d.ts → classes/base-library-build.d.ts} +3 -3
  156. package/lib/base/{base-library-build.js → classes/base-library-build.js} +2 -2
  157. package/lib/base/{base-library-build.js.map → classes/base-library-build.js.map} +1 -1
  158. package/lib/base/{base-linked-projects.d.ts → classes/base-linked-projects.d.ts} +1 -1
  159. package/lib/base/{base-linked-projects.js → classes/base-linked-projects.js} +1 -1
  160. package/lib/base/{base-linked-projects.js.map → classes/base-linked-projects.js.map} +1 -1
  161. package/lib/base/{base-npm-helpers.d.ts → classes/base-npm-helpers.d.ts} +3 -3
  162. package/lib/base/{base-npm-helpers.js → classes/base-npm-helpers.js} +1 -1
  163. package/lib/base/{base-npm-helpers.js.map → classes/base-npm-helpers.js.map} +1 -1
  164. package/lib/base/{base-project-resolver.d.ts → classes/base-project-resolver.d.ts} +4 -4
  165. package/lib/base/{base-project-resolver.js → classes/base-project-resolver.js} +6 -6
  166. package/lib/base/{base-project-resolver.js.map → classes/base-project-resolver.js.map} +1 -1
  167. package/lib/base/{base-project.d.ts → classes/base-project.d.ts} +10 -7
  168. package/lib/base/{base-project.js → classes/base-project.js} +20 -5
  169. package/lib/base/{base-project.js.map → classes/base-project.js.map} +1 -1
  170. package/lib/base/{base-quick-fixes.js → classes/base-quick-fixes.js} +1 -1
  171. package/lib/base/{base-quick-fixes.js.map → classes/base-quick-fixes.js.map} +1 -1
  172. package/lib/base/{base-release-process.d.ts → classes/base-release-process.d.ts} +3 -3
  173. package/lib/base/{base-release-process.js → classes/base-release-process.js} +2 -2
  174. package/lib/base/{base-release-process.js.map → classes/base-release-process.js.map} +1 -1
  175. package/lib/base/{base-start-config.backend.js → classes/base-start-config.backend.js} +2 -2
  176. package/lib/base/{base-start-config.backend.js.map → classes/base-start-config.backend.js.map} +1 -1
  177. package/lib/base/classes/base-vscode.d.ts +23 -0
  178. package/lib/base/classes/base-vscode.js +451 -0
  179. package/lib/base/classes/base-vscode.js.map +1 -0
  180. package/lib/base/classes/index.d.ts +18 -0
  181. package/lib/base/classes/index.js +24 -0
  182. package/lib/base/classes/index.js.map +1 -0
  183. package/lib/base/commit-data.js.map +1 -1
  184. package/lib/base/config-database.d.ts +2 -2
  185. package/lib/base/config-database.js +5 -8
  186. package/lib/base/config-database.js.map +1 -1
  187. package/lib/base/core-project.d.ts +3 -3
  188. package/lib/base/gh-temp-code.d.ts +1 -1
  189. package/lib/base/index.d.ts +2 -18
  190. package/lib/base/index.js +2 -18
  191. package/lib/base/index.js.map +1 -1
  192. package/lib/base/project-database.d.ts +2 -2
  193. package/lib/base/project-database.js +1 -1
  194. package/lib/base/project-database.js.map +1 -1
  195. package/lib/base/tcp-udp-ports/index.d.ts +4 -0
  196. package/lib/base/tcp-udp-ports/index.js +8 -0
  197. package/lib/base/tcp-udp-ports/index.js.map +1 -0
  198. package/lib/base/tcp-udp-ports/not-assignable-port.entity.d.ts +6 -0
  199. package/lib/base/tcp-udp-ports/not-assignable-port.entity.js +45 -0
  200. package/lib/base/tcp-udp-ports/not-assignable-port.entity.js.map +1 -0
  201. package/lib/base/tcp-udp-ports/ports.controller.d.ts +19 -0
  202. package/lib/base/tcp-udp-ports/ports.controller.js +135 -0
  203. package/lib/base/tcp-udp-ports/ports.controller.js.map +1 -0
  204. package/lib/base/tcp-udp-ports/ports.entity.d.ts +14 -0
  205. package/lib/base/tcp-udp-ports/ports.entity.js +45 -0
  206. package/lib/base/tcp-udp-ports/ports.entity.js.map +1 -0
  207. package/lib/base/tcp-udp-ports/tcp-udp-ports.context.d.ts +58 -0
  208. package/lib/base/tcp-udp-ports/tcp-udp-ports.context.js +41 -0
  209. package/lib/base/tcp-udp-ports/tcp-udp-ports.context.js.map +1 -0
  210. package/lib/base/tcp-udp-ports/tcp-upd-ports.worker.d.ts +31 -0
  211. package/lib/base/tcp-udp-ports/tcp-upd-ports.worker.js +215 -0
  212. package/lib/base/tcp-udp-ports/tcp-upd-ports.worker.js.map +1 -0
  213. package/lib/helpers/for-backend/helpers-cli-tool.backend.d.ts +1 -1
  214. package/lib/helpers/for-backend/helpers-cli-tool.backend.js.map +1 -1
  215. package/lib/helpers/for-backend/helpers-console-gui.js +2 -1
  216. package/lib/helpers/for-backend/helpers-console-gui.js.map +1 -1
  217. package/lib/helpers/for-backend/helpers-file-folders.backend.d.ts +2 -2
  218. package/lib/helpers/for-backend/helpers-git.backend.js +2 -2
  219. package/lib/helpers/for-backend/helpers-git.backend.js.map +1 -1
  220. package/lib/helpers/for-backend/helpers-process.backend.d.ts +3 -3
  221. package/lib/helpers/for-backend/helpers-process.backend.js +4 -26
  222. package/lib/helpers/for-backend/helpers-process.backend.js.map +1 -1
  223. package/lib/helpers/for-backend/helpers-vscode.backend.d.ts +2 -2
  224. package/lib/helpers/for-browser/angular.helper.js +2 -2
  225. package/lib/helpers/helpers.d.ts +1 -1
  226. package/lib/models.d.ts +2 -2
  227. package/lib/old/base-component.js +2 -2
  228. package/lib/old/base-formly-component.js +2 -2
  229. package/lib/old/dual-component-ctrl.js +2 -2
  230. package/lib/utils.d.ts +2 -38
  231. package/lib/utils.js +51 -158
  232. package/lib/utils.js.map +1 -1
  233. package/migrations/1736198527297_init.d.ts +18 -0
  234. package/migrations/1736198527297_init.js +72 -0
  235. package/migrations/1736198527297_init.js.map +1 -0
  236. package/migrations/1736199486472_addingNotAssignablePorts.d.ts +10 -0
  237. package/migrations/1736199486472_addingNotAssignablePorts.js +94 -0
  238. package/migrations/1736199486472_addingNotAssignablePorts.js.map +1 -0
  239. package/migrations/1736454437350_addFreePorts.d.ts +9 -0
  240. package/migrations/1736454437350_addFreePorts.js +78 -0
  241. package/migrations/1736454437350_addFreePorts.js.map +1 -0
  242. package/migrations/migrations_index._auto-generated_.d.ts +11 -0
  243. package/migrations/migrations_index._auto-generated_.js +14 -0
  244. package/migrations/migrations_index._auto-generated_.js.map +1 -1
  245. package/package.json +5 -5
  246. package/tmp-environment.json +30 -29
  247. package/websql/esm2022/lib/base/classes/base-cli-worker-config.mjs +40 -0
  248. package/websql/esm2022/lib/base/classes/base-cli-worker-controller.mjs +125 -0
  249. package/websql/esm2022/lib/base/classes/base-cli-worker.mjs +466 -0
  250. package/websql/esm2022/lib/base/classes/base-compiler-for-project.mjs +61 -0
  251. package/websql/esm2022/lib/base/classes/base-db.mjs +31 -0
  252. package/websql/esm2022/lib/base/classes/base-debounce-compiler-for-project.mjs +56 -0
  253. package/websql/esm2022/lib/base/classes/base-feature-for-project.mjs +8 -0
  254. package/{browser/esm2022/lib/base → websql/esm2022/lib/base/classes}/base-git.mjs +2 -2
  255. package/{client/esm2022/lib/base → websql/esm2022/lib/base/classes}/base-github-pages.mjs +2 -2
  256. package/{client/esm2022/lib/base → websql/esm2022/lib/base/classes}/base-library-build.mjs +3 -3
  257. package/websql/esm2022/lib/base/classes/base-linked-projects.mjs +320 -0
  258. package/websql/esm2022/lib/base/classes/base-npm-helpers.mjs +630 -0
  259. package/websql/esm2022/lib/base/classes/base-project-resolver.mjs +280 -0
  260. package/websql/esm2022/lib/base/classes/base-project.mjs +896 -0
  261. package/websql/esm2022/lib/base/classes/base-quick-fixes.mjs +24 -0
  262. package/{client/esm2022/lib/base → websql/esm2022/lib/base/classes}/base-release-process.mjs +4 -4
  263. package/websql/esm2022/lib/base/classes/base-vscode.mjs +488 -0
  264. package/websql/esm2022/lib/base/classes/index.mjs +22 -0
  265. package/websql/esm2022/lib/base/commit-data.mjs +1 -1
  266. package/websql/esm2022/lib/base/config-database.mjs +5 -2
  267. package/websql/esm2022/lib/base/core-project.mjs +1 -1
  268. package/websql/esm2022/lib/base/index.mjs +3 -19
  269. package/websql/esm2022/lib/base/project-database.mjs +2 -2
  270. package/websql/esm2022/lib/base/tcp-udp-ports/index.mjs +7 -0
  271. package/websql/esm2022/lib/base/tcp-udp-ports/not-assignable-port.entity.mjs +34 -0
  272. package/websql/esm2022/lib/base/tcp-udp-ports/ports.controller.mjs +108 -0
  273. package/websql/esm2022/lib/base/tcp-udp-ports/ports.entity.mjs +34 -0
  274. package/websql/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +35 -0
  275. package/websql/esm2022/lib/base/tcp-udp-ports/tcp-upd-ports.worker.mjs +122 -0
  276. package/websql/esm2022/lib/utils.mjs +33 -144
  277. package/websql/esm2022/migrations/1736198527297_init.mjs +41 -0
  278. package/websql/esm2022/migrations/1736199486472_addingNotAssignablePorts.mjs +55 -0
  279. package/websql/esm2022/migrations/1736454437350_addFreePorts.mjs +37 -0
  280. package/websql/esm2022/migrations/index.mjs +5 -0
  281. package/websql/esm2022/migrations/migrations_index._auto-generated_.mjs +16 -0
  282. package/websql/fesm2022/tnp-helpers.mjs +1936 -1379
  283. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  284. package/websql/lib/base/{base-cli-worker-controller.d.ts → classes/base-cli-worker-controller.d.ts} +2 -2
  285. package/websql/lib/base/{base-cli-worker.d.ts → classes/base-cli-worker.d.ts} +7 -1
  286. package/{client/lib/base → websql/lib/base/classes}/base-git.d.ts +1 -1
  287. package/websql/lib/base/{base-library-build.d.ts → classes/base-library-build.d.ts} +1 -1
  288. package/{client/lib/base → websql/lib/base/classes}/base-linked-projects.d.ts +1 -1
  289. package/{browser/lib/base → websql/lib/base/classes}/base-project-resolver.d.ts +4 -4
  290. package/websql/lib/base/{base-project.d.ts → classes/base-project.d.ts} +7 -4
  291. package/websql/lib/base/{base-release-process.d.ts → classes/base-release-process.d.ts} +1 -1
  292. package/websql/lib/base/classes/base-vscode.d.ts +24 -0
  293. package/websql/lib/base/classes/index.d.ts +16 -0
  294. package/websql/lib/base/config-database.d.ts +2 -2
  295. package/websql/lib/base/core-project.d.ts +1 -1
  296. package/websql/lib/base/index.d.ts +3 -16
  297. package/websql/lib/base/project-database.d.ts +2 -2
  298. package/websql/lib/base/tcp-udp-ports/index.d.ts +5 -0
  299. package/websql/lib/base/tcp-udp-ports/not-assignable-port.entity.d.ts +7 -0
  300. package/websql/lib/base/tcp-udp-ports/ports.controller.d.ts +20 -0
  301. package/websql/lib/base/tcp-udp-ports/ports.entity.d.ts +15 -0
  302. package/websql/lib/base/tcp-udp-ports/tcp-udp-ports.context.d.ts +59 -0
  303. package/websql/lib/base/tcp-udp-ports/tcp-upd-ports.worker.d.ts +23 -0
  304. package/websql/lib/utils.d.ts +2 -38
  305. package/websql/migrations/1736198527297_init.d.ts +19 -0
  306. package/websql/migrations/1736199486472_addingNotAssignablePorts.d.ts +11 -0
  307. package/websql/migrations/1736454437350_addFreePorts.d.ts +10 -0
  308. package/websql/migrations/index.d.ts +2 -0
  309. package/websql/migrations/migrations_index._auto-generated_.d.ts +12 -0
  310. package/browser/esm2022/lib/base/base-cli-worker-config.mjs +0 -40
  311. package/browser/esm2022/lib/base/base-cli-worker-controller.mjs +0 -125
  312. package/browser/esm2022/lib/base/base-cli-worker.mjs +0 -451
  313. package/browser/esm2022/lib/base/base-compiler-for-project.mjs +0 -61
  314. package/browser/esm2022/lib/base/base-db.mjs +0 -31
  315. package/browser/esm2022/lib/base/base-debounce-compiler-for-project.mjs +0 -56
  316. package/browser/esm2022/lib/base/base-feature-for-project.mjs +0 -8
  317. package/browser/esm2022/lib/base/base-github-pages.mjs +0 -110
  318. package/browser/esm2022/lib/base/base-linked-projects.mjs +0 -321
  319. package/browser/esm2022/lib/base/base-npm-helpers.mjs +0 -630
  320. package/browser/esm2022/lib/base/base-project-resolver.mjs +0 -291
  321. package/browser/esm2022/lib/base/base-project.mjs +0 -919
  322. package/browser/esm2022/lib/base/base-quick-fixes.mjs +0 -24
  323. package/browser/esm2022/lib/base/base-vscode.mjs +0 -145
  324. package/browser/esm2022/lib/base/ports-worker.mjs +0 -162
  325. package/browser/lib/base/base-vscode.d.ts +0 -13
  326. package/browser/lib/base/ports-worker.d.ts +0 -33
  327. package/client/esm2022/lib/base/base-cli-worker-config.mjs +0 -40
  328. package/client/esm2022/lib/base/base-cli-worker-controller.mjs +0 -125
  329. package/client/esm2022/lib/base/base-cli-worker.mjs +0 -451
  330. package/client/esm2022/lib/base/base-compiler-for-project.mjs +0 -61
  331. package/client/esm2022/lib/base/base-db.mjs +0 -31
  332. package/client/esm2022/lib/base/base-debounce-compiler-for-project.mjs +0 -56
  333. package/client/esm2022/lib/base/base-feature-for-project.mjs +0 -8
  334. package/client/esm2022/lib/base/base-git.mjs +0 -932
  335. package/client/esm2022/lib/base/base-linked-projects.mjs +0 -321
  336. package/client/esm2022/lib/base/base-npm-helpers.mjs +0 -630
  337. package/client/esm2022/lib/base/base-project-resolver.mjs +0 -291
  338. package/client/esm2022/lib/base/base-project.mjs +0 -919
  339. package/client/esm2022/lib/base/base-quick-fixes.mjs +0 -24
  340. package/client/esm2022/lib/base/base-vscode.mjs +0 -145
  341. package/client/esm2022/lib/base/ports-worker.mjs +0 -162
  342. package/client/lib/base/base-vscode.d.ts +0 -13
  343. package/client/lib/base/ports-worker.d.ts +0 -33
  344. package/lib/base/base-cli-worker-controller.js.map +0 -1
  345. package/lib/base/base-cli-worker.js.map +0 -1
  346. package/lib/base/base-command-line.backend.js.map +0 -1
  347. package/lib/base/base-vscode.d.ts +0 -12
  348. package/lib/base/base-vscode.js +0 -139
  349. package/lib/base/base-vscode.js.map +0 -1
  350. package/lib/base/command-line-feature.backend.js.map +0 -1
  351. package/lib/base/ports-worker.d.ts +0 -32
  352. package/lib/base/ports-worker.js +0 -244
  353. package/lib/base/ports-worker.js.map +0 -1
  354. package/websql/esm2022/lib/base/base-cli-worker-config.mjs +0 -40
  355. package/websql/esm2022/lib/base/base-cli-worker-controller.mjs +0 -125
  356. package/websql/esm2022/lib/base/base-cli-worker.mjs +0 -451
  357. package/websql/esm2022/lib/base/base-compiler-for-project.mjs +0 -61
  358. package/websql/esm2022/lib/base/base-db.mjs +0 -31
  359. package/websql/esm2022/lib/base/base-debounce-compiler-for-project.mjs +0 -56
  360. package/websql/esm2022/lib/base/base-feature-for-project.mjs +0 -8
  361. package/websql/esm2022/lib/base/base-linked-projects.mjs +0 -321
  362. package/websql/esm2022/lib/base/base-npm-helpers.mjs +0 -630
  363. package/websql/esm2022/lib/base/base-project-resolver.mjs +0 -280
  364. package/websql/esm2022/lib/base/base-project.mjs +0 -889
  365. package/websql/esm2022/lib/base/base-quick-fixes.mjs +0 -24
  366. package/websql/esm2022/lib/base/base-vscode.mjs +0 -145
  367. package/websql/esm2022/lib/base/ports-worker.mjs +0 -165
  368. package/websql/lib/base/base-vscode.d.ts +0 -13
  369. package/websql/lib/base/ports-worker.d.ts +0 -33
  370. /package/browser/lib/base/{base-cli-worker-config.d.ts → classes/base-cli-worker-config.d.ts} +0 -0
  371. /package/browser/lib/base/{base-compiler-for-project.d.ts → classes/base-compiler-for-project.d.ts} +0 -0
  372. /package/browser/lib/base/{base-db.d.ts → classes/base-db.d.ts} +0 -0
  373. /package/browser/lib/base/{base-debounce-compiler-for-project.d.ts → classes/base-debounce-compiler-for-project.d.ts} +0 -0
  374. /package/browser/lib/base/{base-feature-for-project.d.ts → classes/base-feature-for-project.d.ts} +0 -0
  375. /package/browser/lib/base/{base-github-pages.d.ts → classes/base-github-pages.d.ts} +0 -0
  376. /package/browser/lib/base/{base-npm-helpers.d.ts → classes/base-npm-helpers.d.ts} +0 -0
  377. /package/browser/lib/base/{base-quick-fixes.d.ts → classes/base-quick-fixes.d.ts} +0 -0
  378. /package/client/lib/base/{base-cli-worker-config.d.ts → classes/base-cli-worker-config.d.ts} +0 -0
  379. /package/client/lib/base/{base-compiler-for-project.d.ts → classes/base-compiler-for-project.d.ts} +0 -0
  380. /package/client/lib/base/{base-db.d.ts → classes/base-db.d.ts} +0 -0
  381. /package/client/lib/base/{base-debounce-compiler-for-project.d.ts → classes/base-debounce-compiler-for-project.d.ts} +0 -0
  382. /package/client/lib/base/{base-feature-for-project.d.ts → classes/base-feature-for-project.d.ts} +0 -0
  383. /package/client/lib/base/{base-github-pages.d.ts → classes/base-github-pages.d.ts} +0 -0
  384. /package/client/lib/base/{base-npm-helpers.d.ts → classes/base-npm-helpers.d.ts} +0 -0
  385. /package/client/lib/base/{base-quick-fixes.d.ts → classes/base-quick-fixes.d.ts} +0 -0
  386. /package/lib/base/{base-cli-worker-config.d.ts → classes/base-cli-worker-config.d.ts} +0 -0
  387. /package/lib/base/{base-cli-worker-config.js → classes/base-cli-worker-config.js} +0 -0
  388. /package/lib/base/{base-cli-worker-config.js.map → classes/base-cli-worker-config.js.map} +0 -0
  389. /package/lib/base/{base-debounce-compiler-for-project.js → classes/base-debounce-compiler-for-project.js} +0 -0
  390. /package/lib/base/{base-detached-service.d.ts → classes/base-detached-service.d.ts} +0 -0
  391. /package/lib/base/{base-detached-service.js → classes/base-detached-service.js} +0 -0
  392. /package/lib/base/{base-detached-service.js.map → classes/base-detached-service.js.map} +0 -0
  393. /package/lib/base/{base-feature-for-project.d.ts → classes/base-feature-for-project.d.ts} +0 -0
  394. /package/lib/base/{base-feature-for-project.js → classes/base-feature-for-project.js} +0 -0
  395. /package/lib/base/{base-feature-for-project.js.map → classes/base-feature-for-project.js.map} +0 -0
  396. /package/lib/base/{base-github-pages.d.ts → classes/base-github-pages.d.ts} +0 -0
  397. /package/lib/base/{base-ignore-hide.d.ts → classes/base-ignore-hide.d.ts} +0 -0
  398. /package/lib/base/{base-quick-fixes.d.ts → classes/base-quick-fixes.d.ts} +0 -0
  399. /package/lib/base/{base-start-config.backend.d.ts → classes/base-start-config.backend.d.ts} +0 -0
  400. /package/websql/lib/base/{base-cli-worker-config.d.ts → classes/base-cli-worker-config.d.ts} +0 -0
  401. /package/websql/lib/base/{base-compiler-for-project.d.ts → classes/base-compiler-for-project.d.ts} +0 -0
  402. /package/websql/lib/base/{base-db.d.ts → classes/base-db.d.ts} +0 -0
  403. /package/websql/lib/base/{base-debounce-compiler-for-project.d.ts → classes/base-debounce-compiler-for-project.d.ts} +0 -0
  404. /package/websql/lib/base/{base-feature-for-project.d.ts → classes/base-feature-for-project.d.ts} +0 -0
  405. /package/websql/lib/base/{base-github-pages.d.ts → classes/base-github-pages.d.ts} +0 -0
  406. /package/websql/lib/base/{base-npm-helpers.d.ts → classes/base-npm-helpers.d.ts} +0 -0
  407. /package/websql/lib/base/{base-quick-fixes.d.ts → classes/base-quick-fixes.d.ts} +0 -0
@@ -1,630 +0,0 @@
1
- /* */
2
- /* */
3
- /* */
4
- /* */
5
- /* */
6
- /* */
7
- /* */
8
- /* */
9
- import { _ } from 'tnp-core/websql';
10
- import { Helpers } from '../index';
11
- import { BaseFeatureForProject } from './base-feature-for-project';
12
- import { config } from 'tnp-config/websql';
13
- export class BaseNpmHelpers extends BaseFeatureForProject {
14
- constructor(project) {
15
- super(project);
16
- this.project = project;
17
- this.reloadPackageJsonInMemory();
18
- }
19
- updateDepsFrom(locations) {
20
- /* */
21
- /* */
22
- /* */
23
- /* */
24
- /* */
25
- /* */
26
- /* */
27
- /* */
28
- /* */
29
- /* */
30
- /* */
31
- /* */
32
- /* */
33
- /* */
34
- return (void 0);
35
- }
36
- /**
37
- * if something else change package.json in this project
38
- * and you know that you need to reload it..
39
- */
40
- reloadPackageJsonInMemory() {
41
- this.packageJSON = this.project.readJson(config.file.package_json);
42
- }
43
- get name() {
44
- return this.packageJSON?.name || '';
45
- }
46
- /**
47
- * version from package.json -> property version
48
- */
49
- get version() {
50
- return this.packageJSON?.version;
51
- }
52
- /**
53
- * bin with cli config from package.json
54
- */
55
- get bin() {
56
- return (this.packageJSON?.bin || {});
57
- }
58
- set version(newVersion) {
59
- this.packageJSON.version = newVersion;
60
- this.project.writeJson(config.file.package_json, this.packageJSON);
61
- }
62
- /**
63
- * @deprecated use updateDep
64
- */
65
- updateDependency({ packageName, version, updateTaonJsonFirst, }) {
66
- /* */
67
- /* */
68
- /* */
69
- /* */
70
- /* */
71
- /* */
72
- /* */
73
- /* */
74
- /* */
75
- /* */
76
- /* */
77
- /* */
78
- /* */
79
- /* */
80
- /* */
81
- /* */
82
- /* */
83
- /* */
84
- /* */
85
- /* */
86
- /* */
87
- /* */
88
- /* */
89
- /* */
90
- /* */
91
- /* */
92
- /* */
93
- /* */
94
- /* */
95
- /* */
96
- /* */
97
- /* */
98
- /* */
99
- /* */
100
- /* */
101
- /* */
102
- return (void 0);
103
- }
104
- /**
105
- * Update dependency in package.json
106
- */
107
- async updateDep({ packageName, version, updateTaonJsonFirst, addIfNotExists, }) {
108
- /* */
109
- /* */
110
- /* */
111
- /* */
112
- /* */
113
- /* */
114
- /* */
115
- /* */
116
- /* */
117
- /* */
118
- /* */
119
- /* */
120
- /* */
121
- /* */
122
- /* */
123
- /* */
124
- /* */
125
- /* */
126
- /* */
127
- /* */
128
- /* */
129
- /* */
130
- /* */
131
- /* */
132
- /* */
133
- /* */
134
- /* */
135
- /* */
136
- /* */
137
- /* */
138
- /* */
139
- /* */
140
- /* */
141
- /* */
142
- /* */
143
- /* */
144
- /* */
145
- /* */
146
- /* */
147
- /* */
148
- /* */
149
- /* */
150
- /* */
151
- /* */
152
- /* */
153
- /* */
154
- /* */
155
- /* */
156
- /* */
157
- /* */
158
- /* */
159
- /* */
160
- /* */
161
- /* */
162
- /* */
163
- /* */
164
- /* */
165
- /* */
166
- /* */
167
- /* */
168
- return (void 0);
169
- }
170
- get versionWithPatchPlusOne() {
171
- const ver = this.version.split('.');
172
- if (ver.length > 0) {
173
- ver[ver.length - 1] = (parseInt(_.last(ver)) + 1).toString();
174
- }
175
- return ver.join('.');
176
- }
177
- get versionWithMinorPlusOneAndPatchZero() {
178
- const ver = this.version.split('.');
179
- if (ver.length > 1) {
180
- ver[1] = (parseInt(ver[1]) + 1).toString();
181
- for (let index = 2; index < ver.length; index++) {
182
- ver[index] = '0';
183
- }
184
- }
185
- else {
186
- Helpers.warn(`[npm-project] something went wrong with bumping minor version`);
187
- }
188
- return ver.join('.');
189
- }
190
- get versionWithMajorPlusOneAndMinorZeroAndPatchZero() {
191
- const ver = this.version.split('.');
192
- if (ver.length > 0) {
193
- ver[0] = (parseInt(_.first(ver)) + 1).toString();
194
- for (let index = 1; index < ver.length; index++) {
195
- ver[index] = '0';
196
- }
197
- }
198
- else {
199
- Helpers.warn(`[npm-project] something went wrong with bumping major version`);
200
- }
201
- return ver.join('.');
202
- }
203
- /**
204
- * Major Version from package.json
205
- */
206
- // @ts-ignore
207
- get majorVersion() {
208
- /* */
209
- /* */
210
- return (void 0);
211
- }
212
- /**
213
- * Minor Version from package.json
214
- */
215
- // @ts-ignore
216
- get minorVersion() {
217
- /* */
218
- /* */
219
- /* */
220
- return (void 0);
221
- }
222
- /**
223
- * @deprecated
224
- */
225
- async bumpPatchVersion() {
226
- /* */
227
- /* */
228
- /* */
229
- /* */
230
- /* */
231
- /* */
232
- /* */
233
- /* */
234
- /* */
235
- /* */
236
- /* */
237
- /* */
238
- /* */
239
- /* */
240
- /* */
241
- /* */
242
- /* */
243
- /* */
244
- /* */
245
- /* */
246
- /* */
247
- /* */
248
- /* */
249
- /* */
250
- /* */
251
- /* */
252
- return (void 0);
253
- }
254
- get versionPathAsNumber() {
255
- /* */
256
- /* */
257
- /* */
258
- /* */
259
- return (void 0);
260
- }
261
- /**
262
- * npm dependencies from package.json
263
- */
264
- get dependencies() {
265
- return (this.packageJSON ? this.packageJSON.dependencies : {}) || {};
266
- }
267
- /**
268
- * peerDependencies dependencies
269
- */
270
- get peerDependencies() {
271
- return (this.packageJSON ? this.packageJSON.peerDependencies : {}) || {};
272
- }
273
- /**
274
- * devDependencies dependencies
275
- */
276
- get devDependencies() {
277
- return (this.packageJSON ? this.packageJSON.devDependencies : {}) || {};
278
- }
279
- /**
280
- * resolutions dependencies
281
- */
282
- get resolutions() {
283
- return (this.packageJSON ? this.packageJSON['resolutions'] : {}) || {};
284
- }
285
- /**
286
- * @returns object witl all deps from current project package json
287
- */
288
- get allDependencies() {
289
- return this.allDepsFromPackageJson(this.packageJSON);
290
- }
291
- /**
292
- * @returns object witl all deps from package json
293
- */
294
- allDepsFromPackageJson(packageJson) {
295
- return _.merge({
296
- ...(packageJson.devDependencies || {}),
297
- ...(packageJson.peerDependencies || {}),
298
- ...(packageJson.dependencies || {}),
299
- ...(packageJson.resolutions || {}),
300
- });
301
- }
302
- linkNodeModulesTo(proj) {
303
- /* */
304
- /* */
305
- /* */
306
- /* */
307
- /* */
308
- return (void 0);
309
- }
310
- preferYarnOverNpm() {
311
- return false;
312
- }
313
- async makeSureNodeModulesInstalled(options) {
314
- if (this.emptyNodeModules) {
315
- await this.reinstallNodeModules(options);
316
- }
317
- }
318
- deleteNodeModules() {
319
- this.project.remove(config.folder.node_modules);
320
- }
321
- async reinstallNodeModules(options) {
322
- /* */
323
- /* */
324
- /* */
325
- /* */
326
- /* */
327
- /* */
328
- /* */
329
- /* */
330
- /* */
331
- /* */
332
- /* */
333
- /* */
334
- /* */
335
- /* */
336
- /* */
337
- /* */
338
- /* */
339
- /* */
340
- /* */
341
- /* */
342
- /* */
343
- /* */
344
- /* */
345
- /* */
346
- /* */
347
- /* */
348
- /* */
349
- /* */
350
- /* */
351
- /* */
352
- /* */
353
- /* */
354
- /* */
355
- /* */
356
- /* */
357
- /* */
358
- /* */
359
- /* */
360
- /* */
361
- /* */
362
- /* */
363
- /* */
364
- /* */
365
- /* */
366
- /* */
367
- /* */
368
- /* */
369
- /* */
370
- /* */
371
- /* */
372
- /* */
373
- /* */
374
- /* */
375
- /* */
376
- /* */
377
- /* */
378
- /* */
379
- /* */
380
- /* */
381
- /* */
382
- /* */
383
- return (void 0);
384
- }
385
- /**
386
- * @returns true if node_modules folder is empty
387
- */
388
- get emptyNodeModules() {
389
- /* */
390
- /* */
391
- /* */
392
- /* */
393
- /* */
394
- /* */
395
- /* */
396
- /* */
397
- /* */
398
- /* */
399
- /* */
400
- /* */
401
- /* */
402
- /* */
403
- /* */
404
- /* */
405
- /* */
406
- /* */
407
- /* */
408
- /* */
409
- /* */
410
- /* */
411
- /* */
412
- /* */
413
- /* */
414
- /* */
415
- /* */
416
- /* */
417
- /* */
418
- /* */
419
- /* */
420
- /* */
421
- /* */
422
- /* */
423
- /* */
424
- /* */
425
- /* */
426
- /* */
427
- /* */
428
- /* */
429
- /* */
430
- /* */
431
- /* */
432
- /* */
433
- /* */
434
- /* */
435
- /* */
436
- /* */
437
- /* */
438
- /* */
439
- /* */
440
- /* */
441
- /* */
442
- /* */
443
- /* */
444
- /* */
445
- /* */
446
- /* */
447
- /* */
448
- /* */
449
- /* */
450
- /* */
451
- return (void 0);
452
- }
453
- async resetPackageLockJson() {
454
- /* */
455
- /* */
456
- /* */
457
- /* */
458
- /* */
459
- /* */
460
- /* */
461
- /* */
462
- /* */
463
- /* */
464
- /* */
465
- /* */
466
- /* */
467
- /* */
468
- /* */
469
- /* */
470
- /* */
471
- /* */
472
- /* */
473
- /* */
474
- return (void 0);
475
- }
476
- startNpmTask(taskName, additionalArguments) {
477
- if (_.isObject(additionalArguments)) {
478
- additionalArguments = Object.keys(additionalArguments)
479
- .map(k => `--${k} ${additionalArguments[k]}`)
480
- .join(' ');
481
- }
482
- const command = `npm run ${taskName} ${additionalArguments ? ' -- ' + additionalArguments : ''}`;
483
- Helpers.info(`Starting npm task: "${command}"`);
484
- return this.project.run(command, {
485
- output: true,
486
- biggerBuffer: true,
487
- });
488
- }
489
- async prepareCommand(options) {
490
- let { pkg, silent, useYarn, force, removeYarnOrPackageJsonLock, generateYarnOrPackageJsonLock, } = options || {};
491
- force = true; // TODO QUICK_FIX
492
- let command = '';
493
- const commonOptions = `--ignore-engines`;
494
- if (useYarn) {
495
- const argsForFasterInstall = `${force ? '--force' : ''} ${commonOptions} `;
496
- command =
497
- `${removeYarnOrPackageJsonLock
498
- ? `(rm ${config.file.yarn_lock} || true) ` +
499
- `&& touch ${config.file.yarn_lock} && `
500
- : ''}` +
501
- `yarn ${pkg ? (pkg?.installType === 'remove' ? 'remove' : 'add') : 'install'} ${pkg ? pkg.name : ''} ` +
502
- ` ${generateYarnOrPackageJsonLock ? '' : '--no-lockfile'} ` +
503
- ` ${argsForFasterInstall} ` +
504
- ` ${pkg && pkg.installType && pkg.installType === '--save-dev' ? '-dev' : ''} `;
505
- }
506
- else {
507
- const argsForFasterInstall = `${force ? '--force' : ''} ${commonOptions} --no-audit ` +
508
- `${silent ? '--silent --no-progress' : ''} `;
509
- command =
510
- `${removeYarnOrPackageJsonLock
511
- ? `(rm ${config.file.package_lock_json} || true) ` +
512
- `&& touch ${config.file.package_lock_json} && `
513
- : ''}` +
514
- `npx --node-options=--max-old-space-size=8000 npm ` +
515
- `${pkg?.installType === 'remove' ? 'uninstall' : 'install'} ${pkg ? pkg.name : ''} ` +
516
- ` ${generateYarnOrPackageJsonLock ? '' : '--no-package-lock'} ` +
517
- ` ${pkg && pkg.installType ? pkg.installType : ''} ` +
518
- ` ${argsForFasterInstall} `;
519
- }
520
- Helpers.info(`Command for npm install:
521
-
522
- ${command}
523
-
524
- `);
525
- return command;
526
- }
527
- /**
528
- *
529
- * @param registry without specified registr is checking npm registry
530
- * @returns
531
- */
532
- async isLoggedInToRegistry(registry) {
533
- /* */
534
- /* */
535
- /* */
536
- /* */
537
- /* */
538
- /* */
539
- /* */
540
- /* */
541
- /* */
542
- /* */
543
- /* */
544
- /* */
545
- /* */
546
- /* */
547
- /* */
548
- /* */
549
- /* */
550
- /* */
551
- /* */
552
- /* */
553
- /* */
554
- /* */
555
- return (void 0);
556
- }
557
- /**
558
- * Prompt the user to log in to a specific npm registry.
559
- * @param {string} [registry] - Optional npm registry URL.
560
- * @returns {Promise<void>} - A promise that resolves when the login process completes.
561
- */
562
- async loginToRegistry(registry) {
563
- /* */
564
- /* */
565
- /* */
566
- /* */
567
- /* */
568
- /* */
569
- /* */
570
- /* */
571
- /* */
572
- /* */
573
- /* */
574
- /* */
575
- /* */
576
- /* */
577
- /* */
578
- /* */
579
- /* */
580
- /* */
581
- return (void 0);
582
- }
583
- async makeSureLoggedInToNpmRegistry(registry) {
584
- /* */
585
- /* */
586
- /* */
587
- /* */
588
- /* */
589
- /* */
590
- /* */
591
- /* */
592
- /* */
593
- /* */
594
- /* */
595
- /* */
596
- /* */
597
- /* */
598
- /* */
599
- /* */
600
- /* */
601
- /* */
602
- /* */
603
- /* */
604
- /* */
605
- /* */
606
- /* */
607
- /* */
608
- /* */
609
- return (void 0);
610
- }
611
- /**
612
- * @deprecated
613
- * use makeSureLoggedInToNpmRegistry()
614
- */
615
- checkIfLogginInToNpm() {
616
- /* */
617
- /* */
618
- /* */
619
- /* */
620
- /* */
621
- /* */
622
- /* */
623
- /* */
624
- /* */
625
- return (void 0);
626
- }
627
- }
628
- ;
629
- ({}); // @--end-of-file-for-module=tnp-helpers lib/base/base-npm-helpers.ts
630
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1ucG0taGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2Jhc2UvYmFzZS1ucG0taGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUVMLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRW5FLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUszQyxNQUFNLE9BQU8sY0FFWCxTQUFRLHFCQUFxQjtJQUU3QixZQUFZLE9BQWdCO1FBQzFCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCxjQUFjLENBQUMsU0FBbUI7UUFDcEMsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBR0Q7OztPQUdHO0lBQ0gseUJBQXlCO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMs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O1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBSUQ7O09BRUc7SUFDSCxJQUFJLGdCQUFnQjtRQUN0QixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNM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O1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7Q0FFRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMscUVBQXFFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gIFxuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL3dlYnNxbCc7XG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAnLi4vaW5kZXgnO1xuaW1wb3J0IHsgQmFzZUZlYXR1cmVGb3JQcm9qZWN0IH0gZnJvbSAnLi9iYXNlLWZlYXR1cmUtZm9yLXByb2plY3QnO1xuaW1wb3J0IHR5cGUgeyBCYXNlUHJvamVjdCB9IGZyb20gJy4vYmFzZS1wcm9qZWN0JztcbmltcG9ydCB7IGNvbmZpZyB9IGZyb20gJ3RucC1jb25maWcvd2Vic3FsJztcbmltcG9ydCB7IFBhY2thZ2VKc29uIH0gZnJvbSAndHlwZS1mZXN0JztcbmltcG9ydCB7IENvcmVNb2RlbHMgfSBmcm9tICd0bnAtY29yZS93ZWJzcWwnO1xuXG5cbmV4cG9ydCBjbGFzcyBCYXNlTnBtSGVscGVyczxcbiAgUFJPSkVDVCBleHRlbmRzIEJhc2VQcm9qZWN0ID0gYW55LFxuPiBleHRlbmRzIEJhc2VGZWF0dXJlRm9yUHJvamVjdCB7XG4gIHByaXZhdGUgcGFja2FnZUpTT046IFBhY2thZ2VKc29uO1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQUk9KRUNUKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG4gICAgdGhpcy5wcm9qZWN0ID0gcHJvamVjdDtcbiAgICB0aGlzLnJlbG9hZFBhY2thZ2VKc29uSW5NZW1vcnkoKTtcbiAgfVxuXG4gIHVwZGF0ZURlcHNGcm9tKGxvY2F0aW9uczogc3RyaW5nW10pIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIGlmIHNvbWV0aGluZyBlbHNlIGNoYW5nZSBwYWNrYWdlLmpzb24gaW4gdGhpcyBwcm9qZWN0XG4gICAqIGFuZCB5b3Uga25vdyB0aGF0IHlvdSBuZWVkIHRvIHJlbG9hZCBpdC4uXG4gICAqL1xuICByZWxvYWRQYWNrYWdlSnNvbkluTWVtb3J5KCk6IHZvaWQge1xuICAgIHRoaXMucGFja2FnZUpTT04gPSB0aGlzLnByb2plY3QucmVhZEpzb24oY29uZmlnLmZpbGUucGFja2FnZV9qc29uKTtcbiAgfVxuXG5cblxuICBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnBhY2thZ2VKU09OPy5uYW1lIHx8ICcnO1xuICB9XG5cblxuXG4gIC8qKlxuICAgKiB2ZXJzaW9uIGZyb20gcGFja2FnZS5qc29uIC0+IHByb3BlcnR5IHZlcnNpb25cbiAgICovXG4gIGdldCB2ZXJzaW9uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucGFja2FnZUpTT04/LnZlcnNpb247XG4gIH1cblxuXG4gIC8qKlxuICAgKiBiaW4gd2l0aCBjbGkgY29uZmlnIGZyb20gcGFja2FnZS5qc29uXG4gICAqL1xuICBnZXQgYmluKCk6IHsgW2NsaU5hbWU6IHN0cmluZ106IHN0cmluZyB9IHtcbiAgICByZXR1cm4gKHRoaXMucGFja2FnZUpTT04/LmJpbiB8fCB7fSkgYXMgYW55O1xuICB9XG5cblxuICBzZXQgdmVyc2lvbihuZXdWZXJzaW9uOiBzdHJpbmcpIHtcbiAgICB0aGlzLnBhY2thZ2VKU09OLnZlcnNpb24gPSBuZXdWZXJzaW9uO1xuICAgIHRoaXMucHJvamVjdC53cml0ZUpzb24oY29uZmlnLmZpbGUucGFja2FnZV9qc29uLCB0aGlzLnBhY2thZ2VKU09OKTtcbiAgfVxuXG5cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgdXNlIHVwZGF0ZURlcFxuICAgKi9cbiAgdXBkYXRlRGVwZW5kZW5jeSh7XG4gICAgcGFja2FnZU5hbWUsXG4gICAgdmVyc2lvbixcbiAgICB1cGRhdGVUYW9uSnNvbkZpcnN0LFxuICB9OiB7XG4gICAgcGFja2FnZU5hbWU6IHN0cmluZztcbiAgICB2ZXJzaW9uOiBzdHJpbmcgfCBudWxsO1xuICAgIHVwZGF0ZVRhb25Kc29uRmlyc3Q/OiBib29sZWFuO1xuICB9KTogdm9pZCB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIC8qKlxuICAgKiBVcGRhdGUgZGVwZW5kZW5jeSBpbiBwYWNrYWdlLmpzb25cbiAgICovXG4gIGFzeW5jIHVwZGF0ZURlcCh7XG4gICAgcGFja2FnZU5hbWUsXG4gICAgdmVyc2lvbixcbiAgICB1cGRhdGVUYW9uSnNvbkZpcnN0LFxuICAgIGFkZElmTm90RXhpc3RzLFxuICB9OiB7XG4gICAgcGFja2FnZU5hbWU6IHN0cmluZztcbiAgICB2ZXJzaW9uOiBzdHJpbmcgfCBudWxsO1xuICAgIHVwZGF0ZVRhb25Kc29uRmlyc3Q/OiBib29sZWFuO1xuICAgIGFkZElmTm90RXhpc3RzPzogYm9vbGVhbjtcbiAgfSk6IFByb21pc2U8dm9pZD4ge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICBnZXQgdmVyc2lvbldpdGhQYXRjaFBsdXNPbmUoKTogc3RyaW5nIHtcbiAgICBjb25zdCB2ZXIgPSB0aGlzLnZlcnNpb24uc3BsaXQoJy4nKTtcbiAgICBpZiAodmVyLmxlbmd0aCA+IDApIHtcbiAgICAgIHZlclt2ZXIubGVuZ3RoIC0gMV0gPSAocGFyc2VJbnQoXy5sYXN0KHZlcikpICsgMSkudG9TdHJpbmcoKTtcbiAgICB9XG4gICAgcmV0dXJuIHZlci5qb2luKCcuJyk7XG4gIH1cblxuXG5cbiAgZ2V0IHZlcnNpb25XaXRoTWlub3JQbHVzT25lQW5kUGF0Y2haZXJvKCk6IHN0cmluZyB7XG4gICAgY29uc3QgdmVyID0gdGhpcy52ZXJzaW9uLnNwbGl0KCcuJyk7XG4gICAgaWYgKHZlci5sZW5ndGggPiAxKSB7XG4gICAgICB2ZXJbMV0gPSAocGFyc2VJbnQodmVyWzFdKSArIDEpLnRvU3RyaW5nKCk7XG4gICAgICBmb3IgKGxldCBpbmRleCA9IDI7IGluZGV4IDwgdmVyLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICB2ZXJbaW5kZXhdID0gJzAnO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBIZWxwZXJzLndhcm4oXG4gICAgICAgIGBbbnBtLXByb2plY3RdIHNvbWV0aGluZyB3ZW50IHdyb25nIHdpdGggYnVtcGluZyBtaW5vciB2ZXJzaW9uYCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiB2ZXIuam9pbignLicpO1xuICB9XG5cblxuXG4gIGdldCB2ZXJzaW9uV2l0aE1ham9yUGx1c09uZUFuZE1pbm9yWmVyb0FuZFBhdGNoWmVybygpOiBzdHJpbmcge1xuICAgIGNvbnN0IHZlciA9IHRoaXMudmVyc2lvbi5zcGxpdCgnLicpO1xuICAgIGlmICh2ZXIubGVuZ3RoID4gMCkge1xuICAgICAgdmVyWzBdID0gKHBhcnNlSW50KF8uZmlyc3QodmVyKSkgKyAxKS50b1N0cmluZygpO1xuICAgICAgZm9yIChsZXQgaW5kZXggPSAxOyBpbmRleCA8IHZlci5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgdmVyW2luZGV4XSA9ICcwJztcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgSGVscGVycy53YXJuKFxuICAgICAgICBgW25wbS1wcm9qZWN0XSBzb21ldGhpbmcgd2VudCB3cm9uZyB3aXRoIGJ1bXBpbmcgbWFqb3IgdmVyc2lvbmAsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gdmVyLmpvaW4oJy4nKTtcbiAgfVxuXG5cblxuICAvKipcbiAgICogTWFqb3IgVmVyc2lvbiBmcm9tIHBhY2thZ2UuanNvblxuICAgKi9cbiAgLy8gQHRzLWlnbm9yZVxuICBnZXQgbWFqb3JWZXJzaW9uKCk6IG51bWJlciB7XG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgLyoqXG4gICAqIE1pbm9yIFZlcnNpb24gZnJvbSBwYWNrYWdlLmpzb25cbiAgICovXG4gIC8vIEB0cy1pZ25vcmVcbiAgZ2V0IG1pbm9yVmVyc2lvbigpOiBudW1iZXIge1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWRcbiAgICovXG4gIGFzeW5jIGJ1bXBQYXRjaFZlcnNpb24oKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgZ2V0IHZlcnNpb25QYXRoQXNOdW1iZXIoKTogbnVtYmVyIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIC8qKlxuICAgKiBucG0gZGVwZW5kZW5jaWVzIGZyb20gcGFja2FnZS5qc29uXG4gICAqL1xuICBnZXQgZGVwZW5kZW5jaWVzKCkge1xuICAgIHJldHVybiAodGhpcy5wYWNrYWdlSlNPTiA/IHRoaXMucGFja2FnZUpTT04uZGVwZW5kZW5jaWVzIDoge30pIHx8IHt9O1xuICB9XG5cblxuXG4gIC8qKlxuICAgKiBwZWVyRGVwZW5kZW5jaWVzIGRlcGVuZGVuY2llc1xuICAgKi9cbiAgZ2V0IHBlZXJEZXBlbmRlbmNpZXMoKSB7XG4gICAgcmV0dXJuICh0aGlzLnBhY2thZ2VKU09OID8gdGhpcy5wYWNrYWdlSlNPTi5wZWVyRGVwZW5kZW5jaWVzIDoge30pIHx8IHt9O1xuICB9XG5cblxuXG4gIC8qKlxuICAgKiBkZXZEZXBlbmRlbmNpZXMgZGVwZW5kZW5jaWVzXG4gICAqL1xuICBnZXQgZGV2RGVwZW5kZW5jaWVzKCkge1xuICAgIHJldHVybiAodGhpcy5wYWNrYWdlSlNPTiA/IHRoaXMucGFja2FnZUpTT04uZGV2RGVwZW5kZW5jaWVzIDoge30pIHx8IHt9O1xuICB9XG5cblxuXG4gIC8qKlxuICAgKiByZXNvbHV0aW9ucyBkZXBlbmRlbmNpZXNcbiAgICovXG4gIGdldCByZXNvbHV0aW9ucygpIHtcbiAgICByZXR1cm4gKHRoaXMucGFja2FnZUpTT04gPyB0aGlzLnBhY2thZ2VKU09OWydyZXNvbHV0aW9ucyddIDoge30pIHx8IHt9O1xuICB9XG5cblxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyBvYmplY3Qgd2l0bCBhbGwgZGVwcyBmcm9tIGN1cnJlbnQgcHJvamVjdCBwYWNrYWdlIGpzb25cbiAgICovXG4gIGdldCBhbGxEZXBlbmRlbmNpZXMoKTogeyBbcGFja2FnZU5hbWU6IHN0cmluZ106IHN0cmluZyB9IHtcbiAgICByZXR1cm4gdGhpcy5hbGxEZXBzRnJvbVBhY2thZ2VKc29uKHRoaXMucGFja2FnZUpTT04pO1xuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIG9iamVjdCB3aXRsIGFsbCBkZXBzIGZyb20gcGFja2FnZSBqc29uXG4gICAqL1xuICBhbGxEZXBzRnJvbVBhY2thZ2VKc29uKHBhY2thZ2VKc29uOiBQYWNrYWdlSnNvbikge1xuICAgIHJldHVybiBfLm1lcmdlKHtcbiAgICAgIC4uLihwYWNrYWdlSnNvbi5kZXZEZXBlbmRlbmNpZXMgfHwge30pLFxuICAgICAgLi4uKHBhY2thZ2VKc29uLnBlZXJEZXBlbmRlbmNpZXMgfHwge30pLFxuICAgICAgLi4uKHBhY2thZ2VKc29uLmRlcGVuZGVuY2llcyB8fCB7fSksXG4gICAgICAuLi4ocGFja2FnZUpzb24ucmVzb2x1dGlvbnMgfHwge30pLFxuICAgIH0pIGFzIGFueTtcbiAgfVxuXG5cblxuICBsaW5rTm9kZU1vZHVsZXNUbyhwcm9qOiBQYXJ0aWFsPEJhc2VQcm9qZWN0Pikge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIHByZWZlcllhcm5PdmVyTnBtKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG5cblxuICBhc3luYyBtYWtlU3VyZU5vZGVNb2R1bGVzSW5zdGFsbGVkKFxuICAgIG9wdGlvbnM/OiBPbWl0PENvcmVNb2RlbHMuTnBtSW5zdGFsbE9wdGlvbnMsICdwa2cnPixcbiAgKSB7XG4gICAgaWYgKHRoaXMuZW1wdHlOb2RlTW9kdWxlcykge1xuICAgICBhd2FpdCB0aGlzLnJlaW5zdGFsbE5vZGVNb2R1bGVzKG9wdGlvbnMpO1xuICAgIH1cbiAgfVxuXG5cblxuICBkZWxldGVOb2RlTW9kdWxlcygpIHtcbiAgICB0aGlzLnByb2plY3QucmVtb3ZlKGNvbmZpZy5mb2xkZXIubm9kZV9tb2R1bGVzKTtcbiAgfVxuXG5cblxuICBhc3luYyByZWluc3RhbGxOb2RlTW9kdWxlcyhcbiAgICBvcHRpb25zPzogT21pdDxDb3JlTW9kZWxzLk5wbUluc3RhbGxPcHRpb25zLCAncGtnJz4sXG4gICkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHRydWUgaWYgbm9kZV9tb2R1bGVzIGZvbGRlciBpcyBlbXB0eVxuICAgKi9cbiAgZ2V0IGVtcHR5Tm9kZU1vZHVsZXMoKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgYXN5bmMgcmVzZXRQYWNrYWdlTG9ja0pzb24oKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgc3RhcnROcG1UYXNrKHRhc2tOYW1lOiBzdHJpbmcsIGFkZGl0aW9uYWxBcmd1bWVudHM/OiBzdHJpbmcgfCBvYmplY3QpIHtcbiAgICBpZiAoXy5pc09iamVjdChhZGRpdGlvbmFsQXJndW1lbnRzKSkge1xuICAgICAgYWRkaXRpb25hbEFyZ3VtZW50cyA9IE9iamVjdC5rZXlzKGFkZGl0aW9uYWxBcmd1bWVudHMpXG4gICAgICAgIC5tYXAoayA9PiBgLS0ke2t9ICR7YWRkaXRpb25hbEFyZ3VtZW50c1trXX1gKVxuICAgICAgICAuam9pbignICcpO1xuICAgIH1cbiAgICBjb25zdCBjb21tYW5kID0gYG5wbSBydW4gJHt0YXNrTmFtZX0gJHtcbiAgICAgIGFkZGl0aW9uYWxBcmd1bWVudHMgPyAnIC0tICcgKyBhZGRpdGlvbmFsQXJndW1lbnRzIDogJydcbiAgICB9YDtcbiAgICBIZWxwZXJzLmluZm8oYFN0YXJ0aW5nIG5wbSB0YXNrOiBcIiR7Y29tbWFuZH1cImApO1xuXG4gICAgcmV0dXJuIHRoaXMucHJvamVjdC5ydW4oY29tbWFuZCwge1xuICAgICAgb3V0cHV0OiB0cnVlLFxuICAgICAgYmlnZ2VyQnVmZmVyOiB0cnVlLFxuICAgIH0pO1xuICB9XG5cblxuXG4gIGFzeW5jIHByZXBhcmVDb21tYW5kKFxuICAgIG9wdGlvbnM/OiBDb3JlTW9kZWxzLk5wbUluc3RhbGxPcHRpb25zLFxuICApOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGxldCB7XG4gICAgICBwa2csXG4gICAgICBzaWxlbnQsXG4gICAgICB1c2VZYXJuLFxuICAgICAgZm9yY2UsXG4gICAgICByZW1vdmVZYXJuT3JQYWNrYWdlSnNvbkxvY2ssXG4gICAgICBnZW5lcmF0ZVlhcm5PclBhY2thZ2VKc29uTG9jayxcbiAgICB9ID0gb3B0aW9ucyB8fCB7fTtcblxuICAgIGZvcmNlID0gdHJ1ZTsgLy8gVE9ETyBRVUlDS19GSVhcblxuICAgIGxldCBjb21tYW5kID0gJyc7XG4gICAgY29uc3QgY29tbW9uT3B0aW9ucyA9IGAtLWlnbm9yZS1lbmdpbmVzYDtcblxuICAgIGlmICh1c2VZYXJuKSB7XG5cbiAgICAgIGNvbnN0IGFyZ3NGb3JGYXN0ZXJJbnN0YWxsID0gYCR7Zm9yY2UgPyAnLS1mb3JjZScgOiAnJ30gJHtjb21tb25PcHRpb25zfSBgO1xuICAgICAgY29tbWFuZCA9XG4gICAgICAgIGAke1xuICAgICAgICAgIHJlbW92ZVlhcm5PclBhY2thZ2VKc29uTG9ja1xuICAgICAgICAgICAgPyBgKHJtICR7Y29uZmlnLmZpbGUueWFybl9sb2NrfSAgfHwgdHJ1ZSkgYCArXG4gICAgICAgICAgICAgIGAmJiB0b3VjaCAke2NvbmZpZy5maWxlLnlhcm5fbG9ja30gJiYgYFxuICAgICAgICAgICAgOiAnJ1xuICAgICAgICB9YCArXG4gICAgICAgIGB5YXJuICR7cGtnID8gKHBrZz8uaW5zdGFsbFR5cGUgPT09ICdyZW1vdmUnID8gJ3JlbW92ZScgOiAnYWRkJykgOiAnaW5zdGFsbCd9ICR7cGtnID8gcGtnLm5hbWUgOiAnJ30gYCArXG4gICAgICAgIGAgJHtnZW5lcmF0ZVlhcm5PclBhY2thZ2VKc29uTG9jayA/ICcnIDogJy0tbm8tbG9ja2ZpbGUnfSBgICtcbiAgICAgICAgYCAke2FyZ3NGb3JGYXN0ZXJJbnN0YWxsfSBgICtcbiAgICAgICAgYCAke3BrZyAmJiBwa2cuaW5zdGFsbFR5cGUgJiYgcGtnLmluc3RhbGxUeXBlID09PSAnLS1zYXZlLWRldicgPyAnLWRldicgOiAnJ30gYDtcblxuICAgIH0gZWxzZSB7XG5cbiAgICAgIGNvbnN0IGFyZ3NGb3JGYXN0ZXJJbnN0YWxsID1cbiAgICAgICAgYCR7Zm9yY2UgPyAnLS1mb3JjZScgOiAnJ30gJHtjb21tb25PcHRpb25zfSAtLW5vLWF1ZGl0IGAgK1xuICAgICAgICBgJHtzaWxlbnQgPyAnLS1zaWxlbnQgLS1uby1wcm9ncmVzcycgOiAnJ30gICBgO1xuXG4gICAgICBjb21tYW5kID1cbiAgICAgICAgYCR7XG4gICAgICAgICAgcmVtb3ZlWWFybk9yUGFja2FnZUpzb25Mb2NrXG4gICAgICAgICAgICA/IGAocm0gJHtjb25maWcuZmlsZS5wYWNrYWdlX2xvY2tfanNvbn0gfHwgdHJ1ZSkgYCArXG4gICAgICAgICAgICAgIGAmJiB0b3VjaCAke2NvbmZpZy5maWxlLnBhY2thZ2VfbG9ja19qc29ufSAgJiYgYFxuICAgICAgICAgICAgOiAnJ1xuICAgICAgICB9YCArXG4gICAgICAgIGBucHggLS1ub2RlLW9wdGlvbnM9LS1tYXgtb2xkLXNwYWNlLXNpemU9ODAwMCBucG0gYCArXG4gICAgICAgIGAke3BrZz8uaW5zdGFsbFR5cGUgPT09ICdyZW1vdmUnID8gJ3VuaW5zdGFsbCcgOiAnaW5zdGFsbCd9ICR7cGtnID8gcGtnLm5hbWUgOiAnJ30gYCArXG4gICAgICAgIGAgJHtnZW5lcmF0ZVlhcm5PclBhY2thZ2VKc29uTG9jayA/ICcnIDogJy0tbm8tcGFja2FnZS1sb2NrJ30gYCArXG4gICAgICAgIGAgJHtwa2cgJiYgcGtnLmluc3RhbGxUeXBlID8gcGtnLmluc3RhbGxUeXBlIDogJyd9IGAgK1xuICAgICAgICBgICR7YXJnc0ZvckZhc3Rlckluc3RhbGx9IGA7XG5cbiAgICB9XG4gICAgSGVscGVycy5pbmZvKGBDb21tYW5kIGZvciBucG0gaW5zdGFsbDpcblxuICAgICAgJHtjb21tYW5kfVxuXG4gICAgICBgKTtcbiAgICByZXR1cm4gY29tbWFuZDtcbiAgfVxuXG5cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHJlZ2lzdHJ5IHdpdGhvdXQgc3BlY2lmaWVkIHJlZ2lzdHIgaXMgY2hlY2tpbmcgbnBtIHJlZ2lzdHJ5XG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBhc3luYyBpc0xvZ2dlZEluVG9SZWdpc3RyeShyZWdpc3RyeT86IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgLyoqXG4gICAqIFByb21wdCB0aGUgdXNlciB0byBsb2cgaW4gdG8gYSBzcGVjaWZpYyBucG0gcmVnaXN0cnkuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbcmVnaXN0cnldIC0gT3B0aW9uYWwgbnBtIHJlZ2lzdHJ5IFVSTC5cbiAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59IC0gQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgbG9naW4gcHJvY2VzcyBjb21wbGV0ZXMuXG4gICAqL1xuICBhc3luYyBsb2dpblRvUmVnaXN0cnkocmVnaXN0cnk/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgYXN5bmMgbWFrZVN1cmVMb2dnZWRJblRvTnBtUmVnaXN0cnkocmVnaXN0cnk/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkXG4gICAqIHVzZSBtYWtlU3VyZUxvZ2dlZEluVG9OcG1SZWdpc3RyeSgpXG4gICAqL1xuICBjaGVja0lmTG9nZ2luSW5Ub05wbSgpIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2Jhc2UvYmFzZS1ucG0taGVscGVycy50cyJdfQ==