@futdevpro/nts-dynamo 1.15.136 → 1.15.137

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 (1333) hide show
  1. package/.c8rc.json +26 -26
  2. package/.copilot/patterns.json +7 -7
  3. package/.cursor/rules/__assistant_guide.mdc +30 -30
  4. package/.cursor/rules/_ag_backend-structure.mdc +85 -85
  5. package/.cursor/rules/_ag_backend.mdc +16 -16
  6. package/.cursor/rules/_ag_frontend-structure.mdc +86 -86
  7. package/.cursor/rules/_ag_frontend.mdc +39 -39
  8. package/.cursor/rules/_ag_import-rules.mdc +44 -44
  9. package/.cursor/rules/_ag_naming.mdc +115 -115
  10. package/.cursor/rules/_ag_should-be.mdc +6 -6
  11. package/.cursor/rules/ai_development_guide.md +60 -60
  12. package/.cursor/rules/cursor-rules.md +160 -160
  13. package/.cursor/rules/default-command.mdc +464 -464
  14. package/.cursor/rules/error_code_pattern.md +39 -39
  15. package/.cursor/rules/saved rule mcp server use.md +15 -15
  16. package/.vscode/settings.json +10 -10
  17. package/HOWTO.md +15 -15
  18. package/LICENSE +21 -21
  19. package/__documentations/nts-integration-tests-2026-03-17.md +26 -26
  20. package/__documentations/plans/BEDROCK-HYPERPLAN.md +95 -95
  21. package/_specifications/BACKLOG.md +92 -92
  22. package/_specifications/TODO.md +15 -15
  23. package/_specifications/agent.md +138 -138
  24. package/build/_collections/app-version-header.util.spec.d.ts +2 -0
  25. package/build/_collections/app-version-header.util.spec.d.ts.map +1 -0
  26. package/build/_collections/app-version-header.util.spec.js +82 -0
  27. package/build/_collections/app-version-header.util.spec.js.map +1 -0
  28. package/build/_collections/archive.util.spec.d.ts +2 -0
  29. package/build/_collections/archive.util.spec.d.ts.map +1 -0
  30. package/build/_collections/archive.util.spec.js +51 -0
  31. package/build/_collections/archive.util.spec.js.map +1 -0
  32. package/build/_collections/client-safe-error.util.spec.d.ts +2 -0
  33. package/build/_collections/client-safe-error.util.spec.d.ts.map +1 -0
  34. package/build/_collections/client-safe-error.util.spec.js +124 -0
  35. package/build/_collections/client-safe-error.util.spec.js.map +1 -0
  36. package/build/_collections/default-fallback-cache-max-age.const.spec.d.ts +2 -0
  37. package/build/_collections/default-fallback-cache-max-age.const.spec.d.ts.map +1 -0
  38. package/build/_collections/default-fallback-cache-max-age.const.spec.js +12 -0
  39. package/build/_collections/default-fallback-cache-max-age.const.spec.js.map +1 -0
  40. package/build/_collections/default-not-found-page.const.spec.d.ts +2 -0
  41. package/build/_collections/default-not-found-page.const.spec.d.ts.map +1 -0
  42. package/build/_collections/default-not-found-page.const.spec.js +19 -0
  43. package/build/_collections/default-not-found-page.const.spec.js.map +1 -0
  44. package/build/_collections/default-socket-path.const.spec.d.ts +2 -0
  45. package/build/_collections/default-socket-path.const.spec.d.ts.map +1 -0
  46. package/build/_collections/default-socket-path.const.spec.js +13 -0
  47. package/build/_collections/default-socket-path.const.spec.js.map +1 -0
  48. package/build/_collections/field-encryption.util.spec.d.ts +2 -0
  49. package/build/_collections/field-encryption.util.spec.d.ts.map +1 -0
  50. package/build/_collections/field-encryption.util.spec.js +156 -0
  51. package/build/_collections/field-encryption.util.spec.js.map +1 -0
  52. package/build/_collections/get-environment-settings.util.spec.d.ts +2 -0
  53. package/build/_collections/get-environment-settings.util.spec.d.ts.map +1 -0
  54. package/build/_collections/get-environment-settings.util.spec.js +165 -0
  55. package/build/_collections/get-environment-settings.util.spec.js.map +1 -0
  56. package/build/_collections/load-shed.util.spec.d.ts +2 -0
  57. package/build/_collections/load-shed.util.spec.d.ts.map +1 -0
  58. package/build/_collections/load-shed.util.spec.js +48 -0
  59. package/build/_collections/load-shed.util.spec.js.map +1 -0
  60. package/build/_collections/mongo-reconnect-guard.util.spec.d.ts +2 -0
  61. package/build/_collections/mongo-reconnect-guard.util.spec.d.ts.map +1 -0
  62. package/build/_collections/mongo-reconnect-guard.util.spec.js +46 -0
  63. package/build/_collections/mongo-reconnect-guard.util.spec.js.map +1 -0
  64. package/build/_collections/security-headers.util.spec.d.ts +2 -0
  65. package/build/_collections/security-headers.util.spec.d.ts.map +1 -0
  66. package/build/_collections/security-headers.util.spec.js +66 -0
  67. package/build/_collections/security-headers.util.spec.js.map +1 -0
  68. package/build/_collections/signed-url.util.spec.d.ts +2 -0
  69. package/build/_collections/signed-url.util.spec.d.ts.map +1 -0
  70. package/build/_collections/signed-url.util.spec.js +161 -0
  71. package/build/_collections/signed-url.util.spec.js.map +1 -0
  72. package/build/_collections/star.controller.spec.d.ts +2 -0
  73. package/build/_collections/star.controller.spec.d.ts.map +1 -0
  74. package/build/_collections/star.controller.spec.js +194 -0
  75. package/build/_collections/star.controller.spec.js.map +1 -0
  76. package/build/_collections/static-cache-control.util.spec.d.ts +2 -0
  77. package/build/_collections/static-cache-control.util.spec.d.ts.map +1 -0
  78. package/build/_collections/static-cache-control.util.spec.js +41 -0
  79. package/build/_collections/static-cache-control.util.spec.js.map +1 -0
  80. package/build/_models/control-models/api-call-params.control-model.spec.d.ts +2 -0
  81. package/build/_models/control-models/api-call-params.control-model.spec.d.ts.map +1 -0
  82. package/build/_models/control-models/api-call-params.control-model.spec.js +128 -0
  83. package/build/_models/control-models/api-call-params.control-model.spec.js.map +1 -0
  84. package/build/_models/control-models/app-ext-system-controls.control-model.spec.d.ts +2 -0
  85. package/build/_models/control-models/app-ext-system-controls.control-model.spec.d.ts.map +1 -0
  86. package/build/_models/control-models/app-ext-system-controls.control-model.spec.js +43 -0
  87. package/build/_models/control-models/app-ext-system-controls.control-model.spec.js.map +1 -0
  88. package/build/_models/control-models/app-params.control-model.spec.d.ts +2 -0
  89. package/build/_models/control-models/app-params.control-model.spec.d.ts.map +1 -0
  90. package/build/_models/control-models/app-params.control-model.spec.js +180 -0
  91. package/build/_models/control-models/app-params.control-model.spec.js.map +1 -0
  92. package/build/_models/control-models/app-system-controls.control-model.spec.d.ts +2 -0
  93. package/build/_models/control-models/app-system-controls.control-model.spec.d.ts.map +1 -0
  94. package/build/_models/control-models/app-system-controls.control-model.spec.js +26 -0
  95. package/build/_models/control-models/app-system-controls.control-model.spec.js.map +1 -0
  96. package/build/_models/control-models/endpoint-params.control-model.spec.d.ts +2 -0
  97. package/build/_models/control-models/endpoint-params.control-model.spec.d.ts.map +1 -0
  98. package/build/_models/control-models/endpoint-params.control-model.spec.js +569 -0
  99. package/build/_models/control-models/endpoint-params.control-model.spec.js.map +1 -0
  100. package/build/_models/control-models/http-settings.control-model.spec.d.ts +2 -0
  101. package/build/_models/control-models/http-settings.control-model.spec.d.ts.map +1 -0
  102. package/build/_models/control-models/http-settings.control-model.spec.js +71 -0
  103. package/build/_models/control-models/http-settings.control-model.spec.js.map +1 -0
  104. package/build/_models/control-models/system-control.control-model.spec.d.ts +2 -0
  105. package/build/_models/control-models/system-control.control-model.spec.d.ts.map +1 -0
  106. package/build/_models/control-models/system-control.control-model.spec.js +24 -0
  107. package/build/_models/control-models/system-control.control-model.spec.js.map +1 -0
  108. package/build/_models/interfaces/cors-settings.interface.spec.d.ts +2 -0
  109. package/build/_models/interfaces/cors-settings.interface.spec.d.ts.map +1 -0
  110. package/build/_models/interfaces/cors-settings.interface.spec.js +48 -0
  111. package/build/_models/interfaces/cors-settings.interface.spec.js.map +1 -0
  112. package/build/_models/interfaces/static-client-settings.interface.spec.d.ts +2 -0
  113. package/build/_models/interfaces/static-client-settings.interface.spec.d.ts.map +1 -0
  114. package/build/_models/interfaces/static-client-settings.interface.spec.js +28 -0
  115. package/build/_models/interfaces/static-client-settings.interface.spec.js.map +1 -0
  116. package/build/_modules/admin-auth/admin-api-key.auth-service.spec.d.ts +2 -0
  117. package/build/_modules/admin-auth/admin-api-key.auth-service.spec.d.ts.map +1 -0
  118. package/build/_modules/admin-auth/admin-api-key.auth-service.spec.js +185 -0
  119. package/build/_modules/admin-auth/admin-api-key.auth-service.spec.js.map +1 -0
  120. package/build/_modules/ai/_collections/ai-model-config-validator.util.spec.d.ts +2 -0
  121. package/build/_modules/ai/_collections/ai-model-config-validator.util.spec.d.ts.map +1 -0
  122. package/build/_modules/ai/_collections/ai-model-config-validator.util.spec.js +132 -0
  123. package/build/_modules/ai/_collections/ai-model-config-validator.util.spec.js.map +1 -0
  124. package/build/_modules/ai/_modules/ai-mock/_collections/aim-default-collection.util.spec.d.ts +2 -0
  125. package/build/_modules/ai/_modules/ai-mock/_collections/aim-default-collection.util.spec.d.ts.map +1 -0
  126. package/build/_modules/ai/_modules/ai-mock/_collections/aim-default-collection.util.spec.js +56 -0
  127. package/build/_modules/ai/_modules/ai-mock/_collections/aim-default-collection.util.spec.js.map +1 -0
  128. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-match.util.spec.d.ts +2 -0
  129. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-match.util.spec.d.ts.map +1 -0
  130. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-match.util.spec.js +43 -0
  131. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-match.util.spec.js.map +1 -0
  132. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.spec.d.ts +2 -0
  133. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.spec.d.ts.map +1 -0
  134. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.spec.js +47 -0
  135. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.spec.js.map +1 -0
  136. package/build/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.spec.d.ts +2 -0
  137. package/build/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.spec.d.ts.map +1 -0
  138. package/build/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.spec.js +98 -0
  139. package/build/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.spec.js.map +1 -0
  140. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-harness.service.spec.d.ts +2 -0
  141. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-harness.service.spec.d.ts.map +1 -0
  142. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-harness.service.spec.js +117 -0
  143. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-harness.service.spec.js.map +1 -0
  144. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-pipeline.spec.d.ts +2 -0
  145. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-pipeline.spec.d.ts.map +1 -0
  146. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-pipeline.spec.js +87 -0
  147. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-pipeline.spec.js.map +1 -0
  148. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-store.service.spec.d.ts +2 -0
  149. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-store.service.spec.d.ts.map +1 -0
  150. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-store.service.spec.js +42 -0
  151. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-store.service.spec.js.map +1 -0
  152. package/build/_modules/ai/_modules/ai-mock/_services/aim-integration-proof.spec.d.ts +2 -0
  153. package/build/_modules/ai/_modules/ai-mock/_services/aim-integration-proof.spec.d.ts.map +1 -0
  154. package/build/_modules/ai/_modules/ai-mock/_services/aim-integration-proof.spec.js +74 -0
  155. package/build/_modules/ai/_modules/ai-mock/_services/aim-integration-proof.spec.js.map +1 -0
  156. package/build/_modules/ai/_modules/ai-mock/_services/aim-mock.service.spec.d.ts +2 -0
  157. package/build/_modules/ai/_modules/ai-mock/_services/aim-mock.service.spec.d.ts.map +1 -0
  158. package/build/_modules/ai/_modules/ai-mock/_services/aim-mock.service.spec.js +95 -0
  159. package/build/_modules/ai/_modules/ai-mock/_services/aim-mock.service.spec.js.map +1 -0
  160. package/build/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.d.ts +2 -0
  161. package/build/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.d.ts.map +1 -0
  162. package/build/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.js +207 -0
  163. package/build/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.js.map +1 -0
  164. package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.d.ts +2 -0
  165. package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.d.ts.map +1 -0
  166. package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.js +244 -0
  167. package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.js.map +1 -0
  168. package/build/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.d.ts +2 -0
  169. package/build/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.d.ts.map +1 -0
  170. package/build/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.js +162 -0
  171. package/build/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.js.map +1 -0
  172. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.d.ts +2 -0
  173. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.d.ts.map +1 -0
  174. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.js +279 -0
  175. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.js.map +1 -0
  176. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.d.ts +2 -0
  177. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.d.ts.map +1 -0
  178. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.js +452 -0
  179. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.js.map +1 -0
  180. package/build/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.d.ts +2 -0
  181. package/build/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.d.ts.map +1 -0
  182. package/build/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.js +293 -0
  183. package/build/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.js.map +1 -0
  184. package/build/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.d.ts +2 -0
  185. package/build/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.d.ts.map +1 -0
  186. package/build/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.js +395 -0
  187. package/build/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.js.map +1 -0
  188. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.d.ts +2 -0
  189. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.d.ts.map +1 -0
  190. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.js +411 -0
  191. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.js.map +1 -0
  192. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.d.ts +2 -0
  193. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.d.ts.map +1 -0
  194. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.js +143 -0
  195. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.js.map +1 -0
  196. package/build/_modules/ai/_services/ai-embedding-provider.registry.spec.d.ts +2 -0
  197. package/build/_modules/ai/_services/ai-embedding-provider.registry.spec.d.ts.map +1 -0
  198. package/build/_modules/ai/_services/ai-embedding-provider.registry.spec.js +98 -0
  199. package/build/_modules/ai/_services/ai-embedding-provider.registry.spec.js.map +1 -0
  200. package/build/_modules/ai/_services/ai-embedding.service-base.spec.d.ts +2 -0
  201. package/build/_modules/ai/_services/ai-embedding.service-base.spec.d.ts.map +1 -0
  202. package/build/_modules/ai/_services/ai-embedding.service-base.spec.js +80 -0
  203. package/build/_modules/ai/_services/ai-embedding.service-base.spec.js.map +1 -0
  204. package/build/_modules/ai/_services/ai-llm-chat.service-base.spec.d.ts +2 -0
  205. package/build/_modules/ai/_services/ai-llm-chat.service-base.spec.d.ts.map +1 -0
  206. package/build/_modules/ai/_services/ai-llm-chat.service-base.spec.js +186 -0
  207. package/build/_modules/ai/_services/ai-llm-chat.service-base.spec.js.map +1 -0
  208. package/build/_modules/ai/_services/ai-llm.service-base.reconciler.spec.d.ts +2 -0
  209. package/build/_modules/ai/_services/ai-llm.service-base.reconciler.spec.d.ts.map +1 -0
  210. package/build/_modules/ai/_services/ai-llm.service-base.reconciler.spec.js +108 -0
  211. package/build/_modules/ai/_services/ai-llm.service-base.reconciler.spec.js.map +1 -0
  212. package/build/_modules/ai/_services/ai-llm.service-base.spec.d.ts +2 -0
  213. package/build/_modules/ai/_services/ai-llm.service-base.spec.d.ts.map +1 -0
  214. package/build/_modules/ai/_services/ai-llm.service-base.spec.js +185 -0
  215. package/build/_modules/ai/_services/ai-llm.service-base.spec.js.map +1 -0
  216. package/build/_modules/ai/_services/ai-provider.service-base.spec.d.ts +2 -0
  217. package/build/_modules/ai/_services/ai-provider.service-base.spec.d.ts.map +1 -0
  218. package/build/_modules/ai/_services/ai-provider.service-base.spec.js +128 -0
  219. package/build/_modules/ai/_services/ai-provider.service-base.spec.js.map +1 -0
  220. package/build/_modules/ai/_services/lmstudio-embedding.control-service.spec.d.ts +2 -0
  221. package/build/_modules/ai/_services/lmstudio-embedding.control-service.spec.d.ts.map +1 -0
  222. package/build/_modules/ai/_services/lmstudio-embedding.control-service.spec.js +159 -0
  223. package/build/_modules/ai/_services/lmstudio-embedding.control-service.spec.js.map +1 -0
  224. package/build/_modules/assistant/_collections/ass.util.spec.d.ts +2 -0
  225. package/build/_modules/assistant/_collections/ass.util.spec.d.ts.map +1 -0
  226. package/build/_modules/assistant/_collections/ass.util.spec.js +153 -0
  227. package/build/_modules/assistant/_collections/ass.util.spec.js.map +1 -0
  228. package/build/_modules/assistant/_services/ass-io.control-service.spec.d.ts +2 -0
  229. package/build/_modules/assistant/_services/ass-io.control-service.spec.d.ts.map +1 -0
  230. package/build/_modules/assistant/_services/ass-io.control-service.spec.js +99 -0
  231. package/build/_modules/assistant/_services/ass-io.control-service.spec.js.map +1 -0
  232. package/build/_modules/assistant/_services/ass-main.control-service.spec.d.ts +2 -0
  233. package/build/_modules/assistant/_services/ass-main.control-service.spec.d.ts.map +1 -0
  234. package/build/_modules/assistant/_services/ass-main.control-service.spec.js +146 -0
  235. package/build/_modules/assistant/_services/ass-main.control-service.spec.js.map +1 -0
  236. package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.d.ts +2 -0
  237. package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.d.ts.map +1 -0
  238. package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.js +356 -0
  239. package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.js.map +1 -0
  240. package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.d.ts +2 -0
  241. package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.d.ts.map +1 -0
  242. package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.js +93 -0
  243. package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.js.map +1 -0
  244. package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.d.ts +2 -0
  245. package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.d.ts.map +1 -0
  246. package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.js +304 -0
  247. package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.js.map +1 -0
  248. package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.d.ts +2 -0
  249. package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.d.ts.map +1 -0
  250. package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.js +336 -0
  251. package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.js.map +1 -0
  252. package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.d.ts +2 -0
  253. package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.d.ts.map +1 -0
  254. package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.js +337 -0
  255. package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.js.map +1 -0
  256. package/build/_modules/bot/_services/bot-commands.control-service.spec.d.ts +2 -0
  257. package/build/_modules/bot/_services/bot-commands.control-service.spec.d.ts.map +1 -0
  258. package/build/_modules/bot/_services/bot-commands.control-service.spec.js +84 -0
  259. package/build/_modules/bot/_services/bot-commands.control-service.spec.js.map +1 -0
  260. package/build/_modules/bot/_services/bot-io.control-service.spec.d.ts +2 -0
  261. package/build/_modules/bot/_services/bot-io.control-service.spec.d.ts.map +1 -0
  262. package/build/_modules/bot/_services/bot-io.control-service.spec.js +228 -0
  263. package/build/_modules/bot/_services/bot-io.control-service.spec.js.map +1 -0
  264. package/build/_modules/bot/_services/bot-main.control-service.spec.d.ts +2 -0
  265. package/build/_modules/bot/_services/bot-main.control-service.spec.d.ts.map +1 -0
  266. package/build/_modules/bot/_services/bot-main.control-service.spec.js +164 -0
  267. package/build/_modules/bot/_services/bot-main.control-service.spec.js.map +1 -0
  268. package/build/_modules/bot/_services/bot-messaging-provider.service-base.spec.d.ts +2 -0
  269. package/build/_modules/bot/_services/bot-messaging-provider.service-base.spec.d.ts.map +1 -0
  270. package/build/_modules/bot/_services/bot-messaging-provider.service-base.spec.js +267 -0
  271. package/build/_modules/bot/_services/bot-messaging-provider.service-base.spec.js.map +1 -0
  272. package/build/_modules/bot/_services/bot-routines.control-service.spec.d.ts +2 -0
  273. package/build/_modules/bot/_services/bot-routines.control-service.spec.d.ts.map +1 -0
  274. package/build/_modules/bot/_services/bot-routines.control-service.spec.js +82 -0
  275. package/build/_modules/bot/_services/bot-routines.control-service.spec.js.map +1 -0
  276. package/build/_modules/custom-data/custom-data.controller.spec.d.ts +2 -0
  277. package/build/_modules/custom-data/custom-data.controller.spec.d.ts.map +1 -0
  278. package/build/_modules/custom-data/custom-data.controller.spec.js +38 -0
  279. package/build/_modules/custom-data/custom-data.controller.spec.js.map +1 -0
  280. package/build/_modules/custom-data/custom-data.data-service.spec.d.ts +2 -0
  281. package/build/_modules/custom-data/custom-data.data-service.spec.d.ts.map +1 -0
  282. package/build/_modules/custom-data/custom-data.data-service.spec.js +45 -0
  283. package/build/_modules/custom-data/custom-data.data-service.spec.js.map +1 -0
  284. package/build/_modules/custom-data/get-custom-data-routing-module.util.spec.d.ts +2 -0
  285. package/build/_modules/custom-data/get-custom-data-routing-module.util.spec.d.ts.map +1 -0
  286. package/build/_modules/custom-data/get-custom-data-routing-module.util.spec.js +23 -0
  287. package/build/_modules/custom-data/get-custom-data-routing-module.util.spec.js.map +1 -0
  288. package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.d.ts +2 -0
  289. package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.d.ts.map +1 -0
  290. package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.js +124 -0
  291. package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.js.map +1 -0
  292. package/build/_modules/defaults/_services/default-auth.service.spec.d.ts +2 -0
  293. package/build/_modules/defaults/_services/default-auth.service.spec.d.ts.map +1 -0
  294. package/build/_modules/defaults/_services/default-auth.service.spec.js +210 -0
  295. package/build/_modules/defaults/_services/default-auth.service.spec.js.map +1 -0
  296. package/build/_modules/defaults/_services/default-socket-events.service.spec.d.ts +2 -0
  297. package/build/_modules/defaults/_services/default-socket-events.service.spec.d.ts.map +1 -0
  298. package/build/_modules/defaults/_services/default-socket-events.service.spec.js +34 -0
  299. package/build/_modules/defaults/_services/default-socket-events.service.spec.js.map +1 -0
  300. package/build/_modules/defaults/_services/default-user.data-service.spec.d.ts +2 -0
  301. package/build/_modules/defaults/_services/default-user.data-service.spec.d.ts.map +1 -0
  302. package/build/_modules/defaults/_services/default-user.data-service.spec.js +133 -0
  303. package/build/_modules/defaults/_services/default-user.data-service.spec.js.map +1 -0
  304. package/build/_modules/discord-assistant/_collections/dias.util.spec.d.ts +2 -0
  305. package/build/_modules/discord-assistant/_collections/dias.util.spec.d.ts.map +1 -0
  306. package/build/_modules/discord-assistant/_collections/dias.util.spec.js +307 -0
  307. package/build/_modules/discord-assistant/_collections/dias.util.spec.js.map +1 -0
  308. package/build/_modules/discord-assistant/_services/dias-io.control-service.spec.d.ts +2 -0
  309. package/build/_modules/discord-assistant/_services/dias-io.control-service.spec.d.ts.map +1 -0
  310. package/build/_modules/discord-assistant/_services/dias-io.control-service.spec.js +76 -0
  311. package/build/_modules/discord-assistant/_services/dias-io.control-service.spec.js.map +1 -0
  312. package/build/_modules/discord-assistant/_services/dias-main.control-service.spec.d.ts +2 -0
  313. package/build/_modules/discord-assistant/_services/dias-main.control-service.spec.d.ts.map +1 -0
  314. package/build/_modules/discord-assistant/_services/dias-main.control-service.spec.js +17 -0
  315. package/build/_modules/discord-assistant/_services/dias-main.control-service.spec.js.map +1 -0
  316. package/build/_modules/discord-assistant/_services/dias.service-base.spec.d.ts +2 -0
  317. package/build/_modules/discord-assistant/_services/dias.service-base.spec.d.ts.map +1 -0
  318. package/build/_modules/discord-assistant/_services/dias.service-base.spec.js +151 -0
  319. package/build/_modules/discord-assistant/_services/dias.service-base.spec.js.map +1 -0
  320. package/build/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.d.ts +2 -0
  321. package/build/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.d.ts.map +1 -0
  322. package/build/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.js +29 -0
  323. package/build/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.js.map +1 -0
  324. package/build/_modules/discord-bot/_collections/dibo-operations.util.spec.d.ts +2 -0
  325. package/build/_modules/discord-bot/_collections/dibo-operations.util.spec.d.ts.map +1 -0
  326. package/build/_modules/discord-bot/_collections/dibo-operations.util.spec.js +172 -0
  327. package/build/_modules/discord-bot/_collections/dibo-operations.util.spec.js.map +1 -0
  328. package/build/_modules/discord-bot/_services/dibo-commands.control-service.spec.d.ts +2 -0
  329. package/build/_modules/discord-bot/_services/dibo-commands.control-service.spec.d.ts.map +1 -0
  330. package/build/_modules/discord-bot/_services/dibo-commands.control-service.spec.js +133 -0
  331. package/build/_modules/discord-bot/_services/dibo-commands.control-service.spec.js.map +1 -0
  332. package/build/_modules/discord-bot/_services/dibo-io.control-service.spec.d.ts +2 -0
  333. package/build/_modules/discord-bot/_services/dibo-io.control-service.spec.d.ts.map +1 -0
  334. package/build/_modules/discord-bot/_services/dibo-io.control-service.spec.js +215 -0
  335. package/build/_modules/discord-bot/_services/dibo-io.control-service.spec.js.map +1 -0
  336. package/build/_modules/discord-bot/_services/dibo-main.control-service.spec.d.ts +2 -0
  337. package/build/_modules/discord-bot/_services/dibo-main.control-service.spec.d.ts.map +1 -0
  338. package/build/_modules/discord-bot/_services/dibo-main.control-service.spec.js +342 -0
  339. package/build/_modules/discord-bot/_services/dibo-main.control-service.spec.js.map +1 -0
  340. package/build/_modules/discord-bot/_services/dibo-routines.control-service.spec.d.ts +2 -0
  341. package/build/_modules/discord-bot/_services/dibo-routines.control-service.spec.d.ts.map +1 -0
  342. package/build/_modules/discord-bot/_services/dibo-routines.control-service.spec.js +87 -0
  343. package/build/_modules/discord-bot/_services/dibo-routines.control-service.spec.js.map +1 -0
  344. package/build/_modules/local-vector-search/_services/lvs-bm25.util.spec.d.ts +2 -0
  345. package/build/_modules/local-vector-search/_services/lvs-bm25.util.spec.d.ts.map +1 -0
  346. package/build/_modules/local-vector-search/_services/lvs-bm25.util.spec.js +137 -0
  347. package/build/_modules/local-vector-search/_services/lvs-bm25.util.spec.js.map +1 -0
  348. package/build/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.d.ts +2 -0
  349. package/build/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.d.ts.map +1 -0
  350. package/build/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.js +345 -0
  351. package/build/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.js.map +1 -0
  352. package/build/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.d.ts +2 -0
  353. package/build/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.d.ts.map +1 -0
  354. package/build/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.js +407 -0
  355. package/build/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.js.map +1 -0
  356. package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.d.ts +2 -0
  357. package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.d.ts.map +1 -0
  358. package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.js +160 -0
  359. package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.js.map +1 -0
  360. package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.d.ts +2 -0
  361. package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.d.ts.map +1 -0
  362. package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.js +122 -0
  363. package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.js.map +1 -0
  364. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.d.ts +2 -0
  365. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.d.ts.map +1 -0
  366. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.js +388 -0
  367. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.js.map +1 -0
  368. package/build/_modules/logs/file-log.service.spec.d.ts +2 -0
  369. package/build/_modules/logs/file-log.service.spec.d.ts.map +1 -0
  370. package/build/_modules/logs/file-log.service.spec.js +300 -0
  371. package/build/_modules/logs/file-log.service.spec.js.map +1 -0
  372. package/build/_modules/logs/file-logs.controller.spec.d.ts +2 -0
  373. package/build/_modules/logs/file-logs.controller.spec.d.ts.map +1 -0
  374. package/build/_modules/logs/file-logs.controller.spec.js +203 -0
  375. package/build/_modules/logs/file-logs.controller.spec.js.map +1 -0
  376. package/build/_modules/mcp/_services/dynts-mcp-server.service-base.spec.d.ts +2 -0
  377. package/build/_modules/mcp/_services/dynts-mcp-server.service-base.spec.d.ts.map +1 -0
  378. package/build/_modules/mcp/_services/dynts-mcp-server.service-base.spec.js +125 -0
  379. package/build/_modules/mcp/_services/dynts-mcp-server.service-base.spec.js.map +1 -0
  380. package/build/_modules/messaging/_collections/msg.util.spec.d.ts +2 -0
  381. package/build/_modules/messaging/_collections/msg.util.spec.d.ts.map +1 -0
  382. package/build/_modules/messaging/_collections/msg.util.spec.js +157 -0
  383. package/build/_modules/messaging/_collections/msg.util.spec.js.map +1 -0
  384. package/build/_modules/messaging/_services/msg-events.service.spec.d.ts +2 -0
  385. package/build/_modules/messaging/_services/msg-events.service.spec.d.ts.map +1 -0
  386. package/build/_modules/messaging/_services/msg-events.service.spec.js +122 -0
  387. package/build/_modules/messaging/_services/msg-events.service.spec.js.map +1 -0
  388. package/build/_modules/messaging/_services/msg-main.control-service.spec.d.ts +2 -0
  389. package/build/_modules/messaging/_services/msg-main.control-service.spec.d.ts.map +1 -0
  390. package/build/_modules/messaging/_services/msg-main.control-service.spec.js +121 -0
  391. package/build/_modules/messaging/_services/msg-main.control-service.spec.js.map +1 -0
  392. package/build/_modules/messaging/_services/msg.controller.spec.d.ts +2 -0
  393. package/build/_modules/messaging/_services/msg.controller.spec.d.ts.map +1 -0
  394. package/build/_modules/messaging/_services/msg.controller.spec.js +165 -0
  395. package/build/_modules/messaging/_services/msg.controller.spec.js.map +1 -0
  396. package/build/_modules/mock/app-params.mock.spec.d.ts +2 -0
  397. package/build/_modules/mock/app-params.mock.spec.d.ts.map +1 -0
  398. package/build/_modules/mock/app-params.mock.spec.js +19 -0
  399. package/build/_modules/mock/app-params.mock.spec.js.map +1 -0
  400. package/build/_modules/mock/auth-service.mock.spec.d.ts +2 -0
  401. package/build/_modules/mock/auth-service.mock.spec.d.ts.map +1 -0
  402. package/build/_modules/mock/auth-service.mock.spec.js +40 -0
  403. package/build/_modules/mock/auth-service.mock.spec.js.map +1 -0
  404. package/build/_modules/mock/controller.mock.spec.d.ts +2 -0
  405. package/build/_modules/mock/controller.mock.spec.d.ts.map +1 -0
  406. package/build/_modules/mock/controller.mock.spec.js +23 -0
  407. package/build/_modules/mock/controller.mock.spec.js.map +1 -0
  408. package/build/_modules/mock/data-model.mock.spec.d.ts +2 -0
  409. package/build/_modules/mock/data-model.mock.spec.d.ts.map +1 -0
  410. package/build/_modules/mock/data-model.mock.spec.js +101 -0
  411. package/build/_modules/mock/data-model.mock.spec.js.map +1 -0
  412. package/build/_modules/mock/email-service-collection.mock.spec.d.ts +2 -0
  413. package/build/_modules/mock/email-service-collection.mock.spec.d.ts.map +1 -0
  414. package/build/_modules/mock/email-service-collection.mock.spec.js +21 -0
  415. package/build/_modules/mock/email-service-collection.mock.spec.js.map +1 -0
  416. package/build/_modules/mock/email-service.mock.spec.d.ts +2 -0
  417. package/build/_modules/mock/email-service.mock.spec.d.ts.map +1 -0
  418. package/build/_modules/mock/email-service.mock.spec.js +14 -0
  419. package/build/_modules/mock/email-service.mock.spec.js.map +1 -0
  420. package/build/_modules/mock/socket-client.mock.spec.d.ts +2 -0
  421. package/build/_modules/mock/socket-client.mock.spec.d.ts.map +1 -0
  422. package/build/_modules/mock/socket-client.mock.spec.js +32 -0
  423. package/build/_modules/mock/socket-client.mock.spec.js.map +1 -0
  424. package/build/_modules/mock/socket-server.mock.spec.d.ts +2 -0
  425. package/build/_modules/mock/socket-server.mock.spec.d.ts.map +1 -0
  426. package/build/_modules/mock/socket-server.mock.spec.js +36 -0
  427. package/build/_modules/mock/socket-server.mock.spec.js.map +1 -0
  428. package/build/_modules/oauth2/_routes/oauth2.controller.spec.d.ts +2 -0
  429. package/build/_modules/oauth2/_routes/oauth2.controller.spec.d.ts.map +1 -0
  430. package/build/_modules/oauth2/_routes/oauth2.controller.spec.js +89 -0
  431. package/build/_modules/oauth2/_routes/oauth2.controller.spec.js.map +1 -0
  432. package/build/_modules/oauth2/_services/oauth2.auth-service.spec.d.ts +2 -0
  433. package/build/_modules/oauth2/_services/oauth2.auth-service.spec.d.ts.map +1 -0
  434. package/build/_modules/oauth2/_services/oauth2.auth-service.spec.js +195 -0
  435. package/build/_modules/oauth2/_services/oauth2.auth-service.spec.js.map +1 -0
  436. package/build/_modules/oauth2/_services/oauth2.control-service.spec.d.ts +2 -0
  437. package/build/_modules/oauth2/_services/oauth2.control-service.spec.d.ts.map +1 -0
  438. package/build/_modules/oauth2/_services/oauth2.control-service.spec.js +432 -0
  439. package/build/_modules/oauth2/_services/oauth2.control-service.spec.js.map +1 -0
  440. package/build/_modules/rate-limit/rate-limit.middleware.spec.d.ts +2 -0
  441. package/build/_modules/rate-limit/rate-limit.middleware.spec.d.ts.map +1 -0
  442. package/build/_modules/rate-limit/rate-limit.middleware.spec.js +277 -0
  443. package/build/_modules/rate-limit/rate-limit.middleware.spec.js.map +1 -0
  444. package/build/_modules/scheduler/scheduler.controller.spec.d.ts +2 -0
  445. package/build/_modules/scheduler/scheduler.controller.spec.d.ts.map +1 -0
  446. package/build/_modules/scheduler/scheduler.controller.spec.js +35 -0
  447. package/build/_modules/scheduler/scheduler.controller.spec.js.map +1 -0
  448. package/build/_modules/scheduler/scheduler.service.spec.d.ts +2 -0
  449. package/build/_modules/scheduler/scheduler.service.spec.d.ts.map +1 -0
  450. package/build/_modules/scheduler/scheduler.service.spec.js +123 -0
  451. package/build/_modules/scheduler/scheduler.service.spec.js.map +1 -0
  452. package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.d.ts +2 -0
  453. package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.d.ts.map +1 -0
  454. package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.js +229 -0
  455. package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.js.map +1 -0
  456. package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.d.ts +2 -0
  457. package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.d.ts.map +1 -0
  458. package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.js +88 -0
  459. package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.js.map +1 -0
  460. package/build/_modules/server/errors/errors.control-service.spec.d.ts +2 -0
  461. package/build/_modules/server/errors/errors.control-service.spec.d.ts.map +1 -0
  462. package/build/_modules/server/errors/errors.control-service.spec.js +198 -0
  463. package/build/_modules/server/errors/errors.control-service.spec.js.map +1 -0
  464. package/build/_modules/server/errors/errors.controller.spec.d.ts +2 -0
  465. package/build/_modules/server/errors/errors.controller.spec.d.ts.map +1 -0
  466. package/build/_modules/server/errors/errors.controller.spec.js +287 -0
  467. package/build/_modules/server/errors/errors.controller.spec.js.map +1 -0
  468. package/build/_modules/server/errors/errors.data-service.spec.d.ts +2 -0
  469. package/build/_modules/server/errors/errors.data-service.spec.d.ts.map +1 -0
  470. package/build/_modules/server/errors/errors.data-service.spec.js +390 -0
  471. package/build/_modules/server/errors/errors.data-service.spec.js.map +1 -0
  472. package/build/_modules/server/server-status/server-status-snapshot.control-service.spec.d.ts +2 -0
  473. package/build/_modules/server/server-status/server-status-snapshot.control-service.spec.d.ts.map +1 -0
  474. package/build/_modules/server/server-status/server-status-snapshot.control-service.spec.js +59 -0
  475. package/build/_modules/server/server-status/server-status-snapshot.control-service.spec.js.map +1 -0
  476. package/build/_modules/server/server-status/server-status-snapshot.data-service.spec.d.ts +2 -0
  477. package/build/_modules/server/server-status/server-status-snapshot.data-service.spec.d.ts.map +1 -0
  478. package/build/_modules/server/server-status/server-status-snapshot.data-service.spec.js +58 -0
  479. package/build/_modules/server/server-status/server-status-snapshot.data-service.spec.js.map +1 -0
  480. package/build/_modules/server/server-status/server-status.control-service.spec.d.ts +2 -0
  481. package/build/_modules/server/server-status/server-status.control-service.spec.d.ts.map +1 -0
  482. package/build/_modules/server/server-status/server-status.control-service.spec.js +537 -0
  483. package/build/_modules/server/server-status/server-status.control-service.spec.js.map +1 -0
  484. package/build/_modules/server/server-status/server-status.controller.spec.d.ts +2 -0
  485. package/build/_modules/server/server-status/server-status.controller.spec.d.ts.map +1 -0
  486. package/build/_modules/server/server-status/server-status.controller.spec.js +223 -0
  487. package/build/_modules/server/server-status/server-status.controller.spec.js.map +1 -0
  488. package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.d.ts +2 -0
  489. package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.d.ts.map +1 -0
  490. package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.js +25 -0
  491. package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.js.map +1 -0
  492. package/build/_modules/socket/_models/socket-presence.control-model.d.ts.map +1 -1
  493. package/build/_modules/socket/_models/socket-presence.control-model.js +1 -0
  494. package/build/_modules/socket/_models/socket-presence.control-model.js.map +1 -1
  495. package/build/_modules/socket/_models/socket-presence.control-model.spec.d.ts +2 -0
  496. package/build/_modules/socket/_models/socket-presence.control-model.spec.d.ts.map +1 -0
  497. package/build/_modules/socket/_models/socket-presence.control-model.spec.js +137 -0
  498. package/build/_modules/socket/_models/socket-presence.control-model.spec.js.map +1 -0
  499. package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.d.ts +2 -0
  500. package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.d.ts.map +1 -0
  501. package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.js +58 -0
  502. package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.js.map +1 -0
  503. package/build/_modules/socket/_services/socket-client.service.spec.d.ts +2 -0
  504. package/build/_modules/socket/_services/socket-client.service.spec.d.ts.map +1 -0
  505. package/build/_modules/socket/_services/socket-client.service.spec.js +12 -0
  506. package/build/_modules/socket/_services/socket-client.service.spec.js.map +1 -0
  507. package/build/_modules/socket/_services/socket-server.service.d.ts +3 -1
  508. package/build/_modules/socket/_services/socket-server.service.d.ts.map +1 -1
  509. package/build/_modules/socket/_services/socket-server.service.js +32 -50
  510. package/build/_modules/socket/_services/socket-server.service.js.map +1 -1
  511. package/build/_modules/socket/_services/socket-server.service.spec.d.ts +2 -0
  512. package/build/_modules/socket/_services/socket-server.service.spec.d.ts.map +1 -0
  513. package/build/_modules/socket/_services/socket-server.service.spec.js +126 -0
  514. package/build/_modules/socket/_services/socket-server.service.spec.js.map +1 -0
  515. package/build/_modules/socket/app-extended.integration.spec.d.ts +2 -0
  516. package/build/_modules/socket/app-extended.integration.spec.d.ts.map +1 -0
  517. package/build/_modules/socket/app-extended.integration.spec.js +76 -0
  518. package/build/_modules/socket/app-extended.integration.spec.js.map +1 -0
  519. package/build/_modules/test/get-test-routing-module.util.spec.d.ts +2 -0
  520. package/build/_modules/test/get-test-routing-module.util.spec.d.ts.map +1 -0
  521. package/build/_modules/test/get-test-routing-module.util.spec.js +23 -0
  522. package/build/_modules/test/get-test-routing-module.util.spec.js.map +1 -0
  523. package/build/_modules/test/test.controller.spec.d.ts +2 -0
  524. package/build/_modules/test/test.controller.spec.d.ts.map +1 -0
  525. package/build/_modules/test/test.controller.spec.js +54 -0
  526. package/build/_modules/test/test.controller.spec.js.map +1 -0
  527. package/build/_modules/test-email-sink/_services/dynts-test-email-sink.service.spec.d.ts +2 -0
  528. package/build/_modules/test-email-sink/_services/dynts-test-email-sink.service.spec.d.ts.map +1 -0
  529. package/build/_modules/test-email-sink/_services/dynts-test-email-sink.service.spec.js +91 -0
  530. package/build/_modules/test-email-sink/_services/dynts-test-email-sink.service.spec.js.map +1 -0
  531. package/build/_modules/usage/usage.controller.spec.d.ts +2 -0
  532. package/build/_modules/usage/usage.controller.spec.d.ts.map +1 -0
  533. package/build/_modules/usage/usage.controller.spec.js +82 -0
  534. package/build/_modules/usage/usage.controller.spec.js.map +1 -0
  535. package/build/_modules/usage/usage.data-service.spec.d.ts +2 -0
  536. package/build/_modules/usage/usage.data-service.spec.d.ts.map +1 -0
  537. package/build/_modules/usage/usage.data-service.spec.js +284 -0
  538. package/build/_modules/usage/usage.data-service.spec.js.map +1 -0
  539. package/build/_services/base/api.service-base.spec.d.ts +2 -0
  540. package/build/_services/base/api.service-base.spec.d.ts.map +1 -0
  541. package/build/_services/base/api.service-base.spec.js +91 -0
  542. package/build/_services/base/api.service-base.spec.js.map +1 -0
  543. package/build/_services/base/archive-data.service.spec.d.ts +2 -0
  544. package/build/_services/base/archive-data.service.spec.d.ts.map +1 -0
  545. package/build/_services/base/archive-data.service.spec.js +149 -0
  546. package/build/_services/base/archive-data.service.spec.js.map +1 -0
  547. package/build/_services/base/data.service.spec.d.ts +2 -0
  548. package/build/_services/base/data.service.spec.d.ts.map +1 -0
  549. package/build/_services/base/data.service.spec.js +614 -0
  550. package/build/_services/base/data.service.spec.js.map +1 -0
  551. package/build/_services/base/db.service.encryption.spec.d.ts +2 -0
  552. package/build/_services/base/db.service.encryption.spec.d.ts.map +1 -0
  553. package/build/_services/base/db.service.encryption.spec.js +66 -0
  554. package/build/_services/base/db.service.encryption.spec.js.map +1 -0
  555. package/build/_services/base/db.service.spec.d.ts +2 -0
  556. package/build/_services/base/db.service.spec.d.ts.map +1 -0
  557. package/build/_services/base/db.service.spec.js +127 -0
  558. package/build/_services/base/db.service.spec.js.map +1 -0
  559. package/build/_services/base/singleton.service-base.spec.d.ts +2 -0
  560. package/build/_services/base/singleton.service-base.spec.d.ts.map +1 -0
  561. package/build/_services/base/singleton.service-base.spec.js +24 -0
  562. package/build/_services/base/singleton.service-base.spec.js.map +1 -0
  563. package/build/_services/base/singleton.service.spec.d.ts +2 -0
  564. package/build/_services/base/singleton.service.spec.d.ts.map +1 -0
  565. package/build/_services/base/singleton.service.spec.js +88 -0
  566. package/build/_services/base/singleton.service.spec.js.map +1 -0
  567. package/build/_services/core/api.service.spec.d.ts +2 -0
  568. package/build/_services/core/api.service.spec.d.ts.map +1 -0
  569. package/build/_services/core/api.service.spec.js +150 -0
  570. package/build/_services/core/api.service.spec.js.map +1 -0
  571. package/build/_services/core/auth.service.spec.d.ts +2 -0
  572. package/build/_services/core/auth.service.spec.d.ts.map +1 -0
  573. package/build/_services/core/auth.service.spec.js +129 -0
  574. package/build/_services/core/auth.service.spec.js.map +1 -0
  575. package/build/_services/core/collection-growth-monitor.service.spec.d.ts +2 -0
  576. package/build/_services/core/collection-growth-monitor.service.spec.d.ts.map +1 -0
  577. package/build/_services/core/collection-growth-monitor.service.spec.js +51 -0
  578. package/build/_services/core/collection-growth-monitor.service.spec.js.map +1 -0
  579. package/build/_services/core/diagnostics.service.spec.d.ts +2 -0
  580. package/build/_services/core/diagnostics.service.spec.d.ts.map +1 -0
  581. package/build/_services/core/diagnostics.service.spec.js +40 -0
  582. package/build/_services/core/diagnostics.service.spec.js.map +1 -0
  583. package/build/_services/core/email.service.spec.d.ts +2 -0
  584. package/build/_services/core/email.service.spec.d.ts.map +1 -0
  585. package/build/_services/core/email.service.spec.js +77 -0
  586. package/build/_services/core/email.service.spec.js.map +1 -0
  587. package/build/_services/core/event-loop-diag.service.spec.d.ts +2 -0
  588. package/build/_services/core/event-loop-diag.service.spec.d.ts.map +1 -0
  589. package/build/_services/core/event-loop-diag.service.spec.js +18 -0
  590. package/build/_services/core/event-loop-diag.service.spec.js.map +1 -0
  591. package/build/_services/core/global.service.spec.d.ts +2 -0
  592. package/build/_services/core/global.service.spec.d.ts.map +1 -0
  593. package/build/_services/core/global.service.spec.js +235 -0
  594. package/build/_services/core/global.service.spec.js.map +1 -0
  595. package/build/_services/core/memory-guard.service.spec.d.ts +2 -0
  596. package/build/_services/core/memory-guard.service.spec.d.ts.map +1 -0
  597. package/build/_services/core/memory-guard.service.spec.js +219 -0
  598. package/build/_services/core/memory-guard.service.spec.js.map +1 -0
  599. package/build/_services/core/migration-runner.service.spec.d.ts +2 -0
  600. package/build/_services/core/migration-runner.service.spec.d.ts.map +1 -0
  601. package/build/_services/core/migration-runner.service.spec.js +77 -0
  602. package/build/_services/core/migration-runner.service.spec.js.map +1 -0
  603. package/build/_services/core/request-hunter.service.spec.d.ts +2 -0
  604. package/build/_services/core/request-hunter.service.spec.d.ts.map +1 -0
  605. package/build/_services/core/request-hunter.service.spec.js +101 -0
  606. package/build/_services/core/request-hunter.service.spec.js.map +1 -0
  607. package/build/_services/core/service-collection.service.spec.d.ts +2 -0
  608. package/build/_services/core/service-collection.service.spec.d.ts.map +1 -0
  609. package/build/_services/core/service-collection.service.spec.js +39 -0
  610. package/build/_services/core/service-collection.service.spec.js.map +1 -0
  611. package/build/_services/route/controller.service.spec.d.ts +2 -0
  612. package/build/_services/route/controller.service.spec.d.ts.map +1 -0
  613. package/build/_services/route/controller.service.spec.js +48 -0
  614. package/build/_services/route/controller.service.spec.js.map +1 -0
  615. package/build/_services/route/routing-module.service.spec.d.ts +2 -0
  616. package/build/_services/route/routing-module.service.spec.d.ts.map +1 -0
  617. package/build/_services/route/routing-module.service.spec.js +81 -0
  618. package/build/_services/route/routing-module.service.spec.js.map +1 -0
  619. package/build/_services/server/app.server-retention.spec.d.ts +2 -0
  620. package/build/_services/server/app.server-retention.spec.d.ts.map +1 -0
  621. package/build/_services/server/app.server-retention.spec.js +93 -0
  622. package/build/_services/server/app.server-retention.spec.js.map +1 -0
  623. package/build/_services/shared.static-service.spec.d.ts +2 -0
  624. package/build/_services/shared.static-service.spec.d.ts.map +1 -0
  625. package/build/_services/shared.static-service.spec.js +82 -0
  626. package/build/_services/shared.static-service.spec.js.map +1 -0
  627. package/coverage/_collections/archive.util.ts.html +139 -0
  628. package/coverage/_collections/get-environment-settings.util.ts.html +229 -0
  629. package/coverage/_collections/index.html +146 -0
  630. package/coverage/_collections/star.controller.ts.html +472 -0
  631. package/coverage/_models/control-models/api-call-params.control-model.ts.html +511 -0
  632. package/coverage/_models/control-models/app-ext-system-controls.control-model.ts.html +112 -0
  633. package/coverage/_models/control-models/app-params.control-model.ts.html +475 -0
  634. package/coverage/_models/control-models/app-system-controls.control-model.ts.html +112 -0
  635. package/coverage/_models/control-models/endpoint-params.control-model.ts.html +1618 -0
  636. package/coverage/_models/control-models/http-settings.control-model.ts.html +172 -0
  637. package/coverage/_models/control-models/index.html +206 -0
  638. package/coverage/_models/control-models/system-control.control-model.ts.html +121 -0
  639. package/coverage/_modules/ai/_models/ai-input-interfaces.ts.html +436 -0
  640. package/coverage/_modules/ai/_models/index.html +116 -0
  641. package/coverage/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.ts.html +1993 -0
  642. package/coverage/_modules/ai/_modules/document-ai/_collections/dai-document.util.ts.html +340 -0
  643. package/coverage/_modules/ai/_modules/document-ai/_collections/index.html +131 -0
  644. package/coverage/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-chunk.data-model.ts.html +523 -0
  645. package/coverage/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-page.data-model.ts.html +571 -0
  646. package/coverage/_modules/ai/_modules/document-ai/_models/data-models/dai-document.data-model.ts.html +382 -0
  647. package/coverage/_modules/ai/_modules/document-ai/_models/data-models/index.html +146 -0
  648. package/coverage/_modules/ai/_modules/open-ai/_collections/index.html +131 -0
  649. package/coverage/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests-hu.conts.ts.html +331 -0
  650. package/coverage/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests.conts.ts.html +310 -0
  651. package/coverage/_modules/ai/_modules/open-ai/_services/data-services/index.html +161 -0
  652. package/coverage/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-chunk-data.service.ts.html +958 -0
  653. package/coverage/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-page.data-service.ts.html +1801 -0
  654. package/coverage/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.ts.html +1390 -0
  655. package/coverage/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.ts.html +1915 -0
  656. package/coverage/_modules/ai/_modules/open-ai/_services/index.html +146 -0
  657. package/coverage/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.ts.html +334 -0
  658. package/coverage/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.ts.html +1822 -0
  659. package/coverage/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.ts.html +2584 -0
  660. package/coverage/_modules/ai/_services/ai-embedding.service-base.ts.html +208 -0
  661. package/coverage/_modules/ai/_services/ai-llm-chat.service-base.ts.html +289 -0
  662. package/coverage/_modules/ai/_services/ai-llm.service-base.ts.html +1060 -0
  663. package/coverage/_modules/ai/_services/ai-provider.service-base.ts.html +172 -0
  664. package/coverage/_modules/ai/_services/index.html +161 -0
  665. package/coverage/_modules/assistant/_collections/ass.util.ts.html +235 -0
  666. package/coverage/_modules/assistant/_collections/index.html +116 -0
  667. package/coverage/_modules/assistant/_services/ass-io.control-service.ts.html +307 -0
  668. package/coverage/_modules/assistant/_services/ass-main.control-service.ts.html +406 -0
  669. package/coverage/_modules/assistant/_services/index.html +131 -0
  670. package/coverage/_modules/bot/_modules/discord-bot/_models/dib-platform.types.ts.html +112 -0
  671. package/coverage/_modules/bot/_modules/discord-bot/_models/index.html +116 -0
  672. package/coverage/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.ts.html +1978 -0
  673. package/coverage/_modules/bot/_modules/discord-bot/_services/index.html +116 -0
  674. package/coverage/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.ts.html +250 -0
  675. package/coverage/_modules/bot/_modules/dynamo-bot/_collections/index.html +116 -0
  676. package/coverage/_modules/bot/_modules/dynamo-bot/_models/dyb-platform.types.ts.html +130 -0
  677. package/coverage/_modules/bot/_modules/dynamo-bot/_models/index.html +116 -0
  678. package/coverage/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.ts.html +1414 -0
  679. package/coverage/_modules/bot/_modules/dynamo-bot/_services/index.html +116 -0
  680. package/coverage/_modules/bot/_modules/slack-bot/_models/index.html +116 -0
  681. package/coverage/_modules/bot/_modules/slack-bot/_models/slb-platform.types.ts.html +112 -0
  682. package/coverage/_modules/bot/_modules/slack-bot/_services/index.html +116 -0
  683. package/coverage/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.ts.html +664 -0
  684. package/coverage/_modules/bot/_modules/teams-bot/_models/index.html +116 -0
  685. package/coverage/_modules/bot/_modules/teams-bot/_models/teb-platform.types.ts.html +112 -0
  686. package/coverage/_modules/bot/_modules/teams-bot/_services/index.html +116 -0
  687. package/coverage/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.ts.html +664 -0
  688. package/coverage/_modules/bot/_services/bot-commands.control-service.ts.html +559 -0
  689. package/coverage/_modules/bot/_services/bot-io.control-service.ts.html +1072 -0
  690. package/coverage/_modules/bot/_services/bot-main.control-service.ts.html +1552 -0
  691. package/coverage/_modules/bot/_services/bot-messaging-provider.service-base.ts.html +556 -0
  692. package/coverage/_modules/bot/_services/bot-routines.control-service.ts.html +319 -0
  693. package/coverage/_modules/bot/_services/index.html +176 -0
  694. package/coverage/_modules/custom-data/custom-data.controller.ts.html +292 -0
  695. package/coverage/_modules/custom-data/custom-data.data-service.ts.html +148 -0
  696. package/coverage/_modules/custom-data/get-custom-data-routing-module.util.ts.html +157 -0
  697. package/coverage/_modules/custom-data/index.html +146 -0
  698. package/coverage/_modules/defaults/_models/default-user.data-model.ts.html +301 -0
  699. package/coverage/_modules/defaults/_models/index.html +116 -0
  700. package/coverage/_modules/defaults/_services/default-auth.service.ts.html +616 -0
  701. package/coverage/_modules/defaults/_services/default-socket-events.service.ts.html +268 -0
  702. package/coverage/_modules/defaults/_services/default-user.data-service.ts.html +379 -0
  703. package/coverage/_modules/defaults/_services/index.html +146 -0
  704. package/coverage/_modules/discord-assistant/_collections/dias.util.ts.html +481 -0
  705. package/coverage/_modules/discord-assistant/_collections/index.html +116 -0
  706. package/coverage/_modules/discord-assistant/_models/dias-knowledge.data-model.ts.html +241 -0
  707. package/coverage/_modules/discord-assistant/_models/index.html +116 -0
  708. package/coverage/_modules/discord-assistant/_services/dias-chunk.data-service.ts.html +616 -0
  709. package/coverage/_modules/discord-assistant/_services/dias-io.control-service.ts.html +292 -0
  710. package/coverage/_modules/discord-assistant/_services/dias-main.control-service.ts.html +166 -0
  711. package/coverage/_modules/discord-assistant/_services/dias.service-base.ts.html +313 -0
  712. package/coverage/_modules/discord-assistant/_services/index.html +161 -0
  713. package/coverage/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.ts.html +118 -0
  714. package/coverage/_modules/discord-assistant-voiced/_services/index.html +116 -0
  715. package/coverage/_modules/discord-bot/_collections/dibo-global-settings.conts.ts.html +250 -0
  716. package/coverage/_modules/discord-bot/_collections/dibo-operations.util.ts.html +1246 -0
  717. package/coverage/_modules/discord-bot/_collections/index.html +131 -0
  718. package/coverage/_modules/discord-bot/_models/dibo-last-mention-date.inteface.ts.html +106 -0
  719. package/coverage/_modules/discord-bot/_models/index.html +116 -0
  720. package/coverage/_modules/discord-bot/_services/dibo-commands.control-service.ts.html +544 -0
  721. package/coverage/_modules/discord-bot/_services/dibo-io.control-service.ts.html +1003 -0
  722. package/coverage/_modules/discord-bot/_services/dibo-main.control-service.ts.html +1546 -0
  723. package/coverage/_modules/discord-bot/_services/dibo-routines.control-service.ts.html +376 -0
  724. package/coverage/_modules/discord-bot/_services/index.html +161 -0
  725. package/coverage/_modules/messaging/_collections/get-messaging-routing-module.util.ts.html +163 -0
  726. package/coverage/_modules/messaging/_collections/index.html +131 -0
  727. package/coverage/_modules/messaging/_collections/msg.util.ts.html +334 -0
  728. package/coverage/_modules/messaging/_services/index.html +191 -0
  729. package/coverage/_modules/messaging/_services/msg-conversation.data-service.ts.html +523 -0
  730. package/coverage/_modules/messaging/_services/msg-events.service.ts.html +886 -0
  731. package/coverage/_modules/messaging/_services/msg-integration.control-service.ts.html +622 -0
  732. package/coverage/_modules/messaging/_services/msg-main.control-service.ts.html +1738 -0
  733. package/coverage/_modules/messaging/_services/msg-message.data-service.ts.html +472 -0
  734. package/coverage/_modules/messaging/_services/msg.controller.ts.html +1195 -0
  735. package/coverage/_modules/mock/app-extended-server.mock.ts.html +688 -0
  736. package/coverage/_modules/mock/app-params.mock.ts.html +112 -0
  737. package/coverage/_modules/mock/app-server.mock.ts.html +649 -0
  738. package/coverage/_modules/mock/auth-service.mock.ts.html +169 -0
  739. package/coverage/_modules/mock/controller.mock.ts.html +133 -0
  740. package/coverage/_modules/mock/data-model.mock.ts.html +331 -0
  741. package/coverage/_modules/mock/email-service-collection.mock.ts.html +130 -0
  742. package/coverage/_modules/mock/email-service.mock.ts.html +145 -0
  743. package/coverage/_modules/mock/endpoint.mock.ts.html +358 -0
  744. package/coverage/_modules/mock/index.html +266 -0
  745. package/coverage/_modules/mock/socket-client.mock.ts.html +220 -0
  746. package/coverage/_modules/mock/socket-server.mock.ts.html +247 -0
  747. package/coverage/_modules/oauth2/_routes/index.html +116 -0
  748. package/coverage/_modules/oauth2/_routes/oauth2.controller.ts.html +379 -0
  749. package/coverage/_modules/oauth2/_services/index.html +131 -0
  750. package/coverage/_modules/oauth2/_services/oauth2.auth-service.ts.html +781 -0
  751. package/coverage/_modules/oauth2/_services/oauth2.control-service.ts.html +2044 -0
  752. package/coverage/_modules/server/errors/errors.control-service.ts.html +292 -0
  753. package/coverage/_modules/server/errors/errors.controller.ts.html +895 -0
  754. package/coverage/_modules/server/errors/errors.data-service.ts.html +1666 -0
  755. package/coverage/_modules/server/errors/index.html +146 -0
  756. package/coverage/_modules/server/server-status/index.html +161 -0
  757. package/coverage/_modules/server/server-status/server-status-snapshot.control-service.ts.html +136 -0
  758. package/coverage/_modules/server/server-status/server-status-snapshot.data-service.ts.html +196 -0
  759. package/coverage/_modules/server/server-status/server-status.control-service.ts.html +1093 -0
  760. package/coverage/_modules/server/server-status/server-status.controller.ts.html +478 -0
  761. package/coverage/_modules/socket/_models/index.html +146 -0
  762. package/coverage/_modules/socket/_models/socket-client-service-params.control-model.ts.html +151 -0
  763. package/coverage/_modules/socket/_models/socket-presence.control-model.ts.html +715 -0
  764. package/coverage/_modules/socket/_models/socket-server-service-params.control-model.ts.html +145 -0
  765. package/coverage/_modules/socket/_services/index.html +131 -0
  766. package/coverage/_modules/socket/_services/socket-client.service.ts.html +862 -0
  767. package/coverage/_modules/socket/_services/socket-server.service.ts.html +3196 -0
  768. package/coverage/_modules/socket/app-extended.server.ts.html +1954 -0
  769. package/coverage/_modules/socket/index.html +116 -0
  770. package/coverage/_modules/test/get-test-routing-module.util.ts.html +154 -0
  771. package/coverage/_modules/test/index.html +131 -0
  772. package/coverage/_modules/test/test.controller.ts.html +430 -0
  773. package/coverage/_modules/usage/get-usage-routing-module.util.ts.html +151 -0
  774. package/coverage/_modules/usage/index.html +146 -0
  775. package/coverage/_modules/usage/usage.controller.ts.html +463 -0
  776. package/coverage/_modules/usage/usage.data-service.ts.html +640 -0
  777. package/coverage/_services/base/api.service-base.ts.html +307 -0
  778. package/coverage/_services/base/archive-data.service.ts.html +727 -0
  779. package/coverage/_services/base/data.service.ts.html +7033 -0
  780. package/coverage/_services/base/db.service.ts.html +4786 -0
  781. package/coverage/_services/base/index.html +191 -0
  782. package/coverage/_services/base/singleton.service-base.ts.html +157 -0
  783. package/coverage/_services/base/singleton.service.ts.html +190 -0
  784. package/coverage/_services/core/api.service.ts.html +1900 -0
  785. package/coverage/_services/core/auth.service.ts.html +607 -0
  786. package/coverage/_services/core/email.service.ts.html +2302 -0
  787. package/coverage/_services/core/global.service.ts.html +1363 -0
  788. package/coverage/_services/core/index.html +176 -0
  789. package/coverage/_services/core/service-collection.service.ts.html +103 -0
  790. package/coverage/_services/index.html +116 -0
  791. package/coverage/_services/route/controller.service.ts.html +475 -0
  792. package/coverage/_services/route/index.html +131 -0
  793. package/coverage/_services/route/routing-module.service.ts.html +1075 -0
  794. package/coverage/_services/server/app.server.ts.html +4408 -0
  795. package/coverage/_services/server/index.html +116 -0
  796. package/coverage/_services/shared.static-service.ts.html +319 -0
  797. package/coverage/base.css +224 -0
  798. package/coverage/block-navigation.js +87 -0
  799. package/coverage/favicon.png +0 -0
  800. package/coverage/index.html +821 -0
  801. package/coverage/lcov-report/_collections/archive.util.ts.html +139 -0
  802. package/coverage/lcov-report/_collections/get-environment-settings.util.ts.html +229 -0
  803. package/coverage/lcov-report/_collections/index.html +146 -0
  804. package/coverage/lcov-report/_collections/star.controller.ts.html +472 -0
  805. package/coverage/lcov-report/_models/control-models/api-call-params.control-model.ts.html +511 -0
  806. package/coverage/lcov-report/_models/control-models/app-ext-system-controls.control-model.ts.html +112 -0
  807. package/coverage/lcov-report/_models/control-models/app-params.control-model.ts.html +475 -0
  808. package/coverage/lcov-report/_models/control-models/app-system-controls.control-model.ts.html +112 -0
  809. package/coverage/lcov-report/_models/control-models/endpoint-params.control-model.ts.html +1618 -0
  810. package/coverage/lcov-report/_models/control-models/http-settings.control-model.ts.html +172 -0
  811. package/coverage/lcov-report/_models/control-models/index.html +206 -0
  812. package/coverage/lcov-report/_models/control-models/system-control.control-model.ts.html +121 -0
  813. package/coverage/lcov-report/_modules/ai/_models/ai-input-interfaces.ts.html +436 -0
  814. package/coverage/lcov-report/_modules/ai/_models/index.html +116 -0
  815. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.ts.html +1993 -0
  816. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_collections/dai-document.util.ts.html +340 -0
  817. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_collections/index.html +131 -0
  818. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-chunk.data-model.ts.html +523 -0
  819. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-page.data-model.ts.html +571 -0
  820. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_models/data-models/dai-document.data-model.ts.html +382 -0
  821. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_models/data-models/index.html +146 -0
  822. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_collections/index.html +131 -0
  823. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests-hu.conts.ts.html +331 -0
  824. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests.conts.ts.html +310 -0
  825. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/data-services/index.html +161 -0
  826. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-chunk-data.service.ts.html +958 -0
  827. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-page.data-service.ts.html +1801 -0
  828. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.ts.html +1390 -0
  829. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.ts.html +1915 -0
  830. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/index.html +146 -0
  831. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.ts.html +334 -0
  832. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.ts.html +1822 -0
  833. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.ts.html +2584 -0
  834. package/coverage/lcov-report/_modules/ai/_services/ai-embedding.service-base.ts.html +208 -0
  835. package/coverage/lcov-report/_modules/ai/_services/ai-llm-chat.service-base.ts.html +289 -0
  836. package/coverage/lcov-report/_modules/ai/_services/ai-llm.service-base.ts.html +1060 -0
  837. package/coverage/lcov-report/_modules/ai/_services/ai-provider.service-base.ts.html +172 -0
  838. package/coverage/lcov-report/_modules/ai/_services/index.html +161 -0
  839. package/coverage/lcov-report/_modules/assistant/_collections/ass.util.ts.html +235 -0
  840. package/coverage/lcov-report/_modules/assistant/_collections/index.html +116 -0
  841. package/coverage/lcov-report/_modules/assistant/_services/ass-io.control-service.ts.html +307 -0
  842. package/coverage/lcov-report/_modules/assistant/_services/ass-main.control-service.ts.html +406 -0
  843. package/coverage/lcov-report/_modules/assistant/_services/index.html +131 -0
  844. package/coverage/lcov-report/_modules/bot/_modules/discord-bot/_models/dib-platform.types.ts.html +112 -0
  845. package/coverage/lcov-report/_modules/bot/_modules/discord-bot/_models/index.html +116 -0
  846. package/coverage/lcov-report/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.ts.html +1978 -0
  847. package/coverage/lcov-report/_modules/bot/_modules/discord-bot/_services/index.html +116 -0
  848. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.ts.html +250 -0
  849. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_collections/index.html +116 -0
  850. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_models/dyb-platform.types.ts.html +130 -0
  851. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_models/index.html +116 -0
  852. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.ts.html +1414 -0
  853. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_services/index.html +116 -0
  854. package/coverage/lcov-report/_modules/bot/_modules/slack-bot/_models/index.html +116 -0
  855. package/coverage/lcov-report/_modules/bot/_modules/slack-bot/_models/slb-platform.types.ts.html +112 -0
  856. package/coverage/lcov-report/_modules/bot/_modules/slack-bot/_services/index.html +116 -0
  857. package/coverage/lcov-report/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.ts.html +664 -0
  858. package/coverage/lcov-report/_modules/bot/_modules/teams-bot/_models/index.html +116 -0
  859. package/coverage/lcov-report/_modules/bot/_modules/teams-bot/_models/teb-platform.types.ts.html +112 -0
  860. package/coverage/lcov-report/_modules/bot/_modules/teams-bot/_services/index.html +116 -0
  861. package/coverage/lcov-report/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.ts.html +664 -0
  862. package/coverage/lcov-report/_modules/bot/_services/bot-commands.control-service.ts.html +559 -0
  863. package/coverage/lcov-report/_modules/bot/_services/bot-io.control-service.ts.html +1072 -0
  864. package/coverage/lcov-report/_modules/bot/_services/bot-main.control-service.ts.html +1552 -0
  865. package/coverage/lcov-report/_modules/bot/_services/bot-messaging-provider.service-base.ts.html +556 -0
  866. package/coverage/lcov-report/_modules/bot/_services/bot-routines.control-service.ts.html +319 -0
  867. package/coverage/lcov-report/_modules/bot/_services/index.html +176 -0
  868. package/coverage/lcov-report/_modules/custom-data/custom-data.controller.ts.html +292 -0
  869. package/coverage/lcov-report/_modules/custom-data/custom-data.data-service.ts.html +148 -0
  870. package/coverage/lcov-report/_modules/custom-data/get-custom-data-routing-module.util.ts.html +157 -0
  871. package/coverage/lcov-report/_modules/custom-data/index.html +146 -0
  872. package/coverage/lcov-report/_modules/defaults/_models/default-user.data-model.ts.html +301 -0
  873. package/coverage/lcov-report/_modules/defaults/_models/index.html +116 -0
  874. package/coverage/lcov-report/_modules/defaults/_services/default-auth.service.ts.html +616 -0
  875. package/coverage/lcov-report/_modules/defaults/_services/default-socket-events.service.ts.html +268 -0
  876. package/coverage/lcov-report/_modules/defaults/_services/default-user.data-service.ts.html +379 -0
  877. package/coverage/lcov-report/_modules/defaults/_services/index.html +146 -0
  878. package/coverage/lcov-report/_modules/discord-assistant/_collections/dias.util.ts.html +481 -0
  879. package/coverage/lcov-report/_modules/discord-assistant/_collections/index.html +116 -0
  880. package/coverage/lcov-report/_modules/discord-assistant/_models/dias-knowledge.data-model.ts.html +241 -0
  881. package/coverage/lcov-report/_modules/discord-assistant/_models/index.html +116 -0
  882. package/coverage/lcov-report/_modules/discord-assistant/_services/dias-chunk.data-service.ts.html +616 -0
  883. package/coverage/lcov-report/_modules/discord-assistant/_services/dias-io.control-service.ts.html +292 -0
  884. package/coverage/lcov-report/_modules/discord-assistant/_services/dias-main.control-service.ts.html +166 -0
  885. package/coverage/lcov-report/_modules/discord-assistant/_services/dias.service-base.ts.html +313 -0
  886. package/coverage/lcov-report/_modules/discord-assistant/_services/index.html +161 -0
  887. package/coverage/lcov-report/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.ts.html +118 -0
  888. package/coverage/lcov-report/_modules/discord-assistant-voiced/_services/index.html +116 -0
  889. package/coverage/lcov-report/_modules/discord-bot/_collections/dibo-global-settings.conts.ts.html +250 -0
  890. package/coverage/lcov-report/_modules/discord-bot/_collections/dibo-operations.util.ts.html +1246 -0
  891. package/coverage/lcov-report/_modules/discord-bot/_collections/index.html +131 -0
  892. package/coverage/lcov-report/_modules/discord-bot/_models/dibo-last-mention-date.inteface.ts.html +106 -0
  893. package/coverage/lcov-report/_modules/discord-bot/_models/index.html +116 -0
  894. package/coverage/lcov-report/_modules/discord-bot/_services/dibo-commands.control-service.ts.html +544 -0
  895. package/coverage/lcov-report/_modules/discord-bot/_services/dibo-io.control-service.ts.html +1003 -0
  896. package/coverage/lcov-report/_modules/discord-bot/_services/dibo-main.control-service.ts.html +1546 -0
  897. package/coverage/lcov-report/_modules/discord-bot/_services/dibo-routines.control-service.ts.html +376 -0
  898. package/coverage/lcov-report/_modules/discord-bot/_services/index.html +161 -0
  899. package/coverage/lcov-report/_modules/messaging/_collections/get-messaging-routing-module.util.ts.html +163 -0
  900. package/coverage/lcov-report/_modules/messaging/_collections/index.html +131 -0
  901. package/coverage/lcov-report/_modules/messaging/_collections/msg.util.ts.html +334 -0
  902. package/coverage/lcov-report/_modules/messaging/_services/index.html +191 -0
  903. package/coverage/lcov-report/_modules/messaging/_services/msg-conversation.data-service.ts.html +523 -0
  904. package/coverage/lcov-report/_modules/messaging/_services/msg-events.service.ts.html +886 -0
  905. package/coverage/lcov-report/_modules/messaging/_services/msg-integration.control-service.ts.html +622 -0
  906. package/coverage/lcov-report/_modules/messaging/_services/msg-main.control-service.ts.html +1738 -0
  907. package/coverage/lcov-report/_modules/messaging/_services/msg-message.data-service.ts.html +472 -0
  908. package/coverage/lcov-report/_modules/messaging/_services/msg.controller.ts.html +1195 -0
  909. package/coverage/lcov-report/_modules/mock/app-extended-server.mock.ts.html +688 -0
  910. package/coverage/lcov-report/_modules/mock/app-params.mock.ts.html +112 -0
  911. package/coverage/lcov-report/_modules/mock/app-server.mock.ts.html +649 -0
  912. package/coverage/lcov-report/_modules/mock/auth-service.mock.ts.html +169 -0
  913. package/coverage/lcov-report/_modules/mock/controller.mock.ts.html +133 -0
  914. package/coverage/lcov-report/_modules/mock/data-model.mock.ts.html +331 -0
  915. package/coverage/lcov-report/_modules/mock/email-service-collection.mock.ts.html +130 -0
  916. package/coverage/lcov-report/_modules/mock/email-service.mock.ts.html +145 -0
  917. package/coverage/lcov-report/_modules/mock/endpoint.mock.ts.html +358 -0
  918. package/coverage/lcov-report/_modules/mock/index.html +266 -0
  919. package/coverage/lcov-report/_modules/mock/socket-client.mock.ts.html +220 -0
  920. package/coverage/lcov-report/_modules/mock/socket-server.mock.ts.html +247 -0
  921. package/coverage/lcov-report/_modules/oauth2/_routes/index.html +116 -0
  922. package/coverage/lcov-report/_modules/oauth2/_routes/oauth2.controller.ts.html +379 -0
  923. package/coverage/lcov-report/_modules/oauth2/_services/index.html +131 -0
  924. package/coverage/lcov-report/_modules/oauth2/_services/oauth2.auth-service.ts.html +781 -0
  925. package/coverage/lcov-report/_modules/oauth2/_services/oauth2.control-service.ts.html +2044 -0
  926. package/coverage/lcov-report/_modules/server/errors/errors.control-service.ts.html +292 -0
  927. package/coverage/lcov-report/_modules/server/errors/errors.controller.ts.html +895 -0
  928. package/coverage/lcov-report/_modules/server/errors/errors.data-service.ts.html +1666 -0
  929. package/coverage/lcov-report/_modules/server/errors/index.html +146 -0
  930. package/coverage/lcov-report/_modules/server/server-status/index.html +161 -0
  931. package/coverage/lcov-report/_modules/server/server-status/server-status-snapshot.control-service.ts.html +136 -0
  932. package/coverage/lcov-report/_modules/server/server-status/server-status-snapshot.data-service.ts.html +196 -0
  933. package/coverage/lcov-report/_modules/server/server-status/server-status.control-service.ts.html +1093 -0
  934. package/coverage/lcov-report/_modules/server/server-status/server-status.controller.ts.html +478 -0
  935. package/coverage/lcov-report/_modules/socket/_models/index.html +146 -0
  936. package/coverage/lcov-report/_modules/socket/_models/socket-client-service-params.control-model.ts.html +151 -0
  937. package/coverage/lcov-report/_modules/socket/_models/socket-presence.control-model.ts.html +715 -0
  938. package/coverage/lcov-report/_modules/socket/_models/socket-server-service-params.control-model.ts.html +145 -0
  939. package/coverage/lcov-report/_modules/socket/_services/index.html +131 -0
  940. package/coverage/lcov-report/_modules/socket/_services/socket-client.service.ts.html +862 -0
  941. package/coverage/lcov-report/_modules/socket/_services/socket-server.service.ts.html +3196 -0
  942. package/coverage/lcov-report/_modules/socket/app-extended.server.ts.html +1954 -0
  943. package/coverage/lcov-report/_modules/socket/index.html +116 -0
  944. package/coverage/lcov-report/_modules/test/get-test-routing-module.util.ts.html +154 -0
  945. package/coverage/lcov-report/_modules/test/index.html +131 -0
  946. package/coverage/lcov-report/_modules/test/test.controller.ts.html +430 -0
  947. package/coverage/lcov-report/_modules/usage/get-usage-routing-module.util.ts.html +151 -0
  948. package/coverage/lcov-report/_modules/usage/index.html +146 -0
  949. package/coverage/lcov-report/_modules/usage/usage.controller.ts.html +463 -0
  950. package/coverage/lcov-report/_modules/usage/usage.data-service.ts.html +640 -0
  951. package/coverage/lcov-report/_services/base/api.service-base.ts.html +307 -0
  952. package/coverage/lcov-report/_services/base/archive-data.service.ts.html +727 -0
  953. package/coverage/lcov-report/_services/base/data.service.ts.html +7033 -0
  954. package/coverage/lcov-report/_services/base/db.service.ts.html +4786 -0
  955. package/coverage/lcov-report/_services/base/index.html +191 -0
  956. package/coverage/lcov-report/_services/base/singleton.service-base.ts.html +157 -0
  957. package/coverage/lcov-report/_services/base/singleton.service.ts.html +190 -0
  958. package/coverage/lcov-report/_services/core/api.service.ts.html +1900 -0
  959. package/coverage/lcov-report/_services/core/auth.service.ts.html +607 -0
  960. package/coverage/lcov-report/_services/core/email.service.ts.html +2302 -0
  961. package/coverage/lcov-report/_services/core/global.service.ts.html +1363 -0
  962. package/coverage/lcov-report/_services/core/index.html +176 -0
  963. package/coverage/lcov-report/_services/core/service-collection.service.ts.html +103 -0
  964. package/coverage/lcov-report/_services/index.html +116 -0
  965. package/coverage/lcov-report/_services/route/controller.service.ts.html +475 -0
  966. package/coverage/lcov-report/_services/route/index.html +131 -0
  967. package/coverage/lcov-report/_services/route/routing-module.service.ts.html +1075 -0
  968. package/coverage/lcov-report/_services/server/app.server.ts.html +4408 -0
  969. package/coverage/lcov-report/_services/server/index.html +116 -0
  970. package/coverage/lcov-report/_services/shared.static-service.ts.html +319 -0
  971. package/coverage/lcov-report/base.css +224 -0
  972. package/coverage/lcov-report/block-navigation.js +87 -0
  973. package/coverage/lcov-report/favicon.png +0 -0
  974. package/coverage/lcov-report/index.html +821 -0
  975. package/coverage/lcov-report/prettify.css +1 -0
  976. package/coverage/lcov-report/prettify.js +2 -0
  977. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  978. package/coverage/lcov-report/sorter.js +210 -0
  979. package/coverage/lcov.info +29957 -0
  980. package/coverage/prettify.css +1 -0
  981. package/coverage/prettify.js +2 -0
  982. package/coverage/sort-arrow-sprite.png +0 -0
  983. package/coverage/sorter.js +210 -0
  984. package/coverage/tmp/coverage-111712-1762988673351-0.json +1 -0
  985. package/coverage/tmp/coverage-112308-1762988673527-0.json +1 -0
  986. package/coverage/tmp/coverage-112324-1762988615026-0.json +1 -0
  987. package/coverage/tmp/coverage-112436-1762988615438-0.json +1 -0
  988. package/coverage/tmp/coverage-112512-1762988673477-0.json +1 -0
  989. package/eslint.config.js +3 -3
  990. package/logs/cicd-job.json +3 -0
  991. package/logs/cicd-output.log +31 -0
  992. package/logs/cicd-report.json +148 -0
  993. package/logs/cicd-status.json +70 -0
  994. package/nodemon.json +24 -24
  995. package/package.json +1 -1
  996. package/pnpm-workspace.yaml +5 -5
  997. package/scripts/run-coverage-tests.js +28 -28
  998. package/spec/support/helpers/spec-reporter-loader.js +359 -359
  999. package/spec/support/helpers/ts-node-helper.js +93 -93
  1000. package/spec/support/jasmine.coverage.json +24 -24
  1001. package/spec/support/jasmine.json +24 -24
  1002. package/src/_collections/archive.util.spec.ts +57 -57
  1003. package/src/_collections/archive.util.ts +18 -18
  1004. package/src/_collections/atlas-default-db-options.const.ts +9 -9
  1005. package/src/_collections/default-fallback-cache-max-age.const.spec.ts +11 -11
  1006. package/src/_collections/default-fallback-cache-max-age.const.ts +2 -2
  1007. package/src/_collections/default-not-found-page.const.spec.ts +19 -19
  1008. package/src/_collections/default-not-found-page.const.ts +22 -22
  1009. package/src/_collections/default-socket-path.const.spec.ts +12 -12
  1010. package/src/_collections/default-socket-path.const.ts +2 -2
  1011. package/src/_collections/get-environment-settings.util.spec.ts +210 -210
  1012. package/src/_collections/get-environment-settings.util.ts +48 -48
  1013. package/src/_collections/global-settings.const.ts +126 -126
  1014. package/src/_collections/sample.env +21 -21
  1015. package/src/_collections/signed-url.util.spec.ts +198 -198
  1016. package/src/_collections/signed-url.util.ts +170 -170
  1017. package/src/_collections/star.controller.spec.ts +224 -224
  1018. package/src/_collections/star.controller.ts +129 -129
  1019. package/src/_enums/data-model-type.enum.ts +14 -14
  1020. package/src/_enums/data-service-function.enum.ts +24 -24
  1021. package/src/_enums/predefined-data-types.enum.ts +16 -16
  1022. package/src/_enums/route-security.enum.ts +12 -12
  1023. package/src/_models/control-models/api-call-params.control-model.spec.ts +152 -152
  1024. package/src/_models/control-models/api-call-params.control-model.ts +142 -142
  1025. package/src/_models/control-models/app-ext-system-controls.control-model.spec.ts +52 -52
  1026. package/src/_models/control-models/app-ext-system-controls.control-model.ts +9 -9
  1027. package/src/_models/control-models/app-params.control-model.spec.ts +225 -225
  1028. package/src/_models/control-models/app-params.control-model.ts +136 -136
  1029. package/src/_models/control-models/app-system-controls.control-model.spec.ts +31 -31
  1030. package/src/_models/control-models/app-system-controls.control-model.ts +9 -9
  1031. package/src/_models/control-models/endpoint-params.control-model.spec.ts +669 -669
  1032. package/src/_models/control-models/endpoint-params.control-model.ts +664 -664
  1033. package/src/_models/control-models/http-settings.control-model.spec.ts +77 -77
  1034. package/src/_models/control-models/http-settings.control-model.ts +37 -37
  1035. package/src/_models/control-models/system-control.control-model.spec.ts +27 -27
  1036. package/src/_models/control-models/system-control.control-model.ts +12 -12
  1037. package/src/_models/interfaces/certification-settings.interface.ts +7 -7
  1038. package/src/_models/interfaces/environment-settings.interface.ts +59 -59
  1039. package/src/_models/interfaces/global-log-settings.interface.ts +171 -171
  1040. package/src/_models/interfaces/global-service-settings.interface.ts +47 -47
  1041. package/src/_models/interfaces/global-settings.interface.ts +294 -294
  1042. package/src/_models/interfaces/routing-module-settings.interface.ts +21 -21
  1043. package/src/_models/interfaces/static-client-settings.interface.spec.ts +29 -29
  1044. package/src/_models/interfaces/static-client-settings.interface.ts +36 -36
  1045. package/src/_models/types/db-update.type.ts +100 -100
  1046. package/src/_modules/ai/_models/ai-input-interfaces.ts +117 -117
  1047. package/src/_modules/ai/_models/ai-test-generation-result.interface.ts +16 -16
  1048. package/src/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.spec.ts +115 -115
  1049. package/src/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.ts +233 -233
  1050. package/src/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.ts +138 -138
  1051. package/src/_modules/ai/_modules/anthropic/index.ts +5 -5
  1052. package/src/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.ts +242 -242
  1053. package/src/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.ts +639 -639
  1054. package/src/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.ts +295 -295
  1055. package/src/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.ts +518 -518
  1056. package/src/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.ts +209 -209
  1057. package/src/_modules/ai/_modules/document-ai/_collections/dai-document.util.ts +85 -85
  1058. package/src/_modules/ai/_modules/document-ai/_enums/dai-compare-result-type.enum.ts +7 -7
  1059. package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-chunk.data-model.ts +146 -146
  1060. package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-page.data-model.ts +162 -162
  1061. package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-document.data-model.ts +99 -99
  1062. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-code-chunk.interface.ts +68 -68
  1063. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-chunk-compare-result.interface.ts +18 -18
  1064. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-page-compare-result.interface.ts +19 -19
  1065. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-document-compare-result.interface.ts +25 -25
  1066. package/src/_modules/ai/_modules/document-ai/index.ts +30 -30
  1067. package/src/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.ts +189 -189
  1068. package/src/_modules/ai/_modules/fdp-ai/index.ts +5 -5
  1069. package/src/_modules/ai/_modules/open-ai/_collections/oai-global-settings.const.ts +9 -9
  1070. package/src/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests-hu.conts.ts +82 -82
  1071. package/src/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests.conts.ts +75 -75
  1072. package/src/_modules/ai/_modules/open-ai/_enums/oai-gpt-message-role.enum.ts +45 -45
  1073. package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-global-settings.interface.ts +7 -7
  1074. package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-gpt-message.interface.ts +7 -7
  1075. package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-llm-predefined-requests.interface.ts +57 -57
  1076. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-chunk-data.service.ts +292 -292
  1077. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.ts +342 -342
  1078. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.ts +550 -550
  1079. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.ts +630 -630
  1080. package/src/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.ts +332 -332
  1081. package/src/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.ts +462 -462
  1082. package/src/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.ts +634 -634
  1083. package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.ts +489 -489
  1084. package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.ts +173 -173
  1085. package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.ts +1085 -1085
  1086. package/src/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.ts +157 -157
  1087. package/src/_modules/ai/_services/ai-embedding-provider.registry.spec.ts +110 -110
  1088. package/src/_modules/ai/_services/ai-embedding-provider.registry.ts +114 -114
  1089. package/src/_modules/ai/_services/ai-embedding.service-base.spec.ts +98 -98
  1090. package/src/_modules/ai/_services/ai-embedding.service-base.ts +48 -48
  1091. package/src/_modules/ai/_services/ai-llm-chat.service-base.spec.ts +229 -229
  1092. package/src/_modules/ai/_services/ai-llm-chat.service-base.ts +68 -68
  1093. package/src/_modules/ai/_services/ai-llm.service-base.spec.ts +250 -250
  1094. package/src/_modules/ai/_services/ai-llm.service-base.ts +599 -599
  1095. package/src/_modules/ai/_services/ai-provider.service-base.spec.ts +158 -158
  1096. package/src/_modules/ai/_services/ai-user-key.service-base.ts +59 -59
  1097. package/src/_modules/ai/_services/lmstudio-embedding.control-service.spec.ts +197 -197
  1098. package/src/_modules/ai/_services/lmstudio-embedding.control-service.ts +371 -371
  1099. package/src/_modules/ai/index.ts +33 -33
  1100. package/src/_modules/assistant/_collections/ass-global-settings.const.ts +13 -13
  1101. package/src/_modules/assistant/_collections/ass.util.spec.ts +176 -176
  1102. package/src/_modules/assistant/_collections/ass.util.ts +50 -50
  1103. package/src/_modules/assistant/_models/ass-global-settings.interface.ts +15 -15
  1104. package/src/_modules/assistant/_services/ass-io.control-service.spec.ts +140 -140
  1105. package/src/_modules/assistant/_services/ass-main.control-service.spec.ts +192 -192
  1106. package/src/_modules/assistant/_services/ass-main.control-service.ts +107 -107
  1107. package/src/_modules/bot/_collections/bot-default-commands.const.ts +12 -12
  1108. package/src/_modules/bot/_collections/bot-global-settings.const.ts +39 -39
  1109. package/src/_modules/bot/_models/bot-channel-wrapper.interface.ts +62 -62
  1110. package/src/_modules/bot/_models/bot-command.interface.ts +8 -8
  1111. package/src/_modules/bot/_models/bot-global-settings.interface.ts +96 -96
  1112. package/src/_modules/bot/_models/bot-last-mention-date.interface.ts +6 -6
  1113. package/src/_modules/bot/_models/bot-last-message-date.interface.ts +5 -5
  1114. package/src/_modules/bot/_models/bot-user-wrapper.interface.ts +41 -41
  1115. package/src/_modules/bot/_modules/discord-bot/_models/dib-platform.types.ts +9 -9
  1116. package/src/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.ts +431 -431
  1117. package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.ts +160 -160
  1118. package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.ts +55 -55
  1119. package/src/_modules/bot/_modules/dynamo-bot/_models/dyb-platform.types.ts +15 -15
  1120. package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.ts +374 -374
  1121. package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.ts +447 -447
  1122. package/src/_modules/bot/_modules/dynamo-bot/index.ts +15 -15
  1123. package/src/_modules/bot/_modules/slack-bot/_models/slb-platform.types.ts +9 -9
  1124. package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.ts +344 -344
  1125. package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.ts +197 -197
  1126. package/src/_modules/bot/_modules/teams-bot/_models/teb-platform.types.ts +9 -9
  1127. package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.ts +345 -345
  1128. package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.ts +197 -197
  1129. package/src/_modules/bot/_services/bot-commands.control-service.spec.ts +116 -116
  1130. package/src/_modules/bot/_services/bot-io.control-service.spec.ts +285 -285
  1131. package/src/_modules/bot/_services/bot-main.control-service.spec.ts +208 -208
  1132. package/src/_modules/bot/_services/bot-messaging-provider.service-base.spec.ts +349 -349
  1133. package/src/_modules/bot/_services/bot-routines.control-service.spec.ts +111 -111
  1134. package/src/_modules/custom-data/custom-data.controller.spec.ts +49 -49
  1135. package/src/_modules/custom-data/custom-data.controller.ts +67 -67
  1136. package/src/_modules/custom-data/custom-data.data-service.spec.ts +54 -54
  1137. package/src/_modules/custom-data/custom-data.data-service.ts +21 -21
  1138. package/src/_modules/custom-data/get-custom-data-routing-module.util.spec.ts +28 -28
  1139. package/src/_modules/custom-data/get-custom-data-routing-module.util.ts +24 -24
  1140. package/src/_modules/custom-data/index.ts +9 -9
  1141. package/src/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.ts +161 -161
  1142. package/src/_modules/data-readers/_collections/dynts-sqlite-reader.util.ts +203 -203
  1143. package/src/_modules/data-readers/_models/interfaces/dynts-sqlite-reader.interface.ts +33 -33
  1144. package/src/_modules/data-readers/index.ts +11 -11
  1145. package/src/_modules/defaults/_collections/default-endpoints.util.ts +487 -487
  1146. package/src/_modules/defaults/_models/default-user.data-model.ts +72 -72
  1147. package/src/_modules/defaults/_services/default-auth.service.spec.ts +269 -269
  1148. package/src/_modules/defaults/_services/default-auth.service.ts +177 -177
  1149. package/src/_modules/defaults/_services/default-socket-events.service.spec.ts +42 -42
  1150. package/src/_modules/defaults/_services/default-socket-events.service.ts +61 -61
  1151. package/src/_modules/defaults/_services/default-user.data-service.spec.ts +187 -187
  1152. package/src/_modules/defaults/_services/default-user.data-service.ts +98 -98
  1153. package/src/_modules/defaults/index.ts +17 -17
  1154. package/src/_modules/discord-assistant/_collections/dias-global-settings.const.ts +19 -19
  1155. package/src/_modules/discord-assistant/_collections/dias.util.spec.ts +366 -366
  1156. package/src/_modules/discord-assistant/_collections/dias.util.ts +132 -132
  1157. package/src/_modules/discord-assistant/_models/dias-global-settings.interface.ts +19 -19
  1158. package/src/_modules/discord-assistant/_models/dias-knowledge.data-model.ts +52 -52
  1159. package/src/_modules/discord-assistant/_services/dias-chunk.data-service.ts +177 -177
  1160. package/src/_modules/discord-assistant/_services/dias-io.control-service.spec.ts +108 -108
  1161. package/src/_modules/discord-assistant/_services/dias-io.control-service.ts +69 -69
  1162. package/src/_modules/discord-assistant/_services/dias-main.control-service.spec.ts +22 -22
  1163. package/src/_modules/discord-assistant/_services/dias-main.control-service.ts +27 -27
  1164. package/src/_modules/discord-assistant/_services/dias.service-base.spec.ts +195 -195
  1165. package/src/_modules/discord-assistant/_services/dias.service-base.ts +76 -76
  1166. package/src/_modules/discord-assistant/index.ts +38 -38
  1167. package/src/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.ts +34 -34
  1168. package/src/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.ts +11 -11
  1169. package/src/_modules/discord-assistant-voiced/index.ts +36 -36
  1170. package/src/_modules/discord-bot/_collections/dibo-default-commands.const.ts +16 -16
  1171. package/src/_modules/discord-bot/_collections/dibo-global-settings.conts.ts +55 -55
  1172. package/src/_modules/discord-bot/_collections/dibo-operations.util.spec.ts +214 -214
  1173. package/src/_modules/discord-bot/_collections/dibo-operations.util.ts +387 -387
  1174. package/src/_modules/discord-bot/_models/dibo-command.interface.ts +12 -12
  1175. package/src/_modules/discord-bot/_models/dibo-global-settings.interface.ts +98 -98
  1176. package/src/_modules/discord-bot/_models/dibo-last-mention-date.inteface.ts +7 -7
  1177. package/src/_modules/discord-bot/_models/dibo-last-message-date.interface.ts +6 -6
  1178. package/src/_modules/discord-bot/_services/dibo-commands.control-service.spec.ts +154 -154
  1179. package/src/_modules/discord-bot/_services/dibo-commands.control-service.ts +153 -153
  1180. package/src/_modules/discord-bot/_services/dibo-io.control-service.spec.ts +264 -264
  1181. package/src/_modules/discord-bot/_services/dibo-io.control-service.ts +306 -306
  1182. package/src/_modules/discord-bot/_services/dibo-main.control-service.spec.ts +408 -408
  1183. package/src/_modules/discord-bot/_services/dibo-main.control-service.ts +487 -487
  1184. package/src/_modules/discord-bot/_services/dibo-routines.control-service.spec.ts +105 -105
  1185. package/src/_modules/discord-bot/index.ts +36 -36
  1186. package/src/_modules/local-vector-search/_enums/lvs-search-mode.enum.ts +35 -35
  1187. package/src/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.ts +59 -59
  1188. package/src/_modules/local-vector-search/_models/lvs-search-result.interface.ts +17 -17
  1189. package/src/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.ts +418 -418
  1190. package/src/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.ts +276 -276
  1191. package/src/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.ts +480 -480
  1192. package/src/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.ts +416 -416
  1193. package/src/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.ts +214 -214
  1194. package/src/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.ts +186 -186
  1195. package/src/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.ts +167 -167
  1196. package/src/_modules/local-vector-search/_services/lvs-vector-persist.data-service.ts +130 -130
  1197. package/src/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.ts +509 -509
  1198. package/src/_modules/local-vector-search/_services/lvs-vector-pool.control-service.ts +323 -323
  1199. package/src/_modules/local-vector-search/index.ts +16 -16
  1200. package/src/_modules/logs/index.ts +11 -11
  1201. package/src/_modules/mcp/_models/interfaces/dynts-mcp.interface.ts +111 -111
  1202. package/src/_modules/mcp/_services/dynts-mcp-server.service-base.spec.ts +142 -142
  1203. package/src/_modules/mcp/_services/dynts-mcp-server.service-base.ts +120 -120
  1204. package/src/_modules/mcp/_services/dynts-mcp.adapter.ts +168 -168
  1205. package/src/_modules/mcp/index.ts +13 -13
  1206. package/src/_modules/messaging/README.md +354 -354
  1207. package/src/_modules/messaging/_collections/get-messaging-routing-module.util.ts +26 -26
  1208. package/src/_modules/messaging/_collections/msg-global-settings.const.ts +22 -22
  1209. package/src/_modules/messaging/_collections/msg.util.spec.ts +226 -226
  1210. package/src/_modules/messaging/_models/msg-global-settings.interface.ts +37 -37
  1211. package/src/_modules/messaging/_services/msg-conversation.data-service.ts +146 -146
  1212. package/src/_modules/messaging/_services/msg-events.service.spec.ts +219 -219
  1213. package/src/_modules/messaging/_services/msg-events.service.ts +267 -267
  1214. package/src/_modules/messaging/_services/msg-integration.control-service.ts +179 -179
  1215. package/src/_modules/messaging/_services/msg-main.control-service.spec.ts +147 -147
  1216. package/src/_modules/messaging/_services/msg-main.control-service.ts +571 -571
  1217. package/src/_modules/messaging/_services/msg-message.data-service.ts +129 -129
  1218. package/src/_modules/messaging/_services/msg.controller.spec.ts +201 -201
  1219. package/src/_modules/messaging/index.ts +30 -30
  1220. package/src/_modules/mock/app-extended-server.mock.ts +201 -201
  1221. package/src/_modules/mock/app-integration-test.mock.ts +51 -51
  1222. package/src/_modules/mock/app-params.mock.spec.ts +21 -21
  1223. package/src/_modules/mock/app-params.mock.ts +9 -9
  1224. package/src/_modules/mock/app-server.mock.ts +188 -188
  1225. package/src/_modules/mock/auth-service.mock.spec.ts +47 -47
  1226. package/src/_modules/mock/auth-service.mock.ts +28 -28
  1227. package/src/_modules/mock/controller.mock.spec.ts +26 -26
  1228. package/src/_modules/mock/controller.mock.ts +16 -16
  1229. package/src/_modules/mock/data-model.mock.spec.ts +111 -111
  1230. package/src/_modules/mock/data-model.mock.ts +82 -82
  1231. package/src/_modules/mock/email-service-collection.mock.spec.ts +24 -24
  1232. package/src/_modules/mock/email-service-collection.mock.ts +15 -15
  1233. package/src/_modules/mock/email-service.mock.spec.ts +17 -17
  1234. package/src/_modules/mock/email-service.mock.ts +20 -20
  1235. package/src/_modules/mock/email-template.mock.html +14 -14
  1236. package/src/_modules/mock/endpoint.mock.ts +91 -91
  1237. package/src/_modules/mock/socket-client.mock.spec.ts +40 -40
  1238. package/src/_modules/mock/socket-client.mock.ts +45 -45
  1239. package/src/_modules/mock/socket-server.mock.spec.ts +44 -44
  1240. package/src/_modules/mock/socket-server.mock.ts +46 -46
  1241. package/src/_modules/oauth2/_routes/oauth2.controller.spec.ts +107 -107
  1242. package/src/_modules/oauth2/_routes/oauth2.controller.ts +98 -98
  1243. package/src/_modules/oauth2/_services/oauth2.auth-service.spec.ts +254 -254
  1244. package/src/_modules/oauth2/_services/oauth2.auth-service.ts +232 -232
  1245. package/src/_modules/oauth2/_services/oauth2.control-service.spec.ts +585 -585
  1246. package/src/_modules/oauth2/_services/oauth2.control-service.ts +653 -653
  1247. package/src/_modules/oauth2/index.ts +17 -17
  1248. package/src/_modules/scheduler/_models/scheduler-job.interface.ts +35 -35
  1249. package/src/_modules/scheduler/get-scheduler-routing-module.util.ts +33 -33
  1250. package/src/_modules/scheduler/index.ts +8 -8
  1251. package/src/_modules/scheduler/scheduler.controller.spec.ts +42 -42
  1252. package/src/_modules/scheduler/scheduler.controller.ts +69 -69
  1253. package/src/_modules/scheduler/scheduler.service.spec.ts +141 -141
  1254. package/src/_modules/scheduler/scheduler.service.ts +176 -176
  1255. package/src/_modules/scoped-config/_enums/dynts-scoped-config-level.enum.ts +22 -22
  1256. package/src/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.ts +81 -81
  1257. package/src/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.ts +107 -107
  1258. package/src/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.ts +306 -306
  1259. package/src/_modules/scoped-config/_services/dynts-scoped-config.control-service.ts +295 -295
  1260. package/src/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.ts +118 -118
  1261. package/src/_modules/scoped-config/_services/dynts-scoped-config.data-service.ts +105 -105
  1262. package/src/_modules/scoped-config/index.ts +17 -17
  1263. package/src/_modules/server/errors/errors.control-service.spec.ts +238 -238
  1264. package/src/_modules/server/errors/errors.control-service.ts +100 -100
  1265. package/src/_modules/server/errors/errors.controller.ts +559 -559
  1266. package/src/_modules/server/errors/errors.data-service.spec.ts +480 -480
  1267. package/src/_modules/server/index.ts +30 -30
  1268. package/src/_modules/server/server-status/server-status-snapshot.control-service.spec.ts +70 -70
  1269. package/src/_modules/server/server-status/server-status-snapshot.control-service.ts +17 -17
  1270. package/src/_modules/server/server-status/server-status-snapshot.data-service.spec.ts +77 -77
  1271. package/src/_modules/server/server-status/server-status-snapshot.data-service.ts +37 -37
  1272. package/src/_modules/server/server-status/server-status.control-service.spec.ts +672 -672
  1273. package/src/_modules/server/server-status/server-status.control-service.ts +490 -490
  1274. package/src/_modules/server/server-status/server-status.controller.spec.ts +276 -276
  1275. package/src/_modules/server/server-status/server-status.controller.ts +336 -336
  1276. package/src/_modules/socket/_enums/socket-security.enum.ts +11 -11
  1277. package/src/_modules/socket/_models/socket-client-service-params.control-model.spec.ts +32 -32
  1278. package/src/_modules/socket/_models/socket-client-service-params.control-model.ts +22 -22
  1279. package/src/_modules/socket/_models/socket-presence.control-model.spec.ts +159 -158
  1280. package/src/_modules/socket/_models/socket-presence.control-model.ts +210 -209
  1281. package/src/_modules/socket/_models/socket-server-service-params.control-model.spec.ts +69 -69
  1282. package/src/_modules/socket/_services/socket-client.service.spec.ts +15 -15
  1283. package/src/_modules/socket/_services/socket-client.service.ts +260 -260
  1284. package/src/_modules/socket/_services/socket-server.service.spec.ts +225 -3
  1285. package/src/_modules/socket/_services/socket-server.service.ts +41 -74
  1286. package/src/_modules/socket/app-extended.integration.spec.ts +85 -85
  1287. package/src/_modules/socket/app-extended.server.ts +648 -648
  1288. package/src/_modules/socket/index.ts +42 -42
  1289. package/src/_modules/test/get-test-routing-module.util.spec.ts +28 -28
  1290. package/src/_modules/test/get-test-routing-module.util.ts +23 -23
  1291. package/src/_modules/test/index.ts +11 -11
  1292. package/src/_modules/test/test.controller.spec.ts +72 -72
  1293. package/src/_modules/test/test.controller.ts +115 -115
  1294. package/src/_modules/usage/get-usage-routing-module.util.ts +22 -22
  1295. package/src/_modules/usage/index.ts +15 -15
  1296. package/src/_modules/usage/usage.controller.spec.ts +106 -106
  1297. package/src/_modules/usage/usage.controller.ts +140 -140
  1298. package/src/_modules/usage/usage.data-service.spec.ts +332 -332
  1299. package/src/_modules/usage/usage.data-service.ts +185 -185
  1300. package/src/_services/base/api.service-base.spec.ts +125 -125
  1301. package/src/_services/base/api.service-base.ts +74 -74
  1302. package/src/_services/base/archive-data.service.spec.ts +209 -209
  1303. package/src/_services/base/archive-data.service.ts +223 -223
  1304. package/src/_services/base/data.service.spec.ts +784 -784
  1305. package/src/_services/base/data.service.ts +2792 -2792
  1306. package/src/_services/base/db.service.spec.ts +160 -160
  1307. package/src/_services/base/db.service.ts +1698 -1698
  1308. package/src/_services/base/singleton.service-base.spec.ts +28 -28
  1309. package/src/_services/base/singleton.service-base.ts +24 -24
  1310. package/src/_services/base/singleton.service.spec.ts +114 -114
  1311. package/src/_services/base/singleton.service.ts +38 -38
  1312. package/src/_services/core/api.service.spec.ts +140 -140
  1313. package/src/_services/core/auth.service.spec.ts +159 -159
  1314. package/src/_services/core/auth.service.ts +174 -174
  1315. package/src/_services/core/email.service.spec.ts +85 -85
  1316. package/src/_services/core/email.service.ts +757 -757
  1317. package/src/_services/core/global.service.spec.ts +292 -292
  1318. package/src/_services/core/global.service.ts +487 -487
  1319. package/src/_services/core/memory-guard.service.spec.ts +245 -245
  1320. package/src/_services/core/memory-guard.service.ts +481 -481
  1321. package/src/_services/core/service-collection.service.spec.ts +46 -46
  1322. package/src/_services/core/service-collection.service.ts +6 -6
  1323. package/src/_services/route/controller.service.spec.ts +53 -53
  1324. package/src/_services/route/controller.service.ts +148 -148
  1325. package/src/_services/route/routing-module.service.spec.ts +98 -98
  1326. package/src/_services/route/routing-module.service.ts +330 -330
  1327. package/src/_services/server/app.server.ts +2012 -2012
  1328. package/src/_services/shared.static-service.spec.ts +99 -99
  1329. package/src/_services/shared.static-service.ts +78 -78
  1330. package/tsconfig.app.json +12 -12
  1331. package/tsconfig.json +42 -42
  1332. package/.dynamo/logs/cicd-pipeline/output.log +0 -2862
  1333. package/.dynamo/logs/cicd-pipeline/status.json +0 -74
@@ -0,0 +1,1993 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for _modules/ai/_modules/document-ai/_collections/dai-chunking.util.ts</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../../../../prettify.css" />
9
+ <link rel="stylesheet" href="../../../../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../../../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">_modules/ai/_modules/document-ai/_collections</a> dai-chunking.util.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">0% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>0/636</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">0% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>0/1</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">0% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>0/1</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">0% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>0/636</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line low'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a>
72
+ <a name='L7'></a><a href='#L7'>7</a>
73
+ <a name='L8'></a><a href='#L8'>8</a>
74
+ <a name='L9'></a><a href='#L9'>9</a>
75
+ <a name='L10'></a><a href='#L10'>10</a>
76
+ <a name='L11'></a><a href='#L11'>11</a>
77
+ <a name='L12'></a><a href='#L12'>12</a>
78
+ <a name='L13'></a><a href='#L13'>13</a>
79
+ <a name='L14'></a><a href='#L14'>14</a>
80
+ <a name='L15'></a><a href='#L15'>15</a>
81
+ <a name='L16'></a><a href='#L16'>16</a>
82
+ <a name='L17'></a><a href='#L17'>17</a>
83
+ <a name='L18'></a><a href='#L18'>18</a>
84
+ <a name='L19'></a><a href='#L19'>19</a>
85
+ <a name='L20'></a><a href='#L20'>20</a>
86
+ <a name='L21'></a><a href='#L21'>21</a>
87
+ <a name='L22'></a><a href='#L22'>22</a>
88
+ <a name='L23'></a><a href='#L23'>23</a>
89
+ <a name='L24'></a><a href='#L24'>24</a>
90
+ <a name='L25'></a><a href='#L25'>25</a>
91
+ <a name='L26'></a><a href='#L26'>26</a>
92
+ <a name='L27'></a><a href='#L27'>27</a>
93
+ <a name='L28'></a><a href='#L28'>28</a>
94
+ <a name='L29'></a><a href='#L29'>29</a>
95
+ <a name='L30'></a><a href='#L30'>30</a>
96
+ <a name='L31'></a><a href='#L31'>31</a>
97
+ <a name='L32'></a><a href='#L32'>32</a>
98
+ <a name='L33'></a><a href='#L33'>33</a>
99
+ <a name='L34'></a><a href='#L34'>34</a>
100
+ <a name='L35'></a><a href='#L35'>35</a>
101
+ <a name='L36'></a><a href='#L36'>36</a>
102
+ <a name='L37'></a><a href='#L37'>37</a>
103
+ <a name='L38'></a><a href='#L38'>38</a>
104
+ <a name='L39'></a><a href='#L39'>39</a>
105
+ <a name='L40'></a><a href='#L40'>40</a>
106
+ <a name='L41'></a><a href='#L41'>41</a>
107
+ <a name='L42'></a><a href='#L42'>42</a>
108
+ <a name='L43'></a><a href='#L43'>43</a>
109
+ <a name='L44'></a><a href='#L44'>44</a>
110
+ <a name='L45'></a><a href='#L45'>45</a>
111
+ <a name='L46'></a><a href='#L46'>46</a>
112
+ <a name='L47'></a><a href='#L47'>47</a>
113
+ <a name='L48'></a><a href='#L48'>48</a>
114
+ <a name='L49'></a><a href='#L49'>49</a>
115
+ <a name='L50'></a><a href='#L50'>50</a>
116
+ <a name='L51'></a><a href='#L51'>51</a>
117
+ <a name='L52'></a><a href='#L52'>52</a>
118
+ <a name='L53'></a><a href='#L53'>53</a>
119
+ <a name='L54'></a><a href='#L54'>54</a>
120
+ <a name='L55'></a><a href='#L55'>55</a>
121
+ <a name='L56'></a><a href='#L56'>56</a>
122
+ <a name='L57'></a><a href='#L57'>57</a>
123
+ <a name='L58'></a><a href='#L58'>58</a>
124
+ <a name='L59'></a><a href='#L59'>59</a>
125
+ <a name='L60'></a><a href='#L60'>60</a>
126
+ <a name='L61'></a><a href='#L61'>61</a>
127
+ <a name='L62'></a><a href='#L62'>62</a>
128
+ <a name='L63'></a><a href='#L63'>63</a>
129
+ <a name='L64'></a><a href='#L64'>64</a>
130
+ <a name='L65'></a><a href='#L65'>65</a>
131
+ <a name='L66'></a><a href='#L66'>66</a>
132
+ <a name='L67'></a><a href='#L67'>67</a>
133
+ <a name='L68'></a><a href='#L68'>68</a>
134
+ <a name='L69'></a><a href='#L69'>69</a>
135
+ <a name='L70'></a><a href='#L70'>70</a>
136
+ <a name='L71'></a><a href='#L71'>71</a>
137
+ <a name='L72'></a><a href='#L72'>72</a>
138
+ <a name='L73'></a><a href='#L73'>73</a>
139
+ <a name='L74'></a><a href='#L74'>74</a>
140
+ <a name='L75'></a><a href='#L75'>75</a>
141
+ <a name='L76'></a><a href='#L76'>76</a>
142
+ <a name='L77'></a><a href='#L77'>77</a>
143
+ <a name='L78'></a><a href='#L78'>78</a>
144
+ <a name='L79'></a><a href='#L79'>79</a>
145
+ <a name='L80'></a><a href='#L80'>80</a>
146
+ <a name='L81'></a><a href='#L81'>81</a>
147
+ <a name='L82'></a><a href='#L82'>82</a>
148
+ <a name='L83'></a><a href='#L83'>83</a>
149
+ <a name='L84'></a><a href='#L84'>84</a>
150
+ <a name='L85'></a><a href='#L85'>85</a>
151
+ <a name='L86'></a><a href='#L86'>86</a>
152
+ <a name='L87'></a><a href='#L87'>87</a>
153
+ <a name='L88'></a><a href='#L88'>88</a>
154
+ <a name='L89'></a><a href='#L89'>89</a>
155
+ <a name='L90'></a><a href='#L90'>90</a>
156
+ <a name='L91'></a><a href='#L91'>91</a>
157
+ <a name='L92'></a><a href='#L92'>92</a>
158
+ <a name='L93'></a><a href='#L93'>93</a>
159
+ <a name='L94'></a><a href='#L94'>94</a>
160
+ <a name='L95'></a><a href='#L95'>95</a>
161
+ <a name='L96'></a><a href='#L96'>96</a>
162
+ <a name='L97'></a><a href='#L97'>97</a>
163
+ <a name='L98'></a><a href='#L98'>98</a>
164
+ <a name='L99'></a><a href='#L99'>99</a>
165
+ <a name='L100'></a><a href='#L100'>100</a>
166
+ <a name='L101'></a><a href='#L101'>101</a>
167
+ <a name='L102'></a><a href='#L102'>102</a>
168
+ <a name='L103'></a><a href='#L103'>103</a>
169
+ <a name='L104'></a><a href='#L104'>104</a>
170
+ <a name='L105'></a><a href='#L105'>105</a>
171
+ <a name='L106'></a><a href='#L106'>106</a>
172
+ <a name='L107'></a><a href='#L107'>107</a>
173
+ <a name='L108'></a><a href='#L108'>108</a>
174
+ <a name='L109'></a><a href='#L109'>109</a>
175
+ <a name='L110'></a><a href='#L110'>110</a>
176
+ <a name='L111'></a><a href='#L111'>111</a>
177
+ <a name='L112'></a><a href='#L112'>112</a>
178
+ <a name='L113'></a><a href='#L113'>113</a>
179
+ <a name='L114'></a><a href='#L114'>114</a>
180
+ <a name='L115'></a><a href='#L115'>115</a>
181
+ <a name='L116'></a><a href='#L116'>116</a>
182
+ <a name='L117'></a><a href='#L117'>117</a>
183
+ <a name='L118'></a><a href='#L118'>118</a>
184
+ <a name='L119'></a><a href='#L119'>119</a>
185
+ <a name='L120'></a><a href='#L120'>120</a>
186
+ <a name='L121'></a><a href='#L121'>121</a>
187
+ <a name='L122'></a><a href='#L122'>122</a>
188
+ <a name='L123'></a><a href='#L123'>123</a>
189
+ <a name='L124'></a><a href='#L124'>124</a>
190
+ <a name='L125'></a><a href='#L125'>125</a>
191
+ <a name='L126'></a><a href='#L126'>126</a>
192
+ <a name='L127'></a><a href='#L127'>127</a>
193
+ <a name='L128'></a><a href='#L128'>128</a>
194
+ <a name='L129'></a><a href='#L129'>129</a>
195
+ <a name='L130'></a><a href='#L130'>130</a>
196
+ <a name='L131'></a><a href='#L131'>131</a>
197
+ <a name='L132'></a><a href='#L132'>132</a>
198
+ <a name='L133'></a><a href='#L133'>133</a>
199
+ <a name='L134'></a><a href='#L134'>134</a>
200
+ <a name='L135'></a><a href='#L135'>135</a>
201
+ <a name='L136'></a><a href='#L136'>136</a>
202
+ <a name='L137'></a><a href='#L137'>137</a>
203
+ <a name='L138'></a><a href='#L138'>138</a>
204
+ <a name='L139'></a><a href='#L139'>139</a>
205
+ <a name='L140'></a><a href='#L140'>140</a>
206
+ <a name='L141'></a><a href='#L141'>141</a>
207
+ <a name='L142'></a><a href='#L142'>142</a>
208
+ <a name='L143'></a><a href='#L143'>143</a>
209
+ <a name='L144'></a><a href='#L144'>144</a>
210
+ <a name='L145'></a><a href='#L145'>145</a>
211
+ <a name='L146'></a><a href='#L146'>146</a>
212
+ <a name='L147'></a><a href='#L147'>147</a>
213
+ <a name='L148'></a><a href='#L148'>148</a>
214
+ <a name='L149'></a><a href='#L149'>149</a>
215
+ <a name='L150'></a><a href='#L150'>150</a>
216
+ <a name='L151'></a><a href='#L151'>151</a>
217
+ <a name='L152'></a><a href='#L152'>152</a>
218
+ <a name='L153'></a><a href='#L153'>153</a>
219
+ <a name='L154'></a><a href='#L154'>154</a>
220
+ <a name='L155'></a><a href='#L155'>155</a>
221
+ <a name='L156'></a><a href='#L156'>156</a>
222
+ <a name='L157'></a><a href='#L157'>157</a>
223
+ <a name='L158'></a><a href='#L158'>158</a>
224
+ <a name='L159'></a><a href='#L159'>159</a>
225
+ <a name='L160'></a><a href='#L160'>160</a>
226
+ <a name='L161'></a><a href='#L161'>161</a>
227
+ <a name='L162'></a><a href='#L162'>162</a>
228
+ <a name='L163'></a><a href='#L163'>163</a>
229
+ <a name='L164'></a><a href='#L164'>164</a>
230
+ <a name='L165'></a><a href='#L165'>165</a>
231
+ <a name='L166'></a><a href='#L166'>166</a>
232
+ <a name='L167'></a><a href='#L167'>167</a>
233
+ <a name='L168'></a><a href='#L168'>168</a>
234
+ <a name='L169'></a><a href='#L169'>169</a>
235
+ <a name='L170'></a><a href='#L170'>170</a>
236
+ <a name='L171'></a><a href='#L171'>171</a>
237
+ <a name='L172'></a><a href='#L172'>172</a>
238
+ <a name='L173'></a><a href='#L173'>173</a>
239
+ <a name='L174'></a><a href='#L174'>174</a>
240
+ <a name='L175'></a><a href='#L175'>175</a>
241
+ <a name='L176'></a><a href='#L176'>176</a>
242
+ <a name='L177'></a><a href='#L177'>177</a>
243
+ <a name='L178'></a><a href='#L178'>178</a>
244
+ <a name='L179'></a><a href='#L179'>179</a>
245
+ <a name='L180'></a><a href='#L180'>180</a>
246
+ <a name='L181'></a><a href='#L181'>181</a>
247
+ <a name='L182'></a><a href='#L182'>182</a>
248
+ <a name='L183'></a><a href='#L183'>183</a>
249
+ <a name='L184'></a><a href='#L184'>184</a>
250
+ <a name='L185'></a><a href='#L185'>185</a>
251
+ <a name='L186'></a><a href='#L186'>186</a>
252
+ <a name='L187'></a><a href='#L187'>187</a>
253
+ <a name='L188'></a><a href='#L188'>188</a>
254
+ <a name='L189'></a><a href='#L189'>189</a>
255
+ <a name='L190'></a><a href='#L190'>190</a>
256
+ <a name='L191'></a><a href='#L191'>191</a>
257
+ <a name='L192'></a><a href='#L192'>192</a>
258
+ <a name='L193'></a><a href='#L193'>193</a>
259
+ <a name='L194'></a><a href='#L194'>194</a>
260
+ <a name='L195'></a><a href='#L195'>195</a>
261
+ <a name='L196'></a><a href='#L196'>196</a>
262
+ <a name='L197'></a><a href='#L197'>197</a>
263
+ <a name='L198'></a><a href='#L198'>198</a>
264
+ <a name='L199'></a><a href='#L199'>199</a>
265
+ <a name='L200'></a><a href='#L200'>200</a>
266
+ <a name='L201'></a><a href='#L201'>201</a>
267
+ <a name='L202'></a><a href='#L202'>202</a>
268
+ <a name='L203'></a><a href='#L203'>203</a>
269
+ <a name='L204'></a><a href='#L204'>204</a>
270
+ <a name='L205'></a><a href='#L205'>205</a>
271
+ <a name='L206'></a><a href='#L206'>206</a>
272
+ <a name='L207'></a><a href='#L207'>207</a>
273
+ <a name='L208'></a><a href='#L208'>208</a>
274
+ <a name='L209'></a><a href='#L209'>209</a>
275
+ <a name='L210'></a><a href='#L210'>210</a>
276
+ <a name='L211'></a><a href='#L211'>211</a>
277
+ <a name='L212'></a><a href='#L212'>212</a>
278
+ <a name='L213'></a><a href='#L213'>213</a>
279
+ <a name='L214'></a><a href='#L214'>214</a>
280
+ <a name='L215'></a><a href='#L215'>215</a>
281
+ <a name='L216'></a><a href='#L216'>216</a>
282
+ <a name='L217'></a><a href='#L217'>217</a>
283
+ <a name='L218'></a><a href='#L218'>218</a>
284
+ <a name='L219'></a><a href='#L219'>219</a>
285
+ <a name='L220'></a><a href='#L220'>220</a>
286
+ <a name='L221'></a><a href='#L221'>221</a>
287
+ <a name='L222'></a><a href='#L222'>222</a>
288
+ <a name='L223'></a><a href='#L223'>223</a>
289
+ <a name='L224'></a><a href='#L224'>224</a>
290
+ <a name='L225'></a><a href='#L225'>225</a>
291
+ <a name='L226'></a><a href='#L226'>226</a>
292
+ <a name='L227'></a><a href='#L227'>227</a>
293
+ <a name='L228'></a><a href='#L228'>228</a>
294
+ <a name='L229'></a><a href='#L229'>229</a>
295
+ <a name='L230'></a><a href='#L230'>230</a>
296
+ <a name='L231'></a><a href='#L231'>231</a>
297
+ <a name='L232'></a><a href='#L232'>232</a>
298
+ <a name='L233'></a><a href='#L233'>233</a>
299
+ <a name='L234'></a><a href='#L234'>234</a>
300
+ <a name='L235'></a><a href='#L235'>235</a>
301
+ <a name='L236'></a><a href='#L236'>236</a>
302
+ <a name='L237'></a><a href='#L237'>237</a>
303
+ <a name='L238'></a><a href='#L238'>238</a>
304
+ <a name='L239'></a><a href='#L239'>239</a>
305
+ <a name='L240'></a><a href='#L240'>240</a>
306
+ <a name='L241'></a><a href='#L241'>241</a>
307
+ <a name='L242'></a><a href='#L242'>242</a>
308
+ <a name='L243'></a><a href='#L243'>243</a>
309
+ <a name='L244'></a><a href='#L244'>244</a>
310
+ <a name='L245'></a><a href='#L245'>245</a>
311
+ <a name='L246'></a><a href='#L246'>246</a>
312
+ <a name='L247'></a><a href='#L247'>247</a>
313
+ <a name='L248'></a><a href='#L248'>248</a>
314
+ <a name='L249'></a><a href='#L249'>249</a>
315
+ <a name='L250'></a><a href='#L250'>250</a>
316
+ <a name='L251'></a><a href='#L251'>251</a>
317
+ <a name='L252'></a><a href='#L252'>252</a>
318
+ <a name='L253'></a><a href='#L253'>253</a>
319
+ <a name='L254'></a><a href='#L254'>254</a>
320
+ <a name='L255'></a><a href='#L255'>255</a>
321
+ <a name='L256'></a><a href='#L256'>256</a>
322
+ <a name='L257'></a><a href='#L257'>257</a>
323
+ <a name='L258'></a><a href='#L258'>258</a>
324
+ <a name='L259'></a><a href='#L259'>259</a>
325
+ <a name='L260'></a><a href='#L260'>260</a>
326
+ <a name='L261'></a><a href='#L261'>261</a>
327
+ <a name='L262'></a><a href='#L262'>262</a>
328
+ <a name='L263'></a><a href='#L263'>263</a>
329
+ <a name='L264'></a><a href='#L264'>264</a>
330
+ <a name='L265'></a><a href='#L265'>265</a>
331
+ <a name='L266'></a><a href='#L266'>266</a>
332
+ <a name='L267'></a><a href='#L267'>267</a>
333
+ <a name='L268'></a><a href='#L268'>268</a>
334
+ <a name='L269'></a><a href='#L269'>269</a>
335
+ <a name='L270'></a><a href='#L270'>270</a>
336
+ <a name='L271'></a><a href='#L271'>271</a>
337
+ <a name='L272'></a><a href='#L272'>272</a>
338
+ <a name='L273'></a><a href='#L273'>273</a>
339
+ <a name='L274'></a><a href='#L274'>274</a>
340
+ <a name='L275'></a><a href='#L275'>275</a>
341
+ <a name='L276'></a><a href='#L276'>276</a>
342
+ <a name='L277'></a><a href='#L277'>277</a>
343
+ <a name='L278'></a><a href='#L278'>278</a>
344
+ <a name='L279'></a><a href='#L279'>279</a>
345
+ <a name='L280'></a><a href='#L280'>280</a>
346
+ <a name='L281'></a><a href='#L281'>281</a>
347
+ <a name='L282'></a><a href='#L282'>282</a>
348
+ <a name='L283'></a><a href='#L283'>283</a>
349
+ <a name='L284'></a><a href='#L284'>284</a>
350
+ <a name='L285'></a><a href='#L285'>285</a>
351
+ <a name='L286'></a><a href='#L286'>286</a>
352
+ <a name='L287'></a><a href='#L287'>287</a>
353
+ <a name='L288'></a><a href='#L288'>288</a>
354
+ <a name='L289'></a><a href='#L289'>289</a>
355
+ <a name='L290'></a><a href='#L290'>290</a>
356
+ <a name='L291'></a><a href='#L291'>291</a>
357
+ <a name='L292'></a><a href='#L292'>292</a>
358
+ <a name='L293'></a><a href='#L293'>293</a>
359
+ <a name='L294'></a><a href='#L294'>294</a>
360
+ <a name='L295'></a><a href='#L295'>295</a>
361
+ <a name='L296'></a><a href='#L296'>296</a>
362
+ <a name='L297'></a><a href='#L297'>297</a>
363
+ <a name='L298'></a><a href='#L298'>298</a>
364
+ <a name='L299'></a><a href='#L299'>299</a>
365
+ <a name='L300'></a><a href='#L300'>300</a>
366
+ <a name='L301'></a><a href='#L301'>301</a>
367
+ <a name='L302'></a><a href='#L302'>302</a>
368
+ <a name='L303'></a><a href='#L303'>303</a>
369
+ <a name='L304'></a><a href='#L304'>304</a>
370
+ <a name='L305'></a><a href='#L305'>305</a>
371
+ <a name='L306'></a><a href='#L306'>306</a>
372
+ <a name='L307'></a><a href='#L307'>307</a>
373
+ <a name='L308'></a><a href='#L308'>308</a>
374
+ <a name='L309'></a><a href='#L309'>309</a>
375
+ <a name='L310'></a><a href='#L310'>310</a>
376
+ <a name='L311'></a><a href='#L311'>311</a>
377
+ <a name='L312'></a><a href='#L312'>312</a>
378
+ <a name='L313'></a><a href='#L313'>313</a>
379
+ <a name='L314'></a><a href='#L314'>314</a>
380
+ <a name='L315'></a><a href='#L315'>315</a>
381
+ <a name='L316'></a><a href='#L316'>316</a>
382
+ <a name='L317'></a><a href='#L317'>317</a>
383
+ <a name='L318'></a><a href='#L318'>318</a>
384
+ <a name='L319'></a><a href='#L319'>319</a>
385
+ <a name='L320'></a><a href='#L320'>320</a>
386
+ <a name='L321'></a><a href='#L321'>321</a>
387
+ <a name='L322'></a><a href='#L322'>322</a>
388
+ <a name='L323'></a><a href='#L323'>323</a>
389
+ <a name='L324'></a><a href='#L324'>324</a>
390
+ <a name='L325'></a><a href='#L325'>325</a>
391
+ <a name='L326'></a><a href='#L326'>326</a>
392
+ <a name='L327'></a><a href='#L327'>327</a>
393
+ <a name='L328'></a><a href='#L328'>328</a>
394
+ <a name='L329'></a><a href='#L329'>329</a>
395
+ <a name='L330'></a><a href='#L330'>330</a>
396
+ <a name='L331'></a><a href='#L331'>331</a>
397
+ <a name='L332'></a><a href='#L332'>332</a>
398
+ <a name='L333'></a><a href='#L333'>333</a>
399
+ <a name='L334'></a><a href='#L334'>334</a>
400
+ <a name='L335'></a><a href='#L335'>335</a>
401
+ <a name='L336'></a><a href='#L336'>336</a>
402
+ <a name='L337'></a><a href='#L337'>337</a>
403
+ <a name='L338'></a><a href='#L338'>338</a>
404
+ <a name='L339'></a><a href='#L339'>339</a>
405
+ <a name='L340'></a><a href='#L340'>340</a>
406
+ <a name='L341'></a><a href='#L341'>341</a>
407
+ <a name='L342'></a><a href='#L342'>342</a>
408
+ <a name='L343'></a><a href='#L343'>343</a>
409
+ <a name='L344'></a><a href='#L344'>344</a>
410
+ <a name='L345'></a><a href='#L345'>345</a>
411
+ <a name='L346'></a><a href='#L346'>346</a>
412
+ <a name='L347'></a><a href='#L347'>347</a>
413
+ <a name='L348'></a><a href='#L348'>348</a>
414
+ <a name='L349'></a><a href='#L349'>349</a>
415
+ <a name='L350'></a><a href='#L350'>350</a>
416
+ <a name='L351'></a><a href='#L351'>351</a>
417
+ <a name='L352'></a><a href='#L352'>352</a>
418
+ <a name='L353'></a><a href='#L353'>353</a>
419
+ <a name='L354'></a><a href='#L354'>354</a>
420
+ <a name='L355'></a><a href='#L355'>355</a>
421
+ <a name='L356'></a><a href='#L356'>356</a>
422
+ <a name='L357'></a><a href='#L357'>357</a>
423
+ <a name='L358'></a><a href='#L358'>358</a>
424
+ <a name='L359'></a><a href='#L359'>359</a>
425
+ <a name='L360'></a><a href='#L360'>360</a>
426
+ <a name='L361'></a><a href='#L361'>361</a>
427
+ <a name='L362'></a><a href='#L362'>362</a>
428
+ <a name='L363'></a><a href='#L363'>363</a>
429
+ <a name='L364'></a><a href='#L364'>364</a>
430
+ <a name='L365'></a><a href='#L365'>365</a>
431
+ <a name='L366'></a><a href='#L366'>366</a>
432
+ <a name='L367'></a><a href='#L367'>367</a>
433
+ <a name='L368'></a><a href='#L368'>368</a>
434
+ <a name='L369'></a><a href='#L369'>369</a>
435
+ <a name='L370'></a><a href='#L370'>370</a>
436
+ <a name='L371'></a><a href='#L371'>371</a>
437
+ <a name='L372'></a><a href='#L372'>372</a>
438
+ <a name='L373'></a><a href='#L373'>373</a>
439
+ <a name='L374'></a><a href='#L374'>374</a>
440
+ <a name='L375'></a><a href='#L375'>375</a>
441
+ <a name='L376'></a><a href='#L376'>376</a>
442
+ <a name='L377'></a><a href='#L377'>377</a>
443
+ <a name='L378'></a><a href='#L378'>378</a>
444
+ <a name='L379'></a><a href='#L379'>379</a>
445
+ <a name='L380'></a><a href='#L380'>380</a>
446
+ <a name='L381'></a><a href='#L381'>381</a>
447
+ <a name='L382'></a><a href='#L382'>382</a>
448
+ <a name='L383'></a><a href='#L383'>383</a>
449
+ <a name='L384'></a><a href='#L384'>384</a>
450
+ <a name='L385'></a><a href='#L385'>385</a>
451
+ <a name='L386'></a><a href='#L386'>386</a>
452
+ <a name='L387'></a><a href='#L387'>387</a>
453
+ <a name='L388'></a><a href='#L388'>388</a>
454
+ <a name='L389'></a><a href='#L389'>389</a>
455
+ <a name='L390'></a><a href='#L390'>390</a>
456
+ <a name='L391'></a><a href='#L391'>391</a>
457
+ <a name='L392'></a><a href='#L392'>392</a>
458
+ <a name='L393'></a><a href='#L393'>393</a>
459
+ <a name='L394'></a><a href='#L394'>394</a>
460
+ <a name='L395'></a><a href='#L395'>395</a>
461
+ <a name='L396'></a><a href='#L396'>396</a>
462
+ <a name='L397'></a><a href='#L397'>397</a>
463
+ <a name='L398'></a><a href='#L398'>398</a>
464
+ <a name='L399'></a><a href='#L399'>399</a>
465
+ <a name='L400'></a><a href='#L400'>400</a>
466
+ <a name='L401'></a><a href='#L401'>401</a>
467
+ <a name='L402'></a><a href='#L402'>402</a>
468
+ <a name='L403'></a><a href='#L403'>403</a>
469
+ <a name='L404'></a><a href='#L404'>404</a>
470
+ <a name='L405'></a><a href='#L405'>405</a>
471
+ <a name='L406'></a><a href='#L406'>406</a>
472
+ <a name='L407'></a><a href='#L407'>407</a>
473
+ <a name='L408'></a><a href='#L408'>408</a>
474
+ <a name='L409'></a><a href='#L409'>409</a>
475
+ <a name='L410'></a><a href='#L410'>410</a>
476
+ <a name='L411'></a><a href='#L411'>411</a>
477
+ <a name='L412'></a><a href='#L412'>412</a>
478
+ <a name='L413'></a><a href='#L413'>413</a>
479
+ <a name='L414'></a><a href='#L414'>414</a>
480
+ <a name='L415'></a><a href='#L415'>415</a>
481
+ <a name='L416'></a><a href='#L416'>416</a>
482
+ <a name='L417'></a><a href='#L417'>417</a>
483
+ <a name='L418'></a><a href='#L418'>418</a>
484
+ <a name='L419'></a><a href='#L419'>419</a>
485
+ <a name='L420'></a><a href='#L420'>420</a>
486
+ <a name='L421'></a><a href='#L421'>421</a>
487
+ <a name='L422'></a><a href='#L422'>422</a>
488
+ <a name='L423'></a><a href='#L423'>423</a>
489
+ <a name='L424'></a><a href='#L424'>424</a>
490
+ <a name='L425'></a><a href='#L425'>425</a>
491
+ <a name='L426'></a><a href='#L426'>426</a>
492
+ <a name='L427'></a><a href='#L427'>427</a>
493
+ <a name='L428'></a><a href='#L428'>428</a>
494
+ <a name='L429'></a><a href='#L429'>429</a>
495
+ <a name='L430'></a><a href='#L430'>430</a>
496
+ <a name='L431'></a><a href='#L431'>431</a>
497
+ <a name='L432'></a><a href='#L432'>432</a>
498
+ <a name='L433'></a><a href='#L433'>433</a>
499
+ <a name='L434'></a><a href='#L434'>434</a>
500
+ <a name='L435'></a><a href='#L435'>435</a>
501
+ <a name='L436'></a><a href='#L436'>436</a>
502
+ <a name='L437'></a><a href='#L437'>437</a>
503
+ <a name='L438'></a><a href='#L438'>438</a>
504
+ <a name='L439'></a><a href='#L439'>439</a>
505
+ <a name='L440'></a><a href='#L440'>440</a>
506
+ <a name='L441'></a><a href='#L441'>441</a>
507
+ <a name='L442'></a><a href='#L442'>442</a>
508
+ <a name='L443'></a><a href='#L443'>443</a>
509
+ <a name='L444'></a><a href='#L444'>444</a>
510
+ <a name='L445'></a><a href='#L445'>445</a>
511
+ <a name='L446'></a><a href='#L446'>446</a>
512
+ <a name='L447'></a><a href='#L447'>447</a>
513
+ <a name='L448'></a><a href='#L448'>448</a>
514
+ <a name='L449'></a><a href='#L449'>449</a>
515
+ <a name='L450'></a><a href='#L450'>450</a>
516
+ <a name='L451'></a><a href='#L451'>451</a>
517
+ <a name='L452'></a><a href='#L452'>452</a>
518
+ <a name='L453'></a><a href='#L453'>453</a>
519
+ <a name='L454'></a><a href='#L454'>454</a>
520
+ <a name='L455'></a><a href='#L455'>455</a>
521
+ <a name='L456'></a><a href='#L456'>456</a>
522
+ <a name='L457'></a><a href='#L457'>457</a>
523
+ <a name='L458'></a><a href='#L458'>458</a>
524
+ <a name='L459'></a><a href='#L459'>459</a>
525
+ <a name='L460'></a><a href='#L460'>460</a>
526
+ <a name='L461'></a><a href='#L461'>461</a>
527
+ <a name='L462'></a><a href='#L462'>462</a>
528
+ <a name='L463'></a><a href='#L463'>463</a>
529
+ <a name='L464'></a><a href='#L464'>464</a>
530
+ <a name='L465'></a><a href='#L465'>465</a>
531
+ <a name='L466'></a><a href='#L466'>466</a>
532
+ <a name='L467'></a><a href='#L467'>467</a>
533
+ <a name='L468'></a><a href='#L468'>468</a>
534
+ <a name='L469'></a><a href='#L469'>469</a>
535
+ <a name='L470'></a><a href='#L470'>470</a>
536
+ <a name='L471'></a><a href='#L471'>471</a>
537
+ <a name='L472'></a><a href='#L472'>472</a>
538
+ <a name='L473'></a><a href='#L473'>473</a>
539
+ <a name='L474'></a><a href='#L474'>474</a>
540
+ <a name='L475'></a><a href='#L475'>475</a>
541
+ <a name='L476'></a><a href='#L476'>476</a>
542
+ <a name='L477'></a><a href='#L477'>477</a>
543
+ <a name='L478'></a><a href='#L478'>478</a>
544
+ <a name='L479'></a><a href='#L479'>479</a>
545
+ <a name='L480'></a><a href='#L480'>480</a>
546
+ <a name='L481'></a><a href='#L481'>481</a>
547
+ <a name='L482'></a><a href='#L482'>482</a>
548
+ <a name='L483'></a><a href='#L483'>483</a>
549
+ <a name='L484'></a><a href='#L484'>484</a>
550
+ <a name='L485'></a><a href='#L485'>485</a>
551
+ <a name='L486'></a><a href='#L486'>486</a>
552
+ <a name='L487'></a><a href='#L487'>487</a>
553
+ <a name='L488'></a><a href='#L488'>488</a>
554
+ <a name='L489'></a><a href='#L489'>489</a>
555
+ <a name='L490'></a><a href='#L490'>490</a>
556
+ <a name='L491'></a><a href='#L491'>491</a>
557
+ <a name='L492'></a><a href='#L492'>492</a>
558
+ <a name='L493'></a><a href='#L493'>493</a>
559
+ <a name='L494'></a><a href='#L494'>494</a>
560
+ <a name='L495'></a><a href='#L495'>495</a>
561
+ <a name='L496'></a><a href='#L496'>496</a>
562
+ <a name='L497'></a><a href='#L497'>497</a>
563
+ <a name='L498'></a><a href='#L498'>498</a>
564
+ <a name='L499'></a><a href='#L499'>499</a>
565
+ <a name='L500'></a><a href='#L500'>500</a>
566
+ <a name='L501'></a><a href='#L501'>501</a>
567
+ <a name='L502'></a><a href='#L502'>502</a>
568
+ <a name='L503'></a><a href='#L503'>503</a>
569
+ <a name='L504'></a><a href='#L504'>504</a>
570
+ <a name='L505'></a><a href='#L505'>505</a>
571
+ <a name='L506'></a><a href='#L506'>506</a>
572
+ <a name='L507'></a><a href='#L507'>507</a>
573
+ <a name='L508'></a><a href='#L508'>508</a>
574
+ <a name='L509'></a><a href='#L509'>509</a>
575
+ <a name='L510'></a><a href='#L510'>510</a>
576
+ <a name='L511'></a><a href='#L511'>511</a>
577
+ <a name='L512'></a><a href='#L512'>512</a>
578
+ <a name='L513'></a><a href='#L513'>513</a>
579
+ <a name='L514'></a><a href='#L514'>514</a>
580
+ <a name='L515'></a><a href='#L515'>515</a>
581
+ <a name='L516'></a><a href='#L516'>516</a>
582
+ <a name='L517'></a><a href='#L517'>517</a>
583
+ <a name='L518'></a><a href='#L518'>518</a>
584
+ <a name='L519'></a><a href='#L519'>519</a>
585
+ <a name='L520'></a><a href='#L520'>520</a>
586
+ <a name='L521'></a><a href='#L521'>521</a>
587
+ <a name='L522'></a><a href='#L522'>522</a>
588
+ <a name='L523'></a><a href='#L523'>523</a>
589
+ <a name='L524'></a><a href='#L524'>524</a>
590
+ <a name='L525'></a><a href='#L525'>525</a>
591
+ <a name='L526'></a><a href='#L526'>526</a>
592
+ <a name='L527'></a><a href='#L527'>527</a>
593
+ <a name='L528'></a><a href='#L528'>528</a>
594
+ <a name='L529'></a><a href='#L529'>529</a>
595
+ <a name='L530'></a><a href='#L530'>530</a>
596
+ <a name='L531'></a><a href='#L531'>531</a>
597
+ <a name='L532'></a><a href='#L532'>532</a>
598
+ <a name='L533'></a><a href='#L533'>533</a>
599
+ <a name='L534'></a><a href='#L534'>534</a>
600
+ <a name='L535'></a><a href='#L535'>535</a>
601
+ <a name='L536'></a><a href='#L536'>536</a>
602
+ <a name='L537'></a><a href='#L537'>537</a>
603
+ <a name='L538'></a><a href='#L538'>538</a>
604
+ <a name='L539'></a><a href='#L539'>539</a>
605
+ <a name='L540'></a><a href='#L540'>540</a>
606
+ <a name='L541'></a><a href='#L541'>541</a>
607
+ <a name='L542'></a><a href='#L542'>542</a>
608
+ <a name='L543'></a><a href='#L543'>543</a>
609
+ <a name='L544'></a><a href='#L544'>544</a>
610
+ <a name='L545'></a><a href='#L545'>545</a>
611
+ <a name='L546'></a><a href='#L546'>546</a>
612
+ <a name='L547'></a><a href='#L547'>547</a>
613
+ <a name='L548'></a><a href='#L548'>548</a>
614
+ <a name='L549'></a><a href='#L549'>549</a>
615
+ <a name='L550'></a><a href='#L550'>550</a>
616
+ <a name='L551'></a><a href='#L551'>551</a>
617
+ <a name='L552'></a><a href='#L552'>552</a>
618
+ <a name='L553'></a><a href='#L553'>553</a>
619
+ <a name='L554'></a><a href='#L554'>554</a>
620
+ <a name='L555'></a><a href='#L555'>555</a>
621
+ <a name='L556'></a><a href='#L556'>556</a>
622
+ <a name='L557'></a><a href='#L557'>557</a>
623
+ <a name='L558'></a><a href='#L558'>558</a>
624
+ <a name='L559'></a><a href='#L559'>559</a>
625
+ <a name='L560'></a><a href='#L560'>560</a>
626
+ <a name='L561'></a><a href='#L561'>561</a>
627
+ <a name='L562'></a><a href='#L562'>562</a>
628
+ <a name='L563'></a><a href='#L563'>563</a>
629
+ <a name='L564'></a><a href='#L564'>564</a>
630
+ <a name='L565'></a><a href='#L565'>565</a>
631
+ <a name='L566'></a><a href='#L566'>566</a>
632
+ <a name='L567'></a><a href='#L567'>567</a>
633
+ <a name='L568'></a><a href='#L568'>568</a>
634
+ <a name='L569'></a><a href='#L569'>569</a>
635
+ <a name='L570'></a><a href='#L570'>570</a>
636
+ <a name='L571'></a><a href='#L571'>571</a>
637
+ <a name='L572'></a><a href='#L572'>572</a>
638
+ <a name='L573'></a><a href='#L573'>573</a>
639
+ <a name='L574'></a><a href='#L574'>574</a>
640
+ <a name='L575'></a><a href='#L575'>575</a>
641
+ <a name='L576'></a><a href='#L576'>576</a>
642
+ <a name='L577'></a><a href='#L577'>577</a>
643
+ <a name='L578'></a><a href='#L578'>578</a>
644
+ <a name='L579'></a><a href='#L579'>579</a>
645
+ <a name='L580'></a><a href='#L580'>580</a>
646
+ <a name='L581'></a><a href='#L581'>581</a>
647
+ <a name='L582'></a><a href='#L582'>582</a>
648
+ <a name='L583'></a><a href='#L583'>583</a>
649
+ <a name='L584'></a><a href='#L584'>584</a>
650
+ <a name='L585'></a><a href='#L585'>585</a>
651
+ <a name='L586'></a><a href='#L586'>586</a>
652
+ <a name='L587'></a><a href='#L587'>587</a>
653
+ <a name='L588'></a><a href='#L588'>588</a>
654
+ <a name='L589'></a><a href='#L589'>589</a>
655
+ <a name='L590'></a><a href='#L590'>590</a>
656
+ <a name='L591'></a><a href='#L591'>591</a>
657
+ <a name='L592'></a><a href='#L592'>592</a>
658
+ <a name='L593'></a><a href='#L593'>593</a>
659
+ <a name='L594'></a><a href='#L594'>594</a>
660
+ <a name='L595'></a><a href='#L595'>595</a>
661
+ <a name='L596'></a><a href='#L596'>596</a>
662
+ <a name='L597'></a><a href='#L597'>597</a>
663
+ <a name='L598'></a><a href='#L598'>598</a>
664
+ <a name='L599'></a><a href='#L599'>599</a>
665
+ <a name='L600'></a><a href='#L600'>600</a>
666
+ <a name='L601'></a><a href='#L601'>601</a>
667
+ <a name='L602'></a><a href='#L602'>602</a>
668
+ <a name='L603'></a><a href='#L603'>603</a>
669
+ <a name='L604'></a><a href='#L604'>604</a>
670
+ <a name='L605'></a><a href='#L605'>605</a>
671
+ <a name='L606'></a><a href='#L606'>606</a>
672
+ <a name='L607'></a><a href='#L607'>607</a>
673
+ <a name='L608'></a><a href='#L608'>608</a>
674
+ <a name='L609'></a><a href='#L609'>609</a>
675
+ <a name='L610'></a><a href='#L610'>610</a>
676
+ <a name='L611'></a><a href='#L611'>611</a>
677
+ <a name='L612'></a><a href='#L612'>612</a>
678
+ <a name='L613'></a><a href='#L613'>613</a>
679
+ <a name='L614'></a><a href='#L614'>614</a>
680
+ <a name='L615'></a><a href='#L615'>615</a>
681
+ <a name='L616'></a><a href='#L616'>616</a>
682
+ <a name='L617'></a><a href='#L617'>617</a>
683
+ <a name='L618'></a><a href='#L618'>618</a>
684
+ <a name='L619'></a><a href='#L619'>619</a>
685
+ <a name='L620'></a><a href='#L620'>620</a>
686
+ <a name='L621'></a><a href='#L621'>621</a>
687
+ <a name='L622'></a><a href='#L622'>622</a>
688
+ <a name='L623'></a><a href='#L623'>623</a>
689
+ <a name='L624'></a><a href='#L624'>624</a>
690
+ <a name='L625'></a><a href='#L625'>625</a>
691
+ <a name='L626'></a><a href='#L626'>626</a>
692
+ <a name='L627'></a><a href='#L627'>627</a>
693
+ <a name='L628'></a><a href='#L628'>628</a>
694
+ <a name='L629'></a><a href='#L629'>629</a>
695
+ <a name='L630'></a><a href='#L630'>630</a>
696
+ <a name='L631'></a><a href='#L631'>631</a>
697
+ <a name='L632'></a><a href='#L632'>632</a>
698
+ <a name='L633'></a><a href='#L633'>633</a>
699
+ <a name='L634'></a><a href='#L634'>634</a>
700
+ <a name='L635'></a><a href='#L635'>635</a>
701
+ <a name='L636'></a><a href='#L636'>636</a>
702
+ <a name='L637'></a><a href='#L637'>637</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
703
+ <span class="cline-any cline-no">&nbsp;</span>
704
+ <span class="cline-any cline-no">&nbsp;</span>
705
+ <span class="cline-any cline-no">&nbsp;</span>
706
+ <span class="cline-any cline-no">&nbsp;</span>
707
+ <span class="cline-any cline-no">&nbsp;</span>
708
+ <span class="cline-any cline-no">&nbsp;</span>
709
+ <span class="cline-any cline-no">&nbsp;</span>
710
+ <span class="cline-any cline-no">&nbsp;</span>
711
+ <span class="cline-any cline-no">&nbsp;</span>
712
+ <span class="cline-any cline-no">&nbsp;</span>
713
+ <span class="cline-any cline-no">&nbsp;</span>
714
+ <span class="cline-any cline-no">&nbsp;</span>
715
+ <span class="cline-any cline-no">&nbsp;</span>
716
+ <span class="cline-any cline-no">&nbsp;</span>
717
+ <span class="cline-any cline-no">&nbsp;</span>
718
+ <span class="cline-any cline-no">&nbsp;</span>
719
+ <span class="cline-any cline-no">&nbsp;</span>
720
+ <span class="cline-any cline-no">&nbsp;</span>
721
+ <span class="cline-any cline-no">&nbsp;</span>
722
+ <span class="cline-any cline-no">&nbsp;</span>
723
+ <span class="cline-any cline-no">&nbsp;</span>
724
+ <span class="cline-any cline-no">&nbsp;</span>
725
+ <span class="cline-any cline-no">&nbsp;</span>
726
+ <span class="cline-any cline-no">&nbsp;</span>
727
+ <span class="cline-any cline-no">&nbsp;</span>
728
+ <span class="cline-any cline-no">&nbsp;</span>
729
+ <span class="cline-any cline-no">&nbsp;</span>
730
+ <span class="cline-any cline-no">&nbsp;</span>
731
+ <span class="cline-any cline-no">&nbsp;</span>
732
+ <span class="cline-any cline-no">&nbsp;</span>
733
+ <span class="cline-any cline-no">&nbsp;</span>
734
+ <span class="cline-any cline-no">&nbsp;</span>
735
+ <span class="cline-any cline-no">&nbsp;</span>
736
+ <span class="cline-any cline-no">&nbsp;</span>
737
+ <span class="cline-any cline-no">&nbsp;</span>
738
+ <span class="cline-any cline-no">&nbsp;</span>
739
+ <span class="cline-any cline-no">&nbsp;</span>
740
+ <span class="cline-any cline-no">&nbsp;</span>
741
+ <span class="cline-any cline-no">&nbsp;</span>
742
+ <span class="cline-any cline-no">&nbsp;</span>
743
+ <span class="cline-any cline-no">&nbsp;</span>
744
+ <span class="cline-any cline-no">&nbsp;</span>
745
+ <span class="cline-any cline-no">&nbsp;</span>
746
+ <span class="cline-any cline-no">&nbsp;</span>
747
+ <span class="cline-any cline-no">&nbsp;</span>
748
+ <span class="cline-any cline-no">&nbsp;</span>
749
+ <span class="cline-any cline-no">&nbsp;</span>
750
+ <span class="cline-any cline-no">&nbsp;</span>
751
+ <span class="cline-any cline-no">&nbsp;</span>
752
+ <span class="cline-any cline-no">&nbsp;</span>
753
+ <span class="cline-any cline-no">&nbsp;</span>
754
+ <span class="cline-any cline-no">&nbsp;</span>
755
+ <span class="cline-any cline-no">&nbsp;</span>
756
+ <span class="cline-any cline-no">&nbsp;</span>
757
+ <span class="cline-any cline-no">&nbsp;</span>
758
+ <span class="cline-any cline-no">&nbsp;</span>
759
+ <span class="cline-any cline-no">&nbsp;</span>
760
+ <span class="cline-any cline-no">&nbsp;</span>
761
+ <span class="cline-any cline-no">&nbsp;</span>
762
+ <span class="cline-any cline-no">&nbsp;</span>
763
+ <span class="cline-any cline-no">&nbsp;</span>
764
+ <span class="cline-any cline-no">&nbsp;</span>
765
+ <span class="cline-any cline-no">&nbsp;</span>
766
+ <span class="cline-any cline-no">&nbsp;</span>
767
+ <span class="cline-any cline-no">&nbsp;</span>
768
+ <span class="cline-any cline-no">&nbsp;</span>
769
+ <span class="cline-any cline-no">&nbsp;</span>
770
+ <span class="cline-any cline-no">&nbsp;</span>
771
+ <span class="cline-any cline-no">&nbsp;</span>
772
+ <span class="cline-any cline-no">&nbsp;</span>
773
+ <span class="cline-any cline-no">&nbsp;</span>
774
+ <span class="cline-any cline-no">&nbsp;</span>
775
+ <span class="cline-any cline-no">&nbsp;</span>
776
+ <span class="cline-any cline-no">&nbsp;</span>
777
+ <span class="cline-any cline-no">&nbsp;</span>
778
+ <span class="cline-any cline-no">&nbsp;</span>
779
+ <span class="cline-any cline-no">&nbsp;</span>
780
+ <span class="cline-any cline-no">&nbsp;</span>
781
+ <span class="cline-any cline-no">&nbsp;</span>
782
+ <span class="cline-any cline-no">&nbsp;</span>
783
+ <span class="cline-any cline-no">&nbsp;</span>
784
+ <span class="cline-any cline-no">&nbsp;</span>
785
+ <span class="cline-any cline-no">&nbsp;</span>
786
+ <span class="cline-any cline-no">&nbsp;</span>
787
+ <span class="cline-any cline-no">&nbsp;</span>
788
+ <span class="cline-any cline-no">&nbsp;</span>
789
+ <span class="cline-any cline-no">&nbsp;</span>
790
+ <span class="cline-any cline-no">&nbsp;</span>
791
+ <span class="cline-any cline-no">&nbsp;</span>
792
+ <span class="cline-any cline-no">&nbsp;</span>
793
+ <span class="cline-any cline-no">&nbsp;</span>
794
+ <span class="cline-any cline-no">&nbsp;</span>
795
+ <span class="cline-any cline-no">&nbsp;</span>
796
+ <span class="cline-any cline-no">&nbsp;</span>
797
+ <span class="cline-any cline-no">&nbsp;</span>
798
+ <span class="cline-any cline-no">&nbsp;</span>
799
+ <span class="cline-any cline-no">&nbsp;</span>
800
+ <span class="cline-any cline-no">&nbsp;</span>
801
+ <span class="cline-any cline-no">&nbsp;</span>
802
+ <span class="cline-any cline-no">&nbsp;</span>
803
+ <span class="cline-any cline-no">&nbsp;</span>
804
+ <span class="cline-any cline-no">&nbsp;</span>
805
+ <span class="cline-any cline-no">&nbsp;</span>
806
+ <span class="cline-any cline-no">&nbsp;</span>
807
+ <span class="cline-any cline-no">&nbsp;</span>
808
+ <span class="cline-any cline-no">&nbsp;</span>
809
+ <span class="cline-any cline-no">&nbsp;</span>
810
+ <span class="cline-any cline-no">&nbsp;</span>
811
+ <span class="cline-any cline-no">&nbsp;</span>
812
+ <span class="cline-any cline-no">&nbsp;</span>
813
+ <span class="cline-any cline-no">&nbsp;</span>
814
+ <span class="cline-any cline-no">&nbsp;</span>
815
+ <span class="cline-any cline-no">&nbsp;</span>
816
+ <span class="cline-any cline-no">&nbsp;</span>
817
+ <span class="cline-any cline-no">&nbsp;</span>
818
+ <span class="cline-any cline-no">&nbsp;</span>
819
+ <span class="cline-any cline-no">&nbsp;</span>
820
+ <span class="cline-any cline-no">&nbsp;</span>
821
+ <span class="cline-any cline-no">&nbsp;</span>
822
+ <span class="cline-any cline-no">&nbsp;</span>
823
+ <span class="cline-any cline-no">&nbsp;</span>
824
+ <span class="cline-any cline-no">&nbsp;</span>
825
+ <span class="cline-any cline-no">&nbsp;</span>
826
+ <span class="cline-any cline-no">&nbsp;</span>
827
+ <span class="cline-any cline-no">&nbsp;</span>
828
+ <span class="cline-any cline-no">&nbsp;</span>
829
+ <span class="cline-any cline-no">&nbsp;</span>
830
+ <span class="cline-any cline-no">&nbsp;</span>
831
+ <span class="cline-any cline-no">&nbsp;</span>
832
+ <span class="cline-any cline-no">&nbsp;</span>
833
+ <span class="cline-any cline-no">&nbsp;</span>
834
+ <span class="cline-any cline-no">&nbsp;</span>
835
+ <span class="cline-any cline-no">&nbsp;</span>
836
+ <span class="cline-any cline-no">&nbsp;</span>
837
+ <span class="cline-any cline-no">&nbsp;</span>
838
+ <span class="cline-any cline-no">&nbsp;</span>
839
+ <span class="cline-any cline-no">&nbsp;</span>
840
+ <span class="cline-any cline-no">&nbsp;</span>
841
+ <span class="cline-any cline-no">&nbsp;</span>
842
+ <span class="cline-any cline-no">&nbsp;</span>
843
+ <span class="cline-any cline-no">&nbsp;</span>
844
+ <span class="cline-any cline-no">&nbsp;</span>
845
+ <span class="cline-any cline-no">&nbsp;</span>
846
+ <span class="cline-any cline-no">&nbsp;</span>
847
+ <span class="cline-any cline-no">&nbsp;</span>
848
+ <span class="cline-any cline-no">&nbsp;</span>
849
+ <span class="cline-any cline-no">&nbsp;</span>
850
+ <span class="cline-any cline-no">&nbsp;</span>
851
+ <span class="cline-any cline-no">&nbsp;</span>
852
+ <span class="cline-any cline-no">&nbsp;</span>
853
+ <span class="cline-any cline-no">&nbsp;</span>
854
+ <span class="cline-any cline-no">&nbsp;</span>
855
+ <span class="cline-any cline-no">&nbsp;</span>
856
+ <span class="cline-any cline-no">&nbsp;</span>
857
+ <span class="cline-any cline-no">&nbsp;</span>
858
+ <span class="cline-any cline-no">&nbsp;</span>
859
+ <span class="cline-any cline-no">&nbsp;</span>
860
+ <span class="cline-any cline-no">&nbsp;</span>
861
+ <span class="cline-any cline-no">&nbsp;</span>
862
+ <span class="cline-any cline-no">&nbsp;</span>
863
+ <span class="cline-any cline-no">&nbsp;</span>
864
+ <span class="cline-any cline-no">&nbsp;</span>
865
+ <span class="cline-any cline-no">&nbsp;</span>
866
+ <span class="cline-any cline-no">&nbsp;</span>
867
+ <span class="cline-any cline-no">&nbsp;</span>
868
+ <span class="cline-any cline-no">&nbsp;</span>
869
+ <span class="cline-any cline-no">&nbsp;</span>
870
+ <span class="cline-any cline-no">&nbsp;</span>
871
+ <span class="cline-any cline-no">&nbsp;</span>
872
+ <span class="cline-any cline-no">&nbsp;</span>
873
+ <span class="cline-any cline-no">&nbsp;</span>
874
+ <span class="cline-any cline-no">&nbsp;</span>
875
+ <span class="cline-any cline-no">&nbsp;</span>
876
+ <span class="cline-any cline-no">&nbsp;</span>
877
+ <span class="cline-any cline-no">&nbsp;</span>
878
+ <span class="cline-any cline-no">&nbsp;</span>
879
+ <span class="cline-any cline-no">&nbsp;</span>
880
+ <span class="cline-any cline-no">&nbsp;</span>
881
+ <span class="cline-any cline-no">&nbsp;</span>
882
+ <span class="cline-any cline-no">&nbsp;</span>
883
+ <span class="cline-any cline-no">&nbsp;</span>
884
+ <span class="cline-any cline-no">&nbsp;</span>
885
+ <span class="cline-any cline-no">&nbsp;</span>
886
+ <span class="cline-any cline-no">&nbsp;</span>
887
+ <span class="cline-any cline-no">&nbsp;</span>
888
+ <span class="cline-any cline-no">&nbsp;</span>
889
+ <span class="cline-any cline-no">&nbsp;</span>
890
+ <span class="cline-any cline-no">&nbsp;</span>
891
+ <span class="cline-any cline-no">&nbsp;</span>
892
+ <span class="cline-any cline-no">&nbsp;</span>
893
+ <span class="cline-any cline-no">&nbsp;</span>
894
+ <span class="cline-any cline-no">&nbsp;</span>
895
+ <span class="cline-any cline-no">&nbsp;</span>
896
+ <span class="cline-any cline-no">&nbsp;</span>
897
+ <span class="cline-any cline-no">&nbsp;</span>
898
+ <span class="cline-any cline-no">&nbsp;</span>
899
+ <span class="cline-any cline-no">&nbsp;</span>
900
+ <span class="cline-any cline-no">&nbsp;</span>
901
+ <span class="cline-any cline-no">&nbsp;</span>
902
+ <span class="cline-any cline-no">&nbsp;</span>
903
+ <span class="cline-any cline-no">&nbsp;</span>
904
+ <span class="cline-any cline-no">&nbsp;</span>
905
+ <span class="cline-any cline-no">&nbsp;</span>
906
+ <span class="cline-any cline-no">&nbsp;</span>
907
+ <span class="cline-any cline-no">&nbsp;</span>
908
+ <span class="cline-any cline-no">&nbsp;</span>
909
+ <span class="cline-any cline-no">&nbsp;</span>
910
+ <span class="cline-any cline-no">&nbsp;</span>
911
+ <span class="cline-any cline-no">&nbsp;</span>
912
+ <span class="cline-any cline-no">&nbsp;</span>
913
+ <span class="cline-any cline-no">&nbsp;</span>
914
+ <span class="cline-any cline-no">&nbsp;</span>
915
+ <span class="cline-any cline-no">&nbsp;</span>
916
+ <span class="cline-any cline-no">&nbsp;</span>
917
+ <span class="cline-any cline-no">&nbsp;</span>
918
+ <span class="cline-any cline-no">&nbsp;</span>
919
+ <span class="cline-any cline-no">&nbsp;</span>
920
+ <span class="cline-any cline-no">&nbsp;</span>
921
+ <span class="cline-any cline-no">&nbsp;</span>
922
+ <span class="cline-any cline-no">&nbsp;</span>
923
+ <span class="cline-any cline-no">&nbsp;</span>
924
+ <span class="cline-any cline-no">&nbsp;</span>
925
+ <span class="cline-any cline-no">&nbsp;</span>
926
+ <span class="cline-any cline-no">&nbsp;</span>
927
+ <span class="cline-any cline-no">&nbsp;</span>
928
+ <span class="cline-any cline-no">&nbsp;</span>
929
+ <span class="cline-any cline-no">&nbsp;</span>
930
+ <span class="cline-any cline-no">&nbsp;</span>
931
+ <span class="cline-any cline-no">&nbsp;</span>
932
+ <span class="cline-any cline-no">&nbsp;</span>
933
+ <span class="cline-any cline-no">&nbsp;</span>
934
+ <span class="cline-any cline-no">&nbsp;</span>
935
+ <span class="cline-any cline-no">&nbsp;</span>
936
+ <span class="cline-any cline-no">&nbsp;</span>
937
+ <span class="cline-any cline-no">&nbsp;</span>
938
+ <span class="cline-any cline-no">&nbsp;</span>
939
+ <span class="cline-any cline-no">&nbsp;</span>
940
+ <span class="cline-any cline-no">&nbsp;</span>
941
+ <span class="cline-any cline-no">&nbsp;</span>
942
+ <span class="cline-any cline-no">&nbsp;</span>
943
+ <span class="cline-any cline-no">&nbsp;</span>
944
+ <span class="cline-any cline-no">&nbsp;</span>
945
+ <span class="cline-any cline-no">&nbsp;</span>
946
+ <span class="cline-any cline-no">&nbsp;</span>
947
+ <span class="cline-any cline-no">&nbsp;</span>
948
+ <span class="cline-any cline-no">&nbsp;</span>
949
+ <span class="cline-any cline-no">&nbsp;</span>
950
+ <span class="cline-any cline-no">&nbsp;</span>
951
+ <span class="cline-any cline-no">&nbsp;</span>
952
+ <span class="cline-any cline-no">&nbsp;</span>
953
+ <span class="cline-any cline-no">&nbsp;</span>
954
+ <span class="cline-any cline-no">&nbsp;</span>
955
+ <span class="cline-any cline-no">&nbsp;</span>
956
+ <span class="cline-any cline-no">&nbsp;</span>
957
+ <span class="cline-any cline-no">&nbsp;</span>
958
+ <span class="cline-any cline-no">&nbsp;</span>
959
+ <span class="cline-any cline-no">&nbsp;</span>
960
+ <span class="cline-any cline-no">&nbsp;</span>
961
+ <span class="cline-any cline-no">&nbsp;</span>
962
+ <span class="cline-any cline-no">&nbsp;</span>
963
+ <span class="cline-any cline-no">&nbsp;</span>
964
+ <span class="cline-any cline-no">&nbsp;</span>
965
+ <span class="cline-any cline-no">&nbsp;</span>
966
+ <span class="cline-any cline-no">&nbsp;</span>
967
+ <span class="cline-any cline-no">&nbsp;</span>
968
+ <span class="cline-any cline-no">&nbsp;</span>
969
+ <span class="cline-any cline-no">&nbsp;</span>
970
+ <span class="cline-any cline-no">&nbsp;</span>
971
+ <span class="cline-any cline-no">&nbsp;</span>
972
+ <span class="cline-any cline-no">&nbsp;</span>
973
+ <span class="cline-any cline-no">&nbsp;</span>
974
+ <span class="cline-any cline-no">&nbsp;</span>
975
+ <span class="cline-any cline-no">&nbsp;</span>
976
+ <span class="cline-any cline-no">&nbsp;</span>
977
+ <span class="cline-any cline-no">&nbsp;</span>
978
+ <span class="cline-any cline-no">&nbsp;</span>
979
+ <span class="cline-any cline-no">&nbsp;</span>
980
+ <span class="cline-any cline-no">&nbsp;</span>
981
+ <span class="cline-any cline-no">&nbsp;</span>
982
+ <span class="cline-any cline-no">&nbsp;</span>
983
+ <span class="cline-any cline-no">&nbsp;</span>
984
+ <span class="cline-any cline-no">&nbsp;</span>
985
+ <span class="cline-any cline-no">&nbsp;</span>
986
+ <span class="cline-any cline-no">&nbsp;</span>
987
+ <span class="cline-any cline-no">&nbsp;</span>
988
+ <span class="cline-any cline-no">&nbsp;</span>
989
+ <span class="cline-any cline-no">&nbsp;</span>
990
+ <span class="cline-any cline-no">&nbsp;</span>
991
+ <span class="cline-any cline-no">&nbsp;</span>
992
+ <span class="cline-any cline-no">&nbsp;</span>
993
+ <span class="cline-any cline-no">&nbsp;</span>
994
+ <span class="cline-any cline-no">&nbsp;</span>
995
+ <span class="cline-any cline-no">&nbsp;</span>
996
+ <span class="cline-any cline-no">&nbsp;</span>
997
+ <span class="cline-any cline-no">&nbsp;</span>
998
+ <span class="cline-any cline-no">&nbsp;</span>
999
+ <span class="cline-any cline-no">&nbsp;</span>
1000
+ <span class="cline-any cline-no">&nbsp;</span>
1001
+ <span class="cline-any cline-no">&nbsp;</span>
1002
+ <span class="cline-any cline-no">&nbsp;</span>
1003
+ <span class="cline-any cline-no">&nbsp;</span>
1004
+ <span class="cline-any cline-no">&nbsp;</span>
1005
+ <span class="cline-any cline-no">&nbsp;</span>
1006
+ <span class="cline-any cline-no">&nbsp;</span>
1007
+ <span class="cline-any cline-no">&nbsp;</span>
1008
+ <span class="cline-any cline-no">&nbsp;</span>
1009
+ <span class="cline-any cline-no">&nbsp;</span>
1010
+ <span class="cline-any cline-no">&nbsp;</span>
1011
+ <span class="cline-any cline-no">&nbsp;</span>
1012
+ <span class="cline-any cline-no">&nbsp;</span>
1013
+ <span class="cline-any cline-no">&nbsp;</span>
1014
+ <span class="cline-any cline-no">&nbsp;</span>
1015
+ <span class="cline-any cline-no">&nbsp;</span>
1016
+ <span class="cline-any cline-no">&nbsp;</span>
1017
+ <span class="cline-any cline-no">&nbsp;</span>
1018
+ <span class="cline-any cline-no">&nbsp;</span>
1019
+ <span class="cline-any cline-no">&nbsp;</span>
1020
+ <span class="cline-any cline-no">&nbsp;</span>
1021
+ <span class="cline-any cline-no">&nbsp;</span>
1022
+ <span class="cline-any cline-no">&nbsp;</span>
1023
+ <span class="cline-any cline-no">&nbsp;</span>
1024
+ <span class="cline-any cline-no">&nbsp;</span>
1025
+ <span class="cline-any cline-no">&nbsp;</span>
1026
+ <span class="cline-any cline-no">&nbsp;</span>
1027
+ <span class="cline-any cline-no">&nbsp;</span>
1028
+ <span class="cline-any cline-no">&nbsp;</span>
1029
+ <span class="cline-any cline-no">&nbsp;</span>
1030
+ <span class="cline-any cline-no">&nbsp;</span>
1031
+ <span class="cline-any cline-no">&nbsp;</span>
1032
+ <span class="cline-any cline-no">&nbsp;</span>
1033
+ <span class="cline-any cline-no">&nbsp;</span>
1034
+ <span class="cline-any cline-no">&nbsp;</span>
1035
+ <span class="cline-any cline-no">&nbsp;</span>
1036
+ <span class="cline-any cline-no">&nbsp;</span>
1037
+ <span class="cline-any cline-no">&nbsp;</span>
1038
+ <span class="cline-any cline-no">&nbsp;</span>
1039
+ <span class="cline-any cline-no">&nbsp;</span>
1040
+ <span class="cline-any cline-no">&nbsp;</span>
1041
+ <span class="cline-any cline-no">&nbsp;</span>
1042
+ <span class="cline-any cline-no">&nbsp;</span>
1043
+ <span class="cline-any cline-no">&nbsp;</span>
1044
+ <span class="cline-any cline-no">&nbsp;</span>
1045
+ <span class="cline-any cline-no">&nbsp;</span>
1046
+ <span class="cline-any cline-no">&nbsp;</span>
1047
+ <span class="cline-any cline-no">&nbsp;</span>
1048
+ <span class="cline-any cline-no">&nbsp;</span>
1049
+ <span class="cline-any cline-no">&nbsp;</span>
1050
+ <span class="cline-any cline-no">&nbsp;</span>
1051
+ <span class="cline-any cline-no">&nbsp;</span>
1052
+ <span class="cline-any cline-no">&nbsp;</span>
1053
+ <span class="cline-any cline-no">&nbsp;</span>
1054
+ <span class="cline-any cline-no">&nbsp;</span>
1055
+ <span class="cline-any cline-no">&nbsp;</span>
1056
+ <span class="cline-any cline-no">&nbsp;</span>
1057
+ <span class="cline-any cline-no">&nbsp;</span>
1058
+ <span class="cline-any cline-no">&nbsp;</span>
1059
+ <span class="cline-any cline-no">&nbsp;</span>
1060
+ <span class="cline-any cline-no">&nbsp;</span>
1061
+ <span class="cline-any cline-no">&nbsp;</span>
1062
+ <span class="cline-any cline-no">&nbsp;</span>
1063
+ <span class="cline-any cline-no">&nbsp;</span>
1064
+ <span class="cline-any cline-no">&nbsp;</span>
1065
+ <span class="cline-any cline-no">&nbsp;</span>
1066
+ <span class="cline-any cline-no">&nbsp;</span>
1067
+ <span class="cline-any cline-no">&nbsp;</span>
1068
+ <span class="cline-any cline-no">&nbsp;</span>
1069
+ <span class="cline-any cline-no">&nbsp;</span>
1070
+ <span class="cline-any cline-no">&nbsp;</span>
1071
+ <span class="cline-any cline-no">&nbsp;</span>
1072
+ <span class="cline-any cline-no">&nbsp;</span>
1073
+ <span class="cline-any cline-no">&nbsp;</span>
1074
+ <span class="cline-any cline-no">&nbsp;</span>
1075
+ <span class="cline-any cline-no">&nbsp;</span>
1076
+ <span class="cline-any cline-no">&nbsp;</span>
1077
+ <span class="cline-any cline-no">&nbsp;</span>
1078
+ <span class="cline-any cline-no">&nbsp;</span>
1079
+ <span class="cline-any cline-no">&nbsp;</span>
1080
+ <span class="cline-any cline-no">&nbsp;</span>
1081
+ <span class="cline-any cline-no">&nbsp;</span>
1082
+ <span class="cline-any cline-no">&nbsp;</span>
1083
+ <span class="cline-any cline-no">&nbsp;</span>
1084
+ <span class="cline-any cline-no">&nbsp;</span>
1085
+ <span class="cline-any cline-no">&nbsp;</span>
1086
+ <span class="cline-any cline-no">&nbsp;</span>
1087
+ <span class="cline-any cline-no">&nbsp;</span>
1088
+ <span class="cline-any cline-no">&nbsp;</span>
1089
+ <span class="cline-any cline-no">&nbsp;</span>
1090
+ <span class="cline-any cline-no">&nbsp;</span>
1091
+ <span class="cline-any cline-no">&nbsp;</span>
1092
+ <span class="cline-any cline-no">&nbsp;</span>
1093
+ <span class="cline-any cline-no">&nbsp;</span>
1094
+ <span class="cline-any cline-no">&nbsp;</span>
1095
+ <span class="cline-any cline-no">&nbsp;</span>
1096
+ <span class="cline-any cline-no">&nbsp;</span>
1097
+ <span class="cline-any cline-no">&nbsp;</span>
1098
+ <span class="cline-any cline-no">&nbsp;</span>
1099
+ <span class="cline-any cline-no">&nbsp;</span>
1100
+ <span class="cline-any cline-no">&nbsp;</span>
1101
+ <span class="cline-any cline-no">&nbsp;</span>
1102
+ <span class="cline-any cline-no">&nbsp;</span>
1103
+ <span class="cline-any cline-no">&nbsp;</span>
1104
+ <span class="cline-any cline-no">&nbsp;</span>
1105
+ <span class="cline-any cline-no">&nbsp;</span>
1106
+ <span class="cline-any cline-no">&nbsp;</span>
1107
+ <span class="cline-any cline-no">&nbsp;</span>
1108
+ <span class="cline-any cline-no">&nbsp;</span>
1109
+ <span class="cline-any cline-no">&nbsp;</span>
1110
+ <span class="cline-any cline-no">&nbsp;</span>
1111
+ <span class="cline-any cline-no">&nbsp;</span>
1112
+ <span class="cline-any cline-no">&nbsp;</span>
1113
+ <span class="cline-any cline-no">&nbsp;</span>
1114
+ <span class="cline-any cline-no">&nbsp;</span>
1115
+ <span class="cline-any cline-no">&nbsp;</span>
1116
+ <span class="cline-any cline-no">&nbsp;</span>
1117
+ <span class="cline-any cline-no">&nbsp;</span>
1118
+ <span class="cline-any cline-no">&nbsp;</span>
1119
+ <span class="cline-any cline-no">&nbsp;</span>
1120
+ <span class="cline-any cline-no">&nbsp;</span>
1121
+ <span class="cline-any cline-no">&nbsp;</span>
1122
+ <span class="cline-any cline-no">&nbsp;</span>
1123
+ <span class="cline-any cline-no">&nbsp;</span>
1124
+ <span class="cline-any cline-no">&nbsp;</span>
1125
+ <span class="cline-any cline-no">&nbsp;</span>
1126
+ <span class="cline-any cline-no">&nbsp;</span>
1127
+ <span class="cline-any cline-no">&nbsp;</span>
1128
+ <span class="cline-any cline-no">&nbsp;</span>
1129
+ <span class="cline-any cline-no">&nbsp;</span>
1130
+ <span class="cline-any cline-no">&nbsp;</span>
1131
+ <span class="cline-any cline-no">&nbsp;</span>
1132
+ <span class="cline-any cline-no">&nbsp;</span>
1133
+ <span class="cline-any cline-no">&nbsp;</span>
1134
+ <span class="cline-any cline-no">&nbsp;</span>
1135
+ <span class="cline-any cline-no">&nbsp;</span>
1136
+ <span class="cline-any cline-no">&nbsp;</span>
1137
+ <span class="cline-any cline-no">&nbsp;</span>
1138
+ <span class="cline-any cline-no">&nbsp;</span>
1139
+ <span class="cline-any cline-no">&nbsp;</span>
1140
+ <span class="cline-any cline-no">&nbsp;</span>
1141
+ <span class="cline-any cline-no">&nbsp;</span>
1142
+ <span class="cline-any cline-no">&nbsp;</span>
1143
+ <span class="cline-any cline-no">&nbsp;</span>
1144
+ <span class="cline-any cline-no">&nbsp;</span>
1145
+ <span class="cline-any cline-no">&nbsp;</span>
1146
+ <span class="cline-any cline-no">&nbsp;</span>
1147
+ <span class="cline-any cline-no">&nbsp;</span>
1148
+ <span class="cline-any cline-no">&nbsp;</span>
1149
+ <span class="cline-any cline-no">&nbsp;</span>
1150
+ <span class="cline-any cline-no">&nbsp;</span>
1151
+ <span class="cline-any cline-no">&nbsp;</span>
1152
+ <span class="cline-any cline-no">&nbsp;</span>
1153
+ <span class="cline-any cline-no">&nbsp;</span>
1154
+ <span class="cline-any cline-no">&nbsp;</span>
1155
+ <span class="cline-any cline-no">&nbsp;</span>
1156
+ <span class="cline-any cline-no">&nbsp;</span>
1157
+ <span class="cline-any cline-no">&nbsp;</span>
1158
+ <span class="cline-any cline-no">&nbsp;</span>
1159
+ <span class="cline-any cline-no">&nbsp;</span>
1160
+ <span class="cline-any cline-no">&nbsp;</span>
1161
+ <span class="cline-any cline-no">&nbsp;</span>
1162
+ <span class="cline-any cline-no">&nbsp;</span>
1163
+ <span class="cline-any cline-no">&nbsp;</span>
1164
+ <span class="cline-any cline-no">&nbsp;</span>
1165
+ <span class="cline-any cline-no">&nbsp;</span>
1166
+ <span class="cline-any cline-no">&nbsp;</span>
1167
+ <span class="cline-any cline-no">&nbsp;</span>
1168
+ <span class="cline-any cline-no">&nbsp;</span>
1169
+ <span class="cline-any cline-no">&nbsp;</span>
1170
+ <span class="cline-any cline-no">&nbsp;</span>
1171
+ <span class="cline-any cline-no">&nbsp;</span>
1172
+ <span class="cline-any cline-no">&nbsp;</span>
1173
+ <span class="cline-any cline-no">&nbsp;</span>
1174
+ <span class="cline-any cline-no">&nbsp;</span>
1175
+ <span class="cline-any cline-no">&nbsp;</span>
1176
+ <span class="cline-any cline-no">&nbsp;</span>
1177
+ <span class="cline-any cline-no">&nbsp;</span>
1178
+ <span class="cline-any cline-no">&nbsp;</span>
1179
+ <span class="cline-any cline-no">&nbsp;</span>
1180
+ <span class="cline-any cline-no">&nbsp;</span>
1181
+ <span class="cline-any cline-no">&nbsp;</span>
1182
+ <span class="cline-any cline-no">&nbsp;</span>
1183
+ <span class="cline-any cline-no">&nbsp;</span>
1184
+ <span class="cline-any cline-no">&nbsp;</span>
1185
+ <span class="cline-any cline-no">&nbsp;</span>
1186
+ <span class="cline-any cline-no">&nbsp;</span>
1187
+ <span class="cline-any cline-no">&nbsp;</span>
1188
+ <span class="cline-any cline-no">&nbsp;</span>
1189
+ <span class="cline-any cline-no">&nbsp;</span>
1190
+ <span class="cline-any cline-no">&nbsp;</span>
1191
+ <span class="cline-any cline-no">&nbsp;</span>
1192
+ <span class="cline-any cline-no">&nbsp;</span>
1193
+ <span class="cline-any cline-no">&nbsp;</span>
1194
+ <span class="cline-any cline-no">&nbsp;</span>
1195
+ <span class="cline-any cline-no">&nbsp;</span>
1196
+ <span class="cline-any cline-no">&nbsp;</span>
1197
+ <span class="cline-any cline-no">&nbsp;</span>
1198
+ <span class="cline-any cline-no">&nbsp;</span>
1199
+ <span class="cline-any cline-no">&nbsp;</span>
1200
+ <span class="cline-any cline-no">&nbsp;</span>
1201
+ <span class="cline-any cline-no">&nbsp;</span>
1202
+ <span class="cline-any cline-no">&nbsp;</span>
1203
+ <span class="cline-any cline-no">&nbsp;</span>
1204
+ <span class="cline-any cline-no">&nbsp;</span>
1205
+ <span class="cline-any cline-no">&nbsp;</span>
1206
+ <span class="cline-any cline-no">&nbsp;</span>
1207
+ <span class="cline-any cline-no">&nbsp;</span>
1208
+ <span class="cline-any cline-no">&nbsp;</span>
1209
+ <span class="cline-any cline-no">&nbsp;</span>
1210
+ <span class="cline-any cline-no">&nbsp;</span>
1211
+ <span class="cline-any cline-no">&nbsp;</span>
1212
+ <span class="cline-any cline-no">&nbsp;</span>
1213
+ <span class="cline-any cline-no">&nbsp;</span>
1214
+ <span class="cline-any cline-no">&nbsp;</span>
1215
+ <span class="cline-any cline-no">&nbsp;</span>
1216
+ <span class="cline-any cline-no">&nbsp;</span>
1217
+ <span class="cline-any cline-no">&nbsp;</span>
1218
+ <span class="cline-any cline-no">&nbsp;</span>
1219
+ <span class="cline-any cline-no">&nbsp;</span>
1220
+ <span class="cline-any cline-no">&nbsp;</span>
1221
+ <span class="cline-any cline-no">&nbsp;</span>
1222
+ <span class="cline-any cline-no">&nbsp;</span>
1223
+ <span class="cline-any cline-no">&nbsp;</span>
1224
+ <span class="cline-any cline-no">&nbsp;</span>
1225
+ <span class="cline-any cline-no">&nbsp;</span>
1226
+ <span class="cline-any cline-no">&nbsp;</span>
1227
+ <span class="cline-any cline-no">&nbsp;</span>
1228
+ <span class="cline-any cline-no">&nbsp;</span>
1229
+ <span class="cline-any cline-no">&nbsp;</span>
1230
+ <span class="cline-any cline-no">&nbsp;</span>
1231
+ <span class="cline-any cline-no">&nbsp;</span>
1232
+ <span class="cline-any cline-no">&nbsp;</span>
1233
+ <span class="cline-any cline-no">&nbsp;</span>
1234
+ <span class="cline-any cline-no">&nbsp;</span>
1235
+ <span class="cline-any cline-no">&nbsp;</span>
1236
+ <span class="cline-any cline-no">&nbsp;</span>
1237
+ <span class="cline-any cline-no">&nbsp;</span>
1238
+ <span class="cline-any cline-no">&nbsp;</span>
1239
+ <span class="cline-any cline-no">&nbsp;</span>
1240
+ <span class="cline-any cline-no">&nbsp;</span>
1241
+ <span class="cline-any cline-no">&nbsp;</span>
1242
+ <span class="cline-any cline-no">&nbsp;</span>
1243
+ <span class="cline-any cline-no">&nbsp;</span>
1244
+ <span class="cline-any cline-no">&nbsp;</span>
1245
+ <span class="cline-any cline-no">&nbsp;</span>
1246
+ <span class="cline-any cline-no">&nbsp;</span>
1247
+ <span class="cline-any cline-no">&nbsp;</span>
1248
+ <span class="cline-any cline-no">&nbsp;</span>
1249
+ <span class="cline-any cline-no">&nbsp;</span>
1250
+ <span class="cline-any cline-no">&nbsp;</span>
1251
+ <span class="cline-any cline-no">&nbsp;</span>
1252
+ <span class="cline-any cline-no">&nbsp;</span>
1253
+ <span class="cline-any cline-no">&nbsp;</span>
1254
+ <span class="cline-any cline-no">&nbsp;</span>
1255
+ <span class="cline-any cline-no">&nbsp;</span>
1256
+ <span class="cline-any cline-no">&nbsp;</span>
1257
+ <span class="cline-any cline-no">&nbsp;</span>
1258
+ <span class="cline-any cline-no">&nbsp;</span>
1259
+ <span class="cline-any cline-no">&nbsp;</span>
1260
+ <span class="cline-any cline-no">&nbsp;</span>
1261
+ <span class="cline-any cline-no">&nbsp;</span>
1262
+ <span class="cline-any cline-no">&nbsp;</span>
1263
+ <span class="cline-any cline-no">&nbsp;</span>
1264
+ <span class="cline-any cline-no">&nbsp;</span>
1265
+ <span class="cline-any cline-no">&nbsp;</span>
1266
+ <span class="cline-any cline-no">&nbsp;</span>
1267
+ <span class="cline-any cline-no">&nbsp;</span>
1268
+ <span class="cline-any cline-no">&nbsp;</span>
1269
+ <span class="cline-any cline-no">&nbsp;</span>
1270
+ <span class="cline-any cline-no">&nbsp;</span>
1271
+ <span class="cline-any cline-no">&nbsp;</span>
1272
+ <span class="cline-any cline-no">&nbsp;</span>
1273
+ <span class="cline-any cline-no">&nbsp;</span>
1274
+ <span class="cline-any cline-no">&nbsp;</span>
1275
+ <span class="cline-any cline-no">&nbsp;</span>
1276
+ <span class="cline-any cline-no">&nbsp;</span>
1277
+ <span class="cline-any cline-no">&nbsp;</span>
1278
+ <span class="cline-any cline-no">&nbsp;</span>
1279
+ <span class="cline-any cline-no">&nbsp;</span>
1280
+ <span class="cline-any cline-no">&nbsp;</span>
1281
+ <span class="cline-any cline-no">&nbsp;</span>
1282
+ <span class="cline-any cline-no">&nbsp;</span>
1283
+ <span class="cline-any cline-no">&nbsp;</span>
1284
+ <span class="cline-any cline-no">&nbsp;</span>
1285
+ <span class="cline-any cline-no">&nbsp;</span>
1286
+ <span class="cline-any cline-no">&nbsp;</span>
1287
+ <span class="cline-any cline-no">&nbsp;</span>
1288
+ <span class="cline-any cline-no">&nbsp;</span>
1289
+ <span class="cline-any cline-no">&nbsp;</span>
1290
+ <span class="cline-any cline-no">&nbsp;</span>
1291
+ <span class="cline-any cline-no">&nbsp;</span>
1292
+ <span class="cline-any cline-no">&nbsp;</span>
1293
+ <span class="cline-any cline-no">&nbsp;</span>
1294
+ <span class="cline-any cline-no">&nbsp;</span>
1295
+ <span class="cline-any cline-no">&nbsp;</span>
1296
+ <span class="cline-any cline-no">&nbsp;</span>
1297
+ <span class="cline-any cline-no">&nbsp;</span>
1298
+ <span class="cline-any cline-no">&nbsp;</span>
1299
+ <span class="cline-any cline-no">&nbsp;</span>
1300
+ <span class="cline-any cline-no">&nbsp;</span>
1301
+ <span class="cline-any cline-no">&nbsp;</span>
1302
+ <span class="cline-any cline-no">&nbsp;</span>
1303
+ <span class="cline-any cline-no">&nbsp;</span>
1304
+ <span class="cline-any cline-no">&nbsp;</span>
1305
+ <span class="cline-any cline-no">&nbsp;</span>
1306
+ <span class="cline-any cline-no">&nbsp;</span>
1307
+ <span class="cline-any cline-no">&nbsp;</span>
1308
+ <span class="cline-any cline-no">&nbsp;</span>
1309
+ <span class="cline-any cline-no">&nbsp;</span>
1310
+ <span class="cline-any cline-no">&nbsp;</span>
1311
+ <span class="cline-any cline-no">&nbsp;</span>
1312
+ <span class="cline-any cline-no">&nbsp;</span>
1313
+ <span class="cline-any cline-no">&nbsp;</span>
1314
+ <span class="cline-any cline-no">&nbsp;</span>
1315
+ <span class="cline-any cline-no">&nbsp;</span>
1316
+ <span class="cline-any cline-no">&nbsp;</span>
1317
+ <span class="cline-any cline-no">&nbsp;</span>
1318
+ <span class="cline-any cline-no">&nbsp;</span>
1319
+ <span class="cline-any cline-no">&nbsp;</span>
1320
+ <span class="cline-any cline-no">&nbsp;</span>
1321
+ <span class="cline-any cline-no">&nbsp;</span>
1322
+ <span class="cline-any cline-no">&nbsp;</span>
1323
+ <span class="cline-any cline-no">&nbsp;</span>
1324
+ <span class="cline-any cline-no">&nbsp;</span>
1325
+ <span class="cline-any cline-no">&nbsp;</span>
1326
+ <span class="cline-any cline-no">&nbsp;</span>
1327
+ <span class="cline-any cline-no">&nbsp;</span>
1328
+ <span class="cline-any cline-no">&nbsp;</span>
1329
+ <span class="cline-any cline-no">&nbsp;</span>
1330
+ <span class="cline-any cline-no">&nbsp;</span>
1331
+ <span class="cline-any cline-no">&nbsp;</span>
1332
+ <span class="cline-any cline-no">&nbsp;</span>
1333
+ <span class="cline-any cline-no">&nbsp;</span>
1334
+ <span class="cline-any cline-no">&nbsp;</span>
1335
+ <span class="cline-any cline-no">&nbsp;</span>
1336
+ <span class="cline-any cline-no">&nbsp;</span>
1337
+ <span class="cline-any cline-no">&nbsp;</span>
1338
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" >import { DyFM_Log, DyFM_Error, DyFM_AnyError, DyFM_Error_Settings } from '@futdevpro/fsm-dynamo';</span></span></span>
1339
+ <span class="cstat-no" title="statement not covered" >import { DyNTS_global_settings } from '../../../../../_collections/global-settings.const';</span>
1340
+ <span class="cstat-no" title="statement not covered" >import { DyNTS_DAI_DocChunk } from '../_models/data-models/dai-doc-chunk.data-model';</span>
1341
+ <span class="cstat-no" title="statement not covered" >import { DyNTS_DAI_DocPage } from '../_models/data-models/dai-doc-page.data-model';</span>
1342
+ <span class="cstat-no" title="statement not covered" ></span>
1343
+ <span class="cstat-no" title="statement not covered" ></span>
1344
+ <span class="cstat-no" title="statement not covered" >interface DyNTS_DAI_DocChunking_Header {</span>
1345
+ <span class="cstat-no" title="statement not covered" > level: number;</span>
1346
+ <span class="cstat-no" title="statement not covered" > header: string;</span>
1347
+ <span class="cstat-no" title="statement not covered" > index: number;</span>
1348
+ <span class="cstat-no" title="statement not covered" >}</span>
1349
+ <span class="cstat-no" title="statement not covered" ></span>
1350
+ <span class="cstat-no" title="statement not covered" >interface DyNTS_DAI_DocChunking_BreakPoint {</span>
1351
+ <span class="cstat-no" title="statement not covered" > index: number;</span>
1352
+ <span class="cstat-no" title="statement not covered" > level: number;</span>
1353
+ <span class="cstat-no" title="statement not covered" >}</span>
1354
+ <span class="cstat-no" title="statement not covered" ></span>
1355
+ <span class="cstat-no" title="statement not covered" >/**</span>
1356
+ <span class="cstat-no" title="statement not covered" > * ClickUp dokumentum chunking szolgáltatás</span>
1357
+ <span class="cstat-no" title="statement not covered" > * @author AI</span>
1358
+ <span class="cstat-no" title="statement not covered" > * @description ClickUp dokumentumok intelligens chunking-ja a leghosszabb lehetséges chunk-ok létrehozásához</span>
1359
+ <span class="cstat-no" title="statement not covered" > */</span>
1360
+ <span class="cstat-no" title="statement not covered" >export class DyNTS_DAI_DocChunking_Util {</span>
1361
+ <span class="cstat-no" title="statement not covered" > </span>
1362
+ <span class="cstat-no" title="statement not covered" > protected static readonly defaultErrorUserMsg: string = </span>
1363
+ <span class="cstat-no" title="statement not covered" > `We encountered an unhandled Control Service Error, ` +</span>
1364
+ <span class="cstat-no" title="statement not covered" > `\nplease contact the responsible development team.`; </span>
1365
+ <span class="cstat-no" title="statement not covered" ></span>
1366
+ <span class="cstat-no" title="statement not covered" > /**</span>
1367
+ <span class="cstat-no" title="statement not covered" > * Unified break points configuration</span>
1368
+ <span class="cstat-no" title="statement not covered" > */</span>
1369
+ <span class="cstat-no" title="statement not covered" > private static readonly breakPoints: { pattern: string, level: number, includeLength: number }[] = [</span>
1370
+ <span class="cstat-no" title="statement not covered" > { pattern: '\n# ', level: 1, includeLength: 0 }, // Header 1 - cut before marker</span>
1371
+ <span class="cstat-no" title="statement not covered" > { pattern: '\n## ', level: 2, includeLength: 0 }, // Header 2 - cut before marker</span>
1372
+ <span class="cstat-no" title="statement not covered" > { pattern: '\n### ', level: 3, includeLength: 0 }, // Header 3 - cut before marker</span>
1373
+ <span class="cstat-no" title="statement not covered" > { pattern: '\n#### ', level: 4, includeLength: 0 }, // Header 4 - cut before marker</span>
1374
+ <span class="cstat-no" title="statement not covered" > { pattern: '\n\n', level: 0, includeLength: 2 }, // Double line break - include</span>
1375
+ <span class="cstat-no" title="statement not covered" > { pattern: '\n', level: 0, includeLength: 1 }, // Single line break - include</span>
1376
+ <span class="cstat-no" title="statement not covered" > { pattern: '. ', level: 0, includeLength: 2 }, // Sentence end - include</span>
1377
+ <span class="cstat-no" title="statement not covered" > { pattern: ' ', level: 0, includeLength: 1 }, // Word break - include</span>
1378
+ <span class="cstat-no" title="statement not covered" > ];</span>
1379
+ <span class="cstat-no" title="statement not covered" ></span>
1380
+ <span class="cstat-no" title="statement not covered" > protected static readonly debugLog: boolean = false;</span>
1381
+ <span class="cstat-no" title="statement not covered" ></span>
1382
+ <span class="cstat-no" title="statement not covered" > /**</span>
1383
+ <span class="cstat-no" title="statement not covered" > * Markdown tartalom chunking-ja a leghosszabb lehetséges chunk-ok létrehozásához</span>
1384
+ <span class="cstat-no" title="statement not covered" > * @param page - ClickUp dokumentum oldal</span>
1385
+ <span class="cstat-no" title="statement not covered" > * @param issuer - Kérés kezdeményezője</span>
1386
+ <span class="cstat-no" title="statement not covered" > * @returns Promise&lt;CU_DocChunk[]&gt; - Létrehozott chunk-ok listája</span>
1387
+ <span class="cstat-no" title="statement not covered" > */</span>
1388
+ <span class="cstat-no" title="statement not covered" > static async chunkMdContent&lt;</span>
1389
+ <span class="cstat-no" title="statement not covered" > T_Chunk extends DyNTS_DAI_DocChunk,</span>
1390
+ <span class="cstat-no" title="statement not covered" > T_Page extends DyNTS_DAI_DocPage&lt;T_Chunk&gt;,</span>
1391
+ <span class="cstat-no" title="statement not covered" > &gt;(</span>
1392
+ <span class="cstat-no" title="statement not covered" > page: T_Page,</span>
1393
+ <span class="cstat-no" title="statement not covered" > getPageLink: (page: T_Page, issuer: string) =&gt; string,</span>
1394
+ <span class="cstat-no" title="statement not covered" > issuer: string,</span>
1395
+ <span class="cstat-no" title="statement not covered" > debugLog?: boolean</span>
1396
+ <span class="cstat-no" title="statement not covered" > ): Promise&lt;T_Chunk[]&gt; {</span>
1397
+ <span class="cstat-no" title="statement not covered" > try {</span>
1398
+ <span class="cstat-no" title="statement not covered" > if (debugLog) {</span>
1399
+ <span class="cstat-no" title="statement not covered" > DyFM_Log.info(`Chunking page "${page.name}"...`);</span>
1400
+ <span class="cstat-no" title="statement not covered" > }</span>
1401
+ <span class="cstat-no" title="statement not covered" ></span>
1402
+ <span class="cstat-no" title="statement not covered" > if (page.content.includes('#####')) {</span>
1403
+ <span class="cstat-no" title="statement not covered" > DyFM_Log.warn('lvl5+ headers are not supported yet for page: ' + page.name);</span>
1404
+ <span class="cstat-no" title="statement not covered" > }</span>
1405
+ <span class="cstat-no" title="statement not covered" ></span>
1406
+ <span class="cstat-no" title="statement not covered" > if (!page.documentId) {</span>
1407
+ <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
1408
+ <span class="cstat-no" title="statement not covered" > ...this.getDefaultErrorSettings('chunkMdContent', new Error('Page documentId is not set'), issuer),</span>
1409
+ <span class="cstat-no" title="statement not covered" > errorCode: 'CCAP-CUC-CC2',</span>
1410
+ <span class="cstat-no" title="statement not covered" > });</span>
1411
+ <span class="cstat-no" title="statement not covered" > }</span>
1412
+ <span class="cstat-no" title="statement not covered" ></span>
1413
+ <span class="cstat-no" title="statement not covered" > if (!page._id) {</span>
1414
+ <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
1415
+ <span class="cstat-no" title="statement not covered" > ...this.getDefaultErrorSettings('chunkMdContent', new Error('Page _id is not set'), issuer),</span>
1416
+ <span class="cstat-no" title="statement not covered" > errorCode: 'CCAP-CUC-CC3',</span>
1417
+ <span class="cstat-no" title="statement not covered" > });</span>
1418
+ <span class="cstat-no" title="statement not covered" > }</span>
1419
+ <span class="cstat-no" title="statement not covered" ></span>
1420
+ <span class="cstat-no" title="statement not covered" > /* DyFM_Log.log(`Chunking page: ${page.name}\n\n`, JSON.stringify(page.content, null, 2)); */</span>
1421
+ <span class="cstat-no" title="statement not covered" ></span>
1422
+ <span class="cstat-no" title="statement not covered" > let leftovers: string = page.content;</span>
1423
+ <span class="cstat-no" title="statement not covered" > const maxChunkSize: number = DyNTS_global_settings.docChunking.maxChunkSize;</span>
1424
+ <span class="cstat-no" title="statement not covered" > const maxChunkCount: number = DyNTS_global_settings.docChunking.maxChunkCount;</span>
1425
+ <span class="cstat-no" title="statement not covered" > const chunks: T_Chunk[] = [];</span>
1426
+ <span class="cstat-no" title="statement not covered" > let chunkIndex: number = 0;</span>
1427
+ <span class="cstat-no" title="statement not covered" > let currentPosition: number = 0; // Track current position in original content</span>
1428
+ <span class="cstat-no" title="statement not covered" ></span>
1429
+ <span class="cstat-no" title="statement not covered" > // Parse all headers to build hierarchy</span>
1430
+ <span class="cstat-no" title="statement not covered" > const headerHierarchy: DyNTS_DAI_DocChunking_Header[] = this.parseHeaderHierarchy(leftovers);</span>
1431
+ <span class="cstat-no" title="statement not covered" > </span>
1432
+ <span class="cstat-no" title="statement not covered" > // Debug: Log parsed headers</span>
1433
+ <span class="cstat-no" title="statement not covered" > /* console.log('\n=== Parsed Header Hierarchy ===');</span>
1434
+ <span class="cstat-no" title="statement not covered" > headerHierarchy.forEach((header, index) =&gt; {</span>
1435
+ <span class="cstat-no" title="statement not covered" > console.log(`${index}: Level ${header.level} at position ${header.index}: "${header.header}"`);</span>
1436
+ <span class="cstat-no" title="statement not covered" > });</span>
1437
+ <span class="cstat-no" title="statement not covered" > console.log('=== End Header Hierarchy ===\n'); */</span>
1438
+ <span class="cstat-no" title="statement not covered" > </span>
1439
+ <span class="cstat-no" title="statement not covered" > // Track the last headers of each level as we progress</span>
1440
+ <span class="cstat-no" title="statement not covered" > const lastHeaders: Map&lt;number, string&gt; = new Map();</span>
1441
+ <span class="cstat-no" title="statement not covered" ></span>
1442
+ <span class="cstat-no" title="statement not covered" > while (leftovers.length &gt; 0 &amp;&amp; chunkIndex &lt; maxChunkCount) {</span>
1443
+ <span class="cstat-no" title="statement not covered" > // Ha a teljes tartalom belefér egy chunk-ba, adjuk vissza az egészet</span>
1444
+ <span class="cstat-no" title="statement not covered" > if (leftovers.length &lt;= maxChunkSize) {</span>
1445
+ <span class="cstat-no" title="statement not covered" > const chunkContent = leftovers.trim();</span>
1446
+ <span class="cstat-no" title="statement not covered" ></span>
1447
+ <span class="cstat-no" title="statement not covered" > if (chunkContent.length &gt; 0) {</span>
1448
+ <span class="cstat-no" title="statement not covered" > //const chunkWithHierarchy: string = this.addHeaderHierarchy(chunkContent, headerHierarchy, currentPosition, currentPosition + leftovers.length, lastHeaders);</span>
1449
+ <span class="cstat-no" title="statement not covered" > //const chunkPath: string[] = this.buildChunkPath(page.name, headerHierarchy, currentPosition, currentPosition + leftovers.length, lastHeaders);</span>
1450
+ <span class="cstat-no" title="statement not covered" > const headParents: string[] = this.getRelevantHeaders(headerHierarchy, currentPosition, currentPosition + leftovers.length, lastHeaders); // headerHierarchy.map(header =&gt; header.header);</span>
1451
+ <span class="cstat-no" title="statement not covered" > //const allFlaggedParents: string[] = [ ...page.allFlaggedParents, ...headParents ];</span>
1452
+ <span class="cstat-no" title="statement not covered" > </span>
1453
+ <span class="cstat-no" title="statement not covered" > const chunk: T_Chunk = new DyNTS_DAI_DocChunk({</span>
1454
+ <span class="cstat-no" title="statement not covered" > externalDocumentId: page.externalDocumentId,</span>
1455
+ <span class="cstat-no" title="statement not covered" > documentId: page.documentId,</span>
1456
+ <span class="cstat-no" title="statement not covered" > externalPageId: page.externalPageId,</span>
1457
+ <span class="cstat-no" title="statement not covered" > pageId: page._id,</span>
1458
+ <span class="cstat-no" title="statement not covered" ></span>
1459
+ <span class="cstat-no" title="statement not covered" > filePathParents: page.parentedPath,</span>
1460
+ <span class="cstat-no" title="statement not covered" > chunkHeadParents: headParents,</span>
1461
+ <span class="cstat-no" title="statement not covered" ></span>
1462
+ <span class="cstat-no" title="statement not covered" > allFlaggedParents: [ ...page.allFlaggedParents, ...headParents ],</span>
1463
+ <span class="cstat-no" title="statement not covered" > /* path: [ ...page.parentedPath, ...headParents ].join('/'), */</span>
1464
+ <span class="cstat-no" title="statement not covered" > path: page.allFlaggedParentsMerged,</span>
1465
+ <span class="cstat-no" title="statement not covered" ></span>
1466
+ <span class="cstat-no" title="statement not covered" > documentName: page.externalDocumentId,</span>
1467
+ <span class="cstat-no" title="statement not covered" > pageName: page.name,</span>
1468
+ <span class="cstat-no" title="statement not covered" > pageLink: getPageLink(page, issuer),</span>
1469
+ <span class="cstat-no" title="statement not covered" > chunkIndex: chunkIndex,</span>
1470
+ <span class="cstat-no" title="statement not covered" > </span>
1471
+ <span class="cstat-no" title="statement not covered" > chunkContent: chunkContent,</span>
1472
+ <span class="cstat-no" title="statement not covered" > /* chunkOriginalContent: chunkContent,</span>
1473
+ <span class="cstat-no" title="statement not covered" ></span>
1474
+ <span class="cstat-no" title="statement not covered" > chunkContent: chunkWithHierarchy, */</span>
1475
+ <span class="cstat-no" title="statement not covered" > }) as T_Chunk;</span>
1476
+ <span class="cstat-no" title="statement not covered" ></span>
1477
+ <span class="cstat-no" title="statement not covered" > if (this.debugLog || debugLog) {</span>
1478
+ <span class="cstat-no" title="statement not covered" > DyFM_Log.H_info(</span>
1479
+ <span class="cstat-no" title="statement not covered" > 'Full content (before assembleChunkWithHeaders)',</span>
1480
+ <span class="cstat-no" title="statement not covered" > `Chunk ${chunkIndex}: ${chunk.path.replaceAll('/', '/\n').split('/')}`, </span>
1481
+ <span class="cstat-no" title="statement not covered" > { chunk: chunk.chunkContent }</span>
1482
+ <span class="cstat-no" title="statement not covered" > );</span>
1483
+ <span class="cstat-no" title="statement not covered" > }</span>
1484
+ <span class="cstat-no" title="statement not covered" ></span>
1485
+ <span class="cstat-no" title="statement not covered" > /* chunk.chunkContent = this.assembleChunkWithHeaders(chunk, issuer); */</span>
1486
+ <span class="cstat-no" title="statement not covered" > if (this.debugLog || debugLog) {</span>
1487
+ <span class="cstat-no" title="statement not covered" > DyFM_Log.H_info(</span>
1488
+ <span class="cstat-no" title="statement not covered" > 'Full content (after assembleChunkWithHeaders)',</span>
1489
+ <span class="cstat-no" title="statement not covered" > `Chunk ${chunkIndex}: ${chunk.path.replaceAll('/', '/\n').split('/')}`, </span>
1490
+ <span class="cstat-no" title="statement not covered" > { </span>
1491
+ <span class="cstat-no" title="statement not covered" > chunk: chunk.chunkContent,</span>
1492
+ <span class="cstat-no" title="statement not covered" > }</span>
1493
+ <span class="cstat-no" title="statement not covered" > );</span>
1494
+ <span class="cstat-no" title="statement not covered" > }</span>
1495
+ <span class="cstat-no" title="statement not covered" ></span>
1496
+ <span class="cstat-no" title="statement not covered" > /* await DyFM_Async.wait(100_000); */</span>
1497
+ <span class="cstat-no" title="statement not covered" > chunks.push(chunk);</span>
1498
+ <span class="cstat-no" title="statement not covered" > }</span>
1499
+ <span class="cstat-no" title="statement not covered" > break;</span>
1500
+ <span class="cstat-no" title="statement not covered" > }</span>
1501
+ <span class="cstat-no" title="statement not covered" ></span>
1502
+ <span class="cstat-no" title="statement not covered" > // Keressük meg a legjobb break point-ot a maxChunkSize-n belül</span>
1503
+ <span class="cstat-no" title="statement not covered" > const breakPoint: DyNTS_DAI_DocChunking_BreakPoint | null = this.findBestBreakPoint(leftovers, maxChunkSize);</span>
1504
+ <span class="cstat-no" title="statement not covered" > </span>
1505
+ <span class="cstat-no" title="statement not covered" > if (breakPoint &amp;&amp; breakPoint.index &gt; 0) {</span>
1506
+ <span class="cstat-no" title="statement not covered" > // Ha találtunk break point-ot, vágjunk a marker előtt</span>
1507
+ <span class="cstat-no" title="statement not covered" > const chunkContent: string = leftovers.substring(0, breakPoint.index).trim();</span>
1508
+ <span class="cstat-no" title="statement not covered" > </span>
1509
+ <span class="cstat-no" title="statement not covered" > // Debug: Log current state</span>
1510
+ <span class="cstat-no" title="statement not covered" > /* console.log(`\n--- Creating chunk ${chunkIndex} ---`);</span>
1511
+ <span class="cstat-no" title="statement not covered" > console.log(`Current position: ${currentPosition}`);</span>
1512
+ <span class="cstat-no" title="statement not covered" > console.log(`Last headers:`, Object.fromEntries(lastHeaders));</span>
1513
+ <span class="cstat-no" title="statement not covered" > console.log(`Chunk content preview:`, chunkContent.substring(0, 100) + '...'); */</span>
1514
+ <span class="cstat-no" title="statement not covered" > </span>
1515
+ <span class="cstat-no" title="statement not covered" > // Check if chunk has headers</span>
1516
+ <span class="cstat-no" title="statement not covered" > //const hasHeaders: boolean = headerHierarchy.some(header =&gt; </span>
1517
+ <span class="cstat-no" title="statement not covered" > // header.index &gt;= currentPosition &amp;&amp; header.index &lt; currentPosition + breakPoint.index</span>
1518
+ <span class="cstat-no" title="statement not covered" > //);</span>
1519
+ <span class="cstat-no" title="statement not covered" > /* console.log(`Chunk has headers: ${hasHeaders}`); */</span>
1520
+ <span class="cstat-no" title="statement not covered" > </span>
1521
+ <span class="cstat-no" title="statement not covered" > //const chunkWithHierarchy: string = this.addHeaderHierarchy(chunkContent, headerHierarchy, currentPosition, currentPosition + breakPoint.index, lastHeaders);</span>
1522
+ <span class="cstat-no" title="statement not covered" > //const chunkPath: string[] = this.buildChunkPath(page.name, headerHierarchy, currentPosition, currentPosition + breakPoint.index, lastHeaders);</span>
1523
+ <span class="cstat-no" title="statement not covered" > const headParents: string[] = this.getRelevantHeaders(headerHierarchy, currentPosition, currentPosition + breakPoint.index, lastHeaders); // headerHierarchy.map(header =&gt; header.header);</span>
1524
+ <span class="cstat-no" title="statement not covered" > //const allFlaggedParents: string[] = [ ...page.allFlaggedParents, ...headParents ];</span>
1525
+ <span class="cstat-no" title="statement not covered" > </span>
1526
+ <span class="cstat-no" title="statement not covered" > /* console.log(`Chunk path:`, chunkPath);</span>
1527
+ <span class="cstat-no" title="statement not covered" > console.log(`Chunk with hierarchy preview:`, chunkWithHierarchy.substring(0, 100) + '...'); */</span>
1528
+ <span class="cstat-no" title="statement not covered" > </span>
1529
+ <span class="cstat-no" title="statement not covered" > const chunk: T_Chunk = new DyNTS_DAI_DocChunk({</span>
1530
+ <span class="cstat-no" title="statement not covered" > externalDocumentId: page.externalDocumentId,</span>
1531
+ <span class="cstat-no" title="statement not covered" > externalPageId: page.externalPageId,</span>
1532
+ <span class="cstat-no" title="statement not covered" > documentId: page.documentId,</span>
1533
+ <span class="cstat-no" title="statement not covered" > pageId: page._id,</span>
1534
+ <span class="cstat-no" title="statement not covered" ></span>
1535
+ <span class="cstat-no" title="statement not covered" > filePathParents: page.parentedPath,</span>
1536
+ <span class="cstat-no" title="statement not covered" > chunkHeadParents: headParents,</span>
1537
+ <span class="cstat-no" title="statement not covered" ></span>
1538
+ <span class="cstat-no" title="statement not covered" > allFlaggedParents: [ ...page.allFlaggedParents, ...headParents ],</span>
1539
+ <span class="cstat-no" title="statement not covered" > path: [ ...page.parentedPath, ...headParents ].join('/'),</span>
1540
+ <span class="cstat-no" title="statement not covered" ></span>
1541
+ <span class="cstat-no" title="statement not covered" > documentName: page.externalDocumentId,</span>
1542
+ <span class="cstat-no" title="statement not covered" > pageName: page.name,</span>
1543
+ <span class="cstat-no" title="statement not covered" > pageLink: getPageLink(page, issuer),</span>
1544
+ <span class="cstat-no" title="statement not covered" > chunkIndex: chunkIndex,</span>
1545
+ <span class="cstat-no" title="statement not covered" ></span>
1546
+ <span class="cstat-no" title="statement not covered" > chunkContent: chunkContent,</span>
1547
+ <span class="cstat-no" title="statement not covered" > /* chunkOriginalContent: chunkContent,</span>
1548
+ <span class="cstat-no" title="statement not covered" ></span>
1549
+ <span class="cstat-no" title="statement not covered" > chunkContent: chunkWithHierarchy, */</span>
1550
+ <span class="cstat-no" title="statement not covered" > }) as T_Chunk;</span>
1551
+ <span class="cstat-no" title="statement not covered" ></span>
1552
+ <span class="cstat-no" title="statement not covered" > if (this.debugLog || debugLog) {</span>
1553
+ <span class="cstat-no" title="statement not covered" > DyFM_Log.H_info(</span>
1554
+ <span class="cstat-no" title="statement not covered" > 'Break point (before assembleChunkWithHeaders)',</span>
1555
+ <span class="cstat-no" title="statement not covered" > `Chunk ${chunkIndex}: ${chunk.path.replaceAll('/', '/\n').split('/')}`, </span>
1556
+ <span class="cstat-no" title="statement not covered" > { chunk: chunk.chunkContent }</span>
1557
+ <span class="cstat-no" title="statement not covered" > );</span>
1558
+ <span class="cstat-no" title="statement not covered" > }</span>
1559
+ <span class="cstat-no" title="statement not covered" > </span>
1560
+ <span class="cstat-no" title="statement not covered" > /* chunk.chunkContent = this.assembleChunkWithHeaders(chunk, issuer); */</span>
1561
+ <span class="cstat-no" title="statement not covered" > if (this.debugLog || debugLog) {</span>
1562
+ <span class="cstat-no" title="statement not covered" > DyFM_Log.H_info(</span>
1563
+ <span class="cstat-no" title="statement not covered" > 'Break point (after assembleChunkWithHeaders)',</span>
1564
+ <span class="cstat-no" title="statement not covered" > `Chunk ${chunkIndex}: ${chunk.path.replaceAll('/', '/\n').split('/')}`, </span>
1565
+ <span class="cstat-no" title="statement not covered" > { </span>
1566
+ <span class="cstat-no" title="statement not covered" > chunk: chunk.chunkContent,</span>
1567
+ <span class="cstat-no" title="statement not covered" > }</span>
1568
+ <span class="cstat-no" title="statement not covered" > );</span>
1569
+ <span class="cstat-no" title="statement not covered" > }</span>
1570
+ <span class="cstat-no" title="statement not covered" ></span>
1571
+ <span class="cstat-no" title="statement not covered" > chunks.push(chunk);</span>
1572
+ <span class="cstat-no" title="statement not covered" > chunkIndex++;</span>
1573
+ <span class="cstat-no" title="statement not covered" > currentPosition += breakPoint.index;</span>
1574
+ <span class="cstat-no" title="statement not covered" > leftovers = leftovers.substring(breakPoint.index);</span>
1575
+ <span class="cstat-no" title="statement not covered" > </span>
1576
+ <span class="cstat-no" title="statement not covered" > // Update last headers after creating the chunk</span>
1577
+ <span class="cstat-no" title="statement not covered" > this.updateLastHeaders(headerHierarchy, currentPosition, lastHeaders);</span>
1578
+ <span class="cstat-no" title="statement not covered" > </span>
1579
+ <span class="cstat-no" title="statement not covered" > /* console.log(`Updated last headers:`, Object.fromEntries(lastHeaders));</span>
1580
+ <span class="cstat-no" title="statement not covered" > console.log(`--- End chunk ${chunkIndex - 1} ---\n`); */</span>
1581
+ <span class="cstat-no" title="statement not covered" > } else {</span>
1582
+ <span class="cstat-no" title="statement not covered" > // Ha nem találtunk break point-ot, használjuk a maxChunkSize-t</span>
1583
+ <span class="cstat-no" title="statement not covered" > const chunkContent: string = leftovers.substring(0, maxChunkSize).trim();</span>
1584
+ <span class="cstat-no" title="statement not covered" > //const chunkWithHierarchy: string = this.addHeaderHierarchy(chunkContent, headerHierarchy, currentPosition, currentPosition + maxChunkSize, lastHeaders);</span>
1585
+ <span class="cstat-no" title="statement not covered" > //const chunkPath: string[] = this.buildChunkPath(page.name, headerHierarchy, currentPosition, currentPosition + maxChunkSize, lastHeaders);</span>
1586
+ <span class="cstat-no" title="statement not covered" > const headParents: string[] = this.getRelevantHeaders(headerHierarchy, currentPosition, currentPosition + maxChunkSize, lastHeaders); // headerHierarchy.map(header =&gt; header.header);</span>
1587
+ <span class="cstat-no" title="statement not covered" > //const allFlaggedParents: string[] = [ ...page.allFlaggedParents, ...headParents ];</span>
1588
+ <span class="cstat-no" title="statement not covered" > </span>
1589
+ <span class="cstat-no" title="statement not covered" > const chunk: T_Chunk = new DyNTS_DAI_DocChunk({</span>
1590
+ <span class="cstat-no" title="statement not covered" > externalDocumentId: page.externalDocumentId,</span>
1591
+ <span class="cstat-no" title="statement not covered" > externalPageId: page.externalPageId,</span>
1592
+ <span class="cstat-no" title="statement not covered" > documentId: page.documentId,</span>
1593
+ <span class="cstat-no" title="statement not covered" > pageId: page._id,</span>
1594
+ <span class="cstat-no" title="statement not covered" ></span>
1595
+ <span class="cstat-no" title="statement not covered" > filePathParents: page.parentedPath,</span>
1596
+ <span class="cstat-no" title="statement not covered" > chunkHeadParents: headParents,</span>
1597
+ <span class="cstat-no" title="statement not covered" ></span>
1598
+ <span class="cstat-no" title="statement not covered" > allFlaggedParents: [ ...page.allFlaggedParents, ...headParents ],</span>
1599
+ <span class="cstat-no" title="statement not covered" > path: [ ...page.parentedPath, ...headParents ].join('/'),</span>
1600
+ <span class="cstat-no" title="statement not covered" ></span>
1601
+ <span class="cstat-no" title="statement not covered" > documentName: page.externalDocumentId,</span>
1602
+ <span class="cstat-no" title="statement not covered" > pageName: page.name,</span>
1603
+ <span class="cstat-no" title="statement not covered" > pageLink: getPageLink(page, issuer),</span>
1604
+ <span class="cstat-no" title="statement not covered" > chunkIndex: chunkIndex,</span>
1605
+ <span class="cstat-no" title="statement not covered" ></span>
1606
+ <span class="cstat-no" title="statement not covered" > chunkContent: chunkContent,</span>
1607
+ <span class="cstat-no" title="statement not covered" > /* chunkOriginalContent: chunkContent,</span>
1608
+ <span class="cstat-no" title="statement not covered" ></span>
1609
+ <span class="cstat-no" title="statement not covered" > chunkContent: chunkWithHierarchy, */</span>
1610
+ <span class="cstat-no" title="statement not covered" > }) as T_Chunk;</span>
1611
+ <span class="cstat-no" title="statement not covered" ></span>
1612
+ <span class="cstat-no" title="statement not covered" > if (this.debugLog || debugLog) {</span>
1613
+ <span class="cstat-no" title="statement not covered" > DyFM_Log.H_info(</span>
1614
+ <span class="cstat-no" title="statement not covered" > 'Max chunk size',</span>
1615
+ <span class="cstat-no" title="statement not covered" > `Chunk ${chunkIndex}: ${chunk.path.replaceAll('/', '/\n').split('/')}`, </span>
1616
+ <span class="cstat-no" title="statement not covered" > { chunk: chunk.chunkContent }</span>
1617
+ <span class="cstat-no" title="statement not covered" > );</span>
1618
+ <span class="cstat-no" title="statement not covered" > }</span>
1619
+ <span class="cstat-no" title="statement not covered" ></span>
1620
+ <span class="cstat-no" title="statement not covered" > /* chunk.chunkContent = this.assembleChunkWithHeaders(chunk, issuer); */</span>
1621
+ <span class="cstat-no" title="statement not covered" > if (this.debugLog || debugLog) {</span>
1622
+ <span class="cstat-no" title="statement not covered" > DyFM_Log.H_info(</span>
1623
+ <span class="cstat-no" title="statement not covered" > `Chunk ${chunkIndex}: ${chunk.path.replaceAll('/', '/\n').split('/')}`, </span>
1624
+ <span class="cstat-no" title="statement not covered" > { </span>
1625
+ <span class="cstat-no" title="statement not covered" > chunk: chunk.chunkContent,</span>
1626
+ <span class="cstat-no" title="statement not covered" > }</span>
1627
+ <span class="cstat-no" title="statement not covered" > );</span>
1628
+ <span class="cstat-no" title="statement not covered" > }</span>
1629
+ <span class="cstat-no" title="statement not covered" ></span>
1630
+ <span class="cstat-no" title="statement not covered" > chunks.push(chunk);</span>
1631
+ <span class="cstat-no" title="statement not covered" > chunkIndex++;</span>
1632
+ <span class="cstat-no" title="statement not covered" > currentPosition += maxChunkSize;</span>
1633
+ <span class="cstat-no" title="statement not covered" > leftovers = leftovers.substring(maxChunkSize);</span>
1634
+ <span class="cstat-no" title="statement not covered" > </span>
1635
+ <span class="cstat-no" title="statement not covered" > // Update last headers after creating the chunk</span>
1636
+ <span class="cstat-no" title="statement not covered" > this.updateLastHeaders(headerHierarchy, currentPosition, lastHeaders);</span>
1637
+ <span class="cstat-no" title="statement not covered" > }</span>
1638
+ <span class="cstat-no" title="statement not covered" ></span>
1639
+ <span class="cstat-no" title="statement not covered" > // Safety check to prevent infinite loops</span>
1640
+ <span class="cstat-no" title="statement not covered" > if (leftovers.length &gt; 0 &amp;&amp; leftovers.length &gt;= page.content.length) {</span>
1641
+ <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
1642
+ <span class="cstat-no" title="statement not covered" > ...this.getDefaultErrorSettings(</span>
1643
+ <span class="cstat-no" title="statement not covered" > 'chunkMdContent',</span>
1644
+ <span class="cstat-no" title="statement not covered" > new Error('Infinite loop detected in chunking'),</span>
1645
+ <span class="cstat-no" title="statement not covered" > issuer</span>
1646
+ <span class="cstat-no" title="statement not covered" > ),</span>
1647
+ <span class="cstat-no" title="statement not covered" > errorCode: 'CCAP-CUC-CC1',</span>
1648
+ <span class="cstat-no" title="statement not covered" > });</span>
1649
+ <span class="cstat-no" title="statement not covered" > }</span>
1650
+ <span class="cstat-no" title="statement not covered" > }</span>
1651
+ <span class="cstat-no" title="statement not covered" ></span>
1652
+ <span class="cstat-no" title="statement not covered" > // Log warning if we hit the chunk count limit</span>
1653
+ <span class="cstat-no" title="statement not covered" > if (chunkIndex &gt;= maxChunkCount &amp;&amp; leftovers.length &gt; 0) {</span>
1654
+ <span class="cstat-no" title="statement not covered" > DyFM_Log.warn(</span>
1655
+ <span class="cstat-no" title="statement not covered" > `⚠️ Reached maximum chunk count (${maxChunkCount}). Remaining content: ${leftovers.length} characters`,</span>
1656
+ <span class="cstat-no" title="statement not covered" > {</span>
1657
+ <span class="cstat-no" title="statement not covered" > pageName: page.name,</span>
1658
+ <span class="cstat-no" title="statement not covered" > pageSize: page.content.length,</span>
1659
+ <span class="cstat-no" title="statement not covered" > }</span>
1660
+ <span class="cstat-no" title="statement not covered" > );</span>
1661
+ <span class="cstat-no" title="statement not covered" > }</span>
1662
+ <span class="cstat-no" title="statement not covered" ></span>
1663
+ <span class="cstat-no" title="statement not covered" > /* DyFM_Log.info(`✅ Created ${chunks.length} chunks`); */</span>
1664
+ <span class="cstat-no" title="statement not covered" > return chunks;</span>
1665
+ <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
1666
+ <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
1667
+ <span class="cstat-no" title="statement not covered" > ...this.getDefaultErrorSettings('chunkMdContent', error, issuer),</span>
1668
+ <span class="cstat-no" title="statement not covered" > errorCode: 'CCAP-CUC-CP0',</span>
1669
+ <span class="cstat-no" title="statement not covered" > });</span>
1670
+ <span class="cstat-no" title="statement not covered" > }</span>
1671
+ <span class="cstat-no" title="statement not covered" > }</span>
1672
+ <span class="cstat-no" title="statement not covered" ></span>
1673
+ <span class="cstat-no" title="statement not covered" > /* private static assembleChunkWithHeaders(chunk: DyNTS_DAI_DocChunk, issuer: string): string {</span>
1674
+ <span class="cstat-no" title="statement not covered" > try {</span>
1675
+ <span class="cstat-no" title="statement not covered" > const fileHeaders = chunk.filePathParents.map(</span>
1676
+ <span class="cstat-no" title="statement not covered" > (header, index) =&gt; `${'&gt;'.repeat(index + 1)} **${header}**`</span>
1677
+ <span class="cstat-no" title="statement not covered" > ).join('\n');</span>
1678
+ <span class="cstat-no" title="statement not covered" > const headers = chunk.chunkHeadParents.filter(</span>
1679
+ <span class="cstat-no" title="statement not covered" > path =&gt; !chunk.chunkOriginalContent.includes(path)</span>
1680
+ <span class="cstat-no" title="statement not covered" > ).join('\n');</span>
1681
+ <span class="cstat-no" title="statement not covered" > return `${fileHeaders}\n\n${headers}\n\n${chunk.chunkOriginalContent}`;</span>
1682
+ <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
1683
+ <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
1684
+ <span class="cstat-no" title="statement not covered" > ...this.getDefaultErrorSettings('assembleChunkWithHeaders', error, issuer),</span>
1685
+ <span class="cstat-no" title="statement not covered" > errorCode: 'CCAP-CUC-ACH0',</span>
1686
+ <span class="cstat-no" title="statement not covered" > });</span>
1687
+ <span class="cstat-no" title="statement not covered" > }</span>
1688
+ <span class="cstat-no" title="statement not covered" > } */</span>
1689
+ <span class="cstat-no" title="statement not covered" ></span>
1690
+ <span class="cstat-no" title="statement not covered" > static reassembleChunksToContent(</span>
1691
+ <span class="cstat-no" title="statement not covered" > chunks: DyNTS_DAI_DocChunk[],</span>
1692
+ <span class="cstat-no" title="statement not covered" > issuer: string</span>
1693
+ <span class="cstat-no" title="statement not covered" > ): string {</span>
1694
+ <span class="cstat-no" title="statement not covered" > try {</span>
1695
+ <span class="cstat-no" title="statement not covered" > let pageContent: string = '';</span>
1696
+ <span class="cstat-no" title="statement not covered" ></span>
1697
+ <span class="cstat-no" title="statement not covered" > for (const chunk of chunks) {</span>
1698
+ <span class="cstat-no" title="statement not covered" > if (!chunk) {</span>
1699
+ <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
1700
+ <span class="cstat-no" title="statement not covered" > ...this.getDefaultErrorSettings(</span>
1701
+ <span class="cstat-no" title="statement not covered" > 'reassembleChunksToContent', </span>
1702
+ <span class="cstat-no" title="statement not covered" > new Error('Chunk is null, you`ve passing null chunks to the function'), </span>
1703
+ <span class="cstat-no" title="statement not covered" > issuer</span>
1704
+ <span class="cstat-no" title="statement not covered" > ),</span>
1705
+ <span class="cstat-no" title="statement not covered" > errorCode: 'CCAP-CUC-RCTC0',</span>
1706
+ <span class="cstat-no" title="statement not covered" ></span>
1707
+ <span class="cstat-no" title="statement not covered" > additionalContent: {</span>
1708
+ <span class="cstat-no" title="statement not covered" > chunks: chunks,</span>
1709
+ <span class="cstat-no" title="statement not covered" > },</span>
1710
+ <span class="cstat-no" title="statement not covered" > });</span>
1711
+ <span class="cstat-no" title="statement not covered" > }</span>
1712
+ <span class="cstat-no" title="statement not covered" ></span>
1713
+ <span class="cstat-no" title="statement not covered" > pageContent += chunk.chunkContent;</span>
1714
+ <span class="cstat-no" title="statement not covered" > }</span>
1715
+ <span class="cstat-no" title="statement not covered" ></span>
1716
+ <span class="cstat-no" title="statement not covered" > return pageContent;</span>
1717
+ <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
1718
+ <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
1719
+ <span class="cstat-no" title="statement not covered" > ...this.getDefaultErrorSettings('reassembleChunks', error, issuer),</span>
1720
+ <span class="cstat-no" title="statement not covered" > errorCode: 'CCAP-CUC-RC0',</span>
1721
+ <span class="cstat-no" title="statement not covered" > });</span>
1722
+ <span class="cstat-no" title="statement not covered" > }</span>
1723
+ <span class="cstat-no" title="statement not covered" > }</span>
1724
+ <span class="cstat-no" title="statement not covered" ></span>
1725
+ <span class="cstat-no" title="statement not covered" > /**</span>
1726
+ <span class="cstat-no" title="statement not covered" > * Find the best break point within the chunk size</span>
1727
+ <span class="cstat-no" title="statement not covered" > * @param text - The text to search in</span>
1728
+ <span class="cstat-no" title="statement not covered" > * @param maxIndex - Maximum index to search up to</span>
1729
+ <span class="cstat-no" title="statement not covered" > * @returns The best break point or null if not found</span>
1730
+ <span class="cstat-no" title="statement not covered" > */</span>
1731
+ <span class="cstat-no" title="statement not covered" > private static findBestBreakPoint(text: string, maxIndex: number): DyNTS_DAI_DocChunking_BreakPoint | null {</span>
1732
+ <span class="cstat-no" title="statement not covered" > for (const breakPoint of this.breakPoints) {</span>
1733
+ <span class="cstat-no" title="statement not covered" > const index: number = this.findLastOccurrence(text, breakPoint.pattern, maxIndex);</span>
1734
+ <span class="cstat-no" title="statement not covered" ></span>
1735
+ <span class="cstat-no" title="statement not covered" > if (index &gt; 0) {</span>
1736
+ <span class="cstat-no" title="statement not covered" > return {</span>
1737
+ <span class="cstat-no" title="statement not covered" > index: index + breakPoint.includeLength,</span>
1738
+ <span class="cstat-no" title="statement not covered" > level: breakPoint.level</span>
1739
+ <span class="cstat-no" title="statement not covered" > };</span>
1740
+ <span class="cstat-no" title="statement not covered" > }</span>
1741
+ <span class="cstat-no" title="statement not covered" > }</span>
1742
+ <span class="cstat-no" title="statement not covered" > return null;</span>
1743
+ <span class="cstat-no" title="statement not covered" > }</span>
1744
+ <span class="cstat-no" title="statement not covered" ></span>
1745
+ <span class="cstat-no" title="statement not covered" > /**</span>
1746
+ <span class="cstat-no" title="statement not covered" > * Parse header hierarchy from the content</span>
1747
+ <span class="cstat-no" title="statement not covered" > * @param content - The content to parse</span>
1748
+ <span class="cstat-no" title="statement not covered" > * @returns Array of header positions and levels</span>
1749
+ <span class="cstat-no" title="statement not covered" > */</span>
1750
+ <span class="cstat-no" title="statement not covered" > private static parseHeaderHierarchy(content: string): DyNTS_DAI_DocChunking_Header[] {</span>
1751
+ <span class="cstat-no" title="statement not covered" > const headers: DyNTS_DAI_DocChunking_Header[] = [];</span>
1752
+ <span class="cstat-no" title="statement not covered" > const lines: string[] = content.split('\n');</span>
1753
+ <span class="cstat-no" title="statement not covered" > let currentIndex: number = 0;</span>
1754
+ <span class="cstat-no" title="statement not covered" ></span>
1755
+ <span class="cstat-no" title="statement not covered" > for (const line of lines) {</span>
1756
+ <span class="cstat-no" title="statement not covered" > const trimmedLine: string = line.trim();</span>
1757
+ <span class="cstat-no" title="statement not covered" > </span>
1758
+ <span class="cstat-no" title="statement not covered" > // Check if line starts with # and determine the level</span>
1759
+ <span class="cstat-no" title="statement not covered" > if (trimmedLine.startsWith('#')) {</span>
1760
+ <span class="cstat-no" title="statement not covered" > const match: RegExpMatchArray | null = trimmedLine.match(/^(#+)\s+(.+)$/);</span>
1761
+ <span class="cstat-no" title="statement not covered" ></span>
1762
+ <span class="cstat-no" title="statement not covered" > if (match) {</span>
1763
+ <span class="cstat-no" title="statement not covered" > const level: number = match[1].length; // Count the number of # symbols</span>
1764
+ <span class="cstat-no" title="statement not covered" > const headerText: string = trimmedLine;</span>
1765
+ <span class="cstat-no" title="statement not covered" > </span>
1766
+ <span class="cstat-no" title="statement not covered" > if (level &gt;= 1 &amp;&amp; level &lt;= 4) { // Only support levels 1-4</span>
1767
+ <span class="cstat-no" title="statement not covered" > headers.push({</span>
1768
+ <span class="cstat-no" title="statement not covered" > index: currentIndex,</span>
1769
+ <span class="cstat-no" title="statement not covered" > level: level,</span>
1770
+ <span class="cstat-no" title="statement not covered" > header: headerText</span>
1771
+ <span class="cstat-no" title="statement not covered" > });</span>
1772
+ <span class="cstat-no" title="statement not covered" > }</span>
1773
+ <span class="cstat-no" title="statement not covered" > }</span>
1774
+ <span class="cstat-no" title="statement not covered" > }</span>
1775
+ <span class="cstat-no" title="statement not covered" > </span>
1776
+ <span class="cstat-no" title="statement not covered" > currentIndex += line.length + 1; // +1 for the newline</span>
1777
+ <span class="cstat-no" title="statement not covered" > }</span>
1778
+ <span class="cstat-no" title="statement not covered" ></span>
1779
+ <span class="cstat-no" title="statement not covered" > return headers;</span>
1780
+ <span class="cstat-no" title="statement not covered" > }</span>
1781
+ <span class="cstat-no" title="statement not covered" ></span>
1782
+ <span class="cstat-no" title="statement not covered" > /**</span>
1783
+ <span class="cstat-no" title="statement not covered" > * Update the last headers map based on current position</span>
1784
+ <span class="cstat-no" title="statement not covered" > * @param headerHierarchy - The parsed header hierarchy</span>
1785
+ <span class="cstat-no" title="statement not covered" > * @param currentPosition - Current position in content</span>
1786
+ <span class="cstat-no" title="statement not covered" > * @param lastHeaders - Map to store last headers of each level</span>
1787
+ <span class="cstat-no" title="statement not covered" > */</span>
1788
+ <span class="cstat-no" title="statement not covered" > private static updateLastHeaders(</span>
1789
+ <span class="cstat-no" title="statement not covered" > headerHierarchy: DyNTS_DAI_DocChunking_Header[],</span>
1790
+ <span class="cstat-no" title="statement not covered" > currentPosition: number,</span>
1791
+ <span class="cstat-no" title="statement not covered" > lastHeaders: Map&lt;number, string&gt;</span>
1792
+ <span class="cstat-no" title="statement not covered" > ): void {</span>
1793
+ <span class="cstat-no" title="statement not covered" > // Find all headers that come before current position (not including current position)</span>
1794
+ <span class="cstat-no" title="statement not covered" > for (const header of headerHierarchy) {</span>
1795
+ <span class="cstat-no" title="statement not covered" > if (header.index &lt; currentPosition) {</span>
1796
+ <span class="cstat-no" title="statement not covered" > // Set this header as the last header for its level</span>
1797
+ <span class="cstat-no" title="statement not covered" > lastHeaders.set(header.level, header.header);</span>
1798
+ <span class="cstat-no" title="statement not covered" > </span>
1799
+ <span class="cstat-no" title="statement not covered" > // Clear all lower level headers (higher level numbers) when any header comes</span>
1800
+ <span class="cstat-no" title="statement not covered" > // For example, if we see a level 2 header, clear levels 3, 4</span>
1801
+ <span class="cstat-no" title="statement not covered" > // If we see a level 1 header, clear levels 2, 3, 4</span>
1802
+ <span class="cstat-no" title="statement not covered" > for (let level: number = header.level + 1; level &lt;= 4; level++) {</span>
1803
+ <span class="cstat-no" title="statement not covered" > lastHeaders.delete(level);</span>
1804
+ <span class="cstat-no" title="statement not covered" > }</span>
1805
+ <span class="cstat-no" title="statement not covered" > }</span>
1806
+ <span class="cstat-no" title="statement not covered" > }</span>
1807
+ <span class="cstat-no" title="statement not covered" > }</span>
1808
+ <span class="cstat-no" title="statement not covered" ></span>
1809
+ <span class="cstat-no" title="statement not covered" > /**</span>
1810
+ <span class="cstat-no" title="statement not covered" > * Visszaadja a chunk-hoz tartozó releváns szülő fejléceket a hierarchia alapján.</span>
1811
+ <span class="cstat-no" title="statement not covered" > * @param headerHierarchy - A feldolgozott fejléc-hierarchia</span>
1812
+ <span class="cstat-no" title="statement not covered" > * @param startIndex - A chunk kezdőindexe az eredeti tartalomban</span>
1813
+ <span class="cstat-no" title="statement not covered" > * @param endIndex - A chunk végindexe az eredeti tartalomban</span>
1814
+ <span class="cstat-no" title="statement not covered" > * @param lastHeaders - Az utolsó ismert fejlécek szintenként</span>
1815
+ <span class="cstat-no" title="statement not covered" > * @returns A releváns szülő fejlécek tömbje</span>
1816
+ <span class="cstat-no" title="statement not covered" > */</span>
1817
+ <span class="cstat-no" title="statement not covered" > private static getRelevantHeaders(</span>
1818
+ <span class="cstat-no" title="statement not covered" > headerHierarchy: DyNTS_DAI_DocChunking_Header[],</span>
1819
+ <span class="cstat-no" title="statement not covered" > startIndex: number,</span>
1820
+ <span class="cstat-no" title="statement not covered" > endIndex: number,</span>
1821
+ <span class="cstat-no" title="statement not covered" > lastHeaders: Map&lt;number, string&gt;</span>
1822
+ <span class="cstat-no" title="statement not covered" > ): string[] {</span>
1823
+ <span class="cstat-no" title="statement not covered" > // Keressük meg az első fejlécet a chunkban</span>
1824
+ <span class="cstat-no" title="statement not covered" > const firstHeaderInChunk: DyNTS_DAI_DocChunking_Header | undefined = headerHierarchy.find(header =&gt; </span>
1825
+ <span class="cstat-no" title="statement not covered" > header.index &gt;= startIndex &amp;&amp; header.index &lt; endIndex</span>
1826
+ <span class="cstat-no" title="statement not covered" > );</span>
1827
+ <span class="cstat-no" title="statement not covered" ></span>
1828
+ <span class="cstat-no" title="statement not covered" > if (!firstHeaderInChunk) {</span>
1829
+ <span class="cstat-no" title="statement not covered" > // Nincs fejléc a chunkban, a legmagasabb szintű utolsó fejlécet használjuk</span>
1830
+ <span class="cstat-no" title="statement not covered" > let highestLevel: number = 0;</span>
1831
+ <span class="cstat-no" title="statement not covered" > let highestHeader: string = '';</span>
1832
+ <span class="cstat-no" title="statement not covered" ></span>
1833
+ <span class="cstat-no" title="statement not covered" > for (const [level, header] of lastHeaders.entries()) {</span>
1834
+ <span class="cstat-no" title="statement not covered" > if (level &gt; highestLevel) {</span>
1835
+ <span class="cstat-no" title="statement not covered" > highestLevel = level;</span>
1836
+ <span class="cstat-no" title="statement not covered" > highestHeader = header;</span>
1837
+ <span class="cstat-no" title="statement not covered" > }</span>
1838
+ <span class="cstat-no" title="statement not covered" > }</span>
1839
+ <span class="cstat-no" title="statement not covered" > return highestHeader ? [highestHeader] : [];</span>
1840
+ <span class="cstat-no" title="statement not covered" > }</span>
1841
+ <span class="cstat-no" title="statement not covered" ></span>
1842
+ <span class="cstat-no" title="statement not covered" > // Szülő fejlécek összegyűjtése az első fejléc szintje alapján</span>
1843
+ <span class="cstat-no" title="statement not covered" > const relevantHeaders: string[] = [];</span>
1844
+ <span class="cstat-no" title="statement not covered" > for (let level: number = 1; level &lt; firstHeaderInChunk.level; level++) {</span>
1845
+ <span class="cstat-no" title="statement not covered" > const parentHeader: string | undefined = lastHeaders.get(level);</span>
1846
+ <span class="cstat-no" title="statement not covered" ></span>
1847
+ <span class="cstat-no" title="statement not covered" > if (parentHeader) {</span>
1848
+ <span class="cstat-no" title="statement not covered" > relevantHeaders.push(parentHeader);</span>
1849
+ <span class="cstat-no" title="statement not covered" > }</span>
1850
+ <span class="cstat-no" title="statement not covered" > }</span>
1851
+ <span class="cstat-no" title="statement not covered" > return relevantHeaders;</span>
1852
+ <span class="cstat-no" title="statement not covered" > }</span>
1853
+ <span class="cstat-no" title="statement not covered" ></span>
1854
+ <span class="cstat-no" title="statement not covered" > /**</span>
1855
+ <span class="cstat-no" title="statement not covered" > * Build hierarchical chunk path based on header structure</span>
1856
+ <span class="cstat-no" title="statement not covered" > * @param pageName - The page name</span>
1857
+ <span class="cstat-no" title="statement not covered" > * @param headerHierarchy - The parsed header hierarchy</span>
1858
+ <span class="cstat-no" title="statement not covered" > * @param startIndex - Start index of the chunk in original content</span>
1859
+ <span class="cstat-no" title="statement not covered" > * @param endIndex - End index of the chunk in original content</span>
1860
+ <span class="cstat-no" title="statement not covered" > * @param lastHeaders - Map of last headers for each level</span>
1861
+ <span class="cstat-no" title="statement not covered" > * @returns Hierarchical path array</span>
1862
+ <span class="cstat-no" title="statement not covered" > */</span>
1863
+ <span class="cstat-no" title="statement not covered" > private static buildChunkPath(</span>
1864
+ <span class="cstat-no" title="statement not covered" > pageName: string,</span>
1865
+ <span class="cstat-no" title="statement not covered" > headerHierarchy: DyNTS_DAI_DocChunking_Header[],</span>
1866
+ <span class="cstat-no" title="statement not covered" > startIndex: number,</span>
1867
+ <span class="cstat-no" title="statement not covered" > endIndex: number,</span>
1868
+ <span class="cstat-no" title="statement not covered" > lastHeaders: Map&lt;number, string&gt;</span>
1869
+ <span class="cstat-no" title="statement not covered" > ): string[] {</span>
1870
+ <span class="cstat-no" title="statement not covered" > // Find the first header within this chunk</span>
1871
+ <span class="cstat-no" title="statement not covered" > const firstHeaderInChunk: DyNTS_DAI_DocChunking_Header | undefined = headerHierarchy.find(header =&gt; </span>
1872
+ <span class="cstat-no" title="statement not covered" > header.index &gt;= startIndex &amp;&amp; header.index &lt; endIndex</span>
1873
+ <span class="cstat-no" title="statement not covered" > );</span>
1874
+ <span class="cstat-no" title="statement not covered" ></span>
1875
+ <span class="cstat-no" title="statement not covered" > if (!firstHeaderInChunk) {</span>
1876
+ <span class="cstat-no" title="statement not covered" > // No header in chunk, use the highest level from lastHeaders as parent</span>
1877
+ <span class="cstat-no" title="statement not covered" > const pathParts: string[] = [pageName];</span>
1878
+ <span class="cstat-no" title="statement not covered" > </span>
1879
+ <span class="cstat-no" title="statement not covered" > // Find the highest level header from lastHeaders</span>
1880
+ <span class="cstat-no" title="statement not covered" > let highestLevel: number = 0;</span>
1881
+ <span class="cstat-no" title="statement not covered" > let highestHeader: string = '';</span>
1882
+ <span class="cstat-no" title="statement not covered" ></span>
1883
+ <span class="cstat-no" title="statement not covered" > for (const [level, header] of lastHeaders.entries()) {</span>
1884
+ <span class="cstat-no" title="statement not covered" > if (level &gt; highestLevel) {</span>
1885
+ <span class="cstat-no" title="statement not covered" > highestLevel = level;</span>
1886
+ <span class="cstat-no" title="statement not covered" > highestHeader = header;</span>
1887
+ <span class="cstat-no" title="statement not covered" > }</span>
1888
+ <span class="cstat-no" title="statement not covered" > }</span>
1889
+ <span class="cstat-no" title="statement not covered" > </span>
1890
+ <span class="cstat-no" title="statement not covered" > if (highestHeader) {</span>
1891
+ <span class="cstat-no" title="statement not covered" > pathParts.push(highestHeader);</span>
1892
+ <span class="cstat-no" title="statement not covered" > }</span>
1893
+ <span class="cstat-no" title="statement not covered" > </span>
1894
+ <span class="cstat-no" title="statement not covered" > return pathParts;</span>
1895
+ <span class="cstat-no" title="statement not covered" > }</span>
1896
+ <span class="cstat-no" title="statement not covered" ></span>
1897
+ <span class="cstat-no" title="statement not covered" > // Build the path hierarchy</span>
1898
+ <span class="cstat-no" title="statement not covered" > const pathParts: string[] = [pageName];</span>
1899
+ <span class="cstat-no" title="statement not covered" > </span>
1900
+ <span class="cstat-no" title="statement not covered" > // Add parent headers from lastHeaders (these are the actual parent headers)</span>
1901
+ <span class="cstat-no" title="statement not covered" > for (let level = 1; level &lt; firstHeaderInChunk.level; level++) {</span>
1902
+ <span class="cstat-no" title="statement not covered" > const parentHeader: string | undefined = lastHeaders.get(level);</span>
1903
+ <span class="cstat-no" title="statement not covered" ></span>
1904
+ <span class="cstat-no" title="statement not covered" > if (parentHeader) {</span>
1905
+ <span class="cstat-no" title="statement not covered" > pathParts.push(parentHeader); // Include the full header with markdown symbols</span>
1906
+ <span class="cstat-no" title="statement not covered" > }</span>
1907
+ <span class="cstat-no" title="statement not covered" > }</span>
1908
+ <span class="cstat-no" title="statement not covered" ></span>
1909
+ <span class="cstat-no" title="statement not covered" > // Add the first header in chunk</span>
1910
+ <span class="cstat-no" title="statement not covered" > pathParts.push(firstHeaderInChunk.header); // Include the full header with markdown symbols</span>
1911
+ <span class="cstat-no" title="statement not covered" ></span>
1912
+ <span class="cstat-no" title="statement not covered" > return pathParts;</span>
1913
+ <span class="cstat-no" title="statement not covered" > }</span>
1914
+ <span class="cstat-no" title="statement not covered" ></span>
1915
+ <span class="cstat-no" title="statement not covered" > /**</span>
1916
+ <span class="cstat-no" title="statement not covered" > * Add header hierarchy to the beginning of a chunk</span>
1917
+ <span class="cstat-no" title="statement not covered" > * @param chunkContent - The chunk content</span>
1918
+ <span class="cstat-no" title="statement not covered" > * @param headerHierarchy - The parsed header hierarchy</span>
1919
+ <span class="cstat-no" title="statement not covered" > * @param startIndex - Start index of the chunk in original content</span>
1920
+ <span class="cstat-no" title="statement not covered" > * @param endIndex - End index of the chunk in original content</span>
1921
+ <span class="cstat-no" title="statement not covered" > * @param lastHeaders - Map of last headers for each level</span>
1922
+ <span class="cstat-no" title="statement not covered" > * @returns Content with header hierarchy added</span>
1923
+ <span class="cstat-no" title="statement not covered" > */</span>
1924
+ <span class="cstat-no" title="statement not covered" > private static addHeaderHierarchy(</span>
1925
+ <span class="cstat-no" title="statement not covered" > chunkContent: string, </span>
1926
+ <span class="cstat-no" title="statement not covered" > headerHierarchy: DyNTS_DAI_DocChunking_Header[],</span>
1927
+ <span class="cstat-no" title="statement not covered" > startIndex: number,</span>
1928
+ <span class="cstat-no" title="statement not covered" > endIndex: number,</span>
1929
+ <span class="cstat-no" title="statement not covered" > lastHeaders: Map&lt;number, string&gt;</span>
1930
+ <span class="cstat-no" title="statement not covered" > ): string {</span>
1931
+ <span class="cstat-no" title="statement not covered" > const relevantHeaders: string[] = this.getRelevantHeaders(headerHierarchy, startIndex, endIndex, lastHeaders);</span>
1932
+ <span class="cstat-no" title="statement not covered" ></span>
1933
+ <span class="cstat-no" title="statement not covered" > if (relevantHeaders.length &gt; 0) {</span>
1934
+ <span class="cstat-no" title="statement not covered" > return relevantHeaders.join('\n') + '\n\n' + chunkContent;</span>
1935
+ <span class="cstat-no" title="statement not covered" > }</span>
1936
+ <span class="cstat-no" title="statement not covered" ></span>
1937
+ <span class="cstat-no" title="statement not covered" > return chunkContent;</span>
1938
+ <span class="cstat-no" title="statement not covered" > }</span>
1939
+ <span class="cstat-no" title="statement not covered" ></span>
1940
+ <span class="cstat-no" title="statement not covered" > /**</span>
1941
+ <span class="cstat-no" title="statement not covered" > * Helper method to find the last occurrence of a pattern within a specified range</span>
1942
+ <span class="cstat-no" title="statement not covered" > * @param text - The text to search in</span>
1943
+ <span class="cstat-no" title="statement not covered" > * @param pattern - The pattern to search for</span>
1944
+ <span class="cstat-no" title="statement not covered" > * @param maxIndex - Maximum index to search up to</span>
1945
+ <span class="cstat-no" title="statement not covered" > * @returns The index of the last occurrence, or -1 if not found</span>
1946
+ <span class="cstat-no" title="statement not covered" > */</span>
1947
+ <span class="cstat-no" title="statement not covered" > private static findLastOccurrence(text: string, pattern: string, maxIndex: number): number {</span>
1948
+ <span class="cstat-no" title="statement not covered" > const searchText: string = text.substring(0, maxIndex);</span>
1949
+ <span class="cstat-no" title="statement not covered" > const lastIndex: number = searchText.lastIndexOf(pattern);</span>
1950
+ <span class="cstat-no" title="statement not covered" ></span>
1951
+ <span class="cstat-no" title="statement not covered" > return lastIndex;</span>
1952
+ <span class="cstat-no" title="statement not covered" > }</span>
1953
+ <span class="cstat-no" title="statement not covered" > </span>
1954
+ <span class="cstat-no" title="statement not covered" > protected static getDefaultErrorSettings(</span>
1955
+ <span class="cstat-no" title="statement not covered" > fnName: string, </span>
1956
+ <span class="cstat-no" title="statement not covered" > error: DyFM_AnyError,</span>
1957
+ <span class="cstat-no" title="statement not covered" > issuer: string,</span>
1958
+ <span class="cstat-no" title="statement not covered" > /* errorCode: string, */</span>
1959
+ <span class="cstat-no" title="statement not covered" > ): DyFM_Error_Settings {</span>
1960
+ <span class="cstat-no" title="statement not covered" > return {</span>
1961
+ <span class="cstat-no" title="statement not covered" > status: (error as DyFM_Error)?.___status ?? 500,</span>
1962
+ <span class="cstat-no" title="statement not covered" > message: (error as Error)?.message ??</span>
1963
+ <span class="cstat-no" title="statement not covered" > (error as DyFM_Error)?._message ??</span>
1964
+ <span class="cstat-no" title="statement not covered" > `${fnName} was UNSUCCESSFUL (${DyNTS_global_settings.systemShortCodeName})`,</span>
1965
+ <span class="cstat-no" title="statement not covered" > addECToUserMsg: !(error as DyFM_Error)?.__userMessage,</span>
1966
+ <span class="cstat-no" title="statement not covered" > userMessage: (error as DyFM_Error)?.__userMessage ?? this.defaultErrorUserMsg,</span>
1967
+ <span class="cstat-no" title="statement not covered" > /* errorCode: errorCode, */</span>
1968
+ <span class="cstat-no" title="statement not covered" > issuer: issuer,</span>
1969
+ <span class="cstat-no" title="statement not covered" > issuerService: this.constructor?.name,</span>
1970
+ <span class="cstat-no" title="statement not covered" > error: error,</span>
1971
+ <span class="cstat-no" title="statement not covered" > };</span>
1972
+ <span class="cstat-no" title="statement not covered" > }</span>
1973
+ <span class="cstat-no" title="statement not covered" >} </span>
1974
+ &nbsp;</pre></td></tr></table></pre>
1975
+
1976
+ <div class='push'></div><!-- for sticky footer -->
1977
+ </div><!-- /wrapper -->
1978
+ <div class='footer quiet pad2 space-top1 center small'>
1979
+ Code coverage generated by
1980
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1981
+ at 2025-11-12T23:04:35.006Z
1982
+ </div>
1983
+ <script src="../../../../../prettify.js"></script>
1984
+ <script>
1985
+ window.onload = function () {
1986
+ prettyPrint();
1987
+ };
1988
+ </script>
1989
+ <script src="../../../../../sorter.js"></script>
1990
+ <script src="../../../../../block-navigation.js"></script>
1991
+ </body>
1992
+ </html>
1993
+