@hed-hog/core 0.0.349 → 0.0.351
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/access-log/access-log.controller.d.ts +16 -0
- package/dist/access-log/access-log.controller.d.ts.map +1 -0
- package/dist/access-log/access-log.controller.js +44 -0
- package/dist/access-log/access-log.controller.js.map +1 -0
- package/dist/access-log/access-log.interceptor.d.ts +9 -0
- package/dist/access-log/access-log.interceptor.d.ts.map +1 -0
- package/dist/access-log/access-log.interceptor.js +46 -0
- package/dist/access-log/access-log.interceptor.js.map +1 -0
- package/dist/access-log/access-log.module.d.ts +3 -0
- package/dist/access-log/access-log.module.d.ts.map +1 -0
- package/dist/access-log/access-log.module.js +29 -0
- package/dist/access-log/access-log.module.js.map +1 -0
- package/dist/access-log/access-log.service.d.ts +47 -0
- package/dist/access-log/access-log.service.d.ts.map +1 -0
- package/dist/access-log/access-log.service.js +113 -0
- package/dist/access-log/access-log.service.js.map +1 -0
- package/dist/access-log/dto/query-access-log.dto.d.ts +8 -0
- package/dist/access-log/dto/query-access-log.dto.d.ts.map +1 -0
- package/dist/access-log/dto/query-access-log.dto.js +42 -0
- package/dist/access-log/dto/query-access-log.dto.js.map +1 -0
- package/dist/auth/auth.controller.d.ts +12 -12
- package/dist/auth/auth.service.d.ts +27 -27
- package/dist/auth/auth.service.d.ts.map +1 -1
- package/dist/auth/auth.service.js +0 -4
- package/dist/auth/auth.service.js.map +1 -1
- package/dist/challenge/challenge.service.d.ts +2 -2
- package/dist/challenge/challenge.service.d.ts.map +1 -1
- package/dist/challenge/challenge.service.js +0 -1
- package/dist/challenge/challenge.service.js.map +1 -1
- package/dist/core/system.module.d.ts.map +1 -1
- package/dist/core/system.module.js +1 -0
- package/dist/core/system.module.js.map +1 -1
- package/dist/core.module.d.ts.map +1 -1
- package/dist/core.module.js +15 -0
- package/dist/core.module.js.map +1 -1
- package/dist/dashboard/dashboard-user/dashboard-user.controller.d.ts +3 -3
- package/dist/dashboard/dashboard-user/dashboard-user.service.d.ts +3 -3
- package/dist/dashboard/dashboard.module.d.ts.map +1 -1
- package/dist/dashboard/dashboard.module.js +4 -1
- package/dist/dashboard/dashboard.module.js.map +1 -1
- package/dist/file/file.controller.js +0 -1
- package/dist/file/file.controller.js.map +1 -1
- package/dist/file/file.service.d.ts +65 -0
- package/dist/file/file.service.d.ts.map +1 -1
- package/dist/file/file.service.js +151 -3
- package/dist/file/file.service.js.map +1 -1
- package/dist/file/provider/abstract.provider.d.ts +8 -0
- package/dist/file/provider/abstract.provider.d.ts.map +1 -1
- package/dist/file/provider/abstract.provider.js.map +1 -1
- package/dist/file/provider/azure.provider.d.ts +4 -0
- package/dist/file/provider/azure.provider.d.ts.map +1 -1
- package/dist/file/provider/azure.provider.js +14 -0
- package/dist/file/provider/azure.provider.js.map +1 -1
- package/dist/file/provider/gcs.provider.d.ts +4 -0
- package/dist/file/provider/gcs.provider.d.ts.map +1 -1
- package/dist/file/provider/gcs.provider.js +14 -0
- package/dist/file/provider/gcs.provider.js.map +1 -1
- package/dist/file/provider/local.provider.d.ts +4 -0
- package/dist/file/provider/local.provider.d.ts.map +1 -1
- package/dist/file/provider/local.provider.js +19 -0
- package/dist/file/provider/local.provider.js.map +1 -1
- package/dist/file/provider/provider.factory.d.ts.map +1 -1
- package/dist/file/provider/provider.factory.js +3 -0
- package/dist/file/provider/provider.factory.js.map +1 -1
- package/dist/file/provider/s3.provider.d.ts +4 -0
- package/dist/file/provider/s3.provider.d.ts.map +1 -1
- package/dist/file/provider/s3.provider.js +17 -0
- package/dist/file/provider/s3.provider.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp/guards/mcp-auth.guard.d.ts +6 -1
- package/dist/mcp/guards/mcp-auth.guard.d.ts.map +1 -1
- package/dist/mcp/guards/mcp-auth.guard.js +29 -2
- package/dist/mcp/guards/mcp-auth.guard.js.map +1 -1
- package/dist/mcp/mcp-api-key.controller.d.ts +32 -0
- package/dist/mcp/mcp-api-key.controller.d.ts.map +1 -0
- package/dist/mcp/mcp-api-key.controller.js +64 -0
- package/dist/mcp/mcp-api-key.controller.js.map +1 -0
- package/dist/mcp/mcp-api-key.service.d.ts +27 -0
- package/dist/mcp/mcp-api-key.service.d.ts.map +1 -0
- package/dist/mcp/mcp-api-key.service.js +74 -0
- package/dist/mcp/mcp-api-key.service.js.map +1 -0
- package/dist/mcp/mcp-audit.service.d.ts +3 -1
- package/dist/mcp/mcp-audit.service.d.ts.map +1 -1
- package/dist/mcp/mcp-audit.service.js +14 -2
- package/dist/mcp/mcp-audit.service.js.map +1 -1
- package/dist/mcp/mcp-registry.service.d.ts +1 -2
- package/dist/mcp/mcp-registry.service.d.ts.map +1 -1
- package/dist/mcp/mcp-registry.service.js +6 -2
- package/dist/mcp/mcp-registry.service.js.map +1 -1
- package/dist/mcp/mcp.controller.d.ts +3 -1
- package/dist/mcp/mcp.controller.d.ts.map +1 -1
- package/dist/mcp/mcp.controller.js +10 -2
- package/dist/mcp/mcp.controller.js.map +1 -1
- package/dist/mcp/mcp.module.d.ts.map +1 -1
- package/dist/mcp/mcp.module.js +80 -1
- package/dist/mcp/mcp.module.js.map +1 -1
- package/dist/mcp/tools/core-ai.mcp-tools.d.ts +45 -0
- package/dist/mcp/tools/core-ai.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-ai.mcp-tools.js +214 -0
- package/dist/mcp/tools/core-ai.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-dashboard-items.mcp-tools.d.ts +21 -0
- package/dist/mcp/tools/core-dashboard-items.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-dashboard-items.mcp-tools.js +89 -0
- package/dist/mcp/tools/core-dashboard-items.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-dashboard.mcp-tools.d.ts +29 -0
- package/dist/mcp/tools/core-dashboard.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-dashboard.mcp-tools.js +149 -0
- package/dist/mcp/tools/core-dashboard.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-event-webhooks.mcp-tools.d.ts +30 -0
- package/dist/mcp/tools/core-event-webhooks.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-event-webhooks.mcp-tools.js +185 -0
- package/dist/mcp/tools/core-event-webhooks.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-files.mcp-tools.d.ts +26 -0
- package/dist/mcp/tools/core-files.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-files.mcp-tools.js +140 -0
- package/dist/mcp/tools/core-files.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-integration-events.mcp-tools.d.ts +26 -0
- package/dist/mcp/tools/core-integration-events.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-integration-events.mcp-tools.js +168 -0
- package/dist/mcp/tools/core-integration-events.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-mail-profile.mcp-tools.d.ts +32 -0
- package/dist/mcp/tools/core-mail-profile.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-mail-profile.mcp-tools.js +178 -0
- package/dist/mcp/tools/core-mail-profile.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-mail-sent.mcp-tools.d.ts +14 -0
- package/dist/mcp/tools/core-mail-sent.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-mail-sent.mcp-tools.js +106 -0
- package/dist/mcp/tools/core-mail-sent.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-mail.mcp-tools.d.ts +36 -0
- package/dist/mcp/tools/core-mail.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-mail.mcp-tools.js +184 -0
- package/dist/mcp/tools/core-mail.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-mcp-chat.mcp-tools.d.ts +21 -0
- package/dist/mcp/tools/core-mcp-chat.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-mcp-chat.mcp-tools.js +118 -0
- package/dist/mcp/tools/core-mcp-chat.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-menus.mcp-tools.d.ts +40 -0
- package/dist/mcp/tools/core-menus.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-menus.mcp-tools.js +268 -0
- package/dist/mcp/tools/core-menus.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-notifications.mcp-tools.d.ts +31 -0
- package/dist/mcp/tools/core-notifications.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-notifications.mcp-tools.js +178 -0
- package/dist/mcp/tools/core-notifications.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-profile.mcp-tools.d.ts +20 -0
- package/dist/mcp/tools/core-profile.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-profile.mcp-tools.js +111 -0
- package/dist/mcp/tools/core-profile.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-roles.mcp-tools.d.ts +70 -0
- package/dist/mcp/tools/core-roles.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-roles.mcp-tools.js +355 -0
- package/dist/mcp/tools/core-roles.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-routes.mcp-tools.d.ts +52 -0
- package/dist/mcp/tools/core-routes.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-routes.mcp-tools.js +254 -0
- package/dist/mcp/tools/core-routes.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-screens.mcp-tools.d.ts +47 -0
- package/dist/mcp/tools/core-screens.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-screens.mcp-tools.js +250 -0
- package/dist/mcp/tools/core-screens.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-sessions.mcp-tools.d.ts +20 -0
- package/dist/mcp/tools/core-sessions.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-sessions.mcp-tools.js +128 -0
- package/dist/mcp/tools/core-sessions.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-settings.mcp-tools.d.ts +25 -0
- package/dist/mcp/tools/core-settings.mcp-tools.d.ts.map +1 -1
- package/dist/mcp/tools/core-settings.mcp-tools.js +138 -0
- package/dist/mcp/tools/core-settings.mcp-tools.js.map +1 -1
- package/dist/mcp/tools/core-system.mcp-tools.d.ts +8 -0
- package/dist/mcp/tools/core-system.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-system.mcp-tools.js +40 -0
- package/dist/mcp/tools/core-system.mcp-tools.js.map +1 -0
- package/dist/mcp/tools/core-webhooks.mcp-tools.d.ts +46 -0
- package/dist/mcp/tools/core-webhooks.mcp-tools.d.ts.map +1 -0
- package/dist/mcp/tools/core-webhooks.mcp-tools.js +266 -0
- package/dist/mcp/tools/core-webhooks.mcp-tools.js.map +1 -0
- package/dist/mcp-chat/mcp-chat.controller.d.ts +5 -1
- package/dist/mcp-chat/mcp-chat.controller.d.ts.map +1 -1
- package/dist/mcp-chat/mcp-chat.controller.js +46 -0
- package/dist/mcp-chat/mcp-chat.controller.js.map +1 -1
- package/dist/mcp-chat/mcp-chat.service.d.ts +31 -3
- package/dist/mcp-chat/mcp-chat.service.d.ts.map +1 -1
- package/dist/mcp-chat/mcp-chat.service.js +776 -38
- package/dist/mcp-chat/mcp-chat.service.js.map +1 -1
- package/dist/notification/dto/create-notification.dto.d.ts +26 -0
- package/dist/notification/dto/create-notification.dto.d.ts.map +1 -0
- package/dist/notification/dto/create-notification.dto.js +86 -0
- package/dist/notification/dto/create-notification.dto.js.map +1 -0
- package/dist/notification/dto/update-progress.dto.d.ts +6 -0
- package/dist/notification/dto/update-progress.dto.d.ts.map +1 -0
- package/dist/notification/dto/update-progress.dto.js +33 -0
- package/dist/notification/dto/update-progress.dto.js.map +1 -0
- package/dist/notification/notification.controller.d.ts +112 -0
- package/dist/notification/notification.controller.d.ts.map +1 -0
- package/dist/notification/notification.controller.js +130 -0
- package/dist/notification/notification.controller.js.map +1 -0
- package/dist/notification/notification.module.d.ts +3 -0
- package/dist/notification/notification.module.d.ts.map +1 -0
- package/dist/notification/notification.module.js +29 -0
- package/dist/notification/notification.module.js.map +1 -0
- package/dist/notification/notification.service.d.ts +112 -0
- package/dist/notification/notification.service.d.ts.map +1 -0
- package/dist/notification/notification.service.js +269 -0
- package/dist/notification/notification.service.js.map +1 -0
- package/dist/pdf/pdf.service.js +1 -1
- package/dist/pdf/pdf.service.js.map +1 -1
- package/dist/profile/profile.controller.d.ts +4 -4
- package/dist/profile/profile.controller.js +0 -1
- package/dist/profile/profile.controller.js.map +1 -1
- package/dist/profile/profile.module.d.ts.map +1 -1
- package/dist/profile/profile.module.js +1 -0
- package/dist/profile/profile.module.js.map +1 -1
- package/dist/profile/profile.service.d.ts +4 -4
- package/dist/session/session.controller.d.ts +3 -3
- package/dist/session/session.service.d.ts +9 -9
- package/dist/setting/dto/update-setting-list.dto.d.ts +9 -0
- package/dist/setting/dto/update-setting-list.dto.d.ts.map +1 -0
- package/dist/setting/dto/update-setting-list.dto.js +44 -0
- package/dist/setting/dto/update-setting-list.dto.js.map +1 -0
- package/dist/setting/setting.controller.d.ts +20 -1
- package/dist/setting/setting.controller.d.ts.map +1 -1
- package/dist/setting/setting.controller.js +12 -0
- package/dist/setting/setting.controller.js.map +1 -1
- package/dist/setting/setting.service.d.ts +20 -1
- package/dist/setting/setting.service.d.ts.map +1 -1
- package/dist/setting/setting.service.js +80 -4
- package/dist/setting/setting.service.js.map +1 -1
- package/dist/task/task.service.d.ts +13 -0
- package/dist/task/task.service.d.ts.map +1 -1
- package/dist/task/task.service.js +85 -0
- package/dist/task/task.service.js.map +1 -1
- package/dist/token/token.service.d.ts.map +1 -1
- package/dist/token/token.service.js +0 -1
- package/dist/token/token.service.js.map +1 -1
- package/dist/user/user.controller.d.ts +11 -11
- package/dist/user/user.service.d.ts +27 -27
- package/dist/webhook-integration/dto/webhook-action.dto.d.ts +22 -0
- package/dist/webhook-integration/dto/webhook-action.dto.d.ts.map +1 -0
- package/dist/webhook-integration/dto/webhook-action.dto.js +120 -0
- package/dist/webhook-integration/dto/webhook-action.dto.js.map +1 -0
- package/dist/webhook-integration/webhook-integration.controller.d.ts +7 -5
- package/dist/webhook-integration/webhook-integration.controller.d.ts.map +1 -1
- package/dist/webhook-integration/webhook-integration.controller.js +18 -5
- package/dist/webhook-integration/webhook-integration.controller.js.map +1 -1
- package/dist/webhook-integration/webhook-integration.service.d.ts +18 -5
- package/dist/webhook-integration/webhook-integration.service.d.ts.map +1 -1
- package/dist/webhook-integration/webhook-integration.service.js +342 -59
- package/dist/webhook-integration/webhook-integration.service.js.map +1 -1
- package/dist/webhook-integration/webhook-utils.d.ts +1 -0
- package/dist/webhook-integration/webhook-utils.d.ts.map +1 -1
- package/dist/webhook-integration/webhook-utils.js +38 -0
- package/dist/webhook-integration/webhook-utils.js.map +1 -1
- package/hedhog/data/menu.yaml +63 -4
- package/hedhog/data/route.yaml +1437 -0
- package/hedhog/data/setting_group.yaml +112 -0
- package/hedhog/data/setting_subgroup.yaml +32 -0
- package/hedhog/frontend/app/access-log/page.tsx.ejs +772 -0
- package/hedhog/frontend/app/account/components/mcp-tokens.tsx.ejs +285 -0
- package/hedhog/frontend/app/account/layout.tsx.ejs +32 -55
- package/hedhog/frontend/app/account/mcp-tokens/page.tsx.ejs +5 -0
- package/hedhog/frontend/app/ai_agent/page.tsx.ejs +10 -3
- package/hedhog/frontend/app/dashboard/dashboard-home-tabs.tsx.ejs +33 -13
- package/hedhog/frontend/app/dashboard/management/tabs/components-tab.tsx.ejs +12 -5
- package/hedhog/frontend/app/dashboard/management/tabs/dashboards-tab.tsx.ejs +12 -5
- package/hedhog/frontend/app/integrations-webhooks/page.tsx.ejs +3559 -1835
- package/hedhog/frontend/app/mcp_chat/chat-components.tsx.ejs +633 -0
- package/hedhog/frontend/app/mcp_chat/chat-types.ts.ejs +16 -0
- package/hedhog/frontend/app/mcp_chat/page.tsx.ejs +583 -384
- package/hedhog/frontend/app/menu/page.tsx.ejs +9 -3
- package/hedhog/frontend/app/roles/page.tsx.ejs +18 -6
- package/hedhog/frontend/app/routes/page.tsx.ejs +9 -3
- package/hedhog/frontend/app/setting-list/page.tsx.ejs +822 -0
- package/hedhog/frontend/app/users/page.tsx.ejs +445 -203
- package/hedhog/frontend/app/users/user-access-sheet.tsx.ejs +310 -304
- package/hedhog/frontend/app/users/user-sheet.tsx.ejs +41 -44
- package/hedhog/frontend/messages/en.json +343 -3
- package/hedhog/frontend/messages/pt.json +343 -3
- package/hedhog/table/access_log.yaml +31 -0
- package/hedhog/table/mcp_api_key.yaml +30 -0
- package/hedhog/table/notification.yaml +72 -0
- package/hedhog/table/webhook_action_log.yaml +49 -0
- package/package.json +5 -4
- package/src/access-log/access-log.controller.ts +29 -0
- package/src/access-log/access-log.interceptor.ts +38 -0
- package/src/access-log/access-log.module.ts +16 -0
- package/src/access-log/access-log.service.ts +129 -0
- package/src/access-log/dto/query-access-log.dto.ts +23 -0
- package/src/auth/auth.service.ts +0 -7
- package/src/challenge/challenge.service.ts +0 -2
- package/src/core/system.module.ts +1 -0
- package/src/core.module.ts +15 -0
- package/src/dashboard/dashboard.module.ts +4 -1
- package/src/file/file.controller.ts +14 -14
- package/src/file/file.service.ts +198 -4
- package/src/file/provider/abstract.provider.ts +10 -0
- package/src/file/provider/azure.provider.ts +24 -0
- package/src/file/provider/gcs.provider.ts +20 -0
- package/src/file/provider/local.provider.ts +30 -2
- package/src/file/provider/provider.factory.ts +3 -0
- package/src/file/provider/s3.provider.ts +22 -0
- package/src/index.ts +5 -0
- package/src/mcp/guards/mcp-auth.guard.ts +64 -32
- package/src/mcp/mcp-api-key.controller.ts +42 -0
- package/src/mcp/mcp-api-key.service.ts +66 -0
- package/src/mcp/mcp-audit.service.ts +47 -36
- package/src/mcp/mcp-registry.service.ts +75 -69
- package/src/mcp/mcp.controller.ts +40 -30
- package/src/mcp/mcp.module.ts +115 -36
- package/src/mcp/tools/core-ai.mcp-tools.ts +156 -0
- package/src/mcp/tools/core-dashboard-items.mcp-tools.ts +63 -0
- package/src/mcp/tools/core-dashboard.mcp-tools.ts +103 -0
- package/src/mcp/tools/core-event-webhooks.mcp-tools.ts +134 -0
- package/src/mcp/tools/core-files.mcp-tools.ts +105 -0
- package/src/mcp/tools/core-integration-events.mcp-tools.ts +118 -0
- package/src/mcp/tools/core-mail-profile.mcp-tools.ts +128 -0
- package/src/mcp/tools/core-mail-sent.mcp-tools.ts +76 -0
- package/src/mcp/tools/core-mail.mcp-tools.ts +130 -0
- package/src/mcp/tools/core-mcp-chat.mcp-tools.ts +81 -0
- package/src/mcp/tools/core-menus.mcp-tools.ts +197 -0
- package/src/mcp/tools/core-notifications.mcp-tools.ts +128 -0
- package/src/mcp/tools/core-profile.mcp-tools.ts +74 -0
- package/src/mcp/tools/core-roles.mcp-tools.ts +288 -0
- package/src/mcp/tools/core-routes.mcp-tools.ts +196 -0
- package/src/mcp/tools/core-screens.mcp-tools.ts +186 -0
- package/src/mcp/tools/core-sessions.mcp-tools.ts +97 -0
- package/src/mcp/tools/core-settings.mcp-tools.ts +171 -53
- package/src/mcp/tools/core-system.mcp-tools.ts +19 -0
- package/src/mcp/tools/core-webhooks.mcp-tools.ts +199 -0
- package/src/mcp-chat/mcp-chat.controller.ts +113 -60
- package/src/mcp-chat/mcp-chat.service.ts +1343 -332
- package/src/notification/dto/create-notification.dto.ts +71 -0
- package/src/notification/dto/update-progress.dto.ts +16 -0
- package/src/notification/notification.controller.ts +83 -0
- package/src/notification/notification.module.ts +16 -0
- package/src/notification/notification.service.ts +324 -0
- package/src/pdf/pdf.service.ts +1 -1
- package/src/profile/profile.controller.ts +1 -1
- package/src/profile/profile.module.ts +1 -0
- package/src/setting/dto/update-setting-list.dto.ts +32 -0
- package/src/setting/setting.controller.ts +9 -0
- package/src/setting/setting.service.ts +99 -11
- package/src/task/task.service.ts +103 -0
- package/src/token/token.service.ts +0 -2
- package/src/webhook-integration/dto/webhook-action.dto.ts +96 -0
- package/src/webhook-integration/webhook-integration.controller.ts +124 -103
- package/src/webhook-integration/webhook-integration.service.ts +1137 -735
- package/src/webhook-integration/webhook-utils.ts +136 -79
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local.provider.js","sourceRoot":"","sources":["../../../src/file/provider/local.provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAqD;AAErD,2BAAkE;AAClE,
|
|
1
|
+
{"version":3,"file":"local.provider.js","sourceRoot":"","sources":["../../../src/file/provider/local.provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAqD;AAErD,2BAAkE;AAClE,0CAAuE;AACvE,2CAA6B;AAC7B,+BAA2C;AAE3C,2DAAuD;AAEvD,MAAa,aAAc,SAAQ,oCAAgB;IACjD,YACU,OAA+B,EAC/B,GAAe;QAEvB,KAAK,EAAE,CAAC;QAHA,YAAO,GAAP,OAAO,CAAwB;QAC/B,QAAG,GAAH,GAAG,CAAY;QAGvB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,4BAAmB,CAC3B,qDAAqD,CACtD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAA,eAAU,EAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,IAAY;QACtC,MAAM,OAAO,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,CAAC,KAAK,CAAC,UAAG,CAAC,CAAC;QACtC,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,WAAW,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACxC,IAAI,CAAC,IAAA,eAAU,EAAC,WAAW,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAA,gBAAK,EAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,QAAgB;QACtC,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,WAAmB,EACnB,QAAgB,EAChB,WAAmB,EACnB,QAAiB;QAEjB,MAAM,WAAW,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,WAAW,CAAC,CAAC;QAE1E,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,4BAAmB,CAC3B,qDAAqD,CACtD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAA,eAAU,EAAC,WAAW,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,IAAA,eAAU,EAAC,WAAW,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,4BAAmB,CAC3B,oCAAoC,WAAW,EAAE,CAClD,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE/D,MAAM,IAAA,oBAAS,EAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAEvC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,WAAmB,EAAE,IAAgB;QAChD,MAAM,WAAW,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,WAAW,CAAC,CAAC;QAE1E,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,4BAAmB,CAC3B,qDAAqD,CACtD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAA,eAAU,EAAC,WAAW,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,IAAA,eAAU,EAAC,WAAW,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,4BAAmB,CAC3B,oCAAoC,WAAW,EAAE,CAClD,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QAExE,MAAM,IAAA,oBAAS,EAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAEvC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,WAAmB,EACnB,QAAgB,EAChB,OAAkD;;QAElD,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,IAAA,eAAU,EAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,4BAAmB,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAA,eAAI,EAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1B,MAAM,IAAI,4BAAmB,CAAC,sBAAsB,UAAU,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,WAAW,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,WAAW,CAAC,CAAC;QAE1E,IAAI,CAAC,IAAA,eAAU,EAAC,WAAW,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,mCAAI,IAAA,eAAQ,EAAC,UAAU,CAAC,CAAC,CAAC;QACnF,MAAM,UAAU,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QACrD,MAAM,IAAA,mBAAQ,EAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAEvC,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAgB;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAEhD,IAAI,CAAC,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,4BAAmB,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,IAAA,iBAAM,EAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAEhD,IAAI,CAAC,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,4BAAmB,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,IAAA,qBAAgB,EAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,QAAgB;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAEhD,IAAI,CAAC,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,4BAAmB,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO;YACL,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;SAC3C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAgB;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAEhD,IAAI,CAAC,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,4BAAmB,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,aAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,OAAO,GAAG,IAAI;QAC5C,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CACzB,EAAE,QAAQ,EAAE,EACZ;gBACE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;gBAC9B,SAAS,EAAE,OAAO;aACnB,CACF,CAAC;YAEF,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,WAAW,CAAC;YAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC;YAEtC,OAAO,UAAU,IAAI,IAAI,IAAI,kBAAkB,KAAK,EAAE,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,4BAAmB,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;CACF;AApLD,sCAoLC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.factory.d.ts","sourceRoot":"","sources":["../../../src/file/provider/provider.factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"provider.factory.d.ts","sourceRoot":"","sources":["../../../src/file/provider/provider.factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAIvD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,qBAAa,eAAe;IAC1B,MAAM,CAAC,MAAM,CACX,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,UAAU,EAAE,UAAU,GACrB,gBAAgB;CAYpB"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ProviderFactory = void 0;
|
|
4
4
|
const azure_provider_1 = require("./azure.provider");
|
|
5
|
+
const gcs_provider_1 = require("./gcs.provider");
|
|
5
6
|
const local_provider_1 = require("./local.provider");
|
|
6
7
|
const provider_enum_1 = require("./provider.enum");
|
|
7
8
|
const s3_provider_1 = require("./s3.provider");
|
|
@@ -14,6 +15,8 @@ class ProviderFactory {
|
|
|
14
15
|
return new local_provider_1.LocalProvider(setting, jwtService);
|
|
15
16
|
case provider_enum_1.EnumProvider.AZURE:
|
|
16
17
|
return new azure_provider_1.AzureProvider(setting);
|
|
18
|
+
case provider_enum_1.EnumProvider.GCS:
|
|
19
|
+
return new gcs_provider_1.GCSProvider(setting);
|
|
17
20
|
}
|
|
18
21
|
}
|
|
19
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.factory.js","sourceRoot":"","sources":["../../../src/file/provider/provider.factory.ts"],"names":[],"mappings":";;;AAEA,qDAAiD;AACjD,qDAAiD;AACjD,mDAA+C;AAC/C,+CAA2C;AAE3C,MAAa,eAAe;IAC1B,MAAM,CAAC,MAAM,CACX,YAA0B,EAC1B,OAA+B,EAC/B,UAAsB;QAEtB,QAAQ,YAAY,EAAE,CAAC;YACrB,KAAK,4BAAY,CAAC,EAAE;gBAClB,OAAO,IAAI,wBAAU,CAAC,OAAO,CAAC,CAAC;YACjC,KAAK,4BAAY,CAAC,KAAK;gBACrB,OAAO,IAAI,8BAAa,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAChD,KAAK,4BAAY,CAAC,KAAK;gBACrB,OAAO,IAAI,8BAAa,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"provider.factory.js","sourceRoot":"","sources":["../../../src/file/provider/provider.factory.ts"],"names":[],"mappings":";;;AAEA,qDAAiD;AACjD,iDAA6C;AAC7C,qDAAiD;AACjD,mDAA+C;AAC/C,+CAA2C;AAE3C,MAAa,eAAe;IAC1B,MAAM,CAAC,MAAM,CACX,YAA0B,EAC1B,OAA+B,EAC/B,UAAsB;QAEtB,QAAQ,YAAY,EAAE,CAAC;YACrB,KAAK,4BAAY,CAAC,EAAE;gBAClB,OAAO,IAAI,wBAAU,CAAC,OAAO,CAAC,CAAC;YACjC,KAAK,4BAAY,CAAC,KAAK;gBACrB,OAAO,IAAI,8BAAa,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAChD,KAAK,4BAAY,CAAC,KAAK;gBACrB,OAAO,IAAI,8BAAa,CAAC,OAAO,CAAC,CAAC;YACpC,KAAK,4BAAY,CAAC,GAAG;gBACnB,OAAO,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;CACF;AAjBD,0CAiBC"}
|
|
@@ -13,6 +13,10 @@ export declare class S3Provider extends AbstractProvider {
|
|
|
13
13
|
getS3Client(): Promise<S3Client>;
|
|
14
14
|
uploadFromString(destination: string, filename: string, fileContent: string): Promise<any>;
|
|
15
15
|
upload(destination: string, file: MulterFile): Promise<any>;
|
|
16
|
+
uploadFromPath(destination: string, filePath: string, options?: {
|
|
17
|
+
filename?: string;
|
|
18
|
+
mimetype?: string;
|
|
19
|
+
}): Promise<any>;
|
|
16
20
|
delete(filepath: string): Promise<any>;
|
|
17
21
|
readStream(filepath: string): Promise<Readable>;
|
|
18
22
|
metaData(filepath: string): Promise<any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3.provider.d.ts","sourceRoot":"","sources":["../../../src/file/provider/s3.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAMH,EAAE,EACF,QAAQ,EACX,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"s3.provider.d.ts","sourceRoot":"","sources":["../../../src/file/provider/s3.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAMH,EAAE,EACF,QAAQ,EACX,MAAM,oBAAoB,CAAC;AAK5B,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,qBAAa,UAAW,SAAQ,gBAAgB;IAIlC,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,EAAE,CAAiB;IAC3B,OAAO,CAAC,QAAQ,CAAuB;gBAEnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAKnD,OAAO,CAAC,YAAY;IAqBd,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBzC,cAAc;IAwCd,SAAS;IAsBT,WAAW;IAcX,gBAAgB,CACpB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,CAAC;IAcT,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAa3D,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GACjD,OAAO,CAAC,GAAG,CAAC;IAgBT,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAYtC,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAY/C,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAWxC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,SAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CAUjE"}
|
|
@@ -11,6 +11,8 @@ exports.S3Provider = void 0;
|
|
|
11
11
|
const client_s3_1 = require("@aws-sdk/client-s3");
|
|
12
12
|
const s3_request_presigner_1 = require("@aws-sdk/s3-request-presigner");
|
|
13
13
|
const common_1 = require("@nestjs/common");
|
|
14
|
+
const fs_1 = require("fs");
|
|
15
|
+
const path_1 = require("path");
|
|
14
16
|
const abstract_provider_1 = require("./abstract.provider");
|
|
15
17
|
class S3Provider extends abstract_provider_1.AbstractProvider {
|
|
16
18
|
constructor(setting) {
|
|
@@ -147,6 +149,21 @@ class S3Provider extends abstract_provider_1.AbstractProvider {
|
|
|
147
149
|
await s3.send(command);
|
|
148
150
|
return `https://${this.setting['storage-s3-bucket']}.s3.${this.setting['storage-s3-region']}.amazonaws.com/${key}`;
|
|
149
151
|
}
|
|
152
|
+
async uploadFromPath(destination, filePath, options) {
|
|
153
|
+
var _a;
|
|
154
|
+
const s3 = await this.getClient();
|
|
155
|
+
const originalName = (_a = options === null || options === void 0 ? void 0 : options.filename) !== null && _a !== void 0 ? _a : (0, path_1.basename)(filePath);
|
|
156
|
+
const storedFilename = this.getFilename(originalName);
|
|
157
|
+
const key = [destination, storedFilename].join('/');
|
|
158
|
+
const command = new client_s3_1.PutObjectCommand({
|
|
159
|
+
Bucket: this.setting['storage-s3-bucket'],
|
|
160
|
+
Key: key,
|
|
161
|
+
Body: (0, fs_1.createReadStream)(filePath),
|
|
162
|
+
ContentType: options === null || options === void 0 ? void 0 : options.mimetype,
|
|
163
|
+
});
|
|
164
|
+
await s3.send(command);
|
|
165
|
+
return `https://${this.setting['storage-s3-bucket']}.s3.${this.setting['storage-s3-region']}.amazonaws.com/${key}`;
|
|
166
|
+
}
|
|
150
167
|
async delete(filepath) {
|
|
151
168
|
const s3 = await this.getClient();
|
|
152
169
|
const key = this.resolveS3Key(filepath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3.provider.js","sourceRoot":"","sources":["../../../src/file/provider/s3.provider.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,kDAQ4B;AAC5B,wEAA6D;AAC7D,2CAAqD;
|
|
1
|
+
{"version":3,"file":"s3.provider.js","sourceRoot":"","sources":["../../../src/file/provider/s3.provider.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -45,4 +45,7 @@ export * from './mcp/mcp-registry.service';
|
|
|
45
45
|
export * from './mcp/mcp.module';
|
|
46
46
|
export * from './mcp/types/mcp-context.type';
|
|
47
47
|
export * from './utils/locale-context';
|
|
48
|
+
export * from './notification/notification.module';
|
|
49
|
+
export * from './notification/notification.service';
|
|
50
|
+
export * from './notification/dto/create-notification.dto';
|
|
48
51
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAC;AAG9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AAEpC,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAEhC,cAAc,6CAA6C,CAAC;AAC5D,cAAc,yDAAyD,CAAC;AACxE,cAAc,kDAAkD,CAAC;AACjE,cAAc,mDAAmD,CAAC;AAGlE,cAAc,kCAAkC,CAAC;AACjD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,kDAAkD,CAAC;AACjE,cAAc,sCAAsC,CAAC;AACrD,cAAc,0DAA0D,CAAC;AACzE,cAAc,iDAAiD,CAAC;AAChE,cAAc,qDAAqD,CAAC;AACpE,cAAc,mDAAmD,CAAC;AAClE,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,uCAAuC,CAAC;AACtD,cAAc,qBAAqB,CAAC;AAGpC,cAAc,+CAA+C,CAAC;AAC9D,cAAc,iDAAiD,CAAC;AAChE,cAAc,yDAAyD,CAAC;AAGxE,cAAc,qCAAqC,CAAC;AACpD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAG7C,cAAc,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAC;AAG9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AAEpC,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAEhC,cAAc,6CAA6C,CAAC;AAC5D,cAAc,yDAAyD,CAAC;AACxE,cAAc,kDAAkD,CAAC;AACjE,cAAc,mDAAmD,CAAC;AAGlE,cAAc,kCAAkC,CAAC;AACjD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,kDAAkD,CAAC;AACjE,cAAc,sCAAsC,CAAC;AACrD,cAAc,0DAA0D,CAAC;AACzE,cAAc,iDAAiD,CAAC;AAChE,cAAc,qDAAqD,CAAC;AACpE,cAAc,mDAAmD,CAAC;AAClE,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,uCAAuC,CAAC;AACtD,cAAc,qBAAqB,CAAC;AAGpC,cAAc,+CAA+C,CAAC;AAC9D,cAAc,iDAAiD,CAAC;AAChE,cAAc,yDAAyD,CAAC;AAGxE,cAAc,qCAAqC,CAAC;AACpD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAG7C,cAAc,wBAAwB,CAAC;AAIvC,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,4CAA4C,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -71,4 +71,8 @@ __exportStar(require("./mcp/mcp.module"), exports);
|
|
|
71
71
|
__exportStar(require("./mcp/types/mcp-context.type"), exports);
|
|
72
72
|
// Utilities
|
|
73
73
|
__exportStar(require("./utils/locale-context"), exports);
|
|
74
|
+
// Notification Module
|
|
75
|
+
__exportStar(require("./notification/notification.module"), exports);
|
|
76
|
+
__exportStar(require("./notification/notification.service"), exports);
|
|
77
|
+
__exportStar(require("./notification/dto/create-notification.dto"), exports);
|
|
74
78
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,cAAc;AACd,gDAA8B;AAE9B,cAAc;AACd,sDAAoC;AACpC,2DAAyC;AAEzC,cAAc;AACd,sDAAoC;AAEpC,oBAAoB;AACpB,2DAAyC;AACzC,sDAAoC;AAEpC,gBAAgB;AAChB,0DAAwC;AAExC,cAAc;AACd,kEAAgD;AAChD,sDAAoC;AAEpC,qEAAmD;AACnD,sEAAoD;AACpD,qDAAmC;AACnC,sDAAoC;AAEpC,qDAAmC;AACnC,sDAAoC;AAEpC,mDAAiC;AACjC,oDAAkC;AAClC,2DAAyC;AACzC,4DAA0C;AAE1C,iDAA+B;AAC/B,kDAAgC;AAEhC,8EAA4D;AAC5D,0FAAwE;AACxE,mFAAiE;AACjE,oFAAkE;AAElE,qBAAqB;AACrB,mEAAiD;AACjD,gFAA8D;AAC9D,mFAAiE;AACjE,uEAAqD;AACrD,2FAAyE;AACzE,kFAAgE;AAChE,sFAAoE;AACpE,oFAAkE;AAClE,yEAAuD;AACvD,0EAAwD;AACxD,8EAA4D;AAC5D,wEAAsD;AACtD,sDAAoC;AAEpC,aAAa;AACb,gFAA8D;AAC9D,kFAAgE;AAChE,0FAAwE;AAExE,aAAa;AACb,sEAAoD;AACpD,iFAA+D;AAC/D,6DAA2C;AAC3C,mDAAiC;AACjC,+DAA6C;AAE7C,YAAY;AACZ,yDAAuC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,cAAc;AACd,gDAA8B;AAE9B,cAAc;AACd,sDAAoC;AACpC,2DAAyC;AAEzC,cAAc;AACd,sDAAoC;AAEpC,oBAAoB;AACpB,2DAAyC;AACzC,sDAAoC;AAEpC,gBAAgB;AAChB,0DAAwC;AAExC,cAAc;AACd,kEAAgD;AAChD,sDAAoC;AAEpC,qEAAmD;AACnD,sEAAoD;AACpD,qDAAmC;AACnC,sDAAoC;AAEpC,qDAAmC;AACnC,sDAAoC;AAEpC,mDAAiC;AACjC,oDAAkC;AAClC,2DAAyC;AACzC,4DAA0C;AAE1C,iDAA+B;AAC/B,kDAAgC;AAEhC,8EAA4D;AAC5D,0FAAwE;AACxE,mFAAiE;AACjE,oFAAkE;AAElE,qBAAqB;AACrB,mEAAiD;AACjD,gFAA8D;AAC9D,mFAAiE;AACjE,uEAAqD;AACrD,2FAAyE;AACzE,kFAAgE;AAChE,sFAAoE;AACpE,oFAAkE;AAClE,yEAAuD;AACvD,0EAAwD;AACxD,8EAA4D;AAC5D,wEAAsD;AACtD,sDAAoC;AAEpC,aAAa;AACb,gFAA8D;AAC9D,kFAAgE;AAChE,0FAAwE;AAExE,aAAa;AACb,sEAAoD;AACpD,iFAA+D;AAC/D,6DAA2C;AAC3C,mDAAiC;AACjC,+DAA6C;AAE7C,YAAY;AACZ,yDAAuC;AAGvC,sBAAsB;AACtB,qEAAmD;AACnD,sEAAoD;AACpD,6EAA2D"}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
+
import { PrismaService } from '@hed-hog/api-prisma';
|
|
1
2
|
import { CanActivate, ExecutionContext } from '@nestjs/common';
|
|
3
|
+
import { SecurityService } from '../../security/security.service';
|
|
2
4
|
import { TokenService } from '../../token/token.service';
|
|
3
5
|
export declare class McpAuthGuard implements CanActivate {
|
|
4
6
|
private readonly tokenService;
|
|
5
|
-
|
|
7
|
+
private readonly prisma;
|
|
8
|
+
private readonly security;
|
|
9
|
+
constructor(tokenService: TokenService, prisma: PrismaService, security: SecurityService);
|
|
6
10
|
canActivate(context: ExecutionContext): Promise<boolean>;
|
|
11
|
+
private verifyApiKey;
|
|
7
12
|
private extractToken;
|
|
8
13
|
}
|
|
9
14
|
//# sourceMappingURL=mcp-auth.guard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-auth.guard.d.ts","sourceRoot":"","sources":["../../../src/mcp/guards/mcp-auth.guard.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,gBAAgB,EAGjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,qBACa,YAAa,YAAW,WAAW;
|
|
1
|
+
{"version":3,"file":"mcp-auth.guard.d.ts","sourceRoot":"","sources":["../../../src/mcp/guards/mcp-auth.guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACL,WAAW,EACX,gBAAgB,EAGjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,qBACa,YAAa,YAAW,WAAW;IAE5C,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAFR,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,eAAe;IAGtC,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;YAkBhD,YAAY;IAsB1B,OAAO,CAAC,YAAY;CAIrB"}
|
|
@@ -10,11 +10,15 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.McpAuthGuard = void 0;
|
|
13
|
+
const api_prisma_1 = require("@hed-hog/api-prisma");
|
|
13
14
|
const common_1 = require("@nestjs/common");
|
|
15
|
+
const security_service_1 = require("../../security/security.service");
|
|
14
16
|
const token_service_1 = require("../../token/token.service");
|
|
15
17
|
let McpAuthGuard = class McpAuthGuard {
|
|
16
|
-
constructor(tokenService) {
|
|
18
|
+
constructor(tokenService, prisma, security) {
|
|
17
19
|
this.tokenService = tokenService;
|
|
20
|
+
this.prisma = prisma;
|
|
21
|
+
this.security = security;
|
|
18
22
|
}
|
|
19
23
|
async canActivate(context) {
|
|
20
24
|
var _a, _b, _c;
|
|
@@ -24,9 +28,30 @@ let McpAuthGuard = class McpAuthGuard {
|
|
|
24
28
|
if (!token) {
|
|
25
29
|
throw new common_1.UnauthorizedException('MCP: Bearer token required');
|
|
26
30
|
}
|
|
31
|
+
if (token.startsWith('hedhog_mcp_')) {
|
|
32
|
+
return this.verifyApiKey(request, token);
|
|
33
|
+
}
|
|
27
34
|
request['auth'] = await this.tokenService.verify(locale, token);
|
|
28
35
|
return true;
|
|
29
36
|
}
|
|
37
|
+
async verifyApiKey(request, token) {
|
|
38
|
+
const hash = this.security.hashWithPepper(token);
|
|
39
|
+
const apiKey = await this.prisma.mcp_api_key.findFirst({
|
|
40
|
+
where: { token_hash: hash, revoked_at: null },
|
|
41
|
+
});
|
|
42
|
+
if (!apiKey) {
|
|
43
|
+
throw new common_1.UnauthorizedException('MCP: Invalid API key');
|
|
44
|
+
}
|
|
45
|
+
if (apiKey.expires_at && apiKey.expires_at <= new Date()) {
|
|
46
|
+
throw new common_1.UnauthorizedException('MCP: API key expired');
|
|
47
|
+
}
|
|
48
|
+
this.prisma.mcp_api_key.update({
|
|
49
|
+
where: { id: apiKey.id },
|
|
50
|
+
data: { last_used_at: new Date() },
|
|
51
|
+
}).catch(() => { });
|
|
52
|
+
request['auth'] = { sub: apiKey.user_id, sessionId: null };
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
30
55
|
extractToken(request) {
|
|
31
56
|
var _a, _b;
|
|
32
57
|
const [type, token] = (_b = (_a = request.headers.authorization) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
|
|
@@ -36,6 +61,8 @@ let McpAuthGuard = class McpAuthGuard {
|
|
|
36
61
|
exports.McpAuthGuard = McpAuthGuard;
|
|
37
62
|
exports.McpAuthGuard = McpAuthGuard = __decorate([
|
|
38
63
|
(0, common_1.Injectable)(),
|
|
39
|
-
__metadata("design:paramtypes", [token_service_1.TokenService
|
|
64
|
+
__metadata("design:paramtypes", [token_service_1.TokenService,
|
|
65
|
+
api_prisma_1.PrismaService,
|
|
66
|
+
security_service_1.SecurityService])
|
|
40
67
|
], McpAuthGuard);
|
|
41
68
|
//# sourceMappingURL=mcp-auth.guard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-auth.guard.js","sourceRoot":"","sources":["../../../src/mcp/guards/mcp-auth.guard.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAKwB;AAExB,6DAAyD;AAGlD,IAAM,YAAY,GAAlB,MAAM,YAAY;IACvB,
|
|
1
|
+
{"version":3,"file":"mcp-auth.guard.js","sourceRoot":"","sources":["../../../src/mcp/guards/mcp-auth.guard.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAoD;AACpD,2CAKwB;AAExB,sEAAkE;AAClE,6DAAyD;AAGlD,IAAM,YAAY,GAAlB,MAAM,YAAY;IACvB,YACmB,YAA0B,EAC1B,MAAqB,EACrB,QAAyB;QAFzB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,WAAM,GAAN,MAAM,CAAe;QACrB,aAAQ,GAAR,QAAQ,CAAiB;IACzC,CAAC;IAEJ,KAAK,CAAC,WAAW,CAAC,OAAyB;;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAW,CAAC;QAC7D,MAAM,MAAM,GACV,MAAA,MAAA,MAAA,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,0CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,0CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,mCAAI,IAAI,CAAC;QAE3E,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,8BAAqB,CAAC,4BAA4B,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,OAAgB,EAAE,KAAa;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC;YACrD,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;SAC9C,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,8BAAqB,CAAC,sBAAsB,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;YACzD,MAAM,IAAI,8BAAqB,CAAC,sBAAsB,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YAC7B,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;YACxB,IAAI,EAAE,EAAE,YAAY,EAAE,IAAI,IAAI,EAAE,EAAE;SACnC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAEnB,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,YAAY,CAAC,OAAgB;;QACnC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,MAAA,MAAA,OAAO,CAAC,OAAO,CAAC,aAAa,0CAAE,KAAK,CAAC,GAAG,CAAC,mCAAI,EAAE,CAAC;QACtE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;CACF,CAAA;AAnDY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;qCAGsB,4BAAY;QAClB,0BAAa;QACX,kCAAe;GAJjC,YAAY,CAmDxB"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { PaginationDTO } from '@hed-hog/api-pagination';
|
|
2
|
+
import { McpApiKeyService } from './mcp-api-key.service';
|
|
3
|
+
export declare class McpApiKeyController {
|
|
4
|
+
private readonly mcpApiKeyService;
|
|
5
|
+
constructor(mcpApiKeyService: McpApiKeyService);
|
|
6
|
+
list(paginationParams: PaginationDTO, { id }: {
|
|
7
|
+
id: number;
|
|
8
|
+
}): Promise<{
|
|
9
|
+
total: any;
|
|
10
|
+
lastPage: number;
|
|
11
|
+
page: number;
|
|
12
|
+
pageSize: number;
|
|
13
|
+
data: any;
|
|
14
|
+
}>;
|
|
15
|
+
create({ id }: {
|
|
16
|
+
id: number;
|
|
17
|
+
}, body: {
|
|
18
|
+
name: string;
|
|
19
|
+
}): Promise<{
|
|
20
|
+
rawToken: string;
|
|
21
|
+
name: string;
|
|
22
|
+
id: number;
|
|
23
|
+
created_at: Date;
|
|
24
|
+
token_prefix: string;
|
|
25
|
+
}>;
|
|
26
|
+
revoke({ id: userId }: {
|
|
27
|
+
id: number;
|
|
28
|
+
}, id: number): Promise<{
|
|
29
|
+
success: boolean;
|
|
30
|
+
}>;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=mcp-api-key.controller.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-api-key.controller.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-api-key.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAUpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,qBAEa,mBAAmB;IAClB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;gBAAhB,gBAAgB,EAAE,gBAAgB;IAG/D,IAAI,CACY,gBAAgB,EAAE,aAAa,EACrC,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE;;;;;;;IAMhC,MAAM,CACI,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,EACtB,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;;;;;;;IAMhC,MAAM,CACI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,EACX,EAAE,EAAE,MAAM;;;CAIxC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.McpApiKeyController = void 0;
|
|
16
|
+
const api_1 = require("@hed-hog/api");
|
|
17
|
+
const api_pagination_1 = require("@hed-hog/api-pagination");
|
|
18
|
+
const common_1 = require("@nestjs/common");
|
|
19
|
+
const mcp_api_key_service_1 = require("./mcp-api-key.service");
|
|
20
|
+
let McpApiKeyController = class McpApiKeyController {
|
|
21
|
+
constructor(mcpApiKeyService) {
|
|
22
|
+
this.mcpApiKeyService = mcpApiKeyService;
|
|
23
|
+
}
|
|
24
|
+
list(paginationParams, { id }) {
|
|
25
|
+
return this.mcpApiKeyService.list(id, paginationParams);
|
|
26
|
+
}
|
|
27
|
+
create({ id }, body) {
|
|
28
|
+
return this.mcpApiKeyService.create(id, body.name);
|
|
29
|
+
}
|
|
30
|
+
revoke({ id: userId }, id) {
|
|
31
|
+
return this.mcpApiKeyService.revoke(userId, id);
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
exports.McpApiKeyController = McpApiKeyController;
|
|
35
|
+
__decorate([
|
|
36
|
+
(0, common_1.Get)(),
|
|
37
|
+
__param(0, (0, api_pagination_1.Pagination)()),
|
|
38
|
+
__param(1, (0, api_1.User)()),
|
|
39
|
+
__metadata("design:type", Function),
|
|
40
|
+
__metadata("design:paramtypes", [api_pagination_1.PaginationDTO, Object]),
|
|
41
|
+
__metadata("design:returntype", void 0)
|
|
42
|
+
], McpApiKeyController.prototype, "list", null);
|
|
43
|
+
__decorate([
|
|
44
|
+
(0, common_1.Post)(),
|
|
45
|
+
__param(0, (0, api_1.User)()),
|
|
46
|
+
__param(1, (0, common_1.Body)()),
|
|
47
|
+
__metadata("design:type", Function),
|
|
48
|
+
__metadata("design:paramtypes", [Object, Object]),
|
|
49
|
+
__metadata("design:returntype", void 0)
|
|
50
|
+
], McpApiKeyController.prototype, "create", null);
|
|
51
|
+
__decorate([
|
|
52
|
+
(0, common_1.Delete)(':id'),
|
|
53
|
+
__param(0, (0, api_1.User)()),
|
|
54
|
+
__param(1, (0, common_1.Param)('id', common_1.ParseIntPipe)),
|
|
55
|
+
__metadata("design:type", Function),
|
|
56
|
+
__metadata("design:paramtypes", [Object, Number]),
|
|
57
|
+
__metadata("design:returntype", void 0)
|
|
58
|
+
], McpApiKeyController.prototype, "revoke", null);
|
|
59
|
+
exports.McpApiKeyController = McpApiKeyController = __decorate([
|
|
60
|
+
(0, api_1.Role)(),
|
|
61
|
+
(0, common_1.Controller)('mcp/api-keys'),
|
|
62
|
+
__metadata("design:paramtypes", [mcp_api_key_service_1.McpApiKeyService])
|
|
63
|
+
], McpApiKeyController);
|
|
64
|
+
//# sourceMappingURL=mcp-api-key.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-api-key.controller.js","sourceRoot":"","sources":["../../src/mcp/mcp-api-key.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sCAA0C;AAC1C,4DAAoE;AACpE,2CAQwB;AACxB,+DAAyD;AAIlD,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,YAA6B,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;IAAG,CAAC;IAGnE,IAAI,CACY,gBAA+B,EACrC,EAAE,EAAE,EAAkB;QAE9B,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC;IAC1D,CAAC;IAGD,MAAM,CACI,EAAE,EAAE,EAAkB,EACtB,IAAsB;QAE9B,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAGD,MAAM,CACI,EAAE,EAAE,EAAE,MAAM,EAAkB,EACX,EAAU;QAErC,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;CACF,CAAA;AA1BY,kDAAmB;AAI9B;IADC,IAAA,YAAG,GAAE;IAEH,WAAA,IAAA,2BAAU,GAAE,CAAA;IACZ,WAAA,IAAA,UAAI,GAAE,CAAA;;qCADyB,8BAAa;;+CAI9C;AAGD;IADC,IAAA,aAAI,GAAE;IAEJ,WAAA,IAAA,UAAI,GAAE,CAAA;IACN,WAAA,IAAA,aAAI,GAAE,CAAA;;;;iDAGR;AAGD;IADC,IAAA,eAAM,EAAC,KAAK,CAAC;IAEX,WAAA,IAAA,UAAI,GAAE,CAAA;IACN,WAAA,IAAA,cAAK,EAAC,IAAI,EAAE,qBAAY,CAAC,CAAA;;;;iDAG3B;8BAzBU,mBAAmB;IAF/B,IAAA,UAAI,GAAE;IACN,IAAA,mBAAU,EAAC,cAAc,CAAC;qCAEsB,sCAAgB;GADpD,mBAAmB,CA0B/B"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { PaginationDTO, PaginationService } from '@hed-hog/api-pagination';
|
|
2
|
+
import { PrismaService } from '@hed-hog/api-prisma';
|
|
3
|
+
import { SecurityService } from '../security/security.service';
|
|
4
|
+
export declare class McpApiKeyService {
|
|
5
|
+
private readonly prisma;
|
|
6
|
+
private readonly security;
|
|
7
|
+
private readonly pagination;
|
|
8
|
+
constructor(prisma: PrismaService, security: SecurityService, pagination: PaginationService);
|
|
9
|
+
list(userId: number, paginationParams: PaginationDTO): Promise<{
|
|
10
|
+
total: any;
|
|
11
|
+
lastPage: number;
|
|
12
|
+
page: number;
|
|
13
|
+
pageSize: number;
|
|
14
|
+
data: any;
|
|
15
|
+
}>;
|
|
16
|
+
create(userId: number, name: string): Promise<{
|
|
17
|
+
rawToken: string;
|
|
18
|
+
name: string;
|
|
19
|
+
id: number;
|
|
20
|
+
created_at: Date;
|
|
21
|
+
token_prefix: string;
|
|
22
|
+
}>;
|
|
23
|
+
revoke(userId: number, id: number): Promise<{
|
|
24
|
+
success: boolean;
|
|
25
|
+
}>;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=mcp-api-key.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-api-key.service.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-api-key.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,qBACa,gBAAgB;IAEzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAFV,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,eAAe,EACzB,UAAU,EAAE,iBAAiB;IAG1C,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,aAAa;;;;;;;IAgBpD,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;;;;IAuBnC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;;;CAaxC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.McpApiKeyService = void 0;
|
|
13
|
+
const api_pagination_1 = require("@hed-hog/api-pagination");
|
|
14
|
+
const api_prisma_1 = require("@hed-hog/api-prisma");
|
|
15
|
+
const common_1 = require("@nestjs/common");
|
|
16
|
+
const security_service_1 = require("../security/security.service");
|
|
17
|
+
let McpApiKeyService = class McpApiKeyService {
|
|
18
|
+
constructor(prisma, security, pagination) {
|
|
19
|
+
this.prisma = prisma;
|
|
20
|
+
this.security = security;
|
|
21
|
+
this.pagination = pagination;
|
|
22
|
+
}
|
|
23
|
+
async list(userId, paginationParams) {
|
|
24
|
+
return this.pagination.paginatePrismaModel(this.prisma.mcp_api_key, Object.assign(Object.assign({}, paginationParams), { where: { user_id: userId, revoked_at: null }, select: {
|
|
25
|
+
id: true,
|
|
26
|
+
name: true,
|
|
27
|
+
token_prefix: true,
|
|
28
|
+
last_used_at: true,
|
|
29
|
+
expires_at: true,
|
|
30
|
+
created_at: true,
|
|
31
|
+
}, orderBy: { created_at: 'desc' } }));
|
|
32
|
+
}
|
|
33
|
+
async create(userId, name) {
|
|
34
|
+
const rawToken = 'hedhog_mcp_' + this.security.randomOpaque(36);
|
|
35
|
+
const tokenHash = this.security.hashWithPepper(rawToken);
|
|
36
|
+
const tokenPrefix = rawToken.substring(0, 16);
|
|
37
|
+
const record = await this.prisma.mcp_api_key.create({
|
|
38
|
+
data: {
|
|
39
|
+
user_id: userId,
|
|
40
|
+
name,
|
|
41
|
+
token_hash: tokenHash,
|
|
42
|
+
token_prefix: tokenPrefix,
|
|
43
|
+
},
|
|
44
|
+
select: {
|
|
45
|
+
id: true,
|
|
46
|
+
name: true,
|
|
47
|
+
token_prefix: true,
|
|
48
|
+
created_at: true,
|
|
49
|
+
},
|
|
50
|
+
});
|
|
51
|
+
return Object.assign(Object.assign({}, record), { rawToken });
|
|
52
|
+
}
|
|
53
|
+
async revoke(userId, id) {
|
|
54
|
+
const key = await this.prisma.mcp_api_key.findFirst({
|
|
55
|
+
where: { id, user_id: userId },
|
|
56
|
+
});
|
|
57
|
+
if (!key) {
|
|
58
|
+
throw new common_1.NotFoundException(`MCP API key ${id} not found`);
|
|
59
|
+
}
|
|
60
|
+
await this.prisma.mcp_api_key.update({
|
|
61
|
+
where: { id },
|
|
62
|
+
data: { revoked_at: new Date() },
|
|
63
|
+
});
|
|
64
|
+
return { success: true };
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
exports.McpApiKeyService = McpApiKeyService;
|
|
68
|
+
exports.McpApiKeyService = McpApiKeyService = __decorate([
|
|
69
|
+
(0, common_1.Injectable)(),
|
|
70
|
+
__metadata("design:paramtypes", [api_prisma_1.PrismaService,
|
|
71
|
+
security_service_1.SecurityService,
|
|
72
|
+
api_pagination_1.PaginationService])
|
|
73
|
+
], McpApiKeyService);
|
|
74
|
+
//# sourceMappingURL=mcp-api-key.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-api-key.service.js","sourceRoot":"","sources":["../../src/mcp/mcp-api-key.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4DAA2E;AAC3E,oDAAoD;AACpD,2CAA+D;AAC/D,mEAA+D;AAGxD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAC3B,YACmB,MAAqB,EACrB,QAAyB,EACzB,UAA6B;QAF7B,WAAM,GAAN,MAAM,CAAe;QACrB,aAAQ,GAAR,QAAQ,CAAiB;QACzB,eAAU,GAAV,UAAU,CAAmB;IAC7C,CAAC;IAEJ,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,gBAA+B;QACxD,OAAO,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,kCAC7D,gBAAgB,KACnB,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,EAC5C,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,IAAI;gBACV,YAAY,EAAE,IAAI;gBAClB,YAAY,EAAE,IAAI;gBAClB,UAAU,EAAE,IAAI;gBAChB,UAAU,EAAE,IAAI;aACjB,EACD,OAAO,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,IAC/B,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,IAAY;QACvC,MAAM,QAAQ,GAAG,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAChE,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QACzD,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAE9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YAClD,IAAI,EAAE;gBACJ,OAAO,EAAE,MAAM;gBACf,IAAI;gBACJ,UAAU,EAAE,SAAS;gBACrB,YAAY,EAAE,WAAW;aAC1B;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,IAAI;gBACV,YAAY,EAAE,IAAI;gBAClB,UAAU,EAAE,IAAI;aACjB;SACF,CAAC,CAAC;QAEH,uCAAY,MAAM,KAAE,QAAQ,IAAG;IACjC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,EAAU;QACrC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC;YAClD,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;SAC/B,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,0BAAiB,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YACnC,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,EAAE;SACjC,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;CACF,CAAA;AA3DY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;qCAGgB,0BAAa;QACX,kCAAe;QACb,kCAAiB;GAJrC,gBAAgB,CA2D5B"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PrismaService } from '@hed-hog/api-prisma';
|
|
2
|
+
import { AccessLogService } from '../access-log/access-log.service';
|
|
2
3
|
interface AuditRecord {
|
|
3
4
|
userId: number;
|
|
4
5
|
toolName: string;
|
|
@@ -9,8 +10,9 @@ interface AuditRecord {
|
|
|
9
10
|
}
|
|
10
11
|
export declare class McpAuditService {
|
|
11
12
|
private readonly prisma;
|
|
13
|
+
private readonly accessLogService;
|
|
12
14
|
private readonly logger;
|
|
13
|
-
constructor(prisma: PrismaService);
|
|
15
|
+
constructor(prisma: PrismaService, accessLogService: AccessLogService);
|
|
14
16
|
record(data: AuditRecord): Promise<void>;
|
|
15
17
|
}
|
|
16
18
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-audit.service.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-audit.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-audit.service.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-audit.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBACa,eAAe;IAIxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IALnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;gBAGxC,MAAM,EAAE,aAAa,EAErB,gBAAgB,EAAE,gBAAgB;IAG/C,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAuB/C"}
|
|
@@ -8,14 +8,19 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
11
14
|
var McpAuditService_1;
|
|
12
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
16
|
exports.McpAuditService = void 0;
|
|
14
17
|
const api_prisma_1 = require("@hed-hog/api-prisma");
|
|
15
18
|
const common_1 = require("@nestjs/common");
|
|
19
|
+
const access_log_service_1 = require("../access-log/access-log.service");
|
|
16
20
|
let McpAuditService = McpAuditService_1 = class McpAuditService {
|
|
17
|
-
constructor(prisma) {
|
|
21
|
+
constructor(prisma, accessLogService) {
|
|
18
22
|
this.prisma = prisma;
|
|
23
|
+
this.accessLogService = accessLogService;
|
|
19
24
|
this.logger = new common_1.Logger(McpAuditService_1.name);
|
|
20
25
|
}
|
|
21
26
|
async record(data) {
|
|
@@ -36,11 +41,18 @@ let McpAuditService = McpAuditService_1 = class McpAuditService {
|
|
|
36
41
|
catch (e) {
|
|
37
42
|
this.logger.warn(`Failed to persist MCP audit record: ${e.message}`);
|
|
38
43
|
}
|
|
44
|
+
this.accessLogService.recordMcp({
|
|
45
|
+
userId: data.userId || undefined,
|
|
46
|
+
mcpTool: data.toolName,
|
|
47
|
+
mcpPrompt: sanitized,
|
|
48
|
+
});
|
|
39
49
|
}
|
|
40
50
|
};
|
|
41
51
|
exports.McpAuditService = McpAuditService;
|
|
42
52
|
exports.McpAuditService = McpAuditService = McpAuditService_1 = __decorate([
|
|
43
53
|
(0, common_1.Injectable)(),
|
|
44
|
-
|
|
54
|
+
__param(1, (0, common_1.Inject)((0, common_1.forwardRef)(() => access_log_service_1.AccessLogService))),
|
|
55
|
+
__metadata("design:paramtypes", [api_prisma_1.PrismaService,
|
|
56
|
+
access_log_service_1.AccessLogService])
|
|
45
57
|
], McpAuditService);
|
|
46
58
|
//# sourceMappingURL=mcp-audit.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-audit.service.js","sourceRoot":"","sources":["../../src/mcp/mcp-audit.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mcp-audit.service.js","sourceRoot":"","sources":["../../src/mcp/mcp-audit.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAoD;AACpD,2CAAwE;AACxE,yEAAoE;AAY7D,IAAM,eAAe,uBAArB,MAAM,eAAe;IAG1B,YACmB,MAAqB,EAEtC,gBAAmD;QAFlC,WAAM,GAAN,MAAM,CAAe;QAErB,qBAAgB,GAAhB,gBAAgB,CAAkB;QALpC,WAAM,GAAG,IAAI,eAAM,CAAC,iBAAe,CAAC,IAAI,CAAC,CAAC;IAMxD,CAAC;IAEJ,KAAK,CAAC,MAAM,CAAC,IAAiB;;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC;gBACzC,IAAI,EAAE;oBACJ,OAAO,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI;oBAC5B,SAAS,EAAE,IAAI,CAAC,QAAQ;oBACxB,KAAK,EAAE,SAAS;oBAChB,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,KAAK,EAAE,MAAA,IAAI,CAAC,KAAK,mCAAI,IAAI;oBACzB,WAAW,EAAE,IAAI,CAAC,UAAU;iBAC7B;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;YAC9B,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,SAAS;YAChC,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,SAAS,EAAE,SAAS;SACrB,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAhCY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;IAMR,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,qCAAgB,CAAC,CAAC,CAAA;qCADlB,0BAAa;QAEH,qCAAgB;GAN1C,eAAe,CAgC3B"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { OnModuleInit } from '@nestjs/common';
|
|
2
|
-
import { DiscoveryService } from '@nestjs/core';
|
|
3
|
-
import { Reflector } from '@nestjs/core';
|
|
2
|
+
import { DiscoveryService, Reflector } from '@nestjs/core';
|
|
4
3
|
import { McpToolDefinition } from './interfaces/mcp-tool-definition.interface';
|
|
5
4
|
import { McpContext } from './types/mcp-context.type';
|
|
6
5
|
export interface McpToolEntry {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-registry.service.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-registry.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"mcp-registry.service.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-registry.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,UAAU,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CAC3E;AAED,qBACa,kBAAmB,YAAW,YAAY;IAKnD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAL5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmC;gBAGtC,SAAS,EAAE,gBAAgB,EAC3B,SAAS,EAAE,SAAS;IAGvC,YAAY,IAAI,IAAI;IA0CpB,MAAM,IAAI,YAAY,EAAE;IAIxB,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAI/C,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;CAG/B"}
|
|
@@ -13,7 +13,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
13
13
|
exports.McpRegistryService = void 0;
|
|
14
14
|
const common_1 = require("@nestjs/common");
|
|
15
15
|
const core_1 = require("@nestjs/core");
|
|
16
|
-
const core_2 = require("@nestjs/core");
|
|
17
16
|
const mcp_tool_decorator_1 = require("./decorators/mcp-tool.decorator");
|
|
18
17
|
let McpRegistryService = McpRegistryService_1 = class McpRegistryService {
|
|
19
18
|
constructor(discovery, reflector) {
|
|
@@ -23,6 +22,7 @@ let McpRegistryService = McpRegistryService_1 = class McpRegistryService {
|
|
|
23
22
|
this.tools = new Map();
|
|
24
23
|
}
|
|
25
24
|
onModuleInit() {
|
|
25
|
+
var _a;
|
|
26
26
|
const providers = this.discovery.getProviders();
|
|
27
27
|
for (const wrapper of providers) {
|
|
28
28
|
const { instance } = wrapper;
|
|
@@ -41,6 +41,10 @@ let McpRegistryService = McpRegistryService_1 = class McpRegistryService {
|
|
|
41
41
|
const definition = this.reflector.get(mcp_tool_decorator_1.MCP_TOOL_METADATA, prototype[methodName]);
|
|
42
42
|
if (!definition)
|
|
43
43
|
continue;
|
|
44
|
+
if (this.tools.has(definition.name)) {
|
|
45
|
+
this.logger.warn(`Duplicate MCP tool ignored: ${definition.name} from ${(_a = prototype.constructor) === null || _a === void 0 ? void 0 : _a.name}.${methodName}`);
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
44
48
|
this.logger.log(`Registered MCP tool: ${definition.name}`);
|
|
45
49
|
this.tools.set(definition.name, {
|
|
46
50
|
definition,
|
|
@@ -64,6 +68,6 @@ exports.McpRegistryService = McpRegistryService;
|
|
|
64
68
|
exports.McpRegistryService = McpRegistryService = McpRegistryService_1 = __decorate([
|
|
65
69
|
(0, common_1.Injectable)(),
|
|
66
70
|
__metadata("design:paramtypes", [core_1.DiscoveryService,
|
|
67
|
-
|
|
71
|
+
core_1.Reflector])
|
|
68
72
|
], McpRegistryService);
|
|
69
73
|
//# sourceMappingURL=mcp-registry.service.js.map
|