@futdevpro/fsm-dynamo 1.16.37 → 1.16.39

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 (1740) hide show
  1. package/.c8rc.json +26 -26
  2. package/.cursor/rules/__assistant_guide.mdc +30 -30
  3. package/.cursor/rules/__main.mdc +64 -64
  4. package/.cursor/rules/_ag_backend-structure.mdc +85 -85
  5. package/.cursor/rules/_ag_backend.mdc +16 -16
  6. package/.cursor/rules/_ag_debug.mdc +7 -7
  7. package/.cursor/rules/_ag_documentation_writing_rules.mdc +372 -372
  8. package/.cursor/rules/_ag_file-refactoring.mdc +113 -113
  9. package/.cursor/rules/_ag_fixes_rules.mdc +5 -5
  10. package/.cursor/rules/_ag_frontend-structure.mdc +86 -86
  11. package/.cursor/rules/_ag_frontend.mdc +39 -39
  12. package/.cursor/rules/_ag_import-rules.mdc +44 -44
  13. package/.cursor/rules/_ag_naming.mdc +115 -115
  14. package/.cursor/rules/_ag_running_commands.mdc +4 -4
  15. package/.cursor/rules/_ag_server-controller.mdc +5 -5
  16. package/.cursor/rules/_ag_should-be.mdc +6 -6
  17. package/.cursor/rules/_ag_swearing.mdc +47 -47
  18. package/.cursor/rules/ai_development_guide.md +60 -60
  19. package/.cursor/rules/ai_directives.md +114 -114
  20. package/.cursor/rules/cursor-rules.md +160 -160
  21. package/.cursor/rules/default-command.mdc +464 -464
  22. package/.cursor/rules/error_code_pattern.md +39 -39
  23. package/.cursor/rules/saved rule mcp server use.md +15 -15
  24. package/.dynamo/pipeline.cicd.config.json +157 -157
  25. package/.dynamo/version-bump.config.json +5 -5
  26. package/.github/workflows/main.yml +439 -439
  27. package/.husky/pre-commit +2 -2
  28. package/.vscode/settings.json +11 -11
  29. package/LICENSE +21 -21
  30. package/README.md +693 -693
  31. package/_specifications/BACKLOG.md +43 -43
  32. package/build/_collections/constants/data-sizes.const.d.ts +36 -36
  33. package/build/_collections/constants/data-sizes.const.js +40 -40
  34. package/build/_collections/constants/error-defaults.const.d.ts +10 -10
  35. package/build/_collections/constants/error-defaults.const.js +20 -20
  36. package/build/_collections/constants/global-settings.const.d.ts +10 -10
  37. package/build/_collections/constants/global-settings.const.d.ts.map +1 -1
  38. package/build/_collections/constants/global-settings.const.js +4 -0
  39. package/build/_collections/constants/global-settings.const.js.map +1 -1
  40. package/build/_collections/constants/global-settings.const.spec.d.ts +2 -0
  41. package/build/_collections/constants/global-settings.const.spec.d.ts.map +1 -0
  42. package/build/_collections/constants/global-settings.const.spec.js +30 -0
  43. package/build/_collections/constants/global-settings.const.spec.js.map +1 -0
  44. package/build/_collections/constants/numbers.const.d.ts +36 -36
  45. package/build/_collections/constants/numbers.const.js +39 -39
  46. package/build/_collections/constants/times.const.d.ts +38 -38
  47. package/build/_collections/constants/times.const.js +41 -41
  48. package/build/_collections/utils/array.util.d.ts +388 -388
  49. package/build/_collections/utils/array.util.js +636 -636
  50. package/build/_collections/utils/array.util.spec.d.ts +2 -0
  51. package/build/_collections/utils/array.util.spec.d.ts.map +1 -0
  52. package/build/_collections/utils/array.util.spec.js +239 -0
  53. package/build/_collections/utils/array.util.spec.js.map +1 -0
  54. package/build/_collections/utils/async.util.d.ts +62 -62
  55. package/build/_collections/utils/async.util.js +187 -187
  56. package/build/_collections/utils/async.util.spec.d.ts +2 -0
  57. package/build/_collections/utils/async.util.spec.d.ts.map +1 -0
  58. package/build/_collections/utils/async.util.spec.js +332 -0
  59. package/build/_collections/utils/async.util.spec.js.map +1 -0
  60. package/build/_collections/utils/data.util.d.ts +59 -59
  61. package/build/_collections/utils/data.util.js +207 -207
  62. package/build/_collections/utils/data.util.spec.d.ts +2 -0
  63. package/build/_collections/utils/data.util.spec.d.ts.map +1 -0
  64. package/build/_collections/utils/data.util.spec.js +291 -0
  65. package/build/_collections/utils/data.util.spec.js.map +1 -0
  66. package/build/_collections/utils/extract-error-message.util.d.ts +70 -70
  67. package/build/_collections/utils/extract-error-message.util.js +185 -185
  68. package/build/_collections/utils/extract-error-message.util.spec.d.ts +2 -0
  69. package/build/_collections/utils/extract-error-message.util.spec.d.ts.map +1 -0
  70. package/build/_collections/utils/extract-error-message.util.spec.js +182 -0
  71. package/build/_collections/utils/extract-error-message.util.spec.js.map +1 -0
  72. package/build/_collections/utils/json-error-helper.util.d.ts +100 -100
  73. package/build/_collections/utils/json-error-helper.util.js +255 -255
  74. package/build/_collections/utils/json-error-helper.util.spec.d.ts +2 -0
  75. package/build/_collections/utils/json-error-helper.util.spec.d.ts.map +1 -0
  76. package/build/_collections/utils/json-error-helper.util.spec.js +433 -0
  77. package/build/_collections/utils/json-error-helper.util.spec.js.map +1 -0
  78. package/build/_collections/utils/log.util.d.ts +398 -398
  79. package/build/_collections/utils/log.util.js +559 -559
  80. package/build/_collections/utils/log.util.spec.d.ts +2 -0
  81. package/build/_collections/utils/log.util.spec.d.ts.map +1 -0
  82. package/build/_collections/utils/log.util.spec.js +633 -0
  83. package/build/_collections/utils/log.util.spec.js.map +1 -0
  84. package/build/_collections/utils/math/box-bounds.spec.d.ts +2 -0
  85. package/build/_collections/utils/math/box-bounds.spec.d.ts.map +1 -0
  86. package/build/_collections/utils/math/box-bounds.spec.js +57 -0
  87. package/build/_collections/utils/math/box-bounds.spec.js.map +1 -0
  88. package/build/_collections/utils/math/box-bounds.util.d.ts +113 -113
  89. package/build/_collections/utils/math/box-bounds.util.js +163 -163
  90. package/build/_collections/utils/math/math.util.d.ts +86 -86
  91. package/build/_collections/utils/math/math.util.js +127 -127
  92. package/build/_collections/utils/math/math.util.spec.d.ts +2 -0
  93. package/build/_collections/utils/math/math.util.spec.d.ts.map +1 -0
  94. package/build/_collections/utils/math/math.util.spec.js +80 -0
  95. package/build/_collections/utils/math/math.util.spec.js.map +1 -0
  96. package/build/_collections/utils/math/random.util.d.ts +60 -60
  97. package/build/_collections/utils/math/random.util.js +121 -121
  98. package/build/_collections/utils/math/random.util.spec.d.ts +2 -0
  99. package/build/_collections/utils/math/random.util.spec.d.ts.map +1 -0
  100. package/build/_collections/utils/math/random.util.spec.js +75 -0
  101. package/build/_collections/utils/math/random.util.spec.js.map +1 -0
  102. package/build/_collections/utils/math/trigonometry.util.d.ts +74 -74
  103. package/build/_collections/utils/math/trigonometry.util.js +93 -93
  104. package/build/_collections/utils/math/trigonometry.util.spec.d.ts +2 -0
  105. package/build/_collections/utils/math/trigonometry.util.spec.d.ts.map +1 -0
  106. package/build/_collections/utils/math/trigonometry.util.spec.js +49 -0
  107. package/build/_collections/utils/math/trigonometry.util.spec.js.map +1 -0
  108. package/build/_collections/utils/math/vector2.util.d.ts +445 -445
  109. package/build/_collections/utils/math/vector2.util.js +591 -591
  110. package/build/_collections/utils/math/vector2.util.spec.d.ts +2 -0
  111. package/build/_collections/utils/math/vector2.util.spec.d.ts.map +1 -0
  112. package/build/_collections/utils/math/vector2.util.spec.js +82 -0
  113. package/build/_collections/utils/math/vector2.util.spec.js.map +1 -0
  114. package/build/_collections/utils/object.util.d.ts +221 -221
  115. package/build/_collections/utils/object.util.js +595 -595
  116. package/build/_collections/utils/object.util.spec.d.ts +2 -0
  117. package/build/_collections/utils/object.util.spec.d.ts.map +1 -0
  118. package/build/_collections/utils/object.util.spec.js +506 -0
  119. package/build/_collections/utils/object.util.spec.js.map +1 -0
  120. package/build/_collections/utils/regex/password-regex.util.d.ts +14 -14
  121. package/build/_collections/utils/regex/password-regex.util.js +60 -60
  122. package/build/_collections/utils/regex/password-regex.util.spec.d.ts +2 -0
  123. package/build/_collections/utils/regex/password-regex.util.spec.d.ts.map +1 -0
  124. package/build/_collections/utils/regex/password-regex.util.spec.js +44 -0
  125. package/build/_collections/utils/regex/password-regex.util.spec.js.map +1 -0
  126. package/build/_collections/utils/regex/regex.util.d.ts +1 -1
  127. package/build/_collections/utils/regex/regex.util.js +4 -4
  128. package/build/_collections/utils/regex/regex.util.spec.d.ts +2 -0
  129. package/build/_collections/utils/regex/regex.util.spec.d.ts.map +1 -0
  130. package/build/_collections/utils/regex/regex.util.spec.js +40 -0
  131. package/build/_collections/utils/regex/regex.util.spec.js.map +1 -0
  132. package/build/_collections/utils/regex/username-regex.util.d.ts +1 -1
  133. package/build/_collections/utils/regex/username-regex.util.js +31 -31
  134. package/build/_collections/utils/regex/username-regex.util.spec.d.ts +2 -0
  135. package/build/_collections/utils/regex/username-regex.util.spec.d.ts.map +1 -0
  136. package/build/_collections/utils/regex/username-regex.util.spec.js +59 -0
  137. package/build/_collections/utils/regex/username-regex.util.spec.js.map +1 -0
  138. package/build/_collections/utils/require-env.util.d.ts +85 -85
  139. package/build/_collections/utils/require-env.util.js +93 -93
  140. package/build/_collections/utils/require-env.util.spec.d.ts +2 -0
  141. package/build/_collections/utils/require-env.util.spec.d.ts.map +1 -0
  142. package/build/_collections/utils/require-env.util.spec.js +214 -0
  143. package/build/_collections/utils/require-env.util.spec.js.map +1 -0
  144. package/build/_collections/utils/round-list.util.d.ts +81 -81
  145. package/build/_collections/utils/round-list.util.js +112 -112
  146. package/build/_collections/utils/round-list.util.spec.d.ts +2 -0
  147. package/build/_collections/utils/round-list.util.spec.d.ts.map +1 -0
  148. package/build/_collections/utils/round-list.util.spec.js +65 -0
  149. package/build/_collections/utils/round-list.util.spec.js.map +1 -0
  150. package/build/_collections/utils/secret-mask.util.d.ts +89 -89
  151. package/build/_collections/utils/secret-mask.util.js +222 -222
  152. package/build/_collections/utils/secret-mask.util.spec.d.ts +2 -0
  153. package/build/_collections/utils/secret-mask.util.spec.d.ts.map +1 -0
  154. package/build/_collections/utils/secret-mask.util.spec.js +57 -0
  155. package/build/_collections/utils/secret-mask.util.spec.js.map +1 -0
  156. package/build/_collections/utils/stack.util.d.ts +26 -26
  157. package/build/_collections/utils/stack.util.js +130 -130
  158. package/build/_collections/utils/stack.util.spec.d.ts +2 -0
  159. package/build/_collections/utils/stack.util.spec.d.ts.map +1 -0
  160. package/build/_collections/utils/stack.util.spec.js +290 -0
  161. package/build/_collections/utils/stack.util.spec.js.map +1 -0
  162. package/build/_collections/utils/string-case.util.d.ts +135 -135
  163. package/build/_collections/utils/string-case.util.js +336 -336
  164. package/build/_collections/utils/string-case.util.spec.d.ts +2 -0
  165. package/build/_collections/utils/string-case.util.spec.d.ts.map +1 -0
  166. package/build/_collections/utils/string-case.util.spec.js +360 -0
  167. package/build/_collections/utils/string-case.util.spec.js.map +1 -0
  168. package/build/_collections/utils/string.util.d.ts +148 -148
  169. package/build/_collections/utils/string.util.js +370 -370
  170. package/build/_collections/utils/string.util.spec.d.ts +2 -0
  171. package/build/_collections/utils/string.util.spec.d.ts.map +1 -0
  172. package/build/_collections/utils/string.util.spec.js +860 -0
  173. package/build/_collections/utils/string.util.spec.js.map +1 -0
  174. package/build/_collections/utils/time.util.d.ts +267 -267
  175. package/build/_collections/utils/time.util.js +435 -435
  176. package/build/_collections/utils/time.util.spec.d.ts +2 -0
  177. package/build/_collections/utils/time.util.spec.d.ts.map +1 -0
  178. package/build/_collections/utils/time.util.spec.js +38 -0
  179. package/build/_collections/utils/time.util.spec.js.map +1 -0
  180. package/build/_collections/utils/type-cloning-facility.util.d.ts +50 -50
  181. package/build/_collections/utils/type-cloning-facility.util.js +126 -126
  182. package/build/_collections/utils/type-cloning-facility.util.spec.d.ts +2 -0
  183. package/build/_collections/utils/type-cloning-facility.util.spec.d.ts.map +1 -0
  184. package/build/_collections/utils/type-cloning-facility.util.spec.js +41 -0
  185. package/build/_collections/utils/type-cloning-facility.util.spec.js.map +1 -0
  186. package/build/_collections/utils/utilities.util.d.ts +25 -25
  187. package/build/_collections/utils/utilities.util.js +65 -65
  188. package/build/_collections/utils/utilities.util.spec.d.ts +2 -0
  189. package/build/_collections/utils/utilities.util.spec.d.ts.map +1 -0
  190. package/build/_collections/utils/utilities.util.spec.js +170 -0
  191. package/build/_collections/utils/utilities.util.spec.js.map +1 -0
  192. package/build/_collections/utils/uuid.util.d.ts +14 -14
  193. package/build/_collections/utils/uuid.util.js +38 -38
  194. package/build/_collections/utils/uuid.util.spec.d.ts +2 -0
  195. package/build/_collections/utils/uuid.util.spec.d.ts.map +1 -0
  196. package/build/_collections/utils/uuid.util.spec.js +29 -0
  197. package/build/_collections/utils/uuid.util.spec.js.map +1 -0
  198. package/build/_enums/basic-property-type.enum.d.ts +17 -17
  199. package/build/_enums/basic-property-type.enum.js +21 -21
  200. package/build/_enums/data-model-type.enum.d.ts +23 -23
  201. package/build/_enums/data-model-type.enum.js +27 -27
  202. package/build/_enums/environment-flag.enum.d.ts +25 -25
  203. package/build/_enums/environment-flag.enum.js +29 -29
  204. package/build/_enums/error-level.enum.d.ts +34 -34
  205. package/build/_enums/error-level.enum.js +38 -38
  206. package/build/_enums/error-status.enum.d.ts +27 -27
  207. package/build/_enums/error-status.enum.js +31 -31
  208. package/build/_enums/http/http-call-type.enum.d.ts +40 -40
  209. package/build/_enums/http/http-call-type.enum.js +45 -45
  210. package/build/_enums/http/http-event-type.enum.d.ts +38 -38
  211. package/build/_enums/http/http-event-type.enum.js +42 -42
  212. package/build/_enums/http/http-response-type.enum.d.ts +17 -17
  213. package/build/_enums/http/http-response-type.enum.js +21 -21
  214. package/build/_enums/log-style.enum.d.ts +37 -37
  215. package/build/_enums/log-style.enum.js +41 -41
  216. package/build/_enums/server-connection-status.enum.d.ts +4 -4
  217. package/build/_enums/server-connection-status.enum.js +8 -8
  218. package/build/_enums/time/day-of-week.enum.d.ts +38 -38
  219. package/build/_enums/time/day-of-week.enum.js +50 -50
  220. package/build/_enums/time/month.enum.d.ts +22 -22
  221. package/build/_enums/time/month.enum.js +26 -26
  222. package/build/_enums/time/relative-date.enum.d.ts +18 -18
  223. package/build/_enums/time/relative-date.enum.js +22 -22
  224. package/build/_models/control-models/data-model-params.control-model.d.ts +82 -82
  225. package/build/_models/control-models/data-model-params.control-model.js +281 -281
  226. package/build/_models/control-models/data-model-params.control-model.spec.d.ts +2 -0
  227. package/build/_models/control-models/data-model-params.control-model.spec.d.ts.map +1 -0
  228. package/build/_models/control-models/data-model-params.control-model.spec.js +123 -0
  229. package/build/_models/control-models/data-model-params.control-model.spec.js.map +1 -0
  230. package/build/_models/control-models/data-property-params.control-model.d.ts +87 -87
  231. package/build/_models/control-models/data-property-params.control-model.js +166 -166
  232. package/build/_models/control-models/data-property-params.control-model.spec.d.ts +2 -0
  233. package/build/_models/control-models/data-property-params.control-model.spec.d.ts.map +1 -0
  234. package/build/_models/control-models/data-property-params.control-model.spec.js +74 -0
  235. package/build/_models/control-models/data-property-params.control-model.spec.js.map +1 -0
  236. package/build/_models/control-models/error.control-model.d.ts +363 -363
  237. package/build/_models/control-models/error.control-model.js +678 -678
  238. package/build/_models/control-models/error.control-model.spec.d.ts +2 -0
  239. package/build/_models/control-models/error.control-model.spec.d.ts.map +1 -0
  240. package/build/_models/control-models/error.control-model.spec.js +749 -0
  241. package/build/_models/control-models/error.control-model.spec.js.map +1 -0
  242. package/build/_models/control-models/http/http-error-response.control-model.d.ts +39 -39
  243. package/build/_models/control-models/http/http-error-response.control-model.js +49 -49
  244. package/build/_models/control-models/http/http-error-response.control-model.spec.d.ts +2 -0
  245. package/build/_models/control-models/http/http-error-response.control-model.spec.d.ts.map +1 -0
  246. package/build/_models/control-models/http/http-error-response.control-model.spec.js +94 -0
  247. package/build/_models/control-models/http/http-error-response.control-model.spec.js.map +1 -0
  248. package/build/_models/control-models/http/http-headers.control-model.d.ts +38 -38
  249. package/build/_models/control-models/http/http-headers.control-model.js +44 -44
  250. package/build/_models/control-models/http/http-headers.control-model.spec.d.ts +2 -0
  251. package/build/_models/control-models/http/http-headers.control-model.spec.d.ts.map +1 -0
  252. package/build/_models/control-models/http/http-headers.control-model.spec.js +21 -0
  253. package/build/_models/control-models/http/http-headers.control-model.spec.js.map +1 -0
  254. package/build/_models/control-models/http/http-response.model-base.d.ts +51 -51
  255. package/build/_models/control-models/http/http-response.model-base.js +58 -58
  256. package/build/_models/control-models/http/http-response.model-base.spec.d.ts +2 -0
  257. package/build/_models/control-models/http/http-response.model-base.spec.d.ts.map +1 -0
  258. package/build/_models/control-models/http/http-response.model-base.spec.js +41 -0
  259. package/build/_models/control-models/http/http-response.model-base.spec.js.map +1 -0
  260. package/build/_models/control-models/poll.control-model.d.ts +57 -57
  261. package/build/_models/control-models/poll.control-model.js +140 -140
  262. package/build/_models/control-models/poll.control-model.spec.d.ts +2 -0
  263. package/build/_models/control-models/poll.control-model.spec.d.ts.map +1 -0
  264. package/build/_models/control-models/poll.control-model.spec.js +57 -0
  265. package/build/_models/control-models/poll.control-model.spec.js.map +1 -0
  266. package/build/_models/control-models/range-value.control-model.d.ts +172 -172
  267. package/build/_models/control-models/range-value.control-model.js +248 -248
  268. package/build/_models/control-models/range-value.control-model.spec.d.ts +2 -0
  269. package/build/_models/control-models/range-value.control-model.spec.d.ts.map +1 -0
  270. package/build/_models/control-models/range-value.control-model.spec.js +163 -0
  271. package/build/_models/control-models/range-value.control-model.spec.js.map +1 -0
  272. package/build/_models/control-models/server-status.control-model.d.ts +50 -50
  273. package/build/_models/control-models/server-status.control-model.js +63 -63
  274. package/build/_models/control-models/server-status.control-model.spec.d.ts +2 -0
  275. package/build/_models/control-models/server-status.control-model.spec.d.ts.map +1 -0
  276. package/build/_models/control-models/server-status.control-model.spec.js +61 -0
  277. package/build/_models/control-models/server-status.control-model.spec.js.map +1 -0
  278. package/build/_models/control-models/service-endpoint-settings-base.control-model.d.ts +52 -52
  279. package/build/_models/control-models/service-endpoint-settings-base.control-model.js +123 -123
  280. package/build/_models/control-models/service-endpoint-settings-base.control-model.spec.d.ts +2 -0
  281. package/build/_models/control-models/service-endpoint-settings-base.control-model.spec.d.ts.map +1 -0
  282. package/build/_models/control-models/service-endpoint-settings-base.control-model.spec.js +124 -0
  283. package/build/_models/control-models/service-endpoint-settings-base.control-model.spec.js.map +1 -0
  284. package/build/_models/data-models/errors.data-model.d.ts +128 -128
  285. package/build/_models/data-models/errors.data-model.js +146 -146
  286. package/build/_models/data-models/errors.data-model.spec.d.ts +2 -0
  287. package/build/_models/data-models/errors.data-model.spec.d.ts.map +1 -0
  288. package/build/_models/data-models/errors.data-model.spec.js +65 -0
  289. package/build/_models/data-models/errors.data-model.spec.js.map +1 -0
  290. package/build/_models/data-models/metadata.data-model.d.ts +60 -60
  291. package/build/_models/data-models/metadata.data-model.js +121 -121
  292. package/build/_models/data-models/metadata.data-model.spec.d.ts +2 -0
  293. package/build/_models/data-models/metadata.data-model.spec.d.ts.map +1 -0
  294. package/build/_models/data-models/metadata.data-model.spec.js +142 -0
  295. package/build/_models/data-models/metadata.data-model.spec.js.map +1 -0
  296. package/build/_models/interfaces/box-bounds.interface.d.ts +7 -7
  297. package/build/_models/interfaces/box-bounds.interface.js +2 -2
  298. package/build/_models/interfaces/environment/global-log-settings.interface.d.ts +65 -65
  299. package/build/_models/interfaces/environment/global-log-settings.interface.js +2 -2
  300. package/build/_models/interfaces/environment/global-settings.interface.d.ts +21 -0
  301. package/build/_models/interfaces/environment/global-settings.interface.d.ts.map +1 -1
  302. package/build/_models/interfaces/environment/global-settings.interface.js +2 -2
  303. package/build/_models/interfaces/error-defaults.interface.d.ts +16 -16
  304. package/build/_models/interfaces/error-defaults.interface.js +2 -2
  305. package/build/_models/interfaces/paged.interface.d.ts +7 -7
  306. package/build/_models/interfaces/paged.interface.js +2 -2
  307. package/build/_models/interfaces/random-weight.interface.d.ts +4 -4
  308. package/build/_models/interfaces/random-weight.interface.js +2 -2
  309. package/build/_models/interfaces/route-settings.interface.d.ts +13 -13
  310. package/build/_models/interfaces/route-settings.interface.js +2 -2
  311. package/build/_models/interfaces/search-query.interface.d.ts +19 -19
  312. package/build/_models/interfaces/search-query.interface.js +2 -2
  313. package/build/_models/interfaces/search-result.interface.d.ts +4 -4
  314. package/build/_models/interfaces/search-result.interface.js +2 -2
  315. package/build/_models/interfaces/server-error-statistics.interface.d.ts +17 -17
  316. package/build/_models/interfaces/server-error-statistics.interface.js +2 -2
  317. package/build/_models/interfaces/vector2.interface.d.ts +16 -16
  318. package/build/_models/interfaces/vector2.interface.js +2 -2
  319. package/build/_models/types/db-filter.type.d.ts +100 -100
  320. package/build/_models/types/db-filter.type.js +2 -2
  321. package/build/_models/types/db-sort.type.d.ts +3 -3
  322. package/build/_models/types/db-sort.type.js +2 -2
  323. package/build/_models/types/ds-filter.type.d.ts +47 -47
  324. package/build/_models/types/ds-filter.type.js +18 -18
  325. package/build/_models/types/ds-sort.type.d.ts +16 -16
  326. package/build/_models/types/ds-sort.type.js +2 -2
  327. package/build/_modules/ai/_collections/ai-model-ref.util.d.ts +42 -42
  328. package/build/_modules/ai/_collections/ai-model-ref.util.js +74 -74
  329. package/build/_modules/ai/_collections/ai-model-registry.util.d.ts +23 -23
  330. package/build/_modules/ai/_collections/ai-model-registry.util.js +30 -30
  331. package/build/_modules/ai/_collections/ai-model-registry.util.spec.d.ts +2 -0
  332. package/build/_modules/ai/_collections/ai-model-registry.util.spec.d.ts.map +1 -0
  333. package/build/_modules/ai/_collections/ai-model-registry.util.spec.js +30 -0
  334. package/build/_modules/ai/_collections/ai-model-registry.util.spec.js.map +1 -0
  335. package/build/_modules/ai/_enums/ai-message-role.enum.d.ts +7 -7
  336. package/build/_modules/ai/_enums/ai-message-role.enum.js +11 -11
  337. package/build/_modules/ai/_enums/ai-model-type.enum.d.ts +7 -7
  338. package/build/_modules/ai/_enums/ai-model-type.enum.js +11 -11
  339. package/build/_modules/ai/_enums/ai-provider.enum.d.ts +7 -7
  340. package/build/_modules/ai/_enums/ai-provider.enum.js +11 -11
  341. package/build/_modules/ai/_models/ai-call-settings.interface.d.ts +74 -74
  342. package/build/_modules/ai/_models/ai-call-settings.interface.js +81 -81
  343. package/build/_modules/ai/_models/ai-config.interface.d.ts +14 -14
  344. package/build/_modules/ai/_models/ai-config.interface.js +2 -2
  345. package/build/_modules/ai/_models/ai-embedding-request.interface.d.ts +19 -19
  346. package/build/_modules/ai/_models/ai-embedding-request.interface.js +2 -2
  347. package/build/_modules/ai/_models/ai-embedding-response.interface.d.ts +25 -25
  348. package/build/_modules/ai/_models/ai-embedding-response.interface.js +2 -2
  349. package/build/_modules/ai/_models/ai-llm-request.interface.d.ts +22 -22
  350. package/build/_modules/ai/_models/ai-llm-request.interface.js +2 -2
  351. package/build/_modules/ai/_models/ai-llm-response.interface.d.ts +28 -28
  352. package/build/_modules/ai/_models/ai-llm-response.interface.js +2 -2
  353. package/build/_modules/ai/_models/ai-message.interface.d.ts +10 -10
  354. package/build/_modules/ai/_models/ai-message.interface.js +2 -2
  355. package/build/_modules/ai/_models/ai-model-capabilities.interface.d.ts +35 -35
  356. package/build/_modules/ai/_models/ai-model-capabilities.interface.js +2 -2
  357. package/build/_modules/ai/_models/ai-model-info.interface.d.ts +61 -61
  358. package/build/_modules/ai/_models/ai-model-info.interface.js +2 -2
  359. package/build/_modules/ai/_models/ai-model-settings-schema.interface.d.ts +51 -51
  360. package/build/_modules/ai/_models/ai-model-settings-schema.interface.js +2 -2
  361. package/build/_modules/ai/_models/ai-provider-capabilities.interface.d.ts +28 -28
  362. package/build/_modules/ai/_models/ai-provider-capabilities.interface.js +2 -2
  363. package/build/_modules/ai/_models/ai-settings.interface.d.ts +9 -9
  364. package/build/_modules/ai/_models/ai-settings.interface.js +14 -14
  365. package/build/_modules/ai/_models/ai-tool-call.interface.d.ts +18 -18
  366. package/build/_modules/ai/_models/ai-tool-call.interface.js +2 -2
  367. package/build/_modules/ai/_models/ai-tool-handler.type.d.ts +10 -10
  368. package/build/_modules/ai/_models/ai-tool-handler.type.js +2 -2
  369. package/build/_modules/ai/_models/ai-tool-result.interface.d.ts +16 -16
  370. package/build/_modules/ai/_models/ai-tool-result.interface.js +2 -2
  371. package/build/_modules/ai/_models/ai-tool.interface.d.ts +16 -16
  372. package/build/_modules/ai/_models/ai-tool.interface.js +2 -2
  373. package/build/_modules/ai/_models/ai-user-provider-config.control-model.d.ts +21 -21
  374. package/build/_modules/ai/_models/ai-user-provider-config.control-model.js +28 -28
  375. package/build/_modules/ai/_modules/anthropic/_collections/aai-models.const.d.ts +2 -2
  376. package/build/_modules/ai/_modules/anthropic/_collections/aai-models.const.js +133 -133
  377. package/build/_modules/ai/_modules/anthropic/_enums/aai-model.enum.d.ts +12 -12
  378. package/build/_modules/ai/_modules/anthropic/_enums/aai-model.enum.js +20 -20
  379. package/build/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.d.ts +10 -10
  380. package/build/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.js +20 -20
  381. package/build/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.spec.d.ts +2 -0
  382. package/build/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.spec.d.ts.map +1 -0
  383. package/build/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.spec.js +24 -0
  384. package/build/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.spec.js.map +1 -0
  385. package/build/_modules/ai/_modules/anthropic/_models/aai-client-options.interface.d.ts +8 -8
  386. package/build/_modules/ai/_modules/anthropic/_models/aai-client-options.interface.js +2 -2
  387. package/build/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.d.ts +14 -14
  388. package/build/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.js +22 -22
  389. package/build/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.spec.d.ts +2 -0
  390. package/build/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.spec.d.ts.map +1 -0
  391. package/build/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.spec.js +20 -0
  392. package/build/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.spec.js.map +1 -0
  393. package/build/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.d.ts +10 -10
  394. package/build/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.js +19 -19
  395. package/build/_modules/ai/_modules/anthropic/index.d.ts +6 -6
  396. package/build/_modules/ai/_modules/anthropic/index.js +12 -12
  397. package/build/_modules/ai/_modules/document-ai/_models/dai-embedding-info.interface.d.ts +11 -11
  398. package/build/_modules/ai/_modules/document-ai/_models/dai-embedding-info.interface.js +2 -2
  399. package/build/_modules/ai/_modules/document-ai/_models/dai-vector-search-params.interface.d.ts +21 -21
  400. package/build/_modules/ai/_modules/document-ai/_models/dai-vector-search-params.interface.js +2 -2
  401. package/build/_modules/ai/_modules/document-ai/index.d.ts +2 -2
  402. package/build/_modules/ai/_modules/document-ai/index.js +6 -6
  403. package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.d.ts +17 -17
  404. package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.js +41 -41
  405. package/build/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.d.ts +6 -6
  406. package/build/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.js +10 -10
  407. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.d.ts +9 -9
  408. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.js +18 -18
  409. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.d.ts +11 -11
  410. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.js +2 -2
  411. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.d.ts +13 -13
  412. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.js +21 -21
  413. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.d.ts +10 -10
  414. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.js +19 -19
  415. package/build/_modules/ai/_modules/fdp-ai/index.d.ts +6 -6
  416. package/build/_modules/ai/_modules/fdp-ai/index.js +12 -12
  417. package/build/_modules/ai/_modules/google-ai/_collections/gai-models.const.d.ts +2 -2
  418. package/build/_modules/ai/_modules/google-ai/_collections/gai-models.const.js +158 -158
  419. package/build/_modules/ai/_modules/google-ai/_enums/gai-model.enum.d.ts +9 -9
  420. package/build/_modules/ai/_modules/google-ai/_enums/gai-model.enum.js +17 -17
  421. package/build/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.d.ts +10 -10
  422. package/build/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.js +20 -20
  423. package/build/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.spec.d.ts +2 -0
  424. package/build/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.spec.d.ts.map +1 -0
  425. package/build/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.spec.js +24 -0
  426. package/build/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.spec.js.map +1 -0
  427. package/build/_modules/ai/_modules/google-ai/_models/gai-client-options.interface.d.ts +6 -6
  428. package/build/_modules/ai/_modules/google-ai/_models/gai-client-options.interface.js +2 -2
  429. package/build/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.d.ts +14 -14
  430. package/build/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.js +22 -22
  431. package/build/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.spec.d.ts +2 -0
  432. package/build/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.spec.d.ts.map +1 -0
  433. package/build/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.spec.js +20 -0
  434. package/build/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.spec.js.map +1 -0
  435. package/build/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.d.ts +10 -10
  436. package/build/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.js +19 -19
  437. package/build/_modules/ai/_modules/google-ai/index.d.ts +6 -6
  438. package/build/_modules/ai/_modules/google-ai/index.js +12 -12
  439. package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.d.ts +18 -18
  440. package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.js +60 -60
  441. package/build/_modules/ai/_modules/local-ai/_enums/lai-model.enum.d.ts +4 -4
  442. package/build/_modules/ai/_modules/local-ai/_enums/lai-model.enum.js +8 -8
  443. package/build/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.d.ts +6 -6
  444. package/build/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.js +15 -15
  445. package/build/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.spec.d.ts +2 -0
  446. package/build/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.spec.d.ts.map +1 -0
  447. package/build/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.spec.js +24 -0
  448. package/build/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.spec.js.map +1 -0
  449. package/build/_modules/ai/_modules/local-ai/_models/lai-client-options.interface.d.ts +7 -7
  450. package/build/_modules/ai/_modules/local-ai/_models/lai-client-options.interface.js +2 -2
  451. package/build/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.d.ts +10 -10
  452. package/build/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.js +18 -18
  453. package/build/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.spec.d.ts +2 -0
  454. package/build/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.spec.d.ts.map +1 -0
  455. package/build/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.spec.js +20 -0
  456. package/build/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.spec.js.map +1 -0
  457. package/build/_modules/ai/_modules/local-ai/index.d.ts +5 -5
  458. package/build/_modules/ai/_modules/local-ai/index.js +11 -11
  459. package/build/_modules/ai/_modules/open-ai/_collections/oai-embedding-model-dimensions.const.d.ts +2 -2
  460. package/build/_modules/ai/_modules/open-ai/_collections/oai-embedding-model-dimensions.const.js +9 -9
  461. package/build/_modules/ai/_modules/open-ai/_collections/oai-models.const.d.ts +2 -2
  462. package/build/_modules/ai/_modules/open-ai/_collections/oai-models.const.js +394 -394
  463. package/build/_modules/ai/_modules/open-ai/_enums/oai-model.enum.d.ts +43 -43
  464. package/build/_modules/ai/_modules/open-ai/_enums/oai-model.enum.js +146 -146
  465. package/build/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.d.ts +10 -10
  466. package/build/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.js +20 -20
  467. package/build/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.spec.d.ts +2 -0
  468. package/build/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.spec.d.ts.map +1 -0
  469. package/build/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.spec.js +24 -0
  470. package/build/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.spec.js.map +1 -0
  471. package/build/_modules/ai/_modules/open-ai/_models/oai-client-options.interface.d.ts +68 -68
  472. package/build/_modules/ai/_modules/open-ai/_models/oai-client-options.interface.js +2 -2
  473. package/build/_modules/ai/_modules/open-ai/_models/oai-embedding-info.interface.d.ts +11 -11
  474. package/build/_modules/ai/_modules/open-ai/_models/oai-embedding-info.interface.js +2 -2
  475. package/build/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.d.ts +14 -14
  476. package/build/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.js +22 -22
  477. package/build/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.spec.d.ts +2 -0
  478. package/build/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.spec.d.ts.map +1 -0
  479. package/build/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.spec.js +20 -0
  480. package/build/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.spec.js.map +1 -0
  481. package/build/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.d.ts +11 -11
  482. package/build/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.js +20 -20
  483. package/build/_modules/ai/_modules/open-ai/index.d.ts +8 -8
  484. package/build/_modules/ai/_modules/open-ai/index.js +22 -22
  485. package/build/_modules/ai/index.d.ts +22 -22
  486. package/build/_modules/ai/index.js +28 -28
  487. package/build/_modules/ci-tools/_enums/cit-ci-result-code.enum.d.ts +8 -8
  488. package/build/_modules/ci-tools/_enums/cit-ci-result-code.enum.js +12 -12
  489. package/build/_modules/ci-tools/_enums/cit-ci-step-result-code.enum.d.ts +8 -8
  490. package/build/_modules/ci-tools/_enums/cit-ci-step-result-code.enum.js +12 -12
  491. package/build/_modules/ci-tools/_models/cit-ci-result-info.data-models.d.ts +42 -42
  492. package/build/_modules/ci-tools/_models/cit-ci-result-info.data-models.js +67 -67
  493. package/build/_modules/ci-tools/_models/cit-ci-result-info.data-models.spec.d.ts +2 -0
  494. package/build/_modules/ci-tools/_models/cit-ci-result-info.data-models.spec.d.ts.map +1 -0
  495. package/build/_modules/ci-tools/_models/cit-ci-result-info.data-models.spec.js +51 -0
  496. package/build/_modules/ci-tools/_models/cit-ci-result-info.data-models.spec.js.map +1 -0
  497. package/build/_modules/ci-tools/_models/cit-ci-step-result.interface.d.ts +9 -9
  498. package/build/_modules/ci-tools/_models/cit-ci-step-result.interface.js +2 -2
  499. package/build/_modules/ci-tools/index.d.ts +4 -4
  500. package/build/_modules/ci-tools/index.js +9 -9
  501. package/build/_modules/crypto/_collections/crypto-v1.util.d.ts +47 -47
  502. package/build/_modules/crypto/_collections/crypto-v1.util.js +204 -204
  503. package/build/_modules/crypto/_collections/crypto-v2.util.d.ts +106 -106
  504. package/build/_modules/crypto/_collections/crypto-v2.util.js +278 -278
  505. package/build/_modules/crypto/_collections/crypto-v4.util.d.ts +164 -164
  506. package/build/_modules/crypto/_collections/crypto-v4.util.js +610 -610
  507. package/build/_modules/crypto/_collections/crypto.util.d.ts +161 -161
  508. package/build/_modules/crypto/_collections/crypto.util.db-envelope.spec.d.ts +2 -0
  509. package/build/_modules/crypto/_collections/crypto.util.db-envelope.spec.d.ts.map +1 -0
  510. package/build/_modules/crypto/_collections/crypto.util.db-envelope.spec.js +43 -0
  511. package/build/_modules/crypto/_collections/crypto.util.db-envelope.spec.js.map +1 -0
  512. package/build/_modules/crypto/_collections/crypto.util.edge.spec.d.ts +2 -0
  513. package/build/_modules/crypto/_collections/crypto.util.edge.spec.d.ts.map +1 -0
  514. package/build/_modules/crypto/_collections/crypto.util.edge.spec.js +551 -0
  515. package/build/_modules/crypto/_collections/crypto.util.edge.spec.js.map +1 -0
  516. package/build/_modules/crypto/_collections/crypto.util.extra.spec.d.ts +2 -0
  517. package/build/_modules/crypto/_collections/crypto.util.extra.spec.d.ts.map +1 -0
  518. package/build/_modules/crypto/_collections/crypto.util.extra.spec.js +555 -0
  519. package/build/_modules/crypto/_collections/crypto.util.extra.spec.js.map +1 -0
  520. package/build/_modules/crypto/_collections/crypto.util.js +656 -656
  521. package/build/_modules/crypto/_collections/crypto.util.simple.spec.d.ts +2 -0
  522. package/build/_modules/crypto/_collections/crypto.util.simple.spec.d.ts.map +1 -0
  523. package/build/_modules/crypto/_collections/crypto.util.simple.spec.js +429 -0
  524. package/build/_modules/crypto/_collections/crypto.util.simple.spec.js.map +1 -0
  525. package/build/_modules/crypto/index.d.ts +1 -1
  526. package/build/_modules/crypto/index.js +12 -12
  527. package/build/_modules/custom-data/_collections/cud-module-settings.const.d.ts +12 -12
  528. package/build/_modules/custom-data/_collections/cud-module-settings.const.js +21 -21
  529. package/build/_modules/custom-data/_models/cud.data-model.d.ts +18 -18
  530. package/build/_modules/custom-data/_models/cud.data-model.js +31 -31
  531. package/build/_modules/custom-data/_models/cud.data-model.spec.d.ts +2 -0
  532. package/build/_modules/custom-data/_models/cud.data-model.spec.d.ts.map +1 -0
  533. package/build/_modules/custom-data/_models/cud.data-model.spec.js +35 -0
  534. package/build/_modules/custom-data/_models/cud.data-model.spec.js.map +1 -0
  535. package/build/_modules/custom-data/index.d.ts +2 -2
  536. package/build/_modules/custom-data/index.js +7 -7
  537. package/build/_modules/data-handler/_models/data-handler-settings.control-model.d.ts +72 -72
  538. package/build/_modules/data-handler/_models/data-handler-settings.control-model.js +82 -82
  539. package/build/_modules/data-handler/_models/data-handler-settings.control-model.spec.d.ts +2 -0
  540. package/build/_modules/data-handler/_models/data-handler-settings.control-model.spec.d.ts.map +1 -0
  541. package/build/_modules/data-handler/_models/data-handler-settings.control-model.spec.js +96 -0
  542. package/build/_modules/data-handler/_models/data-handler-settings.control-model.spec.js.map +1 -0
  543. package/build/_modules/data-handler/_models/data-handler.control-model.d.ts +148 -148
  544. package/build/_modules/data-handler/_models/data-handler.control-model.js +359 -359
  545. package/build/_modules/data-handler/_models/data-handler.control-model.spec.d.ts +2 -0
  546. package/build/_modules/data-handler/_models/data-handler.control-model.spec.d.ts.map +1 -0
  547. package/build/_modules/data-handler/_models/data-handler.control-model.spec.js +365 -0
  548. package/build/_modules/data-handler/_models/data-handler.control-model.spec.js.map +1 -0
  549. package/build/_modules/data-handler/_models/data-list-handler.control-model.d.ts +110 -110
  550. package/build/_modules/data-handler/_models/data-list-handler.control-model.js +223 -223
  551. package/build/_modules/data-handler/_models/data-list-handler.control-model.spec.d.ts +2 -0
  552. package/build/_modules/data-handler/_models/data-list-handler.control-model.spec.d.ts.map +1 -0
  553. package/build/_modules/data-handler/_models/data-list-handler.control-model.spec.js +202 -0
  554. package/build/_modules/data-handler/_models/data-list-handler.control-model.spec.js.map +1 -0
  555. package/build/_modules/data-handler/_models/data-search-handler.control-model.d.ts +171 -171
  556. package/build/_modules/data-handler/_models/data-search-handler.control-model.js +324 -324
  557. package/build/_modules/data-handler/_models/data-search-handler.control-model.spec.d.ts +2 -0
  558. package/build/_modules/data-handler/_models/data-search-handler.control-model.spec.d.ts.map +1 -0
  559. package/build/_modules/data-handler/_models/data-search-handler.control-model.spec.js +309 -0
  560. package/build/_modules/data-handler/_models/data-search-handler.control-model.spec.js.map +1 -0
  561. package/build/_modules/data-handler/_models/list-collector-data-handler.control-model.d.ts +115 -115
  562. package/build/_modules/data-handler/_models/list-collector-data-handler.control-model.js +244 -244
  563. package/build/_modules/data-handler/_models/list-collector-data-handler.control-model.spec.d.ts +2 -0
  564. package/build/_modules/data-handler/_models/list-collector-data-handler.control-model.spec.d.ts.map +1 -0
  565. package/build/_modules/data-handler/_models/list-collector-data-handler.control-model.spec.js +309 -0
  566. package/build/_modules/data-handler/_models/list-collector-data-handler.control-model.spec.js.map +1 -0
  567. package/build/_modules/data-handler/index.d.ts +5 -5
  568. package/build/_modules/data-handler/index.js +9 -9
  569. package/build/_modules/game/_collections/audio-mixer.util.d.ts +54 -54
  570. package/build/_modules/game/_collections/audio-mixer.util.js +113 -113
  571. package/build/_modules/game/_collections/audio-mixer.util.spec.d.ts +2 -0
  572. package/build/_modules/game/_collections/audio-mixer.util.spec.d.ts.map +1 -0
  573. package/build/_modules/game/_collections/audio-mixer.util.spec.js +153 -0
  574. package/build/_modules/game/_collections/audio-mixer.util.spec.js.map +1 -0
  575. package/build/_modules/game/_collections/audio-scale.util.d.ts +56 -56
  576. package/build/_modules/game/_collections/audio-scale.util.js +104 -104
  577. package/build/_modules/game/_collections/audio-scale.util.spec.d.ts +2 -0
  578. package/build/_modules/game/_collections/audio-scale.util.spec.d.ts.map +1 -0
  579. package/build/_modules/game/_collections/audio-scale.util.spec.js +98 -0
  580. package/build/_modules/game/_collections/audio-scale.util.spec.js.map +1 -0
  581. package/build/_modules/game/_enums/audio-channel.enum.d.ts +20 -20
  582. package/build/_modules/game/_enums/audio-channel.enum.js +24 -24
  583. package/build/_modules/game/_models/audio-mixer-config.interface.d.ts +43 -43
  584. package/build/_modules/game/_models/audio-mixer-config.interface.js +2 -2
  585. package/build/_modules/game/_models/audio-mixer-settings.interface.d.ts +31 -31
  586. package/build/_modules/game/_models/audio-mixer-settings.interface.js +2 -2
  587. package/build/_modules/game/_models/audio-mixer-state.interface.d.ts +30 -30
  588. package/build/_modules/game/_models/audio-mixer-state.interface.js +2 -2
  589. package/build/_modules/game/_models/audio-mixer.control-model.d.ts +129 -129
  590. package/build/_modules/game/_models/audio-mixer.control-model.js +341 -341
  591. package/build/_modules/game/_models/audio-mixer.control-model.spec.d.ts +2 -0
  592. package/build/_modules/game/_models/audio-mixer.control-model.spec.d.ts.map +1 -0
  593. package/build/_modules/game/_models/audio-mixer.control-model.spec.js +278 -0
  594. package/build/_modules/game/_models/audio-mixer.control-model.spec.js.map +1 -0
  595. package/build/_modules/game/_models/audio-scale.interface.d.ts +17 -17
  596. package/build/_modules/game/_models/audio-scale.interface.js +2 -2
  597. package/build/_modules/game/_models/seeded-random-state.interface.d.ts +16 -16
  598. package/build/_modules/game/_models/seeded-random-state.interface.js +2 -2
  599. package/build/_modules/game/_models/seeded-random.control-model.d.ts +124 -124
  600. package/build/_modules/game/_models/seeded-random.control-model.js +262 -262
  601. package/build/_modules/game/_models/seeded-random.control-model.spec.d.ts +2 -0
  602. package/build/_modules/game/_models/seeded-random.control-model.spec.d.ts.map +1 -0
  603. package/build/_modules/game/_models/seeded-random.control-model.spec.js +215 -0
  604. package/build/_modules/game/_models/seeded-random.control-model.spec.js.map +1 -0
  605. package/build/_modules/game/index.d.ts +10 -10
  606. package/build/_modules/game/index.js +16 -16
  607. package/build/_modules/location/_collections/assets/country-codes-ISO-3166.json +3239 -3239
  608. package/build/_modules/location/_collections/assets/country-divisions-ISO-3166-all-list.json +19036 -19036
  609. package/build/_modules/location/_collections/assets/country-phone-codes.json +1202 -1202
  610. package/build/_modules/location/_collections/loc-country-divisions.const.d.ts +3 -3
  611. package/build/_modules/location/_collections/loc-country-divisions.const.js +6 -6
  612. package/build/_modules/location/_collections/loc-country-isos.const.d.ts +2 -2
  613. package/build/_modules/location/_collections/loc-country-isos.const.js +5 -5
  614. package/build/_modules/location/_collections/loc-regions.util.d.ts +52 -52
  615. package/build/_modules/location/_collections/loc-regions.util.js +112 -112
  616. package/build/_modules/location/_collections/loc-regions.util.spec.d.ts +2 -0
  617. package/build/_modules/location/_collections/loc-regions.util.spec.d.ts.map +1 -0
  618. package/build/_modules/location/_collections/loc-regions.util.spec.js +51 -0
  619. package/build/_modules/location/_collections/loc-regions.util.spec.js.map +1 -0
  620. package/build/_modules/location/_collections/loc.util.d.ts +24 -24
  621. package/build/_modules/location/_collections/loc.util.js +60 -60
  622. package/build/_modules/location/_collections/loc.util.spec.d.ts +2 -0
  623. package/build/_modules/location/_collections/loc.util.spec.d.ts.map +1 -0
  624. package/build/_modules/location/_collections/loc.util.spec.js +39 -0
  625. package/build/_modules/location/_collections/loc.util.spec.js.map +1 -0
  626. package/build/_modules/location/_enums/loc-region.enum.d.ts +10 -10
  627. package/build/_modules/location/_enums/loc-region.enum.js +14 -14
  628. package/build/_modules/location/_enums/loc-sub-region.enum.d.ts +22 -22
  629. package/build/_modules/location/_enums/loc-sub-region.enum.js +26 -26
  630. package/build/_modules/location/_enums/loc-subdivision-region-type.enum.d.ts +43 -43
  631. package/build/_modules/location/_enums/loc-subdivision-region-type.enum.js +48 -48
  632. package/build/_modules/location/_models/loc-coordinates.interface.d.ts +5 -5
  633. package/build/_modules/location/_models/loc-coordinates.interface.js +2 -2
  634. package/build/_modules/location/_models/loc-country-division.interface.d.ts +5 -5
  635. package/build/_modules/location/_models/loc-country-division.interface.js +2 -2
  636. package/build/_modules/location/_models/loc-country-iso.interface.d.ts +18 -18
  637. package/build/_modules/location/_models/loc-country-iso.interface.js +2 -2
  638. package/build/_modules/location/_models/loc-country-phone-code.interface.d.ts +5 -5
  639. package/build/_modules/location/_models/loc-country-phone-code.interface.js +2 -2
  640. package/build/_modules/location/_models/loc-division-collection.interface.d.ts +8 -8
  641. package/build/_modules/location/_models/loc-division-collection.interface.js +2 -2
  642. package/build/_modules/location/_models/loc-division-region-data.interface.d.ts +5 -5
  643. package/build/_modules/location/_models/loc-division-region-data.interface.js +2 -2
  644. package/build/_modules/location/_models/loc-geo-ip-location.interface.d.ts +25 -25
  645. package/build/_modules/location/_models/loc-geo-ip-location.interface.js +2 -2
  646. package/build/_modules/location/index.d.ts +14 -14
  647. package/build/_modules/location/index.js +20 -20
  648. package/build/_modules/messaging/_collections/msg-module-settings.const.d.ts +25 -25
  649. package/build/_modules/messaging/_collections/msg-module-settings.const.js +47 -47
  650. package/build/_modules/messaging/_enums/msg-attachment-type.enum.d.ts +20 -20
  651. package/build/_modules/messaging/_enums/msg-attachment-type.enum.js +24 -24
  652. package/build/_modules/messaging/_enums/msg-conversation-type.enum.d.ts +16 -16
  653. package/build/_modules/messaging/_enums/msg-conversation-type.enum.js +20 -20
  654. package/build/_modules/messaging/_enums/msg-delivery-status.enum.d.ts +14 -14
  655. package/build/_modules/messaging/_enums/msg-delivery-status.enum.js +18 -18
  656. package/build/_modules/messaging/_enums/msg-event-key.enum.d.ts +22 -22
  657. package/build/_modules/messaging/_enums/msg-event-key.enum.js +31 -31
  658. package/build/_modules/messaging/_enums/msg-participant-role.enum.d.ts +16 -16
  659. package/build/_modules/messaging/_enums/msg-participant-role.enum.js +20 -20
  660. package/build/_modules/messaging/_enums/msg-provider-type.enum.d.ts +7 -7
  661. package/build/_modules/messaging/_enums/msg-provider-type.enum.js +11 -11
  662. package/build/_modules/messaging/_enums/msg-status.enum.d.ts +20 -20
  663. package/build/_modules/messaging/_enums/msg-status.enum.js +24 -24
  664. package/build/_modules/messaging/_enums/msg-type.enum.d.ts +18 -18
  665. package/build/_modules/messaging/_enums/msg-type.enum.js +22 -22
  666. package/build/_modules/messaging/_models/msg-attachment.interface.d.ts +33 -33
  667. package/build/_modules/messaging/_models/msg-attachment.interface.js +2 -2
  668. package/build/_modules/messaging/_models/msg-conversation.data-model.d.ts +29 -29
  669. package/build/_modules/messaging/_models/msg-conversation.data-model.js +81 -81
  670. package/build/_modules/messaging/_models/msg-conversation.data-model.spec.d.ts +2 -0
  671. package/build/_modules/messaging/_models/msg-conversation.data-model.spec.d.ts.map +1 -0
  672. package/build/_modules/messaging/_models/msg-conversation.data-model.spec.js +62 -0
  673. package/build/_modules/messaging/_models/msg-conversation.data-model.spec.js.map +1 -0
  674. package/build/_modules/messaging/_models/msg-mention.interface.d.ts +22 -22
  675. package/build/_modules/messaging/_models/msg-mention.interface.js +2 -2
  676. package/build/_modules/messaging/_models/msg-message.data-model.d.ts +43 -43
  677. package/build/_modules/messaging/_models/msg-message.data-model.js +103 -103
  678. package/build/_modules/messaging/_models/msg-message.data-model.spec.d.ts +2 -0
  679. package/build/_modules/messaging/_models/msg-message.data-model.spec.d.ts.map +1 -0
  680. package/build/_modules/messaging/_models/msg-message.data-model.spec.js +74 -0
  681. package/build/_modules/messaging/_models/msg-message.data-model.spec.js.map +1 -0
  682. package/build/_modules/messaging/_models/msg-participant.interface.d.ts +34 -34
  683. package/build/_modules/messaging/_models/msg-participant.interface.js +2 -2
  684. package/build/_modules/messaging/_models/msg-reaction.interface.d.ts +16 -16
  685. package/build/_modules/messaging/_models/msg-reaction.interface.js +2 -2
  686. package/build/_modules/messaging/_models/msg-thread-info.interface.d.ts +26 -26
  687. package/build/_modules/messaging/_models/msg-thread-info.interface.js +2 -2
  688. package/build/_modules/messaging/_modules/agent/_enums/agt-process-step-type.enum.d.ts +26 -26
  689. package/build/_modules/messaging/_modules/agent/_enums/agt-process-step-type.enum.js +30 -30
  690. package/build/_modules/messaging/_modules/agent/_enums/agt-tool-status.enum.d.ts +18 -18
  691. package/build/_modules/messaging/_modules/agent/_enums/agt-tool-status.enum.js +22 -22
  692. package/build/_modules/messaging/_modules/agent/_models/agt-process-step.interface.d.ts +40 -40
  693. package/build/_modules/messaging/_modules/agent/_models/agt-process-step.interface.js +2 -2
  694. package/build/_modules/messaging/_modules/agent/_models/agt-reasoning-info.interface.d.ts +20 -20
  695. package/build/_modules/messaging/_modules/agent/_models/agt-reasoning-info.interface.js +2 -2
  696. package/build/_modules/messaging/_modules/agent/_models/agt-tool-usage.interface.d.ts +27 -27
  697. package/build/_modules/messaging/_modules/agent/_models/agt-tool-usage.interface.js +2 -2
  698. package/build/_modules/messaging/_modules/agent/index.d.ts +5 -5
  699. package/build/_modules/messaging/_modules/agent/index.js +10 -10
  700. package/build/_modules/messaging/index.d.ts +16 -16
  701. package/build/_modules/messaging/index.js +28 -28
  702. package/build/_modules/ngx-models/_collections/angular-placeholders.d.ts +33 -33
  703. package/build/_modules/ngx-models/_collections/angular-placeholders.js +2 -2
  704. package/build/_modules/ngx-models/_collections/button-new-style-settings-presets.const.d.ts +53 -53
  705. package/build/_modules/ngx-models/_collections/button-new-style-settings-presets.const.js +173 -173
  706. package/build/_modules/ngx-models/_collections/dynamo-global.settings.d.ts +12 -12
  707. package/build/_modules/ngx-models/_collections/dynamo-global.settings.js +91 -91
  708. package/build/_modules/ngx-models/_collections/dynamo-global.settings.spec.d.ts +2 -0
  709. package/build/_modules/ngx-models/_collections/dynamo-global.settings.spec.d.ts.map +1 -0
  710. package/build/_modules/ngx-models/_collections/dynamo-global.settings.spec.js +63 -0
  711. package/build/_modules/ngx-models/_collections/dynamo-global.settings.spec.js.map +1 -0
  712. package/build/_modules/ngx-models/_enums/button-new/button-new-border-radius.enum.d.ts +13 -13
  713. package/build/_modules/ngx-models/_enums/button-new/button-new-border-radius.enum.js +17 -17
  714. package/build/_modules/ngx-models/_enums/button-new/button-new-icon-style-type.enum.d.ts +11 -11
  715. package/build/_modules/ngx-models/_enums/button-new/button-new-icon-style-type.enum.js +15 -15
  716. package/build/_modules/ngx-models/_enums/button-new/button-new-size.enum.d.ts +14 -14
  717. package/build/_modules/ngx-models/_enums/button-new/button-new-size.enum.js +18 -18
  718. package/build/_modules/ngx-models/_enums/button-new/button-new-style-type.enum.d.ts +16 -16
  719. package/build/_modules/ngx-models/_enums/button-new/button-new-style-type.enum.js +20 -20
  720. package/build/_modules/ngx-models/_enums/button-type.enum.d.ts +33 -33
  721. package/build/_modules/ngx-models/_enums/button-type.enum.js +38 -38
  722. package/build/_modules/ngx-models/_enums/checkbox-label-position.enum.d.ts +7 -7
  723. package/build/_modules/ngx-models/_enums/checkbox-label-position.enum.js +11 -11
  724. package/build/_modules/ngx-models/_enums/container-type.enum.d.ts +10 -10
  725. package/build/_modules/ngx-models/_enums/container-type.enum.js +14 -14
  726. package/build/_modules/ngx-models/_enums/errors/error-level.enum.d.ts +13 -13
  727. package/build/_modules/ngx-models/_enums/errors/error-level.enum.js +17 -17
  728. package/build/_modules/ngx-models/_enums/errors/error-notification-color.enum.d.ts +13 -13
  729. package/build/_modules/ngx-models/_enums/errors/error-notification-color.enum.js +17 -17
  730. package/build/_modules/ngx-models/_enums/errors/error-ui-mode.enum.d.ts +13 -13
  731. package/build/_modules/ngx-models/_enums/errors/error-ui-mode.enum.js +17 -17
  732. package/build/_modules/ngx-models/_enums/field-appearance.enum.d.ts +7 -7
  733. package/build/_modules/ngx-models/_enums/field-appearance.enum.js +16 -16
  734. package/build/_modules/ngx-models/_enums/field-type.enum.d.ts +32 -32
  735. package/build/_modules/ngx-models/_enums/field-type.enum.js +49 -49
  736. package/build/_modules/ngx-models/_enums/file-type.enum.d.ts +11 -11
  737. package/build/_modules/ngx-models/_enums/file-type.enum.js +15 -15
  738. package/build/_modules/ngx-models/_enums/flex/flex-layout-align.enum.d.ts +17 -17
  739. package/build/_modules/ngx-models/_enums/flex/flex-layout-align.enum.js +24 -24
  740. package/build/_modules/ngx-models/_enums/flex/flex-layout.enum.d.ts +5 -5
  741. package/build/_modules/ngx-models/_enums/flex/flex-layout.enum.js +9 -9
  742. package/build/_modules/ngx-models/_enums/form-access.enum.d.ts +8 -8
  743. package/build/_modules/ngx-models/_enums/form-access.enum.js +12 -12
  744. package/build/_modules/ngx-models/_enums/form-reset-data.enum.d.ts +11 -11
  745. package/build/_modules/ngx-models/_enums/form-reset-data.enum.js +15 -15
  746. package/build/_modules/ngx-models/_enums/form-store-on.enum.d.ts +7 -7
  747. package/build/_modules/ngx-models/_enums/form-store-on.enum.js +11 -11
  748. package/build/_modules/ngx-models/_enums/forms-new/field-new-validator-type.enum.d.ts +20 -20
  749. package/build/_modules/ngx-models/_enums/forms-new/field-new-validator-type.enum.js +24 -24
  750. package/build/_modules/ngx-models/_enums/frames/header-item-type.enum.d.ts +15 -15
  751. package/build/_modules/ngx-models/_enums/frames/header-item-type.enum.js +19 -19
  752. package/build/_modules/ngx-models/_enums/frames/header-position.enum.d.ts +10 -10
  753. package/build/_modules/ngx-models/_enums/frames/header-position.enum.js +14 -14
  754. package/build/_modules/ngx-models/_enums/frames/side-nav-badge-color.enum.d.ts +13 -13
  755. package/build/_modules/ngx-models/_enums/frames/side-nav-badge-color.enum.js +17 -17
  756. package/build/_modules/ngx-models/_enums/html/input-types.enum.d.ts +25 -25
  757. package/build/_modules/ngx-models/_enums/html/input-types.enum.js +29 -29
  758. package/build/_modules/ngx-models/_enums/material-color.enum.d.ts +13 -13
  759. package/build/_modules/ngx-models/_enums/material-color.enum.js +17 -17
  760. package/build/_modules/ngx-models/_enums/material-tooltip-position.enum.d.ts +12 -12
  761. package/build/_modules/ngx-models/_enums/material-tooltip-position.enum.js +16 -16
  762. package/build/_modules/ngx-models/_enums/preconfigured-field-type.enum.d.ts +7 -7
  763. package/build/_modules/ngx-models/_enums/preconfigured-field-type.enum.js +11 -11
  764. package/build/_modules/ngx-models/_enums/storage-type.enum.d.ts +8 -8
  765. package/build/_modules/ngx-models/_enums/storage-type.enum.js +16 -16
  766. package/build/_modules/ngx-models/_enums/validator-type.enum.d.ts +6 -6
  767. package/build/_modules/ngx-models/_enums/validator-type.enum.js +10 -10
  768. package/build/_modules/ngx-models/_enums/voice/audio-mime-type.enum.d.ts +14 -14
  769. package/build/_modules/ngx-models/_enums/voice/audio-mime-type.enum.js +18 -18
  770. package/build/_modules/ngx-models/_enums/voice/voice-provider-type.enum.d.ts +23 -23
  771. package/build/_modules/ngx-models/_enums/voice/voice-provider-type.enum.js +30 -30
  772. package/build/_modules/ngx-models/_enums/voice/voice-recorder-state.enum.d.ts +20 -20
  773. package/build/_modules/ngx-models/_enums/voice/voice-recorder-state.enum.js +24 -24
  774. package/build/_modules/ngx-models/_models/control-models/button-new-style-settings.control-model.d.ts +23 -23
  775. package/build/_modules/ngx-models/_models/control-models/button-new-style-settings.control-model.js +34 -34
  776. package/build/_modules/ngx-models/_models/control-models/button-params.control-model.d.ts +46 -46
  777. package/build/_modules/ngx-models/_models/control-models/button-params.control-model.js +261 -261
  778. package/build/_modules/ngx-models/_models/control-models/button-params.control-model.spec.d.ts +2 -0
  779. package/build/_modules/ngx-models/_models/control-models/button-params.control-model.spec.d.ts.map +1 -0
  780. package/build/_modules/ngx-models/_models/control-models/button-params.control-model.spec.js +61 -0
  781. package/build/_modules/ngx-models/_models/control-models/button-params.control-model.spec.js.map +1 -0
  782. package/build/_modules/ngx-models/_models/control-models/chat/chat-column-layout-settings.control-model.d.ts +21 -21
  783. package/build/_modules/ngx-models/_models/control-models/chat/chat-column-layout-settings.control-model.js +27 -27
  784. package/build/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.d.ts +93 -93
  785. package/build/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.js +104 -104
  786. package/build/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.spec.d.ts +1 -0
  787. package/build/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.spec.d.ts.map +1 -0
  788. package/build/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.spec.js +92 -0
  789. package/build/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.spec.js.map +1 -0
  790. package/build/_modules/ngx-models/_models/control-models/data-handler.control-model.d.ts +146 -146
  791. package/build/_modules/ngx-models/_models/control-models/data-handler.control-model.js +380 -380
  792. package/build/_modules/ngx-models/_models/control-models/errors/error-notification.control-model.d.ts +31 -31
  793. package/build/_modules/ngx-models/_models/control-models/errors/error-notification.control-model.js +44 -44
  794. package/build/_modules/ngx-models/_models/control-models/errors/error-settings.control-model.d.ts +26 -26
  795. package/build/_modules/ngx-models/_models/control-models/errors/error-settings.control-model.js +32 -32
  796. package/build/_modules/ngx-models/_models/control-models/errors/errors-pojo.spec.d.ts +2 -0
  797. package/build/_modules/ngx-models/_models/control-models/errors/errors-pojo.spec.d.ts.map +1 -0
  798. package/build/_modules/ngx-models/_models/control-models/errors/errors-pojo.spec.js +80 -0
  799. package/build/_modules/ngx-models/_models/control-models/errors/errors-pojo.spec.js.map +1 -0
  800. package/build/_modules/ngx-models/_models/control-models/errors/errors-settings.control-model.d.ts +37 -37
  801. package/build/_modules/ngx-models/_models/control-models/errors/errors-settings.control-model.js +42 -42
  802. package/build/_modules/ngx-models/_models/control-models/field-settings.control-model.d.ts +101 -101
  803. package/build/_modules/ngx-models/_models/control-models/field-settings.control-model.js +109 -109
  804. package/build/_modules/ngx-models/_models/control-models/field-settings.control-model.spec.d.ts +2 -0
  805. package/build/_modules/ngx-models/_models/control-models/field-settings.control-model.spec.d.ts.map +1 -0
  806. package/build/_modules/ngx-models/_models/control-models/field-settings.control-model.spec.js +89 -0
  807. package/build/_modules/ngx-models/_models/control-models/field-settings.control-model.spec.js.map +1 -0
  808. package/build/_modules/ngx-models/_models/control-models/form-settings.control-model.d.ts +124 -124
  809. package/build/_modules/ngx-models/_models/control-models/form-settings.control-model.js +133 -133
  810. package/build/_modules/ngx-models/_models/control-models/form-settings.control-model.spec.d.ts +2 -0
  811. package/build/_modules/ngx-models/_models/control-models/form-settings.control-model.spec.d.ts.map +1 -0
  812. package/build/_modules/ngx-models/_models/control-models/form-settings.control-model.spec.js +91 -0
  813. package/build/_modules/ngx-models/_models/control-models/form-settings.control-model.spec.js.map +1 -0
  814. package/build/_modules/ngx-models/_models/control-models/forms-new/checkbox-field-new-settings.control-model.d.ts +17 -17
  815. package/build/_modules/ngx-models/_models/control-models/forms-new/checkbox-field-new-settings.control-model.js +25 -25
  816. package/build/_modules/ngx-models/_models/control-models/forms-new/date-field-new-settings.control-model.d.ts +19 -19
  817. package/build/_modules/ngx-models/_models/control-models/forms-new/date-field-new-settings.control-model.js +27 -27
  818. package/build/_modules/ngx-models/_models/control-models/forms-new/date-range-field-new-settings.control-model.d.ts +32 -32
  819. package/build/_modules/ngx-models/_models/control-models/forms-new/date-range-field-new-settings.control-model.js +31 -31
  820. package/build/_modules/ngx-models/_models/control-models/forms-new/datetime-field-new-settings.control-model.d.ts +26 -26
  821. package/build/_modules/ngx-models/_models/control-models/forms-new/datetime-field-new-settings.control-model.js +34 -34
  822. package/build/_modules/ngx-models/_models/control-models/forms-new/datetime-range-field-new-settings.control-model.d.ts +26 -26
  823. package/build/_modules/ngx-models/_models/control-models/forms-new/datetime-range-field-new-settings.control-model.js +33 -33
  824. package/build/_modules/ngx-models/_models/control-models/forms-new/field-new-settings.control-model.d.ts +60 -60
  825. package/build/_modules/ngx-models/_models/control-models/forms-new/field-new-settings.control-model.js +56 -56
  826. package/build/_modules/ngx-models/_models/control-models/forms-new/field-new-types.d.ts +27 -27
  827. package/build/_modules/ngx-models/_models/control-models/forms-new/field-new-types.js +2 -2
  828. package/build/_modules/ngx-models/_models/control-models/forms-new/form-new-settings.control-model.d.ts +28 -28
  829. package/build/_modules/ngx-models/_models/control-models/forms-new/form-new-settings.control-model.js +36 -36
  830. package/build/_modules/ngx-models/_models/control-models/forms-new/forms-new.spec.d.ts +2 -0
  831. package/build/_modules/ngx-models/_models/control-models/forms-new/forms-new.spec.d.ts.map +1 -0
  832. package/build/_modules/ngx-models/_models/control-models/forms-new/forms-new.spec.js +156 -0
  833. package/build/_modules/ngx-models/_models/control-models/forms-new/forms-new.spec.js.map +1 -0
  834. package/build/_modules/ngx-models/_models/control-models/forms-new/index.d.ts +17 -17
  835. package/build/_modules/ngx-models/_models/control-models/forms-new/index.js +22 -22
  836. package/build/_modules/ngx-models/_models/control-models/forms-new/multiselect-field-new-settings.control-model.d.ts +17 -17
  837. package/build/_modules/ngx-models/_models/control-models/forms-new/multiselect-field-new-settings.control-model.js +27 -27
  838. package/build/_modules/ngx-models/_models/control-models/forms-new/number-field-new-settings.control-model.d.ts +17 -17
  839. package/build/_modules/ngx-models/_models/control-models/forms-new/number-field-new-settings.control-model.js +25 -25
  840. package/build/_modules/ngx-models/_models/control-models/forms-new/password-field-new-settings.control-model.d.ts +28 -28
  841. package/build/_modules/ngx-models/_models/control-models/forms-new/password-field-new-settings.control-model.js +36 -36
  842. package/build/_modules/ngx-models/_models/control-models/forms-new/radio-select-field-new-settings.control-model.d.ts +24 -24
  843. package/build/_modules/ngx-models/_models/control-models/forms-new/radio-select-field-new-settings.control-model.js +34 -34
  844. package/build/_modules/ngx-models/_models/control-models/forms-new/select-field-new-settings.control-model.d.ts +34 -34
  845. package/build/_modules/ngx-models/_models/control-models/forms-new/select-field-new-settings.control-model.js +31 -31
  846. package/build/_modules/ngx-models/_models/control-models/forms-new/slider-field-new-settings.control-model.d.ts +27 -27
  847. package/build/_modules/ngx-models/_models/control-models/forms-new/slider-field-new-settings.control-model.js +35 -35
  848. package/build/_modules/ngx-models/_models/control-models/forms-new/slider-range-field-new-settings.control-model.d.ts +34 -34
  849. package/build/_modules/ngx-models/_models/control-models/forms-new/slider-range-field-new-settings.control-model.js +32 -32
  850. package/build/_modules/ngx-models/_models/control-models/forms-new/text-field-new-settings.control-model.d.ts +21 -21
  851. package/build/_modules/ngx-models/_models/control-models/forms-new/text-field-new-settings.control-model.js +31 -31
  852. package/build/_modules/ngx-models/_models/control-models/forms-new/textarea-field-new-settings.control-model.d.ts +15 -15
  853. package/build/_modules/ngx-models/_models/control-models/forms-new/textarea-field-new-settings.control-model.js +23 -23
  854. package/build/_modules/ngx-models/_models/control-models/frames/frames-pojo.spec.d.ts +2 -0
  855. package/build/_modules/ngx-models/_models/control-models/frames/frames-pojo.spec.d.ts.map +1 -0
  856. package/build/_modules/ngx-models/_models/control-models/frames/frames-pojo.spec.js +98 -0
  857. package/build/_modules/ngx-models/_models/control-models/frames/frames-pojo.spec.js.map +1 -0
  858. package/build/_modules/ngx-models/_models/control-models/frames/header-item-settings.control-model.d.ts +35 -35
  859. package/build/_modules/ngx-models/_models/control-models/frames/header-item-settings.control-model.js +45 -45
  860. package/build/_modules/ngx-models/_models/control-models/frames/main-frame-settings.control-model.d.ts +27 -27
  861. package/build/_modules/ngx-models/_models/control-models/frames/main-frame-settings.control-model.js +35 -35
  862. package/build/_modules/ngx-models/_models/control-models/frames/side-nav-item-settings.control-model.d.ts +37 -37
  863. package/build/_modules/ngx-models/_models/control-models/frames/side-nav-item-settings.control-model.js +48 -48
  864. package/build/_modules/ngx-models/_models/control-models/frames/side-nav-settings.control-model.d.ts +20 -20
  865. package/build/_modules/ngx-models/_models/control-models/frames/side-nav-settings.control-model.js +28 -28
  866. package/build/_modules/ngx-models/_models/control-models/select.control-model.d.ts +16 -16
  867. package/build/_modules/ngx-models/_models/control-models/select.control-model.js +28 -28
  868. package/build/_modules/ngx-models/_models/control-models/select.control-model.spec.d.ts +2 -0
  869. package/build/_modules/ngx-models/_models/control-models/select.control-model.spec.d.ts.map +1 -0
  870. package/build/_modules/ngx-models/_models/control-models/select.control-model.spec.js +43 -0
  871. package/build/_modules/ngx-models/_models/control-models/select.control-model.spec.js.map +1 -0
  872. package/build/_modules/ngx-models/_models/control-models/voice/voice-pojo.spec.d.ts +2 -0
  873. package/build/_modules/ngx-models/_models/control-models/voice/voice-pojo.spec.d.ts.map +1 -0
  874. package/build/_modules/ngx-models/_models/control-models/voice/voice-pojo.spec.js +103 -0
  875. package/build/_modules/ngx-models/_models/control-models/voice/voice-pojo.spec.js.map +1 -0
  876. package/build/_modules/ngx-models/_models/control-models/voice/voice-providers-settings.control-model.d.ts +57 -57
  877. package/build/_modules/ngx-models/_models/control-models/voice/voice-providers-settings.control-model.js +23 -23
  878. package/build/_modules/ngx-models/_models/control-models/voice/voice-record-button-settings.control-model.d.ts +31 -31
  879. package/build/_modules/ngx-models/_models/control-models/voice/voice-record-button-settings.control-model.js +37 -37
  880. package/build/_modules/ngx-models/_models/control-models/voice/voice-recorder-settings.control-model.d.ts +27 -27
  881. package/build/_modules/ngx-models/_models/control-models/voice/voice-recorder-settings.control-model.js +32 -32
  882. package/build/_modules/ngx-models/_models/interfaces/button-new-settings.interface.d.ts +61 -61
  883. package/build/_modules/ngx-models/_models/interfaces/button-new-settings.interface.js +2 -2
  884. package/build/_modules/ngx-models/_models/interfaces/confirm-settings.interface.d.ts +16 -16
  885. package/build/_modules/ngx-models/_models/interfaces/confirm-settings.interface.js +2 -2
  886. package/build/_modules/ngx-models/_models/interfaces/global-settings.interface.d.ts +53 -53
  887. package/build/_modules/ngx-models/_models/interfaces/global-settings.interface.js +2 -2
  888. package/build/_modules/ngx-models/_models/interfaces/select-options-custom-constructor.interface.d.ts +37 -37
  889. package/build/_modules/ngx-models/_models/interfaces/select-options-custom-constructor.interface.js +2 -2
  890. package/build/_modules/ngx-models/_models/interfaces/storage.service.d.ts +4 -4
  891. package/build/_modules/ngx-models/_models/interfaces/storage.service.js +44 -44
  892. package/build/_modules/ngx-models/_models/interfaces/storage.service.spec.d.ts +2 -0
  893. package/build/_modules/ngx-models/_models/interfaces/storage.service.spec.d.ts.map +1 -0
  894. package/build/_modules/ngx-models/_models/interfaces/storage.service.spec.js +16 -0
  895. package/build/_modules/ngx-models/_models/interfaces/storage.service.spec.js.map +1 -0
  896. package/build/_modules/ngx-models/_models/interfaces/voice/speak-options.interface.d.ts +19 -19
  897. package/build/_modules/ngx-models/_models/interfaces/voice/speak-options.interface.js +2 -2
  898. package/build/_modules/ngx-models/_models/interfaces/voice/speak-result.interface.d.ts +14 -14
  899. package/build/_modules/ngx-models/_models/interfaces/voice/speak-result.interface.js +2 -2
  900. package/build/_modules/ngx-models/_models/interfaces/voice/transcribe-options.interface.d.ts +14 -14
  901. package/build/_modules/ngx-models/_models/interfaces/voice/transcribe-options.interface.js +2 -2
  902. package/build/_modules/ngx-models/_models/interfaces/voice/transcribe-result.interface.d.ts +15 -15
  903. package/build/_modules/ngx-models/_models/interfaces/voice/transcribe-result.interface.js +2 -2
  904. package/build/_modules/ngx-models/_models/interfaces/voice/voice-profile.interface.d.ts +18 -18
  905. package/build/_modules/ngx-models/_models/interfaces/voice/voice-profile.interface.js +2 -2
  906. package/build/_modules/ngx-models/_models/interfaces/voice/voice-provider-init.interface.d.ts +21 -21
  907. package/build/_modules/ngx-models/_models/interfaces/voice/voice-provider-init.interface.js +2 -2
  908. package/build/_modules/ngx-models/_utils/shared.service.d.ts +131 -131
  909. package/build/_modules/ngx-models/_utils/shared.service.js +414 -414
  910. package/build/_modules/ngx-models/_utils/shared.service.spec.d.ts +1 -0
  911. package/build/_modules/ngx-models/_utils/shared.service.spec.d.ts.map +1 -0
  912. package/build/_modules/ngx-models/_utils/shared.service.spec.js +6 -0
  913. package/build/_modules/ngx-models/_utils/shared.service.spec.js.map +1 -0
  914. package/build/_modules/ngx-models/index.d.ts +64 -64
  915. package/build/_modules/ngx-models/index.js +89 -89
  916. package/build/_modules/pipe/_collections/pip-transforms.const.d.ts +7 -7
  917. package/build/_modules/pipe/_collections/pip-transforms.const.js +35 -35
  918. package/build/_modules/pipe/_collections/utils/pip-country-pipe.util.d.ts +25 -25
  919. package/build/_modules/pipe/_collections/utils/pip-country-pipe.util.js +32 -32
  920. package/build/_modules/pipe/_collections/utils/pip-country-pipe.util.spec.d.ts +2 -0
  921. package/build/_modules/pipe/_collections/utils/pip-country-pipe.util.spec.d.ts.map +1 -0
  922. package/build/_modules/pipe/_collections/utils/pip-country-pipe.util.spec.js +33 -0
  923. package/build/_modules/pipe/_collections/utils/pip-country-pipe.util.spec.js.map +1 -0
  924. package/build/_modules/pipe/_collections/utils/pip-custom-pipe.util.d.ts +20 -20
  925. package/build/_modules/pipe/_collections/utils/pip-custom-pipe.util.js +25 -25
  926. package/build/_modules/pipe/_collections/utils/pip-custom-pipe.util.spec.d.ts +2 -0
  927. package/build/_modules/pipe/_collections/utils/pip-custom-pipe.util.spec.d.ts.map +1 -0
  928. package/build/_modules/pipe/_collections/utils/pip-custom-pipe.util.spec.js +36 -0
  929. package/build/_modules/pipe/_collections/utils/pip-custom-pipe.util.spec.js.map +1 -0
  930. package/build/_modules/pipe/_collections/utils/pip-division-pipe.util.d.ts +17 -17
  931. package/build/_modules/pipe/_collections/utils/pip-division-pipe.util.js +24 -24
  932. package/build/_modules/pipe/_collections/utils/pip-division-pipe.util.spec.d.ts +2 -0
  933. package/build/_modules/pipe/_collections/utils/pip-division-pipe.util.spec.d.ts.map +1 -0
  934. package/build/_modules/pipe/_collections/utils/pip-division-pipe.util.spec.js +35 -0
  935. package/build/_modules/pipe/_collections/utils/pip-division-pipe.util.spec.js.map +1 -0
  936. package/build/_modules/pipe/_collections/utils/pip-json-pipe.util.d.ts +16 -16
  937. package/build/_modules/pipe/_collections/utils/pip-json-pipe.util.js +21 -21
  938. package/build/_modules/pipe/_collections/utils/pip-json-pipe.util.spec.d.ts +2 -0
  939. package/build/_modules/pipe/_collections/utils/pip-json-pipe.util.spec.d.ts.map +1 -0
  940. package/build/_modules/pipe/_collections/utils/pip-json-pipe.util.spec.js +46 -0
  941. package/build/_modules/pipe/_collections/utils/pip-json-pipe.util.spec.js.map +1 -0
  942. package/build/_modules/pipe/_collections/utils/pip-list-pipe.util.d.ts +17 -17
  943. package/build/_modules/pipe/_collections/utils/pip-list-pipe.util.js +22 -22
  944. package/build/_modules/pipe/_collections/utils/pip-list-pipe.util.spec.d.ts +2 -0
  945. package/build/_modules/pipe/_collections/utils/pip-list-pipe.util.spec.d.ts.map +1 -0
  946. package/build/_modules/pipe/_collections/utils/pip-list-pipe.util.spec.js +31 -0
  947. package/build/_modules/pipe/_collections/utils/pip-list-pipe.util.spec.js.map +1 -0
  948. package/build/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.d.ts +61 -61
  949. package/build/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.js +168 -168
  950. package/build/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.spec.d.ts +2 -0
  951. package/build/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.spec.d.ts.map +1 -0
  952. package/build/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.spec.js +61 -0
  953. package/build/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.spec.js.map +1 -0
  954. package/build/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.d.ts +14 -14
  955. package/build/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.js +19 -19
  956. package/build/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.spec.d.ts +2 -0
  957. package/build/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.spec.d.ts.map +1 -0
  958. package/build/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.spec.js +26 -0
  959. package/build/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.spec.js.map +1 -0
  960. package/build/_modules/pipe/_collections/utils/pip-range-pipe.util.d.ts +16 -16
  961. package/build/_modules/pipe/_collections/utils/pip-range-pipe.util.js +67 -67
  962. package/build/_modules/pipe/_collections/utils/pip-range-pipe.util.spec.d.ts +2 -0
  963. package/build/_modules/pipe/_collections/utils/pip-range-pipe.util.spec.d.ts.map +1 -0
  964. package/build/_modules/pipe/_collections/utils/pip-range-pipe.util.spec.js +50 -0
  965. package/build/_modules/pipe/_collections/utils/pip-range-pipe.util.spec.js.map +1 -0
  966. package/build/_modules/pipe/_collections/utils/pip-region-pipe.util.d.ts +18 -18
  967. package/build/_modules/pipe/_collections/utils/pip-region-pipe.util.js +25 -25
  968. package/build/_modules/pipe/_collections/utils/pip-region-pipe.util.spec.d.ts +2 -0
  969. package/build/_modules/pipe/_collections/utils/pip-region-pipe.util.spec.d.ts.map +1 -0
  970. package/build/_modules/pipe/_collections/utils/pip-region-pipe.util.spec.js +23 -0
  971. package/build/_modules/pipe/_collections/utils/pip-region-pipe.util.spec.js.map +1 -0
  972. package/build/_modules/pipe/_collections/utils/pip-replace-pipe.util.d.ts +13 -13
  973. package/build/_modules/pipe/_collections/utils/pip-replace-pipe.util.js +18 -18
  974. package/build/_modules/pipe/_collections/utils/pip-replace-pipe.util.spec.d.ts +2 -0
  975. package/build/_modules/pipe/_collections/utils/pip-replace-pipe.util.spec.d.ts.map +1 -0
  976. package/build/_modules/pipe/_collections/utils/pip-replace-pipe.util.spec.js +38 -0
  977. package/build/_modules/pipe/_collections/utils/pip-replace-pipe.util.spec.js.map +1 -0
  978. package/build/_modules/pipe/_collections/utils/pip-slider-pipe.util.d.ts +16 -16
  979. package/build/_modules/pipe/_collections/utils/pip-slider-pipe.util.js +29 -29
  980. package/build/_modules/pipe/_collections/utils/pip-slider-pipe.util.spec.d.ts +2 -0
  981. package/build/_modules/pipe/_collections/utils/pip-slider-pipe.util.spec.d.ts.map +1 -0
  982. package/build/_modules/pipe/_collections/utils/pip-slider-pipe.util.spec.js +20 -0
  983. package/build/_modules/pipe/_collections/utils/pip-slider-pipe.util.spec.js.map +1 -0
  984. package/build/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.d.ts +13 -13
  985. package/build/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.js +43 -43
  986. package/build/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.spec.d.ts +2 -0
  987. package/build/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.spec.d.ts.map +1 -0
  988. package/build/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.spec.js +50 -0
  989. package/build/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.spec.js.map +1 -0
  990. package/build/_modules/pipe/_enums/pip-range-pipe-setting.enum.d.ts +13 -13
  991. package/build/_modules/pipe/_enums/pip-range-pipe-setting.enum.js +17 -17
  992. package/build/_modules/pipe/_enums/pip.enum.d.ts +39 -39
  993. package/build/_modules/pipe/_enums/pip.enum.js +51 -51
  994. package/build/_modules/pipe/_models/pip-multi-pipe-settings.type.d.ts +4 -4
  995. package/build/_modules/pipe/_models/pip-multi-pipe-settings.type.js +2 -2
  996. package/build/_modules/pipe/_models/pip-transforms.interface.d.ts +18 -18
  997. package/build/_modules/pipe/_models/pip-transforms.interface.js +3 -3
  998. package/build/_modules/pipe/index.d.ts +18 -18
  999. package/build/_modules/pipe/index.js +25 -25
  1000. package/build/_modules/security/_collections/stored-secret.util.d.ts +39 -39
  1001. package/build/_modules/security/_collections/stored-secret.util.js +72 -72
  1002. package/build/_modules/security/_collections/stored-secret.util.spec.d.ts +2 -0
  1003. package/build/_modules/security/_collections/stored-secret.util.spec.d.ts.map +1 -0
  1004. package/build/_modules/security/_collections/stored-secret.util.spec.js +69 -0
  1005. package/build/_modules/security/_collections/stored-secret.util.spec.js.map +1 -0
  1006. package/build/_modules/security/_models/stored-secret.control-model.d.ts +45 -45
  1007. package/build/_modules/security/_models/stored-secret.control-model.js +53 -53
  1008. package/build/_modules/security/index.d.ts +3 -3
  1009. package/build/_modules/security/index.js +10 -10
  1010. package/build/_modules/socket/_enums/sck-event-key.enum.d.ts +17 -17
  1011. package/build/_modules/socket/_enums/sck-event-key.enum.js +21 -21
  1012. package/build/_modules/socket/_models/sck-client-params.control-model.d.ts +23 -23
  1013. package/build/_modules/socket/_models/sck-client-params.control-model.js +37 -37
  1014. package/build/_modules/socket/_models/sck-client-params.control-model.spec.d.ts +2 -0
  1015. package/build/_modules/socket/_models/sck-client-params.control-model.spec.d.ts.map +1 -0
  1016. package/build/_modules/socket/_models/sck-client-params.control-model.spec.js +54 -0
  1017. package/build/_modules/socket/_models/sck-client-params.control-model.spec.js.map +1 -0
  1018. package/build/_modules/socket/_models/sck-socket-event.control-model.d.ts +4 -6
  1019. package/build/_modules/socket/_models/sck-socket-event.control-model.d.ts.map +1 -1
  1020. package/build/_modules/socket/_models/sck-socket-event.control-model.js +9 -7
  1021. package/build/_modules/socket/_models/sck-socket-event.control-model.js.map +1 -1
  1022. package/build/_modules/socket/_models/sck-socket-event.control-model.spec.d.ts +2 -0
  1023. package/build/_modules/socket/_models/sck-socket-event.control-model.spec.d.ts.map +1 -0
  1024. package/build/_modules/socket/_models/sck-socket-event.control-model.spec.js +61 -0
  1025. package/build/_modules/socket/_models/sck-socket-event.control-model.spec.js.map +1 -0
  1026. package/build/_modules/socket/_services/sck-client.service-base.d.ts +57 -57
  1027. package/build/_modules/socket/_services/sck-client.service-base.js +272 -272
  1028. package/build/_modules/socket/_services/sck-client.service-base.spec.d.ts +2 -0
  1029. package/build/_modules/socket/_services/sck-client.service-base.spec.d.ts.map +1 -0
  1030. package/build/_modules/socket/_services/sck-client.service-base.spec.js +82 -0
  1031. package/build/_modules/socket/_services/sck-client.service-base.spec.js.map +1 -0
  1032. package/build/_modules/socket/index.d.ts +4 -4
  1033. package/build/_modules/socket/index.js +10 -10
  1034. package/build/_modules/state-machine/_models/state-machine-config.interface.d.ts +18 -18
  1035. package/build/_modules/state-machine/_models/state-machine-config.interface.js +2 -2
  1036. package/build/_modules/state-machine/_models/state-machine-event.interface.d.ts +25 -25
  1037. package/build/_modules/state-machine/_models/state-machine-event.interface.js +2 -2
  1038. package/build/_modules/state-machine/_models/state-machine.control-model.d.ts +112 -112
  1039. package/build/_modules/state-machine/_models/state-machine.control-model.js +263 -263
  1040. package/build/_modules/state-machine/_models/state-machine.control-model.spec.d.ts +2 -0
  1041. package/build/_modules/state-machine/_models/state-machine.control-model.spec.d.ts.map +1 -0
  1042. package/build/_modules/state-machine/_models/state-machine.control-model.spec.js +282 -0
  1043. package/build/_modules/state-machine/_models/state-machine.control-model.spec.js.map +1 -0
  1044. package/build/_modules/state-machine/_models/state-transition-result.interface.d.ts +39 -39
  1045. package/build/_modules/state-machine/_models/state-transition-result.interface.js +2 -2
  1046. package/build/_modules/state-machine/_models/state-transition.interface.d.ts +30 -30
  1047. package/build/_modules/state-machine/_models/state-transition.interface.js +2 -2
  1048. package/build/_modules/state-machine/index.d.ts +5 -5
  1049. package/build/_modules/state-machine/index.js +9 -9
  1050. package/build/_modules/test/_collections/tst-module-settings.const.d.ts +46 -46
  1051. package/build/_modules/test/_collections/tst-module-settings.const.js +41 -41
  1052. package/build/_modules/test/index.d.ts +1 -1
  1053. package/build/_modules/test/index.js +5 -5
  1054. package/build/_modules/usage/_collections/usg-module-settings.const.d.ts +19 -19
  1055. package/build/_modules/usage/_collections/usg-module-settings.const.js +19 -19
  1056. package/build/_modules/usage/_models/usg-action.control-model.d.ts +18 -18
  1057. package/build/_modules/usage/_models/usg-action.control-model.js +26 -26
  1058. package/build/_modules/usage/_models/usg-action.control-model.spec.d.ts +2 -0
  1059. package/build/_modules/usage/_models/usg-action.control-model.spec.d.ts.map +1 -0
  1060. package/build/_modules/usage/_models/usg-action.control-model.spec.js +24 -0
  1061. package/build/_modules/usage/_models/usg-action.control-model.spec.js.map +1 -0
  1062. package/build/_modules/usage/_models/usg-daily-usage-data.control-model.d.ts +24 -24
  1063. package/build/_modules/usage/_models/usg-daily-usage-data.control-model.js +31 -31
  1064. package/build/_modules/usage/_models/usg-daily-usage-data.control-model.spec.d.ts +2 -0
  1065. package/build/_modules/usage/_models/usg-daily-usage-data.control-model.spec.d.ts.map +1 -0
  1066. package/build/_modules/usage/_models/usg-daily-usage-data.control-model.spec.js +33 -0
  1067. package/build/_modules/usage/_models/usg-daily-usage-data.control-model.spec.js.map +1 -0
  1068. package/build/_modules/usage/_models/usg-data.control-model.d.ts +25 -25
  1069. package/build/_modules/usage/_models/usg-data.control-model.js +31 -31
  1070. package/build/_modules/usage/_models/usg-data.control-model.spec.d.ts +2 -0
  1071. package/build/_modules/usage/_models/usg-data.control-model.spec.d.ts.map +1 -0
  1072. package/build/_modules/usage/_models/usg-data.control-model.spec.js +37 -0
  1073. package/build/_modules/usage/_models/usg-data.control-model.spec.js.map +1 -0
  1074. package/build/_modules/usage/_models/usg-session.data-model.d.ts +34 -34
  1075. package/build/_modules/usage/_models/usg-session.data-model.js +61 -61
  1076. package/build/_modules/usage/_models/usg-session.data-model.spec.d.ts +2 -0
  1077. package/build/_modules/usage/_models/usg-session.data-model.spec.d.ts.map +1 -0
  1078. package/build/_modules/usage/_models/usg-session.data-model.spec.js +82 -0
  1079. package/build/_modules/usage/_models/usg-session.data-model.spec.js.map +1 -0
  1080. package/build/_modules/usage/index.d.ts +5 -5
  1081. package/build/_modules/usage/index.js +10 -10
  1082. package/build/index.d.ts +70 -70
  1083. package/build/index.js +88 -88
  1084. package/eslint.config.js +4 -4
  1085. package/nodemon.json +22 -22
  1086. package/package.json +306 -306
  1087. package/pnpm-workspace.yaml +2 -2
  1088. package/scripts/_capture-out/ai-error-capture.json +398 -398
  1089. package/scripts/ai-error-capture.js +171 -171
  1090. package/scripts/ai-model-registry-check.js +132 -132
  1091. package/scripts/crypto/CRYPTO-STABILITY-SOLUTION.md +196 -196
  1092. package/scripts/crypto/README.md +113 -113
  1093. package/scripts/crypto/demo-crypto-stability.js +120 -120
  1094. package/scripts/crypto/stress-test-crypto.js +379 -379
  1095. package/scripts/run-coverage-tests.js +24 -24
  1096. package/scripts/verify-build-completeness.js +62 -62
  1097. package/spec/support/helpers/ts-node-helper.js +9 -9
  1098. package/spec/support/jasmine.coverage.json +23 -23
  1099. package/spec/support/jasmine.json +24 -24
  1100. package/src/_collections/constants/data-sizes.const.ts +40 -40
  1101. package/src/_collections/constants/error-defaults.const.ts +20 -20
  1102. package/src/_collections/constants/global-settings.const.spec.ts +32 -0
  1103. package/src/_collections/constants/global-settings.const.ts +29 -24
  1104. package/src/_collections/constants/numbers.const.ts +40 -40
  1105. package/src/_collections/constants/times.const.ts +45 -45
  1106. package/src/_collections/utils/array.util.spec.ts +306 -306
  1107. package/src/_collections/utils/array.util.ts +813 -813
  1108. package/src/_collections/utils/async.util.spec.ts +398 -398
  1109. package/src/_collections/utils/async.util.ts +208 -208
  1110. package/src/_collections/utils/data.util.spec.ts +345 -345
  1111. package/src/_collections/utils/data.util.ts +226 -226
  1112. package/src/_collections/utils/extract-error-message.util.spec.ts +204 -204
  1113. package/src/_collections/utils/extract-error-message.util.ts +223 -223
  1114. package/src/_collections/utils/json-error-helper.util.spec.ts +521 -521
  1115. package/src/_collections/utils/json-error-helper.util.ts +301 -301
  1116. package/src/_collections/utils/log.util.spec.ts +975 -975
  1117. package/src/_collections/utils/log.util.ts +667 -667
  1118. package/src/_collections/utils/math/box-bounds.spec.ts +73 -73
  1119. package/src/_collections/utils/math/box-bounds.util.ts +183 -183
  1120. package/src/_collections/utils/math/math.util.spec.ts +94 -94
  1121. package/src/_collections/utils/math/math.util.ts +141 -141
  1122. package/src/_collections/utils/math/random.util.spec.ts +82 -82
  1123. package/src/_collections/utils/math/random.util.ts +139 -139
  1124. package/src/_collections/utils/math/trigonometry.util.spec.ts +57 -57
  1125. package/src/_collections/utils/math/trigonometry.util.ts +102 -102
  1126. package/src/_collections/utils/math/vector2.util.spec.ts +94 -94
  1127. package/src/_collections/utils/math/vector2.util.ts +653 -653
  1128. package/src/_collections/utils/object.util.spec.ts +646 -646
  1129. package/src/_collections/utils/object.util.ts +739 -739
  1130. package/src/_collections/utils/regex/password-regex.util.spec.ts +51 -51
  1131. package/src/_collections/utils/regex/password-regex.util.ts +65 -65
  1132. package/src/_collections/utils/regex/regex.util.spec.ts +42 -42
  1133. package/src/_collections/utils/regex/regex.util.ts +6 -6
  1134. package/src/_collections/utils/regex/username-regex.util.spec.ts +61 -61
  1135. package/src/_collections/utils/regex/username-regex.util.ts +35 -35
  1136. package/src/_collections/utils/require-env.util.spec.ts +231 -231
  1137. package/src/_collections/utils/require-env.util.ts +138 -138
  1138. package/src/_collections/utils/round-list.util.spec.ts +79 -79
  1139. package/src/_collections/utils/round-list.util.ts +162 -162
  1140. package/src/_collections/utils/secret-mask.util.spec.ts +66 -66
  1141. package/src/_collections/utils/secret-mask.util.ts +262 -262
  1142. package/src/_collections/utils/stack.util.spec.ts +372 -372
  1143. package/src/_collections/utils/stack.util.ts +164 -164
  1144. package/src/_collections/utils/string-case.util.spec.ts +441 -441
  1145. package/src/_collections/utils/string-case.util.ts +362 -362
  1146. package/src/_collections/utils/string.util.spec.ts +975 -975
  1147. package/src/_collections/utils/string.util.ts +449 -449
  1148. package/src/_collections/utils/time.util.spec.ts +50 -50
  1149. package/src/_collections/utils/time.util.ts +481 -481
  1150. package/src/_collections/utils/type-cloning-facility.util.spec.ts +51 -51
  1151. package/src/_collections/utils/type-cloning-facility.util.ts +168 -168
  1152. package/src/_collections/utils/utilities.util.spec.ts +201 -201
  1153. package/src/_collections/utils/utilities.util.ts +68 -68
  1154. package/src/_collections/utils/uuid.util.spec.ts +30 -30
  1155. package/src/_collections/utils/uuid.util.ts +50 -50
  1156. package/src/_enums/basic-property-type.enum.ts +20 -20
  1157. package/src/_enums/data-model-type.enum.ts +29 -29
  1158. package/src/_enums/environment-flag.enum.ts +28 -28
  1159. package/src/_enums/error-level.enum.ts +43 -43
  1160. package/src/_enums/error-status.enum.ts +30 -30
  1161. package/src/_enums/http/http-call-type.enum.ts +43 -43
  1162. package/src/_enums/http/http-event-type.enum.ts +40 -40
  1163. package/src/_enums/http/http-response-type.enum.ts +18 -18
  1164. package/src/_enums/log-style.enum.ts +44 -44
  1165. package/src/_enums/server-connection-status.enum.ts +6 -6
  1166. package/src/_enums/time/day-of-week.enum.ts +55 -55
  1167. package/src/_enums/time/month.enum.ts +25 -25
  1168. package/src/_enums/time/relative-date.enum.ts +24 -24
  1169. package/src/_models/control-models/data-model-params.control-model.spec.ts +156 -156
  1170. package/src/_models/control-models/data-model-params.control-model.ts +362 -362
  1171. package/src/_models/control-models/data-property-params.control-model.spec.ts +93 -93
  1172. package/src/_models/control-models/data-property-params.control-model.ts +210 -210
  1173. package/src/_models/control-models/error.control-model.spec.ts +975 -975
  1174. package/src/_models/control-models/error.control-model.ts +1280 -1280
  1175. package/src/_models/control-models/http/http-error-response.control-model.spec.ts +116 -116
  1176. package/src/_models/control-models/http/http-error-response.control-model.ts +52 -52
  1177. package/src/_models/control-models/http/http-headers.control-model.spec.ts +25 -25
  1178. package/src/_models/control-models/http/http-headers.control-model.ts +124 -124
  1179. package/src/_models/control-models/http/http-response.model-base.spec.ts +46 -46
  1180. package/src/_models/control-models/http/http-response.model-base.ts +57 -57
  1181. package/src/_models/control-models/poll.control-model.spec.ts +63 -63
  1182. package/src/_models/control-models/poll.control-model.ts +151 -151
  1183. package/src/_models/control-models/range-value.control-model.spec.ts +187 -187
  1184. package/src/_models/control-models/range-value.control-model.ts +289 -289
  1185. package/src/_models/control-models/server-status.control-model.spec.ts +66 -66
  1186. package/src/_models/control-models/server-status.control-model.ts +94 -94
  1187. package/src/_models/control-models/service-endpoint-settings-base.control-model.spec.ts +145 -145
  1188. package/src/_models/control-models/service-endpoint-settings-base.control-model.ts +186 -186
  1189. package/src/_models/data-models/errors.data-model.spec.ts +71 -71
  1190. package/src/_models/data-models/errors.data-model.ts +200 -200
  1191. package/src/_models/data-models/metadata.data-model.spec.ts +184 -184
  1192. package/src/_models/data-models/metadata.data-model.ts +153 -153
  1193. package/src/_models/interfaces/box-bounds.interface.ts +7 -7
  1194. package/src/_models/interfaces/environment/global-log-settings.interface.ts +86 -86
  1195. package/src/_models/interfaces/environment/global-settings.interface.ts +69 -47
  1196. package/src/_models/interfaces/error-defaults.interface.ts +18 -18
  1197. package/src/_models/interfaces/paged.interface.ts +12 -12
  1198. package/src/_models/interfaces/random-weight.interface.ts +7 -7
  1199. package/src/_models/interfaces/route-settings.interface.ts +15 -15
  1200. package/src/_models/interfaces/search-query.interface.ts +23 -23
  1201. package/src/_models/interfaces/search-result.interface.ts +5 -5
  1202. package/src/_models/interfaces/server-error-statistics.interface.ts +24 -24
  1203. package/src/_models/interfaces/vector2.interface.ts +20 -20
  1204. package/src/_models/types/db-filter.type.ts +110 -110
  1205. package/src/_models/types/db-sort.type.ts +4 -4
  1206. package/src/_models/types/ds-filter.type.ts +68 -68
  1207. package/src/_models/types/ds-sort.type.ts +21 -21
  1208. package/src/_modules/ai/_collections/ai-model-ref.util.ts +88 -88
  1209. package/src/_modules/ai/_collections/ai-model-registry.util.spec.ts +37 -37
  1210. package/src/_modules/ai/_collections/ai-model-registry.util.ts +30 -30
  1211. package/src/_modules/ai/_enums/ai-message-role.enum.ts +7 -7
  1212. package/src/_modules/ai/_enums/ai-model-type.enum.ts +7 -7
  1213. package/src/_modules/ai/_enums/ai-provider.enum.ts +7 -7
  1214. package/src/_modules/ai/_models/ai-call-settings.interface.ts +84 -84
  1215. package/src/_modules/ai/_models/ai-config.interface.ts +14 -14
  1216. package/src/_modules/ai/_models/ai-embedding-request.interface.ts +20 -20
  1217. package/src/_modules/ai/_models/ai-embedding-response.interface.ts +26 -26
  1218. package/src/_modules/ai/_models/ai-llm-request.interface.ts +24 -24
  1219. package/src/_modules/ai/_models/ai-llm-response.interface.ts +30 -30
  1220. package/src/_modules/ai/_models/ai-message.interface.ts +12 -12
  1221. package/src/_modules/ai/_models/ai-model-capabilities.interface.ts +35 -35
  1222. package/src/_modules/ai/_models/ai-model-info.interface.ts +63 -63
  1223. package/src/_modules/ai/_models/ai-model-settings-schema.interface.ts +52 -52
  1224. package/src/_modules/ai/_models/ai-provider-capabilities.interface.ts +28 -28
  1225. package/src/_modules/ai/_models/ai-settings.interface.ts +17 -17
  1226. package/src/_modules/ai/_models/ai-tool-call.interface.ts +18 -18
  1227. package/src/_modules/ai/_models/ai-tool-handler.type.ts +11 -11
  1228. package/src/_modules/ai/_models/ai-tool-result.interface.ts +16 -16
  1229. package/src/_modules/ai/_models/ai-tool.interface.ts +16 -16
  1230. package/src/_modules/ai/_models/ai-user-provider-config.control-model.ts +29 -29
  1231. package/src/_modules/ai/_modules/anthropic/_collections/aai-models.const.ts +135 -135
  1232. package/src/_modules/ai/_modules/anthropic/_enums/aai-model.enum.ts +19 -19
  1233. package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.spec.ts +28 -28
  1234. package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.ts +23 -23
  1235. package/src/_modules/ai/_modules/anthropic/_models/aai-client-options.interface.ts +10 -10
  1236. package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.spec.ts +22 -22
  1237. package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.ts +27 -27
  1238. package/src/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.ts +20 -20
  1239. package/src/_modules/ai/_modules/anthropic/index.ts +14 -14
  1240. package/src/_modules/ai/_modules/document-ai/_models/dai-embedding-info.interface.ts +12 -12
  1241. package/src/_modules/ai/_modules/document-ai/_models/dai-vector-search-params.interface.ts +22 -22
  1242. package/src/_modules/ai/_modules/document-ai/index.ts +4 -4
  1243. package/src/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.ts +40 -40
  1244. package/src/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.ts +6 -6
  1245. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.ts +19 -19
  1246. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.ts +11 -11
  1247. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.ts +24 -24
  1248. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.ts +20 -20
  1249. package/src/_modules/ai/_modules/fdp-ai/index.ts +11 -11
  1250. package/src/_modules/ai/_modules/google-ai/_collections/gai-models.const.ts +161 -161
  1251. package/src/_modules/ai/_modules/google-ai/_enums/gai-model.enum.ts +16 -16
  1252. package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.spec.ts +28 -28
  1253. package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.ts +21 -21
  1254. package/src/_modules/ai/_modules/google-ai/_models/gai-client-options.interface.ts +8 -8
  1255. package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.spec.ts +22 -22
  1256. package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.ts +25 -25
  1257. package/src/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.ts +20 -20
  1258. package/src/_modules/ai/_modules/google-ai/index.ts +14 -14
  1259. package/src/_modules/ai/_modules/local-ai/_collections/lai-models.const.ts +59 -59
  1260. package/src/_modules/ai/_modules/local-ai/_enums/lai-model.enum.ts +6 -6
  1261. package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.spec.ts +28 -28
  1262. package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.ts +18 -18
  1263. package/src/_modules/ai/_modules/local-ai/_models/lai-client-options.interface.ts +9 -9
  1264. package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.spec.ts +22 -22
  1265. package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.ts +23 -23
  1266. package/src/_modules/ai/_modules/local-ai/index.ts +14 -14
  1267. package/src/_modules/ai/_modules/open-ai/_collections/oai-embedding-model-dimensions.const.ts +7 -7
  1268. package/src/_modules/ai/_modules/open-ai/_collections/oai-models.const.ts +404 -404
  1269. package/src/_modules/ai/_modules/open-ai/_enums/oai-model.enum.ts +179 -179
  1270. package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.spec.ts +28 -28
  1271. package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.ts +21 -21
  1272. package/src/_modules/ai/_modules/open-ai/_models/oai-client-options.interface.ts +81 -81
  1273. package/src/_modules/ai/_modules/open-ai/_models/oai-embedding-info.interface.ts +13 -13
  1274. package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.spec.ts +22 -22
  1275. package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.ts +25 -25
  1276. package/src/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.ts +21 -21
  1277. package/src/_modules/ai/_modules/open-ai/index.ts +28 -28
  1278. package/src/_modules/ai/index.ts +27 -27
  1279. package/src/_modules/ci-tools/_enums/cit-ci-result-code.enum.ts +11 -11
  1280. package/src/_modules/ci-tools/_enums/cit-ci-step-result-code.enum.ts +9 -9
  1281. package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.spec.ts +58 -58
  1282. package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.ts +77 -77
  1283. package/src/_modules/ci-tools/_models/cit-ci-step-result.interface.ts +12 -12
  1284. package/src/_modules/ci-tools/index.ts +8 -8
  1285. package/src/_modules/crypto/_collections/crypto-v1.util.ts +225 -225
  1286. package/src/_modules/crypto/_collections/crypto-v2.util.ts +331 -331
  1287. package/src/_modules/crypto/_collections/crypto-v4.util.ts +702 -702
  1288. package/src/_modules/crypto/_collections/crypto.util.db-envelope.spec.ts +51 -51
  1289. package/src/_modules/crypto/_collections/crypto.util.edge.spec.ts +605 -605
  1290. package/src/_modules/crypto/_collections/crypto.util.extra.spec.ts +642 -642
  1291. package/src/_modules/crypto/_collections/crypto.util.simple.spec.ts +512 -512
  1292. package/src/_modules/crypto/_collections/crypto.util.ts +748 -748
  1293. package/src/_modules/crypto/index.ts +13 -13
  1294. package/src/_modules/custom-data/_collections/cud-module-settings.const.ts +21 -21
  1295. package/src/_modules/custom-data/_models/cud.data-model.spec.ts +38 -38
  1296. package/src/_modules/custom-data/_models/cud.data-model.ts +39 -39
  1297. package/src/_modules/custom-data/index.ts +10 -10
  1298. package/src/_modules/data-handler/_models/data-handler-settings.control-model.spec.ts +110 -110
  1299. package/src/_modules/data-handler/_models/data-handler-settings.control-model.ts +110 -110
  1300. package/src/_modules/data-handler/_models/data-handler.control-model.spec.ts +473 -473
  1301. package/src/_modules/data-handler/_models/data-handler.control-model.ts +486 -486
  1302. package/src/_modules/data-handler/_models/data-list-handler.control-model.spec.ts +263 -263
  1303. package/src/_modules/data-handler/_models/data-list-handler.control-model.ts +252 -252
  1304. package/src/_modules/data-handler/_models/data-search-handler.control-model.spec.ts +417 -417
  1305. package/src/_modules/data-handler/_models/data-search-handler.control-model.ts +390 -390
  1306. package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.spec.ts +374 -374
  1307. package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.ts +274 -274
  1308. package/src/_modules/data-handler/index.ts +6 -6
  1309. package/src/_modules/game/_collections/audio-mixer.util.spec.ts +198 -198
  1310. package/src/_modules/game/_collections/audio-mixer.util.ts +143 -143
  1311. package/src/_modules/game/_collections/audio-scale.util.spec.ts +140 -140
  1312. package/src/_modules/game/_collections/audio-scale.util.ts +129 -129
  1313. package/src/_modules/game/_enums/audio-channel.enum.ts +22 -22
  1314. package/src/_modules/game/_models/audio-mixer-config.interface.ts +53 -53
  1315. package/src/_modules/game/_models/audio-mixer-settings.interface.ts +38 -38
  1316. package/src/_modules/game/_models/audio-mixer-state.interface.ts +36 -36
  1317. package/src/_modules/game/_models/audio-mixer.control-model.spec.ts +376 -376
  1318. package/src/_modules/game/_models/audio-mixer.control-model.ts +419 -419
  1319. package/src/_modules/game/_models/audio-scale.interface.ts +21 -21
  1320. package/src/_modules/game/_models/seeded-random-state.interface.ts +21 -21
  1321. package/src/_modules/game/_models/seeded-random.control-model.spec.ts +290 -290
  1322. package/src/_modules/game/_models/seeded-random.control-model.ts +311 -311
  1323. package/src/_modules/game/index.ts +15 -15
  1324. package/src/_modules/location/_collections/assets/country-codes-ISO-3166.json +3239 -3239
  1325. package/src/_modules/location/_collections/assets/country-divisions-ISO-3166-all-list.json +19035 -19035
  1326. package/src/_modules/location/_collections/assets/country-divisions-ISO-3166.json +4993 -4993
  1327. package/src/_modules/location/_collections/assets/country-phone-codes.json +1203 -1203
  1328. package/src/_modules/location/_collections/assets/country-subdivisions/afghanistan.json +137 -137
  1329. package/src/_modules/location/_collections/assets/country-subdivisions/albania.json +49 -49
  1330. package/src/_modules/location/_collections/assets/country-subdivisions/algeria.json +193 -193
  1331. package/src/_modules/location/_collections/assets/country-subdivisions/andorra.json +29 -29
  1332. package/src/_modules/location/_collections/assets/country-subdivisions/angola.json +73 -73
  1333. package/src/_modules/location/_collections/assets/country-subdivisions/antigua-and-barbuda.json +33 -33
  1334. package/src/_modules/location/_collections/assets/country-subdivisions/argentina.json +97 -97
  1335. package/src/_modules/location/_collections/assets/country-subdivisions/armenia.json +45 -45
  1336. package/src/_modules/location/_collections/assets/country-subdivisions/australia.json +33 -33
  1337. package/src/_modules/location/_collections/assets/country-subdivisions/austria.json +37 -37
  1338. package/src/_modules/location/_collections/assets/country-subdivisions/azerbaijan.json +5 -5
  1339. package/src/_modules/location/_collections/assets/country-subdivisions/bahamas.json +125 -125
  1340. package/src/_modules/location/_collections/assets/country-subdivisions/bahrain.json +21 -21
  1341. package/src/_modules/location/_collections/assets/country-subdivisions/bangladesh.json +29 -29
  1342. package/src/_modules/location/_collections/assets/country-subdivisions/barbados.json +45 -45
  1343. package/src/_modules/location/_collections/assets/country-subdivisions/belarus.json +29 -29
  1344. package/src/_modules/location/_collections/assets/country-subdivisions/belgium.json +13 -13
  1345. package/src/_modules/location/_collections/assets/country-subdivisions/belize.json +25 -25
  1346. package/src/_modules/location/_collections/assets/country-subdivisions/benin.json +49 -49
  1347. package/src/_modules/location/_collections/assets/country-subdivisions/bhutan.json +81 -81
  1348. package/src/_modules/location/_collections/assets/country-subdivisions/bolivia.json +37 -37
  1349. package/src/_modules/location/_collections/assets/country-subdivisions/bosnia-and-herzegovina.json +13 -13
  1350. package/src/_modules/location/_collections/assets/country-subdivisions/botswana.json +65 -65
  1351. package/src/_modules/location/_collections/assets/country-subdivisions/brazil.json +109 -109
  1352. package/src/_modules/location/_collections/assets/country-subdivisions/brunei-darussalam.json +17 -17
  1353. package/src/_modules/location/_collections/assets/country-subdivisions/bulgaria.json +113 -113
  1354. package/src/_modules/location/_collections/assets/country-subdivisions/burkina-faso.json +53 -53
  1355. package/src/_modules/location/_collections/assets/country-subdivisions/burundi.json +69 -69
  1356. package/src/_modules/location/_collections/assets/country-subdivisions/cambodia.json +97 -97
  1357. package/src/_modules/location/_collections/assets/country-subdivisions/cameroon.json +41 -41
  1358. package/src/_modules/location/_collections/assets/country-subdivisions/canada.json +79 -79
  1359. package/src/_modules/location/_collections/assets/country-subdivisions/cape-verde.json +9 -9
  1360. package/src/_modules/location/_collections/assets/country-subdivisions/central-african-republic.json +69 -69
  1361. package/src/_modules/location/_collections/assets/country-subdivisions/chad.json +89 -89
  1362. package/src/_modules/location/_collections/assets/country-subdivisions/chile.json +61 -61
  1363. package/src/_modules/location/_collections/assets/country-subdivisions/china.json +205 -205
  1364. package/src/_modules/location/_collections/assets/country-subdivisions/colombia.json +133 -133
  1365. package/src/_modules/location/_collections/assets/country-subdivisions/comoros.json +13 -13
  1366. package/src/_modules/location/_collections/assets/country-subdivisions/congo-the-democratic-republic-of-the.json +45 -45
  1367. package/src/_modules/location/_collections/assets/country-subdivisions/congo.json +49 -49
  1368. package/src/_modules/location/_collections/assets/country-subdivisions/costa-rica.json +29 -29
  1369. package/src/_modules/location/_collections/assets/country-subdivisions/cote-d-ivoire-republic-of.json +77 -77
  1370. package/src/_modules/location/_collections/assets/country-subdivisions/croatia.json +85 -85
  1371. package/src/_modules/location/_collections/assets/country-subdivisions/cuba.json +65 -65
  1372. package/src/_modules/location/_collections/assets/country-subdivisions/cyprus.json +25 -25
  1373. package/src/_modules/location/_collections/assets/country-subdivisions/czech-republic.json +57 -57
  1374. package/src/_modules/location/_collections/assets/country-subdivisions/denmark.json +21 -21
  1375. package/src/_modules/location/_collections/assets/country-subdivisions/djibouti.json +25 -25
  1376. package/src/_modules/location/_collections/assets/country-subdivisions/dominica.json +41 -41
  1377. package/src/_modules/location/_collections/assets/country-subdivisions/dominican-republic.json +41 -41
  1378. package/src/_modules/location/_collections/assets/country-subdivisions/ecuador.json +97 -97
  1379. package/src/_modules/location/_collections/assets/country-subdivisions/egypt.json +117 -117
  1380. package/src/_modules/location/_collections/assets/country-subdivisions/el-salvador.json +57 -57
  1381. package/src/_modules/location/_collections/assets/country-subdivisions/equatorial-guinea.json +9 -9
  1382. package/src/_modules/location/_collections/assets/country-subdivisions/eritrea.json +25 -25
  1383. package/src/_modules/location/_collections/assets/country-subdivisions/estonia.json +61 -61
  1384. package/src/_modules/location/_collections/assets/country-subdivisions/ethiopia.json +45 -45
  1385. package/src/_modules/location/_collections/assets/country-subdivisions/fiji.json +21 -21
  1386. package/src/_modules/location/_collections/assets/country-subdivisions/finland.json +77 -77
  1387. package/src/_modules/location/_collections/assets/country-subdivisions/france.json +133 -133
  1388. package/src/_modules/location/_collections/assets/country-subdivisions/gabon.json +37 -37
  1389. package/src/_modules/location/_collections/assets/country-subdivisions/gambia.json +25 -25
  1390. package/src/_modules/location/_collections/assets/country-subdivisions/georgia.json +49 -49
  1391. package/src/_modules/location/_collections/assets/country-subdivisions/germany.json +65 -65
  1392. package/src/_modules/location/_collections/assets/country-subdivisions/ghana.json +41 -41
  1393. package/src/_modules/location/_collections/assets/country-subdivisions/greece.json +53 -53
  1394. package/src/_modules/location/_collections/assets/country-subdivisions/greenland.json +17 -17
  1395. package/src/_modules/location/_collections/assets/country-subdivisions/grenada.json +29 -29
  1396. package/src/_modules/location/_collections/assets/country-subdivisions/guatemala.json +89 -89
  1397. package/src/_modules/location/_collections/assets/country-subdivisions/guinea-bissau.json +13 -13
  1398. package/src/_modules/location/_collections/assets/country-subdivisions/guinea.json +33 -33
  1399. package/src/_modules/location/_collections/assets/country-subdivisions/guyana.json +41 -41
  1400. package/src/_modules/location/_collections/assets/country-subdivisions/haiti.json +41 -41
  1401. package/src/_modules/location/_collections/assets/country-subdivisions/honduras.json +73 -73
  1402. package/src/_modules/location/_collections/assets/country-subdivisions/hong-kong.json +4 -4
  1403. package/src/_modules/location/_collections/assets/country-subdivisions/hungary.json +173 -173
  1404. package/src/_modules/location/_collections/assets/country-subdivisions/iceland.json +37 -37
  1405. package/src/_modules/location/_collections/assets/country-subdivisions/india.json +181 -181
  1406. package/src/_modules/location/_collections/assets/country-subdivisions/indonesia.json +29 -29
  1407. package/src/_modules/location/_collections/assets/country-subdivisions/iran-islamic-republic-of.json +125 -125
  1408. package/src/_modules/location/_collections/assets/country-subdivisions/iraq.json +73 -73
  1409. package/src/_modules/location/_collections/assets/country-subdivisions/ireland.json +17 -17
  1410. package/src/_modules/location/_collections/assets/country-subdivisions/israel.json +25 -25
  1411. package/src/_modules/location/_collections/assets/country-subdivisions/italy.json +81 -81
  1412. package/src/_modules/location/_collections/assets/country-subdivisions/jamaica.json +57 -57
  1413. package/src/_modules/location/_collections/assets/country-subdivisions/japan.json +189 -189
  1414. package/src/_modules/location/_collections/assets/country-subdivisions/jordan.json +49 -49
  1415. package/src/_modules/location/_collections/assets/country-subdivisions/kazakhstan.json +65 -65
  1416. package/src/_modules/location/_collections/assets/country-subdivisions/kenya.json +33 -33
  1417. package/src/_modules/location/_collections/assets/country-subdivisions/kiribati.json +13 -13
  1418. package/src/_modules/location/_collections/assets/country-subdivisions/korea-democratic-people-s-republic-of.json +45 -45
  1419. package/src/_modules/location/_collections/assets/country-subdivisions/korea-republic-of.json +69 -69
  1420. package/src/_modules/location/_collections/assets/country-subdivisions/kuwait.json +25 -25
  1421. package/src/_modules/location/_collections/assets/country-subdivisions/kyrgyzstan.json +33 -33
  1422. package/src/_modules/location/_collections/assets/country-subdivisions/lao-people-s-democratic-republic.json +73 -73
  1423. package/src/_modules/location/_collections/assets/country-subdivisions/latvia.json +477 -477
  1424. package/src/_modules/location/_collections/assets/country-subdivisions/lebanon.json +33 -33
  1425. package/src/_modules/location/_collections/assets/country-subdivisions/lesotho.json +41 -41
  1426. package/src/_modules/location/_collections/assets/country-subdivisions/liberia.json +61 -61
  1427. package/src/_modules/location/_collections/assets/country-subdivisions/libyan-arab-jamahiriya.json +89 -89
  1428. package/src/_modules/location/_collections/assets/country-subdivisions/liechtenstein.json +45 -45
  1429. package/src/_modules/location/_collections/assets/country-subdivisions/lithuania.json +41 -41
  1430. package/src/_modules/location/_collections/assets/country-subdivisions/luxembourg.json +13 -13
  1431. package/src/_modules/location/_collections/assets/country-subdivisions/macedonia-the-former-yugoslav-republic-of.json +337 -337
  1432. package/src/_modules/location/_collections/assets/country-subdivisions/madagascar.json +25 -25
  1433. package/src/_modules/location/_collections/assets/country-subdivisions/malawi.json +13 -13
  1434. package/src/_modules/location/_collections/assets/country-subdivisions/malaysia.json +81 -81
  1435. package/src/_modules/location/_collections/assets/country-subdivisions/maldives.json +33 -33
  1436. package/src/_modules/location/_collections/assets/country-subdivisions/mali.json +37 -37
  1437. package/src/_modules/location/_collections/assets/country-subdivisions/malta.json +273 -273
  1438. package/src/_modules/location/_collections/assets/country-subdivisions/marshall-islands.json +9 -9
  1439. package/src/_modules/location/_collections/assets/country-subdivisions/mauritania.json +53 -53
  1440. package/src/_modules/location/_collections/assets/country-subdivisions/mauritius.json +69 -69
  1441. package/src/_modules/location/_collections/assets/country-subdivisions/mexico.json +161 -161
  1442. package/src/_modules/location/_collections/assets/country-subdivisions/micronesia-federated-states-of.json +17 -17
  1443. package/src/_modules/location/_collections/assets/country-subdivisions/moldova-republic-of.json +149 -149
  1444. package/src/_modules/location/_collections/assets/country-subdivisions/monaco.json +69 -69
  1445. package/src/_modules/location/_collections/assets/country-subdivisions/mongolia.json +89 -89
  1446. package/src/_modules/location/_collections/assets/country-subdivisions/montenegro.json +93 -93
  1447. package/src/_modules/location/_collections/assets/country-subdivisions/morocco.json +65 -65
  1448. package/src/_modules/location/_collections/assets/country-subdivisions/mozambique.json +45 -45
  1449. package/src/_modules/location/_collections/assets/country-subdivisions/myanmar.json +57 -57
  1450. package/src/_modules/location/_collections/assets/country-subdivisions/namibia.json +57 -57
  1451. package/src/_modules/location/_collections/assets/country-subdivisions/nauru.json +57 -57
  1452. package/src/_modules/location/_collections/assets/country-subdivisions/nepal.json +21 -21
  1453. package/src/_modules/location/_collections/assets/country-subdivisions/netherlands.json +91 -91
  1454. package/src/_modules/location/_collections/assets/country-subdivisions/new-zealand.json +111 -111
  1455. package/src/_modules/location/_collections/assets/country-subdivisions/nicaragua.json +69 -69
  1456. package/src/_modules/location/_collections/assets/country-subdivisions/niger.json +33 -33
  1457. package/src/_modules/location/_collections/assets/country-subdivisions/nigeria.json +149 -149
  1458. package/src/_modules/location/_collections/assets/country-subdivisions/norway.json +85 -85
  1459. package/src/_modules/location/_collections/assets/country-subdivisions/oman.json +37 -37
  1460. package/src/_modules/location/_collections/assets/country-subdivisions/pakistan.json +33 -33
  1461. package/src/_modules/location/_collections/assets/country-subdivisions/palau.json +65 -65
  1462. package/src/_modules/location/_collections/assets/country-subdivisions/palestinian-territory-occupied.json +65 -65
  1463. package/src/_modules/location/_collections/assets/country-subdivisions/panama.json +53 -53
  1464. package/src/_modules/location/_collections/assets/country-subdivisions/papua-new-guinea.json +81 -81
  1465. package/src/_modules/location/_collections/assets/country-subdivisions/paraguay.json +73 -73
  1466. package/src/_modules/location/_collections/assets/country-subdivisions/peru.json +105 -105
  1467. package/src/_modules/location/_collections/assets/country-subdivisions/philippines.json +69 -69
  1468. package/src/_modules/location/_collections/assets/country-subdivisions/poland.json +65 -65
  1469. package/src/_modules/location/_collections/assets/country-subdivisions/portugal.json +81 -81
  1470. package/src/_modules/location/_collections/assets/country-subdivisions/qatar.json +29 -29
  1471. package/src/_modules/location/_collections/assets/country-subdivisions/romania.json +169 -169
  1472. package/src/_modules/location/_collections/assets/country-subdivisions/russian-federation.json +499 -499
  1473. package/src/_modules/location/_collections/assets/country-subdivisions/rwanda.json +21 -21
  1474. package/src/_modules/location/_collections/assets/country-subdivisions/saint-helena-ascension-and-tristan-da-cunha.json +13 -13
  1475. package/src/_modules/location/_collections/assets/country-subdivisions/saint-kitts-and-nevis.json +9 -9
  1476. package/src/_modules/location/_collections/assets/country-subdivisions/saint-lucia.json +45 -45
  1477. package/src/_modules/location/_collections/assets/country-subdivisions/saint-vincent-and-the-grenadines.json +25 -25
  1478. package/src/_modules/location/_collections/assets/country-subdivisions/samoa.json +45 -45
  1479. package/src/_modules/location/_collections/assets/country-subdivisions/san-marino.json +37 -37
  1480. package/src/_modules/location/_collections/assets/country-subdivisions/sao-tome-and-principe.json +9 -9
  1481. package/src/_modules/location/_collections/assets/country-subdivisions/saudi-arabia.json +53 -53
  1482. package/src/_modules/location/_collections/assets/country-subdivisions/senegal.json +57 -57
  1483. package/src/_modules/location/_collections/assets/country-subdivisions/serbia.json +9 -9
  1484. package/src/_modules/location/_collections/assets/country-subdivisions/seychelles.json +101 -101
  1485. package/src/_modules/location/_collections/assets/country-subdivisions/sierra-leone.json +17 -17
  1486. package/src/_modules/location/_collections/assets/country-subdivisions/singapore.json +21 -21
  1487. package/src/_modules/location/_collections/assets/country-subdivisions/slovakia.json +33 -33
  1488. package/src/_modules/location/_collections/assets/country-subdivisions/slovenia.json +841 -841
  1489. package/src/_modules/location/_collections/assets/country-subdivisions/solomon-islands.json +41 -41
  1490. package/src/_modules/location/_collections/assets/country-subdivisions/somalia.json +73 -73
  1491. package/src/_modules/location/_collections/assets/country-subdivisions/south-africa.json +37 -37
  1492. package/src/_modules/location/_collections/assets/country-subdivisions/south-sudan.json +41 -41
  1493. package/src/_modules/location/_collections/assets/country-subdivisions/spain.json +346 -346
  1494. package/src/_modules/location/_collections/assets/country-subdivisions/sri-lanka.json +37 -37
  1495. package/src/_modules/location/_collections/assets/country-subdivisions/sudan.json +69 -69
  1496. package/src/_modules/location/_collections/assets/country-subdivisions/suriname.json +41 -41
  1497. package/src/_modules/location/_collections/assets/country-subdivisions/swaziland.json +17 -17
  1498. package/src/_modules/location/_collections/assets/country-subdivisions/sweden.json +85 -85
  1499. package/src/_modules/location/_collections/assets/country-subdivisions/switzerland.json +105 -105
  1500. package/src/_modules/location/_collections/assets/country-subdivisions/syrian-arab-republic.json +57 -57
  1501. package/src/_modules/location/_collections/assets/country-subdivisions/taiwan-province-of-china.json +93 -93
  1502. package/src/_modules/location/_collections/assets/country-subdivisions/tajikistan.json +17 -17
  1503. package/src/_modules/location/_collections/assets/country-subdivisions/tanzania-united-republic-of.json +105 -105
  1504. package/src/_modules/location/_collections/assets/country-subdivisions/thailand.json +313 -313
  1505. package/src/_modules/location/_collections/assets/country-subdivisions/timor-leste.json +53 -53
  1506. package/src/_modules/location/_collections/assets/country-subdivisions/togo.json +21 -21
  1507. package/src/_modules/location/_collections/assets/country-subdivisions/tonga.json +21 -21
  1508. package/src/_modules/location/_collections/assets/country-subdivisions/trinidad-and-tobago.json +65 -65
  1509. package/src/_modules/location/_collections/assets/country-subdivisions/tunisia.json +97 -97
  1510. package/src/_modules/location/_collections/assets/country-subdivisions/turkey.json +325 -325
  1511. package/src/_modules/location/_collections/assets/country-subdivisions/turkmenistan.json +25 -25
  1512. package/src/_modules/location/_collections/assets/country-subdivisions/tuvalu.json +33 -33
  1513. package/src/_modules/location/_collections/assets/country-subdivisions/uganda.json +17 -17
  1514. package/src/_modules/location/_collections/assets/country-subdivisions/ukraine.json +109 -109
  1515. package/src/_modules/location/_collections/assets/country-subdivisions/united-arab-emirates.json +29 -29
  1516. package/src/_modules/location/_collections/assets/country-subdivisions/united-kingdom.json +1196 -1196
  1517. package/src/_modules/location/_collections/assets/country-subdivisions/united-states-minor-outlying-islands.json +37 -37
  1518. package/src/_modules/location/_collections/assets/country-subdivisions/united-states.json +286 -286
  1519. package/src/_modules/location/_collections/assets/country-subdivisions/uruguay.json +77 -77
  1520. package/src/_modules/location/_collections/assets/country-subdivisions/uzbekistan.json +57 -57
  1521. package/src/_modules/location/_collections/assets/country-subdivisions/vanuatu.json +25 -25
  1522. package/src/_modules/location/_collections/assets/country-subdivisions/venezuela.json +101 -101
  1523. package/src/_modules/location/_collections/assets/country-subdivisions/viet-nam.json +257 -257
  1524. package/src/_modules/location/_collections/assets/country-subdivisions/yemen.json +85 -85
  1525. package/src/_modules/location/_collections/assets/country-subdivisions/zambia.json +37 -37
  1526. package/src/_modules/location/_collections/assets/country-subdivisions/zimbabwe.json +41 -41
  1527. package/src/_modules/location/_collections/loc-country-divisions.const.ts +10 -10
  1528. package/src/_modules/location/_collections/loc-country-isos.const.ts +8 -8
  1529. package/src/_modules/location/_collections/loc-regions.util.spec.ts +61 -61
  1530. package/src/_modules/location/_collections/loc-regions.util.ts +137 -137
  1531. package/src/_modules/location/_collections/loc.util.spec.ts +52 -52
  1532. package/src/_modules/location/_collections/loc.util.ts +74 -74
  1533. package/src/_modules/location/_enums/loc-region.enum.ts +14 -14
  1534. package/src/_modules/location/_enums/loc-sub-region.enum.ts +31 -31
  1535. package/src/_modules/location/_enums/loc-subdivision-region-type.enum.ts +47 -47
  1536. package/src/_modules/location/_models/loc-coordinates.interface.ts +7 -7
  1537. package/src/_modules/location/_models/loc-country-division.interface.ts +8 -8
  1538. package/src/_modules/location/_models/loc-country-iso.interface.ts +23 -23
  1539. package/src/_modules/location/_models/loc-country-phone-code.interface.ts +9 -9
  1540. package/src/_modules/location/_models/loc-division-collection.interface.ts +12 -12
  1541. package/src/_modules/location/_models/loc-division-region-data.interface.ts +9 -9
  1542. package/src/_modules/location/_models/loc-geo-ip-location.interface.ts +27 -27
  1543. package/src/_modules/location/index.ts +22 -22
  1544. package/src/_modules/messaging/README.md +279 -279
  1545. package/src/_modules/messaging/_collections/msg-module-settings.const.ts +46 -46
  1546. package/src/_modules/messaging/_enums/msg-attachment-type.enum.ts +26 -26
  1547. package/src/_modules/messaging/_enums/msg-conversation-type.enum.ts +20 -20
  1548. package/src/_modules/messaging/_enums/msg-delivery-status.enum.ts +17 -17
  1549. package/src/_modules/messaging/_enums/msg-event-key.enum.ts +31 -31
  1550. package/src/_modules/messaging/_enums/msg-participant-role.enum.ts +20 -20
  1551. package/src/_modules/messaging/_enums/msg-provider-type.enum.ts +7 -7
  1552. package/src/_modules/messaging/_enums/msg-status.enum.ts +26 -26
  1553. package/src/_modules/messaging/_enums/msg-type.enum.ts +23 -23
  1554. package/src/_modules/messaging/_models/msg-attachment.interface.ts +46 -46
  1555. package/src/_modules/messaging/_models/msg-conversation.data-model.spec.ts +69 -69
  1556. package/src/_modules/messaging/_models/msg-conversation.data-model.ts +96 -96
  1557. package/src/_modules/messaging/_models/msg-mention.interface.ts +29 -29
  1558. package/src/_modules/messaging/_models/msg-message.data-model.spec.ts +79 -79
  1559. package/src/_modules/messaging/_models/msg-message.data-model.ts +127 -127
  1560. package/src/_modules/messaging/_models/msg-participant.interface.ts +46 -46
  1561. package/src/_modules/messaging/_models/msg-reaction.interface.ts +20 -20
  1562. package/src/_modules/messaging/_models/msg-thread-info.interface.ts +35 -35
  1563. package/src/_modules/messaging/_modules/agent/_enums/agt-process-step-type.enum.ts +35 -35
  1564. package/src/_modules/messaging/_modules/agent/_enums/agt-tool-status.enum.ts +23 -23
  1565. package/src/_modules/messaging/_modules/agent/_models/agt-process-step.interface.ts +55 -55
  1566. package/src/_modules/messaging/_modules/agent/_models/agt-reasoning-info.interface.ts +26 -26
  1567. package/src/_modules/messaging/_modules/agent/_models/agt-tool-usage.interface.ts +37 -37
  1568. package/src/_modules/messaging/_modules/agent/index.ts +8 -8
  1569. package/src/_modules/messaging/index.ts +28 -28
  1570. package/src/_modules/ngx-models/_collections/angular-placeholders.ts +34 -34
  1571. package/src/_modules/ngx-models/_collections/button-new-style-settings-presets.const.ts +181 -181
  1572. package/src/_modules/ngx-models/_collections/dynamo-global.settings.spec.ts +74 -74
  1573. package/src/_modules/ngx-models/_collections/dynamo-global.settings.ts +103 -103
  1574. package/src/_modules/ngx-models/_enums/button-new/button-new-border-radius.enum.ts +16 -16
  1575. package/src/_modules/ngx-models/_enums/button-new/button-new-icon-style-type.enum.ts +14 -14
  1576. package/src/_modules/ngx-models/_enums/button-new/button-new-size.enum.ts +16 -16
  1577. package/src/_modules/ngx-models/_enums/button-new/button-new-style-type.enum.ts +18 -18
  1578. package/src/_modules/ngx-models/_enums/button-type.enum.ts +36 -36
  1579. package/src/_modules/ngx-models/_enums/checkbox-label-position.enum.ts +8 -8
  1580. package/src/_modules/ngx-models/_enums/container-type.enum.ts +11 -11
  1581. package/src/_modules/ngx-models/_enums/errors/error-level.enum.ts +13 -13
  1582. package/src/_modules/ngx-models/_enums/errors/error-notification-color.enum.ts +13 -13
  1583. package/src/_modules/ngx-models/_enums/errors/error-ui-mode.enum.ts +13 -13
  1584. package/src/_modules/ngx-models/_enums/field-appearance.enum.ts +14 -14
  1585. package/src/_modules/ngx-models/_enums/field-type.enum.ts +52 -52
  1586. package/src/_modules/ngx-models/_enums/file-type.enum.ts +12 -12
  1587. package/src/_modules/ngx-models/_enums/flex/flex-layout-align.enum.ts +21 -21
  1588. package/src/_modules/ngx-models/_enums/flex/flex-layout.enum.ts +5 -5
  1589. package/src/_modules/ngx-models/_enums/form-access.enum.ts +9 -9
  1590. package/src/_modules/ngx-models/_enums/form-reset-data.enum.ts +12 -12
  1591. package/src/_modules/ngx-models/_enums/form-store-on.enum.ts +9 -9
  1592. package/src/_modules/ngx-models/_enums/forms-new/field-new-validator-type.enum.ts +20 -20
  1593. package/src/_modules/ngx-models/_enums/frames/header-item-type.enum.ts +15 -15
  1594. package/src/_modules/ngx-models/_enums/frames/header-position.enum.ts +10 -10
  1595. package/src/_modules/ngx-models/_enums/frames/side-nav-badge-color.enum.ts +13 -13
  1596. package/src/_modules/ngx-models/_enums/html/input-types.enum.ts +27 -27
  1597. package/src/_modules/ngx-models/_enums/material-color.enum.ts +16 -16
  1598. package/src/_modules/ngx-models/_enums/material-tooltip-position.enum.ts +16 -16
  1599. package/src/_modules/ngx-models/_enums/preconfigured-field-type.enum.ts +8 -8
  1600. package/src/_modules/ngx-models/_enums/storage-type.enum.ts +15 -15
  1601. package/src/_modules/ngx-models/_enums/validator-type.enum.ts +9 -9
  1602. package/src/_modules/ngx-models/_enums/voice/audio-mime-type.enum.ts +14 -14
  1603. package/src/_modules/ngx-models/_enums/voice/voice-provider-type.enum.ts +26 -26
  1604. package/src/_modules/ngx-models/_enums/voice/voice-recorder-state.enum.ts +20 -20
  1605. package/src/_modules/ngx-models/_models/control-models/button-new-style-settings.control-model.ts +37 -37
  1606. package/src/_modules/ngx-models/_models/control-models/button-params.control-model.spec.ts +70 -70
  1607. package/src/_modules/ngx-models/_models/control-models/button-params.control-model.ts +332 -332
  1608. package/src/_modules/ngx-models/_models/control-models/chat/chat-column-layout-settings.control-model.ts +28 -28
  1609. package/src/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.spec.ts +90 -90
  1610. package/src/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.ts +134 -134
  1611. package/src/_modules/ngx-models/_models/control-models/data-handler.control-model.ts +529 -529
  1612. package/src/_modules/ngx-models/_models/control-models/errors/error-notification.control-model.ts +52 -52
  1613. package/src/_modules/ngx-models/_models/control-models/errors/error-settings.control-model.ts +34 -34
  1614. package/src/_modules/ngx-models/_models/control-models/errors/errors-pojo.spec.ts +86 -86
  1615. package/src/_modules/ngx-models/_models/control-models/errors/errors-settings.control-model.ts +52 -52
  1616. package/src/_modules/ngx-models/_models/control-models/field-settings.control-model.spec.ts +109 -109
  1617. package/src/_modules/ngx-models/_models/control-models/field-settings.control-model.ts +133 -133
  1618. package/src/_modules/ngx-models/_models/control-models/form-settings.control-model.spec.ts +109 -109
  1619. package/src/_modules/ngx-models/_models/control-models/form-settings.control-model.ts +160 -160
  1620. package/src/_modules/ngx-models/_models/control-models/forms-new/checkbox-field-new-settings.control-model.ts +25 -25
  1621. package/src/_modules/ngx-models/_models/control-models/forms-new/date-field-new-settings.control-model.ts +26 -26
  1622. package/src/_modules/ngx-models/_models/control-models/forms-new/date-range-field-new-settings.control-model.ts +42 -42
  1623. package/src/_modules/ngx-models/_models/control-models/forms-new/datetime-field-new-settings.control-model.ts +35 -35
  1624. package/src/_modules/ngx-models/_models/control-models/forms-new/datetime-range-field-new-settings.control-model.ts +35 -35
  1625. package/src/_modules/ngx-models/_models/control-models/forms-new/field-new-settings.control-model.ts +85 -85
  1626. package/src/_modules/ngx-models/_models/control-models/forms-new/field-new-types.ts +42 -42
  1627. package/src/_modules/ngx-models/_models/control-models/forms-new/form-new-settings.control-model.ts +40 -40
  1628. package/src/_modules/ngx-models/_models/control-models/forms-new/forms-new.spec.ts +179 -179
  1629. package/src/_modules/ngx-models/_models/control-models/forms-new/index.ts +20 -20
  1630. package/src/_modules/ngx-models/_models/control-models/forms-new/multiselect-field-new-settings.control-model.ts +27 -27
  1631. package/src/_modules/ngx-models/_models/control-models/forms-new/number-field-new-settings.control-model.ts +24 -24
  1632. package/src/_modules/ngx-models/_models/control-models/forms-new/password-field-new-settings.control-model.ts +35 -35
  1633. package/src/_modules/ngx-models/_models/control-models/forms-new/radio-select-field-new-settings.control-model.ts +35 -35
  1634. package/src/_modules/ngx-models/_models/control-models/forms-new/select-field-new-settings.control-model.ts +46 -46
  1635. package/src/_modules/ngx-models/_models/control-models/forms-new/slider-field-new-settings.control-model.ts +37 -37
  1636. package/src/_modules/ngx-models/_models/control-models/forms-new/slider-range-field-new-settings.control-model.ts +45 -45
  1637. package/src/_modules/ngx-models/_models/control-models/forms-new/text-field-new-settings.control-model.ts +30 -30
  1638. package/src/_modules/ngx-models/_models/control-models/forms-new/textarea-field-new-settings.control-model.ts +22 -22
  1639. package/src/_modules/ngx-models/_models/control-models/frames/frames-pojo.spec.ts +108 -108
  1640. package/src/_modules/ngx-models/_models/control-models/frames/header-item-settings.control-model.ts +52 -52
  1641. package/src/_modules/ngx-models/_models/control-models/frames/main-frame-settings.control-model.ts +40 -40
  1642. package/src/_modules/ngx-models/_models/control-models/frames/side-nav-item-settings.control-model.ts +55 -55
  1643. package/src/_modules/ngx-models/_models/control-models/frames/side-nav-settings.control-model.ts +30 -30
  1644. package/src/_modules/ngx-models/_models/control-models/select.control-model.spec.ts +45 -45
  1645. package/src/_modules/ngx-models/_models/control-models/select.control-model.ts +28 -28
  1646. package/src/_modules/ngx-models/_models/control-models/voice/voice-pojo.spec.ts +111 -111
  1647. package/src/_modules/ngx-models/_models/control-models/voice/voice-providers-settings.control-model.ts +74 -74
  1648. package/src/_modules/ngx-models/_models/control-models/voice/voice-record-button-settings.control-model.ts +42 -42
  1649. package/src/_modules/ngx-models/_models/control-models/voice/voice-recorder-settings.control-model.ts +37 -37
  1650. package/src/_modules/ngx-models/_models/interfaces/button-new-settings.interface.ts +74 -74
  1651. package/src/_modules/ngx-models/_models/interfaces/confirm-settings.interface.ts +20 -20
  1652. package/src/_modules/ngx-models/_models/interfaces/global-settings.interface.ts +67 -67
  1653. package/src/_modules/ngx-models/_models/interfaces/select-options-custom-constructor.interface.ts +40 -40
  1654. package/src/_modules/ngx-models/_models/interfaces/storage.service.spec.ts +18 -18
  1655. package/src/_modules/ngx-models/_models/interfaces/storage.service.ts +40 -40
  1656. package/src/_modules/ngx-models/_models/interfaces/voice/speak-options.interface.ts +19 -19
  1657. package/src/_modules/ngx-models/_models/interfaces/voice/speak-result.interface.ts +14 -14
  1658. package/src/_modules/ngx-models/_models/interfaces/voice/transcribe-options.interface.ts +14 -14
  1659. package/src/_modules/ngx-models/_models/interfaces/voice/transcribe-result.interface.ts +15 -15
  1660. package/src/_modules/ngx-models/_models/interfaces/voice/voice-profile.interface.ts +18 -18
  1661. package/src/_modules/ngx-models/_models/interfaces/voice/voice-provider-init.interface.ts +21 -21
  1662. package/src/_modules/ngx-models/_utils/shared.service.spec.ts +7 -7
  1663. package/src/_modules/ngx-models/_utils/shared.service.ts +541 -541
  1664. package/src/_modules/ngx-models/index.ts +110 -110
  1665. package/src/_modules/pipe/_collections/pip-transforms.const.ts +42 -42
  1666. package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.spec.ts +47 -47
  1667. package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.ts +41 -41
  1668. package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.spec.ts +39 -39
  1669. package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.ts +30 -30
  1670. package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.spec.ts +41 -41
  1671. package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.ts +36 -36
  1672. package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.spec.ts +62 -62
  1673. package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.ts +17 -17
  1674. package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.spec.ts +34 -34
  1675. package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.ts +25 -25
  1676. package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.spec.ts +67 -67
  1677. package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.ts +226 -226
  1678. package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.spec.ts +28 -28
  1679. package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.ts +21 -21
  1680. package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.spec.ts +59 -59
  1681. package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.ts +106 -106
  1682. package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.spec.ts +31 -31
  1683. package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.ts +35 -35
  1684. package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.spec.ts +44 -44
  1685. package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.ts +23 -23
  1686. package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.spec.ts +21 -21
  1687. package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.ts +33 -33
  1688. package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.spec.ts +62 -62
  1689. package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.ts +80 -80
  1690. package/src/_modules/pipe/_enums/pip-range-pipe-setting.enum.ts +15 -15
  1691. package/src/_modules/pipe/_enums/pip.enum.ts +65 -65
  1692. package/src/_modules/pipe/_models/pip-multi-pipe-settings.type.ts +8 -8
  1693. package/src/_modules/pipe/_models/pip-transforms.interface.ts +30 -30
  1694. package/src/_modules/pipe/index.ts +30 -30
  1695. package/src/_modules/security/_collections/stored-secret.util.spec.ts +81 -81
  1696. package/src/_modules/security/_collections/stored-secret.util.ts +96 -96
  1697. package/src/_modules/security/_models/stored-secret.control-model.ts +55 -55
  1698. package/src/_modules/security/index.ts +9 -9
  1699. package/src/_modules/socket/_enums/sck-event-key.enum.ts +21 -21
  1700. package/src/_modules/socket/_models/sck-client-params.control-model.spec.ts +67 -67
  1701. package/src/_modules/socket/_models/sck-client-params.control-model.ts +50 -50
  1702. package/src/_modules/socket/_models/sck-socket-event.control-model.spec.ts +80 -57
  1703. package/src/_modules/socket/_models/sck-socket-event.control-model.ts +181 -168
  1704. package/src/_modules/socket/_services/sck-client.service-base.spec.ts +99 -99
  1705. package/src/_modules/socket/_services/sck-client.service-base.ts +353 -353
  1706. package/src/_modules/socket/index.ts +14 -14
  1707. package/src/_modules/state-machine/_models/state-machine-config.interface.ts +19 -19
  1708. package/src/_modules/state-machine/_models/state-machine-event.interface.ts +25 -25
  1709. package/src/_modules/state-machine/_models/state-machine.control-model.spec.ts +314 -314
  1710. package/src/_modules/state-machine/_models/state-machine.control-model.ts +298 -298
  1711. package/src/_modules/state-machine/_models/state-transition-result.interface.ts +53 -53
  1712. package/src/_modules/state-machine/_models/state-transition.interface.ts +30 -30
  1713. package/src/_modules/state-machine/index.ts +6 -6
  1714. package/src/_modules/test/_collections/tst-module-settings.const.ts +67 -67
  1715. package/src/_modules/test/index.ts +5 -5
  1716. package/src/_modules/usage/_collections/usg-module-settings.const.ts +33 -33
  1717. package/src/_modules/usage/_models/usg-action.control-model.spec.ts +27 -27
  1718. package/src/_modules/usage/_models/usg-action.control-model.ts +28 -28
  1719. package/src/_modules/usage/_models/usg-daily-usage-data.control-model.spec.ts +36 -36
  1720. package/src/_modules/usage/_models/usg-daily-usage-data.control-model.ts +35 -35
  1721. package/src/_modules/usage/_models/usg-data.control-model.spec.ts +41 -41
  1722. package/src/_modules/usage/_models/usg-data.control-model.ts +35 -35
  1723. package/src/_modules/usage/_models/usg-session.data-model.spec.ts +97 -97
  1724. package/src/_modules/usage/_models/usg-session.data-model.ts +72 -72
  1725. package/src/_modules/usage/index.ts +11 -11
  1726. package/src/index.ts +104 -104
  1727. package/tsconfig.app.json +12 -12
  1728. package/tsconfig.json +31 -31
  1729. package/tsconfig.test.json +16 -16
  1730. package/tslint.json +153 -153
  1731. package/__documentations/2026-05-17-oai-compatible-providers-howto.md +0 -282
  1732. package/__documentations/2026-06-01-fr047-fc-foundation.md +0 -48
  1733. package/__documentations/2026-06-01-fr047-fr048-code-review.md +0 -153
  1734. package/__documentations/2026-06-01-fr047-p1-function-calling-vocabulary.md +0 -75
  1735. package/__documentations/2026-06-05-secret-mask-url-cred-any-scheme.md +0 -37
  1736. package/__documentations/2026-06-06-ngx-models-merge-completion.md +0 -100
  1737. package/__documentations/2026-06-22-dyfm-error-extends-error.md +0 -109
  1738. package/__documentations/plans/00-MASTER-ngx-models-fsm-merge.md +0 -75
  1739. package/__documentations/plans/01-naming-convention-DyNM-to-DyFM.md +0 -103
  1740. package/__documentations/plans/02-consumer-rollout.md +0 -84
@@ -1,657 +1,657 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DyFM_Crypto = void 0;
4
- const tslib_1 = require("tslib");
5
- const CryptoJS = tslib_1.__importStar(require("crypto-js"));
6
- const error_control_model_1 = require("../../../_models/control-models/error.control-model");
7
- const object_util_1 = require("../../../_collections/utils/object.util");
8
- const global_settings_const_1 = require("../../../_collections/constants/global-settings.const");
9
- const log_util_1 = require("../../../_collections/utils/log.util");
10
- // Compact: about 60–80 character tokens, not 200+
11
- // Non-standard: hard to reverse-engineer
12
- // Usable in cookies, headers, URLs
13
- /**
14
- * A utility class for stable encryption and decryption of data
15
- * Uses AES-256-CBC with deterministic IV and salt for consistent results across systems
16
- * Prioritizes reliability and cross-platform compatibility over security
17
- *
18
- * @important DETERMINISTIC ENCRYPTION: This implementation produces identical encrypted
19
- * output for identical input data and key across different systems and multiple calls.
20
- * The same input will ALWAYS generate the same encrypted string on any platform.
21
- *
22
- * @warning SECURITY NOTICE: This deterministic behavior is intentional for cross-platform
23
- * compatibility but reduces security. Identical inputs produce identical outputs, which
24
- * can be exploited for pattern analysis attacks. Use only when consistency across
25
- * systems is more important than cryptographic security.
26
- */
27
- class DyFM_Crypto {
28
- static CRYPTO_VERSION = '1.0';
29
- static DEFAULT_CONFIG = {
30
- ivLength: 16, // 128 bits
31
- saltLength: 16, // 128 bits
32
- keyIterations: 1000, // Reduced for better performance and stability
33
- keySize: 8 // 256 bits (8 * 32)
34
- };
35
- static defaultErrorUserMsg = `We encountered an unhandled Authentication Error, ` +
36
- `\nplease contact the responsible development team.`;
37
- /**
38
- * Validates the input data and key with comprehensive error messages
39
- * @throws {DyFM_Error} if validation fails
40
- */
41
- static validateInput(data, key, operation) {
42
- // Validate key
43
- if (!key) {
44
- throw new error_control_model_1.DyFM_Error({
45
- ...this.getDefaultErrorSettings(operation),
46
- errorCode: 'DyFM-CRY-KEY-MISSING',
47
- message: `Encryption key is required for ${operation} operation. Please provide a valid key.`
48
- });
49
- }
50
- if (typeof key !== 'string') {
51
- throw new error_control_model_1.DyFM_Error({
52
- ...this.getDefaultErrorSettings(operation),
53
- errorCode: 'DyFM-CRY-KEY-TYPE',
54
- message: `Encryption key must be a string, but received ${typeof key}. Please provide a valid string key.`
55
- });
56
- }
57
- if (key.trim().length === 0) {
58
- throw new error_control_model_1.DyFM_Error({
59
- ...this.getDefaultErrorSettings(operation),
60
- errorCode: 'DyFM-CRY-KEY-EMPTY',
61
- message: 'Encryption key cannot be empty or contain only whitespace. Please provide a non-empty key.'
62
- });
63
- }
64
- // Only warn about weak keys but don't reject them for backward compatibility
65
- if (key.length < 8) {
66
- console.warn('Warning: Encryption key is too short (minimum 8 characters recommended). Consider using a stronger key for better security.');
67
- }
68
- // Validate data based on operation
69
- if (operation === 'encrypt') {
70
- this.validateEncryptData(data);
71
- }
72
- else if (operation === 'decrypt') {
73
- this.validateDecryptData(data);
74
- }
75
- }
76
- /**
77
- * Validates data for encryption
78
- */
79
- static validateEncryptData(data) {
80
- if (data === undefined) {
81
- throw new error_control_model_1.DyFM_Error({
82
- ...this.getDefaultErrorSettings('encrypt'),
83
- errorCode: 'DyFM-CRY-DATA-UNDEFINED',
84
- message: 'Cannot encrypt undefined data. Please provide valid data to encrypt.'
85
- });
86
- }
87
- if (data === null) {
88
- throw new error_control_model_1.DyFM_Error({
89
- ...this.getDefaultErrorSettings('encrypt'),
90
- errorCode: 'DyFM-CRY-DATA-NULL',
91
- message: 'Cannot encrypt null data. Please provide valid data to encrypt.'
92
- });
93
- }
94
- // Check for empty strings
95
- if (typeof data === 'string' && data.trim().length === 0) {
96
- throw new error_control_model_1.DyFM_Error({
97
- ...this.getDefaultErrorSettings('encrypt'),
98
- errorCode: 'DyFM-CRY-DATA-EMPTY-STRING',
99
- message: 'Cannot encrypt empty string. Please provide non-empty data to encrypt.'
100
- });
101
- }
102
- // Allow empty objects and arrays for backward compatibility
103
- // Only reject truly empty data like empty strings
104
- }
105
- /**
106
- * Validates data for decryption
107
- */
108
- static validateDecryptData(data) {
109
- if (data === undefined) {
110
- throw new error_control_model_1.DyFM_Error({
111
- ...this.getDefaultErrorSettings('decrypt'),
112
- errorCode: 'DyFM-CRY-ENCRYPTED-UNDEFINED',
113
- message: 'Cannot decrypt undefined data. Please provide valid encrypted data to decrypt.'
114
- });
115
- }
116
- if (data === null) {
117
- throw new error_control_model_1.DyFM_Error({
118
- ...this.getDefaultErrorSettings('decrypt'),
119
- errorCode: 'DyFM-CRY-ENCRYPTED-NULL',
120
- message: 'Cannot decrypt null data. Please provide valid encrypted data to decrypt.'
121
- });
122
- }
123
- if (typeof data !== 'string') {
124
- throw new error_control_model_1.DyFM_Error({
125
- ...this.getDefaultErrorSettings('decrypt'),
126
- errorCode: 'DyFM-CRY-ENCRYPTED-TYPE',
127
- message: `Encrypted data must be a string, but received ${typeof data}. Please provide valid encrypted string data.`
128
- });
129
- }
130
- if (data.trim().length === 0) {
131
- throw new error_control_model_1.DyFM_Error({
132
- ...this.getDefaultErrorSettings('decrypt'),
133
- errorCode: 'DyFM-CRY-ENCRYPTED-EMPTY',
134
- message: 'Cannot decrypt empty string. Please provide valid encrypted data to decrypt.'
135
- });
136
- }
137
- if (data.length < 10) {
138
- throw new error_control_model_1.DyFM_Error({
139
- ...this.getDefaultErrorSettings('decrypt'),
140
- errorCode: 'DyFM-CRY-ENCRYPTED-TOO-SHORT',
141
- message: 'Encrypted data appears to be too short to be valid. Please check the encrypted data.'
142
- });
143
- }
144
- // Check if it looks like valid encrypted data format
145
- if (!/^[A-Za-z0-9\-_]+$/.test(data)) {
146
- throw new error_control_model_1.DyFM_Error({
147
- ...this.getDefaultErrorSettings('decrypt'),
148
- errorCode: 'DyFM-CRY-ENCRYPTED-INVALID-FORMAT',
149
- message: 'Encrypted data does not appear to be in valid format. Expected URL-safe base64 format.'
150
- });
151
- }
152
- }
153
- /**
154
- * Generates a deterministic IV based on the input data and key
155
- * Uses SHA-256 with proper truncation for maximum stability
156
- *
157
- * @important DETERMINISTIC: Same data + key will ALWAYS produce the same IV
158
- * across all systems and CryptoJS versions for consistent encryption results
159
- */
160
- static generateIV(data, key, config) {
161
- // Create a deterministic seed from data and key
162
- const seed = this.createDeterministicSeed(data, key, 'IV');
163
- // Use SHA-256 for better stability and consistency
164
- const hash = CryptoJS.SHA256(seed);
165
- // Extract exactly 16 bytes (128 bits) for IV
166
- // Use the first 4 words (4 * 4 = 16 bytes) from the hash
167
- const ivWords = hash.words.slice(0, 4);
168
- return CryptoJS.lib.WordArray.create(ivWords);
169
- }
170
- /**
171
- * Generates a deterministic salt based on the input data and key
172
- * Uses SHA-256 with proper truncation for maximum stability
173
- *
174
- * @important DETERMINISTIC: Same data + key will ALWAYS produce the same salt
175
- * across all systems and CryptoJS versions for consistent encryption results
176
- */
177
- static generateSalt(data, key, config) {
178
- // Create a deterministic seed from data and key (different from IV)
179
- const seed = this.createDeterministicSeed(data, key, 'SALT');
180
- // Use SHA-256 for better stability and consistency
181
- const hash = CryptoJS.SHA256(seed);
182
- // Extract exactly 16 bytes (128 bits) for salt
183
- // Use the first 4 words (4 * 4 = 16 bytes) from the hash
184
- const saltWords = hash.words.slice(0, 4);
185
- return CryptoJS.lib.WordArray.create(saltWords);
186
- }
187
- /**
188
- * Creates a deterministic seed for IV/salt generation
189
- * Ensures consistent output across all environments and versions
190
- */
191
- static createDeterministicSeed(data, key, purpose) {
192
- // Create a consistent seed that includes all relevant factors
193
- // Order matters: data + key + purpose for consistency
194
- const seed = `${data}|${key}|${purpose}`;
195
- return seed;
196
- }
197
- /**
198
- * Derives a key using PBKDF2 with reduced iterations for stability
199
- */
200
- static deriveKey(key, salt, config) {
201
- return CryptoJS.PBKDF2(key, salt, {
202
- keySize: config.keySize,
203
- iterations: config.keyIterations
204
- });
205
- }
206
- /**
207
- * Safely serializes data to JSON with deterministic ordering
208
- * Uses regular JSON.stringify but ensures consistency through other means
209
- */
210
- static safeSerialize(data) {
211
- try {
212
- // Use regular JSON.stringify for backward compatibility
213
- // The deterministic behavior comes from the IV/salt generation, not serialization
214
- return JSON.stringify(data);
215
- }
216
- catch (error) {
217
- throw new error_control_model_1.DyFM_Error({
218
- ...this.getDefaultErrorSettings('safeSerialize', error),
219
- errorCode: 'DyFM-CRY-SER',
220
- message: 'Failed to serialize data'
221
- });
222
- }
223
- }
224
- /**
225
- * Deterministic JSON stringify that produces identical output across environments
226
- * Uses a hybrid approach: sorts keys for consistency but preserves order for arrays
227
- */
228
- static deterministicStringify(obj) {
229
- if (obj === null)
230
- return 'null';
231
- if (obj === undefined)
232
- return 'undefined';
233
- if (typeof obj === 'string')
234
- return JSON.stringify(obj);
235
- if (typeof obj === 'number')
236
- return JSON.stringify(obj);
237
- if (typeof obj === 'boolean')
238
- return JSON.stringify(obj);
239
- if (Array.isArray(obj)) {
240
- const items = obj.map(item => this.deterministicStringify(item));
241
- return '[' + items.join(',') + ']';
242
- }
243
- if (typeof obj === 'object') {
244
- // For objects, we need to be more careful about key ordering
245
- // Use a stable sort that preserves original order when possible
246
- const keys = Object.keys(obj);
247
- // Only sort if there are potential ordering issues
248
- const needsSorting = keys.some((key, index) => {
249
- if (index === 0)
250
- return false;
251
- return key < keys[index - 1];
252
- });
253
- const sortedKeys = needsSorting ? [...keys].sort() : keys;
254
- const pairs = sortedKeys.map(key => {
255
- const value = this.deterministicStringify(obj[key]);
256
- return JSON.stringify(key) + ':' + value;
257
- });
258
- return '{' + pairs.join(',') + '}';
259
- }
260
- // Handle Date objects and other special types
261
- if (obj instanceof Date) {
262
- return JSON.stringify(obj.toISOString());
263
- }
264
- // Fallback to regular JSON.stringify for other types
265
- return JSON.stringify(obj);
266
- }
267
- /**
268
- * Safely deserializes JSON data with enhanced error handling
269
- */
270
- static safeDeserialize(data) {
271
- try {
272
- if (!data || data.trim().length === 0) {
273
- throw new error_control_model_1.DyFM_Error({
274
- ...this.getDefaultErrorSettings('safeDeserialize'),
275
- errorCode: 'DyFM-CRY-DES-EMPTY',
276
- message: 'Cannot deserialize empty data. The decrypted data appears to be empty or invalid.'
277
- });
278
- }
279
- //let parsed = JSON.parse(data);
280
- let parsed = object_util_1.DyFM_Object.failableSafeParseJSON(data);
281
- // Handle double-stringified JSON (or more levels of stringification)
282
- let maxAttempts = 3; // Prevent infinite loops
283
- while (typeof parsed === 'string' && maxAttempts > 0) {
284
- try {
285
- //const nextParsed = JSON.parse(parsed);
286
- const nextParsed = object_util_1.DyFM_Object.failableSafeParseJSON(parsed);
287
- // Only continue if parsing actually changed the result
288
- if (nextParsed !== parsed) {
289
- parsed = nextParsed;
290
- maxAttempts--;
291
- }
292
- else {
293
- break;
294
- }
295
- }
296
- catch {
297
- // If parse fails, return current state
298
- break;
299
- }
300
- }
301
- // Handle primitive values
302
- /* if (typeof parsed === 'string' || typeof parsed === 'number' || typeof parsed === 'boolean') {
303
- return parsed as T;
304
- } */
305
- return parsed;
306
- }
307
- catch (error) {
308
- if (error instanceof error_control_model_1.DyFM_Error) {
309
- throw error;
310
- }
311
- throw new error_control_model_1.DyFM_Error({
312
- ...this.getDefaultErrorSettings('safeDeserialize', error),
313
- errorCode: 'DyFM-CRY-DES',
314
- message: 'Failed to deserialize data. The decrypted data may be corrupted or in an unexpected format.'
315
- });
316
- }
317
- }
318
- /**
319
- * Encrypts data using AES-256-CBC with deterministic IV and salt
320
- *
321
- * @important DETERMINISTIC BEHAVIOR: This method will produce identical encrypted
322
- * output for identical input parameters across different systems, Node.js versions,
323
- * and multiple function calls. The same data + key combination will ALWAYS generate
324
- * the same encrypted string.
325
- *
326
- * @param data The data to encrypt
327
- * @param key The encryption key
328
- * @param config Optional configuration
329
- * @returns URL-safe encrypted string that is identical across systems for same input
330
- * @throws {DyFM_Error} if encryption fails
331
- *
332
- * @example
333
- * // These will produce identical results on any system:
334
- * const result1 = DyFM_Crypto.encrypt({id: 1}, "mykey");
335
- * const result2 = DyFM_Crypto.encrypt({id: 1}, "mykey");
336
- * console.log(result1 === result2); // Always true
337
- */
338
- static encrypt(data, key, config) {
339
- try {
340
- this.validateInput(data, key, 'encrypt');
341
- const finalConfig = { ...this.DEFAULT_CONFIG, ...config };
342
- // Convert data to string
343
- const dataStr = this.safeSerialize(data);
344
- // Generate deterministic IV and salt based on data and key
345
- const iv = this.generateIV(dataStr, key, finalConfig);
346
- const salt = this.generateSalt(dataStr, key, finalConfig);
347
- // Derive key using PBKDF2
348
- const derivedKey = this.deriveKey(key, salt, finalConfig);
349
- // Encrypt the data
350
- const encrypted = CryptoJS.AES.encrypt(dataStr, derivedKey, {
351
- iv: iv,
352
- mode: CryptoJS.mode.CBC,
353
- padding: CryptoJS.pad.Pkcs7
354
- });
355
- // Combine IV + Salt + Ciphertext (skip version for backward compatibility)
356
- const combined = iv.concat(salt).concat(encrypted.ciphertext);
357
- // Convert to URL-safe base64
358
- return CryptoJS.enc.Base64.stringify(combined)
359
- .replace(/\+/g, '-')
360
- .replace(/\//g, '_')
361
- .replace(/=+$/, '');
362
- }
363
- catch (error) {
364
- throw new error_control_model_1.DyFM_Error({
365
- ...this.getDefaultErrorSettings('encrypt', error),
366
- errorCode: 'DyFM-CRY-ENC',
367
- });
368
- }
369
- }
370
- /**
371
- * Decrypts data that was encrypted using encrypt()
372
- * @param encryptedData The encrypted data
373
- * @param key The decryption key
374
- * @param config Optional configuration
375
- * @returns The decrypted data
376
- * @throws {DyFM_Error} if decryption fails
377
- */
378
- static decrypt(encryptedData, key, config) {
379
- try {
380
- this.validateInput(encryptedData, key, 'decrypt');
381
- const finalConfig = { ...this.DEFAULT_CONFIG, ...config };
382
- // Convert from URL-safe base64
383
- const base64 = encryptedData
384
- .replace(/-/g, '+')
385
- .replace(/_/g, '/');
386
- // Add padding if needed (base64 must be multiple of 4 characters)
387
- // This ensures CryptoJS.parse works correctly even when padding was stripped during URL transmission
388
- const paddingNeeded = (4 - (base64.length % 4)) % 4;
389
- const paddedBase64 = base64 + '='.repeat(paddingNeeded);
390
- // Validate base64 format before parsing
391
- // Check if the string length makes sense for expected minimum byte count
392
- // Minimum expected: 48 bytes = ~64 base64 characters (48 * 4/3 = 64)
393
- const minExpectedBase64Length = Math.ceil((finalConfig.ivLength + finalConfig.saltLength + 16) * 4 / 3);
394
- if (paddedBase64.length < minExpectedBase64Length) {
395
- if (global_settings_const_1.DyFM_global_settings.log_settings.server_debug || true) {
396
- log_util_1.DyFM_Log.H_error(`Encrypted data is too short. Expected at least ${minExpectedBase64Length} base64 characters ` +
397
- `(for ${(finalConfig.ivLength + finalConfig.saltLength + 16)} bytes), ` +
398
- `but received ${paddedBase64.length} characters (${encryptedData.length} original). ` +
399
- `This may indicate the data was truncated during transmission or storage.` +
400
- '\n\nEncrypted data: ' + encryptedData, '\n\nkey: ' + key);
401
- }
402
- throw new error_control_model_1.DyFM_Error({
403
- ...this.getDefaultErrorSettings('decrypt'),
404
- errorCode: 'DyFM-CRY-DATA-CORRUPTED',
405
- message: `Encrypted data is too short. Expected at least ${minExpectedBase64Length} base64 characters ` +
406
- `(for ${(finalConfig.ivLength + finalConfig.saltLength + 16)} bytes), ` +
407
- `but received ${paddedBase64.length} characters (${encryptedData.length} original). ` +
408
- `This may indicate the data was truncated during transmission or storage.`
409
- });
410
- }
411
- // Parse the combined data
412
- const combined = CryptoJS.enc.Base64.parse(paddedBase64);
413
- // For now, skip version checking to maintain backward compatibility
414
- // TODO: Implement proper version checking in future versions
415
- // Validate minimum length (IV + Salt + minimum ciphertext)
416
- const minLength = (finalConfig.ivLength + finalConfig.saltLength + 16) / 4; // 16 bytes minimum for ciphertext
417
- if (combined.words.length < minLength) {
418
- throw new error_control_model_1.DyFM_Error({
419
- ...this.getDefaultErrorSettings('decrypt'),
420
- errorCode: 'DyFM-CRY-DATA-CORRUPTED',
421
- message: `Encrypted data is corrupted or incomplete. Expected at least ${minLength * 4} bytes, but received ${combined.sigBytes} bytes. ` +
422
- `Original string length: ${encryptedData.length} characters. ` +
423
- `Base64 length: ${base64.length} characters (${paddedBase64.length} with padding). ` +
424
- `This may indicate the data was truncated during transmission or storage.`
425
- });
426
- }
427
- // Extract IV, salt, and ciphertext (skip version for now)
428
- const ivStart = 0;
429
- const saltStart = ivStart + finalConfig.ivLength / 4;
430
- const cipherStart = saltStart + finalConfig.saltLength / 4;
431
- const iv = CryptoJS.lib.WordArray.create(combined.words.slice(ivStart, saltStart));
432
- const salt = CryptoJS.lib.WordArray.create(combined.words.slice(saltStart, cipherStart));
433
- const ciphertext = CryptoJS.lib.WordArray.create(combined.words.slice(cipherStart));
434
- // Derive key using PBKDF2
435
- const derivedKey = this.deriveKey(key, salt, finalConfig);
436
- // Decrypt the data
437
- const decrypted = CryptoJS.AES.decrypt({ ciphertext: ciphertext }, derivedKey, {
438
- iv: iv,
439
- mode: CryptoJS.mode.CBC,
440
- padding: CryptoJS.pad.Pkcs7
441
- });
442
- // Parse JSON
443
- const decryptedStr = decrypted.toString(CryptoJS.enc.Utf8);
444
- // Check if decryption produced empty result
445
- if (!decryptedStr || decryptedStr.trim().length === 0) {
446
- throw new error_control_model_1.DyFM_Error({
447
- ...this.getDefaultErrorSettings('decrypt'),
448
- errorCode: 'DyFM-CRY-DECRYPT-EMPTY',
449
- message: 'Decryption failed - the result is empty. This usually means the encryption key is incorrect or the data is corrupted.'
450
- });
451
- }
452
- return this.safeDeserialize(decryptedStr);
453
- }
454
- catch (error) {
455
- // Check if it's already a DyFM_Error
456
- if (error instanceof error_control_model_1.DyFM_Error) {
457
- throw error;
458
- }
459
- // Handle specific decryption errors
460
- if (error instanceof Error) {
461
- if (error.message.includes('Malformed UTF-8')) {
462
- throw new error_control_model_1.DyFM_Error({
463
- ...this.getDefaultErrorSettings('decrypt', error),
464
- errorCode: 'DyFM-CRY-DECRYPT-UTF8',
465
- message: 'Decryption failed - invalid UTF-8 data. This usually means the encryption key is incorrect or the data is corrupted.'
466
- });
467
- }
468
- if (error.message.includes('Invalid padding')) {
469
- throw new error_control_model_1.DyFM_Error({
470
- ...this.getDefaultErrorSettings('decrypt', error),
471
- errorCode: 'DyFM-CRY-DECRYPT-PADDING',
472
- message: 'Decryption failed - invalid padding. This usually means the encryption key is incorrect or the data is corrupted.'
473
- });
474
- }
475
- }
476
- throw new error_control_model_1.DyFM_Error({
477
- ...this.getDefaultErrorSettings('decrypt', error),
478
- errorCode: 'DyFM-CRY-DRY',
479
- message: 'Decryption failed. Please verify the encryption key and ensure the encrypted data is valid.'
480
- });
481
- }
482
- }
483
- /**
484
- * Generates a secure random key with enhanced complexity
485
- * @param length Length of the key in characters (default: 32)
486
- * @param customChars Optional custom character set to use
487
- * @returns A secure random key with mixed case letters, numbers, and special characters
488
- */
489
- static generateKey(length = 32, customChars) {
490
- // Use custom character set if provided, otherwise use simple safe characters
491
- const chars = customChars || 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
492
- let complexKey = '';
493
- // Generate random characters directly for the desired length
494
- for (let i = 0; i < length; i++) {
495
- // Generate random bytes for each character
496
- const randomBytes = CryptoJS.lib.WordArray.random(1);
497
- const randomValue = randomBytes.words[0];
498
- const charIndex = Math.abs(randomValue) % chars.length;
499
- complexKey += chars[charIndex];
500
- }
501
- return complexKey;
502
- }
503
- /**
504
- * Validates if a string is a valid encrypted data
505
- * @param encryptedData The data to validate
506
- * @returns true if the data appears to be valid encrypted data
507
- */
508
- static isValidEncryptedData(encryptedData) {
509
- if (!encryptedData || typeof encryptedData !== 'string') {
510
- return false;
511
- }
512
- return /^[A-Za-z0-9\-_]+$/.test(encryptedData);
513
- }
514
- // ────────────────────────────────────────────────────────────────────────────
515
- // AT-REST DB field-encryption — verzió-envelope (opt-in `encrypt:true` mezőkhöz)
516
- // ────────────────────────────────────────────────────────────────────────────
517
- //
518
- // Formátum: `DYENC1:<keyVersion>:<ciphertext>`. A `keyVersion` a jövőbeli kulcs-rotációhoz
519
- // (a decrypt a verzióból tudja, melyik kulcs kell). Az envelope-prefix teszi MEGBÍZHATÓVÁ a
520
- // "titkosított VAGY legacy plaintext" megkülönböztetést (az `isValidEncryptedData` regex
521
- // önmagában plaintextre is illeszkedhet → nem elég a detektáláshoz).
522
- /** Az AT-REST DB-field-encryption envelope-prefixe. */
523
- static DB_ENC_PREFIX = 'DYENC1:';
524
- /**
525
- * DB-mező titkosítása verzió-envelope-pel. Visszaad: `DYENC1:<keyVersion>:<ciphertext>`.
526
- * A `DyFM_Crypto.encrypt` determinisztikus (Q3: elfogadott promptra) — üres/undefined/null-ra
527
- * dob, ezért a HÍVÓ (nts-transzform) skip-eli az ilyen értékeket.
528
- *
529
- * @param data A titkosítandó érték
530
- * @param key A titkosító kulcs (FDP_CORE_DBCONTENT_CRYPT_KEY)
531
- * @param keyVersion A kulcs-verzió (rotációhoz; default 1)
532
- */
533
- static encryptDbValue(data, key, keyVersion = 1, config) {
534
- const ciphertext = this.encrypt(data, key, config);
535
- return `${this.DB_ENC_PREFIX}${keyVersion}:${ciphertext}`;
536
- }
537
- /** True, ha az érték a DB-enc envelope-pel kezdődik (tehát titkosított, nem legacy plaintext). */
538
- static isEncryptedDbValue(value) {
539
- return typeof value === 'string' && value.startsWith(this.DB_ENC_PREFIX);
540
- }
541
- /** A DB-enc envelope `keyVersion`-je, vagy `null` ha az érték nem envelope. */
542
- static getDbValueKeyVersion(value) {
543
- if (!this.isEncryptedDbValue(value)) {
544
- return null;
545
- }
546
- const rest = value.slice(this.DB_ENC_PREFIX.length);
547
- const sep = rest.indexOf(':');
548
- if (sep < 0) {
549
- return null;
550
- }
551
- const parsed = Number(rest.slice(0, sep));
552
- return Number.isFinite(parsed) ? parsed : null;
553
- }
554
- /**
555
- * DB-enc envelope visszafejtése. A hívó a `getDbValueKeyVersion` alapján oldja fel a megfelelő
556
- * kulcsot, és azt adja át. Ha az érték NEM envelope (legacy plaintext), a hívó NE ezt hívja
557
- * (a read-transzform envelope-detektálással szűr → a plaintext változatlanul jön vissza).
558
- */
559
- static decryptDbValue(value, key, config) {
560
- if (!this.isEncryptedDbValue(value)) {
561
- throw new error_control_model_1.DyFM_Error({
562
- ...this.getDefaultErrorSettings('decrypt'),
563
- errorCode: 'DyFM-CRY-ENV-MISSING',
564
- message: 'Value is not a DB-encryption envelope (missing DYENC1: prefix).',
565
- });
566
- }
567
- const rest = value.slice(this.DB_ENC_PREFIX.length);
568
- const sep = rest.indexOf(':');
569
- const ciphertext = rest.slice(sep + 1);
570
- return this.decrypt(ciphertext, key, config);
571
- }
572
- /**
573
- * Analyzes encrypted data to help with debugging
574
- * @param encryptedData The encrypted data to analyze
575
- * @returns Analysis information about the encrypted data
576
- */
577
- static analyzeEncryptedData(encryptedData) {
578
- try {
579
- if (!this.isValidEncryptedData(encryptedData)) {
580
- return {
581
- isValid: false,
582
- dataLength: encryptedData?.length || 0,
583
- hasValidFormat: false,
584
- error: 'Invalid format - not URL-safe base64'
585
- };
586
- }
587
- // Convert from URL-safe base64
588
- const base64 = encryptedData
589
- .replace(/-/g, '+')
590
- .replace(/_/g, '/');
591
- // Parse the combined data
592
- const combined = CryptoJS.enc.Base64.parse(base64);
593
- // For now, just check if the data has minimum required length
594
- const minLength = (16 + 16 + 16) / 4; // IV + Salt + minimum ciphertext
595
- if (combined.words.length < minLength) {
596
- return {
597
- isValid: false,
598
- dataLength: combined.sigBytes,
599
- hasValidFormat: false,
600
- error: 'Data too short to contain valid encrypted data'
601
- };
602
- }
603
- return {
604
- isValid: true,
605
- version: 'legacy',
606
- dataLength: combined.sigBytes,
607
- hasValidFormat: true,
608
- error: undefined
609
- };
610
- }
611
- catch (error) {
612
- return {
613
- isValid: false,
614
- dataLength: encryptedData?.length || 0,
615
- hasValidFormat: false,
616
- error: `Analysis failed: ${error}`
617
- };
618
- }
619
- }
620
- /**
621
- * Gets default error settings with enhanced debugging information
622
- */
623
- static getDefaultErrorSettings(operation, error) {
624
- const baseSettings = {
625
- status: error?.___status ?? error?.status ?? 401,
626
- message: `Crypto operation "${operation}" failed.`,
627
- error: error,
628
- errorCode: 'DyFM-CRY-ERR'
629
- };
630
- // Add debugging information for common failure scenarios
631
- if (operation === 'decrypt') {
632
- baseSettings.message += '\nThis usually indicates: ' +
633
- '\n 1) Wrong encryption key, ' +
634
- '\n 2) Corrupted encrypted data, ' +
635
- '\n 3) Version incompatibility, ' +
636
- '\n 4) Data was encrypted with different parameters, ' +
637
- '\n 5) Data truncation during transmission (check HTTP header size limits, URL length limits), ' +
638
- '\n 6) Missing base64 padding (should be automatically handled, but may indicate transmission issues).';
639
- // Add specific guidance for truncation issues (like the "18 bytes" error)
640
- baseSettings.message += '\n\nFor truncation issues (e.g., "received 18 bytes"): ' +
641
- '\n - Check if data is being truncated in HTTP headers (Nginx default: 4-8KB, configurable), ' +
642
- '\n - Verify URL parameter length limits if passed via query string, ' +
643
- '\n - Check database field size limits if stored, ' +
644
- '\n - Ensure proxy/load balancer header size limits are sufficient, ' +
645
- '\n - Verify the encrypted data string length matches expected size before decryption.';
646
- }
647
- else if (operation === 'encrypt') {
648
- baseSettings.message += '\nThis usually indicates: ' +
649
- '\n 1) Invalid input data, ' +
650
- '\n 2) Invalid encryption key, ' +
651
- '\n 3) Serialization failure.';
652
- }
653
- return baseSettings;
654
- }
655
- }
656
- exports.DyFM_Crypto = DyFM_Crypto;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DyFM_Crypto = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const CryptoJS = tslib_1.__importStar(require("crypto-js"));
6
+ const error_control_model_1 = require("../../../_models/control-models/error.control-model");
7
+ const object_util_1 = require("../../../_collections/utils/object.util");
8
+ const global_settings_const_1 = require("../../../_collections/constants/global-settings.const");
9
+ const log_util_1 = require("../../../_collections/utils/log.util");
10
+ // Compact: about 60–80 character tokens, not 200+
11
+ // Non-standard: hard to reverse-engineer
12
+ // Usable in cookies, headers, URLs
13
+ /**
14
+ * A utility class for stable encryption and decryption of data
15
+ * Uses AES-256-CBC with deterministic IV and salt for consistent results across systems
16
+ * Prioritizes reliability and cross-platform compatibility over security
17
+ *
18
+ * @important DETERMINISTIC ENCRYPTION: This implementation produces identical encrypted
19
+ * output for identical input data and key across different systems and multiple calls.
20
+ * The same input will ALWAYS generate the same encrypted string on any platform.
21
+ *
22
+ * @warning SECURITY NOTICE: This deterministic behavior is intentional for cross-platform
23
+ * compatibility but reduces security. Identical inputs produce identical outputs, which
24
+ * can be exploited for pattern analysis attacks. Use only when consistency across
25
+ * systems is more important than cryptographic security.
26
+ */
27
+ class DyFM_Crypto {
28
+ static CRYPTO_VERSION = '1.0';
29
+ static DEFAULT_CONFIG = {
30
+ ivLength: 16, // 128 bits
31
+ saltLength: 16, // 128 bits
32
+ keyIterations: 1000, // Reduced for better performance and stability
33
+ keySize: 8 // 256 bits (8 * 32)
34
+ };
35
+ static defaultErrorUserMsg = `We encountered an unhandled Authentication Error, ` +
36
+ `\nplease contact the responsible development team.`;
37
+ /**
38
+ * Validates the input data and key with comprehensive error messages
39
+ * @throws {DyFM_Error} if validation fails
40
+ */
41
+ static validateInput(data, key, operation) {
42
+ // Validate key
43
+ if (!key) {
44
+ throw new error_control_model_1.DyFM_Error({
45
+ ...this.getDefaultErrorSettings(operation),
46
+ errorCode: 'DyFM-CRY-KEY-MISSING',
47
+ message: `Encryption key is required for ${operation} operation. Please provide a valid key.`
48
+ });
49
+ }
50
+ if (typeof key !== 'string') {
51
+ throw new error_control_model_1.DyFM_Error({
52
+ ...this.getDefaultErrorSettings(operation),
53
+ errorCode: 'DyFM-CRY-KEY-TYPE',
54
+ message: `Encryption key must be a string, but received ${typeof key}. Please provide a valid string key.`
55
+ });
56
+ }
57
+ if (key.trim().length === 0) {
58
+ throw new error_control_model_1.DyFM_Error({
59
+ ...this.getDefaultErrorSettings(operation),
60
+ errorCode: 'DyFM-CRY-KEY-EMPTY',
61
+ message: 'Encryption key cannot be empty or contain only whitespace. Please provide a non-empty key.'
62
+ });
63
+ }
64
+ // Only warn about weak keys but don't reject them for backward compatibility
65
+ if (key.length < 8) {
66
+ console.warn('Warning: Encryption key is too short (minimum 8 characters recommended). Consider using a stronger key for better security.');
67
+ }
68
+ // Validate data based on operation
69
+ if (operation === 'encrypt') {
70
+ this.validateEncryptData(data);
71
+ }
72
+ else if (operation === 'decrypt') {
73
+ this.validateDecryptData(data);
74
+ }
75
+ }
76
+ /**
77
+ * Validates data for encryption
78
+ */
79
+ static validateEncryptData(data) {
80
+ if (data === undefined) {
81
+ throw new error_control_model_1.DyFM_Error({
82
+ ...this.getDefaultErrorSettings('encrypt'),
83
+ errorCode: 'DyFM-CRY-DATA-UNDEFINED',
84
+ message: 'Cannot encrypt undefined data. Please provide valid data to encrypt.'
85
+ });
86
+ }
87
+ if (data === null) {
88
+ throw new error_control_model_1.DyFM_Error({
89
+ ...this.getDefaultErrorSettings('encrypt'),
90
+ errorCode: 'DyFM-CRY-DATA-NULL',
91
+ message: 'Cannot encrypt null data. Please provide valid data to encrypt.'
92
+ });
93
+ }
94
+ // Check for empty strings
95
+ if (typeof data === 'string' && data.trim().length === 0) {
96
+ throw new error_control_model_1.DyFM_Error({
97
+ ...this.getDefaultErrorSettings('encrypt'),
98
+ errorCode: 'DyFM-CRY-DATA-EMPTY-STRING',
99
+ message: 'Cannot encrypt empty string. Please provide non-empty data to encrypt.'
100
+ });
101
+ }
102
+ // Allow empty objects and arrays for backward compatibility
103
+ // Only reject truly empty data like empty strings
104
+ }
105
+ /**
106
+ * Validates data for decryption
107
+ */
108
+ static validateDecryptData(data) {
109
+ if (data === undefined) {
110
+ throw new error_control_model_1.DyFM_Error({
111
+ ...this.getDefaultErrorSettings('decrypt'),
112
+ errorCode: 'DyFM-CRY-ENCRYPTED-UNDEFINED',
113
+ message: 'Cannot decrypt undefined data. Please provide valid encrypted data to decrypt.'
114
+ });
115
+ }
116
+ if (data === null) {
117
+ throw new error_control_model_1.DyFM_Error({
118
+ ...this.getDefaultErrorSettings('decrypt'),
119
+ errorCode: 'DyFM-CRY-ENCRYPTED-NULL',
120
+ message: 'Cannot decrypt null data. Please provide valid encrypted data to decrypt.'
121
+ });
122
+ }
123
+ if (typeof data !== 'string') {
124
+ throw new error_control_model_1.DyFM_Error({
125
+ ...this.getDefaultErrorSettings('decrypt'),
126
+ errorCode: 'DyFM-CRY-ENCRYPTED-TYPE',
127
+ message: `Encrypted data must be a string, but received ${typeof data}. Please provide valid encrypted string data.`
128
+ });
129
+ }
130
+ if (data.trim().length === 0) {
131
+ throw new error_control_model_1.DyFM_Error({
132
+ ...this.getDefaultErrorSettings('decrypt'),
133
+ errorCode: 'DyFM-CRY-ENCRYPTED-EMPTY',
134
+ message: 'Cannot decrypt empty string. Please provide valid encrypted data to decrypt.'
135
+ });
136
+ }
137
+ if (data.length < 10) {
138
+ throw new error_control_model_1.DyFM_Error({
139
+ ...this.getDefaultErrorSettings('decrypt'),
140
+ errorCode: 'DyFM-CRY-ENCRYPTED-TOO-SHORT',
141
+ message: 'Encrypted data appears to be too short to be valid. Please check the encrypted data.'
142
+ });
143
+ }
144
+ // Check if it looks like valid encrypted data format
145
+ if (!/^[A-Za-z0-9\-_]+$/.test(data)) {
146
+ throw new error_control_model_1.DyFM_Error({
147
+ ...this.getDefaultErrorSettings('decrypt'),
148
+ errorCode: 'DyFM-CRY-ENCRYPTED-INVALID-FORMAT',
149
+ message: 'Encrypted data does not appear to be in valid format. Expected URL-safe base64 format.'
150
+ });
151
+ }
152
+ }
153
+ /**
154
+ * Generates a deterministic IV based on the input data and key
155
+ * Uses SHA-256 with proper truncation for maximum stability
156
+ *
157
+ * @important DETERMINISTIC: Same data + key will ALWAYS produce the same IV
158
+ * across all systems and CryptoJS versions for consistent encryption results
159
+ */
160
+ static generateIV(data, key, config) {
161
+ // Create a deterministic seed from data and key
162
+ const seed = this.createDeterministicSeed(data, key, 'IV');
163
+ // Use SHA-256 for better stability and consistency
164
+ const hash = CryptoJS.SHA256(seed);
165
+ // Extract exactly 16 bytes (128 bits) for IV
166
+ // Use the first 4 words (4 * 4 = 16 bytes) from the hash
167
+ const ivWords = hash.words.slice(0, 4);
168
+ return CryptoJS.lib.WordArray.create(ivWords);
169
+ }
170
+ /**
171
+ * Generates a deterministic salt based on the input data and key
172
+ * Uses SHA-256 with proper truncation for maximum stability
173
+ *
174
+ * @important DETERMINISTIC: Same data + key will ALWAYS produce the same salt
175
+ * across all systems and CryptoJS versions for consistent encryption results
176
+ */
177
+ static generateSalt(data, key, config) {
178
+ // Create a deterministic seed from data and key (different from IV)
179
+ const seed = this.createDeterministicSeed(data, key, 'SALT');
180
+ // Use SHA-256 for better stability and consistency
181
+ const hash = CryptoJS.SHA256(seed);
182
+ // Extract exactly 16 bytes (128 bits) for salt
183
+ // Use the first 4 words (4 * 4 = 16 bytes) from the hash
184
+ const saltWords = hash.words.slice(0, 4);
185
+ return CryptoJS.lib.WordArray.create(saltWords);
186
+ }
187
+ /**
188
+ * Creates a deterministic seed for IV/salt generation
189
+ * Ensures consistent output across all environments and versions
190
+ */
191
+ static createDeterministicSeed(data, key, purpose) {
192
+ // Create a consistent seed that includes all relevant factors
193
+ // Order matters: data + key + purpose for consistency
194
+ const seed = `${data}|${key}|${purpose}`;
195
+ return seed;
196
+ }
197
+ /**
198
+ * Derives a key using PBKDF2 with reduced iterations for stability
199
+ */
200
+ static deriveKey(key, salt, config) {
201
+ return CryptoJS.PBKDF2(key, salt, {
202
+ keySize: config.keySize,
203
+ iterations: config.keyIterations
204
+ });
205
+ }
206
+ /**
207
+ * Safely serializes data to JSON with deterministic ordering
208
+ * Uses regular JSON.stringify but ensures consistency through other means
209
+ */
210
+ static safeSerialize(data) {
211
+ try {
212
+ // Use regular JSON.stringify for backward compatibility
213
+ // The deterministic behavior comes from the IV/salt generation, not serialization
214
+ return JSON.stringify(data);
215
+ }
216
+ catch (error) {
217
+ throw new error_control_model_1.DyFM_Error({
218
+ ...this.getDefaultErrorSettings('safeSerialize', error),
219
+ errorCode: 'DyFM-CRY-SER',
220
+ message: 'Failed to serialize data'
221
+ });
222
+ }
223
+ }
224
+ /**
225
+ * Deterministic JSON stringify that produces identical output across environments
226
+ * Uses a hybrid approach: sorts keys for consistency but preserves order for arrays
227
+ */
228
+ static deterministicStringify(obj) {
229
+ if (obj === null)
230
+ return 'null';
231
+ if (obj === undefined)
232
+ return 'undefined';
233
+ if (typeof obj === 'string')
234
+ return JSON.stringify(obj);
235
+ if (typeof obj === 'number')
236
+ return JSON.stringify(obj);
237
+ if (typeof obj === 'boolean')
238
+ return JSON.stringify(obj);
239
+ if (Array.isArray(obj)) {
240
+ const items = obj.map(item => this.deterministicStringify(item));
241
+ return '[' + items.join(',') + ']';
242
+ }
243
+ if (typeof obj === 'object') {
244
+ // For objects, we need to be more careful about key ordering
245
+ // Use a stable sort that preserves original order when possible
246
+ const keys = Object.keys(obj);
247
+ // Only sort if there are potential ordering issues
248
+ const needsSorting = keys.some((key, index) => {
249
+ if (index === 0)
250
+ return false;
251
+ return key < keys[index - 1];
252
+ });
253
+ const sortedKeys = needsSorting ? [...keys].sort() : keys;
254
+ const pairs = sortedKeys.map(key => {
255
+ const value = this.deterministicStringify(obj[key]);
256
+ return JSON.stringify(key) + ':' + value;
257
+ });
258
+ return '{' + pairs.join(',') + '}';
259
+ }
260
+ // Handle Date objects and other special types
261
+ if (obj instanceof Date) {
262
+ return JSON.stringify(obj.toISOString());
263
+ }
264
+ // Fallback to regular JSON.stringify for other types
265
+ return JSON.stringify(obj);
266
+ }
267
+ /**
268
+ * Safely deserializes JSON data with enhanced error handling
269
+ */
270
+ static safeDeserialize(data) {
271
+ try {
272
+ if (!data || data.trim().length === 0) {
273
+ throw new error_control_model_1.DyFM_Error({
274
+ ...this.getDefaultErrorSettings('safeDeserialize'),
275
+ errorCode: 'DyFM-CRY-DES-EMPTY',
276
+ message: 'Cannot deserialize empty data. The decrypted data appears to be empty or invalid.'
277
+ });
278
+ }
279
+ //let parsed = JSON.parse(data);
280
+ let parsed = object_util_1.DyFM_Object.failableSafeParseJSON(data);
281
+ // Handle double-stringified JSON (or more levels of stringification)
282
+ let maxAttempts = 3; // Prevent infinite loops
283
+ while (typeof parsed === 'string' && maxAttempts > 0) {
284
+ try {
285
+ //const nextParsed = JSON.parse(parsed);
286
+ const nextParsed = object_util_1.DyFM_Object.failableSafeParseJSON(parsed);
287
+ // Only continue if parsing actually changed the result
288
+ if (nextParsed !== parsed) {
289
+ parsed = nextParsed;
290
+ maxAttempts--;
291
+ }
292
+ else {
293
+ break;
294
+ }
295
+ }
296
+ catch {
297
+ // If parse fails, return current state
298
+ break;
299
+ }
300
+ }
301
+ // Handle primitive values
302
+ /* if (typeof parsed === 'string' || typeof parsed === 'number' || typeof parsed === 'boolean') {
303
+ return parsed as T;
304
+ } */
305
+ return parsed;
306
+ }
307
+ catch (error) {
308
+ if (error instanceof error_control_model_1.DyFM_Error) {
309
+ throw error;
310
+ }
311
+ throw new error_control_model_1.DyFM_Error({
312
+ ...this.getDefaultErrorSettings('safeDeserialize', error),
313
+ errorCode: 'DyFM-CRY-DES',
314
+ message: 'Failed to deserialize data. The decrypted data may be corrupted or in an unexpected format.'
315
+ });
316
+ }
317
+ }
318
+ /**
319
+ * Encrypts data using AES-256-CBC with deterministic IV and salt
320
+ *
321
+ * @important DETERMINISTIC BEHAVIOR: This method will produce identical encrypted
322
+ * output for identical input parameters across different systems, Node.js versions,
323
+ * and multiple function calls. The same data + key combination will ALWAYS generate
324
+ * the same encrypted string.
325
+ *
326
+ * @param data The data to encrypt
327
+ * @param key The encryption key
328
+ * @param config Optional configuration
329
+ * @returns URL-safe encrypted string that is identical across systems for same input
330
+ * @throws {DyFM_Error} if encryption fails
331
+ *
332
+ * @example
333
+ * // These will produce identical results on any system:
334
+ * const result1 = DyFM_Crypto.encrypt({id: 1}, "mykey");
335
+ * const result2 = DyFM_Crypto.encrypt({id: 1}, "mykey");
336
+ * console.log(result1 === result2); // Always true
337
+ */
338
+ static encrypt(data, key, config) {
339
+ try {
340
+ this.validateInput(data, key, 'encrypt');
341
+ const finalConfig = { ...this.DEFAULT_CONFIG, ...config };
342
+ // Convert data to string
343
+ const dataStr = this.safeSerialize(data);
344
+ // Generate deterministic IV and salt based on data and key
345
+ const iv = this.generateIV(dataStr, key, finalConfig);
346
+ const salt = this.generateSalt(dataStr, key, finalConfig);
347
+ // Derive key using PBKDF2
348
+ const derivedKey = this.deriveKey(key, salt, finalConfig);
349
+ // Encrypt the data
350
+ const encrypted = CryptoJS.AES.encrypt(dataStr, derivedKey, {
351
+ iv: iv,
352
+ mode: CryptoJS.mode.CBC,
353
+ padding: CryptoJS.pad.Pkcs7
354
+ });
355
+ // Combine IV + Salt + Ciphertext (skip version for backward compatibility)
356
+ const combined = iv.concat(salt).concat(encrypted.ciphertext);
357
+ // Convert to URL-safe base64
358
+ return CryptoJS.enc.Base64.stringify(combined)
359
+ .replace(/\+/g, '-')
360
+ .replace(/\//g, '_')
361
+ .replace(/=+$/, '');
362
+ }
363
+ catch (error) {
364
+ throw new error_control_model_1.DyFM_Error({
365
+ ...this.getDefaultErrorSettings('encrypt', error),
366
+ errorCode: 'DyFM-CRY-ENC',
367
+ });
368
+ }
369
+ }
370
+ /**
371
+ * Decrypts data that was encrypted using encrypt()
372
+ * @param encryptedData The encrypted data
373
+ * @param key The decryption key
374
+ * @param config Optional configuration
375
+ * @returns The decrypted data
376
+ * @throws {DyFM_Error} if decryption fails
377
+ */
378
+ static decrypt(encryptedData, key, config) {
379
+ try {
380
+ this.validateInput(encryptedData, key, 'decrypt');
381
+ const finalConfig = { ...this.DEFAULT_CONFIG, ...config };
382
+ // Convert from URL-safe base64
383
+ const base64 = encryptedData
384
+ .replace(/-/g, '+')
385
+ .replace(/_/g, '/');
386
+ // Add padding if needed (base64 must be multiple of 4 characters)
387
+ // This ensures CryptoJS.parse works correctly even when padding was stripped during URL transmission
388
+ const paddingNeeded = (4 - (base64.length % 4)) % 4;
389
+ const paddedBase64 = base64 + '='.repeat(paddingNeeded);
390
+ // Validate base64 format before parsing
391
+ // Check if the string length makes sense for expected minimum byte count
392
+ // Minimum expected: 48 bytes = ~64 base64 characters (48 * 4/3 = 64)
393
+ const minExpectedBase64Length = Math.ceil((finalConfig.ivLength + finalConfig.saltLength + 16) * 4 / 3);
394
+ if (paddedBase64.length < minExpectedBase64Length) {
395
+ if (global_settings_const_1.DyFM_global_settings.log_settings.server_debug || true) {
396
+ log_util_1.DyFM_Log.H_error(`Encrypted data is too short. Expected at least ${minExpectedBase64Length} base64 characters ` +
397
+ `(for ${(finalConfig.ivLength + finalConfig.saltLength + 16)} bytes), ` +
398
+ `but received ${paddedBase64.length} characters (${encryptedData.length} original). ` +
399
+ `This may indicate the data was truncated during transmission or storage.` +
400
+ '\n\nEncrypted data: ' + encryptedData, '\n\nkey: ' + key);
401
+ }
402
+ throw new error_control_model_1.DyFM_Error({
403
+ ...this.getDefaultErrorSettings('decrypt'),
404
+ errorCode: 'DyFM-CRY-DATA-CORRUPTED',
405
+ message: `Encrypted data is too short. Expected at least ${minExpectedBase64Length} base64 characters ` +
406
+ `(for ${(finalConfig.ivLength + finalConfig.saltLength + 16)} bytes), ` +
407
+ `but received ${paddedBase64.length} characters (${encryptedData.length} original). ` +
408
+ `This may indicate the data was truncated during transmission or storage.`
409
+ });
410
+ }
411
+ // Parse the combined data
412
+ const combined = CryptoJS.enc.Base64.parse(paddedBase64);
413
+ // For now, skip version checking to maintain backward compatibility
414
+ // TODO: Implement proper version checking in future versions
415
+ // Validate minimum length (IV + Salt + minimum ciphertext)
416
+ const minLength = (finalConfig.ivLength + finalConfig.saltLength + 16) / 4; // 16 bytes minimum for ciphertext
417
+ if (combined.words.length < minLength) {
418
+ throw new error_control_model_1.DyFM_Error({
419
+ ...this.getDefaultErrorSettings('decrypt'),
420
+ errorCode: 'DyFM-CRY-DATA-CORRUPTED',
421
+ message: `Encrypted data is corrupted or incomplete. Expected at least ${minLength * 4} bytes, but received ${combined.sigBytes} bytes. ` +
422
+ `Original string length: ${encryptedData.length} characters. ` +
423
+ `Base64 length: ${base64.length} characters (${paddedBase64.length} with padding). ` +
424
+ `This may indicate the data was truncated during transmission or storage.`
425
+ });
426
+ }
427
+ // Extract IV, salt, and ciphertext (skip version for now)
428
+ const ivStart = 0;
429
+ const saltStart = ivStart + finalConfig.ivLength / 4;
430
+ const cipherStart = saltStart + finalConfig.saltLength / 4;
431
+ const iv = CryptoJS.lib.WordArray.create(combined.words.slice(ivStart, saltStart));
432
+ const salt = CryptoJS.lib.WordArray.create(combined.words.slice(saltStart, cipherStart));
433
+ const ciphertext = CryptoJS.lib.WordArray.create(combined.words.slice(cipherStart));
434
+ // Derive key using PBKDF2
435
+ const derivedKey = this.deriveKey(key, salt, finalConfig);
436
+ // Decrypt the data
437
+ const decrypted = CryptoJS.AES.decrypt({ ciphertext: ciphertext }, derivedKey, {
438
+ iv: iv,
439
+ mode: CryptoJS.mode.CBC,
440
+ padding: CryptoJS.pad.Pkcs7
441
+ });
442
+ // Parse JSON
443
+ const decryptedStr = decrypted.toString(CryptoJS.enc.Utf8);
444
+ // Check if decryption produced empty result
445
+ if (!decryptedStr || decryptedStr.trim().length === 0) {
446
+ throw new error_control_model_1.DyFM_Error({
447
+ ...this.getDefaultErrorSettings('decrypt'),
448
+ errorCode: 'DyFM-CRY-DECRYPT-EMPTY',
449
+ message: 'Decryption failed - the result is empty. This usually means the encryption key is incorrect or the data is corrupted.'
450
+ });
451
+ }
452
+ return this.safeDeserialize(decryptedStr);
453
+ }
454
+ catch (error) {
455
+ // Check if it's already a DyFM_Error
456
+ if (error instanceof error_control_model_1.DyFM_Error) {
457
+ throw error;
458
+ }
459
+ // Handle specific decryption errors
460
+ if (error instanceof Error) {
461
+ if (error.message.includes('Malformed UTF-8')) {
462
+ throw new error_control_model_1.DyFM_Error({
463
+ ...this.getDefaultErrorSettings('decrypt', error),
464
+ errorCode: 'DyFM-CRY-DECRYPT-UTF8',
465
+ message: 'Decryption failed - invalid UTF-8 data. This usually means the encryption key is incorrect or the data is corrupted.'
466
+ });
467
+ }
468
+ if (error.message.includes('Invalid padding')) {
469
+ throw new error_control_model_1.DyFM_Error({
470
+ ...this.getDefaultErrorSettings('decrypt', error),
471
+ errorCode: 'DyFM-CRY-DECRYPT-PADDING',
472
+ message: 'Decryption failed - invalid padding. This usually means the encryption key is incorrect or the data is corrupted.'
473
+ });
474
+ }
475
+ }
476
+ throw new error_control_model_1.DyFM_Error({
477
+ ...this.getDefaultErrorSettings('decrypt', error),
478
+ errorCode: 'DyFM-CRY-DRY',
479
+ message: 'Decryption failed. Please verify the encryption key and ensure the encrypted data is valid.'
480
+ });
481
+ }
482
+ }
483
+ /**
484
+ * Generates a secure random key with enhanced complexity
485
+ * @param length Length of the key in characters (default: 32)
486
+ * @param customChars Optional custom character set to use
487
+ * @returns A secure random key with mixed case letters, numbers, and special characters
488
+ */
489
+ static generateKey(length = 32, customChars) {
490
+ // Use custom character set if provided, otherwise use simple safe characters
491
+ const chars = customChars || 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
492
+ let complexKey = '';
493
+ // Generate random characters directly for the desired length
494
+ for (let i = 0; i < length; i++) {
495
+ // Generate random bytes for each character
496
+ const randomBytes = CryptoJS.lib.WordArray.random(1);
497
+ const randomValue = randomBytes.words[0];
498
+ const charIndex = Math.abs(randomValue) % chars.length;
499
+ complexKey += chars[charIndex];
500
+ }
501
+ return complexKey;
502
+ }
503
+ /**
504
+ * Validates if a string is a valid encrypted data
505
+ * @param encryptedData The data to validate
506
+ * @returns true if the data appears to be valid encrypted data
507
+ */
508
+ static isValidEncryptedData(encryptedData) {
509
+ if (!encryptedData || typeof encryptedData !== 'string') {
510
+ return false;
511
+ }
512
+ return /^[A-Za-z0-9\-_]+$/.test(encryptedData);
513
+ }
514
+ // ────────────────────────────────────────────────────────────────────────────
515
+ // AT-REST DB field-encryption — verzió-envelope (opt-in `encrypt:true` mezőkhöz)
516
+ // ────────────────────────────────────────────────────────────────────────────
517
+ //
518
+ // Formátum: `DYENC1:<keyVersion>:<ciphertext>`. A `keyVersion` a jövőbeli kulcs-rotációhoz
519
+ // (a decrypt a verzióból tudja, melyik kulcs kell). Az envelope-prefix teszi MEGBÍZHATÓVÁ a
520
+ // "titkosított VAGY legacy plaintext" megkülönböztetést (az `isValidEncryptedData` regex
521
+ // önmagában plaintextre is illeszkedhet → nem elég a detektáláshoz).
522
+ /** Az AT-REST DB-field-encryption envelope-prefixe. */
523
+ static DB_ENC_PREFIX = 'DYENC1:';
524
+ /**
525
+ * DB-mező titkosítása verzió-envelope-pel. Visszaad: `DYENC1:<keyVersion>:<ciphertext>`.
526
+ * A `DyFM_Crypto.encrypt` determinisztikus (Q3: elfogadott promptra) — üres/undefined/null-ra
527
+ * dob, ezért a HÍVÓ (nts-transzform) skip-eli az ilyen értékeket.
528
+ *
529
+ * @param data A titkosítandó érték
530
+ * @param key A titkosító kulcs (FDP_CORE_DBCONTENT_CRYPT_KEY)
531
+ * @param keyVersion A kulcs-verzió (rotációhoz; default 1)
532
+ */
533
+ static encryptDbValue(data, key, keyVersion = 1, config) {
534
+ const ciphertext = this.encrypt(data, key, config);
535
+ return `${this.DB_ENC_PREFIX}${keyVersion}:${ciphertext}`;
536
+ }
537
+ /** True, ha az érték a DB-enc envelope-pel kezdődik (tehát titkosított, nem legacy plaintext). */
538
+ static isEncryptedDbValue(value) {
539
+ return typeof value === 'string' && value.startsWith(this.DB_ENC_PREFIX);
540
+ }
541
+ /** A DB-enc envelope `keyVersion`-je, vagy `null` ha az érték nem envelope. */
542
+ static getDbValueKeyVersion(value) {
543
+ if (!this.isEncryptedDbValue(value)) {
544
+ return null;
545
+ }
546
+ const rest = value.slice(this.DB_ENC_PREFIX.length);
547
+ const sep = rest.indexOf(':');
548
+ if (sep < 0) {
549
+ return null;
550
+ }
551
+ const parsed = Number(rest.slice(0, sep));
552
+ return Number.isFinite(parsed) ? parsed : null;
553
+ }
554
+ /**
555
+ * DB-enc envelope visszafejtése. A hívó a `getDbValueKeyVersion` alapján oldja fel a megfelelő
556
+ * kulcsot, és azt adja át. Ha az érték NEM envelope (legacy plaintext), a hívó NE ezt hívja
557
+ * (a read-transzform envelope-detektálással szűr → a plaintext változatlanul jön vissza).
558
+ */
559
+ static decryptDbValue(value, key, config) {
560
+ if (!this.isEncryptedDbValue(value)) {
561
+ throw new error_control_model_1.DyFM_Error({
562
+ ...this.getDefaultErrorSettings('decrypt'),
563
+ errorCode: 'DyFM-CRY-ENV-MISSING',
564
+ message: 'Value is not a DB-encryption envelope (missing DYENC1: prefix).',
565
+ });
566
+ }
567
+ const rest = value.slice(this.DB_ENC_PREFIX.length);
568
+ const sep = rest.indexOf(':');
569
+ const ciphertext = rest.slice(sep + 1);
570
+ return this.decrypt(ciphertext, key, config);
571
+ }
572
+ /**
573
+ * Analyzes encrypted data to help with debugging
574
+ * @param encryptedData The encrypted data to analyze
575
+ * @returns Analysis information about the encrypted data
576
+ */
577
+ static analyzeEncryptedData(encryptedData) {
578
+ try {
579
+ if (!this.isValidEncryptedData(encryptedData)) {
580
+ return {
581
+ isValid: false,
582
+ dataLength: encryptedData?.length || 0,
583
+ hasValidFormat: false,
584
+ error: 'Invalid format - not URL-safe base64'
585
+ };
586
+ }
587
+ // Convert from URL-safe base64
588
+ const base64 = encryptedData
589
+ .replace(/-/g, '+')
590
+ .replace(/_/g, '/');
591
+ // Parse the combined data
592
+ const combined = CryptoJS.enc.Base64.parse(base64);
593
+ // For now, just check if the data has minimum required length
594
+ const minLength = (16 + 16 + 16) / 4; // IV + Salt + minimum ciphertext
595
+ if (combined.words.length < minLength) {
596
+ return {
597
+ isValid: false,
598
+ dataLength: combined.sigBytes,
599
+ hasValidFormat: false,
600
+ error: 'Data too short to contain valid encrypted data'
601
+ };
602
+ }
603
+ return {
604
+ isValid: true,
605
+ version: 'legacy',
606
+ dataLength: combined.sigBytes,
607
+ hasValidFormat: true,
608
+ error: undefined
609
+ };
610
+ }
611
+ catch (error) {
612
+ return {
613
+ isValid: false,
614
+ dataLength: encryptedData?.length || 0,
615
+ hasValidFormat: false,
616
+ error: `Analysis failed: ${error}`
617
+ };
618
+ }
619
+ }
620
+ /**
621
+ * Gets default error settings with enhanced debugging information
622
+ */
623
+ static getDefaultErrorSettings(operation, error) {
624
+ const baseSettings = {
625
+ status: error?.___status ?? error?.status ?? 401,
626
+ message: `Crypto operation "${operation}" failed.`,
627
+ error: error,
628
+ errorCode: 'DyFM-CRY-ERR'
629
+ };
630
+ // Add debugging information for common failure scenarios
631
+ if (operation === 'decrypt') {
632
+ baseSettings.message += '\nThis usually indicates: ' +
633
+ '\n 1) Wrong encryption key, ' +
634
+ '\n 2) Corrupted encrypted data, ' +
635
+ '\n 3) Version incompatibility, ' +
636
+ '\n 4) Data was encrypted with different parameters, ' +
637
+ '\n 5) Data truncation during transmission (check HTTP header size limits, URL length limits), ' +
638
+ '\n 6) Missing base64 padding (should be automatically handled, but may indicate transmission issues).';
639
+ // Add specific guidance for truncation issues (like the "18 bytes" error)
640
+ baseSettings.message += '\n\nFor truncation issues (e.g., "received 18 bytes"): ' +
641
+ '\n - Check if data is being truncated in HTTP headers (Nginx default: 4-8KB, configurable), ' +
642
+ '\n - Verify URL parameter length limits if passed via query string, ' +
643
+ '\n - Check database field size limits if stored, ' +
644
+ '\n - Ensure proxy/load balancer header size limits are sufficient, ' +
645
+ '\n - Verify the encrypted data string length matches expected size before decryption.';
646
+ }
647
+ else if (operation === 'encrypt') {
648
+ baseSettings.message += '\nThis usually indicates: ' +
649
+ '\n 1) Invalid input data, ' +
650
+ '\n 2) Invalid encryption key, ' +
651
+ '\n 3) Serialization failure.';
652
+ }
653
+ return baseSettings;
654
+ }
655
+ }
656
+ exports.DyFM_Crypto = DyFM_Crypto;
657
657
  //# sourceMappingURL=crypto.util.js.map