@futdevpro/fsm-dynamo 1.16.30 → 1.16.31

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 (551) hide show
  1. package/.cursor/rules/__assistant_guide.mdc +30 -30
  2. package/.cursor/rules/_ag_backend-structure.mdc +85 -85
  3. package/.cursor/rules/_ag_backend.mdc +16 -16
  4. package/.cursor/rules/_ag_frontend-structure.mdc +86 -86
  5. package/.cursor/rules/_ag_frontend.mdc +39 -39
  6. package/.cursor/rules/_ag_import-rules.mdc +44 -44
  7. package/.cursor/rules/_ag_naming.mdc +115 -115
  8. package/.cursor/rules/_ag_should-be.mdc +6 -6
  9. package/.cursor/rules/ai_development_guide.md +60 -60
  10. package/.cursor/rules/cursor-rules.md +160 -160
  11. package/.cursor/rules/default-command.mdc +464 -464
  12. package/.cursor/rules/error_code_pattern.md +39 -39
  13. package/.cursor/rules/saved rule mcp server use.md +15 -15
  14. package/.vscode/settings.json +11 -11
  15. package/LICENSE +21 -21
  16. package/__documentations/2026-06-22-dyfm-error-extends-error.md +109 -109
  17. package/build/_modules/game/_collections/audio-mixer.util.d.ts +55 -0
  18. package/build/_modules/game/_collections/audio-mixer.util.d.ts.map +1 -0
  19. package/build/_modules/game/_collections/audio-mixer.util.js +114 -0
  20. package/build/_modules/game/_collections/audio-mixer.util.js.map +1 -0
  21. package/build/_modules/game/_enums/audio-channel.enum.d.ts +17 -0
  22. package/build/_modules/game/_enums/audio-channel.enum.d.ts.map +1 -0
  23. package/build/_modules/game/_enums/audio-channel.enum.js +21 -0
  24. package/build/_modules/game/_enums/audio-channel.enum.js.map +1 -0
  25. package/build/_modules/game/_models/audio-mixer-settings.interface.d.ts +23 -0
  26. package/build/_modules/game/_models/audio-mixer-settings.interface.d.ts.map +1 -0
  27. package/build/_modules/game/_models/audio-mixer-settings.interface.js +3 -0
  28. package/build/_modules/game/_models/audio-mixer-settings.interface.js.map +1 -0
  29. package/build/_modules/game/_models/seeded-random-state.interface.d.ts +17 -0
  30. package/build/_modules/game/_models/seeded-random-state.interface.d.ts.map +1 -0
  31. package/build/_modules/game/_models/seeded-random-state.interface.js +3 -0
  32. package/build/_modules/game/_models/seeded-random-state.interface.js.map +1 -0
  33. package/build/_modules/game/_models/seeded-random.control-model.d.ts +125 -0
  34. package/build/_modules/game/_models/seeded-random.control-model.d.ts.map +1 -0
  35. package/build/_modules/game/_models/seeded-random.control-model.js +263 -0
  36. package/build/_modules/game/_models/seeded-random.control-model.js.map +1 -0
  37. package/build/_modules/game/index.d.ts +6 -0
  38. package/build/_modules/game/index.d.ts.map +1 -0
  39. package/build/_modules/game/index.js +12 -0
  40. package/build/_modules/game/index.js.map +1 -0
  41. package/build/_modules/socket/_models/sck-socket-event.control-model.js +1 -1
  42. package/eslint.config.js +4 -4
  43. package/nodemon.json +22 -22
  44. package/package.json +11 -2
  45. package/scripts/crypto/CRYPTO-STABILITY-SOLUTION.md +196 -196
  46. package/scripts/crypto/README.md +113 -113
  47. package/scripts/crypto/demo-crypto-stability.js +120 -120
  48. package/scripts/crypto/stress-test-crypto.js +379 -379
  49. package/scripts/run-coverage-tests.js +24 -24
  50. package/spec/support/helpers/ts-node-helper.js +9 -9
  51. package/spec/support/jasmine.coverage.json +23 -23
  52. package/spec/support/jasmine.json +24 -24
  53. package/src/_collections/constants/data-sizes.const.ts +40 -40
  54. package/src/_collections/constants/error-defaults.const.ts +20 -20
  55. package/src/_collections/constants/global-settings.const.ts +24 -24
  56. package/src/_collections/constants/numbers.const.ts +40 -40
  57. package/src/_collections/constants/times.const.ts +45 -45
  58. package/src/_collections/utils/array.util.spec.ts +306 -306
  59. package/src/_collections/utils/array.util.ts +813 -813
  60. package/src/_collections/utils/async.util.spec.ts +354 -354
  61. package/src/_collections/utils/async.util.ts +197 -197
  62. package/src/_collections/utils/data.util.spec.ts +345 -345
  63. package/src/_collections/utils/data.util.ts +226 -226
  64. package/src/_collections/utils/json-error-helper.util.spec.ts +521 -521
  65. package/src/_collections/utils/json-error-helper.util.ts +301 -301
  66. package/src/_collections/utils/log.util.spec.ts +975 -975
  67. package/src/_collections/utils/log.util.ts +667 -667
  68. package/src/_collections/utils/math/box-bounds.spec.ts +73 -73
  69. package/src/_collections/utils/math/box-bounds.util.ts +183 -183
  70. package/src/_collections/utils/math/math.util.spec.ts +94 -94
  71. package/src/_collections/utils/math/math.util.ts +141 -141
  72. package/src/_collections/utils/math/random.util.spec.ts +82 -82
  73. package/src/_collections/utils/math/random.util.ts +139 -139
  74. package/src/_collections/utils/math/trigonometry.util.spec.ts +57 -57
  75. package/src/_collections/utils/math/trigonometry.util.ts +102 -102
  76. package/src/_collections/utils/math/vector2.util.spec.ts +94 -94
  77. package/src/_collections/utils/math/vector2.util.ts +653 -653
  78. package/src/_collections/utils/object.util.spec.ts +646 -646
  79. package/src/_collections/utils/regex/password-regex.util.spec.ts +51 -51
  80. package/src/_collections/utils/regex/password-regex.util.ts +65 -65
  81. package/src/_collections/utils/regex/regex.util.spec.ts +42 -42
  82. package/src/_collections/utils/regex/regex.util.ts +6 -6
  83. package/src/_collections/utils/regex/username-regex.util.spec.ts +61 -61
  84. package/src/_collections/utils/regex/username-regex.util.ts +35 -35
  85. package/src/_collections/utils/round-list.util.spec.ts +79 -79
  86. package/src/_collections/utils/round-list.util.ts +162 -162
  87. package/src/_collections/utils/stack.util.spec.ts +372 -372
  88. package/src/_collections/utils/stack.util.ts +164 -164
  89. package/src/_collections/utils/string-case.util.spec.ts +441 -441
  90. package/src/_collections/utils/string-case.util.ts +362 -362
  91. package/src/_collections/utils/string.util.spec.ts +975 -975
  92. package/src/_collections/utils/string.util.ts +449 -449
  93. package/src/_collections/utils/time.util.spec.ts +50 -50
  94. package/src/_collections/utils/time.util.ts +481 -481
  95. package/src/_collections/utils/type-cloning-facility.util.spec.ts +51 -51
  96. package/src/_collections/utils/type-cloning-facility.util.ts +168 -168
  97. package/src/_collections/utils/utilities.util.spec.ts +201 -201
  98. package/src/_collections/utils/utilities.util.ts +68 -68
  99. package/src/_collections/utils/uuid.util.spec.ts +30 -30
  100. package/src/_collections/utils/uuid.util.ts +50 -50
  101. package/src/_enums/basic-property-type.enum.ts +20 -20
  102. package/src/_enums/data-model-type.enum.ts +29 -29
  103. package/src/_enums/environment-flag.enum.ts +28 -28
  104. package/src/_enums/error-level.enum.ts +43 -43
  105. package/src/_enums/http/http-call-type.enum.ts +43 -43
  106. package/src/_enums/http/http-event-type.enum.ts +40 -40
  107. package/src/_enums/http/http-response-type.enum.ts +18 -18
  108. package/src/_enums/log-style.enum.ts +44 -44
  109. package/src/_enums/server-connection-status.enum.ts +6 -6
  110. package/src/_enums/time/day-of-week.enum.ts +55 -55
  111. package/src/_enums/time/month.enum.ts +25 -25
  112. package/src/_enums/time/relative-date.enum.ts +24 -24
  113. package/src/_models/control-models/data-model-params.control-model.spec.ts +133 -133
  114. package/src/_models/control-models/data-model-params.control-model.ts +352 -352
  115. package/src/_models/control-models/data-property-params.control-model.spec.ts +93 -93
  116. package/src/_models/control-models/data-property-params.control-model.ts +210 -210
  117. package/src/_models/control-models/error.control-model.spec.ts +912 -912
  118. package/src/_models/control-models/error.control-model.ts +1274 -1274
  119. package/src/_models/control-models/http/http-error-response.control-model.spec.ts +116 -116
  120. package/src/_models/control-models/http/http-error-response.control-model.ts +52 -52
  121. package/src/_models/control-models/http/http-headers.control-model.spec.ts +25 -25
  122. package/src/_models/control-models/http/http-headers.control-model.ts +124 -124
  123. package/src/_models/control-models/http/http-response.model-base.spec.ts +46 -46
  124. package/src/_models/control-models/http/http-response.model-base.ts +57 -57
  125. package/src/_models/control-models/poll.control-model.spec.ts +63 -63
  126. package/src/_models/control-models/poll.control-model.ts +151 -151
  127. package/src/_models/control-models/range-value.control-model.spec.ts +187 -187
  128. package/src/_models/control-models/range-value.control-model.ts +289 -289
  129. package/src/_models/control-models/server-status.control-model.spec.ts +66 -66
  130. package/src/_models/control-models/server-status.control-model.ts +94 -94
  131. package/src/_models/control-models/service-endpoint-settings-base.control-model.spec.ts +145 -145
  132. package/src/_models/control-models/service-endpoint-settings-base.control-model.ts +186 -186
  133. package/src/_models/data-models/errors.data-model.spec.ts +71 -71
  134. package/src/_models/data-models/errors.data-model.ts +175 -175
  135. package/src/_models/data-models/metadata.data-model.spec.ts +184 -184
  136. package/src/_models/data-models/metadata.data-model.ts +153 -153
  137. package/src/_models/interfaces/box-bounds.interface.ts +7 -7
  138. package/src/_models/interfaces/environment/global-log-settings.interface.ts +86 -86
  139. package/src/_models/interfaces/environment/global-settings.interface.ts +47 -47
  140. package/src/_models/interfaces/error-defaults.interface.ts +11 -11
  141. package/src/_models/interfaces/paged.interface.ts +12 -12
  142. package/src/_models/interfaces/random-weight.interface.ts +7 -7
  143. package/src/_models/interfaces/route-settings.interface.ts +15 -15
  144. package/src/_models/interfaces/search-query.interface.ts +23 -23
  145. package/src/_models/interfaces/search-result.interface.ts +5 -5
  146. package/src/_models/interfaces/server-error-statistics.interface.ts +24 -24
  147. package/src/_models/interfaces/vector2.interface.ts +20 -20
  148. package/src/_models/types/db-filter.type.ts +110 -110
  149. package/src/_models/types/db-sort.type.ts +4 -4
  150. package/src/_models/types/ds-filter.type.ts +68 -68
  151. package/src/_models/types/ds-sort.type.ts +21 -21
  152. package/src/_modules/ai/_collections/ai-model-ref.util.ts +88 -88
  153. package/src/_modules/ai/_collections/ai-model-registry.util.spec.ts +37 -37
  154. package/src/_modules/ai/_collections/ai-model-registry.util.ts +30 -30
  155. package/src/_modules/ai/_enums/ai-message-role.enum.ts +7 -7
  156. package/src/_modules/ai/_enums/ai-model-type.enum.ts +7 -7
  157. package/src/_modules/ai/_enums/ai-provider.enum.ts +7 -7
  158. package/src/_modules/ai/_models/ai-call-settings.interface.ts +84 -84
  159. package/src/_modules/ai/_models/ai-embedding-request.interface.ts +20 -20
  160. package/src/_modules/ai/_models/ai-embedding-response.interface.ts +26 -26
  161. package/src/_modules/ai/_models/ai-llm-request.interface.ts +24 -24
  162. package/src/_modules/ai/_models/ai-llm-response.interface.ts +30 -30
  163. package/src/_modules/ai/_models/ai-message.interface.ts +12 -12
  164. package/src/_modules/ai/_models/ai-model-capabilities.interface.ts +35 -35
  165. package/src/_modules/ai/_models/ai-model-info.interface.ts +63 -63
  166. package/src/_modules/ai/_models/ai-model-settings-schema.interface.ts +52 -52
  167. package/src/_modules/ai/_models/ai-provider-capabilities.interface.ts +28 -28
  168. package/src/_modules/ai/_models/ai-settings.interface.ts +17 -17
  169. package/src/_modules/ai/_models/ai-tool-call.interface.ts +18 -18
  170. package/src/_modules/ai/_models/ai-tool-handler.type.ts +11 -11
  171. package/src/_modules/ai/_models/ai-tool-result.interface.ts +16 -16
  172. package/src/_modules/ai/_models/ai-tool.interface.ts +16 -16
  173. package/src/_modules/ai/_models/ai-user-provider-config.control-model.ts +29 -29
  174. package/src/_modules/ai/_modules/anthropic/_collections/aai-models.const.ts +135 -135
  175. package/src/_modules/ai/_modules/anthropic/_enums/aai-model.enum.ts +19 -19
  176. package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.spec.ts +28 -28
  177. package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.ts +23 -23
  178. package/src/_modules/ai/_modules/anthropic/_models/aai-client-options.interface.ts +10 -10
  179. package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.spec.ts +22 -22
  180. package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.ts +27 -27
  181. package/src/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.ts +20 -20
  182. package/src/_modules/ai/_modules/anthropic/index.ts +14 -14
  183. package/src/_modules/ai/_modules/document-ai/_models/dai-embedding-info.interface.ts +12 -12
  184. package/src/_modules/ai/_modules/document-ai/_models/dai-vector-search-params.interface.ts +22 -22
  185. package/src/_modules/ai/_modules/document-ai/index.ts +4 -4
  186. package/src/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.ts +40 -40
  187. package/src/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.ts +6 -6
  188. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.ts +19 -19
  189. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.ts +11 -11
  190. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.ts +24 -24
  191. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.ts +20 -20
  192. package/src/_modules/ai/_modules/fdp-ai/index.ts +11 -11
  193. package/src/_modules/ai/_modules/google-ai/_collections/gai-models.const.ts +161 -161
  194. package/src/_modules/ai/_modules/google-ai/_enums/gai-model.enum.ts +16 -16
  195. package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.spec.ts +28 -28
  196. package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.ts +21 -21
  197. package/src/_modules/ai/_modules/google-ai/_models/gai-client-options.interface.ts +8 -8
  198. package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.spec.ts +22 -22
  199. package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.ts +25 -25
  200. package/src/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.ts +20 -20
  201. package/src/_modules/ai/_modules/google-ai/index.ts +14 -14
  202. package/src/_modules/ai/_modules/local-ai/_collections/lai-models.const.ts +59 -59
  203. package/src/_modules/ai/_modules/local-ai/_enums/lai-model.enum.ts +6 -6
  204. package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.spec.ts +28 -28
  205. package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.ts +18 -18
  206. package/src/_modules/ai/_modules/local-ai/_models/lai-client-options.interface.ts +9 -9
  207. package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.spec.ts +22 -22
  208. package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.ts +23 -23
  209. package/src/_modules/ai/_modules/local-ai/index.ts +14 -14
  210. package/src/_modules/ai/_modules/open-ai/_collections/oai-embedding-model-dimensions.const.ts +7 -7
  211. package/src/_modules/ai/_modules/open-ai/_collections/oai-models.const.ts +404 -404
  212. package/src/_modules/ai/_modules/open-ai/_enums/oai-model.enum.ts +179 -179
  213. package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.spec.ts +28 -28
  214. package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.ts +21 -21
  215. package/src/_modules/ai/_modules/open-ai/_models/oai-client-options.interface.ts +81 -81
  216. package/src/_modules/ai/_modules/open-ai/_models/oai-embedding-info.interface.ts +13 -13
  217. package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.spec.ts +22 -22
  218. package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.ts +25 -25
  219. package/src/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.ts +21 -21
  220. package/src/_modules/ai/_modules/open-ai/index.ts +28 -28
  221. package/src/_modules/ai/index.ts +27 -27
  222. package/src/_modules/ci-tools/_enums/cit-ci-result-code.enum.ts +11 -11
  223. package/src/_modules/ci-tools/_enums/cit-ci-step-result-code.enum.ts +9 -9
  224. package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.spec.ts +58 -58
  225. package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.ts +77 -77
  226. package/src/_modules/ci-tools/_models/cit-ci-step-result.interface.ts +12 -12
  227. package/src/_modules/ci-tools/index.ts +8 -8
  228. package/src/_modules/crypto/_collections/crypto.util.simple.spec.ts +512 -512
  229. package/src/_modules/crypto/index.ts +13 -13
  230. package/src/_modules/custom-data/_collections/cud-module-settings.const.ts +21 -21
  231. package/src/_modules/custom-data/_models/cud.data-model.spec.ts +38 -38
  232. package/src/_modules/custom-data/_models/cud.data-model.ts +39 -39
  233. package/src/_modules/custom-data/index.ts +10 -10
  234. package/src/_modules/data-handler/_models/data-handler-settings.control-model.spec.ts +110 -110
  235. package/src/_modules/data-handler/_models/data-handler-settings.control-model.ts +110 -110
  236. package/src/_modules/data-handler/_models/data-handler.control-model.spec.ts +473 -473
  237. package/src/_modules/data-handler/_models/data-handler.control-model.ts +486 -486
  238. package/src/_modules/data-handler/_models/data-list-handler.control-model.spec.ts +263 -263
  239. package/src/_modules/data-handler/_models/data-list-handler.control-model.ts +252 -252
  240. package/src/_modules/data-handler/_models/data-search-handler.control-model.spec.ts +417 -417
  241. package/src/_modules/data-handler/_models/data-search-handler.control-model.ts +390 -390
  242. package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.spec.ts +374 -374
  243. package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.ts +274 -274
  244. package/src/_modules/data-handler/index.ts +6 -6
  245. package/src/_modules/game/_collections/audio-mixer.util.spec.ts +198 -0
  246. package/src/_modules/game/_collections/audio-mixer.util.ts +143 -0
  247. package/src/_modules/game/_enums/audio-channel.enum.ts +18 -0
  248. package/src/_modules/game/_models/audio-mixer-settings.interface.ts +28 -0
  249. package/src/_modules/game/_models/seeded-random-state.interface.ts +21 -0
  250. package/src/_modules/game/_models/seeded-random.control-model.spec.ts +290 -0
  251. package/src/_modules/game/_models/seeded-random.control-model.ts +311 -0
  252. package/src/_modules/game/index.ts +10 -0
  253. package/src/_modules/location/_collections/assets/country-codes-ISO-3166.json +3239 -3239
  254. package/src/_modules/location/_collections/assets/country-divisions-ISO-3166-all-list.json +19035 -19035
  255. package/src/_modules/location/_collections/assets/country-divisions-ISO-3166.json +4993 -4993
  256. package/src/_modules/location/_collections/assets/country-phone-codes.json +1203 -1203
  257. package/src/_modules/location/_collections/assets/country-subdivisions/afghanistan.json +137 -137
  258. package/src/_modules/location/_collections/assets/country-subdivisions/albania.json +49 -49
  259. package/src/_modules/location/_collections/assets/country-subdivisions/algeria.json +193 -193
  260. package/src/_modules/location/_collections/assets/country-subdivisions/andorra.json +29 -29
  261. package/src/_modules/location/_collections/assets/country-subdivisions/angola.json +73 -73
  262. package/src/_modules/location/_collections/assets/country-subdivisions/antigua-and-barbuda.json +33 -33
  263. package/src/_modules/location/_collections/assets/country-subdivisions/argentina.json +97 -97
  264. package/src/_modules/location/_collections/assets/country-subdivisions/armenia.json +45 -45
  265. package/src/_modules/location/_collections/assets/country-subdivisions/australia.json +33 -33
  266. package/src/_modules/location/_collections/assets/country-subdivisions/austria.json +37 -37
  267. package/src/_modules/location/_collections/assets/country-subdivisions/azerbaijan.json +5 -5
  268. package/src/_modules/location/_collections/assets/country-subdivisions/bahamas.json +125 -125
  269. package/src/_modules/location/_collections/assets/country-subdivisions/bahrain.json +21 -21
  270. package/src/_modules/location/_collections/assets/country-subdivisions/bangladesh.json +29 -29
  271. package/src/_modules/location/_collections/assets/country-subdivisions/barbados.json +45 -45
  272. package/src/_modules/location/_collections/assets/country-subdivisions/belarus.json +29 -29
  273. package/src/_modules/location/_collections/assets/country-subdivisions/belgium.json +13 -13
  274. package/src/_modules/location/_collections/assets/country-subdivisions/belize.json +25 -25
  275. package/src/_modules/location/_collections/assets/country-subdivisions/benin.json +49 -49
  276. package/src/_modules/location/_collections/assets/country-subdivisions/bhutan.json +81 -81
  277. package/src/_modules/location/_collections/assets/country-subdivisions/bolivia.json +37 -37
  278. package/src/_modules/location/_collections/assets/country-subdivisions/bosnia-and-herzegovina.json +13 -13
  279. package/src/_modules/location/_collections/assets/country-subdivisions/botswana.json +65 -65
  280. package/src/_modules/location/_collections/assets/country-subdivisions/brazil.json +109 -109
  281. package/src/_modules/location/_collections/assets/country-subdivisions/brunei-darussalam.json +17 -17
  282. package/src/_modules/location/_collections/assets/country-subdivisions/bulgaria.json +113 -113
  283. package/src/_modules/location/_collections/assets/country-subdivisions/burkina-faso.json +53 -53
  284. package/src/_modules/location/_collections/assets/country-subdivisions/burundi.json +69 -69
  285. package/src/_modules/location/_collections/assets/country-subdivisions/cambodia.json +97 -97
  286. package/src/_modules/location/_collections/assets/country-subdivisions/cameroon.json +41 -41
  287. package/src/_modules/location/_collections/assets/country-subdivisions/canada.json +79 -79
  288. package/src/_modules/location/_collections/assets/country-subdivisions/cape-verde.json +9 -9
  289. package/src/_modules/location/_collections/assets/country-subdivisions/central-african-republic.json +69 -69
  290. package/src/_modules/location/_collections/assets/country-subdivisions/chad.json +89 -89
  291. package/src/_modules/location/_collections/assets/country-subdivisions/chile.json +61 -61
  292. package/src/_modules/location/_collections/assets/country-subdivisions/china.json +205 -205
  293. package/src/_modules/location/_collections/assets/country-subdivisions/colombia.json +133 -133
  294. package/src/_modules/location/_collections/assets/country-subdivisions/comoros.json +13 -13
  295. package/src/_modules/location/_collections/assets/country-subdivisions/congo-the-democratic-republic-of-the.json +45 -45
  296. package/src/_modules/location/_collections/assets/country-subdivisions/congo.json +49 -49
  297. package/src/_modules/location/_collections/assets/country-subdivisions/costa-rica.json +29 -29
  298. package/src/_modules/location/_collections/assets/country-subdivisions/cote-d-ivoire-republic-of.json +77 -77
  299. package/src/_modules/location/_collections/assets/country-subdivisions/croatia.json +85 -85
  300. package/src/_modules/location/_collections/assets/country-subdivisions/cuba.json +65 -65
  301. package/src/_modules/location/_collections/assets/country-subdivisions/cyprus.json +25 -25
  302. package/src/_modules/location/_collections/assets/country-subdivisions/czech-republic.json +57 -57
  303. package/src/_modules/location/_collections/assets/country-subdivisions/denmark.json +21 -21
  304. package/src/_modules/location/_collections/assets/country-subdivisions/djibouti.json +25 -25
  305. package/src/_modules/location/_collections/assets/country-subdivisions/dominica.json +41 -41
  306. package/src/_modules/location/_collections/assets/country-subdivisions/dominican-republic.json +41 -41
  307. package/src/_modules/location/_collections/assets/country-subdivisions/ecuador.json +97 -97
  308. package/src/_modules/location/_collections/assets/country-subdivisions/egypt.json +117 -117
  309. package/src/_modules/location/_collections/assets/country-subdivisions/el-salvador.json +57 -57
  310. package/src/_modules/location/_collections/assets/country-subdivisions/equatorial-guinea.json +9 -9
  311. package/src/_modules/location/_collections/assets/country-subdivisions/eritrea.json +25 -25
  312. package/src/_modules/location/_collections/assets/country-subdivisions/estonia.json +61 -61
  313. package/src/_modules/location/_collections/assets/country-subdivisions/ethiopia.json +45 -45
  314. package/src/_modules/location/_collections/assets/country-subdivisions/fiji.json +21 -21
  315. package/src/_modules/location/_collections/assets/country-subdivisions/finland.json +77 -77
  316. package/src/_modules/location/_collections/assets/country-subdivisions/france.json +133 -133
  317. package/src/_modules/location/_collections/assets/country-subdivisions/gabon.json +37 -37
  318. package/src/_modules/location/_collections/assets/country-subdivisions/gambia.json +25 -25
  319. package/src/_modules/location/_collections/assets/country-subdivisions/georgia.json +49 -49
  320. package/src/_modules/location/_collections/assets/country-subdivisions/germany.json +65 -65
  321. package/src/_modules/location/_collections/assets/country-subdivisions/ghana.json +41 -41
  322. package/src/_modules/location/_collections/assets/country-subdivisions/greece.json +53 -53
  323. package/src/_modules/location/_collections/assets/country-subdivisions/greenland.json +17 -17
  324. package/src/_modules/location/_collections/assets/country-subdivisions/grenada.json +29 -29
  325. package/src/_modules/location/_collections/assets/country-subdivisions/guatemala.json +89 -89
  326. package/src/_modules/location/_collections/assets/country-subdivisions/guinea-bissau.json +13 -13
  327. package/src/_modules/location/_collections/assets/country-subdivisions/guinea.json +33 -33
  328. package/src/_modules/location/_collections/assets/country-subdivisions/guyana.json +41 -41
  329. package/src/_modules/location/_collections/assets/country-subdivisions/haiti.json +41 -41
  330. package/src/_modules/location/_collections/assets/country-subdivisions/honduras.json +73 -73
  331. package/src/_modules/location/_collections/assets/country-subdivisions/hong-kong.json +4 -4
  332. package/src/_modules/location/_collections/assets/country-subdivisions/hungary.json +173 -173
  333. package/src/_modules/location/_collections/assets/country-subdivisions/iceland.json +37 -37
  334. package/src/_modules/location/_collections/assets/country-subdivisions/india.json +181 -181
  335. package/src/_modules/location/_collections/assets/country-subdivisions/indonesia.json +29 -29
  336. package/src/_modules/location/_collections/assets/country-subdivisions/iran-islamic-republic-of.json +125 -125
  337. package/src/_modules/location/_collections/assets/country-subdivisions/iraq.json +73 -73
  338. package/src/_modules/location/_collections/assets/country-subdivisions/ireland.json +17 -17
  339. package/src/_modules/location/_collections/assets/country-subdivisions/israel.json +25 -25
  340. package/src/_modules/location/_collections/assets/country-subdivisions/italy.json +81 -81
  341. package/src/_modules/location/_collections/assets/country-subdivisions/jamaica.json +57 -57
  342. package/src/_modules/location/_collections/assets/country-subdivisions/japan.json +189 -189
  343. package/src/_modules/location/_collections/assets/country-subdivisions/jordan.json +49 -49
  344. package/src/_modules/location/_collections/assets/country-subdivisions/kazakhstan.json +65 -65
  345. package/src/_modules/location/_collections/assets/country-subdivisions/kenya.json +33 -33
  346. package/src/_modules/location/_collections/assets/country-subdivisions/kiribati.json +13 -13
  347. package/src/_modules/location/_collections/assets/country-subdivisions/korea-democratic-people-s-republic-of.json +45 -45
  348. package/src/_modules/location/_collections/assets/country-subdivisions/korea-republic-of.json +69 -69
  349. package/src/_modules/location/_collections/assets/country-subdivisions/kuwait.json +25 -25
  350. package/src/_modules/location/_collections/assets/country-subdivisions/kyrgyzstan.json +33 -33
  351. package/src/_modules/location/_collections/assets/country-subdivisions/lao-people-s-democratic-republic.json +73 -73
  352. package/src/_modules/location/_collections/assets/country-subdivisions/latvia.json +477 -477
  353. package/src/_modules/location/_collections/assets/country-subdivisions/lebanon.json +33 -33
  354. package/src/_modules/location/_collections/assets/country-subdivisions/lesotho.json +41 -41
  355. package/src/_modules/location/_collections/assets/country-subdivisions/liberia.json +61 -61
  356. package/src/_modules/location/_collections/assets/country-subdivisions/libyan-arab-jamahiriya.json +89 -89
  357. package/src/_modules/location/_collections/assets/country-subdivisions/liechtenstein.json +45 -45
  358. package/src/_modules/location/_collections/assets/country-subdivisions/lithuania.json +41 -41
  359. package/src/_modules/location/_collections/assets/country-subdivisions/luxembourg.json +13 -13
  360. package/src/_modules/location/_collections/assets/country-subdivisions/macedonia-the-former-yugoslav-republic-of.json +337 -337
  361. package/src/_modules/location/_collections/assets/country-subdivisions/madagascar.json +25 -25
  362. package/src/_modules/location/_collections/assets/country-subdivisions/malawi.json +13 -13
  363. package/src/_modules/location/_collections/assets/country-subdivisions/malaysia.json +81 -81
  364. package/src/_modules/location/_collections/assets/country-subdivisions/maldives.json +33 -33
  365. package/src/_modules/location/_collections/assets/country-subdivisions/mali.json +37 -37
  366. package/src/_modules/location/_collections/assets/country-subdivisions/malta.json +273 -273
  367. package/src/_modules/location/_collections/assets/country-subdivisions/marshall-islands.json +9 -9
  368. package/src/_modules/location/_collections/assets/country-subdivisions/mauritania.json +53 -53
  369. package/src/_modules/location/_collections/assets/country-subdivisions/mauritius.json +69 -69
  370. package/src/_modules/location/_collections/assets/country-subdivisions/mexico.json +161 -161
  371. package/src/_modules/location/_collections/assets/country-subdivisions/micronesia-federated-states-of.json +17 -17
  372. package/src/_modules/location/_collections/assets/country-subdivisions/moldova-republic-of.json +149 -149
  373. package/src/_modules/location/_collections/assets/country-subdivisions/monaco.json +69 -69
  374. package/src/_modules/location/_collections/assets/country-subdivisions/mongolia.json +89 -89
  375. package/src/_modules/location/_collections/assets/country-subdivisions/montenegro.json +93 -93
  376. package/src/_modules/location/_collections/assets/country-subdivisions/morocco.json +65 -65
  377. package/src/_modules/location/_collections/assets/country-subdivisions/mozambique.json +45 -45
  378. package/src/_modules/location/_collections/assets/country-subdivisions/myanmar.json +57 -57
  379. package/src/_modules/location/_collections/assets/country-subdivisions/namibia.json +57 -57
  380. package/src/_modules/location/_collections/assets/country-subdivisions/nauru.json +57 -57
  381. package/src/_modules/location/_collections/assets/country-subdivisions/nepal.json +21 -21
  382. package/src/_modules/location/_collections/assets/country-subdivisions/netherlands.json +91 -91
  383. package/src/_modules/location/_collections/assets/country-subdivisions/new-zealand.json +111 -111
  384. package/src/_modules/location/_collections/assets/country-subdivisions/nicaragua.json +69 -69
  385. package/src/_modules/location/_collections/assets/country-subdivisions/niger.json +33 -33
  386. package/src/_modules/location/_collections/assets/country-subdivisions/nigeria.json +149 -149
  387. package/src/_modules/location/_collections/assets/country-subdivisions/norway.json +85 -85
  388. package/src/_modules/location/_collections/assets/country-subdivisions/oman.json +37 -37
  389. package/src/_modules/location/_collections/assets/country-subdivisions/pakistan.json +33 -33
  390. package/src/_modules/location/_collections/assets/country-subdivisions/palau.json +65 -65
  391. package/src/_modules/location/_collections/assets/country-subdivisions/palestinian-territory-occupied.json +65 -65
  392. package/src/_modules/location/_collections/assets/country-subdivisions/panama.json +53 -53
  393. package/src/_modules/location/_collections/assets/country-subdivisions/papua-new-guinea.json +81 -81
  394. package/src/_modules/location/_collections/assets/country-subdivisions/paraguay.json +73 -73
  395. package/src/_modules/location/_collections/assets/country-subdivisions/peru.json +105 -105
  396. package/src/_modules/location/_collections/assets/country-subdivisions/philippines.json +69 -69
  397. package/src/_modules/location/_collections/assets/country-subdivisions/poland.json +65 -65
  398. package/src/_modules/location/_collections/assets/country-subdivisions/portugal.json +81 -81
  399. package/src/_modules/location/_collections/assets/country-subdivisions/qatar.json +29 -29
  400. package/src/_modules/location/_collections/assets/country-subdivisions/romania.json +169 -169
  401. package/src/_modules/location/_collections/assets/country-subdivisions/russian-federation.json +499 -499
  402. package/src/_modules/location/_collections/assets/country-subdivisions/rwanda.json +21 -21
  403. package/src/_modules/location/_collections/assets/country-subdivisions/saint-helena-ascension-and-tristan-da-cunha.json +13 -13
  404. package/src/_modules/location/_collections/assets/country-subdivisions/saint-kitts-and-nevis.json +9 -9
  405. package/src/_modules/location/_collections/assets/country-subdivisions/saint-lucia.json +45 -45
  406. package/src/_modules/location/_collections/assets/country-subdivisions/saint-vincent-and-the-grenadines.json +25 -25
  407. package/src/_modules/location/_collections/assets/country-subdivisions/samoa.json +45 -45
  408. package/src/_modules/location/_collections/assets/country-subdivisions/san-marino.json +37 -37
  409. package/src/_modules/location/_collections/assets/country-subdivisions/sao-tome-and-principe.json +9 -9
  410. package/src/_modules/location/_collections/assets/country-subdivisions/saudi-arabia.json +53 -53
  411. package/src/_modules/location/_collections/assets/country-subdivisions/senegal.json +57 -57
  412. package/src/_modules/location/_collections/assets/country-subdivisions/serbia.json +9 -9
  413. package/src/_modules/location/_collections/assets/country-subdivisions/seychelles.json +101 -101
  414. package/src/_modules/location/_collections/assets/country-subdivisions/sierra-leone.json +17 -17
  415. package/src/_modules/location/_collections/assets/country-subdivisions/singapore.json +21 -21
  416. package/src/_modules/location/_collections/assets/country-subdivisions/slovakia.json +33 -33
  417. package/src/_modules/location/_collections/assets/country-subdivisions/slovenia.json +841 -841
  418. package/src/_modules/location/_collections/assets/country-subdivisions/solomon-islands.json +41 -41
  419. package/src/_modules/location/_collections/assets/country-subdivisions/somalia.json +73 -73
  420. package/src/_modules/location/_collections/assets/country-subdivisions/south-africa.json +37 -37
  421. package/src/_modules/location/_collections/assets/country-subdivisions/south-sudan.json +41 -41
  422. package/src/_modules/location/_collections/assets/country-subdivisions/spain.json +346 -346
  423. package/src/_modules/location/_collections/assets/country-subdivisions/sri-lanka.json +37 -37
  424. package/src/_modules/location/_collections/assets/country-subdivisions/sudan.json +69 -69
  425. package/src/_modules/location/_collections/assets/country-subdivisions/suriname.json +41 -41
  426. package/src/_modules/location/_collections/assets/country-subdivisions/swaziland.json +17 -17
  427. package/src/_modules/location/_collections/assets/country-subdivisions/sweden.json +85 -85
  428. package/src/_modules/location/_collections/assets/country-subdivisions/switzerland.json +105 -105
  429. package/src/_modules/location/_collections/assets/country-subdivisions/syrian-arab-republic.json +57 -57
  430. package/src/_modules/location/_collections/assets/country-subdivisions/taiwan-province-of-china.json +93 -93
  431. package/src/_modules/location/_collections/assets/country-subdivisions/tajikistan.json +17 -17
  432. package/src/_modules/location/_collections/assets/country-subdivisions/tanzania-united-republic-of.json +105 -105
  433. package/src/_modules/location/_collections/assets/country-subdivisions/thailand.json +313 -313
  434. package/src/_modules/location/_collections/assets/country-subdivisions/timor-leste.json +53 -53
  435. package/src/_modules/location/_collections/assets/country-subdivisions/togo.json +21 -21
  436. package/src/_modules/location/_collections/assets/country-subdivisions/tonga.json +21 -21
  437. package/src/_modules/location/_collections/assets/country-subdivisions/trinidad-and-tobago.json +65 -65
  438. package/src/_modules/location/_collections/assets/country-subdivisions/tunisia.json +97 -97
  439. package/src/_modules/location/_collections/assets/country-subdivisions/turkey.json +325 -325
  440. package/src/_modules/location/_collections/assets/country-subdivisions/turkmenistan.json +25 -25
  441. package/src/_modules/location/_collections/assets/country-subdivisions/tuvalu.json +33 -33
  442. package/src/_modules/location/_collections/assets/country-subdivisions/uganda.json +17 -17
  443. package/src/_modules/location/_collections/assets/country-subdivisions/ukraine.json +109 -109
  444. package/src/_modules/location/_collections/assets/country-subdivisions/united-arab-emirates.json +29 -29
  445. package/src/_modules/location/_collections/assets/country-subdivisions/united-kingdom.json +1196 -1196
  446. package/src/_modules/location/_collections/assets/country-subdivisions/united-states-minor-outlying-islands.json +37 -37
  447. package/src/_modules/location/_collections/assets/country-subdivisions/united-states.json +286 -286
  448. package/src/_modules/location/_collections/assets/country-subdivisions/uruguay.json +77 -77
  449. package/src/_modules/location/_collections/assets/country-subdivisions/uzbekistan.json +57 -57
  450. package/src/_modules/location/_collections/assets/country-subdivisions/vanuatu.json +25 -25
  451. package/src/_modules/location/_collections/assets/country-subdivisions/venezuela.json +101 -101
  452. package/src/_modules/location/_collections/assets/country-subdivisions/viet-nam.json +257 -257
  453. package/src/_modules/location/_collections/assets/country-subdivisions/yemen.json +85 -85
  454. package/src/_modules/location/_collections/assets/country-subdivisions/zambia.json +37 -37
  455. package/src/_modules/location/_collections/assets/country-subdivisions/zimbabwe.json +41 -41
  456. package/src/_modules/location/_collections/loc-country-divisions.const.ts +10 -10
  457. package/src/_modules/location/_collections/loc-country-isos.const.ts +8 -8
  458. package/src/_modules/location/_collections/loc-regions.util.spec.ts +61 -61
  459. package/src/_modules/location/_collections/loc-regions.util.ts +137 -137
  460. package/src/_modules/location/_collections/loc.util.spec.ts +52 -52
  461. package/src/_modules/location/_collections/loc.util.ts +74 -74
  462. package/src/_modules/location/_enums/loc-region.enum.ts +14 -14
  463. package/src/_modules/location/_enums/loc-sub-region.enum.ts +31 -31
  464. package/src/_modules/location/_enums/loc-subdivision-region-type.enum.ts +47 -47
  465. package/src/_modules/location/_models/loc-coordinates.interface.ts +7 -7
  466. package/src/_modules/location/_models/loc-country-division.interface.ts +8 -8
  467. package/src/_modules/location/_models/loc-country-iso.interface.ts +23 -23
  468. package/src/_modules/location/_models/loc-country-phone-code.interface.ts +9 -9
  469. package/src/_modules/location/_models/loc-division-collection.interface.ts +12 -12
  470. package/src/_modules/location/_models/loc-division-region-data.interface.ts +9 -9
  471. package/src/_modules/location/_models/loc-geo-ip-location.interface.ts +27 -27
  472. package/src/_modules/location/index.ts +22 -22
  473. package/src/_modules/messaging/README.md +279 -279
  474. package/src/_modules/messaging/_collections/msg-module-settings.const.ts +46 -46
  475. package/src/_modules/messaging/_enums/msg-attachment-type.enum.ts +26 -26
  476. package/src/_modules/messaging/_enums/msg-delivery-status.enum.ts +17 -17
  477. package/src/_modules/messaging/_enums/msg-event-key.enum.ts +31 -31
  478. package/src/_modules/messaging/_enums/msg-participant-role.enum.ts +20 -20
  479. package/src/_modules/messaging/_enums/msg-provider-type.enum.ts +7 -7
  480. package/src/_modules/messaging/_enums/msg-type.enum.ts +23 -23
  481. package/src/_modules/messaging/_models/msg-attachment.interface.ts +46 -46
  482. package/src/_modules/messaging/_models/msg-conversation.data-model.spec.ts +69 -69
  483. package/src/_modules/messaging/_models/msg-conversation.data-model.ts +96 -96
  484. package/src/_modules/messaging/_models/msg-mention.interface.ts +29 -29
  485. package/src/_modules/messaging/_models/msg-message.data-model.spec.ts +79 -79
  486. package/src/_modules/messaging/_models/msg-message.data-model.ts +127 -127
  487. package/src/_modules/messaging/_models/msg-participant.interface.ts +46 -46
  488. package/src/_modules/messaging/_models/msg-reaction.interface.ts +20 -20
  489. package/src/_modules/messaging/_models/msg-thread-info.interface.ts +35 -35
  490. package/src/_modules/messaging/_modules/agent/_enums/agt-process-step-type.enum.ts +35 -35
  491. package/src/_modules/messaging/_modules/agent/_enums/agt-tool-status.enum.ts +23 -23
  492. package/src/_modules/messaging/_modules/agent/_models/agt-process-step.interface.ts +55 -55
  493. package/src/_modules/messaging/_modules/agent/_models/agt-reasoning-info.interface.ts +26 -26
  494. package/src/_modules/messaging/_modules/agent/_models/agt-tool-usage.interface.ts +37 -37
  495. package/src/_modules/messaging/_modules/agent/index.ts +8 -8
  496. package/src/_modules/messaging/index.ts +28 -28
  497. package/src/_modules/pipe/_collections/pip-transforms.const.ts +42 -42
  498. package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.spec.ts +47 -47
  499. package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.ts +41 -41
  500. package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.spec.ts +39 -39
  501. package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.ts +30 -30
  502. package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.spec.ts +41 -41
  503. package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.ts +36 -36
  504. package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.spec.ts +62 -62
  505. package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.ts +17 -17
  506. package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.spec.ts +34 -34
  507. package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.ts +25 -25
  508. package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.spec.ts +67 -67
  509. package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.ts +226 -226
  510. package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.spec.ts +28 -28
  511. package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.ts +21 -21
  512. package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.spec.ts +59 -59
  513. package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.ts +106 -106
  514. package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.spec.ts +31 -31
  515. package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.ts +35 -35
  516. package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.spec.ts +44 -44
  517. package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.ts +23 -23
  518. package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.spec.ts +21 -21
  519. package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.ts +33 -33
  520. package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.spec.ts +62 -62
  521. package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.ts +80 -80
  522. package/src/_modules/pipe/_enums/pip-range-pipe-setting.enum.ts +15 -15
  523. package/src/_modules/pipe/_enums/pip.enum.ts +65 -65
  524. package/src/_modules/pipe/_models/pip-multi-pipe-settings.type.ts +8 -8
  525. package/src/_modules/pipe/_models/pip-transforms.interface.ts +30 -30
  526. package/src/_modules/pipe/index.ts +30 -30
  527. package/src/_modules/socket/_enums/sck-event-key.enum.ts +21 -21
  528. package/src/_modules/socket/_models/sck-client-params.control-model.spec.ts +67 -67
  529. package/src/_modules/socket/_models/sck-client-params.control-model.ts +50 -50
  530. package/src/_modules/socket/_models/sck-socket-event.control-model.spec.ts +66 -66
  531. package/src/_modules/socket/_models/sck-socket-event.control-model.ts +172 -172
  532. package/src/_modules/socket/_services/sck-client.service-base.spec.ts +99 -99
  533. package/src/_modules/socket/_services/sck-client.service-base.ts +353 -353
  534. package/src/_modules/socket/index.ts +14 -14
  535. package/src/_modules/test/_collections/tst-module-settings.const.ts +67 -67
  536. package/src/_modules/test/index.ts +5 -5
  537. package/src/_modules/usage/_collections/usg-module-settings.const.ts +33 -33
  538. package/src/_modules/usage/_models/usg-action.control-model.spec.ts +27 -27
  539. package/src/_modules/usage/_models/usg-action.control-model.ts +28 -28
  540. package/src/_modules/usage/_models/usg-daily-usage-data.control-model.spec.ts +36 -36
  541. package/src/_modules/usage/_models/usg-daily-usage-data.control-model.ts +35 -35
  542. package/src/_modules/usage/_models/usg-data.control-model.spec.ts +41 -41
  543. package/src/_modules/usage/_models/usg-data.control-model.ts +35 -35
  544. package/src/_modules/usage/_models/usg-session.data-model.spec.ts +97 -97
  545. package/src/_modules/usage/_models/usg-session.data-model.ts +72 -72
  546. package/src/_modules/usage/index.ts +11 -11
  547. package/src/index.ts +104 -104
  548. package/tsconfig.app.json +12 -12
  549. package/tsconfig.json +31 -31
  550. package/tsconfig.test.json +16 -16
  551. package/tslint.json +153 -153
@@ -1,274 +1,274 @@
1
- import { BehaviorSubject, Observable } from 'rxjs';
2
-
3
- import { DyFM_ListCollectorDataHandler_Settings } from './data-handler-settings.control-model';
4
-
5
- import { DyFM_DataHandler } from './data-handler.control-model';
6
- import { DyFM_Error } from '../../../_models/control-models/error.control-model';
7
- import { DyFM_Metadata } from '../../../_models/data-models/metadata.data-model';
8
-
9
- /**
10
- * A specialized data handler for managing list collections within a parent data object.
11
- * Extends DyFM_DataHandler to provide functionality for handling lists within a collector object.
12
- *
13
- * @template T_ListCollectorData - The type of the parent collector data object
14
- * @template T_DataItem - The type of individual items in the list (must extend DyFM_Metadata)
15
- * @template T_DependencyData - The type of dependency data (defaults to any)
16
- * @template T_DataLoadBy - The type used to identify how data should be loaded (defaults to string)
17
- *
18
- * @example
19
- * ```typescript
20
- * // Create a list collector handler for user's projects
21
- * const userProjectsHandler = new DyFM_ListCollectorDataHandler<User, Project>({
22
- * listKey: 'projects',
23
- * get: async (userId: string): Promise<User> => {
24
- * return await userService.getUserWithProjects(userId);
25
- * }
26
- * });
27
- *
28
- * // Access the data list
29
- * const projects = userProjectsHandler.dataList;
30
- *
31
- * // Add a new project
32
- * userProjectsHandler.addItem(newProject);
33
- *
34
- * // Update an existing project
35
- * userProjectsHandler.updateItem(updatedProject);
36
- *
37
- * // Subscribe to changes
38
- * userProjectsHandler.dataList$.subscribe(projects => {
39
- * console.log('Projects updated:', projects);
40
- * });
41
- * ```
42
- */
43
- export class DyFM_ListCollectorDataHandler<
44
- T_ListCollectorData extends DyFM_Metadata,
45
- T_DataItem extends DyFM_Metadata,
46
- T_DependencyData extends DyFM_Metadata = any,
47
- T_DataLoadBy = string,
48
- > extends DyFM_DataHandler<T_ListCollectorData, T_DependencyData, T_DataLoadBy> {
49
-
50
- /** this is only for data list handlers,
51
- * while creating arrow function for this, dont forget to use async n await! */
52
- protected readonly setItem?: (item: T_DataItem, collectorId?: string) => Promise<T_DataItem>;
53
- /** this is only for data list handlers,
54
- * while creating arrow function for this, dont forget to use async n await! */
55
- protected readonly deleteItem?: (id: string, collectorId?: string) => Promise<void>;
56
-
57
- protected readonly listKey: string;
58
-
59
- /**
60
- * BehaviorSubject that holds the current data list.
61
- * Computed from the base data_BS BehaviorSubject, ensuring it always returns an array.
62
- */
63
- protected readonly dataList_BS: BehaviorSubject<T_DataItem[]>;
64
-
65
- /**
66
- * Observable that holds the current data list.
67
- * Computed from the base data$ Observable, ensuring it always returns an array.
68
- */
69
- readonly dataList$: Observable<T_DataItem[]>;
70
-
71
- /**
72
- * BehaviorSubject that holds the currently active item.
73
- */
74
- readonly activeItem_BS: BehaviorSubject<T_DataItem>;
75
-
76
- /**
77
- * Observable that holds the currently active item.
78
- */
79
- readonly activeItem$: Observable<T_DataItem>;
80
-
81
- /**
82
- * Gets the current data value.
83
- * @returns The current data value
84
- */
85
- override get data(): T_ListCollectorData {
86
- return this.data_BS.value;
87
- }
88
-
89
- /**
90
- * Gets the current data list.
91
- * Alias for data getter.
92
- * @returns The current array of data items
93
- */
94
- get dataList(): T_DataItem[] {
95
- return this.dataList_BS.value;
96
- }
97
-
98
- /**
99
- * Creates a new instance of DyFM_ListCollectorDataHandler.
100
- *
101
- * @param set - Configuration settings for the data handler
102
- * @param skipDependencyConnections - Optional flag to skip dependency connections during construction
103
- */
104
- constructor(
105
- set: DyFM_ListCollectorDataHandler_Settings<T_ListCollectorData, T_DataItem, T_DependencyData, T_DataLoadBy>,
106
- /** is in construct?
107
- * so the dependent data handlers are not added here, but in the extended class */
108
- skipDependencyConnections?: boolean,
109
- ) {
110
- super(set, skipDependencyConnections);
111
-
112
- this.listKey = set.listKey;
113
-
114
- // Initialize dataList BehaviorSubject and Observable
115
- this.dataList_BS = new BehaviorSubject<T_DataItem[]>([]);
116
- this.dataList$ = this.dataList_BS.asObservable();
117
-
118
- // Initialize activeItem BehaviorSubject and Observable
119
- this.activeItem_BS = new BehaviorSubject<T_DataItem>(null);
120
- this.activeItem$ = this.activeItem_BS.asObservable();
121
-
122
- // Subscribe to data changes to update dataList
123
- this.data$.subscribe(data => {
124
- const dataList = Array.isArray(data?.[this.listKey]) ? data[this.listKey] : [];
125
- this.dataList_BS.next(dataList);
126
- });
127
-
128
- if (set.setItem) {
129
- this.setItem = set.setItem;
130
- }
131
-
132
- if (set.deleteItem) {
133
- this.deleteItem = set.deleteItem;
134
- }
135
-
136
- this.getPostProcesses.push((data: T_DataItem[]) => {
137
- // check if data is an array
138
- if (!Array.isArray(data) ) {
139
- console.error(
140
- `DYNAMO DynamoDataHandler (${this.name}) ERROR: ` +
141
- `\nData is not an array!:` +
142
- '\n\n', data
143
- );
144
- throw new Error(`Data is not an array! (${this.name})`);
145
- }
146
-
147
- return data;
148
- });
149
-
150
- if (!skipDependencyConnections) {
151
- if (set.dependencyDataHandler) {
152
- this.addDependencyDataHandler(set.dependencyDataHandler);
153
- }
154
-
155
- if (set.dependentDataHandlers) {
156
- this.addDependentDataHandlers(set.dependentDataHandlers, true);
157
- }
158
- }
159
- }
160
-
161
- override clear(dontClearDependents?: boolean): void {
162
- super.clear(dontClearDependents);
163
- this.activeItem_BS.next(null);
164
- }
165
-
166
- /**
167
- * Adds a new item to the data list.
168
- *
169
- * @param item - The item to add to the list
170
- * @param collectorId - Optional collector ID for tracking
171
- * @param dontSendUpdate - Optional flag to prevent sending update notification
172
- */
173
- async addItem(item: T_DataItem, collectorId?: string, dontSendUpdate?: boolean): Promise<void> {
174
- if (!this.data) {
175
- throw new DyFM_Error({
176
- error: new Error(`Data not found! (${this.name})`),
177
- errorCode: 'DyFM-LCDH-AI1',
178
- additionalContent: {
179
- listKey: this.listKey,
180
- },
181
- });
182
- }
183
- this.data[this.listKey] ??= [];
184
- this.data[this.listKey].push(item);
185
- if (this.setItem && !dontSendUpdate) {
186
- await this.setItem(item, collectorId);
187
- // dont send update because we already sent it to the setItem function
188
- await this.updateData(this.data_BS.value, true);
189
- } else {
190
- await this.updateData(this.data_BS.value, dontSendUpdate);
191
- }
192
- this.activeItem_BS.next(item);
193
- }
194
-
195
- /**
196
- * Removes an item from the data list.
197
- * The item is identified by its _id property.
198
- *
199
- * @param id - The id of the item to remove from the list
200
- * @param collectorId - Optional collector ID for tracking
201
- * @param dontSendUpdate - Optional flag to prevent sending update notification
202
- */
203
- async removeItem(id: string, collectorId?: string, dontSendUpdate?: boolean): Promise<void> {
204
- if (!this.data?.[this.listKey]?.length) {
205
- throw new DyFM_Error({
206
- error: new Error(`List not found! (${this.name})`),
207
- errorCode: 'DyFM-LCDH-RI1',
208
- additionalContent: {
209
- listKey: this.listKey,
210
- },
211
- });
212
- }
213
- const index = this.data[this.listKey].findIndex(i => i._id === id);
214
- if (index !== -1) {
215
- this.data[this.listKey].splice(index, 1);
216
- if (this.deleteItem) {
217
- await this.deleteItem(id, collectorId);
218
- await this.updateData(this.data_BS.value, true);
219
- } else {
220
- await this.updateData(this.data_BS.value, dontSendUpdate);
221
- }
222
- }
223
- if (this.activeItem_BS.value?._id === id) {
224
- this.activeItem_BS.next(null);
225
- }
226
- }
227
-
228
- /**
229
- * Updates an existing item in the data list.
230
- * The item is identified by its _id property.
231
- *
232
- * @param item - The updated item
233
- * @param collectorId - Optional collector ID for tracking
234
- * @param dontSendUpdate - Optional flag to prevent sending update notification
235
- * @throws Error if the item is not found in the list
236
- */
237
- async updateItem(item: T_DataItem, collectorId?: string, dontSendUpdate?: boolean): Promise<void> {
238
- if (!this.data?.[this.listKey]?.length) {
239
- throw new DyFM_Error({
240
- error: new Error(`List not found! (${this.name})`),
241
- errorCode: 'DyFM-LCDH-UI0',
242
- additionalContent: {
243
- listKey: this.listKey,
244
- },
245
- });
246
- }
247
- // check if item is in the list
248
- const index = this.data[this.listKey].findIndex(i => i._id === item._id);
249
- if (index !== -1) {
250
- // update the item
251
- this.data[this.listKey][index] = item;
252
- if (this.setItem) {
253
- // send update to API
254
- await this.setItem(item, collectorId);
255
- await this.updateData(this.data_BS.value, true);
256
- } else {
257
- // send update to API
258
- await this.updateData(this.data_BS.value, dontSendUpdate);
259
- }
260
- } else {
261
- throw new DyFM_Error({
262
- error: new Error(`Item not found! (${this.name})`),
263
- errorCode: 'DyFM-LCDH-UI1',
264
- additionalContent: {
265
- item: item,
266
- },
267
- });
268
- }
269
- }
270
-
271
- setActiveItem(item: T_DataItem): void {
272
- this.activeItem_BS.next(item);
273
- }
274
- }
1
+ import { BehaviorSubject, Observable } from 'rxjs';
2
+
3
+ import { DyFM_ListCollectorDataHandler_Settings } from './data-handler-settings.control-model';
4
+
5
+ import { DyFM_DataHandler } from './data-handler.control-model';
6
+ import { DyFM_Error } from '../../../_models/control-models/error.control-model';
7
+ import { DyFM_Metadata } from '../../../_models/data-models/metadata.data-model';
8
+
9
+ /**
10
+ * A specialized data handler for managing list collections within a parent data object.
11
+ * Extends DyFM_DataHandler to provide functionality for handling lists within a collector object.
12
+ *
13
+ * @template T_ListCollectorData - The type of the parent collector data object
14
+ * @template T_DataItem - The type of individual items in the list (must extend DyFM_Metadata)
15
+ * @template T_DependencyData - The type of dependency data (defaults to any)
16
+ * @template T_DataLoadBy - The type used to identify how data should be loaded (defaults to string)
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * // Create a list collector handler for user's projects
21
+ * const userProjectsHandler = new DyFM_ListCollectorDataHandler<User, Project>({
22
+ * listKey: 'projects',
23
+ * get: async (userId: string): Promise<User> => {
24
+ * return await userService.getUserWithProjects(userId);
25
+ * }
26
+ * });
27
+ *
28
+ * // Access the data list
29
+ * const projects = userProjectsHandler.dataList;
30
+ *
31
+ * // Add a new project
32
+ * userProjectsHandler.addItem(newProject);
33
+ *
34
+ * // Update an existing project
35
+ * userProjectsHandler.updateItem(updatedProject);
36
+ *
37
+ * // Subscribe to changes
38
+ * userProjectsHandler.dataList$.subscribe(projects => {
39
+ * console.log('Projects updated:', projects);
40
+ * });
41
+ * ```
42
+ */
43
+ export class DyFM_ListCollectorDataHandler<
44
+ T_ListCollectorData extends DyFM_Metadata,
45
+ T_DataItem extends DyFM_Metadata,
46
+ T_DependencyData extends DyFM_Metadata = any,
47
+ T_DataLoadBy = string,
48
+ > extends DyFM_DataHandler<T_ListCollectorData, T_DependencyData, T_DataLoadBy> {
49
+
50
+ /** this is only for data list handlers,
51
+ * while creating arrow function for this, dont forget to use async n await! */
52
+ protected readonly setItem?: (item: T_DataItem, collectorId?: string) => Promise<T_DataItem>;
53
+ /** this is only for data list handlers,
54
+ * while creating arrow function for this, dont forget to use async n await! */
55
+ protected readonly deleteItem?: (id: string, collectorId?: string) => Promise<void>;
56
+
57
+ protected readonly listKey: string;
58
+
59
+ /**
60
+ * BehaviorSubject that holds the current data list.
61
+ * Computed from the base data_BS BehaviorSubject, ensuring it always returns an array.
62
+ */
63
+ protected readonly dataList_BS: BehaviorSubject<T_DataItem[]>;
64
+
65
+ /**
66
+ * Observable that holds the current data list.
67
+ * Computed from the base data$ Observable, ensuring it always returns an array.
68
+ */
69
+ readonly dataList$: Observable<T_DataItem[]>;
70
+
71
+ /**
72
+ * BehaviorSubject that holds the currently active item.
73
+ */
74
+ readonly activeItem_BS: BehaviorSubject<T_DataItem>;
75
+
76
+ /**
77
+ * Observable that holds the currently active item.
78
+ */
79
+ readonly activeItem$: Observable<T_DataItem>;
80
+
81
+ /**
82
+ * Gets the current data value.
83
+ * @returns The current data value
84
+ */
85
+ override get data(): T_ListCollectorData {
86
+ return this.data_BS.value;
87
+ }
88
+
89
+ /**
90
+ * Gets the current data list.
91
+ * Alias for data getter.
92
+ * @returns The current array of data items
93
+ */
94
+ get dataList(): T_DataItem[] {
95
+ return this.dataList_BS.value;
96
+ }
97
+
98
+ /**
99
+ * Creates a new instance of DyFM_ListCollectorDataHandler.
100
+ *
101
+ * @param set - Configuration settings for the data handler
102
+ * @param skipDependencyConnections - Optional flag to skip dependency connections during construction
103
+ */
104
+ constructor(
105
+ set: DyFM_ListCollectorDataHandler_Settings<T_ListCollectorData, T_DataItem, T_DependencyData, T_DataLoadBy>,
106
+ /** is in construct?
107
+ * so the dependent data handlers are not added here, but in the extended class */
108
+ skipDependencyConnections?: boolean,
109
+ ) {
110
+ super(set, skipDependencyConnections);
111
+
112
+ this.listKey = set.listKey;
113
+
114
+ // Initialize dataList BehaviorSubject and Observable
115
+ this.dataList_BS = new BehaviorSubject<T_DataItem[]>([]);
116
+ this.dataList$ = this.dataList_BS.asObservable();
117
+
118
+ // Initialize activeItem BehaviorSubject and Observable
119
+ this.activeItem_BS = new BehaviorSubject<T_DataItem>(null);
120
+ this.activeItem$ = this.activeItem_BS.asObservable();
121
+
122
+ // Subscribe to data changes to update dataList
123
+ this.data$.subscribe(data => {
124
+ const dataList = Array.isArray(data?.[this.listKey]) ? data[this.listKey] : [];
125
+ this.dataList_BS.next(dataList);
126
+ });
127
+
128
+ if (set.setItem) {
129
+ this.setItem = set.setItem;
130
+ }
131
+
132
+ if (set.deleteItem) {
133
+ this.deleteItem = set.deleteItem;
134
+ }
135
+
136
+ this.getPostProcesses.push((data: T_DataItem[]) => {
137
+ // check if data is an array
138
+ if (!Array.isArray(data) ) {
139
+ console.error(
140
+ `DYNAMO DynamoDataHandler (${this.name}) ERROR: ` +
141
+ `\nData is not an array!:` +
142
+ '\n\n', data
143
+ );
144
+ throw new Error(`Data is not an array! (${this.name})`);
145
+ }
146
+
147
+ return data;
148
+ });
149
+
150
+ if (!skipDependencyConnections) {
151
+ if (set.dependencyDataHandler) {
152
+ this.addDependencyDataHandler(set.dependencyDataHandler);
153
+ }
154
+
155
+ if (set.dependentDataHandlers) {
156
+ this.addDependentDataHandlers(set.dependentDataHandlers, true);
157
+ }
158
+ }
159
+ }
160
+
161
+ override clear(dontClearDependents?: boolean): void {
162
+ super.clear(dontClearDependents);
163
+ this.activeItem_BS.next(null);
164
+ }
165
+
166
+ /**
167
+ * Adds a new item to the data list.
168
+ *
169
+ * @param item - The item to add to the list
170
+ * @param collectorId - Optional collector ID for tracking
171
+ * @param dontSendUpdate - Optional flag to prevent sending update notification
172
+ */
173
+ async addItem(item: T_DataItem, collectorId?: string, dontSendUpdate?: boolean): Promise<void> {
174
+ if (!this.data) {
175
+ throw new DyFM_Error({
176
+ error: new Error(`Data not found! (${this.name})`),
177
+ errorCode: 'DyFM-LCDH-AI1',
178
+ additionalContent: {
179
+ listKey: this.listKey,
180
+ },
181
+ });
182
+ }
183
+ this.data[this.listKey] ??= [];
184
+ this.data[this.listKey].push(item);
185
+ if (this.setItem && !dontSendUpdate) {
186
+ await this.setItem(item, collectorId);
187
+ // dont send update because we already sent it to the setItem function
188
+ await this.updateData(this.data_BS.value, true);
189
+ } else {
190
+ await this.updateData(this.data_BS.value, dontSendUpdate);
191
+ }
192
+ this.activeItem_BS.next(item);
193
+ }
194
+
195
+ /**
196
+ * Removes an item from the data list.
197
+ * The item is identified by its _id property.
198
+ *
199
+ * @param id - The id of the item to remove from the list
200
+ * @param collectorId - Optional collector ID for tracking
201
+ * @param dontSendUpdate - Optional flag to prevent sending update notification
202
+ */
203
+ async removeItem(id: string, collectorId?: string, dontSendUpdate?: boolean): Promise<void> {
204
+ if (!this.data?.[this.listKey]?.length) {
205
+ throw new DyFM_Error({
206
+ error: new Error(`List not found! (${this.name})`),
207
+ errorCode: 'DyFM-LCDH-RI1',
208
+ additionalContent: {
209
+ listKey: this.listKey,
210
+ },
211
+ });
212
+ }
213
+ const index = this.data[this.listKey].findIndex(i => i._id === id);
214
+ if (index !== -1) {
215
+ this.data[this.listKey].splice(index, 1);
216
+ if (this.deleteItem) {
217
+ await this.deleteItem(id, collectorId);
218
+ await this.updateData(this.data_BS.value, true);
219
+ } else {
220
+ await this.updateData(this.data_BS.value, dontSendUpdate);
221
+ }
222
+ }
223
+ if (this.activeItem_BS.value?._id === id) {
224
+ this.activeItem_BS.next(null);
225
+ }
226
+ }
227
+
228
+ /**
229
+ * Updates an existing item in the data list.
230
+ * The item is identified by its _id property.
231
+ *
232
+ * @param item - The updated item
233
+ * @param collectorId - Optional collector ID for tracking
234
+ * @param dontSendUpdate - Optional flag to prevent sending update notification
235
+ * @throws Error if the item is not found in the list
236
+ */
237
+ async updateItem(item: T_DataItem, collectorId?: string, dontSendUpdate?: boolean): Promise<void> {
238
+ if (!this.data?.[this.listKey]?.length) {
239
+ throw new DyFM_Error({
240
+ error: new Error(`List not found! (${this.name})`),
241
+ errorCode: 'DyFM-LCDH-UI0',
242
+ additionalContent: {
243
+ listKey: this.listKey,
244
+ },
245
+ });
246
+ }
247
+ // check if item is in the list
248
+ const index = this.data[this.listKey].findIndex(i => i._id === item._id);
249
+ if (index !== -1) {
250
+ // update the item
251
+ this.data[this.listKey][index] = item;
252
+ if (this.setItem) {
253
+ // send update to API
254
+ await this.setItem(item, collectorId);
255
+ await this.updateData(this.data_BS.value, true);
256
+ } else {
257
+ // send update to API
258
+ await this.updateData(this.data_BS.value, dontSendUpdate);
259
+ }
260
+ } else {
261
+ throw new DyFM_Error({
262
+ error: new Error(`Item not found! (${this.name})`),
263
+ errorCode: 'DyFM-LCDH-UI1',
264
+ additionalContent: {
265
+ item: item,
266
+ },
267
+ });
268
+ }
269
+ }
270
+
271
+ setActiveItem(item: T_DataItem): void {
272
+ this.activeItem_BS.next(item);
273
+ }
274
+ }
@@ -1,6 +1,6 @@
1
- // MODELS
2
- export * from './_models/data-handler.control-model';
3
- export * from './_models/data-handler-settings.control-model';
4
- export * from './_models/data-list-handler.control-model';
5
- export * from './_models/data-search-handler.control-model';
6
- export * from './_models/list-collector-data-handler.control-model';
1
+ // MODELS
2
+ export * from './_models/data-handler.control-model';
3
+ export * from './_models/data-handler-settings.control-model';
4
+ export * from './_models/data-list-handler.control-model';
5
+ export * from './_models/data-search-handler.control-model';
6
+ export * from './_models/list-collector-data-handler.control-model';