@loonylabs/llm-middleware 2.0.0

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 (396) hide show
  1. package/.env.example +21 -0
  2. package/LICENSE +21 -0
  3. package/README.md +629 -0
  4. package/dist/examples/character-generator/character-generator.messages.d.ts +9 -0
  5. package/dist/examples/character-generator/character-generator.messages.d.ts.map +1 -0
  6. package/dist/examples/character-generator/character-generator.messages.js +54 -0
  7. package/dist/examples/character-generator/character-generator.messages.js.map +1 -0
  8. package/dist/examples/character-generator/character-generator.usecase.d.ts +129 -0
  9. package/dist/examples/character-generator/character-generator.usecase.d.ts.map +1 -0
  10. package/dist/examples/character-generator/character-generator.usecase.js +209 -0
  11. package/dist/examples/character-generator/character-generator.usecase.js.map +1 -0
  12. package/dist/examples/character-generator/create-character.messages.d.ts +11 -0
  13. package/dist/examples/character-generator/create-character.messages.d.ts.map +1 -0
  14. package/dist/examples/character-generator/create-character.messages.js +38 -0
  15. package/dist/examples/character-generator/create-character.messages.js.map +1 -0
  16. package/dist/examples/flat-formatter-demo/product-preset.example.d.ts +99 -0
  17. package/dist/examples/flat-formatter-demo/product-preset.example.d.ts.map +1 -0
  18. package/dist/examples/flat-formatter-demo/product-preset.example.js +85 -0
  19. package/dist/examples/flat-formatter-demo/product-preset.example.js.map +1 -0
  20. package/dist/examples/simple-chat/chat.controller.d.ts +15 -0
  21. package/dist/examples/simple-chat/chat.controller.d.ts.map +1 -0
  22. package/dist/examples/simple-chat/chat.controller.js +39 -0
  23. package/dist/examples/simple-chat/chat.controller.js.map +1 -0
  24. package/dist/examples/simple-chat/chat.messages.d.ts +10 -0
  25. package/dist/examples/simple-chat/chat.messages.d.ts.map +1 -0
  26. package/dist/examples/simple-chat/chat.messages.js +17 -0
  27. package/dist/examples/simple-chat/chat.messages.js.map +1 -0
  28. package/dist/examples/simple-chat/chat.usecase.d.ts +33 -0
  29. package/dist/examples/simple-chat/chat.usecase.d.ts.map +1 -0
  30. package/dist/examples/simple-chat/chat.usecase.js +40 -0
  31. package/dist/examples/simple-chat/chat.usecase.js.map +1 -0
  32. package/dist/examples/simple-chat/index.d.ts +3 -0
  33. package/dist/examples/simple-chat/index.d.ts.map +1 -0
  34. package/dist/examples/simple-chat/index.js +57 -0
  35. package/dist/examples/simple-chat/index.js.map +1 -0
  36. package/dist/examples/story-generator/story-generator.messages.d.ts +13 -0
  37. package/dist/examples/story-generator/story-generator.messages.d.ts.map +1 -0
  38. package/dist/examples/story-generator/story-generator.messages.js +41 -0
  39. package/dist/examples/story-generator/story-generator.messages.js.map +1 -0
  40. package/dist/examples/story-generator/story-generator.usecase.d.ts +115 -0
  41. package/dist/examples/story-generator/story-generator.usecase.d.ts.map +1 -0
  42. package/dist/examples/story-generator/story-generator.usecase.js +121 -0
  43. package/dist/examples/story-generator/story-generator.usecase.js.map +1 -0
  44. package/dist/examples/tweet-generator/tweet-generator.messages.d.ts +15 -0
  45. package/dist/examples/tweet-generator/tweet-generator.messages.d.ts.map +1 -0
  46. package/dist/examples/tweet-generator/tweet-generator.messages.js +40 -0
  47. package/dist/examples/tweet-generator/tweet-generator.messages.js.map +1 -0
  48. package/dist/examples/tweet-generator/tweet-generator.usecase.d.ts +92 -0
  49. package/dist/examples/tweet-generator/tweet-generator.usecase.d.ts.map +1 -0
  50. package/dist/examples/tweet-generator/tweet-generator.usecase.js +116 -0
  51. package/dist/examples/tweet-generator/tweet-generator.usecase.js.map +1 -0
  52. package/dist/index.d.ts +2 -0
  53. package/dist/index.d.ts.map +1 -0
  54. package/dist/index.js +19 -0
  55. package/dist/index.js.map +1 -0
  56. package/dist/middleware/controllers/base/base.controller.d.ts +16 -0
  57. package/dist/middleware/controllers/base/base.controller.d.ts.map +1 -0
  58. package/dist/middleware/controllers/base/base.controller.js +38 -0
  59. package/dist/middleware/controllers/base/base.controller.js.map +1 -0
  60. package/dist/middleware/controllers/base/index.d.ts +2 -0
  61. package/dist/middleware/controllers/base/index.d.ts.map +1 -0
  62. package/dist/middleware/controllers/base/index.js +19 -0
  63. package/dist/middleware/controllers/base/index.js.map +1 -0
  64. package/dist/middleware/index.d.ts +7 -0
  65. package/dist/middleware/index.d.ts.map +1 -0
  66. package/dist/middleware/index.js +27 -0
  67. package/dist/middleware/index.js.map +1 -0
  68. package/dist/middleware/services/data-flow-logger/data-flow-logger.service.d.ts +127 -0
  69. package/dist/middleware/services/data-flow-logger/data-flow-logger.service.d.ts.map +1 -0
  70. package/dist/middleware/services/data-flow-logger/data-flow-logger.service.js +341 -0
  71. package/dist/middleware/services/data-flow-logger/data-flow-logger.service.js.map +1 -0
  72. package/dist/middleware/services/data-flow-logger/index.d.ts +2 -0
  73. package/dist/middleware/services/data-flow-logger/index.d.ts.map +1 -0
  74. package/dist/middleware/services/data-flow-logger/index.js +18 -0
  75. package/dist/middleware/services/data-flow-logger/index.js.map +1 -0
  76. package/dist/middleware/services/flat-formatter/flat-formatter.service.d.ts +86 -0
  77. package/dist/middleware/services/flat-formatter/flat-formatter.service.d.ts.map +1 -0
  78. package/dist/middleware/services/flat-formatter/flat-formatter.service.js +333 -0
  79. package/dist/middleware/services/flat-formatter/flat-formatter.service.js.map +1 -0
  80. package/dist/middleware/services/flat-formatter/index.d.ts +4 -0
  81. package/dist/middleware/services/flat-formatter/index.d.ts.map +1 -0
  82. package/dist/middleware/services/flat-formatter/index.js +28 -0
  83. package/dist/middleware/services/flat-formatter/index.js.map +1 -0
  84. package/dist/middleware/services/flat-formatter/presets/base-preset.d.ts +68 -0
  85. package/dist/middleware/services/flat-formatter/presets/base-preset.d.ts.map +1 -0
  86. package/dist/middleware/services/flat-formatter/presets/base-preset.js +238 -0
  87. package/dist/middleware/services/flat-formatter/presets/base-preset.js.map +1 -0
  88. package/dist/middleware/services/flat-formatter/presets/index.d.ts +5 -0
  89. package/dist/middleware/services/flat-formatter/presets/index.d.ts.map +1 -0
  90. package/dist/middleware/services/flat-formatter/presets/index.js +28 -0
  91. package/dist/middleware/services/flat-formatter/presets/index.js.map +1 -0
  92. package/dist/middleware/services/flat-formatter/presets/types/entity-types.d.ts +23 -0
  93. package/dist/middleware/services/flat-formatter/presets/types/entity-types.d.ts.map +1 -0
  94. package/dist/middleware/services/flat-formatter/presets/types/entity-types.js +3 -0
  95. package/dist/middleware/services/flat-formatter/presets/types/entity-types.js.map +1 -0
  96. package/dist/middleware/services/flat-formatter/presets/types/processed-entity-types.d.ts +30 -0
  97. package/dist/middleware/services/flat-formatter/presets/types/processed-entity-types.d.ts.map +1 -0
  98. package/dist/middleware/services/flat-formatter/presets/types/processed-entity-types.js +3 -0
  99. package/dist/middleware/services/flat-formatter/presets/types/processed-entity-types.js.map +1 -0
  100. package/dist/middleware/services/index.d.ts +10 -0
  101. package/dist/middleware/services/index.d.ts.map +1 -0
  102. package/dist/middleware/services/index.js +28 -0
  103. package/dist/middleware/services/index.js.map +1 -0
  104. package/dist/middleware/services/json-cleaner/helpers/index.d.ts +3 -0
  105. package/dist/middleware/services/json-cleaner/helpers/index.d.ts.map +1 -0
  106. package/dist/middleware/services/json-cleaner/helpers/index.js +19 -0
  107. package/dist/middleware/services/json-cleaner/helpers/index.js.map +1 -0
  108. package/dist/middleware/services/json-cleaner/helpers/json-cleaner.analyzer.d.ts +52 -0
  109. package/dist/middleware/services/json-cleaner/helpers/json-cleaner.analyzer.d.ts.map +1 -0
  110. package/dist/middleware/services/json-cleaner/helpers/json-cleaner.analyzer.js +271 -0
  111. package/dist/middleware/services/json-cleaner/helpers/json-cleaner.analyzer.js.map +1 -0
  112. package/dist/middleware/services/json-cleaner/helpers/json-validation.helper.d.ts +83 -0
  113. package/dist/middleware/services/json-cleaner/helpers/json-validation.helper.d.ts.map +1 -0
  114. package/dist/middleware/services/json-cleaner/helpers/json-validation.helper.js +326 -0
  115. package/dist/middleware/services/json-cleaner/helpers/json-validation.helper.js.map +1 -0
  116. package/dist/middleware/services/json-cleaner/index.d.ts +9 -0
  117. package/dist/middleware/services/json-cleaner/index.d.ts.map +1 -0
  118. package/dist/middleware/services/json-cleaner/index.js +31 -0
  119. package/dist/middleware/services/json-cleaner/index.js.map +1 -0
  120. package/dist/middleware/services/json-cleaner/json-cleaner-logger.d.ts +59 -0
  121. package/dist/middleware/services/json-cleaner/json-cleaner-logger.d.ts.map +1 -0
  122. package/dist/middleware/services/json-cleaner/json-cleaner-logger.js +164 -0
  123. package/dist/middleware/services/json-cleaner/json-cleaner-logger.js.map +1 -0
  124. package/dist/middleware/services/json-cleaner/json-cleaner.orchestrator.d.ts +56 -0
  125. package/dist/middleware/services/json-cleaner/json-cleaner.orchestrator.d.ts.map +1 -0
  126. package/dist/middleware/services/json-cleaner/json-cleaner.orchestrator.js +178 -0
  127. package/dist/middleware/services/json-cleaner/json-cleaner.orchestrator.js.map +1 -0
  128. package/dist/middleware/services/json-cleaner/json-cleaner.service.d.ts +94 -0
  129. package/dist/middleware/services/json-cleaner/json-cleaner.service.d.ts.map +1 -0
  130. package/dist/middleware/services/json-cleaner/json-cleaner.service.js +175 -0
  131. package/dist/middleware/services/json-cleaner/json-cleaner.service.js.map +1 -0
  132. package/dist/middleware/services/json-cleaner/json-cleaner.types.d.ts +92 -0
  133. package/dist/middleware/services/json-cleaner/json-cleaner.types.d.ts.map +1 -0
  134. package/dist/middleware/services/json-cleaner/json-cleaner.types.js +3 -0
  135. package/dist/middleware/services/json-cleaner/json-cleaner.types.js.map +1 -0
  136. package/dist/middleware/services/json-cleaner/parsers/index.d.ts +4 -0
  137. package/dist/middleware/services/json-cleaner/parsers/index.d.ts.map +1 -0
  138. package/dist/middleware/services/json-cleaner/parsers/index.js +20 -0
  139. package/dist/middleware/services/json-cleaner/parsers/index.js.map +1 -0
  140. package/dist/middleware/services/json-cleaner/parsers/json-extractor.parser.d.ts +32 -0
  141. package/dist/middleware/services/json-cleaner/parsers/json-extractor.parser.d.ts.map +1 -0
  142. package/dist/middleware/services/json-cleaner/parsers/json-extractor.parser.js +148 -0
  143. package/dist/middleware/services/json-cleaner/parsers/json-extractor.parser.js.map +1 -0
  144. package/dist/middleware/services/json-cleaner/parsers/markdown.parser.d.ts +19 -0
  145. package/dist/middleware/services/json-cleaner/parsers/markdown.parser.d.ts.map +1 -0
  146. package/dist/middleware/services/json-cleaner/parsers/markdown.parser.js +43 -0
  147. package/dist/middleware/services/json-cleaner/parsers/markdown.parser.js.map +1 -0
  148. package/dist/middleware/services/json-cleaner/parsers/think-tag.parser.d.ts +19 -0
  149. package/dist/middleware/services/json-cleaner/parsers/think-tag.parser.d.ts.map +1 -0
  150. package/dist/middleware/services/json-cleaner/parsers/think-tag.parser.js +37 -0
  151. package/dist/middleware/services/json-cleaner/parsers/think-tag.parser.js.map +1 -0
  152. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-context.d.ts +40 -0
  153. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-context.d.ts.map +1 -0
  154. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-context.js +138 -0
  155. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-context.js.map +1 -0
  156. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-engine.d.ts +74 -0
  157. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-engine.d.ts.map +1 -0
  158. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-engine.js +230 -0
  159. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-engine.js.map +1 -0
  160. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-recipe.d.ts +16 -0
  161. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-recipe.d.ts.map +1 -0
  162. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-recipe.js +179 -0
  163. package/dist/middleware/services/json-cleaner/recipe-system/core/cleaning-recipe.js.map +1 -0
  164. package/dist/middleware/services/json-cleaner/recipe-system/core/conditions.d.ts +88 -0
  165. package/dist/middleware/services/json-cleaner/recipe-system/core/conditions.d.ts.map +1 -0
  166. package/dist/middleware/services/json-cleaner/recipe-system/core/conditions.js +178 -0
  167. package/dist/middleware/services/json-cleaner/recipe-system/core/conditions.js.map +1 -0
  168. package/dist/middleware/services/json-cleaner/recipe-system/core/recipe-builder.d.ts +51 -0
  169. package/dist/middleware/services/json-cleaner/recipe-system/core/recipe-builder.d.ts.map +1 -0
  170. package/dist/middleware/services/json-cleaner/recipe-system/core/recipe-builder.js +219 -0
  171. package/dist/middleware/services/json-cleaner/recipe-system/core/recipe-builder.js.map +1 -0
  172. package/dist/middleware/services/json-cleaner/recipe-system/core/recipe-steps.d.ts +62 -0
  173. package/dist/middleware/services/json-cleaner/recipe-system/core/recipe-steps.d.ts.map +1 -0
  174. package/dist/middleware/services/json-cleaner/recipe-system/core/recipe-steps.js +217 -0
  175. package/dist/middleware/services/json-cleaner/recipe-system/core/recipe-steps.js.map +1 -0
  176. package/dist/middleware/services/json-cleaner/recipe-system/factory.d.ts +46 -0
  177. package/dist/middleware/services/json-cleaner/recipe-system/factory.d.ts.map +1 -0
  178. package/dist/middleware/services/json-cleaner/recipe-system/factory.js +52 -0
  179. package/dist/middleware/services/json-cleaner/recipe-system/factory.js.map +1 -0
  180. package/dist/middleware/services/json-cleaner/recipe-system/index.d.ts +12 -0
  181. package/dist/middleware/services/json-cleaner/recipe-system/index.d.ts.map +1 -0
  182. package/dist/middleware/services/json-cleaner/recipe-system/index.js +28 -0
  183. package/dist/middleware/services/json-cleaner/recipe-system/index.js.map +1 -0
  184. package/dist/middleware/services/json-cleaner/recipe-system/operations/detectors.d.ts +55 -0
  185. package/dist/middleware/services/json-cleaner/recipe-system/operations/detectors.d.ts.map +1 -0
  186. package/dist/middleware/services/json-cleaner/recipe-system/operations/detectors.js +348 -0
  187. package/dist/middleware/services/json-cleaner/recipe-system/operations/detectors.js.map +1 -0
  188. package/dist/middleware/services/json-cleaner/recipe-system/operations/fixers.d.ts +70 -0
  189. package/dist/middleware/services/json-cleaner/recipe-system/operations/fixers.d.ts.map +1 -0
  190. package/dist/middleware/services/json-cleaner/recipe-system/operations/fixers.js +568 -0
  191. package/dist/middleware/services/json-cleaner/recipe-system/operations/fixers.js.map +1 -0
  192. package/dist/middleware/services/json-cleaner/recipe-system/recipes/templates.d.ts +11 -0
  193. package/dist/middleware/services/json-cleaner/recipe-system/recipes/templates.d.ts.map +1 -0
  194. package/dist/middleware/services/json-cleaner/recipe-system/recipes/templates.js +103 -0
  195. package/dist/middleware/services/json-cleaner/recipe-system/recipes/templates.js.map +1 -0
  196. package/dist/middleware/services/json-cleaner/recipe-system/types/operation.types.d.ts +171 -0
  197. package/dist/middleware/services/json-cleaner/recipe-system/types/operation.types.d.ts.map +1 -0
  198. package/dist/middleware/services/json-cleaner/recipe-system/types/operation.types.js +3 -0
  199. package/dist/middleware/services/json-cleaner/recipe-system/types/operation.types.js.map +1 -0
  200. package/dist/middleware/services/json-cleaner/recipe-system/types/recipe.types.d.ts +224 -0
  201. package/dist/middleware/services/json-cleaner/recipe-system/types/recipe.types.d.ts.map +1 -0
  202. package/dist/middleware/services/json-cleaner/recipe-system/types/recipe.types.js +3 -0
  203. package/dist/middleware/services/json-cleaner/recipe-system/types/recipe.types.js.map +1 -0
  204. package/dist/middleware/services/json-cleaner/strategies/aggressive.cleaner.d.ts +29 -0
  205. package/dist/middleware/services/json-cleaner/strategies/aggressive.cleaner.d.ts.map +1 -0
  206. package/dist/middleware/services/json-cleaner/strategies/aggressive.cleaner.js +128 -0
  207. package/dist/middleware/services/json-cleaner/strategies/aggressive.cleaner.js.map +1 -0
  208. package/dist/middleware/services/json-cleaner/strategies/base-cleaner.strategy.d.ts +38 -0
  209. package/dist/middleware/services/json-cleaner/strategies/base-cleaner.strategy.d.ts.map +1 -0
  210. package/dist/middleware/services/json-cleaner/strategies/base-cleaner.strategy.js +18 -0
  211. package/dist/middleware/services/json-cleaner/strategies/base-cleaner.strategy.js.map +1 -0
  212. package/dist/middleware/services/json-cleaner/strategies/comma-fixer.cleaner.d.ts +65 -0
  213. package/dist/middleware/services/json-cleaner/strategies/comma-fixer.cleaner.d.ts.map +1 -0
  214. package/dist/middleware/services/json-cleaner/strategies/comma-fixer.cleaner.js +420 -0
  215. package/dist/middleware/services/json-cleaner/strategies/comma-fixer.cleaner.js.map +1 -0
  216. package/dist/middleware/services/json-cleaner/strategies/control-character.cleaner.d.ts +50 -0
  217. package/dist/middleware/services/json-cleaner/strategies/control-character.cleaner.d.ts.map +1 -0
  218. package/dist/middleware/services/json-cleaner/strategies/control-character.cleaner.js +416 -0
  219. package/dist/middleware/services/json-cleaner/strategies/control-character.cleaner.js.map +1 -0
  220. package/dist/middleware/services/json-cleaner/strategies/duplicate-key.cleaner.d.ts +27 -0
  221. package/dist/middleware/services/json-cleaner/strategies/duplicate-key.cleaner.d.ts.map +1 -0
  222. package/dist/middleware/services/json-cleaner/strategies/duplicate-key.cleaner.js +84 -0
  223. package/dist/middleware/services/json-cleaner/strategies/duplicate-key.cleaner.js.map +1 -0
  224. package/dist/middleware/services/json-cleaner/strategies/index.d.ts +8 -0
  225. package/dist/middleware/services/json-cleaner/strategies/index.d.ts.map +1 -0
  226. package/dist/middleware/services/json-cleaner/strategies/index.js +24 -0
  227. package/dist/middleware/services/json-cleaner/strategies/index.js.map +1 -0
  228. package/dist/middleware/services/json-cleaner/strategies/string-escaper.cleaner.d.ts +23 -0
  229. package/dist/middleware/services/json-cleaner/strategies/string-escaper.cleaner.d.ts.map +1 -0
  230. package/dist/middleware/services/json-cleaner/strategies/string-escaper.cleaner.js +65 -0
  231. package/dist/middleware/services/json-cleaner/strategies/string-escaper.cleaner.js.map +1 -0
  232. package/dist/middleware/services/json-cleaner/strategies/structural-repair.cleaner.d.ts +48 -0
  233. package/dist/middleware/services/json-cleaner/strategies/structural-repair.cleaner.d.ts.map +1 -0
  234. package/dist/middleware/services/json-cleaner/strategies/structural-repair.cleaner.js +188 -0
  235. package/dist/middleware/services/json-cleaner/strategies/structural-repair.cleaner.js.map +1 -0
  236. package/dist/middleware/services/json-cleaner/utils/console-logger.util.d.ts +50 -0
  237. package/dist/middleware/services/json-cleaner/utils/console-logger.util.d.ts.map +1 -0
  238. package/dist/middleware/services/json-cleaner/utils/console-logger.util.js +95 -0
  239. package/dist/middleware/services/json-cleaner/utils/console-logger.util.js.map +1 -0
  240. package/dist/middleware/services/json-cleaner/utils/control-char-diagnostics.util.d.ts +59 -0
  241. package/dist/middleware/services/json-cleaner/utils/control-char-diagnostics.util.d.ts.map +1 -0
  242. package/dist/middleware/services/json-cleaner/utils/control-char-diagnostics.util.js +326 -0
  243. package/dist/middleware/services/json-cleaner/utils/control-char-diagnostics.util.js.map +1 -0
  244. package/dist/middleware/services/json-cleaner/utils/index.d.ts +3 -0
  245. package/dist/middleware/services/json-cleaner/utils/index.d.ts.map +1 -0
  246. package/dist/middleware/services/json-cleaner/utils/index.js +19 -0
  247. package/dist/middleware/services/json-cleaner/utils/index.js.map +1 -0
  248. package/dist/middleware/services/json-cleaner/utils/json-inspector.util.d.ts +27 -0
  249. package/dist/middleware/services/json-cleaner/utils/json-inspector.util.d.ts.map +1 -0
  250. package/dist/middleware/services/json-cleaner/utils/json-inspector.util.js +139 -0
  251. package/dist/middleware/services/json-cleaner/utils/json-inspector.util.js.map +1 -0
  252. package/dist/middleware/services/llm/index.d.ts +5 -0
  253. package/dist/middleware/services/llm/index.d.ts.map +1 -0
  254. package/dist/middleware/services/llm/index.js +25 -0
  255. package/dist/middleware/services/llm/index.js.map +1 -0
  256. package/dist/middleware/services/llm/llm.service.d.ts +43 -0
  257. package/dist/middleware/services/llm/llm.service.d.ts.map +1 -0
  258. package/dist/middleware/services/llm/llm.service.js +70 -0
  259. package/dist/middleware/services/llm/llm.service.js.map +1 -0
  260. package/dist/middleware/services/llm/providers/base-llm-provider.d.ts +37 -0
  261. package/dist/middleware/services/llm/providers/base-llm-provider.d.ts.map +1 -0
  262. package/dist/middleware/services/llm/providers/base-llm-provider.js +41 -0
  263. package/dist/middleware/services/llm/providers/base-llm-provider.js.map +1 -0
  264. package/dist/middleware/services/llm/providers/index.d.ts +3 -0
  265. package/dist/middleware/services/llm/providers/index.d.ts.map +1 -0
  266. package/dist/middleware/services/llm/providers/index.js +25 -0
  267. package/dist/middleware/services/llm/providers/index.js.map +1 -0
  268. package/dist/middleware/services/llm/providers/ollama-provider.d.ts +39 -0
  269. package/dist/middleware/services/llm/providers/ollama-provider.d.ts.map +1 -0
  270. package/dist/middleware/services/llm/providers/ollama-provider.js +398 -0
  271. package/dist/middleware/services/llm/providers/ollama-provider.js.map +1 -0
  272. package/dist/middleware/services/llm/types/common.types.d.ts +81 -0
  273. package/dist/middleware/services/llm/types/common.types.d.ts.map +1 -0
  274. package/dist/middleware/services/llm/types/common.types.js +17 -0
  275. package/dist/middleware/services/llm/types/common.types.js.map +1 -0
  276. package/dist/middleware/services/llm/types/index.d.ts +3 -0
  277. package/dist/middleware/services/llm/types/index.d.ts.map +1 -0
  278. package/dist/middleware/services/llm/types/index.js +21 -0
  279. package/dist/middleware/services/llm/types/index.js.map +1 -0
  280. package/dist/middleware/services/llm/types/ollama.types.d.ts +48 -0
  281. package/dist/middleware/services/llm/types/ollama.types.d.ts.map +1 -0
  282. package/dist/middleware/services/llm/types/ollama.types.js +8 -0
  283. package/dist/middleware/services/llm/types/ollama.types.js.map +1 -0
  284. package/dist/middleware/services/llm/utils/debug-llm.utils.d.ts +42 -0
  285. package/dist/middleware/services/llm/utils/debug-llm.utils.d.ts.map +1 -0
  286. package/dist/middleware/services/llm/utils/debug-llm.utils.js +325 -0
  287. package/dist/middleware/services/llm/utils/debug-llm.utils.js.map +1 -0
  288. package/dist/middleware/services/llm/utils/index.d.ts +3 -0
  289. package/dist/middleware/services/llm/utils/index.d.ts.map +1 -0
  290. package/dist/middleware/services/llm/utils/index.js +19 -0
  291. package/dist/middleware/services/llm/utils/index.js.map +1 -0
  292. package/dist/middleware/services/llm/utils/text-analysis.utils.d.ts +75 -0
  293. package/dist/middleware/services/llm/utils/text-analysis.utils.d.ts.map +1 -0
  294. package/dist/middleware/services/llm/utils/text-analysis.utils.js +197 -0
  295. package/dist/middleware/services/llm/utils/text-analysis.utils.js.map +1 -0
  296. package/dist/middleware/services/model-parameter-manager/index.d.ts +2 -0
  297. package/dist/middleware/services/model-parameter-manager/index.d.ts.map +1 -0
  298. package/dist/middleware/services/model-parameter-manager/index.js +18 -0
  299. package/dist/middleware/services/model-parameter-manager/index.js.map +1 -0
  300. package/dist/middleware/services/model-parameter-manager/model-parameter-manager.service.d.ts +165 -0
  301. package/dist/middleware/services/model-parameter-manager/model-parameter-manager.service.d.ts.map +1 -0
  302. package/dist/middleware/services/model-parameter-manager/model-parameter-manager.service.js +325 -0
  303. package/dist/middleware/services/model-parameter-manager/model-parameter-manager.service.js.map +1 -0
  304. package/dist/middleware/services/request-formatter/index.d.ts +2 -0
  305. package/dist/middleware/services/request-formatter/index.d.ts.map +1 -0
  306. package/dist/middleware/services/request-formatter/index.js +18 -0
  307. package/dist/middleware/services/request-formatter/index.js.map +1 -0
  308. package/dist/middleware/services/request-formatter/request-formatter.service.d.ts +71 -0
  309. package/dist/middleware/services/request-formatter/request-formatter.service.d.ts.map +1 -0
  310. package/dist/middleware/services/request-formatter/request-formatter.service.js +230 -0
  311. package/dist/middleware/services/request-formatter/request-formatter.service.js.map +1 -0
  312. package/dist/middleware/services/response-processor.service.d.ts +106 -0
  313. package/dist/middleware/services/response-processor.service.d.ts.map +1 -0
  314. package/dist/middleware/services/response-processor.service.js +236 -0
  315. package/dist/middleware/services/response-processor.service.js.map +1 -0
  316. package/dist/middleware/services/token-estimator/index.d.ts +2 -0
  317. package/dist/middleware/services/token-estimator/index.d.ts.map +1 -0
  318. package/dist/middleware/services/token-estimator/index.js +18 -0
  319. package/dist/middleware/services/token-estimator/index.js.map +1 -0
  320. package/dist/middleware/services/token-estimator/token-estimator.service.d.ts +97 -0
  321. package/dist/middleware/services/token-estimator/token-estimator.service.d.ts.map +1 -0
  322. package/dist/middleware/services/token-estimator/token-estimator.service.js +190 -0
  323. package/dist/middleware/services/token-estimator/token-estimator.service.js.map +1 -0
  324. package/dist/middleware/services/use-case-metrics-logger/index.d.ts +2 -0
  325. package/dist/middleware/services/use-case-metrics-logger/index.d.ts.map +1 -0
  326. package/dist/middleware/services/use-case-metrics-logger/index.js +18 -0
  327. package/dist/middleware/services/use-case-metrics-logger/index.js.map +1 -0
  328. package/dist/middleware/services/use-case-metrics-logger/use-case-metrics-logger.service.d.ts +89 -0
  329. package/dist/middleware/services/use-case-metrics-logger/use-case-metrics-logger.service.d.ts.map +1 -0
  330. package/dist/middleware/services/use-case-metrics-logger/use-case-metrics-logger.service.js +112 -0
  331. package/dist/middleware/services/use-case-metrics-logger/use-case-metrics-logger.service.js.map +1 -0
  332. package/dist/middleware/shared/config/app.config.d.ts +3 -0
  333. package/dist/middleware/shared/config/app.config.d.ts.map +1 -0
  334. package/dist/middleware/shared/config/app.config.js +76 -0
  335. package/dist/middleware/shared/config/app.config.js.map +1 -0
  336. package/dist/middleware/shared/config/index.d.ts +4 -0
  337. package/dist/middleware/shared/config/index.d.ts.map +1 -0
  338. package/dist/middleware/shared/config/index.js +21 -0
  339. package/dist/middleware/shared/config/index.js.map +1 -0
  340. package/dist/middleware/shared/config/logging.config.d.ts +49 -0
  341. package/dist/middleware/shared/config/logging.config.d.ts.map +1 -0
  342. package/dist/middleware/shared/config/logging.config.js +16 -0
  343. package/dist/middleware/shared/config/logging.config.js.map +1 -0
  344. package/dist/middleware/shared/config/models.config.d.ts +19 -0
  345. package/dist/middleware/shared/config/models.config.d.ts.map +1 -0
  346. package/dist/middleware/shared/config/models.config.js +39 -0
  347. package/dist/middleware/shared/config/models.config.js.map +1 -0
  348. package/dist/middleware/shared/constants/index.d.ts +2 -0
  349. package/dist/middleware/shared/constants/index.d.ts.map +1 -0
  350. package/dist/middleware/shared/constants/index.js +19 -0
  351. package/dist/middleware/shared/constants/index.js.map +1 -0
  352. package/dist/middleware/shared/constants/json-formatting.constants.d.ts +36 -0
  353. package/dist/middleware/shared/constants/json-formatting.constants.d.ts.map +1 -0
  354. package/dist/middleware/shared/constants/json-formatting.constants.js +81 -0
  355. package/dist/middleware/shared/constants/json-formatting.constants.js.map +1 -0
  356. package/dist/middleware/shared/types/base-request.types.d.ts +27 -0
  357. package/dist/middleware/shared/types/base-request.types.d.ts.map +1 -0
  358. package/dist/middleware/shared/types/base-request.types.js +3 -0
  359. package/dist/middleware/shared/types/base-request.types.js.map +1 -0
  360. package/dist/middleware/shared/types/client-info.d.ts +8 -0
  361. package/dist/middleware/shared/types/client-info.d.ts.map +1 -0
  362. package/dist/middleware/shared/types/client-info.js +3 -0
  363. package/dist/middleware/shared/types/client-info.js.map +1 -0
  364. package/dist/middleware/shared/types/index.d.ts +43 -0
  365. package/dist/middleware/shared/types/index.d.ts.map +1 -0
  366. package/dist/middleware/shared/types/index.js +20 -0
  367. package/dist/middleware/shared/types/index.js.map +1 -0
  368. package/dist/middleware/shared/utils/http.utils.d.ts +25 -0
  369. package/dist/middleware/shared/utils/http.utils.d.ts.map +1 -0
  370. package/dist/middleware/shared/utils/http.utils.js +44 -0
  371. package/dist/middleware/shared/utils/http.utils.js.map +1 -0
  372. package/dist/middleware/shared/utils/index.d.ts +5 -0
  373. package/dist/middleware/shared/utils/index.d.ts.map +1 -0
  374. package/dist/middleware/shared/utils/index.js +22 -0
  375. package/dist/middleware/shared/utils/index.js.map +1 -0
  376. package/dist/middleware/shared/utils/logging.utils.d.ts +30 -0
  377. package/dist/middleware/shared/utils/logging.utils.d.ts.map +1 -0
  378. package/dist/middleware/shared/utils/logging.utils.js +91 -0
  379. package/dist/middleware/shared/utils/logging.utils.js.map +1 -0
  380. package/dist/middleware/shared/utils/memory-management.utils.d.ts +10 -0
  381. package/dist/middleware/shared/utils/memory-management.utils.d.ts.map +1 -0
  382. package/dist/middleware/shared/utils/memory-management.utils.js +31 -0
  383. package/dist/middleware/shared/utils/memory-management.utils.js.map +1 -0
  384. package/dist/middleware/shared/utils/validation.utils.d.ts +12 -0
  385. package/dist/middleware/shared/utils/validation.utils.d.ts.map +1 -0
  386. package/dist/middleware/shared/utils/validation.utils.js +36 -0
  387. package/dist/middleware/shared/utils/validation.utils.js.map +1 -0
  388. package/dist/middleware/usecases/base/base-ai.usecase.d.ts +72 -0
  389. package/dist/middleware/usecases/base/base-ai.usecase.d.ts.map +1 -0
  390. package/dist/middleware/usecases/base/base-ai.usecase.js +125 -0
  391. package/dist/middleware/usecases/base/base-ai.usecase.js.map +1 -0
  392. package/dist/middleware/usecases/base/index.d.ts +2 -0
  393. package/dist/middleware/usecases/base/index.d.ts.map +1 -0
  394. package/dist/middleware/usecases/base/index.js +18 -0
  395. package/dist/middleware/usecases/base/index.js.map +1 -0
  396. package/package.json +97 -0
@@ -0,0 +1,341 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.DataFlowLoggerService = void 0;
37
+ const fs = __importStar(require("fs"));
38
+ const path = __importStar(require("path"));
39
+ // Generic helper for context type detection
40
+ class ContextTypeHelper {
41
+ static detectContextType(context) {
42
+ if (!context)
43
+ return 'unknown';
44
+ // Check for explicit type markers
45
+ if (context.contextType)
46
+ return context.contextType;
47
+ if (context.type)
48
+ return context.type;
49
+ if (context.debugContext)
50
+ return context.debugContext;
51
+ // Detect based on available fields (generic detection)
52
+ if (context.sessionId)
53
+ return 'session';
54
+ if (context.userId)
55
+ return 'user';
56
+ if (context.requestId)
57
+ return 'request';
58
+ if (context.id)
59
+ return 'structured';
60
+ return 'generic';
61
+ }
62
+ }
63
+ /**
64
+ * Enhanced service for logging data flow in AI processing pipelines
65
+ * Features:
66
+ * - Ring buffer (max 1000 entries per file)
67
+ * - Full prompt/response storage
68
+ * - Request flow tracking
69
+ * - Stage flow summaries
70
+ * - Pluggable context identifier generation (generic by default)
71
+ */
72
+ class DataFlowLoggerService {
73
+ constructor() {
74
+ this.logDir = path.join(process.cwd(), 'logs', 'llm', 'requests-data-flow');
75
+ this.currentRequestId = null;
76
+ this.MAX_ENTRIES_PER_FILE = 1000;
77
+ this.ensureLogDirectoryExists();
78
+ }
79
+ static getInstance() {
80
+ if (!DataFlowLoggerService.instance) {
81
+ DataFlowLoggerService.instance = new DataFlowLoggerService();
82
+ }
83
+ return DataFlowLoggerService.instance;
84
+ }
85
+ /**
86
+ * Configure a custom context identifier generator
87
+ * @param generator Function that extracts a context identifier from the context object
88
+ * @example
89
+ * // For book-based applications:
90
+ * logger.setContextIdentifierGenerator(ctx => `C${ctx.chapter}P${ctx.page}`);
91
+ * // For session-based applications:
92
+ * logger.setContextIdentifierGenerator(ctx => ctx.sessionId || 'general');
93
+ */
94
+ setContextIdentifierGenerator(generator) {
95
+ this.contextIdentifierGenerator = generator;
96
+ }
97
+ ensureLogDirectoryExists() {
98
+ if (!fs.existsSync(this.logDir)) {
99
+ fs.mkdirSync(this.logDir, { recursive: true });
100
+ }
101
+ }
102
+ /**
103
+ * Generate a unique request ID
104
+ */
105
+ generateRequestId() {
106
+ return `req_${Date.now()}_${Math.random().toString(36).substring(2, 9)}`;
107
+ }
108
+ /**
109
+ * Get context identifier for logging
110
+ * Uses custom generator if configured, otherwise falls back to generic identifiers
111
+ */
112
+ getContextIdentifier(context) {
113
+ // Use custom generator if configured
114
+ if (this.contextIdentifierGenerator) {
115
+ try {
116
+ return this.contextIdentifierGenerator(context);
117
+ }
118
+ catch (error) {
119
+ console.error('Custom context identifier generator failed, using fallback:', error);
120
+ }
121
+ }
122
+ // Generic fallback: try common identifier fields
123
+ if (context?.id)
124
+ return `id-${context.id}`;
125
+ if (context?.sessionId)
126
+ return `session-${context.sessionId}`;
127
+ if (context?.requestId)
128
+ return `req-${context.requestId}`;
129
+ if (context?.userId)
130
+ return `user-${context.userId}`;
131
+ if (context?.contextId)
132
+ return `ctx-${context.contextId}`;
133
+ return 'general';
134
+ }
135
+ /**
136
+ * Start a new request and return request ID
137
+ */
138
+ startRequest(stage, context = {}) {
139
+ this.currentRequestId = this.generateRequestId();
140
+ return this.currentRequestId;
141
+ }
142
+ /**
143
+ * Log LLM request with full prompt/system message storage
144
+ */
145
+ logLLMRequest(request, context = {}, requestId) {
146
+ const id = requestId || this.currentRequestId || 'unknown';
147
+ this.logEntry({
148
+ requestId: id,
149
+ stage: request.stage,
150
+ operation: 'request',
151
+ contextId: this.getContextIdentifier(context),
152
+ contextType: ContextTypeHelper.detectContextType(context),
153
+ data: {
154
+ promptLength: request.prompt.length,
155
+ systemMessageLength: request.systemMessage.length,
156
+ promptPreview: request.prompt.substring(0, 500) + '...',
157
+ systemMessagePreview: request.systemMessage.substring(0, 300) + '...',
158
+ fullPrompt: request.prompt,
159
+ fullSystemMessage: request.systemMessage,
160
+ modelName: request.modelName,
161
+ temperature: request.temperature,
162
+ contextInfo: request.contextInfo
163
+ }
164
+ });
165
+ }
166
+ /**
167
+ * Log LLM response with full response storage
168
+ */
169
+ logLLMResponse(stage, response, context = {}, requestId) {
170
+ const id = requestId || this.currentRequestId || 'unknown';
171
+ this.logEntry({
172
+ requestId: id,
173
+ stage,
174
+ operation: response.error ? 'error' : 'response',
175
+ contextId: this.getContextIdentifier(context),
176
+ contextType: ContextTypeHelper.detectContextType(context),
177
+ data: {
178
+ responseLength: response.rawResponse?.length || 0,
179
+ cleanedResponseLength: response.cleanedResponse?.length || 0,
180
+ processingTime: response.processingTime,
181
+ tokensUsed: response.tokensUsed,
182
+ responsePreview: response.rawResponse?.substring(0, 500) + '...',
183
+ fullResponse: response.rawResponse,
184
+ cleanedResponse: response.cleanedResponse,
185
+ error: response.error ? {
186
+ message: response.error.message,
187
+ stack: response.error.stack,
188
+ type: response.error.constructor?.name
189
+ } : undefined
190
+ }
191
+ });
192
+ }
193
+ /**
194
+ * Log context preparation
195
+ */
196
+ logContextPreparation(stage, context, contextPreparationDetails) {
197
+ const id = this.currentRequestId || 'unknown';
198
+ this.logEntry({
199
+ requestId: id,
200
+ stage,
201
+ operation: 'context-prep',
202
+ contextId: this.getContextIdentifier(context),
203
+ contextType: ContextTypeHelper.detectContextType(context),
204
+ data: {
205
+ contextSources: contextPreparationDetails.sources || [],
206
+ contextSize: JSON.stringify(contextPreparationDetails).length,
207
+ enrichmentSteps: contextPreparationDetails.enrichmentSteps || [],
208
+ contextFeatures: this.extractContextFeatures(context)
209
+ }
210
+ });
211
+ }
212
+ /**
213
+ * Log JSON cleaning operation
214
+ */
215
+ logJsonCleaning(stage, context, cleaningDetails) {
216
+ const id = this.currentRequestId || 'unknown';
217
+ this.logEntry({
218
+ requestId: id,
219
+ stage,
220
+ operation: 'json-cleaning',
221
+ contextId: this.getContextIdentifier(context),
222
+ contextType: ContextTypeHelper.detectContextType(context),
223
+ data: {
224
+ inputLength: cleaningDetails.input.length,
225
+ outputLength: cleaningDetails.output?.length || 0,
226
+ method: cleaningDetails.method,
227
+ success: cleaningDetails.success,
228
+ iterations: cleaningDetails.iterations,
229
+ inputPreview: cleaningDetails.input.substring(0, 200) + '...',
230
+ outputPreview: cleaningDetails.output?.substring(0, 200) + '...',
231
+ error: cleaningDetails.error ? {
232
+ message: cleaningDetails.error.message,
233
+ type: cleaningDetails.error.constructor?.name
234
+ } : undefined
235
+ }
236
+ });
237
+ }
238
+ /**
239
+ * Log complete flow for a stage
240
+ */
241
+ logStageFlow(stage, context, flowSummary) {
242
+ const id = this.currentRequestId || 'unknown';
243
+ this.logEntry({
244
+ requestId: id,
245
+ stage,
246
+ operation: 'context-prep',
247
+ contextId: this.getContextIdentifier(context),
248
+ contextType: ContextTypeHelper.detectContextType(context),
249
+ data: {
250
+ flowType: 'stage-summary',
251
+ ...flowSummary
252
+ }
253
+ });
254
+ }
255
+ /**
256
+ * Extract context features for detailed logging
257
+ */
258
+ extractContextFeatures(context) {
259
+ if (!context)
260
+ return {};
261
+ return {
262
+ hasDebugContext: !!context.debugContext,
263
+ hasContextInfo: !!context.contextInfo,
264
+ contextKeys: context ? Object.keys(context).filter(k => !k.startsWith('_')).slice(0, 10) : []
265
+ };
266
+ }
267
+ /**
268
+ * Get log file path for a context
269
+ */
270
+ getLogFilePath(context) {
271
+ const identifier = this.getContextIdentifier(context);
272
+ const date = new Date();
273
+ const dateStr = date.toISOString().split('T')[0];
274
+ const fileName = `${identifier}_${dateStr}_flow.json`;
275
+ return path.join(this.logDir, fileName);
276
+ }
277
+ /**
278
+ * Log entry with ring buffer (max 1000 entries per file)
279
+ */
280
+ logEntry(entry) {
281
+ const fullEntry = {
282
+ ...entry,
283
+ timestamp: new Date().toISOString()
284
+ };
285
+ const logFilePath = this.getLogFilePath({});
286
+ try {
287
+ let existingEntries = [];
288
+ if (fs.existsSync(logFilePath)) {
289
+ const existingContent = fs.readFileSync(logFilePath, 'utf8');
290
+ try {
291
+ const parsed = JSON.parse(existingContent);
292
+ existingEntries = Array.isArray(parsed) ? parsed : [parsed];
293
+ }
294
+ catch (e) {
295
+ console.error(`Failed to parse existing log file ${logFilePath}:`, e);
296
+ existingEntries = [];
297
+ }
298
+ }
299
+ existingEntries.push(fullEntry);
300
+ // Ring buffer: Keep only last 1000 entries per file
301
+ if (existingEntries.length > this.MAX_ENTRIES_PER_FILE) {
302
+ existingEntries = existingEntries.slice(-this.MAX_ENTRIES_PER_FILE);
303
+ }
304
+ fs.writeFileSync(logFilePath, JSON.stringify(existingEntries, null, 2), 'utf-8');
305
+ }
306
+ catch (error) {
307
+ console.error('Failed to write data flow log:', error);
308
+ }
309
+ }
310
+ /**
311
+ * Get flow entries for a specific request
312
+ */
313
+ getRequestFlow(context, requestId) {
314
+ const filePath = this.getLogFilePath(context);
315
+ try {
316
+ if (fs.existsSync(filePath)) {
317
+ const content = fs.readFileSync(filePath, 'utf-8');
318
+ const entries = JSON.parse(content);
319
+ return entries.filter(e => e.requestId === requestId);
320
+ }
321
+ }
322
+ catch (error) {
323
+ console.error(`Failed to read flow log ${filePath}:`, error);
324
+ }
325
+ return [];
326
+ }
327
+ /**
328
+ * Get current request ID
329
+ */
330
+ getCurrentRequestId() {
331
+ return this.currentRequestId;
332
+ }
333
+ /**
334
+ * Clear current request ID
335
+ */
336
+ clearCurrentRequestId() {
337
+ this.currentRequestId = null;
338
+ }
339
+ }
340
+ exports.DataFlowLoggerService = DataFlowLoggerService;
341
+ //# sourceMappingURL=data-flow-logger.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-flow-logger.service.js","sourceRoot":"","sources":["../../../../src/middleware/services/data-flow-logger/data-flow-logger.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './data-flow-logger.service';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/middleware/services/data-flow-logger/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./data-flow-logger.service"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/middleware/services/data-flow-logger/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C"}
@@ -0,0 +1,86 @@
1
+ export interface ComputedFieldOptions {
2
+ [key: string]: (item: any, index: number, allItems: any[]) => any;
3
+ }
4
+ /**
5
+ * FlatFormatter - Advanced utility class with computed fields support and array slicing
6
+ * Converts complex JSON objects into flat, readable text formats optimized for LLM consumption
7
+ */
8
+ export declare class FlatFormatter {
9
+ /**
10
+ * Converts a JSON object to a flat format with optional computed fields
11
+ */
12
+ static flatten(data: any, options: {
13
+ format: 'sections' | 'numbered' | 'table' | 'separator';
14
+ itemPrefix?: string;
15
+ itemSuffix?: string;
16
+ indentLevel?: number;
17
+ includeArrayIndices?: boolean;
18
+ separator?: string;
19
+ keyValueSeparator?: string;
20
+ ignoreEmptyValues?: boolean;
21
+ ignoredKeys?: string[];
22
+ customFormatters?: Record<string, (value: any) => string>;
23
+ entryTitleKey?: string;
24
+ entryTitleAsPrefix?: boolean;
25
+ entryTitleDefault?: string;
26
+ computedFields?: ComputedFieldOptions;
27
+ computedFieldsFirst?: boolean;
28
+ indexOffset?: number;
29
+ arraySliceStart?: number;
30
+ arraySliceEnd?: number;
31
+ }): string;
32
+ /**
33
+ * Converts a JSON object to sections format with markdown headers
34
+ */
35
+ static toSections(data: any, options?: any): string;
36
+ /**
37
+ * Converts a JSON object to numbered list format
38
+ */
39
+ static toNumberedList(data: any, options?: any): string;
40
+ /**
41
+ * Converts a JSON object to table-like format
42
+ */
43
+ static toTable(data: any, options?: any): string;
44
+ /**
45
+ * Converts a JSON object to separator format
46
+ */
47
+ static toSeparated(data: any, options?: any): string;
48
+ /**
49
+ * Convenience method for commonly used computed fields
50
+ */
51
+ static withCommonComputedFields(data: any, options: any, includeIndex?: boolean, includePosition?: boolean, indexOffset?: number): string;
52
+ /**
53
+ * Convenience method for array slicing
54
+ */
55
+ static sliceArray(data: any, start?: number, end?: number, options?: any): string;
56
+ }
57
+ /**
58
+ * FormatConfigurator - Enables creating custom formatting configurations
59
+ */
60
+ export declare class FormatConfigurator {
61
+ private formatOptions;
62
+ constructor(baseOptions?: any);
63
+ withFormat(format: 'sections' | 'numbered' | 'table' | 'separator'): this;
64
+ withItemPrefix(prefix: string): this;
65
+ withItemSuffix(suffix: string): this;
66
+ withIndentLevel(level: number): this;
67
+ withSeparator(separator: string): this;
68
+ withKeyValueSeparator(separator: string): this;
69
+ ignoreEmptyValues(ignore: boolean): this;
70
+ ignoreKeys(...keys: string[]): this;
71
+ withCustomFormatter(key: string, formatter: (value: any) => string): this;
72
+ withEntryTitleKey(key: string): this;
73
+ withEntryTitleAsPrefix(asPrefix?: boolean): this;
74
+ withEntryTitleDefault(defaultTitle: string): this;
75
+ withComputedField(key: string, computeFn: (item: any, index: number, allItems: any[]) => any): this;
76
+ withIndexField(key?: string, offset?: number): this;
77
+ withPositionField(key?: string, offset?: number): this;
78
+ computedFieldsFirst(first?: boolean): this;
79
+ withIndexOffset(offset: number): this;
80
+ withArraySlice(start?: number, end?: number): this;
81
+ withArraySliceStart(start: number): this;
82
+ withArraySliceEnd(end: number): this;
83
+ build(): any;
84
+ format(data: any): string;
85
+ }
86
+ //# sourceMappingURL=flat-formatter.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flat-formatter.service.d.ts","sourceRoot":"","sources":["../../../../src/middleware/services/flat-formatter/flat-formatter.service.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,oBAAoB;IACnC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;CACnE;AAED;;;GAGG;AACH,qBAAa,aAAa;IAExB;;OAEG;IACH,MAAM,CAAC,OAAO,CACZ,IAAI,EAAE,GAAG,EACT,OAAO,EAAE;QACP,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW,CAAC;QACxD,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC;QAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAE3B,cAAc,CAAC,EAAE,oBAAoB,CAAC;QACtC,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GACA,MAAM;IAiLT;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,GAAE,GAAQ,GAAG,MAAM;IAIvD;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,GAAE,GAAQ,GAAG,MAAM;IAI3D;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,GAAE,GAAQ,GAAG,MAAM;IAIpD;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,GAAE,GAAQ,GAAG,MAAM;IAIxD;;OAEG;IACH,MAAM,CAAC,wBAAwB,CAC7B,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,GAAG,EACZ,YAAY,GAAE,OAAc,EAC5B,eAAe,GAAE,OAAc,EAC/B,WAAW,GAAE,MAAU,GACtB,MAAM;IAmBT;;OAEG;IACH,MAAM,CAAC,UAAU,CACf,IAAI,EAAE,GAAG,EACT,KAAK,CAAC,EAAE,MAAM,EACd,GAAG,CAAC,EAAE,MAAM,EACZ,OAAO,GAAE,GAAQ,GAChB,MAAM;CAOV;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,aAAa,CAAM;gBAEf,WAAW,GAAE,GAAQ;IAyBjC,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW;IAKlE,cAAc,CAAC,MAAM,EAAE,MAAM;IAK7B,cAAc,CAAC,MAAM,EAAE,MAAM;IAK7B,eAAe,CAAC,KAAK,EAAE,MAAM;IAK7B,aAAa,CAAC,SAAS,EAAE,MAAM;IAK/B,qBAAqB,CAAC,SAAS,EAAE,MAAM;IAKvC,iBAAiB,CAAC,MAAM,EAAE,OAAO;IAKjC,UAAU,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE;IAK5B,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,MAAM;IAMlE,iBAAiB,CAAC,GAAG,EAAE,MAAM;IAK7B,sBAAsB,CAAC,QAAQ,GAAE,OAAc;IAK/C,qBAAqB,CAAC,YAAY,EAAE,MAAM;IAM1C,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,GAAG;IAK5F,cAAc,CAAC,GAAG,GAAE,MAAa,EAAE,MAAM,GAAE,MAAU;IAKrD,iBAAiB,CAAC,GAAG,GAAE,MAAmB,EAAE,MAAM,GAAE,MAAU;IAM9D,mBAAmB,CAAC,KAAK,GAAE,OAAc;IAMzC,eAAe,CAAC,MAAM,EAAE,MAAM;IAM9B,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;IAM3C,mBAAmB,CAAC,KAAK,EAAE,MAAM;IAKjC,iBAAiB,CAAC,GAAG,EAAE,MAAM;IAM7B,KAAK;IAKL,MAAM,CAAC,IAAI,EAAE,GAAG;CAGjB"}