@futdevpro/fsm-dynamo 1.16.28 → 1.16.29

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 (532) hide show
  1. package/.cursor/rules/__assistant_guide.mdc +30 -30
  2. package/.cursor/rules/_ag_backend-structure.mdc +85 -85
  3. package/.cursor/rules/_ag_backend.mdc +16 -16
  4. package/.cursor/rules/_ag_frontend-structure.mdc +86 -86
  5. package/.cursor/rules/_ag_frontend.mdc +39 -39
  6. package/.cursor/rules/_ag_import-rules.mdc +44 -44
  7. package/.cursor/rules/_ag_naming.mdc +115 -115
  8. package/.cursor/rules/_ag_should-be.mdc +6 -6
  9. package/.cursor/rules/ai_development_guide.md +60 -60
  10. package/.cursor/rules/ai_directives.md +2 -2
  11. package/.cursor/rules/cursor-rules.md +160 -160
  12. package/.cursor/rules/default-command.mdc +464 -464
  13. package/.cursor/rules/error_code_pattern.md +39 -39
  14. package/.cursor/rules/saved rule mcp server use.md +15 -15
  15. package/.vscode/settings.json +11 -11
  16. package/LICENSE +21 -21
  17. package/__documentations/2026-06-01-fr047-fc-foundation.md +1 -1
  18. package/__documentations/2026-06-01-fr047-p1-function-calling-vocabulary.md +3 -3
  19. package/__documentations/2026-06-22-dyfm-error-extends-error.md +109 -109
  20. package/__documentations/plans/00-MASTER-ngx-models-fsm-merge.md +1 -1
  21. package/build/_modules/ai/_models/ai-call-settings.interface.d.ts +1 -1
  22. package/build/_modules/ai/_models/ai-call-settings.interface.js +1 -1
  23. package/build/_modules/ai/_models/ai-model-settings-schema.interface.d.ts +1 -1
  24. package/build/_modules/ai/_modules/anthropic/_collections/aai-models.const.js +1 -1
  25. package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.d.ts +1 -1
  26. package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.js +1 -1
  27. package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.d.ts +1 -1
  28. package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.js +1 -1
  29. package/build/_modules/ai/_modules/open-ai/_collections/oai-models.const.js +1 -1
  30. package/build/_modules/socket/_models/sck-socket-event.control-model.js +1 -1
  31. package/eslint.config.js +4 -4
  32. package/nodemon.json +22 -22
  33. package/package.json +1 -1
  34. package/scripts/crypto/CRYPTO-STABILITY-SOLUTION.md +196 -196
  35. package/scripts/crypto/README.md +113 -113
  36. package/scripts/crypto/demo-crypto-stability.js +120 -120
  37. package/scripts/crypto/stress-test-crypto.js +379 -379
  38. package/scripts/run-coverage-tests.js +24 -24
  39. package/spec/support/helpers/ts-node-helper.js +9 -9
  40. package/spec/support/jasmine.coverage.json +23 -23
  41. package/spec/support/jasmine.json +24 -24
  42. package/src/_collections/constants/data-sizes.const.ts +40 -40
  43. package/src/_collections/constants/error-defaults.const.ts +20 -20
  44. package/src/_collections/constants/global-settings.const.ts +24 -24
  45. package/src/_collections/constants/numbers.const.ts +40 -40
  46. package/src/_collections/constants/times.const.ts +45 -45
  47. package/src/_collections/utils/array.util.spec.ts +306 -306
  48. package/src/_collections/utils/array.util.ts +813 -813
  49. package/src/_collections/utils/async.util.spec.ts +354 -354
  50. package/src/_collections/utils/async.util.ts +197 -197
  51. package/src/_collections/utils/data.util.spec.ts +345 -345
  52. package/src/_collections/utils/data.util.ts +226 -226
  53. package/src/_collections/utils/json-error-helper.util.spec.ts +521 -521
  54. package/src/_collections/utils/json-error-helper.util.ts +301 -301
  55. package/src/_collections/utils/log.util.spec.ts +975 -975
  56. package/src/_collections/utils/log.util.ts +667 -667
  57. package/src/_collections/utils/math/box-bounds.spec.ts +73 -73
  58. package/src/_collections/utils/math/box-bounds.util.ts +183 -183
  59. package/src/_collections/utils/math/math.util.spec.ts +94 -94
  60. package/src/_collections/utils/math/math.util.ts +141 -141
  61. package/src/_collections/utils/math/random.util.spec.ts +82 -82
  62. package/src/_collections/utils/math/random.util.ts +139 -139
  63. package/src/_collections/utils/math/trigonometry.util.spec.ts +57 -57
  64. package/src/_collections/utils/math/trigonometry.util.ts +102 -102
  65. package/src/_collections/utils/math/vector2.util.spec.ts +94 -94
  66. package/src/_collections/utils/math/vector2.util.ts +653 -653
  67. package/src/_collections/utils/object.util.spec.ts +646 -646
  68. package/src/_collections/utils/regex/password-regex.util.spec.ts +51 -51
  69. package/src/_collections/utils/regex/password-regex.util.ts +65 -65
  70. package/src/_collections/utils/regex/regex.util.spec.ts +42 -42
  71. package/src/_collections/utils/regex/regex.util.ts +6 -6
  72. package/src/_collections/utils/regex/username-regex.util.spec.ts +61 -61
  73. package/src/_collections/utils/regex/username-regex.util.ts +35 -35
  74. package/src/_collections/utils/round-list.util.spec.ts +79 -79
  75. package/src/_collections/utils/round-list.util.ts +162 -162
  76. package/src/_collections/utils/stack.util.spec.ts +372 -372
  77. package/src/_collections/utils/stack.util.ts +164 -164
  78. package/src/_collections/utils/string-case.util.spec.ts +441 -441
  79. package/src/_collections/utils/string-case.util.ts +362 -362
  80. package/src/_collections/utils/string.util.spec.ts +975 -975
  81. package/src/_collections/utils/string.util.ts +449 -449
  82. package/src/_collections/utils/time.util.spec.ts +50 -50
  83. package/src/_collections/utils/time.util.ts +481 -481
  84. package/src/_collections/utils/type-cloning-facility.util.spec.ts +51 -51
  85. package/src/_collections/utils/type-cloning-facility.util.ts +168 -168
  86. package/src/_collections/utils/utilities.util.spec.ts +201 -201
  87. package/src/_collections/utils/utilities.util.ts +68 -68
  88. package/src/_collections/utils/uuid.util.spec.ts +30 -30
  89. package/src/_collections/utils/uuid.util.ts +50 -50
  90. package/src/_enums/basic-property-type.enum.ts +20 -20
  91. package/src/_enums/data-model-type.enum.ts +29 -29
  92. package/src/_enums/environment-flag.enum.ts +28 -28
  93. package/src/_enums/error-level.enum.ts +43 -43
  94. package/src/_enums/http/http-call-type.enum.ts +43 -43
  95. package/src/_enums/http/http-event-type.enum.ts +40 -40
  96. package/src/_enums/http/http-response-type.enum.ts +18 -18
  97. package/src/_enums/log-style.enum.ts +44 -44
  98. package/src/_enums/server-connection-status.enum.ts +6 -6
  99. package/src/_enums/time/day-of-week.enum.ts +55 -55
  100. package/src/_enums/time/month.enum.ts +25 -25
  101. package/src/_enums/time/relative-date.enum.ts +24 -24
  102. package/src/_models/control-models/data-model-params.control-model.spec.ts +133 -133
  103. package/src/_models/control-models/data-model-params.control-model.ts +352 -352
  104. package/src/_models/control-models/data-property-params.control-model.spec.ts +93 -93
  105. package/src/_models/control-models/data-property-params.control-model.ts +210 -210
  106. package/src/_models/control-models/error.control-model.spec.ts +912 -912
  107. package/src/_models/control-models/error.control-model.ts +1274 -1274
  108. package/src/_models/control-models/http/http-error-response.control-model.spec.ts +116 -116
  109. package/src/_models/control-models/http/http-error-response.control-model.ts +52 -52
  110. package/src/_models/control-models/http/http-headers.control-model.spec.ts +25 -25
  111. package/src/_models/control-models/http/http-headers.control-model.ts +124 -124
  112. package/src/_models/control-models/http/http-response.model-base.spec.ts +46 -46
  113. package/src/_models/control-models/http/http-response.model-base.ts +57 -57
  114. package/src/_models/control-models/poll.control-model.spec.ts +63 -63
  115. package/src/_models/control-models/poll.control-model.ts +151 -151
  116. package/src/_models/control-models/range-value.control-model.spec.ts +187 -187
  117. package/src/_models/control-models/range-value.control-model.ts +289 -289
  118. package/src/_models/control-models/server-status.control-model.spec.ts +66 -66
  119. package/src/_models/control-models/server-status.control-model.ts +94 -94
  120. package/src/_models/control-models/service-endpoint-settings-base.control-model.spec.ts +145 -145
  121. package/src/_models/control-models/service-endpoint-settings-base.control-model.ts +186 -186
  122. package/src/_models/data-models/errors.data-model.spec.ts +71 -71
  123. package/src/_models/data-models/errors.data-model.ts +175 -175
  124. package/src/_models/data-models/metadata.data-model.spec.ts +184 -184
  125. package/src/_models/data-models/metadata.data-model.ts +153 -153
  126. package/src/_models/interfaces/box-bounds.interface.ts +7 -7
  127. package/src/_models/interfaces/environment/global-log-settings.interface.ts +86 -86
  128. package/src/_models/interfaces/environment/global-settings.interface.ts +47 -47
  129. package/src/_models/interfaces/error-defaults.interface.ts +11 -11
  130. package/src/_models/interfaces/paged.interface.ts +12 -12
  131. package/src/_models/interfaces/random-weight.interface.ts +7 -7
  132. package/src/_models/interfaces/route-settings.interface.ts +15 -15
  133. package/src/_models/interfaces/search-query.interface.ts +23 -23
  134. package/src/_models/interfaces/search-result.interface.ts +5 -5
  135. package/src/_models/interfaces/server-error-statistics.interface.ts +24 -24
  136. package/src/_models/interfaces/vector2.interface.ts +20 -20
  137. package/src/_models/types/db-filter.type.ts +110 -110
  138. package/src/_models/types/db-sort.type.ts +4 -4
  139. package/src/_models/types/ds-filter.type.ts +68 -68
  140. package/src/_models/types/ds-sort.type.ts +21 -21
  141. package/src/_modules/ai/_collections/ai-model-ref.util.ts +88 -88
  142. package/src/_modules/ai/_collections/ai-model-registry.util.spec.ts +37 -37
  143. package/src/_modules/ai/_collections/ai-model-registry.util.ts +30 -30
  144. package/src/_modules/ai/_enums/ai-message-role.enum.ts +7 -7
  145. package/src/_modules/ai/_enums/ai-model-type.enum.ts +7 -7
  146. package/src/_modules/ai/_enums/ai-provider.enum.ts +7 -7
  147. package/src/_modules/ai/_models/ai-call-settings.interface.ts +84 -84
  148. package/src/_modules/ai/_models/ai-embedding-request.interface.ts +20 -20
  149. package/src/_modules/ai/_models/ai-embedding-response.interface.ts +26 -26
  150. package/src/_modules/ai/_models/ai-llm-request.interface.ts +24 -24
  151. package/src/_modules/ai/_models/ai-llm-response.interface.ts +30 -30
  152. package/src/_modules/ai/_models/ai-message.interface.ts +12 -12
  153. package/src/_modules/ai/_models/ai-model-capabilities.interface.ts +35 -35
  154. package/src/_modules/ai/_models/ai-model-info.interface.ts +63 -63
  155. package/src/_modules/ai/_models/ai-model-settings-schema.interface.ts +52 -52
  156. package/src/_modules/ai/_models/ai-provider-capabilities.interface.ts +28 -28
  157. package/src/_modules/ai/_models/ai-settings.interface.ts +17 -17
  158. package/src/_modules/ai/_models/ai-tool-call.interface.ts +18 -18
  159. package/src/_modules/ai/_models/ai-tool-handler.type.ts +11 -11
  160. package/src/_modules/ai/_models/ai-tool-result.interface.ts +16 -16
  161. package/src/_modules/ai/_models/ai-tool.interface.ts +16 -16
  162. package/src/_modules/ai/_models/ai-user-provider-config.control-model.ts +29 -29
  163. package/src/_modules/ai/_modules/anthropic/_collections/aai-models.const.ts +135 -135
  164. package/src/_modules/ai/_modules/anthropic/_enums/aai-model.enum.ts +19 -19
  165. package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.spec.ts +28 -28
  166. package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.ts +23 -23
  167. package/src/_modules/ai/_modules/anthropic/_models/aai-client-options.interface.ts +10 -10
  168. package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.spec.ts +22 -22
  169. package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.ts +27 -27
  170. package/src/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.ts +20 -20
  171. package/src/_modules/ai/_modules/anthropic/index.ts +14 -14
  172. package/src/_modules/ai/_modules/document-ai/_models/dai-embedding-info.interface.ts +12 -12
  173. package/src/_modules/ai/_modules/document-ai/_models/dai-vector-search-params.interface.ts +22 -22
  174. package/src/_modules/ai/_modules/document-ai/index.ts +4 -4
  175. package/src/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.ts +40 -40
  176. package/src/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.ts +6 -6
  177. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.ts +19 -19
  178. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.ts +11 -11
  179. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.ts +24 -24
  180. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.ts +20 -20
  181. package/src/_modules/ai/_modules/fdp-ai/index.ts +11 -11
  182. package/src/_modules/ai/_modules/google-ai/_collections/gai-models.const.ts +161 -161
  183. package/src/_modules/ai/_modules/google-ai/_enums/gai-model.enum.ts +16 -16
  184. package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.spec.ts +28 -28
  185. package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.ts +21 -21
  186. package/src/_modules/ai/_modules/google-ai/_models/gai-client-options.interface.ts +8 -8
  187. package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.spec.ts +22 -22
  188. package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.ts +25 -25
  189. package/src/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.ts +20 -20
  190. package/src/_modules/ai/_modules/google-ai/index.ts +14 -14
  191. package/src/_modules/ai/_modules/local-ai/_collections/lai-models.const.ts +59 -59
  192. package/src/_modules/ai/_modules/local-ai/_enums/lai-model.enum.ts +6 -6
  193. package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.spec.ts +28 -28
  194. package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.ts +18 -18
  195. package/src/_modules/ai/_modules/local-ai/_models/lai-client-options.interface.ts +9 -9
  196. package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.spec.ts +22 -22
  197. package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.ts +23 -23
  198. package/src/_modules/ai/_modules/local-ai/index.ts +14 -14
  199. package/src/_modules/ai/_modules/open-ai/_collections/oai-embedding-model-dimensions.const.ts +7 -7
  200. package/src/_modules/ai/_modules/open-ai/_collections/oai-models.const.ts +404 -404
  201. package/src/_modules/ai/_modules/open-ai/_enums/oai-model.enum.ts +179 -179
  202. package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.spec.ts +28 -28
  203. package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.ts +21 -21
  204. package/src/_modules/ai/_modules/open-ai/_models/oai-client-options.interface.ts +81 -81
  205. package/src/_modules/ai/_modules/open-ai/_models/oai-embedding-info.interface.ts +13 -13
  206. package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.spec.ts +22 -22
  207. package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.ts +25 -25
  208. package/src/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.ts +21 -21
  209. package/src/_modules/ai/_modules/open-ai/index.ts +28 -28
  210. package/src/_modules/ai/index.ts +27 -27
  211. package/src/_modules/ci-tools/_enums/cit-ci-result-code.enum.ts +11 -11
  212. package/src/_modules/ci-tools/_enums/cit-ci-step-result-code.enum.ts +9 -9
  213. package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.spec.ts +58 -58
  214. package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.ts +77 -77
  215. package/src/_modules/ci-tools/_models/cit-ci-step-result.interface.ts +12 -12
  216. package/src/_modules/ci-tools/index.ts +8 -8
  217. package/src/_modules/crypto/_collections/crypto.util.simple.spec.ts +512 -512
  218. package/src/_modules/crypto/index.ts +13 -13
  219. package/src/_modules/custom-data/_collections/cud-module-settings.const.ts +21 -21
  220. package/src/_modules/custom-data/_models/cud.data-model.spec.ts +38 -38
  221. package/src/_modules/custom-data/_models/cud.data-model.ts +39 -39
  222. package/src/_modules/custom-data/index.ts +10 -10
  223. package/src/_modules/data-handler/_models/data-handler-settings.control-model.spec.ts +110 -110
  224. package/src/_modules/data-handler/_models/data-handler-settings.control-model.ts +110 -110
  225. package/src/_modules/data-handler/_models/data-handler.control-model.spec.ts +473 -473
  226. package/src/_modules/data-handler/_models/data-handler.control-model.ts +486 -486
  227. package/src/_modules/data-handler/_models/data-list-handler.control-model.spec.ts +263 -263
  228. package/src/_modules/data-handler/_models/data-list-handler.control-model.ts +252 -252
  229. package/src/_modules/data-handler/_models/data-search-handler.control-model.spec.ts +417 -417
  230. package/src/_modules/data-handler/_models/data-search-handler.control-model.ts +390 -390
  231. package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.spec.ts +374 -374
  232. package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.ts +274 -274
  233. package/src/_modules/data-handler/index.ts +6 -6
  234. package/src/_modules/location/_collections/assets/country-codes-ISO-3166.json +3239 -3239
  235. package/src/_modules/location/_collections/assets/country-divisions-ISO-3166-all-list.json +19035 -19035
  236. package/src/_modules/location/_collections/assets/country-divisions-ISO-3166.json +4993 -4993
  237. package/src/_modules/location/_collections/assets/country-phone-codes.json +1203 -1203
  238. package/src/_modules/location/_collections/assets/country-subdivisions/afghanistan.json +137 -137
  239. package/src/_modules/location/_collections/assets/country-subdivisions/albania.json +49 -49
  240. package/src/_modules/location/_collections/assets/country-subdivisions/algeria.json +193 -193
  241. package/src/_modules/location/_collections/assets/country-subdivisions/andorra.json +29 -29
  242. package/src/_modules/location/_collections/assets/country-subdivisions/angola.json +73 -73
  243. package/src/_modules/location/_collections/assets/country-subdivisions/antigua-and-barbuda.json +33 -33
  244. package/src/_modules/location/_collections/assets/country-subdivisions/argentina.json +97 -97
  245. package/src/_modules/location/_collections/assets/country-subdivisions/armenia.json +45 -45
  246. package/src/_modules/location/_collections/assets/country-subdivisions/australia.json +33 -33
  247. package/src/_modules/location/_collections/assets/country-subdivisions/austria.json +37 -37
  248. package/src/_modules/location/_collections/assets/country-subdivisions/azerbaijan.json +5 -5
  249. package/src/_modules/location/_collections/assets/country-subdivisions/bahamas.json +125 -125
  250. package/src/_modules/location/_collections/assets/country-subdivisions/bahrain.json +21 -21
  251. package/src/_modules/location/_collections/assets/country-subdivisions/bangladesh.json +29 -29
  252. package/src/_modules/location/_collections/assets/country-subdivisions/barbados.json +45 -45
  253. package/src/_modules/location/_collections/assets/country-subdivisions/belarus.json +29 -29
  254. package/src/_modules/location/_collections/assets/country-subdivisions/belgium.json +13 -13
  255. package/src/_modules/location/_collections/assets/country-subdivisions/belize.json +25 -25
  256. package/src/_modules/location/_collections/assets/country-subdivisions/benin.json +49 -49
  257. package/src/_modules/location/_collections/assets/country-subdivisions/bhutan.json +81 -81
  258. package/src/_modules/location/_collections/assets/country-subdivisions/bolivia.json +37 -37
  259. package/src/_modules/location/_collections/assets/country-subdivisions/bosnia-and-herzegovina.json +13 -13
  260. package/src/_modules/location/_collections/assets/country-subdivisions/botswana.json +65 -65
  261. package/src/_modules/location/_collections/assets/country-subdivisions/brazil.json +109 -109
  262. package/src/_modules/location/_collections/assets/country-subdivisions/brunei-darussalam.json +17 -17
  263. package/src/_modules/location/_collections/assets/country-subdivisions/bulgaria.json +113 -113
  264. package/src/_modules/location/_collections/assets/country-subdivisions/burkina-faso.json +53 -53
  265. package/src/_modules/location/_collections/assets/country-subdivisions/burundi.json +69 -69
  266. package/src/_modules/location/_collections/assets/country-subdivisions/cambodia.json +97 -97
  267. package/src/_modules/location/_collections/assets/country-subdivisions/cameroon.json +41 -41
  268. package/src/_modules/location/_collections/assets/country-subdivisions/canada.json +79 -79
  269. package/src/_modules/location/_collections/assets/country-subdivisions/cape-verde.json +9 -9
  270. package/src/_modules/location/_collections/assets/country-subdivisions/central-african-republic.json +69 -69
  271. package/src/_modules/location/_collections/assets/country-subdivisions/chad.json +89 -89
  272. package/src/_modules/location/_collections/assets/country-subdivisions/chile.json +61 -61
  273. package/src/_modules/location/_collections/assets/country-subdivisions/china.json +205 -205
  274. package/src/_modules/location/_collections/assets/country-subdivisions/colombia.json +133 -133
  275. package/src/_modules/location/_collections/assets/country-subdivisions/comoros.json +13 -13
  276. package/src/_modules/location/_collections/assets/country-subdivisions/congo-the-democratic-republic-of-the.json +45 -45
  277. package/src/_modules/location/_collections/assets/country-subdivisions/congo.json +49 -49
  278. package/src/_modules/location/_collections/assets/country-subdivisions/costa-rica.json +29 -29
  279. package/src/_modules/location/_collections/assets/country-subdivisions/cote-d-ivoire-republic-of.json +77 -77
  280. package/src/_modules/location/_collections/assets/country-subdivisions/croatia.json +85 -85
  281. package/src/_modules/location/_collections/assets/country-subdivisions/cuba.json +65 -65
  282. package/src/_modules/location/_collections/assets/country-subdivisions/cyprus.json +25 -25
  283. package/src/_modules/location/_collections/assets/country-subdivisions/czech-republic.json +57 -57
  284. package/src/_modules/location/_collections/assets/country-subdivisions/denmark.json +21 -21
  285. package/src/_modules/location/_collections/assets/country-subdivisions/djibouti.json +25 -25
  286. package/src/_modules/location/_collections/assets/country-subdivisions/dominica.json +41 -41
  287. package/src/_modules/location/_collections/assets/country-subdivisions/dominican-republic.json +41 -41
  288. package/src/_modules/location/_collections/assets/country-subdivisions/ecuador.json +97 -97
  289. package/src/_modules/location/_collections/assets/country-subdivisions/egypt.json +117 -117
  290. package/src/_modules/location/_collections/assets/country-subdivisions/el-salvador.json +57 -57
  291. package/src/_modules/location/_collections/assets/country-subdivisions/equatorial-guinea.json +9 -9
  292. package/src/_modules/location/_collections/assets/country-subdivisions/eritrea.json +25 -25
  293. package/src/_modules/location/_collections/assets/country-subdivisions/estonia.json +61 -61
  294. package/src/_modules/location/_collections/assets/country-subdivisions/ethiopia.json +45 -45
  295. package/src/_modules/location/_collections/assets/country-subdivisions/fiji.json +21 -21
  296. package/src/_modules/location/_collections/assets/country-subdivisions/finland.json +77 -77
  297. package/src/_modules/location/_collections/assets/country-subdivisions/france.json +133 -133
  298. package/src/_modules/location/_collections/assets/country-subdivisions/gabon.json +37 -37
  299. package/src/_modules/location/_collections/assets/country-subdivisions/gambia.json +25 -25
  300. package/src/_modules/location/_collections/assets/country-subdivisions/georgia.json +49 -49
  301. package/src/_modules/location/_collections/assets/country-subdivisions/germany.json +65 -65
  302. package/src/_modules/location/_collections/assets/country-subdivisions/ghana.json +41 -41
  303. package/src/_modules/location/_collections/assets/country-subdivisions/greece.json +53 -53
  304. package/src/_modules/location/_collections/assets/country-subdivisions/greenland.json +17 -17
  305. package/src/_modules/location/_collections/assets/country-subdivisions/grenada.json +29 -29
  306. package/src/_modules/location/_collections/assets/country-subdivisions/guatemala.json +89 -89
  307. package/src/_modules/location/_collections/assets/country-subdivisions/guinea-bissau.json +13 -13
  308. package/src/_modules/location/_collections/assets/country-subdivisions/guinea.json +33 -33
  309. package/src/_modules/location/_collections/assets/country-subdivisions/guyana.json +41 -41
  310. package/src/_modules/location/_collections/assets/country-subdivisions/haiti.json +41 -41
  311. package/src/_modules/location/_collections/assets/country-subdivisions/honduras.json +73 -73
  312. package/src/_modules/location/_collections/assets/country-subdivisions/hong-kong.json +4 -4
  313. package/src/_modules/location/_collections/assets/country-subdivisions/hungary.json +173 -173
  314. package/src/_modules/location/_collections/assets/country-subdivisions/iceland.json +37 -37
  315. package/src/_modules/location/_collections/assets/country-subdivisions/india.json +181 -181
  316. package/src/_modules/location/_collections/assets/country-subdivisions/indonesia.json +29 -29
  317. package/src/_modules/location/_collections/assets/country-subdivisions/iran-islamic-republic-of.json +125 -125
  318. package/src/_modules/location/_collections/assets/country-subdivisions/iraq.json +73 -73
  319. package/src/_modules/location/_collections/assets/country-subdivisions/ireland.json +17 -17
  320. package/src/_modules/location/_collections/assets/country-subdivisions/israel.json +25 -25
  321. package/src/_modules/location/_collections/assets/country-subdivisions/italy.json +81 -81
  322. package/src/_modules/location/_collections/assets/country-subdivisions/jamaica.json +57 -57
  323. package/src/_modules/location/_collections/assets/country-subdivisions/japan.json +189 -189
  324. package/src/_modules/location/_collections/assets/country-subdivisions/jordan.json +49 -49
  325. package/src/_modules/location/_collections/assets/country-subdivisions/kazakhstan.json +65 -65
  326. package/src/_modules/location/_collections/assets/country-subdivisions/kenya.json +33 -33
  327. package/src/_modules/location/_collections/assets/country-subdivisions/kiribati.json +13 -13
  328. package/src/_modules/location/_collections/assets/country-subdivisions/korea-democratic-people-s-republic-of.json +45 -45
  329. package/src/_modules/location/_collections/assets/country-subdivisions/korea-republic-of.json +69 -69
  330. package/src/_modules/location/_collections/assets/country-subdivisions/kuwait.json +25 -25
  331. package/src/_modules/location/_collections/assets/country-subdivisions/kyrgyzstan.json +33 -33
  332. package/src/_modules/location/_collections/assets/country-subdivisions/lao-people-s-democratic-republic.json +73 -73
  333. package/src/_modules/location/_collections/assets/country-subdivisions/latvia.json +477 -477
  334. package/src/_modules/location/_collections/assets/country-subdivisions/lebanon.json +33 -33
  335. package/src/_modules/location/_collections/assets/country-subdivisions/lesotho.json +41 -41
  336. package/src/_modules/location/_collections/assets/country-subdivisions/liberia.json +61 -61
  337. package/src/_modules/location/_collections/assets/country-subdivisions/libyan-arab-jamahiriya.json +89 -89
  338. package/src/_modules/location/_collections/assets/country-subdivisions/liechtenstein.json +45 -45
  339. package/src/_modules/location/_collections/assets/country-subdivisions/lithuania.json +41 -41
  340. package/src/_modules/location/_collections/assets/country-subdivisions/luxembourg.json +13 -13
  341. package/src/_modules/location/_collections/assets/country-subdivisions/macedonia-the-former-yugoslav-republic-of.json +337 -337
  342. package/src/_modules/location/_collections/assets/country-subdivisions/madagascar.json +25 -25
  343. package/src/_modules/location/_collections/assets/country-subdivisions/malawi.json +13 -13
  344. package/src/_modules/location/_collections/assets/country-subdivisions/malaysia.json +81 -81
  345. package/src/_modules/location/_collections/assets/country-subdivisions/maldives.json +33 -33
  346. package/src/_modules/location/_collections/assets/country-subdivisions/mali.json +37 -37
  347. package/src/_modules/location/_collections/assets/country-subdivisions/malta.json +273 -273
  348. package/src/_modules/location/_collections/assets/country-subdivisions/marshall-islands.json +9 -9
  349. package/src/_modules/location/_collections/assets/country-subdivisions/mauritania.json +53 -53
  350. package/src/_modules/location/_collections/assets/country-subdivisions/mauritius.json +69 -69
  351. package/src/_modules/location/_collections/assets/country-subdivisions/mexico.json +161 -161
  352. package/src/_modules/location/_collections/assets/country-subdivisions/micronesia-federated-states-of.json +17 -17
  353. package/src/_modules/location/_collections/assets/country-subdivisions/moldova-republic-of.json +149 -149
  354. package/src/_modules/location/_collections/assets/country-subdivisions/monaco.json +69 -69
  355. package/src/_modules/location/_collections/assets/country-subdivisions/mongolia.json +89 -89
  356. package/src/_modules/location/_collections/assets/country-subdivisions/montenegro.json +93 -93
  357. package/src/_modules/location/_collections/assets/country-subdivisions/morocco.json +65 -65
  358. package/src/_modules/location/_collections/assets/country-subdivisions/mozambique.json +45 -45
  359. package/src/_modules/location/_collections/assets/country-subdivisions/myanmar.json +57 -57
  360. package/src/_modules/location/_collections/assets/country-subdivisions/namibia.json +57 -57
  361. package/src/_modules/location/_collections/assets/country-subdivisions/nauru.json +57 -57
  362. package/src/_modules/location/_collections/assets/country-subdivisions/nepal.json +21 -21
  363. package/src/_modules/location/_collections/assets/country-subdivisions/netherlands.json +91 -91
  364. package/src/_modules/location/_collections/assets/country-subdivisions/new-zealand.json +111 -111
  365. package/src/_modules/location/_collections/assets/country-subdivisions/nicaragua.json +69 -69
  366. package/src/_modules/location/_collections/assets/country-subdivisions/niger.json +33 -33
  367. package/src/_modules/location/_collections/assets/country-subdivisions/nigeria.json +149 -149
  368. package/src/_modules/location/_collections/assets/country-subdivisions/norway.json +85 -85
  369. package/src/_modules/location/_collections/assets/country-subdivisions/oman.json +37 -37
  370. package/src/_modules/location/_collections/assets/country-subdivisions/pakistan.json +33 -33
  371. package/src/_modules/location/_collections/assets/country-subdivisions/palau.json +65 -65
  372. package/src/_modules/location/_collections/assets/country-subdivisions/palestinian-territory-occupied.json +65 -65
  373. package/src/_modules/location/_collections/assets/country-subdivisions/panama.json +53 -53
  374. package/src/_modules/location/_collections/assets/country-subdivisions/papua-new-guinea.json +81 -81
  375. package/src/_modules/location/_collections/assets/country-subdivisions/paraguay.json +73 -73
  376. package/src/_modules/location/_collections/assets/country-subdivisions/peru.json +105 -105
  377. package/src/_modules/location/_collections/assets/country-subdivisions/philippines.json +69 -69
  378. package/src/_modules/location/_collections/assets/country-subdivisions/poland.json +65 -65
  379. package/src/_modules/location/_collections/assets/country-subdivisions/portugal.json +81 -81
  380. package/src/_modules/location/_collections/assets/country-subdivisions/qatar.json +29 -29
  381. package/src/_modules/location/_collections/assets/country-subdivisions/romania.json +169 -169
  382. package/src/_modules/location/_collections/assets/country-subdivisions/russian-federation.json +499 -499
  383. package/src/_modules/location/_collections/assets/country-subdivisions/rwanda.json +21 -21
  384. package/src/_modules/location/_collections/assets/country-subdivisions/saint-helena-ascension-and-tristan-da-cunha.json +13 -13
  385. package/src/_modules/location/_collections/assets/country-subdivisions/saint-kitts-and-nevis.json +9 -9
  386. package/src/_modules/location/_collections/assets/country-subdivisions/saint-lucia.json +45 -45
  387. package/src/_modules/location/_collections/assets/country-subdivisions/saint-vincent-and-the-grenadines.json +25 -25
  388. package/src/_modules/location/_collections/assets/country-subdivisions/samoa.json +45 -45
  389. package/src/_modules/location/_collections/assets/country-subdivisions/san-marino.json +37 -37
  390. package/src/_modules/location/_collections/assets/country-subdivisions/sao-tome-and-principe.json +9 -9
  391. package/src/_modules/location/_collections/assets/country-subdivisions/saudi-arabia.json +53 -53
  392. package/src/_modules/location/_collections/assets/country-subdivisions/senegal.json +57 -57
  393. package/src/_modules/location/_collections/assets/country-subdivisions/serbia.json +9 -9
  394. package/src/_modules/location/_collections/assets/country-subdivisions/seychelles.json +101 -101
  395. package/src/_modules/location/_collections/assets/country-subdivisions/sierra-leone.json +17 -17
  396. package/src/_modules/location/_collections/assets/country-subdivisions/singapore.json +21 -21
  397. package/src/_modules/location/_collections/assets/country-subdivisions/slovakia.json +33 -33
  398. package/src/_modules/location/_collections/assets/country-subdivisions/slovenia.json +841 -841
  399. package/src/_modules/location/_collections/assets/country-subdivisions/solomon-islands.json +41 -41
  400. package/src/_modules/location/_collections/assets/country-subdivisions/somalia.json +73 -73
  401. package/src/_modules/location/_collections/assets/country-subdivisions/south-africa.json +37 -37
  402. package/src/_modules/location/_collections/assets/country-subdivisions/south-sudan.json +41 -41
  403. package/src/_modules/location/_collections/assets/country-subdivisions/spain.json +346 -346
  404. package/src/_modules/location/_collections/assets/country-subdivisions/sri-lanka.json +37 -37
  405. package/src/_modules/location/_collections/assets/country-subdivisions/sudan.json +69 -69
  406. package/src/_modules/location/_collections/assets/country-subdivisions/suriname.json +41 -41
  407. package/src/_modules/location/_collections/assets/country-subdivisions/swaziland.json +17 -17
  408. package/src/_modules/location/_collections/assets/country-subdivisions/sweden.json +85 -85
  409. package/src/_modules/location/_collections/assets/country-subdivisions/switzerland.json +105 -105
  410. package/src/_modules/location/_collections/assets/country-subdivisions/syrian-arab-republic.json +57 -57
  411. package/src/_modules/location/_collections/assets/country-subdivisions/taiwan-province-of-china.json +93 -93
  412. package/src/_modules/location/_collections/assets/country-subdivisions/tajikistan.json +17 -17
  413. package/src/_modules/location/_collections/assets/country-subdivisions/tanzania-united-republic-of.json +105 -105
  414. package/src/_modules/location/_collections/assets/country-subdivisions/thailand.json +313 -313
  415. package/src/_modules/location/_collections/assets/country-subdivisions/timor-leste.json +53 -53
  416. package/src/_modules/location/_collections/assets/country-subdivisions/togo.json +21 -21
  417. package/src/_modules/location/_collections/assets/country-subdivisions/tonga.json +21 -21
  418. package/src/_modules/location/_collections/assets/country-subdivisions/trinidad-and-tobago.json +65 -65
  419. package/src/_modules/location/_collections/assets/country-subdivisions/tunisia.json +97 -97
  420. package/src/_modules/location/_collections/assets/country-subdivisions/turkey.json +325 -325
  421. package/src/_modules/location/_collections/assets/country-subdivisions/turkmenistan.json +25 -25
  422. package/src/_modules/location/_collections/assets/country-subdivisions/tuvalu.json +33 -33
  423. package/src/_modules/location/_collections/assets/country-subdivisions/uganda.json +17 -17
  424. package/src/_modules/location/_collections/assets/country-subdivisions/ukraine.json +109 -109
  425. package/src/_modules/location/_collections/assets/country-subdivisions/united-arab-emirates.json +29 -29
  426. package/src/_modules/location/_collections/assets/country-subdivisions/united-kingdom.json +1196 -1196
  427. package/src/_modules/location/_collections/assets/country-subdivisions/united-states-minor-outlying-islands.json +37 -37
  428. package/src/_modules/location/_collections/assets/country-subdivisions/united-states.json +286 -286
  429. package/src/_modules/location/_collections/assets/country-subdivisions/uruguay.json +77 -77
  430. package/src/_modules/location/_collections/assets/country-subdivisions/uzbekistan.json +57 -57
  431. package/src/_modules/location/_collections/assets/country-subdivisions/vanuatu.json +25 -25
  432. package/src/_modules/location/_collections/assets/country-subdivisions/venezuela.json +101 -101
  433. package/src/_modules/location/_collections/assets/country-subdivisions/viet-nam.json +257 -257
  434. package/src/_modules/location/_collections/assets/country-subdivisions/yemen.json +85 -85
  435. package/src/_modules/location/_collections/assets/country-subdivisions/zambia.json +37 -37
  436. package/src/_modules/location/_collections/assets/country-subdivisions/zimbabwe.json +41 -41
  437. package/src/_modules/location/_collections/loc-country-divisions.const.ts +10 -10
  438. package/src/_modules/location/_collections/loc-country-isos.const.ts +8 -8
  439. package/src/_modules/location/_collections/loc-regions.util.spec.ts +61 -61
  440. package/src/_modules/location/_collections/loc-regions.util.ts +137 -137
  441. package/src/_modules/location/_collections/loc.util.spec.ts +52 -52
  442. package/src/_modules/location/_collections/loc.util.ts +74 -74
  443. package/src/_modules/location/_enums/loc-region.enum.ts +14 -14
  444. package/src/_modules/location/_enums/loc-sub-region.enum.ts +31 -31
  445. package/src/_modules/location/_enums/loc-subdivision-region-type.enum.ts +47 -47
  446. package/src/_modules/location/_models/loc-coordinates.interface.ts +7 -7
  447. package/src/_modules/location/_models/loc-country-division.interface.ts +8 -8
  448. package/src/_modules/location/_models/loc-country-iso.interface.ts +23 -23
  449. package/src/_modules/location/_models/loc-country-phone-code.interface.ts +9 -9
  450. package/src/_modules/location/_models/loc-division-collection.interface.ts +12 -12
  451. package/src/_modules/location/_models/loc-division-region-data.interface.ts +9 -9
  452. package/src/_modules/location/_models/loc-geo-ip-location.interface.ts +27 -27
  453. package/src/_modules/location/index.ts +22 -22
  454. package/src/_modules/messaging/README.md +279 -279
  455. package/src/_modules/messaging/_collections/msg-module-settings.const.ts +46 -46
  456. package/src/_modules/messaging/_enums/msg-attachment-type.enum.ts +26 -26
  457. package/src/_modules/messaging/_enums/msg-delivery-status.enum.ts +17 -17
  458. package/src/_modules/messaging/_enums/msg-event-key.enum.ts +31 -31
  459. package/src/_modules/messaging/_enums/msg-participant-role.enum.ts +20 -20
  460. package/src/_modules/messaging/_enums/msg-provider-type.enum.ts +7 -7
  461. package/src/_modules/messaging/_enums/msg-type.enum.ts +23 -23
  462. package/src/_modules/messaging/_models/msg-attachment.interface.ts +46 -46
  463. package/src/_modules/messaging/_models/msg-conversation.data-model.spec.ts +69 -69
  464. package/src/_modules/messaging/_models/msg-conversation.data-model.ts +96 -96
  465. package/src/_modules/messaging/_models/msg-mention.interface.ts +29 -29
  466. package/src/_modules/messaging/_models/msg-message.data-model.spec.ts +79 -79
  467. package/src/_modules/messaging/_models/msg-message.data-model.ts +127 -127
  468. package/src/_modules/messaging/_models/msg-participant.interface.ts +46 -46
  469. package/src/_modules/messaging/_models/msg-reaction.interface.ts +20 -20
  470. package/src/_modules/messaging/_models/msg-thread-info.interface.ts +35 -35
  471. package/src/_modules/messaging/_modules/agent/_enums/agt-process-step-type.enum.ts +35 -35
  472. package/src/_modules/messaging/_modules/agent/_enums/agt-tool-status.enum.ts +23 -23
  473. package/src/_modules/messaging/_modules/agent/_models/agt-process-step.interface.ts +55 -55
  474. package/src/_modules/messaging/_modules/agent/_models/agt-reasoning-info.interface.ts +26 -26
  475. package/src/_modules/messaging/_modules/agent/_models/agt-tool-usage.interface.ts +37 -37
  476. package/src/_modules/messaging/_modules/agent/index.ts +8 -8
  477. package/src/_modules/messaging/index.ts +28 -28
  478. package/src/_modules/pipe/_collections/pip-transforms.const.ts +42 -42
  479. package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.spec.ts +47 -47
  480. package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.ts +41 -41
  481. package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.spec.ts +39 -39
  482. package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.ts +30 -30
  483. package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.spec.ts +41 -41
  484. package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.ts +36 -36
  485. package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.spec.ts +62 -62
  486. package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.ts +17 -17
  487. package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.spec.ts +34 -34
  488. package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.ts +25 -25
  489. package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.spec.ts +67 -67
  490. package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.ts +226 -226
  491. package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.spec.ts +28 -28
  492. package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.ts +21 -21
  493. package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.spec.ts +59 -59
  494. package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.ts +106 -106
  495. package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.spec.ts +31 -31
  496. package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.ts +35 -35
  497. package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.spec.ts +44 -44
  498. package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.ts +23 -23
  499. package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.spec.ts +21 -21
  500. package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.ts +33 -33
  501. package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.spec.ts +62 -62
  502. package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.ts +80 -80
  503. package/src/_modules/pipe/_enums/pip-range-pipe-setting.enum.ts +15 -15
  504. package/src/_modules/pipe/_enums/pip.enum.ts +65 -65
  505. package/src/_modules/pipe/_models/pip-multi-pipe-settings.type.ts +8 -8
  506. package/src/_modules/pipe/_models/pip-transforms.interface.ts +30 -30
  507. package/src/_modules/pipe/index.ts +30 -30
  508. package/src/_modules/socket/_enums/sck-event-key.enum.ts +21 -21
  509. package/src/_modules/socket/_models/sck-client-params.control-model.spec.ts +67 -67
  510. package/src/_modules/socket/_models/sck-client-params.control-model.ts +50 -50
  511. package/src/_modules/socket/_models/sck-socket-event.control-model.spec.ts +66 -66
  512. package/src/_modules/socket/_models/sck-socket-event.control-model.ts +172 -172
  513. package/src/_modules/socket/_services/sck-client.service-base.spec.ts +99 -99
  514. package/src/_modules/socket/_services/sck-client.service-base.ts +353 -353
  515. package/src/_modules/socket/index.ts +14 -14
  516. package/src/_modules/test/_collections/tst-module-settings.const.ts +67 -67
  517. package/src/_modules/test/index.ts +5 -5
  518. package/src/_modules/usage/_collections/usg-module-settings.const.ts +33 -33
  519. package/src/_modules/usage/_models/usg-action.control-model.spec.ts +27 -27
  520. package/src/_modules/usage/_models/usg-action.control-model.ts +28 -28
  521. package/src/_modules/usage/_models/usg-daily-usage-data.control-model.spec.ts +36 -36
  522. package/src/_modules/usage/_models/usg-daily-usage-data.control-model.ts +35 -35
  523. package/src/_modules/usage/_models/usg-data.control-model.spec.ts +41 -41
  524. package/src/_modules/usage/_models/usg-data.control-model.ts +35 -35
  525. package/src/_modules/usage/_models/usg-session.data-model.spec.ts +97 -97
  526. package/src/_modules/usage/_models/usg-session.data-model.ts +72 -72
  527. package/src/_modules/usage/index.ts +11 -11
  528. package/src/index.ts +104 -104
  529. package/tsconfig.app.json +12 -12
  530. package/tsconfig.json +31 -31
  531. package/tsconfig.test.json +16 -16
  532. package/tslint.json +153 -153
@@ -1,373 +1,373 @@
1
- import { DyFM_getConstructionStackLocation, DyFM_getLocalStackLocation } from './stack.util';
2
- import { DyFM_Log } from './log.util';
3
-
4
- describe('| Stack Utility Functions', () => {
5
-
6
- // Mock the DyFM_Log.warn method
7
- let warnSpy: jasmine.Spy;
8
-
9
- beforeEach(() => {
10
- warnSpy = spyOn(DyFM_Log, 'warn');
11
- });
12
-
13
- afterEach(() => {
14
- warnSpy.calls.reset();
15
- });
16
-
17
- describe('| DyFM_getConstructionStackLocation', () => {
18
-
19
- it('| should return stack location for constructor call with default level', () => {
20
- // Create a test class to simulate constructor call
21
- class TestClass {
22
- constructor() {
23
- this.stackLocation = DyFM_getConstructionStackLocation();
24
- }
25
- stackLocation: string;
26
- }
27
-
28
- const testInstance = new TestClass();
29
-
30
- // The result should contain the test file path
31
- expect(testInstance.stackLocation).toContain('stack.util.spec.js');
32
- // TestClass might not appear in the stack due to compilation
33
- expect(testInstance.stackLocation).toBeTruthy();
34
- });
35
-
36
- it('| should return stack location for constructor call with level 1', () => {
37
- class TestClass {
38
- constructor() {
39
- this.stackLocation = DyFM_getConstructionStackLocation(1);
40
- }
41
- stackLocation: string;
42
- }
43
-
44
- const testInstance = new TestClass();
45
-
46
- // The result should be a valid stack location
47
- expect(testInstance.stackLocation).toBeTruthy();
48
- expect(typeof testInstance.stackLocation).toBe('string');
49
- });
50
-
51
- it('| should throw error for invalid level parameter', () => {
52
- expect(() => {
53
- DyFM_getConstructionStackLocation(NaN);
54
- }).toThrowError('level must be a number');
55
- });
56
-
57
- it('| should handle level parameter correctly', () => {
58
- class TestClass {
59
- constructor() {
60
- this.stackLocation = DyFM_getConstructionStackLocation(0);
61
- }
62
- stackLocation: string;
63
- }
64
-
65
- const testInstance = new TestClass();
66
- expect(testInstance.stackLocation).toBeTruthy();
67
- });
68
-
69
- it('| should filter out node_modules and node:internal from stack', () => {
70
- class TestClass {
71
- constructor() {
72
- this.stackLocation = DyFM_getConstructionStackLocation();
73
- }
74
- stackLocation: string;
75
- }
76
-
77
- const testInstance = new TestClass();
78
-
79
- // Should not contain node_modules or node:internal
80
- expect(testInstance.stackLocation).not.toContain('node_modules');
81
- expect(testInstance.stackLocation).not.toContain('node:internal');
82
- });
83
-
84
- it('| should filter out getStackLocation and new keywords', () => {
85
- class TestClass {
86
- constructor() {
87
- this.stackLocation = DyFM_getConstructionStackLocation();
88
- }
89
- stackLocation: string;
90
- }
91
-
92
- const testInstance = new TestClass();
93
-
94
- // The result should not contain filtered keywords
95
- expect(testInstance.stackLocation).toBeTruthy();
96
- });
97
-
98
- it('| should return empty string when no valid stack line found', () => {
99
- // Mock Error.stack to return problematic stack
100
- const originalError = Error;
101
- const mockStack = 'Error: Test\n at Object.<anonymous> (node_modules/test.js:1:1)\n at Module._compile (node:internal/modules/cjs/loader.js:1:1)';
102
-
103
- const mockError = function() {
104
- return { stack: mockStack };
105
- };
106
- spyOn(global, 'Error').and.returnValue(mockError as any);
107
-
108
- const result = DyFM_getConstructionStackLocation();
109
-
110
- expect(result).toBe('');
111
- expect(warnSpy).toHaveBeenCalled();
112
-
113
- // Restore original Error
114
- (global as any).Error = originalError;
115
- });
116
-
117
- it('| should handle undefined stack gracefully', () => {
118
- const originalError = Error;
119
- const mockError = function() {
120
- return { stack: undefined };
121
- };
122
- spyOn(global, 'Error').and.returnValue(mockError as any);
123
-
124
- const result = DyFM_getConstructionStackLocation();
125
-
126
- expect(result).toBe('');
127
- expect(warnSpy).toHaveBeenCalled();
128
-
129
- (global as any).Error = originalError;
130
- });
131
-
132
- it('| should handle null stack gracefully', () => {
133
- const originalError = Error;
134
- const mockError = function() {
135
- return { stack: null };
136
- };
137
- spyOn(global, 'Error').and.returnValue(mockError as any);
138
-
139
- const result = DyFM_getConstructionStackLocation();
140
-
141
- expect(result).toBe('');
142
- expect(warnSpy).toHaveBeenCalled();
143
-
144
- (global as any).Error = originalError;
145
- });
146
-
147
- it('| should parse stack line with parentheses correctly', () => {
148
- // This test verifies that the function can handle stack traces with parentheses
149
- // The actual parsing is tested through the real stack trace in other tests
150
- const result = DyFM_getConstructionStackLocation();
151
-
152
- // The function should return a valid stack location
153
- expect(result).toBeTruthy();
154
- expect(typeof result).toBe('string');
155
- });
156
-
157
- it('| should handle stack line without parentheses', () => {
158
- // This test verifies that the function can handle stack traces without parentheses
159
- // The actual parsing is tested through the real stack trace in other tests
160
- const result = DyFM_getConstructionStackLocation();
161
-
162
- // The function should return a valid stack location
163
- expect(result).toBeTruthy();
164
- expect(typeof result).toBe('string');
165
- });
166
-
167
- it('| should handle multiple levels correctly', () => {
168
- class TestClass {
169
- constructor() {
170
- this.stackLocation = DyFM_getConstructionStackLocation(2);
171
- }
172
- stackLocation: string;
173
- }
174
-
175
- const testInstance = new TestClass();
176
- expect(testInstance.stackLocation).toBeTruthy();
177
- });
178
-
179
- });
180
-
181
- describe('| DyFM_getLocalStackLocation', () => {
182
-
183
- it('| should return stack location with minimal filtering', () => {
184
- class TestClass {
185
- constructor() {
186
- this.stackLocation = DyFM_getLocalStackLocation();
187
- }
188
- stackLocation: string;
189
- }
190
-
191
- const testInstance = new TestClass();
192
-
193
- expect(testInstance.stackLocation).toContain('stack.util.spec.js');
194
- // TestClass might not appear in the stack due to compilation
195
- expect(testInstance.stackLocation).toBeTruthy();
196
- });
197
-
198
- it('| should return stack location with level parameter', () => {
199
- class TestClass {
200
- constructor() {
201
- this.stackLocation = DyFM_getLocalStackLocation(1);
202
- }
203
- stackLocation: string;
204
- }
205
-
206
- const testInstance = new TestClass();
207
-
208
- expect(testInstance.stackLocation).toContain('stack.util.spec.js');
209
- });
210
-
211
- it('| should throw error for invalid level parameter', () => {
212
- expect(() => {
213
- DyFM_getLocalStackLocation(NaN);
214
- }).toThrowError('level must be a number');
215
- });
216
-
217
- it('| should filter out node_modules and node:internal from stack', () => {
218
- class TestClass {
219
- constructor() {
220
- this.stackLocation = DyFM_getLocalStackLocation();
221
- }
222
- stackLocation: string;
223
- }
224
-
225
- const testInstance = new TestClass();
226
-
227
- // Should not contain node_modules or node:internal
228
- expect(testInstance.stackLocation).not.toContain('node_modules');
229
- expect(testInstance.stackLocation).not.toContain('node:internal');
230
- });
231
-
232
- it('| should return empty string when no valid stack line found', () => {
233
- const originalError = Error;
234
- const mockStack = 'Error: Test\n at Object.<anonymous> (node_modules/test.js:1:1)\n at Module._compile (node:internal/modules/cjs/loader.js:1:1)';
235
-
236
- const mockError = function() {
237
- return { stack: mockStack };
238
- };
239
- spyOn(global, 'Error').and.returnValue(mockError as any);
240
-
241
- const result = DyFM_getLocalStackLocation();
242
-
243
- expect(result).toBe('');
244
- expect(warnSpy).toHaveBeenCalled();
245
-
246
- (global as any).Error = originalError;
247
- });
248
-
249
- it('| should handle undefined stack gracefully', () => {
250
- const originalError = Error;
251
- const mockError = function() {
252
- return { stack: undefined };
253
- };
254
- spyOn(global, 'Error').and.returnValue(mockError as any);
255
-
256
- const result = DyFM_getLocalStackLocation();
257
-
258
- expect(result).toBe('');
259
- expect(warnSpy).toHaveBeenCalled();
260
-
261
- (global as any).Error = originalError;
262
- });
263
-
264
- it('| should handle null stack gracefully', () => {
265
- const originalError = Error;
266
- const mockError = function() {
267
- return { stack: null };
268
- };
269
- spyOn(global, 'Error').and.returnValue(mockError as any);
270
-
271
- const result = DyFM_getLocalStackLocation();
272
-
273
- expect(result).toBe('');
274
- expect(warnSpy).toHaveBeenCalled();
275
-
276
- (global as any).Error = originalError;
277
- });
278
-
279
- it('| should parse stack line with parentheses correctly', () => {
280
- // This test verifies that the function can handle stack traces with parentheses
281
- // The actual parsing is tested through the real stack trace in other tests
282
- const result = DyFM_getLocalStackLocation();
283
-
284
- // The function should return a valid stack location
285
- expect(result).toBeTruthy();
286
- expect(typeof result).toBe('string');
287
- });
288
-
289
- it('| should handle stack line without parentheses', () => {
290
- // This test verifies that the function can handle stack traces without parentheses
291
- // The actual parsing is tested through the real stack trace in other tests
292
- const result = DyFM_getLocalStackLocation();
293
-
294
- // The function should return a valid stack location
295
- expect(result).toBeTruthy();
296
- expect(typeof result).toBe('string');
297
- });
298
-
299
- it('| should handle multiple levels correctly', () => {
300
- class TestClass {
301
- constructor() {
302
- this.stackLocation = DyFM_getLocalStackLocation(2);
303
- }
304
- stackLocation: string;
305
- }
306
-
307
- const testInstance = new TestClass();
308
- expect(testInstance.stackLocation).toBeTruthy();
309
- });
310
-
311
- it('| should not filter out constructor-related calls like getConstructionStackLocation does', () => {
312
- class TestClass {
313
- constructor() {
314
- this.stackLocation = DyFM_getLocalStackLocation();
315
- }
316
- stackLocation: string;
317
- }
318
-
319
- const testInstance = new TestClass();
320
-
321
- // Should still return a valid result even though it might contain constructor-related calls
322
- expect(testInstance.stackLocation).toBeTruthy();
323
- });
324
-
325
- });
326
-
327
- describe('| Function Comparison', () => {
328
-
329
- it('| should have different filtering behavior between the two functions', () => {
330
- class TestClass {
331
- constructor() {
332
- this.constructionStack = DyFM_getConstructionStackLocation();
333
- this.localStack = DyFM_getLocalStackLocation();
334
- }
335
- constructionStack: string;
336
- localStack: string;
337
- }
338
-
339
- const testInstance = new TestClass();
340
-
341
- // Both should return valid results
342
- expect(testInstance.constructionStack).toBeTruthy();
343
- expect(testInstance.localStack).toBeTruthy();
344
-
345
- // They might be different due to different filtering logic
346
- // This test ensures both functions work correctly
347
- expect(typeof testInstance.constructionStack).toBe('string');
348
- expect(typeof testInstance.localStack).toBe('string');
349
- });
350
-
351
- it('| should handle edge cases consistently', () => {
352
- const originalError = Error;
353
- const mockStack = 'Error: Test\n at Object.<anonymous> (node_modules/test.js:1:1)';
354
-
355
- const mockError = function() {
356
- return { stack: mockStack };
357
- };
358
- spyOn(global, 'Error').and.returnValue(mockError as any);
359
-
360
- const constructionResult = DyFM_getConstructionStackLocation();
361
- const localResult = DyFM_getLocalStackLocation();
362
-
363
- // Both should return empty string for this problematic stack
364
- expect(constructionResult).toBe('');
365
- expect(localResult).toBe('');
366
- expect(warnSpy).toHaveBeenCalledTimes(2);
367
-
368
- (global as any).Error = originalError;
369
- });
370
-
371
- });
372
-
1
+ import { DyFM_getConstructionStackLocation, DyFM_getLocalStackLocation } from './stack.util';
2
+ import { DyFM_Log } from './log.util';
3
+
4
+ describe('| Stack Utility Functions', () => {
5
+
6
+ // Mock the DyFM_Log.warn method
7
+ let warnSpy: jasmine.Spy;
8
+
9
+ beforeEach(() => {
10
+ warnSpy = spyOn(DyFM_Log, 'warn');
11
+ });
12
+
13
+ afterEach(() => {
14
+ warnSpy.calls.reset();
15
+ });
16
+
17
+ describe('| DyFM_getConstructionStackLocation', () => {
18
+
19
+ it('| should return stack location for constructor call with default level', () => {
20
+ // Create a test class to simulate constructor call
21
+ class TestClass {
22
+ constructor() {
23
+ this.stackLocation = DyFM_getConstructionStackLocation();
24
+ }
25
+ stackLocation: string;
26
+ }
27
+
28
+ const testInstance = new TestClass();
29
+
30
+ // The result should contain the test file path
31
+ expect(testInstance.stackLocation).toContain('stack.util.spec.js');
32
+ // TestClass might not appear in the stack due to compilation
33
+ expect(testInstance.stackLocation).toBeTruthy();
34
+ });
35
+
36
+ it('| should return stack location for constructor call with level 1', () => {
37
+ class TestClass {
38
+ constructor() {
39
+ this.stackLocation = DyFM_getConstructionStackLocation(1);
40
+ }
41
+ stackLocation: string;
42
+ }
43
+
44
+ const testInstance = new TestClass();
45
+
46
+ // The result should be a valid stack location
47
+ expect(testInstance.stackLocation).toBeTruthy();
48
+ expect(typeof testInstance.stackLocation).toBe('string');
49
+ });
50
+
51
+ it('| should throw error for invalid level parameter', () => {
52
+ expect(() => {
53
+ DyFM_getConstructionStackLocation(NaN);
54
+ }).toThrowError('level must be a number');
55
+ });
56
+
57
+ it('| should handle level parameter correctly', () => {
58
+ class TestClass {
59
+ constructor() {
60
+ this.stackLocation = DyFM_getConstructionStackLocation(0);
61
+ }
62
+ stackLocation: string;
63
+ }
64
+
65
+ const testInstance = new TestClass();
66
+ expect(testInstance.stackLocation).toBeTruthy();
67
+ });
68
+
69
+ it('| should filter out node_modules and node:internal from stack', () => {
70
+ class TestClass {
71
+ constructor() {
72
+ this.stackLocation = DyFM_getConstructionStackLocation();
73
+ }
74
+ stackLocation: string;
75
+ }
76
+
77
+ const testInstance = new TestClass();
78
+
79
+ // Should not contain node_modules or node:internal
80
+ expect(testInstance.stackLocation).not.toContain('node_modules');
81
+ expect(testInstance.stackLocation).not.toContain('node:internal');
82
+ });
83
+
84
+ it('| should filter out getStackLocation and new keywords', () => {
85
+ class TestClass {
86
+ constructor() {
87
+ this.stackLocation = DyFM_getConstructionStackLocation();
88
+ }
89
+ stackLocation: string;
90
+ }
91
+
92
+ const testInstance = new TestClass();
93
+
94
+ // The result should not contain filtered keywords
95
+ expect(testInstance.stackLocation).toBeTruthy();
96
+ });
97
+
98
+ it('| should return empty string when no valid stack line found', () => {
99
+ // Mock Error.stack to return problematic stack
100
+ const originalError = Error;
101
+ const mockStack = 'Error: Test\n at Object.<anonymous> (node_modules/test.js:1:1)\n at Module._compile (node:internal/modules/cjs/loader.js:1:1)';
102
+
103
+ const mockError = function() {
104
+ return { stack: mockStack };
105
+ };
106
+ spyOn(global, 'Error').and.returnValue(mockError as any);
107
+
108
+ const result = DyFM_getConstructionStackLocation();
109
+
110
+ expect(result).toBe('');
111
+ expect(warnSpy).toHaveBeenCalled();
112
+
113
+ // Restore original Error
114
+ (global as any).Error = originalError;
115
+ });
116
+
117
+ it('| should handle undefined stack gracefully', () => {
118
+ const originalError = Error;
119
+ const mockError = function() {
120
+ return { stack: undefined };
121
+ };
122
+ spyOn(global, 'Error').and.returnValue(mockError as any);
123
+
124
+ const result = DyFM_getConstructionStackLocation();
125
+
126
+ expect(result).toBe('');
127
+ expect(warnSpy).toHaveBeenCalled();
128
+
129
+ (global as any).Error = originalError;
130
+ });
131
+
132
+ it('| should handle null stack gracefully', () => {
133
+ const originalError = Error;
134
+ const mockError = function() {
135
+ return { stack: null };
136
+ };
137
+ spyOn(global, 'Error').and.returnValue(mockError as any);
138
+
139
+ const result = DyFM_getConstructionStackLocation();
140
+
141
+ expect(result).toBe('');
142
+ expect(warnSpy).toHaveBeenCalled();
143
+
144
+ (global as any).Error = originalError;
145
+ });
146
+
147
+ it('| should parse stack line with parentheses correctly', () => {
148
+ // This test verifies that the function can handle stack traces with parentheses
149
+ // The actual parsing is tested through the real stack trace in other tests
150
+ const result = DyFM_getConstructionStackLocation();
151
+
152
+ // The function should return a valid stack location
153
+ expect(result).toBeTruthy();
154
+ expect(typeof result).toBe('string');
155
+ });
156
+
157
+ it('| should handle stack line without parentheses', () => {
158
+ // This test verifies that the function can handle stack traces without parentheses
159
+ // The actual parsing is tested through the real stack trace in other tests
160
+ const result = DyFM_getConstructionStackLocation();
161
+
162
+ // The function should return a valid stack location
163
+ expect(result).toBeTruthy();
164
+ expect(typeof result).toBe('string');
165
+ });
166
+
167
+ it('| should handle multiple levels correctly', () => {
168
+ class TestClass {
169
+ constructor() {
170
+ this.stackLocation = DyFM_getConstructionStackLocation(2);
171
+ }
172
+ stackLocation: string;
173
+ }
174
+
175
+ const testInstance = new TestClass();
176
+ expect(testInstance.stackLocation).toBeTruthy();
177
+ });
178
+
179
+ });
180
+
181
+ describe('| DyFM_getLocalStackLocation', () => {
182
+
183
+ it('| should return stack location with minimal filtering', () => {
184
+ class TestClass {
185
+ constructor() {
186
+ this.stackLocation = DyFM_getLocalStackLocation();
187
+ }
188
+ stackLocation: string;
189
+ }
190
+
191
+ const testInstance = new TestClass();
192
+
193
+ expect(testInstance.stackLocation).toContain('stack.util.spec.js');
194
+ // TestClass might not appear in the stack due to compilation
195
+ expect(testInstance.stackLocation).toBeTruthy();
196
+ });
197
+
198
+ it('| should return stack location with level parameter', () => {
199
+ class TestClass {
200
+ constructor() {
201
+ this.stackLocation = DyFM_getLocalStackLocation(1);
202
+ }
203
+ stackLocation: string;
204
+ }
205
+
206
+ const testInstance = new TestClass();
207
+
208
+ expect(testInstance.stackLocation).toContain('stack.util.spec.js');
209
+ });
210
+
211
+ it('| should throw error for invalid level parameter', () => {
212
+ expect(() => {
213
+ DyFM_getLocalStackLocation(NaN);
214
+ }).toThrowError('level must be a number');
215
+ });
216
+
217
+ it('| should filter out node_modules and node:internal from stack', () => {
218
+ class TestClass {
219
+ constructor() {
220
+ this.stackLocation = DyFM_getLocalStackLocation();
221
+ }
222
+ stackLocation: string;
223
+ }
224
+
225
+ const testInstance = new TestClass();
226
+
227
+ // Should not contain node_modules or node:internal
228
+ expect(testInstance.stackLocation).not.toContain('node_modules');
229
+ expect(testInstance.stackLocation).not.toContain('node:internal');
230
+ });
231
+
232
+ it('| should return empty string when no valid stack line found', () => {
233
+ const originalError = Error;
234
+ const mockStack = 'Error: Test\n at Object.<anonymous> (node_modules/test.js:1:1)\n at Module._compile (node:internal/modules/cjs/loader.js:1:1)';
235
+
236
+ const mockError = function() {
237
+ return { stack: mockStack };
238
+ };
239
+ spyOn(global, 'Error').and.returnValue(mockError as any);
240
+
241
+ const result = DyFM_getLocalStackLocation();
242
+
243
+ expect(result).toBe('');
244
+ expect(warnSpy).toHaveBeenCalled();
245
+
246
+ (global as any).Error = originalError;
247
+ });
248
+
249
+ it('| should handle undefined stack gracefully', () => {
250
+ const originalError = Error;
251
+ const mockError = function() {
252
+ return { stack: undefined };
253
+ };
254
+ spyOn(global, 'Error').and.returnValue(mockError as any);
255
+
256
+ const result = DyFM_getLocalStackLocation();
257
+
258
+ expect(result).toBe('');
259
+ expect(warnSpy).toHaveBeenCalled();
260
+
261
+ (global as any).Error = originalError;
262
+ });
263
+
264
+ it('| should handle null stack gracefully', () => {
265
+ const originalError = Error;
266
+ const mockError = function() {
267
+ return { stack: null };
268
+ };
269
+ spyOn(global, 'Error').and.returnValue(mockError as any);
270
+
271
+ const result = DyFM_getLocalStackLocation();
272
+
273
+ expect(result).toBe('');
274
+ expect(warnSpy).toHaveBeenCalled();
275
+
276
+ (global as any).Error = originalError;
277
+ });
278
+
279
+ it('| should parse stack line with parentheses correctly', () => {
280
+ // This test verifies that the function can handle stack traces with parentheses
281
+ // The actual parsing is tested through the real stack trace in other tests
282
+ const result = DyFM_getLocalStackLocation();
283
+
284
+ // The function should return a valid stack location
285
+ expect(result).toBeTruthy();
286
+ expect(typeof result).toBe('string');
287
+ });
288
+
289
+ it('| should handle stack line without parentheses', () => {
290
+ // This test verifies that the function can handle stack traces without parentheses
291
+ // The actual parsing is tested through the real stack trace in other tests
292
+ const result = DyFM_getLocalStackLocation();
293
+
294
+ // The function should return a valid stack location
295
+ expect(result).toBeTruthy();
296
+ expect(typeof result).toBe('string');
297
+ });
298
+
299
+ it('| should handle multiple levels correctly', () => {
300
+ class TestClass {
301
+ constructor() {
302
+ this.stackLocation = DyFM_getLocalStackLocation(2);
303
+ }
304
+ stackLocation: string;
305
+ }
306
+
307
+ const testInstance = new TestClass();
308
+ expect(testInstance.stackLocation).toBeTruthy();
309
+ });
310
+
311
+ it('| should not filter out constructor-related calls like getConstructionStackLocation does', () => {
312
+ class TestClass {
313
+ constructor() {
314
+ this.stackLocation = DyFM_getLocalStackLocation();
315
+ }
316
+ stackLocation: string;
317
+ }
318
+
319
+ const testInstance = new TestClass();
320
+
321
+ // Should still return a valid result even though it might contain constructor-related calls
322
+ expect(testInstance.stackLocation).toBeTruthy();
323
+ });
324
+
325
+ });
326
+
327
+ describe('| Function Comparison', () => {
328
+
329
+ it('| should have different filtering behavior between the two functions', () => {
330
+ class TestClass {
331
+ constructor() {
332
+ this.constructionStack = DyFM_getConstructionStackLocation();
333
+ this.localStack = DyFM_getLocalStackLocation();
334
+ }
335
+ constructionStack: string;
336
+ localStack: string;
337
+ }
338
+
339
+ const testInstance = new TestClass();
340
+
341
+ // Both should return valid results
342
+ expect(testInstance.constructionStack).toBeTruthy();
343
+ expect(testInstance.localStack).toBeTruthy();
344
+
345
+ // They might be different due to different filtering logic
346
+ // This test ensures both functions work correctly
347
+ expect(typeof testInstance.constructionStack).toBe('string');
348
+ expect(typeof testInstance.localStack).toBe('string');
349
+ });
350
+
351
+ it('| should handle edge cases consistently', () => {
352
+ const originalError = Error;
353
+ const mockStack = 'Error: Test\n at Object.<anonymous> (node_modules/test.js:1:1)';
354
+
355
+ const mockError = function() {
356
+ return { stack: mockStack };
357
+ };
358
+ spyOn(global, 'Error').and.returnValue(mockError as any);
359
+
360
+ const constructionResult = DyFM_getConstructionStackLocation();
361
+ const localResult = DyFM_getLocalStackLocation();
362
+
363
+ // Both should return empty string for this problematic stack
364
+ expect(constructionResult).toBe('');
365
+ expect(localResult).toBe('');
366
+ expect(warnSpy).toHaveBeenCalledTimes(2);
367
+
368
+ (global as any).Error = originalError;
369
+ });
370
+
371
+ });
372
+
373
373
  });