@futdevpro/fsm-dynamo 1.20.9 → 1.20.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (707) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +721 -721
  3. package/build/_collections/utils/secret-mask.util.d.ts.map +1 -1
  4. package/build/_collections/utils/secret-mask.util.js +2 -0
  5. package/build/_collections/utils/secret-mask.util.js.map +1 -1
  6. package/build/_modules/socket/_models/sck-socket-event.control-model.js +1 -1
  7. package/package.json +12 -5
  8. package/.c8rc.json +0 -26
  9. package/.cursor/rules/__assistant_guide.mdc +0 -30
  10. package/.cursor/rules/__main.mdc +0 -64
  11. package/.cursor/rules/_ag_backend-structure.mdc +0 -86
  12. package/.cursor/rules/_ag_backend.mdc +0 -16
  13. package/.cursor/rules/_ag_debug.mdc +0 -8
  14. package/.cursor/rules/_ag_documentation_writing_rules.mdc +0 -372
  15. package/.cursor/rules/_ag_file-refactoring.mdc +0 -113
  16. package/.cursor/rules/_ag_fixes_rules.mdc +0 -6
  17. package/.cursor/rules/_ag_frontend-structure.mdc +0 -87
  18. package/.cursor/rules/_ag_frontend.mdc +0 -40
  19. package/.cursor/rules/_ag_import-rules.mdc +0 -45
  20. package/.cursor/rules/_ag_naming.mdc +0 -116
  21. package/.cursor/rules/_ag_running_commands.mdc +0 -5
  22. package/.cursor/rules/_ag_server-controller.mdc +0 -6
  23. package/.cursor/rules/_ag_should-be.mdc +0 -7
  24. package/.cursor/rules/_ag_swearing.mdc +0 -47
  25. package/.cursor/rules/ai_development_guide.md +0 -61
  26. package/.cursor/rules/ai_directives.md +0 -114
  27. package/.cursor/rules/cursor-rules.md +0 -160
  28. package/.cursor/rules/default-command.mdc +0 -465
  29. package/.cursor/rules/error_code_pattern.md +0 -40
  30. package/.cursor/rules/saved rule mcp server use.md +0 -16
  31. package/.dynamo/pipeline.cicd.config.json +0 -157
  32. package/.dynamo/version-bump.config.json +0 -5
  33. package/.github/workflows/main.yml +0 -439
  34. package/.husky/pre-commit +0 -2
  35. package/.vscode/settings.json +0 -11
  36. package/__documentations/2026-05-17-oai-compatible-providers-howto.md +0 -282
  37. package/__documentations/2026-06-01-fr047-fc-foundation.md +0 -48
  38. package/__documentations/2026-06-01-fr047-fr048-code-review.md +0 -153
  39. package/__documentations/2026-06-01-fr047-p1-function-calling-vocabulary.md +0 -75
  40. package/__documentations/2026-06-05-secret-mask-url-cred-any-scheme.md +0 -37
  41. package/__documentations/2026-06-06-ngx-models-merge-completion.md +0 -100
  42. package/__documentations/2026-06-22-dyfm-error-extends-error.md +0 -109
  43. package/__documentations/2026-08-22-angular-20-phase1-release.md +0 -39
  44. package/__documentations/2026-08-23-atomic-rollback-manifest-contract.md +0 -53
  45. package/__documentations/2026-08-23-forms-v2-color-picker-settings.md +0 -23
  46. package/__documentations/2026-08-23-forms-v2-symbol-picker-settings.md +0 -24
  47. package/__documentations/plans/00-MASTER-ngx-models-fsm-merge.md +0 -75
  48. package/__documentations/plans/01-naming-convention-DyNM-to-DyFM.md +0 -103
  49. package/__documentations/plans/02-consumer-rollout.md +0 -84
  50. package/_specifications/BACKLOG.md +0 -43
  51. package/eslint.config.js +0 -4
  52. package/nodemon.json +0 -23
  53. package/pnpm-workspace.yaml +0 -2
  54. package/scripts/_capture-out/ai-error-capture.json +0 -399
  55. package/scripts/ai-error-capture.js +0 -171
  56. package/scripts/ai-model-registry-check.js +0 -132
  57. package/scripts/crypto/CRYPTO-STABILITY-SOLUTION.md +0 -197
  58. package/scripts/crypto/README.md +0 -114
  59. package/scripts/crypto/demo-crypto-stability.js +0 -121
  60. package/scripts/crypto/stress-test-crypto.js +0 -380
  61. package/scripts/run-coverage-tests.js +0 -24
  62. package/scripts/verify-build-completeness.js +0 -62
  63. package/spec/support/helpers/ts-node-helper.js +0 -9
  64. package/spec/support/jasmine.coverage.json +0 -23
  65. package/spec/support/jasmine.json +0 -24
  66. package/src/_collections/constants/data-sizes.const.ts +0 -40
  67. package/src/_collections/constants/error-defaults.const.ts +0 -20
  68. package/src/_collections/constants/global-settings.const.spec.ts +0 -32
  69. package/src/_collections/constants/global-settings.const.ts +0 -29
  70. package/src/_collections/constants/numbers.const.ts +0 -40
  71. package/src/_collections/constants/times.const.ts +0 -45
  72. package/src/_collections/utils/array.util.spec.ts +0 -306
  73. package/src/_collections/utils/array.util.ts +0 -813
  74. package/src/_collections/utils/async.util.spec.ts +0 -398
  75. package/src/_collections/utils/async.util.ts +0 -209
  76. package/src/_collections/utils/data.util.spec.ts +0 -345
  77. package/src/_collections/utils/data.util.ts +0 -226
  78. package/src/_collections/utils/extract-error-message.util.spec.ts +0 -204
  79. package/src/_collections/utils/extract-error-message.util.ts +0 -223
  80. package/src/_collections/utils/json-error-helper.util.spec.ts +0 -521
  81. package/src/_collections/utils/json-error-helper.util.ts +0 -302
  82. package/src/_collections/utils/log.util.spec.ts +0 -975
  83. package/src/_collections/utils/log.util.ts +0 -667
  84. package/src/_collections/utils/math/box-bounds.spec.ts +0 -74
  85. package/src/_collections/utils/math/box-bounds.util.ts +0 -183
  86. package/src/_collections/utils/math/math.util.spec.ts +0 -94
  87. package/src/_collections/utils/math/math.util.ts +0 -141
  88. package/src/_collections/utils/math/random.util.spec.ts +0 -82
  89. package/src/_collections/utils/math/random.util.ts +0 -139
  90. package/src/_collections/utils/math/trigonometry.util.spec.ts +0 -57
  91. package/src/_collections/utils/math/trigonometry.util.ts +0 -102
  92. package/src/_collections/utils/math/vector2.util.spec.ts +0 -94
  93. package/src/_collections/utils/math/vector2.util.ts +0 -653
  94. package/src/_collections/utils/object.util.spec.ts +0 -646
  95. package/src/_collections/utils/object.util.ts +0 -739
  96. package/src/_collections/utils/regex/password-regex.util.spec.ts +0 -51
  97. package/src/_collections/utils/regex/password-regex.util.ts +0 -66
  98. package/src/_collections/utils/regex/regex.util.spec.ts +0 -42
  99. package/src/_collections/utils/regex/regex.util.ts +0 -6
  100. package/src/_collections/utils/regex/username-regex.util.spec.ts +0 -61
  101. package/src/_collections/utils/regex/username-regex.util.ts +0 -35
  102. package/src/_collections/utils/require-env.util.spec.ts +0 -231
  103. package/src/_collections/utils/require-env.util.ts +0 -138
  104. package/src/_collections/utils/round-list.util.spec.ts +0 -79
  105. package/src/_collections/utils/round-list.util.ts +0 -162
  106. package/src/_collections/utils/secret-mask.util.spec.ts +0 -66
  107. package/src/_collections/utils/secret-mask.util.ts +0 -262
  108. package/src/_collections/utils/stack.util.spec.ts +0 -373
  109. package/src/_collections/utils/stack.util.ts +0 -165
  110. package/src/_collections/utils/string-case.util.spec.ts +0 -441
  111. package/src/_collections/utils/string-case.util.ts +0 -362
  112. package/src/_collections/utils/string.util.spec.ts +0 -975
  113. package/src/_collections/utils/string.util.ts +0 -450
  114. package/src/_collections/utils/time.util.spec.ts +0 -50
  115. package/src/_collections/utils/time.util.ts +0 -481
  116. package/src/_collections/utils/type-cloning-facility.util.spec.ts +0 -51
  117. package/src/_collections/utils/type-cloning-facility.util.ts +0 -168
  118. package/src/_collections/utils/utilities.util.spec.ts +0 -201
  119. package/src/_collections/utils/utilities.util.ts +0 -68
  120. package/src/_collections/utils/uuid.util.spec.ts +0 -30
  121. package/src/_collections/utils/uuid.util.ts +0 -50
  122. package/src/_enums/basic-property-type.enum.ts +0 -20
  123. package/src/_enums/data-model-type.enum.ts +0 -29
  124. package/src/_enums/environment-flag.enum.ts +0 -28
  125. package/src/_enums/error-level.enum.ts +0 -43
  126. package/src/_enums/error-status.enum.ts +0 -30
  127. package/src/_enums/http/http-call-type.enum.ts +0 -43
  128. package/src/_enums/http/http-event-type.enum.ts +0 -40
  129. package/src/_enums/http/http-response-type.enum.ts +0 -18
  130. package/src/_enums/log-style.enum.ts +0 -44
  131. package/src/_enums/server-connection-status.enum.ts +0 -6
  132. package/src/_enums/time/day-of-week.enum.ts +0 -55
  133. package/src/_enums/time/month.enum.ts +0 -25
  134. package/src/_enums/time/relative-date.enum.ts +0 -24
  135. package/src/_models/control-models/data-model-params.control-model.spec.ts +0 -156
  136. package/src/_models/control-models/data-model-params.control-model.ts +0 -362
  137. package/src/_models/control-models/data-property-params.control-model.spec.ts +0 -93
  138. package/src/_models/control-models/data-property-params.control-model.ts +0 -210
  139. package/src/_models/control-models/error.control-model.spec.ts +0 -975
  140. package/src/_models/control-models/error.control-model.ts +0 -1280
  141. package/src/_models/control-models/http/http-error-response.control-model.spec.ts +0 -116
  142. package/src/_models/control-models/http/http-error-response.control-model.ts +0 -52
  143. package/src/_models/control-models/http/http-headers.control-model.spec.ts +0 -25
  144. package/src/_models/control-models/http/http-headers.control-model.ts +0 -125
  145. package/src/_models/control-models/http/http-response.model-base.spec.ts +0 -46
  146. package/src/_models/control-models/http/http-response.model-base.ts +0 -58
  147. package/src/_models/control-models/poll.control-model.spec.ts +0 -63
  148. package/src/_models/control-models/poll.control-model.ts +0 -151
  149. package/src/_models/control-models/range-value.control-model.spec.ts +0 -187
  150. package/src/_models/control-models/range-value.control-model.ts +0 -289
  151. package/src/_models/control-models/server-status.control-model.spec.ts +0 -66
  152. package/src/_models/control-models/server-status.control-model.ts +0 -94
  153. package/src/_models/control-models/service-endpoint-settings-base.control-model.spec.ts +0 -145
  154. package/src/_models/control-models/service-endpoint-settings-base.control-model.ts +0 -187
  155. package/src/_models/data-models/errors.data-model.spec.ts +0 -71
  156. package/src/_models/data-models/errors.data-model.ts +0 -201
  157. package/src/_models/data-models/metadata.data-model.spec.ts +0 -184
  158. package/src/_models/data-models/metadata.data-model.ts +0 -153
  159. package/src/_models/interfaces/box-bounds.interface.ts +0 -8
  160. package/src/_models/interfaces/environment/global-log-settings.interface.ts +0 -86
  161. package/src/_models/interfaces/environment/global-settings.interface.ts +0 -69
  162. package/src/_models/interfaces/error-defaults.interface.ts +0 -18
  163. package/src/_models/interfaces/paged.interface.ts +0 -12
  164. package/src/_models/interfaces/random-weight.interface.ts +0 -7
  165. package/src/_models/interfaces/route-settings.interface.ts +0 -15
  166. package/src/_models/interfaces/search-query.interface.ts +0 -23
  167. package/src/_models/interfaces/search-result.interface.ts +0 -6
  168. package/src/_models/interfaces/server-error-statistics.interface.ts +0 -24
  169. package/src/_models/interfaces/vector2.interface.ts +0 -21
  170. package/src/_models/types/db-filter.type.ts +0 -110
  171. package/src/_models/types/db-sort.type.ts +0 -5
  172. package/src/_models/types/ds-filter.type.ts +0 -68
  173. package/src/_models/types/ds-sort.type.ts +0 -21
  174. package/src/_modules/ai/_collections/ai-model-ref.util.ts +0 -88
  175. package/src/_modules/ai/_collections/ai-model-registry.util.spec.ts +0 -37
  176. package/src/_modules/ai/_collections/ai-model-registry.util.ts +0 -30
  177. package/src/_modules/ai/_enums/ai-message-role.enum.ts +0 -7
  178. package/src/_modules/ai/_enums/ai-model-type.enum.ts +0 -7
  179. package/src/_modules/ai/_enums/ai-provider.enum.ts +0 -7
  180. package/src/_modules/ai/_models/ai-call-settings.interface.ts +0 -84
  181. package/src/_modules/ai/_models/ai-config.interface.ts +0 -14
  182. package/src/_modules/ai/_models/ai-embedding-request.interface.ts +0 -20
  183. package/src/_modules/ai/_models/ai-embedding-response.interface.ts +0 -26
  184. package/src/_modules/ai/_models/ai-llm-request.interface.ts +0 -24
  185. package/src/_modules/ai/_models/ai-llm-response.interface.ts +0 -30
  186. package/src/_modules/ai/_models/ai-message.interface.ts +0 -12
  187. package/src/_modules/ai/_models/ai-model-capabilities.interface.ts +0 -35
  188. package/src/_modules/ai/_models/ai-model-info.interface.ts +0 -63
  189. package/src/_modules/ai/_models/ai-model-settings-schema.interface.ts +0 -52
  190. package/src/_modules/ai/_models/ai-provider-capabilities.interface.ts +0 -28
  191. package/src/_modules/ai/_models/ai-settings.interface.ts +0 -17
  192. package/src/_modules/ai/_models/ai-tool-call.interface.ts +0 -18
  193. package/src/_modules/ai/_models/ai-tool-handler.type.ts +0 -11
  194. package/src/_modules/ai/_models/ai-tool-result.interface.ts +0 -16
  195. package/src/_modules/ai/_models/ai-tool.interface.ts +0 -16
  196. package/src/_modules/ai/_models/ai-user-provider-config.control-model.ts +0 -29
  197. package/src/_modules/ai/_modules/anthropic/_collections/aai-models.const.ts +0 -135
  198. package/src/_modules/ai/_modules/anthropic/_enums/aai-model.enum.ts +0 -19
  199. package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.spec.ts +0 -28
  200. package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.ts +0 -23
  201. package/src/_modules/ai/_modules/anthropic/_models/aai-client-options.interface.ts +0 -10
  202. package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.spec.ts +0 -22
  203. package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.ts +0 -27
  204. package/src/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.ts +0 -20
  205. package/src/_modules/ai/_modules/anthropic/index.ts +0 -14
  206. package/src/_modules/ai/_modules/document-ai/_models/dai-embedding-info.interface.ts +0 -12
  207. package/src/_modules/ai/_modules/document-ai/_models/dai-vector-search-params.interface.ts +0 -22
  208. package/src/_modules/ai/_modules/document-ai/index.ts +0 -4
  209. package/src/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.ts +0 -40
  210. package/src/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.ts +0 -6
  211. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.ts +0 -19
  212. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.ts +0 -11
  213. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.ts +0 -24
  214. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.ts +0 -20
  215. package/src/_modules/ai/_modules/fdp-ai/index.ts +0 -11
  216. package/src/_modules/ai/_modules/google-ai/_collections/gai-models.const.ts +0 -161
  217. package/src/_modules/ai/_modules/google-ai/_enums/gai-model.enum.ts +0 -16
  218. package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.spec.ts +0 -28
  219. package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.ts +0 -21
  220. package/src/_modules/ai/_modules/google-ai/_models/gai-client-options.interface.ts +0 -8
  221. package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.spec.ts +0 -22
  222. package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.ts +0 -25
  223. package/src/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.ts +0 -20
  224. package/src/_modules/ai/_modules/google-ai/index.ts +0 -14
  225. package/src/_modules/ai/_modules/local-ai/_collections/lai-models.const.ts +0 -59
  226. package/src/_modules/ai/_modules/local-ai/_enums/lai-model.enum.ts +0 -6
  227. package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.spec.ts +0 -28
  228. package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.ts +0 -18
  229. package/src/_modules/ai/_modules/local-ai/_models/lai-client-options.interface.ts +0 -9
  230. package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.spec.ts +0 -22
  231. package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.ts +0 -23
  232. package/src/_modules/ai/_modules/local-ai/index.ts +0 -14
  233. package/src/_modules/ai/_modules/open-ai/_collections/oai-embedding-model-dimensions.const.ts +0 -8
  234. package/src/_modules/ai/_modules/open-ai/_collections/oai-models.const.ts +0 -404
  235. package/src/_modules/ai/_modules/open-ai/_enums/oai-model.enum.ts +0 -179
  236. package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.spec.ts +0 -28
  237. package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.ts +0 -21
  238. package/src/_modules/ai/_modules/open-ai/_models/oai-client-options.interface.ts +0 -81
  239. package/src/_modules/ai/_modules/open-ai/_models/oai-embedding-info.interface.ts +0 -13
  240. package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.spec.ts +0 -22
  241. package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.ts +0 -25
  242. package/src/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.ts +0 -21
  243. package/src/_modules/ai/_modules/open-ai/index.ts +0 -28
  244. package/src/_modules/ai/index.ts +0 -27
  245. package/src/_modules/ci-tools/_enums/cit-ci-result-code.enum.ts +0 -11
  246. package/src/_modules/ci-tools/_enums/cit-ci-step-result-code.enum.ts +0 -10
  247. package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.spec.ts +0 -58
  248. package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.ts +0 -77
  249. package/src/_modules/ci-tools/_models/cit-ci-step-result.interface.ts +0 -12
  250. package/src/_modules/ci-tools/index.ts +0 -8
  251. package/src/_modules/crypto/_collections/crypto-v1.util.ts +0 -225
  252. package/src/_modules/crypto/_collections/crypto-v2.util.ts +0 -331
  253. package/src/_modules/crypto/_collections/crypto-v4.util.ts +0 -702
  254. package/src/_modules/crypto/_collections/crypto.util.db-envelope.spec.ts +0 -51
  255. package/src/_modules/crypto/_collections/crypto.util.edge.spec.ts +0 -606
  256. package/src/_modules/crypto/_collections/crypto.util.extra.spec.ts +0 -643
  257. package/src/_modules/crypto/_collections/crypto.util.simple.spec.ts +0 -513
  258. package/src/_modules/crypto/_collections/crypto.util.ts +0 -748
  259. package/src/_modules/crypto/_models/artifact-signature.interface.ts +0 -39
  260. package/src/_modules/crypto/_services/artifact-signature.control-service.spec.ts +0 -223
  261. package/src/_modules/crypto/_services/artifact-signature.control-service.ts +0 -395
  262. package/src/_modules/crypto/index.ts +0 -16
  263. package/src/_modules/custom-data/_collections/cud-module-settings.const.ts +0 -21
  264. package/src/_modules/custom-data/_models/cud.data-model.spec.ts +0 -38
  265. package/src/_modules/custom-data/_models/cud.data-model.ts +0 -39
  266. package/src/_modules/custom-data/index.ts +0 -10
  267. package/src/_modules/data-handler/_models/data-handler-settings.control-model.spec.ts +0 -110
  268. package/src/_modules/data-handler/_models/data-handler-settings.control-model.ts +0 -110
  269. package/src/_modules/data-handler/_models/data-handler.control-model.spec.ts +0 -473
  270. package/src/_modules/data-handler/_models/data-handler.control-model.ts +0 -486
  271. package/src/_modules/data-handler/_models/data-list-handler.control-model.spec.ts +0 -263
  272. package/src/_modules/data-handler/_models/data-list-handler.control-model.ts +0 -252
  273. package/src/_modules/data-handler/_models/data-search-handler.control-model.spec.ts +0 -417
  274. package/src/_modules/data-handler/_models/data-search-handler.control-model.ts +0 -390
  275. package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.spec.ts +0 -374
  276. package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.ts +0 -274
  277. package/src/_modules/data-handler/index.ts +0 -6
  278. package/src/_modules/deployment/_collections/atomic-rollback-manifest.util.spec.ts +0 -221
  279. package/src/_modules/deployment/_collections/atomic-rollback-manifest.util.ts +0 -455
  280. package/src/_modules/deployment/_models/atomic-rollback-manifest.interface.ts +0 -59
  281. package/src/_modules/deployment/index.ts +0 -2
  282. package/src/_modules/game/_collections/audio-mixer.util.spec.ts +0 -198
  283. package/src/_modules/game/_collections/audio-mixer.util.ts +0 -143
  284. package/src/_modules/game/_collections/audio-scale.util.spec.ts +0 -140
  285. package/src/_modules/game/_collections/audio-scale.util.ts +0 -129
  286. package/src/_modules/game/_enums/audio-channel.enum.ts +0 -22
  287. package/src/_modules/game/_models/audio-mixer-config.interface.ts +0 -53
  288. package/src/_modules/game/_models/audio-mixer-settings.interface.ts +0 -38
  289. package/src/_modules/game/_models/audio-mixer-state.interface.ts +0 -36
  290. package/src/_modules/game/_models/audio-mixer.control-model.spec.ts +0 -376
  291. package/src/_modules/game/_models/audio-mixer.control-model.ts +0 -419
  292. package/src/_modules/game/_models/audio-scale.interface.ts +0 -21
  293. package/src/_modules/game/_models/seeded-random-state.interface.ts +0 -21
  294. package/src/_modules/game/_models/seeded-random.control-model.spec.ts +0 -290
  295. package/src/_modules/game/_models/seeded-random.control-model.ts +0 -311
  296. package/src/_modules/game/index.ts +0 -15
  297. package/src/_modules/location/_collections/assets/country-codes-ISO-3166.json +0 -3239
  298. package/src/_modules/location/_collections/assets/country-divisions-ISO-3166-all-list.json +0 -19036
  299. package/src/_modules/location/_collections/assets/country-divisions-ISO-3166.json +0 -4994
  300. package/src/_modules/location/_collections/assets/country-phone-codes.json +0 -1203
  301. package/src/_modules/location/_collections/assets/country-subdivisions/afghanistan.json +0 -138
  302. package/src/_modules/location/_collections/assets/country-subdivisions/albania.json +0 -50
  303. package/src/_modules/location/_collections/assets/country-subdivisions/algeria.json +0 -194
  304. package/src/_modules/location/_collections/assets/country-subdivisions/andorra.json +0 -30
  305. package/src/_modules/location/_collections/assets/country-subdivisions/angola.json +0 -74
  306. package/src/_modules/location/_collections/assets/country-subdivisions/antigua-and-barbuda.json +0 -34
  307. package/src/_modules/location/_collections/assets/country-subdivisions/argentina.json +0 -98
  308. package/src/_modules/location/_collections/assets/country-subdivisions/armenia.json +0 -46
  309. package/src/_modules/location/_collections/assets/country-subdivisions/australia.json +0 -34
  310. package/src/_modules/location/_collections/assets/country-subdivisions/austria.json +0 -38
  311. package/src/_modules/location/_collections/assets/country-subdivisions/azerbaijan.json +0 -6
  312. package/src/_modules/location/_collections/assets/country-subdivisions/bahamas.json +0 -126
  313. package/src/_modules/location/_collections/assets/country-subdivisions/bahrain.json +0 -22
  314. package/src/_modules/location/_collections/assets/country-subdivisions/bangladesh.json +0 -30
  315. package/src/_modules/location/_collections/assets/country-subdivisions/barbados.json +0 -46
  316. package/src/_modules/location/_collections/assets/country-subdivisions/belarus.json +0 -30
  317. package/src/_modules/location/_collections/assets/country-subdivisions/belgium.json +0 -14
  318. package/src/_modules/location/_collections/assets/country-subdivisions/belize.json +0 -26
  319. package/src/_modules/location/_collections/assets/country-subdivisions/benin.json +0 -50
  320. package/src/_modules/location/_collections/assets/country-subdivisions/bhutan.json +0 -82
  321. package/src/_modules/location/_collections/assets/country-subdivisions/bolivia.json +0 -38
  322. package/src/_modules/location/_collections/assets/country-subdivisions/bosnia-and-herzegovina.json +0 -14
  323. package/src/_modules/location/_collections/assets/country-subdivisions/botswana.json +0 -66
  324. package/src/_modules/location/_collections/assets/country-subdivisions/brazil.json +0 -110
  325. package/src/_modules/location/_collections/assets/country-subdivisions/brunei-darussalam.json +0 -18
  326. package/src/_modules/location/_collections/assets/country-subdivisions/bulgaria.json +0 -114
  327. package/src/_modules/location/_collections/assets/country-subdivisions/burkina-faso.json +0 -54
  328. package/src/_modules/location/_collections/assets/country-subdivisions/burundi.json +0 -70
  329. package/src/_modules/location/_collections/assets/country-subdivisions/cambodia.json +0 -98
  330. package/src/_modules/location/_collections/assets/country-subdivisions/cameroon.json +0 -42
  331. package/src/_modules/location/_collections/assets/country-subdivisions/canada.json +0 -80
  332. package/src/_modules/location/_collections/assets/country-subdivisions/cape-verde.json +0 -10
  333. package/src/_modules/location/_collections/assets/country-subdivisions/central-african-republic.json +0 -70
  334. package/src/_modules/location/_collections/assets/country-subdivisions/chad.json +0 -90
  335. package/src/_modules/location/_collections/assets/country-subdivisions/chile.json +0 -62
  336. package/src/_modules/location/_collections/assets/country-subdivisions/china.json +0 -206
  337. package/src/_modules/location/_collections/assets/country-subdivisions/colombia.json +0 -134
  338. package/src/_modules/location/_collections/assets/country-subdivisions/comoros.json +0 -14
  339. package/src/_modules/location/_collections/assets/country-subdivisions/congo-the-democratic-republic-of-the.json +0 -46
  340. package/src/_modules/location/_collections/assets/country-subdivisions/congo.json +0 -50
  341. package/src/_modules/location/_collections/assets/country-subdivisions/costa-rica.json +0 -30
  342. package/src/_modules/location/_collections/assets/country-subdivisions/cote-d-ivoire-republic-of.json +0 -78
  343. package/src/_modules/location/_collections/assets/country-subdivisions/croatia.json +0 -86
  344. package/src/_modules/location/_collections/assets/country-subdivisions/cuba.json +0 -66
  345. package/src/_modules/location/_collections/assets/country-subdivisions/cyprus.json +0 -26
  346. package/src/_modules/location/_collections/assets/country-subdivisions/czech-republic.json +0 -58
  347. package/src/_modules/location/_collections/assets/country-subdivisions/denmark.json +0 -22
  348. package/src/_modules/location/_collections/assets/country-subdivisions/djibouti.json +0 -26
  349. package/src/_modules/location/_collections/assets/country-subdivisions/dominica.json +0 -42
  350. package/src/_modules/location/_collections/assets/country-subdivisions/dominican-republic.json +0 -42
  351. package/src/_modules/location/_collections/assets/country-subdivisions/ecuador.json +0 -98
  352. package/src/_modules/location/_collections/assets/country-subdivisions/egypt.json +0 -118
  353. package/src/_modules/location/_collections/assets/country-subdivisions/el-salvador.json +0 -58
  354. package/src/_modules/location/_collections/assets/country-subdivisions/equatorial-guinea.json +0 -10
  355. package/src/_modules/location/_collections/assets/country-subdivisions/eritrea.json +0 -26
  356. package/src/_modules/location/_collections/assets/country-subdivisions/estonia.json +0 -62
  357. package/src/_modules/location/_collections/assets/country-subdivisions/ethiopia.json +0 -46
  358. package/src/_modules/location/_collections/assets/country-subdivisions/fiji.json +0 -22
  359. package/src/_modules/location/_collections/assets/country-subdivisions/finland.json +0 -78
  360. package/src/_modules/location/_collections/assets/country-subdivisions/france.json +0 -134
  361. package/src/_modules/location/_collections/assets/country-subdivisions/gabon.json +0 -38
  362. package/src/_modules/location/_collections/assets/country-subdivisions/gambia.json +0 -26
  363. package/src/_modules/location/_collections/assets/country-subdivisions/georgia.json +0 -50
  364. package/src/_modules/location/_collections/assets/country-subdivisions/germany.json +0 -66
  365. package/src/_modules/location/_collections/assets/country-subdivisions/ghana.json +0 -42
  366. package/src/_modules/location/_collections/assets/country-subdivisions/greece.json +0 -54
  367. package/src/_modules/location/_collections/assets/country-subdivisions/greenland.json +0 -18
  368. package/src/_modules/location/_collections/assets/country-subdivisions/grenada.json +0 -30
  369. package/src/_modules/location/_collections/assets/country-subdivisions/guatemala.json +0 -90
  370. package/src/_modules/location/_collections/assets/country-subdivisions/guinea-bissau.json +0 -14
  371. package/src/_modules/location/_collections/assets/country-subdivisions/guinea.json +0 -34
  372. package/src/_modules/location/_collections/assets/country-subdivisions/guyana.json +0 -42
  373. package/src/_modules/location/_collections/assets/country-subdivisions/haiti.json +0 -42
  374. package/src/_modules/location/_collections/assets/country-subdivisions/honduras.json +0 -74
  375. package/src/_modules/location/_collections/assets/country-subdivisions/hong-kong.json +0 -5
  376. package/src/_modules/location/_collections/assets/country-subdivisions/hungary.json +0 -174
  377. package/src/_modules/location/_collections/assets/country-subdivisions/iceland.json +0 -38
  378. package/src/_modules/location/_collections/assets/country-subdivisions/india.json +0 -182
  379. package/src/_modules/location/_collections/assets/country-subdivisions/indonesia.json +0 -30
  380. package/src/_modules/location/_collections/assets/country-subdivisions/iran-islamic-republic-of.json +0 -126
  381. package/src/_modules/location/_collections/assets/country-subdivisions/iraq.json +0 -74
  382. package/src/_modules/location/_collections/assets/country-subdivisions/ireland.json +0 -18
  383. package/src/_modules/location/_collections/assets/country-subdivisions/israel.json +0 -26
  384. package/src/_modules/location/_collections/assets/country-subdivisions/italy.json +0 -82
  385. package/src/_modules/location/_collections/assets/country-subdivisions/jamaica.json +0 -58
  386. package/src/_modules/location/_collections/assets/country-subdivisions/japan.json +0 -190
  387. package/src/_modules/location/_collections/assets/country-subdivisions/jordan.json +0 -50
  388. package/src/_modules/location/_collections/assets/country-subdivisions/kazakhstan.json +0 -66
  389. package/src/_modules/location/_collections/assets/country-subdivisions/kenya.json +0 -34
  390. package/src/_modules/location/_collections/assets/country-subdivisions/kiribati.json +0 -14
  391. package/src/_modules/location/_collections/assets/country-subdivisions/korea-democratic-people-s-republic-of.json +0 -46
  392. package/src/_modules/location/_collections/assets/country-subdivisions/korea-republic-of.json +0 -70
  393. package/src/_modules/location/_collections/assets/country-subdivisions/kuwait.json +0 -26
  394. package/src/_modules/location/_collections/assets/country-subdivisions/kyrgyzstan.json +0 -34
  395. package/src/_modules/location/_collections/assets/country-subdivisions/lao-people-s-democratic-republic.json +0 -74
  396. package/src/_modules/location/_collections/assets/country-subdivisions/latvia.json +0 -478
  397. package/src/_modules/location/_collections/assets/country-subdivisions/lebanon.json +0 -34
  398. package/src/_modules/location/_collections/assets/country-subdivisions/lesotho.json +0 -42
  399. package/src/_modules/location/_collections/assets/country-subdivisions/liberia.json +0 -62
  400. package/src/_modules/location/_collections/assets/country-subdivisions/libyan-arab-jamahiriya.json +0 -90
  401. package/src/_modules/location/_collections/assets/country-subdivisions/liechtenstein.json +0 -46
  402. package/src/_modules/location/_collections/assets/country-subdivisions/lithuania.json +0 -42
  403. package/src/_modules/location/_collections/assets/country-subdivisions/luxembourg.json +0 -14
  404. package/src/_modules/location/_collections/assets/country-subdivisions/macedonia-the-former-yugoslav-republic-of.json +0 -338
  405. package/src/_modules/location/_collections/assets/country-subdivisions/madagascar.json +0 -26
  406. package/src/_modules/location/_collections/assets/country-subdivisions/malawi.json +0 -14
  407. package/src/_modules/location/_collections/assets/country-subdivisions/malaysia.json +0 -82
  408. package/src/_modules/location/_collections/assets/country-subdivisions/maldives.json +0 -34
  409. package/src/_modules/location/_collections/assets/country-subdivisions/mali.json +0 -38
  410. package/src/_modules/location/_collections/assets/country-subdivisions/malta.json +0 -274
  411. package/src/_modules/location/_collections/assets/country-subdivisions/marshall-islands.json +0 -10
  412. package/src/_modules/location/_collections/assets/country-subdivisions/mauritania.json +0 -54
  413. package/src/_modules/location/_collections/assets/country-subdivisions/mauritius.json +0 -70
  414. package/src/_modules/location/_collections/assets/country-subdivisions/mexico.json +0 -162
  415. package/src/_modules/location/_collections/assets/country-subdivisions/micronesia-federated-states-of.json +0 -18
  416. package/src/_modules/location/_collections/assets/country-subdivisions/moldova-republic-of.json +0 -150
  417. package/src/_modules/location/_collections/assets/country-subdivisions/monaco.json +0 -70
  418. package/src/_modules/location/_collections/assets/country-subdivisions/mongolia.json +0 -90
  419. package/src/_modules/location/_collections/assets/country-subdivisions/montenegro.json +0 -94
  420. package/src/_modules/location/_collections/assets/country-subdivisions/morocco.json +0 -66
  421. package/src/_modules/location/_collections/assets/country-subdivisions/mozambique.json +0 -46
  422. package/src/_modules/location/_collections/assets/country-subdivisions/myanmar.json +0 -58
  423. package/src/_modules/location/_collections/assets/country-subdivisions/namibia.json +0 -58
  424. package/src/_modules/location/_collections/assets/country-subdivisions/nauru.json +0 -58
  425. package/src/_modules/location/_collections/assets/country-subdivisions/nepal.json +0 -22
  426. package/src/_modules/location/_collections/assets/country-subdivisions/netherlands.json +0 -92
  427. package/src/_modules/location/_collections/assets/country-subdivisions/new-zealand.json +0 -112
  428. package/src/_modules/location/_collections/assets/country-subdivisions/nicaragua.json +0 -70
  429. package/src/_modules/location/_collections/assets/country-subdivisions/niger.json +0 -34
  430. package/src/_modules/location/_collections/assets/country-subdivisions/nigeria.json +0 -150
  431. package/src/_modules/location/_collections/assets/country-subdivisions/norway.json +0 -86
  432. package/src/_modules/location/_collections/assets/country-subdivisions/oman.json +0 -38
  433. package/src/_modules/location/_collections/assets/country-subdivisions/pakistan.json +0 -34
  434. package/src/_modules/location/_collections/assets/country-subdivisions/palau.json +0 -66
  435. package/src/_modules/location/_collections/assets/country-subdivisions/palestinian-territory-occupied.json +0 -66
  436. package/src/_modules/location/_collections/assets/country-subdivisions/panama.json +0 -54
  437. package/src/_modules/location/_collections/assets/country-subdivisions/papua-new-guinea.json +0 -82
  438. package/src/_modules/location/_collections/assets/country-subdivisions/paraguay.json +0 -74
  439. package/src/_modules/location/_collections/assets/country-subdivisions/peru.json +0 -106
  440. package/src/_modules/location/_collections/assets/country-subdivisions/philippines.json +0 -70
  441. package/src/_modules/location/_collections/assets/country-subdivisions/poland.json +0 -66
  442. package/src/_modules/location/_collections/assets/country-subdivisions/portugal.json +0 -82
  443. package/src/_modules/location/_collections/assets/country-subdivisions/qatar.json +0 -30
  444. package/src/_modules/location/_collections/assets/country-subdivisions/romania.json +0 -170
  445. package/src/_modules/location/_collections/assets/country-subdivisions/russian-federation.json +0 -500
  446. package/src/_modules/location/_collections/assets/country-subdivisions/rwanda.json +0 -22
  447. package/src/_modules/location/_collections/assets/country-subdivisions/saint-helena-ascension-and-tristan-da-cunha.json +0 -14
  448. package/src/_modules/location/_collections/assets/country-subdivisions/saint-kitts-and-nevis.json +0 -10
  449. package/src/_modules/location/_collections/assets/country-subdivisions/saint-lucia.json +0 -46
  450. package/src/_modules/location/_collections/assets/country-subdivisions/saint-vincent-and-the-grenadines.json +0 -26
  451. package/src/_modules/location/_collections/assets/country-subdivisions/samoa.json +0 -46
  452. package/src/_modules/location/_collections/assets/country-subdivisions/san-marino.json +0 -38
  453. package/src/_modules/location/_collections/assets/country-subdivisions/sao-tome-and-principe.json +0 -10
  454. package/src/_modules/location/_collections/assets/country-subdivisions/saudi-arabia.json +0 -54
  455. package/src/_modules/location/_collections/assets/country-subdivisions/senegal.json +0 -58
  456. package/src/_modules/location/_collections/assets/country-subdivisions/serbia.json +0 -10
  457. package/src/_modules/location/_collections/assets/country-subdivisions/seychelles.json +0 -102
  458. package/src/_modules/location/_collections/assets/country-subdivisions/sierra-leone.json +0 -18
  459. package/src/_modules/location/_collections/assets/country-subdivisions/singapore.json +0 -22
  460. package/src/_modules/location/_collections/assets/country-subdivisions/slovakia.json +0 -34
  461. package/src/_modules/location/_collections/assets/country-subdivisions/slovenia.json +0 -842
  462. package/src/_modules/location/_collections/assets/country-subdivisions/solomon-islands.json +0 -42
  463. package/src/_modules/location/_collections/assets/country-subdivisions/somalia.json +0 -74
  464. package/src/_modules/location/_collections/assets/country-subdivisions/south-africa.json +0 -38
  465. package/src/_modules/location/_collections/assets/country-subdivisions/south-sudan.json +0 -42
  466. package/src/_modules/location/_collections/assets/country-subdivisions/spain.json +0 -347
  467. package/src/_modules/location/_collections/assets/country-subdivisions/sri-lanka.json +0 -38
  468. package/src/_modules/location/_collections/assets/country-subdivisions/sudan.json +0 -70
  469. package/src/_modules/location/_collections/assets/country-subdivisions/suriname.json +0 -42
  470. package/src/_modules/location/_collections/assets/country-subdivisions/swaziland.json +0 -18
  471. package/src/_modules/location/_collections/assets/country-subdivisions/sweden.json +0 -86
  472. package/src/_modules/location/_collections/assets/country-subdivisions/switzerland.json +0 -106
  473. package/src/_modules/location/_collections/assets/country-subdivisions/syrian-arab-republic.json +0 -58
  474. package/src/_modules/location/_collections/assets/country-subdivisions/taiwan-province-of-china.json +0 -94
  475. package/src/_modules/location/_collections/assets/country-subdivisions/tajikistan.json +0 -18
  476. package/src/_modules/location/_collections/assets/country-subdivisions/tanzania-united-republic-of.json +0 -106
  477. package/src/_modules/location/_collections/assets/country-subdivisions/thailand.json +0 -314
  478. package/src/_modules/location/_collections/assets/country-subdivisions/timor-leste.json +0 -54
  479. package/src/_modules/location/_collections/assets/country-subdivisions/togo.json +0 -22
  480. package/src/_modules/location/_collections/assets/country-subdivisions/tonga.json +0 -22
  481. package/src/_modules/location/_collections/assets/country-subdivisions/trinidad-and-tobago.json +0 -66
  482. package/src/_modules/location/_collections/assets/country-subdivisions/tunisia.json +0 -98
  483. package/src/_modules/location/_collections/assets/country-subdivisions/turkey.json +0 -326
  484. package/src/_modules/location/_collections/assets/country-subdivisions/turkmenistan.json +0 -26
  485. package/src/_modules/location/_collections/assets/country-subdivisions/tuvalu.json +0 -34
  486. package/src/_modules/location/_collections/assets/country-subdivisions/uganda.json +0 -18
  487. package/src/_modules/location/_collections/assets/country-subdivisions/ukraine.json +0 -110
  488. package/src/_modules/location/_collections/assets/country-subdivisions/united-arab-emirates.json +0 -30
  489. package/src/_modules/location/_collections/assets/country-subdivisions/united-kingdom.json +0 -1197
  490. package/src/_modules/location/_collections/assets/country-subdivisions/united-states-minor-outlying-islands.json +0 -38
  491. package/src/_modules/location/_collections/assets/country-subdivisions/united-states.json +0 -287
  492. package/src/_modules/location/_collections/assets/country-subdivisions/uruguay.json +0 -78
  493. package/src/_modules/location/_collections/assets/country-subdivisions/uzbekistan.json +0 -58
  494. package/src/_modules/location/_collections/assets/country-subdivisions/vanuatu.json +0 -26
  495. package/src/_modules/location/_collections/assets/country-subdivisions/venezuela.json +0 -102
  496. package/src/_modules/location/_collections/assets/country-subdivisions/viet-nam.json +0 -258
  497. package/src/_modules/location/_collections/assets/country-subdivisions/yemen.json +0 -86
  498. package/src/_modules/location/_collections/assets/country-subdivisions/zambia.json +0 -38
  499. package/src/_modules/location/_collections/assets/country-subdivisions/zimbabwe.json +0 -42
  500. package/src/_modules/location/_collections/loc-country-divisions.const.ts +0 -11
  501. package/src/_modules/location/_collections/loc-country-isos.const.ts +0 -8
  502. package/src/_modules/location/_collections/loc-regions.util.spec.ts +0 -61
  503. package/src/_modules/location/_collections/loc-regions.util.ts +0 -137
  504. package/src/_modules/location/_collections/loc.util.spec.ts +0 -52
  505. package/src/_modules/location/_collections/loc.util.ts +0 -74
  506. package/src/_modules/location/_enums/loc-region.enum.ts +0 -14
  507. package/src/_modules/location/_enums/loc-sub-region.enum.ts +0 -31
  508. package/src/_modules/location/_enums/loc-subdivision-region-type.enum.ts +0 -47
  509. package/src/_modules/location/_models/loc-coordinates.interface.ts +0 -7
  510. package/src/_modules/location/_models/loc-country-division.interface.ts +0 -8
  511. package/src/_modules/location/_models/loc-country-iso.interface.ts +0 -23
  512. package/src/_modules/location/_models/loc-country-phone-code.interface.ts +0 -9
  513. package/src/_modules/location/_models/loc-division-collection.interface.ts +0 -12
  514. package/src/_modules/location/_models/loc-division-region-data.interface.ts +0 -9
  515. package/src/_modules/location/_models/loc-geo-ip-location.interface.ts +0 -27
  516. package/src/_modules/location/index.ts +0 -22
  517. package/src/_modules/messaging/README.md +0 -279
  518. package/src/_modules/messaging/_collections/msg-module-settings.const.ts +0 -46
  519. package/src/_modules/messaging/_enums/msg-attachment-type.enum.ts +0 -26
  520. package/src/_modules/messaging/_enums/msg-conversation-type.enum.ts +0 -20
  521. package/src/_modules/messaging/_enums/msg-delivery-status.enum.ts +0 -17
  522. package/src/_modules/messaging/_enums/msg-event-key.enum.ts +0 -31
  523. package/src/_modules/messaging/_enums/msg-participant-role.enum.ts +0 -20
  524. package/src/_modules/messaging/_enums/msg-provider-type.enum.ts +0 -7
  525. package/src/_modules/messaging/_enums/msg-status.enum.ts +0 -26
  526. package/src/_modules/messaging/_enums/msg-type.enum.ts +0 -23
  527. package/src/_modules/messaging/_models/msg-attachment.interface.ts +0 -46
  528. package/src/_modules/messaging/_models/msg-conversation.data-model.spec.ts +0 -69
  529. package/src/_modules/messaging/_models/msg-conversation.data-model.ts +0 -96
  530. package/src/_modules/messaging/_models/msg-mention.interface.ts +0 -29
  531. package/src/_modules/messaging/_models/msg-message.data-model.spec.ts +0 -79
  532. package/src/_modules/messaging/_models/msg-message.data-model.ts +0 -127
  533. package/src/_modules/messaging/_models/msg-participant.interface.ts +0 -46
  534. package/src/_modules/messaging/_models/msg-reaction.interface.ts +0 -20
  535. package/src/_modules/messaging/_models/msg-thread-info.interface.ts +0 -35
  536. package/src/_modules/messaging/_modules/agent/_enums/agt-process-step-type.enum.ts +0 -35
  537. package/src/_modules/messaging/_modules/agent/_enums/agt-tool-status.enum.ts +0 -23
  538. package/src/_modules/messaging/_modules/agent/_models/agt-process-step.interface.ts +0 -55
  539. package/src/_modules/messaging/_modules/agent/_models/agt-reasoning-info.interface.ts +0 -26
  540. package/src/_modules/messaging/_modules/agent/_models/agt-tool-usage.interface.ts +0 -37
  541. package/src/_modules/messaging/_modules/agent/index.ts +0 -8
  542. package/src/_modules/messaging/index.ts +0 -28
  543. package/src/_modules/ngx-models/_collections/angular-placeholders.ts +0 -35
  544. package/src/_modules/ngx-models/_collections/button-new-style-settings-presets.const.ts +0 -181
  545. package/src/_modules/ngx-models/_collections/dynamo-global.settings.spec.ts +0 -74
  546. package/src/_modules/ngx-models/_collections/dynamo-global.settings.ts +0 -103
  547. package/src/_modules/ngx-models/_enums/button-new/button-new-border-radius.enum.ts +0 -16
  548. package/src/_modules/ngx-models/_enums/button-new/button-new-icon-style-type.enum.ts +0 -14
  549. package/src/_modules/ngx-models/_enums/button-new/button-new-size.enum.ts +0 -16
  550. package/src/_modules/ngx-models/_enums/button-new/button-new-style-type.enum.ts +0 -18
  551. package/src/_modules/ngx-models/_enums/button-type.enum.ts +0 -36
  552. package/src/_modules/ngx-models/_enums/checkbox-label-position.enum.ts +0 -8
  553. package/src/_modules/ngx-models/_enums/container-type.enum.ts +0 -11
  554. package/src/_modules/ngx-models/_enums/errors/error-level.enum.ts +0 -13
  555. package/src/_modules/ngx-models/_enums/errors/error-notification-color.enum.ts +0 -13
  556. package/src/_modules/ngx-models/_enums/errors/error-ui-mode.enum.ts +0 -13
  557. package/src/_modules/ngx-models/_enums/field-appearance.enum.ts +0 -14
  558. package/src/_modules/ngx-models/_enums/field-type.enum.ts +0 -55
  559. package/src/_modules/ngx-models/_enums/file-type.enum.ts +0 -12
  560. package/src/_modules/ngx-models/_enums/flex/flex-layout-align.enum.ts +0 -21
  561. package/src/_modules/ngx-models/_enums/flex/flex-layout.enum.ts +0 -5
  562. package/src/_modules/ngx-models/_enums/form-access.enum.ts +0 -9
  563. package/src/_modules/ngx-models/_enums/form-reset-data.enum.ts +0 -12
  564. package/src/_modules/ngx-models/_enums/form-store-on.enum.ts +0 -9
  565. package/src/_modules/ngx-models/_enums/forms-new/field-new-validator-type.enum.ts +0 -20
  566. package/src/_modules/ngx-models/_enums/frames/header-item-type.enum.ts +0 -15
  567. package/src/_modules/ngx-models/_enums/frames/header-position.enum.ts +0 -10
  568. package/src/_modules/ngx-models/_enums/frames/side-nav-badge-color.enum.ts +0 -13
  569. package/src/_modules/ngx-models/_enums/html/input-types.enum.ts +0 -27
  570. package/src/_modules/ngx-models/_enums/material-color.enum.ts +0 -16
  571. package/src/_modules/ngx-models/_enums/material-tooltip-position.enum.ts +0 -17
  572. package/src/_modules/ngx-models/_enums/preconfigured-field-type.enum.ts +0 -8
  573. package/src/_modules/ngx-models/_enums/storage-type.enum.ts +0 -15
  574. package/src/_modules/ngx-models/_enums/validator-type.enum.ts +0 -9
  575. package/src/_modules/ngx-models/_enums/voice/audio-mime-type.enum.ts +0 -14
  576. package/src/_modules/ngx-models/_enums/voice/voice-provider-type.enum.ts +0 -26
  577. package/src/_modules/ngx-models/_enums/voice/voice-recorder-state.enum.ts +0 -20
  578. package/src/_modules/ngx-models/_models/control-models/button-new-style-settings.control-model.ts +0 -37
  579. package/src/_modules/ngx-models/_models/control-models/button-params.control-model.spec.ts +0 -70
  580. package/src/_modules/ngx-models/_models/control-models/button-params.control-model.ts +0 -332
  581. package/src/_modules/ngx-models/_models/control-models/chat/chat-column-layout-settings.control-model.ts +0 -28
  582. package/src/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.spec.ts +0 -91
  583. package/src/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.ts +0 -135
  584. package/src/_modules/ngx-models/_models/control-models/data-handler.control-model.ts +0 -529
  585. package/src/_modules/ngx-models/_models/control-models/errors/error-notification.control-model.ts +0 -52
  586. package/src/_modules/ngx-models/_models/control-models/errors/error-settings.control-model.ts +0 -34
  587. package/src/_modules/ngx-models/_models/control-models/errors/errors-pojo.spec.ts +0 -86
  588. package/src/_modules/ngx-models/_models/control-models/errors/errors-settings.control-model.ts +0 -52
  589. package/src/_modules/ngx-models/_models/control-models/field-settings.control-model.spec.ts +0 -109
  590. package/src/_modules/ngx-models/_models/control-models/field-settings.control-model.ts +0 -133
  591. package/src/_modules/ngx-models/_models/control-models/form-settings.control-model.spec.ts +0 -109
  592. package/src/_modules/ngx-models/_models/control-models/form-settings.control-model.ts +0 -160
  593. package/src/_modules/ngx-models/_models/control-models/forms-new/checkbox-field-new-settings.control-model.ts +0 -25
  594. package/src/_modules/ngx-models/_models/control-models/forms-new/color-picker-field-new-settings.control-model.ts +0 -44
  595. package/src/_modules/ngx-models/_models/control-models/forms-new/date-field-new-settings.control-model.ts +0 -26
  596. package/src/_modules/ngx-models/_models/control-models/forms-new/date-range-field-new-settings.control-model.ts +0 -42
  597. package/src/_modules/ngx-models/_models/control-models/forms-new/datetime-field-new-settings.control-model.ts +0 -35
  598. package/src/_modules/ngx-models/_models/control-models/forms-new/datetime-range-field-new-settings.control-model.ts +0 -35
  599. package/src/_modules/ngx-models/_models/control-models/forms-new/emoji-picker-field-new-settings.control-model.ts +0 -24
  600. package/src/_modules/ngx-models/_models/control-models/forms-new/field-new-settings.control-model.ts +0 -85
  601. package/src/_modules/ngx-models/_models/control-models/forms-new/field-new-types.ts +0 -48
  602. package/src/_modules/ngx-models/_models/control-models/forms-new/form-new-settings.control-model.ts +0 -40
  603. package/src/_modules/ngx-models/_models/control-models/forms-new/forms-new.spec.ts +0 -245
  604. package/src/_modules/ngx-models/_models/control-models/forms-new/icon-picker-field-new-settings.control-model.ts +0 -52
  605. package/src/_modules/ngx-models/_models/control-models/forms-new/index.ts +0 -24
  606. package/src/_modules/ngx-models/_models/control-models/forms-new/multiselect-field-new-settings.control-model.ts +0 -27
  607. package/src/_modules/ngx-models/_models/control-models/forms-new/number-field-new-settings.control-model.ts +0 -24
  608. package/src/_modules/ngx-models/_models/control-models/forms-new/password-field-new-settings.control-model.ts +0 -35
  609. package/src/_modules/ngx-models/_models/control-models/forms-new/picker-field-new-option.interface.ts +0 -9
  610. package/src/_modules/ngx-models/_models/control-models/forms-new/radio-select-field-new-settings.control-model.ts +0 -35
  611. package/src/_modules/ngx-models/_models/control-models/forms-new/select-field-new-settings.control-model.ts +0 -46
  612. package/src/_modules/ngx-models/_models/control-models/forms-new/slider-field-new-settings.control-model.ts +0 -37
  613. package/src/_modules/ngx-models/_models/control-models/forms-new/slider-range-field-new-settings.control-model.ts +0 -45
  614. package/src/_modules/ngx-models/_models/control-models/forms-new/text-field-new-settings.control-model.ts +0 -30
  615. package/src/_modules/ngx-models/_models/control-models/forms-new/textarea-field-new-settings.control-model.ts +0 -22
  616. package/src/_modules/ngx-models/_models/control-models/frames/frames-pojo.spec.ts +0 -108
  617. package/src/_modules/ngx-models/_models/control-models/frames/header-item-settings.control-model.ts +0 -52
  618. package/src/_modules/ngx-models/_models/control-models/frames/main-frame-settings.control-model.ts +0 -40
  619. package/src/_modules/ngx-models/_models/control-models/frames/side-nav-item-settings.control-model.ts +0 -55
  620. package/src/_modules/ngx-models/_models/control-models/frames/side-nav-settings.control-model.ts +0 -30
  621. package/src/_modules/ngx-models/_models/control-models/select.control-model.spec.ts +0 -45
  622. package/src/_modules/ngx-models/_models/control-models/select.control-model.ts +0 -28
  623. package/src/_modules/ngx-models/_models/control-models/voice/voice-pojo.spec.ts +0 -111
  624. package/src/_modules/ngx-models/_models/control-models/voice/voice-providers-settings.control-model.ts +0 -74
  625. package/src/_modules/ngx-models/_models/control-models/voice/voice-record-button-settings.control-model.ts +0 -42
  626. package/src/_modules/ngx-models/_models/control-models/voice/voice-recorder-settings.control-model.ts +0 -37
  627. package/src/_modules/ngx-models/_models/interfaces/button-new-settings.interface.ts +0 -74
  628. package/src/_modules/ngx-models/_models/interfaces/confirm-settings.interface.ts +0 -20
  629. package/src/_modules/ngx-models/_models/interfaces/global-settings.interface.ts +0 -67
  630. package/src/_modules/ngx-models/_models/interfaces/select-options-custom-constructor.interface.ts +0 -40
  631. package/src/_modules/ngx-models/_models/interfaces/storage.service.spec.ts +0 -18
  632. package/src/_modules/ngx-models/_models/interfaces/storage.service.ts +0 -41
  633. package/src/_modules/ngx-models/_models/interfaces/voice/speak-options.interface.ts +0 -19
  634. package/src/_modules/ngx-models/_models/interfaces/voice/speak-result.interface.ts +0 -14
  635. package/src/_modules/ngx-models/_models/interfaces/voice/transcribe-options.interface.ts +0 -14
  636. package/src/_modules/ngx-models/_models/interfaces/voice/transcribe-result.interface.ts +0 -15
  637. package/src/_modules/ngx-models/_models/interfaces/voice/voice-profile.interface.ts +0 -18
  638. package/src/_modules/ngx-models/_models/interfaces/voice/voice-provider-init.interface.ts +0 -21
  639. package/src/_modules/ngx-models/_utils/shared.service.spec.ts +0 -7
  640. package/src/_modules/ngx-models/_utils/shared.service.ts +0 -541
  641. package/src/_modules/ngx-models/index.ts +0 -110
  642. package/src/_modules/pipe/_collections/pip-transforms.const.ts +0 -42
  643. package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.spec.ts +0 -47
  644. package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.ts +0 -41
  645. package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.spec.ts +0 -39
  646. package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.ts +0 -30
  647. package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.spec.ts +0 -41
  648. package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.ts +0 -36
  649. package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.spec.ts +0 -62
  650. package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.ts +0 -18
  651. package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.spec.ts +0 -34
  652. package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.ts +0 -25
  653. package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.spec.ts +0 -67
  654. package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.ts +0 -227
  655. package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.spec.ts +0 -28
  656. package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.ts +0 -21
  657. package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.spec.ts +0 -59
  658. package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.ts +0 -106
  659. package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.spec.ts +0 -31
  660. package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.ts +0 -35
  661. package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.spec.ts +0 -44
  662. package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.ts +0 -23
  663. package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.spec.ts +0 -21
  664. package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.ts +0 -33
  665. package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.spec.ts +0 -62
  666. package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.ts +0 -80
  667. package/src/_modules/pipe/_enums/pip-range-pipe-setting.enum.ts +0 -15
  668. package/src/_modules/pipe/_enums/pip.enum.ts +0 -65
  669. package/src/_modules/pipe/_models/pip-multi-pipe-settings.type.ts +0 -8
  670. package/src/_modules/pipe/_models/pip-transforms.interface.ts +0 -30
  671. package/src/_modules/pipe/index.ts +0 -30
  672. package/src/_modules/security/_collections/stored-secret.util.spec.ts +0 -81
  673. package/src/_modules/security/_collections/stored-secret.util.ts +0 -96
  674. package/src/_modules/security/_models/stored-secret.control-model.ts +0 -55
  675. package/src/_modules/security/index.ts +0 -9
  676. package/src/_modules/socket/_enums/sck-event-key.enum.ts +0 -21
  677. package/src/_modules/socket/_models/sck-client-params.control-model.spec.ts +0 -67
  678. package/src/_modules/socket/_models/sck-client-params.control-model.ts +0 -50
  679. package/src/_modules/socket/_models/sck-socket-event.control-model.spec.ts +0 -89
  680. package/src/_modules/socket/_models/sck-socket-event.control-model.ts +0 -185
  681. package/src/_modules/socket/_services/sck-client.service-base.spec.ts +0 -99
  682. package/src/_modules/socket/_services/sck-client.service-base.ts +0 -353
  683. package/src/_modules/socket/index.ts +0 -14
  684. package/src/_modules/state-machine/_models/state-machine-config.interface.ts +0 -19
  685. package/src/_modules/state-machine/_models/state-machine-event.interface.ts +0 -25
  686. package/src/_modules/state-machine/_models/state-machine.control-model.spec.ts +0 -314
  687. package/src/_modules/state-machine/_models/state-machine.control-model.ts +0 -298
  688. package/src/_modules/state-machine/_models/state-transition-result.interface.ts +0 -53
  689. package/src/_modules/state-machine/_models/state-transition.interface.ts +0 -30
  690. package/src/_modules/state-machine/index.ts +0 -6
  691. package/src/_modules/test/_collections/tst-module-settings.const.ts +0 -67
  692. package/src/_modules/test/index.ts +0 -5
  693. package/src/_modules/usage/_collections/usg-module-settings.const.ts +0 -33
  694. package/src/_modules/usage/_models/usg-action.control-model.spec.ts +0 -27
  695. package/src/_modules/usage/_models/usg-action.control-model.ts +0 -28
  696. package/src/_modules/usage/_models/usg-daily-usage-data.control-model.spec.ts +0 -36
  697. package/src/_modules/usage/_models/usg-daily-usage-data.control-model.ts +0 -35
  698. package/src/_modules/usage/_models/usg-data.control-model.spec.ts +0 -41
  699. package/src/_modules/usage/_models/usg-data.control-model.ts +0 -35
  700. package/src/_modules/usage/_models/usg-session.data-model.spec.ts +0 -97
  701. package/src/_modules/usage/_models/usg-session.data-model.ts +0 -72
  702. package/src/_modules/usage/index.ts +0 -11
  703. package/src/index.ts +0 -104
  704. package/tsconfig.app.json +0 -12
  705. package/tsconfig.json +0 -32
  706. package/tsconfig.test.json +0 -16
  707. package/tslint.json +0 -153
package/README.md CHANGED
@@ -1,721 +1,721 @@
1
- # @futdevpro/fsm-dynamo
2
-
3
- [![npm version](https://img.shields.io/npm/v/@futdevpro/fsm-dynamo.svg)](https://www.npmjs.com/package/@futdevpro/fsm-dynamo)
4
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
-
6
- **Full Stack Model Collection for Dynamic (NodeJS-TypeScript) Framework**
7
-
8
- Dynamo FSM (Full Stack Module) is the foundational TypeScript package that provides the core infrastructure and shared utilities for building full-stack applications. It serves as the base structure for all other Dynamo projects, establishing consistent patterns, type definitions, and interfaces that ensure seamless integration between frontend and backend implementations.
9
-
10
- **Naming Convention**: All exports from Dynamo FSM use the `DyFM_*` prefix (Dynamo Full Stack Module), ensuring clear identification and preventing naming conflicts. This consistent prefix pattern makes it easy to identify FSM utilities, classes, interfaces, and enums throughout your codebase.
11
-
12
- ## Table of Contents
13
-
14
- - [Introduction](#introduction)
15
- - [Features](#features)
16
- - [Installation](#installation)
17
- - [Quick Start](#quick-start)
18
- - [Modules](#modules)
19
- - [Common Usage Patterns](#common-usage-patterns)
20
- - [API Reference](#api-reference)
21
- - [Requirements](#requirements)
22
- - [Support & Contributing](#support--contributing)
23
- - [License](#license)
24
-
25
- ## Introduction
26
-
27
- Dynamo FSM provides core utilities for data manipulation, error handling, logging, state management, and more. It includes modules covering AI integration, real-time communication, location services, data transformation, and testing tools. This package serves as the base structure for all other Dynamo projects.
28
-
29
- **Naming Convention**: All exports from Dynamo FSM use the `DyFM_*` prefix (Dynamo Full Stack Module). This consistent naming pattern makes it easy to identify FSM utilities, classes, interfaces, enums, and constants throughout your codebase. Examples include `DyFM_Array`, `DyFM_Log`, `DyFM_Error`, `DyFM_DataHandler`, and `DyFM_Metadata`.
30
-
31
- ### Dynamo Packages Using FSM
32
-
33
- Dynamo FSM is the foundational package used by all other Dynamo packages:
34
-
35
- - **[Dynamo-NTS](https://www.npmjs.com/package/@futdevpro/dynamo-nts)** - Backend framework for Node.js with TypeScript
36
- - **[Dynamo NGX Models](https://www.npmjs.com/package/@futdevpro/ngx-dynamo-models)** - Model definitions for Angular applications
37
- - **[Dynamo NGX](https://www.npmjs.com/package/@futdevpro/ngx-dynamo)** - Angular framework with Material Design and Tailwind CSS
38
-
39
- All these packages build upon Dynamo FSM's core interfaces, types, and utilities, ensuring consistency and type safety across the entire Dynamo ecosystem.
40
-
41
- ### Key Characteristics
42
-
43
- - **Zero Dependencies**: The foundational package has no dependencies (except peer dependencies), making it the base upon which all other Dynamo packages are built
44
- - **Type-Safe Full-Stack Development**: Shared interfaces and models ensure data structures, API contracts, and business logic remain consistent from database to UI
45
- - **Comprehensive Utility Library**: Utilities for arrays, strings, dates, UUIDs, error handling, logging, and more
46
- - **Modular Architecture**: Import only what you need, keeping bundle sizes small while providing access to a comprehensive toolkit
47
-
48
- ## Features
49
-
50
- ### Core Utilities
51
- - **Array Manipulation**: Advanced array operations with async support (`DyFM_Array`)
52
- - **String Operations**: Comprehensive string manipulation utilities (`DyFM_String`)
53
- - **Time & Date**: Advanced time manipulation and formatting (`DyFM_Time`)
54
- - **UUID Generation**: Secure UUID generation utilities (`DyFM_UUID`)
55
- - **Logging**: Advanced logging with customizable styling (`DyFM_Log`)
56
- - **Error Handling**: Standardized error handling with configurable severity levels (`DyFM_Error`)
57
- - **Data Transformation**: Type-safe cloning and data manipulation utilities
58
-
59
- ### Specialized Modules
60
- - **AI Integration**: Unified interface for multiple AI providers (OpenAI, Anthropic, Google, Local AI)
61
- - **Reactive Data Management**: RxJS-based data handlers for single items, lists, and searchable data
62
- - **Real-Time Communication**: Socket.IO integration for bidirectional communication
63
- - **Location Services**: Comprehensive geographical data handling with country information
64
- - **Messaging System**: Unified messaging for user↔user and user↔AI communication
65
- - **Data Transformation**: Specialized pipes for geographic data, string manipulation, and formatting
66
- - **Crypto Utilities**: Deterministic encryption/decryption using AES-256-CBC
67
- - **Testing Tools**: Comprehensive HTTP endpoint testing utilities
68
- - **Analytics**: User behavior tracking and usage analytics
69
-
70
- ## Installation
71
-
72
- ```bash
73
- npm install @futdevpro/fsm-dynamo
74
- ```
75
-
76
- or
77
-
78
- ```bash
79
- pnpm add @futdevpro/fsm-dynamo
80
- ```
81
-
82
- ## Quick Start
83
-
84
- ### Basic Utility Usage
85
-
86
- ```typescript
87
- import { DyFM_Array, DyFM_String, DyFM_Log, DyFM_Error, DyFM_ErrorLevel } from '@futdevpro/fsm-dynamo';
88
-
89
- // Array operations
90
- const numbers = [1, 2, 3, 4, 5];
91
- const doubled = DyFM_Array.map(numbers, (n) => n * 2);
92
-
93
- // String operations
94
- const formatted = DyFM_String.capitalize('hello world'); // "Hello World"
95
-
96
- // Logging
97
- DyFM_Log.info('Application started');
98
- DyFM_Log.warn('This is a warning');
99
- DyFM_Log.error('An error occurred');
100
-
101
- // Special logging methods
102
- DyFM_Log.H_error('Highlighted error message'); // Highlighted error with visual formatting
103
- DyFM_Log.T_error('Test error message'); // Test error with special formatting
104
-
105
- // Error handling
106
- const error = new DyFM_Error({
107
- errorCode: 'USER_NOT_FOUND',
108
- message: 'User with ID 123 not found',
109
- userMessage: 'User not found',
110
- level: DyFM_ErrorLevel.error
111
- });
112
-
113
- // Or use static method for any error type
114
- DyFM_Error.logSimple('Operation failed', error);
115
- ```
116
-
117
- ### Data Handler Example
118
-
119
- ```typescript
120
- import { DyFM_DataHandler } from '@futdevpro/fsm-dynamo/data-handler';
121
- import { DyFM_Metadata } from '@futdevpro/fsm-dynamo';
122
-
123
- interface User extends DyFM_Metadata {
124
- name: string;
125
- email: string;
126
- }
127
-
128
- class UserHandler extends DyFM_DataHandler<User> {
129
- constructor(apiService: any) {
130
- super({
131
- name: 'UserHandler',
132
- get: async (userId: string) => {
133
- return await apiService.getUser(userId);
134
- },
135
- set: async (user: User) => {
136
- return await apiService.updateUser(user);
137
- }
138
- });
139
- }
140
- }
141
-
142
- // Usage
143
- const userHandler = new UserHandler(apiService);
144
- await userHandler.reload('user-123');
145
- userHandler.data$.subscribe(user => {
146
- console.log('User loaded:', user);
147
- });
148
- ```
149
-
150
- ### AI Module Example
151
-
152
- ```typescript
153
- import { DyFM_AI_Provider, DyFM_AI_MessageRole } from '@futdevpro/fsm-dynamo/ai';
154
- import { DyFM_OAI_Model } from '@futdevpro/fsm-dynamo/ai/open-ai';
155
-
156
- // Configure AI provider
157
- const aiConfig = {
158
- provider: DyFM_AI_Provider.OpenAI,
159
- apiKey: process.env.OPENAI_API_KEY,
160
- model: DyFM_OAI_Model.gpt_4o_latest
161
- };
162
-
163
- // Create AI request
164
- const aiRequest = {
165
- messages: [
166
- {
167
- role: DyFM_AI_MessageRole.user,
168
- content: 'Hello, how are you?'
169
- }
170
- ],
171
- settings: aiConfig
172
- };
173
- ```
174
-
175
- ## Modules
176
-
177
- Dynamo FSM is organized into 12 specialized modules, each providing focused functionality for specific use cases.
178
-
179
- ### 1. Main Module
180
-
181
- **Import:** `@futdevpro/fsm-dynamo`
182
-
183
- The core foundation providing essential utilities, constants, enums, and models for state management and data handling.
184
-
185
- **Key Features:**
186
- - Core utilities for array manipulation, logging, string operations, and type-safe data handling
187
- - Constants for times, data sizes, numbers, and global settings
188
- - Enums for error levels, HTTP types, log styles, and more
189
- - Models for error handling, data properties, and service endpoints
190
-
191
- **Example:**
192
- ```typescript
193
- import {
194
- DyFM_Array,
195
- DyFM_Log,
196
- DyFM_Error,
197
- DyFM_times,
198
- DyFM_ErrorLevel
199
- } from '@futdevpro/fsm-dynamo';
200
-
201
- // Use time constants
202
- const oneDay = DyFM_times.day; // 86400000 milliseconds
203
-
204
- // Array operations
205
- const result = DyFM_Array.filter([1, 2, 3, 4], n => n > 2);
206
- ```
207
-
208
- ### 2. AI Module
209
-
210
- **Import:** `@futdevpro/fsm-dynamo/ai`
211
-
212
- Unified interface for interacting with multiple AI providers (OpenAI, Anthropic, Google, Local AI).
213
-
214
- **Key Features:**
215
- - Standardized models and interfaces for LLM operations
216
- - Embedding support across providers
217
- - Provider capability detection
218
- - Flexible configuration options
219
-
220
- **Submodules:**
221
- - `@futdevpro/fsm-dynamo/ai/open-ai` - OpenAI-specific implementations
222
- - `@futdevpro/fsm-dynamo/ai/anthropic` - Anthropic (Claude) implementations
223
- - `@futdevpro/fsm-dynamo/ai/google` - Google AI implementations
224
- - `@futdevpro/fsm-dynamo/ai/local` - Local AI implementations
225
-
226
- **Example:**
227
- ```typescript
228
- import { DyFM_AI_Provider, DyFM_AI_MessageRole } from '@futdevpro/fsm-dynamo/ai';
229
- import { DyFM_OAI_Model } from '@futdevpro/fsm-dynamo/ai/open-ai';
230
-
231
- const config = {
232
- provider: DyFM_AI_Provider.OpenAI,
233
- model: DyFM_OAI_Model.gpt_4o_latest
234
- };
235
- ```
236
-
237
- **See also:**
238
- - [OpenAI-compatible providers how-to (LM Studio / Ollama / vLLM / LocalAI)](__documentations/2026-05-17-oai-compatible-providers-howto.md) — `DyFM_OAI_ClientOptions.baseURL`-override mintázattal lokál és self-hosted LLM-ek
239
-
240
- ### 3. Data Handler Module
241
-
242
- **Import:** `@futdevpro/fsm-dynamo/data-handler`
243
-
244
- Reactive data management utilities using RxJS BehaviorSubjects and Observables.
245
-
246
- **Key Features:**
247
- - Automatic loading prevention (prevents multiple simultaneous load calls)
248
- - Post-processing support for data transformation
249
- - Dependency management for dependent data handlers
250
- - Specialized handlers for lists, searchable data, and pagination
251
-
252
- **Classes:**
253
- - `DyFM_DataHandler` - Base handler for single data items
254
- - `DyFM_DataListHandler` - Handler for array data
255
- - `DyFM_DataSearchHandler` - Handler for searchable data with pagination
256
- - `DyFM_ListCollectorDataHandler` - Handler for list collections within parent objects
257
-
258
- **Example:**
259
- ```typescript
260
- import { DyFM_DataListHandler } from '@futdevpro/fsm-dynamo/data-handler';
261
-
262
- const listHandler = new DyFM_DataListHandler({
263
- name: 'UsersList',
264
- get: async () => await apiService.getUsers(),
265
- setItem: async (user) => await apiService.updateUser(user),
266
- deleteItem: async (userId) => await apiService.deleteUser(userId)
267
- });
268
-
269
- listHandler.dataList$.subscribe(users => {
270
- console.log('Users updated:', users);
271
- });
272
- ```
273
-
274
- ### 4. Location Module
275
-
276
- **Import:** `@futdevpro/fsm-dynamo/location`
277
-
278
- Comprehensive suite for handling geographical data and location-based functionality.
279
-
280
- **Key Features:**
281
- - Country information management with ISO codes
282
- - Administrative divisions data
283
- - Geographical utilities for coordinates and distance calculations
284
- - Region classification and IP-based location services
285
- - Phone code integration
286
-
287
- **Example:**
288
- ```typescript
289
- import {
290
- DyFM_CountryISOs,
291
- DyFM_LocationUtils,
292
- DyFM_RegionsUtils
293
- } from '@futdevpro/fsm-dynamo/location';
294
-
295
- const country = DyFM_CountryISOs.getByISO('US');
296
- const distance = DyFM_LocationUtils.calculateDistance(
297
- { lat: 40.7128, lng: -74.0060 },
298
- { lat: 34.0522, lng: -118.2437 }
299
- );
300
- ```
301
-
302
- ### 5. Messaging Module
303
-
304
- **Import:** `@futdevpro/fsm-dynamo/messaging`
305
-
306
- Unified messaging system for user↔user and user↔AI communication.
307
-
308
- **Key Features:**
309
- - Support for direct, group, assistant chat, and channel conversations
310
- - Message types: text, attachments, reactions, mentions, threads
311
- - Real-time capabilities with socket integration
312
- - Agent process visualization for AI reasoning
313
- - Participant role management
314
-
315
- **Example:**
316
- ```typescript
317
- import {
318
- DyFM_Msg_Message,
319
- DyFM_Msg_Type,
320
- DyFM_Msg_Status
321
- } from '@futdevpro/fsm-dynamo/messaging';
322
-
323
- const message = new DyFM_Msg_Message({
324
- conversationId: 'conv-123',
325
- senderId: 'user-456',
326
- content: 'Hello, world!',
327
- type: DyFM_Msg_Type.text,
328
- status: DyFM_Msg_Status.sent
329
- });
330
- ```
331
-
332
- ### 6. Socket Module
333
-
334
- **Import:** `@futdevpro/fsm-dynamo/socket`
335
-
336
- Real-time bidirectional communication using Socket.IO.
337
-
338
- **Key Features:**
339
- - Event management with predefined event keys
340
- - Client configuration and connection management
341
- - Automatic reconnection logic
342
- - Observable properties for connection and subscription states
343
- - Base service class for custom socket clients
344
-
345
- **Example:**
346
- ```typescript
347
- import {
348
- DyFM_SocketClient_ServiceBase,
349
- DyFM_SocketEvent_Key
350
- } from '@futdevpro/fsm-dynamo/socket';
351
-
352
- class MySocketClient extends DyFM_SocketClient_ServiceBase {
353
- // Implementation
354
- }
355
- ```
356
-
357
- ### 7. Pipe Module
358
-
359
- **Import:** `@futdevpro/fsm-dynamo/pipe`
360
-
361
- Data transformation utilities for manipulating and formatting data.
362
-
363
- **Key Features:**
364
- - Specialized pipes for geographic data, string manipulation, and data formatting
365
- - UI component support with Angular pipe integration
366
- - Multi-pipe functionality for complex transformations
367
- - Country, region, and division formatting
368
-
369
- **Example:**
370
- ```typescript
371
- import { DyFM_pipeTransforms } from '@futdevpro/fsm-dynamo/pipe';
372
-
373
- const formatted = DyFM_pipeTransforms.country('US'); // "United States"
374
- ```
375
-
376
- ### 8. Crypto Module
377
-
378
- **Import:** `@futdevpro/fsm-dynamo/crypto`
379
-
380
- Deterministic encryption and decryption utilities using AES-256-CBC.
381
-
382
- **Key Features:**
383
- - Deterministic encryption (same input + key = same output)
384
- - Cross-platform compatibility
385
- - URL-safe base64 encoding
386
- - Secure random key generation
387
- - Cross-runtime ECDSA P-256 artifact signing and public-key verification
388
- - Strict 64-byte IEEE P1363 signatures with unpadded Base64URL transport
389
- - Content-free verification codes and canonical public-JWK fingerprints
390
-
391
- **Important:** This implementation produces identical encrypted output for identical input data and key. Use when consistency across systems is more important than cryptographic security.
392
-
393
- **Example:**
394
- ```typescript
395
- import { DyFM_Crypto } from '@futdevpro/fsm-dynamo/crypto';
396
-
397
- const encrypted = DyFM_Crypto.encrypt('sensitive data', 'my-secret-key');
398
- const decrypted = DyFM_Crypto.decrypt(encrypted, 'my-secret-key');
399
- ```
400
-
401
- For publication authenticity, `DyFM_ArtifactSignature_ControlService` signs exact caller-provided bytes with a
402
- PKCS#8 private key and verifies them with a public P-256 JWK. Private material belongs in the consuming server's
403
- FDP Keystore configuration and is never returned in signature evidence or sent to a browser. The verifier works
404
- through Web Crypto in secure browser contexts and supported Node.js runtimes.
405
-
406
- ### Deployment Contract Module
407
-
408
- **Import:** `@futdevpro/fsm-dynamo/deployment`
409
-
410
- Shared, content-free deployment target contracts for FDP operational tooling.
411
-
412
- **Key Features:**
413
- - Strict `fdp-atomic-rollback-manifest/1` parsing with unknown-field rejection
414
- - Canonical, order-independent target checksum generation
415
- - Immutable image reference, digest and mutable promotion-target validation
416
- - Configuration revision, compatibility-policy and authority-evidence validation
417
- - Safe post-check endpoint validation and bounded gap-code evidence
418
-
419
- The module validates only operational metadata. Application data, workbook content, secrets and credentials do not
420
- belong in the manifest and are rejected when supplied as additional fields.
421
-
422
- Use `DyFM_AtomicRollbackManifest_Util.validate(value)` for strict parsing and
423
- `DyFM_AtomicRollbackManifest_Util.computeTargetChecksum(manifest)` for canonical target checksums.
424
-
425
- ### 9. Custom Data Module
426
-
427
- **Import:** `@futdevpro/fsm-dynamo/custom-data`
428
-
429
- Flexible storage and management of custom data with metadata support.
430
-
431
- **Key Features:**
432
- - Type-safe data containers with validation rules
433
- - RESTful API endpoints for data operations
434
- - Metadata support for tracking and organization
435
-
436
- **Example:**
437
- ```typescript
438
- import { DyFM_CustomData } from '@futdevpro/fsm-dynamo/custom-data';
439
-
440
- const customData = new DyFM_CustomData({
441
- key: 'user-preferences',
442
- value: { theme: 'dark', language: 'en' },
443
- __createdBy: 'user-123'
444
- });
445
- ```
446
-
447
- ### 10. Test Module
448
-
449
- **Import:** `@futdevpro/fsm-dynamo/test`
450
-
451
- Comprehensive testing tools for HTTP endpoints.
452
-
453
- **Key Features:**
454
- - Complete suite of HTTP method test endpoints
455
- - Server status monitoring
456
- - Structured response handling
457
-
458
- ### 11. Usage Module
459
-
460
- **Import:** `@futdevpro/fsm-dynamo/usage`
461
-
462
- User behavior tracking and analytics tools.
463
-
464
- **Key Features:**
465
- - Session management
466
- - Usage analytics and geographic insights
467
- - Daily statistics and action tracking
468
-
469
- **Example:**
470
- ```typescript
471
- import { DyFM_UsageSession } from '@futdevpro/fsm-dynamo/usage';
472
-
473
- const session = new DyFM_UsageSession({
474
- userId: 'user-123',
475
- startTime: new Date(),
476
- __createdBy: 'system'
477
- });
478
- ```
479
-
480
- ### 12. CI Tools Module
481
-
482
- **Import:** `@futdevpro/fsm-dynamo/ci-tools`
483
-
484
- Models and enums for tracking CI/CD pipeline results.
485
-
486
- **Key Features:**
487
- - Build, test, and deployment pipeline tracking
488
- - Detailed step-by-step results
489
- - Result code enums for standardized status reporting
490
-
491
- **Example:**
492
- ```typescript
493
- import {
494
- DyFM_CIT_CIResultCode,
495
- DyFM_CIT_CIResultInfo
496
- } from '@futdevpro/fsm-dynamo/ci-tools';
497
-
498
- const ciResult: DyFM_CIT_CIResultInfo = {
499
- resultCode: DyFM_CIT_CIResultCode.success,
500
- // ... other properties
501
- };
502
- ```
503
-
504
- ## Common Usage Patterns
505
-
506
- ### Import Patterns
507
-
508
- All exports use the `DyFM_` prefix (Dynamo Full Stack Module):
509
-
510
- ```typescript
511
- // Main module
512
- import { DyFM_Array, DyFM_Log, DyFM_Error } from '@futdevpro/fsm-dynamo';
513
-
514
- // Specific modules
515
- import { DyFM_DataHandler } from '@futdevpro/fsm-dynamo/data-handler';
516
- import { DyFM_AI_Provider } from '@futdevpro/fsm-dynamo/ai';
517
- import { DyFM_Crypto } from '@futdevpro/fsm-dynamo/crypto';
518
- ```
519
-
520
- ### Type Safety
521
-
522
- Dynamo FSM provides full TypeScript support with strict typing:
523
-
524
- ```typescript
525
- import { DyFM_Metadata, DyFM_Error, DyFM_ErrorLevel } from '@futdevpro/fsm-dynamo';
526
-
527
- interface User extends DyFM_Metadata {
528
- name: string;
529
- email: string;
530
- }
531
-
532
- // Type-safe error handling
533
- const error = new DyFM_Error({
534
- errorCode: 'VALIDATION_ERROR',
535
- message: 'Invalid user data',
536
- level: DyFM_ErrorLevel.warning
537
- });
538
- ```
539
-
540
- ### Error Handling Pattern
541
-
542
- ```typescript
543
- import { DyFM_Error, DyFM_ErrorLevel, DyFM_Log } from '@futdevpro/fsm-dynamo';
544
-
545
- try {
546
- // Your code
547
- } catch (err) {
548
- if (err instanceof DyFM_Error && err.___handled) {
549
- // Error already handled
550
- return;
551
- }
552
-
553
- const error = new DyFM_Error({
554
- errorCode: 'OPERATION_FAILED',
555
- message: err.message,
556
- userMessage: 'An error occurred',
557
- level: DyFM_ErrorLevel.error
558
- });
559
-
560
- // Use logSimple for formatted error logging
561
- error.logSimple('Operation failed');
562
- // Or use static method
563
- DyFM_Error.logSimple('Operation failed', error);
564
-
565
- throw error;
566
- }
567
- ```
568
-
569
- ### Special Logging Methods
570
-
571
- Dynamo FSM provides specialized logging methods for different use cases:
572
-
573
- ```typescript
574
- import { DyFM_Log, DyFM_Error } from '@futdevpro/fsm-dynamo';
575
-
576
- // Highlighted error - displays error with visual formatting
577
- DyFM_Log.H_error('Critical error occurred', errorDetails);
578
- // Alias: DyFM_Log.highlightedError()
579
-
580
- // Test error - displays error with test-specific formatting
581
- DyFM_Log.T_error('Test error message', testData);
582
- // Alias: DyFM_Log.testError()
583
-
584
- // Simple error logging - formatted error output with error code, message, stack
585
- const error = new DyFM_Error({
586
- errorCode: 'VALIDATION_ERROR',
587
- message: 'Invalid input',
588
- level: DyFM_ErrorLevel.error
589
- });
590
-
591
- // Static method for any error type
592
- DyFM_Error.logSimple('Operation failed', error);
593
- // Works with both DyFM_Error instances and regular Error objects
594
- ```
595
-
596
- ### Constants Usage
597
-
598
- ```typescript
599
- import { DyFM_times, DyFM_data_sizes, DyFM_numbers } from '@futdevpro/fsm-dynamo';
600
-
601
- // Time constants
602
- const oneHour = DyFM_times.hour;
603
- const oneDay = DyFM_times.day;
604
- const oneWeek = DyFM_times.week;
605
-
606
- // Data size constants
607
- const maxStringLength = DyFM_data_sizes.maxStringLength;
608
-
609
- // Number constants
610
- const maxSafeInteger = DyFM_numbers.maxSafeInteger;
611
- ```
612
-
613
- ## API Reference
614
-
615
- ### Main Exports
616
-
617
- The main module exports utilities, constants, enums, and models:
618
-
619
- **Constants:**
620
- - `DyFM_error_defaults` - Default error configuration
621
- - `DyFM_global_settings` - Global framework settings
622
- - `DyFM_numbers` - Standard numeric constants
623
- - `DyFM_times` - Time constants (second, minute, hour, day, week, month, year)
624
- - `DyFM_data_sizes` - Data size constants
625
-
626
- **Utilities:**
627
- - `DyFM_Array` - Array manipulation utilities
628
- - `DyFM_String` - String manipulation utilities
629
- - `DyFM_Log` - Logging utilities with special methods:
630
- - `DyFM_Log.H_error` / `DyFM_Log.highlightedError` - Big Highlighted error logging
631
- - `DyFM_Log.T_error` / `DyFM_Log.testError` - Mdium Highlighted error logging
632
- - `DyFM_Log.S_error` / `DyFM_Log.smallError` - Small Highlighted error logging
633
- - `DyFM_Time` - Time manipulation utilities
634
- - `DyFM_UUID` - UUID generation utilities
635
- - `DyFM_Data` - Data transformation utilities
636
- - `DyFM_Math` - Mathematical operations
637
- - `DyFM_Random` - Random number generation
638
-
639
- **Enums:**
640
- - `DyFM_ErrorLevel` - Error severity levels
641
- - `DyFM_LogStyle` - Text styling options
642
- - `DyFM_HttpCallType` - HTTP request methods
643
- - `DyFM_HttpResponseType` - HTTP response data types
644
- - `DyFM_EnvironmentFlag` - Environment types
645
-
646
- **Models:**
647
- - `DyFM_Error` - Error model with methods:
648
- - `logSimple()` - Formatted error logging with error code, message, stack, and additional content
649
- - `static logSimple()` - Static method for logging any error type
650
- - `DyFM_Metadata` - Base metadata model
651
- - `DyFM_SearchQuery` - Search query interface
652
- - `DyFM_SearchResult` - Search result interface
653
- - `DyFM_Paged` - Pagination interface
654
-
655
- ### Module Export Paths
656
-
657
- All modules can be imported directly:
658
-
659
- ```typescript
660
- // Main module
661
- import { ... } from '@futdevpro/fsm-dynamo';
662
-
663
- // Submodules
664
- import { ... } from '@futdevpro/fsm-dynamo/ai';
665
- import { ... } from '@futdevpro/fsm-dynamo/ai/open-ai';
666
- import { ... } from '@futdevpro/fsm-dynamo/ai/anthropic';
667
- import { ... } from '@futdevpro/fsm-dynamo/data-handler';
668
- import { ... } from '@futdevpro/fsm-dynamo/location';
669
- import { ... } from '@futdevpro/fsm-dynamo/messaging';
670
- import { ... } from '@futdevpro/fsm-dynamo/socket';
671
- import { ... } from '@futdevpro/fsm-dynamo/pipe';
672
- import { ... } from '@futdevpro/fsm-dynamo/crypto';
673
- import { ... } from '@futdevpro/fsm-dynamo/deployment';
674
- import { ... } from '@futdevpro/fsm-dynamo/custom-data';
675
- import { ... } from '@futdevpro/fsm-dynamo/test';
676
- import { ... } from '@futdevpro/fsm-dynamo/usage';
677
- import { ... } from '@futdevpro/fsm-dynamo/ci-tools';
678
- ```
679
-
680
- For detailed API documentation, refer to the [Dynamo FSM Documentation](https://futdevpro.hu/projects/dynamo).
681
-
682
- ## Requirements
683
-
684
- - **TypeScript**: 5.9.3 or higher
685
- - **Node.js**: Compatible with Node.js LTS versions
686
- - **Peer Dependencies**:
687
- - `rxjs`: 7.8.2
688
-
689
- ## Support & Contributing
690
-
691
- ### Support
692
-
693
- - **Donations**: [https://futdevpro.hu/support/dynamo](https://futdevpro.hu/support/dynamo) - Support page for project donations
694
- - **Homepage**: [https://futdevpro.hu/projects/dynamo](https://futdevpro.hu/projects/dynamo)
695
- - **Feedback & Contact**: For feature requests, bug reports, or questions, please use the feedback page or contact us at:
696
- - contact@futdevpro.hu
697
- - support@futdevpro.hu
698
-
699
- ## License
700
-
701
- MIT License
702
-
703
- Copyright (c) Future Development Program Ltd. (HU)
704
-
705
- Permission is hereby granted, free of charge, to any person obtaining a copy
706
- of this software and associated documentation files (the "Software"), to deal
707
- in the Software without restriction, including without limitation the rights
708
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
709
- copies of the Software, and to permit persons to whom the Software is
710
- furnished to do so, subject to the following conditions:
711
-
712
- The above copyright notice and this permission notice shall be included in all
713
- copies or substantial portions of the Software.
714
-
715
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
716
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
717
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
718
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
719
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
720
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
721
- SOFTWARE.
1
+ # @futdevpro/fsm-dynamo
2
+
3
+ [![npm version](https://img.shields.io/npm/v/@futdevpro/fsm-dynamo.svg)](https://www.npmjs.com/package/@futdevpro/fsm-dynamo)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
+
6
+ **Full Stack Model Collection for Dynamic (NodeJS-TypeScript) Framework**
7
+
8
+ Dynamo FSM (Full Stack Module) is the foundational TypeScript package that provides the core infrastructure and shared utilities for building full-stack applications. It serves as the base structure for all other Dynamo projects, establishing consistent patterns, type definitions, and interfaces that ensure seamless integration between frontend and backend implementations.
9
+
10
+ **Naming Convention**: All exports from Dynamo FSM use the `DyFM_*` prefix (Dynamo Full Stack Module), ensuring clear identification and preventing naming conflicts. This consistent prefix pattern makes it easy to identify FSM utilities, classes, interfaces, and enums throughout your codebase.
11
+
12
+ ## Table of Contents
13
+
14
+ - [Introduction](#introduction)
15
+ - [Features](#features)
16
+ - [Installation](#installation)
17
+ - [Quick Start](#quick-start)
18
+ - [Modules](#modules)
19
+ - [Common Usage Patterns](#common-usage-patterns)
20
+ - [API Reference](#api-reference)
21
+ - [Requirements](#requirements)
22
+ - [Support & Contributing](#support--contributing)
23
+ - [License](#license)
24
+
25
+ ## Introduction
26
+
27
+ Dynamo FSM provides core utilities for data manipulation, error handling, logging, state management, and more. It includes modules covering AI integration, real-time communication, location services, data transformation, and testing tools. This package serves as the base structure for all other Dynamo projects.
28
+
29
+ **Naming Convention**: All exports from Dynamo FSM use the `DyFM_*` prefix (Dynamo Full Stack Module). This consistent naming pattern makes it easy to identify FSM utilities, classes, interfaces, enums, and constants throughout your codebase. Examples include `DyFM_Array`, `DyFM_Log`, `DyFM_Error`, `DyFM_DataHandler`, and `DyFM_Metadata`.
30
+
31
+ ### Dynamo Packages Using FSM
32
+
33
+ Dynamo FSM is the foundational package used by all other Dynamo packages:
34
+
35
+ - **[Dynamo-NTS](https://www.npmjs.com/package/@futdevpro/dynamo-nts)** - Backend framework for Node.js with TypeScript
36
+ - **[Dynamo NGX Models](https://www.npmjs.com/package/@futdevpro/ngx-dynamo-models)** - Model definitions for Angular applications
37
+ - **[Dynamo NGX](https://www.npmjs.com/package/@futdevpro/ngx-dynamo)** - Angular framework with Material Design and Tailwind CSS
38
+
39
+ All these packages build upon Dynamo FSM's core interfaces, types, and utilities, ensuring consistency and type safety across the entire Dynamo ecosystem.
40
+
41
+ ### Key Characteristics
42
+
43
+ - **Zero Dependencies**: The foundational package has no dependencies (except peer dependencies), making it the base upon which all other Dynamo packages are built
44
+ - **Type-Safe Full-Stack Development**: Shared interfaces and models ensure data structures, API contracts, and business logic remain consistent from database to UI
45
+ - **Comprehensive Utility Library**: Utilities for arrays, strings, dates, UUIDs, error handling, logging, and more
46
+ - **Modular Architecture**: Import only what you need, keeping bundle sizes small while providing access to a comprehensive toolkit
47
+
48
+ ## Features
49
+
50
+ ### Core Utilities
51
+ - **Array Manipulation**: Advanced array operations with async support (`DyFM_Array`)
52
+ - **String Operations**: Comprehensive string manipulation utilities (`DyFM_String`)
53
+ - **Time & Date**: Advanced time manipulation and formatting (`DyFM_Time`)
54
+ - **UUID Generation**: Secure UUID generation utilities (`DyFM_UUID`)
55
+ - **Logging**: Advanced logging with customizable styling (`DyFM_Log`)
56
+ - **Error Handling**: Standardized error handling with configurable severity levels (`DyFM_Error`)
57
+ - **Data Transformation**: Type-safe cloning and data manipulation utilities
58
+
59
+ ### Specialized Modules
60
+ - **AI Integration**: Unified interface for multiple AI providers (OpenAI, Anthropic, Google, Local AI)
61
+ - **Reactive Data Management**: RxJS-based data handlers for single items, lists, and searchable data
62
+ - **Real-Time Communication**: Socket.IO integration for bidirectional communication
63
+ - **Location Services**: Comprehensive geographical data handling with country information
64
+ - **Messaging System**: Unified messaging for user↔user and user↔AI communication
65
+ - **Data Transformation**: Specialized pipes for geographic data, string manipulation, and formatting
66
+ - **Crypto Utilities**: Deterministic encryption/decryption using AES-256-CBC
67
+ - **Testing Tools**: Comprehensive HTTP endpoint testing utilities
68
+ - **Analytics**: User behavior tracking and usage analytics
69
+
70
+ ## Installation
71
+
72
+ ```bash
73
+ npm install @futdevpro/fsm-dynamo
74
+ ```
75
+
76
+ or
77
+
78
+ ```bash
79
+ pnpm add @futdevpro/fsm-dynamo
80
+ ```
81
+
82
+ ## Quick Start
83
+
84
+ ### Basic Utility Usage
85
+
86
+ ```typescript
87
+ import { DyFM_Array, DyFM_String, DyFM_Log, DyFM_Error, DyFM_ErrorLevel } from '@futdevpro/fsm-dynamo';
88
+
89
+ // Array operations
90
+ const numbers = [1, 2, 3, 4, 5];
91
+ const doubled = DyFM_Array.map(numbers, (n) => n * 2);
92
+
93
+ // String operations
94
+ const formatted = DyFM_String.capitalize('hello world'); // "Hello World"
95
+
96
+ // Logging
97
+ DyFM_Log.info('Application started');
98
+ DyFM_Log.warn('This is a warning');
99
+ DyFM_Log.error('An error occurred');
100
+
101
+ // Special logging methods
102
+ DyFM_Log.H_error('Highlighted error message'); // Highlighted error with visual formatting
103
+ DyFM_Log.T_error('Test error message'); // Test error with special formatting
104
+
105
+ // Error handling
106
+ const error = new DyFM_Error({
107
+ errorCode: 'USER_NOT_FOUND',
108
+ message: 'User with ID 123 not found',
109
+ userMessage: 'User not found',
110
+ level: DyFM_ErrorLevel.error
111
+ });
112
+
113
+ // Or use static method for any error type
114
+ DyFM_Error.logSimple('Operation failed', error);
115
+ ```
116
+
117
+ ### Data Handler Example
118
+
119
+ ```typescript
120
+ import { DyFM_DataHandler } from '@futdevpro/fsm-dynamo/data-handler';
121
+ import { DyFM_Metadata } from '@futdevpro/fsm-dynamo';
122
+
123
+ interface User extends DyFM_Metadata {
124
+ name: string;
125
+ email: string;
126
+ }
127
+
128
+ class UserHandler extends DyFM_DataHandler<User> {
129
+ constructor(apiService: any) {
130
+ super({
131
+ name: 'UserHandler',
132
+ get: async (userId: string) => {
133
+ return await apiService.getUser(userId);
134
+ },
135
+ set: async (user: User) => {
136
+ return await apiService.updateUser(user);
137
+ }
138
+ });
139
+ }
140
+ }
141
+
142
+ // Usage
143
+ const userHandler = new UserHandler(apiService);
144
+ await userHandler.reload('user-123');
145
+ userHandler.data$.subscribe(user => {
146
+ console.log('User loaded:', user);
147
+ });
148
+ ```
149
+
150
+ ### AI Module Example
151
+
152
+ ```typescript
153
+ import { DyFM_AI_Provider, DyFM_AI_MessageRole } from '@futdevpro/fsm-dynamo/ai';
154
+ import { DyFM_OAI_Model } from '@futdevpro/fsm-dynamo/ai/open-ai';
155
+
156
+ // Configure AI provider
157
+ const aiConfig = {
158
+ provider: DyFM_AI_Provider.OpenAI,
159
+ apiKey: process.env.OPENAI_API_KEY,
160
+ model: DyFM_OAI_Model.gpt_4o_latest
161
+ };
162
+
163
+ // Create AI request
164
+ const aiRequest = {
165
+ messages: [
166
+ {
167
+ role: DyFM_AI_MessageRole.user,
168
+ content: 'Hello, how are you?'
169
+ }
170
+ ],
171
+ settings: aiConfig
172
+ };
173
+ ```
174
+
175
+ ## Modules
176
+
177
+ Dynamo FSM is organized into 12 specialized modules, each providing focused functionality for specific use cases.
178
+
179
+ ### 1. Main Module
180
+
181
+ **Import:** `@futdevpro/fsm-dynamo`
182
+
183
+ The core foundation providing essential utilities, constants, enums, and models for state management and data handling.
184
+
185
+ **Key Features:**
186
+ - Core utilities for array manipulation, logging, string operations, and type-safe data handling
187
+ - Constants for times, data sizes, numbers, and global settings
188
+ - Enums for error levels, HTTP types, log styles, and more
189
+ - Models for error handling, data properties, and service endpoints
190
+
191
+ **Example:**
192
+ ```typescript
193
+ import {
194
+ DyFM_Array,
195
+ DyFM_Log,
196
+ DyFM_Error,
197
+ DyFM_times,
198
+ DyFM_ErrorLevel
199
+ } from '@futdevpro/fsm-dynamo';
200
+
201
+ // Use time constants
202
+ const oneDay = DyFM_times.day; // 86400000 milliseconds
203
+
204
+ // Array operations
205
+ const result = DyFM_Array.filter([1, 2, 3, 4], n => n > 2);
206
+ ```
207
+
208
+ ### 2. AI Module
209
+
210
+ **Import:** `@futdevpro/fsm-dynamo/ai`
211
+
212
+ Unified interface for interacting with multiple AI providers (OpenAI, Anthropic, Google, Local AI).
213
+
214
+ **Key Features:**
215
+ - Standardized models and interfaces for LLM operations
216
+ - Embedding support across providers
217
+ - Provider capability detection
218
+ - Flexible configuration options
219
+
220
+ **Submodules:**
221
+ - `@futdevpro/fsm-dynamo/ai/open-ai` - OpenAI-specific implementations
222
+ - `@futdevpro/fsm-dynamo/ai/anthropic` - Anthropic (Claude) implementations
223
+ - `@futdevpro/fsm-dynamo/ai/google` - Google AI implementations
224
+ - `@futdevpro/fsm-dynamo/ai/local` - Local AI implementations
225
+
226
+ **Example:**
227
+ ```typescript
228
+ import { DyFM_AI_Provider, DyFM_AI_MessageRole } from '@futdevpro/fsm-dynamo/ai';
229
+ import { DyFM_OAI_Model } from '@futdevpro/fsm-dynamo/ai/open-ai';
230
+
231
+ const config = {
232
+ provider: DyFM_AI_Provider.OpenAI,
233
+ model: DyFM_OAI_Model.gpt_4o_latest
234
+ };
235
+ ```
236
+
237
+ **See also:**
238
+ - [OpenAI-compatible providers how-to (LM Studio / Ollama / vLLM / LocalAI)](__documentations/2026-05-17-oai-compatible-providers-howto.md) — `DyFM_OAI_ClientOptions.baseURL`-override mintázattal lokál és self-hosted LLM-ek
239
+
240
+ ### 3. Data Handler Module
241
+
242
+ **Import:** `@futdevpro/fsm-dynamo/data-handler`
243
+
244
+ Reactive data management utilities using RxJS BehaviorSubjects and Observables.
245
+
246
+ **Key Features:**
247
+ - Automatic loading prevention (prevents multiple simultaneous load calls)
248
+ - Post-processing support for data transformation
249
+ - Dependency management for dependent data handlers
250
+ - Specialized handlers for lists, searchable data, and pagination
251
+
252
+ **Classes:**
253
+ - `DyFM_DataHandler` - Base handler for single data items
254
+ - `DyFM_DataListHandler` - Handler for array data
255
+ - `DyFM_DataSearchHandler` - Handler for searchable data with pagination
256
+ - `DyFM_ListCollectorDataHandler` - Handler for list collections within parent objects
257
+
258
+ **Example:**
259
+ ```typescript
260
+ import { DyFM_DataListHandler } from '@futdevpro/fsm-dynamo/data-handler';
261
+
262
+ const listHandler = new DyFM_DataListHandler({
263
+ name: 'UsersList',
264
+ get: async () => await apiService.getUsers(),
265
+ setItem: async (user) => await apiService.updateUser(user),
266
+ deleteItem: async (userId) => await apiService.deleteUser(userId)
267
+ });
268
+
269
+ listHandler.dataList$.subscribe(users => {
270
+ console.log('Users updated:', users);
271
+ });
272
+ ```
273
+
274
+ ### 4. Location Module
275
+
276
+ **Import:** `@futdevpro/fsm-dynamo/location`
277
+
278
+ Comprehensive suite for handling geographical data and location-based functionality.
279
+
280
+ **Key Features:**
281
+ - Country information management with ISO codes
282
+ - Administrative divisions data
283
+ - Geographical utilities for coordinates and distance calculations
284
+ - Region classification and IP-based location services
285
+ - Phone code integration
286
+
287
+ **Example:**
288
+ ```typescript
289
+ import {
290
+ DyFM_CountryISOs,
291
+ DyFM_LocationUtils,
292
+ DyFM_RegionsUtils
293
+ } from '@futdevpro/fsm-dynamo/location';
294
+
295
+ const country = DyFM_CountryISOs.getByISO('US');
296
+ const distance = DyFM_LocationUtils.calculateDistance(
297
+ { lat: 40.7128, lng: -74.0060 },
298
+ { lat: 34.0522, lng: -118.2437 }
299
+ );
300
+ ```
301
+
302
+ ### 5. Messaging Module
303
+
304
+ **Import:** `@futdevpro/fsm-dynamo/messaging`
305
+
306
+ Unified messaging system for user↔user and user↔AI communication.
307
+
308
+ **Key Features:**
309
+ - Support for direct, group, assistant chat, and channel conversations
310
+ - Message types: text, attachments, reactions, mentions, threads
311
+ - Real-time capabilities with socket integration
312
+ - Agent process visualization for AI reasoning
313
+ - Participant role management
314
+
315
+ **Example:**
316
+ ```typescript
317
+ import {
318
+ DyFM_Msg_Message,
319
+ DyFM_Msg_Type,
320
+ DyFM_Msg_Status
321
+ } from '@futdevpro/fsm-dynamo/messaging';
322
+
323
+ const message = new DyFM_Msg_Message({
324
+ conversationId: 'conv-123',
325
+ senderId: 'user-456',
326
+ content: 'Hello, world!',
327
+ type: DyFM_Msg_Type.text,
328
+ status: DyFM_Msg_Status.sent
329
+ });
330
+ ```
331
+
332
+ ### 6. Socket Module
333
+
334
+ **Import:** `@futdevpro/fsm-dynamo/socket`
335
+
336
+ Real-time bidirectional communication using Socket.IO.
337
+
338
+ **Key Features:**
339
+ - Event management with predefined event keys
340
+ - Client configuration and connection management
341
+ - Automatic reconnection logic
342
+ - Observable properties for connection and subscription states
343
+ - Base service class for custom socket clients
344
+
345
+ **Example:**
346
+ ```typescript
347
+ import {
348
+ DyFM_SocketClient_ServiceBase,
349
+ DyFM_SocketEvent_Key
350
+ } from '@futdevpro/fsm-dynamo/socket';
351
+
352
+ class MySocketClient extends DyFM_SocketClient_ServiceBase {
353
+ // Implementation
354
+ }
355
+ ```
356
+
357
+ ### 7. Pipe Module
358
+
359
+ **Import:** `@futdevpro/fsm-dynamo/pipe`
360
+
361
+ Data transformation utilities for manipulating and formatting data.
362
+
363
+ **Key Features:**
364
+ - Specialized pipes for geographic data, string manipulation, and data formatting
365
+ - UI component support with Angular pipe integration
366
+ - Multi-pipe functionality for complex transformations
367
+ - Country, region, and division formatting
368
+
369
+ **Example:**
370
+ ```typescript
371
+ import { DyFM_pipeTransforms } from '@futdevpro/fsm-dynamo/pipe';
372
+
373
+ const formatted = DyFM_pipeTransforms.country('US'); // "United States"
374
+ ```
375
+
376
+ ### 8. Crypto Module
377
+
378
+ **Import:** `@futdevpro/fsm-dynamo/crypto`
379
+
380
+ Deterministic encryption and decryption utilities using AES-256-CBC.
381
+
382
+ **Key Features:**
383
+ - Deterministic encryption (same input + key = same output)
384
+ - Cross-platform compatibility
385
+ - URL-safe base64 encoding
386
+ - Secure random key generation
387
+ - Cross-runtime ECDSA P-256 artifact signing and public-key verification
388
+ - Strict 64-byte IEEE P1363 signatures with unpadded Base64URL transport
389
+ - Content-free verification codes and canonical public-JWK fingerprints
390
+
391
+ **Important:** This implementation produces identical encrypted output for identical input data and key. Use when consistency across systems is more important than cryptographic security.
392
+
393
+ **Example:**
394
+ ```typescript
395
+ import { DyFM_Crypto } from '@futdevpro/fsm-dynamo/crypto';
396
+
397
+ const encrypted = DyFM_Crypto.encrypt('sensitive data', 'my-secret-key');
398
+ const decrypted = DyFM_Crypto.decrypt(encrypted, 'my-secret-key');
399
+ ```
400
+
401
+ For publication authenticity, `DyFM_ArtifactSignature_ControlService` signs exact caller-provided bytes with a
402
+ PKCS#8 private key and verifies them with a public P-256 JWK. Private material belongs in the consuming server's
403
+ FDP Keystore configuration and is never returned in signature evidence or sent to a browser. The verifier works
404
+ through Web Crypto in secure browser contexts and supported Node.js runtimes.
405
+
406
+ ### Deployment Contract Module
407
+
408
+ **Import:** `@futdevpro/fsm-dynamo/deployment`
409
+
410
+ Shared, content-free deployment target contracts for FDP operational tooling.
411
+
412
+ **Key Features:**
413
+ - Strict `fdp-atomic-rollback-manifest/1` parsing with unknown-field rejection
414
+ - Canonical, order-independent target checksum generation
415
+ - Immutable image reference, digest and mutable promotion-target validation
416
+ - Configuration revision, compatibility-policy and authority-evidence validation
417
+ - Safe post-check endpoint validation and bounded gap-code evidence
418
+
419
+ The module validates only operational metadata. Application data, workbook content, secrets and credentials do not
420
+ belong in the manifest and are rejected when supplied as additional fields.
421
+
422
+ Use `DyFM_AtomicRollbackManifest_Util.validate(value)` for strict parsing and
423
+ `DyFM_AtomicRollbackManifest_Util.computeTargetChecksum(manifest)` for canonical target checksums.
424
+
425
+ ### 9. Custom Data Module
426
+
427
+ **Import:** `@futdevpro/fsm-dynamo/custom-data`
428
+
429
+ Flexible storage and management of custom data with metadata support.
430
+
431
+ **Key Features:**
432
+ - Type-safe data containers with validation rules
433
+ - RESTful API endpoints for data operations
434
+ - Metadata support for tracking and organization
435
+
436
+ **Example:**
437
+ ```typescript
438
+ import { DyFM_CustomData } from '@futdevpro/fsm-dynamo/custom-data';
439
+
440
+ const customData = new DyFM_CustomData({
441
+ key: 'user-preferences',
442
+ value: { theme: 'dark', language: 'en' },
443
+ __createdBy: 'user-123'
444
+ });
445
+ ```
446
+
447
+ ### 10. Test Module
448
+
449
+ **Import:** `@futdevpro/fsm-dynamo/test`
450
+
451
+ Comprehensive testing tools for HTTP endpoints.
452
+
453
+ **Key Features:**
454
+ - Complete suite of HTTP method test endpoints
455
+ - Server status monitoring
456
+ - Structured response handling
457
+
458
+ ### 11. Usage Module
459
+
460
+ **Import:** `@futdevpro/fsm-dynamo/usage`
461
+
462
+ User behavior tracking and analytics tools.
463
+
464
+ **Key Features:**
465
+ - Session management
466
+ - Usage analytics and geographic insights
467
+ - Daily statistics and action tracking
468
+
469
+ **Example:**
470
+ ```typescript
471
+ import { DyFM_UsageSession } from '@futdevpro/fsm-dynamo/usage';
472
+
473
+ const session = new DyFM_UsageSession({
474
+ userId: 'user-123',
475
+ startTime: new Date(),
476
+ __createdBy: 'system'
477
+ });
478
+ ```
479
+
480
+ ### 12. CI Tools Module
481
+
482
+ **Import:** `@futdevpro/fsm-dynamo/ci-tools`
483
+
484
+ Models and enums for tracking CI/CD pipeline results.
485
+
486
+ **Key Features:**
487
+ - Build, test, and deployment pipeline tracking
488
+ - Detailed step-by-step results
489
+ - Result code enums for standardized status reporting
490
+
491
+ **Example:**
492
+ ```typescript
493
+ import {
494
+ DyFM_CIT_CIResultCode,
495
+ DyFM_CIT_CIResultInfo
496
+ } from '@futdevpro/fsm-dynamo/ci-tools';
497
+
498
+ const ciResult: DyFM_CIT_CIResultInfo = {
499
+ resultCode: DyFM_CIT_CIResultCode.success,
500
+ // ... other properties
501
+ };
502
+ ```
503
+
504
+ ## Common Usage Patterns
505
+
506
+ ### Import Patterns
507
+
508
+ All exports use the `DyFM_` prefix (Dynamo Full Stack Module):
509
+
510
+ ```typescript
511
+ // Main module
512
+ import { DyFM_Array, DyFM_Log, DyFM_Error } from '@futdevpro/fsm-dynamo';
513
+
514
+ // Specific modules
515
+ import { DyFM_DataHandler } from '@futdevpro/fsm-dynamo/data-handler';
516
+ import { DyFM_AI_Provider } from '@futdevpro/fsm-dynamo/ai';
517
+ import { DyFM_Crypto } from '@futdevpro/fsm-dynamo/crypto';
518
+ ```
519
+
520
+ ### Type Safety
521
+
522
+ Dynamo FSM provides full TypeScript support with strict typing:
523
+
524
+ ```typescript
525
+ import { DyFM_Metadata, DyFM_Error, DyFM_ErrorLevel } from '@futdevpro/fsm-dynamo';
526
+
527
+ interface User extends DyFM_Metadata {
528
+ name: string;
529
+ email: string;
530
+ }
531
+
532
+ // Type-safe error handling
533
+ const error = new DyFM_Error({
534
+ errorCode: 'VALIDATION_ERROR',
535
+ message: 'Invalid user data',
536
+ level: DyFM_ErrorLevel.warning
537
+ });
538
+ ```
539
+
540
+ ### Error Handling Pattern
541
+
542
+ ```typescript
543
+ import { DyFM_Error, DyFM_ErrorLevel, DyFM_Log } from '@futdevpro/fsm-dynamo';
544
+
545
+ try {
546
+ // Your code
547
+ } catch (err) {
548
+ if (err instanceof DyFM_Error && err.___handled) {
549
+ // Error already handled
550
+ return;
551
+ }
552
+
553
+ const error = new DyFM_Error({
554
+ errorCode: 'OPERATION_FAILED',
555
+ message: err.message,
556
+ userMessage: 'An error occurred',
557
+ level: DyFM_ErrorLevel.error
558
+ });
559
+
560
+ // Use logSimple for formatted error logging
561
+ error.logSimple('Operation failed');
562
+ // Or use static method
563
+ DyFM_Error.logSimple('Operation failed', error);
564
+
565
+ throw error;
566
+ }
567
+ ```
568
+
569
+ ### Special Logging Methods
570
+
571
+ Dynamo FSM provides specialized logging methods for different use cases:
572
+
573
+ ```typescript
574
+ import { DyFM_Log, DyFM_Error } from '@futdevpro/fsm-dynamo';
575
+
576
+ // Highlighted error - displays error with visual formatting
577
+ DyFM_Log.H_error('Critical error occurred', errorDetails);
578
+ // Alias: DyFM_Log.highlightedError()
579
+
580
+ // Test error - displays error with test-specific formatting
581
+ DyFM_Log.T_error('Test error message', testData);
582
+ // Alias: DyFM_Log.testError()
583
+
584
+ // Simple error logging - formatted error output with error code, message, stack
585
+ const error = new DyFM_Error({
586
+ errorCode: 'VALIDATION_ERROR',
587
+ message: 'Invalid input',
588
+ level: DyFM_ErrorLevel.error
589
+ });
590
+
591
+ // Static method for any error type
592
+ DyFM_Error.logSimple('Operation failed', error);
593
+ // Works with both DyFM_Error instances and regular Error objects
594
+ ```
595
+
596
+ ### Constants Usage
597
+
598
+ ```typescript
599
+ import { DyFM_times, DyFM_data_sizes, DyFM_numbers } from '@futdevpro/fsm-dynamo';
600
+
601
+ // Time constants
602
+ const oneHour = DyFM_times.hour;
603
+ const oneDay = DyFM_times.day;
604
+ const oneWeek = DyFM_times.week;
605
+
606
+ // Data size constants
607
+ const maxStringLength = DyFM_data_sizes.maxStringLength;
608
+
609
+ // Number constants
610
+ const maxSafeInteger = DyFM_numbers.maxSafeInteger;
611
+ ```
612
+
613
+ ## API Reference
614
+
615
+ ### Main Exports
616
+
617
+ The main module exports utilities, constants, enums, and models:
618
+
619
+ **Constants:**
620
+ - `DyFM_error_defaults` - Default error configuration
621
+ - `DyFM_global_settings` - Global framework settings
622
+ - `DyFM_numbers` - Standard numeric constants
623
+ - `DyFM_times` - Time constants (second, minute, hour, day, week, month, year)
624
+ - `DyFM_data_sizes` - Data size constants
625
+
626
+ **Utilities:**
627
+ - `DyFM_Array` - Array manipulation utilities
628
+ - `DyFM_String` - String manipulation utilities
629
+ - `DyFM_Log` - Logging utilities with special methods:
630
+ - `DyFM_Log.H_error` / `DyFM_Log.highlightedError` - Big Highlighted error logging
631
+ - `DyFM_Log.T_error` / `DyFM_Log.testError` - Mdium Highlighted error logging
632
+ - `DyFM_Log.S_error` / `DyFM_Log.smallError` - Small Highlighted error logging
633
+ - `DyFM_Time` - Time manipulation utilities
634
+ - `DyFM_UUID` - UUID generation utilities
635
+ - `DyFM_Data` - Data transformation utilities
636
+ - `DyFM_Math` - Mathematical operations
637
+ - `DyFM_Random` - Random number generation
638
+
639
+ **Enums:**
640
+ - `DyFM_ErrorLevel` - Error severity levels
641
+ - `DyFM_LogStyle` - Text styling options
642
+ - `DyFM_HttpCallType` - HTTP request methods
643
+ - `DyFM_HttpResponseType` - HTTP response data types
644
+ - `DyFM_EnvironmentFlag` - Environment types
645
+
646
+ **Models:**
647
+ - `DyFM_Error` - Error model with methods:
648
+ - `logSimple()` - Formatted error logging with error code, message, stack, and additional content
649
+ - `static logSimple()` - Static method for logging any error type
650
+ - `DyFM_Metadata` - Base metadata model
651
+ - `DyFM_SearchQuery` - Search query interface
652
+ - `DyFM_SearchResult` - Search result interface
653
+ - `DyFM_Paged` - Pagination interface
654
+
655
+ ### Module Export Paths
656
+
657
+ All modules can be imported directly:
658
+
659
+ ```typescript
660
+ // Main module
661
+ import { ... } from '@futdevpro/fsm-dynamo';
662
+
663
+ // Submodules
664
+ import { ... } from '@futdevpro/fsm-dynamo/ai';
665
+ import { ... } from '@futdevpro/fsm-dynamo/ai/open-ai';
666
+ import { ... } from '@futdevpro/fsm-dynamo/ai/anthropic';
667
+ import { ... } from '@futdevpro/fsm-dynamo/data-handler';
668
+ import { ... } from '@futdevpro/fsm-dynamo/location';
669
+ import { ... } from '@futdevpro/fsm-dynamo/messaging';
670
+ import { ... } from '@futdevpro/fsm-dynamo/socket';
671
+ import { ... } from '@futdevpro/fsm-dynamo/pipe';
672
+ import { ... } from '@futdevpro/fsm-dynamo/crypto';
673
+ import { ... } from '@futdevpro/fsm-dynamo/deployment';
674
+ import { ... } from '@futdevpro/fsm-dynamo/custom-data';
675
+ import { ... } from '@futdevpro/fsm-dynamo/test';
676
+ import { ... } from '@futdevpro/fsm-dynamo/usage';
677
+ import { ... } from '@futdevpro/fsm-dynamo/ci-tools';
678
+ ```
679
+
680
+ For detailed API documentation, refer to the [Dynamo FSM Documentation](https://futdevpro.hu/projects/dynamo).
681
+
682
+ ## Requirements
683
+
684
+ - **TypeScript**: 5.9.3 or higher
685
+ - **Node.js**: Compatible with Node.js LTS versions
686
+ - **Peer Dependencies**:
687
+ - `rxjs`: 7.8.2
688
+
689
+ ## Support & Contributing
690
+
691
+ ### Support
692
+
693
+ - **Donations**: [https://futdevpro.hu/support/dynamo](https://futdevpro.hu/support/dynamo) - Support page for project donations
694
+ - **Homepage**: [https://futdevpro.hu/projects/dynamo](https://futdevpro.hu/projects/dynamo)
695
+ - **Feedback & Contact**: For feature requests, bug reports, or questions, please use the feedback page or contact us at:
696
+ - contact@futdevpro.hu
697
+ - support@futdevpro.hu
698
+
699
+ ## License
700
+
701
+ MIT License
702
+
703
+ Copyright (c) Future Development Program Ltd. (HU)
704
+
705
+ Permission is hereby granted, free of charge, to any person obtaining a copy
706
+ of this software and associated documentation files (the "Software"), to deal
707
+ in the Software without restriction, including without limitation the rights
708
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
709
+ copies of the Software, and to permit persons to whom the Software is
710
+ furnished to do so, subject to the following conditions:
711
+
712
+ The above copyright notice and this permission notice shall be included in all
713
+ copies or substantial portions of the Software.
714
+
715
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
716
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
717
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
718
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
719
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
720
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
721
+ SOFTWARE.