@measureoneinc/savant 1.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 (398) hide show
  1. package/README-SDK.md +148 -0
  2. package/dist/ai/agents/domain-identifier.agent.d.ts +34 -0
  3. package/dist/ai/agents/domain-identifier.agent.d.ts.map +1 -0
  4. package/dist/ai/agents/domain-identifier.agent.js +176 -0
  5. package/dist/ai/agents/domain-identifier.agent.js.map +1 -0
  6. package/dist/ai/agents/dynamic-agent.d.ts +105 -0
  7. package/dist/ai/agents/dynamic-agent.d.ts.map +1 -0
  8. package/dist/ai/agents/dynamic-agent.js +505 -0
  9. package/dist/ai/agents/dynamic-agent.js.map +1 -0
  10. package/dist/ai/agents/executor.agent.d.ts +25 -0
  11. package/dist/ai/agents/executor.agent.d.ts.map +1 -0
  12. package/dist/ai/agents/executor.agent.js +44 -0
  13. package/dist/ai/agents/executor.agent.js.map +1 -0
  14. package/dist/ai/agents/index.d.ts +17 -0
  15. package/dist/ai/agents/index.d.ts.map +1 -0
  16. package/dist/ai/agents/index.js +29 -0
  17. package/dist/ai/agents/index.js.map +1 -0
  18. package/dist/ai/agents/knowledge.agent.d.ts +25 -0
  19. package/dist/ai/agents/knowledge.agent.d.ts.map +1 -0
  20. package/dist/ai/agents/knowledge.agent.js +42 -0
  21. package/dist/ai/agents/knowledge.agent.js.map +1 -0
  22. package/dist/ai/agents/learning.agent.d.ts +63 -0
  23. package/dist/ai/agents/learning.agent.d.ts.map +1 -0
  24. package/dist/ai/agents/learning.agent.js +288 -0
  25. package/dist/ai/agents/learning.agent.js.map +1 -0
  26. package/dist/ai/agents/orchestrator.agent.d.ts +26 -0
  27. package/dist/ai/agents/orchestrator.agent.d.ts.map +1 -0
  28. package/dist/ai/agents/orchestrator.agent.js +42 -0
  29. package/dist/ai/agents/orchestrator.agent.js.map +1 -0
  30. package/dist/ai/agents/planner.agent.d.ts +25 -0
  31. package/dist/ai/agents/planner.agent.d.ts.map +1 -0
  32. package/dist/ai/agents/planner.agent.js +36 -0
  33. package/dist/ai/agents/planner.agent.js.map +1 -0
  34. package/dist/ai/agents/response-parser.d.ts +23 -0
  35. package/dist/ai/agents/response-parser.d.ts.map +1 -0
  36. package/dist/ai/agents/response-parser.js +313 -0
  37. package/dist/ai/agents/response-parser.js.map +1 -0
  38. package/dist/ai/agents/summarizer.agent.d.ts +38 -0
  39. package/dist/ai/agents/summarizer.agent.d.ts.map +1 -0
  40. package/dist/ai/agents/summarizer.agent.js +245 -0
  41. package/dist/ai/agents/summarizer.agent.js.map +1 -0
  42. package/dist/ai/instructions/domain-identifier.instructions.d.ts +10 -0
  43. package/dist/ai/instructions/domain-identifier.instructions.d.ts.map +1 -0
  44. package/dist/ai/instructions/domain-identifier.instructions.js +63 -0
  45. package/dist/ai/instructions/domain-identifier.instructions.js.map +1 -0
  46. package/dist/ai/instructions/executor.instructions.d.ts +11 -0
  47. package/dist/ai/instructions/executor.instructions.d.ts.map +1 -0
  48. package/dist/ai/instructions/executor.instructions.js +218 -0
  49. package/dist/ai/instructions/executor.instructions.js.map +1 -0
  50. package/dist/ai/instructions/knowledge.instructions.d.ts +11 -0
  51. package/dist/ai/instructions/knowledge.instructions.d.ts.map +1 -0
  52. package/dist/ai/instructions/knowledge.instructions.js +145 -0
  53. package/dist/ai/instructions/knowledge.instructions.js.map +1 -0
  54. package/dist/ai/instructions/learning.instructions.d.ts +11 -0
  55. package/dist/ai/instructions/learning.instructions.d.ts.map +1 -0
  56. package/dist/ai/instructions/learning.instructions.js +226 -0
  57. package/dist/ai/instructions/learning.instructions.js.map +1 -0
  58. package/dist/ai/instructions/orchestrator.instructions.d.ts +11 -0
  59. package/dist/ai/instructions/orchestrator.instructions.d.ts.map +1 -0
  60. package/dist/ai/instructions/orchestrator.instructions.js +148 -0
  61. package/dist/ai/instructions/orchestrator.instructions.js.map +1 -0
  62. package/dist/ai/instructions/planner.instructions.d.ts +12 -0
  63. package/dist/ai/instructions/planner.instructions.d.ts.map +1 -0
  64. package/dist/ai/instructions/planner.instructions.js +129 -0
  65. package/dist/ai/instructions/planner.instructions.js.map +1 -0
  66. package/dist/ai/instructions/summarizer.instructions.d.ts +11 -0
  67. package/dist/ai/instructions/summarizer.instructions.d.ts.map +1 -0
  68. package/dist/ai/instructions/summarizer.instructions.js +84 -0
  69. package/dist/ai/instructions/summarizer.instructions.js.map +1 -0
  70. package/dist/ai/learning/execution-learner.d.ts +79 -0
  71. package/dist/ai/learning/execution-learner.d.ts.map +1 -0
  72. package/dist/ai/learning/execution-learner.js +536 -0
  73. package/dist/ai/learning/execution-learner.js.map +1 -0
  74. package/dist/ai/response_handlers/base-handler.d.ts +73 -0
  75. package/dist/ai/response_handlers/base-handler.d.ts.map +1 -0
  76. package/dist/ai/response_handlers/base-handler.js +153 -0
  77. package/dist/ai/response_handlers/base-handler.js.map +1 -0
  78. package/dist/ai/response_handlers/direct-response-handler.d.ts +18 -0
  79. package/dist/ai/response_handlers/direct-response-handler.d.ts.map +1 -0
  80. package/dist/ai/response_handlers/direct-response-handler.js +86 -0
  81. package/dist/ai/response_handlers/direct-response-handler.js.map +1 -0
  82. package/dist/ai/response_handlers/error-handler.d.ts +13 -0
  83. package/dist/ai/response_handlers/error-handler.d.ts.map +1 -0
  84. package/dist/ai/response_handlers/error-handler.js +72 -0
  85. package/dist/ai/response_handlers/error-handler.js.map +1 -0
  86. package/dist/ai/response_handlers/handler-registry.d.ts +51 -0
  87. package/dist/ai/response_handlers/handler-registry.d.ts.map +1 -0
  88. package/dist/ai/response_handlers/handler-registry.js +268 -0
  89. package/dist/ai/response_handlers/handler-registry.js.map +1 -0
  90. package/dist/ai/response_handlers/index.d.ts +16 -0
  91. package/dist/ai/response_handlers/index.d.ts.map +1 -0
  92. package/dist/ai/response_handlers/index.js +29 -0
  93. package/dist/ai/response_handlers/index.js.map +1 -0
  94. package/dist/ai/response_handlers/message-handler.d.ts +23 -0
  95. package/dist/ai/response_handlers/message-handler.d.ts.map +1 -0
  96. package/dist/ai/response_handlers/message-handler.js +193 -0
  97. package/dist/ai/response_handlers/message-handler.js.map +1 -0
  98. package/dist/ai/response_handlers/plan-ready-handler.d.ts +26 -0
  99. package/dist/ai/response_handlers/plan-ready-handler.d.ts.map +1 -0
  100. package/dist/ai/response_handlers/plan-ready-handler.js +394 -0
  101. package/dist/ai/response_handlers/plan-ready-handler.js.map +1 -0
  102. package/dist/ai/response_handlers/request-input-handler.d.ts +14 -0
  103. package/dist/ai/response_handlers/request-input-handler.d.ts.map +1 -0
  104. package/dist/ai/response_handlers/request-input-handler.js +87 -0
  105. package/dist/ai/response_handlers/request-input-handler.js.map +1 -0
  106. package/dist/ai/response_handlers/request-plan-handler.d.ts +18 -0
  107. package/dist/ai/response_handlers/request-plan-handler.d.ts.map +1 -0
  108. package/dist/ai/response_handlers/request-plan-handler.js +143 -0
  109. package/dist/ai/response_handlers/request-plan-handler.js.map +1 -0
  110. package/dist/ai/response_handlers/step-complete-handler.d.ts +22 -0
  111. package/dist/ai/response_handlers/step-complete-handler.d.ts.map +1 -0
  112. package/dist/ai/response_handlers/step-complete-handler.js +307 -0
  113. package/dist/ai/response_handlers/step-complete-handler.js.map +1 -0
  114. package/dist/ai/response_handlers/unknown-handler.d.ts +12 -0
  115. package/dist/ai/response_handlers/unknown-handler.d.ts.map +1 -0
  116. package/dist/ai/response_handlers/unknown-handler.js +27 -0
  117. package/dist/ai/response_handlers/unknown-handler.js.map +1 -0
  118. package/dist/ai/response_handlers/user-input-handler.d.ts +20 -0
  119. package/dist/ai/response_handlers/user-input-handler.d.ts.map +1 -0
  120. package/dist/ai/response_handlers/user-input-handler.js +69 -0
  121. package/dist/ai/response_handlers/user-input-handler.js.map +1 -0
  122. package/dist/ai/tools/log-step.d.ts +29 -0
  123. package/dist/ai/tools/log-step.d.ts.map +1 -0
  124. package/dist/ai/tools/log-step.js +47 -0
  125. package/dist/ai/tools/log-step.js.map +1 -0
  126. package/dist/app.d.ts +15 -0
  127. package/dist/app.d.ts.map +1 -0
  128. package/dist/app.js +223 -0
  129. package/dist/app.js.map +1 -0
  130. package/dist/config/environment/local.d.ts +12 -0
  131. package/dist/config/environment/local.d.ts.map +1 -0
  132. package/dist/config/environment/local.js +124 -0
  133. package/dist/config/environment/local.js.map +1 -0
  134. package/dist/config/environment/production.d.ts +7 -0
  135. package/dist/config/environment/production.d.ts.map +1 -0
  136. package/dist/config/environment/production.js +105 -0
  137. package/dist/config/environment/production.js.map +1 -0
  138. package/dist/config/environment/test.d.ts +7 -0
  139. package/dist/config/environment/test.d.ts.map +1 -0
  140. package/dist/config/environment/test.js +97 -0
  141. package/dist/config/environment/test.js.map +1 -0
  142. package/dist/config/index.d.ts +219 -0
  143. package/dist/config/index.d.ts.map +1 -0
  144. package/dist/config/index.js +360 -0
  145. package/dist/config/index.js.map +1 -0
  146. package/dist/controllers/agent_request.controller.d.ts +43 -0
  147. package/dist/controllers/agent_request.controller.d.ts.map +1 -0
  148. package/dist/controllers/agent_request.controller.js +141 -0
  149. package/dist/controllers/agent_request.controller.js.map +1 -0
  150. package/dist/controllers/base.controller.d.ts +208 -0
  151. package/dist/controllers/base.controller.d.ts.map +1 -0
  152. package/dist/controllers/base.controller.js +378 -0
  153. package/dist/controllers/base.controller.js.map +1 -0
  154. package/dist/controllers/conversations.controller.d.ts +31 -0
  155. package/dist/controllers/conversations.controller.d.ts.map +1 -0
  156. package/dist/controllers/conversations.controller.js +138 -0
  157. package/dist/controllers/conversations.controller.js.map +1 -0
  158. package/dist/controllers/knowledge.controller.d.ts +63 -0
  159. package/dist/controllers/knowledge.controller.d.ts.map +1 -0
  160. package/dist/controllers/knowledge.controller.js +311 -0
  161. package/dist/controllers/knowledge.controller.js.map +1 -0
  162. package/dist/controllers/mcp.controller.d.ts +25 -0
  163. package/dist/controllers/mcp.controller.d.ts.map +1 -0
  164. package/dist/controllers/mcp.controller.js +93 -0
  165. package/dist/controllers/mcp.controller.js.map +1 -0
  166. package/dist/index.d.ts +12 -0
  167. package/dist/index.d.ts.map +1 -0
  168. package/dist/index.js +25 -0
  169. package/dist/index.js.map +1 -0
  170. package/dist/lib/app-constants.d.ts +231 -0
  171. package/dist/lib/app-constants.d.ts.map +1 -0
  172. package/dist/lib/app-constants.js +240 -0
  173. package/dist/lib/app-constants.js.map +1 -0
  174. package/dist/lib/controller-utils.d.ts +48 -0
  175. package/dist/lib/controller-utils.d.ts.map +1 -0
  176. package/dist/lib/controller-utils.js +70 -0
  177. package/dist/lib/controller-utils.js.map +1 -0
  178. package/dist/lib/exceptions/app-exceptions.d.ts +158 -0
  179. package/dist/lib/exceptions/app-exceptions.d.ts.map +1 -0
  180. package/dist/lib/exceptions/app-exceptions.js +287 -0
  181. package/dist/lib/exceptions/app-exceptions.js.map +1 -0
  182. package/dist/lib/middleware/upload.middleware.d.ts +13 -0
  183. package/dist/lib/middleware/upload.middleware.d.ts.map +1 -0
  184. package/dist/lib/middleware/upload.middleware.js +35 -0
  185. package/dist/lib/middleware/upload.middleware.js.map +1 -0
  186. package/dist/lib/middleware/validation.middleware.d.ts +29 -0
  187. package/dist/lib/middleware/validation.middleware.d.ts.map +1 -0
  188. package/dist/lib/middleware/validation.middleware.js +219 -0
  189. package/dist/lib/middleware/validation.middleware.js.map +1 -0
  190. package/dist/lib/model/validation-schema/submit-message.schema.d.ts +3 -0
  191. package/dist/lib/model/validation-schema/submit-message.schema.d.ts.map +1 -0
  192. package/dist/lib/model/validation-schema/submit-message.schema.js +40 -0
  193. package/dist/lib/model/validation-schema/submit-message.schema.js.map +1 -0
  194. package/dist/lib/model/validation-schema/update-knowledge.schema.d.ts +3 -0
  195. package/dist/lib/model/validation-schema/update-knowledge.schema.d.ts.map +1 -0
  196. package/dist/lib/model/validation-schema/update-knowledge.schema.js +35 -0
  197. package/dist/lib/model/validation-schema/update-knowledge.schema.js.map +1 -0
  198. package/dist/lib/open-ai-event-processor.d.ts +101 -0
  199. package/dist/lib/open-ai-event-processor.d.ts.map +1 -0
  200. package/dist/lib/open-ai-event-processor.js +426 -0
  201. package/dist/lib/open-ai-event-processor.js.map +1 -0
  202. package/dist/lib/schemas/ai-responses.schema.d.ts +617 -0
  203. package/dist/lib/schemas/ai-responses.schema.d.ts.map +1 -0
  204. package/dist/lib/schemas/ai-responses.schema.js +377 -0
  205. package/dist/lib/schemas/ai-responses.schema.js.map +1 -0
  206. package/dist/lib/schemas/common.schemas.d.ts +84 -0
  207. package/dist/lib/schemas/common.schemas.d.ts.map +1 -0
  208. package/dist/lib/schemas/common.schemas.js +87 -0
  209. package/dist/lib/schemas/common.schemas.js.map +1 -0
  210. package/dist/lib/schemas/conversation.schema.d.ts +28 -0
  211. package/dist/lib/schemas/conversation.schema.d.ts.map +1 -0
  212. package/dist/lib/schemas/conversation.schema.js +31 -0
  213. package/dist/lib/schemas/conversation.schema.js.map +1 -0
  214. package/dist/lib/schemas/http-client.schema.d.ts +39 -0
  215. package/dist/lib/schemas/http-client.schema.d.ts.map +1 -0
  216. package/dist/lib/schemas/http-client.schema.js +36 -0
  217. package/dist/lib/schemas/http-client.schema.js.map +1 -0
  218. package/dist/lib/schemas/index.d.ts +95 -0
  219. package/dist/lib/schemas/index.d.ts.map +1 -0
  220. package/dist/lib/schemas/index.js +32 -0
  221. package/dist/lib/schemas/index.js.map +1 -0
  222. package/dist/lib/schemas/knowledge.schema.d.ts +145 -0
  223. package/dist/lib/schemas/knowledge.schema.d.ts.map +1 -0
  224. package/dist/lib/schemas/knowledge.schema.js +81 -0
  225. package/dist/lib/schemas/knowledge.schema.js.map +1 -0
  226. package/dist/lib/schemas/orchestration.schema.d.ts +168 -0
  227. package/dist/lib/schemas/orchestration.schema.d.ts.map +1 -0
  228. package/dist/lib/schemas/orchestration.schema.js +133 -0
  229. package/dist/lib/schemas/orchestration.schema.js.map +1 -0
  230. package/dist/lib/schemas/plan.schema.d.ts +103 -0
  231. package/dist/lib/schemas/plan.schema.d.ts.map +1 -0
  232. package/dist/lib/schemas/plan.schema.js +58 -0
  233. package/dist/lib/schemas/plan.schema.js.map +1 -0
  234. package/dist/lib/sequelize-service.d.ts +23 -0
  235. package/dist/lib/sequelize-service.d.ts.map +1 -0
  236. package/dist/lib/sequelize-service.js +446 -0
  237. package/dist/lib/sequelize-service.js.map +1 -0
  238. package/dist/lib/source-hash.d.ts +39 -0
  239. package/dist/lib/source-hash.d.ts.map +1 -0
  240. package/dist/lib/source-hash.js +56 -0
  241. package/dist/lib/source-hash.js.map +1 -0
  242. package/dist/lib/stable-stringify.d.ts +32 -0
  243. package/dist/lib/stable-stringify.d.ts.map +1 -0
  244. package/dist/lib/stable-stringify.js +72 -0
  245. package/dist/lib/stable-stringify.js.map +1 -0
  246. package/dist/lib/streaming-utils.d.ts +60 -0
  247. package/dist/lib/streaming-utils.d.ts.map +1 -0
  248. package/dist/lib/streaming-utils.js +190 -0
  249. package/dist/lib/streaming-utils.js.map +1 -0
  250. package/dist/lib/utils/conversation-builder.d.ts +36 -0
  251. package/dist/lib/utils/conversation-builder.d.ts.map +1 -0
  252. package/dist/lib/utils/conversation-builder.js +132 -0
  253. package/dist/lib/utils/conversation-builder.js.map +1 -0
  254. package/dist/lib/utils/domain-matcher.d.ts +25 -0
  255. package/dist/lib/utils/domain-matcher.d.ts.map +1 -0
  256. package/dist/lib/utils/domain-matcher.js +42 -0
  257. package/dist/lib/utils/domain-matcher.js.map +1 -0
  258. package/dist/lib/utils/file-util.d.ts +157 -0
  259. package/dist/lib/utils/file-util.d.ts.map +1 -0
  260. package/dist/lib/utils/file-util.js +373 -0
  261. package/dist/lib/utils/file-util.js.map +1 -0
  262. package/dist/lib/utils/html-summarizer.d.ts +27 -0
  263. package/dist/lib/utils/html-summarizer.d.ts.map +1 -0
  264. package/dist/lib/utils/html-summarizer.js +189 -0
  265. package/dist/lib/utils/html-summarizer.js.map +1 -0
  266. package/dist/lib/utils/http-client.d.ts +108 -0
  267. package/dist/lib/utils/http-client.d.ts.map +1 -0
  268. package/dist/lib/utils/http-client.js +298 -0
  269. package/dist/lib/utils/http-client.js.map +1 -0
  270. package/dist/lib/utils/index.d.ts +12 -0
  271. package/dist/lib/utils/index.d.ts.map +1 -0
  272. package/dist/lib/utils/index.js +28 -0
  273. package/dist/lib/utils/index.js.map +1 -0
  274. package/dist/lib/utils/logger.d.ts +30 -0
  275. package/dist/lib/utils/logger.d.ts.map +1 -0
  276. package/dist/lib/utils/logger.js +88 -0
  277. package/dist/lib/utils/logger.js.map +1 -0
  278. package/dist/lib/utils/mcp-utils.d.ts +208 -0
  279. package/dist/lib/utils/mcp-utils.d.ts.map +1 -0
  280. package/dist/lib/utils/mcp-utils.js +451 -0
  281. package/dist/lib/utils/mcp-utils.js.map +1 -0
  282. package/dist/lib/utils/sequelize-service.d.ts +153 -0
  283. package/dist/lib/utils/sequelize-service.d.ts.map +1 -0
  284. package/dist/lib/utils/sequelize-service.js +339 -0
  285. package/dist/lib/utils/sequelize-service.js.map +1 -0
  286. package/dist/lib/utils/tool-call-extractor.d.ts +36 -0
  287. package/dist/lib/utils/tool-call-extractor.d.ts.map +1 -0
  288. package/dist/lib/utils/tool-call-extractor.js +121 -0
  289. package/dist/lib/utils/tool-call-extractor.js.map +1 -0
  290. package/dist/lib/utils/zod-to-json-schema.d.ts +17 -0
  291. package/dist/lib/utils/zod-to-json-schema.d.ts.map +1 -0
  292. package/dist/lib/utils/zod-to-json-schema.js +53 -0
  293. package/dist/lib/utils/zod-to-json-schema.js.map +1 -0
  294. package/dist/models/AgentRequest.d.ts +33 -0
  295. package/dist/models/AgentRequest.d.ts.map +1 -0
  296. package/dist/models/AgentRequest.js +49 -0
  297. package/dist/models/AgentRequest.js.map +1 -0
  298. package/dist/models/AgentRun.d.ts +44 -0
  299. package/dist/models/AgentRun.d.ts.map +1 -0
  300. package/dist/models/AgentRun.js +53 -0
  301. package/dist/models/AgentRun.js.map +1 -0
  302. package/dist/models/AuditLog.d.ts +37 -0
  303. package/dist/models/AuditLog.d.ts.map +1 -0
  304. package/dist/models/AuditLog.js +46 -0
  305. package/dist/models/AuditLog.js.map +1 -0
  306. package/dist/models/Conversation.d.ts +39 -0
  307. package/dist/models/Conversation.d.ts.map +1 -0
  308. package/dist/models/Conversation.js +49 -0
  309. package/dist/models/Conversation.js.map +1 -0
  310. package/dist/models/Embedding.d.ts +56 -0
  311. package/dist/models/Embedding.d.ts.map +1 -0
  312. package/dist/models/Embedding.js +36 -0
  313. package/dist/models/Embedding.js.map +1 -0
  314. package/dist/models/ExecutionPattern.d.ts +57 -0
  315. package/dist/models/ExecutionPattern.d.ts.map +1 -0
  316. package/dist/models/ExecutionPattern.js +61 -0
  317. package/dist/models/ExecutionPattern.js.map +1 -0
  318. package/dist/models/Knowledge.d.ts +49 -0
  319. package/dist/models/Knowledge.d.ts.map +1 -0
  320. package/dist/models/Knowledge.js +67 -0
  321. package/dist/models/Knowledge.js.map +1 -0
  322. package/dist/models/KnowledgeRevision.d.ts +35 -0
  323. package/dist/models/KnowledgeRevision.d.ts.map +1 -0
  324. package/dist/models/KnowledgeRevision.js +51 -0
  325. package/dist/models/KnowledgeRevision.js.map +1 -0
  326. package/dist/models/Plan.d.ts +34 -0
  327. package/dist/models/Plan.d.ts.map +1 -0
  328. package/dist/models/Plan.js +43 -0
  329. package/dist/models/Plan.js.map +1 -0
  330. package/dist/models/PlanStep.d.ts +56 -0
  331. package/dist/models/PlanStep.d.ts.map +1 -0
  332. package/dist/models/PlanStep.js +65 -0
  333. package/dist/models/PlanStep.js.map +1 -0
  334. package/dist/models/SourceData.d.ts +39 -0
  335. package/dist/models/SourceData.d.ts.map +1 -0
  336. package/dist/models/SourceData.js +18 -0
  337. package/dist/models/SourceData.js.map +1 -0
  338. package/dist/models/index.d.ts +36 -0
  339. package/dist/models/index.d.ts.map +1 -0
  340. package/dist/models/index.js +179 -0
  341. package/dist/models/index.js.map +1 -0
  342. package/dist/routes/agent.routes.d.ts +13 -0
  343. package/dist/routes/agent.routes.d.ts.map +1 -0
  344. package/dist/routes/agent.routes.js +27 -0
  345. package/dist/routes/agent.routes.js.map +1 -0
  346. package/dist/routes/agent_request.routes.d.ts +13 -0
  347. package/dist/routes/agent_request.routes.d.ts.map +1 -0
  348. package/dist/routes/agent_request.routes.js +65 -0
  349. package/dist/routes/agent_request.routes.js.map +1 -0
  350. package/dist/routes/knowledge.routes.d.ts +13 -0
  351. package/dist/routes/knowledge.routes.d.ts.map +1 -0
  352. package/dist/routes/knowledge.routes.js +91 -0
  353. package/dist/routes/knowledge.routes.js.map +1 -0
  354. package/dist/routes/mcp.routes.d.ts +14 -0
  355. package/dist/routes/mcp.routes.d.ts.map +1 -0
  356. package/dist/routes/mcp.routes.js +27 -0
  357. package/dist/routes/mcp.routes.js.map +1 -0
  358. package/dist/sdk/index.d.ts +13 -0
  359. package/dist/sdk/index.d.ts.map +1 -0
  360. package/dist/sdk/index.js +35 -0
  361. package/dist/sdk/index.js.map +1 -0
  362. package/dist/sdk/savant.sdk.d.ts +53 -0
  363. package/dist/sdk/savant.sdk.d.ts.map +1 -0
  364. package/dist/sdk/savant.sdk.js +120 -0
  365. package/dist/sdk/savant.sdk.js.map +1 -0
  366. package/dist/services/agent-request-service.d.ts +104 -0
  367. package/dist/services/agent-request-service.d.ts.map +1 -0
  368. package/dist/services/agent-request-service.js +319 -0
  369. package/dist/services/agent-request-service.js.map +1 -0
  370. package/dist/services/audit_log.service.d.ts +104 -0
  371. package/dist/services/audit_log.service.d.ts.map +1 -0
  372. package/dist/services/audit_log.service.js +339 -0
  373. package/dist/services/audit_log.service.js.map +1 -0
  374. package/dist/services/conversation.service.d.ts +90 -0
  375. package/dist/services/conversation.service.d.ts.map +1 -0
  376. package/dist/services/conversation.service.js +552 -0
  377. package/dist/services/conversation.service.js.map +1 -0
  378. package/dist/services/domain.service.d.ts +58 -0
  379. package/dist/services/domain.service.d.ts.map +1 -0
  380. package/dist/services/domain.service.js +244 -0
  381. package/dist/services/domain.service.js.map +1 -0
  382. package/dist/services/embedding.service.d.ts +132 -0
  383. package/dist/services/embedding.service.d.ts.map +1 -0
  384. package/dist/services/embedding.service.js +587 -0
  385. package/dist/services/embedding.service.js.map +1 -0
  386. package/dist/services/file_upload.service.d.ts +50 -0
  387. package/dist/services/file_upload.service.d.ts.map +1 -0
  388. package/dist/services/file_upload.service.js +172 -0
  389. package/dist/services/file_upload.service.js.map +1 -0
  390. package/dist/services/knowledge.service.d.ts +200 -0
  391. package/dist/services/knowledge.service.d.ts.map +1 -0
  392. package/dist/services/knowledge.service.js +784 -0
  393. package/dist/services/knowledge.service.js.map +1 -0
  394. package/dist/types/responses-api.types.d.ts +181 -0
  395. package/dist/types/responses-api.types.d.ts.map +1 -0
  396. package/dist/types/responses-api.types.js +12 -0
  397. package/dist/types/responses-api.types.js.map +1 -0
  398. package/package.json +145 -0
@@ -0,0 +1,158 @@
1
+ /**
2
+ * @fileoverview Shared Application Exceptions
3
+ *
4
+ * Common exception classes used across all MeasureOne services.
5
+ * Provides standardized error handling and consistent error responses.
6
+ *
7
+ * @author MeasureOne, Inc.
8
+ * @version 1.0.0
9
+ */
10
+ import type { ErrorCode, HttpStatus } from '../app-constants';
11
+ /**
12
+ * Base application exception class
13
+ */
14
+ export declare abstract class BaseAppException extends Error {
15
+ readonly error_code: ErrorCode;
16
+ readonly http_status: HttpStatus;
17
+ readonly details: Record<string, any>;
18
+ readonly timestamp: string;
19
+ readonly service: string | undefined;
20
+ constructor(message: string, error_code: ErrorCode, http_status: HttpStatus, details?: Record<string, any>, service?: string);
21
+ /**
22
+ * Convert exception to JSON for API responses
23
+ */
24
+ toJSON(): Record<string, any>;
25
+ /**
26
+ * Get error for logging purposes
27
+ */
28
+ toLogEntry(): Record<string, any>;
29
+ }
30
+ /**
31
+ * Validation exception for input validation errors
32
+ */
33
+ export declare class ValidationException extends BaseAppException {
34
+ constructor(message?: string, details?: Record<string, any>, service?: string);
35
+ /**
36
+ * Create validation exception for missing required fields
37
+ */
38
+ static missingRequiredField(field_name: string, service?: string): ValidationException;
39
+ /**
40
+ * Create validation exception for invalid format
41
+ */
42
+ static invalidFormat(field_name: string, expected_format: string, service?: string): ValidationException;
43
+ /**
44
+ * Create validation exception for multiple field errors
45
+ */
46
+ static multipleErrors(field_errors: Record<string, string>, service?: string): ValidationException;
47
+ }
48
+ /**
49
+ * Authentication exception for auth-related errors
50
+ */
51
+ export declare class AuthenticationException extends BaseAppException {
52
+ constructor(message?: string, error_code?: ErrorCode, details?: Record<string, any>, service?: string);
53
+ /**
54
+ * Create exception for invalid token
55
+ */
56
+ static invalidToken(service?: string): AuthenticationException;
57
+ /**
58
+ * Create exception for expired token
59
+ */
60
+ static tokenExpired(service?: string): AuthenticationException;
61
+ }
62
+ /**
63
+ * Authorization exception for permission-related errors
64
+ */
65
+ export declare class AuthorizationException extends BaseAppException {
66
+ constructor(message?: string, details?: Record<string, any>, service?: string);
67
+ /**
68
+ * Create exception for insufficient permissions
69
+ */
70
+ static insufficientPermissions(required_permission: string, service?: string): AuthorizationException;
71
+ }
72
+ /**
73
+ * Resource not found exception
74
+ */
75
+ export declare class ResourceNotFoundException extends BaseAppException {
76
+ constructor(resource_type: string, resource_id?: string, service?: string);
77
+ }
78
+ /**
79
+ * Resource conflict exception
80
+ */
81
+ export declare class ResourceConflictException extends BaseAppException {
82
+ constructor(resource_type: string, conflict_reason: string, details?: Record<string, any>, service?: string);
83
+ /**
84
+ * Create exception for duplicate resource
85
+ */
86
+ static duplicateResource(resource_type: string, identifier: string, service?: string): ResourceConflictException;
87
+ }
88
+ /**
89
+ * Internal server exception for unexpected errors
90
+ */
91
+ export declare class InternalServerException extends BaseAppException {
92
+ constructor(message?: string, details?: Record<string, any>, service?: string, original_error?: Error);
93
+ }
94
+ /**
95
+ * Service unavailable exception
96
+ */
97
+ export declare class ServiceUnavailableException extends BaseAppException {
98
+ constructor(service_name: string, reason?: string, details?: Record<string, any>, service?: string);
99
+ }
100
+ /**
101
+ * Rate limit exception
102
+ */
103
+ export declare class RateLimitException extends BaseAppException {
104
+ constructor(limit: number, window_seconds: number, retry_after_seconds?: number, service?: string);
105
+ }
106
+ /**
107
+ * File-related exception
108
+ */
109
+ export declare class FileException extends BaseAppException {
110
+ constructor(message: string, error_code: ErrorCode, file_path?: string, details?: Record<string, any>, service?: string);
111
+ /**
112
+ * Create exception for file not found
113
+ */
114
+ static fileNotFound(file_path: string, service?: string): FileException;
115
+ /**
116
+ * Create exception for file too large
117
+ */
118
+ static fileTooLarge(file_path: string, size_bytes: number, max_size_bytes: number, service?: string): FileException;
119
+ /**
120
+ * Create exception for invalid file type
121
+ */
122
+ static invalidFileType(file_path: string, detected_type: string, allowed_types: string[], service?: string): FileException;
123
+ }
124
+ /**
125
+ * Database-related exception
126
+ */
127
+ export declare class DatabaseException extends BaseAppException {
128
+ constructor(message: string, error_code?: ErrorCode, details?: Record<string, any>, service?: string, original_error?: Error);
129
+ /**
130
+ * Create exception for connection failure
131
+ */
132
+ static connectionFailed(database_name: string, service?: string, original_error?: Error): DatabaseException;
133
+ /**
134
+ * Create exception for query failure
135
+ */
136
+ static queryFailed(query_type: string, service?: string, original_error?: Error): DatabaseException;
137
+ }
138
+ /**
139
+ * External API exception
140
+ */
141
+ export declare class ExternalApiException extends BaseAppException {
142
+ constructor(api_name: string, message: string, error_code?: ErrorCode, status_code?: number, details?: Record<string, any>, service?: string);
143
+ /**
144
+ * Create exception for API unavailable
145
+ */
146
+ static apiUnavailable(api_name: string, service?: string): ExternalApiException;
147
+ /**
148
+ * Create exception for API rate limited
149
+ */
150
+ static apiRateLimited(api_name: string, retry_after_seconds?: number, service?: string): ExternalApiException;
151
+ }
152
+ /**
153
+ * Timeout exception
154
+ */
155
+ export declare class TimeoutException extends BaseAppException {
156
+ constructor(operation: string, timeout_ms: number, service?: string);
157
+ }
158
+ //# sourceMappingURL=app-exceptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-exceptions.d.ts","sourceRoot":"","sources":["../../../src/lib/exceptions/app-exceptions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,287 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Shared Application Exceptions
4
+ *
5
+ * Common exception classes used across all MeasureOne services.
6
+ * Provides standardized error handling and consistent error responses.
7
+ *
8
+ * @author MeasureOne, Inc.
9
+ * @version 1.0.0
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.TimeoutException = exports.ExternalApiException = exports.DatabaseException = exports.FileException = exports.RateLimitException = exports.ServiceUnavailableException = exports.InternalServerException = exports.ResourceConflictException = exports.ResourceNotFoundException = exports.AuthorizationException = exports.AuthenticationException = exports.ValidationException = exports.BaseAppException = void 0;
13
+ const app_constants_1 = require("../app-constants");
14
+ /**
15
+ * Base application exception class
16
+ */
17
+ class BaseAppException extends Error {
18
+ constructor(message, error_code, http_status, details = {}, service) {
19
+ super(message);
20
+ this.name = this.constructor.name;
21
+ this.error_code = error_code;
22
+ this.http_status = http_status;
23
+ this.details = details;
24
+ this.timestamp = new Date().toISOString();
25
+ this.service = service;
26
+ // Maintain proper stack trace for where our error was thrown (only available on V8)
27
+ if (Error.captureStackTrace) {
28
+ Error.captureStackTrace(this, this.constructor);
29
+ }
30
+ }
31
+ /**
32
+ * Convert exception to JSON for API responses
33
+ */
34
+ toJSON() {
35
+ return {
36
+ error: {
37
+ code: this.error_code,
38
+ message: this.message,
39
+ details: this.details,
40
+ timestamp: this.timestamp,
41
+ service: this.service
42
+ },
43
+ success: false,
44
+ timestamp: this.timestamp
45
+ };
46
+ }
47
+ /**
48
+ * Get error for logging purposes
49
+ */
50
+ toLogEntry() {
51
+ return {
52
+ error_type: this.name,
53
+ error_code: this.error_code,
54
+ message: this.message,
55
+ http_status: this.http_status,
56
+ details: this.details,
57
+ stack: this.stack,
58
+ timestamp: this.timestamp,
59
+ service: this.service
60
+ };
61
+ }
62
+ }
63
+ exports.BaseAppException = BaseAppException;
64
+ /**
65
+ * Validation exception for input validation errors
66
+ */
67
+ class ValidationException extends BaseAppException {
68
+ constructor(message = 'Validation failed', details = {}, service) {
69
+ super(message, app_constants_1.ERROR_CODES.VALIDATION_FAILED, app_constants_1.HTTP_STATUS.BAD_REQUEST, details, service);
70
+ }
71
+ /**
72
+ * Create validation exception for missing required fields
73
+ */
74
+ static missingRequiredField(field_name, service) {
75
+ return new ValidationException(`Missing required field: ${field_name}`, { field: field_name, type: 'missing_required' }, service);
76
+ }
77
+ /**
78
+ * Create validation exception for invalid format
79
+ */
80
+ static invalidFormat(field_name, expected_format, service) {
81
+ return new ValidationException(`Invalid format for field '${field_name}'. Expected: ${expected_format}`, { field: field_name, expected_format, type: 'invalid_format' }, service);
82
+ }
83
+ /**
84
+ * Create validation exception for multiple field errors
85
+ */
86
+ static multipleErrors(field_errors, service) {
87
+ return new ValidationException('Multiple validation errors occurred', { field_errors, type: 'multiple_errors' }, service);
88
+ }
89
+ }
90
+ exports.ValidationException = ValidationException;
91
+ /**
92
+ * Authentication exception for auth-related errors
93
+ */
94
+ class AuthenticationException extends BaseAppException {
95
+ constructor(message = 'Authentication failed', error_code = app_constants_1.ERROR_CODES.UNAUTHORIZED, details = {}, service) {
96
+ super(message, error_code, app_constants_1.HTTP_STATUS.UNAUTHORIZED, details, service);
97
+ }
98
+ /**
99
+ * Create exception for invalid token
100
+ */
101
+ static invalidToken(service) {
102
+ return new AuthenticationException('Invalid or malformed authentication token', app_constants_1.ERROR_CODES.INVALID_TOKEN, { type: 'invalid_token' }, service);
103
+ }
104
+ /**
105
+ * Create exception for expired token
106
+ */
107
+ static tokenExpired(service) {
108
+ return new AuthenticationException('Authentication token has expired', app_constants_1.ERROR_CODES.TOKEN_EXPIRED, { type: 'token_expired' }, service);
109
+ }
110
+ }
111
+ exports.AuthenticationException = AuthenticationException;
112
+ /**
113
+ * Authorization exception for permission-related errors
114
+ */
115
+ class AuthorizationException extends BaseAppException {
116
+ constructor(message = 'Access forbidden', details = {}, service) {
117
+ super(message, app_constants_1.ERROR_CODES.FORBIDDEN, app_constants_1.HTTP_STATUS.FORBIDDEN, details, service);
118
+ }
119
+ /**
120
+ * Create exception for insufficient permissions
121
+ */
122
+ static insufficientPermissions(required_permission, service) {
123
+ return new AuthorizationException(`Insufficient permissions. Required: ${required_permission}`, { required_permission, type: 'insufficient_permissions' }, service);
124
+ }
125
+ }
126
+ exports.AuthorizationException = AuthorizationException;
127
+ /**
128
+ * Resource not found exception
129
+ */
130
+ class ResourceNotFoundException extends BaseAppException {
131
+ constructor(resource_type, resource_id, service) {
132
+ const message = resource_id
133
+ ? `${resource_type} with ID '${resource_id}' not found`
134
+ : `${resource_type} not found`;
135
+ super(message, app_constants_1.ERROR_CODES.RESOURCE_NOT_FOUND, app_constants_1.HTTP_STATUS.NOT_FOUND, { resource_type, resource_id, type: 'not_found' }, service);
136
+ }
137
+ }
138
+ exports.ResourceNotFoundException = ResourceNotFoundException;
139
+ /**
140
+ * Resource conflict exception
141
+ */
142
+ class ResourceConflictException extends BaseAppException {
143
+ constructor(resource_type, conflict_reason, details = {}, service) {
144
+ super(`${resource_type} conflict: ${conflict_reason}`, app_constants_1.ERROR_CODES.RESOURCE_CONFLICT, app_constants_1.HTTP_STATUS.CONFLICT, { resource_type, conflict_reason, type: 'conflict', ...details }, service);
145
+ }
146
+ /**
147
+ * Create exception for duplicate resource
148
+ */
149
+ static duplicateResource(resource_type, identifier, service) {
150
+ return new ResourceConflictException(resource_type, `Resource with identifier '${identifier}' already exists`, { identifier, type: 'duplicate' }, service);
151
+ }
152
+ }
153
+ exports.ResourceConflictException = ResourceConflictException;
154
+ /**
155
+ * Internal server exception for unexpected errors
156
+ */
157
+ class InternalServerException extends BaseAppException {
158
+ constructor(message = 'Internal server error', details = {}, service, original_error) {
159
+ super(message, app_constants_1.ERROR_CODES.INTERNAL_ERROR, app_constants_1.HTTP_STATUS.INTERNAL_SERVER_ERROR, details, service);
160
+ if (original_error) {
161
+ this.details['original_error'] = {
162
+ name: original_error.name,
163
+ message: original_error.message,
164
+ stack: original_error.stack
165
+ };
166
+ }
167
+ }
168
+ }
169
+ exports.InternalServerException = InternalServerException;
170
+ /**
171
+ * Service unavailable exception
172
+ */
173
+ class ServiceUnavailableException extends BaseAppException {
174
+ constructor(service_name, reason = 'Service temporarily unavailable', details = {}, service) {
175
+ super(`${service_name} is unavailable: ${reason}`, app_constants_1.ERROR_CODES.SERVICE_UNAVAILABLE, app_constants_1.HTTP_STATUS.SERVICE_UNAVAILABLE, { service_name, reason, type: 'service_unavailable', ...details }, service);
176
+ }
177
+ }
178
+ exports.ServiceUnavailableException = ServiceUnavailableException;
179
+ /**
180
+ * Rate limit exception
181
+ */
182
+ class RateLimitException extends BaseAppException {
183
+ constructor(limit, window_seconds, retry_after_seconds, service) {
184
+ const message = `Rate limit exceeded: ${limit} requests per ${window_seconds} seconds`;
185
+ const details = {
186
+ limit,
187
+ window_seconds,
188
+ type: 'rate_limited'
189
+ };
190
+ if (retry_after_seconds) {
191
+ details['retry_after_seconds'] = retry_after_seconds;
192
+ }
193
+ super(message, app_constants_1.ERROR_CODES.RATE_LIMITED, app_constants_1.HTTP_STATUS.TOO_MANY_REQUESTS, details, service);
194
+ }
195
+ }
196
+ exports.RateLimitException = RateLimitException;
197
+ /**
198
+ * File-related exception
199
+ */
200
+ class FileException extends BaseAppException {
201
+ constructor(message, error_code, file_path, details = {}, service) {
202
+ const http_status = error_code === app_constants_1.ERROR_CODES.FILE_NOT_FOUND
203
+ ? app_constants_1.HTTP_STATUS.NOT_FOUND
204
+ : app_constants_1.HTTP_STATUS.BAD_REQUEST;
205
+ super(message, error_code, http_status, { file_path, type: 'file_error', ...details }, service);
206
+ }
207
+ /**
208
+ * Create exception for file not found
209
+ */
210
+ static fileNotFound(file_path, service) {
211
+ return new FileException(`File not found: ${file_path}`, app_constants_1.ERROR_CODES.FILE_NOT_FOUND, file_path, { type: 'not_found' }, service);
212
+ }
213
+ /**
214
+ * Create exception for file too large
215
+ */
216
+ static fileTooLarge(file_path, size_bytes, max_size_bytes, service) {
217
+ return new FileException(`File too large: ${file_path} (${size_bytes} bytes, max: ${max_size_bytes} bytes)`, app_constants_1.ERROR_CODES.FILE_TOO_LARGE, file_path, { size_bytes, max_size_bytes, type: 'too_large' }, service);
218
+ }
219
+ /**
220
+ * Create exception for invalid file type
221
+ */
222
+ static invalidFileType(file_path, detected_type, allowed_types, service) {
223
+ return new FileException(`Invalid file type: ${detected_type}. Allowed types: ${allowed_types.join(', ')}`, app_constants_1.ERROR_CODES.INVALID_FILE_TYPE, file_path, { detected_type, allowed_types, type: 'invalid_type' }, service);
224
+ }
225
+ }
226
+ exports.FileException = FileException;
227
+ /**
228
+ * Database-related exception
229
+ */
230
+ class DatabaseException extends BaseAppException {
231
+ constructor(message, error_code = app_constants_1.ERROR_CODES.DATABASE_ERROR, details = {}, service, original_error) {
232
+ super(message, error_code, app_constants_1.HTTP_STATUS.INTERNAL_SERVER_ERROR, details, service);
233
+ if (original_error) {
234
+ this.details['original_error'] = {
235
+ name: original_error.name,
236
+ message: original_error.message
237
+ };
238
+ }
239
+ }
240
+ /**
241
+ * Create exception for connection failure
242
+ */
243
+ static connectionFailed(database_name, service, original_error) {
244
+ return new DatabaseException(`Failed to connect to database: ${database_name}`, app_constants_1.ERROR_CODES.CONNECTION_FAILED, { database_name, type: 'connection_failed' }, service, original_error);
245
+ }
246
+ /**
247
+ * Create exception for query failure
248
+ */
249
+ static queryFailed(query_type, service, original_error) {
250
+ return new DatabaseException(`Database query failed: ${query_type}`, app_constants_1.ERROR_CODES.QUERY_FAILED, { query_type, type: 'query_failed' }, service, original_error);
251
+ }
252
+ }
253
+ exports.DatabaseException = DatabaseException;
254
+ /**
255
+ * External API exception
256
+ */
257
+ class ExternalApiException extends BaseAppException {
258
+ constructor(api_name, message, error_code = app_constants_1.ERROR_CODES.EXTERNAL_API_ERROR, status_code, details = {}, service) {
259
+ const http_status = status_code && status_code >= 400 && status_code < 600
260
+ ? status_code
261
+ : app_constants_1.HTTP_STATUS.BAD_GATEWAY;
262
+ super(`${api_name} API error: ${message}`, error_code, http_status, { api_name, external_status_code: status_code, type: 'external_api_error', ...details }, service);
263
+ }
264
+ /**
265
+ * Create exception for API unavailable
266
+ */
267
+ static apiUnavailable(api_name, service) {
268
+ return new ExternalApiException(api_name, 'API is currently unavailable', app_constants_1.ERROR_CODES.API_UNAVAILABLE, app_constants_1.HTTP_STATUS.SERVICE_UNAVAILABLE, { type: 'unavailable' }, service);
269
+ }
270
+ /**
271
+ * Create exception for API rate limited
272
+ */
273
+ static apiRateLimited(api_name, retry_after_seconds, service) {
274
+ return new ExternalApiException(api_name, 'API rate limit exceeded', app_constants_1.ERROR_CODES.API_RATE_LIMITED, app_constants_1.HTTP_STATUS.TOO_MANY_REQUESTS, { retry_after_seconds, type: 'rate_limited' }, service);
275
+ }
276
+ }
277
+ exports.ExternalApiException = ExternalApiException;
278
+ /**
279
+ * Timeout exception
280
+ */
281
+ class TimeoutException extends BaseAppException {
282
+ constructor(operation, timeout_ms, service) {
283
+ super(`Operation '${operation}' timed out after ${timeout_ms}ms`, app_constants_1.ERROR_CODES.TIMEOUT, app_constants_1.HTTP_STATUS.GATEWAY_TIMEOUT, { operation, timeout_ms, type: 'timeout' }, service);
284
+ }
285
+ }
286
+ exports.TimeoutException = TimeoutException;
287
+ //# sourceMappingURL=app-exceptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-exceptions.js","sourceRoot":"","sources":["../../../src/lib/exceptions/app-exceptions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @fileoverview Upload Middleware
3
+ *
4
+ * Multer middleware configuration for file uploads.
5
+ *
6
+ * @author MeasureOne, Inc.
7
+ * @version 1.0.0
8
+ */
9
+ import multer from "multer";
10
+ export declare const upload: multer.Multer;
11
+ export declare const upload_single: import("express").RequestHandler<import("express-serve-static-core").ParamsDictionary, any, any, import("qs").ParsedQs, Record<string, any>>;
12
+ export declare const upload_multiple: import("express").RequestHandler<import("express-serve-static-core").ParamsDictionary, any, any, import("qs").ParsedQs, Record<string, any>>;
13
+ //# sourceMappingURL=upload.middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload.middleware.d.ts","sourceRoot":"","sources":["../../../src/lib/middleware/upload.middleware.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,MAAM,MAAM,QAAQ,CAAC;AAa5B,eAAO,MAAM,MAAM,eAMjB,CAAC;AAGH,eAAO,MAAM,aAAa,8IAAwB,CAAC;AAGnD,eAAO,MAAM,eAAe,8IAA4B,CAAC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Upload Middleware
4
+ *
5
+ * Multer middleware configuration for file uploads.
6
+ *
7
+ * @author MeasureOne, Inc.
8
+ * @version 1.0.0
9
+ */
10
+ var __importDefault = (this && this.__importDefault) || function (mod) {
11
+ return (mod && mod.__esModule) ? mod : { "default": mod };
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.upload_multiple = exports.upload_single = exports.upload = void 0;
15
+ const multer_1 = __importDefault(require("multer"));
16
+ // Configure multer to use memory storage
17
+ const storage = multer_1.default.memoryStorage();
18
+ // File filter - accept all file types for now
19
+ const file_filter = (req, file, cb) => {
20
+ // Accept all files
21
+ cb(null, true);
22
+ };
23
+ // Create multer instance
24
+ exports.upload = (0, multer_1.default)({
25
+ storage,
26
+ fileFilter: file_filter,
27
+ limits: {
28
+ fileSize: 50 * 1024 * 1024, // 50MB limit
29
+ },
30
+ });
31
+ // Single file upload middleware
32
+ exports.upload_single = exports.upload.single("file");
33
+ // Multiple files upload middleware
34
+ exports.upload_multiple = exports.upload.array("files", 10);
35
+ //# sourceMappingURL=upload.middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload.middleware.js","sourceRoot":"","sources":["../../../src/lib/middleware/upload.middleware.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;AAEH,oDAA4B;AAG5B,yCAAyC;AACzC,MAAM,OAAO,GAAG,gBAAM,CAAC,aAAa,EAAE,CAAC;AAEvC,8CAA8C;AAC9C,MAAM,WAAW,GAAG,CAAC,GAAoB,EAAE,IAAyB,EAAE,EAA6B,EAAE,EAAE;IACrG,mBAAmB;IACnB,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACjB,CAAC,CAAC;AAEF,yBAAyB;AACZ,QAAA,MAAM,GAAG,IAAA,gBAAM,EAAC;IAC3B,OAAO;IACP,UAAU,EAAE,WAAW;IACvB,MAAM,EAAE;QACN,QAAQ,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,aAAa;KAC1C;CACF,CAAC,CAAC;AAEH,gCAAgC;AACnB,QAAA,aAAa,GAAG,cAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAEnD,mCAAmC;AACtB,QAAA,eAAe,GAAG,cAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @fileoverview Validation Middleware for Savant Orchestration Service
3
+ *
4
+ * Express middleware for request validation using validation functions.
5
+ * Provides consistent error handling for validation failures.
6
+ *
7
+ * @author MeasureOne, Inc.
8
+ * @version 1.0.0
9
+ */
10
+ import { Request, Response, NextFunction } from 'express';
11
+ import { z } from 'zod';
12
+ /**
13
+ * Create validation middleware for request body
14
+ * Accepts either a Zod schema or a validation function
15
+ */
16
+ export declare function validate_body(schema_or_validator: z.ZodType<any> | ((data: unknown) => any)): (req: Request, res: Response, next: NextFunction) => void;
17
+ /**
18
+ * Create validation middleware for query parameters
19
+ */
20
+ export declare function validate_query(validation_function: (data: unknown) => any): (req: Request, res: Response, next: NextFunction) => void;
21
+ /**
22
+ * Create validation middleware for path parameters
23
+ */
24
+ export declare function validate_params(validation_function: (data: unknown) => any): (req: Request, res: Response, next: NextFunction) => void;
25
+ /**
26
+ * Middleware to require request body
27
+ */
28
+ export declare function require_request_body(req: Request, res: Response, next: NextFunction): void;
29
+ //# sourceMappingURL=validation.middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.middleware.d.ts","sourceRoot":"","sources":["../../../src/lib/middleware/validation.middleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;;GAGG;AACH,wBAAgB,aAAa,CAAC,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,GAAG,CAAC,IAChF,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,UA0D1D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,mBAAmB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,GAAG,IAC9D,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,UAgE1D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,mBAAmB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,GAAG,IAC/D,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,UA8C1D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAY1F"}