@futdevpro/fsm-dynamo 1.15.17 → 1.15.20

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 (543) 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/.dynamo/pipeline.cicd.config.json +128 -128
  15. package/.github/workflows/main.yml +433 -433
  16. package/.vscode/settings.json +11 -11
  17. package/LICENSE +21 -21
  18. package/__documentations/2026-06-01-fr047-fc-foundation.md +48 -0
  19. package/build/_models/data-models/errors.data-model.d.ts +43 -0
  20. package/build/_models/data-models/errors.data-model.d.ts.map +1 -1
  21. package/build/_models/data-models/errors.data-model.js +30 -0
  22. package/build/_models/data-models/errors.data-model.js.map +1 -1
  23. package/build/_modules/ai/_models/ai-model-capabilities.interface.d.ts +8 -0
  24. package/build/_modules/ai/_models/ai-model-capabilities.interface.d.ts.map +1 -1
  25. package/build/_modules/ai/_modules/anthropic/_collections/aai-models.const.d.ts.map +1 -1
  26. package/build/_modules/ai/_modules/anthropic/_collections/aai-models.const.js +3 -0
  27. package/build/_modules/ai/_modules/anthropic/_collections/aai-models.const.js.map +1 -1
  28. package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.d.ts.map +1 -1
  29. package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.js +1 -0
  30. package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.js.map +1 -1
  31. package/build/_modules/ai/_modules/google-ai/_collections/gai-models.const.d.ts.map +1 -1
  32. package/build/_modules/ai/_modules/google-ai/_collections/gai-models.const.js +4 -0
  33. package/build/_modules/ai/_modules/google-ai/_collections/gai-models.const.js.map +1 -1
  34. package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.d.ts.map +1 -1
  35. package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.js +2 -0
  36. package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.js.map +1 -1
  37. package/build/_modules/ai/_modules/open-ai/_collections/oai-models.const.d.ts.map +1 -1
  38. package/build/_modules/ai/_modules/open-ai/_collections/oai-models.const.js +11 -0
  39. package/build/_modules/ai/_modules/open-ai/_collections/oai-models.const.js.map +1 -1
  40. package/build/_modules/socket/_models/sck-socket-event.control-model.js +1 -1
  41. package/eslint.config.js +4 -4
  42. package/nodemon.json +22 -22
  43. package/package.json +11 -11
  44. package/scripts/crypto/CRYPTO-STABILITY-SOLUTION.md +196 -196
  45. package/scripts/crypto/README.md +113 -113
  46. package/scripts/crypto/demo-crypto-stability.js +120 -120
  47. package/scripts/crypto/stress-test-crypto.js +379 -379
  48. package/scripts/run-coverage-tests.js +24 -24
  49. package/spec/support/helpers/ts-node-helper.js +9 -9
  50. package/spec/support/jasmine.coverage.json +23 -23
  51. package/spec/support/jasmine.json +24 -24
  52. package/src/_collections/constants/data-sizes.const.ts +40 -40
  53. package/src/_collections/constants/error-defaults.const.ts +20 -20
  54. package/src/_collections/constants/global-settings.const.ts +24 -24
  55. package/src/_collections/constants/numbers.const.ts +40 -40
  56. package/src/_collections/constants/times.const.ts +45 -45
  57. package/src/_collections/utils/array.util.spec.ts +306 -306
  58. package/src/_collections/utils/array.util.ts +813 -813
  59. package/src/_collections/utils/async.util.spec.ts +354 -354
  60. package/src/_collections/utils/async.util.ts +197 -197
  61. package/src/_collections/utils/data.util.spec.ts +345 -345
  62. package/src/_collections/utils/data.util.ts +226 -226
  63. package/src/_collections/utils/json-error-helper.util.spec.ts +521 -521
  64. package/src/_collections/utils/json-error-helper.util.ts +301 -301
  65. package/src/_collections/utils/log.util.spec.ts +975 -975
  66. package/src/_collections/utils/log.util.ts +665 -665
  67. package/src/_collections/utils/math/box-bounds.spec.ts +73 -73
  68. package/src/_collections/utils/math/box-bounds.util.ts +183 -183
  69. package/src/_collections/utils/math/math.util.spec.ts +94 -94
  70. package/src/_collections/utils/math/math.util.ts +141 -141
  71. package/src/_collections/utils/math/random.util.spec.ts +82 -82
  72. package/src/_collections/utils/math/random.util.ts +139 -139
  73. package/src/_collections/utils/math/trigonometry.util.spec.ts +57 -57
  74. package/src/_collections/utils/math/trigonometry.util.ts +102 -102
  75. package/src/_collections/utils/math/vector2.util.spec.ts +94 -94
  76. package/src/_collections/utils/math/vector2.util.ts +653 -653
  77. package/src/_collections/utils/object.util.spec.ts +646 -646
  78. package/src/_collections/utils/regex/password-regex.util.spec.ts +51 -51
  79. package/src/_collections/utils/regex/password-regex.util.ts +65 -65
  80. package/src/_collections/utils/regex/regex.util.spec.ts +42 -42
  81. package/src/_collections/utils/regex/regex.util.ts +6 -6
  82. package/src/_collections/utils/regex/username-regex.util.spec.ts +61 -61
  83. package/src/_collections/utils/regex/username-regex.util.ts +35 -35
  84. package/src/_collections/utils/round-list.util.spec.ts +79 -79
  85. package/src/_collections/utils/round-list.util.ts +162 -162
  86. package/src/_collections/utils/stack.util.spec.ts +372 -372
  87. package/src/_collections/utils/stack.util.ts +164 -164
  88. package/src/_collections/utils/string-case.util.spec.ts +441 -441
  89. package/src/_collections/utils/string-case.util.ts +362 -362
  90. package/src/_collections/utils/string.util.spec.ts +975 -975
  91. package/src/_collections/utils/string.util.ts +449 -449
  92. package/src/_collections/utils/time.util.spec.ts +50 -50
  93. package/src/_collections/utils/time.util.ts +481 -481
  94. package/src/_collections/utils/type-cloning-facility.util.spec.ts +51 -51
  95. package/src/_collections/utils/type-cloning-facility.util.ts +168 -168
  96. package/src/_collections/utils/utilities.util.spec.ts +201 -201
  97. package/src/_collections/utils/utilities.util.ts +68 -68
  98. package/src/_collections/utils/uuid.util.spec.ts +30 -30
  99. package/src/_collections/utils/uuid.util.ts +50 -50
  100. package/src/_enums/basic-property-type.enum.ts +20 -20
  101. package/src/_enums/data-model-type.enum.ts +29 -29
  102. package/src/_enums/environment-flag.enum.ts +28 -28
  103. package/src/_enums/error-level.enum.ts +28 -28
  104. package/src/_enums/http/http-call-type.enum.ts +43 -43
  105. package/src/_enums/http/http-event-type.enum.ts +40 -40
  106. package/src/_enums/http/http-response-type.enum.ts +18 -18
  107. package/src/_enums/log-style.enum.ts +44 -44
  108. package/src/_enums/server-connection-status.enum.ts +6 -6
  109. package/src/_enums/time/day-of-week.enum.ts +55 -55
  110. package/src/_enums/time/month.enum.ts +25 -25
  111. package/src/_enums/time/relative-date.enum.ts +24 -24
  112. package/src/_models/control-models/data-model-params.control-model.spec.ts +85 -85
  113. package/src/_models/control-models/data-model-params.control-model.ts +300 -300
  114. package/src/_models/control-models/data-property-params.control-model.spec.ts +93 -93
  115. package/src/_models/control-models/data-property-params.control-model.ts +201 -201
  116. package/src/_models/control-models/error.control-model.spec.ts +912 -912
  117. package/src/_models/control-models/error.control-model.ts +1215 -1215
  118. package/src/_models/control-models/http/http-error-response.control-model.spec.ts +116 -116
  119. package/src/_models/control-models/http/http-error-response.control-model.ts +52 -52
  120. package/src/_models/control-models/http/http-headers.control-model.spec.ts +25 -25
  121. package/src/_models/control-models/http/http-headers.control-model.ts +124 -124
  122. package/src/_models/control-models/http/http-response.model-base.spec.ts +46 -46
  123. package/src/_models/control-models/http/http-response.model-base.ts +57 -57
  124. package/src/_models/control-models/poll.control-model.spec.ts +63 -63
  125. package/src/_models/control-models/poll.control-model.ts +151 -151
  126. package/src/_models/control-models/range-value.control-model.spec.ts +187 -187
  127. package/src/_models/control-models/range-value.control-model.ts +289 -289
  128. package/src/_models/control-models/server-status.control-model.spec.ts +66 -66
  129. package/src/_models/control-models/server-status.control-model.ts +85 -85
  130. package/src/_models/control-models/service-endpoint-settings-base.control-model.spec.ts +145 -145
  131. package/src/_models/control-models/service-endpoint-settings-base.control-model.ts +186 -186
  132. package/src/_models/data-models/errors.data-model.spec.ts +71 -71
  133. package/src/_models/data-models/errors.data-model.ts +148 -91
  134. package/src/_models/data-models/metadata.data-model.spec.ts +184 -184
  135. package/src/_models/data-models/metadata.data-model.ts +128 -128
  136. package/src/_models/interfaces/box-bounds.interface.ts +7 -7
  137. package/src/_models/interfaces/environment/global-log-settings.interface.ts +86 -86
  138. package/src/_models/interfaces/environment/global-settings.interface.ts +47 -47
  139. package/src/_models/interfaces/error-defaults.interface.ts +11 -11
  140. package/src/_models/interfaces/paged.interface.ts +12 -12
  141. package/src/_models/interfaces/random-weight.interface.ts +7 -7
  142. package/src/_models/interfaces/route-settings.interface.ts +15 -15
  143. package/src/_models/interfaces/search-query.interface.ts +23 -23
  144. package/src/_models/interfaces/search-result.interface.ts +5 -5
  145. package/src/_models/interfaces/server-error-statistics.interface.ts +24 -24
  146. package/src/_models/interfaces/vector2.interface.ts +20 -20
  147. package/src/_models/types/db-filter.type.ts +110 -110
  148. package/src/_models/types/db-sort.type.ts +4 -4
  149. package/src/_models/types/ds-filter.type.ts +68 -68
  150. package/src/_models/types/ds-sort.type.ts +21 -21
  151. package/src/_modules/ai/_collections/ai-model-ref.util.ts +88 -88
  152. package/src/_modules/ai/_collections/ai-model-registry.util.spec.ts +37 -37
  153. package/src/_modules/ai/_collections/ai-model-registry.util.ts +30 -30
  154. package/src/_modules/ai/_enums/ai-message-role.enum.ts +7 -7
  155. package/src/_modules/ai/_enums/ai-model-type.enum.ts +7 -7
  156. package/src/_modules/ai/_enums/ai-provider.enum.ts +7 -7
  157. package/src/_modules/ai/_models/ai-call-settings.interface.ts +84 -84
  158. package/src/_modules/ai/_models/ai-embedding-request.interface.ts +20 -20
  159. package/src/_modules/ai/_models/ai-embedding-response.interface.ts +26 -26
  160. package/src/_modules/ai/_models/ai-llm-request.interface.ts +24 -24
  161. package/src/_modules/ai/_models/ai-llm-response.interface.ts +30 -30
  162. package/src/_modules/ai/_models/ai-message.interface.ts +12 -12
  163. package/src/_modules/ai/_models/ai-model-capabilities.interface.ts +35 -27
  164. package/src/_modules/ai/_models/ai-model-info.interface.ts +63 -63
  165. package/src/_modules/ai/_models/ai-model-settings-schema.interface.ts +52 -52
  166. package/src/_modules/ai/_models/ai-provider-capabilities.interface.ts +28 -28
  167. package/src/_modules/ai/_models/ai-settings.interface.ts +17 -17
  168. package/src/_modules/ai/_models/ai-tool-call.interface.ts +18 -18
  169. package/src/_modules/ai/_models/ai-tool-handler.type.ts +11 -11
  170. package/src/_modules/ai/_models/ai-tool-result.interface.ts +16 -16
  171. package/src/_modules/ai/_models/ai-tool.interface.ts +16 -16
  172. package/src/_modules/ai/_models/ai-user-provider-config.control-model.ts +29 -29
  173. package/src/_modules/ai/_modules/anthropic/_collections/aai-models.const.ts +81 -78
  174. package/src/_modules/ai/_modules/anthropic/_enums/aai-model.enum.ts +19 -19
  175. package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.spec.ts +28 -28
  176. package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.ts +23 -23
  177. package/src/_modules/ai/_modules/anthropic/_models/aai-client-options.interface.ts +10 -10
  178. package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.spec.ts +22 -22
  179. package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.ts +27 -27
  180. package/src/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.ts +20 -20
  181. package/src/_modules/ai/_modules/anthropic/index.ts +14 -14
  182. package/src/_modules/ai/_modules/document-ai/_models/dai-embedding-info.interface.ts +12 -12
  183. package/src/_modules/ai/_modules/document-ai/_models/dai-vector-search-params.interface.ts +22 -22
  184. package/src/_modules/ai/_modules/document-ai/index.ts +4 -4
  185. package/src/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.ts +34 -33
  186. package/src/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.ts +6 -6
  187. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.ts +19 -19
  188. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.ts +11 -11
  189. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.ts +24 -24
  190. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.ts +20 -20
  191. package/src/_modules/ai/_modules/fdp-ai/index.ts +11 -11
  192. package/src/_modules/ai/_modules/google-ai/_collections/gai-models.const.ts +99 -95
  193. package/src/_modules/ai/_modules/google-ai/_enums/gai-model.enum.ts +16 -16
  194. package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.spec.ts +28 -28
  195. package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.ts +21 -21
  196. package/src/_modules/ai/_modules/google-ai/_models/gai-client-options.interface.ts +8 -8
  197. package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.spec.ts +22 -22
  198. package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.ts +25 -25
  199. package/src/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.ts +20 -20
  200. package/src/_modules/ai/_modules/google-ai/index.ts +14 -14
  201. package/src/_modules/ai/_modules/local-ai/_collections/lai-models.const.ts +53 -51
  202. package/src/_modules/ai/_modules/local-ai/_enums/lai-model.enum.ts +6 -6
  203. package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.spec.ts +28 -28
  204. package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.ts +18 -18
  205. package/src/_modules/ai/_modules/local-ai/_models/lai-client-options.interface.ts +9 -9
  206. package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.spec.ts +22 -22
  207. package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.ts +23 -23
  208. package/src/_modules/ai/_modules/local-ai/index.ts +14 -14
  209. package/src/_modules/ai/_modules/open-ai/_collections/oai-embedding-model-dimensions.const.ts +7 -7
  210. package/src/_modules/ai/_modules/open-ai/_collections/oai-models.const.ts +252 -241
  211. package/src/_modules/ai/_modules/open-ai/_enums/oai-model.enum.ts +179 -179
  212. package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.spec.ts +28 -28
  213. package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.ts +21 -21
  214. package/src/_modules/ai/_modules/open-ai/_models/oai-client-options.interface.ts +81 -81
  215. package/src/_modules/ai/_modules/open-ai/_models/oai-embedding-info.interface.ts +13 -13
  216. package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.spec.ts +22 -22
  217. package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.ts +25 -25
  218. package/src/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.ts +21 -21
  219. package/src/_modules/ai/_modules/open-ai/index.ts +28 -28
  220. package/src/_modules/ai/index.ts +27 -27
  221. package/src/_modules/ci-tools/_enums/cit-ci-result-code.enum.ts +11 -11
  222. package/src/_modules/ci-tools/_enums/cit-ci-step-result-code.enum.ts +9 -9
  223. package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.spec.ts +58 -58
  224. package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.ts +77 -77
  225. package/src/_modules/ci-tools/_models/cit-ci-step-result.interface.ts +12 -12
  226. package/src/_modules/ci-tools/index.ts +8 -8
  227. package/src/_modules/crypto/_collections/crypto.util.simple.spec.ts +512 -512
  228. package/src/_modules/crypto/index.ts +13 -13
  229. package/src/_modules/custom-data/_collections/cud-module-settings.const.ts +21 -21
  230. package/src/_modules/custom-data/_models/cud.data-model.spec.ts +38 -38
  231. package/src/_modules/custom-data/_models/cud.data-model.ts +39 -39
  232. package/src/_modules/custom-data/index.ts +10 -10
  233. package/src/_modules/data-handler/_models/data-handler-settings.control-model.spec.ts +110 -110
  234. package/src/_modules/data-handler/_models/data-handler-settings.control-model.ts +110 -110
  235. package/src/_modules/data-handler/_models/data-handler.control-model.spec.ts +445 -445
  236. package/src/_modules/data-handler/_models/data-handler.control-model.ts +459 -459
  237. package/src/_modules/data-handler/_models/data-list-handler.control-model.spec.ts +263 -263
  238. package/src/_modules/data-handler/_models/data-list-handler.control-model.ts +252 -252
  239. package/src/_modules/data-handler/_models/data-search-handler.control-model.spec.ts +417 -417
  240. package/src/_modules/data-handler/_models/data-search-handler.control-model.ts +390 -390
  241. package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.spec.ts +374 -374
  242. package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.ts +274 -274
  243. package/src/_modules/data-handler/index.ts +6 -6
  244. package/src/_modules/location/_collections/assets/country-codes-ISO-3166.json +3239 -3239
  245. package/src/_modules/location/_collections/assets/country-divisions-ISO-3166-all-list.json +19035 -19035
  246. package/src/_modules/location/_collections/assets/country-divisions-ISO-3166.json +4993 -4993
  247. package/src/_modules/location/_collections/assets/country-phone-codes.json +1203 -1203
  248. package/src/_modules/location/_collections/assets/country-subdivisions/afghanistan.json +137 -137
  249. package/src/_modules/location/_collections/assets/country-subdivisions/albania.json +49 -49
  250. package/src/_modules/location/_collections/assets/country-subdivisions/algeria.json +193 -193
  251. package/src/_modules/location/_collections/assets/country-subdivisions/andorra.json +29 -29
  252. package/src/_modules/location/_collections/assets/country-subdivisions/angola.json +73 -73
  253. package/src/_modules/location/_collections/assets/country-subdivisions/antigua-and-barbuda.json +33 -33
  254. package/src/_modules/location/_collections/assets/country-subdivisions/argentina.json +97 -97
  255. package/src/_modules/location/_collections/assets/country-subdivisions/armenia.json +45 -45
  256. package/src/_modules/location/_collections/assets/country-subdivisions/australia.json +33 -33
  257. package/src/_modules/location/_collections/assets/country-subdivisions/austria.json +37 -37
  258. package/src/_modules/location/_collections/assets/country-subdivisions/azerbaijan.json +5 -5
  259. package/src/_modules/location/_collections/assets/country-subdivisions/bahamas.json +125 -125
  260. package/src/_modules/location/_collections/assets/country-subdivisions/bahrain.json +21 -21
  261. package/src/_modules/location/_collections/assets/country-subdivisions/bangladesh.json +29 -29
  262. package/src/_modules/location/_collections/assets/country-subdivisions/barbados.json +45 -45
  263. package/src/_modules/location/_collections/assets/country-subdivisions/belarus.json +29 -29
  264. package/src/_modules/location/_collections/assets/country-subdivisions/belgium.json +13 -13
  265. package/src/_modules/location/_collections/assets/country-subdivisions/belize.json +25 -25
  266. package/src/_modules/location/_collections/assets/country-subdivisions/benin.json +49 -49
  267. package/src/_modules/location/_collections/assets/country-subdivisions/bhutan.json +81 -81
  268. package/src/_modules/location/_collections/assets/country-subdivisions/bolivia.json +37 -37
  269. package/src/_modules/location/_collections/assets/country-subdivisions/bosnia-and-herzegovina.json +13 -13
  270. package/src/_modules/location/_collections/assets/country-subdivisions/botswana.json +65 -65
  271. package/src/_modules/location/_collections/assets/country-subdivisions/brazil.json +109 -109
  272. package/src/_modules/location/_collections/assets/country-subdivisions/brunei-darussalam.json +17 -17
  273. package/src/_modules/location/_collections/assets/country-subdivisions/bulgaria.json +113 -113
  274. package/src/_modules/location/_collections/assets/country-subdivisions/burkina-faso.json +53 -53
  275. package/src/_modules/location/_collections/assets/country-subdivisions/burundi.json +69 -69
  276. package/src/_modules/location/_collections/assets/country-subdivisions/cambodia.json +97 -97
  277. package/src/_modules/location/_collections/assets/country-subdivisions/cameroon.json +41 -41
  278. package/src/_modules/location/_collections/assets/country-subdivisions/canada.json +79 -79
  279. package/src/_modules/location/_collections/assets/country-subdivisions/cape-verde.json +9 -9
  280. package/src/_modules/location/_collections/assets/country-subdivisions/central-african-republic.json +69 -69
  281. package/src/_modules/location/_collections/assets/country-subdivisions/chad.json +89 -89
  282. package/src/_modules/location/_collections/assets/country-subdivisions/chile.json +61 -61
  283. package/src/_modules/location/_collections/assets/country-subdivisions/china.json +205 -205
  284. package/src/_modules/location/_collections/assets/country-subdivisions/colombia.json +133 -133
  285. package/src/_modules/location/_collections/assets/country-subdivisions/comoros.json +13 -13
  286. package/src/_modules/location/_collections/assets/country-subdivisions/congo-the-democratic-republic-of-the.json +45 -45
  287. package/src/_modules/location/_collections/assets/country-subdivisions/congo.json +49 -49
  288. package/src/_modules/location/_collections/assets/country-subdivisions/costa-rica.json +29 -29
  289. package/src/_modules/location/_collections/assets/country-subdivisions/cote-d-ivoire-republic-of.json +77 -77
  290. package/src/_modules/location/_collections/assets/country-subdivisions/croatia.json +85 -85
  291. package/src/_modules/location/_collections/assets/country-subdivisions/cuba.json +65 -65
  292. package/src/_modules/location/_collections/assets/country-subdivisions/cyprus.json +25 -25
  293. package/src/_modules/location/_collections/assets/country-subdivisions/czech-republic.json +57 -57
  294. package/src/_modules/location/_collections/assets/country-subdivisions/denmark.json +21 -21
  295. package/src/_modules/location/_collections/assets/country-subdivisions/djibouti.json +25 -25
  296. package/src/_modules/location/_collections/assets/country-subdivisions/dominica.json +41 -41
  297. package/src/_modules/location/_collections/assets/country-subdivisions/dominican-republic.json +41 -41
  298. package/src/_modules/location/_collections/assets/country-subdivisions/ecuador.json +97 -97
  299. package/src/_modules/location/_collections/assets/country-subdivisions/egypt.json +117 -117
  300. package/src/_modules/location/_collections/assets/country-subdivisions/el-salvador.json +57 -57
  301. package/src/_modules/location/_collections/assets/country-subdivisions/equatorial-guinea.json +9 -9
  302. package/src/_modules/location/_collections/assets/country-subdivisions/eritrea.json +25 -25
  303. package/src/_modules/location/_collections/assets/country-subdivisions/estonia.json +61 -61
  304. package/src/_modules/location/_collections/assets/country-subdivisions/ethiopia.json +45 -45
  305. package/src/_modules/location/_collections/assets/country-subdivisions/fiji.json +21 -21
  306. package/src/_modules/location/_collections/assets/country-subdivisions/finland.json +77 -77
  307. package/src/_modules/location/_collections/assets/country-subdivisions/france.json +133 -133
  308. package/src/_modules/location/_collections/assets/country-subdivisions/gabon.json +37 -37
  309. package/src/_modules/location/_collections/assets/country-subdivisions/gambia.json +25 -25
  310. package/src/_modules/location/_collections/assets/country-subdivisions/georgia.json +49 -49
  311. package/src/_modules/location/_collections/assets/country-subdivisions/germany.json +65 -65
  312. package/src/_modules/location/_collections/assets/country-subdivisions/ghana.json +41 -41
  313. package/src/_modules/location/_collections/assets/country-subdivisions/greece.json +53 -53
  314. package/src/_modules/location/_collections/assets/country-subdivisions/greenland.json +17 -17
  315. package/src/_modules/location/_collections/assets/country-subdivisions/grenada.json +29 -29
  316. package/src/_modules/location/_collections/assets/country-subdivisions/guatemala.json +89 -89
  317. package/src/_modules/location/_collections/assets/country-subdivisions/guinea-bissau.json +13 -13
  318. package/src/_modules/location/_collections/assets/country-subdivisions/guinea.json +33 -33
  319. package/src/_modules/location/_collections/assets/country-subdivisions/guyana.json +41 -41
  320. package/src/_modules/location/_collections/assets/country-subdivisions/haiti.json +41 -41
  321. package/src/_modules/location/_collections/assets/country-subdivisions/honduras.json +73 -73
  322. package/src/_modules/location/_collections/assets/country-subdivisions/hong-kong.json +4 -4
  323. package/src/_modules/location/_collections/assets/country-subdivisions/hungary.json +173 -173
  324. package/src/_modules/location/_collections/assets/country-subdivisions/iceland.json +37 -37
  325. package/src/_modules/location/_collections/assets/country-subdivisions/india.json +181 -181
  326. package/src/_modules/location/_collections/assets/country-subdivisions/indonesia.json +29 -29
  327. package/src/_modules/location/_collections/assets/country-subdivisions/iran-islamic-republic-of.json +125 -125
  328. package/src/_modules/location/_collections/assets/country-subdivisions/iraq.json +73 -73
  329. package/src/_modules/location/_collections/assets/country-subdivisions/ireland.json +17 -17
  330. package/src/_modules/location/_collections/assets/country-subdivisions/israel.json +25 -25
  331. package/src/_modules/location/_collections/assets/country-subdivisions/italy.json +81 -81
  332. package/src/_modules/location/_collections/assets/country-subdivisions/jamaica.json +57 -57
  333. package/src/_modules/location/_collections/assets/country-subdivisions/japan.json +189 -189
  334. package/src/_modules/location/_collections/assets/country-subdivisions/jordan.json +49 -49
  335. package/src/_modules/location/_collections/assets/country-subdivisions/kazakhstan.json +65 -65
  336. package/src/_modules/location/_collections/assets/country-subdivisions/kenya.json +33 -33
  337. package/src/_modules/location/_collections/assets/country-subdivisions/kiribati.json +13 -13
  338. package/src/_modules/location/_collections/assets/country-subdivisions/korea-democratic-people-s-republic-of.json +45 -45
  339. package/src/_modules/location/_collections/assets/country-subdivisions/korea-republic-of.json +69 -69
  340. package/src/_modules/location/_collections/assets/country-subdivisions/kuwait.json +25 -25
  341. package/src/_modules/location/_collections/assets/country-subdivisions/kyrgyzstan.json +33 -33
  342. package/src/_modules/location/_collections/assets/country-subdivisions/lao-people-s-democratic-republic.json +73 -73
  343. package/src/_modules/location/_collections/assets/country-subdivisions/latvia.json +477 -477
  344. package/src/_modules/location/_collections/assets/country-subdivisions/lebanon.json +33 -33
  345. package/src/_modules/location/_collections/assets/country-subdivisions/lesotho.json +41 -41
  346. package/src/_modules/location/_collections/assets/country-subdivisions/liberia.json +61 -61
  347. package/src/_modules/location/_collections/assets/country-subdivisions/libyan-arab-jamahiriya.json +89 -89
  348. package/src/_modules/location/_collections/assets/country-subdivisions/liechtenstein.json +45 -45
  349. package/src/_modules/location/_collections/assets/country-subdivisions/lithuania.json +41 -41
  350. package/src/_modules/location/_collections/assets/country-subdivisions/luxembourg.json +13 -13
  351. package/src/_modules/location/_collections/assets/country-subdivisions/macedonia-the-former-yugoslav-republic-of.json +337 -337
  352. package/src/_modules/location/_collections/assets/country-subdivisions/madagascar.json +25 -25
  353. package/src/_modules/location/_collections/assets/country-subdivisions/malawi.json +13 -13
  354. package/src/_modules/location/_collections/assets/country-subdivisions/malaysia.json +81 -81
  355. package/src/_modules/location/_collections/assets/country-subdivisions/maldives.json +33 -33
  356. package/src/_modules/location/_collections/assets/country-subdivisions/mali.json +37 -37
  357. package/src/_modules/location/_collections/assets/country-subdivisions/malta.json +273 -273
  358. package/src/_modules/location/_collections/assets/country-subdivisions/marshall-islands.json +9 -9
  359. package/src/_modules/location/_collections/assets/country-subdivisions/mauritania.json +53 -53
  360. package/src/_modules/location/_collections/assets/country-subdivisions/mauritius.json +69 -69
  361. package/src/_modules/location/_collections/assets/country-subdivisions/mexico.json +161 -161
  362. package/src/_modules/location/_collections/assets/country-subdivisions/micronesia-federated-states-of.json +17 -17
  363. package/src/_modules/location/_collections/assets/country-subdivisions/moldova-republic-of.json +149 -149
  364. package/src/_modules/location/_collections/assets/country-subdivisions/monaco.json +69 -69
  365. package/src/_modules/location/_collections/assets/country-subdivisions/mongolia.json +89 -89
  366. package/src/_modules/location/_collections/assets/country-subdivisions/montenegro.json +93 -93
  367. package/src/_modules/location/_collections/assets/country-subdivisions/morocco.json +65 -65
  368. package/src/_modules/location/_collections/assets/country-subdivisions/mozambique.json +45 -45
  369. package/src/_modules/location/_collections/assets/country-subdivisions/myanmar.json +57 -57
  370. package/src/_modules/location/_collections/assets/country-subdivisions/namibia.json +57 -57
  371. package/src/_modules/location/_collections/assets/country-subdivisions/nauru.json +57 -57
  372. package/src/_modules/location/_collections/assets/country-subdivisions/nepal.json +21 -21
  373. package/src/_modules/location/_collections/assets/country-subdivisions/netherlands.json +91 -91
  374. package/src/_modules/location/_collections/assets/country-subdivisions/new-zealand.json +111 -111
  375. package/src/_modules/location/_collections/assets/country-subdivisions/nicaragua.json +69 -69
  376. package/src/_modules/location/_collections/assets/country-subdivisions/niger.json +33 -33
  377. package/src/_modules/location/_collections/assets/country-subdivisions/nigeria.json +149 -149
  378. package/src/_modules/location/_collections/assets/country-subdivisions/norway.json +85 -85
  379. package/src/_modules/location/_collections/assets/country-subdivisions/oman.json +37 -37
  380. package/src/_modules/location/_collections/assets/country-subdivisions/pakistan.json +33 -33
  381. package/src/_modules/location/_collections/assets/country-subdivisions/palau.json +65 -65
  382. package/src/_modules/location/_collections/assets/country-subdivisions/palestinian-territory-occupied.json +65 -65
  383. package/src/_modules/location/_collections/assets/country-subdivisions/panama.json +53 -53
  384. package/src/_modules/location/_collections/assets/country-subdivisions/papua-new-guinea.json +81 -81
  385. package/src/_modules/location/_collections/assets/country-subdivisions/paraguay.json +73 -73
  386. package/src/_modules/location/_collections/assets/country-subdivisions/peru.json +105 -105
  387. package/src/_modules/location/_collections/assets/country-subdivisions/philippines.json +69 -69
  388. package/src/_modules/location/_collections/assets/country-subdivisions/poland.json +65 -65
  389. package/src/_modules/location/_collections/assets/country-subdivisions/portugal.json +81 -81
  390. package/src/_modules/location/_collections/assets/country-subdivisions/qatar.json +29 -29
  391. package/src/_modules/location/_collections/assets/country-subdivisions/romania.json +169 -169
  392. package/src/_modules/location/_collections/assets/country-subdivisions/russian-federation.json +499 -499
  393. package/src/_modules/location/_collections/assets/country-subdivisions/rwanda.json +21 -21
  394. package/src/_modules/location/_collections/assets/country-subdivisions/saint-helena-ascension-and-tristan-da-cunha.json +13 -13
  395. package/src/_modules/location/_collections/assets/country-subdivisions/saint-kitts-and-nevis.json +9 -9
  396. package/src/_modules/location/_collections/assets/country-subdivisions/saint-lucia.json +45 -45
  397. package/src/_modules/location/_collections/assets/country-subdivisions/saint-vincent-and-the-grenadines.json +25 -25
  398. package/src/_modules/location/_collections/assets/country-subdivisions/samoa.json +45 -45
  399. package/src/_modules/location/_collections/assets/country-subdivisions/san-marino.json +37 -37
  400. package/src/_modules/location/_collections/assets/country-subdivisions/sao-tome-and-principe.json +9 -9
  401. package/src/_modules/location/_collections/assets/country-subdivisions/saudi-arabia.json +53 -53
  402. package/src/_modules/location/_collections/assets/country-subdivisions/senegal.json +57 -57
  403. package/src/_modules/location/_collections/assets/country-subdivisions/serbia.json +9 -9
  404. package/src/_modules/location/_collections/assets/country-subdivisions/seychelles.json +101 -101
  405. package/src/_modules/location/_collections/assets/country-subdivisions/sierra-leone.json +17 -17
  406. package/src/_modules/location/_collections/assets/country-subdivisions/singapore.json +21 -21
  407. package/src/_modules/location/_collections/assets/country-subdivisions/slovakia.json +33 -33
  408. package/src/_modules/location/_collections/assets/country-subdivisions/slovenia.json +841 -841
  409. package/src/_modules/location/_collections/assets/country-subdivisions/solomon-islands.json +41 -41
  410. package/src/_modules/location/_collections/assets/country-subdivisions/somalia.json +73 -73
  411. package/src/_modules/location/_collections/assets/country-subdivisions/south-africa.json +37 -37
  412. package/src/_modules/location/_collections/assets/country-subdivisions/south-sudan.json +41 -41
  413. package/src/_modules/location/_collections/assets/country-subdivisions/spain.json +346 -346
  414. package/src/_modules/location/_collections/assets/country-subdivisions/sri-lanka.json +37 -37
  415. package/src/_modules/location/_collections/assets/country-subdivisions/sudan.json +69 -69
  416. package/src/_modules/location/_collections/assets/country-subdivisions/suriname.json +41 -41
  417. package/src/_modules/location/_collections/assets/country-subdivisions/swaziland.json +17 -17
  418. package/src/_modules/location/_collections/assets/country-subdivisions/sweden.json +85 -85
  419. package/src/_modules/location/_collections/assets/country-subdivisions/switzerland.json +105 -105
  420. package/src/_modules/location/_collections/assets/country-subdivisions/syrian-arab-republic.json +57 -57
  421. package/src/_modules/location/_collections/assets/country-subdivisions/taiwan-province-of-china.json +93 -93
  422. package/src/_modules/location/_collections/assets/country-subdivisions/tajikistan.json +17 -17
  423. package/src/_modules/location/_collections/assets/country-subdivisions/tanzania-united-republic-of.json +105 -105
  424. package/src/_modules/location/_collections/assets/country-subdivisions/thailand.json +313 -313
  425. package/src/_modules/location/_collections/assets/country-subdivisions/timor-leste.json +53 -53
  426. package/src/_modules/location/_collections/assets/country-subdivisions/togo.json +21 -21
  427. package/src/_modules/location/_collections/assets/country-subdivisions/tonga.json +21 -21
  428. package/src/_modules/location/_collections/assets/country-subdivisions/trinidad-and-tobago.json +65 -65
  429. package/src/_modules/location/_collections/assets/country-subdivisions/tunisia.json +97 -97
  430. package/src/_modules/location/_collections/assets/country-subdivisions/turkey.json +325 -325
  431. package/src/_modules/location/_collections/assets/country-subdivisions/turkmenistan.json +25 -25
  432. package/src/_modules/location/_collections/assets/country-subdivisions/tuvalu.json +33 -33
  433. package/src/_modules/location/_collections/assets/country-subdivisions/uganda.json +17 -17
  434. package/src/_modules/location/_collections/assets/country-subdivisions/ukraine.json +109 -109
  435. package/src/_modules/location/_collections/assets/country-subdivisions/united-arab-emirates.json +29 -29
  436. package/src/_modules/location/_collections/assets/country-subdivisions/united-kingdom.json +1196 -1196
  437. package/src/_modules/location/_collections/assets/country-subdivisions/united-states-minor-outlying-islands.json +37 -37
  438. package/src/_modules/location/_collections/assets/country-subdivisions/united-states.json +286 -286
  439. package/src/_modules/location/_collections/assets/country-subdivisions/uruguay.json +77 -77
  440. package/src/_modules/location/_collections/assets/country-subdivisions/uzbekistan.json +57 -57
  441. package/src/_modules/location/_collections/assets/country-subdivisions/vanuatu.json +25 -25
  442. package/src/_modules/location/_collections/assets/country-subdivisions/venezuela.json +101 -101
  443. package/src/_modules/location/_collections/assets/country-subdivisions/viet-nam.json +257 -257
  444. package/src/_modules/location/_collections/assets/country-subdivisions/yemen.json +85 -85
  445. package/src/_modules/location/_collections/assets/country-subdivisions/zambia.json +37 -37
  446. package/src/_modules/location/_collections/assets/country-subdivisions/zimbabwe.json +41 -41
  447. package/src/_modules/location/_collections/loc-country-divisions.const.ts +10 -10
  448. package/src/_modules/location/_collections/loc-country-isos.const.ts +8 -8
  449. package/src/_modules/location/_collections/loc-regions.util.spec.ts +61 -61
  450. package/src/_modules/location/_collections/loc-regions.util.ts +137 -137
  451. package/src/_modules/location/_collections/loc.util.spec.ts +52 -52
  452. package/src/_modules/location/_collections/loc.util.ts +74 -74
  453. package/src/_modules/location/_enums/loc-region.enum.ts +14 -14
  454. package/src/_modules/location/_enums/loc-sub-region.enum.ts +31 -31
  455. package/src/_modules/location/_enums/loc-subdivision-region-type.enum.ts +47 -47
  456. package/src/_modules/location/_models/loc-coordinates.interface.ts +7 -7
  457. package/src/_modules/location/_models/loc-country-division.interface.ts +8 -8
  458. package/src/_modules/location/_models/loc-country-iso.interface.ts +23 -23
  459. package/src/_modules/location/_models/loc-country-phone-code.interface.ts +9 -9
  460. package/src/_modules/location/_models/loc-division-collection.interface.ts +12 -12
  461. package/src/_modules/location/_models/loc-division-region-data.interface.ts +9 -9
  462. package/src/_modules/location/_models/loc-geo-ip-location.interface.ts +27 -27
  463. package/src/_modules/location/index.ts +22 -22
  464. package/src/_modules/messaging/README.md +279 -279
  465. package/src/_modules/messaging/_collections/msg-module-settings.const.ts +46 -46
  466. package/src/_modules/messaging/_enums/msg-attachment-type.enum.ts +26 -26
  467. package/src/_modules/messaging/_enums/msg-delivery-status.enum.ts +17 -17
  468. package/src/_modules/messaging/_enums/msg-event-key.enum.ts +31 -31
  469. package/src/_modules/messaging/_enums/msg-participant-role.enum.ts +20 -20
  470. package/src/_modules/messaging/_enums/msg-provider-type.enum.ts +7 -7
  471. package/src/_modules/messaging/_enums/msg-type.enum.ts +23 -23
  472. package/src/_modules/messaging/_models/msg-attachment.interface.ts +46 -46
  473. package/src/_modules/messaging/_models/msg-conversation.data-model.spec.ts +69 -69
  474. package/src/_modules/messaging/_models/msg-conversation.data-model.ts +96 -96
  475. package/src/_modules/messaging/_models/msg-mention.interface.ts +29 -29
  476. package/src/_modules/messaging/_models/msg-message.data-model.spec.ts +79 -79
  477. package/src/_modules/messaging/_models/msg-message.data-model.ts +127 -127
  478. package/src/_modules/messaging/_models/msg-participant.interface.ts +46 -46
  479. package/src/_modules/messaging/_models/msg-reaction.interface.ts +20 -20
  480. package/src/_modules/messaging/_models/msg-thread-info.interface.ts +35 -35
  481. package/src/_modules/messaging/_modules/agent/_enums/agt-process-step-type.enum.ts +35 -35
  482. package/src/_modules/messaging/_modules/agent/_enums/agt-tool-status.enum.ts +23 -23
  483. package/src/_modules/messaging/_modules/agent/_models/agt-process-step.interface.ts +55 -55
  484. package/src/_modules/messaging/_modules/agent/_models/agt-reasoning-info.interface.ts +26 -26
  485. package/src/_modules/messaging/_modules/agent/_models/agt-tool-usage.interface.ts +37 -37
  486. package/src/_modules/messaging/_modules/agent/index.ts +8 -8
  487. package/src/_modules/messaging/index.ts +28 -28
  488. package/src/_modules/pipe/_collections/pip-transforms.const.ts +42 -42
  489. package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.spec.ts +47 -47
  490. package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.ts +41 -41
  491. package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.spec.ts +39 -39
  492. package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.ts +30 -30
  493. package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.spec.ts +41 -41
  494. package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.ts +36 -36
  495. package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.spec.ts +62 -62
  496. package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.ts +17 -17
  497. package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.spec.ts +34 -34
  498. package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.ts +25 -25
  499. package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.spec.ts +67 -67
  500. package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.ts +226 -226
  501. package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.spec.ts +28 -28
  502. package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.ts +21 -21
  503. package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.spec.ts +59 -59
  504. package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.ts +106 -106
  505. package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.spec.ts +31 -31
  506. package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.ts +35 -35
  507. package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.spec.ts +44 -44
  508. package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.ts +23 -23
  509. package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.spec.ts +21 -21
  510. package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.ts +33 -33
  511. package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.spec.ts +62 -62
  512. package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.ts +80 -80
  513. package/src/_modules/pipe/_enums/pip-range-pipe-setting.enum.ts +15 -15
  514. package/src/_modules/pipe/_enums/pip.enum.ts +65 -65
  515. package/src/_modules/pipe/_models/pip-multi-pipe-settings.type.ts +8 -8
  516. package/src/_modules/pipe/_models/pip-transforms.interface.ts +30 -30
  517. package/src/_modules/pipe/index.ts +30 -30
  518. package/src/_modules/socket/_enums/sck-event-key.enum.ts +21 -21
  519. package/src/_modules/socket/_models/sck-client-params.control-model.spec.ts +67 -67
  520. package/src/_modules/socket/_models/sck-client-params.control-model.ts +50 -50
  521. package/src/_modules/socket/_models/sck-socket-event.control-model.spec.ts +66 -66
  522. package/src/_modules/socket/_models/sck-socket-event.control-model.ts +172 -172
  523. package/src/_modules/socket/_services/sck-client.service-base.spec.ts +99 -99
  524. package/src/_modules/socket/_services/sck-client.service-base.ts +353 -353
  525. package/src/_modules/socket/index.ts +14 -14
  526. package/src/_modules/test/_collections/tst-module-settings.const.ts +67 -67
  527. package/src/_modules/test/index.ts +5 -5
  528. package/src/_modules/usage/_collections/usg-module-settings.const.ts +33 -33
  529. package/src/_modules/usage/_models/usg-action.control-model.spec.ts +27 -27
  530. package/src/_modules/usage/_models/usg-action.control-model.ts +28 -28
  531. package/src/_modules/usage/_models/usg-daily-usage-data.control-model.spec.ts +36 -36
  532. package/src/_modules/usage/_models/usg-daily-usage-data.control-model.ts +35 -35
  533. package/src/_modules/usage/_models/usg-data.control-model.spec.ts +41 -41
  534. package/src/_modules/usage/_models/usg-data.control-model.ts +35 -35
  535. package/src/_modules/usage/_models/usg-session.data-model.spec.ts +97 -97
  536. package/src/_modules/usage/_models/usg-session.data-model.ts +72 -72
  537. package/src/_modules/usage/index.ts +11 -11
  538. package/src/index.ts +102 -102
  539. package/tsconfig.app.json +12 -12
  540. package/tsconfig.json +31 -31
  541. package/tsconfig.test.json +16 -16
  542. package/tslint.json +153 -153
  543. package/pipeline.cicd.config.json +0 -128
@@ -1,92 +1,149 @@
1
- import { DyFM_DataModel_Params } from '../control-models/data-model-params.control-model';
2
- import { DyFM_ErrorLevel } from '../../_enums/error-level.enum';
3
- import { DyFM_Error } from '../control-models/error.control-model';
4
- import { DyFM_Metadata } from './metadata.data-model';
5
-
6
-
7
- export const DyFM_errorsFlag = 'DyFM-ERRORS-OBJECT';
8
-
9
- /**
10
- * This obj is the saved version of the DyFM_Error object.
11
- * It is used to store the error in the database and its statistics.
12
- *
13
- * @example
14
- * ```ts
15
- * const errors: DyFM_Errors<DyFM_Error> = new DyFM_Errors({
16
- * message: 'Error message',
17
- * error: new DyFM_Error({
18
- * message: 'Error message',
19
- * }),
20
- * });
21
- * ```
22
- */
23
- export class DyFM_Errors<T_Error extends DyFM_Error> extends DyFM_Metadata {
24
- readonly flag?: string = DyFM_errorsFlag;
25
-
26
- source?: string;
27
- issuer?: string;
28
- username?: string;
29
- /** In which system versions this error occurred. */
30
- versions?: string[] = [];
31
- localTime?: string;
32
- region?: string;
33
-
34
- message?: string;
35
- exception?: string;
36
- exceptionObj?: any;
37
-
38
- stackTrace?: string[] = [];
39
- error?: any;
40
-
41
- count?: number = 1;
42
-
43
- d_error?: T_Error;
44
-
45
- additionalContent?: any;
46
-
47
- level?: DyFM_ErrorLevel;
48
- priority?: number;
49
- duplications?: DyFM_Errors<T_Error>[] = [];
50
-
51
- constructor(
52
- set?: DyFM_Errors<T_Error>
53
- ) {
54
- super(set);
55
-
56
- if (set) {
57
- Object.assign(this, set);
58
- }
59
- }
60
- }
61
-
62
- export const DyFM_errors_dataParams: DyFM_DataModel_Params<DyFM_Errors<DyFM_Error>> =
63
- new DyFM_DataModel_Params<DyFM_Errors<DyFM_Error>>({
64
- dataName: 'errors',
65
- properties: {
66
- flag: { type: 'string' },
67
-
68
- issuer: { type: 'string' },
69
- username: { type: 'string' },
70
- versions: { type: 'string[]' },
71
-
72
- localTime: { type: 'string' },
73
- region: { type: 'string' },
74
-
75
- message: { type: 'string' },
76
- exception: { type: 'string' },
77
- exceptionObj: { type: 'any' },
78
-
79
- stackTrace: { type: 'string[]' },
80
- error: { type: 'any' },
81
-
82
- count: { type: 'number' },
83
-
84
- d_error: { type: 'DyFM_Error' },
85
-
86
- additionalContent: { type: 'any' },
87
-
88
- level: { type: 'DyFM_ErrorLevel' },
89
- priority: { type: 'number' },
90
- duplications: { type: 'DyNTS_Error[]' },
91
- },
1
+ import { DyFM_DataModel_Params } from '../control-models/data-model-params.control-model';
2
+ import { DyFM_ErrorLevel } from '../../_enums/error-level.enum';
3
+ import { DyFM_Error } from '../control-models/error.control-model';
4
+ import { DyFM_Metadata } from './metadata.data-model';
5
+
6
+
7
+ export const DyFM_errorsFlag = 'DyFM-ERRORS-OBJECT';
8
+
9
+
10
+ /**
11
+ * Single fix-attempt entry on an error record. Append-only every call to the
12
+ * `recordFixAttempt` data-service method adds a new entry to `fixAttempts[]`.
13
+ *
14
+ * Intended use: after diagnosing the root cause of an error and shipping a fix,
15
+ * mark the error with the hypothesis + target version. If a NEW occurrence of
16
+ * the same error then arrives carrying a version >= this attempt's version,
17
+ * the dedup branch of `recordError` flips `regressedAfterFix: true` — the
18
+ * dashboard can highlight it as a failed hypothesis worth re-investigating.
19
+ */
20
+ export interface DyFM_Errors_FixAttempt {
21
+ /** When the fix was claimed. */
22
+ at: Date | string;
23
+ /** Issuer / username who claimed the fix. */
24
+ by: string;
25
+ /** The app version that contains the claimed fix (e.g. `01.15.117`). */
26
+ version: string;
27
+ /** Plain-text root-cause hypothesis that justified the fix. */
28
+ hypothesis: string;
29
+ }
30
+
31
+ /**
32
+ * This obj is the saved version of the DyFM_Error object.
33
+ * It is used to store the error in the database and its statistics.
34
+ *
35
+ * @example
36
+ * ```ts
37
+ * const errors: DyFM_Errors<DyFM_Error> = new DyFM_Errors({
38
+ * message: 'Error message',
39
+ * error: new DyFM_Error({
40
+ * message: 'Error message',
41
+ * }),
42
+ * });
43
+ * ```
44
+ */
45
+ export class DyFM_Errors<T_Error extends DyFM_Error> extends DyFM_Metadata {
46
+ readonly flag?: string = DyFM_errorsFlag;
47
+
48
+ source?: string;
49
+ issuer?: string;
50
+ username?: string;
51
+ /** In which system versions this error occurred. */
52
+ versions?: string[] = [];
53
+ localTime?: string;
54
+ region?: string;
55
+
56
+ message?: string;
57
+ exception?: string;
58
+ exceptionObj?: any;
59
+
60
+ stackTrace?: string[] = [];
61
+ error?: any;
62
+
63
+ count?: number = 1;
64
+
65
+ d_error?: T_Error;
66
+
67
+ additionalContent?: any;
68
+
69
+ level?: DyFM_ErrorLevel;
70
+ priority?: number;
71
+ duplications?: DyFM_Errors<T_Error>[] = [];
72
+
73
+ // ─── Fix tracking (append-only audit + quick-access aliases) ────────────────
74
+
75
+ /**
76
+ * Append-only audit log of fix attempts. New entries via `recordFixAttempt`
77
+ * on the data-service. Never overwritten / pruned — full hypothesis history
78
+ * stays available even when one hypothesis turns out to be wrong and the
79
+ * next attempt is logged.
80
+ */
81
+ fixAttempts?: DyFM_Errors_FixAttempt[] = [];
82
+
83
+ /** Convenience alias — last entry of `fixAttempts.at`. */
84
+ lastFixedAt?: Date | string;
85
+ /** Convenience alias — last entry of `fixAttempts.by`. */
86
+ lastFixedBy?: string;
87
+ /** Convenience alias — last entry of `fixAttempts.version`. */
88
+ lastFixedInVersion?: string;
89
+ /** Convenience alias last entry of `fixAttempts.hypothesis`. */
90
+ lastFixHypothesis?: string;
91
+
92
+ /**
93
+ * Set to `true` in the `recordError` dedup branch when a NEW occurrence
94
+ * arrives carrying a `versions[0]` >= `lastFixedInVersion`. Indicates the
95
+ * most recent fix attempt did not actually fix the root cause — surface as
96
+ * a flag on the dashboard so the next investigator knows to dig deeper than
97
+ * "already fixed in vN".
98
+ */
99
+ regressedAfterFix?: boolean;
100
+
101
+ constructor(
102
+ set?: DyFM_Errors<T_Error>
103
+ ) {
104
+ super(set);
105
+
106
+ if (set) {
107
+ Object.assign(this, set);
108
+ }
109
+ }
110
+ }
111
+
112
+ export const DyFM_errors_dataParams: DyFM_DataModel_Params<DyFM_Errors<DyFM_Error>> =
113
+ new DyFM_DataModel_Params<DyFM_Errors<DyFM_Error>>({
114
+ dataName: 'errors',
115
+ properties: {
116
+ flag: { type: 'string' },
117
+
118
+ issuer: { type: 'string' },
119
+ username: { type: 'string' },
120
+ versions: { type: 'string[]' },
121
+
122
+ localTime: { type: 'string' },
123
+ region: { type: 'string' },
124
+
125
+ message: { type: 'string' },
126
+ exception: { type: 'string' },
127
+ exceptionObj: { type: 'any' },
128
+
129
+ stackTrace: { type: 'string[]' },
130
+ error: { type: 'any' },
131
+
132
+ count: { type: 'number' },
133
+
134
+ d_error: { type: 'DyFM_Error' },
135
+
136
+ additionalContent: { type: 'any' },
137
+
138
+ level: { type: 'DyFM_ErrorLevel' },
139
+ priority: { type: 'number' },
140
+ duplications: { type: 'DyNTS_Error[]' },
141
+
142
+ fixAttempts: { type: 'any' },
143
+ lastFixedAt: { type: 'Date' },
144
+ lastFixedBy: { type: 'string' },
145
+ lastFixedInVersion: { type: 'string' },
146
+ lastFixHypothesis: { type: 'string' },
147
+ regressedAfterFix: { type: 'boolean' },
148
+ },
92
149
  });
@@ -1,184 +1,184 @@
1
- import { DyFM_Metadata } from './metadata.data-model';
2
-
3
- describe('| DyFM_Metadata', (): void => {
4
- it('| should create an instance without initial data', (): void => {
5
- const instance = new DyFM_Metadata();
6
- expect(instance).toBeTruthy();
7
- expect(instance.__created).toBeInstanceOf(Date);
8
- expect(instance.__lastModified).toBeInstanceOf(Date);
9
- expect(instance.__v).toBe(0);
10
- });
11
-
12
- it('| should create an instance with initial data', (): void => {
13
- const initialData: DyFM_Metadata = {
14
- _id: 'test-id',
15
- __created: new Date('2023-01-01'),
16
- __createdBy: 'user1',
17
- __lastModified: new Date('2023-01-02'),
18
- __lastModifiedBy: 'user2',
19
- __v: 1
20
- };
21
- const instance = new DyFM_Metadata(initialData);
22
-
23
- expect(instance._id).toBe('test-id');
24
- expect(instance.__created).toEqual(new Date('2023-01-01'));
25
- expect(instance.__createdBy).toBe('user1');
26
- expect(instance.__lastModified).toEqual(new Date('2023-01-02'));
27
- expect(instance.__lastModifiedBy).toBe('user2');
28
- expect(instance.__v).toBe(1);
29
- });
30
-
31
- it('| should set default values when not provided', (): void => {
32
- const instance = new DyFM_Metadata({});
33
-
34
- expect(instance.__created).toBeInstanceOf(Date);
35
- expect(instance.__lastModified).toBeInstanceOf(Date);
36
- expect(instance.__v).toBe(0);
37
- });
38
-
39
- it('| should handle init parameter with id and issuer', (): void => {
40
- const instance = new DyFM_Metadata(undefined, {
41
- id: 'init-id',
42
- issuer: 'init-user'
43
- });
44
-
45
- expect(instance._id).toBe('init-id');
46
- expect(instance.__createdBy).toBe('init-user');
47
- expect(instance.__lastModifiedBy).toBe('init-user');
48
- });
49
-
50
- it('| should not override existing _id with init id', (): void => {
51
- const instance = new DyFM_Metadata(
52
- { _id: 'existing-id' },
53
- { id: 'init-id', issuer: 'user' }
54
- );
55
-
56
- expect(instance._id).toBe('existing-id');
57
- });
58
-
59
- it('| should not override existing __createdBy with init issuer', (): void => {
60
- const instance = new DyFM_Metadata(
61
- { __createdBy: 'existing-user' },
62
- { issuer: 'init-user' }
63
- );
64
-
65
- expect(instance.__createdBy).toBe('existing-user');
66
- });
67
-
68
- it('| should handle archived data', (): void => {
69
- const archivedDate = new Date('2023-01-01');
70
- const instance = new DyFM_Metadata({
71
- _archived: archivedDate,
72
- _originalId: 'original-id'
73
- });
74
-
75
- expect(instance._archived).toEqual(archivedDate);
76
- expect(instance._originalId).toBe('original-id');
77
- });
78
-
79
- it('| should handle deleted data', (): void => {
80
- const deletedDate = new Date('2023-01-01');
81
- const instance = new DyFM_Metadata({
82
- _deleted: deletedDate,
83
- _deletedBy: 'deleter'
84
- } as any);
85
- instance._deleted = deletedDate;
86
- instance._deletedBy = 'deleter';
87
-
88
- expect(instance._deleted).toEqual(deletedDate);
89
- expect(instance._deletedBy).toBe('deleter');
90
- });
91
-
92
- it('| should set _id to undefined when _id is falsy but not undefined', (): void => {
93
- // Test case for line 40-42: if (!set._id && set._id !== undefined)
94
- // This happens when _id is null, empty string, 0, false, etc.
95
- const instance1 = new DyFM_Metadata({ _id: null as any });
96
- expect(instance1._id).toBeUndefined();
97
-
98
- const instance2 = new DyFM_Metadata({ _id: '' as any });
99
- expect(instance2._id).toBeUndefined();
100
-
101
- const instance3 = new DyFM_Metadata({ _id: 0 as any });
102
- expect(instance3._id).toBeUndefined();
103
- });
104
-
105
- describe('| updateMetadata', (): void => {
106
- it('| should update metadata correctly', (): void => {
107
- const data = new DyFM_Metadata();
108
- const updated = DyFM_Metadata.updateMetadata!(data, 'updater', 'new-id');
109
-
110
- expect(updated._id).toBe('new-id');
111
- expect(updated.__createdBy).toBe('updater');
112
- expect(updated.__lastModifiedBy).toBe('updater');
113
- expect(updated.__lastModified).toBeInstanceOf(Date);
114
- expect(updated.__v).toBe(1);
115
- });
116
-
117
- it('| should increment version on update', (): void => {
118
- const data = new DyFM_Metadata({ __v: 5 });
119
- const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
120
-
121
- expect(updated.__v).toBe(6);
122
- });
123
-
124
- it('| should set version to 1 if not present', (): void => {
125
- const data = new DyFM_Metadata({ __v: undefined });
126
- const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
127
-
128
- expect(updated.__v).toBe(1);
129
- });
130
-
131
- it('| should not override existing _id if id not provided', (): void => {
132
- const data = new DyFM_Metadata({ _id: 'existing-id' });
133
- const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
134
-
135
- expect(updated._id).toBe('existing-id');
136
- });
137
-
138
- it('| should set _id if not present and id provided', (): void => {
139
- const data = new DyFM_Metadata({ _id: undefined });
140
- const updated = DyFM_Metadata.updateMetadata!(data, 'updater', 'new-id');
141
-
142
- expect(updated._id).toBe('new-id');
143
- });
144
-
145
- it('| should throw error when updating deleted data', (): void => {
146
- const data = new DyFM_Metadata({ _deleted: new Date() } as any);
147
- data._deleted = new Date();
148
-
149
- expect(() => {
150
- DyFM_Metadata.updateMetadata!(data, 'updater');
151
- }).toThrowError('Cannot update metadata of deleted data');
152
- });
153
-
154
- it('| should return data as-is if data is null', (): void => {
155
- const result = DyFM_Metadata.updateMetadata!(null as any, 'updater');
156
-
157
- expect(result).toBeNull();
158
- });
159
-
160
- it('| should set __created if not present', (): void => {
161
- const data = new DyFM_Metadata({ __created: undefined });
162
- const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
163
-
164
- expect(updated.__created).toBeInstanceOf(Date);
165
- });
166
-
167
- it('| should set __createdBy if not present', (): void => {
168
- const data = new DyFM_Metadata({ __createdBy: undefined });
169
- const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
170
-
171
- expect(updated.__createdBy).toBe('updater');
172
- });
173
-
174
- it('| should set __created if not present (branch coverage)', (): void => {
175
- // Test case for line 114-116: if (!data.__created)
176
- const data = new DyFM_Metadata();
177
- data.__created = undefined as any;
178
- const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
179
-
180
- expect(updated.__created).toBeInstanceOf(Date);
181
- });
182
- });
183
- });
184
-
1
+ import { DyFM_Metadata } from './metadata.data-model';
2
+
3
+ describe('| DyFM_Metadata', (): void => {
4
+ it('| should create an instance without initial data', (): void => {
5
+ const instance = new DyFM_Metadata();
6
+ expect(instance).toBeTruthy();
7
+ expect(instance.__created).toBeInstanceOf(Date);
8
+ expect(instance.__lastModified).toBeInstanceOf(Date);
9
+ expect(instance.__v).toBe(0);
10
+ });
11
+
12
+ it('| should create an instance with initial data', (): void => {
13
+ const initialData: DyFM_Metadata = {
14
+ _id: 'test-id',
15
+ __created: new Date('2023-01-01'),
16
+ __createdBy: 'user1',
17
+ __lastModified: new Date('2023-01-02'),
18
+ __lastModifiedBy: 'user2',
19
+ __v: 1
20
+ };
21
+ const instance = new DyFM_Metadata(initialData);
22
+
23
+ expect(instance._id).toBe('test-id');
24
+ expect(instance.__created).toEqual(new Date('2023-01-01'));
25
+ expect(instance.__createdBy).toBe('user1');
26
+ expect(instance.__lastModified).toEqual(new Date('2023-01-02'));
27
+ expect(instance.__lastModifiedBy).toBe('user2');
28
+ expect(instance.__v).toBe(1);
29
+ });
30
+
31
+ it('| should set default values when not provided', (): void => {
32
+ const instance = new DyFM_Metadata({});
33
+
34
+ expect(instance.__created).toBeInstanceOf(Date);
35
+ expect(instance.__lastModified).toBeInstanceOf(Date);
36
+ expect(instance.__v).toBe(0);
37
+ });
38
+
39
+ it('| should handle init parameter with id and issuer', (): void => {
40
+ const instance = new DyFM_Metadata(undefined, {
41
+ id: 'init-id',
42
+ issuer: 'init-user'
43
+ });
44
+
45
+ expect(instance._id).toBe('init-id');
46
+ expect(instance.__createdBy).toBe('init-user');
47
+ expect(instance.__lastModifiedBy).toBe('init-user');
48
+ });
49
+
50
+ it('| should not override existing _id with init id', (): void => {
51
+ const instance = new DyFM_Metadata(
52
+ { _id: 'existing-id' },
53
+ { id: 'init-id', issuer: 'user' }
54
+ );
55
+
56
+ expect(instance._id).toBe('existing-id');
57
+ });
58
+
59
+ it('| should not override existing __createdBy with init issuer', (): void => {
60
+ const instance = new DyFM_Metadata(
61
+ { __createdBy: 'existing-user' },
62
+ { issuer: 'init-user' }
63
+ );
64
+
65
+ expect(instance.__createdBy).toBe('existing-user');
66
+ });
67
+
68
+ it('| should handle archived data', (): void => {
69
+ const archivedDate = new Date('2023-01-01');
70
+ const instance = new DyFM_Metadata({
71
+ _archived: archivedDate,
72
+ _originalId: 'original-id'
73
+ });
74
+
75
+ expect(instance._archived).toEqual(archivedDate);
76
+ expect(instance._originalId).toBe('original-id');
77
+ });
78
+
79
+ it('| should handle deleted data', (): void => {
80
+ const deletedDate = new Date('2023-01-01');
81
+ const instance = new DyFM_Metadata({
82
+ _deleted: deletedDate,
83
+ _deletedBy: 'deleter'
84
+ } as any);
85
+ instance._deleted = deletedDate;
86
+ instance._deletedBy = 'deleter';
87
+
88
+ expect(instance._deleted).toEqual(deletedDate);
89
+ expect(instance._deletedBy).toBe('deleter');
90
+ });
91
+
92
+ it('| should set _id to undefined when _id is falsy but not undefined', (): void => {
93
+ // Test case for line 40-42: if (!set._id && set._id !== undefined)
94
+ // This happens when _id is null, empty string, 0, false, etc.
95
+ const instance1 = new DyFM_Metadata({ _id: null as any });
96
+ expect(instance1._id).toBeUndefined();
97
+
98
+ const instance2 = new DyFM_Metadata({ _id: '' as any });
99
+ expect(instance2._id).toBeUndefined();
100
+
101
+ const instance3 = new DyFM_Metadata({ _id: 0 as any });
102
+ expect(instance3._id).toBeUndefined();
103
+ });
104
+
105
+ describe('| updateMetadata', (): void => {
106
+ it('| should update metadata correctly', (): void => {
107
+ const data = new DyFM_Metadata();
108
+ const updated = DyFM_Metadata.updateMetadata!(data, 'updater', 'new-id');
109
+
110
+ expect(updated._id).toBe('new-id');
111
+ expect(updated.__createdBy).toBe('updater');
112
+ expect(updated.__lastModifiedBy).toBe('updater');
113
+ expect(updated.__lastModified).toBeInstanceOf(Date);
114
+ expect(updated.__v).toBe(1);
115
+ });
116
+
117
+ it('| should increment version on update', (): void => {
118
+ const data = new DyFM_Metadata({ __v: 5 });
119
+ const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
120
+
121
+ expect(updated.__v).toBe(6);
122
+ });
123
+
124
+ it('| should set version to 1 if not present', (): void => {
125
+ const data = new DyFM_Metadata({ __v: undefined });
126
+ const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
127
+
128
+ expect(updated.__v).toBe(1);
129
+ });
130
+
131
+ it('| should not override existing _id if id not provided', (): void => {
132
+ const data = new DyFM_Metadata({ _id: 'existing-id' });
133
+ const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
134
+
135
+ expect(updated._id).toBe('existing-id');
136
+ });
137
+
138
+ it('| should set _id if not present and id provided', (): void => {
139
+ const data = new DyFM_Metadata({ _id: undefined });
140
+ const updated = DyFM_Metadata.updateMetadata!(data, 'updater', 'new-id');
141
+
142
+ expect(updated._id).toBe('new-id');
143
+ });
144
+
145
+ it('| should throw error when updating deleted data', (): void => {
146
+ const data = new DyFM_Metadata({ _deleted: new Date() } as any);
147
+ data._deleted = new Date();
148
+
149
+ expect(() => {
150
+ DyFM_Metadata.updateMetadata!(data, 'updater');
151
+ }).toThrowError('Cannot update metadata of deleted data');
152
+ });
153
+
154
+ it('| should return data as-is if data is null', (): void => {
155
+ const result = DyFM_Metadata.updateMetadata!(null as any, 'updater');
156
+
157
+ expect(result).toBeNull();
158
+ });
159
+
160
+ it('| should set __created if not present', (): void => {
161
+ const data = new DyFM_Metadata({ __created: undefined });
162
+ const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
163
+
164
+ expect(updated.__created).toBeInstanceOf(Date);
165
+ });
166
+
167
+ it('| should set __createdBy if not present', (): void => {
168
+ const data = new DyFM_Metadata({ __createdBy: undefined });
169
+ const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
170
+
171
+ expect(updated.__createdBy).toBe('updater');
172
+ });
173
+
174
+ it('| should set __created if not present (branch coverage)', (): void => {
175
+ // Test case for line 114-116: if (!data.__created)
176
+ const data = new DyFM_Metadata();
177
+ data.__created = undefined as any;
178
+ const updated = DyFM_Metadata.updateMetadata!(data, 'updater');
179
+
180
+ expect(updated.__created).toBeInstanceOf(Date);
181
+ });
182
+ });
183
+ });
184
+