ysk-omni 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +80 -0
- package/LICENSE +21 -0
- package/README-ZH.md +51 -0
- package/README.md +41 -0
- package/dist/app.d.ts +3 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +277 -0
- package/dist/app.js.map +1 -0
- package/dist/catalog/curated.d.ts +14 -0
- package/dist/catalog/curated.d.ts.map +1 -0
- package/dist/catalog/curated.js +30 -0
- package/dist/catalog/curated.js.map +1 -0
- package/dist/cli/commands/admin-otp.d.ts +10 -0
- package/dist/cli/commands/admin-otp.d.ts.map +1 -0
- package/dist/cli/commands/admin-otp.js +82 -0
- package/dist/cli/commands/admin-otp.js.map +1 -0
- package/dist/cli/commands/admin-panel.d.ts +13 -0
- package/dist/cli/commands/admin-panel.d.ts.map +1 -0
- package/dist/cli/commands/admin-panel.js +98 -0
- package/dist/cli/commands/admin-panel.js.map +1 -0
- package/dist/cli/commands/admin-sessions.d.ts +6 -0
- package/dist/cli/commands/admin-sessions.d.ts.map +1 -0
- package/dist/cli/commands/admin-sessions.js +62 -0
- package/dist/cli/commands/admin-sessions.js.map +1 -0
- package/dist/cli/commands/api-features.d.ts +8 -0
- package/dist/cli/commands/api-features.d.ts.map +1 -0
- package/dist/cli/commands/api-features.js +136 -0
- package/dist/cli/commands/api-features.js.map +1 -0
- package/dist/cli/commands/audit.d.ts +7 -0
- package/dist/cli/commands/audit.d.ts.map +1 -0
- package/dist/cli/commands/audit.js +48 -0
- package/dist/cli/commands/audit.js.map +1 -0
- package/dist/cli/commands/catalog.d.ts +26 -0
- package/dist/cli/commands/catalog.d.ts.map +1 -0
- package/dist/cli/commands/catalog.js +223 -0
- package/dist/cli/commands/catalog.js.map +1 -0
- package/dist/cli/commands/chats.d.ts +10 -0
- package/dist/cli/commands/chats.d.ts.map +1 -0
- package/dist/cli/commands/chats.js +97 -0
- package/dist/cli/commands/chats.js.map +1 -0
- package/dist/cli/commands/conversations.d.ts +10 -0
- package/dist/cli/commands/conversations.d.ts.map +1 -0
- package/dist/cli/commands/conversations.js +68 -0
- package/dist/cli/commands/conversations.js.map +1 -0
- package/dist/cli/commands/ddos.d.ts +18 -0
- package/dist/cli/commands/ddos.d.ts.map +1 -0
- package/dist/cli/commands/ddos.js +298 -0
- package/dist/cli/commands/ddos.js.map +1 -0
- package/dist/cli/commands/docs.d.ts +13 -0
- package/dist/cli/commands/docs.d.ts.map +1 -0
- package/dist/cli/commands/docs.js +104 -0
- package/dist/cli/commands/docs.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts +6 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/doctor.js +207 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/key.d.ts +42 -0
- package/dist/cli/commands/key.d.ts.map +1 -0
- package/dist/cli/commands/key.js +192 -0
- package/dist/cli/commands/key.js.map +1 -0
- package/dist/cli/commands/logs.d.ts +19 -0
- package/dist/cli/commands/logs.d.ts.map +1 -0
- package/dist/cli/commands/logs.js +104 -0
- package/dist/cli/commands/logs.js.map +1 -0
- package/dist/cli/commands/migrate.d.ts +5 -0
- package/dist/cli/commands/migrate.d.ts.map +1 -0
- package/dist/cli/commands/migrate.js +25 -0
- package/dist/cli/commands/migrate.js.map +1 -0
- package/dist/cli/commands/models.d.ts +5 -0
- package/dist/cli/commands/models.d.ts.map +1 -0
- package/dist/cli/commands/models.js +68 -0
- package/dist/cli/commands/models.js.map +1 -0
- package/dist/cli/commands/open.d.ts +7 -0
- package/dist/cli/commands/open.d.ts.map +1 -0
- package/dist/cli/commands/open.js +24 -0
- package/dist/cli/commands/open.js.map +1 -0
- package/dist/cli/commands/queue.d.ts +33 -0
- package/dist/cli/commands/queue.d.ts.map +1 -0
- package/dist/cli/commands/queue.js +467 -0
- package/dist/cli/commands/queue.js.map +1 -0
- package/dist/cli/commands/restart.d.ts +8 -0
- package/dist/cli/commands/restart.d.ts.map +1 -0
- package/dist/cli/commands/restart.js +36 -0
- package/dist/cli/commands/restart.js.map +1 -0
- package/dist/cli/commands/runtimes.d.ts +9 -0
- package/dist/cli/commands/runtimes.d.ts.map +1 -0
- package/dist/cli/commands/runtimes.js +87 -0
- package/dist/cli/commands/runtimes.js.map +1 -0
- package/dist/cli/commands/seed.d.ts +5 -0
- package/dist/cli/commands/seed.d.ts.map +1 -0
- package/dist/cli/commands/seed.js +22 -0
- package/dist/cli/commands/seed.js.map +1 -0
- package/dist/cli/commands/settings.d.ts +13 -0
- package/dist/cli/commands/settings.d.ts.map +1 -0
- package/dist/cli/commands/settings.js +182 -0
- package/dist/cli/commands/settings.js.map +1 -0
- package/dist/cli/commands/setup.d.ts +6 -0
- package/dist/cli/commands/setup.d.ts.map +1 -0
- package/dist/cli/commands/setup.js +70 -0
- package/dist/cli/commands/setup.js.map +1 -0
- package/dist/cli/commands/start.d.ts +9 -0
- package/dist/cli/commands/start.d.ts.map +1 -0
- package/dist/cli/commands/start.js +140 -0
- package/dist/cli/commands/start.js.map +1 -0
- package/dist/cli/commands/stats.d.ts +3 -0
- package/dist/cli/commands/stats.d.ts.map +1 -0
- package/dist/cli/commands/stats.js +83 -0
- package/dist/cli/commands/stats.js.map +1 -0
- package/dist/cli/commands/status.d.ts +6 -0
- package/dist/cli/commands/status.d.ts.map +1 -0
- package/dist/cli/commands/status.js +70 -0
- package/dist/cli/commands/status.js.map +1 -0
- package/dist/cli/commands/stop.d.ts +11 -0
- package/dist/cli/commands/stop.d.ts.map +1 -0
- package/dist/cli/commands/stop.js +51 -0
- package/dist/cli/commands/stop.js.map +1 -0
- package/dist/cli/commands/update.d.ts +9 -0
- package/dist/cli/commands/update.d.ts.map +1 -0
- package/dist/cli/commands/update.js +182 -0
- package/dist/cli/commands/update.js.map +1 -0
- package/dist/cli/commands/version.d.ts +2 -0
- package/dist/cli/commands/version.d.ts.map +1 -0
- package/dist/cli/commands/version.js +16 -0
- package/dist/cli/commands/version.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +835 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/lib/auto-migrate.d.ts +14 -0
- package/dist/cli/lib/auto-migrate.d.ts.map +1 -0
- package/dist/cli/lib/auto-migrate.js +42 -0
- package/dist/cli/lib/auto-migrate.js.map +1 -0
- package/dist/cli/lib/db-keys.d.ts +51 -0
- package/dist/cli/lib/db-keys.d.ts.map +1 -0
- package/dist/cli/lib/db-keys.js +207 -0
- package/dist/cli/lib/db-keys.js.map +1 -0
- package/dist/cli/lib/env-file.d.ts +14 -0
- package/dist/cli/lib/env-file.d.ts.map +1 -0
- package/dist/cli/lib/env-file.js +143 -0
- package/dist/cli/lib/env-file.js.map +1 -0
- package/dist/cli/lib/paths.d.ts +27 -0
- package/dist/cli/lib/paths.d.ts.map +1 -0
- package/dist/cli/lib/paths.js +87 -0
- package/dist/cli/lib/paths.js.map +1 -0
- package/dist/cli/lib/pm2-runner.d.ts +14 -0
- package/dist/cli/lib/pm2-runner.d.ts.map +1 -0
- package/dist/cli/lib/pm2-runner.js +179 -0
- package/dist/cli/lib/pm2-runner.js.map +1 -0
- package/dist/cli/lib/print-table.d.ts +3 -0
- package/dist/cli/lib/print-table.d.ts.map +1 -0
- package/dist/cli/lib/print-table.js +29 -0
- package/dist/cli/lib/print-table.js.map +1 -0
- package/dist/cli/lib/print.d.ts +10 -0
- package/dist/cli/lib/print.d.ts.map +1 -0
- package/dist/cli/lib/print.js +28 -0
- package/dist/cli/lib/print.js.map +1 -0
- package/dist/cli/lib/process-mgr.d.ts +23 -0
- package/dist/cli/lib/process-mgr.d.ts.map +1 -0
- package/dist/cli/lib/process-mgr.js +207 -0
- package/dist/cli/lib/process-mgr.js.map +1 -0
- package/dist/cli/lib/run-prisma.d.ts +13 -0
- package/dist/cli/lib/run-prisma.d.ts.map +1 -0
- package/dist/cli/lib/run-prisma.js +99 -0
- package/dist/cli/lib/run-prisma.js.map +1 -0
- package/dist/cli/lib/runner-info.d.ts +20 -0
- package/dist/cli/lib/runner-info.d.ts.map +1 -0
- package/dist/cli/lib/runner-info.js +120 -0
- package/dist/cli/lib/runner-info.js.map +1 -0
- package/dist/cli/lib/runtime-context.d.ts +23 -0
- package/dist/cli/lib/runtime-context.d.ts.map +1 -0
- package/dist/cli/lib/runtime-context.js +60 -0
- package/dist/cli/lib/runtime-context.js.map +1 -0
- package/dist/cli/lib/seed-admin.d.ts +17 -0
- package/dist/cli/lib/seed-admin.d.ts.map +1 -0
- package/dist/cli/lib/seed-admin.js +80 -0
- package/dist/cli/lib/seed-admin.js.map +1 -0
- package/dist/cli/lib/spinner.d.ts +20 -0
- package/dist/cli/lib/spinner.d.ts.map +1 -0
- package/dist/cli/lib/spinner.js +72 -0
- package/dist/cli/lib/spinner.js.map +1 -0
- package/dist/config/constants.d.ts +143 -0
- package/dist/config/constants.d.ts.map +1 -0
- package/dist/config/constants.js +355 -0
- package/dist/config/constants.js.map +1 -0
- package/dist/config/cors.d.ts +3 -0
- package/dist/config/cors.d.ts.map +1 -0
- package/dist/config/cors.js +30 -0
- package/dist/config/cors.js.map +1 -0
- package/dist/config/database.d.ts +4 -0
- package/dist/config/database.d.ts.map +1 -0
- package/dist/config/database.js +18 -0
- package/dist/config/database.js.map +1 -0
- package/dist/config/env.d.ts +48 -0
- package/dist/config/env.d.ts.map +1 -0
- package/dist/config/env.js +163 -0
- package/dist/config/env.js.map +1 -0
- package/dist/config/omni-home.d.ts +3 -0
- package/dist/config/omni-home.d.ts.map +1 -0
- package/dist/config/omni-home.js +16 -0
- package/dist/config/omni-home.js.map +1 -0
- package/dist/controllers/admin/api-features.handlers.d.ts +6 -0
- package/dist/controllers/admin/api-features.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/api-features.handlers.js +62 -0
- package/dist/controllers/admin/api-features.handlers.js.map +1 -0
- package/dist/controllers/admin/audit.handlers.d.ts +5 -0
- package/dist/controllers/admin/audit.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/audit.handlers.js +79 -0
- package/dist/controllers/admin/audit.handlers.js.map +1 -0
- package/dist/controllers/admin/auth.handlers.d.ts +8 -0
- package/dist/controllers/admin/auth.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/auth.handlers.js +56 -0
- package/dist/controllers/admin/auth.handlers.js.map +1 -0
- package/dist/controllers/admin/catalog.handlers.d.ts +10 -0
- package/dist/controllers/admin/catalog.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/catalog.handlers.js +170 -0
- package/dist/controllers/admin/catalog.handlers.js.map +1 -0
- package/dist/controllers/admin/chats.handlers.d.ts +6 -0
- package/dist/controllers/admin/chats.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/chats.handlers.js +22 -0
- package/dist/controllers/admin/chats.handlers.js.map +1 -0
- package/dist/controllers/admin/conversations.handlers.d.ts +9 -0
- package/dist/controllers/admin/conversations.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/conversations.handlers.js +70 -0
- package/dist/controllers/admin/conversations.handlers.js.map +1 -0
- package/dist/controllers/admin/core.handlers.d.ts +13 -0
- package/dist/controllers/admin/core.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/core.handlers.js +201 -0
- package/dist/controllers/admin/core.handlers.js.map +1 -0
- package/dist/controllers/admin/ddos.handlers.d.ts +13 -0
- package/dist/controllers/admin/ddos.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/ddos.handlers.js +178 -0
- package/dist/controllers/admin/ddos.handlers.js.map +1 -0
- package/dist/controllers/admin/documents.handlers.d.ts +8 -0
- package/dist/controllers/admin/documents.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/documents.handlers.js +207 -0
- package/dist/controllers/admin/documents.handlers.js.map +1 -0
- package/dist/controllers/admin/keys.handlers.d.ts +8 -0
- package/dist/controllers/admin/keys.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/keys.handlers.js +84 -0
- package/dist/controllers/admin/keys.handlers.js.map +1 -0
- package/dist/controllers/admin/media.handlers.d.ts +27 -0
- package/dist/controllers/admin/media.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/media.handlers.js +637 -0
- package/dist/controllers/admin/media.handlers.js.map +1 -0
- package/dist/controllers/admin/playground.handlers.d.ts +6 -0
- package/dist/controllers/admin/playground.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/playground.handlers.js +76 -0
- package/dist/controllers/admin/playground.handlers.js.map +1 -0
- package/dist/controllers/admin/pm2.handlers.d.ts +15 -0
- package/dist/controllers/admin/pm2.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/pm2.handlers.js +161 -0
- package/dist/controllers/admin/pm2.handlers.js.map +1 -0
- package/dist/controllers/admin/queue.handlers.d.ts +16 -0
- package/dist/controllers/admin/queue.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/queue.handlers.js +159 -0
- package/dist/controllers/admin/queue.handlers.js.map +1 -0
- package/dist/controllers/admin/runtimes.handlers.d.ts +6 -0
- package/dist/controllers/admin/runtimes.handlers.d.ts.map +1 -0
- package/dist/controllers/admin/runtimes.handlers.js +54 -0
- package/dist/controllers/admin/runtimes.handlers.js.map +1 -0
- package/dist/controllers/admin/types.d.ts +7 -0
- package/dist/controllers/admin/types.d.ts.map +1 -0
- package/dist/controllers/admin/types.js +3 -0
- package/dist/controllers/admin/types.js.map +1 -0
- package/dist/controllers/admin.controller.d.ts +87 -0
- package/dist/controllers/admin.controller.d.ts.map +1 -0
- package/dist/controllers/admin.controller.js +58 -0
- package/dist/controllers/admin.controller.js.map +1 -0
- package/dist/controllers/anthropic.controller.d.ts +5 -0
- package/dist/controllers/anthropic.controller.d.ts.map +1 -0
- package/dist/controllers/anthropic.controller.js +37 -0
- package/dist/controllers/anthropic.controller.js.map +1 -0
- package/dist/controllers/api-key.controller.d.ts +7 -0
- package/dist/controllers/api-key.controller.d.ts.map +1 -0
- package/dist/controllers/api-key.controller.js +51 -0
- package/dist/controllers/api-key.controller.js.map +1 -0
- package/dist/controllers/assistants.controller.d.ts +13 -0
- package/dist/controllers/assistants.controller.d.ts.map +1 -0
- package/dist/controllers/assistants.controller.js +75 -0
- package/dist/controllers/assistants.controller.js.map +1 -0
- package/dist/controllers/audio.controller.d.ts +10 -0
- package/dist/controllers/audio.controller.d.ts.map +1 -0
- package/dist/controllers/audio.controller.js +43 -0
- package/dist/controllers/audio.controller.js.map +1 -0
- package/dist/controllers/chat.controller.d.ts +5 -0
- package/dist/controllers/chat.controller.d.ts.map +1 -0
- package/dist/controllers/chat.controller.js +34 -0
- package/dist/controllers/chat.controller.js.map +1 -0
- package/dist/controllers/document.controller.d.ts +8 -0
- package/dist/controllers/document.controller.d.ts.map +1 -0
- package/dist/controllers/document.controller.js +54 -0
- package/dist/controllers/document.controller.js.map +1 -0
- package/dist/controllers/files.controller.d.ts +12 -0
- package/dist/controllers/files.controller.d.ts.map +1 -0
- package/dist/controllers/files.controller.js +144 -0
- package/dist/controllers/files.controller.js.map +1 -0
- package/dist/controllers/health.controller.d.ts +6 -0
- package/dist/controllers/health.controller.d.ts.map +1 -0
- package/dist/controllers/health.controller.js +39 -0
- package/dist/controllers/health.controller.js.map +1 -0
- package/dist/controllers/images.controller.d.ts +6 -0
- package/dist/controllers/images.controller.d.ts.map +1 -0
- package/dist/controllers/images.controller.js +66 -0
- package/dist/controllers/images.controller.js.map +1 -0
- package/dist/controllers/media-assets.controller.d.ts +6 -0
- package/dist/controllers/media-assets.controller.d.ts.map +1 -0
- package/dist/controllers/media-assets.controller.js +51 -0
- package/dist/controllers/media-assets.controller.js.map +1 -0
- package/dist/controllers/models.controller.d.ts +7 -0
- package/dist/controllers/models.controller.d.ts.map +1 -0
- package/dist/controllers/models.controller.js +44 -0
- package/dist/controllers/models.controller.js.map +1 -0
- package/dist/controllers/responses.controller.d.ts +7 -0
- package/dist/controllers/responses.controller.d.ts.map +1 -0
- package/dist/controllers/responses.controller.js +83 -0
- package/dist/controllers/responses.controller.js.map +1 -0
- package/dist/controllers/videos.controller.d.ts +7 -0
- package/dist/controllers/videos.controller.d.ts.map +1 -0
- package/dist/controllers/videos.controller.js +46 -0
- package/dist/controllers/videos.controller.js.map +1 -0
- package/dist/dto/admin-auth.dto.d.ts +10 -0
- package/dist/dto/admin-auth.dto.d.ts.map +1 -0
- package/dist/dto/admin-auth.dto.js +12 -0
- package/dist/dto/admin-auth.dto.js.map +1 -0
- package/dist/dto/admin.dto.d.ts +153 -0
- package/dist/dto/admin.dto.d.ts.map +1 -0
- package/dist/dto/admin.dto.js +78 -0
- package/dist/dto/admin.dto.js.map +1 -0
- package/dist/dto/anthropic-messages.dto.d.ts +77 -0
- package/dist/dto/anthropic-messages.dto.d.ts.map +1 -0
- package/dist/dto/anthropic-messages.dto.js +65 -0
- package/dist/dto/anthropic-messages.dto.js.map +1 -0
- package/dist/dto/api-key.dto.d.ts +27 -0
- package/dist/dto/api-key.dto.d.ts.map +1 -0
- package/dist/dto/api-key.dto.js +15 -0
- package/dist/dto/api-key.dto.js.map +1 -0
- package/dist/dto/audio.dto.d.ts +64 -0
- package/dist/dto/audio.dto.d.ts.map +1 -0
- package/dist/dto/audio.dto.js +29 -0
- package/dist/dto/audio.dto.js.map +1 -0
- package/dist/dto/chat.dto.d.ts +451 -0
- package/dist/dto/chat.dto.d.ts.map +1 -0
- package/dist/dto/chat.dto.js +116 -0
- package/dist/dto/chat.dto.js.map +1 -0
- package/dist/dto/conversation.dto.d.ts +286 -0
- package/dist/dto/conversation.dto.d.ts.map +1 -0
- package/dist/dto/conversation.dto.js +78 -0
- package/dist/dto/conversation.dto.js.map +1 -0
- package/dist/dto/ddos.dto.d.ts +191 -0
- package/dist/dto/ddos.dto.d.ts.map +1 -0
- package/dist/dto/ddos.dto.js +57 -0
- package/dist/dto/ddos.dto.js.map +1 -0
- package/dist/dto/document.dto.d.ts +21 -0
- package/dist/dto/document.dto.d.ts.map +1 -0
- package/dist/dto/document.dto.js +12 -0
- package/dist/dto/document.dto.js.map +1 -0
- package/dist/dto/files.dto.d.ts +17 -0
- package/dist/dto/files.dto.d.ts.map +1 -0
- package/dist/dto/files.dto.js +21 -0
- package/dist/dto/files.dto.js.map +1 -0
- package/dist/dto/images.dto.d.ts +68 -0
- package/dist/dto/images.dto.d.ts.map +1 -0
- package/dist/dto/images.dto.js +40 -0
- package/dist/dto/images.dto.js.map +1 -0
- package/dist/dto/index.d.ts +13 -0
- package/dist/dto/index.d.ts.map +1 -0
- package/dist/dto/index.js +44 -0
- package/dist/dto/index.js.map +1 -0
- package/dist/dto/queue.dto.d.ts +126 -0
- package/dist/dto/queue.dto.d.ts.map +1 -0
- package/dist/dto/queue.dto.js +33 -0
- package/dist/dto/queue.dto.js.map +1 -0
- package/dist/dto/responses.dto.d.ts +76 -0
- package/dist/dto/responses.dto.d.ts.map +1 -0
- package/dist/dto/responses.dto.js +139 -0
- package/dist/dto/responses.dto.js.map +1 -0
- package/dist/dto/videos.dto.d.ts +46 -0
- package/dist/dto/videos.dto.d.ts.map +1 -0
- package/dist/dto/videos.dto.js +38 -0
- package/dist/dto/videos.dto.js.map +1 -0
- package/dist/entities/api-key-created.entity.d.ts +6 -0
- package/dist/entities/api-key-created.entity.d.ts.map +1 -0
- package/dist/entities/api-key-created.entity.js +3 -0
- package/dist/entities/api-key-created.entity.js.map +1 -0
- package/dist/entities/api-key-public.entity.d.ts +20 -0
- package/dist/entities/api-key-public.entity.d.ts.map +1 -0
- package/dist/entities/api-key-public.entity.js +3 -0
- package/dist/entities/api-key-public.entity.js.map +1 -0
- package/dist/entities/api-key.entity.d.ts +21 -0
- package/dist/entities/api-key.entity.d.ts.map +1 -0
- package/dist/entities/api-key.entity.js +3 -0
- package/dist/entities/api-key.entity.js.map +1 -0
- package/dist/entities/audit-log-create-input.entity.d.ts +9 -0
- package/dist/entities/audit-log-create-input.entity.d.ts.map +1 -0
- package/dist/entities/audit-log-create-input.entity.js +3 -0
- package/dist/entities/audit-log-create-input.entity.js.map +1 -0
- package/dist/entities/audit-log.entity.d.ts +12 -0
- package/dist/entities/audit-log.entity.d.ts.map +1 -0
- package/dist/entities/audit-log.entity.js +3 -0
- package/dist/entities/audit-log.entity.js.map +1 -0
- package/dist/entities/chat-request-status.type.d.ts +2 -0
- package/dist/entities/chat-request-status.type.d.ts.map +1 -0
- package/dist/entities/chat-request-status.type.js +3 -0
- package/dist/entities/chat-request-status.type.js.map +1 -0
- package/dist/entities/chat-request.entity.d.ts +18 -0
- package/dist/entities/chat-request.entity.d.ts.map +1 -0
- package/dist/entities/chat-request.entity.js +3 -0
- package/dist/entities/chat-request.entity.js.map +1 -0
- package/dist/entities/document-public.entity.d.ts +9 -0
- package/dist/entities/document-public.entity.d.ts.map +1 -0
- package/dist/entities/document-public.entity.js +3 -0
- package/dist/entities/document-public.entity.js.map +1 -0
- package/dist/entities/document-storage-type.type.d.ts +2 -0
- package/dist/entities/document-storage-type.type.d.ts.map +1 -0
- package/dist/entities/document-storage-type.type.js +3 -0
- package/dist/entities/document-storage-type.type.js.map +1 -0
- package/dist/entities/document.entity.d.ts +16 -0
- package/dist/entities/document.entity.d.ts.map +1 -0
- package/dist/entities/document.entity.js +3 -0
- package/dist/entities/document.entity.js.map +1 -0
- package/dist/entities/encrypted-payload.entity.d.ts +6 -0
- package/dist/entities/encrypted-payload.entity.d.ts.map +1 -0
- package/dist/entities/encrypted-payload.entity.js +3 -0
- package/dist/entities/encrypted-payload.entity.js.map +1 -0
- package/dist/entities/index.d.ts +12 -0
- package/dist/entities/index.d.ts.map +1 -0
- package/dist/entities/index.js +3 -0
- package/dist/entities/index.js.map +1 -0
- package/dist/exceptions/error-codes.d.ts +30 -0
- package/dist/exceptions/error-codes.d.ts.map +1 -0
- package/dist/exceptions/error-codes.js +32 -0
- package/dist/exceptions/error-codes.js.map +1 -0
- package/dist/exceptions/exception.factory.d.ts +33 -0
- package/dist/exceptions/exception.factory.d.ts.map +1 -0
- package/dist/exceptions/exception.factory.js +90 -0
- package/dist/exceptions/exception.factory.js.map +1 -0
- package/dist/exceptions/http.exception.d.ts +28 -0
- package/dist/exceptions/http.exception.d.ts.map +1 -0
- package/dist/exceptions/http.exception.js +75 -0
- package/dist/exceptions/http.exception.js.map +1 -0
- package/dist/interfaces/anthropic-message.interface.d.ts +27 -0
- package/dist/interfaces/anthropic-message.interface.d.ts.map +1 -0
- package/dist/interfaces/anthropic-message.interface.js +4 -0
- package/dist/interfaces/anthropic-message.interface.js.map +1 -0
- package/dist/interfaces/api-features.type.d.ts +45 -0
- package/dist/interfaces/api-features.type.d.ts.map +1 -0
- package/dist/interfaces/api-features.type.js +61 -0
- package/dist/interfaces/api-features.type.js.map +1 -0
- package/dist/interfaces/api-key-mode.type.d.ts +8 -0
- package/dist/interfaces/api-key-mode.type.d.ts.map +1 -0
- package/dist/interfaces/api-key-mode.type.js +3 -0
- package/dist/interfaces/api-key-mode.type.js.map +1 -0
- package/dist/interfaces/api-key-role.type.d.ts +3 -0
- package/dist/interfaces/api-key-role.type.d.ts.map +1 -0
- package/dist/interfaces/api-key-role.type.js +3 -0
- package/dist/interfaces/api-key-role.type.js.map +1 -0
- package/dist/interfaces/app-settings.type.d.ts +10 -0
- package/dist/interfaces/app-settings.type.d.ts.map +1 -0
- package/dist/interfaces/app-settings.type.js +3 -0
- package/dist/interfaces/app-settings.type.js.map +1 -0
- package/dist/interfaces/auth.interface.d.ts +5 -0
- package/dist/interfaces/auth.interface.d.ts.map +1 -0
- package/dist/interfaces/auth.interface.js +3 -0
- package/dist/interfaces/auth.interface.js.map +1 -0
- package/dist/interfaces/authenticated-api-key.interface.d.ts +18 -0
- package/dist/interfaces/authenticated-api-key.interface.d.ts.map +1 -0
- package/dist/interfaces/authenticated-api-key.interface.js +3 -0
- package/dist/interfaces/authenticated-api-key.interface.js.map +1 -0
- package/dist/interfaces/auto-ban-event.interface.d.ts +11 -0
- package/dist/interfaces/auto-ban-event.interface.d.ts.map +1 -0
- package/dist/interfaces/auto-ban-event.interface.js +3 -0
- package/dist/interfaces/auto-ban-event.interface.js.map +1 -0
- package/dist/interfaces/built-engine-request.interface.d.ts +19 -0
- package/dist/interfaces/built-engine-request.interface.d.ts.map +1 -0
- package/dist/interfaces/built-engine-request.interface.js +3 -0
- package/dist/interfaces/built-engine-request.interface.js.map +1 -0
- package/dist/interfaces/chat-context.interface.d.ts +9 -0
- package/dist/interfaces/chat-context.interface.d.ts.map +1 -0
- package/dist/interfaces/chat-context.interface.js +3 -0
- package/dist/interfaces/chat-context.interface.js.map +1 -0
- package/dist/interfaces/chat-job-payload.interface.d.ts +28 -0
- package/dist/interfaces/chat-job-payload.interface.d.ts.map +1 -0
- package/dist/interfaces/chat-job-payload.interface.js +3 -0
- package/dist/interfaces/chat-job-payload.interface.js.map +1 -0
- package/dist/interfaces/chat-list-query.interface.d.ts +16 -0
- package/dist/interfaces/chat-list-query.interface.d.ts.map +1 -0
- package/dist/interfaces/chat-list-query.interface.js +3 -0
- package/dist/interfaces/chat-list-query.interface.js.map +1 -0
- package/dist/interfaces/document-context-result.interface.d.ts +7 -0
- package/dist/interfaces/document-context-result.interface.d.ts.map +1 -0
- package/dist/interfaces/document-context-result.interface.js +3 -0
- package/dist/interfaces/document-context-result.interface.js.map +1 -0
- package/dist/interfaces/engine-collected-output.interface.d.ts +33 -0
- package/dist/interfaces/engine-collected-output.interface.d.ts.map +1 -0
- package/dist/interfaces/engine-collected-output.interface.js +3 -0
- package/dist/interfaces/engine-collected-output.interface.js.map +1 -0
- package/dist/interfaces/engine-json-result.interface.d.ts +7 -0
- package/dist/interfaces/engine-json-result.interface.d.ts.map +1 -0
- package/dist/interfaces/engine-json-result.interface.js +3 -0
- package/dist/interfaces/engine-json-result.interface.js.map +1 -0
- package/dist/interfaces/engine-response-meta.interface.d.ts +14 -0
- package/dist/interfaces/engine-response-meta.interface.d.ts.map +1 -0
- package/dist/interfaces/engine-response-meta.interface.js +3 -0
- package/dist/interfaces/engine-response-meta.interface.js.map +1 -0
- package/dist/interfaces/engine-run-options.interface.d.ts +66 -0
- package/dist/interfaces/engine-run-options.interface.d.ts.map +1 -0
- package/dist/interfaces/engine-run-options.interface.js +3 -0
- package/dist/interfaces/engine-run-options.interface.js.map +1 -0
- package/dist/interfaces/engine-run-result.interface.d.ts +8 -0
- package/dist/interfaces/engine-run-result.interface.d.ts.map +1 -0
- package/dist/interfaces/engine-run-result.interface.js +3 -0
- package/dist/interfaces/engine-run-result.interface.js.map +1 -0
- package/dist/interfaces/engine-stream-event.type.d.ts +20 -0
- package/dist/interfaces/engine-stream-event.type.d.ts.map +1 -0
- package/dist/interfaces/engine-stream-event.type.js +3 -0
- package/dist/interfaces/engine-stream-event.type.js.map +1 -0
- package/dist/interfaces/engine.interface.d.ts +6 -0
- package/dist/interfaces/engine.interface.d.ts.map +1 -0
- package/dist/interfaces/engine.interface.js +3 -0
- package/dist/interfaces/engine.interface.js.map +1 -0
- package/dist/interfaces/execute-completion-options.interface.d.ts +17 -0
- package/dist/interfaces/execute-completion-options.interface.d.ts.map +1 -0
- package/dist/interfaces/execute-completion-options.interface.js +3 -0
- package/dist/interfaces/execute-completion-options.interface.js.map +1 -0
- package/dist/interfaces/express.interface.d.ts +13 -0
- package/dist/interfaces/express.interface.d.ts.map +1 -0
- package/dist/interfaces/express.interface.js +3 -0
- package/dist/interfaces/express.interface.js.map +1 -0
- package/dist/interfaces/index.d.ts +47 -0
- package/dist/interfaces/index.d.ts.map +1 -0
- package/dist/interfaces/index.js +7 -0
- package/dist/interfaces/index.js.map +1 -0
- package/dist/interfaces/install-channel.type.d.ts +2 -0
- package/dist/interfaces/install-channel.type.d.ts.map +1 -0
- package/dist/interfaces/install-channel.type.js +3 -0
- package/dist/interfaces/install-channel.type.js.map +1 -0
- package/dist/interfaces/map-completion-options.interface.d.ts +20 -0
- package/dist/interfaces/map-completion-options.interface.d.ts.map +1 -0
- package/dist/interfaces/map-completion-options.interface.js +3 -0
- package/dist/interfaces/map-completion-options.interface.js.map +1 -0
- package/dist/interfaces/materialized-document.interface.d.ts +10 -0
- package/dist/interfaces/materialized-document.interface.d.ts.map +1 -0
- package/dist/interfaces/materialized-document.interface.js +3 -0
- package/dist/interfaces/materialized-document.interface.js.map +1 -0
- package/dist/interfaces/open-ai-chat-completion-choice.interface.d.ts +25 -0
- package/dist/interfaces/open-ai-chat-completion-choice.interface.d.ts.map +1 -0
- package/dist/interfaces/open-ai-chat-completion-choice.interface.js +3 -0
- package/dist/interfaces/open-ai-chat-completion-choice.interface.js.map +1 -0
- package/dist/interfaces/open-ai-chat-completion-chunk.interface.d.ts +51 -0
- package/dist/interfaces/open-ai-chat-completion-chunk.interface.d.ts.map +1 -0
- package/dist/interfaces/open-ai-chat-completion-chunk.interface.js +3 -0
- package/dist/interfaces/open-ai-chat-completion-chunk.interface.js.map +1 -0
- package/dist/interfaces/open-ai-chat-completion-request.interface.d.ts +55 -0
- package/dist/interfaces/open-ai-chat-completion-request.interface.d.ts.map +1 -0
- package/dist/interfaces/open-ai-chat-completion-request.interface.js +3 -0
- package/dist/interfaces/open-ai-chat-completion-request.interface.js.map +1 -0
- package/dist/interfaces/open-ai-chat-completion.interface.d.ts +21 -0
- package/dist/interfaces/open-ai-chat-completion.interface.d.ts.map +1 -0
- package/dist/interfaces/open-ai-chat-completion.interface.js +3 -0
- package/dist/interfaces/open-ai-chat-completion.interface.js.map +1 -0
- package/dist/interfaces/open-ai-chat-message.interface.d.ts +9 -0
- package/dist/interfaces/open-ai-chat-message.interface.d.ts.map +1 -0
- package/dist/interfaces/open-ai-chat-message.interface.js +3 -0
- package/dist/interfaces/open-ai-chat-message.interface.js.map +1 -0
- package/dist/interfaces/open-ai-model-list.interface.d.ts +6 -0
- package/dist/interfaces/open-ai-model-list.interface.d.ts.map +1 -0
- package/dist/interfaces/open-ai-model-list.interface.js +3 -0
- package/dist/interfaces/open-ai-model-list.interface.js.map +1 -0
- package/dist/interfaces/open-ai-model.interface.d.ts +10 -0
- package/dist/interfaces/open-ai-model.interface.d.ts.map +1 -0
- package/dist/interfaces/open-ai-model.interface.js +3 -0
- package/dist/interfaces/open-ai-model.interface.js.map +1 -0
- package/dist/interfaces/open-ai-response.interface.d.ts +32 -0
- package/dist/interfaces/open-ai-response.interface.d.ts.map +1 -0
- package/dist/interfaces/open-ai-response.interface.js +3 -0
- package/dist/interfaces/open-ai-response.interface.js.map +1 -0
- package/dist/interfaces/open-ai-role.type.d.ts +2 -0
- package/dist/interfaces/open-ai-role.type.d.ts.map +1 -0
- package/dist/interfaces/open-ai-role.type.js +3 -0
- package/dist/interfaces/open-ai-role.type.js.map +1 -0
- package/dist/interfaces/openai.interface.d.ts +11 -0
- package/dist/interfaces/openai.interface.d.ts.map +1 -0
- package/dist/interfaces/openai.interface.js +3 -0
- package/dist/interfaces/openai.interface.js.map +1 -0
- package/dist/interfaces/pm2-runtime-config.interface.d.ts +24 -0
- package/dist/interfaces/pm2-runtime-config.interface.d.ts.map +1 -0
- package/dist/interfaces/pm2-runtime-config.interface.js +3 -0
- package/dist/interfaces/pm2-runtime-config.interface.js.map +1 -0
- package/dist/interfaces/proxy-ip-config.interface.d.ts +12 -0
- package/dist/interfaces/proxy-ip-config.interface.d.ts.map +1 -0
- package/dist/interfaces/proxy-ip-config.interface.js +3 -0
- package/dist/interfaces/proxy-ip-config.interface.js.map +1 -0
- package/dist/interfaces/proxy-ip-source.type.d.ts +7 -0
- package/dist/interfaces/proxy-ip-source.type.d.ts.map +1 -0
- package/dist/interfaces/proxy-ip-source.type.js +3 -0
- package/dist/interfaces/proxy-ip-source.type.js.map +1 -0
- package/dist/interfaces/resolved-policy.interface.d.ts +15 -0
- package/dist/interfaces/resolved-policy.interface.d.ts.map +1 -0
- package/dist/interfaces/resolved-policy.interface.js +3 -0
- package/dist/interfaces/resolved-policy.interface.js.map +1 -0
- package/dist/interfaces/runner-mode.type.d.ts +2 -0
- package/dist/interfaces/runner-mode.type.d.ts.map +1 -0
- package/dist/interfaces/runner-mode.type.js +3 -0
- package/dist/interfaces/runner-mode.type.js.map +1 -0
- package/dist/interfaces/software-check.interface.d.ts +14 -0
- package/dist/interfaces/software-check.interface.d.ts.map +1 -0
- package/dist/interfaces/software-check.interface.js +3 -0
- package/dist/interfaces/software-check.interface.js.map +1 -0
- package/dist/interfaces/software-id.type.d.ts +2 -0
- package/dist/interfaces/software-id.type.d.ts.map +1 -0
- package/dist/interfaces/software-id.type.js +3 -0
- package/dist/interfaces/software-id.type.js.map +1 -0
- package/dist/interfaces/software-level.type.d.ts +2 -0
- package/dist/interfaces/software-level.type.d.ts.map +1 -0
- package/dist/interfaces/software-level.type.js +3 -0
- package/dist/interfaces/software-level.type.js.map +1 -0
- package/dist/interfaces/system-software-report.interface.d.ts +6 -0
- package/dist/interfaces/system-software-report.interface.d.ts.map +1 -0
- package/dist/interfaces/system-software-report.interface.js +3 -0
- package/dist/interfaces/system-software-report.interface.js.map +1 -0
- package/dist/interfaces/tracked-connection.interface.d.ts +16 -0
- package/dist/interfaces/tracked-connection.interface.d.ts.map +1 -0
- package/dist/interfaces/tracked-connection.interface.js +3 -0
- package/dist/interfaces/tracked-connection.interface.js.map +1 -0
- package/dist/interfaces/update-progress.type.d.ts +16 -0
- package/dist/interfaces/update-progress.type.d.ts.map +1 -0
- package/dist/interfaces/update-progress.type.js +3 -0
- package/dist/interfaces/update-progress.type.js.map +1 -0
- package/dist/interfaces/update-result.interface.d.ts +11 -0
- package/dist/interfaces/update-result.interface.d.ts.map +1 -0
- package/dist/interfaces/update-result.interface.js +3 -0
- package/dist/interfaces/update-result.interface.js.map +1 -0
- package/dist/interfaces/version-info.interface.d.ts +21 -0
- package/dist/interfaces/version-info.interface.d.ts.map +1 -0
- package/dist/interfaces/version-info.interface.js +3 -0
- package/dist/interfaces/version-info.interface.js.map +1 -0
- package/dist/interfaces/version-status.type.d.ts +3 -0
- package/dist/interfaces/version-status.type.d.ts.map +1 -0
- package/dist/interfaces/version-status.type.js +3 -0
- package/dist/interfaces/version-status.type.js.map +1 -0
- package/dist/middlewares/auth.middleware.d.ts +13 -0
- package/dist/middlewares/auth.middleware.d.ts.map +1 -0
- package/dist/middlewares/auth.middleware.js +147 -0
- package/dist/middlewares/auth.middleware.js.map +1 -0
- package/dist/middlewares/client-ip.middleware.d.ts +11 -0
- package/dist/middlewares/client-ip.middleware.d.ts.map +1 -0
- package/dist/middlewares/client-ip.middleware.js +19 -0
- package/dist/middlewares/client-ip.middleware.js.map +1 -0
- package/dist/middlewares/concurrency.middleware.d.ts +6 -0
- package/dist/middlewares/concurrency.middleware.d.ts.map +1 -0
- package/dist/middlewares/concurrency.middleware.js +16 -0
- package/dist/middlewares/concurrency.middleware.js.map +1 -0
- package/dist/middlewares/connection-tracker.middleware.d.ts +33 -0
- package/dist/middlewares/connection-tracker.middleware.d.ts.map +1 -0
- package/dist/middlewares/connection-tracker.middleware.js +99 -0
- package/dist/middlewares/connection-tracker.middleware.js.map +1 -0
- package/dist/middlewares/error.middleware.d.ts +4 -0
- package/dist/middlewares/error.middleware.d.ts.map +1 -0
- package/dist/middlewares/error.middleware.js +42 -0
- package/dist/middlewares/error.middleware.js.map +1 -0
- package/dist/middlewares/index.d.ts +11 -0
- package/dist/middlewares/index.d.ts.map +1 -0
- package/dist/middlewares/index.js +35 -0
- package/dist/middlewares/index.js.map +1 -0
- package/dist/middlewares/rate-limit.middleware.d.ts +11 -0
- package/dist/middlewares/rate-limit.middleware.d.ts.map +1 -0
- package/dist/middlewares/rate-limit.middleware.js +152 -0
- package/dist/middlewares/rate-limit.middleware.js.map +1 -0
- package/dist/middlewares/request-id.middleware.d.ts +3 -0
- package/dist/middlewares/request-id.middleware.d.ts.map +1 -0
- package/dist/middlewares/request-id.middleware.js +12 -0
- package/dist/middlewares/request-id.middleware.js.map +1 -0
- package/dist/middlewares/upload-images.middleware.d.ts +3 -0
- package/dist/middlewares/upload-images.middleware.d.ts.map +1 -0
- package/dist/middlewares/upload-images.middleware.js +29 -0
- package/dist/middlewares/upload-images.middleware.js.map +1 -0
- package/dist/middlewares/upload.middleware.d.ts +2 -0
- package/dist/middlewares/upload.middleware.d.ts.map +1 -0
- package/dist/middlewares/upload.middleware.js +26 -0
- package/dist/middlewares/upload.middleware.js.map +1 -0
- package/dist/middlewares/validate.middleware.d.ts +6 -0
- package/dist/middlewares/validate.middleware.d.ts.map +1 -0
- package/dist/middlewares/validate.middleware.js +40 -0
- package/dist/middlewares/validate.middleware.js.map +1 -0
- package/dist/routes/admin.routes.d.ts +3 -0
- package/dist/routes/admin.routes.d.ts.map +1 -0
- package/dist/routes/admin.routes.js +136 -0
- package/dist/routes/admin.routes.js.map +1 -0
- package/dist/routes/index.d.ts +3 -0
- package/dist/routes/index.d.ts.map +1 -0
- package/dist/routes/index.js +46 -0
- package/dist/routes/index.js.map +1 -0
- package/dist/routes/v1/api-keys.routes.d.ts +3 -0
- package/dist/routes/v1/api-keys.routes.d.ts.map +1 -0
- package/dist/routes/v1/api-keys.routes.js +13 -0
- package/dist/routes/v1/api-keys.routes.js.map +1 -0
- package/dist/routes/v1/assistants.routes.d.ts +3 -0
- package/dist/routes/v1/assistants.routes.d.ts.map +1 -0
- package/dist/routes/v1/assistants.routes.js +13 -0
- package/dist/routes/v1/assistants.routes.js.map +1 -0
- package/dist/routes/v1/audio.routes.d.ts +3 -0
- package/dist/routes/v1/audio.routes.d.ts.map +1 -0
- package/dist/routes/v1/audio.routes.js +14 -0
- package/dist/routes/v1/audio.routes.js.map +1 -0
- package/dist/routes/v1/chat.routes.d.ts +3 -0
- package/dist/routes/v1/chat.routes.d.ts.map +1 -0
- package/dist/routes/v1/chat.routes.js +13 -0
- package/dist/routes/v1/chat.routes.js.map +1 -0
- package/dist/routes/v1/documents.routes.d.ts +3 -0
- package/dist/routes/v1/documents.routes.d.ts.map +1 -0
- package/dist/routes/v1/documents.routes.js +15 -0
- package/dist/routes/v1/documents.routes.js.map +1 -0
- package/dist/routes/v1/files.routes.d.ts +3 -0
- package/dist/routes/v1/files.routes.d.ts.map +1 -0
- package/dist/routes/v1/files.routes.js +16 -0
- package/dist/routes/v1/files.routes.js.map +1 -0
- package/dist/routes/v1/images.routes.d.ts +3 -0
- package/dist/routes/v1/images.routes.d.ts.map +1 -0
- package/dist/routes/v1/images.routes.js +14 -0
- package/dist/routes/v1/images.routes.js.map +1 -0
- package/dist/routes/v1/media-assets.routes.d.ts +3 -0
- package/dist/routes/v1/media-assets.routes.d.ts.map +1 -0
- package/dist/routes/v1/media-assets.routes.js +12 -0
- package/dist/routes/v1/media-assets.routes.js.map +1 -0
- package/dist/routes/v1/messages.routes.d.ts +3 -0
- package/dist/routes/v1/messages.routes.d.ts.map +1 -0
- package/dist/routes/v1/messages.routes.js +13 -0
- package/dist/routes/v1/messages.routes.js.map +1 -0
- package/dist/routes/v1/models.routes.d.ts +3 -0
- package/dist/routes/v1/models.routes.d.ts.map +1 -0
- package/dist/routes/v1/models.routes.js +11 -0
- package/dist/routes/v1/models.routes.js.map +1 -0
- package/dist/routes/v1/responses.routes.d.ts +3 -0
- package/dist/routes/v1/responses.routes.d.ts.map +1 -0
- package/dist/routes/v1/responses.routes.js +15 -0
- package/dist/routes/v1/responses.routes.js.map +1 -0
- package/dist/routes/v1/threads.routes.d.ts +3 -0
- package/dist/routes/v1/threads.routes.d.ts.map +1 -0
- package/dist/routes/v1/threads.routes.js +15 -0
- package/dist/routes/v1/threads.routes.js.map +1 -0
- package/dist/routes/v1/videos.routes.d.ts +3 -0
- package/dist/routes/v1/videos.routes.d.ts.map +1 -0
- package/dist/routes/v1/videos.routes.js +14 -0
- package/dist/routes/v1/videos.routes.js.map +1 -0
- package/dist/server.d.ts +2 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +121 -0
- package/dist/server.js.map +1 -0
- package/dist/services/abuse-guard.service.d.ts +19 -0
- package/dist/services/abuse-guard.service.d.ts.map +1 -0
- package/dist/services/abuse-guard.service.js +243 -0
- package/dist/services/abuse-guard.service.js.map +1 -0
- package/dist/services/admin-auth.service.d.ts +32 -0
- package/dist/services/admin-auth.service.d.ts.map +1 -0
- package/dist/services/admin-auth.service.js +202 -0
- package/dist/services/admin-auth.service.js.map +1 -0
- package/dist/services/api-features.service.d.ts +15 -0
- package/dist/services/api-features.service.d.ts.map +1 -0
- package/dist/services/api-features.service.js +92 -0
- package/dist/services/api-features.service.js.map +1 -0
- package/dist/services/api-key.service.d.ts +52 -0
- package/dist/services/api-key.service.d.ts.map +1 -0
- package/dist/services/api-key.service.js +296 -0
- package/dist/services/api-key.service.js.map +1 -0
- package/dist/services/assistants.service.d.ts +130 -0
- package/dist/services/assistants.service.d.ts.map +1 -0
- package/dist/services/assistants.service.js +329 -0
- package/dist/services/assistants.service.js.map +1 -0
- package/dist/services/audit.service.d.ts +10 -0
- package/dist/services/audit.service.d.ts.map +1 -0
- package/dist/services/audit.service.js +38 -0
- package/dist/services/audit.service.js.map +1 -0
- package/dist/services/chat-admin.service.d.ts +76 -0
- package/dist/services/chat-admin.service.d.ts.map +1 -0
- package/dist/services/chat-admin.service.js +220 -0
- package/dist/services/chat-admin.service.js.map +1 -0
- package/dist/services/chat-request-builder.service.d.ts +23 -0
- package/dist/services/chat-request-builder.service.d.ts.map +1 -0
- package/dist/services/chat-request-builder.service.js +325 -0
- package/dist/services/chat-request-builder.service.js.map +1 -0
- package/dist/services/chat.service.d.ts +27 -0
- package/dist/services/chat.service.d.ts.map +1 -0
- package/dist/services/chat.service.js +1088 -0
- package/dist/services/chat.service.js.map +1 -0
- package/dist/services/conversation.service.d.ts +104 -0
- package/dist/services/conversation.service.d.ts.map +1 -0
- package/dist/services/conversation.service.js +254 -0
- package/dist/services/conversation.service.js.map +1 -0
- package/dist/services/ddos-policy.service.d.ts +41 -0
- package/dist/services/ddos-policy.service.d.ts.map +1 -0
- package/dist/services/ddos-policy.service.js +263 -0
- package/dist/services/ddos-policy.service.js.map +1 -0
- package/dist/services/document.service.d.ts +62 -0
- package/dist/services/document.service.d.ts.map +1 -0
- package/dist/services/document.service.js +344 -0
- package/dist/services/document.service.js.map +1 -0
- package/dist/services/encryption.service.d.ts +8 -0
- package/dist/services/encryption.service.d.ts.map +1 -0
- package/dist/services/encryption.service.js +34 -0
- package/dist/services/encryption.service.js.map +1 -0
- package/dist/services/engine-session-map.service.d.ts +11 -0
- package/dist/services/engine-session-map.service.d.ts.map +1 -0
- package/dist/services/engine-session-map.service.js +59 -0
- package/dist/services/engine-session-map.service.js.map +1 -0
- package/dist/services/engine-slot.service.d.ts +21 -0
- package/dist/services/engine-slot.service.d.ts.map +1 -0
- package/dist/services/engine-slot.service.js +55 -0
- package/dist/services/engine-slot.service.js.map +1 -0
- package/dist/services/hf/client.d.ts +18 -0
- package/dist/services/hf/client.d.ts.map +1 -0
- package/dist/services/hf/client.js +202 -0
- package/dist/services/hf/client.js.map +1 -0
- package/dist/services/hf/delete-local.d.ts +5 -0
- package/dist/services/hf/delete-local.d.ts.map +1 -0
- package/dist/services/hf/delete-local.js +46 -0
- package/dist/services/hf/delete-local.js.map +1 -0
- package/dist/services/hf/hub-search.d.ts +66 -0
- package/dist/services/hf/hub-search.d.ts.map +1 -0
- package/dist/services/hf/hub-search.js +272 -0
- package/dist/services/hf/hub-search.js.map +1 -0
- package/dist/services/hf/record-pull.d.ts +6 -0
- package/dist/services/hf/record-pull.d.ts.map +1 -0
- package/dist/services/hf/record-pull.js +80 -0
- package/dist/services/hf/record-pull.js.map +1 -0
- package/dist/services/hf/registry.d.ts +27 -0
- package/dist/services/hf/registry.d.ts.map +1 -0
- package/dist/services/hf/registry.js +77 -0
- package/dist/services/hf/registry.js.map +1 -0
- package/dist/services/hf/spec.d.ts +33 -0
- package/dist/services/hf/spec.d.ts.map +1 -0
- package/dist/services/hf/spec.js +175 -0
- package/dist/services/hf/spec.js.map +1 -0
- package/dist/services/ip-blacklist.service.d.ts +44 -0
- package/dist/services/ip-blacklist.service.d.ts.map +1 -0
- package/dist/services/ip-blacklist.service.js +145 -0
- package/dist/services/ip-blacklist.service.js.map +1 -0
- package/dist/services/media/audio-worker.d.ts +23 -0
- package/dist/services/media/audio-worker.d.ts.map +1 -0
- package/dist/services/media/audio-worker.js +81 -0
- package/dist/services/media/audio-worker.js.map +1 -0
- package/dist/services/media/format-convert.d.ts +37 -0
- package/dist/services/media/format-convert.d.ts.map +1 -0
- package/dist/services/media/format-convert.js +215 -0
- package/dist/services/media/format-convert.js.map +1 -0
- package/dist/services/media/media-jobs.service.d.ts +46 -0
- package/dist/services/media/media-jobs.service.d.ts.map +1 -0
- package/dist/services/media/media-jobs.service.js +193 -0
- package/dist/services/media/media-jobs.service.js.map +1 -0
- package/dist/services/media/media-orchestrator.service.d.ts +53 -0
- package/dist/services/media/media-orchestrator.service.d.ts.map +1 -0
- package/dist/services/media/media-orchestrator.service.js +228 -0
- package/dist/services/media/media-orchestrator.service.js.map +1 -0
- package/dist/services/media/media-store.service.d.ts +39 -0
- package/dist/services/media/media-store.service.d.ts.map +1 -0
- package/dist/services/media/media-store.service.js +154 -0
- package/dist/services/media/media-store.service.js.map +1 -0
- package/dist/services/media/providers/http-worker.provider.d.ts +9 -0
- package/dist/services/media/providers/http-worker.provider.d.ts.map +1 -0
- package/dist/services/media/providers/http-worker.provider.js +73 -0
- package/dist/services/media/providers/http-worker.provider.js.map +1 -0
- package/dist/services/media/providers/media-provider.interface.d.ts +44 -0
- package/dist/services/media/providers/media-provider.interface.d.ts.map +1 -0
- package/dist/services/media/providers/media-provider.interface.js +4 -0
- package/dist/services/media/providers/media-provider.interface.js.map +1 -0
- package/dist/services/media/providers/mock.provider.d.ts +8 -0
- package/dist/services/media/providers/mock.provider.d.ts.map +1 -0
- package/dist/services/media/providers/mock.provider.js +43 -0
- package/dist/services/media/providers/mock.provider.js.map +1 -0
- package/dist/services/media/providers/stub.provider.d.ts +8 -0
- package/dist/services/media/providers/stub.provider.d.ts.map +1 -0
- package/dist/services/media/providers/stub.provider.js +14 -0
- package/dist/services/media/providers/stub.provider.js.map +1 -0
- package/dist/services/media/video-fixture.d.ts +3 -0
- package/dist/services/media/video-fixture.d.ts.map +1 -0
- package/dist/services/media/video-fixture.js +40 -0
- package/dist/services/media/video-fixture.js.map +1 -0
- package/dist/services/models.service.d.ts +49 -0
- package/dist/services/models.service.d.ts.map +1 -0
- package/dist/services/models.service.js +162 -0
- package/dist/services/models.service.js.map +1 -0
- package/dist/services/pm2-config.d.ts +12 -0
- package/dist/services/pm2-config.d.ts.map +1 -0
- package/dist/services/pm2-config.js +156 -0
- package/dist/services/pm2-config.js.map +1 -0
- package/dist/services/pm2.service.d.ts +207 -0
- package/dist/services/pm2.service.d.ts.map +1 -0
- package/dist/services/pm2.service.js +789 -0
- package/dist/services/pm2.service.js.map +1 -0
- package/dist/services/policy.service.d.ts +8 -0
- package/dist/services/policy.service.d.ts.map +1 -0
- package/dist/services/policy.service.js +112 -0
- package/dist/services/policy.service.js.map +1 -0
- package/dist/services/queue/chat-queue.service.d.ts +107 -0
- package/dist/services/queue/chat-queue.service.d.ts.map +1 -0
- package/dist/services/queue/chat-queue.service.js +557 -0
- package/dist/services/queue/chat-queue.service.js.map +1 -0
- package/dist/services/queue/chat-worker.service.d.ts +12 -0
- package/dist/services/queue/chat-worker.service.d.ts.map +1 -0
- package/dist/services/queue/chat-worker.service.js +136 -0
- package/dist/services/queue/chat-worker.service.js.map +1 -0
- package/dist/services/queue/fair-claim.d.ts +41 -0
- package/dist/services/queue/fair-claim.d.ts.map +1 -0
- package/dist/services/queue/fair-claim.js +54 -0
- package/dist/services/queue/fair-claim.js.map +1 -0
- package/dist/services/queue/job-waiter.d.ts +40 -0
- package/dist/services/queue/job-waiter.d.ts.map +1 -0
- package/dist/services/queue/job-waiter.js +77 -0
- package/dist/services/queue/job-waiter.js.map +1 -0
- package/dist/services/queue/queue-backend.factory.d.ts +12 -0
- package/dist/services/queue/queue-backend.factory.d.ts.map +1 -0
- package/dist/services/queue/queue-backend.factory.js +41 -0
- package/dist/services/queue/queue-backend.factory.js.map +1 -0
- package/dist/services/queue/queue-backend.interface.d.ts +67 -0
- package/dist/services/queue/queue-backend.interface.d.ts.map +1 -0
- package/dist/services/queue/queue-backend.interface.js +19 -0
- package/dist/services/queue/queue-backend.interface.js.map +1 -0
- package/dist/services/queue/queue-policy.service.d.ts +19 -0
- package/dist/services/queue/queue-policy.service.d.ts.map +1 -0
- package/dist/services/queue/queue-policy.service.js +99 -0
- package/dist/services/queue/queue-policy.service.js.map +1 -0
- package/dist/services/response-store.service.d.ts +14 -0
- package/dist/services/response-store.service.d.ts.map +1 -0
- package/dist/services/response-store.service.js +77 -0
- package/dist/services/response-store.service.js.map +1 -0
- package/dist/services/role-normalize.service.d.ts +5 -0
- package/dist/services/role-normalize.service.d.ts.map +1 -0
- package/dist/services/role-normalize.service.js +22 -0
- package/dist/services/role-normalize.service.js.map +1 -0
- package/dist/services/runtimes/echo.d.ts +17 -0
- package/dist/services/runtimes/echo.d.ts.map +1 -0
- package/dist/services/runtimes/echo.js +40 -0
- package/dist/services/runtimes/echo.js.map +1 -0
- package/dist/services/runtimes/engine-manager.d.ts +47 -0
- package/dist/services/runtimes/engine-manager.d.ts.map +1 -0
- package/dist/services/runtimes/engine-manager.js +191 -0
- package/dist/services/runtimes/engine-manager.js.map +1 -0
- package/dist/services/runtimes/llama-server.d.ts +37 -0
- package/dist/services/runtimes/llama-server.d.ts.map +1 -0
- package/dist/services/runtimes/llama-server.js +153 -0
- package/dist/services/runtimes/llama-server.js.map +1 -0
- package/dist/services/runtimes/runtime-catalog.d.ts +49 -0
- package/dist/services/runtimes/runtime-catalog.d.ts.map +1 -0
- package/dist/services/runtimes/runtime-catalog.js +510 -0
- package/dist/services/runtimes/runtime-catalog.js.map +1 -0
- package/dist/services/runtimes/runtime-install.d.ts +45 -0
- package/dist/services/runtimes/runtime-install.d.ts.map +1 -0
- package/dist/services/runtimes/runtime-install.js +159 -0
- package/dist/services/runtimes/runtime-install.js.map +1 -0
- package/dist/services/runtimes/vllm.d.ts +14 -0
- package/dist/services/runtimes/vllm.d.ts.map +1 -0
- package/dist/services/runtimes/vllm.js +105 -0
- package/dist/services/runtimes/vllm.js.map +1 -0
- package/dist/services/settings.service.d.ts +7 -0
- package/dist/services/settings.service.d.ts.map +1 -0
- package/dist/services/settings.service.js +87 -0
- package/dist/services/settings.service.js.map +1 -0
- package/dist/services/stats.service.d.ts +104 -0
- package/dist/services/stats.service.d.ts.map +1 -0
- package/dist/services/stats.service.js +218 -0
- package/dist/services/stats.service.js.map +1 -0
- package/dist/services/system-health.service.d.ts +15 -0
- package/dist/services/system-health.service.d.ts.map +1 -0
- package/dist/services/system-health.service.js +259 -0
- package/dist/services/system-health.service.js.map +1 -0
- package/dist/services/update.service.d.ts +35 -0
- package/dist/services/update.service.d.ts.map +1 -0
- package/dist/services/update.service.js +449 -0
- package/dist/services/update.service.js.map +1 -0
- package/dist/services/usage.service.d.ts +49 -0
- package/dist/services/usage.service.d.ts.map +1 -0
- package/dist/services/usage.service.js +175 -0
- package/dist/services/usage.service.js.map +1 -0
- package/dist/services/vram-scheduler.d.ts +39 -0
- package/dist/services/vram-scheduler.d.ts.map +1 -0
- package/dist/services/vram-scheduler.js +84 -0
- package/dist/services/vram-scheduler.js.map +1 -0
- package/dist/utils/anthropic-mapper.d.ts +20 -0
- package/dist/utils/anthropic-mapper.d.ts.map +1 -0
- package/dist/utils/anthropic-mapper.js +254 -0
- package/dist/utils/anthropic-mapper.js.map +1 -0
- package/dist/utils/api-key-crypto.d.ts +10 -0
- package/dist/utils/api-key-crypto.d.ts.map +1 -0
- package/dist/utils/api-key-crypto.js +52 -0
- package/dist/utils/api-key-crypto.js.map +1 -0
- package/dist/utils/api-key-id.d.ts +13 -0
- package/dist/utils/api-key-id.d.ts.map +1 -0
- package/dist/utils/api-key-id.js +51 -0
- package/dist/utils/api-key-id.js.map +1 -0
- package/dist/utils/async-handler.d.ts +5 -0
- package/dist/utils/async-handler.d.ts.map +1 -0
- package/dist/utils/async-handler.js +9 -0
- package/dist/utils/async-handler.js.map +1 -0
- package/dist/utils/client-ip.d.ts +28 -0
- package/dist/utils/client-ip.d.ts.map +1 -0
- package/dist/utils/client-ip.js +184 -0
- package/dist/utils/client-ip.js.map +1 -0
- package/dist/utils/engine-event-parse.d.ts +24 -0
- package/dist/utils/engine-event-parse.d.ts.map +1 -0
- package/dist/utils/engine-event-parse.js +192 -0
- package/dist/utils/engine-event-parse.js.map +1 -0
- package/dist/utils/engine-session.d.ts +25 -0
- package/dist/utils/engine-session.d.ts.map +1 -0
- package/dist/utils/engine-session.js +80 -0
- package/dist/utils/engine-session.js.map +1 -0
- package/dist/utils/file-sniff.d.ts +16 -0
- package/dist/utils/file-sniff.d.ts.map +1 -0
- package/dist/utils/file-sniff.js +151 -0
- package/dist/utils/file-sniff.js.map +1 -0
- package/dist/utils/fs-safe.d.ts +5 -0
- package/dist/utils/fs-safe.d.ts.map +1 -0
- package/dist/utils/fs-safe.js +26 -0
- package/dist/utils/fs-safe.js.map +1 -0
- package/dist/utils/id.d.ts +7 -0
- package/dist/utils/id.d.ts.map +1 -0
- package/dist/utils/id.js +28 -0
- package/dist/utils/id.js.map +1 -0
- package/dist/utils/index.d.ts +14 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +56 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/ip-match.d.ts +15 -0
- package/dist/utils/ip-match.d.ts.map +1 -0
- package/dist/utils/ip-match.js +133 -0
- package/dist/utils/ip-match.js.map +1 -0
- package/dist/utils/list-sort.d.ts +14 -0
- package/dist/utils/list-sort.d.ts.map +1 -0
- package/dist/utils/list-sort.js +58 -0
- package/dist/utils/list-sort.js.map +1 -0
- package/dist/utils/logger.d.ts +3 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +38 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/message-content.d.ts +24 -0
- package/dist/utils/message-content.d.ts.map +1 -0
- package/dist/utils/message-content.js +68 -0
- package/dist/utils/message-content.js.map +1 -0
- package/dist/utils/model-allowlist.d.ts +14 -0
- package/dist/utils/model-allowlist.d.ts.map +1 -0
- package/dist/utils/model-allowlist.js +84 -0
- package/dist/utils/model-allowlist.js.map +1 -0
- package/dist/utils/openai-mapper.d.ts +19 -0
- package/dist/utils/openai-mapper.d.ts.map +1 -0
- package/dist/utils/openai-mapper.js +182 -0
- package/dist/utils/openai-mapper.js.map +1 -0
- package/dist/utils/path-safe.d.ts +4 -0
- package/dist/utils/path-safe.d.ts.map +1 -0
- package/dist/utils/path-safe.js +49 -0
- package/dist/utils/path-safe.js.map +1 -0
- package/dist/utils/prisma-bytes.d.ts +8 -0
- package/dist/utils/prisma-bytes.d.ts.map +1 -0
- package/dist/utils/prisma-bytes.js +14 -0
- package/dist/utils/prisma-bytes.js.map +1 -0
- package/dist/utils/request-meta.d.ts +12 -0
- package/dist/utils/request-meta.d.ts.map +1 -0
- package/dist/utils/request-meta.js +26 -0
- package/dist/utils/request-meta.js.map +1 -0
- package/dist/utils/responses-mapper.d.ts +9 -0
- package/dist/utils/responses-mapper.d.ts.map +1 -0
- package/dist/utils/responses-mapper.js +56 -0
- package/dist/utils/responses-mapper.js.map +1 -0
- package/dist/utils/role-normalize.d.ts +9 -0
- package/dist/utils/role-normalize.d.ts.map +1 -0
- package/dist/utils/role-normalize.js +29 -0
- package/dist/utils/role-normalize.js.map +1 -0
- package/dist/utils/ssrf.d.ts +11 -0
- package/dist/utils/ssrf.d.ts.map +1 -0
- package/dist/utils/ssrf.js +114 -0
- package/dist/utils/ssrf.js.map +1 -0
- package/dist/utils/stream.d.ts +7 -0
- package/dist/utils/stream.d.ts.map +1 -0
- package/dist/utils/stream.js +70 -0
- package/dist/utils/stream.js.map +1 -0
- package/dist/utils/vision-remote.d.ts +28 -0
- package/dist/utils/vision-remote.d.ts.map +1 -0
- package/dist/utils/vision-remote.js +206 -0
- package/dist/utils/vision-remote.js.map +1 -0
- package/docs/en/README.md +25 -0
- package/docs/en/admin.md +44 -0
- package/docs/en/api.md +78 -0
- package/docs/en/architecture.md +44 -0
- package/docs/en/catalog.md +30 -0
- package/docs/en/cli.md +180 -0
- package/docs/en/configuration.md +52 -0
- package/docs/en/development.md +49 -0
- package/docs/en/getting-started.md +64 -0
- package/docs/en/keys.md +30 -0
- package/docs/en/media.md +38 -0
- package/docs/en/operations.md +40 -0
- package/docs/en/runtimes.md +20 -0
- package/docs/zh/README.md +25 -0
- package/docs/zh/admin.md +44 -0
- package/docs/zh/api.md +78 -0
- package/docs/zh/architecture.md +44 -0
- package/docs/zh/catalog.md +30 -0
- package/docs/zh/cli.md +180 -0
- package/docs/zh/configuration.md +52 -0
- package/docs/zh/development.md +49 -0
- package/docs/zh/getting-started.md +62 -0
- package/docs/zh/keys.md +30 -0
- package/docs/zh/media.md +38 -0
- package/docs/zh/operations.md +40 -0
- package/docs/zh/runtimes.md +20 -0
- package/package.json +108 -0
- package/prisma/migrations/20260714084159_init_sqlite/migration.sql +106 -0
- package/prisma/migrations/20260714090338_safe_mode_admin/migration.sql +36 -0
- package/prisma/migrations/20260714120000_ip_whitelist_blacklist/migration.sql +19 -0
- package/prisma/migrations/20260714220000_chat_conversations/migration.sql +22 -0
- package/prisma/migrations/20260714230000_conversation_context/migration.sql +6 -0
- package/prisma/migrations/20260715140000_admin_otp_session/migration.sql +29 -0
- package/prisma/migrations/20260715150000_chat_jobs/migration.sql +33 -0
- package/prisma/migrations/20260715161921_api_responses_assistants/migration.sql +80 -0
- package/prisma/migrations/20260716060000_media_assets/migration.sql +25 -0
- package/prisma/migrations/20260716070000_media_jobs/migration.sql +17 -0
- package/prisma/migrations/20260813160000_grok_session_aliases/migration.sql +14 -0
- package/prisma/migrations/20260924180000_api_key_allowed_models/migration.sql +2 -0
- package/prisma/migrations/20260924190000_rename_grok_session_columns/migration.sql +5 -0
- package/prisma/migrations/migration_lock.toml +3 -0
- package/prisma/schema.prisma +391 -0
- package/prisma/seed.ts +71 -0
- package/public/admin/allowed-extensions.js +41 -0
- package/public/admin/app.js +9980 -0
- package/public/admin/assets/logo.svg +37 -0
- package/public/admin/boot.js +2551 -0
- package/public/admin/boot.js.map +1 -0
- package/public/admin/disabled.html +131 -0
- package/public/admin/i18n.js +2442 -0
- package/public/admin/index.html +26 -0
- package/public/admin/styles.css +5764 -0
- package/public/admin/vendor/marked.min.js +6 -0
- package/public/admin/vendor/purify.min.js +3 -0
- package/scripts/api-audit-run.sh +52 -0
- package/scripts/cli-audit-run.sh +214 -0
- package/scripts/generate-allowed-extensions.cjs +23 -0
- package/scripts/install.sh +34 -0
- package/scripts/omni-openai-worker.mjs +144 -0
- package/scripts/postinstall.cjs +5 -0
- package/scripts/prepare.cjs +102 -0
- package/scripts/smoke.sh +32 -0
- package/scripts/start-tiny-media-worker.sh +14 -0
- package/scripts/tiny-media-worker.py +491 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isUuid = isUuid;
|
|
4
|
+
exports.uuidV5 = uuidV5;
|
|
5
|
+
exports.namespacedEngineSessionId = namespacedEngineSessionId;
|
|
6
|
+
exports.resolveEngineSessionBinding = resolveEngineSessionBinding;
|
|
7
|
+
exports.isSessionAlreadyExistsError = isSessionAlreadyExistsError;
|
|
8
|
+
const node_crypto_1 = require("node:crypto");
|
|
9
|
+
/** DNS namespace UUID (RFC 4122) — stable seed for per-key session ids. */
|
|
10
|
+
const UUID_V5_NAMESPACE = '6ba7b810-9dad-11d1-80b4-00c04fd430c8';
|
|
11
|
+
const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
12
|
+
function isUuid(value) {
|
|
13
|
+
return UUID_RE.test(value.trim());
|
|
14
|
+
}
|
|
15
|
+
function parseUuidBytes(uuid) {
|
|
16
|
+
return Buffer.from(uuid.replace(/-/g, ''), 'hex');
|
|
17
|
+
}
|
|
18
|
+
function formatUuid(bytes) {
|
|
19
|
+
const h = bytes.toString('hex');
|
|
20
|
+
return `${h.slice(0, 8)}-${h.slice(8, 12)}-${h.slice(12, 16)}-${h.slice(16, 20)}-${h.slice(20, 32)}`;
|
|
21
|
+
}
|
|
22
|
+
/** RFC 4122 UUID v5 (SHA-1 name-based). */
|
|
23
|
+
function uuidV5(name, namespace = UUID_V5_NAMESPACE) {
|
|
24
|
+
const hash = (0, node_crypto_1.createHash)('sha1')
|
|
25
|
+
.update(parseUuidBytes(namespace))
|
|
26
|
+
.update(name, 'utf8')
|
|
27
|
+
.digest();
|
|
28
|
+
const bytes = Buffer.from(hash.subarray(0, 16));
|
|
29
|
+
bytes[6] = (bytes[6] & 0x0f) | 0x50;
|
|
30
|
+
bytes[8] = (bytes[8] & 0x3f) | 0x80;
|
|
31
|
+
return formatUuid(bytes);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Deterministic local engine session UUID for a tenant + client session id.
|
|
35
|
+
* 1.0+ requires `-s` to be a UUID and only accepts it on first create.
|
|
36
|
+
*/
|
|
37
|
+
function namespacedEngineSessionId(apiKeyId, clientSessionId) {
|
|
38
|
+
const raw = clientSessionId.trim().slice(0, 128);
|
|
39
|
+
return uuidV5(`ysk-omni:${apiKeyId}:${raw}`);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Decide create (`-s`) vs resume (`--resume`) for a client `session_id`.
|
|
43
|
+
* `knownEngineSessionId` comes from a persisted alias row.
|
|
44
|
+
*/
|
|
45
|
+
function resolveEngineSessionBinding(input) {
|
|
46
|
+
if (input.knownEngineSessionId && isUuid(input.knownEngineSessionId)) {
|
|
47
|
+
return { mode: 'resume', engineSessionId: input.knownEngineSessionId };
|
|
48
|
+
}
|
|
49
|
+
if (input.knownByEngineId && isUuid(input.knownByEngineId)) {
|
|
50
|
+
return { mode: 'resume', engineSessionId: input.knownByEngineId };
|
|
51
|
+
}
|
|
52
|
+
return {
|
|
53
|
+
mode: 'create',
|
|
54
|
+
engineSessionId: namespacedEngineSessionId(input.apiKeyId, input.clientSessionId),
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
function isSessionAlreadyExistsError(err) {
|
|
58
|
+
const parts = [];
|
|
59
|
+
if (typeof err === 'string')
|
|
60
|
+
parts.push(err);
|
|
61
|
+
if (err instanceof Error)
|
|
62
|
+
parts.push(err.message);
|
|
63
|
+
if (err && typeof err === 'object' && 'details' in err) {
|
|
64
|
+
const d = err.details;
|
|
65
|
+
if (typeof d === 'string')
|
|
66
|
+
parts.push(d);
|
|
67
|
+
else if (d && typeof d === 'object') {
|
|
68
|
+
const rec = d;
|
|
69
|
+
if (typeof rec.stderr === 'string')
|
|
70
|
+
parts.push(rec.stderr);
|
|
71
|
+
if (typeof rec.message === 'string')
|
|
72
|
+
parts.push(rec.message);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
const m = parts.join('\n').toLowerCase();
|
|
76
|
+
return (m.includes('already in use') ||
|
|
77
|
+
m.includes('already exist') ||
|
|
78
|
+
m.includes('must not already exist'));
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=engine-session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"engine-session.js","sourceRoot":"","sources":["../../src/utils/engine-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** Block obvious binaries (ELF/PE/Mach-O). Shebang only rejected for non-.sh. */
|
|
2
|
+
export declare function isDangerousExecutable(buf: Buffer, ext?: string): boolean;
|
|
3
|
+
/**
|
|
4
|
+
* Strict upload gate: filename, ext+mime allowlist, ext↔mime map,
|
|
5
|
+
* magic bytes, executable signatures.
|
|
6
|
+
*/
|
|
7
|
+
export declare function assertSafeUpload(opts: {
|
|
8
|
+
originalName: string;
|
|
9
|
+
mimeType: string;
|
|
10
|
+
buffer: Buffer;
|
|
11
|
+
}): {
|
|
12
|
+
originalName: string;
|
|
13
|
+
mimeType: string;
|
|
14
|
+
ext: string;
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=file-sniff.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-sniff.d.ts","sourceRoot":"","sources":["../../src/utils/file-sniff.ts"],"names":[],"mappings":"AAsDA,iFAAiF;AACjF,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAqBxE;AAqCD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CA+C1D"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.isDangerousExecutable = isDangerousExecutable;
|
|
7
|
+
exports.assertSafeUpload = assertSafeUpload;
|
|
8
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
9
|
+
const constants_1 = require("../config/constants");
|
|
10
|
+
const exception_factory_1 = require("../exceptions/exception.factory");
|
|
11
|
+
const path_safe_1 = require("./path-safe");
|
|
12
|
+
const TEXT_EXTS = new Set([
|
|
13
|
+
'.txt',
|
|
14
|
+
'.md',
|
|
15
|
+
'.markdown',
|
|
16
|
+
'.csv',
|
|
17
|
+
'.json',
|
|
18
|
+
'.xml',
|
|
19
|
+
'.html',
|
|
20
|
+
'.htm',
|
|
21
|
+
'.js',
|
|
22
|
+
'.ts',
|
|
23
|
+
'.tsx',
|
|
24
|
+
'.jsx',
|
|
25
|
+
'.py',
|
|
26
|
+
'.java',
|
|
27
|
+
'.go',
|
|
28
|
+
'.rs',
|
|
29
|
+
'.c',
|
|
30
|
+
'.cpp',
|
|
31
|
+
'.h',
|
|
32
|
+
'.hpp',
|
|
33
|
+
'.css',
|
|
34
|
+
'.yml',
|
|
35
|
+
'.yaml',
|
|
36
|
+
'.toml',
|
|
37
|
+
'.ini',
|
|
38
|
+
'.env',
|
|
39
|
+
'.sh',
|
|
40
|
+
'.sql',
|
|
41
|
+
'.log',
|
|
42
|
+
]);
|
|
43
|
+
function startsWith(buf, sig) {
|
|
44
|
+
if (typeof sig === 'string') {
|
|
45
|
+
const s = Buffer.from(sig, 'utf8');
|
|
46
|
+
if (buf.length < s.length)
|
|
47
|
+
return false;
|
|
48
|
+
return buf.subarray(0, s.length).equals(s);
|
|
49
|
+
}
|
|
50
|
+
if (buf.length < sig.length)
|
|
51
|
+
return false;
|
|
52
|
+
for (let i = 0; i < sig.length; i++) {
|
|
53
|
+
if (buf[i] !== sig[i])
|
|
54
|
+
return false;
|
|
55
|
+
}
|
|
56
|
+
return true;
|
|
57
|
+
}
|
|
58
|
+
/** Block obvious binaries (ELF/PE/Mach-O). Shebang only rejected for non-.sh. */
|
|
59
|
+
function isDangerousExecutable(buf, ext) {
|
|
60
|
+
if (buf.length < 4)
|
|
61
|
+
return false;
|
|
62
|
+
// ELF
|
|
63
|
+
if (startsWith(buf, [0x7f, 0x45, 0x4c, 0x46]))
|
|
64
|
+
return true;
|
|
65
|
+
// PE / DOS MZ
|
|
66
|
+
if (startsWith(buf, [0x4d, 0x5a]))
|
|
67
|
+
return true;
|
|
68
|
+
// Mach-O (32/64 fat)
|
|
69
|
+
if (startsWith(buf, [0xfe, 0xed, 0xfa, 0xce]) ||
|
|
70
|
+
startsWith(buf, [0xfe, 0xed, 0xfa, 0xcf]) ||
|
|
71
|
+
startsWith(buf, [0xce, 0xfa, 0xed, 0xfe]) ||
|
|
72
|
+
startsWith(buf, [0xcf, 0xfa, 0xed, 0xfe]) ||
|
|
73
|
+
startsWith(buf, [0xca, 0xfe, 0xba, 0xbe])) {
|
|
74
|
+
return true;
|
|
75
|
+
}
|
|
76
|
+
// Shebang: allow only for .sh text scripts
|
|
77
|
+
if (startsWith(buf, '#!/') && ext !== '.sh') {
|
|
78
|
+
return true;
|
|
79
|
+
}
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
82
|
+
function looksLikeText(buf) {
|
|
83
|
+
const sample = buf.subarray(0, Math.min(8192, buf.length));
|
|
84
|
+
if (sample.includes(0))
|
|
85
|
+
return false;
|
|
86
|
+
// Allow high UTF-8; reject too many control chars (except tab/lf/cr)
|
|
87
|
+
let ctrl = 0;
|
|
88
|
+
for (const b of sample) {
|
|
89
|
+
if (b < 9 || (b > 13 && b < 32))
|
|
90
|
+
ctrl += 1;
|
|
91
|
+
}
|
|
92
|
+
return ctrl / Math.max(1, sample.length) < 0.02;
|
|
93
|
+
}
|
|
94
|
+
function magicMatchesExt(ext, buf) {
|
|
95
|
+
switch (ext) {
|
|
96
|
+
case '.pdf':
|
|
97
|
+
return startsWith(buf, '%PDF');
|
|
98
|
+
case '.png':
|
|
99
|
+
return startsWith(buf, [0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a]);
|
|
100
|
+
case '.jpg':
|
|
101
|
+
case '.jpeg':
|
|
102
|
+
return startsWith(buf, [0xff, 0xd8, 0xff]);
|
|
103
|
+
case '.gif':
|
|
104
|
+
return startsWith(buf, 'GIF87a') || startsWith(buf, 'GIF89a');
|
|
105
|
+
case '.webp':
|
|
106
|
+
return (buf.length >= 12 &&
|
|
107
|
+
startsWith(buf, 'RIFF') &&
|
|
108
|
+
buf.subarray(8, 12).toString('ascii') === 'WEBP');
|
|
109
|
+
default:
|
|
110
|
+
if (TEXT_EXTS.has(ext))
|
|
111
|
+
return looksLikeText(buf);
|
|
112
|
+
// Unknown binary types we allow only with exact map — default require non-empty
|
|
113
|
+
return buf.length > 0;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Strict upload gate: filename, ext+mime allowlist, ext↔mime map,
|
|
118
|
+
* magic bytes, executable signatures.
|
|
119
|
+
*/
|
|
120
|
+
function assertSafeUpload(opts) {
|
|
121
|
+
if (!opts.buffer || opts.buffer.length === 0) {
|
|
122
|
+
throw exception_factory_1.ExceptionFactory.validation('Empty file is not allowed');
|
|
123
|
+
}
|
|
124
|
+
const originalName = (0, path_safe_1.sanitizeFilename)(opts.originalName);
|
|
125
|
+
if (!originalName || originalName.length > 255) {
|
|
126
|
+
throw exception_factory_1.ExceptionFactory.validation('Invalid filename');
|
|
127
|
+
}
|
|
128
|
+
if (originalName.includes('..') || /[/\0]/.test(originalName)) {
|
|
129
|
+
throw exception_factory_1.ExceptionFactory.validation('Invalid filename');
|
|
130
|
+
}
|
|
131
|
+
const ext = node_path_1.default.extname(originalName).toLowerCase();
|
|
132
|
+
if (!ext || !constants_1.ALLOWED_UPLOAD_EXTENSIONS.has(ext)) {
|
|
133
|
+
throw exception_factory_1.ExceptionFactory.documentTypeNotAllowed(`Extension "${ext || '(none)'}" is not allowed`);
|
|
134
|
+
}
|
|
135
|
+
const mime = (opts.mimeType || '').toLowerCase().split(';')[0].trim();
|
|
136
|
+
if (!mime || !constants_1.ALLOWED_UPLOAD_MIME_TYPES.has(mime)) {
|
|
137
|
+
throw exception_factory_1.ExceptionFactory.documentTypeNotAllowed(`MIME type "${mime || '(none)'}" is not allowed`);
|
|
138
|
+
}
|
|
139
|
+
const allowedMimes = constants_1.EXT_MIME_MAP[ext];
|
|
140
|
+
if (!allowedMimes || !allowedMimes.has(mime)) {
|
|
141
|
+
throw exception_factory_1.ExceptionFactory.documentTypeNotAllowed(`MIME "${mime}" does not match extension "${ext}"`);
|
|
142
|
+
}
|
|
143
|
+
if (isDangerousExecutable(opts.buffer, ext)) {
|
|
144
|
+
throw exception_factory_1.ExceptionFactory.documentTypeNotAllowed('Executable or binary program content is not allowed');
|
|
145
|
+
}
|
|
146
|
+
if (!magicMatchesExt(ext, opts.buffer)) {
|
|
147
|
+
throw exception_factory_1.ExceptionFactory.documentTypeNotAllowed(`File content does not match declared type "${ext}" / "${mime}"`);
|
|
148
|
+
}
|
|
149
|
+
return { originalName, mimeType: mime, ext };
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=file-sniff.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-sniff.js","sourceRoot":"","sources":["../../src/utils/file-sniff.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** Best-effort recursive remove (ignore missing / permission errors). */
|
|
2
|
+
export declare function rmSafe(target: string): Promise<void>;
|
|
3
|
+
/** Ensure parent dir exists and return absolute path. */
|
|
4
|
+
export declare function ensureDir(dir: string): Promise<string>;
|
|
5
|
+
//# sourceMappingURL=fs-safe.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs-safe.d.ts","sourceRoot":"","sources":["../../src/utils/fs-safe.ts"],"names":[],"mappings":"AAGA,yEAAyE;AACzE,wBAAsB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAO1D;AAED,yDAAyD;AACzD,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAG5D"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.rmSafe = rmSafe;
|
|
7
|
+
exports.ensureDir = ensureDir;
|
|
8
|
+
const node_fs_1 = require("node:fs");
|
|
9
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
10
|
+
/** Best-effort recursive remove (ignore missing / permission errors). */
|
|
11
|
+
async function rmSafe(target) {
|
|
12
|
+
if (!target)
|
|
13
|
+
return;
|
|
14
|
+
try {
|
|
15
|
+
await node_fs_1.promises.rm(target, { recursive: true, force: true });
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
/* ignore */
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/** Ensure parent dir exists and return absolute path. */
|
|
22
|
+
async function ensureDir(dir) {
|
|
23
|
+
await node_fs_1.promises.mkdir(dir, { recursive: true });
|
|
24
|
+
return node_path_1.default.resolve(dir);
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=fs-safe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs-safe.js","sourceRoot":"","sources":["../../src/utils/fs-safe.ts"],"names":[],"mappings":";;;;;AAIA,wBAOC;AAGD,8BAGC;AAjBD,qCAAyC;AACzC,0DAA6B;AAE7B,yEAAyE;AAClE,KAAK,UAAU,MAAM,CAAC,MAAc;IACzC,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,IAAI,CAAC;QACH,MAAM,kBAAE,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,YAAY;IACd,CAAC;AACH,CAAC;AAED,yDAAyD;AAClD,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,MAAM,kBAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,OAAO,mBAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { createApiKeySecret, apiKeyPrefix } from './api-key-crypto';
|
|
2
|
+
export declare function createId(): string;
|
|
3
|
+
export declare function createRequestId(): string;
|
|
4
|
+
export declare function createChatCompletionId(): string;
|
|
5
|
+
export declare function createMessageId(): string;
|
|
6
|
+
export declare function createResponseId(): string;
|
|
7
|
+
//# sourceMappingURL=id.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id.d.ts","sourceRoot":"","sources":["../../src/utils/id.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEpE,wBAAgB,QAAQ,IAAI,MAAM,CAEjC;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC"}
|
package/dist/utils/id.js
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.apiKeyPrefix = exports.createApiKeySecret = void 0;
|
|
4
|
+
exports.createId = createId;
|
|
5
|
+
exports.createRequestId = createRequestId;
|
|
6
|
+
exports.createChatCompletionId = createChatCompletionId;
|
|
7
|
+
exports.createMessageId = createMessageId;
|
|
8
|
+
exports.createResponseId = createResponseId;
|
|
9
|
+
const node_crypto_1 = require("node:crypto");
|
|
10
|
+
var api_key_crypto_1 = require("./api-key-crypto");
|
|
11
|
+
Object.defineProperty(exports, "createApiKeySecret", { enumerable: true, get: function () { return api_key_crypto_1.createApiKeySecret; } });
|
|
12
|
+
Object.defineProperty(exports, "apiKeyPrefix", { enumerable: true, get: function () { return api_key_crypto_1.apiKeyPrefix; } });
|
|
13
|
+
function createId() {
|
|
14
|
+
return (0, node_crypto_1.randomUUID)();
|
|
15
|
+
}
|
|
16
|
+
function createRequestId() {
|
|
17
|
+
return `req_${(0, node_crypto_1.randomBytes)(12).toString('hex')}`;
|
|
18
|
+
}
|
|
19
|
+
function createChatCompletionId() {
|
|
20
|
+
return `chatcmpl_${(0, node_crypto_1.randomBytes)(12).toString('hex')}`;
|
|
21
|
+
}
|
|
22
|
+
function createMessageId() {
|
|
23
|
+
return `msg_${(0, node_crypto_1.randomBytes)(12).toString('hex')}`;
|
|
24
|
+
}
|
|
25
|
+
function createResponseId() {
|
|
26
|
+
return `resp_${(0, node_crypto_1.randomBytes)(12).toString('hex')}`;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id.js","sourceRoot":"","sources":["../../src/utils/id.ts"],"names":[],"mappings":";;;AAIA,4BAEC;AAED,0CAEC;AAED,wDAEC;AAED,0CAEC;AAED,4CAEC;AAtBD,6CAAsD;AAEtD,mDAAoE;AAA3D,oHAAA,kBAAkB,OAAA;AAAE,8GAAA,YAAY,OAAA;AAEzC,SAAgB,QAAQ;IACtB,OAAO,IAAA,wBAAU,GAAE,CAAC;AACtB,CAAC;AAED,SAAgB,eAAe;IAC7B,OAAO,OAAO,IAAA,yBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;AAClD,CAAC;AAED,SAAgB,sBAAsB;IACpC,OAAO,YAAY,IAAA,yBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,SAAgB,eAAe;IAC7B,OAAO,OAAO,IAAA,yBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;AAClD,CAAC;AAED,SAAgB,gBAAgB;IAC9B,OAAO,QAAQ,IAAA,yBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Shared utilities barrel. Prefer direct imports when a single helper is needed. */
|
|
2
|
+
export { asyncHandler } from './async-handler';
|
|
3
|
+
export { createId, createRequestId, createChatCompletionId, createMessageId, createResponseId, createApiKeySecret, apiKeyPrefix, } from './id';
|
|
4
|
+
export { hashApiKey, hashApiKeySha256, scryptHash, verifyApiKey, } from './api-key-crypto';
|
|
5
|
+
export { normalizeApiKeyRole, normalizeApiKeyMode } from './role-normalize';
|
|
6
|
+
export { isSyntheticApiKeyId, toAuditApiKeyId, toPersistentApiKeyId, } from './api-key-id';
|
|
7
|
+
export { flattenMessageContent, messageHasImageParts, messagesToPrompt, } from './message-content';
|
|
8
|
+
export { readIdempotencyKey, scopedIdempotencyKey, readIdempotencyKeyScoped, } from './request-meta';
|
|
9
|
+
export { logger } from './logger';
|
|
10
|
+
export { mapEngineToChatCompletion, mapTextDeltaChunk, mapReasoningDeltaChunk, mapRoleChunk, mapFinishChunk, mapModelsList, } from './openai-mapper';
|
|
11
|
+
export { initSse, writeSseData, writeSseDone, writeSseEvent, } from './stream';
|
|
12
|
+
export { anthropicToChatDto, chatCompletionToAnthropicMessage, mapAnthropicStopReason, } from './anthropic-mapper';
|
|
13
|
+
export { responsesDtoToChatDto, chatCompletionToResponse, } from './responses-mapper';
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,qFAAqF;AAErF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EACL,QAAQ,EACR,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,GACb,MAAM,MAAM,CAAC;AACd,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,UAAU,EACV,YAAY,GACb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,oBAAoB,GACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EACL,yBAAyB,EACzB,iBAAiB,EACjB,sBAAsB,EACtB,YAAY,EACZ,cAAc,EACd,aAAa,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,kBAAkB,EAClB,gCAAgC,EAChC,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/** Shared utilities barrel. Prefer direct imports when a single helper is needed. */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.chatCompletionToResponse = exports.responsesDtoToChatDto = exports.mapAnthropicStopReason = exports.chatCompletionToAnthropicMessage = exports.anthropicToChatDto = exports.writeSseEvent = exports.writeSseDone = exports.writeSseData = exports.initSse = exports.mapModelsList = exports.mapFinishChunk = exports.mapRoleChunk = exports.mapReasoningDeltaChunk = exports.mapTextDeltaChunk = exports.mapEngineToChatCompletion = exports.logger = exports.readIdempotencyKeyScoped = exports.scopedIdempotencyKey = exports.readIdempotencyKey = exports.messagesToPrompt = exports.messageHasImageParts = exports.flattenMessageContent = exports.toPersistentApiKeyId = exports.toAuditApiKeyId = exports.isSyntheticApiKeyId = exports.normalizeApiKeyMode = exports.normalizeApiKeyRole = exports.verifyApiKey = exports.scryptHash = exports.hashApiKeySha256 = exports.hashApiKey = exports.apiKeyPrefix = exports.createApiKeySecret = exports.createResponseId = exports.createMessageId = exports.createChatCompletionId = exports.createRequestId = exports.createId = exports.asyncHandler = void 0;
|
|
5
|
+
var async_handler_1 = require("./async-handler");
|
|
6
|
+
Object.defineProperty(exports, "asyncHandler", { enumerable: true, get: function () { return async_handler_1.asyncHandler; } });
|
|
7
|
+
var id_1 = require("./id");
|
|
8
|
+
Object.defineProperty(exports, "createId", { enumerable: true, get: function () { return id_1.createId; } });
|
|
9
|
+
Object.defineProperty(exports, "createRequestId", { enumerable: true, get: function () { return id_1.createRequestId; } });
|
|
10
|
+
Object.defineProperty(exports, "createChatCompletionId", { enumerable: true, get: function () { return id_1.createChatCompletionId; } });
|
|
11
|
+
Object.defineProperty(exports, "createMessageId", { enumerable: true, get: function () { return id_1.createMessageId; } });
|
|
12
|
+
Object.defineProperty(exports, "createResponseId", { enumerable: true, get: function () { return id_1.createResponseId; } });
|
|
13
|
+
Object.defineProperty(exports, "createApiKeySecret", { enumerable: true, get: function () { return id_1.createApiKeySecret; } });
|
|
14
|
+
Object.defineProperty(exports, "apiKeyPrefix", { enumerable: true, get: function () { return id_1.apiKeyPrefix; } });
|
|
15
|
+
var api_key_crypto_1 = require("./api-key-crypto");
|
|
16
|
+
Object.defineProperty(exports, "hashApiKey", { enumerable: true, get: function () { return api_key_crypto_1.hashApiKey; } });
|
|
17
|
+
Object.defineProperty(exports, "hashApiKeySha256", { enumerable: true, get: function () { return api_key_crypto_1.hashApiKeySha256; } });
|
|
18
|
+
Object.defineProperty(exports, "scryptHash", { enumerable: true, get: function () { return api_key_crypto_1.scryptHash; } });
|
|
19
|
+
Object.defineProperty(exports, "verifyApiKey", { enumerable: true, get: function () { return api_key_crypto_1.verifyApiKey; } });
|
|
20
|
+
var role_normalize_1 = require("./role-normalize");
|
|
21
|
+
Object.defineProperty(exports, "normalizeApiKeyRole", { enumerable: true, get: function () { return role_normalize_1.normalizeApiKeyRole; } });
|
|
22
|
+
Object.defineProperty(exports, "normalizeApiKeyMode", { enumerable: true, get: function () { return role_normalize_1.normalizeApiKeyMode; } });
|
|
23
|
+
var api_key_id_1 = require("./api-key-id");
|
|
24
|
+
Object.defineProperty(exports, "isSyntheticApiKeyId", { enumerable: true, get: function () { return api_key_id_1.isSyntheticApiKeyId; } });
|
|
25
|
+
Object.defineProperty(exports, "toAuditApiKeyId", { enumerable: true, get: function () { return api_key_id_1.toAuditApiKeyId; } });
|
|
26
|
+
Object.defineProperty(exports, "toPersistentApiKeyId", { enumerable: true, get: function () { return api_key_id_1.toPersistentApiKeyId; } });
|
|
27
|
+
var message_content_1 = require("./message-content");
|
|
28
|
+
Object.defineProperty(exports, "flattenMessageContent", { enumerable: true, get: function () { return message_content_1.flattenMessageContent; } });
|
|
29
|
+
Object.defineProperty(exports, "messageHasImageParts", { enumerable: true, get: function () { return message_content_1.messageHasImageParts; } });
|
|
30
|
+
Object.defineProperty(exports, "messagesToPrompt", { enumerable: true, get: function () { return message_content_1.messagesToPrompt; } });
|
|
31
|
+
var request_meta_1 = require("./request-meta");
|
|
32
|
+
Object.defineProperty(exports, "readIdempotencyKey", { enumerable: true, get: function () { return request_meta_1.readIdempotencyKey; } });
|
|
33
|
+
Object.defineProperty(exports, "scopedIdempotencyKey", { enumerable: true, get: function () { return request_meta_1.scopedIdempotencyKey; } });
|
|
34
|
+
Object.defineProperty(exports, "readIdempotencyKeyScoped", { enumerable: true, get: function () { return request_meta_1.readIdempotencyKeyScoped; } });
|
|
35
|
+
var logger_1 = require("./logger");
|
|
36
|
+
Object.defineProperty(exports, "logger", { enumerable: true, get: function () { return logger_1.logger; } });
|
|
37
|
+
var openai_mapper_1 = require("./openai-mapper");
|
|
38
|
+
Object.defineProperty(exports, "mapEngineToChatCompletion", { enumerable: true, get: function () { return openai_mapper_1.mapEngineToChatCompletion; } });
|
|
39
|
+
Object.defineProperty(exports, "mapTextDeltaChunk", { enumerable: true, get: function () { return openai_mapper_1.mapTextDeltaChunk; } });
|
|
40
|
+
Object.defineProperty(exports, "mapReasoningDeltaChunk", { enumerable: true, get: function () { return openai_mapper_1.mapReasoningDeltaChunk; } });
|
|
41
|
+
Object.defineProperty(exports, "mapRoleChunk", { enumerable: true, get: function () { return openai_mapper_1.mapRoleChunk; } });
|
|
42
|
+
Object.defineProperty(exports, "mapFinishChunk", { enumerable: true, get: function () { return openai_mapper_1.mapFinishChunk; } });
|
|
43
|
+
Object.defineProperty(exports, "mapModelsList", { enumerable: true, get: function () { return openai_mapper_1.mapModelsList; } });
|
|
44
|
+
var stream_1 = require("./stream");
|
|
45
|
+
Object.defineProperty(exports, "initSse", { enumerable: true, get: function () { return stream_1.initSse; } });
|
|
46
|
+
Object.defineProperty(exports, "writeSseData", { enumerable: true, get: function () { return stream_1.writeSseData; } });
|
|
47
|
+
Object.defineProperty(exports, "writeSseDone", { enumerable: true, get: function () { return stream_1.writeSseDone; } });
|
|
48
|
+
Object.defineProperty(exports, "writeSseEvent", { enumerable: true, get: function () { return stream_1.writeSseEvent; } });
|
|
49
|
+
var anthropic_mapper_1 = require("./anthropic-mapper");
|
|
50
|
+
Object.defineProperty(exports, "anthropicToChatDto", { enumerable: true, get: function () { return anthropic_mapper_1.anthropicToChatDto; } });
|
|
51
|
+
Object.defineProperty(exports, "chatCompletionToAnthropicMessage", { enumerable: true, get: function () { return anthropic_mapper_1.chatCompletionToAnthropicMessage; } });
|
|
52
|
+
Object.defineProperty(exports, "mapAnthropicStopReason", { enumerable: true, get: function () { return anthropic_mapper_1.mapAnthropicStopReason; } });
|
|
53
|
+
var responses_mapper_1 = require("./responses-mapper");
|
|
54
|
+
Object.defineProperty(exports, "responsesDtoToChatDto", { enumerable: true, get: function () { return responses_mapper_1.responsesDtoToChatDto; } });
|
|
55
|
+
Object.defineProperty(exports, "chatCompletionToResponse", { enumerable: true, get: function () { return responses_mapper_1.chatCompletionToResponse; } });
|
|
56
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";AAAA,qFAAqF;;;AAErF,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,2BAQc;AAPZ,8FAAA,QAAQ,OAAA;AACR,qGAAA,eAAe,OAAA;AACf,4GAAA,sBAAsB,OAAA;AACtB,qGAAA,eAAe,OAAA;AACf,sGAAA,gBAAgB,OAAA;AAChB,wGAAA,kBAAkB,OAAA;AAClB,kGAAA,YAAY,OAAA;AAEd,mDAK0B;AAJxB,4GAAA,UAAU,OAAA;AACV,kHAAA,gBAAgB,OAAA;AAChB,4GAAA,UAAU,OAAA;AACV,8GAAA,YAAY,OAAA;AAEd,mDAA4E;AAAnE,qHAAA,mBAAmB,OAAA;AAAE,qHAAA,mBAAmB,OAAA;AACjD,2CAIsB;AAHpB,iHAAA,mBAAmB,OAAA;AACnB,6GAAA,eAAe,OAAA;AACf,kHAAA,oBAAoB,OAAA;AAEtB,qDAI2B;AAHzB,wHAAA,qBAAqB,OAAA;AACrB,uHAAA,oBAAoB,OAAA;AACpB,mHAAA,gBAAgB,OAAA;AAElB,+CAIwB;AAHtB,kHAAA,kBAAkB,OAAA;AAClB,oHAAA,oBAAoB,OAAA;AACpB,wHAAA,wBAAwB,OAAA;AAE1B,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,iDAOyB;AANvB,0HAAA,yBAAyB,OAAA;AACzB,kHAAA,iBAAiB,OAAA;AACjB,uHAAA,sBAAsB,OAAA;AACtB,6GAAA,YAAY,OAAA;AACZ,+GAAA,cAAc,OAAA;AACd,8GAAA,aAAa,OAAA;AAEf,mCAKkB;AAJhB,iGAAA,OAAO,OAAA;AACP,sGAAA,YAAY,OAAA;AACZ,sGAAA,YAAY,OAAA;AACZ,uGAAA,aAAa,OAAA;AAEf,uDAI4B;AAH1B,sHAAA,kBAAkB,OAAA;AAClB,oIAAA,gCAAgC,OAAA;AAChC,0HAAA,sBAAsB,OAAA;AAExB,uDAG4B;AAF1B,yHAAA,qBAAqB,OAAA;AACrB,4HAAA,wBAAwB,OAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* IPv4 exact / CIDR match helpers for API key whitelist and blacklist.
|
|
3
|
+
* IPv6: exact match only (no CIDR).
|
|
4
|
+
*/
|
|
5
|
+
export declare function normalizeIp(ip: string): string;
|
|
6
|
+
/** Aliases that should match the same client (loopback). */
|
|
7
|
+
export declare function ipEquivalents(ip: string): string[];
|
|
8
|
+
export declare function isValidIpOrCidr(entry: string): boolean;
|
|
9
|
+
/** True if clientIp matches any whitelist entry (exact or CIDR). Empty list = allow all. */
|
|
10
|
+
export declare function ipAllowed(clientIp: string, whitelist: string[] | null | undefined): boolean;
|
|
11
|
+
/** True if client IP is exactly (or loopback-equivalent) in a ban set. */
|
|
12
|
+
export declare function ipMatchesExact(clientIp: string, bannedIp: string): boolean;
|
|
13
|
+
export declare function parseIpList(input: unknown): string[];
|
|
14
|
+
export declare function serializeIpList(list: string[] | null | undefined): string | null;
|
|
15
|
+
//# sourceMappingURL=ip-match.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ip-match.d.ts","sourceRoot":"","sources":["../../src/utils/ip-match.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAe9C;AAED,4DAA4D;AAC5D,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,CAMlD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAOtD;AAsBD,4FAA4F;AAC5F,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAe3F;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAI1E;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CA0BpD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAGhF"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* IPv4 exact / CIDR match helpers for API key whitelist and blacklist.
|
|
4
|
+
* IPv6: exact match only (no CIDR).
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.normalizeIp = normalizeIp;
|
|
8
|
+
exports.ipEquivalents = ipEquivalents;
|
|
9
|
+
exports.isValidIpOrCidr = isValidIpOrCidr;
|
|
10
|
+
exports.ipAllowed = ipAllowed;
|
|
11
|
+
exports.ipMatchesExact = ipMatchesExact;
|
|
12
|
+
exports.parseIpList = parseIpList;
|
|
13
|
+
exports.serializeIpList = serializeIpList;
|
|
14
|
+
const IPV4_RE = /^(?:(?:25[0-5]|2[0-4]\d|1?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|1?\d?\d)$/;
|
|
15
|
+
const CIDR_RE = /^(?:(?:25[0-5]|2[0-4]\d|1?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|1?\d?\d)\/(?:3[0-2]|[12]?\d)$/;
|
|
16
|
+
function normalizeIp(ip) {
|
|
17
|
+
let s = ip.trim();
|
|
18
|
+
// strip IPv4-mapped IPv6 ::ffff:x.x.x.x
|
|
19
|
+
if (s.toLowerCase().startsWith('::ffff:')) {
|
|
20
|
+
s = s.slice(7);
|
|
21
|
+
}
|
|
22
|
+
// strip brackets
|
|
23
|
+
if (s.startsWith('[') && s.endsWith(']')) {
|
|
24
|
+
s = s.slice(1, -1);
|
|
25
|
+
}
|
|
26
|
+
// Treat common loopback forms as 127.0.0.1 for matching
|
|
27
|
+
if (s === '::1' || s === '0:0:0:0:0:0:0:1') {
|
|
28
|
+
return '127.0.0.1';
|
|
29
|
+
}
|
|
30
|
+
return s;
|
|
31
|
+
}
|
|
32
|
+
/** Aliases that should match the same client (loopback). */
|
|
33
|
+
function ipEquivalents(ip) {
|
|
34
|
+
const n = normalizeIp(ip);
|
|
35
|
+
if (n === '127.0.0.1' || n === 'localhost') {
|
|
36
|
+
return ['127.0.0.1', '::1', '::ffff:127.0.0.1', 'localhost'];
|
|
37
|
+
}
|
|
38
|
+
return [n];
|
|
39
|
+
}
|
|
40
|
+
function isValidIpOrCidr(entry) {
|
|
41
|
+
const s = normalizeIp(entry);
|
|
42
|
+
if (!s)
|
|
43
|
+
return false;
|
|
44
|
+
if (IPV4_RE.test(s) || CIDR_RE.test(s))
|
|
45
|
+
return true;
|
|
46
|
+
// loose IPv6 exact
|
|
47
|
+
if (s.includes(':') && /^[0-9a-fA-F:.]+$/.test(s))
|
|
48
|
+
return true;
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
function ipv4ToInt(ip) {
|
|
52
|
+
const parts = ip.split('.').map((x) => Number(x));
|
|
53
|
+
return (((parts[0] << 24) >>> 0) +
|
|
54
|
+
((parts[1] << 16) >>> 0) +
|
|
55
|
+
((parts[2] << 8) >>> 0) +
|
|
56
|
+
(parts[3] >>> 0));
|
|
57
|
+
}
|
|
58
|
+
function matchCidr(ip, cidr) {
|
|
59
|
+
const [base, bitsStr] = cidr.split('/');
|
|
60
|
+
if (!base || !bitsStr || !IPV4_RE.test(ip) || !IPV4_RE.test(base))
|
|
61
|
+
return false;
|
|
62
|
+
const bits = Number(bitsStr);
|
|
63
|
+
if (!Number.isFinite(bits) || bits < 0 || bits > 32)
|
|
64
|
+
return false;
|
|
65
|
+
if (bits === 0)
|
|
66
|
+
return true;
|
|
67
|
+
const mask = bits === 32 ? 0xffffffff : (~0 << (32 - bits)) >>> 0;
|
|
68
|
+
return (ipv4ToInt(ip) & mask) === (ipv4ToInt(base) & mask);
|
|
69
|
+
}
|
|
70
|
+
/** True if clientIp matches any whitelist entry (exact or CIDR). Empty list = allow all. */
|
|
71
|
+
function ipAllowed(clientIp, whitelist) {
|
|
72
|
+
if (!whitelist || whitelist.length === 0)
|
|
73
|
+
return true;
|
|
74
|
+
const candidates = ipEquivalents(clientIp);
|
|
75
|
+
for (const ip of candidates) {
|
|
76
|
+
for (const raw of whitelist) {
|
|
77
|
+
const entry = normalizeIp(raw);
|
|
78
|
+
if (!entry)
|
|
79
|
+
continue;
|
|
80
|
+
if (entry.includes('/')) {
|
|
81
|
+
if (IPV4_RE.test(ip) && matchCidr(ip, entry))
|
|
82
|
+
return true;
|
|
83
|
+
}
|
|
84
|
+
else if (entry === ip || ipEquivalents(entry).includes(ip)) {
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return false;
|
|
90
|
+
}
|
|
91
|
+
/** True if client IP is exactly (or loopback-equivalent) in a ban set. */
|
|
92
|
+
function ipMatchesExact(clientIp, bannedIp) {
|
|
93
|
+
const a = ipEquivalents(clientIp);
|
|
94
|
+
const b = ipEquivalents(bannedIp);
|
|
95
|
+
return a.some((x) => b.includes(x));
|
|
96
|
+
}
|
|
97
|
+
function parseIpList(input) {
|
|
98
|
+
if (input == null)
|
|
99
|
+
return [];
|
|
100
|
+
if (Array.isArray(input)) {
|
|
101
|
+
return input
|
|
102
|
+
.map((x) => String(x).trim())
|
|
103
|
+
.filter(Boolean)
|
|
104
|
+
.filter(isValidIpOrCidr)
|
|
105
|
+
.map(normalizeIp);
|
|
106
|
+
}
|
|
107
|
+
if (typeof input === 'string') {
|
|
108
|
+
const trimmed = input.trim();
|
|
109
|
+
if (!trimmed)
|
|
110
|
+
return [];
|
|
111
|
+
try {
|
|
112
|
+
const parsed = JSON.parse(trimmed);
|
|
113
|
+
if (Array.isArray(parsed))
|
|
114
|
+
return parseIpList(parsed);
|
|
115
|
+
}
|
|
116
|
+
catch {
|
|
117
|
+
/* lines / commas */
|
|
118
|
+
}
|
|
119
|
+
return trimmed
|
|
120
|
+
.split(/[\n,]+/)
|
|
121
|
+
.map((s) => s.trim())
|
|
122
|
+
.filter(Boolean)
|
|
123
|
+
.filter(isValidIpOrCidr)
|
|
124
|
+
.map(normalizeIp);
|
|
125
|
+
}
|
|
126
|
+
return [];
|
|
127
|
+
}
|
|
128
|
+
function serializeIpList(list) {
|
|
129
|
+
if (!list || list.length === 0)
|
|
130
|
+
return null;
|
|
131
|
+
return JSON.stringify(list);
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=ip-match.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ip-match.js","sourceRoot":"","sources":["../../src/utils/ip-match.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Shared list sorting helpers for Admin APIs (server-side only). */
|
|
2
|
+
export type SortDir = 'asc' | 'desc';
|
|
3
|
+
export declare function parseSortDir(raw: unknown): SortDir;
|
|
4
|
+
/**
|
|
5
|
+
* Pick a whitelist field for Prisma `orderBy: { field: dir }`.
|
|
6
|
+
* Invalid sortBy falls back to defaultField; sortDir defaults to desc.
|
|
7
|
+
*/
|
|
8
|
+
export declare function resolveScalarOrderBy<T extends string>(sortBy: string | undefined, sortDir: SortDir | string | undefined, allowed: readonly T[], defaultField: T): Record<string, SortDir>;
|
|
9
|
+
/**
|
|
10
|
+
* In-memory sort for aggregates / connection snapshots.
|
|
11
|
+
* Default direction is **desc** (newest / largest first).
|
|
12
|
+
*/
|
|
13
|
+
export declare function sortInMemory<T>(rows: T[], sortBy: string | undefined, sortDir: SortDir | string | undefined, getters: Record<string, (row: T) => string | number | Date | null | undefined>, defaultKey: string): T[];
|
|
14
|
+
//# sourceMappingURL=list-sort.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-sort.d.ts","sourceRoot":"","sources":["../../src/utils/list-sort.ts"],"names":[],"mappings":"AAAA,qEAAqE;AAErE,MAAM,MAAM,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;AAErC,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAElD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,EACnD,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,EACrC,OAAO,EAAE,SAAS,CAAC,EAAE,EACrB,YAAY,EAAE,CAAC,GACd,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQzB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,IAAI,EAAE,CAAC,EAAE,EACT,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,EACrC,OAAO,EAAE,MAAM,CACb,MAAM,EACN,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CACtD,EACD,UAAU,EAAE,MAAM,GACjB,CAAC,EAAE,CA8BL"}
|