@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
@@ -1,331 +0,0 @@
1
- import * as CryptoJS from 'crypto-js';
2
-
3
- import {
4
- DyFM_Error,
5
- DyFM_Error_Settings
6
- } from '../../../_models/control-models/error.control-model';
7
- import { DyFM_Object } from '../../../_collections/utils/object.util';
8
-
9
-
10
- /**
11
- * Configuration options for encryption/decryption
12
- */
13
- export interface CryptoConfig {
14
- ivLength?: number;
15
- saltLength?: number;
16
- keyIterations?: number;
17
- keySize?: number;
18
- }
19
-
20
- // Compact: about 60–80 character tokens, not 200+
21
- // Non-standard: hard to reverse-engineer
22
- // Usable in cookies, headers, URLs
23
-
24
- /**
25
- * A utility class for stable encryption and decryption of data
26
- * Uses AES-256-CBC with deterministic IV and salt for consistent results across systems
27
- * Prioritizes reliability and cross-platform compatibility over security
28
- *
29
- * @important DETERMINISTIC ENCRYPTION: This implementation produces identical encrypted
30
- * output for identical input data and key across different systems and multiple calls.
31
- * The same input will ALWAYS generate the same encrypted string on any platform.
32
- *
33
- * @warning SECURITY NOTICE: This deterministic behavior is intentional for cross-platform
34
- * compatibility but reduces security. Identical inputs produce identical outputs, which
35
- * can be exploited for pattern analysis attacks. Use only when consistency across
36
- * systems is more important than cryptographic security.
37
- */
38
- export class DyFM_Crypto {
39
- private static readonly DEFAULT_CONFIG: Required<CryptoConfig> = {
40
- ivLength: 16, // 128 bits
41
- saltLength: 16, // 128 bits
42
- keyIterations: 1000, // Reduced for better performance and stability
43
- keySize: 8, // 256 bits (8 * 32)
44
- };
45
- private static readonly defaultErrorUserMsg =
46
- `We encountered an unhandled Authentication Error, ` +
47
- `\nplease contact the responsible development team.`;
48
-
49
- /**
50
- * Validates the input data and key
51
- * @throws {DyFM_Error} if validation fails
52
- */
53
- private static validateInput(data: any, key: string): void {
54
- if (!key || typeof key !== 'string' || key.trim().length === 0) {
55
- throw new DyFM_Error({
56
- ...this.getDefaultErrorSettings('validateInput'),
57
- errorCode: 'DyFM-CRY-IKY',
58
- message: 'Invalid encryption key',
59
- });
60
- }
61
-
62
- // Allow null values but not undefined
63
- if (data === undefined) {
64
- throw new DyFM_Error({
65
- ...this.getDefaultErrorSettings('validateInput'),
66
- errorCode: 'DyFM-CRY-IDT',
67
- message: `Invalid data to encrypt/decrypt (is "${data}")`,
68
- });
69
- }
70
- }
71
-
72
- /**
73
- * Generates a deterministic IV based on the input data and key
74
- * Uses MD5 for better stability across different CryptoJS versions
75
- *
76
- * @important DETERMINISTIC: Same data + key will ALWAYS produce the same IV
77
- * across all systems and CryptoJS versions for consistent encryption results
78
- */
79
- private static generateIV(data: string, key: string, config: Required<CryptoConfig>): CryptoJS.lib.WordArray {
80
- // Use MD5 for better stability - simpler hash algorithm, more consistent across versions
81
- const combined = data + key;
82
- const hash = CryptoJS.MD5(combined);
83
-
84
- // Use slice(0, 4) for 16 bytes - more stable than division operations
85
- return CryptoJS.lib.WordArray.create(hash.words.slice(0, 4));
86
- }
87
-
88
- /**
89
- * Generates a deterministic salt based on the input data and key
90
- * Uses MD5 for better stability across different CryptoJS versions
91
- *
92
- * @important DETERMINISTIC: Same data + key will ALWAYS produce the same salt
93
- * across all systems and CryptoJS versions for consistent encryption results
94
- */
95
- private static generateSalt(data: string, key: string, config: Required<CryptoConfig>): CryptoJS.lib.WordArray {
96
- // Use MD5 for better stability - simpler hash algorithm, more consistent across versions
97
- const combined = key + data;
98
- const hash = CryptoJS.MD5(combined);
99
-
100
- // Use slice(0, 4) for 16 bytes - more stable than division operations
101
- return CryptoJS.lib.WordArray.create(hash.words.slice(0, 4));
102
- }
103
-
104
- /**
105
- * Derives a key using PBKDF2 with reduced iterations for stability
106
- */
107
- private static deriveKey(key: string, salt: CryptoJS.lib.WordArray, config: Required<CryptoConfig>): CryptoJS.lib.WordArray {
108
- return CryptoJS.PBKDF2(key, salt, {
109
- keySize: config.keySize,
110
- iterations: config.keyIterations,
111
- });
112
- }
113
-
114
- /**
115
- * Safely serializes data to JSON
116
- */
117
- private static safeSerialize<T>(data: T): string {
118
- try {
119
- // Always use JSON.stringify to ensure proper serialization/deserialization
120
- return JSON.stringify(data);
121
- } catch (error) {
122
- throw new DyFM_Error({
123
- ...this.getDefaultErrorSettings('safeSerialize', error),
124
- errorCode: 'DyFM-CRY-SER',
125
- message: 'Failed to serialize data',
126
- });
127
- }
128
- }
129
-
130
- /**
131
- * Safely deserializes JSON data
132
- */
133
- private static safeDeserialize<T>(data: string): T {
134
- try {
135
- //let parsed = JSON.parse(data);
136
- let parsed = DyFM_Object.failableSafeParseJSON(data);
137
-
138
- // Handle double-stringified JSON (or more levels of stringification)
139
- let maxAttempts = 3; // Prevent infinite loops
140
-
141
- while (typeof parsed === 'string' && maxAttempts > 0) {
142
- try {
143
- //const nextParsed = JSON.parse(parsed);
144
- const nextParsed = DyFM_Object.failableSafeParseJSON(parsed);
145
-
146
- // Only continue if parsing actually changed the result
147
- if (nextParsed !== parsed) {
148
- parsed = nextParsed;
149
- maxAttempts--;
150
- } else {
151
- break;
152
- }
153
- } catch {
154
- // If parse fails, return current state
155
- break;
156
- }
157
- }
158
-
159
- // Handle primitive values
160
- /* if (typeof parsed === 'string' || typeof parsed === 'number' || typeof parsed === 'boolean') {
161
- return parsed as T;
162
- } */
163
-
164
- return parsed as T;
165
- } catch (error) {
166
- throw new DyFM_Error({
167
- ...this.getDefaultErrorSettings('safeDeserialize', error),
168
- errorCode: 'DyFM-CRY-DES',
169
- message: 'Failed to deserialize data',
170
- });
171
- }
172
- }
173
-
174
- /**
175
- * Encrypts data using AES-256-CBC with deterministic IV and salt
176
- *
177
- * @important DETERMINISTIC BEHAVIOR: This method will produce identical encrypted
178
- * output for identical input parameters across different systems, Node.js versions,
179
- * and multiple function calls. The same data + key combination will ALWAYS generate
180
- * the same encrypted string.
181
- *
182
- * @param data The data to encrypt
183
- * @param key The encryption key
184
- * @param config Optional configuration
185
- * @returns URL-safe encrypted string that is identical across systems for same input
186
- * @throws {DyFM_Error} if encryption fails
187
- *
188
- * @example
189
- * // These will produce identical results on any system:
190
- * const result1 = DyFM_Crypto.encrypt({id: 1}, "mykey");
191
- * const result2 = DyFM_Crypto.encrypt({id: 1}, "mykey");
192
- * console.log(result1 === result2); // Always true
193
- */
194
- static encrypt<T>(data: T, key: string, config?: CryptoConfig): string {
195
- try {
196
- this.validateInput(data, key);
197
- const finalConfig = { ...this.DEFAULT_CONFIG, ...config };
198
-
199
- // Convert data to string
200
- const dataStr = this.safeSerialize(data);
201
-
202
- // Generate deterministic IV and salt based on data and key
203
- const iv = this.generateIV(dataStr, key, finalConfig);
204
- const salt = this.generateSalt(dataStr, key, finalConfig);
205
-
206
- // Derive key using PBKDF2
207
- const derivedKey = this.deriveKey(key, salt, finalConfig);
208
-
209
- // Encrypt the data
210
- const encrypted = CryptoJS.AES.encrypt(dataStr, derivedKey, {
211
- iv: iv,
212
- mode: CryptoJS.mode.CBC,
213
- padding: CryptoJS.pad.Pkcs7,
214
- });
215
-
216
- // Combine IV + Salt + Ciphertext
217
- const combined = iv.concat(salt).concat(encrypted.ciphertext);
218
-
219
- // Convert to URL-safe base64
220
- return CryptoJS.enc.Base64.stringify(combined)
221
- .replace(/\+/g, '-')
222
- .replace(/\//g, '_')
223
- .replace(/=+$/, '');
224
- } catch (error) {
225
- throw new DyFM_Error({
226
- ...this.getDefaultErrorSettings('encrypt', error),
227
- errorCode: 'DyFM-CRY-ENC',
228
- });
229
- }
230
- }
231
-
232
- /**
233
- * Decrypts data that was encrypted using encrypt()
234
- * @param encryptedData The encrypted data
235
- * @param key The decryption key
236
- * @param config Optional configuration
237
- * @returns The decrypted data
238
- * @throws {DyFM_Error} if decryption fails
239
- */
240
- static decrypt<T>(encryptedData: string, key: string, config?: CryptoConfig): T {
241
- try {
242
- this.validateInput(encryptedData, key);
243
- const finalConfig = { ...this.DEFAULT_CONFIG, ...config };
244
-
245
- // Convert from URL-safe base64
246
- const base64 = encryptedData
247
- .replace(/-/g, '+')
248
- .replace(/_/g, '/');
249
-
250
- // Parse the combined data
251
- const combined = CryptoJS.enc.Base64.parse(base64);
252
-
253
- // Validate minimum length (IV + Salt + minimum ciphertext)
254
- const minLength = (finalConfig.ivLength + finalConfig.saltLength + 16) / 4; // 16 bytes minimum for ciphertext
255
-
256
- if (combined.words.length < minLength) {
257
- throw new Error('Invalid encrypted data length');
258
- }
259
-
260
- // Extract IV, salt, and ciphertext
261
- const iv = CryptoJS.lib.WordArray.create(combined.words.slice(0, finalConfig.ivLength / 4));
262
- const salt = CryptoJS.lib.WordArray.create(
263
- combined.words.slice(
264
- finalConfig.ivLength / 4,
265
- (finalConfig.ivLength + finalConfig.saltLength) / 4
266
- )
267
- );
268
- const ciphertext = CryptoJS.lib.WordArray.create(
269
- combined.words.slice((finalConfig.ivLength + finalConfig.saltLength) / 4)
270
- );
271
-
272
- // Derive key using PBKDF2
273
- const derivedKey = this.deriveKey(key, salt, finalConfig);
274
-
275
- // Decrypt the data
276
- const decrypted = CryptoJS.AES.decrypt(
277
- { ciphertext: ciphertext },
278
- derivedKey,
279
- {
280
- iv: iv,
281
- mode: CryptoJS.mode.CBC,
282
- padding: CryptoJS.pad.Pkcs7,
283
- }
284
- );
285
-
286
- // Parse JSON
287
- const decryptedStr = decrypted.toString(CryptoJS.enc.Utf8);
288
-
289
- return this.safeDeserialize<T>(decryptedStr);
290
- } catch (error) {
291
- throw new DyFM_Error({
292
- ...this.getDefaultErrorSettings('decrypt', error),
293
- errorCode: 'DyFM-CRY-DRY',
294
- });
295
- }
296
- }
297
-
298
- /**
299
- * Generates a secure random key
300
- * @param length Length of the key in bytes (default: 32)
301
- * @returns A secure random key
302
- */
303
- static generateKey(length: number = 32): string {
304
- return CryptoJS.lib.WordArray.random(length).toString();
305
- }
306
-
307
- /**
308
- * Validates if a string is a valid encrypted data
309
- * @param encryptedData The data to validate
310
- * @returns true if the data appears to be valid encrypted data
311
- */
312
- static isValidEncryptedData(encryptedData: string): boolean {
313
- if (!encryptedData || typeof encryptedData !== 'string') {
314
- return false;
315
- }
316
-
317
- return /^[A-Za-z0-9\-_]+$/.test(encryptedData);
318
- }
319
-
320
- /**
321
- * Gets default error settings
322
- */
323
- private static getDefaultErrorSettings(operation: string, error?: any): DyFM_Error_Settings {
324
- return {
325
- status: (error as DyFM_Error)?.___status ?? (error as any)?.status ?? 401,
326
- message: `Crypto operation "${operation}" failed`,
327
- error: error,
328
- errorCode: 'DyFM-CRY-ERR',
329
- };
330
- }
331
- }