@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,110 +1,110 @@
1
-
2
- /**
3
- * @example
4
- * // by email:
5
- * { email: email }
6
- * //
7
- * @example
8
- * // or by id that is in list:
9
- * { userIds: { $in: this.userId } }
10
- * //
11
- * @example
12
- * // or by userIds:
13
- * { userId: { $in: userIds } }
14
- * //
15
- * @example
16
- * // or by number or Date that is Greater Than AND Less Than:
17
- * { points: { $gt: 2, $lt: 14 } }
18
- * // further tools (syntax matches with $gt):
19
- * $eq: // Matches values that are EQual to a specified value.
20
- * $gte: // Matches values that are Greater Than OR Equal to a specified value.
21
- * $lte: // Matches values that are Less Than or Equal to a specified value.
22
- * $ne: // Matches all values that are Not Equal to a specified value.
23
- * $nin: // Matches None of the values specified IN an array.
24
- * //
25
- * @returns {T} data: T
26
- */
27
- export type DyFM_DBFilter<T> =
28
- DyFM_DBFilterSimple<T> |
29
- DyFM_DBFilterOR<T> |
30
- DyFM_DBFilterNOR<T>;
31
-
32
- /**
33
- * A simple filter for a DynamoDB query.
34
- */
35
- export type DyFM_DBFilterSimple<T> = {
36
- [K in keyof T]?: T[K] | DyFM_DBFilterExpressions<T[K] | boolean>;
37
- } & {
38
- [path: string]: any;
39
- };
40
-
41
- export type DyFM_DBFilterExpressions<T> = {
42
- /**
43
- * Matches values that are includes the value; This works only when T[K] is an array!
44
- */
45
- $in?: T | T[] | any,
46
- /**
47
- * Matches values that are EQual to a specified value.
48
- */
49
- $eq?: T,
50
- /**
51
- * Matches values that are Greater Than a specified value.
52
- */
53
- $gt?: number | Date,
54
- /**
55
- * Matches values that are Greater Than OR Equal to a specified value.
56
- */
57
- $gte?: number | Date,
58
- /**
59
- * Matches values that are Less Than a specified value.
60
- */
61
- $lt?: number | Date,
62
- /**
63
- * Matches values that are Less Than or Equal to a specified value.
64
- */
65
- $lte?: number | Date,
66
- /**
67
- * Matches all values that are Not Equal to a specified value.
68
- */
69
- $ne?: any,
70
- /**
71
- * Matches None of the values specified IN an array.
72
- */
73
- $nin?: T | T[] | any,
74
- /**
75
- * Inverts the effect of a query expression and returns documents that do not match the query expression.
76
- */
77
- $not?: T | {
78
- $regex?: RegExp | string,
79
- },
80
- /**
81
- * Performs a regular expression on the field's value, and selects documents that match the regular expression.
82
- */
83
- $exists?: boolean,
84
- /**
85
- * Selects documents if a field is of the specified type.
86
- */
87
- $type?: string,
88
- };
89
-
90
- /**
91
- * Joins query clauses with a logical AND returns all documents that match the conditions of both clauses.
92
- */
93
- export type DyFM_DBFilterNOR<T> = {
94
- /**
95
- * Joins query clauses with a logical NOR returns all documents that fail to match both clauses.
96
- */
97
- $nor: DyFM_DBFilterSimple<T>[];
98
- }
99
-
100
- /**
101
- * Joins query clauses with a logical AND returns all documents that match the conditions of both clauses.
102
- */
103
- export type DyFM_DBFilterOR<T> = {
104
- /**
105
- * Joins query clauses with a logical OR returns all documents that match the conditions of either clause.
106
- */
107
- $or: DyFM_DBFilterSimple<T>[];
108
- }
109
-
110
-
1
+
2
+ /**
3
+ * @example
4
+ * // by email:
5
+ * { email: email }
6
+ * //
7
+ * @example
8
+ * // or by id that is in list:
9
+ * { userIds: { $in: this.userId } }
10
+ * //
11
+ * @example
12
+ * // or by userIds:
13
+ * { userId: { $in: userIds } }
14
+ * //
15
+ * @example
16
+ * // or by number or Date that is Greater Than AND Less Than:
17
+ * { points: { $gt: 2, $lt: 14 } }
18
+ * // further tools (syntax matches with $gt):
19
+ * $eq: // Matches values that are EQual to a specified value.
20
+ * $gte: // Matches values that are Greater Than OR Equal to a specified value.
21
+ * $lte: // Matches values that are Less Than or Equal to a specified value.
22
+ * $ne: // Matches all values that are Not Equal to a specified value.
23
+ * $nin: // Matches None of the values specified IN an array.
24
+ * //
25
+ * @returns {T} data: T
26
+ */
27
+ export type DyFM_DBFilter<T> =
28
+ DyFM_DBFilterSimple<T> |
29
+ DyFM_DBFilterOR<T> |
30
+ DyFM_DBFilterNOR<T>;
31
+
32
+ /**
33
+ * A simple filter for a DynamoDB query.
34
+ */
35
+ export type DyFM_DBFilterSimple<T> = {
36
+ [K in keyof T]?: T[K] | DyFM_DBFilterExpressions<T[K] | boolean>;
37
+ } & {
38
+ [path: string]: any;
39
+ };
40
+
41
+ export type DyFM_DBFilterExpressions<T> = {
42
+ /**
43
+ * Matches values that are includes the value; This works only when T[K] is an array!
44
+ */
45
+ $in?: T | T[] | any,
46
+ /**
47
+ * Matches values that are EQual to a specified value.
48
+ */
49
+ $eq?: T,
50
+ /**
51
+ * Matches values that are Greater Than a specified value.
52
+ */
53
+ $gt?: number | Date,
54
+ /**
55
+ * Matches values that are Greater Than OR Equal to a specified value.
56
+ */
57
+ $gte?: number | Date,
58
+ /**
59
+ * Matches values that are Less Than a specified value.
60
+ */
61
+ $lt?: number | Date,
62
+ /**
63
+ * Matches values that are Less Than or Equal to a specified value.
64
+ */
65
+ $lte?: number | Date,
66
+ /**
67
+ * Matches all values that are Not Equal to a specified value.
68
+ */
69
+ $ne?: any,
70
+ /**
71
+ * Matches None of the values specified IN an array.
72
+ */
73
+ $nin?: T | T[] | any,
74
+ /**
75
+ * Inverts the effect of a query expression and returns documents that do not match the query expression.
76
+ */
77
+ $not?: T | {
78
+ $regex?: RegExp | string,
79
+ },
80
+ /**
81
+ * Performs a regular expression on the field's value, and selects documents that match the regular expression.
82
+ */
83
+ $exists?: boolean,
84
+ /**
85
+ * Selects documents if a field is of the specified type.
86
+ */
87
+ $type?: string,
88
+ };
89
+
90
+ /**
91
+ * Joins query clauses with a logical AND returns all documents that match the conditions of both clauses.
92
+ */
93
+ export type DyFM_DBFilterNOR<T> = {
94
+ /**
95
+ * Joins query clauses with a logical NOR returns all documents that fail to match both clauses.
96
+ */
97
+ $nor: DyFM_DBFilterSimple<T>[];
98
+ }
99
+
100
+ /**
101
+ * Joins query clauses with a logical AND returns all documents that match the conditions of both clauses.
102
+ */
103
+ export type DyFM_DBFilterOR<T> = {
104
+ /**
105
+ * Joins query clauses with a logical OR returns all documents that match the conditions of either clause.
106
+ */
107
+ $or: DyFM_DBFilterSimple<T>[];
108
+ }
109
+
110
+
@@ -1,5 +1,5 @@
1
-
2
-
3
- export type DyFM_DBSort<T> = {
4
- [K in keyof T]?: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
1
+
2
+
3
+ export type DyFM_DBSort<T> = {
4
+ [K in keyof T]?: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
5
5
  }
@@ -1,68 +1,68 @@
1
-
2
-
3
- import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
4
- import { DyFM_RangeValue } from '../control-models/range-value.control-model';
5
- import { DyFM_DBFilterExpressions } from './db-filter.type';
6
-
7
- /**
8
- * A filter for a DynamoDB queries.
9
- *
10
- * it should be the value, a range or an array of the searching values
11
- */
12
- export type DyFM_DSFilter<T> = {
13
- [K in keyof T]?: DyFM_DSFilterProperty<T, K>;
14
- };
15
- export type DyFM_DSFilterProperty<T, K extends keyof T> = T[K] |
16
- T[K][] |
17
- DyFM_RangeValue<T[K]> |
18
- DyFM_SpecialSearch<T[K]> |
19
- DyFM_SpecialNestSearch |
20
- DyFM_DBFilterExpressions<T[K]>;
21
-
22
- export interface DyFM_SpecialSearch<T> {
23
- isSpecialSearch: true;
24
- searchValue: T | T[];
25
- type: DyFM_SpecialSearch_Type;
26
- }
27
-
28
- /**
29
- * searches for a nested properties in the object
30
- */
31
- export interface DyFM_SpecialNestSearch {
32
- isSpecialNestSearch: true;
33
- nestedPropertySearches: DyFM_NestPropertySearch<any>[];
34
- }
35
-
36
- /**
37
- * can search for nested properties in arrays as well with the following syntax used in key:
38
- * nestKeys: [ 'arrayProperty', '*', 'nestedPropertySearch' ]
39
- */
40
- export interface DyFM_NestPropertySearch<T> {
41
- nestKeys: string[];
42
- valueType: DyFM_BasicProperty_Type;
43
- search: T |
44
- T[] |
45
- DyFM_RangeValue<T> |
46
- DyFM_SpecialSearch<T>;
47
- }
48
-
49
- export enum DyFM_SpecialSearch_Type {
50
- /**
51
- * searches each word in the string, returns true if ANY word is found in ANY order
52
- * */
53
- stringListSearchAny = 'stringListSearchAny',
54
- /**
55
- * searches each word in the string, returns true if ALL words are found in ANY order
56
- * */
57
- stringListSearch = 'stringListSearch',
58
- /**
59
- * searches each word in the string, returns true if ALL words are found in the SAME order
60
- * */
61
- stringListSearchOrdered = 'stringListSearchOrdered',
62
- }
63
-
64
-
65
-
66
-
67
-
68
-
1
+
2
+
3
+ import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
4
+ import { DyFM_RangeValue } from '../control-models/range-value.control-model';
5
+ import { DyFM_DBFilterExpressions } from './db-filter.type';
6
+
7
+ /**
8
+ * A filter for a DynamoDB queries.
9
+ *
10
+ * it should be the value, a range or an array of the searching values
11
+ */
12
+ export type DyFM_DSFilter<T> = {
13
+ [K in keyof T]?: DyFM_DSFilterProperty<T, K>;
14
+ };
15
+ export type DyFM_DSFilterProperty<T, K extends keyof T> = T[K] |
16
+ T[K][] |
17
+ DyFM_RangeValue<T[K]> |
18
+ DyFM_SpecialSearch<T[K]> |
19
+ DyFM_SpecialNestSearch |
20
+ DyFM_DBFilterExpressions<T[K]>;
21
+
22
+ export interface DyFM_SpecialSearch<T> {
23
+ isSpecialSearch: true;
24
+ searchValue: T | T[];
25
+ type: DyFM_SpecialSearch_Type;
26
+ }
27
+
28
+ /**
29
+ * searches for a nested properties in the object
30
+ */
31
+ export interface DyFM_SpecialNestSearch {
32
+ isSpecialNestSearch: true;
33
+ nestedPropertySearches: DyFM_NestPropertySearch<any>[];
34
+ }
35
+
36
+ /**
37
+ * can search for nested properties in arrays as well with the following syntax used in key:
38
+ * nestKeys: [ 'arrayProperty', '*', 'nestedPropertySearch' ]
39
+ */
40
+ export interface DyFM_NestPropertySearch<T> {
41
+ nestKeys: string[];
42
+ valueType: DyFM_BasicProperty_Type;
43
+ search: T |
44
+ T[] |
45
+ DyFM_RangeValue<T> |
46
+ DyFM_SpecialSearch<T>;
47
+ }
48
+
49
+ export enum DyFM_SpecialSearch_Type {
50
+ /**
51
+ * searches each word in the string, returns true if ANY word is found in ANY order
52
+ * */
53
+ stringListSearchAny = 'stringListSearchAny',
54
+ /**
55
+ * searches each word in the string, returns true if ALL words are found in ANY order
56
+ * */
57
+ stringListSearch = 'stringListSearch',
58
+ /**
59
+ * searches each word in the string, returns true if ALL words are found in the SAME order
60
+ * */
61
+ stringListSearchOrdered = 'stringListSearchOrdered',
62
+ }
63
+
64
+
65
+
66
+
67
+
68
+
@@ -1,21 +1,21 @@
1
- import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
2
-
3
-
4
-
5
- export type DyFM_DSSort = DyFM_DSPropertySort | DyFM_DSNestedPropertySort;
6
- export interface DyFM_DSPropertySort {
7
- key: string;
8
- order: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
9
- }
10
-
11
- export interface DyFM_DSNestedPropertySort {
12
- isNestedPropertySort: true;
13
- /**
14
- * the key to sort by
15
- * (can be an array that is used for sorting by nested properties)
16
- */
17
- nestKeys: string[];
18
- valueType: DyFM_BasicProperty_Type;
19
- order: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
20
- }
21
-
1
+ import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
2
+
3
+
4
+
5
+ export type DyFM_DSSort = DyFM_DSPropertySort | DyFM_DSNestedPropertySort;
6
+ export interface DyFM_DSPropertySort {
7
+ key: string;
8
+ order: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
9
+ }
10
+
11
+ export interface DyFM_DSNestedPropertySort {
12
+ isNestedPropertySort: true;
13
+ /**
14
+ * the key to sort by
15
+ * (can be an array that is used for sorting by nested properties)
16
+ */
17
+ nestKeys: string[];
18
+ valueType: DyFM_BasicProperty_Type;
19
+ order: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
20
+ }
21
+
@@ -1,88 +1,88 @@
1
- import { DyFM_AI_Provider } from '../_enums/ai-provider.enum';
2
-
3
- /**
4
- * AI modell hivatkozas formatum: {provider}:{model}
5
- *
6
- * Peldak: "open-ai:gpt-4o", "anthropic:claude-3-5-sonnet-latest", "fdp-ai:fdp-base-1"
7
- * A provider resz a DyFM_AI_Provider enum erteke, a model resz a provider sajat modell azonositoja.
8
- */
9
- export class DyFM_AI_ModelRef_Util {
10
- /** az elvlaszto karakter a provider es modell kozott */
11
- private static readonly separator: string = ':';
12
-
13
- /** az osszes ervenyes provider ertek gyorstarhely */
14
- private static readonly validProviders: Set<string> = new Set(
15
- Object.values(DyFM_AI_Provider)
16
- );
17
-
18
- /**
19
- * Osszeallitas provider + model -bol
20
- * @param provider - AI provider enum ertek
21
- * @param model - provider-specifikus modell azonosito
22
- */
23
- static create(provider: DyFM_AI_Provider, model: string): string {
24
- return `${provider}${DyFM_AI_ModelRef_Util.separator}${model}`;
25
- }
26
-
27
- /**
28
- * Szetbontas provider + model -re
29
- * @param modelRef - formatum: {provider}:{model}
30
- */
31
- static parse(modelRef: string): { provider: DyFM_AI_Provider; model: string } {
32
- const separatorIndex: number = modelRef.indexOf(DyFM_AI_ModelRef_Util.separator);
33
-
34
- if (separatorIndex < 0) {
35
- throw new Error(`Ervenytelen modelRef formatum: "${modelRef}" -- hianyzik a "${DyFM_AI_ModelRef_Util.separator}" elvlaszto`);
36
- }
37
-
38
- const provider: string = modelRef.substring(0, separatorIndex);
39
- const model: string = modelRef.substring(separatorIndex + 1);
40
-
41
- if (!DyFM_AI_ModelRef_Util.validProviders.has(provider)) {
42
- throw new Error(`Ismeretlen AI provider: "${provider}" a modelRef-ben: "${modelRef}"`);
43
- }
44
-
45
- if (!model) {
46
- throw new Error(`Ures modell azonosito a modelRef-ben: "${modelRef}"`);
47
- }
48
-
49
- return { provider: provider as DyFM_AI_Provider, model: model };
50
- }
51
-
52
- /**
53
- * Provider kinyerese a modelRef-bol
54
- * @param modelRef - formatum: {provider}:{model}
55
- */
56
- static getProvider(modelRef: string): DyFM_AI_Provider {
57
- return DyFM_AI_ModelRef_Util.parse(modelRef).provider;
58
- }
59
-
60
- /**
61
- * Model kinyerese a modelRef-bol
62
- * @param modelRef - formatum: {provider}:{model}
63
- */
64
- static getModel(modelRef: string): string {
65
- return DyFM_AI_ModelRef_Util.parse(modelRef).model;
66
- }
67
-
68
- /**
69
- * Validalas -- ellenorzi, hogy a modelRef megfelel-e a {provider}:{model} formatumnak
70
- * @param modelRef - a vizsgalando string
71
- */
72
- static isValid(modelRef: string): boolean {
73
- if (!modelRef) {
74
- return false;
75
- }
76
-
77
- const separatorIndex: number = modelRef.indexOf(DyFM_AI_ModelRef_Util.separator);
78
-
79
- if (separatorIndex < 0) {
80
- return false;
81
- }
82
-
83
- const provider: string = modelRef.substring(0, separatorIndex);
84
- const model: string = modelRef.substring(separatorIndex + 1);
85
-
86
- return DyFM_AI_ModelRef_Util.validProviders.has(provider) && !!model;
87
- }
88
- }
1
+ import { DyFM_AI_Provider } from '../_enums/ai-provider.enum';
2
+
3
+ /**
4
+ * AI modell hivatkozas formatum: {provider}:{model}
5
+ *
6
+ * Peldak: "open-ai:gpt-4o", "anthropic:claude-3-5-sonnet-latest", "fdp-ai:fdp-base-1"
7
+ * A provider resz a DyFM_AI_Provider enum erteke, a model resz a provider sajat modell azonositoja.
8
+ */
9
+ export class DyFM_AI_ModelRef_Util {
10
+ /** az elvlaszto karakter a provider es modell kozott */
11
+ private static readonly separator: string = ':';
12
+
13
+ /** az osszes ervenyes provider ertek gyorstarhely */
14
+ private static readonly validProviders: Set<string> = new Set(
15
+ Object.values(DyFM_AI_Provider)
16
+ );
17
+
18
+ /**
19
+ * Osszeallitas provider + model -bol
20
+ * @param provider - AI provider enum ertek
21
+ * @param model - provider-specifikus modell azonosito
22
+ */
23
+ static create(provider: DyFM_AI_Provider, model: string): string {
24
+ return `${provider}${DyFM_AI_ModelRef_Util.separator}${model}`;
25
+ }
26
+
27
+ /**
28
+ * Szetbontas provider + model -re
29
+ * @param modelRef - formatum: {provider}:{model}
30
+ */
31
+ static parse(modelRef: string): { provider: DyFM_AI_Provider; model: string } {
32
+ const separatorIndex: number = modelRef.indexOf(DyFM_AI_ModelRef_Util.separator);
33
+
34
+ if (separatorIndex < 0) {
35
+ throw new Error(`Ervenytelen modelRef formatum: "${modelRef}" -- hianyzik a "${DyFM_AI_ModelRef_Util.separator}" elvlaszto`);
36
+ }
37
+
38
+ const provider: string = modelRef.substring(0, separatorIndex);
39
+ const model: string = modelRef.substring(separatorIndex + 1);
40
+
41
+ if (!DyFM_AI_ModelRef_Util.validProviders.has(provider)) {
42
+ throw new Error(`Ismeretlen AI provider: "${provider}" a modelRef-ben: "${modelRef}"`);
43
+ }
44
+
45
+ if (!model) {
46
+ throw new Error(`Ures modell azonosito a modelRef-ben: "${modelRef}"`);
47
+ }
48
+
49
+ return { provider: provider as DyFM_AI_Provider, model: model };
50
+ }
51
+
52
+ /**
53
+ * Provider kinyerese a modelRef-bol
54
+ * @param modelRef - formatum: {provider}:{model}
55
+ */
56
+ static getProvider(modelRef: string): DyFM_AI_Provider {
57
+ return DyFM_AI_ModelRef_Util.parse(modelRef).provider;
58
+ }
59
+
60
+ /**
61
+ * Model kinyerese a modelRef-bol
62
+ * @param modelRef - formatum: {provider}:{model}
63
+ */
64
+ static getModel(modelRef: string): string {
65
+ return DyFM_AI_ModelRef_Util.parse(modelRef).model;
66
+ }
67
+
68
+ /**
69
+ * Validalas -- ellenorzi, hogy a modelRef megfelel-e a {provider}:{model} formatumnak
70
+ * @param modelRef - a vizsgalando string
71
+ */
72
+ static isValid(modelRef: string): boolean {
73
+ if (!modelRef) {
74
+ return false;
75
+ }
76
+
77
+ const separatorIndex: number = modelRef.indexOf(DyFM_AI_ModelRef_Util.separator);
78
+
79
+ if (separatorIndex < 0) {
80
+ return false;
81
+ }
82
+
83
+ const provider: string = modelRef.substring(0, separatorIndex);
84
+ const model: string = modelRef.substring(separatorIndex + 1);
85
+
86
+ return DyFM_AI_ModelRef_Util.validProviders.has(provider) && !!model;
87
+ }
88
+ }
@@ -1,37 +1,37 @@
1
- import { DyFM_AI_ModelRegistry_Util } from './ai-model-registry.util';
2
- import { DyFM_OAI_Models } from '../_modules/open-ai/_collections/oai-models.const';
3
- import { DyFM_OAI_Model } from '../_modules/open-ai/_enums/oai-model.enum';
4
-
5
- describe('| DyFM_AI_ModelRegistry_Util', (): void => {
6
-
7
- describe('| findModelInfo', (): void => {
8
- it('| should find a known model by id', (): void => {
9
- const info = DyFM_AI_ModelRegistry_Util.findModelInfo(DyFM_OAI_Models, DyFM_OAI_Model.gpt55);
10
-
11
- expect(info).toBeTruthy();
12
- expect(info?.id).toBe(DyFM_OAI_Model.gpt55);
13
- });
14
-
15
- it('| should return undefined for an unknown id', (): void => {
16
- const info = DyFM_AI_ModelRegistry_Util.findModelInfo(DyFM_OAI_Models, 'no-such-model');
17
-
18
- expect(info).toBeUndefined();
19
- });
20
- });
21
-
22
- describe('| modelSupportsTools', (): void => {
23
- it('| should return true for a tool-capable chat model', (): void => {
24
- expect(DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, DyFM_OAI_Model.gpt55)).toBe(true);
25
- });
26
-
27
- it('| should return false for an embedding model', (): void => {
28
- expect(
29
- DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, DyFM_OAI_Model.textEmbedding_3Small)
30
- ).toBe(false);
31
- });
32
-
33
- it('| should return false for an unknown id (no assumption of tool support)', (): void => {
34
- expect(DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, 'no-such-model')).toBe(false);
35
- });
36
- });
37
- });
1
+ import { DyFM_AI_ModelRegistry_Util } from './ai-model-registry.util';
2
+ import { DyFM_OAI_Models } from '../_modules/open-ai/_collections/oai-models.const';
3
+ import { DyFM_OAI_Model } from '../_modules/open-ai/_enums/oai-model.enum';
4
+
5
+ describe('| DyFM_AI_ModelRegistry_Util', (): void => {
6
+
7
+ describe('| findModelInfo', (): void => {
8
+ it('| should find a known model by id', (): void => {
9
+ const info = DyFM_AI_ModelRegistry_Util.findModelInfo(DyFM_OAI_Models, DyFM_OAI_Model.gpt55);
10
+
11
+ expect(info).toBeTruthy();
12
+ expect(info?.id).toBe(DyFM_OAI_Model.gpt55);
13
+ });
14
+
15
+ it('| should return undefined for an unknown id', (): void => {
16
+ const info = DyFM_AI_ModelRegistry_Util.findModelInfo(DyFM_OAI_Models, 'no-such-model');
17
+
18
+ expect(info).toBeUndefined();
19
+ });
20
+ });
21
+
22
+ describe('| modelSupportsTools', (): void => {
23
+ it('| should return true for a tool-capable chat model', (): void => {
24
+ expect(DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, DyFM_OAI_Model.gpt55)).toBe(true);
25
+ });
26
+
27
+ it('| should return false for an embedding model', (): void => {
28
+ expect(
29
+ DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, DyFM_OAI_Model.textEmbedding_3Small)
30
+ ).toBe(false);
31
+ });
32
+
33
+ it('| should return false for an unknown id (no assumption of tool support)', (): void => {
34
+ expect(DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, 'no-such-model')).toBe(false);
35
+ });
36
+ });
37
+ });