tnp-helpers 18.0.17 → 18.0.19

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 (401) 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 +513 -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 +513 -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 +6 -0
  26. package/browser/esm2022/lib/base/tcp-udp-ports/ports.controller.mjs +260 -0
  27. package/browser/esm2022/lib/base/tcp-udp-ports/ports.entity.mjs +33 -0
  28. package/browser/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +34 -0
  29. package/browser/esm2022/lib/base/tcp-udp-ports/tcp-upd-ports.worker.mjs +298 -0
  30. package/browser/esm2022/lib/utils.mjs +33 -144
  31. package/browser/esm2022/migrations/1736198527297_init.mjs +41 -0
  32. package/browser/esm2022/migrations/1736199486472_addingNotAssignablePorts.mjs +63 -0
  33. package/browser/esm2022/migrations/1736454437350_addFreePorts.mjs +50 -0
  34. package/browser/esm2022/migrations/index.mjs +5 -0
  35. package/browser/esm2022/migrations/migrations_index._auto-generated_.mjs +16 -0
  36. package/browser/fesm2022/tnp-helpers.mjs +2635 -1685
  37. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  38. package/{client/lib/base → browser/lib/base/classes}/base-cli-worker-controller.d.ts +2 -2
  39. package/browser/lib/base/{base-cli-worker.d.ts → classes/base-cli-worker.d.ts} +33 -4
  40. package/browser/lib/base/{base-git.d.ts → classes/base-git.d.ts} +1 -1
  41. package/{client/lib/base → browser/lib/base/classes}/base-library-build.d.ts +1 -1
  42. package/{websql/lib/base → browser/lib/base/classes}/base-linked-projects.d.ts +1 -1
  43. package/{client/lib/base → browser/lib/base/classes}/base-project-resolver.d.ts +4 -4
  44. package/browser/lib/base/{base-project.d.ts → classes/base-project.d.ts} +7 -4
  45. package/browser/lib/base/{base-release-process.d.ts → classes/base-release-process.d.ts} +1 -1
  46. package/browser/lib/base/classes/base-vscode.d.ts +24 -0
  47. package/browser/lib/base/classes/index.d.ts +16 -0
  48. package/browser/lib/base/config-database.d.ts +2 -2
  49. package/browser/lib/base/core-project.d.ts +1 -1
  50. package/browser/lib/base/index.d.ts +3 -16
  51. package/browser/lib/base/project-database.d.ts +2 -2
  52. package/browser/lib/base/tcp-udp-ports/index.d.ts +4 -0
  53. package/browser/lib/base/tcp-udp-ports/ports.controller.d.ts +29 -0
  54. package/browser/lib/base/tcp-udp-ports/ports.entity.d.ts +19 -0
  55. package/browser/lib/base/tcp-udp-ports/tcp-udp-ports.context.d.ts +59 -0
  56. package/browser/lib/base/tcp-udp-ports/tcp-upd-ports.worker.d.ts +25 -0
  57. package/browser/lib/utils.d.ts +2 -38
  58. package/browser/migrations/1736198527297_init.d.ts +19 -0
  59. package/browser/migrations/1736199486472_addingNotAssignablePorts.d.ts +11 -0
  60. package/browser/migrations/1736454437350_addFreePorts.d.ts +10 -0
  61. package/browser/migrations/index.d.ts +2 -0
  62. package/browser/migrations/migrations_index._auto-generated_.d.ts +12 -0
  63. package/client/esm2022/lib/base/classes/base-cli-worker-config.mjs +40 -0
  64. package/client/esm2022/lib/base/classes/base-cli-worker-controller.mjs +125 -0
  65. package/client/esm2022/lib/base/classes/base-cli-worker.mjs +513 -0
  66. package/client/esm2022/lib/base/classes/base-compiler-for-project.mjs +61 -0
  67. package/client/esm2022/lib/base/classes/base-db.mjs +31 -0
  68. package/client/esm2022/lib/base/classes/base-debounce-compiler-for-project.mjs +56 -0
  69. package/client/esm2022/lib/base/classes/base-feature-for-project.mjs +8 -0
  70. package/client/esm2022/lib/base/classes/base-git.mjs +932 -0
  71. package/client/esm2022/lib/base/classes/base-github-pages.mjs +110 -0
  72. package/{browser/esm2022/lib/base → client/esm2022/lib/base/classes}/base-library-build.mjs +2 -2
  73. package/client/esm2022/lib/base/classes/base-linked-projects.mjs +320 -0
  74. package/client/esm2022/lib/base/classes/base-npm-helpers.mjs +630 -0
  75. package/client/esm2022/lib/base/classes/base-project-resolver.mjs +291 -0
  76. package/client/esm2022/lib/base/classes/base-project.mjs +926 -0
  77. package/client/esm2022/lib/base/classes/base-quick-fixes.mjs +24 -0
  78. package/{browser/esm2022/lib/base → client/esm2022/lib/base/classes}/base-release-process.mjs +3 -3
  79. package/client/esm2022/lib/base/classes/base-vscode.mjs +513 -0
  80. package/client/esm2022/lib/base/classes/index.mjs +22 -0
  81. package/client/esm2022/lib/base/commit-data.mjs +1 -1
  82. package/client/esm2022/lib/base/config-database.mjs +5 -2
  83. package/client/esm2022/lib/base/core-project.mjs +1 -1
  84. package/client/esm2022/lib/base/index.mjs +3 -19
  85. package/client/esm2022/lib/base/project-database.mjs +2 -2
  86. package/client/esm2022/lib/base/tcp-udp-ports/index.mjs +6 -0
  87. package/client/esm2022/lib/base/tcp-udp-ports/ports.controller.mjs +260 -0
  88. package/client/esm2022/lib/base/tcp-udp-ports/ports.entity.mjs +33 -0
  89. package/client/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +34 -0
  90. package/client/esm2022/lib/base/tcp-udp-ports/tcp-upd-ports.worker.mjs +298 -0
  91. package/client/esm2022/lib/utils.mjs +33 -144
  92. package/client/esm2022/migrations/1736198527297_init.mjs +41 -0
  93. package/client/esm2022/migrations/1736199486472_addingNotAssignablePorts.mjs +63 -0
  94. package/client/esm2022/migrations/1736454437350_addFreePorts.mjs +50 -0
  95. package/client/esm2022/migrations/index.mjs +5 -0
  96. package/client/esm2022/migrations/migrations_index._auto-generated_.mjs +16 -0
  97. package/client/fesm2022/tnp-helpers.mjs +2635 -1685
  98. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  99. package/{browser/lib/base → client/lib/base/classes}/base-cli-worker-controller.d.ts +2 -2
  100. package/client/lib/base/{base-cli-worker.d.ts → classes/base-cli-worker.d.ts} +33 -4
  101. package/{websql/lib/base → client/lib/base/classes}/base-git.d.ts +1 -1
  102. package/{browser/lib/base → client/lib/base/classes}/base-library-build.d.ts +1 -1
  103. package/{browser/lib/base → client/lib/base/classes}/base-linked-projects.d.ts +1 -1
  104. package/{websql/lib/base → client/lib/base/classes}/base-project-resolver.d.ts +4 -4
  105. package/client/lib/base/{base-project.d.ts → classes/base-project.d.ts} +7 -4
  106. package/client/lib/base/{base-release-process.d.ts → classes/base-release-process.d.ts} +1 -1
  107. package/client/lib/base/classes/base-vscode.d.ts +24 -0
  108. package/client/lib/base/classes/index.d.ts +16 -0
  109. package/client/lib/base/config-database.d.ts +2 -2
  110. package/client/lib/base/core-project.d.ts +1 -1
  111. package/client/lib/base/index.d.ts +3 -16
  112. package/client/lib/base/project-database.d.ts +2 -2
  113. package/client/lib/base/tcp-udp-ports/index.d.ts +4 -0
  114. package/client/lib/base/tcp-udp-ports/ports.controller.d.ts +29 -0
  115. package/client/lib/base/tcp-udp-ports/ports.entity.d.ts +19 -0
  116. package/client/lib/base/tcp-udp-ports/tcp-udp-ports.context.d.ts +59 -0
  117. package/client/lib/base/tcp-udp-ports/tcp-upd-ports.worker.d.ts +25 -0
  118. package/client/lib/utils.d.ts +2 -38
  119. package/client/migrations/1736198527297_init.d.ts +19 -0
  120. package/client/migrations/1736199486472_addingNotAssignablePorts.d.ts +11 -0
  121. package/client/migrations/1736454437350_addFreePorts.d.ts +10 -0
  122. package/client/migrations/index.d.ts +2 -0
  123. package/client/migrations/migrations_index._auto-generated_.d.ts +12 -0
  124. package/lib/base/{base-cli-worker-controller.d.ts → classes/base-cli-worker-controller.d.ts} +4 -4
  125. package/lib/base/{base-cli-worker-controller.js → classes/base-cli-worker-controller.js} +3 -3
  126. package/lib/base/classes/base-cli-worker-controller.js.map +1 -0
  127. package/lib/base/{base-cli-worker.d.ts → classes/base-cli-worker.d.ts} +33 -4
  128. package/lib/base/{base-cli-worker.js → classes/base-cli-worker.js} +125 -40
  129. package/lib/base/classes/base-cli-worker.js.map +1 -0
  130. package/lib/base/{command-line-feature.backend.d.ts → classes/base-command-line-feature.backend.d.ts} +1 -1
  131. package/lib/base/{command-line-feature.backend.js → classes/base-command-line-feature.backend.js} +15 -15
  132. package/lib/base/classes/base-command-line-feature.backend.js.map +1 -0
  133. package/lib/base/{base-compiler-for-project.d.ts → classes/base-compiler-for-project.d.ts} +2 -2
  134. package/lib/base/{base-compiler-for-project.js → classes/base-compiler-for-project.js} +1 -1
  135. package/lib/base/{base-compiler-for-project.js.map → classes/base-compiler-for-project.js.map} +1 -1
  136. package/lib/base/{base-db.d.ts → classes/base-db.d.ts} +1 -1
  137. package/lib/base/{base-db.js → classes/base-db.js} +1 -1
  138. package/lib/base/{base-db.js.map → classes/base-db.js.map} +1 -1
  139. package/lib/base/{base-debounce-compiler-for-project.d.ts → classes/base-debounce-compiler-for-project.d.ts} +2 -2
  140. package/lib/base/{base-debounce-compiler-for-project.js.map → classes/base-debounce-compiler-for-project.js.map} +1 -1
  141. package/lib/base/{base-git.d.ts → classes/base-git.d.ts} +1 -1
  142. package/lib/base/{base-git.js → classes/base-git.js} +3 -3
  143. package/lib/base/{base-git.js.map → classes/base-git.js.map} +1 -1
  144. package/lib/base/{base-github-pages.js → classes/base-github-pages.js} +1 -1
  145. package/lib/base/{base-github-pages.js.map → classes/base-github-pages.js.map} +1 -1
  146. package/lib/base/{base-command-line.backend.d.ts → classes/base-global-command-line.backend.d.ts} +18 -4
  147. package/lib/base/{base-command-line.backend.js → classes/base-global-command-line.backend.js} +248 -161
  148. package/lib/base/classes/base-global-command-line.backend.js.map +1 -0
  149. package/lib/base/{base-ignore-hide.js → classes/base-ignore-hide.js} +1 -1
  150. package/lib/base/{base-ignore-hide.js.map → classes/base-ignore-hide.js.map} +1 -1
  151. package/lib/base/{base-library-build.d.ts → classes/base-library-build.d.ts} +3 -3
  152. package/lib/base/{base-library-build.js → classes/base-library-build.js} +2 -2
  153. package/lib/base/{base-library-build.js.map → classes/base-library-build.js.map} +1 -1
  154. package/lib/base/{base-linked-projects.d.ts → classes/base-linked-projects.d.ts} +1 -1
  155. package/lib/base/{base-linked-projects.js → classes/base-linked-projects.js} +1 -1
  156. package/lib/base/{base-linked-projects.js.map → classes/base-linked-projects.js.map} +1 -1
  157. package/lib/base/{base-npm-helpers.d.ts → classes/base-npm-helpers.d.ts} +3 -3
  158. package/lib/base/{base-npm-helpers.js → classes/base-npm-helpers.js} +1 -1
  159. package/lib/base/{base-npm-helpers.js.map → classes/base-npm-helpers.js.map} +1 -1
  160. package/lib/base/{base-project-resolver.d.ts → classes/base-project-resolver.d.ts} +4 -4
  161. package/lib/base/{base-project-resolver.js → classes/base-project-resolver.js} +6 -6
  162. package/lib/base/{base-project-resolver.js.map → classes/base-project-resolver.js.map} +1 -1
  163. package/lib/base/{base-project.d.ts → classes/base-project.d.ts} +10 -7
  164. package/lib/base/{base-project.js → classes/base-project.js} +20 -5
  165. package/lib/base/{base-project.js.map → classes/base-project.js.map} +1 -1
  166. package/lib/base/{base-quick-fixes.js → classes/base-quick-fixes.js} +1 -1
  167. package/lib/base/{base-quick-fixes.js.map → classes/base-quick-fixes.js.map} +1 -1
  168. package/lib/base/{base-release-process.d.ts → classes/base-release-process.d.ts} +3 -3
  169. package/lib/base/{base-release-process.js → classes/base-release-process.js} +2 -2
  170. package/lib/base/{base-release-process.js.map → classes/base-release-process.js.map} +1 -1
  171. package/lib/base/{base-start-config.backend.js → classes/base-start-config.backend.js} +2 -2
  172. package/lib/base/{base-start-config.backend.js.map → classes/base-start-config.backend.js.map} +1 -1
  173. package/lib/base/classes/base-vscode.d.ts +23 -0
  174. package/lib/base/classes/base-vscode.js +469 -0
  175. package/lib/base/classes/base-vscode.js.map +1 -0
  176. package/lib/base/classes/index.d.ts +18 -0
  177. package/lib/base/classes/index.js +24 -0
  178. package/lib/base/classes/index.js.map +1 -0
  179. package/lib/base/commit-data.js.map +1 -1
  180. package/lib/base/config-database.d.ts +2 -2
  181. package/lib/base/config-database.js +5 -8
  182. package/lib/base/config-database.js.map +1 -1
  183. package/lib/base/core-project.d.ts +3 -3
  184. package/lib/base/gh-temp-code.d.ts +1 -1
  185. package/lib/base/index.d.ts +2 -18
  186. package/lib/base/index.js +2 -18
  187. package/lib/base/index.js.map +1 -1
  188. package/lib/base/project-database.d.ts +2 -2
  189. package/lib/base/project-database.js +1 -1
  190. package/lib/base/project-database.js.map +1 -1
  191. package/lib/base/tcp-udp-ports/index.d.ts +3 -0
  192. package/lib/base/tcp-udp-ports/index.js +7 -0
  193. package/lib/base/tcp-udp-ports/index.js.map +1 -0
  194. package/lib/base/tcp-udp-ports/not-assignable-port.entity.d.ts +0 -0
  195. package/lib/base/tcp-udp-ports/not-assignable-port.entity.js +5 -0
  196. package/lib/base/tcp-udp-ports/not-assignable-port.entity.js.map +1 -0
  197. package/lib/base/tcp-udp-ports/ports.controller.d.ts +28 -0
  198. package/lib/base/tcp-udp-ports/ports.controller.js +343 -0
  199. package/lib/base/tcp-udp-ports/ports.controller.js.map +1 -0
  200. package/lib/base/tcp-udp-ports/ports.entity.d.ts +18 -0
  201. package/lib/base/tcp-udp-ports/ports.entity.js +75 -0
  202. package/lib/base/tcp-udp-ports/ports.entity.js.map +1 -0
  203. package/lib/base/tcp-udp-ports/tcp-udp-ports.context.d.ts +58 -0
  204. package/lib/base/tcp-udp-ports/tcp-udp-ports.context.js +40 -0
  205. package/lib/base/tcp-udp-ports/tcp-udp-ports.context.js.map +1 -0
  206. package/lib/base/tcp-udp-ports/tcp-upd-ports.worker.d.ts +37 -0
  207. package/lib/base/tcp-udp-ports/tcp-upd-ports.worker.js +478 -0
  208. package/lib/base/tcp-udp-ports/tcp-upd-ports.worker.js.map +1 -0
  209. package/lib/helpers/for-backend/helpers-cli-tool.backend.d.ts +1 -1
  210. package/lib/helpers/for-backend/helpers-cli-tool.backend.js.map +1 -1
  211. package/lib/helpers/for-backend/helpers-console-gui.js +2 -1
  212. package/lib/helpers/for-backend/helpers-console-gui.js.map +1 -1
  213. package/lib/helpers/for-backend/helpers-file-folders.backend.d.ts +2 -2
  214. package/lib/helpers/for-backend/helpers-git.backend.js +2 -2
  215. package/lib/helpers/for-backend/helpers-git.backend.js.map +1 -1
  216. package/lib/helpers/for-backend/helpers-process.backend.d.ts +3 -3
  217. package/lib/helpers/for-backend/helpers-process.backend.js +4 -26
  218. package/lib/helpers/for-backend/helpers-process.backend.js.map +1 -1
  219. package/lib/helpers/for-backend/helpers-vscode.backend.d.ts +2 -2
  220. package/lib/helpers/for-browser/angular.helper.js +2 -2
  221. package/lib/helpers/helpers.d.ts +1 -1
  222. package/lib/models.d.ts +2 -2
  223. package/lib/old/base-component.js +2 -2
  224. package/lib/old/base-formly-component.js +2 -2
  225. package/lib/old/dual-component-ctrl.js +2 -2
  226. package/lib/utils.d.ts +2 -38
  227. package/lib/utils.js +51 -158
  228. package/lib/utils.js.map +1 -1
  229. package/migrations/1736198527297_init.d.ts +18 -0
  230. package/migrations/1736198527297_init.js +72 -0
  231. package/migrations/1736198527297_init.js.map +1 -0
  232. package/migrations/1736199486472_addingNotAssignablePorts.d.ts +10 -0
  233. package/migrations/1736199486472_addingNotAssignablePorts.js +117 -0
  234. package/migrations/1736199486472_addingNotAssignablePorts.js.map +1 -0
  235. package/migrations/1736454437350_addFreePorts.d.ts +9 -0
  236. package/migrations/1736454437350_addFreePorts.js +106 -0
  237. package/migrations/1736454437350_addFreePorts.js.map +1 -0
  238. package/migrations/migrations_index._auto-generated_.d.ts +11 -0
  239. package/migrations/migrations_index._auto-generated_.js +14 -0
  240. package/migrations/migrations_index._auto-generated_.js.map +1 -1
  241. package/package.json +5 -5
  242. package/tmp-environment.json +30 -29
  243. package/websql/esm2022/lib/base/classes/base-cli-worker-config.mjs +40 -0
  244. package/websql/esm2022/lib/base/classes/base-cli-worker-controller.mjs +125 -0
  245. package/websql/esm2022/lib/base/classes/base-cli-worker.mjs +513 -0
  246. package/websql/esm2022/lib/base/classes/base-compiler-for-project.mjs +61 -0
  247. package/websql/esm2022/lib/base/classes/base-db.mjs +31 -0
  248. package/websql/esm2022/lib/base/classes/base-debounce-compiler-for-project.mjs +56 -0
  249. package/websql/esm2022/lib/base/classes/base-feature-for-project.mjs +8 -0
  250. package/{browser/esm2022/lib/base → websql/esm2022/lib/base/classes}/base-git.mjs +2 -2
  251. package/{client/esm2022/lib/base → websql/esm2022/lib/base/classes}/base-github-pages.mjs +2 -2
  252. package/{client/esm2022/lib/base → websql/esm2022/lib/base/classes}/base-library-build.mjs +3 -3
  253. package/websql/esm2022/lib/base/classes/base-linked-projects.mjs +320 -0
  254. package/websql/esm2022/lib/base/classes/base-npm-helpers.mjs +630 -0
  255. package/websql/esm2022/lib/base/classes/base-project-resolver.mjs +280 -0
  256. package/websql/esm2022/lib/base/classes/base-project.mjs +896 -0
  257. package/websql/esm2022/lib/base/classes/base-quick-fixes.mjs +24 -0
  258. package/{client/esm2022/lib/base → websql/esm2022/lib/base/classes}/base-release-process.mjs +4 -4
  259. package/websql/esm2022/lib/base/classes/base-vscode.mjs +513 -0
  260. package/websql/esm2022/lib/base/classes/index.mjs +22 -0
  261. package/websql/esm2022/lib/base/commit-data.mjs +1 -1
  262. package/websql/esm2022/lib/base/config-database.mjs +5 -2
  263. package/websql/esm2022/lib/base/core-project.mjs +1 -1
  264. package/websql/esm2022/lib/base/index.mjs +3 -19
  265. package/websql/esm2022/lib/base/project-database.mjs +2 -2
  266. package/websql/esm2022/lib/base/tcp-udp-ports/index.mjs +6 -0
  267. package/websql/esm2022/lib/base/tcp-udp-ports/ports.controller.mjs +260 -0
  268. package/websql/esm2022/lib/base/tcp-udp-ports/ports.entity.mjs +56 -0
  269. package/websql/esm2022/lib/base/tcp-udp-ports/tcp-udp-ports.context.mjs +34 -0
  270. package/websql/esm2022/lib/base/tcp-udp-ports/tcp-upd-ports.worker.mjs +298 -0
  271. package/websql/esm2022/lib/utils.mjs +33 -144
  272. package/websql/esm2022/migrations/1736198527297_init.mjs +41 -0
  273. package/websql/esm2022/migrations/1736199486472_addingNotAssignablePorts.mjs +63 -0
  274. package/websql/esm2022/migrations/1736454437350_addFreePorts.mjs +50 -0
  275. package/websql/esm2022/migrations/index.mjs +5 -0
  276. package/websql/esm2022/migrations/migrations_index._auto-generated_.mjs +16 -0
  277. package/websql/fesm2022/tnp-helpers.mjs +2719 -1749
  278. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  279. package/websql/lib/base/{base-cli-worker-controller.d.ts → classes/base-cli-worker-controller.d.ts} +2 -2
  280. package/websql/lib/base/{base-cli-worker.d.ts → classes/base-cli-worker.d.ts} +33 -4
  281. package/{client/lib/base → websql/lib/base/classes}/base-git.d.ts +1 -1
  282. package/websql/lib/base/{base-library-build.d.ts → classes/base-library-build.d.ts} +1 -1
  283. package/{client/lib/base → websql/lib/base/classes}/base-linked-projects.d.ts +1 -1
  284. package/{browser/lib/base → websql/lib/base/classes}/base-project-resolver.d.ts +4 -4
  285. package/websql/lib/base/{base-project.d.ts → classes/base-project.d.ts} +7 -4
  286. package/websql/lib/base/{base-release-process.d.ts → classes/base-release-process.d.ts} +1 -1
  287. package/websql/lib/base/classes/base-vscode.d.ts +24 -0
  288. package/websql/lib/base/classes/index.d.ts +16 -0
  289. package/websql/lib/base/config-database.d.ts +2 -2
  290. package/websql/lib/base/core-project.d.ts +1 -1
  291. package/websql/lib/base/index.d.ts +3 -16
  292. package/websql/lib/base/project-database.d.ts +2 -2
  293. package/websql/lib/base/tcp-udp-ports/index.d.ts +4 -0
  294. package/websql/lib/base/tcp-udp-ports/ports.controller.d.ts +29 -0
  295. package/websql/lib/base/tcp-udp-ports/ports.entity.d.ts +19 -0
  296. package/websql/lib/base/tcp-udp-ports/tcp-udp-ports.context.d.ts +59 -0
  297. package/websql/lib/base/tcp-udp-ports/tcp-upd-ports.worker.d.ts +25 -0
  298. package/websql/lib/utils.d.ts +2 -38
  299. package/websql/migrations/1736198527297_init.d.ts +19 -0
  300. package/websql/migrations/1736199486472_addingNotAssignablePorts.d.ts +11 -0
  301. package/websql/migrations/1736454437350_addFreePorts.d.ts +10 -0
  302. package/websql/migrations/index.d.ts +2 -0
  303. package/websql/migrations/migrations_index._auto-generated_.d.ts +12 -0
  304. package/browser/esm2022/lib/base/base-cli-worker-config.mjs +0 -40
  305. package/browser/esm2022/lib/base/base-cli-worker-controller.mjs +0 -125
  306. package/browser/esm2022/lib/base/base-cli-worker.mjs +0 -451
  307. package/browser/esm2022/lib/base/base-compiler-for-project.mjs +0 -61
  308. package/browser/esm2022/lib/base/base-db.mjs +0 -31
  309. package/browser/esm2022/lib/base/base-debounce-compiler-for-project.mjs +0 -56
  310. package/browser/esm2022/lib/base/base-feature-for-project.mjs +0 -8
  311. package/browser/esm2022/lib/base/base-github-pages.mjs +0 -110
  312. package/browser/esm2022/lib/base/base-linked-projects.mjs +0 -321
  313. package/browser/esm2022/lib/base/base-npm-helpers.mjs +0 -630
  314. package/browser/esm2022/lib/base/base-project-resolver.mjs +0 -291
  315. package/browser/esm2022/lib/base/base-project.mjs +0 -919
  316. package/browser/esm2022/lib/base/base-quick-fixes.mjs +0 -24
  317. package/browser/esm2022/lib/base/base-vscode.mjs +0 -145
  318. package/browser/esm2022/lib/base/ports-worker.mjs +0 -162
  319. package/browser/lib/base/base-vscode.d.ts +0 -13
  320. package/browser/lib/base/ports-worker.d.ts +0 -33
  321. package/client/esm2022/lib/base/base-cli-worker-config.mjs +0 -40
  322. package/client/esm2022/lib/base/base-cli-worker-controller.mjs +0 -125
  323. package/client/esm2022/lib/base/base-cli-worker.mjs +0 -451
  324. package/client/esm2022/lib/base/base-compiler-for-project.mjs +0 -61
  325. package/client/esm2022/lib/base/base-db.mjs +0 -31
  326. package/client/esm2022/lib/base/base-debounce-compiler-for-project.mjs +0 -56
  327. package/client/esm2022/lib/base/base-feature-for-project.mjs +0 -8
  328. package/client/esm2022/lib/base/base-git.mjs +0 -932
  329. package/client/esm2022/lib/base/base-linked-projects.mjs +0 -321
  330. package/client/esm2022/lib/base/base-npm-helpers.mjs +0 -630
  331. package/client/esm2022/lib/base/base-project-resolver.mjs +0 -291
  332. package/client/esm2022/lib/base/base-project.mjs +0 -919
  333. package/client/esm2022/lib/base/base-quick-fixes.mjs +0 -24
  334. package/client/esm2022/lib/base/base-vscode.mjs +0 -145
  335. package/client/esm2022/lib/base/ports-worker.mjs +0 -162
  336. package/client/lib/base/base-vscode.d.ts +0 -13
  337. package/client/lib/base/ports-worker.d.ts +0 -33
  338. package/lib/base/base-cli-worker-controller.js.map +0 -1
  339. package/lib/base/base-cli-worker.js.map +0 -1
  340. package/lib/base/base-command-line.backend.js.map +0 -1
  341. package/lib/base/base-vscode.d.ts +0 -12
  342. package/lib/base/base-vscode.js +0 -139
  343. package/lib/base/base-vscode.js.map +0 -1
  344. package/lib/base/command-line-feature.backend.js.map +0 -1
  345. package/lib/base/ports-worker.d.ts +0 -32
  346. package/lib/base/ports-worker.js +0 -244
  347. package/lib/base/ports-worker.js.map +0 -1
  348. package/websql/esm2022/lib/base/base-cli-worker-config.mjs +0 -40
  349. package/websql/esm2022/lib/base/base-cli-worker-controller.mjs +0 -125
  350. package/websql/esm2022/lib/base/base-cli-worker.mjs +0 -451
  351. package/websql/esm2022/lib/base/base-compiler-for-project.mjs +0 -61
  352. package/websql/esm2022/lib/base/base-db.mjs +0 -31
  353. package/websql/esm2022/lib/base/base-debounce-compiler-for-project.mjs +0 -56
  354. package/websql/esm2022/lib/base/base-feature-for-project.mjs +0 -8
  355. package/websql/esm2022/lib/base/base-linked-projects.mjs +0 -321
  356. package/websql/esm2022/lib/base/base-npm-helpers.mjs +0 -630
  357. package/websql/esm2022/lib/base/base-project-resolver.mjs +0 -280
  358. package/websql/esm2022/lib/base/base-project.mjs +0 -889
  359. package/websql/esm2022/lib/base/base-quick-fixes.mjs +0 -24
  360. package/websql/esm2022/lib/base/base-vscode.mjs +0 -145
  361. package/websql/esm2022/lib/base/ports-worker.mjs +0 -165
  362. package/websql/lib/base/base-vscode.d.ts +0 -13
  363. package/websql/lib/base/ports-worker.d.ts +0 -33
  364. /package/browser/lib/base/{base-cli-worker-config.d.ts → classes/base-cli-worker-config.d.ts} +0 -0
  365. /package/browser/lib/base/{base-compiler-for-project.d.ts → classes/base-compiler-for-project.d.ts} +0 -0
  366. /package/browser/lib/base/{base-db.d.ts → classes/base-db.d.ts} +0 -0
  367. /package/browser/lib/base/{base-debounce-compiler-for-project.d.ts → classes/base-debounce-compiler-for-project.d.ts} +0 -0
  368. /package/browser/lib/base/{base-feature-for-project.d.ts → classes/base-feature-for-project.d.ts} +0 -0
  369. /package/browser/lib/base/{base-github-pages.d.ts → classes/base-github-pages.d.ts} +0 -0
  370. /package/browser/lib/base/{base-npm-helpers.d.ts → classes/base-npm-helpers.d.ts} +0 -0
  371. /package/browser/lib/base/{base-quick-fixes.d.ts → classes/base-quick-fixes.d.ts} +0 -0
  372. /package/client/lib/base/{base-cli-worker-config.d.ts → classes/base-cli-worker-config.d.ts} +0 -0
  373. /package/client/lib/base/{base-compiler-for-project.d.ts → classes/base-compiler-for-project.d.ts} +0 -0
  374. /package/client/lib/base/{base-db.d.ts → classes/base-db.d.ts} +0 -0
  375. /package/client/lib/base/{base-debounce-compiler-for-project.d.ts → classes/base-debounce-compiler-for-project.d.ts} +0 -0
  376. /package/client/lib/base/{base-feature-for-project.d.ts → classes/base-feature-for-project.d.ts} +0 -0
  377. /package/client/lib/base/{base-github-pages.d.ts → classes/base-github-pages.d.ts} +0 -0
  378. /package/client/lib/base/{base-npm-helpers.d.ts → classes/base-npm-helpers.d.ts} +0 -0
  379. /package/client/lib/base/{base-quick-fixes.d.ts → classes/base-quick-fixes.d.ts} +0 -0
  380. /package/lib/base/{base-cli-worker-config.d.ts → classes/base-cli-worker-config.d.ts} +0 -0
  381. /package/lib/base/{base-cli-worker-config.js → classes/base-cli-worker-config.js} +0 -0
  382. /package/lib/base/{base-cli-worker-config.js.map → classes/base-cli-worker-config.js.map} +0 -0
  383. /package/lib/base/{base-debounce-compiler-for-project.js → classes/base-debounce-compiler-for-project.js} +0 -0
  384. /package/lib/base/{base-detached-service.d.ts → classes/base-detached-service.d.ts} +0 -0
  385. /package/lib/base/{base-detached-service.js → classes/base-detached-service.js} +0 -0
  386. /package/lib/base/{base-detached-service.js.map → classes/base-detached-service.js.map} +0 -0
  387. /package/lib/base/{base-feature-for-project.d.ts → classes/base-feature-for-project.d.ts} +0 -0
  388. /package/lib/base/{base-feature-for-project.js → classes/base-feature-for-project.js} +0 -0
  389. /package/lib/base/{base-feature-for-project.js.map → classes/base-feature-for-project.js.map} +0 -0
  390. /package/lib/base/{base-github-pages.d.ts → classes/base-github-pages.d.ts} +0 -0
  391. /package/lib/base/{base-ignore-hide.d.ts → classes/base-ignore-hide.d.ts} +0 -0
  392. /package/lib/base/{base-quick-fixes.d.ts → classes/base-quick-fixes.d.ts} +0 -0
  393. /package/lib/base/{base-start-config.backend.d.ts → classes/base-start-config.backend.d.ts} +0 -0
  394. /package/websql/lib/base/{base-cli-worker-config.d.ts → classes/base-cli-worker-config.d.ts} +0 -0
  395. /package/websql/lib/base/{base-compiler-for-project.d.ts → classes/base-compiler-for-project.d.ts} +0 -0
  396. /package/websql/lib/base/{base-db.d.ts → classes/base-db.d.ts} +0 -0
  397. /package/websql/lib/base/{base-debounce-compiler-for-project.d.ts → classes/base-debounce-compiler-for-project.d.ts} +0 -0
  398. /package/websql/lib/base/{base-feature-for-project.d.ts → classes/base-feature-for-project.d.ts} +0 -0
  399. /package/websql/lib/base/{base-github-pages.d.ts → classes/base-github-pages.d.ts} +0 -0
  400. /package/websql/lib/base/{base-npm-helpers.d.ts → classes/base-npm-helpers.d.ts} +0 -0
  401. /package/websql/lib/base/{base-quick-fixes.d.ts → classes/base-quick-fixes.d.ts} +0 -0
@@ -1,291 +0,0 @@
1
- /* */
2
- /* */
3
- /* */
4
- /* */
5
- import { Helpers } from '../index';
6
- import { _ } from 'tnp-core/browser';
7
- import { ConfigDatabase } from './config-database';
8
- import { ProjectDatabase } from './project-database';
9
- import { PortsWorker } from './ports-worker';
10
- /* */
11
- /* */
12
- /* */
13
- /* */
14
- /* */
15
- export class BaseProjectResolver {
16
- constructor(classFn, cliToolName) {
17
- this.classFn = classFn;
18
- this.cliToolName = cliToolName;
19
- this.configDb = new ConfigDatabase(this);
20
- this.projectsDb = new ProjectDatabase(this);
21
- this.NPM_PROJECT_KEY = 'npm';
22
- this.projects = [];
23
- /**
24
- * To speed up checking folder I am keeping pathes for alterdy checked folder
25
- * This may break things that are creating new projects
26
- */
27
- this.emptyLocations = [];
28
- this.cliToolName = cliToolName;
29
- if (!this.cliToolName) {
30
- Helpers.throw(`cliToolName is not provided`);
31
- }
32
- this.portsWorker = new PortsWorker('ports-worker', `${this.cliToolName} startCliServicePortsWorker --skipCoreCheck`, '0.0.0');
33
- }
34
- get allowedTypes() {
35
- /* */
36
- /* */
37
- /* */
38
- return (void 0);
39
- }
40
- /**
41
- * project from process.cwd()
42
- */
43
- get Current() {
44
- /* */
45
- /* */
46
- /* */
47
- /* */
48
- /* */
49
- /* */
50
- /* */
51
- /* */
52
- /* */
53
- /* */
54
- /* */
55
- /* */
56
- /* */
57
- return (void 0);
58
- }
59
- /**
60
- * override this
61
- */
62
- typeFrom(location, recrusiveCall = false) {
63
- /* */
64
- /* */
65
- /* */
66
- /* */
67
- /* */
68
- /* */
69
- /* */
70
- /* */
71
- /* */
72
- /* */
73
- /* */
74
- return (void 0);
75
- }
76
- From(locationOfProject, options) {
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
- /* */
103
- /* */
104
- /* */
105
- /* */
106
- /* */
107
- /* */
108
- /* */
109
- /* */
110
- /* */
111
- /* */
112
- /* */
113
- /* */
114
- /* */
115
- /* */
116
- /* */
117
- /* */
118
- /* */
119
- /* */
120
- /* */
121
- /* */
122
- /* */
123
- /* */
124
- /* */
125
- /* */
126
- /* */
127
- /* */
128
- /* */
129
- /* */
130
- return (void 0);
131
- }
132
- nearestTo(absoluteLocation, options) {
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
- /* */
169
- /* */
170
- /* */
171
- /* */
172
- /* */
173
- /* */
174
- /* */
175
- /* */
176
- /* */
177
- /* */
178
- /* */
179
- /* */
180
- /* */
181
- /* */
182
- /* */
183
- /* */
184
- /* */
185
- /* */
186
- /* */
187
- /* */
188
- /* */
189
- /* */
190
- /* */
191
- /* */
192
- /* */
193
- /* */
194
- /* */
195
- /* */
196
- /* */
197
- /* */
198
- /* */
199
- /* */
200
- /* */
201
- /* */
202
- /* */
203
- /* */
204
- /* */
205
- /* */
206
- /* */
207
- return (void 0);
208
- }
209
- unload(projectOrLocationOfProject) {
210
- const location = _.isString(projectOrLocationOfProject)
211
- ? projectOrLocationOfProject
212
- : projectOrLocationOfProject?.location;
213
- this.projects = this.projects.filter(f => f.location !== location);
214
- this.emptyLocations = this.emptyLocations.filter(f => f !== location);
215
- }
216
- remove(project) {
217
- /* */
218
- /* */
219
- /* */
220
- /* */
221
- }
222
- add(project) {
223
- /* */
224
- /* */
225
- }
226
- allProjectFrom(absoluteLocation, stopOnCwd = '/') {
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
- allProjectsFromFolder(folderLocation) {
255
- /* */
256
- /* */
257
- /* */
258
- /* */
259
- return (void 0);
260
- }
261
- sortGroupOfProject(projects, resoveDepsArray, projNameToCompare) {
262
- const visited = {};
263
- const stack = {};
264
- const result = [];
265
- const visit = (project) => {
266
- if (stack[projNameToCompare(project)]) {
267
- Helpers.error(`Circular dependency detected involving project: ${projNameToCompare(project)}`);
268
- }
269
- if (!visited[projNameToCompare(project)]) {
270
- visited[projNameToCompare(project)] = true;
271
- stack[projNameToCompare(project)] = true;
272
- const depsResolved = resoveDepsArray(project);
273
- depsResolved.forEach(dependency => {
274
- const dependentProject = projects.find(p => {
275
- return projNameToCompare(p) === dependency;
276
- });
277
- if (dependentProject) {
278
- visit(dependentProject);
279
- }
280
- });
281
- stack[projNameToCompare(project)] = false;
282
- result.push(project);
283
- }
284
- };
285
- projects.forEach(project => visit(project));
286
- return result;
287
- }
288
- }
289
- ;
290
- ({}); // @--end-of-file-for-module=tnp-helpers lib/base/base-project-resolver.ts
291
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1wcm9qZWN0LXJlc29sdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9iYXNlL2Jhc2UtcHJvamVjdC1yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBRUwsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUduQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFckMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFJTCxNQUFNLE9BQU8sbUJBQW1CO0lBZ0I5QixZQUNxQixPQUFZLEVBQ2YsV0FBbUI7UUFEaEIsWUFBTyxHQUFQLE9BQU8sQ0FBSztRQUNmLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBakJyQyxhQUFRLEdBQW1CLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELGVBQVUsR0FBb0IsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFJckMsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDakMsYUFBUSxHQUFjLEVBQUUsQ0FBQztRQUNuQzs7O1dBR0c7UUFDTyxtQkFBYyxHQUFhLEVBQUUsQ0FBQztRQVF0QyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUUvQixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sQ0FBQyxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztRQUMvQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLFdBQVcsQ0FDaEMsY0FBYyxFQUNkLEdBQUcsSUFBSSxDQUFDLFdBQVcsNkNBQTZDLEVBQ2hFLE9BQU8sQ0FDUixDQUFDO0lBQ0osQ0FBQztJQUlELElBQUksWUFBWTtRQUNsQixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBSUQ7O09BRUc7SUFDSCxJQUFJLE9BQU87UUFDYixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUlEOztPQUVHO0lBQ0gsUUFBUSxDQUFDLFFBQWdCLEVBQUUsYUFBYSxHQUFHLEtBQUs7UUFDbEQsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBSUQsSUFBSSxDQUFDLGlCQUFvQyxFQUFFLE9BQWE7UUFJMUQsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBSUQsU0FBUyxDQUNQLGdCQUFtQyxFQUNuQyxPQUlDO1FBRUwsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FB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Z0JBQWdCLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRTt3QkFFekMsT0FBTyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsS0FBSyxVQUFVLENBQUM7b0JBQzdDLENBQUMsQ0FBQyxDQUFDO29CQUNILElBQUksZ0JBQWdCLEVBQUUsQ0FBQzt3QkFDckIsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7b0JBQzFCLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7Z0JBRUgsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDO2dCQUMxQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3ZCLENBQUM7UUFDSCxDQUFDLENBQUM7UUFFRixRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDNUMsT0FBTyxNQUFNLENBQUM7SUFFaEIsQ0FBQztDQUVGO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywwRUFBMEUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuXG5pbXBvcnQgeyAvKiAqLyAvKiAqLyAvKiAqLyAgICB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInOy8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuXG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAnLi4vaW5kZXgnO1xuaW1wb3J0IHsgcGF0aCwgY3Jvc3NQbGF0Zm9ybVBhdGggfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IGNvbmZpZyB9IGZyb20gJ3RucC1jb25maWcvYnJvd3Nlcic7XG5pbXBvcnQgeyBfIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5cbmltcG9ydCB7IENvbmZpZ0RhdGFiYXNlIH0gZnJvbSAnLi9jb25maWctZGF0YWJhc2UnO1xuaW1wb3J0IHsgUHJvamVjdERhdGFiYXNlIH0gZnJvbSAnLi9wcm9qZWN0LWRhdGFiYXNlJztcbmltcG9ydCB7IEJhc2VQcm9qZWN0IH0gZnJvbSAnLi9iYXNlLXByb2plY3QnO1xuaW1wb3J0IHsgUG9ydHNXb3JrZXIgfSBmcm9tICcuL3BvcnRzLXdvcmtlcic7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgXG5cblxuZXhwb3J0IGNsYXNzIEJhc2VQcm9qZWN0UmVzb2x2ZXI8UFJPSkVDVCBleHRlbmRzIFBhcnRpYWw8QmFzZVByb2plY3Q+ID0gYW55PiB7XG4gIGNvbmZpZ0RiOiBDb25maWdEYXRhYmFzZSA9IG5ldyBDb25maWdEYXRhYmFzZSh0aGlzKTtcbiAgcHJvamVjdHNEYjogUHJvamVjdERhdGFiYXNlID0gbmV3IFByb2plY3REYXRhYmFzZSh0aGlzKTtcbiAgcmVhZG9ubHkgcG9ydHNXb3JrZXI6IFBvcnRzV29ya2VyO1xuXG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IE5QTV9QUk9KRUNUX0tFWSA9ICducG0nO1xuICBwcm90ZWN0ZWQgcHJvamVjdHM6IFBST0pFQ1RbXSA9IFtdO1xuICAvKipcbiAgICogVG8gc3BlZWQgdXAgY2hlY2tpbmcgZm9sZGVyIEkgYW0ga2VlcGluZyBwYXRoZXMgZm9yIGFsdGVyZHkgY2hlY2tlZCBmb2xkZXJcbiAgICogVGhpcyBtYXkgYnJlYWsgdGhpbmdzIHRoYXQgYXJlIGNyZWF0aW5nIG5ldyBwcm9qZWN0c1xuICAgKi9cbiAgcHJvdGVjdGVkIGVtcHR5TG9jYXRpb25zOiBzdHJpbmdbXSA9IFtdO1xuXG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2xhc3NGbjogYW55LFxuICAgIHB1YmxpYyByZWFkb25seSBjbGlUb29sTmFtZTogc3RyaW5nLFxuICApIHtcbiAgICB0aGlzLmNsaVRvb2xOYW1lID0gY2xpVG9vbE5hbWU7XG5cbiAgICBpZiAoIXRoaXMuY2xpVG9vbE5hbWUpIHtcbiAgICAgIEhlbHBlcnMudGhyb3coYGNsaVRvb2xOYW1lIGlzIG5vdCBwcm92aWRlZGApO1xuICAgIH1cbiAgICB0aGlzLnBvcnRzV29ya2VyID0gbmV3IFBvcnRzV29ya2VyKFxuICAgICAgJ3BvcnRzLXdvcmtlcicsXG4gICAgICBgJHt0aGlzLmNsaVRvb2xOYW1lfSBzdGFydENsaVNlcnZpY2VQb3J0c1dvcmtlciAtLXNraXBDb3JlQ2hlY2tgLFxuICAgICAgJzAuMC4wJyxcbiAgICApO1xuICB9XG5cblxuXG4gIGdldCBhbGxvd2VkVHlwZXMoKTogc3RyaW5nW10ge1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICAvKipcbiAgICogcHJvamVjdCBmcm9tIHByb2Nlc3MuY3dkKClcbiAgICovXG4gIGdldCBDdXJyZW50KCk6IFBST0pFQ1Qge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgLyoqXG4gICAqIG92ZXJyaWRlIHRoaXNcbiAgICovXG4gIHR5cGVGcm9tKGxvY2F0aW9uOiBzdHJpbmcsIHJlY3J1c2l2ZUNhbGwgPSBmYWxzZSk6IHN0cmluZyB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgRnJvbShsb2NhdGlvbk9mUHJvamVjdDogc3RyaW5nIHwgc3RyaW5nW10sIG9wdGlvbnM/OiBhbnkpOiBQUk9KRUNUIHtcblxuXG5cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIG5lYXJlc3RUbyhcbiAgICBhYnNvbHV0ZUxvY2F0aW9uOiBzdHJpbmcgfCBzdHJpbmdbXSxcbiAgICBvcHRpb25zPzoge1xuICAgICAgdHlwZT86IHN0cmluZyB8IHN0cmluZ1tdO1xuICAgICAgZmluZEdpdFJvb3Q/OiBib29sZWFuO1xuICAgICAgb25seU91dFNpZGVOb2RlTW9kdWxlcz86IGJvb2xlYW47XG4gICAgfSxcbiAgKTogUFJPSkVDVCB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgdW5sb2FkKHByb2plY3RPckxvY2F0aW9uT2ZQcm9qZWN0OiBQUk9KRUNUIHwgc3RyaW5nKSB7XG4gICAgY29uc3QgbG9jYXRpb24gPSBfLmlzU3RyaW5nKHByb2plY3RPckxvY2F0aW9uT2ZQcm9qZWN0KVxuICAgICAgPyBwcm9qZWN0T3JMb2NhdGlvbk9mUHJvamVjdFxuICAgICAgOiBwcm9qZWN0T3JMb2NhdGlvbk9mUHJvamVjdD8ubG9jYXRpb247XG5cbiAgICB0aGlzLnByb2plY3RzID0gdGhpcy5wcm9qZWN0cy5maWx0ZXIoZiA9PiBmLmxvY2F0aW9uICE9PSBsb2NhdGlvbik7XG4gICAgdGhpcy5lbXB0eUxvY2F0aW9ucyA9IHRoaXMuZW1wdHlMb2NhdGlvbnMuZmlsdGVyKGYgPT4gZiAhPT0gbG9jYXRpb24pO1xuICB9XG5cblxuXG4gIHJlbW92ZShwcm9qZWN0OiBQUk9KRUNUKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcbiAgfVxuXG5cblxuICBhZGQocHJvamVjdDogUFJPSkVDVCkge1xuLyogKi9cbi8qICovXG4gIFxuICB9XG5cblxuXG5cbiAgYWxsUHJvamVjdEZyb20oYWJzb2x1dGVMb2NhdGlvbjogc3RyaW5nLCBzdG9wT25Dd2Q6IHN0cmluZyA9ICcvJykge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuICBhbGxQcm9qZWN0c0Zyb21Gb2xkZXIoZm9sZGVyTG9jYXRpb246IHN0cmluZyk6IFBST0pFQ1RbXSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICBwdWJsaWMgc29ydEdyb3VwT2ZQcm9qZWN0PFQgZXh0ZW5kcyBCYXNlUHJvamVjdCA9IEJhc2VQcm9qZWN0PihcbiAgICBwcm9qZWN0czogVFtdLFxuICAgIHJlc292ZURlcHNBcnJheTogKHByb2o6IFQpID0+IHN0cmluZ1tdLFxuICAgIHByb2pOYW1lVG9Db21wYXJlOiAocHJvajogVCkgPT4gc3RyaW5nLFxuICApOiBUW10ge1xuICAgIGNvbnN0IHZpc2l0ZWQ6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9ID0ge307XG4gICAgY29uc3Qgc3RhY2s6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9ID0ge307XG4gICAgY29uc3QgcmVzdWx0OiBUW10gPSBbXTtcblxuICAgIGNvbnN0IHZpc2l0ID0gKHByb2plY3Q6IFQpID0+IHtcbiAgICAgIGlmIChzdGFja1twcm9qTmFtZVRvQ29tcGFyZShwcm9qZWN0KV0pIHtcblxuICAgICAgICBIZWxwZXJzLmVycm9yKFxuICAgICAgICAgIGBDaXJjdWxhciBkZXBlbmRlbmN5IGRldGVjdGVkIGludm9sdmluZyBwcm9qZWN0OiAke3Byb2pOYW1lVG9Db21wYXJlKHByb2plY3QpfWAsXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGlmICghdmlzaXRlZFtwcm9qTmFtZVRvQ29tcGFyZShwcm9qZWN0KV0pIHtcbiAgICAgICAgdmlzaXRlZFtwcm9qTmFtZVRvQ29tcGFyZShwcm9qZWN0KV0gPSB0cnVlO1xuICAgICAgICBzdGFja1twcm9qTmFtZVRvQ29tcGFyZShwcm9qZWN0KV0gPSB0cnVlO1xuXG4gICAgICAgIGNvbnN0IGRlcHNSZXNvbHZlZCA9IHJlc292ZURlcHNBcnJheShwcm9qZWN0KTtcbiAgICAgICAgZGVwc1Jlc29sdmVkLmZvckVhY2goZGVwZW5kZW5jeSA9PiB7XG4gICAgICAgICAgY29uc3QgZGVwZW5kZW50UHJvamVjdCA9IHByb2plY3RzLmZpbmQocCA9PiB7XG5cbiAgICAgICAgICAgIHJldHVybiBwcm9qTmFtZVRvQ29tcGFyZShwKSA9PT0gZGVwZW5kZW5jeTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBpZiAoZGVwZW5kZW50UHJvamVjdCkge1xuICAgICAgICAgICAgdmlzaXQoZGVwZW5kZW50UHJvamVjdCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBzdGFja1twcm9qTmFtZVRvQ29tcGFyZShwcm9qZWN0KV0gPSBmYWxzZTtcbiAgICAgICAgcmVzdWx0LnB1c2gocHJvamVjdCk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHByb2plY3RzLmZvckVhY2gocHJvamVjdCA9PiB2aXNpdChwcm9qZWN0KSk7XG4gICAgcmV0dXJuIHJlc3VsdDtcblxuICB9XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9iYXNlL2Jhc2UtcHJvamVjdC1yZXNvbHZlci50cyJdfQ==