@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,217 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RollbackStep = exports.CheckpointStep = exports.ValidationStep = exports.SequenceStep = exports.ParallelStep = exports.ConditionalStep = exports.AlwaysStep = void 0;
4
+ class AlwaysStep {
5
+ constructor(operation, id = `always_${operation.id}`) {
6
+ this.operation = operation;
7
+ this.id = id;
8
+ this.type = 'always';
9
+ this.optional = false;
10
+ this.conditions = [];
11
+ }
12
+ async execute(context) {
13
+ const start = Date.now();
14
+ try {
15
+ const result = await this.operation.apply(context.currentJson, context);
16
+ if (result.success && result.cleanedJson) {
17
+ context.updateJson(result.cleanedJson);
18
+ result.changes.forEach(c => context.recordChange(c));
19
+ }
20
+ return {
21
+ success: true,
22
+ shouldContinue: true,
23
+ operationResults: [result],
24
+ executionTime: Date.now() - start
25
+ };
26
+ }
27
+ catch (error) {
28
+ return {
29
+ success: false,
30
+ shouldContinue: true,
31
+ operationResults: [],
32
+ executionTime: Date.now() - start,
33
+ error: {
34
+ message: `AlwaysStep failed: ${error}`,
35
+ recoverable: true,
36
+ recovery: 'skip'
37
+ }
38
+ };
39
+ }
40
+ }
41
+ }
42
+ exports.AlwaysStep = AlwaysStep;
43
+ class ConditionalStep {
44
+ constructor(operation, conditions = [], id = `conditional_${operation.id}`) {
45
+ this.operation = operation;
46
+ this.conditions = conditions;
47
+ this.id = id;
48
+ this.type = 'conditional';
49
+ this.optional = true;
50
+ }
51
+ async execute(context) {
52
+ const start = Date.now();
53
+ const shouldExecute = this.conditions.every(c => c.evaluate(context));
54
+ if (!shouldExecute) {
55
+ return {
56
+ success: true,
57
+ shouldContinue: true,
58
+ operationResults: [],
59
+ executionTime: 0
60
+ };
61
+ }
62
+ try {
63
+ const result = await this.operation.apply(context.currentJson, context);
64
+ if (result.success && result.cleanedJson) {
65
+ context.updateJson(result.cleanedJson);
66
+ result.changes.forEach(c => context.recordChange(c));
67
+ }
68
+ return {
69
+ success: true,
70
+ shouldContinue: true,
71
+ operationResults: [result],
72
+ executionTime: Date.now() - start
73
+ };
74
+ }
75
+ catch (error) {
76
+ return {
77
+ success: false,
78
+ shouldContinue: true,
79
+ operationResults: [],
80
+ executionTime: Date.now() - start,
81
+ error: {
82
+ message: `ConditionalStep failed: ${error}`,
83
+ recoverable: true,
84
+ recovery: 'skip'
85
+ }
86
+ };
87
+ }
88
+ }
89
+ }
90
+ exports.ConditionalStep = ConditionalStep;
91
+ class ParallelStep {
92
+ constructor(operations, strategy = 'best', id = `parallel_${operations.map(o => o.id).join('_')}`) {
93
+ this.operations = operations;
94
+ this.strategy = strategy;
95
+ this.id = id;
96
+ this.type = 'parallel';
97
+ this.optional = true;
98
+ }
99
+ async execute(context) {
100
+ const start = Date.now();
101
+ // Run sequentially to keep things simple/deterministic in this environment
102
+ const results = [];
103
+ for (const op of this.operations) {
104
+ try {
105
+ const res = await op.apply(context.currentJson, context);
106
+ results.push(res);
107
+ }
108
+ catch (e) {
109
+ results.push({
110
+ success: false,
111
+ changes: [],
112
+ confidence: 0,
113
+ shouldContinue: true,
114
+ error: { code: 'OP_ERROR', message: String(e), recoverable: true }
115
+ });
116
+ }
117
+ }
118
+ // Pick best
119
+ const successful = results.filter(r => r.success && r.cleanedJson);
120
+ let picked = successful[0];
121
+ if (this.strategy === 'best' && successful.length > 0) {
122
+ picked = successful.reduce((best, cur) => cur.confidence > best.confidence ? cur : best, successful[0]);
123
+ }
124
+ if (picked && picked.cleanedJson) {
125
+ context.updateJson(picked.cleanedJson);
126
+ picked.changes.forEach(c => context.recordChange(c));
127
+ }
128
+ return {
129
+ success: successful.length > 0,
130
+ shouldContinue: true,
131
+ operationResults: results,
132
+ executionTime: Date.now() - start
133
+ };
134
+ }
135
+ }
136
+ exports.ParallelStep = ParallelStep;
137
+ class SequenceStep {
138
+ constructor(operations, id = `sequence_${operations.map(o => o.id).join('_')}`) {
139
+ this.operations = operations;
140
+ this.id = id;
141
+ this.type = 'sequence';
142
+ this.optional = false;
143
+ }
144
+ async execute(context) {
145
+ const start = Date.now();
146
+ const opResults = [];
147
+ let anySuccess = false;
148
+ for (const op of this.operations) {
149
+ const res = await op.apply(context.currentJson, context);
150
+ opResults.push(res);
151
+ if (res.success && res.cleanedJson) {
152
+ context.updateJson(res.cleanedJson);
153
+ res.changes.forEach(c => context.recordChange(c));
154
+ anySuccess = true;
155
+ }
156
+ }
157
+ return {
158
+ success: anySuccess,
159
+ shouldContinue: true,
160
+ operationResults: opResults,
161
+ executionTime: Date.now() - start
162
+ };
163
+ }
164
+ }
165
+ exports.SequenceStep = SequenceStep;
166
+ class ValidationStep {
167
+ constructor() {
168
+ this.type = 'validation';
169
+ this.optional = false;
170
+ this.conditions = [];
171
+ this.id = 'validation';
172
+ }
173
+ async execute(context) {
174
+ const start = Date.now();
175
+ const isValid = (() => { try {
176
+ JSON.parse(context.currentJson);
177
+ return true;
178
+ }
179
+ catch {
180
+ return false;
181
+ } })();
182
+ return {
183
+ success: isValid,
184
+ shouldContinue: true,
185
+ operationResults: [],
186
+ executionTime: Date.now() - start
187
+ };
188
+ }
189
+ }
190
+ exports.ValidationStep = ValidationStep;
191
+ class CheckpointStep {
192
+ constructor(name, id = `checkpoint_${name}`) {
193
+ this.name = name;
194
+ this.id = id;
195
+ this.type = 'checkpoint';
196
+ this.optional = false;
197
+ }
198
+ async execute(context) {
199
+ context.createCheckpoint(this.name);
200
+ return { success: true, shouldContinue: true, operationResults: [], executionTime: 0 };
201
+ }
202
+ }
203
+ exports.CheckpointStep = CheckpointStep;
204
+ class RollbackStep {
205
+ constructor(name, id = `rollback_${name}`) {
206
+ this.name = name;
207
+ this.id = id;
208
+ this.type = 'rollback';
209
+ this.optional = true;
210
+ }
211
+ async execute(context) {
212
+ const ok = context.rollbackTo(this.name);
213
+ return { success: ok, shouldContinue: true, operationResults: [], executionTime: 0 };
214
+ }
215
+ }
216
+ exports.RollbackStep = RollbackStep;
217
+ //# sourceMappingURL=recipe-steps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recipe-steps.js","sourceRoot":"","sources":["../../../../../../src/middleware/services/json-cleaner/recipe-system/core/recipe-steps.ts"],"names":[],"mappings":";;;AAIA,MAAa,UAAU;IAKrB,YACmB,SAA4B,EAC7B,KAAa,UAAU,SAAS,CAAC,EAAE,EAAE;QADpC,cAAS,GAAT,SAAS,CAAmB;QAC7B,OAAE,GAAF,EAAE,CAAmC;QANvC,SAAI,GAAG,QAAQ,CAAC;QAChB,aAAQ,GAAG,KAAK,CAAC;QACjB,eAAU,GAAgB,EAAE,CAAC;IAK1C,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACxE,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACzC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBACvC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,cAAc,EAAE,IAAI;gBACpB,gBAAgB,EAAE,CAAC,MAAM,CAAC;gBAC1B,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAClC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,cAAc,EAAE,IAAI;gBACpB,gBAAgB,EAAE,EAAE;gBACpB,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBACjC,KAAK,EAAE;oBACL,OAAO,EAAE,sBAAsB,KAAK,EAAE;oBACtC,WAAW,EAAE,IAAI;oBACjB,QAAQ,EAAE,MAAM;iBACjB;aACF,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAtCD,gCAsCC;AAED,MAAa,eAAe;IAI1B,YACmB,SAA4B,EAC7B,aAA0B,EAAE,EAC5B,KAAa,eAAe,SAAS,CAAC,EAAE,EAAE;QAFzC,cAAS,GAAT,SAAS,CAAmB;QAC7B,eAAU,GAAV,UAAU,CAAkB;QAC5B,OAAE,GAAF,EAAE,CAAwC;QAN5C,SAAI,GAAG,aAAa,CAAC;QACrB,aAAQ,GAAG,IAAI,CAAC;IAM7B,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QAEtE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,cAAc,EAAE,IAAI;gBACpB,gBAAgB,EAAE,EAAE;gBACpB,aAAa,EAAE,CAAC;aACjB,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACxE,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACzC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBACvC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,cAAc,EAAE,IAAI;gBACpB,gBAAgB,EAAE,CAAC,MAAM,CAAC;gBAC1B,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAClC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,cAAc,EAAE,IAAI;gBACpB,gBAAgB,EAAE,EAAE;gBACpB,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBACjC,KAAK,EAAE;oBACL,OAAO,EAAE,2BAA2B,KAAK,EAAE;oBAC3C,WAAW,EAAE,IAAI;oBACjB,QAAQ,EAAE,MAAM;iBACjB;aACF,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAjDD,0CAiDC;AAED,MAAa,YAAY;IAIvB,YACmB,UAA+B,EAC/B,WAAqC,MAAM,EAC5C,KAAa,YAAY,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QAF7D,eAAU,GAAV,UAAU,CAAqB;QAC/B,aAAQ,GAAR,QAAQ,CAAmC;QAC5C,OAAE,GAAF,EAAE,CAA4D;QANhE,SAAI,GAAG,UAAU,CAAC;QAClB,aAAQ,GAAG,IAAI,CAAC;IAM7B,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEzB,2EAA2E;QAC3E,MAAM,OAAO,GAAG,EAA0D,CAAC;QAC3E,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBACzD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,IAAI,CAAC;oBACX,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,EAAE;oBACX,UAAU,EAAE,CAAC;oBACb,cAAc,EAAE,IAAI;oBACpB,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE;iBACnE,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,YAAY;QACZ,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC;QACnE,IAAI,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1G,CAAC;QAED,IAAI,MAAM,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACjC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACvC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QACvD,CAAC;QAED,OAAO;YACL,OAAO,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC;YAC9B,cAAc,EAAE,IAAI;YACpB,gBAAgB,EAAE,OAAO;YACzB,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAClC,CAAC;IACJ,CAAC;CACF;AAjDD,oCAiDC;AAED,MAAa,YAAY;IAIvB,YACmB,UAA+B,EAChC,KAAa,YAAY,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QAD7D,eAAU,GAAV,UAAU,CAAqB;QAChC,OAAE,GAAF,EAAE,CAA4D;QALhE,SAAI,GAAG,UAAU,CAAC;QAClB,aAAQ,GAAG,KAAK,CAAC;IAK9B,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,SAAS,GAAyD,EAAE,CAAC;QAC3E,IAAI,UAAU,GAAG,KAAK,CAAC;QAEvB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACjC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACzD,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpB,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;gBACnC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACpC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClD,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE,UAAU;YACnB,cAAc,EAAE,IAAI;YACpB,gBAAgB,EAAE,SAAS;YAC3B,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAClC,CAAC;IACJ,CAAC;CACF;AA/BD,oCA+BC;AAED,MAAa,cAAc;IAA3B;QACkB,SAAI,GAAG,YAAY,CAAC;QACpB,aAAQ,GAAG,KAAK,CAAC;QACjB,eAAU,GAAgB,EAAE,CAAC;QAC7B,OAAE,GAAW,YAAY,CAAC;IAY5C,CAAC;IAVC,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAAC,OAAO,IAAI,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,KAAK,CAAC;QAAC,CAAC,CAAA,CAAC,CAAC,EAAE,CAAC;QAC3G,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,cAAc,EAAE,IAAI;YACpB,gBAAgB,EAAE,EAAE;YACpB,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAClC,CAAC;IACJ,CAAC;CACF;AAhBD,wCAgBC;AAED,MAAa,cAAc;IAIzB,YACmB,IAAY,EACb,KAAa,cAAc,IAAI,EAAE;QADhC,SAAI,GAAJ,IAAI,CAAQ;QACb,OAAE,GAAF,EAAE,CAA+B;QALnC,SAAI,GAAG,YAAY,CAAC;QACpB,aAAQ,GAAG,KAAK,CAAC;IAK9B,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;IACzF,CAAC;CACF;AAbD,wCAaC;AAED,MAAa,YAAY;IAIvB,YACmB,IAAY,EACb,KAAa,YAAY,IAAI,EAAE;QAD9B,SAAI,GAAJ,IAAI,CAAQ;QACb,OAAE,GAAF,EAAE,CAA6B;QALjC,SAAI,GAAG,UAAU,CAAC;QAClB,aAAQ,GAAG,IAAI,CAAC;IAK7B,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;IACvF,CAAC;CACF;AAbD,oCAaC"}
@@ -0,0 +1,46 @@
1
+ import { CleaningEngine } from './core/cleaning-engine';
2
+ /**
3
+ * Factory class providing convenient access to the recipe-based JSON cleaning system
4
+ */
5
+ export declare class JsonCleanerFactory {
6
+ /**
7
+ * Quick clean with automatic recipe selection
8
+ */
9
+ static quickClean(json: string): Promise<import("./core/cleaning-engine").CleaningResult>;
10
+ /**
11
+ * Create a new cleaning engine instance
12
+ */
13
+ static createEngine(): CleaningEngine;
14
+ /**
15
+ * Validate JSON without cleaning
16
+ */
17
+ static validateJson(json: string): {
18
+ isValid: boolean;
19
+ suggestions: never[];
20
+ error?: undefined;
21
+ } | {
22
+ isValid: boolean;
23
+ error: string;
24
+ suggestions: string[];
25
+ };
26
+ /**
27
+ * Analyze JSON and get recipe recommendations
28
+ */
29
+ static analyzeJson(json: string): {
30
+ readonly recommendedRecipe: "conservative" | "aggressive" | "adaptive";
31
+ readonly reasons: string[];
32
+ readonly detectedIssues: string[];
33
+ readonly estimatedDifficulty: "medium" | "easy" | "hard";
34
+ };
35
+ /**
36
+ * Get engine statistics
37
+ */
38
+ static getStats(): {
39
+ readonly version: "1.0.0";
40
+ readonly operationsAvailable: 10;
41
+ readonly recipesRegistered: 5;
42
+ readonly averageProcessingTime: 150;
43
+ readonly successRate: 0.85;
44
+ };
45
+ }
46
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/json-cleaner/recipe-system/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD;;GAEG;AACH,qBAAa,kBAAkB;IAC7B;;OAEG;WACU,UAAU,CAAC,IAAI,EAAE,MAAM;IAYpC;;OAEG;IACH,MAAM,CAAC,YAAY,IAAI,cAAc;IAIrC;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM;;;;;;;;;IAKhC;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM;;;;;;IAK/B;;OAEG;IACH,MAAM,CAAC,QAAQ;;;;;;;CAIhB"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JsonCleanerFactory = void 0;
4
+ const cleaning_engine_1 = require("./core/cleaning-engine");
5
+ const templates_1 = require("./recipes/templates");
6
+ /**
7
+ * Factory class providing convenient access to the recipe-based JSON cleaning system
8
+ */
9
+ class JsonCleanerFactory {
10
+ /**
11
+ * Quick clean with automatic recipe selection
12
+ */
13
+ static async quickClean(json) {
14
+ const engine = cleaning_engine_1.CleaningEngine.getInstance();
15
+ const suggestion = engine.analyzeAndSuggestRecipe(json);
16
+ const recipe = suggestion.recommendedRecipe === 'conservative'
17
+ ? templates_1.RecipeTemplates.conservative()
18
+ : suggestion.recommendedRecipe === 'aggressive'
19
+ ? templates_1.RecipeTemplates.aggressive()
20
+ : templates_1.RecipeTemplates.adaptive();
21
+ return engine.clean(json, recipe, { source: 'factory', mode: suggestion.recommendedRecipe });
22
+ }
23
+ /**
24
+ * Create a new cleaning engine instance
25
+ */
26
+ static createEngine() {
27
+ return cleaning_engine_1.CleaningEngine.getInstance();
28
+ }
29
+ /**
30
+ * Validate JSON without cleaning
31
+ */
32
+ static validateJson(json) {
33
+ const engine = cleaning_engine_1.CleaningEngine.getInstance();
34
+ return engine.validateJson(json);
35
+ }
36
+ /**
37
+ * Analyze JSON and get recipe recommendations
38
+ */
39
+ static analyzeJson(json) {
40
+ const engine = cleaning_engine_1.CleaningEngine.getInstance();
41
+ return engine.analyzeAndSuggestRecipe(json);
42
+ }
43
+ /**
44
+ * Get engine statistics
45
+ */
46
+ static getStats() {
47
+ const engine = cleaning_engine_1.CleaningEngine.getInstance();
48
+ return engine.getEngineStats();
49
+ }
50
+ }
51
+ exports.JsonCleanerFactory = JsonCleanerFactory;
52
+ //# sourceMappingURL=factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../../src/middleware/services/json-cleaner/recipe-system/factory.ts"],"names":[],"mappings":";;;AAAA,4DAAwD;AACxD,mDAAsD;AAEtD;;GAEG;AACH,MAAa,kBAAkB;IAC7B;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAY;QAClC,MAAM,MAAM,GAAG,gCAAc,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,UAAU,CAAC,iBAAiB,KAAK,cAAc;YAC5D,CAAC,CAAC,2BAAe,CAAC,YAAY,EAAE;YAChC,CAAC,CAAC,UAAU,CAAC,iBAAiB,KAAK,YAAY;gBAC7C,CAAC,CAAC,2BAAe,CAAC,UAAU,EAAE;gBAC9B,CAAC,CAAC,2BAAe,CAAC,QAAQ,EAAE,CAAC;QAEjC,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,YAAY;QACjB,OAAO,gCAAc,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,IAAY;QAC9B,MAAM,MAAM,GAAG,gCAAc,CAAC,WAAW,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,IAAY;QAC7B,MAAM,MAAM,GAAG,gCAAc,CAAC,WAAW,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ;QACb,MAAM,MAAM,GAAG,gCAAc,CAAC,WAAW,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,cAAc,EAAE,CAAC;IACjC,CAAC;CACF;AA9CD,gDA8CC"}
@@ -0,0 +1,12 @@
1
+ export * from './types/operation.types';
2
+ export * from './types/recipe.types';
3
+ export * from './core/cleaning-context';
4
+ export * from './core/cleaning-engine';
5
+ export * from './core/recipe-builder';
6
+ export * from './core/conditions';
7
+ export * from './core/recipe-steps';
8
+ export * from './operations/detectors';
9
+ export * from './operations/fixers';
10
+ export * from './recipes/templates';
11
+ export * from './factory';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/json-cleaner/recipe-system/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC"}
@@ -0,0 +1,28 @@
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("./types/operation.types"), exports);
18
+ __exportStar(require("./types/recipe.types"), exports);
19
+ __exportStar(require("./core/cleaning-context"), exports);
20
+ __exportStar(require("./core/cleaning-engine"), exports);
21
+ __exportStar(require("./core/recipe-builder"), exports);
22
+ __exportStar(require("./core/conditions"), exports);
23
+ __exportStar(require("./core/recipe-steps"), exports);
24
+ __exportStar(require("./operations/detectors"), exports);
25
+ __exportStar(require("./operations/fixers"), exports);
26
+ __exportStar(require("./recipes/templates"), exports);
27
+ __exportStar(require("./factory"), exports);
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/middleware/services/json-cleaner/recipe-system/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,uDAAqC;AACrC,0DAAwC;AACxC,yDAAuC;AACvC,wDAAsC;AACtC,oDAAkC;AAClC,sDAAoC;AACpC,yDAAuC;AACvC,sDAAoC;AACpC,sDAAoC;AACpC,4CAA0B"}
@@ -0,0 +1,55 @@
1
+ import { CleaningOperation, CleaningContext, OperationResult, OperationImpact } from '../types/operation.types';
2
+ export declare abstract class BaseDetector implements CleaningOperation {
3
+ readonly id: string;
4
+ readonly name: string;
5
+ readonly description: string;
6
+ readonly priority: 'critical' | 'high' | 'medium' | 'low';
7
+ constructor(id: string, name: string, description: string, priority?: 'critical' | 'high' | 'medium' | 'low');
8
+ abstract shouldApply(context: CleaningContext): boolean;
9
+ abstract detectIssues(json: string, context: CleaningContext): DetectionResult[];
10
+ apply(json: string, context: CleaningContext): Promise<OperationResult>;
11
+ estimateImpact(json: string, context: CleaningContext): OperationImpact;
12
+ conflictsWith(other: CleaningOperation): boolean;
13
+ }
14
+ export interface DetectionResult {
15
+ type: string;
16
+ location: number;
17
+ confidence: number;
18
+ description: string;
19
+ metadata?: Record<string, any>;
20
+ }
21
+ export declare class ControlCharacterDetector extends BaseDetector {
22
+ constructor();
23
+ shouldApply(context: CleaningContext): boolean;
24
+ detectIssues(json: string, context: CleaningContext): DetectionResult[];
25
+ }
26
+ export declare class MissingCommaDetector extends BaseDetector {
27
+ constructor();
28
+ shouldApply(context: CleaningContext): boolean;
29
+ detectIssues(json: string, context: CleaningContext): DetectionResult[];
30
+ }
31
+ export declare class StructuralIssueDetector extends BaseDetector {
32
+ constructor();
33
+ shouldApply(context: CleaningContext): boolean;
34
+ detectIssues(json: string, context: CleaningContext): DetectionResult[];
35
+ private analyzeBrackets;
36
+ private analyzeStrings;
37
+ }
38
+ export declare class MarkdownBlockDetector extends BaseDetector {
39
+ constructor();
40
+ shouldApply(context: CleaningContext): boolean;
41
+ detectIssues(json: string, context: CleaningContext): DetectionResult[];
42
+ }
43
+ export declare class ThinkTagDetector extends BaseDetector {
44
+ constructor();
45
+ shouldApply(context: CleaningContext): boolean;
46
+ detectIssues(json: string, context: CleaningContext): DetectionResult[];
47
+ }
48
+ export declare const Detectors: {
49
+ controlCharacter: () => ControlCharacterDetector;
50
+ missingComma: () => MissingCommaDetector;
51
+ structural: () => StructuralIssueDetector;
52
+ markdownBlock: () => MarkdownBlockDetector;
53
+ thinkTag: () => ThinkTagDetector;
54
+ };
55
+ //# sourceMappingURL=detectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detectors.d.ts","sourceRoot":"","sources":["../../../../../../src/middleware/services/json-cleaner/recipe-system/operations/detectors.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAGlC,8BAAsB,YAAa,YAAW,iBAAiB;aAE3C,EAAE,EAAE,MAAM;aACV,IAAI,EAAE,MAAM;aACZ,WAAW,EAAE,MAAM;aACnB,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK;gBAHhD,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,QAAQ,GAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAgB;IAG7E,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO;IACvD,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,eAAe,EAAE;IAE1E,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IA8C7E,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,eAAe;IAYvE,aAAa,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO;CAIjD;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAGD,qBAAa,wBAAyB,SAAQ,YAAY;;IASxD,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO;IAI9C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,eAAe,EAAE;CA0BxE;AAGD,qBAAa,oBAAqB,SAAQ,YAAY;;IASpD,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO;IAK9C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,eAAe,EAAE;CAuDxE;AAGD,qBAAa,uBAAwB,SAAQ,YAAY;;IASvD,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO;IAI9C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,eAAe,EAAE;IAyCvE,OAAO,CAAC,eAAe;IA+DvB,OAAO,CAAC,cAAc;CA4BvB;AAGD,qBAAa,qBAAsB,SAAQ,YAAY;;IASrD,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO;IAI9C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,eAAe,EAAE;CAuBxE;AAGD,qBAAa,gBAAiB,SAAQ,YAAY;;IAShD,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO;IAI9C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,eAAe,EAAE;CAsBxE;AAGD,eAAO,MAAM,SAAS;;;;;;CAMrB,CAAC"}