@librechat/data-schemas 0.0.43 → 0.0.45

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 (502) hide show
  1. package/dist/admin/capabilities.cjs +192 -0
  2. package/dist/admin/capabilities.cjs.map +1 -0
  3. package/dist/admin/capabilities.es.js +182 -0
  4. package/dist/admin/capabilities.es.js.map +1 -0
  5. package/dist/app/agents.cjs +24 -0
  6. package/dist/app/agents.cjs.map +1 -0
  7. package/dist/app/agents.es.js +22 -0
  8. package/dist/app/agents.es.js.map +1 -0
  9. package/dist/app/assistants.cjs +56 -0
  10. package/dist/app/assistants.cjs.map +1 -0
  11. package/dist/app/assistants.es.js +53 -0
  12. package/dist/app/assistants.es.js.map +1 -0
  13. package/dist/app/azure.cjs +61 -0
  14. package/dist/app/azure.cjs.map +1 -0
  15. package/dist/app/azure.es.js +59 -0
  16. package/dist/app/azure.es.js.map +1 -0
  17. package/dist/app/endpoints.cjs +63 -0
  18. package/dist/app/endpoints.cjs.map +1 -0
  19. package/dist/app/endpoints.es.js +61 -0
  20. package/dist/app/endpoints.es.js.map +1 -0
  21. package/dist/app/interface.cjs +53 -0
  22. package/dist/app/interface.cjs.map +1 -0
  23. package/dist/app/interface.es.js +51 -0
  24. package/dist/app/interface.es.js.map +1 -0
  25. package/dist/app/memory.cjs +29 -0
  26. package/dist/app/memory.cjs.map +1 -0
  27. package/dist/app/memory.es.js +26 -0
  28. package/dist/app/memory.es.js.map +1 -0
  29. package/dist/app/ocr.cjs +21 -0
  30. package/dist/app/ocr.cjs.map +1 -0
  31. package/dist/app/ocr.es.js +19 -0
  32. package/dist/app/ocr.es.js.map +1 -0
  33. package/dist/app/resolution.cjs +51 -0
  34. package/dist/app/resolution.cjs.map +1 -0
  35. package/dist/app/resolution.es.js +49 -0
  36. package/dist/app/resolution.es.js.map +1 -0
  37. package/dist/app/service.cjs +108 -0
  38. package/dist/app/service.cjs.map +1 -0
  39. package/dist/app/service.es.js +106 -0
  40. package/dist/app/service.es.js.map +1 -0
  41. package/dist/app/specs.cjs +71 -0
  42. package/dist/app/specs.cjs.map +1 -0
  43. package/dist/app/specs.es.js +69 -0
  44. package/dist/app/specs.es.js.map +1 -0
  45. package/dist/app/turnstile.cjs +40 -0
  46. package/dist/app/turnstile.cjs.map +1 -0
  47. package/dist/app/turnstile.es.js +38 -0
  48. package/dist/app/turnstile.es.js.map +1 -0
  49. package/dist/app/vertex.cjs +156 -0
  50. package/dist/app/vertex.cjs.map +1 -0
  51. package/dist/app/vertex.es.js +152 -0
  52. package/dist/app/vertex.es.js.map +1 -0
  53. package/dist/app/web.cjs +87 -0
  54. package/dist/app/web.cjs.map +1 -0
  55. package/dist/app/web.es.js +82 -0
  56. package/dist/app/web.es.js.map +1 -0
  57. package/dist/common/enum.cjs +19 -0
  58. package/dist/common/enum.cjs.map +1 -0
  59. package/dist/common/enum.es.js +19 -0
  60. package/dist/common/enum.es.js.map +1 -0
  61. package/dist/config/meiliLogger.cjs +57 -0
  62. package/dist/config/meiliLogger.cjs.map +1 -0
  63. package/dist/config/meiliLogger.es.js +55 -0
  64. package/dist/config/meiliLogger.es.js.map +1 -0
  65. package/dist/config/parsers.cjs +224 -0
  66. package/dist/config/parsers.cjs.map +1 -0
  67. package/dist/config/parsers.es.js +219 -0
  68. package/dist/config/parsers.es.js.map +1 -0
  69. package/dist/config/tenantContext.cjs +30 -0
  70. package/dist/config/tenantContext.cjs.map +1 -0
  71. package/dist/config/tenantContext.es.js +25 -0
  72. package/dist/config/tenantContext.es.js.map +1 -0
  73. package/dist/config/utils.cjs +37 -0
  74. package/dist/config/utils.cjs.map +1 -0
  75. package/dist/config/utils.es.js +35 -0
  76. package/dist/config/utils.es.js.map +1 -0
  77. package/dist/config/winston.cjs +93 -0
  78. package/dist/config/winston.cjs.map +1 -0
  79. package/dist/config/winston.es.js +91 -0
  80. package/dist/config/winston.es.js.map +1 -0
  81. package/dist/crypto/index.cjs +156 -0
  82. package/dist/crypto/index.cjs.map +1 -0
  83. package/dist/crypto/index.es.js +145 -0
  84. package/dist/crypto/index.es.js.map +1 -0
  85. package/dist/index.cjs +142 -11734
  86. package/dist/index.cjs.map +1 -1
  87. package/dist/index.es.js +52 -11652
  88. package/dist/index.es.js.map +1 -1
  89. package/dist/methods/accessRole.cjs +210 -0
  90. package/dist/methods/accessRole.cjs.map +1 -0
  91. package/dist/methods/accessRole.es.js +208 -0
  92. package/dist/methods/accessRole.es.js.map +1 -0
  93. package/dist/methods/aclEntry.cjs +361 -0
  94. package/dist/methods/aclEntry.cjs.map +1 -0
  95. package/dist/methods/aclEntry.es.js +359 -0
  96. package/dist/methods/aclEntry.es.js.map +1 -0
  97. package/dist/methods/action.cjs +59 -0
  98. package/dist/methods/action.cjs.map +1 -0
  99. package/dist/methods/action.es.js +57 -0
  100. package/dist/methods/action.es.js.map +1 -0
  101. package/dist/methods/agent.cjs +580 -0
  102. package/dist/methods/agent.cjs.map +1 -0
  103. package/dist/methods/agent.es.js +578 -0
  104. package/dist/methods/agent.es.js.map +1 -0
  105. package/dist/methods/agentApiKey.cjs +140 -0
  106. package/dist/methods/agentApiKey.cjs.map +1 -0
  107. package/dist/methods/agentApiKey.es.js +138 -0
  108. package/dist/methods/agentApiKey.es.js.map +1 -0
  109. package/dist/methods/agentCategory.cjs +226 -0
  110. package/dist/methods/agentCategory.cjs.map +1 -0
  111. package/dist/methods/agentCategory.es.js +224 -0
  112. package/dist/methods/agentCategory.es.js.map +1 -0
  113. package/dist/methods/assistant.cjs +53 -0
  114. package/dist/methods/assistant.cjs.map +1 -0
  115. package/dist/methods/assistant.es.js +51 -0
  116. package/dist/methods/assistant.es.js.map +1 -0
  117. package/dist/methods/banner.cjs +32 -0
  118. package/dist/methods/banner.cjs.map +1 -0
  119. package/dist/methods/banner.es.js +30 -0
  120. package/dist/methods/banner.es.js.map +1 -0
  121. package/dist/methods/categories.cjs +33 -0
  122. package/dist/methods/categories.cjs.map +1 -0
  123. package/dist/methods/categories.es.js +31 -0
  124. package/dist/methods/categories.es.js.map +1 -0
  125. package/dist/methods/config.cjs +106 -0
  126. package/dist/methods/config.cjs.map +1 -0
  127. package/dist/methods/config.es.js +104 -0
  128. package/dist/methods/config.es.js.map +1 -0
  129. package/dist/methods/conversation.cjs +344 -0
  130. package/dist/methods/conversation.cjs.map +1 -0
  131. package/dist/methods/conversation.es.js +342 -0
  132. package/dist/methods/conversation.es.js.map +1 -0
  133. package/dist/methods/conversationTag.cjs +234 -0
  134. package/dist/methods/conversationTag.cjs.map +1 -0
  135. package/dist/methods/conversationTag.es.js +232 -0
  136. package/dist/methods/conversationTag.es.js.map +1 -0
  137. package/dist/methods/file.cjs +315 -0
  138. package/dist/methods/file.cjs.map +1 -0
  139. package/dist/methods/file.es.js +313 -0
  140. package/dist/methods/file.es.js.map +1 -0
  141. package/dist/methods/index.cjs +135 -0
  142. package/dist/methods/index.cjs.map +1 -0
  143. package/dist/methods/index.es.js +130 -0
  144. package/dist/methods/index.es.js.map +1 -0
  145. package/dist/methods/key.cjs +136 -0
  146. package/dist/methods/key.cjs.map +1 -0
  147. package/dist/methods/key.es.js +134 -0
  148. package/dist/methods/key.es.js.map +1 -0
  149. package/dist/methods/mcpServer.cjs +259 -0
  150. package/dist/methods/mcpServer.cjs.map +1 -0
  151. package/dist/methods/mcpServer.es.js +257 -0
  152. package/dist/methods/mcpServer.es.js.map +1 -0
  153. package/dist/methods/memory.cjs +145 -0
  154. package/dist/methods/memory.cjs.map +1 -0
  155. package/dist/methods/memory.es.js +143 -0
  156. package/dist/methods/memory.es.js.map +1 -0
  157. package/dist/methods/message.cjs +280 -0
  158. package/dist/methods/message.cjs.map +1 -0
  159. package/dist/methods/message.es.js +278 -0
  160. package/dist/methods/message.es.js.map +1 -0
  161. package/dist/methods/pluginAuth.cjs +108 -0
  162. package/dist/methods/pluginAuth.cjs.map +1 -0
  163. package/dist/methods/pluginAuth.es.js +106 -0
  164. package/dist/methods/pluginAuth.es.js.map +1 -0
  165. package/dist/methods/preset.cjs +105 -0
  166. package/dist/methods/preset.cjs.map +1 -0
  167. package/dist/methods/preset.es.js +103 -0
  168. package/dist/methods/preset.es.js.map +1 -0
  169. package/dist/methods/prompt.cjs +546 -0
  170. package/dist/methods/prompt.cjs.map +1 -0
  171. package/dist/methods/prompt.es.js +544 -0
  172. package/dist/methods/prompt.es.js.map +1 -0
  173. package/dist/methods/role.cjs +290 -0
  174. package/dist/methods/role.cjs.map +1 -0
  175. package/dist/methods/role.es.js +288 -0
  176. package/dist/methods/role.es.js.map +1 -0
  177. package/dist/methods/session.cjs +221 -0
  178. package/dist/methods/session.cjs.map +1 -0
  179. package/dist/methods/session.es.js +217 -0
  180. package/dist/methods/session.es.js.map +1 -0
  181. package/dist/methods/share.cjs +474 -0
  182. package/dist/methods/share.cjs.map +1 -0
  183. package/dist/methods/share.es.js +472 -0
  184. package/dist/methods/share.es.js.map +1 -0
  185. package/dist/methods/spendTokens.cjs +109 -0
  186. package/dist/methods/spendTokens.cjs.map +1 -0
  187. package/dist/methods/spendTokens.es.js +107 -0
  188. package/dist/methods/spendTokens.es.js.map +1 -0
  189. package/dist/methods/systemGrant.cjs +190 -0
  190. package/dist/methods/systemGrant.cjs.map +1 -0
  191. package/dist/methods/systemGrant.es.js +188 -0
  192. package/dist/methods/systemGrant.es.js.map +1 -0
  193. package/dist/methods/token.cjs +117 -0
  194. package/dist/methods/token.cjs.map +1 -0
  195. package/dist/methods/token.es.js +115 -0
  196. package/dist/methods/token.es.js.map +1 -0
  197. package/dist/methods/toolCall.cjs +91 -0
  198. package/dist/methods/toolCall.cjs.map +1 -0
  199. package/dist/methods/toolCall.es.js +89 -0
  200. package/dist/methods/toolCall.es.js.map +1 -0
  201. package/dist/methods/transaction.cjs +305 -0
  202. package/dist/methods/transaction.cjs.map +1 -0
  203. package/dist/methods/transaction.es.js +303 -0
  204. package/dist/methods/transaction.es.js.map +1 -0
  205. package/dist/methods/tx.cjs +443 -0
  206. package/dist/methods/tx.cjs.map +1 -0
  207. package/dist/methods/tx.es.js +437 -0
  208. package/dist/methods/tx.es.js.map +1 -0
  209. package/dist/methods/user.cjs +269 -0
  210. package/dist/methods/user.cjs.map +1 -0
  211. package/dist/methods/user.es.js +266 -0
  212. package/dist/methods/user.es.js.map +1 -0
  213. package/dist/methods/userGroup.cjs +518 -0
  214. package/dist/methods/userGroup.cjs.map +1 -0
  215. package/dist/methods/userGroup.es.js +516 -0
  216. package/dist/methods/userGroup.es.js.map +1 -0
  217. package/dist/migrations/tenantIndexes.cjs +85 -0
  218. package/dist/migrations/tenantIndexes.cjs.map +1 -0
  219. package/dist/migrations/tenantIndexes.es.js +82 -0
  220. package/dist/migrations/tenantIndexes.es.js.map +1 -0
  221. package/dist/models/accessRole.cjs +12 -0
  222. package/dist/models/accessRole.cjs.map +1 -0
  223. package/dist/models/accessRole.es.js +10 -0
  224. package/dist/models/accessRole.es.js.map +1 -0
  225. package/dist/models/aclEntry.cjs +12 -0
  226. package/dist/models/aclEntry.cjs.map +1 -0
  227. package/dist/models/aclEntry.es.js +10 -0
  228. package/dist/models/aclEntry.es.js.map +1 -0
  229. package/dist/models/action.cjs +12 -0
  230. package/dist/models/action.cjs.map +1 -0
  231. package/dist/models/action.es.js +10 -0
  232. package/dist/models/action.es.js.map +1 -0
  233. package/dist/models/agent.cjs +12 -0
  234. package/dist/models/agent.cjs.map +1 -0
  235. package/dist/models/agent.es.js +10 -0
  236. package/dist/models/agent.es.js.map +1 -0
  237. package/dist/models/agentApiKey.cjs +12 -0
  238. package/dist/models/agentApiKey.cjs.map +1 -0
  239. package/dist/models/agentApiKey.es.js +10 -0
  240. package/dist/models/agentApiKey.es.js.map +1 -0
  241. package/dist/models/agentCategory.cjs +13 -0
  242. package/dist/models/agentCategory.cjs.map +1 -0
  243. package/dist/models/agentCategory.es.js +11 -0
  244. package/dist/models/agentCategory.es.js.map +1 -0
  245. package/dist/models/assistant.cjs +12 -0
  246. package/dist/models/assistant.cjs.map +1 -0
  247. package/dist/models/assistant.es.js +10 -0
  248. package/dist/models/assistant.es.js.map +1 -0
  249. package/dist/models/balance.cjs +12 -0
  250. package/dist/models/balance.cjs.map +1 -0
  251. package/dist/models/balance.es.js +10 -0
  252. package/dist/models/balance.es.js.map +1 -0
  253. package/dist/models/banner.cjs +12 -0
  254. package/dist/models/banner.cjs.map +1 -0
  255. package/dist/models/banner.es.js +10 -0
  256. package/dist/models/banner.es.js.map +1 -0
  257. package/dist/models/config.cjs +12 -0
  258. package/dist/models/config.cjs.map +1 -0
  259. package/dist/models/config.es.js +10 -0
  260. package/dist/models/config.es.js.map +1 -0
  261. package/dist/models/conversationTag.cjs +13 -0
  262. package/dist/models/conversationTag.cjs.map +1 -0
  263. package/dist/models/conversationTag.es.js +11 -0
  264. package/dist/models/conversationTag.es.js.map +1 -0
  265. package/dist/models/convo.cjs +23 -0
  266. package/dist/models/convo.cjs.map +1 -0
  267. package/dist/models/convo.es.js +21 -0
  268. package/dist/models/convo.es.js.map +1 -0
  269. package/dist/models/file.cjs +12 -0
  270. package/dist/models/file.cjs.map +1 -0
  271. package/dist/models/file.es.js +10 -0
  272. package/dist/models/file.es.js.map +1 -0
  273. package/dist/models/group.cjs +12 -0
  274. package/dist/models/group.cjs.map +1 -0
  275. package/dist/models/group.es.js +10 -0
  276. package/dist/models/group.es.js.map +1 -0
  277. package/dist/models/index.cjs +73 -0
  278. package/dist/models/index.cjs.map +1 -0
  279. package/dist/models/index.es.js +71 -0
  280. package/dist/models/index.es.js.map +1 -0
  281. package/dist/models/key.cjs +12 -0
  282. package/dist/models/key.cjs.map +1 -0
  283. package/dist/models/key.es.js +10 -0
  284. package/dist/models/key.es.js.map +1 -0
  285. package/dist/models/mcpServer.cjs +12 -0
  286. package/dist/models/mcpServer.cjs.map +1 -0
  287. package/dist/models/mcpServer.es.js +10 -0
  288. package/dist/models/mcpServer.es.js.map +1 -0
  289. package/dist/models/memory.cjs +12 -0
  290. package/dist/models/memory.cjs.map +1 -0
  291. package/dist/models/memory.es.js +10 -0
  292. package/dist/models/memory.es.js.map +1 -0
  293. package/dist/models/message.cjs +22 -0
  294. package/dist/models/message.cjs.map +1 -0
  295. package/dist/models/message.es.js +20 -0
  296. package/dist/models/message.es.js.map +1 -0
  297. package/dist/models/pluginAuth.cjs +12 -0
  298. package/dist/models/pluginAuth.cjs.map +1 -0
  299. package/dist/models/pluginAuth.es.js +10 -0
  300. package/dist/models/pluginAuth.es.js.map +1 -0
  301. package/dist/models/plugins/mongoMeili.cjs +547 -0
  302. package/dist/models/plugins/mongoMeili.cjs.map +1 -0
  303. package/dist/models/plugins/mongoMeili.es.js +545 -0
  304. package/dist/models/plugins/mongoMeili.es.js.map +1 -0
  305. package/dist/models/plugins/tenantIsolation.cjs +140 -0
  306. package/dist/models/plugins/tenantIsolation.cjs.map +1 -0
  307. package/dist/models/plugins/tenantIsolation.es.js +138 -0
  308. package/dist/models/plugins/tenantIsolation.es.js.map +1 -0
  309. package/dist/models/preset.cjs +12 -0
  310. package/dist/models/preset.cjs.map +1 -0
  311. package/dist/models/preset.es.js +10 -0
  312. package/dist/models/preset.es.js.map +1 -0
  313. package/dist/models/prompt.cjs +12 -0
  314. package/dist/models/prompt.cjs.map +1 -0
  315. package/dist/models/prompt.es.js +10 -0
  316. package/dist/models/prompt.es.js.map +1 -0
  317. package/dist/models/promptGroup.cjs +13 -0
  318. package/dist/models/promptGroup.cjs.map +1 -0
  319. package/dist/models/promptGroup.es.js +11 -0
  320. package/dist/models/promptGroup.es.js.map +1 -0
  321. package/dist/models/role.cjs +12 -0
  322. package/dist/models/role.cjs.map +1 -0
  323. package/dist/models/role.es.js +10 -0
  324. package/dist/models/role.es.js.map +1 -0
  325. package/dist/models/session.cjs +12 -0
  326. package/dist/models/session.cjs.map +1 -0
  327. package/dist/models/session.es.js +10 -0
  328. package/dist/models/session.es.js.map +1 -0
  329. package/dist/models/sharedLink.cjs +12 -0
  330. package/dist/models/sharedLink.cjs.map +1 -0
  331. package/dist/models/sharedLink.es.js +10 -0
  332. package/dist/models/sharedLink.es.js.map +1 -0
  333. package/dist/models/systemGrant.cjs +16 -0
  334. package/dist/models/systemGrant.cjs.map +1 -0
  335. package/dist/models/systemGrant.es.js +14 -0
  336. package/dist/models/systemGrant.es.js.map +1 -0
  337. package/dist/models/token.cjs +12 -0
  338. package/dist/models/token.cjs.map +1 -0
  339. package/dist/models/token.es.js +10 -0
  340. package/dist/models/token.es.js.map +1 -0
  341. package/dist/models/toolCall.cjs +12 -0
  342. package/dist/models/toolCall.cjs.map +1 -0
  343. package/dist/models/toolCall.es.js +10 -0
  344. package/dist/models/toolCall.es.js.map +1 -0
  345. package/dist/models/transaction.cjs +12 -0
  346. package/dist/models/transaction.cjs.map +1 -0
  347. package/dist/models/transaction.es.js +10 -0
  348. package/dist/models/transaction.es.js.map +1 -0
  349. package/dist/models/user.cjs +12 -0
  350. package/dist/models/user.cjs.map +1 -0
  351. package/dist/models/user.es.js +10 -0
  352. package/dist/models/user.es.js.map +1 -0
  353. package/dist/schema/accessRole.cjs +34 -0
  354. package/dist/schema/accessRole.cjs.map +1 -0
  355. package/dist/schema/accessRole.es.js +32 -0
  356. package/dist/schema/accessRole.es.js.map +1 -0
  357. package/dist/schema/aclEntry.cjs +74 -0
  358. package/dist/schema/aclEntry.cjs.map +1 -0
  359. package/dist/schema/aclEntry.es.js +72 -0
  360. package/dist/schema/aclEntry.es.js.map +1 -0
  361. package/dist/schema/action.cjs +54 -0
  362. package/dist/schema/action.cjs.map +1 -0
  363. package/dist/schema/action.es.js +52 -0
  364. package/dist/schema/action.es.js.map +1 -0
  365. package/dist/schema/agent.cjs +128 -0
  366. package/dist/schema/agent.cjs.map +1 -0
  367. package/dist/schema/agent.es.js +126 -0
  368. package/dist/schema/agent.es.js.map +1 -0
  369. package/dist/schema/agentApiKey.cjs +50 -0
  370. package/dist/schema/agentApiKey.cjs.map +1 -0
  371. package/dist/schema/agentApiKey.es.js +48 -0
  372. package/dist/schema/agentApiKey.es.js.map +1 -0
  373. package/dist/schema/agentCategory.cjs +49 -0
  374. package/dist/schema/agentCategory.cjs.map +1 -0
  375. package/dist/schema/agentCategory.es.js +47 -0
  376. package/dist/schema/agentCategory.es.js.map +1 -0
  377. package/dist/schema/assistant.cjs +42 -0
  378. package/dist/schema/assistant.cjs.map +1 -0
  379. package/dist/schema/assistant.es.js +40 -0
  380. package/dist/schema/assistant.es.js.map +1 -0
  381. package/dist/schema/balance.cjs +47 -0
  382. package/dist/schema/balance.cjs.map +1 -0
  383. package/dist/schema/balance.es.js +45 -0
  384. package/dist/schema/balance.es.js.map +1 -0
  385. package/dist/schema/banner.cjs +42 -0
  386. package/dist/schema/banner.cjs.map +1 -0
  387. package/dist/schema/banner.es.js +40 -0
  388. package/dist/schema/banner.es.js.map +1 -0
  389. package/dist/schema/categories.cjs +23 -0
  390. package/dist/schema/categories.cjs.map +1 -0
  391. package/dist/schema/categories.es.js +21 -0
  392. package/dist/schema/categories.es.js.map +1 -0
  393. package/dist/schema/config.cjs +59 -0
  394. package/dist/schema/config.cjs.map +1 -0
  395. package/dist/schema/config.es.js +57 -0
  396. package/dist/schema/config.es.js.map +1 -0
  397. package/dist/schema/conversationTag.cjs +36 -0
  398. package/dist/schema/conversationTag.cjs.map +1 -0
  399. package/dist/schema/conversationTag.es.js +34 -0
  400. package/dist/schema/conversationTag.es.js.map +1 -0
  401. package/dist/schema/convo.cjs +52 -0
  402. package/dist/schema/convo.cjs.map +1 -0
  403. package/dist/schema/convo.es.js +50 -0
  404. package/dist/schema/convo.es.js.map +1 -0
  405. package/dist/schema/defaults.cjs +168 -0
  406. package/dist/schema/defaults.cjs.map +1 -0
  407. package/dist/schema/defaults.es.js +166 -0
  408. package/dist/schema/defaults.es.js.map +1 -0
  409. package/dist/schema/file.cjs +92 -0
  410. package/dist/schema/file.cjs.map +1 -0
  411. package/dist/schema/file.es.js +90 -0
  412. package/dist/schema/file.es.js.map +1 -0
  413. package/dist/schema/group.cjs +56 -0
  414. package/dist/schema/group.cjs.map +1 -0
  415. package/dist/schema/group.es.js +54 -0
  416. package/dist/schema/group.es.js.map +1 -0
  417. package/dist/schema/key.cjs +30 -0
  418. package/dist/schema/key.cjs.map +1 -0
  419. package/dist/schema/key.es.js +28 -0
  420. package/dist/schema/key.es.js.map +1 -0
  421. package/dist/schema/mcpServer.cjs +33 -0
  422. package/dist/schema/mcpServer.cjs.map +1 -0
  423. package/dist/schema/mcpServer.es.js +31 -0
  424. package/dist/schema/mcpServer.es.js.map +1 -0
  425. package/dist/schema/memory.cjs +39 -0
  426. package/dist/schema/memory.cjs.map +1 -0
  427. package/dist/schema/memory.es.js +37 -0
  428. package/dist/schema/memory.es.js.map +1 -0
  429. package/dist/schema/message.cjs +167 -0
  430. package/dist/schema/message.cjs.map +1 -0
  431. package/dist/schema/message.es.js +165 -0
  432. package/dist/schema/message.es.js.map +1 -0
  433. package/dist/schema/pluginAuth.cjs +28 -0
  434. package/dist/schema/pluginAuth.cjs.map +1 -0
  435. package/dist/schema/pluginAuth.es.js +26 -0
  436. package/dist/schema/pluginAuth.es.js.map +1 -0
  437. package/dist/schema/preset.cjs +36 -0
  438. package/dist/schema/preset.cjs.map +1 -0
  439. package/dist/schema/preset.es.js +34 -0
  440. package/dist/schema/preset.es.js.map +1 -0
  441. package/dist/schema/prompt.cjs +36 -0
  442. package/dist/schema/prompt.cjs.map +1 -0
  443. package/dist/schema/prompt.es.js +34 -0
  444. package/dist/schema/prompt.es.js.map +1 -0
  445. package/dist/schema/promptGroup.cjs +65 -0
  446. package/dist/schema/promptGroup.cjs.map +1 -0
  447. package/dist/schema/promptGroup.es.js +63 -0
  448. package/dist/schema/promptGroup.es.js.map +1 -0
  449. package/dist/schema/role.cjs +84 -0
  450. package/dist/schema/role.cjs.map +1 -0
  451. package/dist/schema/role.es.js +82 -0
  452. package/dist/schema/role.es.js.map +1 -0
  453. package/dist/schema/session.cjs +27 -0
  454. package/dist/schema/session.cjs.map +1 -0
  455. package/dist/schema/session.es.js +25 -0
  456. package/dist/schema/session.es.js.map +1 -0
  457. package/dist/schema/share.cjs +40 -0
  458. package/dist/schema/share.cjs.map +1 -0
  459. package/dist/schema/share.es.js +38 -0
  460. package/dist/schema/share.es.js.map +1 -0
  461. package/dist/schema/systemGrant.cjs +66 -0
  462. package/dist/schema/systemGrant.cjs.map +1 -0
  463. package/dist/schema/systemGrant.es.js +64 -0
  464. package/dist/schema/systemGrant.es.js.map +1 -0
  465. package/dist/schema/token.cjs +45 -0
  466. package/dist/schema/token.cjs.map +1 -0
  467. package/dist/schema/token.es.js +43 -0
  468. package/dist/schema/token.es.js.map +1 -0
  469. package/dist/schema/toolCall.cjs +44 -0
  470. package/dist/schema/toolCall.cjs.map +1 -0
  471. package/dist/schema/toolCall.es.js +42 -0
  472. package/dist/schema/toolCall.es.js.map +1 -0
  473. package/dist/schema/transaction.cjs +48 -0
  474. package/dist/schema/transaction.cjs.map +1 -0
  475. package/dist/schema/transaction.es.js +46 -0
  476. package/dist/schema/transaction.es.js.map +1 -0
  477. package/dist/schema/user.cjs +165 -0
  478. package/dist/schema/user.cjs.map +1 -0
  479. package/dist/schema/user.es.js +163 -0
  480. package/dist/schema/user.es.js.map +1 -0
  481. package/dist/types/methods/config.d.ts +1 -0
  482. package/dist/utils/object-traverse.cjs +158 -0
  483. package/dist/utils/object-traverse.cjs.map +1 -0
  484. package/dist/utils/object-traverse.es.js +156 -0
  485. package/dist/utils/object-traverse.es.js.map +1 -0
  486. package/dist/utils/principal.cjs +24 -0
  487. package/dist/utils/principal.cjs.map +1 -0
  488. package/dist/utils/principal.es.js +22 -0
  489. package/dist/utils/principal.es.js.map +1 -0
  490. package/dist/utils/string.cjs +11 -0
  491. package/dist/utils/string.cjs.map +1 -0
  492. package/dist/utils/string.es.js +9 -0
  493. package/dist/utils/string.es.js.map +1 -0
  494. package/dist/utils/tempChatRetention.cjs +70 -0
  495. package/dist/utils/tempChatRetention.cjs.map +1 -0
  496. package/dist/utils/tempChatRetention.es.js +64 -0
  497. package/dist/utils/tempChatRetention.es.js.map +1 -0
  498. package/dist/utils/transactions.cjs +60 -0
  499. package/dist/utils/transactions.cjs.map +1 -0
  500. package/dist/utils/transactions.es.js +56 -0
  501. package/dist/utils/transactions.es.js.map +1 -0
  502. package/package.json +7 -1
@@ -0,0 +1,192 @@
1
+ 'use strict';
2
+
3
+ var librechatDataProvider = require('librechat-data-provider');
4
+
5
+ // ---------------------------------------------------------------------------
6
+ // System Capabilities
7
+ // ---------------------------------------------------------------------------
8
+ /**
9
+ * The canonical set of base system capabilities.
10
+ *
11
+ * These are used by the admin panel and LibreChat API to gate access to
12
+ * admin features. Config-section-derived capabilities (e.g.
13
+ * `manage:configs:endpoints`) are built on top of these where the
14
+ * configSchema is available.
15
+ */
16
+ const SystemCapabilities = {
17
+ ACCESS_ADMIN: 'access:admin',
18
+ READ_USERS: 'read:users',
19
+ MANAGE_USERS: 'manage:users',
20
+ READ_GROUPS: 'read:groups',
21
+ MANAGE_GROUPS: 'manage:groups',
22
+ READ_ROLES: 'read:roles',
23
+ MANAGE_ROLES: 'manage:roles',
24
+ READ_CONFIGS: 'read:configs',
25
+ MANAGE_CONFIGS: 'manage:configs',
26
+ ASSIGN_CONFIGS: 'assign:configs',
27
+ READ_USAGE: 'read:usage',
28
+ READ_AGENTS: 'read:agents',
29
+ MANAGE_AGENTS: 'manage:agents',
30
+ MANAGE_MCP_SERVERS: 'manage:mcpservers',
31
+ READ_PROMPTS: 'read:prompts',
32
+ MANAGE_PROMPTS: 'manage:prompts',
33
+ /** Reserved — not yet enforced by any middleware. */
34
+ READ_ASSISTANTS: 'read:assistants',
35
+ MANAGE_ASSISTANTS: 'manage:assistants',
36
+ };
37
+ /**
38
+ * Capabilities that are implied by holding a broader capability.
39
+ * e.g. `MANAGE_USERS` implies `READ_USERS`.
40
+ */
41
+ const CapabilityImplications = {
42
+ [SystemCapabilities.MANAGE_USERS]: [SystemCapabilities.READ_USERS],
43
+ [SystemCapabilities.MANAGE_GROUPS]: [SystemCapabilities.READ_GROUPS],
44
+ [SystemCapabilities.MANAGE_ROLES]: [SystemCapabilities.READ_ROLES],
45
+ [SystemCapabilities.MANAGE_CONFIGS]: [SystemCapabilities.READ_CONFIGS],
46
+ [SystemCapabilities.MANAGE_AGENTS]: [SystemCapabilities.READ_AGENTS],
47
+ [SystemCapabilities.MANAGE_PROMPTS]: [SystemCapabilities.READ_PROMPTS],
48
+ [SystemCapabilities.MANAGE_ASSISTANTS]: [SystemCapabilities.READ_ASSISTANTS],
49
+ };
50
+ // ---------------------------------------------------------------------------
51
+ // Capability utility functions
52
+ // ---------------------------------------------------------------------------
53
+ /** Reverse map: for a given read capability, which manage capabilities imply it? */
54
+ const _impliedBy = {};
55
+ for (const [manage, reads] of Object.entries(CapabilityImplications)) {
56
+ for (const read of reads) {
57
+ if (!_impliedBy[read]) {
58
+ _impliedBy[read] = [];
59
+ }
60
+ _impliedBy[read].push(manage);
61
+ }
62
+ }
63
+ /**
64
+ * Check whether a set of held capabilities satisfies a required capability,
65
+ * accounting for the manage→read implication hierarchy.
66
+ */
67
+ function hasImpliedCapability(held, required) {
68
+ if (held.includes(required)) {
69
+ return true;
70
+ }
71
+ const impliers = _impliedBy[required];
72
+ if (impliers) {
73
+ for (const cap of impliers) {
74
+ if (held.includes(cap)) {
75
+ return true;
76
+ }
77
+ }
78
+ }
79
+ return false;
80
+ }
81
+ /**
82
+ * Given a set of directly-held capabilities, compute the full set including
83
+ * all implied capabilities.
84
+ */
85
+ function expandImplications(directCaps) {
86
+ const expanded = new Set(directCaps);
87
+ for (const cap of directCaps) {
88
+ const implied = CapabilityImplications[cap];
89
+ if (implied) {
90
+ for (const imp of implied) {
91
+ expanded.add(imp);
92
+ }
93
+ }
94
+ }
95
+ return Array.from(expanded);
96
+ }
97
+ // ---------------------------------------------------------------------------
98
+ // Resource & config capability mappings
99
+ // ---------------------------------------------------------------------------
100
+ /**
101
+ * Maps each ACL ResourceType to the SystemCapability that grants
102
+ * unrestricted management access. Typed as `Record<ResourceType, …>`
103
+ * so adding a new ResourceType variant causes a compile error until a
104
+ * capability is assigned here.
105
+ */
106
+ const ResourceCapabilityMap = {
107
+ [librechatDataProvider.ResourceType.AGENT]: SystemCapabilities.MANAGE_AGENTS,
108
+ [librechatDataProvider.ResourceType.PROMPTGROUP]: SystemCapabilities.MANAGE_PROMPTS,
109
+ [librechatDataProvider.ResourceType.MCPSERVER]: SystemCapabilities.MANAGE_MCP_SERVERS,
110
+ [librechatDataProvider.ResourceType.REMOTE_AGENT]: SystemCapabilities.MANAGE_AGENTS,
111
+ };
112
+ /**
113
+ * Derives a section-level config management capability from a configSchema key.
114
+ * @example configCapability('endpoints') → 'manage:configs:endpoints'
115
+ *
116
+ * TODO: Section-level config capabilities are scaffolded but not yet active.
117
+ * To activate delegated config management:
118
+ * 1. Expose POST/DELETE /api/admin/grants endpoints (wiring grantCapability/revokeCapability)
119
+ * 2. Seed section-specific grants for delegated admin roles via those endpoints
120
+ * 3. Guard config write handlers with hasConfigCapability(user, section)
121
+ */
122
+ function configCapability(section) {
123
+ return `manage:configs:${section}`;
124
+ }
125
+ /**
126
+ * Derives a section-level config read capability from a configSchema key.
127
+ * @example readConfigCapability('endpoints') → 'read:configs:endpoints'
128
+ */
129
+ function readConfigCapability(section) {
130
+ return `read:configs:${section}`;
131
+ }
132
+ // ---------------------------------------------------------------------------
133
+ // Reserved principal IDs
134
+ // ---------------------------------------------------------------------------
135
+ /** Reserved principalId for the DB base config (overrides YAML defaults). */
136
+ const BASE_CONFIG_PRINCIPAL_ID = '__base__';
137
+ /** Pre-defined UI categories for grouping capabilities in the admin panel. */
138
+ const CAPABILITY_CATEGORIES = [
139
+ {
140
+ key: 'users',
141
+ labelKey: 'com_cap_cat_users',
142
+ capabilities: [SystemCapabilities.MANAGE_USERS, SystemCapabilities.READ_USERS],
143
+ },
144
+ {
145
+ key: 'groups',
146
+ labelKey: 'com_cap_cat_groups',
147
+ capabilities: [SystemCapabilities.MANAGE_GROUPS, SystemCapabilities.READ_GROUPS],
148
+ },
149
+ {
150
+ key: 'roles',
151
+ labelKey: 'com_cap_cat_roles',
152
+ capabilities: [SystemCapabilities.MANAGE_ROLES, SystemCapabilities.READ_ROLES],
153
+ },
154
+ {
155
+ key: 'config',
156
+ labelKey: 'com_cap_cat_config',
157
+ capabilities: [
158
+ SystemCapabilities.MANAGE_CONFIGS,
159
+ SystemCapabilities.READ_CONFIGS,
160
+ SystemCapabilities.ASSIGN_CONFIGS,
161
+ ],
162
+ },
163
+ {
164
+ key: 'content',
165
+ labelKey: 'com_cap_cat_content',
166
+ capabilities: [
167
+ SystemCapabilities.MANAGE_AGENTS,
168
+ SystemCapabilities.READ_AGENTS,
169
+ SystemCapabilities.MANAGE_PROMPTS,
170
+ SystemCapabilities.READ_PROMPTS,
171
+ SystemCapabilities.MANAGE_ASSISTANTS,
172
+ SystemCapabilities.READ_ASSISTANTS,
173
+ SystemCapabilities.MANAGE_MCP_SERVERS,
174
+ ],
175
+ },
176
+ {
177
+ key: 'system',
178
+ labelKey: 'com_cap_cat_system',
179
+ capabilities: [SystemCapabilities.ACCESS_ADMIN, SystemCapabilities.READ_USAGE],
180
+ },
181
+ ];
182
+
183
+ exports.BASE_CONFIG_PRINCIPAL_ID = BASE_CONFIG_PRINCIPAL_ID;
184
+ exports.CAPABILITY_CATEGORIES = CAPABILITY_CATEGORIES;
185
+ exports.CapabilityImplications = CapabilityImplications;
186
+ exports.ResourceCapabilityMap = ResourceCapabilityMap;
187
+ exports.SystemCapabilities = SystemCapabilities;
188
+ exports.configCapability = configCapability;
189
+ exports.expandImplications = expandImplications;
190
+ exports.hasImpliedCapability = hasImpliedCapability;
191
+ exports.readConfigCapability = readConfigCapability;
192
+ //# sourceMappingURL=capabilities.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.cjs","sources":["../../src/admin/capabilities.ts"],"sourcesContent":[null],"names":["ResourceType"],"mappings":"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"}
@@ -0,0 +1,182 @@
1
+ import { ResourceType } from 'librechat-data-provider';
2
+
3
+ // ---------------------------------------------------------------------------
4
+ // System Capabilities
5
+ // ---------------------------------------------------------------------------
6
+ /**
7
+ * The canonical set of base system capabilities.
8
+ *
9
+ * These are used by the admin panel and LibreChat API to gate access to
10
+ * admin features. Config-section-derived capabilities (e.g.
11
+ * `manage:configs:endpoints`) are built on top of these where the
12
+ * configSchema is available.
13
+ */
14
+ const SystemCapabilities = {
15
+ ACCESS_ADMIN: 'access:admin',
16
+ READ_USERS: 'read:users',
17
+ MANAGE_USERS: 'manage:users',
18
+ READ_GROUPS: 'read:groups',
19
+ MANAGE_GROUPS: 'manage:groups',
20
+ READ_ROLES: 'read:roles',
21
+ MANAGE_ROLES: 'manage:roles',
22
+ READ_CONFIGS: 'read:configs',
23
+ MANAGE_CONFIGS: 'manage:configs',
24
+ ASSIGN_CONFIGS: 'assign:configs',
25
+ READ_USAGE: 'read:usage',
26
+ READ_AGENTS: 'read:agents',
27
+ MANAGE_AGENTS: 'manage:agents',
28
+ MANAGE_MCP_SERVERS: 'manage:mcpservers',
29
+ READ_PROMPTS: 'read:prompts',
30
+ MANAGE_PROMPTS: 'manage:prompts',
31
+ /** Reserved — not yet enforced by any middleware. */
32
+ READ_ASSISTANTS: 'read:assistants',
33
+ MANAGE_ASSISTANTS: 'manage:assistants',
34
+ };
35
+ /**
36
+ * Capabilities that are implied by holding a broader capability.
37
+ * e.g. `MANAGE_USERS` implies `READ_USERS`.
38
+ */
39
+ const CapabilityImplications = {
40
+ [SystemCapabilities.MANAGE_USERS]: [SystemCapabilities.READ_USERS],
41
+ [SystemCapabilities.MANAGE_GROUPS]: [SystemCapabilities.READ_GROUPS],
42
+ [SystemCapabilities.MANAGE_ROLES]: [SystemCapabilities.READ_ROLES],
43
+ [SystemCapabilities.MANAGE_CONFIGS]: [SystemCapabilities.READ_CONFIGS],
44
+ [SystemCapabilities.MANAGE_AGENTS]: [SystemCapabilities.READ_AGENTS],
45
+ [SystemCapabilities.MANAGE_PROMPTS]: [SystemCapabilities.READ_PROMPTS],
46
+ [SystemCapabilities.MANAGE_ASSISTANTS]: [SystemCapabilities.READ_ASSISTANTS],
47
+ };
48
+ // ---------------------------------------------------------------------------
49
+ // Capability utility functions
50
+ // ---------------------------------------------------------------------------
51
+ /** Reverse map: for a given read capability, which manage capabilities imply it? */
52
+ const _impliedBy = {};
53
+ for (const [manage, reads] of Object.entries(CapabilityImplications)) {
54
+ for (const read of reads) {
55
+ if (!_impliedBy[read]) {
56
+ _impliedBy[read] = [];
57
+ }
58
+ _impliedBy[read].push(manage);
59
+ }
60
+ }
61
+ /**
62
+ * Check whether a set of held capabilities satisfies a required capability,
63
+ * accounting for the manage→read implication hierarchy.
64
+ */
65
+ function hasImpliedCapability(held, required) {
66
+ if (held.includes(required)) {
67
+ return true;
68
+ }
69
+ const impliers = _impliedBy[required];
70
+ if (impliers) {
71
+ for (const cap of impliers) {
72
+ if (held.includes(cap)) {
73
+ return true;
74
+ }
75
+ }
76
+ }
77
+ return false;
78
+ }
79
+ /**
80
+ * Given a set of directly-held capabilities, compute the full set including
81
+ * all implied capabilities.
82
+ */
83
+ function expandImplications(directCaps) {
84
+ const expanded = new Set(directCaps);
85
+ for (const cap of directCaps) {
86
+ const implied = CapabilityImplications[cap];
87
+ if (implied) {
88
+ for (const imp of implied) {
89
+ expanded.add(imp);
90
+ }
91
+ }
92
+ }
93
+ return Array.from(expanded);
94
+ }
95
+ // ---------------------------------------------------------------------------
96
+ // Resource & config capability mappings
97
+ // ---------------------------------------------------------------------------
98
+ /**
99
+ * Maps each ACL ResourceType to the SystemCapability that grants
100
+ * unrestricted management access. Typed as `Record<ResourceType, …>`
101
+ * so adding a new ResourceType variant causes a compile error until a
102
+ * capability is assigned here.
103
+ */
104
+ const ResourceCapabilityMap = {
105
+ [ResourceType.AGENT]: SystemCapabilities.MANAGE_AGENTS,
106
+ [ResourceType.PROMPTGROUP]: SystemCapabilities.MANAGE_PROMPTS,
107
+ [ResourceType.MCPSERVER]: SystemCapabilities.MANAGE_MCP_SERVERS,
108
+ [ResourceType.REMOTE_AGENT]: SystemCapabilities.MANAGE_AGENTS,
109
+ };
110
+ /**
111
+ * Derives a section-level config management capability from a configSchema key.
112
+ * @example configCapability('endpoints') → 'manage:configs:endpoints'
113
+ *
114
+ * TODO: Section-level config capabilities are scaffolded but not yet active.
115
+ * To activate delegated config management:
116
+ * 1. Expose POST/DELETE /api/admin/grants endpoints (wiring grantCapability/revokeCapability)
117
+ * 2. Seed section-specific grants for delegated admin roles via those endpoints
118
+ * 3. Guard config write handlers with hasConfigCapability(user, section)
119
+ */
120
+ function configCapability(section) {
121
+ return `manage:configs:${section}`;
122
+ }
123
+ /**
124
+ * Derives a section-level config read capability from a configSchema key.
125
+ * @example readConfigCapability('endpoints') → 'read:configs:endpoints'
126
+ */
127
+ function readConfigCapability(section) {
128
+ return `read:configs:${section}`;
129
+ }
130
+ // ---------------------------------------------------------------------------
131
+ // Reserved principal IDs
132
+ // ---------------------------------------------------------------------------
133
+ /** Reserved principalId for the DB base config (overrides YAML defaults). */
134
+ const BASE_CONFIG_PRINCIPAL_ID = '__base__';
135
+ /** Pre-defined UI categories for grouping capabilities in the admin panel. */
136
+ const CAPABILITY_CATEGORIES = [
137
+ {
138
+ key: 'users',
139
+ labelKey: 'com_cap_cat_users',
140
+ capabilities: [SystemCapabilities.MANAGE_USERS, SystemCapabilities.READ_USERS],
141
+ },
142
+ {
143
+ key: 'groups',
144
+ labelKey: 'com_cap_cat_groups',
145
+ capabilities: [SystemCapabilities.MANAGE_GROUPS, SystemCapabilities.READ_GROUPS],
146
+ },
147
+ {
148
+ key: 'roles',
149
+ labelKey: 'com_cap_cat_roles',
150
+ capabilities: [SystemCapabilities.MANAGE_ROLES, SystemCapabilities.READ_ROLES],
151
+ },
152
+ {
153
+ key: 'config',
154
+ labelKey: 'com_cap_cat_config',
155
+ capabilities: [
156
+ SystemCapabilities.MANAGE_CONFIGS,
157
+ SystemCapabilities.READ_CONFIGS,
158
+ SystemCapabilities.ASSIGN_CONFIGS,
159
+ ],
160
+ },
161
+ {
162
+ key: 'content',
163
+ labelKey: 'com_cap_cat_content',
164
+ capabilities: [
165
+ SystemCapabilities.MANAGE_AGENTS,
166
+ SystemCapabilities.READ_AGENTS,
167
+ SystemCapabilities.MANAGE_PROMPTS,
168
+ SystemCapabilities.READ_PROMPTS,
169
+ SystemCapabilities.MANAGE_ASSISTANTS,
170
+ SystemCapabilities.READ_ASSISTANTS,
171
+ SystemCapabilities.MANAGE_MCP_SERVERS,
172
+ ],
173
+ },
174
+ {
175
+ key: 'system',
176
+ labelKey: 'com_cap_cat_system',
177
+ capabilities: [SystemCapabilities.ACCESS_ADMIN, SystemCapabilities.READ_USAGE],
178
+ },
179
+ ];
180
+
181
+ export { BASE_CONFIG_PRINCIPAL_ID, CAPABILITY_CATEGORIES, CapabilityImplications, ResourceCapabilityMap, SystemCapabilities, configCapability, expandImplications, hasImpliedCapability, readConfigCapability };
182
+ //# sourceMappingURL=capabilities.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.es.js","sources":["../../src/admin/capabilities.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAQA;AACA;AACA;AAEA;;;;;;;AAOG;AACI,MAAM,kBAAkB,GAAG;AAChC,IAAA,YAAY,EAAE,cAAc;AAC5B,IAAA,UAAU,EAAE,YAAY;AACxB,IAAA,YAAY,EAAE,cAAc;AAC5B,IAAA,WAAW,EAAE,aAAa;AAC1B,IAAA,aAAa,EAAE,eAAe;AAC9B,IAAA,UAAU,EAAE,YAAY;AACxB,IAAA,YAAY,EAAE,cAAc;AAC5B,IAAA,YAAY,EAAE,cAAc;AAC5B,IAAA,cAAc,EAAE,gBAAgB;AAChC,IAAA,cAAc,EAAE,gBAAgB;AAChC,IAAA,UAAU,EAAE,YAAY;AACxB,IAAA,WAAW,EAAE,aAAa;AAC1B,IAAA,aAAa,EAAE,eAAe;AAC9B,IAAA,kBAAkB,EAAE,mBAAmB;AACvC,IAAA,YAAY,EAAE,cAAc;AAC5B,IAAA,cAAc,EAAE,gBAAgB;;AAEhC,IAAA,eAAe,EAAE,iBAAiB;AAClC,IAAA,iBAAiB,EAAE,mBAAmB;;AAGxC;;;AAGG;AACI,MAAM,sBAAsB,GACjC;IACE,CAAC,kBAAkB,CAAC,YAAY,GAAG,CAAC,kBAAkB,CAAC,UAAU,CAAC;IAClE,CAAC,kBAAkB,CAAC,aAAa,GAAG,CAAC,kBAAkB,CAAC,WAAW,CAAC;IACpE,CAAC,kBAAkB,CAAC,YAAY,GAAG,CAAC,kBAAkB,CAAC,UAAU,CAAC;IAClE,CAAC,kBAAkB,CAAC,cAAc,GAAG,CAAC,kBAAkB,CAAC,YAAY,CAAC;IACtE,CAAC,kBAAkB,CAAC,aAAa,GAAG,CAAC,kBAAkB,CAAC,WAAW,CAAC;IACpE,CAAC,kBAAkB,CAAC,cAAc,GAAG,CAAC,kBAAkB,CAAC,YAAY,CAAC;IACtE,CAAC,kBAAkB,CAAC,iBAAiB,GAAG,CAAC,kBAAkB,CAAC,eAAe,CAAC;;AAGhF;AACA;AACA;AAEA;AACA,MAAM,UAAU,GAA6B,EAAE;AAC/C,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE;AACpE,IAAA,KAAK,MAAM,IAAI,IAAI,KAAiB,EAAE;AACpC,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;AACrB,YAAA,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE;QACvB;QACA,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IAC/B;AACF;AAEA;;;AAGG;AACG,SAAU,oBAAoB,CAAC,IAAc,EAAE,QAAgB,EAAA;AACnE,IAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;AAC3B,QAAA,OAAO,IAAI;IACb;AACA,IAAA,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;IACrC,IAAI,QAAQ,EAAE;AACZ,QAAA,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;AAC1B,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACtB,gBAAA,OAAO,IAAI;YACb;QACF;IACF;AACA,IAAA,OAAO,KAAK;AACd;AAEA;;;AAGG;AACG,SAAU,kBAAkB,CAAC,UAAoB,EAAA;AACrD,IAAA,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC;AACpC,IAAA,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;AAC5B,QAAA,MAAM,OAAO,GAAG,sBAAsB,CAAC,GAA2B,CAAC;QACnE,IAAI,OAAO,EAAE;AACX,YAAA,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE;AACzB,gBAAA,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;YACnB;QACF;IACF;AACA,IAAA,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B;AAEA;AACA;AACA;AAEA;;;;;AAKG;AACI,MAAM,qBAAqB,GAA2C;AAC3E,IAAA,CAAC,YAAY,CAAC,KAAK,GAAG,kBAAkB,CAAC,aAAa;AACtD,IAAA,CAAC,YAAY,CAAC,WAAW,GAAG,kBAAkB,CAAC,cAAc;AAC7D,IAAA,CAAC,YAAY,CAAC,SAAS,GAAG,kBAAkB,CAAC,kBAAkB;AAC/D,IAAA,CAAC,YAAY,CAAC,YAAY,GAAG,kBAAkB,CAAC,aAAa;;AAG/D;;;;;;;;;AASG;AACG,SAAU,gBAAgB,CAAC,OAAsB,EAAA;IACrD,OAAO,CAAA,eAAA,EAAkB,OAAO,CAAA,CAAE;AACpC;AAEA;;;AAGG;AACG,SAAU,oBAAoB,CAAC,OAAsB,EAAA;IACzD,OAAO,CAAA,aAAA,EAAgB,OAAO,CAAA,CAAE;AAClC;AAEA;AACA;AACA;AAEA;AACO,MAAM,wBAAwB,GAAG;AAExC;AACO,MAAM,qBAAqB,GAAyB;AACzD,IAAA;AACE,QAAA,GAAG,EAAE,OAAO;AACZ,QAAA,QAAQ,EAAE,mBAAmB;QAC7B,YAAY,EAAE,CAAC,kBAAkB,CAAC,YAAY,EAAE,kBAAkB,CAAC,UAAU,CAAC;AAC/E,KAAA;AACD,IAAA;AACE,QAAA,GAAG,EAAE,QAAQ;AACb,QAAA,QAAQ,EAAE,oBAAoB;QAC9B,YAAY,EAAE,CAAC,kBAAkB,CAAC,aAAa,EAAE,kBAAkB,CAAC,WAAW,CAAC;AACjF,KAAA;AACD,IAAA;AACE,QAAA,GAAG,EAAE,OAAO;AACZ,QAAA,QAAQ,EAAE,mBAAmB;QAC7B,YAAY,EAAE,CAAC,kBAAkB,CAAC,YAAY,EAAE,kBAAkB,CAAC,UAAU,CAAC;AAC/E,KAAA;AACD,IAAA;AACE,QAAA,GAAG,EAAE,QAAQ;AACb,QAAA,QAAQ,EAAE,oBAAoB;AAC9B,QAAA,YAAY,EAAE;AACZ,YAAA,kBAAkB,CAAC,cAAc;AACjC,YAAA,kBAAkB,CAAC,YAAY;AAC/B,YAAA,kBAAkB,CAAC,cAAc;AAClC,SAAA;AACF,KAAA;AACD,IAAA;AACE,QAAA,GAAG,EAAE,SAAS;AACd,QAAA,QAAQ,EAAE,qBAAqB;AAC/B,QAAA,YAAY,EAAE;AACZ,YAAA,kBAAkB,CAAC,aAAa;AAChC,YAAA,kBAAkB,CAAC,WAAW;AAC9B,YAAA,kBAAkB,CAAC,cAAc;AACjC,YAAA,kBAAkB,CAAC,YAAY;AAC/B,YAAA,kBAAkB,CAAC,iBAAiB;AACpC,YAAA,kBAAkB,CAAC,eAAe;AAClC,YAAA,kBAAkB,CAAC,kBAAkB;AACtC,SAAA;AACF,KAAA;AACD,IAAA;AACE,QAAA,GAAG,EAAE,QAAQ;AACb,QAAA,QAAQ,EAAE,oBAAoB;QAC9B,YAAY,EAAE,CAAC,kBAAkB,CAAC,YAAY,EAAE,kBAAkB,CAAC,UAAU,CAAC;AAC/E,KAAA;;;;;"}
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ var librechatDataProvider = require('librechat-data-provider');
4
+
5
+ /**
6
+ * Sets up the Agents configuration from the config (`librechat.yaml`) file.
7
+ * If no agents config is defined, uses the provided defaults or parses empty object.
8
+ *
9
+ * @param config - The loaded custom configuration.
10
+ * @param [defaultConfig] - Default configuration from getConfigDefaults.
11
+ * @returns The Agents endpoint configuration.
12
+ */
13
+ function agentsConfigSetup(config, defaultConfig) {
14
+ var _a;
15
+ const agentsConfig = (_a = config === null || config === void 0 ? void 0 : config.endpoints) === null || _a === void 0 ? void 0 : _a[librechatDataProvider.EModelEndpoint.agents];
16
+ if (!agentsConfig) {
17
+ return defaultConfig || librechatDataProvider.agentsEndpointSchema.parse({});
18
+ }
19
+ const parsedConfig = librechatDataProvider.agentsEndpointSchema.parse(agentsConfig);
20
+ return parsedConfig;
21
+ }
22
+
23
+ exports.agentsConfigSetup = agentsConfigSetup;
24
+ //# sourceMappingURL=agents.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.cjs","sources":["../../src/app/agents.ts"],"sourcesContent":[null],"names":["EModelEndpoint","agentsEndpointSchema"],"mappings":";;;;AAGA;;;;;;;AAOG;AACG,SAAU,iBAAiB,CAC/B,MAA8B,EAC9B,aAAwC,EAAA;;AAExC,IAAA,MAAM,YAAY,GAAG,CAAA,EAAA,GAAA,MAAM,aAAN,MAAM,KAAA,MAAA,GAAA,MAAA,GAAN,MAAM,CAAE,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAGA,oCAAc,CAAC,MAAM,CAAC;IAE/D,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,aAAa,IAAIC,0CAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;IACxD;IAEA,MAAM,YAAY,GAAGA,0CAAoB,CAAC,KAAK,CAAC,YAAY,CAAC;AAC7D,IAAA,OAAO,YAAY;AACrB;;;;"}
@@ -0,0 +1,22 @@
1
+ import { EModelEndpoint, agentsEndpointSchema } from 'librechat-data-provider';
2
+
3
+ /**
4
+ * Sets up the Agents configuration from the config (`librechat.yaml`) file.
5
+ * If no agents config is defined, uses the provided defaults or parses empty object.
6
+ *
7
+ * @param config - The loaded custom configuration.
8
+ * @param [defaultConfig] - Default configuration from getConfigDefaults.
9
+ * @returns The Agents endpoint configuration.
10
+ */
11
+ function agentsConfigSetup(config, defaultConfig) {
12
+ var _a;
13
+ const agentsConfig = (_a = config === null || config === void 0 ? void 0 : config.endpoints) === null || _a === void 0 ? void 0 : _a[EModelEndpoint.agents];
14
+ if (!agentsConfig) {
15
+ return defaultConfig || agentsEndpointSchema.parse({});
16
+ }
17
+ const parsedConfig = agentsEndpointSchema.parse(agentsConfig);
18
+ return parsedConfig;
19
+ }
20
+
21
+ export { agentsConfigSetup };
22
+ //# sourceMappingURL=agents.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.es.js","sources":["../../src/app/agents.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;AAOG;AACG,SAAU,iBAAiB,CAC/B,MAA8B,EAC9B,aAAwC,EAAA;;AAExC,IAAA,MAAM,YAAY,GAAG,CAAA,EAAA,GAAA,MAAM,aAAN,MAAM,KAAA,MAAA,GAAA,MAAA,GAAN,MAAM,CAAE,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAG,cAAc,CAAC,MAAM,CAAC;IAE/D,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,aAAa,IAAI,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;IACxD;IAEA,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,YAAY,CAAC;AAC7D,IAAA,OAAO,YAAY;AACrB;;;;"}
@@ -0,0 +1,56 @@
1
+ 'use strict';
2
+
3
+ var winston = require('../config/winston.cjs');
4
+ var librechatDataProvider = require('librechat-data-provider');
5
+
6
+ /**
7
+ * Sets up the minimum, default Assistants configuration if Azure OpenAI Assistants option is enabled.
8
+ * @returns The Assistants endpoint configuration.
9
+ */
10
+ function azureAssistantsDefaults() {
11
+ return {
12
+ capabilities: [librechatDataProvider.Capabilities.tools, librechatDataProvider.Capabilities.actions, librechatDataProvider.Capabilities.code_interpreter],
13
+ version: librechatDataProvider.defaultAssistantsVersion.azureAssistants,
14
+ };
15
+ }
16
+ /**
17
+ * Sets up the Assistants configuration from the config (`librechat.yaml`) file.
18
+ * @param config - The loaded custom configuration.
19
+ * @param assistantsEndpoint - The Assistants endpoint name.
20
+ * - The previously loaded assistants configuration from Azure OpenAI Assistants option.
21
+ * @param [prevConfig]
22
+ * @returns The Assistants endpoint configuration.
23
+ */
24
+ function assistantsConfigSetup(config, assistantsEndpoint, prevConfig = {}) {
25
+ var _a, _b, _c, _d, _e;
26
+ const assistantsConfig = (_a = config.endpoints) === null || _a === void 0 ? void 0 : _a[assistantsEndpoint];
27
+ const parsedConfig = librechatDataProvider.assistantEndpointSchema.parse(assistantsConfig);
28
+ if (((_b = assistantsConfig === null || assistantsConfig === void 0 ? void 0 : assistantsConfig.supportedIds) === null || _b === void 0 ? void 0 : _b.length) && ((_c = assistantsConfig.excludedIds) === null || _c === void 0 ? void 0 : _c.length)) {
29
+ winston.warn(`Configuration conflict: The '${assistantsEndpoint}' endpoint has both 'supportedIds' and 'excludedIds' defined. The 'excludedIds' will be ignored.`);
30
+ }
31
+ if ((assistantsConfig === null || assistantsConfig === void 0 ? void 0 : assistantsConfig.privateAssistants) &&
32
+ (((_d = assistantsConfig.supportedIds) === null || _d === void 0 ? void 0 : _d.length) || ((_e = assistantsConfig.excludedIds) === null || _e === void 0 ? void 0 : _e.length))) {
33
+ winston.warn(`Configuration conflict: The '${assistantsEndpoint}' endpoint has both 'privateAssistants' and 'supportedIds' or 'excludedIds' defined. The 'supportedIds' and 'excludedIds' will be ignored.`);
34
+ }
35
+ return {
36
+ ...prevConfig,
37
+ retrievalModels: parsedConfig.retrievalModels,
38
+ disableBuilder: parsedConfig.disableBuilder,
39
+ pollIntervalMs: parsedConfig.pollIntervalMs,
40
+ supportedIds: parsedConfig.supportedIds,
41
+ capabilities: parsedConfig.capabilities,
42
+ excludedIds: parsedConfig.excludedIds,
43
+ privateAssistants: parsedConfig.privateAssistants,
44
+ timeoutMs: parsedConfig.timeoutMs,
45
+ streamRate: parsedConfig.streamRate,
46
+ titlePrompt: parsedConfig.titlePrompt,
47
+ titleMethod: parsedConfig.titleMethod,
48
+ titleModel: parsedConfig.titleModel,
49
+ titleEndpoint: parsedConfig.titleEndpoint,
50
+ titlePromptTemplate: parsedConfig.titlePromptTemplate,
51
+ };
52
+ }
53
+
54
+ exports.assistantsConfigSetup = assistantsConfigSetup;
55
+ exports.azureAssistantsDefaults = azureAssistantsDefaults;
56
+ //# sourceMappingURL=assistants.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assistants.cjs","sources":["../../src/app/assistants.ts"],"sourcesContent":[null],"names":["Capabilities","defaultAssistantsVersion","assistantEndpointSchema","logger"],"mappings":";;;;;AASA;;;AAGG;SACa,uBAAuB,GAAA;IAIrC,OAAO;AACL,QAAA,YAAY,EAAE,CAACA,kCAAY,CAAC,KAAK,EAAEA,kCAAY,CAAC,OAAO,EAAEA,kCAAY,CAAC,gBAAgB,CAAC;QACvF,OAAO,EAAEC,8CAAwB,CAAC,eAAe;KAClD;AACH;AAEA;;;;;;;AAOG;AACG,SAAU,qBAAqB,CACnC,MAA8B,EAC9B,kBAA8E,EAC9E,aAA0C,EAAE,EAAA;;IAE5C,MAAM,gBAAgB,GAAG,CAAA,EAAA,GAAA,MAAM,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAG,kBAAkB,CAAC;IAC/D,MAAM,YAAY,GAAGC,6CAAuB,CAAC,KAAK,CAAC,gBAAgB,CAAC;IACpE,IAAI,CAAA,MAAA,gBAAgB,KAAA,IAAA,IAAhB,gBAAgB,KAAA,MAAA,GAAA,MAAA,GAAhB,gBAAgB,CAAE,YAAY,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,MAAM,MAAI,CAAA,EAAA,GAAA,gBAAgB,CAAC,WAAW,0CAAE,MAAM,CAAA,EAAE;AAClF,QAAAC,OAAM,CAAC,IAAI,CACT,gCAAgC,kBAAkB,CAAA,gGAAA,CAAkG,CACrJ;IACH;AACA,IAAA,IACE,CAAA,gBAAgB,KAAA,IAAA,IAAhB,gBAAgB,KAAA,MAAA,GAAA,MAAA,GAAhB,gBAAgB,CAAE,iBAAiB;AACnC,SAAC,CAAA,CAAA,EAAA,GAAA,gBAAgB,CAAC,YAAY,0CAAE,MAAM,MAAI,CAAA,EAAA,GAAA,gBAAgB,CAAC,WAAW,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,MAAM,CAAA,CAAC,EAC/E;AACA,QAAAA,OAAM,CAAC,IAAI,CACT,gCAAgC,kBAAkB,CAAA,0IAAA,CAA4I,CAC/L;IACH;IAEA,OAAO;AACL,QAAA,GAAG,UAAU;QACb,eAAe,EAAE,YAAY,CAAC,eAAe;QAC7C,cAAc,EAAE,YAAY,CAAC,cAAc;QAC3C,cAAc,EAAE,YAAY,CAAC,cAAc;QAC3C,YAAY,EAAE,YAAY,CAAC,YAAY;QACvC,YAAY,EAAE,YAAY,CAAC,YAAY;QACvC,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;QACjD,SAAS,EAAE,YAAY,CAAC,SAAS;QACjC,UAAU,EAAE,YAAY,CAAC,UAAU;QACnC,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,UAAU,EAAE,YAAY,CAAC,UAAU;QACnC,aAAa,EAAE,YAAY,CAAC,aAAa;QACzC,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;KACtD;AACH;;;;;"}
@@ -0,0 +1,53 @@
1
+ import logger from '../config/winston.es.js';
2
+ import { defaultAssistantsVersion, Capabilities, assistantEndpointSchema } from 'librechat-data-provider';
3
+
4
+ /**
5
+ * Sets up the minimum, default Assistants configuration if Azure OpenAI Assistants option is enabled.
6
+ * @returns The Assistants endpoint configuration.
7
+ */
8
+ function azureAssistantsDefaults() {
9
+ return {
10
+ capabilities: [Capabilities.tools, Capabilities.actions, Capabilities.code_interpreter],
11
+ version: defaultAssistantsVersion.azureAssistants,
12
+ };
13
+ }
14
+ /**
15
+ * Sets up the Assistants configuration from the config (`librechat.yaml`) file.
16
+ * @param config - The loaded custom configuration.
17
+ * @param assistantsEndpoint - The Assistants endpoint name.
18
+ * - The previously loaded assistants configuration from Azure OpenAI Assistants option.
19
+ * @param [prevConfig]
20
+ * @returns The Assistants endpoint configuration.
21
+ */
22
+ function assistantsConfigSetup(config, assistantsEndpoint, prevConfig = {}) {
23
+ var _a, _b, _c, _d, _e;
24
+ const assistantsConfig = (_a = config.endpoints) === null || _a === void 0 ? void 0 : _a[assistantsEndpoint];
25
+ const parsedConfig = assistantEndpointSchema.parse(assistantsConfig);
26
+ if (((_b = assistantsConfig === null || assistantsConfig === void 0 ? void 0 : assistantsConfig.supportedIds) === null || _b === void 0 ? void 0 : _b.length) && ((_c = assistantsConfig.excludedIds) === null || _c === void 0 ? void 0 : _c.length)) {
27
+ logger.warn(`Configuration conflict: The '${assistantsEndpoint}' endpoint has both 'supportedIds' and 'excludedIds' defined. The 'excludedIds' will be ignored.`);
28
+ }
29
+ if ((assistantsConfig === null || assistantsConfig === void 0 ? void 0 : assistantsConfig.privateAssistants) &&
30
+ (((_d = assistantsConfig.supportedIds) === null || _d === void 0 ? void 0 : _d.length) || ((_e = assistantsConfig.excludedIds) === null || _e === void 0 ? void 0 : _e.length))) {
31
+ logger.warn(`Configuration conflict: The '${assistantsEndpoint}' endpoint has both 'privateAssistants' and 'supportedIds' or 'excludedIds' defined. The 'supportedIds' and 'excludedIds' will be ignored.`);
32
+ }
33
+ return {
34
+ ...prevConfig,
35
+ retrievalModels: parsedConfig.retrievalModels,
36
+ disableBuilder: parsedConfig.disableBuilder,
37
+ pollIntervalMs: parsedConfig.pollIntervalMs,
38
+ supportedIds: parsedConfig.supportedIds,
39
+ capabilities: parsedConfig.capabilities,
40
+ excludedIds: parsedConfig.excludedIds,
41
+ privateAssistants: parsedConfig.privateAssistants,
42
+ timeoutMs: parsedConfig.timeoutMs,
43
+ streamRate: parsedConfig.streamRate,
44
+ titlePrompt: parsedConfig.titlePrompt,
45
+ titleMethod: parsedConfig.titleMethod,
46
+ titleModel: parsedConfig.titleModel,
47
+ titleEndpoint: parsedConfig.titleEndpoint,
48
+ titlePromptTemplate: parsedConfig.titlePromptTemplate,
49
+ };
50
+ }
51
+
52
+ export { assistantsConfigSetup, azureAssistantsDefaults };
53
+ //# sourceMappingURL=assistants.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assistants.es.js","sources":["../../src/app/assistants.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AASA;;;AAGG;SACa,uBAAuB,GAAA;IAIrC,OAAO;AACL,QAAA,YAAY,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,gBAAgB,CAAC;QACvF,OAAO,EAAE,wBAAwB,CAAC,eAAe;KAClD;AACH;AAEA;;;;;;;AAOG;AACG,SAAU,qBAAqB,CACnC,MAA8B,EAC9B,kBAA8E,EAC9E,aAA0C,EAAE,EAAA;;IAE5C,MAAM,gBAAgB,GAAG,CAAA,EAAA,GAAA,MAAM,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAG,kBAAkB,CAAC;IAC/D,MAAM,YAAY,GAAG,uBAAuB,CAAC,KAAK,CAAC,gBAAgB,CAAC;IACpE,IAAI,CAAA,MAAA,gBAAgB,KAAA,IAAA,IAAhB,gBAAgB,KAAA,MAAA,GAAA,MAAA,GAAhB,gBAAgB,CAAE,YAAY,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,MAAM,MAAI,CAAA,EAAA,GAAA,gBAAgB,CAAC,WAAW,0CAAE,MAAM,CAAA,EAAE;AAClF,QAAA,MAAM,CAAC,IAAI,CACT,gCAAgC,kBAAkB,CAAA,gGAAA,CAAkG,CACrJ;IACH;AACA,IAAA,IACE,CAAA,gBAAgB,KAAA,IAAA,IAAhB,gBAAgB,KAAA,MAAA,GAAA,MAAA,GAAhB,gBAAgB,CAAE,iBAAiB;AACnC,SAAC,CAAA,CAAA,EAAA,GAAA,gBAAgB,CAAC,YAAY,0CAAE,MAAM,MAAI,CAAA,EAAA,GAAA,gBAAgB,CAAC,WAAW,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,MAAM,CAAA,CAAC,EAC/E;AACA,QAAA,MAAM,CAAC,IAAI,CACT,gCAAgC,kBAAkB,CAAA,0IAAA,CAA4I,CAC/L;IACH;IAEA,OAAO;AACL,QAAA,GAAG,UAAU;QACb,eAAe,EAAE,YAAY,CAAC,eAAe;QAC7C,cAAc,EAAE,YAAY,CAAC,cAAc;QAC3C,cAAc,EAAE,YAAY,CAAC,cAAc;QAC3C,YAAY,EAAE,YAAY,CAAC,YAAY;QACvC,YAAY,EAAE,YAAY,CAAC,YAAY;QACvC,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;QACjD,SAAS,EAAE,YAAY,CAAC,SAAS;QACjC,UAAU,EAAE,YAAY,CAAC,UAAU;QACnC,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,WAAW,EAAE,YAAY,CAAC,WAAW;QACrC,UAAU,EAAE,YAAY,CAAC,UAAU;QACnC,aAAa,EAAE,YAAY,CAAC,aAAa;QACzC,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;KACtD;AACH;;;;"}
@@ -0,0 +1,61 @@
1
+ 'use strict';
2
+
3
+ var winston = require('../config/winston.cjs');
4
+ var librechatDataProvider = require('librechat-data-provider');
5
+
6
+ /**
7
+ * Sets up the Azure OpenAI configuration from the config (`librechat.yaml`) file.
8
+ * @param config - The loaded custom configuration.
9
+ * @returns The Azure OpenAI configuration.
10
+ */
11
+ function azureConfigSetup(config) {
12
+ var _a, _b, _c;
13
+ const azureConfig = (_a = config.endpoints) === null || _a === void 0 ? void 0 : _a[librechatDataProvider.EModelEndpoint.azureOpenAI];
14
+ if (!azureConfig) {
15
+ throw new Error('Azure OpenAI configuration is missing.');
16
+ }
17
+ const { groups, ...azureConfiguration } = azureConfig;
18
+ const { isValid, modelNames, modelGroupMap, groupMap, errors } = librechatDataProvider.validateAzureGroups(groups);
19
+ if (!isValid) {
20
+ const errorString = errors.join('\n');
21
+ const errorMessage = 'Invalid Azure OpenAI configuration:\n' + errorString;
22
+ winston.error(errorMessage);
23
+ throw new Error(errorMessage);
24
+ }
25
+ const assistantModels = [];
26
+ const assistantGroups = new Set();
27
+ for (const modelName of modelNames) {
28
+ librechatDataProvider.mapModelToAzureConfig({ modelName, modelGroupMap, groupMap });
29
+ const groupName = (_b = modelGroupMap === null || modelGroupMap === void 0 ? void 0 : modelGroupMap[modelName]) === null || _b === void 0 ? void 0 : _b.group;
30
+ const modelGroup = groupMap === null || groupMap === void 0 ? void 0 : groupMap[groupName];
31
+ const supportsAssistants = (modelGroup === null || modelGroup === void 0 ? void 0 : modelGroup.assistants) || ((_c = modelGroup === null || modelGroup === void 0 ? void 0 : modelGroup[modelName]) === null || _c === void 0 ? void 0 : _c.assistants);
32
+ if (supportsAssistants) {
33
+ assistantModels.push(modelName);
34
+ if (!assistantGroups.has(groupName)) {
35
+ assistantGroups.add(groupName);
36
+ }
37
+ }
38
+ }
39
+ if (azureConfiguration.assistants && assistantModels.length === 0) {
40
+ throw new Error('No Azure models are configured to support assistants. Please remove the `assistants` field or configure at least one model to support assistants.');
41
+ }
42
+ if (azureConfiguration.assistants &&
43
+ process.env.ENDPOINTS &&
44
+ !process.env.ENDPOINTS.includes(librechatDataProvider.EModelEndpoint.azureAssistants)) {
45
+ winston.warn(`Azure Assistants are configured, but the endpoint will not be accessible as it's not included in the ENDPOINTS environment variable.
46
+ Please add the value "${librechatDataProvider.EModelEndpoint.azureAssistants}" to the ENDPOINTS list if expected.`);
47
+ }
48
+ return {
49
+ errors,
50
+ isValid,
51
+ groupMap,
52
+ modelNames,
53
+ modelGroupMap,
54
+ assistantModels,
55
+ assistantGroups: Array.from(assistantGroups),
56
+ ...azureConfiguration,
57
+ };
58
+ }
59
+
60
+ exports.azureConfigSetup = azureConfigSetup;
61
+ //# sourceMappingURL=azure.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"azure.cjs","sources":["../../src/app/azure.ts"],"sourcesContent":[null],"names":["EModelEndpoint","validateAzureGroups","logger","mapModelToAzureConfig"],"mappings":";;;;;AAQA;;;;AAIG;AACG,SAAU,gBAAgB,CAAC,MAA8B,EAAA;;IAC7D,MAAM,WAAW,GAAG,CAAA,EAAA,GAAA,MAAM,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAGA,oCAAc,CAAC,WAAW,CAAC;IAClE,IAAI,CAAC,WAAW,EAAE;AAChB,QAAA,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC;IAC3D;IACA,MAAM,EAAE,MAAM,EAAE,GAAG,kBAAkB,EAAE,GAAG,WAAW;AACrD,IAAA,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAGC,yCAAmB,CAAC,MAAM,CAAC;IAE5F,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;AACrC,QAAA,MAAM,YAAY,GAAG,uCAAuC,GAAG,WAAW;AAC1E,QAAAC,OAAM,CAAC,KAAK,CAAC,YAAY,CAAC;AAC1B,QAAA,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC;IAC/B;IAEA,MAAM,eAAe,GAAa,EAAE;AACpC,IAAA,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU;AACzC,IAAA,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;QAClCC,2CAAqB,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC;AAC7D,QAAA,MAAM,SAAS,GAAG,CAAA,EAAA,GAAA,aAAa,KAAA,IAAA,IAAb,aAAa,KAAA,MAAA,GAAA,MAAA,GAAb,aAAa,CAAG,SAAS,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,KAAK;QACnD,MAAM,UAAU,GAAG,QAAQ,KAAA,IAAA,IAAR,QAAQ,uBAAR,QAAQ,CAAG,SAAS,CAAC;QACxC,MAAM,kBAAkB,GAAG,CAAA,UAAU,aAAV,UAAU,KAAA,MAAA,GAAA,MAAA,GAAV,UAAU,CAAE,UAAU,MAAI,MAAA,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,MAAA,GAAA,MAAA,GAAV,UAAU,CAAG,SAAS,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,UAAU,CAAA;QACxF,IAAI,kBAAkB,EAAE;AACtB,YAAA,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC;YAC/B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;AACnC,gBAAA,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC;YAChC;QACF;IACF;IAEA,IAAI,kBAAkB,CAAC,UAAU,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;AACjE,QAAA,MAAM,IAAI,KAAK,CACb,mJAAmJ,CACpJ;IACH;IAEA,IACE,kBAAkB,CAAC,UAAU;QAC7B,OAAO,CAAC,GAAG,CAAC,SAAS;AACrB,QAAA,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAACH,oCAAc,CAAC,eAAe,CAAC,EAC/D;QACAE,OAAM,CAAC,IAAI,CACT,CAAA;AACwB,4BAAA,EAAAF,oCAAc,CAAC,eAAe,CAAA,oCAAA,CAAsC,CAC7F;IACH;IAEA,OAAO;QACL,MAAM;QACN,OAAO;QACP,QAAQ;QACR,UAAU;QACV,aAAa;QACb,eAAe;AACf,QAAA,eAAe,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;AAC5C,QAAA,GAAG,kBAAkB;KACtB;AACH;;;;"}