tnp-helpers 16.0.8 → 16.0.10

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 (308) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/esm2022/lib/base-project.mjs +309 -0
  3. package/browser/esm2022/lib/for-browser/angular.helper.mjs +89 -0
  4. package/browser/esm2022/lib/for-browser/helpers-browser.mjs +48 -0
  5. package/browser/esm2022/lib/helpers-array-obj.mjs +3 -4
  6. package/browser/esm2022/lib/helpers-binary.mjs +93 -0
  7. package/browser/esm2022/lib/helpers-numbers.mjs +5 -1
  8. package/browser/esm2022/lib/helpers-strings.mjs +8 -3
  9. package/browser/esm2022/lib/helpers.mjs +28 -16
  10. package/browser/esm2022/lib/index.mjs +9 -12
  11. package/browser/esm2022/lib/models.mjs +4 -0
  12. package/browser/esm2022/lib/project.mjs +9 -25
  13. package/browser/esm2022/lib/validators/validators-git.mjs +12 -0
  14. package/browser/esm2022/lib/validators/validators-network.mjs +18 -0
  15. package/browser/esm2022/lib/validators/validators.mjs +10 -0
  16. package/browser/fesm2022/tnp-helpers.mjs +551 -594
  17. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  18. package/browser/lib/base-project.d.ts +55 -0
  19. package/{client/lib → browser/lib/for-browser}/angular.helper.d.ts +5 -5
  20. package/{client/lib → browser/lib/for-browser}/helpers-browser.d.ts +3 -3
  21. package/browser/lib/helpers-binary.d.ts +27 -0
  22. package/browser/lib/helpers-numbers.d.ts +4 -0
  23. package/browser/lib/helpers-strings.d.ts +5 -0
  24. package/browser/lib/helpers.d.ts +26 -12
  25. package/browser/lib/index.d.ts +8 -10
  26. package/browser/lib/models.d.ts +11 -0
  27. package/browser/lib/project.d.ts +30 -33
  28. package/browser/lib/validators/validators-git.d.ts +4 -0
  29. package/browser/lib/validators/validators-network.d.ts +4 -0
  30. package/browser/lib/validators/validators.d.ts +7 -0
  31. package/client/esm2022/lib/base-project.mjs +309 -0
  32. package/client/esm2022/lib/for-browser/angular.helper.mjs +89 -0
  33. package/client/esm2022/lib/for-browser/helpers-browser.mjs +48 -0
  34. package/client/esm2022/lib/helpers-array-obj.mjs +3 -4
  35. package/client/esm2022/lib/helpers-binary.mjs +93 -0
  36. package/client/esm2022/lib/helpers-numbers.mjs +5 -1
  37. package/client/esm2022/lib/helpers-strings.mjs +8 -3
  38. package/client/esm2022/lib/helpers.mjs +28 -16
  39. package/client/esm2022/lib/index.mjs +9 -12
  40. package/client/esm2022/lib/models.mjs +4 -0
  41. package/client/esm2022/lib/project.mjs +9 -25
  42. package/client/esm2022/lib/validators/validators-git.mjs +12 -0
  43. package/client/esm2022/lib/validators/validators-network.mjs +18 -0
  44. package/client/esm2022/lib/validators/validators.mjs +10 -0
  45. package/client/fesm2022/tnp-helpers.mjs +551 -594
  46. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  47. package/client/lib/base-project.d.ts +55 -0
  48. package/{browser/lib → client/lib/for-browser}/angular.helper.d.ts +5 -5
  49. package/{websql/lib → client/lib/for-browser}/helpers-browser.d.ts +3 -3
  50. package/client/lib/helpers-binary.d.ts +27 -0
  51. package/client/lib/helpers-numbers.d.ts +4 -0
  52. package/client/lib/helpers-strings.d.ts +5 -0
  53. package/client/lib/helpers.d.ts +26 -12
  54. package/client/lib/index.d.ts +8 -10
  55. package/client/lib/models.d.ts +11 -0
  56. package/client/lib/project.d.ts +30 -33
  57. package/client/lib/validators/validators-git.d.ts +4 -0
  58. package/client/lib/validators/validators-network.d.ts +4 -0
  59. package/client/lib/validators/validators.d.ts +7 -0
  60. package/client/package.json +27 -21
  61. package/lib/base-project.d.ts +64 -0
  62. package/lib/base-project.js +365 -0
  63. package/lib/base-project.js.map +1 -0
  64. package/lib/{helpers-cli-tool.backend.d.ts → for-backend/helpers-cli-tool.backend.d.ts} +1 -1
  65. package/lib/{helpers-cli-tool.backend.js → for-backend/helpers-cli-tool.backend.js} +1 -1
  66. package/lib/for-backend/helpers-cli-tool.backend.js.map +1 -0
  67. package/lib/{helpers-console-gui.js → for-backend/helpers-console-gui.js} +1 -1
  68. package/lib/for-backend/helpers-console-gui.js.map +1 -0
  69. package/lib/{helpers-dependencies.backend.d.ts → for-backend/helpers-dependencies.backend.d.ts} +1 -1
  70. package/lib/{helpers-dependencies.backend.js → for-backend/helpers-dependencies.backend.js} +1 -1
  71. package/lib/for-backend/helpers-dependencies.backend.js.map +1 -0
  72. package/lib/{helpers-file-folders.backend.d.ts → for-backend/helpers-file-folders.backend.d.ts} +7 -1
  73. package/lib/{helpers-file-folders.backend.js → for-backend/helpers-file-folders.backend.js} +13 -2
  74. package/lib/for-backend/helpers-file-folders.backend.js.map +1 -0
  75. package/lib/{helpers-git.backend.d.ts → for-backend/helpers-git.backend.d.ts} +1 -1
  76. package/lib/{helpers-git.backend.js → for-backend/helpers-git.backend.js} +10 -1
  77. package/lib/for-backend/helpers-git.backend.js.map +1 -0
  78. package/lib/for-backend/helpers-network.backend.js.map +1 -0
  79. package/lib/for-backend/helpers-npm.backend.js.map +1 -0
  80. package/lib/{helpers-path.backend.js → for-backend/helpers-path.backend.js} +3 -3
  81. package/lib/for-backend/helpers-path.backend.js.map +1 -0
  82. package/lib/{helpers-process.backend.js → for-backend/helpers-process.backend.js} +1 -1
  83. package/lib/for-backend/helpers-process.backend.js.map +1 -0
  84. package/lib/{helpers-system-terminal.backend.js → for-backend/helpers-system-terminal.backend.js} +1 -1
  85. package/lib/for-backend/helpers-system-terminal.backend.js.map +1 -0
  86. package/lib/for-backend/helpers-vscode.backend.d.ts +5 -0
  87. package/lib/{helpers-vscode.backend.js → for-backend/helpers-vscode.backend.js} +1 -1
  88. package/lib/for-backend/helpers-vscode.backend.js.map +1 -0
  89. package/lib/for-backend/ts-code/index.js.map +1 -0
  90. package/lib/{ts-code → for-backend/ts-code}/ts-code-extractor.js +1 -1
  91. package/lib/for-backend/ts-code/ts-code-extractor.js.map +1 -0
  92. package/lib/{ts-code → for-backend/ts-code}/ts-code-modifier.backend.js +1 -1
  93. package/lib/for-backend/ts-code/ts-code-modifier.backend.js.map +1 -0
  94. package/lib/{angular.helper.d.ts → for-browser/angular.helper.d.ts} +5 -5
  95. package/lib/for-browser/angular.helper.js +6 -0
  96. package/lib/for-browser/angular.helper.js.map +1 -0
  97. package/lib/{helpers-browser.d.ts → for-browser/helpers-browser.d.ts} +3 -3
  98. package/lib/{helpers-browser.js → for-browser/helpers-browser.js} +12 -12
  99. package/lib/for-browser/helpers-browser.js.map +1 -0
  100. package/lib/git-project.d.ts +2 -1
  101. package/lib/git-project.js +4 -1
  102. package/lib/git-project.js.map +1 -1
  103. package/lib/helpers-array-obj.js +3 -3
  104. package/lib/helpers-array-obj.js.map +1 -1
  105. package/lib/helpers-binary.d.ts +28 -0
  106. package/lib/helpers-binary.js +127 -0
  107. package/lib/helpers-binary.js.map +1 -0
  108. package/lib/helpers-json5.backend.js +3 -3
  109. package/lib/helpers-json5.backend.js.map +1 -1
  110. package/lib/helpers-numbers.d.ts +4 -0
  111. package/lib/helpers-numbers.js +4 -0
  112. package/lib/helpers-numbers.js.map +1 -1
  113. package/lib/helpers-strings.d.ts +5 -0
  114. package/lib/helpers-strings.js +7 -2
  115. package/lib/helpers-strings.js.map +1 -1
  116. package/lib/helpers.d.ts +40 -26
  117. package/lib/helpers.js +61 -51
  118. package/lib/helpers.js.map +1 -1
  119. package/lib/index.d.ts +8 -11
  120. package/lib/index.js +9 -14
  121. package/lib/index.js.map +1 -1
  122. package/lib/models.d.ts +10 -0
  123. package/lib/{firedev-models.js → models.js} +1 -1
  124. package/lib/models.js.map +1 -0
  125. package/lib/old/base-component.d.ts +0 -0
  126. package/lib/old/base-component.js +6 -0
  127. package/lib/old/base-component.js.map +1 -0
  128. package/lib/old/base-formly-component.d.ts +0 -0
  129. package/lib/old/base-formly-component.js +6 -0
  130. package/lib/old/base-formly-component.js.map +1 -0
  131. package/lib/old/condition-wait.d.ts +0 -0
  132. package/lib/old/condition-wait.js +58 -0
  133. package/lib/old/condition-wait.js.map +1 -0
  134. package/lib/old/dual-component-ctrl.d.ts +0 -0
  135. package/lib/old/dual-component-ctrl.js +6 -0
  136. package/lib/old/dual-component-ctrl.js.map +1 -0
  137. package/lib/project.d.ts +29 -32
  138. package/lib/project.js +19 -32
  139. package/lib/project.js.map +1 -1
  140. package/lib/validators/validators-firedev.d.ts +3 -0
  141. package/lib/validators/validators-firedev.js +34 -0
  142. package/lib/validators/validators-firedev.js.map +1 -0
  143. package/lib/validators/validators-git.d.ts +3 -0
  144. package/lib/validators/validators-git.js +13 -0
  145. package/lib/validators/validators-git.js.map +1 -0
  146. package/lib/validators/validators-network.d.ts +3 -0
  147. package/lib/validators/validators-network.js +19 -0
  148. package/lib/validators/validators-network.js.map +1 -0
  149. package/lib/validators/validators.d.ts +6 -0
  150. package/lib/validators/validators.js +11 -0
  151. package/lib/validators/validators.js.map +1 -0
  152. package/package.json +3 -3
  153. package/tmp-environment.json +31 -25
  154. package/websql/esm2022/lib/base-project.mjs +296 -0
  155. package/websql/esm2022/lib/for-browser/angular.helper.mjs +89 -0
  156. package/websql/esm2022/lib/for-browser/helpers-browser.mjs +48 -0
  157. package/websql/esm2022/lib/helpers-array-obj.mjs +3 -4
  158. package/websql/esm2022/lib/helpers-binary.mjs +93 -0
  159. package/websql/esm2022/lib/helpers-numbers.mjs +5 -1
  160. package/websql/esm2022/lib/helpers-strings.mjs +8 -3
  161. package/websql/esm2022/lib/helpers.mjs +28 -16
  162. package/websql/esm2022/lib/index.mjs +9 -12
  163. package/websql/esm2022/lib/models.mjs +4 -0
  164. package/websql/esm2022/lib/project.mjs +9 -25
  165. package/websql/esm2022/lib/validators/validators-git.mjs +12 -0
  166. package/websql/esm2022/lib/validators/validators-network.mjs +18 -0
  167. package/websql/esm2022/lib/validators/validators.mjs +10 -0
  168. package/websql/fesm2022/tnp-helpers.mjs +534 -592
  169. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  170. package/websql/lib/base-project.d.ts +55 -0
  171. package/websql/lib/{angular.helper.d.ts → for-browser/angular.helper.d.ts} +5 -5
  172. package/{browser/lib → websql/lib/for-browser}/helpers-browser.d.ts +3 -3
  173. package/websql/lib/helpers-binary.d.ts +27 -0
  174. package/websql/lib/helpers-numbers.d.ts +4 -0
  175. package/websql/lib/helpers-strings.d.ts +5 -0
  176. package/websql/lib/helpers.d.ts +26 -12
  177. package/websql/lib/index.d.ts +8 -10
  178. package/websql/lib/models.d.ts +11 -0
  179. package/websql/lib/project.d.ts +30 -33
  180. package/websql/lib/validators/validators-git.d.ts +4 -0
  181. package/websql/lib/validators/validators-network.d.ts +4 -0
  182. package/websql/lib/validators/validators.d.ts +7 -0
  183. package/browser/esm2022/lib/angular.helper.mjs +0 -88
  184. package/browser/esm2022/lib/base-component.mjs +0 -51
  185. package/browser/esm2022/lib/base-formly-component.mjs +0 -114
  186. package/browser/esm2022/lib/condition-wait.mjs +0 -46
  187. package/browser/esm2022/lib/constants.mjs +0 -9
  188. package/browser/esm2022/lib/dual-component-ctrl.mjs +0 -119
  189. package/browser/esm2022/lib/firedev-models.mjs +0 -4
  190. package/browser/esm2022/lib/helpers-browser.mjs +0 -48
  191. package/browser/esm2022/lib/helpers-console-gui.mjs +0 -10
  192. package/browser/esm2022/lib/helpers-environment.mjs +0 -33
  193. package/browser/esm2022/lib/long-press.directive.mjs +0 -114
  194. package/browser/esm2022/lib/resize-service.mjs +0 -23
  195. package/browser/lib/base-component.d.ts +0 -18
  196. package/browser/lib/base-formly-component.d.ts +0 -32
  197. package/browser/lib/condition-wait.d.ts +0 -9
  198. package/browser/lib/constants.d.ts +0 -8
  199. package/browser/lib/dual-component-ctrl.d.ts +0 -26
  200. package/browser/lib/firedev-models.d.ts +0 -14
  201. package/browser/lib/helpers-console-gui.d.ts +0 -7
  202. package/browser/lib/helpers-environment.d.ts +0 -6
  203. package/browser/lib/long-press.directive.d.ts +0 -26
  204. package/browser/lib/resize-service.d.ts +0 -10
  205. package/client/esm2022/lib/angular.helper.mjs +0 -88
  206. package/client/esm2022/lib/base-component.mjs +0 -51
  207. package/client/esm2022/lib/base-formly-component.mjs +0 -114
  208. package/client/esm2022/lib/condition-wait.mjs +0 -46
  209. package/client/esm2022/lib/constants.mjs +0 -9
  210. package/client/esm2022/lib/dual-component-ctrl.mjs +0 -119
  211. package/client/esm2022/lib/firedev-models.mjs +0 -4
  212. package/client/esm2022/lib/helpers-browser.mjs +0 -48
  213. package/client/esm2022/lib/helpers-console-gui.mjs +0 -10
  214. package/client/esm2022/lib/helpers-environment.mjs +0 -33
  215. package/client/esm2022/lib/long-press.directive.mjs +0 -114
  216. package/client/esm2022/lib/resize-service.mjs +0 -23
  217. package/client/lib/base-component.d.ts +0 -18
  218. package/client/lib/base-formly-component.d.ts +0 -32
  219. package/client/lib/condition-wait.d.ts +0 -9
  220. package/client/lib/constants.d.ts +0 -8
  221. package/client/lib/dual-component-ctrl.d.ts +0 -26
  222. package/client/lib/firedev-models.d.ts +0 -14
  223. package/client/lib/helpers-console-gui.d.ts +0 -7
  224. package/client/lib/helpers-environment.d.ts +0 -6
  225. package/client/lib/long-press.directive.d.ts +0 -26
  226. package/client/lib/resize-service.d.ts +0 -10
  227. package/lib/angular.helper.js +0 -6
  228. package/lib/angular.helper.js.map +0 -1
  229. package/lib/base-component.d.ts +0 -14
  230. package/lib/base-component.js +0 -6
  231. package/lib/base-component.js.map +0 -1
  232. package/lib/base-formly-component.d.ts +0 -28
  233. package/lib/base-formly-component.js +0 -6
  234. package/lib/base-formly-component.js.map +0 -1
  235. package/lib/condition-wait.d.ts +0 -8
  236. package/lib/condition-wait.js +0 -94
  237. package/lib/condition-wait.js.map +0 -1
  238. package/lib/constants.d.ts +0 -7
  239. package/lib/constants.js +0 -11
  240. package/lib/constants.js.map +0 -1
  241. package/lib/dual-component-ctrl.d.ts +0 -25
  242. package/lib/dual-component-ctrl.js +0 -6
  243. package/lib/dual-component-ctrl.js.map +0 -1
  244. package/lib/firedev-models.d.ts +0 -13
  245. package/lib/firedev-models.js.map +0 -1
  246. package/lib/helpers-browser.js.map +0 -1
  247. package/lib/helpers-cli-tool.backend.js.map +0 -1
  248. package/lib/helpers-console-gui.js.map +0 -1
  249. package/lib/helpers-dependencies.backend.js.map +0 -1
  250. package/lib/helpers-environment.d.ts +0 -5
  251. package/lib/helpers-environment.js +0 -35
  252. package/lib/helpers-environment.js.map +0 -1
  253. package/lib/helpers-file-folders.backend.js.map +0 -1
  254. package/lib/helpers-git.backend.js.map +0 -1
  255. package/lib/helpers-morphi-framework.backend.d.ts +0 -4
  256. package/lib/helpers-morphi-framework.backend.js +0 -58
  257. package/lib/helpers-morphi-framework.backend.js.map +0 -1
  258. package/lib/helpers-network.backend.js.map +0 -1
  259. package/lib/helpers-npm.backend.js.map +0 -1
  260. package/lib/helpers-path.backend.js.map +0 -1
  261. package/lib/helpers-process.backend.js.map +0 -1
  262. package/lib/helpers-system-terminal.backend.js.map +0 -1
  263. package/lib/helpers-vscode.backend.d.ts +0 -5
  264. package/lib/helpers-vscode.backend.js.map +0 -1
  265. package/lib/long-press.directive.d.ts +0 -22
  266. package/lib/merge-helpers.backend.d.ts +0 -23
  267. package/lib/merge-helpers.backend.js +0 -108
  268. package/lib/merge-helpers.backend.js.map +0 -1
  269. package/lib/resize-service.d.ts +0 -6
  270. package/lib/resize-service.js +0 -23
  271. package/lib/resize-service.js.map +0 -1
  272. package/lib/ts-code/index.js.map +0 -1
  273. package/lib/ts-code/ts-code-extractor.js.map +0 -1
  274. package/lib/ts-code/ts-code-modifier.backend.js.map +0 -1
  275. package/websql/esm2022/lib/angular.helper.mjs +0 -88
  276. package/websql/esm2022/lib/base-component.mjs +0 -51
  277. package/websql/esm2022/lib/base-formly-component.mjs +0 -114
  278. package/websql/esm2022/lib/condition-wait.mjs +0 -46
  279. package/websql/esm2022/lib/constants.mjs +0 -9
  280. package/websql/esm2022/lib/dual-component-ctrl.mjs +0 -119
  281. package/websql/esm2022/lib/firedev-models.mjs +0 -4
  282. package/websql/esm2022/lib/helpers-browser.mjs +0 -48
  283. package/websql/esm2022/lib/helpers-console-gui.mjs +0 -10
  284. package/websql/esm2022/lib/helpers-environment.mjs +0 -33
  285. package/websql/esm2022/lib/long-press.directive.mjs +0 -114
  286. package/websql/esm2022/lib/resize-service.mjs +0 -23
  287. package/websql/lib/base-component.d.ts +0 -18
  288. package/websql/lib/base-formly-component.d.ts +0 -32
  289. package/websql/lib/condition-wait.d.ts +0 -9
  290. package/websql/lib/constants.d.ts +0 -8
  291. package/websql/lib/dual-component-ctrl.d.ts +0 -26
  292. package/websql/lib/firedev-models.d.ts +0 -14
  293. package/websql/lib/helpers-console-gui.d.ts +0 -7
  294. package/websql/lib/helpers-environment.d.ts +0 -6
  295. package/websql/lib/long-press.directive.d.ts +0 -26
  296. package/websql/lib/resize-service.d.ts +0 -10
  297. /package/lib/{helpers-console-gui.d.ts → for-backend/helpers-console-gui.d.ts} +0 -0
  298. /package/lib/{helpers-network.backend.d.ts → for-backend/helpers-network.backend.d.ts} +0 -0
  299. /package/lib/{helpers-network.backend.js → for-backend/helpers-network.backend.js} +0 -0
  300. /package/lib/{helpers-npm.backend.d.ts → for-backend/helpers-npm.backend.d.ts} +0 -0
  301. /package/lib/{helpers-npm.backend.js → for-backend/helpers-npm.backend.js} +0 -0
  302. /package/lib/{helpers-path.backend.d.ts → for-backend/helpers-path.backend.d.ts} +0 -0
  303. /package/lib/{helpers-process.backend.d.ts → for-backend/helpers-process.backend.d.ts} +0 -0
  304. /package/lib/{helpers-system-terminal.backend.d.ts → for-backend/helpers-system-terminal.backend.d.ts} +0 -0
  305. /package/lib/{ts-code → for-backend/ts-code}/index.d.ts +0 -0
  306. /package/lib/{ts-code → for-backend/ts-code}/index.js +0 -0
  307. /package/lib/{ts-code → for-backend/ts-code}/ts-code-extractor.d.ts +0 -0
  308. /package/lib/{ts-code → for-backend/ts-code}/ts-code-modifier.backend.d.ts +0 -0
@@ -43,10 +43,10 @@
43
43
  "firedev-helpers"
44
44
  ]
45
45
  },
46
- "version": "16.0.8",
46
+ "version": "16.0.10",
47
47
  "dependencies": {
48
48
  "json10-writer": "~16.0.45",
49
- "morphi": "~16.2.1",
49
+ "morphi": "~16.2.3",
50
50
  "task.js": "0.1.5",
51
51
  "tnp-models": "~16.0.36"
52
52
  },
@@ -98,7 +98,7 @@
98
98
  "@ngrx/store": "~16.0.1",
99
99
  "@ngrx/store-devtools": "~16.0.1",
100
100
  "@ngx-formly/core": "6.1.7",
101
- "@ngx-formly/material": "6.1.7",
101
+ "@ngx-formly/material": "6.1.8",
102
102
  "@ngx-translate/core": "15.0.0",
103
103
  "@ngx-translate/http-loader": "8.0.0",
104
104
  "@sweetalert2/ngx-sweetalert2": "12.1.0",
@@ -114,7 +114,6 @@
114
114
  "@types/glob": "5.0.35",
115
115
  "@types/http-proxy": "1.16.0",
116
116
  "@types/http-proxy-middleware": "0.19.2",
117
- "@types/inquirer": "7.3.1",
118
117
  "@types/jest": "29.5.2",
119
118
  "@types/json-stringify-safe": "5.0.0",
120
119
  "@types/json5": "0.0.29",
@@ -135,10 +134,11 @@
135
134
  "@types/watch": "1.0.0",
136
135
  "accepts": "1.3.4",
137
136
  "angular-material-css-vars": "5.0.2",
137
+ "angular-resize-event": "3.2.0",
138
138
  "animate.css": "4.1.1 ",
139
- "any-project-cli": "~16.0.31",
139
+ "any-project-cli": "~16.0.32",
140
140
  "axios": "1.3.5",
141
- "background-worker-process": "~16.0.48",
141
+ "background-worker-process": "~16.0.49",
142
142
  "base32": "0.0.7",
143
143
  "bcryptjs": "2.4.3",
144
144
  "better-sqlite3": "7.6.2",
@@ -157,6 +157,7 @@
157
157
  "compression": "1.7.4",
158
158
  "concurrently": "3.5.1",
159
159
  "content-type": "1.0.4",
160
+ "conventional-changelog-cli": "3.0.0",
160
161
  "cookie-parser": "1.4.3",
161
162
  "copy-paste": "1.5.3",
162
163
  "cors": "2.8.4",
@@ -166,6 +167,10 @@
166
167
  "dateformat": "3.0.3",
167
168
  "detect-mocha": "0.1.0",
168
169
  "diff": "3.2.0",
170
+ "electron": "25.2.0",
171
+ "electron-builder": "24.4.0",
172
+ "electron-debug": "3.2.0",
173
+ "electron-reloader": "1.2.3",
169
174
  "element-resize-detector": "1.1.15",
170
175
  "enquirer": "2.3.0",
171
176
  "enum-values": "1.2.1",
@@ -181,13 +186,13 @@
181
186
  "file-saver": "2.0.5",
182
187
  "file-type": "18.5.0",
183
188
  "firedev": "^16",
184
- "firedev-crud": "~16.0.53",
185
- "firedev-crud-deamon": "~16.0.43",
186
- "firedev-ports": "~16.0.48",
187
- "firedev-storage": "~16.0.40",
189
+ "firedev-crud": "~16.0.54",
190
+ "firedev-crud-deamon": "~16.0.44",
191
+ "firedev-ports": "~16.0.49",
192
+ "firedev-storage": "~16.0.41",
188
193
  "firedev-type-sql": "~16.0.2",
189
194
  "firedev-typeorm": "~16.0.39",
190
- "firedev-ui": "~16.0.7",
195
+ "firedev-ui": "~16.0.9",
191
196
  "fkill": "6.1.0",
192
197
  "font-awesome": "4.7.0",
193
198
  "form-data": "4.0.0",
@@ -208,7 +213,7 @@
208
213
  "inquirer": "7.3.3",
209
214
  "inquirer-autocomplete-prompt": "1.3.0",
210
215
  "is-elevated": "3.0.0",
211
- "isomorphic-region-loader": "~16.0.41",
216
+ "isomorphic-region-loader": "~16.0.42",
212
217
  "istanbul-instrumenter-loader": "2.0.0",
213
218
  "jest": "29.5.0",
214
219
  "jest-date-mock": "1.0.8",
@@ -230,7 +235,7 @@
230
235
  "lodash": "4.17.20",
231
236
  "lodash-walk-object": "~16.0.49",
232
237
  "lowdb": "1.0.0",
233
- "magic-renamer": "~16.0.46",
238
+ "magic-renamer": "~16.0.47",
234
239
  "material-design-icons": "3.0.1",
235
240
  "method-override": "2.3.10",
236
241
  "minimist": "1.2.0",
@@ -257,6 +262,7 @@
257
262
  "node-cli-tester": "~16.0.2",
258
263
  "node-localstorage": "2.1.6",
259
264
  "node-notifier": "6.0.0",
265
+ "node-polyfill-webpack-plugin": "2.0.1",
260
266
  "nodemon": "1.14.11",
261
267
  "npm-get-dependents": "1.0.1",
262
268
  "npm-run": "4.1.2",
@@ -287,18 +293,18 @@
287
293
  "socket.io": "2.4.1",
288
294
  "sort-package-json": "1.11.0",
289
295
  "sql.js": "1.8.0",
290
- "static-columns": "~16.0.5",
296
+ "static-columns": "~16.0.7",
291
297
  "string-similarity": "4.0.2",
292
298
  "sudo-block": "3.0.0",
293
299
  "supertest": "6.3.3",
294
300
  "sweetalert2": "11.7.12",
295
301
  "systeminformation": "3.45.7",
296
302
  "threads": "1.7.0",
297
- "tnp-cli": "~16.0.6",
298
- "tnp-config": "~16.0.12",
299
- "tnp-core": "~16.0.14",
300
- "tnp-db": "~16.0.26",
301
- "tnp-helpers": "~16.0.7",
303
+ "tnp-cli": "~16.0.7",
304
+ "tnp-config": "~16.0.18",
305
+ "tnp-core": "~16.0.15",
306
+ "tnp-db": "~16.0.27",
307
+ "tnp-helpers": "~16.0.9",
302
308
  "ts-debug": "1.3.0",
303
309
  "ts-loader": "2.3.1",
304
310
  "ts-node": "10.9.1",
@@ -313,17 +319,17 @@
313
319
  "uuid": "8.3.2",
314
320
  "validator": "9.2.0",
315
321
  "video.js": "8.3.0",
316
- "vpn-split": "~16.0.1",
322
+ "vpn-split": "~16.0.2",
317
323
  "watch": "1.0.2",
318
324
  "yup": "1.1.1",
319
325
  "zone.js": "~0.13.0"
320
326
  },
321
- "lastBuildTagHash": "1624d0df5d7b7bf7bdeaf0538de416ad0c7b4f81"
327
+ "lastBuildTagHash": "dcacded2b4c29f488f427b76c350c1e90ab6ac25"
322
328
  },
323
329
  "build": {
324
- "number": 575,
325
- "date": "2023-06-29T23:58:13.000Z",
326
- "hash": "03192054ec9cca466cc71933c97bcd5eb12b6cfb",
330
+ "number": 585,
331
+ "date": "2023-07-09T13:54:32.000Z",
332
+ "hash": "cea72688d45db97a21a642741b7d7de84c1af17f",
327
333
  "options": {}
328
334
  },
329
335
  "currentProjectName": "tnp-helpers",
@@ -331,7 +337,7 @@
331
337
  "currentProjectLaunchConfiguration": "{\"version\":\"0.2.0\",\"configurations\":[{\"type\":\"node\",\"request\":\"launch\",\"name\":\"Launch Server standalone\",\"program\":\"${workspaceFolder}/run.js\",\"args\":[\"--ENVoverride=%7B%0A%20%20%20%20%22clientProjectName%22%3A%20%22tnp-helpers%22%0A%7D\"],\"runtimeArgs\":[\"--nolazy\",\"-r\",\"ts-node/register\",\"--experimental-worker\"]},{\"name\":\"Debugger with ng serve\",\"type\":\"chrome\",\"request\":\"launch\",\"preLaunchTask\":\"Ng Serve\",\"postDebugTask\":\"terminateall\",\"sourceMaps\":true,\"webRoot\":\"${workspaceFolder}\",\"sourceMapPathOverrides\":{\"webpack:/*\":\"${webRoot}/*\",\"/./*\":\"${webRoot}/*\",\"/tmp-src/*\":\"${webRoot}/*\",\"/*\":\"*\",\"/./~/*\":\"${webRoot}/node_modules/*\"}},{\"type\":\"node\",\"request\":\"attach\",\"name\":\"Attach to global cli tool\",\"port\":9229,\"skipFiles\":[\"<node_internals>/**\"]}],\"compounds\":[{\"name\":\"Debug backend/frontend\",\"configurations\":[\"Launch Server standalone\",\"Debugger with ng serve\"]}]}",
332
338
  "currentProjectTasksConfiguration": "{\"version\":\"2.0.0\",\"tasks\":[{\"label\":\"terminateall\",\"command\":\"echo ${input:terminate}\",\"type\":\"shell\",\"problemMatcher\":[]},{\"label\":\"Ng Serve\",\"type\":\"shell\",\"command\":\"tnp build\",\"isBackground\":true,\"presentation\":{\"reveal\":\"always\"},\"group\":{\"kind\":\"build\",\"isDefault\":true},\"problemMatcher\":{\"owner\":\"typescript\",\"source\":\"ts\",\"applyTo\":\"closedDocuments\",\"fileLocation\":[\"relative\",\"${cwd}\"],\"pattern\":\"$tsc\",\"background\":{\"activeOnStart\":true,\"beginsPattern\":{\"regexp\":\"(.*?)\"},\"endsPattern\":{\"regexp\":\"Compiled |Failed to compile.\"}}}}],\"inputs\":[{\"id\":\"terminate\",\"type\":\"command\",\"command\":\"workbench.action.tasks.terminate\",\"args\":\"terminateAll\"}]}",
333
339
  "currentProjectType": "isomorphic-lib",
334
- "currentFrameworkVersion": "16.0.18",
340
+ "currentFrameworkVersion": "16.0.20",
335
341
  "currentProjectIsStrictSite": false,
336
342
  "currentProjectIsDependencySite": false,
337
343
  "currentProjectIsStatic": false,
@@ -0,0 +1,296 @@
1
+ /* */
2
+ /* */
3
+ /* */
4
+ /* */
5
+ /* */
6
+ import { CLI } from 'tnp-cli/websql';
7
+ import { path, crossPlatformPath } from 'tnp-core/websql';
8
+ import { config } from 'tnp-config/websql';
9
+ import { _ } from 'tnp-core/websql';
10
+ import { HelpersFiredev } from './helpers';
11
+ const Helpers = HelpersFiredev.Instance;
12
+ const takenPorts = [];
13
+ export class BaseProjectResolver {
14
+ constructor(classFn) {
15
+ this.classFn = classFn;
16
+ this.NPM_PROJECT_KEY = 'npm';
17
+ this.projects = [];
18
+ this.emptyLocations = [];
19
+ }
20
+ get allowedTypes() {
21
+ return [this.NPM_PROJECT_KEY];
22
+ }
23
+ get Current() {
24
+ const current = (this.classFn).From(process.cwd());
25
+ if (!current) {
26
+ Helpers.warn(`[firedev-helpers] Current location is not a ${CLI.chalk.bold(config.frameworkName)} type project.
27
+
28
+ location: "${process.cwd()}"
29
+
30
+ }`);
31
+ return void 0;
32
+ }
33
+ return current;
34
+ }
35
+ /**
36
+ * override this
37
+ */
38
+ typeFrom(location) {
39
+ /* */
40
+ /* */
41
+ /* */
42
+ /* */
43
+ /* */
44
+ return (void 0);
45
+ }
46
+ From(locationOfProject) {
47
+ if (Array.isArray(locationOfProject)) {
48
+ locationOfProject = locationOfProject.join('/');
49
+ }
50
+ let location = crossPlatformPath(locationOfProject.replace(/\/\//g, '/'));
51
+ if (!_.isString(location)) {
52
+ Helpers.warn(`[project.from] location is not a string`);
53
+ return;
54
+ }
55
+ if (path.basename(location) === 'dist') {
56
+ location = path.dirname(location);
57
+ }
58
+ location = crossPlatformPath(path.resolve(location));
59
+ const alreadyExist = this.projects.find(l => l.location.trim() === location.trim());
60
+ if (alreadyExist) {
61
+ return alreadyExist;
62
+ }
63
+ /* */
64
+ /* */
65
+ /* */
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
+ nearestTo(absoluteLocation, options) {
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
+ /* */
131
+ /* */
132
+ /* */
133
+ /* */
134
+ /* */
135
+ /* */
136
+ /* */
137
+ /* */
138
+ /* */
139
+ /* */
140
+ /* */
141
+ /* */
142
+ /* */
143
+ /* */
144
+ /* */
145
+ /* */
146
+ /* */
147
+ /* */
148
+ /* */
149
+ /* */
150
+ return (void 0);
151
+ }
152
+ unload(project) {
153
+ this.projects = this.projects.filter(f => f !== project);
154
+ }
155
+ allProjectFrom(absoluteLocation, stopOnCwd = '/') {
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
+ return (void 0);
183
+ }
184
+ }
185
+ class BaseProject {
186
+ static { this.ins = new BaseProjectResolver(BaseProject); }
187
+ get name() {
188
+ return this.packageJSON?.name;
189
+ }
190
+ get version() {
191
+ return this.packageJSON?.version;
192
+ }
193
+ get parent() {
194
+ return this.ins.From(path.join(this.location, '..'));
195
+ }
196
+ get genericName() {
197
+ let parent = this.parent;
198
+ return [
199
+ parent ? path.basename(path.dirname(parent.location)) : void 0,
200
+ parent ? parent.basename : path.basename(this.location),
201
+ this.basename,
202
+ /* */
203
+ /* */
204
+ ]
205
+ .filter(f => !!f)
206
+ .join('/');
207
+ }
208
+ /**
209
+ * try run but continue when it fails
210
+ * @param command
211
+ * @param options
212
+ * @returns
213
+ */
214
+ tryRunSync(command
215
+ /* */
216
+ /* */
217
+ ) {
218
+ /* */
219
+ /* */
220
+ /* */
221
+ /* */
222
+ /* */
223
+ /* */
224
+ return (void 0);
225
+ }
226
+ pathFor(relativePath) {
227
+ /* */
228
+ /* */
229
+ /* */
230
+ /* */
231
+ /* */
232
+ return (void 0);
233
+ }
234
+ writeJson(relativePath, json) {
235
+ /* */
236
+ /* */
237
+ /* */
238
+ /* */
239
+ /* */
240
+ return (void 0);
241
+ }
242
+ run(command
243
+ /* */
244
+ /* */
245
+ ) {
246
+ /* */
247
+ /* */
248
+ /* */
249
+ /* */
250
+ /* */
251
+ return (void 0);
252
+ }
253
+ outputFrom(command
254
+ /* */
255
+ /* */
256
+ ) {
257
+ /* */
258
+ /* */
259
+ return (void 0);
260
+ }
261
+ remove(relativePath, exactPath = true) {
262
+ /* */
263
+ /* */
264
+ return (void 0);
265
+ }
266
+ async assignFreePort(startFrom = 4200) {
267
+ /* */
268
+ /* */
269
+ /* */
270
+ /* */
271
+ /* */
272
+ /* */
273
+ /* */
274
+ /* */
275
+ /* */
276
+ /* */
277
+ /* */
278
+ /* */
279
+ /* */
280
+ /* */
281
+ /* */
282
+ /* */
283
+ /* */
284
+ /* */
285
+ /* */
286
+ /* */
287
+ /* */
288
+ /* */
289
+ /* */
290
+ return (void 0);
291
+ }
292
+ }
293
+ export { BaseProject };
294
+ ;
295
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/base-project.ts
296
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS13ZWJzcWwvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9iYXNlLXByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFFTCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLElBQUksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUczQyxNQUFNLE9BQU8sR0FBRyxjQUFjLENBQUMsUUFBUSxDQUFDO0FBR3hDLE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQztBQUV0QixNQUFNLE9BQU8sbUJBQW1CO0lBSzlCLFlBQXNCLE9BQVk7UUFBWixZQUFPLEdBQVAsT0FBTyxDQUFLO1FBSGYsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDakMsYUFBUSxHQUF3QixFQUFFLENBQUM7UUFDbkMsbUJBQWMsR0FBYSxFQUFFLENBQUM7SUFDRixDQUFDO0lBQ3ZDLElBQUksWUFBWTtRQUVkLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFHaEMsQ0FBQztJQUVELElBQUksT0FBTztRQUVULE1BQU0sT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQTtRQUNsRCxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osT0FBTyxDQUFD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S0FBSzs7UUFHTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxVQUFVLENBQUMsT0FBZTtJQUM1QixLQUFLO0lBQ0wsS0FBSzs7UUFHTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxNQUFNLENBQUMsWUFBb0IsRUFBRSxTQUFTLEdBQUcsSUFBSTtRQUMvQyxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYyxDQUFDLFlBQW9CLElBQUk7UUFDL0MsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDOztTQTdJVSxXQUFXO0FBbUp2QixDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDREQUE0RCIsInNvdXJjZXNDb250ZW50IjpbIlxuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gIFxuaW1wb3J0IHsgQ0xJIH0gZnJvbSAndG5wLWNsaS93ZWJzcWwnO1xuaW1wb3J0IHsgcGF0aCwgY3Jvc3NQbGF0Zm9ybVBhdGggfSBmcm9tICd0bnAtY29yZS93ZWJzcWwnO1xuaW1wb3J0IHsgY29uZmlnIH0gZnJvbSAndG5wLWNvbmZpZy93ZWJzcWwnO1xuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL3dlYnNxbCc7XG5pbXBvcnQgeyBIZWxwZXJzRmlyZWRldiB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyBNb2RlbHMgfSBmcm9tICd0bnAtbW9kZWxzL3dlYnNxbCc7XG5cbmNvbnN0IEhlbHBlcnMgPSBIZWxwZXJzRmlyZWRldi5JbnN0YW5jZTtcblxuXG5jb25zdCB0YWtlblBvcnRzID0gW107XG5cbmV4cG9ydCBjbGFzcyBCYXNlUHJvamVjdFJlc29sdmVyPFQ+IHtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgTlBNX1BST0pFQ1RfS0VZID0gJ25wbSc7XG4gIHByb3RlY3RlZCBwcm9qZWN0czogKFQgJiBCYXNlUHJvamVjdClbXSA9IFtdO1xuICBwcm90ZWN0ZWQgZW1wdHlMb2NhdGlvbnM6IHN0cmluZ1tdID0gW107XG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBjbGFzc0ZuOiBhbnkpIHsgfVxuICBnZXQgYWxsb3dlZFR5cGVzKCk6IHN0cmluZ1tdIHtcblxuICAgIHJldHVybiBbdGhpcy5OUE1fUFJPSkVDVF9LRVldO1xuXG5cbiAgfVxuXG4gIGdldCBDdXJyZW50KCk6IFQge1xuXG4gICAgY29uc3QgY3VycmVudCA9ICh0aGlzLmNsYXNzRm4pLkZyb20ocHJvY2Vzcy5jd2QoKSlcbiAgICBpZiAoIWN1cnJlbnQpIHtcbiAgICAgIEhlbHBlcnMud2FybihgW2ZpcmVkZXYtaGVscGVyc10gQ3VycmVudCBsb2NhdGlvbiBpcyBub3QgYSAke0NMSS5jaGFsay5ib2xkKGNvbmZpZy5mcmFtZXdvcmtOYW1lKX0gdHlwZSBwcm9qZWN0LlxuXG4gICAgIGxvY2F0aW9uOiBcIiR7cHJvY2Vzcy5jd2QoKX1cIlxuXG4gICAgIH1gKTtcbiAgICAgIHJldHVybiB2b2lkIDA7XG4gICAgfVxuICAgIHJldHVybiBjdXJyZW50O1xuXG4gIH1cblxuICAvKipcbiAgICogb3ZlcnJpZGUgdGhpc1xuICAgKi9cbiAgdHlwZUZyb208VD4obG9jYXRpb246IHN0cmluZyk6IHN0cmluZyB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG4gIEZyb20obG9jYXRpb25PZlByb2plY3Q6IHN0cmluZyB8IHN0cmluZ1tdKTogVCB7XG5cblxuXG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShsb2NhdGlvbk9mUHJvamVjdCkpIHtcbiAgICAgIGxvY2F0aW9uT2ZQcm9qZWN0ID0gbG9jYXRpb25PZlByb2plY3Quam9pbignLycpO1xuICAgIH1cbiAgICBsZXQgbG9jYXRpb24gPSBjcm9zc1BsYXRmb3JtUGF0aChsb2NhdGlvbk9mUHJvamVjdC5yZXBsYWNlKC9cXC9cXC8vZywgJy8nKSk7XG5cbiAgICBpZiAoIV8uaXNTdHJpbmcobG9jYXRpb24pKSB7XG4gICAgICBIZWxwZXJzLndhcm4oYFtwcm9qZWN0LmZyb21dIGxvY2F0aW9uIGlzIG5vdCBhIHN0cmluZ2ApXG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChwYXRoLmJhc2VuYW1lKGxvY2F0aW9uKSA9PT0gJ2Rpc3QnKSB7XG4gICAgICBsb2NhdGlvbiA9IHBhdGguZGlybmFtZShsb2NhdGlvbik7XG4gICAgfVxuICAgIGxvY2F0aW9uID0gY3Jvc3NQbGF0Zm9ybVBhdGgocGF0aC5yZXNvbHZlKGxvY2F0aW9uKSk7XG5cbiAgICBjb25zdCBhbHJlYWR5RXhpc3QgPSB0aGlzLnByb2plY3RzLmZpbmQobCA9PiBsLmxvY2F0aW9uLnRyaW0oKSA9PT0gbG9jYXRpb24udHJpbSgpKTtcbiAgICBpZiAoYWxyZWFkeUV4aXN0KSB7XG4gICAgICByZXR1cm4gYWxyZWFkeUV4aXN0IGFzIGFueTtcbiAgICB9XG5cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgXG5cblxuICB9XG5cbiAgbmVhcmVzdFRvKFxuICAgIGFic29sdXRlTG9jYXRpb246IHN0cmluZyxcbiAgICBvcHRpb25zPzogeyB0eXBlPzogKHN0cmluZyB8IHN0cmluZ1tdKTsgZmluZEdpdFJvb3Q/OiBib29sZWFuOyBvbmx5T3V0U2lkZU5vZGVNb2R1bGVzPzogYm9vbGVhbiB9KTogVCB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuICB1bmxvYWQocHJvamVjdDogVCkge1xuICAgIHRoaXMucHJvamVjdHMgPSB0aGlzLnByb2plY3RzLmZpbHRlcihmID0+IGYgIT09IHByb2plY3QpO1xuICB9XG5cblxuICBhbGxQcm9qZWN0RnJvbShhYnNvbHV0ZUxvY2F0aW9uOiBzdHJpbmcsIHN0b3BPbkN3ZDogc3RyaW5nID0gJy8nKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG59XG5cblxuZXhwb3J0IGNsYXNzIEJhc2VQcm9qZWN0PFQgPSBhbnk+XG4vKiAqL1xuLyogKi9cbiAgXG57XG4gIHN0YXRpYyBpbnMgPSBuZXcgQmFzZVByb2plY3RSZXNvbHZlcjxCYXNlUHJvamVjdD4oQmFzZVByb2plY3QpO1xuICByZWFkb25seSBpbnM6IEJhc2VQcm9qZWN0UmVzb2x2ZXI8VD47XG4gIC8qKlxuICAgKiBpdCBkbyBub3QgbmVlZCB0byBiZSByZWFsdCBwYXRoXG4gICAqL1xuICByZWFkb25seSBsb2NhdGlvbjogc3RyaW5nO1xuICByZWFkb25seSBiYXNlbmFtZTogc3RyaW5nO1xuICBnZXQgbmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wYWNrYWdlSlNPTj8ubmFtZTtcbiAgfVxuICByZWFkb25seSB0eXBlOiBzdHJpbmc7XG4gIGdldCB2ZXJzaW9uKCkge1xuICAgIHJldHVybiB0aGlzLnBhY2thZ2VKU09OPy52ZXJzaW9uO1xuICB9XG4gIHByb3RlY3RlZCByZWFkb25seSBwYWNrYWdlSlNPTjogTW9kZWxzLm5wbS5JUGFja2FnZUpTT047XG4gIC8qKlxuICAgKiBvbmx5IGF2YWlsYWJsZSBhZnRlciBleGVjdXRpbmcgKnRoaXMuYXNzaWduRnJlZVBvcnQoKSpcbiAgICovXG4gIHJlYWRvbmx5IHBvcnQ6IHN0cmluZztcblxuXG4gIGdldCBwYXJlbnQoKTogVCB7XG5cbiAgICByZXR1cm4gdGhpcy5pbnMuRnJvbShwYXRoLmpvaW4odGhpcy5sb2NhdGlvbiwgJy4uJykpO1xuXG4gIH1cblxuICBnZXQgZ2VuZXJpY05hbWUoKSB7XG5cbiAgICBsZXQgcGFyZW50ID0gdGhpcy5wYXJlbnQgYXMgYW55IGFzIEJhc2VQcm9qZWN0O1xuICAgIHJldHVybiBbXG4gICAgICBwYXJlbnQgPyBwYXRoLmJhc2VuYW1lKHBhdGguZGlybmFtZShwYXJlbnQubG9jYXRpb24pKSA6IHZvaWQgMCxcbiAgICAgIHBhcmVudCA/IHBhcmVudC5iYXNlbmFtZSA6IHBhdGguYmFzZW5hbWUodGhpcy5sb2NhdGlvbiksXG4gICAgICB0aGlzLmJhc2VuYW1lLFxuLyogKi9cbi8qICovXG4gIFxuICAgIF1cbiAgICAgIC5maWx0ZXIoZiA9PiAhIWYpXG4gICAgICAuam9pbignLycpXG5cbiAgfVxuXG4gIC8qKlxuICAgKiB0cnkgcnVuIGJ1dCBjb250aW51ZSB3aGVuIGl0IGZhaWxzXG4gICAqIEBwYXJhbSBjb21tYW5kXG4gICAqIEBwYXJhbSBvcHRpb25zXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICB0cnlSdW5TeW5jKGNvbW1hbmQ6IHN0cmluZ1xuLyogKi9cbi8qICovXG4gIFxuICApOiB2b2lkIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuICBwYXRoRm9yKHJlbGF0aXZlUGF0aDogc3RyaW5nKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuICB3cml0ZUpzb24ocmVsYXRpdmVQYXRoOiBzdHJpbmcsIGpzb246IG9iamVjdCkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuICBydW4oY29tbWFuZDogc3RyaW5nXG4vKiAqL1xuLyogKi9cbiAgXG4gICkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cbiAgb3V0cHV0RnJvbShjb21tYW5kOiBzdHJpbmdcbi8qICovXG4vKiAqL1xuICBcbiAgKSB7XG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuICByZW1vdmUocmVsYXRpdmVQYXRoOiBzdHJpbmcsIGV4YWN0UGF0aCA9IHRydWUpIHtcbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG4gIGFzeW5jIGFzc2lnbkZyZWVQb3J0KHN0YXJ0RnJvbTogbnVtYmVyID0gNDIwMCk6IFByb21pc2U8TnVtYmVyPiB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG59XG5cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9iYXNlLXByb2plY3QudHMiXX0=
@@ -0,0 +1,89 @@
1
+ import { Subject } from "rxjs";
2
+ const componentContextSymbol = Symbol();
3
+ const componentsDestroy$Subjects = {};
4
+ export var HelpersAngular;
5
+ (function (HelpersAngular) {
6
+ class SerializedSubject {
7
+ constructor(id) {
8
+ this.id = id;
9
+ }
10
+ }
11
+ HelpersAngular.SerializedSubject = SerializedSubject;
12
+ function subjectId(destroySubject) {
13
+ const id = Math.random().toString(36).substring(2);
14
+ if (!destroySubject[componentContextSymbol]) {
15
+ destroySubject[componentContextSymbol] = new SerializedSubject(id);
16
+ componentsDestroy$Subjects[id] = destroySubject;
17
+ }
18
+ return destroySubject[componentContextSymbol];
19
+ }
20
+ /**
21
+ * if you are using this.. please call Helpers.ng.unsubscribe(this.$destroy) in ngOnDestroy();
22
+ */
23
+ function serialize(destroy$) {
24
+ return subjectId(destroy$);
25
+ }
26
+ HelpersAngular.serialize = serialize;
27
+ /**
28
+ * if you are using this.. please call Helpers.ng.unsubscribe(this.$destroy) in ngOnDestroy();
29
+ */
30
+ function deserialize(destroy$) {
31
+ if (destroy$?.id) {
32
+ const realDestroySubject = componentsDestroy$Subjects[destroy$.id];
33
+ return realDestroySubject;
34
+ }
35
+ return new Subject();
36
+ }
37
+ HelpersAngular.deserialize = deserialize;
38
+ function unsubscribe(destroy$) {
39
+ const destroySubject = subjectId(destroy$);
40
+ if (destroySubject?.id) {
41
+ delete componentsDestroy$Subjects[destroySubject.id];
42
+ delete destroySubject[componentContextSymbol];
43
+ }
44
+ }
45
+ HelpersAngular.unsubscribe = unsubscribe;
46
+ /**
47
+ get properties from scss file
48
+
49
+
50
+ import styles from './tasks-ngrx-data.component.scss';
51
+
52
+ export class ExampleComponent {
53
+ sassFile = sassFile(styles);
54
+
55
+ async ngOnInit() {
56
+ this.tasksService.getAll();
57
+ console.log(this.sassFile.stringValue('--max-container-size'))
58
+ console.log(this.sassFile.numberValue('--max-container-size'))
59
+ }
60
+ }
61
+ */
62
+ function sassFile(styles) {
63
+ const lines = (styles.split('\n'));
64
+ return {
65
+ stringValue: (name) => {
66
+ for (let index = 0; index < lines.length; index++) {
67
+ const l = lines[index];
68
+ const [varName, value] = l.trim().split(':');
69
+ if (varName === name) {
70
+ return value.replace(';', '');
71
+ }
72
+ }
73
+ },
74
+ numberValue: (name) => {
75
+ for (let index = 0; index < lines.length; index++) {
76
+ const l = lines[index];
77
+ const [varName, value] = l.trim().split(':');
78
+ if (varName === name) {
79
+ return Number(value.replace('px', '').replace(';', ''));
80
+ }
81
+ }
82
+ }
83
+ };
84
+ }
85
+ HelpersAngular.sassFile = sassFile;
86
+ })(HelpersAngular || (HelpersAngular = {}));
87
+ ;
88
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/for-browser/angular.helper.ts
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlLXdlYnNxbC90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2Zvci1icm93c2VyL2FuZ3VsYXIuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0MsTUFBTSxzQkFBc0IsR0FBRyxNQUFNLEVBQUUsQ0FBQztBQUN4QyxNQUFNLDBCQUEwQixHQUFHLEVBQUUsQ0FBQztBQUd0QyxNQUFNLEtBQVcsY0FBYyxDQXFGOUI7QUFyRkQsV0FBaUIsY0FBYztJQUU3QixNQUFhLGlCQUFpQjtRQUM1QixZQUNTLEVBQVU7WUFBVixPQUFFLEdBQUYsRUFBRSxDQUFRO1FBQ2YsQ0FBQztLQUNOO0lBSlksZ0NBQWlCLG9CQUk3QixDQUFBO0lBR0QsU0FBUyxTQUFTLENBQUMsY0FBNEI7UUFDN0MsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFO1lBQzNDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLElBQUksaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbkUsMEJBQTBCLENBQUMsRUFBRSxDQUFDLEdBQUcsY0FBYyxDQUFDO1NBQ2pEO1FBQ0QsT0FBTyxjQUFjLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFnQixTQUFTLENBQUMsUUFBc0I7UUFDOUMsT0FBTyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUZlLHdCQUFTLFlBRXhCLENBQUE7SUFFRDs7T0FFRztJQUNILFNBQWdCLFdBQVcsQ0FBQyxRQUFnQztRQUMxRCxJQUFJLFFBQVEsRUFBRSxFQUFFLEVBQUU7WUFDaEIsTUFBTSxrQkFBa0IsR0FBRywwQkFBMEIsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbkUsT0FBTyxrQkFBa0IsQ0FBQztTQUMzQjtRQUNELE9BQU8sSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBTmUsMEJBQVcsY0FNMUIsQ0FBQTtJQUVELFNBQWdCLFdBQVcsQ0FBQyxRQUFzQjtRQUNoRCxNQUFNLGNBQWMsR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0MsSUFBSSxjQUFjLEVBQUUsRUFBRSxFQUFFO1lBQ3RCLE9BQU8sMEJBQTBCLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3JELE9BQU8sY0FBYyxDQUFDLHNCQUFzQixDQUFDLENBQUM7U0FDL0M7SUFDSCxDQUFDO0lBTmUsMEJBQVcsY0FNMUIsQ0FBQTtJQUlEOzs7Ozs7Ozs7Ozs7Ozs7U0FlSztJQUNMLFNBQWdCLFFBQVEsQ0FBQyxNQUFjO1FBQ3JDLE1BQU0sS0FBSyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ25DLE9BQU87WUFDTCxXQUFXLEVBQUUsQ0FBQyxJQUFZLEVBQUUsRUFBRTtnQkFDNUIsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUU7b0JBQ2pELE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDdkIsTUFBTSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUM3QyxJQUFJLE9BQU8sS0FBSyxJQUFJLEVBQUU7d0JBQ3BCLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7cUJBQy9CO2lCQUNGO1lBQ0gsQ0FBQztZQUNELFdBQVcsRUFBRSxDQUFDLElBQVksRUFBVSxFQUFFO2dCQUNwQyxLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRTtvQkFDakQsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUN2QixNQUFNLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQzdDLElBQUksT0FBTyxLQUFLLElBQUksRUFBRTt3QkFDcEIsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO3FCQUN6RDtpQkFDRjtZQUNILENBQUM7U0FDRixDQUFBO0lBQ0gsQ0FBQztJQXRCZSx1QkFBUSxXQXNCdkIsQ0FBQTtBQUNILENBQUMsRUFyRmdCLGNBQWMsS0FBZCxjQUFjLFFBcUY5QjtBQUlBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsMEVBQTBFIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcblxuY29uc3QgY29tcG9uZW50Q29udGV4dFN5bWJvbCA9IFN5bWJvbCgpO1xuY29uc3QgY29tcG9uZW50c0Rlc3Ryb3kkU3ViamVjdHMgPSB7fTtcblxuXG5leHBvcnQgbmFtZXNwYWNlIEhlbHBlcnNBbmd1bGFyIHtcblxuICBleHBvcnQgY2xhc3MgU2VyaWFsaXplZFN1YmplY3Q8VD4ge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgcHVibGljIGlkOiBzdHJpbmdcbiAgICApIHsgfVxuICB9XG5cblxuICBmdW5jdGlvbiBzdWJqZWN0SWQoZGVzdHJveVN1YmplY3Q6IFN1YmplY3Q8YW55Pik6IFNlcmlhbGl6ZWRTdWJqZWN0PGFueT4ge1xuICAgIGNvbnN0IGlkID0gTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIpO1xuICAgIGlmICghZGVzdHJveVN1YmplY3RbY29tcG9uZW50Q29udGV4dFN5bWJvbF0pIHtcbiAgICAgIGRlc3Ryb3lTdWJqZWN0W2NvbXBvbmVudENvbnRleHRTeW1ib2xdID0gbmV3IFNlcmlhbGl6ZWRTdWJqZWN0KGlkKTtcbiAgICAgIGNvbXBvbmVudHNEZXN0cm95JFN1YmplY3RzW2lkXSA9IGRlc3Ryb3lTdWJqZWN0O1xuICAgIH1cbiAgICByZXR1cm4gZGVzdHJveVN1YmplY3RbY29tcG9uZW50Q29udGV4dFN5bWJvbF07XG4gIH1cblxuICAvKipcbiAgICogaWYgeW91IGFyZSB1c2luZyB0aGlzLi4gcGxlYXNlIGNhbGwgSGVscGVycy5uZy51bnN1YnNjcmliZSh0aGlzLiRkZXN0cm95KSBpbiBuZ09uRGVzdHJveSgpO1xuICAgKi9cbiAgZXhwb3J0IGZ1bmN0aW9uIHNlcmlhbGl6ZShkZXN0cm95JDogU3ViamVjdDxhbnk+KTogU2VyaWFsaXplZFN1YmplY3Q8YW55PiB7XG4gICAgcmV0dXJuIHN1YmplY3RJZChkZXN0cm95JCk7XG4gIH1cblxuICAvKipcbiAgICogaWYgeW91IGFyZSB1c2luZyB0aGlzLi4gcGxlYXNlIGNhbGwgSGVscGVycy5uZy51bnN1YnNjcmliZSh0aGlzLiRkZXN0cm95KSBpbiBuZ09uRGVzdHJveSgpO1xuICAgKi9cbiAgZXhwb3J0IGZ1bmN0aW9uIGRlc2VyaWFsaXplKGRlc3Ryb3kkOiBTZXJpYWxpemVkU3ViamVjdDxhbnk+KTogU3ViamVjdDxhbnk+IHtcbiAgICBpZiAoZGVzdHJveSQ/LmlkKSB7XG4gICAgICBjb25zdCByZWFsRGVzdHJveVN1YmplY3QgPSBjb21wb25lbnRzRGVzdHJveSRTdWJqZWN0c1tkZXN0cm95JC5pZF07XG4gICAgICByZXR1cm4gcmVhbERlc3Ryb3lTdWJqZWN0O1xuICAgIH1cbiAgICByZXR1cm4gbmV3IFN1YmplY3QoKTtcbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiB1bnN1YnNjcmliZShkZXN0cm95JDogU3ViamVjdDxhbnk+KSB7XG4gICAgY29uc3QgZGVzdHJveVN1YmplY3QgPSBzdWJqZWN0SWQoZGVzdHJveSQpO1xuICAgIGlmIChkZXN0cm95U3ViamVjdD8uaWQpIHtcbiAgICAgIGRlbGV0ZSBjb21wb25lbnRzRGVzdHJveSRTdWJqZWN0c1tkZXN0cm95U3ViamVjdC5pZF07XG4gICAgICBkZWxldGUgZGVzdHJveVN1YmplY3RbY29tcG9uZW50Q29udGV4dFN5bWJvbF07XG4gICAgfVxuICB9XG5cblxuXG4gIC8qKlxuICBnZXQgcHJvcGVydGllcyBmcm9tIHNjc3MgZmlsZVxuXG5cbiAgaW1wb3J0IHN0eWxlcyBmcm9tICcuL3Rhc2tzLW5ncngtZGF0YS5jb21wb25lbnQuc2Nzcyc7XG5cbiAgZXhwb3J0IGNsYXNzIEV4YW1wbGVDb21wb25lbnQge1xuICAgIHNhc3NGaWxlID0gc2Fzc0ZpbGUoc3R5bGVzKTtcblxuICAgIGFzeW5jIG5nT25Jbml0KCkge1xuICAgICAgdGhpcy50YXNrc1NlcnZpY2UuZ2V0QWxsKCk7XG4gICAgICBjb25zb2xlLmxvZyh0aGlzLnNhc3NGaWxlLnN0cmluZ1ZhbHVlKCctLW1heC1jb250YWluZXItc2l6ZScpKVxuICAgICAgY29uc29sZS5sb2codGhpcy5zYXNzRmlsZS5udW1iZXJWYWx1ZSgnLS1tYXgtY29udGFpbmVyLXNpemUnKSlcbiAgICB9XG4gIH1cbiAgICAgKi9cbiAgZXhwb3J0IGZ1bmN0aW9uIHNhc3NGaWxlKHN0eWxlczogc3RyaW5nKSB7XG4gICAgY29uc3QgbGluZXMgPSAoc3R5bGVzLnNwbGl0KCdcXG4nKSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN0cmluZ1ZhbHVlOiAobmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBsaW5lcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICBjb25zdCBsID0gbGluZXNbaW5kZXhdO1xuICAgICAgICAgIGNvbnN0IFt2YXJOYW1lLCB2YWx1ZV0gPSBsLnRyaW0oKS5zcGxpdCgnOicpO1xuICAgICAgICAgIGlmICh2YXJOYW1lID09PSBuYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUucmVwbGFjZSgnOycsICcnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBudW1iZXJWYWx1ZTogKG5hbWU6IHN0cmluZyk6IG51bWJlciA9PiB7XG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBsaW5lcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICBjb25zdCBsID0gbGluZXNbaW5kZXhdO1xuICAgICAgICAgIGNvbnN0IFt2YXJOYW1lLCB2YWx1ZV0gPSBsLnRyaW0oKS5zcGxpdCgnOicpO1xuICAgICAgICAgIGlmICh2YXJOYW1lID09PSBuYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gTnVtYmVyKHZhbHVlLnJlcGxhY2UoJ3B4JywgJycpLnJlcGxhY2UoJzsnLCAnJykpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9mb3ItYnJvd3Nlci9hbmd1bGFyLmhlbHBlci50cyJdfQ==
@@ -0,0 +1,48 @@
1
+ const key = Symbol('[firedev-helpers] helper browser key');
2
+ class HelpersBrowser {
3
+ static { this.callbacks = []; }
4
+ static onInit(callback) {
5
+ this.callbacks.push(callback);
6
+ }
7
+ get win() {
8
+ let win = window;
9
+ return win;
10
+ }
11
+ get tabIdSessionStorage() {
12
+ return Number(this.win.sessionStorage?.tabId) || 0;
13
+ }
14
+ constructor(win) {
15
+ this.init = (() => {
16
+ const win = this.win;
17
+ if (!win[key]) {
18
+ win[key] = new HelpersBrowser(win);
19
+ }
20
+ HelpersBrowser.inst = win[key];
21
+ })();
22
+ win.addEventListener("beforeunload", (e) => {
23
+ win.sessionStorage.tabId = this.tabId;
24
+ return null;
25
+ });
26
+ setTimeout(() => {
27
+ if (win.sessionStorage?.tabId) {
28
+ // @ts-ignore
29
+ this.tabId = Number(win.sessionStorage.tabId);
30
+ win.sessionStorage.removeItem("tabId");
31
+ }
32
+ else {
33
+ // @ts-ignore
34
+ this.tabId = Math.floor(Math.random() * 1000000) + (new Date()).getTime();
35
+ }
36
+ HelpersBrowser.callbacks.forEach((c) => {
37
+ c(this);
38
+ });
39
+ });
40
+ }
41
+ static get instance() {
42
+ return HelpersBrowser.inst;
43
+ }
44
+ }
45
+ export { HelpersBrowser };
46
+ ;
47
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/for-browser/helpers-browser.ts
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy1icm93c2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS13ZWJzcWwvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9mb3ItYnJvd3Nlci9oZWxwZXJzLWJyb3dzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUE7QUFFMUQsTUFBYSxjQUFjO2FBRVYsY0FBUyxHQUFHLEVBQUUsQUFBTCxDQUFNO0lBQzlCLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBc0M7UUFDbEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksR0FBRztRQUNMLElBQUksR0FBRyxHQUFHLE1BQU0sQ0FBQztRQUNqQixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxJQUFZLG1CQUFtQjtRQUM3QixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQWNELFlBQW9CLEdBQVc7UUFUL0IsU0FBSSxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ1gsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUVyQixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNiLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNwQztZQUNELGNBQWMsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFJSCxHQUFHLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDekMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUN0QyxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO1FBRUgsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUVkLElBQUksR0FBRyxDQUFDLGNBQWMsRUFBRSxLQUFLLEVBQUU7Z0JBQzdCLGFBQWE7Z0JBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDOUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDeEM7aUJBQ0k7Z0JBQ0gsYUFBYTtnQkFDYixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQzNFO1lBQ0QsY0FBYyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDckMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ1YsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUdKLENBQUM7SUFHRCxNQUFNLEtBQUssUUFBUTtRQUNqQixPQUFPLGNBQWMsQ0FBQyxJQUFJLENBQUM7SUFDN0IsQ0FBQzs7U0F6RFUsY0FBYztBQWtFMUIsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywyRUFBMkUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuXG5jb25zdCBrZXkgPSBTeW1ib2woJ1tmaXJlZGV2LWhlbHBlcnNdIGhlbHBlciBicm93c2VyIGtleScpXG5cbmV4cG9ydCBjbGFzcyBIZWxwZXJzQnJvd3NlciB7XG5cbiAgcHJpdmF0ZSBzdGF0aWMgY2FsbGJhY2tzID0gW107XG4gIHN0YXRpYyBvbkluaXQoY2FsbGJhY2s6IChpbnM6IEhlbHBlcnNCcm93c2VyKSA9PiBhbnkpIHtcbiAgICB0aGlzLmNhbGxiYWNrcy5wdXNoKGNhbGxiYWNrKTtcbiAgfVxuXG4gIGdldCB3aW4oKSB7XG4gICAgbGV0IHdpbiA9IHdpbmRvdztcbiAgICByZXR1cm4gd2luO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgdGFiSWRTZXNzaW9uU3RvcmFnZSgpIHtcbiAgICByZXR1cm4gTnVtYmVyKHRoaXMud2luLnNlc3Npb25TdG9yYWdlPy50YWJJZCkgfHwgMDtcbiAgfVxuXG4gIHJlYWRvbmx5IHRhYklkOiBudW1iZXI7XG5cbiAgcHJpdmF0ZSBzdGF0aWMgaW5zdDogSGVscGVyc0Jyb3dzZXI7XG4gIGluaXQgPSAoKCkgPT4ge1xuICAgIGNvbnN0IHdpbiA9IHRoaXMud2luO1xuXG4gICAgaWYgKCF3aW5ba2V5XSkge1xuICAgICAgd2luW2tleV0gPSBuZXcgSGVscGVyc0Jyb3dzZXIod2luKTtcbiAgICB9XG4gICAgSGVscGVyc0Jyb3dzZXIuaW5zdCA9IHdpbltrZXldO1xuICB9KSgpO1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3Iod2luOiBXaW5kb3cpIHtcblxuICAgIHdpbi5hZGRFdmVudExpc3RlbmVyKFwiYmVmb3JldW5sb2FkXCIsIChlKSA9PiB7XG4gICAgICB3aW4uc2Vzc2lvblN0b3JhZ2UudGFiSWQgPSB0aGlzLnRhYklkO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcblxuICAgICAgaWYgKHdpbi5zZXNzaW9uU3RvcmFnZT8udGFiSWQpIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICB0aGlzLnRhYklkID0gTnVtYmVyKHdpbi5zZXNzaW9uU3RvcmFnZS50YWJJZCk7XG4gICAgICAgIHdpbi5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKFwidGFiSWRcIik7XG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICB0aGlzLnRhYklkID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwMDAwMCkgKyAobmV3IERhdGUoKSkuZ2V0VGltZSgpO1xuICAgICAgfVxuICAgICAgSGVscGVyc0Jyb3dzZXIuY2FsbGJhY2tzLmZvckVhY2goKGMpID0+IHtcbiAgICAgICAgYyh0aGlzKTtcbiAgICAgIH0pO1xuICAgIH0pXG5cblxuICB9XG5cblxuICBzdGF0aWMgZ2V0IGluc3RhbmNlKCkge1xuICAgIHJldHVybiBIZWxwZXJzQnJvd3Nlci5pbnN0O1xuICB9XG5cbn1cblxuXG5cblxuXG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10bnAtaGVscGVycyBsaWIvZm9yLWJyb3dzZXIvaGVscGVycy1icm93c2VyLnRzIl19