@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.
- package/dist/admin/capabilities.cjs +192 -0
- package/dist/admin/capabilities.cjs.map +1 -0
- package/dist/admin/capabilities.es.js +182 -0
- package/dist/admin/capabilities.es.js.map +1 -0
- package/dist/app/agents.cjs +24 -0
- package/dist/app/agents.cjs.map +1 -0
- package/dist/app/agents.es.js +22 -0
- package/dist/app/agents.es.js.map +1 -0
- package/dist/app/assistants.cjs +56 -0
- package/dist/app/assistants.cjs.map +1 -0
- package/dist/app/assistants.es.js +53 -0
- package/dist/app/assistants.es.js.map +1 -0
- package/dist/app/azure.cjs +61 -0
- package/dist/app/azure.cjs.map +1 -0
- package/dist/app/azure.es.js +59 -0
- package/dist/app/azure.es.js.map +1 -0
- package/dist/app/endpoints.cjs +63 -0
- package/dist/app/endpoints.cjs.map +1 -0
- package/dist/app/endpoints.es.js +61 -0
- package/dist/app/endpoints.es.js.map +1 -0
- package/dist/app/interface.cjs +53 -0
- package/dist/app/interface.cjs.map +1 -0
- package/dist/app/interface.es.js +51 -0
- package/dist/app/interface.es.js.map +1 -0
- package/dist/app/memory.cjs +29 -0
- package/dist/app/memory.cjs.map +1 -0
- package/dist/app/memory.es.js +26 -0
- package/dist/app/memory.es.js.map +1 -0
- package/dist/app/ocr.cjs +21 -0
- package/dist/app/ocr.cjs.map +1 -0
- package/dist/app/ocr.es.js +19 -0
- package/dist/app/ocr.es.js.map +1 -0
- package/dist/app/resolution.cjs +51 -0
- package/dist/app/resolution.cjs.map +1 -0
- package/dist/app/resolution.es.js +49 -0
- package/dist/app/resolution.es.js.map +1 -0
- package/dist/app/service.cjs +108 -0
- package/dist/app/service.cjs.map +1 -0
- package/dist/app/service.es.js +106 -0
- package/dist/app/service.es.js.map +1 -0
- package/dist/app/specs.cjs +71 -0
- package/dist/app/specs.cjs.map +1 -0
- package/dist/app/specs.es.js +69 -0
- package/dist/app/specs.es.js.map +1 -0
- package/dist/app/turnstile.cjs +40 -0
- package/dist/app/turnstile.cjs.map +1 -0
- package/dist/app/turnstile.es.js +38 -0
- package/dist/app/turnstile.es.js.map +1 -0
- package/dist/app/vertex.cjs +156 -0
- package/dist/app/vertex.cjs.map +1 -0
- package/dist/app/vertex.es.js +152 -0
- package/dist/app/vertex.es.js.map +1 -0
- package/dist/app/web.cjs +87 -0
- package/dist/app/web.cjs.map +1 -0
- package/dist/app/web.es.js +82 -0
- package/dist/app/web.es.js.map +1 -0
- package/dist/common/enum.cjs +19 -0
- package/dist/common/enum.cjs.map +1 -0
- package/dist/common/enum.es.js +19 -0
- package/dist/common/enum.es.js.map +1 -0
- package/dist/config/meiliLogger.cjs +57 -0
- package/dist/config/meiliLogger.cjs.map +1 -0
- package/dist/config/meiliLogger.es.js +55 -0
- package/dist/config/meiliLogger.es.js.map +1 -0
- package/dist/config/parsers.cjs +224 -0
- package/dist/config/parsers.cjs.map +1 -0
- package/dist/config/parsers.es.js +219 -0
- package/dist/config/parsers.es.js.map +1 -0
- package/dist/config/tenantContext.cjs +30 -0
- package/dist/config/tenantContext.cjs.map +1 -0
- package/dist/config/tenantContext.es.js +25 -0
- package/dist/config/tenantContext.es.js.map +1 -0
- package/dist/config/utils.cjs +37 -0
- package/dist/config/utils.cjs.map +1 -0
- package/dist/config/utils.es.js +35 -0
- package/dist/config/utils.es.js.map +1 -0
- package/dist/config/winston.cjs +93 -0
- package/dist/config/winston.cjs.map +1 -0
- package/dist/config/winston.es.js +91 -0
- package/dist/config/winston.es.js.map +1 -0
- package/dist/crypto/index.cjs +156 -0
- package/dist/crypto/index.cjs.map +1 -0
- package/dist/crypto/index.es.js +145 -0
- package/dist/crypto/index.es.js.map +1 -0
- package/dist/index.cjs +142 -11734
- package/dist/index.cjs.map +1 -1
- package/dist/index.es.js +52 -11652
- package/dist/index.es.js.map +1 -1
- package/dist/methods/accessRole.cjs +210 -0
- package/dist/methods/accessRole.cjs.map +1 -0
- package/dist/methods/accessRole.es.js +208 -0
- package/dist/methods/accessRole.es.js.map +1 -0
- package/dist/methods/aclEntry.cjs +361 -0
- package/dist/methods/aclEntry.cjs.map +1 -0
- package/dist/methods/aclEntry.es.js +359 -0
- package/dist/methods/aclEntry.es.js.map +1 -0
- package/dist/methods/action.cjs +59 -0
- package/dist/methods/action.cjs.map +1 -0
- package/dist/methods/action.es.js +57 -0
- package/dist/methods/action.es.js.map +1 -0
- package/dist/methods/agent.cjs +580 -0
- package/dist/methods/agent.cjs.map +1 -0
- package/dist/methods/agent.es.js +578 -0
- package/dist/methods/agent.es.js.map +1 -0
- package/dist/methods/agentApiKey.cjs +140 -0
- package/dist/methods/agentApiKey.cjs.map +1 -0
- package/dist/methods/agentApiKey.es.js +138 -0
- package/dist/methods/agentApiKey.es.js.map +1 -0
- package/dist/methods/agentCategory.cjs +226 -0
- package/dist/methods/agentCategory.cjs.map +1 -0
- package/dist/methods/agentCategory.es.js +224 -0
- package/dist/methods/agentCategory.es.js.map +1 -0
- package/dist/methods/assistant.cjs +53 -0
- package/dist/methods/assistant.cjs.map +1 -0
- package/dist/methods/assistant.es.js +51 -0
- package/dist/methods/assistant.es.js.map +1 -0
- package/dist/methods/banner.cjs +32 -0
- package/dist/methods/banner.cjs.map +1 -0
- package/dist/methods/banner.es.js +30 -0
- package/dist/methods/banner.es.js.map +1 -0
- package/dist/methods/categories.cjs +33 -0
- package/dist/methods/categories.cjs.map +1 -0
- package/dist/methods/categories.es.js +31 -0
- package/dist/methods/categories.es.js.map +1 -0
- package/dist/methods/config.cjs +106 -0
- package/dist/methods/config.cjs.map +1 -0
- package/dist/methods/config.es.js +104 -0
- package/dist/methods/config.es.js.map +1 -0
- package/dist/methods/conversation.cjs +344 -0
- package/dist/methods/conversation.cjs.map +1 -0
- package/dist/methods/conversation.es.js +342 -0
- package/dist/methods/conversation.es.js.map +1 -0
- package/dist/methods/conversationTag.cjs +234 -0
- package/dist/methods/conversationTag.cjs.map +1 -0
- package/dist/methods/conversationTag.es.js +232 -0
- package/dist/methods/conversationTag.es.js.map +1 -0
- package/dist/methods/file.cjs +315 -0
- package/dist/methods/file.cjs.map +1 -0
- package/dist/methods/file.es.js +313 -0
- package/dist/methods/file.es.js.map +1 -0
- package/dist/methods/index.cjs +135 -0
- package/dist/methods/index.cjs.map +1 -0
- package/dist/methods/index.es.js +130 -0
- package/dist/methods/index.es.js.map +1 -0
- package/dist/methods/key.cjs +136 -0
- package/dist/methods/key.cjs.map +1 -0
- package/dist/methods/key.es.js +134 -0
- package/dist/methods/key.es.js.map +1 -0
- package/dist/methods/mcpServer.cjs +259 -0
- package/dist/methods/mcpServer.cjs.map +1 -0
- package/dist/methods/mcpServer.es.js +257 -0
- package/dist/methods/mcpServer.es.js.map +1 -0
- package/dist/methods/memory.cjs +145 -0
- package/dist/methods/memory.cjs.map +1 -0
- package/dist/methods/memory.es.js +143 -0
- package/dist/methods/memory.es.js.map +1 -0
- package/dist/methods/message.cjs +280 -0
- package/dist/methods/message.cjs.map +1 -0
- package/dist/methods/message.es.js +278 -0
- package/dist/methods/message.es.js.map +1 -0
- package/dist/methods/pluginAuth.cjs +108 -0
- package/dist/methods/pluginAuth.cjs.map +1 -0
- package/dist/methods/pluginAuth.es.js +106 -0
- package/dist/methods/pluginAuth.es.js.map +1 -0
- package/dist/methods/preset.cjs +105 -0
- package/dist/methods/preset.cjs.map +1 -0
- package/dist/methods/preset.es.js +103 -0
- package/dist/methods/preset.es.js.map +1 -0
- package/dist/methods/prompt.cjs +546 -0
- package/dist/methods/prompt.cjs.map +1 -0
- package/dist/methods/prompt.es.js +544 -0
- package/dist/methods/prompt.es.js.map +1 -0
- package/dist/methods/role.cjs +290 -0
- package/dist/methods/role.cjs.map +1 -0
- package/dist/methods/role.es.js +288 -0
- package/dist/methods/role.es.js.map +1 -0
- package/dist/methods/session.cjs +221 -0
- package/dist/methods/session.cjs.map +1 -0
- package/dist/methods/session.es.js +217 -0
- package/dist/methods/session.es.js.map +1 -0
- package/dist/methods/share.cjs +474 -0
- package/dist/methods/share.cjs.map +1 -0
- package/dist/methods/share.es.js +472 -0
- package/dist/methods/share.es.js.map +1 -0
- package/dist/methods/spendTokens.cjs +109 -0
- package/dist/methods/spendTokens.cjs.map +1 -0
- package/dist/methods/spendTokens.es.js +107 -0
- package/dist/methods/spendTokens.es.js.map +1 -0
- package/dist/methods/systemGrant.cjs +190 -0
- package/dist/methods/systemGrant.cjs.map +1 -0
- package/dist/methods/systemGrant.es.js +188 -0
- package/dist/methods/systemGrant.es.js.map +1 -0
- package/dist/methods/token.cjs +117 -0
- package/dist/methods/token.cjs.map +1 -0
- package/dist/methods/token.es.js +115 -0
- package/dist/methods/token.es.js.map +1 -0
- package/dist/methods/toolCall.cjs +91 -0
- package/dist/methods/toolCall.cjs.map +1 -0
- package/dist/methods/toolCall.es.js +89 -0
- package/dist/methods/toolCall.es.js.map +1 -0
- package/dist/methods/transaction.cjs +305 -0
- package/dist/methods/transaction.cjs.map +1 -0
- package/dist/methods/transaction.es.js +303 -0
- package/dist/methods/transaction.es.js.map +1 -0
- package/dist/methods/tx.cjs +443 -0
- package/dist/methods/tx.cjs.map +1 -0
- package/dist/methods/tx.es.js +437 -0
- package/dist/methods/tx.es.js.map +1 -0
- package/dist/methods/user.cjs +269 -0
- package/dist/methods/user.cjs.map +1 -0
- package/dist/methods/user.es.js +266 -0
- package/dist/methods/user.es.js.map +1 -0
- package/dist/methods/userGroup.cjs +518 -0
- package/dist/methods/userGroup.cjs.map +1 -0
- package/dist/methods/userGroup.es.js +516 -0
- package/dist/methods/userGroup.es.js.map +1 -0
- package/dist/migrations/tenantIndexes.cjs +85 -0
- package/dist/migrations/tenantIndexes.cjs.map +1 -0
- package/dist/migrations/tenantIndexes.es.js +82 -0
- package/dist/migrations/tenantIndexes.es.js.map +1 -0
- package/dist/models/accessRole.cjs +12 -0
- package/dist/models/accessRole.cjs.map +1 -0
- package/dist/models/accessRole.es.js +10 -0
- package/dist/models/accessRole.es.js.map +1 -0
- package/dist/models/aclEntry.cjs +12 -0
- package/dist/models/aclEntry.cjs.map +1 -0
- package/dist/models/aclEntry.es.js +10 -0
- package/dist/models/aclEntry.es.js.map +1 -0
- package/dist/models/action.cjs +12 -0
- package/dist/models/action.cjs.map +1 -0
- package/dist/models/action.es.js +10 -0
- package/dist/models/action.es.js.map +1 -0
- package/dist/models/agent.cjs +12 -0
- package/dist/models/agent.cjs.map +1 -0
- package/dist/models/agent.es.js +10 -0
- package/dist/models/agent.es.js.map +1 -0
- package/dist/models/agentApiKey.cjs +12 -0
- package/dist/models/agentApiKey.cjs.map +1 -0
- package/dist/models/agentApiKey.es.js +10 -0
- package/dist/models/agentApiKey.es.js.map +1 -0
- package/dist/models/agentCategory.cjs +13 -0
- package/dist/models/agentCategory.cjs.map +1 -0
- package/dist/models/agentCategory.es.js +11 -0
- package/dist/models/agentCategory.es.js.map +1 -0
- package/dist/models/assistant.cjs +12 -0
- package/dist/models/assistant.cjs.map +1 -0
- package/dist/models/assistant.es.js +10 -0
- package/dist/models/assistant.es.js.map +1 -0
- package/dist/models/balance.cjs +12 -0
- package/dist/models/balance.cjs.map +1 -0
- package/dist/models/balance.es.js +10 -0
- package/dist/models/balance.es.js.map +1 -0
- package/dist/models/banner.cjs +12 -0
- package/dist/models/banner.cjs.map +1 -0
- package/dist/models/banner.es.js +10 -0
- package/dist/models/banner.es.js.map +1 -0
- package/dist/models/config.cjs +12 -0
- package/dist/models/config.cjs.map +1 -0
- package/dist/models/config.es.js +10 -0
- package/dist/models/config.es.js.map +1 -0
- package/dist/models/conversationTag.cjs +13 -0
- package/dist/models/conversationTag.cjs.map +1 -0
- package/dist/models/conversationTag.es.js +11 -0
- package/dist/models/conversationTag.es.js.map +1 -0
- package/dist/models/convo.cjs +23 -0
- package/dist/models/convo.cjs.map +1 -0
- package/dist/models/convo.es.js +21 -0
- package/dist/models/convo.es.js.map +1 -0
- package/dist/models/file.cjs +12 -0
- package/dist/models/file.cjs.map +1 -0
- package/dist/models/file.es.js +10 -0
- package/dist/models/file.es.js.map +1 -0
- package/dist/models/group.cjs +12 -0
- package/dist/models/group.cjs.map +1 -0
- package/dist/models/group.es.js +10 -0
- package/dist/models/group.es.js.map +1 -0
- package/dist/models/index.cjs +73 -0
- package/dist/models/index.cjs.map +1 -0
- package/dist/models/index.es.js +71 -0
- package/dist/models/index.es.js.map +1 -0
- package/dist/models/key.cjs +12 -0
- package/dist/models/key.cjs.map +1 -0
- package/dist/models/key.es.js +10 -0
- package/dist/models/key.es.js.map +1 -0
- package/dist/models/mcpServer.cjs +12 -0
- package/dist/models/mcpServer.cjs.map +1 -0
- package/dist/models/mcpServer.es.js +10 -0
- package/dist/models/mcpServer.es.js.map +1 -0
- package/dist/models/memory.cjs +12 -0
- package/dist/models/memory.cjs.map +1 -0
- package/dist/models/memory.es.js +10 -0
- package/dist/models/memory.es.js.map +1 -0
- package/dist/models/message.cjs +22 -0
- package/dist/models/message.cjs.map +1 -0
- package/dist/models/message.es.js +20 -0
- package/dist/models/message.es.js.map +1 -0
- package/dist/models/pluginAuth.cjs +12 -0
- package/dist/models/pluginAuth.cjs.map +1 -0
- package/dist/models/pluginAuth.es.js +10 -0
- package/dist/models/pluginAuth.es.js.map +1 -0
- package/dist/models/plugins/mongoMeili.cjs +547 -0
- package/dist/models/plugins/mongoMeili.cjs.map +1 -0
- package/dist/models/plugins/mongoMeili.es.js +545 -0
- package/dist/models/plugins/mongoMeili.es.js.map +1 -0
- package/dist/models/plugins/tenantIsolation.cjs +140 -0
- package/dist/models/plugins/tenantIsolation.cjs.map +1 -0
- package/dist/models/plugins/tenantIsolation.es.js +138 -0
- package/dist/models/plugins/tenantIsolation.es.js.map +1 -0
- package/dist/models/preset.cjs +12 -0
- package/dist/models/preset.cjs.map +1 -0
- package/dist/models/preset.es.js +10 -0
- package/dist/models/preset.es.js.map +1 -0
- package/dist/models/prompt.cjs +12 -0
- package/dist/models/prompt.cjs.map +1 -0
- package/dist/models/prompt.es.js +10 -0
- package/dist/models/prompt.es.js.map +1 -0
- package/dist/models/promptGroup.cjs +13 -0
- package/dist/models/promptGroup.cjs.map +1 -0
- package/dist/models/promptGroup.es.js +11 -0
- package/dist/models/promptGroup.es.js.map +1 -0
- package/dist/models/role.cjs +12 -0
- package/dist/models/role.cjs.map +1 -0
- package/dist/models/role.es.js +10 -0
- package/dist/models/role.es.js.map +1 -0
- package/dist/models/session.cjs +12 -0
- package/dist/models/session.cjs.map +1 -0
- package/dist/models/session.es.js +10 -0
- package/dist/models/session.es.js.map +1 -0
- package/dist/models/sharedLink.cjs +12 -0
- package/dist/models/sharedLink.cjs.map +1 -0
- package/dist/models/sharedLink.es.js +10 -0
- package/dist/models/sharedLink.es.js.map +1 -0
- package/dist/models/systemGrant.cjs +16 -0
- package/dist/models/systemGrant.cjs.map +1 -0
- package/dist/models/systemGrant.es.js +14 -0
- package/dist/models/systemGrant.es.js.map +1 -0
- package/dist/models/token.cjs +12 -0
- package/dist/models/token.cjs.map +1 -0
- package/dist/models/token.es.js +10 -0
- package/dist/models/token.es.js.map +1 -0
- package/dist/models/toolCall.cjs +12 -0
- package/dist/models/toolCall.cjs.map +1 -0
- package/dist/models/toolCall.es.js +10 -0
- package/dist/models/toolCall.es.js.map +1 -0
- package/dist/models/transaction.cjs +12 -0
- package/dist/models/transaction.cjs.map +1 -0
- package/dist/models/transaction.es.js +10 -0
- package/dist/models/transaction.es.js.map +1 -0
- package/dist/models/user.cjs +12 -0
- package/dist/models/user.cjs.map +1 -0
- package/dist/models/user.es.js +10 -0
- package/dist/models/user.es.js.map +1 -0
- package/dist/schema/accessRole.cjs +34 -0
- package/dist/schema/accessRole.cjs.map +1 -0
- package/dist/schema/accessRole.es.js +32 -0
- package/dist/schema/accessRole.es.js.map +1 -0
- package/dist/schema/aclEntry.cjs +74 -0
- package/dist/schema/aclEntry.cjs.map +1 -0
- package/dist/schema/aclEntry.es.js +72 -0
- package/dist/schema/aclEntry.es.js.map +1 -0
- package/dist/schema/action.cjs +54 -0
- package/dist/schema/action.cjs.map +1 -0
- package/dist/schema/action.es.js +52 -0
- package/dist/schema/action.es.js.map +1 -0
- package/dist/schema/agent.cjs +128 -0
- package/dist/schema/agent.cjs.map +1 -0
- package/dist/schema/agent.es.js +126 -0
- package/dist/schema/agent.es.js.map +1 -0
- package/dist/schema/agentApiKey.cjs +50 -0
- package/dist/schema/agentApiKey.cjs.map +1 -0
- package/dist/schema/agentApiKey.es.js +48 -0
- package/dist/schema/agentApiKey.es.js.map +1 -0
- package/dist/schema/agentCategory.cjs +49 -0
- package/dist/schema/agentCategory.cjs.map +1 -0
- package/dist/schema/agentCategory.es.js +47 -0
- package/dist/schema/agentCategory.es.js.map +1 -0
- package/dist/schema/assistant.cjs +42 -0
- package/dist/schema/assistant.cjs.map +1 -0
- package/dist/schema/assistant.es.js +40 -0
- package/dist/schema/assistant.es.js.map +1 -0
- package/dist/schema/balance.cjs +47 -0
- package/dist/schema/balance.cjs.map +1 -0
- package/dist/schema/balance.es.js +45 -0
- package/dist/schema/balance.es.js.map +1 -0
- package/dist/schema/banner.cjs +42 -0
- package/dist/schema/banner.cjs.map +1 -0
- package/dist/schema/banner.es.js +40 -0
- package/dist/schema/banner.es.js.map +1 -0
- package/dist/schema/categories.cjs +23 -0
- package/dist/schema/categories.cjs.map +1 -0
- package/dist/schema/categories.es.js +21 -0
- package/dist/schema/categories.es.js.map +1 -0
- package/dist/schema/config.cjs +59 -0
- package/dist/schema/config.cjs.map +1 -0
- package/dist/schema/config.es.js +57 -0
- package/dist/schema/config.es.js.map +1 -0
- package/dist/schema/conversationTag.cjs +36 -0
- package/dist/schema/conversationTag.cjs.map +1 -0
- package/dist/schema/conversationTag.es.js +34 -0
- package/dist/schema/conversationTag.es.js.map +1 -0
- package/dist/schema/convo.cjs +52 -0
- package/dist/schema/convo.cjs.map +1 -0
- package/dist/schema/convo.es.js +50 -0
- package/dist/schema/convo.es.js.map +1 -0
- package/dist/schema/defaults.cjs +168 -0
- package/dist/schema/defaults.cjs.map +1 -0
- package/dist/schema/defaults.es.js +166 -0
- package/dist/schema/defaults.es.js.map +1 -0
- package/dist/schema/file.cjs +92 -0
- package/dist/schema/file.cjs.map +1 -0
- package/dist/schema/file.es.js +90 -0
- package/dist/schema/file.es.js.map +1 -0
- package/dist/schema/group.cjs +56 -0
- package/dist/schema/group.cjs.map +1 -0
- package/dist/schema/group.es.js +54 -0
- package/dist/schema/group.es.js.map +1 -0
- package/dist/schema/key.cjs +30 -0
- package/dist/schema/key.cjs.map +1 -0
- package/dist/schema/key.es.js +28 -0
- package/dist/schema/key.es.js.map +1 -0
- package/dist/schema/mcpServer.cjs +33 -0
- package/dist/schema/mcpServer.cjs.map +1 -0
- package/dist/schema/mcpServer.es.js +31 -0
- package/dist/schema/mcpServer.es.js.map +1 -0
- package/dist/schema/memory.cjs +39 -0
- package/dist/schema/memory.cjs.map +1 -0
- package/dist/schema/memory.es.js +37 -0
- package/dist/schema/memory.es.js.map +1 -0
- package/dist/schema/message.cjs +167 -0
- package/dist/schema/message.cjs.map +1 -0
- package/dist/schema/message.es.js +165 -0
- package/dist/schema/message.es.js.map +1 -0
- package/dist/schema/pluginAuth.cjs +28 -0
- package/dist/schema/pluginAuth.cjs.map +1 -0
- package/dist/schema/pluginAuth.es.js +26 -0
- package/dist/schema/pluginAuth.es.js.map +1 -0
- package/dist/schema/preset.cjs +36 -0
- package/dist/schema/preset.cjs.map +1 -0
- package/dist/schema/preset.es.js +34 -0
- package/dist/schema/preset.es.js.map +1 -0
- package/dist/schema/prompt.cjs +36 -0
- package/dist/schema/prompt.cjs.map +1 -0
- package/dist/schema/prompt.es.js +34 -0
- package/dist/schema/prompt.es.js.map +1 -0
- package/dist/schema/promptGroup.cjs +65 -0
- package/dist/schema/promptGroup.cjs.map +1 -0
- package/dist/schema/promptGroup.es.js +63 -0
- package/dist/schema/promptGroup.es.js.map +1 -0
- package/dist/schema/role.cjs +84 -0
- package/dist/schema/role.cjs.map +1 -0
- package/dist/schema/role.es.js +82 -0
- package/dist/schema/role.es.js.map +1 -0
- package/dist/schema/session.cjs +27 -0
- package/dist/schema/session.cjs.map +1 -0
- package/dist/schema/session.es.js +25 -0
- package/dist/schema/session.es.js.map +1 -0
- package/dist/schema/share.cjs +40 -0
- package/dist/schema/share.cjs.map +1 -0
- package/dist/schema/share.es.js +38 -0
- package/dist/schema/share.es.js.map +1 -0
- package/dist/schema/systemGrant.cjs +66 -0
- package/dist/schema/systemGrant.cjs.map +1 -0
- package/dist/schema/systemGrant.es.js +64 -0
- package/dist/schema/systemGrant.es.js.map +1 -0
- package/dist/schema/token.cjs +45 -0
- package/dist/schema/token.cjs.map +1 -0
- package/dist/schema/token.es.js +43 -0
- package/dist/schema/token.es.js.map +1 -0
- package/dist/schema/toolCall.cjs +44 -0
- package/dist/schema/toolCall.cjs.map +1 -0
- package/dist/schema/toolCall.es.js +42 -0
- package/dist/schema/toolCall.es.js.map +1 -0
- package/dist/schema/transaction.cjs +48 -0
- package/dist/schema/transaction.cjs.map +1 -0
- package/dist/schema/transaction.es.js +46 -0
- package/dist/schema/transaction.es.js.map +1 -0
- package/dist/schema/user.cjs +165 -0
- package/dist/schema/user.cjs.map +1 -0
- package/dist/schema/user.es.js +163 -0
- package/dist/schema/user.es.js.map +1 -0
- package/dist/types/methods/config.d.ts +1 -0
- package/dist/utils/object-traverse.cjs +158 -0
- package/dist/utils/object-traverse.cjs.map +1 -0
- package/dist/utils/object-traverse.es.js +156 -0
- package/dist/utils/object-traverse.es.js.map +1 -0
- package/dist/utils/principal.cjs +24 -0
- package/dist/utils/principal.cjs.map +1 -0
- package/dist/utils/principal.es.js +22 -0
- package/dist/utils/principal.es.js.map +1 -0
- package/dist/utils/string.cjs +11 -0
- package/dist/utils/string.cjs.map +1 -0
- package/dist/utils/string.es.js +9 -0
- package/dist/utils/string.es.js.map +1 -0
- package/dist/utils/tempChatRetention.cjs +70 -0
- package/dist/utils/tempChatRetention.cjs.map +1 -0
- package/dist/utils/tempChatRetention.es.js +64 -0
- package/dist/utils/tempChatRetention.es.js.map +1 -0
- package/dist/utils/transactions.cjs +60 -0
- package/dist/utils/transactions.cjs.map +1 -0
- package/dist/utils/transactions.es.js +56 -0
- package/dist/utils/transactions.es.js.map +1 -0
- package/package.json +7 -1
|
@@ -0,0 +1,361 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var mongoose = require('mongoose');
|
|
4
|
+
var librechatDataProvider = require('librechat-data-provider');
|
|
5
|
+
|
|
6
|
+
function createAclEntryMethods(mongoose$1) {
|
|
7
|
+
/**
|
|
8
|
+
* Find ACL entries for a specific principal (user or group)
|
|
9
|
+
* @param principalType - The type of principal ('user', 'group')
|
|
10
|
+
* @param principalId - The ID of the principal
|
|
11
|
+
* @param resourceType - Optional filter by resource type
|
|
12
|
+
* @returns Array of ACL entries
|
|
13
|
+
*/
|
|
14
|
+
async function findEntriesByPrincipal(principalType, principalId, resourceType) {
|
|
15
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
16
|
+
const query = { principalType, principalId };
|
|
17
|
+
if (resourceType) {
|
|
18
|
+
query.resourceType = resourceType;
|
|
19
|
+
}
|
|
20
|
+
return await AclEntry.find(query).lean();
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Find ACL entries for a specific resource
|
|
24
|
+
* @param resourceType - The type of resource ('agent', 'project', 'file')
|
|
25
|
+
* @param resourceId - The ID of the resource
|
|
26
|
+
* @returns Array of ACL entries
|
|
27
|
+
*/
|
|
28
|
+
async function findEntriesByResource(resourceType, resourceId) {
|
|
29
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
30
|
+
return await AclEntry.find({ resourceType, resourceId }).lean();
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Find all ACL entries for a set of principals (including public)
|
|
34
|
+
* @param principalsList - List of principals, each containing { principalType, principalId }
|
|
35
|
+
* @param resourceType - The type of resource
|
|
36
|
+
* @param resourceId - The ID of the resource
|
|
37
|
+
* @returns Array of matching ACL entries
|
|
38
|
+
*/
|
|
39
|
+
async function findEntriesByPrincipalsAndResource(principalsList, resourceType, resourceId) {
|
|
40
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
41
|
+
const principalsQuery = principalsList.map((p) => ({
|
|
42
|
+
principalType: p.principalType,
|
|
43
|
+
...(p.principalType !== librechatDataProvider.PrincipalType.PUBLIC && { principalId: p.principalId }),
|
|
44
|
+
}));
|
|
45
|
+
return await AclEntry.find({
|
|
46
|
+
$or: principalsQuery,
|
|
47
|
+
resourceType,
|
|
48
|
+
resourceId,
|
|
49
|
+
}).lean();
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Check if a set of principals has a specific permission on a resource
|
|
53
|
+
* @param principalsList - List of principals, each containing { principalType, principalId }
|
|
54
|
+
* @param resourceType - The type of resource
|
|
55
|
+
* @param resourceId - The ID of the resource
|
|
56
|
+
* @param permissionBit - The permission bit to check (use PermissionBits enum)
|
|
57
|
+
* @returns Whether any of the principals has the permission
|
|
58
|
+
*/
|
|
59
|
+
async function hasPermission(principalsList, resourceType, resourceId, permissionBit) {
|
|
60
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
61
|
+
const principalsQuery = principalsList.map((p) => ({
|
|
62
|
+
principalType: p.principalType,
|
|
63
|
+
...(p.principalType !== librechatDataProvider.PrincipalType.PUBLIC && { principalId: p.principalId }),
|
|
64
|
+
}));
|
|
65
|
+
const entry = await AclEntry.findOne({
|
|
66
|
+
$or: principalsQuery,
|
|
67
|
+
resourceType,
|
|
68
|
+
resourceId,
|
|
69
|
+
permBits: { $bitsAllSet: permissionBit },
|
|
70
|
+
}).lean();
|
|
71
|
+
return !!entry;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Get the combined effective permissions for a set of principals on a resource
|
|
75
|
+
* @param principalsList - List of principals, each containing { principalType, principalId }
|
|
76
|
+
* @param resourceType - The type of resource
|
|
77
|
+
* @param resourceId - The ID of the resource
|
|
78
|
+
* @returns {Promise<number>} Effective permission bitmask
|
|
79
|
+
*/
|
|
80
|
+
async function getEffectivePermissions(principalsList, resourceType, resourceId) {
|
|
81
|
+
const aclEntries = await findEntriesByPrincipalsAndResource(principalsList, resourceType, resourceId);
|
|
82
|
+
let effectiveBits = 0;
|
|
83
|
+
for (const entry of aclEntries) {
|
|
84
|
+
effectiveBits |= entry.permBits;
|
|
85
|
+
}
|
|
86
|
+
return effectiveBits;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Get effective permissions for multiple resources in a single query (BATCH)
|
|
90
|
+
* Returns a map of resourceId → effectivePermissionBits
|
|
91
|
+
*
|
|
92
|
+
* @param principalsList - List of principals (user + groups + public)
|
|
93
|
+
* @param resourceType - The type of resource ('MCPSERVER', 'AGENT', etc.)
|
|
94
|
+
* @param resourceIds - Array of resource IDs to check
|
|
95
|
+
* @returns {Promise<Map<string, number>>} Map of resourceId → permission bits
|
|
96
|
+
*
|
|
97
|
+
* @example
|
|
98
|
+
* const principals = await getUserPrincipals({ userId, role });
|
|
99
|
+
* const serverIds = [id1, id2, id3];
|
|
100
|
+
* const permMap = await getEffectivePermissionsForResources(
|
|
101
|
+
* principals,
|
|
102
|
+
* ResourceType.MCPSERVER,
|
|
103
|
+
* serverIds
|
|
104
|
+
* );
|
|
105
|
+
* // permMap.get(id1.toString()) → 7 (VIEW|EDIT|DELETE)
|
|
106
|
+
*/
|
|
107
|
+
async function getEffectivePermissionsForResources(principalsList, resourceType, resourceIds) {
|
|
108
|
+
if (!Array.isArray(resourceIds) || resourceIds.length === 0) {
|
|
109
|
+
return new Map();
|
|
110
|
+
}
|
|
111
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
112
|
+
const principalsQuery = principalsList.map((p) => ({
|
|
113
|
+
principalType: p.principalType,
|
|
114
|
+
...(p.principalType !== librechatDataProvider.PrincipalType.PUBLIC && { principalId: p.principalId }),
|
|
115
|
+
}));
|
|
116
|
+
// Batch query for all resources at once
|
|
117
|
+
const aclEntries = await AclEntry.find({
|
|
118
|
+
$or: principalsQuery,
|
|
119
|
+
resourceType,
|
|
120
|
+
resourceId: { $in: resourceIds },
|
|
121
|
+
}).lean();
|
|
122
|
+
// Compute effective permissions per resource
|
|
123
|
+
const permissionsMap = new Map();
|
|
124
|
+
for (const entry of aclEntries) {
|
|
125
|
+
const rid = entry.resourceId.toString();
|
|
126
|
+
const currentBits = permissionsMap.get(rid) || 0;
|
|
127
|
+
permissionsMap.set(rid, currentBits | entry.permBits);
|
|
128
|
+
}
|
|
129
|
+
return permissionsMap;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Grant permission to a principal for a resource
|
|
133
|
+
* @param principalType - The type of principal ('user', 'group', 'public')
|
|
134
|
+
* @param principalId - The ID of the principal (null for 'public')
|
|
135
|
+
* @param resourceType - The type of resource
|
|
136
|
+
* @param resourceId - The ID of the resource
|
|
137
|
+
* @param permBits - The permission bits to grant
|
|
138
|
+
* @param grantedBy - The ID of the user granting the permission
|
|
139
|
+
* @param session - Optional MongoDB session for transactions
|
|
140
|
+
* @param roleId - Optional role ID to associate with this permission
|
|
141
|
+
* @returns The created or updated ACL entry
|
|
142
|
+
*/
|
|
143
|
+
async function grantPermission(principalType, principalId, resourceType, resourceId, permBits, grantedBy, session, roleId) {
|
|
144
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
145
|
+
const query = {
|
|
146
|
+
principalType,
|
|
147
|
+
resourceType,
|
|
148
|
+
resourceId,
|
|
149
|
+
};
|
|
150
|
+
if (principalType !== librechatDataProvider.PrincipalType.PUBLIC) {
|
|
151
|
+
query.principalId =
|
|
152
|
+
typeof principalId === 'string' && principalType !== librechatDataProvider.PrincipalType.ROLE
|
|
153
|
+
? new mongoose.Types.ObjectId(principalId)
|
|
154
|
+
: principalId;
|
|
155
|
+
if (principalType === librechatDataProvider.PrincipalType.USER) {
|
|
156
|
+
query.principalModel = librechatDataProvider.PrincipalModel.USER;
|
|
157
|
+
}
|
|
158
|
+
else if (principalType === librechatDataProvider.PrincipalType.GROUP) {
|
|
159
|
+
query.principalModel = librechatDataProvider.PrincipalModel.GROUP;
|
|
160
|
+
}
|
|
161
|
+
else if (principalType === librechatDataProvider.PrincipalType.ROLE) {
|
|
162
|
+
query.principalModel = librechatDataProvider.PrincipalModel.ROLE;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
const update = {
|
|
166
|
+
$set: {
|
|
167
|
+
permBits,
|
|
168
|
+
grantedBy,
|
|
169
|
+
grantedAt: new Date(),
|
|
170
|
+
...(roleId && { roleId }),
|
|
171
|
+
},
|
|
172
|
+
};
|
|
173
|
+
const options = {
|
|
174
|
+
upsert: true,
|
|
175
|
+
new: true,
|
|
176
|
+
...(session ? { session } : {}),
|
|
177
|
+
};
|
|
178
|
+
return await AclEntry.findOneAndUpdate(query, update, options);
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Revoke permissions from a principal for a resource
|
|
182
|
+
* @param principalType - The type of principal ('user', 'group', 'public')
|
|
183
|
+
* @param principalId - The ID of the principal (null for 'public')
|
|
184
|
+
* @param resourceType - The type of resource
|
|
185
|
+
* @param resourceId - The ID of the resource
|
|
186
|
+
* @param session - Optional MongoDB session for transactions
|
|
187
|
+
* @returns The result of the delete operation
|
|
188
|
+
*/
|
|
189
|
+
async function revokePermission(principalType, principalId, resourceType, resourceId, session) {
|
|
190
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
191
|
+
const query = {
|
|
192
|
+
principalType,
|
|
193
|
+
resourceType,
|
|
194
|
+
resourceId,
|
|
195
|
+
};
|
|
196
|
+
if (principalType !== librechatDataProvider.PrincipalType.PUBLIC) {
|
|
197
|
+
query.principalId =
|
|
198
|
+
typeof principalId === 'string' && principalType !== librechatDataProvider.PrincipalType.ROLE
|
|
199
|
+
? new mongoose.Types.ObjectId(principalId)
|
|
200
|
+
: principalId;
|
|
201
|
+
}
|
|
202
|
+
const options = session ? { session } : {};
|
|
203
|
+
return await AclEntry.deleteOne(query, options);
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Modify existing permission bits for a principal on a resource
|
|
207
|
+
* @param principalType - The type of principal ('user', 'group', 'public')
|
|
208
|
+
* @param principalId - The ID of the principal (null for 'public')
|
|
209
|
+
* @param resourceType - The type of resource
|
|
210
|
+
* @param resourceId - The ID of the resource
|
|
211
|
+
* @param addBits - Permission bits to add
|
|
212
|
+
* @param removeBits - Permission bits to remove
|
|
213
|
+
* @param session - Optional MongoDB session for transactions
|
|
214
|
+
* @returns The updated ACL entry
|
|
215
|
+
*/
|
|
216
|
+
async function modifyPermissionBits(principalType, principalId, resourceType, resourceId, addBits, removeBits, session) {
|
|
217
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
218
|
+
const query = {
|
|
219
|
+
principalType,
|
|
220
|
+
resourceType,
|
|
221
|
+
resourceId,
|
|
222
|
+
};
|
|
223
|
+
if (principalType !== librechatDataProvider.PrincipalType.PUBLIC) {
|
|
224
|
+
query.principalId =
|
|
225
|
+
typeof principalId === 'string' && principalType !== librechatDataProvider.PrincipalType.ROLE
|
|
226
|
+
? new mongoose.Types.ObjectId(principalId)
|
|
227
|
+
: principalId;
|
|
228
|
+
}
|
|
229
|
+
const update = {};
|
|
230
|
+
if (addBits) {
|
|
231
|
+
update.$bit = { permBits: { or: addBits } };
|
|
232
|
+
}
|
|
233
|
+
if (removeBits) {
|
|
234
|
+
if (!update.$bit) {
|
|
235
|
+
update.$bit = {};
|
|
236
|
+
}
|
|
237
|
+
const bitUpdate = update.$bit;
|
|
238
|
+
bitUpdate.permBits = { ...bitUpdate.permBits, and: ~removeBits };
|
|
239
|
+
}
|
|
240
|
+
const options = {
|
|
241
|
+
new: true,
|
|
242
|
+
...(session ? { session } : {}),
|
|
243
|
+
};
|
|
244
|
+
return await AclEntry.findOneAndUpdate(query, update, options);
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Find all resources of a specific type that a set of principals has access to
|
|
248
|
+
* @param principalsList - List of principals, each containing { principalType, principalId }
|
|
249
|
+
* @param resourceType - The type of resource
|
|
250
|
+
* @param requiredPermBit - Required permission bit (use PermissionBits enum)
|
|
251
|
+
* @returns Array of resource IDs
|
|
252
|
+
*/
|
|
253
|
+
async function findAccessibleResources(principalsList, resourceType, requiredPermBit) {
|
|
254
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
255
|
+
const principalsQuery = principalsList.map((p) => ({
|
|
256
|
+
principalType: p.principalType,
|
|
257
|
+
...(p.principalType !== librechatDataProvider.PrincipalType.PUBLIC && { principalId: p.principalId }),
|
|
258
|
+
}));
|
|
259
|
+
const entries = await AclEntry.find({
|
|
260
|
+
$or: principalsQuery,
|
|
261
|
+
resourceType,
|
|
262
|
+
permBits: { $bitsAllSet: requiredPermBit },
|
|
263
|
+
}).distinct('resourceId');
|
|
264
|
+
return entries;
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* Deletes ACL entries matching the given filter.
|
|
268
|
+
* @param filter - MongoDB filter query
|
|
269
|
+
* @param options - Optional query options (e.g., { session })
|
|
270
|
+
*/
|
|
271
|
+
async function deleteAclEntries(filter, options) {
|
|
272
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
273
|
+
return AclEntry.deleteMany(filter, options || {});
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Performs a bulk write operation on ACL entries.
|
|
277
|
+
* @param ops - Array of bulk write operations
|
|
278
|
+
* @param options - Optional query options (e.g., { session })
|
|
279
|
+
*/
|
|
280
|
+
async function bulkWriteAclEntries(ops, options) {
|
|
281
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
282
|
+
return AclEntry.bulkWrite(ops, options || {});
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Finds all publicly accessible resource IDs for a given resource type.
|
|
286
|
+
* @param resourceType - The type of resource
|
|
287
|
+
* @param requiredPermissions - Required permission bits
|
|
288
|
+
*/
|
|
289
|
+
async function findPublicResourceIds(resourceType, requiredPermissions) {
|
|
290
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
291
|
+
return AclEntry.find({
|
|
292
|
+
principalType: librechatDataProvider.PrincipalType.PUBLIC,
|
|
293
|
+
resourceType,
|
|
294
|
+
permBits: { $bitsAllSet: requiredPermissions },
|
|
295
|
+
}).distinct('resourceId');
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Runs an aggregation pipeline on the AclEntry collection.
|
|
299
|
+
* @param pipeline - MongoDB aggregation pipeline stages
|
|
300
|
+
*/
|
|
301
|
+
async function aggregateAclEntries(pipeline) {
|
|
302
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
303
|
+
return AclEntry.aggregate(pipeline);
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Returns resource IDs solely owned by the given user (no other principals
|
|
307
|
+
* hold DELETE on the same resource). Handles both single and array resource types.
|
|
308
|
+
*/
|
|
309
|
+
async function getSoleOwnedResourceIds(userObjectId, resourceTypes) {
|
|
310
|
+
const AclEntry = mongoose$1.models.AclEntry;
|
|
311
|
+
const types = Array.isArray(resourceTypes) ? resourceTypes : [resourceTypes];
|
|
312
|
+
const ownedEntries = await AclEntry.find({
|
|
313
|
+
principalType: librechatDataProvider.PrincipalType.USER,
|
|
314
|
+
principalId: userObjectId,
|
|
315
|
+
resourceType: { $in: types },
|
|
316
|
+
permBits: { $bitsAllSet: librechatDataProvider.PermissionBits.DELETE },
|
|
317
|
+
})
|
|
318
|
+
.select('resourceId')
|
|
319
|
+
.lean();
|
|
320
|
+
if (ownedEntries.length === 0) {
|
|
321
|
+
return [];
|
|
322
|
+
}
|
|
323
|
+
const ownedIds = ownedEntries.map((e) => e.resourceId);
|
|
324
|
+
const otherOwners = await AclEntry.aggregate([
|
|
325
|
+
{
|
|
326
|
+
$match: {
|
|
327
|
+
resourceType: { $in: types },
|
|
328
|
+
resourceId: { $in: ownedIds },
|
|
329
|
+
permBits: { $bitsAllSet: librechatDataProvider.PermissionBits.DELETE },
|
|
330
|
+
$or: [
|
|
331
|
+
{ principalId: { $ne: userObjectId } },
|
|
332
|
+
{ principalType: { $ne: librechatDataProvider.PrincipalType.USER } },
|
|
333
|
+
],
|
|
334
|
+
},
|
|
335
|
+
},
|
|
336
|
+
{ $group: { _id: '$resourceId' } },
|
|
337
|
+
]);
|
|
338
|
+
const multiOwnerIds = new Set(otherOwners.map((doc) => doc._id.toString()));
|
|
339
|
+
return ownedIds.filter((id) => !multiOwnerIds.has(id.toString()));
|
|
340
|
+
}
|
|
341
|
+
return {
|
|
342
|
+
findEntriesByPrincipal,
|
|
343
|
+
findEntriesByResource,
|
|
344
|
+
findEntriesByPrincipalsAndResource,
|
|
345
|
+
hasPermission,
|
|
346
|
+
getEffectivePermissions,
|
|
347
|
+
getEffectivePermissionsForResources,
|
|
348
|
+
grantPermission,
|
|
349
|
+
revokePermission,
|
|
350
|
+
modifyPermissionBits,
|
|
351
|
+
findAccessibleResources,
|
|
352
|
+
deleteAclEntries,
|
|
353
|
+
bulkWriteAclEntries,
|
|
354
|
+
findPublicResourceIds,
|
|
355
|
+
aggregateAclEntries,
|
|
356
|
+
getSoleOwnedResourceIds,
|
|
357
|
+
};
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
exports.createAclEntryMethods = createAclEntryMethods;
|
|
361
|
+
//# sourceMappingURL=aclEntry.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aclEntry.cjs","sources":["../../src/methods/aclEntry.ts"],"sourcesContent":[null],"names":["mongoose","PrincipalType","Types","PrincipalModel","PermissionBits"],"mappings":"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"}
|