@librechat/data-schemas 0.0.43 → 0.0.44

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 +2 -1
@@ -0,0 +1,224 @@
1
+ 'use strict';
2
+
3
+ var klona = require('klona');
4
+ var winston = require('winston');
5
+ var objectTraverse = require('../utils/object-traverse.cjs');
6
+
7
+ const SPLAT_SYMBOL = Symbol.for('splat');
8
+ const MESSAGE_SYMBOL = Symbol.for('message');
9
+ const CONSOLE_JSON_STRING_LENGTH = parseInt(process.env.CONSOLE_JSON_STRING_LENGTH || '', 10) || 255;
10
+ const DEBUG_MESSAGE_LENGTH = parseInt(process.env.DEBUG_MESSAGE_LENGTH || '', 10) || 150;
11
+ const sensitiveKeys = [
12
+ /^(sk-)[^\s]+/, // OpenAI API key pattern
13
+ /(Bearer )[^\s]+/, // Header: Bearer token pattern
14
+ /(api-key:? )[^\s]+/, // Header: API key pattern
15
+ /(key=)[^\s]+/, // URL query param: sensitive key pattern (Google)
16
+ ];
17
+ /**
18
+ * Determines if a given value string is sensitive and returns matching regex patterns.
19
+ *
20
+ * @param valueStr - The value string to check.
21
+ * @returns An array of regex patterns that match the value string.
22
+ */
23
+ function getMatchingSensitivePatterns(valueStr) {
24
+ if (valueStr) {
25
+ // Filter and return all regex patterns that match the value string
26
+ return sensitiveKeys.filter((regex) => regex.test(valueStr));
27
+ }
28
+ return [];
29
+ }
30
+ /**
31
+ * Redacts sensitive information from a console message and trims it to a specified length if provided.
32
+ * @param str - The console message to be redacted.
33
+ * @param trimLength - The optional length at which to trim the redacted message.
34
+ * @returns The redacted and optionally trimmed console message.
35
+ */
36
+ function redactMessage(str, trimLength) {
37
+ if (!str) {
38
+ return '';
39
+ }
40
+ const patterns = getMatchingSensitivePatterns(str);
41
+ patterns.forEach((pattern) => {
42
+ str = str.replace(pattern, '$1[REDACTED]');
43
+ });
44
+ return str;
45
+ }
46
+ /**
47
+ * Redacts sensitive information from log messages if the log level is 'error'.
48
+ * Note: Intentionally mutates the object.
49
+ * @param info - The log information object.
50
+ * @returns The modified log information object.
51
+ */
52
+ const redactFormat = winston.format((info) => {
53
+ if (info.level === 'error') {
54
+ // Type guard to ensure message is a string
55
+ if (typeof info.message === 'string') {
56
+ info.message = redactMessage(info.message);
57
+ }
58
+ // Handle MESSAGE_SYMBOL with type safety
59
+ const symbolValue = info[MESSAGE_SYMBOL];
60
+ if (typeof symbolValue === 'string') {
61
+ info[MESSAGE_SYMBOL] = redactMessage(symbolValue);
62
+ }
63
+ }
64
+ return info;
65
+ });
66
+ /**
67
+ * Truncates long strings, especially base64 image data, within log messages.
68
+ *
69
+ * @param value - The value to be inspected and potentially truncated.
70
+ * @param length - The length at which to truncate the value. Default: 100.
71
+ * @returns The truncated or original value.
72
+ */
73
+ const truncateLongStrings = (value, length = 100) => {
74
+ if (typeof value === 'string') {
75
+ return value.length > length ? value.substring(0, length) + '... [truncated]' : value;
76
+ }
77
+ return value;
78
+ };
79
+ /**
80
+ * An array mapping function that truncates long strings (objects converted to JSON strings).
81
+ * @param item - The item to be condensed.
82
+ * @returns The condensed item.
83
+ */
84
+ const condenseArray = (item) => {
85
+ if (typeof item === 'string') {
86
+ return truncateLongStrings(JSON.stringify(item));
87
+ }
88
+ else if (typeof item === 'object') {
89
+ return truncateLongStrings(JSON.stringify(item));
90
+ }
91
+ return item;
92
+ };
93
+ /**
94
+ * Formats log messages for debugging purposes.
95
+ * - Truncates long strings within log messages.
96
+ * - Condenses arrays by truncating long strings and objects as strings within array items.
97
+ * - Redacts sensitive information from log messages if the log level is 'error'.
98
+ * - Converts log information object to a formatted string.
99
+ *
100
+ * @param options - The options for formatting log messages.
101
+ * @returns The formatted log message.
102
+ */
103
+ const debugTraverse = winston.format.printf(({ level, message, timestamp, ...metadata }) => {
104
+ if (!message) {
105
+ return `${timestamp} ${level}`;
106
+ }
107
+ // Type-safe version of the CJS logic: !message?.trim || typeof message !== 'string'
108
+ if (typeof message !== 'string' || !message.trim) {
109
+ return `${timestamp} ${level}: ${JSON.stringify(message)}`;
110
+ }
111
+ const msgParts = [
112
+ `${timestamp} ${level}: ${truncateLongStrings(message.trim(), DEBUG_MESSAGE_LENGTH)}`,
113
+ ];
114
+ try {
115
+ if (level !== 'debug') {
116
+ return msgParts[0];
117
+ }
118
+ if (!metadata) {
119
+ return msgParts[0];
120
+ }
121
+ // Type-safe access to SPLAT_SYMBOL using bracket notation
122
+ const metadataRecord = metadata;
123
+ const splatArray = metadataRecord[SPLAT_SYMBOL];
124
+ const debugValue = Array.isArray(splatArray) ? splatArray[0] : undefined;
125
+ if (!debugValue) {
126
+ return msgParts[0];
127
+ }
128
+ if (debugValue && Array.isArray(debugValue)) {
129
+ msgParts.push(`\n${JSON.stringify(debugValue.map(condenseArray))}`);
130
+ return msgParts.join('');
131
+ }
132
+ if (typeof debugValue !== 'object') {
133
+ msgParts.push(` ${debugValue}`);
134
+ return msgParts.join('');
135
+ }
136
+ msgParts.push('\n{');
137
+ const copy = klona.klona(metadata);
138
+ try {
139
+ const traversal = objectTraverse(copy);
140
+ traversal.forEach(function (value) {
141
+ var _a;
142
+ if (typeof (this === null || this === void 0 ? void 0 : this.key) === 'symbol') {
143
+ return;
144
+ }
145
+ let _parentKey = '';
146
+ const parent = this.parent;
147
+ if (typeof (parent === null || parent === void 0 ? void 0 : parent.key) !== 'symbol' && (parent === null || parent === void 0 ? void 0 : parent.key) !== undefined) {
148
+ _parentKey = String(parent.key);
149
+ }
150
+ const parentKey = `${parent && parent.notRoot ? _parentKey + '.' : ''}`;
151
+ const tabs = `${parent && parent.notRoot ? ' ' : ' '}`;
152
+ const currentKey = (_a = this === null || this === void 0 ? void 0 : this.key) !== null && _a !== void 0 ? _a : 'unknown';
153
+ if (this.isLeaf && typeof value === 'string') {
154
+ const truncatedText = truncateLongStrings(value);
155
+ msgParts.push(`\n${tabs}${parentKey}${currentKey}: ${JSON.stringify(truncatedText)},`);
156
+ }
157
+ else if (this.notLeaf && Array.isArray(value) && value.length > 0) {
158
+ const currentMessage = `\n${tabs}// ${value.length} ${String(currentKey).replace(/s$/, '')}(s)`;
159
+ this.update(currentMessage);
160
+ msgParts.push(currentMessage);
161
+ const stringifiedArray = value.map(condenseArray);
162
+ msgParts.push(`\n${tabs}${parentKey}${currentKey}: [${stringifiedArray}],`);
163
+ }
164
+ else if (this.isLeaf && typeof value === 'function') {
165
+ msgParts.push(`\n${tabs}${parentKey}${currentKey}: function,`);
166
+ }
167
+ else if (this.isLeaf) {
168
+ msgParts.push(`\n${tabs}${parentKey}${currentKey}: ${value},`);
169
+ }
170
+ });
171
+ }
172
+ catch (e) {
173
+ const errorMessage = e instanceof Error ? e.message : 'Unknown error';
174
+ msgParts.push(`\n[LOGGER TRAVERSAL ERROR] ${errorMessage}`);
175
+ }
176
+ msgParts.push('\n}');
177
+ return msgParts.join('');
178
+ }
179
+ catch (e) {
180
+ const errorMessage = e instanceof Error ? e.message : 'Unknown error';
181
+ msgParts.push(`\n[LOGGER PARSING ERROR] ${errorMessage}`);
182
+ return msgParts.join('');
183
+ }
184
+ });
185
+ /**
186
+ * Truncates long string values in JSON log objects.
187
+ * Prevents outputting extremely long values (e.g., base64, blobs).
188
+ */
189
+ const jsonTruncateFormat = winston.format((info) => {
190
+ const truncateLongStrings = (str, maxLength) => str.length > maxLength ? str.substring(0, maxLength) + '...' : str;
191
+ const seen = new WeakSet();
192
+ const truncateObject = (obj) => {
193
+ if (typeof obj !== 'object' || obj === null) {
194
+ return obj;
195
+ }
196
+ // Handle circular references - now with proper object type
197
+ if (seen.has(obj)) {
198
+ return '[Circular]';
199
+ }
200
+ seen.add(obj);
201
+ if (Array.isArray(obj)) {
202
+ return obj.map((item) => truncateObject(item));
203
+ }
204
+ // We know this is an object at this point
205
+ const objectRecord = obj;
206
+ const newObj = {};
207
+ Object.entries(objectRecord).forEach(([key, value]) => {
208
+ if (typeof value === 'string') {
209
+ newObj[key] = truncateLongStrings(value, CONSOLE_JSON_STRING_LENGTH);
210
+ }
211
+ else {
212
+ newObj[key] = truncateObject(value);
213
+ }
214
+ });
215
+ return newObj;
216
+ };
217
+ return truncateObject(info);
218
+ });
219
+
220
+ exports.debugTraverse = debugTraverse;
221
+ exports.jsonTruncateFormat = jsonTruncateFormat;
222
+ exports.redactFormat = redactFormat;
223
+ exports.redactMessage = redactMessage;
224
+ //# sourceMappingURL=parsers.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parsers.cjs","sources":["../../src/config/parsers.ts"],"sourcesContent":[null],"names":["klona","traverse"],"mappings":"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"}
@@ -0,0 +1,219 @@
1
+ import { klona } from 'klona';
2
+ import winston from 'winston';
3
+ import traverse from '../utils/object-traverse.es.js';
4
+
5
+ const SPLAT_SYMBOL = Symbol.for('splat');
6
+ const MESSAGE_SYMBOL = Symbol.for('message');
7
+ const CONSOLE_JSON_STRING_LENGTH = parseInt(process.env.CONSOLE_JSON_STRING_LENGTH || '', 10) || 255;
8
+ const DEBUG_MESSAGE_LENGTH = parseInt(process.env.DEBUG_MESSAGE_LENGTH || '', 10) || 150;
9
+ const sensitiveKeys = [
10
+ /^(sk-)[^\s]+/, // OpenAI API key pattern
11
+ /(Bearer )[^\s]+/, // Header: Bearer token pattern
12
+ /(api-key:? )[^\s]+/, // Header: API key pattern
13
+ /(key=)[^\s]+/, // URL query param: sensitive key pattern (Google)
14
+ ];
15
+ /**
16
+ * Determines if a given value string is sensitive and returns matching regex patterns.
17
+ *
18
+ * @param valueStr - The value string to check.
19
+ * @returns An array of regex patterns that match the value string.
20
+ */
21
+ function getMatchingSensitivePatterns(valueStr) {
22
+ if (valueStr) {
23
+ // Filter and return all regex patterns that match the value string
24
+ return sensitiveKeys.filter((regex) => regex.test(valueStr));
25
+ }
26
+ return [];
27
+ }
28
+ /**
29
+ * Redacts sensitive information from a console message and trims it to a specified length if provided.
30
+ * @param str - The console message to be redacted.
31
+ * @param trimLength - The optional length at which to trim the redacted message.
32
+ * @returns The redacted and optionally trimmed console message.
33
+ */
34
+ function redactMessage(str, trimLength) {
35
+ if (!str) {
36
+ return '';
37
+ }
38
+ const patterns = getMatchingSensitivePatterns(str);
39
+ patterns.forEach((pattern) => {
40
+ str = str.replace(pattern, '$1[REDACTED]');
41
+ });
42
+ return str;
43
+ }
44
+ /**
45
+ * Redacts sensitive information from log messages if the log level is 'error'.
46
+ * Note: Intentionally mutates the object.
47
+ * @param info - The log information object.
48
+ * @returns The modified log information object.
49
+ */
50
+ const redactFormat = winston.format((info) => {
51
+ if (info.level === 'error') {
52
+ // Type guard to ensure message is a string
53
+ if (typeof info.message === 'string') {
54
+ info.message = redactMessage(info.message);
55
+ }
56
+ // Handle MESSAGE_SYMBOL with type safety
57
+ const symbolValue = info[MESSAGE_SYMBOL];
58
+ if (typeof symbolValue === 'string') {
59
+ info[MESSAGE_SYMBOL] = redactMessage(symbolValue);
60
+ }
61
+ }
62
+ return info;
63
+ });
64
+ /**
65
+ * Truncates long strings, especially base64 image data, within log messages.
66
+ *
67
+ * @param value - The value to be inspected and potentially truncated.
68
+ * @param length - The length at which to truncate the value. Default: 100.
69
+ * @returns The truncated or original value.
70
+ */
71
+ const truncateLongStrings = (value, length = 100) => {
72
+ if (typeof value === 'string') {
73
+ return value.length > length ? value.substring(0, length) + '... [truncated]' : value;
74
+ }
75
+ return value;
76
+ };
77
+ /**
78
+ * An array mapping function that truncates long strings (objects converted to JSON strings).
79
+ * @param item - The item to be condensed.
80
+ * @returns The condensed item.
81
+ */
82
+ const condenseArray = (item) => {
83
+ if (typeof item === 'string') {
84
+ return truncateLongStrings(JSON.stringify(item));
85
+ }
86
+ else if (typeof item === 'object') {
87
+ return truncateLongStrings(JSON.stringify(item));
88
+ }
89
+ return item;
90
+ };
91
+ /**
92
+ * Formats log messages for debugging purposes.
93
+ * - Truncates long strings within log messages.
94
+ * - Condenses arrays by truncating long strings and objects as strings within array items.
95
+ * - Redacts sensitive information from log messages if the log level is 'error'.
96
+ * - Converts log information object to a formatted string.
97
+ *
98
+ * @param options - The options for formatting log messages.
99
+ * @returns The formatted log message.
100
+ */
101
+ const debugTraverse = winston.format.printf(({ level, message, timestamp, ...metadata }) => {
102
+ if (!message) {
103
+ return `${timestamp} ${level}`;
104
+ }
105
+ // Type-safe version of the CJS logic: !message?.trim || typeof message !== 'string'
106
+ if (typeof message !== 'string' || !message.trim) {
107
+ return `${timestamp} ${level}: ${JSON.stringify(message)}`;
108
+ }
109
+ const msgParts = [
110
+ `${timestamp} ${level}: ${truncateLongStrings(message.trim(), DEBUG_MESSAGE_LENGTH)}`,
111
+ ];
112
+ try {
113
+ if (level !== 'debug') {
114
+ return msgParts[0];
115
+ }
116
+ if (!metadata) {
117
+ return msgParts[0];
118
+ }
119
+ // Type-safe access to SPLAT_SYMBOL using bracket notation
120
+ const metadataRecord = metadata;
121
+ const splatArray = metadataRecord[SPLAT_SYMBOL];
122
+ const debugValue = Array.isArray(splatArray) ? splatArray[0] : undefined;
123
+ if (!debugValue) {
124
+ return msgParts[0];
125
+ }
126
+ if (debugValue && Array.isArray(debugValue)) {
127
+ msgParts.push(`\n${JSON.stringify(debugValue.map(condenseArray))}`);
128
+ return msgParts.join('');
129
+ }
130
+ if (typeof debugValue !== 'object') {
131
+ msgParts.push(` ${debugValue}`);
132
+ return msgParts.join('');
133
+ }
134
+ msgParts.push('\n{');
135
+ const copy = klona(metadata);
136
+ try {
137
+ const traversal = traverse(copy);
138
+ traversal.forEach(function (value) {
139
+ var _a;
140
+ if (typeof (this === null || this === void 0 ? void 0 : this.key) === 'symbol') {
141
+ return;
142
+ }
143
+ let _parentKey = '';
144
+ const parent = this.parent;
145
+ if (typeof (parent === null || parent === void 0 ? void 0 : parent.key) !== 'symbol' && (parent === null || parent === void 0 ? void 0 : parent.key) !== undefined) {
146
+ _parentKey = String(parent.key);
147
+ }
148
+ const parentKey = `${parent && parent.notRoot ? _parentKey + '.' : ''}`;
149
+ const tabs = `${parent && parent.notRoot ? ' ' : ' '}`;
150
+ const currentKey = (_a = this === null || this === void 0 ? void 0 : this.key) !== null && _a !== void 0 ? _a : 'unknown';
151
+ if (this.isLeaf && typeof value === 'string') {
152
+ const truncatedText = truncateLongStrings(value);
153
+ msgParts.push(`\n${tabs}${parentKey}${currentKey}: ${JSON.stringify(truncatedText)},`);
154
+ }
155
+ else if (this.notLeaf && Array.isArray(value) && value.length > 0) {
156
+ const currentMessage = `\n${tabs}// ${value.length} ${String(currentKey).replace(/s$/, '')}(s)`;
157
+ this.update(currentMessage);
158
+ msgParts.push(currentMessage);
159
+ const stringifiedArray = value.map(condenseArray);
160
+ msgParts.push(`\n${tabs}${parentKey}${currentKey}: [${stringifiedArray}],`);
161
+ }
162
+ else if (this.isLeaf && typeof value === 'function') {
163
+ msgParts.push(`\n${tabs}${parentKey}${currentKey}: function,`);
164
+ }
165
+ else if (this.isLeaf) {
166
+ msgParts.push(`\n${tabs}${parentKey}${currentKey}: ${value},`);
167
+ }
168
+ });
169
+ }
170
+ catch (e) {
171
+ const errorMessage = e instanceof Error ? e.message : 'Unknown error';
172
+ msgParts.push(`\n[LOGGER TRAVERSAL ERROR] ${errorMessage}`);
173
+ }
174
+ msgParts.push('\n}');
175
+ return msgParts.join('');
176
+ }
177
+ catch (e) {
178
+ const errorMessage = e instanceof Error ? e.message : 'Unknown error';
179
+ msgParts.push(`\n[LOGGER PARSING ERROR] ${errorMessage}`);
180
+ return msgParts.join('');
181
+ }
182
+ });
183
+ /**
184
+ * Truncates long string values in JSON log objects.
185
+ * Prevents outputting extremely long values (e.g., base64, blobs).
186
+ */
187
+ const jsonTruncateFormat = winston.format((info) => {
188
+ const truncateLongStrings = (str, maxLength) => str.length > maxLength ? str.substring(0, maxLength) + '...' : str;
189
+ const seen = new WeakSet();
190
+ const truncateObject = (obj) => {
191
+ if (typeof obj !== 'object' || obj === null) {
192
+ return obj;
193
+ }
194
+ // Handle circular references - now with proper object type
195
+ if (seen.has(obj)) {
196
+ return '[Circular]';
197
+ }
198
+ seen.add(obj);
199
+ if (Array.isArray(obj)) {
200
+ return obj.map((item) => truncateObject(item));
201
+ }
202
+ // We know this is an object at this point
203
+ const objectRecord = obj;
204
+ const newObj = {};
205
+ Object.entries(objectRecord).forEach(([key, value]) => {
206
+ if (typeof value === 'string') {
207
+ newObj[key] = truncateLongStrings(value, CONSOLE_JSON_STRING_LENGTH);
208
+ }
209
+ else {
210
+ newObj[key] = truncateObject(value);
211
+ }
212
+ });
213
+ return newObj;
214
+ };
215
+ return truncateObject(info);
216
+ });
217
+
218
+ export { debugTraverse, jsonTruncateFormat, redactFormat, redactMessage };
219
+ //# sourceMappingURL=parsers.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parsers.es.js","sources":["../../src/config/parsers.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+ var async_hooks = require('async_hooks');
4
+
5
+ /** Sentinel value for deliberate cross-tenant system operations */
6
+ const SYSTEM_TENANT_ID = '__SYSTEM__';
7
+ /**
8
+ * AsyncLocalStorage instance for propagating tenant context.
9
+ * Callbacks passed to `tenantStorage.run()` must be `async` for the context to propagate
10
+ * through Mongoose query execution. Sync callbacks returning a Mongoose thenable will lose context.
11
+ */
12
+ const tenantStorage = new async_hooks.AsyncLocalStorage();
13
+ /** Returns the current tenant ID from async context, or undefined if none is set */
14
+ function getTenantId() {
15
+ var _a;
16
+ return (_a = tenantStorage.getStore()) === null || _a === void 0 ? void 0 : _a.tenantId;
17
+ }
18
+ /**
19
+ * Runs a function in an explicit cross-tenant system context (bypasses tenant filtering).
20
+ * The callback MUST be async — sync callbacks returning Mongoose thenables will lose context.
21
+ */
22
+ function runAsSystem(fn) {
23
+ return tenantStorage.run({ tenantId: SYSTEM_TENANT_ID }, fn);
24
+ }
25
+
26
+ exports.SYSTEM_TENANT_ID = SYSTEM_TENANT_ID;
27
+ exports.getTenantId = getTenantId;
28
+ exports.runAsSystem = runAsSystem;
29
+ exports.tenantStorage = tenantStorage;
30
+ //# sourceMappingURL=tenantContext.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tenantContext.cjs","sources":["../../src/config/tenantContext.ts"],"sourcesContent":[null],"names":["AsyncLocalStorage"],"mappings":";;;;AAMA;AACO,MAAM,gBAAgB,GAAG;AAEhC;;;;AAIG;AACI,MAAM,aAAa,GAAG,IAAIA,6BAAiB;AAElD;SACgB,WAAW,GAAA;;AACzB,IAAA,OAAO,MAAA,aAAa,CAAC,QAAQ,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,QAAQ;AAC3C;AAEA;;;AAGG;AACG,SAAU,WAAW,CAAI,EAAoB,EAAA;AACjD,IAAA,OAAO,aAAa,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;AAC9D;;;;;;;"}
@@ -0,0 +1,25 @@
1
+ import { AsyncLocalStorage } from 'async_hooks';
2
+
3
+ /** Sentinel value for deliberate cross-tenant system operations */
4
+ const SYSTEM_TENANT_ID = '__SYSTEM__';
5
+ /**
6
+ * AsyncLocalStorage instance for propagating tenant context.
7
+ * Callbacks passed to `tenantStorage.run()` must be `async` for the context to propagate
8
+ * through Mongoose query execution. Sync callbacks returning a Mongoose thenable will lose context.
9
+ */
10
+ const tenantStorage = new AsyncLocalStorage();
11
+ /** Returns the current tenant ID from async context, or undefined if none is set */
12
+ function getTenantId() {
13
+ var _a;
14
+ return (_a = tenantStorage.getStore()) === null || _a === void 0 ? void 0 : _a.tenantId;
15
+ }
16
+ /**
17
+ * Runs a function in an explicit cross-tenant system context (bypasses tenant filtering).
18
+ * The callback MUST be async — sync callbacks returning Mongoose thenables will lose context.
19
+ */
20
+ function runAsSystem(fn) {
21
+ return tenantStorage.run({ tenantId: SYSTEM_TENANT_ID }, fn);
22
+ }
23
+
24
+ export { SYSTEM_TENANT_ID, getTenantId, runAsSystem, tenantStorage };
25
+ //# sourceMappingURL=tenantContext.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tenantContext.es.js","sources":["../../src/config/tenantContext.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAMA;AACO,MAAM,gBAAgB,GAAG;AAEhC;;;;AAIG;AACI,MAAM,aAAa,GAAG,IAAI,iBAAiB;AAElD;SACgB,WAAW,GAAA;;AACzB,IAAA,OAAO,MAAA,aAAa,CAAC,QAAQ,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,QAAQ;AAC3C;AAEA;;;AAGG;AACG,SAAU,WAAW,CAAI,EAAoB,EAAA;AACjD,IAAA,OAAO,aAAa,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;AAC9D;;;;"}
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ var path = require('path');
4
+
5
+ /**
6
+ * Determine the log directory in a cross-compatible way.
7
+ * Priority:
8
+ * 1. LIBRECHAT_LOG_DIR environment variable
9
+ * 2. If running within LibreChat monorepo (when cwd ends with /api), use api/logs
10
+ * 3. If api/logs exists relative to cwd, use that (for running from project root)
11
+ * 4. Otherwise, use logs directory relative to process.cwd()
12
+ *
13
+ * This avoids using __dirname which is not available in ESM modules
14
+ */
15
+ const getLogDirectory = () => {
16
+ if (process.env.LIBRECHAT_LOG_DIR) {
17
+ return process.env.LIBRECHAT_LOG_DIR;
18
+ }
19
+ const cwd = process.cwd();
20
+ // Check if we're running from within the api directory
21
+ if (cwd.endsWith('/api') || cwd.endsWith('\\api')) {
22
+ return path.join(cwd, 'logs');
23
+ }
24
+ // Check if api/logs exists relative to current directory (running from project root)
25
+ // We'll just use the path and let the file system create it if needed
26
+ const apiLogsPath = path.join(cwd, 'api', 'logs');
27
+ // For LibreChat project structure, use api/logs
28
+ // For external consumers, they should set LIBRECHAT_LOG_DIR
29
+ if (cwd.includes('LibreChat')) {
30
+ return apiLogsPath;
31
+ }
32
+ // Default to logs directory relative to current working directory
33
+ return path.join(cwd, 'logs');
34
+ };
35
+
36
+ exports.getLogDirectory = getLogDirectory;
37
+ //# sourceMappingURL=utils.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.cjs","sources":["../../src/config/utils.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAEA;;;;;;;;;AASG;AACI,MAAM,eAAe,GAAG,MAAa;AAC1C,IAAA,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;AACjC,QAAA,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB;IACtC;AAEA,IAAA,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;;AAGzB,IAAA,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;IAC/B;;;AAIA,IAAA,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC;;;AAIjD,IAAA,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;AAC7B,QAAA,OAAO,WAAW;IACpB;;IAGA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;AAC/B;;;;"}
@@ -0,0 +1,35 @@
1
+ import path from 'path';
2
+
3
+ /**
4
+ * Determine the log directory in a cross-compatible way.
5
+ * Priority:
6
+ * 1. LIBRECHAT_LOG_DIR environment variable
7
+ * 2. If running within LibreChat monorepo (when cwd ends with /api), use api/logs
8
+ * 3. If api/logs exists relative to cwd, use that (for running from project root)
9
+ * 4. Otherwise, use logs directory relative to process.cwd()
10
+ *
11
+ * This avoids using __dirname which is not available in ESM modules
12
+ */
13
+ const getLogDirectory = () => {
14
+ if (process.env.LIBRECHAT_LOG_DIR) {
15
+ return process.env.LIBRECHAT_LOG_DIR;
16
+ }
17
+ const cwd = process.cwd();
18
+ // Check if we're running from within the api directory
19
+ if (cwd.endsWith('/api') || cwd.endsWith('\\api')) {
20
+ return path.join(cwd, 'logs');
21
+ }
22
+ // Check if api/logs exists relative to current directory (running from project root)
23
+ // We'll just use the path and let the file system create it if needed
24
+ const apiLogsPath = path.join(cwd, 'api', 'logs');
25
+ // For LibreChat project structure, use api/logs
26
+ // For external consumers, they should set LIBRECHAT_LOG_DIR
27
+ if (cwd.includes('LibreChat')) {
28
+ return apiLogsPath;
29
+ }
30
+ // Default to logs directory relative to current working directory
31
+ return path.join(cwd, 'logs');
32
+ };
33
+
34
+ export { getLogDirectory };
35
+ //# sourceMappingURL=utils.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.es.js","sources":["../../src/config/utils.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAEA;;;;;;;;;AASG;AACI,MAAM,eAAe,GAAG,MAAa;AAC1C,IAAA,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;AACjC,QAAA,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB;IACtC;AAEA,IAAA,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;;AAGzB,IAAA,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;IAC/B;;;AAIA,IAAA,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC;;;AAIjD,IAAA,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;AAC7B,QAAA,OAAO,WAAW;IACpB;;IAGA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;AAC/B;;;;"}